@byyuurin/ui 0.0.10 → 0.0.11

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 (194) hide show
  1. package/README.md +2 -2
  2. package/dist/module.json +3 -3
  3. package/dist/module.mjs +1 -1
  4. package/dist/module.mjs.map +1 -1
  5. package/dist/runtime/app/injections.d.ts +388 -364
  6. package/dist/runtime/components/Accordion.vue +38 -67
  7. package/dist/runtime/components/Accordion.vue.d.ts +52 -0
  8. package/dist/runtime/components/Alert.vue +37 -75
  9. package/dist/runtime/components/Alert.vue.d.ts +59 -0
  10. package/dist/runtime/components/App.vue +25 -40
  11. package/dist/runtime/components/App.vue.d.ts +24 -0
  12. package/dist/runtime/components/Avatar.vue +31 -51
  13. package/dist/runtime/components/Avatar.vue.d.ts +25 -0
  14. package/dist/runtime/components/AvatarGroup.vue +38 -69
  15. package/dist/runtime/components/AvatarGroup.vue.d.ts +27 -0
  16. package/dist/runtime/components/Badge.vue +25 -51
  17. package/dist/runtime/components/Badge.vue.d.ts +44 -0
  18. package/dist/runtime/components/Breadcrumb.vue +36 -74
  19. package/dist/runtime/components/Breadcrumb.vue.d.ts +52 -0
  20. package/dist/runtime/components/Button.vue +62 -51
  21. package/dist/runtime/components/Button.vue.d.ts +29 -0
  22. package/dist/runtime/components/ButtonGroup.vue +17 -37
  23. package/dist/runtime/components/ButtonGroup.vue.d.ts +26 -0
  24. package/dist/runtime/components/Calendar.vue +75 -110
  25. package/dist/runtime/components/Calendar.vue.d.ts +75 -0
  26. package/dist/runtime/components/Card.vue +25 -42
  27. package/dist/runtime/components/Card.vue.d.ts +30 -0
  28. package/dist/runtime/components/Carousel.vue +118 -225
  29. package/dist/runtime/components/Carousel.vue.d.ts +104 -0
  30. package/dist/runtime/components/Checkbox.vue +46 -73
  31. package/dist/runtime/components/Checkbox.vue.d.ts +56 -0
  32. package/dist/runtime/components/Chip.vue +31 -48
  33. package/dist/runtime/components/Chip.vue.d.ts +30 -0
  34. package/dist/runtime/components/Collapsible.vue +22 -30
  35. package/dist/runtime/components/Collapsible.vue.d.ts +26 -0
  36. package/dist/runtime/components/Drawer.vue +51 -101
  37. package/dist/runtime/components/Drawer.vue.d.ts +80 -0
  38. package/dist/runtime/components/DropdownMenu.vue +37 -115
  39. package/dist/runtime/components/DropdownMenu.vue.d.ts +99 -0
  40. package/dist/runtime/components/DropdownMenuContent.vue +81 -77
  41. package/dist/runtime/components/DropdownMenuContent.vue.d.ts +39 -0
  42. package/dist/runtime/components/Form.vue +140 -254
  43. package/dist/runtime/components/Form.vue.d.ts +78 -0
  44. package/dist/runtime/components/FormItem.vue +50 -89
  45. package/dist/runtime/components/FormItem.vue.d.ts +60 -0
  46. package/dist/runtime/components/Input.vue +79 -115
  47. package/dist/runtime/components/Input.vue.d.ts +64 -0
  48. package/dist/runtime/components/InputNumber.vue +74 -117
  49. package/dist/runtime/components/InputNumber.vue.d.ts +245 -0
  50. package/dist/runtime/components/Kbd.vue +18 -39
  51. package/dist/runtime/components/Kbd.vue.d.ts +28 -0
  52. package/dist/runtime/components/Link.vue +168 -257
  53. package/dist/runtime/components/Link.vue.d.ts +95 -0
  54. package/dist/runtime/components/LinkBase.vue +36 -54
  55. package/dist/runtime/components/LinkBase.vue.d.ts +28 -0
  56. package/dist/runtime/components/Modal.vue +49 -84
  57. package/dist/runtime/components/Modal.vue.d.ts +66 -0
  58. package/dist/runtime/components/OverlayProvider.vue +10 -14
  59. package/dist/runtime/components/OverlayProvider.vue.d.ts +2 -0
  60. package/dist/runtime/components/Pagination.vue +55 -121
  61. package/dist/runtime/components/Pagination.vue.d.ts +93 -0
  62. package/dist/runtime/components/PinInput.vue +49 -58
  63. package/dist/runtime/components/PinInput.vue.d.ts +35 -0
  64. package/dist/runtime/components/Popover.vue +39 -68
  65. package/dist/runtime/components/Popover.vue.d.ts +45 -0
  66. package/dist/runtime/components/Progress.vue +68 -120
  67. package/dist/runtime/components/Progress.vue.d.ts +54 -0
  68. package/dist/runtime/components/RadioGroup.vue +67 -125
  69. package/dist/runtime/components/RadioGroup.vue.d.ts +74 -0
  70. package/dist/runtime/components/ScrollArea.vue +31 -31
  71. package/dist/runtime/components/ScrollArea.vue.d.ts +17 -0
  72. package/dist/runtime/components/Select.vue +114 -204
  73. package/dist/runtime/components/Select.vue.d.ts +119 -0
  74. package/dist/runtime/components/Separator.vue +26 -44
  75. package/dist/runtime/components/Separator.vue.d.ts +27 -0
  76. package/dist/runtime/components/Skeleton.vue +12 -21
  77. package/dist/runtime/components/Skeleton.vue.d.ts +19 -0
  78. package/dist/runtime/components/Slider.vue +52 -74
  79. package/dist/runtime/components/Slider.vue.d.ts +36 -0
  80. package/dist/runtime/components/Switch.vue +51 -71
  81. package/dist/runtime/components/Switch.vue.d.ts +49 -0
  82. package/dist/runtime/components/Table.vue +108 -194
  83. package/dist/runtime/components/Table.vue.d.ts +148 -0
  84. package/dist/runtime/components/Tabs.vue +36 -81
  85. package/dist/runtime/components/Tabs.vue.d.ts +65 -0
  86. package/dist/runtime/components/Textarea.vue +77 -124
  87. package/dist/runtime/components/Textarea.vue.d.ts +60 -0
  88. package/dist/runtime/components/Toast.vue +47 -75
  89. package/dist/runtime/components/Toast.vue.d.ts +131 -0
  90. package/dist/runtime/components/ToastProvider.vue +65 -101
  91. package/dist/runtime/components/ToastProvider.vue.d.ts +38 -0
  92. package/dist/runtime/components/Tooltip.vue +36 -47
  93. package/dist/runtime/components/Tooltip.vue.d.ts +31 -0
  94. package/dist/runtime/composables/useAvatarGroup.d.ts +1 -1
  95. package/dist/runtime/composables/useButtonGroup.d.ts +2 -2
  96. package/dist/runtime/composables/useFormItem.d.ts +2 -2
  97. package/dist/runtime/composables/useKbd.d.ts +1 -1
  98. package/dist/runtime/composables/useLocale.d.ts +3 -3
  99. package/dist/runtime/composables/useTheme.d.ts +1 -1
  100. package/dist/runtime/composables/useToast.d.ts +1 -1
  101. package/dist/runtime/locale/en.d.ts +1 -1
  102. package/dist/runtime/locale/zh-tw.d.ts +1 -1
  103. package/dist/runtime/theme/accordion.d.ts +45 -51
  104. package/dist/runtime/theme/accordion.js +1 -1
  105. package/dist/runtime/theme/alert.d.ts +115 -121
  106. package/dist/runtime/theme/alert.js +1 -1
  107. package/dist/runtime/theme/avatar-group.d.ts +42 -48
  108. package/dist/runtime/theme/avatar-group.js +1 -1
  109. package/dist/runtime/theme/avatar.d.ts +46 -52
  110. package/dist/runtime/theme/avatar.js +1 -1
  111. package/dist/runtime/theme/badge.d.ts +60 -66
  112. package/dist/runtime/theme/badge.js +1 -1
  113. package/dist/runtime/theme/breadcrumb.d.ts +52 -58
  114. package/dist/runtime/theme/breadcrumb.js +1 -1
  115. package/dist/runtime/theme/button-group.d.ts +36 -42
  116. package/dist/runtime/theme/button.d.ts +162 -168
  117. package/dist/runtime/theme/button.js +1 -1
  118. package/dist/runtime/theme/calendar.d.ts +52 -50
  119. package/dist/runtime/theme/calendar.js +20 -3
  120. package/dist/runtime/theme/card.d.ts +52 -58
  121. package/dist/runtime/theme/card.js +1 -1
  122. package/dist/runtime/theme/carousel.d.ts +98 -104
  123. package/dist/runtime/theme/carousel.js +1 -1
  124. package/dist/runtime/theme/checkbox.d.ts +77 -83
  125. package/dist/runtime/theme/checkbox.js +1 -1
  126. package/dist/runtime/theme/chip.d.ts +50 -56
  127. package/dist/runtime/theme/chip.js +1 -1
  128. package/dist/runtime/theme/collapsible.d.ts +29 -35
  129. package/dist/runtime/theme/collapsible.js +1 -1
  130. package/dist/runtime/theme/drawer.d.ts +120 -126
  131. package/dist/runtime/theme/drawer.js +1 -1
  132. package/dist/runtime/theme/dropdown-menu.d.ts +55 -61
  133. package/dist/runtime/theme/dropdown-menu.js +1 -1
  134. package/dist/runtime/theme/form-item.d.ts +63 -69
  135. package/dist/runtime/theme/form-item.js +1 -1
  136. package/dist/runtime/theme/form.d.ts +1 -7
  137. package/dist/runtime/theme/input-number.d.ts +98 -104
  138. package/dist/runtime/theme/input-number.js +1 -1
  139. package/dist/runtime/theme/input.d.ts +153 -159
  140. package/dist/runtime/theme/input.js +1 -1
  141. package/dist/runtime/theme/kbd.d.ts +30 -36
  142. package/dist/runtime/theme/link.d.ts +37 -43
  143. package/dist/runtime/theme/modal.d.ts +36 -42
  144. package/dist/runtime/theme/modal.js +1 -1
  145. package/dist/runtime/theme/pagination.d.ts +71 -77
  146. package/dist/runtime/theme/pagination.js +1 -1
  147. package/dist/runtime/theme/pinInput.d.ts +80 -86
  148. package/dist/runtime/theme/pinInput.js +1 -1
  149. package/dist/runtime/theme/popover.d.ts +29 -35
  150. package/dist/runtime/theme/popover.js +1 -1
  151. package/dist/runtime/theme/progress.d.ts +163 -169
  152. package/dist/runtime/theme/progress.js +1 -1
  153. package/dist/runtime/theme/radio-group.d.ts +99 -105
  154. package/dist/runtime/theme/radio-group.js +1 -1
  155. package/dist/runtime/theme/scroll-area.d.ts +62 -68
  156. package/dist/runtime/theme/scroll-area.js +1 -1
  157. package/dist/runtime/theme/select.d.ts +165 -171
  158. package/dist/runtime/theme/select.js +1 -1
  159. package/dist/runtime/theme/separator.d.ts +62 -68
  160. package/dist/runtime/theme/separator.js +1 -1
  161. package/dist/runtime/theme/skeleton.d.ts +1 -7
  162. package/dist/runtime/theme/slider.d.ts +62 -68
  163. package/dist/runtime/theme/slider.js +1 -1
  164. package/dist/runtime/theme/switch.d.ts +111 -117
  165. package/dist/runtime/theme/switch.js +1 -1
  166. package/dist/runtime/theme/table.d.ts +75 -81
  167. package/dist/runtime/theme/table.js +1 -1
  168. package/dist/runtime/theme/tabs.d.ts +114 -120
  169. package/dist/runtime/theme/tabs.js +1 -1
  170. package/dist/runtime/theme/textarea.d.ts +76 -82
  171. package/dist/runtime/theme/textarea.js +1 -1
  172. package/dist/runtime/theme/toast-provider.d.ts +106 -112
  173. package/dist/runtime/theme/toast-provider.js +1 -1
  174. package/dist/runtime/theme/toast.d.ts +74 -80
  175. package/dist/runtime/theme/toast.js +1 -1
  176. package/dist/runtime/theme/tooltip.d.ts +35 -41
  177. package/dist/runtime/theme/tooltip.js +1 -1
  178. package/dist/runtime/types/utils.d.ts +5 -5
  179. package/dist/runtime/utils/link.d.ts +3 -5
  180. package/dist/runtime/utils/styler.d.ts +2 -2
  181. package/dist/runtime/utils/styler.js +2 -2
  182. package/dist/shared/ui.D1BTWZFB.mjs +5 -0
  183. package/dist/shared/ui.D1BTWZFB.mjs.map +1 -0
  184. package/dist/types.d.mts +1 -1
  185. package/dist/unocss.mjs +5 -4
  186. package/dist/unocss.mjs.map +1 -1
  187. package/dist/unplugin.mjs +1 -1
  188. package/dist/unplugin.mjs.map +1 -1
  189. package/dist/vite.mjs +1 -1
  190. package/package.json +77 -75
  191. package/dist/module.cjs +0 -5
  192. package/dist/shared/ui.3e7fad19.mjs +0 -5
  193. package/dist/shared/ui.3e7fad19.mjs.map +0 -1
  194. package/dist/types.d.ts +0 -1
@@ -1,89 +1,83 @@
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
- avatar: string;
10
- avatarSize: string;
11
- actions: string;
12
- progress: string;
13
- close: string;
1
+ declare const _default: import("@byyuurin/ui-kit").CVScopeMeta<{
2
+ orientation: {
3
+ horizontal: {
4
+ root: string;
5
+ actions: string;
6
+ };
7
+ vertical: {
8
+ root: string;
9
+ actions: string;
10
+ };
11
+ };
12
+ title: {
13
+ true: {
14
+ description: string;
15
+ };
14
16
  };
15
- variants: {
16
- orientation: {
17
- horizontal: {
18
- root: string;
19
- actions: string;
20
- };
21
- vertical: {
22
- root: string;
23
- actions: string;
24
- };
17
+ }, import("@byyuurin/ui-kit").CVCompoundVariants<{
18
+ orientation: {
19
+ horizontal: {
20
+ root: string;
21
+ actions: string;
25
22
  };
26
- title: {
27
- true: {
28
- description: string;
29
- };
23
+ vertical: {
24
+ root: string;
25
+ actions: string;
30
26
  };
31
27
  };
32
- compoundVariants: import("@byyuurin/ui-kit").CVCompoundVariants<{
33
- orientation: {
34
- horizontal: {
35
- root: string;
36
- actions: string;
37
- };
38
- vertical: {
39
- root: string;
40
- actions: string;
41
- };
28
+ title: {
29
+ true: {
30
+ description: string;
42
31
  };
43
- title: {
44
- true: {
45
- description: string;
46
- };
32
+ };
33
+ }, {
34
+ root: string;
35
+ wrapper: string;
36
+ title: string;
37
+ description: string;
38
+ icon: string;
39
+ avatar: string;
40
+ avatarSize: string;
41
+ actions: string;
42
+ progress: string;
43
+ close: string;
44
+ }, undefined>, import("@byyuurin/ui-kit").CVDefaultVariants<{
45
+ orientation: {
46
+ horizontal: {
47
+ root: string;
48
+ actions: string;
47
49
  };
48
- }, {
49
- root: string;
50
- wrapper: string;
51
- title: string;
52
- description: string;
53
- icon: string;
54
- avatar: string;
55
- avatarSize: string;
56
- actions: string;
57
- progress: string;
58
- close: string;
59
- }, undefined>;
60
- defaultVariants: import("@byyuurin/ui-kit").CVDefaultVariants<{
61
- orientation: {
62
- horizontal: {
63
- root: string;
64
- actions: string;
65
- };
66
- vertical: {
67
- root: string;
68
- actions: string;
69
- };
50
+ vertical: {
51
+ root: string;
52
+ actions: string;
70
53
  };
71
- title: {
72
- true: {
73
- description: string;
74
- };
54
+ };
55
+ title: {
56
+ true: {
57
+ description: string;
75
58
  };
76
- }, {
77
- root: string;
78
- wrapper: string;
79
- title: string;
80
- description: string;
81
- icon: string;
82
- avatar: string;
83
- avatarSize: string;
84
- actions: string;
85
- progress: string;
86
- close: string;
87
- }>;
88
- };
59
+ };
60
+ }, {
61
+ root: string;
62
+ wrapper: string;
63
+ title: string;
64
+ description: string;
65
+ icon: string;
66
+ avatar: string;
67
+ avatarSize: string;
68
+ actions: string;
69
+ progress: string;
70
+ close: string;
71
+ }>, undefined, {
72
+ root: string;
73
+ wrapper: string;
74
+ title: string;
75
+ description: string;
76
+ icon: string;
77
+ avatar: string;
78
+ avatarSize: string;
79
+ actions: string;
80
+ progress: string;
81
+ close: string;
82
+ }>;
89
83
  export default _default;
@@ -2,7 +2,7 @@ import { ct } from "@byyuurin/ui-kit";
2
2
  export default ct(
3
3
  /* @unocss-include */
4
4
  {
5
- slots: {
5
+ parts: {
6
6
  root: "group relative overflow-hidden bg-ui-base shadow-lg rounded-ui-box ring ring-ui-base/5 p-4 flex gap-2.5 focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ui-base/5",
7
7
  wrapper: "w-0 flex-1 flex flex-col gap-1",
8
8
  title: "text-base font-medium color-ui-base",
@@ -1,44 +1,38 @@
1
- declare const _default: {
2
- base: undefined;
3
- slots: {
4
- content: string;
5
- arrow: string;
6
- text: string;
1
+ declare const _default: import("@byyuurin/ui-kit").CVScopeMeta<{
2
+ [variantName: string]: {
3
+ [variantValue: string]: "" | {
4
+ content?: import("@byyuurin/ui-kit").ClassValue;
5
+ arrow?: import("@byyuurin/ui-kit").ClassValue;
6
+ text?: import("@byyuurin/ui-kit").ClassValue;
7
+ } | null;
7
8
  };
8
- variants: {
9
- [key: string]: {
10
- [key: string]: "" | {
11
- content?: import("@byyuurin/ui-kit").ClassValue;
12
- arrow?: import("@byyuurin/ui-kit").ClassValue;
13
- text?: import("@byyuurin/ui-kit").ClassValue;
14
- } | null;
15
- };
9
+ }, import("@byyuurin/ui-kit").CVCompoundVariants<{
10
+ [variantName: string]: {
11
+ [variantValue: string]: "" | {
12
+ content?: import("@byyuurin/ui-kit").ClassValue;
13
+ arrow?: import("@byyuurin/ui-kit").ClassValue;
14
+ text?: import("@byyuurin/ui-kit").ClassValue;
15
+ } | null;
16
16
  };
17
- compoundVariants: import("@byyuurin/ui-kit").CVCompoundVariants<{
18
- [key: string]: {
19
- [key: string]: "" | {
20
- content?: import("@byyuurin/ui-kit").ClassValue;
21
- arrow?: import("@byyuurin/ui-kit").ClassValue;
22
- text?: import("@byyuurin/ui-kit").ClassValue;
23
- } | null;
24
- };
25
- }, {
26
- content: string;
27
- arrow: string;
28
- text: string;
29
- }, undefined>;
30
- defaultVariants: import("@byyuurin/ui-kit").CVDefaultVariants<{
31
- [key: string]: {
32
- [key: string]: "" | {
33
- content?: import("@byyuurin/ui-kit").ClassValue;
34
- arrow?: import("@byyuurin/ui-kit").ClassValue;
35
- text?: import("@byyuurin/ui-kit").ClassValue;
36
- } | null;
37
- };
38
- }, {
39
- content: string;
40
- arrow: string;
41
- text: string;
42
- }>;
43
- };
17
+ }, {
18
+ content: string;
19
+ arrow: string;
20
+ text: string;
21
+ }, undefined>, import("@byyuurin/ui-kit").CVDefaultVariants<{
22
+ [variantName: string]: {
23
+ [variantValue: string]: "" | {
24
+ content?: import("@byyuurin/ui-kit").ClassValue;
25
+ arrow?: import("@byyuurin/ui-kit").ClassValue;
26
+ text?: import("@byyuurin/ui-kit").ClassValue;
27
+ } | null;
28
+ };
29
+ }, {
30
+ content: string;
31
+ arrow: string;
32
+ text: string;
33
+ }>, undefined, {
34
+ content: string;
35
+ arrow: string;
36
+ text: string;
37
+ }>;
44
38
  export default _default;
@@ -2,7 +2,7 @@ import { ct } from "@byyuurin/ui-kit";
2
2
  export default ct(
3
3
  /* @unocss-include */
4
4
  {
5
- slots: {
5
+ parts: {
6
6
  content: "z-1 flex items-center gap-1 bg-ui-base color-ui-base shadow-sm rounded-ui-base ring ring-ui-base/10 h-6 px-2 py-1 text-xs select-none data-[state=delayed-open]:animate-[scale-in_100ms_ease-out] data-[state=closed]:animate-[scale-out_100ms_ease-in]",
7
7
  arrow: "fill-ui-cx stroke-ui-cb/10",
8
8
  text: "truncate"
@@ -1,4 +1,4 @@
1
- import type { ClassValue, CTReturn, CVReturnType, VariantProps } from '@byyuurin/ui-kit';
1
+ import type { ClassValue, CVReturnType, CVScopeMeta, VariantProps } from '@byyuurin/ui-kit';
2
2
  import type { AcceptableValue as RekaAcceptableValue } from 'reka-ui';
3
3
  export type MaybeArray<T> = T | T[];
4
4
  export type AcceptableValue = Exclude<RekaAcceptableValue, Record<string, any>>;
@@ -37,16 +37,16 @@ export type GetObjectField<MaybeObject, Key extends string> = MaybeObject extend
37
37
  export interface ComponentAttrs<T> {
38
38
  class?: MaybeArray<string | Record<string, boolean>>;
39
39
  ui?: T extends {
40
- slots: infer S;
40
+ parts: infer P;
41
41
  } ? {
42
- [Slot in keyof S]?: string;
42
+ [Part in keyof P]?: string;
43
43
  } : never;
44
44
  }
45
- export type StylerTheme<T> = T extends CTReturn<infer V, any, any, infer B, infer S> ? CVReturnType<V, S, B> : never;
45
+ export type StylerTheme<T> = T extends CVScopeMeta<infer V, any, any, infer B, infer S> ? CVReturnType<V, S, B> : never;
46
46
  export interface StylerBaseProps {
47
47
  class?: ClassValue;
48
48
  }
49
- export type StylerProps<T> = T extends CTReturn<infer V, any, any, infer B, infer S> ? Parameters<Styler<CVReturnType<V, S, B>>>[0] : never;
49
+ export type StylerProps<T> = T extends CVScopeMeta<infer V, any, any, infer B, infer S> ? Parameters<Styler<CVReturnType<V, S, B>>>[0] : never;
50
50
  export type StylerReturnType<T> = T extends CVReturnType<infer V, infer S, infer B> ? ReturnType<CVReturnType<V, S, B>> : never;
51
51
  export type Styler<T> = T extends CVReturnType<infer V, any, any> ? [keyof V] extends string[] ? (props: VariantProps<T> & StylerBaseProps) => StylerReturnType<T> : (props?: StylerBaseProps) => StylerReturnType<T> : never;
52
52
  export {};
@@ -1,8 +1,6 @@
1
1
  import type { LinkProps } from '../types/index.js';
2
2
  export declare function pickLinkProps(link: LinkProps & {
3
3
  [key: string]: any;
4
- }): {
5
- [x: string]: any;
6
- [x: number]: any;
7
- [x: symbol]: any;
8
- };
4
+ }): import("@vueuse/core").ReactivePickReturn<LinkProps & {
5
+ [key: string]: any;
6
+ }, "label" | "disabled" | "title" | "class" | "active" | "to" | "underline" | "type" | "replace" | "custom" | "activeClass" | "exactActiveClass" | "ariaCurrentValue" | "viewTransition" | `aria-${string}` | `data-${string}` | "as" | "exact" | "exactQuery" | "exactHash" | "inactiveClass" | "disableClass" | "raw" | "href" | "external" | "target" | "rel" | "noRel" | "prefetchedClass" | "prefetch" | "prefetchOn" | "noPrefetch">;
@@ -1,4 +1,4 @@
1
- import type { ClassValue, CRRule, CVCompoundVariants, CVDefaultVariants, CVMeta, CVSlots, CVVariants } from '@byyuurin/ui-kit';
1
+ import type { ClassValue, CRRule, CVCompoundVariants, CVDefaultVariants, CVParts, CVScope, CVVariants } from '@byyuurin/ui-kit';
2
2
  export declare function prepareStyler(rules?: CRRule[]): {
3
- createStyler: <V extends CVVariants<S, B>, CV extends CVCompoundVariants<V, S, B>, DV extends CVDefaultVariants<V, S>, B extends ClassValue = undefined, S extends CVSlots = undefined>(theme: CVMeta<V, CV, DV, B, S>) => [keyof V] extends string[] ? (props: import("@byyuurin/ui-kit").VariantProps<import("@byyuurin/ui-kit").CVReturnType<V, S, B>> & import("..").StylerBaseProps) => S extends undefined ? string : { [K in keyof S | (B extends undefined ? never : "base")]: import("@byyuurin/ui-kit").CVHandler<V, S, string>; } : (props?: import("..").StylerBaseProps) => S extends undefined ? string : { [K in keyof S | (B extends undefined ? never : "base")]: import("@byyuurin/ui-kit").CVHandler<V, S, string>; };
3
+ createStyler: <V extends CVVariants<P, B>, CV extends CVCompoundVariants<V, P, B>, DV extends CVDefaultVariants<V, P>, B extends ClassValue = undefined, P extends CVParts = undefined>(scope: CVScope<V, CV, DV, B, P>) => [keyof V] extends string[] ? (props: import("@byyuurin/ui-kit").VariantProps<import("@byyuurin/ui-kit").CVReturnType<V, P, B>> & import("../types/index.js").StylerBaseProps) => P extends undefined ? { [K in B extends undefined ? never : "base"]: import("@byyuurin/ui-kit").CVHandler<V, P, string>; } : { [K_1 in (B extends undefined ? never : "base") | keyof P]: import("@byyuurin/ui-kit").CVHandler<V, P, string>; } : (props?: import("../types/index.js").StylerBaseProps) => P extends undefined ? { [K in B extends undefined ? never : "base"]: import("@byyuurin/ui-kit").CVHandler<V, P, string>; } : { [K_1 in (B extends undefined ? never : "base") | keyof P]: import("@byyuurin/ui-kit").CVHandler<V, P, string>; };
4
4
  };
@@ -1,8 +1,8 @@
1
1
  import { cv } from "@byyuurin/ui-kit";
2
2
  export function prepareStyler(rules = []) {
3
3
  const createVariants = cv(rules);
4
- function createStyler(theme) {
5
- const ui = createVariants(theme);
4
+ function createStyler(scope) {
5
+ const ui = createVariants(scope);
6
6
  const styler = (props) => ui(props);
7
7
  return styler;
8
8
  }
@@ -0,0 +1,5 @@
1
+ const name = "@byyuurin/ui";
2
+ const version = "0.0.11";
3
+
4
+ export { name as n, version as v };
5
+ //# sourceMappingURL=ui.D1BTWZFB.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui.D1BTWZFB.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
package/dist/types.d.mts CHANGED
@@ -1 +1 @@
1
- export { type ModuleOptions, default } from './module.js'
1
+ export { type ModuleOptions, default } from './module.mjs'
package/dist/unocss.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  import { definePreset, mergeConfigs } from '@unocss/core';
2
2
  import { parseColor, parseCssColor } from '@unocss/preset-mini/utils';
3
3
  import { kebabCase } from 'scule';
4
- import { presetUno } from '@unocss/preset-uno';
4
+ import { presetWind3 } from '@unocss/preset-wind3';
5
5
 
6
6
  const cssVarsPrefix = "ui";
7
7
  const cssVarsBase = ["cb", "cp", "cx"];
@@ -196,7 +196,7 @@ function createRootCSS(kv) {
196
196
  }
197
197
 
198
198
  const baseUnoConfig = mergeConfigs([
199
- presetUno(),
199
+ presetWind3(),
200
200
  preset()
201
201
  ]);
202
202
  function transformUnoRules(userConfig = {}) {
@@ -222,7 +222,7 @@ function transformUnoRules(userConfig = {}) {
222
222
  const valueArray = propertiesOnly && properties.size > 0 ? Array.from(properties.values()) : values;
223
223
  return valueArray.join(",");
224
224
  };
225
- const resolveCSSEntries = (entries) => () => toString(entries.flatMap((value) => Object.keys(value)));
225
+ const resolveCSSValues = (values) => () => toString(values.flatMap((value) => Object.keys(value)));
226
226
  const resolveCSSObject = (object) => () => {
227
227
  if (JSON.stringify(object) === "{}")
228
228
  return null;
@@ -232,7 +232,8 @@ function transformUnoRules(userConfig = {}) {
232
232
  const [maybeString, maybeResult] = rule;
233
233
  const ruleRE = typeof maybeString === "string" ? new RegExp(`^(?:${maybeString})$`) : maybeString;
234
234
  if (Array.isArray(maybeResult)) {
235
- mergeRules.push([ruleRE, resolveCSSEntries(maybeResult)]);
235
+ const inputs = maybeResult.filter((item) => typeof item === "object");
236
+ mergeRules.push([ruleRE, resolveCSSValues(inputs)]);
236
237
  continue;
237
238
  }
238
239
  if (typeof maybeResult === "object") {
@@ -1 +1 @@
1
- {"version":3,"file":"unocss.mjs","sources":["../src/_unocss/constants.ts","../src/_unocss/theme.ts","../src/_unocss/rules.ts","../src/_unocss/preset.ts","../src/_unocss/rule-transform.ts"],"sourcesContent":["export const cssVarsPrefix = 'ui'\nexport const cssVarsBase = ['cb', 'cp', 'cx']\nexport const cssVarsDynamic = ['fill']\nexport const cssVarsAll = [...cssVarsBase, ...cssVarsDynamic]\n","import type { Theme } from '@unocss/preset-mini'\nimport { cssVarsPrefix } from './constants'\n\nexport const theme: Theme = {\n colors: {\n [cssVarsPrefix]: {\n cb: cssColor(cssVar('cb')),\n cx: cssColor(cssVar('cx')),\n primary: cssColor(cssVar('cp', cssVar('content'), cssVar('cb'))),\n fill: cssColor(cssVar('fill', cssVar('cb'))),\n },\n },\n backgroundColor: {\n [cssVarsPrefix]: {\n base: cssColor(cssVar('cx')),\n },\n },\n textColor: {\n [cssVarsPrefix]: {\n base: cssColor(cssVar('cb')),\n },\n },\n borderColor: {\n [cssVarsPrefix]: {\n base: cssColor(cssVar('cb')),\n },\n },\n borderRadius: {\n ...Object.fromEntries(['base', 'box', 'button', 'checkbox', 'radio', 'switch', 'tabs']\n .map((name) => [`${cssVarsPrefix}-${name}`, name === 'base'\n ? cssVar('radius')\n : cssVar(`radius-${name}`, cssVar('radius'))])),\n },\n ringWidth: {\n DEFAULT: '1px',\n },\n shadowColor: {\n [cssVarsPrefix]: {\n base: cssColor(cssVar('cb')),\n },\n },\n animation: {\n keyframes: {\n 'fade-in': '{from {opacity: 0;}to {opacity: 1;}}',\n 'fade-out': '{from {opacity: 1;}to {opacity: 0;}}',\n 'scale-in': '{from {opacity: 0;scale: 0.95;}to {opacity: 1;scale: 1;}}',\n 'scale-out': '{from {opacity: 1;scale: 1;}to {opacity: 0;scale: 0.95;}}',\n 'slide-in-from-top': '{from {transform: translateY(-100%);}to {transform: translateY(0);}}',\n 'slide-out-to-top': '{from {transform: translateY(0);}to {transform: translateY(-100%);}}',\n 'slide-in-from-right': '{from {transform: translateX(100%);}to {transform: translateX(0);}}',\n 'slide-out-to-right': '{from {transform: translateX(0);}to {transform: translateX(100%);}}',\n 'slide-in-from-bottom': '{from {transform: translateY(100%);}to {transform: translateY(0);}}',\n 'slide-out-to-bottom': '{from {transform: translateY(0);}to {transform: translateY(100%);}}',\n 'slide-in-from-left': '{from {transform: translateX(-100%);}to {transform: translateX(0);}}',\n 'slide-out-to-left': '{from {transform: translateX(0);}to {transform: translateX(-100%);}}',\n 'slide-in-from-top-and-fade': '{from {opacity: 0;transform: translateY(-4px);}to {opacity: 1;transform: translateY(0);}}',\n 'slide-out-to-top-and-fade': '{from {opacity: 1;transform: translateY(0);}to {opacity: 0;transform: translateY(-4px);}}',\n 'slide-in-from-right-and-fade': '{from {opacity: 0;transform: translateX(4px);}to {opacity: 1;transform: translateX(0);}}',\n 'slide-out-to-right-and-fade': '{from {opacity: 1;transform: translateX(0);}to {opacity: 0;transform: translateX(4px);}}',\n 'slide-in-from-bottom-and-fade': '{from {opacity: 0;transform: translateY(4px);}to {opacity: 1;transform: translateY(0);}}',\n 'slide-out-to-bottom-and-fade': '{from {opacity: 1;transform: translateY(0);}to {opacity: 0;transform: translateY(4px);}}',\n 'slide-in-from-left-and-fade': '{from {opacity: 0;transform: translateX(-4px);}to {opacity: 1;transform: translateX(0);}}',\n 'slide-out-to-left-and-fade': '{from {opacity: 1;transform: translateX(0);}to {opacity: 0;transform: translateX(-4px);}}',\n },\n },\n}\n\nexport function cssVar(name: string, ...defaultValue: string[]) {\n return `var(${[`--${cssVarsPrefix}-${name}`, ...defaultValue].join(',')})`\n}\n\nexport function cssColor(...rgb: (string | number)[]) {\n return `rgb(${rgb.join(' ')})`\n}\n\nexport default theme\n","import type { Rule } from '@unocss/core'\nimport type { ParsedColorValue } from '@unocss/preset-mini/utils'\nimport { parseColor } from '@unocss/preset-mini/utils'\nimport { cssVarsAll, cssVarsDynamic, cssVarsPrefix } from './constants'\nimport { cssColor, cssVar } from './theme'\n\nexport const rules: Rule[] = [\n [\n new RegExp(`^${cssVarsPrefix}-([^/]+)$`),\n ([_, color], ctx) => {\n if (!color)\n return\n\n if (color === 'base')\n return Object.fromEntries(cssVarsDynamic.map((prop) => [`--${cssVarsPrefix}-${prop}`, cssVar('cb')]))\n\n if (color === 'base-reverse')\n return Object.fromEntries(cssVarsDynamic.map((prop) => [`--${cssVarsPrefix}-${prop}`, cssVar('cx')]))\n\n if (color === 'primary')\n return Object.fromEntries(cssVarsDynamic.map((prop) => [`--${cssVarsPrefix}-${prop}`, cssVar('cp', cssVar('cb'))]))\n\n const data = parseColor(color, ctx.theme)\n const value = resolveRuleValue(data)\n\n if (value)\n return Object.fromEntries(cssVarsDynamic.map((prop) => [`--${cssVarsPrefix}-${prop}`, value]))\n },\n { autocomplete: `${cssVarsPrefix}-$colors` },\n ],\n [\n new RegExp(`^${cssVarsPrefix}-(?:(${cssVarsAll.join('|')})-)([^/]+)$`),\n ([_, prop, color], ctx) => {\n if (!color)\n return\n\n if (color === 'base')\n return { [`--${cssVarsPrefix}-${prop}`]: cssVar('cb') }\n\n if (color === 'base-reverse')\n return { [`--${cssVarsPrefix}-${prop}`]: cssVar('cx') }\n\n if (color === 'primary')\n return { [`--${cssVarsPrefix}-${prop}`]: cssVar('cp', cssVar('cb')) }\n\n const data = parseColor(color, ctx.theme)\n const value = resolveRuleValue(data)\n\n if (value)\n return { [`--${cssVarsPrefix}-${prop}`]: value }\n },\n { autocomplete: `${cssVarsPrefix}-(${cssVarsAll.join('|')})-$colors` },\n ],\n [\n /^bg-soft-(.+)$/,\n ([_, color], { theme }) => {\n if (!color)\n return\n\n const parsed = parseColor(color, theme)\n\n if (!parsed || parsed.cssColor?.type !== 'rgb')\n return\n\n const rgb = `rgb(${parsed.cssColor.components.join(' ')})`\n const opacity = parsed.opacity || '100'\n\n return {\n 'background-color': `color-mix(in srgb, ${rgb} ${opacity}%, ${cssColor(cssVar('cx'))})`,\n }\n },\n ],\n // overrides\n [/^rotate-(\\d+)$/, ([_, d]) => ({ rotate: `${d}deg` })],\n]\n\nexport default rules\n\nfunction resolveRuleValue(data: ParsedColorValue | undefined) {\n if (data?.color && data.cssColor?.components) {\n let value = data.cssColor.components.join(' ')\n\n if (!/var\\s*\\((.+)\\)(.*)/.test(data.color))\n value += ` /* ${data.color} */`\n\n return value\n }\n\n return null\n}\n","import { definePreset } from '@unocss/core'\nimport { parseCssColor } from '@unocss/preset-mini/utils'\nimport { kebabCase } from 'scule'\nimport { cssVarsPrefix } from './constants'\nimport rules from './rules'\nimport theme, { cssColor, cssVar } from './theme'\n\nexport interface PresetOptions {\n /** @default \"0rem\" */\n radius?: string\n /** @default \"[radius]\" */\n radiusBox?: string\n /** @default \"[radius]\" */\n radiusButton?: string\n /** @default \"[radius]\" */\n radiusCheckbox?: string\n /** @default \"[radius]\" */\n radiusRadio?: string\n /** @default \"[radius]\" */\n radiusSwitch?: string\n /** @default \"[radius]\" */\n radiusTabs?: string\n /**\n * Base content color\n * @default \"#1f2937\"\n */\n cb?: string\n /**\n * Primary color\n * @default \"[cb]\"\n */\n cp?: string\n /**\n * Base background color\n * @default \"#ffffff\"\n */\n cx?: string\n}\n\nexport const preset = definePreset((\n options: PresetOptions = {},\n) => {\n return {\n name: 'unocss-preset-ui',\n theme,\n rules,\n preflights: [\n { getCSS: () => createRootCSS(mergeOptions(options)) },\n ],\n safelist: Object.keys(theme.animation!.keyframes!).map((v) => `keyframes-${v}`),\n }\n})\n\nfunction mergeOptions(options: PresetOptions): PresetOptions {\n const defaults: Required<PresetOptions> = {\n radius: '0rem',\n radiusBox: '',\n radiusButton: '',\n radiusCheckbox: '',\n radiusRadio: '',\n radiusSwitch: '',\n radiusTabs: '',\n cb: '#1f2937',\n cp: '',\n cx: '#ffffff',\n }\n\n return {\n ...defaults,\n ...options,\n }\n}\n\nfunction createRootCSS(kv: PresetOptions) {\n const join = (input: string[]) => input.map((item) => item.endsWith(';') ? item : `${item};`).join('')\n\n const css = [\n // initial\n `:root{${join(Object.entries(kv)\n .filter(([_, v]) => Boolean(v))\n .map(([k, v]) => {\n const name = kebabCase(k)\n const content = parseCssColor(v)?.components.join(' ') ?? v\n return `--${cssVarsPrefix}-${name}:${content}`\n }))}}`,\n // reset\n `:root{${join([\n `color:${cssColor(cssVar('cb'))}`,\n ])}}`,\n `*,::before,::after{${join([\n `--un-default-border-color:color-mix(in srgb,${cssColor(cssVar('cb'))} 10%,transparent)`,\n `accent-color:${cssColor(cssVar('fill', cssVar('cb')))}`,\n `scrollbar-color:color-mix(in srgb,${cssColor(cssVar('cb'))} 25%,transparent) transparent`,\n ])}}`,\n `*::selection{${join([\n `color:${cssColor(cssVar('cx'))}`,\n `background-color:${cssColor(cssVar('cp', cssVar('cb')))}`,\n ])}}`,\n ]\n\n return css.join('')\n}\n","import type { CRRule, CRRuleMatcher } from '@byyuurin/ui-kit'\nimport type { CSSEntries, CSSObject, UserConfig } from '@unocss/core'\nimport { mergeConfigs } from '@unocss/core'\nimport { presetUno } from '@unocss/preset-uno'\nimport { preset } from './preset'\n\nconst baseUnoConfig = mergeConfigs([\n presetUno(),\n preset(),\n])\n\nexport function transformUnoRules(\n userConfig: UserConfig = {},\n): CRRule[] {\n const { rules = [], theme = {} } = mergeConfigs([baseUnoConfig, userConfig])\n const mergeRules: CRRule[] = []\n\n const toString = (values: string[]) => {\n const variables = new Set<string>([])\n const properties = new Set<string>([])\n const propertiesIgnores = new Set<string>(['transform'])\n let propertiesOnly = true\n\n values.forEach((value) => {\n if (propertiesIgnores.has(value)) {\n properties.add(value)\n propertiesOnly = false\n return\n }\n\n if (value.startsWith('--')) {\n variables.add(value)\n return\n }\n\n properties.add(value)\n })\n\n const valueArray = propertiesOnly && properties.size > 0 ? Array.from(properties.values()) : values\n\n return valueArray.join(',')\n }\n\n const resolveCSSEntries = (entries: CSSEntries) => () => toString(entries.flatMap((value) => Object.keys(value)))\n\n const resolveCSSObject = (object: CSSObject) => () => {\n if (JSON.stringify(object) === '{}')\n return null\n\n return toString(Object.keys(object))\n }\n\n for (const rule of rules) {\n const [maybeString, maybeResult] = rule\n const ruleRE = typeof maybeString === 'string' ? new RegExp(`^(?:${maybeString})$`) : maybeString\n\n if (Array.isArray(maybeResult)) {\n mergeRules.push([ruleRE, resolveCSSEntries(maybeResult)])\n continue\n }\n\n if (typeof maybeResult === 'object') {\n mergeRules.push([ruleRE, resolveCSSObject(maybeResult)])\n continue\n }\n\n const matcher: CRRuleMatcher = (matches) => {\n try {\n const result = maybeResult(['', ...matches], {\n theme,\n // @ts-expect-error pass\n generator: { config: {} },\n })\n\n if (Array.isArray(result))\n return toString(result.filter((i) => typeof i === 'object').map((i) => Array.isArray(i) ? i[0] : Object.keys(i).join(',')) as string[])\n\n if (typeof result === 'object')\n return resolveCSSObject(result as any)()\n }\n catch (e: any) {\n console.warn(`[Fail Rule]`, ruleRE, e.message)\n }\n\n return null\n }\n\n mergeRules.push([ruleRE, matcher])\n }\n\n return mergeRules.sort(([r1], [r2]) => r2.source.length - r1.source.length)\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unocss.mjs","sources":["../src/_unocss/constants.ts","../src/_unocss/theme.ts","../src/_unocss/rules.ts","../src/_unocss/preset.ts","../src/_unocss/rule-transform.ts"],"sourcesContent":["export const cssVarsPrefix = 'ui'\nexport const cssVarsBase = ['cb', 'cp', 'cx']\nexport const cssVarsDynamic = ['fill']\nexport const cssVarsAll = [...cssVarsBase, ...cssVarsDynamic]\n","import type { Theme } from '@unocss/preset-mini'\nimport { cssVarsPrefix } from './constants'\n\nexport const theme: Theme = {\n colors: {\n [cssVarsPrefix]: {\n cb: cssColor(cssVar('cb')),\n cx: cssColor(cssVar('cx')),\n primary: cssColor(cssVar('cp', cssVar('content'), cssVar('cb'))),\n fill: cssColor(cssVar('fill', cssVar('cb'))),\n },\n },\n backgroundColor: {\n [cssVarsPrefix]: {\n base: cssColor(cssVar('cx')),\n },\n },\n textColor: {\n [cssVarsPrefix]: {\n base: cssColor(cssVar('cb')),\n },\n },\n borderColor: {\n [cssVarsPrefix]: {\n base: cssColor(cssVar('cb')),\n },\n },\n borderRadius: {\n ...Object.fromEntries(['base', 'box', 'button', 'checkbox', 'radio', 'switch', 'tabs']\n .map((name) => [`${cssVarsPrefix}-${name}`, name === 'base'\n ? cssVar('radius')\n : cssVar(`radius-${name}`, cssVar('radius'))])),\n },\n ringWidth: {\n DEFAULT: '1px',\n },\n shadowColor: {\n [cssVarsPrefix]: {\n base: cssColor(cssVar('cb')),\n },\n },\n animation: {\n keyframes: {\n 'fade-in': '{from {opacity: 0;}to {opacity: 1;}}',\n 'fade-out': '{from {opacity: 1;}to {opacity: 0;}}',\n 'scale-in': '{from {opacity: 0;scale: 0.95;}to {opacity: 1;scale: 1;}}',\n 'scale-out': '{from {opacity: 1;scale: 1;}to {opacity: 0;scale: 0.95;}}',\n 'slide-in-from-top': '{from {transform: translateY(-100%);}to {transform: translateY(0);}}',\n 'slide-out-to-top': '{from {transform: translateY(0);}to {transform: translateY(-100%);}}',\n 'slide-in-from-right': '{from {transform: translateX(100%);}to {transform: translateX(0);}}',\n 'slide-out-to-right': '{from {transform: translateX(0);}to {transform: translateX(100%);}}',\n 'slide-in-from-bottom': '{from {transform: translateY(100%);}to {transform: translateY(0);}}',\n 'slide-out-to-bottom': '{from {transform: translateY(0);}to {transform: translateY(100%);}}',\n 'slide-in-from-left': '{from {transform: translateX(-100%);}to {transform: translateX(0);}}',\n 'slide-out-to-left': '{from {transform: translateX(0);}to {transform: translateX(-100%);}}',\n 'slide-in-from-top-and-fade': '{from {opacity: 0;transform: translateY(-4px);}to {opacity: 1;transform: translateY(0);}}',\n 'slide-out-to-top-and-fade': '{from {opacity: 1;transform: translateY(0);}to {opacity: 0;transform: translateY(-4px);}}',\n 'slide-in-from-right-and-fade': '{from {opacity: 0;transform: translateX(4px);}to {opacity: 1;transform: translateX(0);}}',\n 'slide-out-to-right-and-fade': '{from {opacity: 1;transform: translateX(0);}to {opacity: 0;transform: translateX(4px);}}',\n 'slide-in-from-bottom-and-fade': '{from {opacity: 0;transform: translateY(4px);}to {opacity: 1;transform: translateY(0);}}',\n 'slide-out-to-bottom-and-fade': '{from {opacity: 1;transform: translateY(0);}to {opacity: 0;transform: translateY(4px);}}',\n 'slide-in-from-left-and-fade': '{from {opacity: 0;transform: translateX(-4px);}to {opacity: 1;transform: translateX(0);}}',\n 'slide-out-to-left-and-fade': '{from {opacity: 1;transform: translateX(0);}to {opacity: 0;transform: translateX(-4px);}}',\n },\n },\n}\n\nexport function cssVar(name: string, ...defaultValue: string[]) {\n return `var(${[`--${cssVarsPrefix}-${name}`, ...defaultValue].join(',')})`\n}\n\nexport function cssColor(...rgb: (string | number)[]) {\n return `rgb(${rgb.join(' ')})`\n}\n\nexport default theme\n","import type { Rule } from '@unocss/core'\nimport type { ParsedColorValue } from '@unocss/preset-mini/utils'\nimport { parseColor } from '@unocss/preset-mini/utils'\nimport { cssVarsAll, cssVarsDynamic, cssVarsPrefix } from './constants'\nimport { cssColor, cssVar } from './theme'\n\nexport const rules: Rule[] = [\n [\n new RegExp(`^${cssVarsPrefix}-([^/]+)$`),\n ([_, color], ctx) => {\n if (!color)\n return\n\n if (color === 'base')\n return Object.fromEntries(cssVarsDynamic.map((prop) => [`--${cssVarsPrefix}-${prop}`, cssVar('cb')]))\n\n if (color === 'base-reverse')\n return Object.fromEntries(cssVarsDynamic.map((prop) => [`--${cssVarsPrefix}-${prop}`, cssVar('cx')]))\n\n if (color === 'primary')\n return Object.fromEntries(cssVarsDynamic.map((prop) => [`--${cssVarsPrefix}-${prop}`, cssVar('cp', cssVar('cb'))]))\n\n const data = parseColor(color, ctx.theme)\n const value = resolveRuleValue(data)\n\n if (value)\n return Object.fromEntries(cssVarsDynamic.map((prop) => [`--${cssVarsPrefix}-${prop}`, value]))\n },\n { autocomplete: `${cssVarsPrefix}-$colors` },\n ],\n [\n new RegExp(`^${cssVarsPrefix}-(?:(${cssVarsAll.join('|')})-)([^/]+)$`),\n ([_, prop, color], ctx) => {\n if (!color)\n return\n\n if (color === 'base')\n return { [`--${cssVarsPrefix}-${prop}`]: cssVar('cb') }\n\n if (color === 'base-reverse')\n return { [`--${cssVarsPrefix}-${prop}`]: cssVar('cx') }\n\n if (color === 'primary')\n return { [`--${cssVarsPrefix}-${prop}`]: cssVar('cp', cssVar('cb')) }\n\n const data = parseColor(color, ctx.theme)\n const value = resolveRuleValue(data)\n\n if (value)\n return { [`--${cssVarsPrefix}-${prop}`]: value }\n },\n { autocomplete: `${cssVarsPrefix}-(${cssVarsAll.join('|')})-$colors` },\n ],\n [\n /^bg-soft-(.+)$/,\n ([_, color], { theme }) => {\n if (!color)\n return\n\n const parsed = parseColor(color, theme)\n\n if (!parsed || parsed.cssColor?.type !== 'rgb')\n return\n\n const rgb = `rgb(${parsed.cssColor.components.join(' ')})`\n const opacity = parsed.opacity || '100'\n\n return {\n 'background-color': `color-mix(in srgb, ${rgb} ${opacity}%, ${cssColor(cssVar('cx'))})`,\n }\n },\n ],\n // overrides\n [/^rotate-(\\d+)$/, ([_, d]) => ({ rotate: `${d}deg` })],\n]\n\nexport default rules\n\nfunction resolveRuleValue(data: ParsedColorValue | undefined) {\n if (data?.color && data.cssColor?.components) {\n let value = data.cssColor.components.join(' ')\n\n if (!/var\\s*\\((.+)\\)(.*)/.test(data.color))\n value += ` /* ${data.color} */`\n\n return value\n }\n\n return null\n}\n","import { definePreset } from '@unocss/core'\nimport { parseCssColor } from '@unocss/preset-mini/utils'\nimport { kebabCase } from 'scule'\nimport { cssVarsPrefix } from './constants'\nimport rules from './rules'\nimport theme, { cssColor, cssVar } from './theme'\n\nexport interface PresetOptions {\n /** @default \"0rem\" */\n radius?: string\n /** @default \"[radius]\" */\n radiusBox?: string\n /** @default \"[radius]\" */\n radiusButton?: string\n /** @default \"[radius]\" */\n radiusCheckbox?: string\n /** @default \"[radius]\" */\n radiusRadio?: string\n /** @default \"[radius]\" */\n radiusSwitch?: string\n /** @default \"[radius]\" */\n radiusTabs?: string\n /**\n * Base content color\n * @default \"#1f2937\"\n */\n cb?: string\n /**\n * Primary color\n * @default \"[cb]\"\n */\n cp?: string\n /**\n * Base background color\n * @default \"#ffffff\"\n */\n cx?: string\n}\n\nexport const preset = definePreset((\n options: PresetOptions = {},\n) => {\n return {\n name: 'unocss-preset-ui',\n theme,\n rules,\n preflights: [\n { getCSS: () => createRootCSS(mergeOptions(options)) },\n ],\n safelist: Object.keys(theme.animation!.keyframes!).map((v) => `keyframes-${v}`),\n }\n})\n\nfunction mergeOptions(options: PresetOptions): PresetOptions {\n const defaults: Required<PresetOptions> = {\n radius: '0rem',\n radiusBox: '',\n radiusButton: '',\n radiusCheckbox: '',\n radiusRadio: '',\n radiusSwitch: '',\n radiusTabs: '',\n cb: '#1f2937',\n cp: '',\n cx: '#ffffff',\n }\n\n return {\n ...defaults,\n ...options,\n }\n}\n\nfunction createRootCSS(kv: PresetOptions) {\n const join = (input: string[]) => input.map((item) => item.endsWith(';') ? item : `${item};`).join('')\n\n const css = [\n // initial\n `:root{${join(Object.entries(kv)\n .filter(([_, v]) => Boolean(v))\n .map(([k, v]) => {\n const name = kebabCase(k)\n const content = parseCssColor(v)?.components.join(' ') ?? v\n return `--${cssVarsPrefix}-${name}:${content}`\n }))}}`,\n // reset\n `:root{${join([\n `color:${cssColor(cssVar('cb'))}`,\n ])}}`,\n `*,::before,::after{${join([\n `--un-default-border-color:color-mix(in srgb,${cssColor(cssVar('cb'))} 10%,transparent)`,\n `accent-color:${cssColor(cssVar('fill', cssVar('cb')))}`,\n `scrollbar-color:color-mix(in srgb,${cssColor(cssVar('cb'))} 25%,transparent) transparent`,\n ])}}`,\n `*::selection{${join([\n `color:${cssColor(cssVar('cx'))}`,\n `background-color:${cssColor(cssVar('cp', cssVar('cb')))}`,\n ])}}`,\n ]\n\n return css.join('')\n}\n","import type { CRRule, CRRuleMatcher } from '@byyuurin/ui-kit'\nimport type { CSSEntry, CSSObject, CSSValueInput, UserConfig } from '@unocss/core'\nimport { mergeConfigs } from '@unocss/core'\nimport { presetWind3 } from '@unocss/preset-wind3'\nimport { preset } from './preset'\n\nconst baseUnoConfig = mergeConfigs([\n presetWind3(),\n preset(),\n])\n\nexport function transformUnoRules(\n userConfig: UserConfig = {},\n): CRRule[] {\n const { rules = [], theme = {} } = mergeConfigs([baseUnoConfig, userConfig])\n const mergeRules: CRRule[] = []\n\n const toString = (values: string[]) => {\n const variables = new Set<string>([])\n const properties = new Set<string>([])\n const propertiesIgnores = new Set<string>(['transform'])\n let propertiesOnly = true\n\n values.forEach((value) => {\n if (propertiesIgnores.has(value)) {\n properties.add(value)\n propertiesOnly = false\n return\n }\n\n if (value.startsWith('--')) {\n variables.add(value)\n return\n }\n\n properties.add(value)\n })\n\n const valueArray = propertiesOnly && properties.size > 0 ? Array.from(properties.values()) : values\n\n return valueArray.join(',')\n }\n\n const resolveCSSValues = (values: (CSSEntry | CSSValueInput)[]) => () => toString(values.flatMap((value) => Object.keys(value)))\n\n const resolveCSSObject = (object: CSSObject) => () => {\n if (JSON.stringify(object) === '{}')\n return null\n\n return toString(Object.keys(object))\n }\n\n for (const rule of rules) {\n const [maybeString, maybeResult] = rule\n const ruleRE = typeof maybeString === 'string' ? new RegExp(`^(?:${maybeString})$`) : maybeString\n\n if (Array.isArray(maybeResult)) {\n const inputs = maybeResult.filter((item) => typeof item === 'object')\n mergeRules.push([ruleRE, resolveCSSValues(inputs)])\n continue\n }\n\n if (typeof maybeResult === 'object') {\n mergeRules.push([ruleRE, resolveCSSObject(maybeResult)])\n continue\n }\n\n const matcher: CRRuleMatcher = (matches) => {\n try {\n const result = maybeResult(['', ...matches], {\n theme,\n // @ts-expect-error pass\n generator: { config: {} },\n })\n\n if (Array.isArray(result))\n return toString(result.filter((i) => typeof i === 'object').map((i) => Array.isArray(i) ? i[0] : Object.keys(i).join(',')) as string[])\n\n if (typeof result === 'object')\n return resolveCSSObject(result as any)()\n }\n catch (e: any) {\n console.warn(`[Fail Rule]`, ruleRE, e.message)\n }\n\n return null\n }\n\n mergeRules.push([ruleRE, matcher])\n }\n\n return mergeRules.sort(([r1], [r2]) => r2.source.length - r1.source.length)\n}\n"],"names":[],"mappings":"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"}
package/dist/unplugin.mjs CHANGED
@@ -7,7 +7,7 @@ import { globSync } from 'tinyglobby';
7
7
  import AutoImportComponents from 'unplugin-vue-components';
8
8
  import MagicString from 'magic-string';
9
9
  import { resolvePathSync } from 'mlly';
10
- import { n as name } from './shared/ui.3e7fad19.mjs';
10
+ import { n as name } from './shared/ui.D1BTWZFB.mjs';
11
11
 
12
12
  function AutoImportPlugin(options, meta) {
13
13
  const pluginOptions = defu(options.autoImport, {
@@ -1 +1 @@
1
- {"version":3,"file":"unplugin.mjs","sources":["../src/_unplugin/auto-import.ts","../src/_unplugin/components.ts","../src/_unplugin/nuxt-environment.ts","../src/unplugin.ts"],"sourcesContent":["import { defu } from 'defu'\nimport { join } from 'pathe'\nimport type { UnpluginContextMeta, UnpluginOptions } from 'unplugin'\nimport AutoImport from 'unplugin-auto-import'\nimport type { Options as AutoImportOptions } from 'unplugin-auto-import/types'\nimport type { UIOptions } from '../unplugin'\nimport { runtimeDir } from '../unplugin'\n\n/** This plugin adds all the UI composables as auto-imports. */\n// ref: https://github.com/nuxt/ui/blob/6c20f8a9ea03273a795c5f88c071830decd54c1e/src/plugins/auto-import.ts\nexport default function AutoImportPlugin(options: UIOptions, meta: UnpluginContextMeta): UnpluginOptions {\n const pluginOptions = defu(options.autoImport, <AutoImportOptions>{\n dts: options.dts ?? true,\n dirs: [join(runtimeDir, 'composables')],\n })\n\n return AutoImport.raw(pluginOptions, meta) as UnpluginOptions\n}\n","import { defu } from 'defu'\r\nimport { join } from 'pathe'\r\nimport { globSync } from 'tinyglobby'\r\nimport type { UnpluginContextMeta, UnpluginOptions } from 'unplugin'\r\nimport AutoImportComponents from 'unplugin-vue-components'\r\nimport type { Options as ComponentsOptions } from 'unplugin-vue-components/types'\r\nimport type { UIOptions } from '../unplugin'\r\nimport { runtimeDir } from '../unplugin'\r\n\r\n/** This plugin adds all the Nuxt UI components as auto-imports. */\r\n// ref: https://github.com/nuxt/ui/tree/6c20f8a9ea03273a795c5f88c071830decd54c1e/src/plugins/components.ts\r\nexport default function ComponentImportPlugin(options: UIOptions, meta: UnpluginContextMeta) {\r\n const { prefix = 'U' } = options\r\n const components = globSync('**/*.vue', { cwd: join(runtimeDir, 'components') })\r\n const componentNames = new Set(components.map((c) => `${prefix}${c.replace(/\\.vue$/, '')}`))\r\n\r\n const pluginOptions = defu(options.components, <ComponentsOptions>{\r\n dts: options.dts ?? true,\r\n resolvers: [\r\n (componentName) => {\r\n if (componentNames.has(componentName))\r\n return { name: 'default', from: join(runtimeDir, 'components', `${componentName.slice(prefix.length)}.vue`) }\r\n },\r\n ],\r\n })\r\n\r\n return AutoImportComponents.raw(pluginOptions, meta) as UnpluginOptions\r\n}\r\n","import MagicString from 'magic-string'\nimport { resolvePathSync } from 'mlly'\nimport { normalize } from 'pathe'\nimport type { UnpluginOptions } from 'unplugin'\nimport { runtimeDir } from '../unplugin'\n\n/**\n * This plugin normalises Nuxt environment (#imports) and `import.meta.client` within the UI components.\n */\n// ref: https://github.com/nuxt/ui/blob/0f99a4cdbcbca3090ef0a58f475be46de4eeb9ff/src/plugins/nuxt-environment.ts\nexport default function NuxtEnvironmentPlugin(): UnpluginOptions {\n const stubPath = resolvePathSync('../runtime/vue/stubs', { extensions: ['.ts', '.mjs', '.js'], url: import.meta.url })\n const name = 'byyuurin:ui'\n const resolveId = '#imports'\n\n return {\n name,\n enforce: 'pre',\n resolveId(id) {\n // this is implemented here rather than in a vite `config` hook for cross-builder support\n if (id === resolveId)\n return stubPath\n },\n transformInclude(id) {\n return normalize(id).includes(runtimeDir)\n },\n transform(code) {\n if (code.includes('import.meta.client')) {\n const s = new MagicString(code)\n s.replaceAll('import.meta.client', 'true')\n\n if (s.hasChanged()) {\n return {\n code: s.toString(),\n map: s.generateMap({ hires: true }),\n }\n }\n }\n },\n }\n}\n","import { fileURLToPath } from 'node:url'\r\nimport { normalize } from 'pathe'\r\nimport type { UnpluginOptions } from 'unplugin'\r\nimport { createUnplugin } from 'unplugin'\r\nimport type { Options as AutoImportOptions } from 'unplugin-auto-import/types'\r\nimport type { Options as ComponentsOptions } from 'unplugin-vue-components/types'\r\nimport AutoImportPlugin from './_unplugin/auto-import'\r\nimport ComponentImportPlugin from './_unplugin/components'\r\nimport NuxtEnvironmentPlugin from './_unplugin/nuxt-environment'\r\nimport { packageName } from './shared'\r\n\r\nexport const runtimeDir = normalize(fileURLToPath(new URL('runtime', import.meta.url)))\r\n\r\nexport interface UIOptions {\r\n /**\r\n * prefix for components used in templates\r\n *\r\n * @default \"U\"\r\n */\r\n prefix?: string\r\n /** Whether to generate declaration files for auto-imported components. */\r\n dts?: boolean\r\n /**\r\n * Override options for `unplugin-auto-import`\r\n */\r\n autoImport?: Partial<AutoImportOptions>\r\n /**\r\n * Override options for `unplugin-vue-components`\r\n */\r\n components?: Partial<ComponentsOptions>\r\n}\r\n\r\nexport const unplugin = createUnplugin<UIOptions | undefined>((options: UIOptions = {}, meta) => {\r\n return [\r\n NuxtEnvironmentPlugin(),\r\n ComponentImportPlugin(options, meta),\r\n AutoImportPlugin(options, meta),\r\n <UnpluginOptions>{\r\n name: 'byyuurin:ui:plugins-duplication-detection',\r\n vite: {\r\n config() {\r\n return {\r\n optimizeDeps: {\r\n include: [`${packageName}/unocss`],\r\n },\r\n }\r\n },\r\n configResolved(config) {\r\n const checkPluginNames = [\r\n 'unplugin-auto-import',\r\n 'unplugin-vue-components',\r\n ]\r\n const plugins = config.plugins || []\r\n\r\n const makeMessage = (pluginName: string) => `[${packageName}] Multiple instances of \\`${pluginName}\\` detected. ${packageName} includes \\`${pluginName}\\` already, and you can configure it using \\`${pluginName}\\` option in ${packageName} module options.`\r\n\r\n for (const pluginName of checkPluginNames) {\r\n if (plugins.filter((i) => i.name === pluginName).length > 1)\r\n throw new Error(makeMessage(pluginName))\r\n }\r\n },\r\n },\r\n },\r\n ]\r\n})\r\n"],"names":["packageName"],"mappings":"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"}
1
+ {"version":3,"file":"unplugin.mjs","sources":["../src/_unplugin/auto-import.ts","../src/_unplugin/components.ts","../src/_unplugin/nuxt-environment.ts","../src/unplugin.ts"],"sourcesContent":["import { defu } from 'defu'\nimport { join } from 'pathe'\nimport type { UnpluginContextMeta, UnpluginOptions } from 'unplugin'\nimport AutoImport from 'unplugin-auto-import'\nimport type { Options as AutoImportOptions } from 'unplugin-auto-import/types'\nimport type { UIOptions } from '../unplugin'\nimport { runtimeDir } from '../unplugin'\n\n/** This plugin adds all the UI composables as auto-imports. */\n// ref: https://github.com/nuxt/ui/blob/6c20f8a9ea03273a795c5f88c071830decd54c1e/src/plugins/auto-import.ts\nexport default function AutoImportPlugin(options: UIOptions, meta: UnpluginContextMeta): UnpluginOptions {\n const pluginOptions = defu(options.autoImport, <AutoImportOptions>{\n dts: options.dts ?? true,\n dirs: [join(runtimeDir, 'composables')],\n })\n\n return AutoImport.raw(pluginOptions, meta) as UnpluginOptions\n}\n","import { defu } from 'defu'\r\nimport { join } from 'pathe'\r\nimport { globSync } from 'tinyglobby'\r\nimport type { UnpluginContextMeta, UnpluginOptions } from 'unplugin'\r\nimport AutoImportComponents from 'unplugin-vue-components'\r\nimport type { Options as ComponentsOptions } from 'unplugin-vue-components/types'\r\nimport type { UIOptions } from '../unplugin'\r\nimport { runtimeDir } from '../unplugin'\r\n\r\n/** This plugin adds all the Nuxt UI components as auto-imports. */\r\n// ref: https://github.com/nuxt/ui/tree/6c20f8a9ea03273a795c5f88c071830decd54c1e/src/plugins/components.ts\r\nexport default function ComponentImportPlugin(options: UIOptions, meta: UnpluginContextMeta) {\r\n const { prefix = 'U' } = options\r\n const components = globSync('**/*.vue', { cwd: join(runtimeDir, 'components') })\r\n const componentNames = new Set(components.map((c) => `${prefix}${c.replace(/\\.vue$/, '')}`))\r\n\r\n const pluginOptions = defu(options.components, <ComponentsOptions>{\r\n dts: options.dts ?? true,\r\n resolvers: [\r\n (componentName) => {\r\n if (componentNames.has(componentName))\r\n return { name: 'default', from: join(runtimeDir, 'components', `${componentName.slice(prefix.length)}.vue`) }\r\n },\r\n ],\r\n })\r\n\r\n return AutoImportComponents.raw(pluginOptions, meta) as UnpluginOptions\r\n}\r\n","import MagicString from 'magic-string'\nimport { resolvePathSync } from 'mlly'\nimport { normalize } from 'pathe'\nimport type { UnpluginOptions } from 'unplugin'\nimport { runtimeDir } from '../unplugin'\n\n/**\n * This plugin normalises Nuxt environment (#imports) and `import.meta.client` within the UI components.\n */\n// ref: https://github.com/nuxt/ui/blob/0f99a4cdbcbca3090ef0a58f475be46de4eeb9ff/src/plugins/nuxt-environment.ts\nexport default function NuxtEnvironmentPlugin(): UnpluginOptions {\n const stubPath = resolvePathSync('../runtime/vue/stubs', { extensions: ['.ts', '.mjs', '.js'], url: import.meta.url })\n const name = 'byyuurin:ui'\n const resolveId = '#imports'\n\n return {\n name,\n enforce: 'pre',\n resolveId(id) {\n // this is implemented here rather than in a vite `config` hook for cross-builder support\n if (id === resolveId)\n return stubPath\n },\n transformInclude(id) {\n return normalize(id).includes(runtimeDir)\n },\n transform(code) {\n if (code.includes('import.meta.client')) {\n const s = new MagicString(code)\n s.replaceAll('import.meta.client', 'true')\n\n if (s.hasChanged()) {\n return {\n code: s.toString(),\n map: s.generateMap({ hires: true }),\n }\n }\n }\n },\n }\n}\n","import { fileURLToPath } from 'node:url'\r\nimport { normalize } from 'pathe'\r\nimport type { UnpluginOptions } from 'unplugin'\r\nimport { createUnplugin } from 'unplugin'\r\nimport type { Options as AutoImportOptions } from 'unplugin-auto-import/types'\r\nimport type { Options as ComponentsOptions } from 'unplugin-vue-components/types'\r\nimport AutoImportPlugin from './_unplugin/auto-import'\r\nimport ComponentImportPlugin from './_unplugin/components'\r\nimport NuxtEnvironmentPlugin from './_unplugin/nuxt-environment'\r\nimport { packageName } from './shared'\r\n\r\nexport const runtimeDir = normalize(fileURLToPath(new URL('runtime', import.meta.url)))\r\n\r\nexport interface UIOptions {\r\n /**\r\n * prefix for components used in templates\r\n *\r\n * @default \"U\"\r\n */\r\n prefix?: string\r\n /** Whether to generate declaration files for auto-imported components. */\r\n dts?: boolean\r\n /**\r\n * Override options for `unplugin-auto-import`\r\n */\r\n autoImport?: Partial<AutoImportOptions>\r\n /**\r\n * Override options for `unplugin-vue-components`\r\n */\r\n components?: Partial<ComponentsOptions>\r\n}\r\n\r\nexport const unplugin = createUnplugin<UIOptions | undefined>((options: UIOptions = {}, meta) => {\r\n return [\r\n NuxtEnvironmentPlugin(),\r\n ComponentImportPlugin(options, meta),\r\n AutoImportPlugin(options, meta),\r\n <UnpluginOptions>{\r\n name: 'byyuurin:ui:plugins-duplication-detection',\r\n vite: {\r\n config() {\r\n return {\r\n optimizeDeps: {\r\n include: [`${packageName}/unocss`],\r\n },\r\n }\r\n },\r\n configResolved(config) {\r\n const checkPluginNames = [\r\n 'unplugin-auto-import',\r\n 'unplugin-vue-components',\r\n ]\r\n const plugins = config.plugins || []\r\n\r\n const makeMessage = (pluginName: string) => `[${packageName}] Multiple instances of \\`${pluginName}\\` detected. ${packageName} includes \\`${pluginName}\\` already, and you can configure it using \\`${pluginName}\\` option in ${packageName} module options.`\r\n\r\n for (const pluginName of checkPluginNames) {\r\n if (plugins.filter((i) => i.name === pluginName).length > 1)\r\n throw new Error(makeMessage(pluginName))\r\n }\r\n },\r\n },\r\n },\r\n ]\r\n})\r\n"],"names":["packageName"],"mappings":"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"}
package/dist/vite.mjs CHANGED
@@ -8,7 +8,7 @@ import 'tinyglobby';
8
8
  import 'unplugin-vue-components';
9
9
  import 'magic-string';
10
10
  import 'mlly';
11
- import './shared/ui.3e7fad19.mjs';
11
+ import './shared/ui.D1BTWZFB.mjs';
12
12
 
13
13
  const vite = unplugin.vite;
14
14