@komarcalabs/design-system 0.1.1 → 0.1.3

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 (120) hide show
  1. package/README.md +13 -8
  2. package/dist/index.js +79 -43
  3. package/dist/plugin-mUxynfRy.js +3064 -0
  4. package/dist/react/components/KmSkeleton.d.ts +16 -0
  5. package/dist/react/components/KmSkeleton.d.ts.map +1 -0
  6. package/dist/react/components/index.d.ts +1 -0
  7. package/dist/react/components/index.d.ts.map +1 -1
  8. package/dist/react.js +191 -149
  9. package/dist/skeleton-D8D5ibC2.js +664 -0
  10. package/dist/styles.css +1 -1
  11. package/dist/tokens.js +28 -17
  12. package/dist/treeview-C6_M73YM.js +641 -0
  13. package/dist/variants/alert.d.ts +201 -6
  14. package/dist/variants/alert.d.ts.map +1 -1
  15. package/dist/variants/checkbox.d.ts +133 -0
  16. package/dist/variants/checkbox.d.ts.map +1 -0
  17. package/dist/variants/index.d.ts +8 -0
  18. package/dist/variants/index.d.ts.map +1 -1
  19. package/dist/variants/pagination.d.ts +91 -0
  20. package/dist/variants/pagination.d.ts.map +1 -0
  21. package/dist/variants/radio.d.ts +143 -0
  22. package/dist/variants/radio.d.ts.map +1 -0
  23. package/dist/variants/select.d.ts +46 -1
  24. package/dist/variants/select.d.ts.map +1 -1
  25. package/dist/variants/skeleton.d.ts +64 -0
  26. package/dist/variants/skeleton.d.ts.map +1 -0
  27. package/dist/variants/table.d.ts +106 -0
  28. package/dist/variants/table.d.ts.map +1 -0
  29. package/dist/variants/tabs.d.ts +124 -0
  30. package/dist/variants/tabs.d.ts.map +1 -0
  31. package/dist/variants/toggleSwitch.d.ts +9 -0
  32. package/dist/variants/toggleSwitch.d.ts.map +1 -1
  33. package/dist/variants/treeview.d.ts +97 -0
  34. package/dist/variants/treeview.d.ts.map +1 -0
  35. package/dist/variants/typography.d.ts +377 -0
  36. package/dist/variants/typography.d.ts.map +1 -0
  37. package/dist/vue/components/KmAlert.vue.d.ts +16 -1
  38. package/dist/vue/components/KmAlert.vue.d.ts.map +1 -1
  39. package/dist/vue/components/KmBadge.vue.d.ts +2 -0
  40. package/dist/vue/components/KmBadge.vue.d.ts.map +1 -1
  41. package/dist/vue/components/KmButton.vue.d.ts +3 -1
  42. package/dist/vue/components/KmButton.vue.d.ts.map +1 -1
  43. package/dist/vue/components/KmCheckbox.vue.d.ts +45 -0
  44. package/dist/vue/components/KmCheckbox.vue.d.ts.map +1 -0
  45. package/dist/vue/components/KmDialog/KmDialog.vue.d.ts +2 -2
  46. package/dist/vue/components/KmDialog/KmDialog.vue.d.ts.map +1 -1
  47. package/dist/vue/components/KmFormControl.vue.d.ts +37 -0
  48. package/dist/vue/components/KmFormControl.vue.d.ts.map +1 -0
  49. package/dist/vue/components/KmHeading.vue.d.ts +34 -0
  50. package/dist/vue/components/KmHeading.vue.d.ts.map +1 -0
  51. package/dist/vue/components/KmHtml.vue.d.ts +32 -0
  52. package/dist/vue/components/KmHtml.vue.d.ts.map +1 -0
  53. package/dist/vue/components/KmInput.vue.d.ts +2 -0
  54. package/dist/vue/components/KmInput.vue.d.ts.map +1 -1
  55. package/dist/vue/components/KmPagination/KmPagination.vue.d.ts +53 -0
  56. package/dist/vue/components/KmPagination/KmPagination.vue.d.ts.map +1 -0
  57. package/dist/vue/components/KmPagination/index.d.ts +3 -0
  58. package/dist/vue/components/KmPagination/index.d.ts.map +1 -0
  59. package/dist/vue/components/KmPopover.vue.d.ts +141 -0
  60. package/dist/vue/components/KmPopover.vue.d.ts.map +1 -0
  61. package/dist/vue/components/KmRadio.vue.d.ts +47 -0
  62. package/dist/vue/components/KmRadio.vue.d.ts.map +1 -0
  63. package/dist/vue/components/KmRadioGroup.vue.d.ts +42 -0
  64. package/dist/vue/components/KmRadioGroup.vue.d.ts.map +1 -0
  65. package/dist/vue/components/KmScrollArea.vue.d.ts +60 -0
  66. package/dist/vue/components/KmScrollArea.vue.d.ts.map +1 -0
  67. package/dist/vue/components/KmSelect.vue.d.ts +66 -17
  68. package/dist/vue/components/KmSelect.vue.d.ts.map +1 -1
  69. package/dist/vue/components/KmSkeleton.vue.d.ts +38 -0
  70. package/dist/vue/components/KmSkeleton.vue.d.ts.map +1 -0
  71. package/dist/vue/components/KmStepper.vue.d.ts +8 -2
  72. package/dist/vue/components/KmStepper.vue.d.ts.map +1 -1
  73. package/dist/vue/components/KmTable/KmTable.vue.d.ts +39 -0
  74. package/dist/vue/components/KmTable/KmTable.vue.d.ts.map +1 -0
  75. package/dist/vue/components/KmTable/KmTableBody.vue.d.ts +21 -0
  76. package/dist/vue/components/KmTable/KmTableBody.vue.d.ts.map +1 -0
  77. package/dist/vue/components/KmTable/KmTableCaption.vue.d.ts +21 -0
  78. package/dist/vue/components/KmTable/KmTableCaption.vue.d.ts.map +1 -0
  79. package/dist/vue/components/KmTable/KmTableCell.vue.d.ts +25 -0
  80. package/dist/vue/components/KmTable/KmTableCell.vue.d.ts.map +1 -0
  81. package/dist/vue/components/KmTable/KmTableFooter.vue.d.ts +21 -0
  82. package/dist/vue/components/KmTable/KmTableFooter.vue.d.ts.map +1 -0
  83. package/dist/vue/components/KmTable/KmTableHead.vue.d.ts +24 -0
  84. package/dist/vue/components/KmTable/KmTableHead.vue.d.ts.map +1 -0
  85. package/dist/vue/components/KmTable/KmTableHeader.vue.d.ts +21 -0
  86. package/dist/vue/components/KmTable/KmTableHeader.vue.d.ts.map +1 -0
  87. package/dist/vue/components/KmTable/KmTableRow.vue.d.ts +24 -0
  88. package/dist/vue/components/KmTable/KmTableRow.vue.d.ts.map +1 -0
  89. package/dist/vue/components/KmTable/index.d.ts +17 -0
  90. package/dist/vue/components/KmTable/index.d.ts.map +1 -0
  91. package/dist/vue/components/KmTabs/KmTabs.vue.d.ts +45 -0
  92. package/dist/vue/components/KmTabs/KmTabs.vue.d.ts.map +1 -0
  93. package/dist/vue/components/KmTabs/KmTabsContent.vue.d.ts +24 -0
  94. package/dist/vue/components/KmTabs/KmTabsContent.vue.d.ts.map +1 -0
  95. package/dist/vue/components/KmTabs/KmTabsList.vue.d.ts +22 -0
  96. package/dist/vue/components/KmTabs/KmTabsList.vue.d.ts.map +1 -0
  97. package/dist/vue/components/KmTabs/KmTabsTrigger.vue.d.ts +26 -0
  98. package/dist/vue/components/KmTabs/KmTabsTrigger.vue.d.ts.map +1 -0
  99. package/dist/vue/components/KmTabs/index.d.ts +9 -0
  100. package/dist/vue/components/KmTabs/index.d.ts.map +1 -0
  101. package/dist/vue/components/KmText.vue.d.ts +43 -0
  102. package/dist/vue/components/KmText.vue.d.ts.map +1 -0
  103. package/dist/vue/components/KmTextarea.vue.d.ts +2 -0
  104. package/dist/vue/components/KmTextarea.vue.d.ts.map +1 -1
  105. package/dist/vue/components/KmTreeview/KmTreeNode.vue.d.ts +37 -0
  106. package/dist/vue/components/KmTreeview/KmTreeNode.vue.d.ts.map +1 -0
  107. package/dist/vue/components/KmTreeview/KmTreeview.vue.d.ts +48 -0
  108. package/dist/vue/components/KmTreeview/KmTreeview.vue.d.ts.map +1 -0
  109. package/dist/vue/components/KmTreeview/index.d.ts +5 -0
  110. package/dist/vue/components/KmTreeview/index.d.ts.map +1 -0
  111. package/dist/vue/components/KmTreeview/types.d.ts +11 -0
  112. package/dist/vue/components/KmTreeview/types.d.ts.map +1 -0
  113. package/dist/vue/components/index.d.ts +19 -0
  114. package/dist/vue/components/index.d.ts.map +1 -1
  115. package/dist/vue/plugin.d.ts.map +1 -1
  116. package/dist/vue.js +40 -15
  117. package/package.json +1 -1
  118. package/dist/carousel-D_f-K2v2.js +0 -83
  119. package/dist/plugin-DfFKi2ZR.js +0 -941
  120. package/dist/toggleSwitch-CpBXc_jq.js +0 -369
@@ -0,0 +1,641 @@
1
+ import { tv as e } from "tailwind-variants";
2
+ const r = e({
3
+ base: [
4
+ "relative rounded-full bg-km-muted text-km-muted-foreground flex justify-center items-center border border-km-border font-semibold overflow-hidden shrink-0"
5
+ ],
6
+ variants: {
7
+ size: {
8
+ xs: "h-4 w-4 text-[8px]",
9
+ sm: "h-5 w-5 text-xs",
10
+ md: "h-8 w-8 text-sm",
11
+ lg: "h-10 w-10 text-base"
12
+ },
13
+ hasImage: {
14
+ true: "p-0",
15
+ false: ""
16
+ }
17
+ },
18
+ compoundVariants: [
19
+ {
20
+ hasImage: !1,
21
+ size: "xs",
22
+ class: "p-0.5"
23
+ },
24
+ {
25
+ hasImage: !1,
26
+ size: "sm",
27
+ class: "p-1"
28
+ },
29
+ {
30
+ hasImage: !1,
31
+ size: "md",
32
+ class: "p-1.5"
33
+ },
34
+ {
35
+ hasImage: !1,
36
+ size: "lg",
37
+ class: "p-2"
38
+ }
39
+ ],
40
+ defaultVariants: {
41
+ size: "sm",
42
+ hasImage: !1
43
+ }
44
+ }), o = e({
45
+ base: "animate-spin shrink-0",
46
+ variants: {
47
+ size: {
48
+ xs: "h-3 w-3",
49
+ sm: "h-4 w-4",
50
+ md: "h-6 w-6",
51
+ lg: "h-8 w-8"
52
+ },
53
+ color: {
54
+ current: "text-current",
55
+ primary: "text-km-primary",
56
+ muted: "text-km-muted-foreground"
57
+ }
58
+ },
59
+ defaultVariants: {
60
+ size: "sm",
61
+ color: "current"
62
+ }
63
+ }), a = e({
64
+ slots: {
65
+ root: "relative group/carousel w-full",
66
+ button: [
67
+ "absolute top-1/2 -translate-y-1/2 z-10 w-9 h-9 rounded-full",
68
+ "bg-km-surface shadow-km-sm border border-km-border",
69
+ "flex items-center justify-center text-km-muted-foreground",
70
+ "hover:text-km-primary hover:border-km-primary hover:shadow-km-md",
71
+ "transition-all active:scale-90 cursor-pointer"
72
+ ],
73
+ wrapper: [
74
+ "flex gap-4 overflow-x-auto pb-4 pt-1 px-1",
75
+ "scroll-smooth snap-x snap-mandatory scrollbar-none"
76
+ ]
77
+ }
78
+ }), i = e({
79
+ base: "font-km-body text-km-foreground tracking-tight transition-colors duration-200",
80
+ variants: {
81
+ size: {
82
+ "4xl": "text-4xl sm:text-5xl font-extrabold tracking-tight",
83
+ "3xl": "text-3xl sm:text-4xl font-bold tracking-tight",
84
+ "2xl": "text-2xl sm:text-3xl font-bold tracking-tight",
85
+ xl: "text-xl sm:text-2xl font-bold tracking-tight",
86
+ lg: "text-lg sm:text-xl font-semibold tracking-tight",
87
+ md: "text-base sm:text-lg font-semibold",
88
+ sm: "text-sm font-semibold",
89
+ xs: "text-xs font-semibold uppercase tracking-wider"
90
+ },
91
+ tone: {
92
+ default: "text-km-foreground",
93
+ muted: "text-km-foreground-muted",
94
+ primary: "text-km-primary",
95
+ accent: "text-km-accent",
96
+ success: "text-km-success",
97
+ warning: "text-km-warning",
98
+ danger: "text-km-danger",
99
+ info: "text-km-info",
100
+ inverse: "text-km-foreground-inverse"
101
+ },
102
+ weight: {
103
+ normal: "font-normal",
104
+ medium: "font-medium",
105
+ semibold: "font-semibold",
106
+ bold: "font-bold",
107
+ extrabold: "font-extrabold"
108
+ },
109
+ align: {
110
+ left: "text-left",
111
+ center: "text-center",
112
+ right: "text-right",
113
+ justify: "text-justify"
114
+ },
115
+ tracking: {
116
+ tighter: "tracking-tighter",
117
+ tight: "tracking-tight",
118
+ normal: "tracking-normal",
119
+ wide: "tracking-wide",
120
+ wider: "tracking-wider"
121
+ },
122
+ truncate: {
123
+ true: "truncate"
124
+ }
125
+ },
126
+ defaultVariants: {
127
+ size: "xl",
128
+ tone: "default",
129
+ align: "left"
130
+ }
131
+ }), n = e({
132
+ base: "font-km-body text-km-foreground transition-colors duration-200",
133
+ variants: {
134
+ size: {
135
+ "3xs": "text-[8.5px] leading-tight",
136
+ "2xs": "text-[10px] leading-tight",
137
+ xs: "text-xs leading-normal",
138
+ sm: "text-sm leading-snug",
139
+ md: "text-base leading-relaxed",
140
+ base: "text-base leading-relaxed",
141
+ lg: "text-lg leading-relaxed",
142
+ xl: "text-xl leading-snug"
143
+ },
144
+ tone: {
145
+ default: "text-km-foreground",
146
+ muted: "text-km-foreground-muted",
147
+ subtle: "text-km-gray-400 dark:text-km-gray-500",
148
+ primary: "text-km-primary",
149
+ accent: "text-km-accent",
150
+ success: "text-km-success",
151
+ warning: "text-km-warning",
152
+ danger: "text-km-danger",
153
+ info: "text-km-info",
154
+ inverse: "text-km-foreground-inverse"
155
+ },
156
+ weight: {
157
+ light: "font-light",
158
+ normal: "font-normal",
159
+ medium: "font-medium",
160
+ semibold: "font-semibold",
161
+ bold: "font-bold",
162
+ extrabold: "font-extrabold"
163
+ },
164
+ align: {
165
+ left: "text-left",
166
+ center: "text-center",
167
+ right: "text-right",
168
+ justify: "text-justify"
169
+ },
170
+ transform: {
171
+ uppercase: "uppercase",
172
+ lowercase: "lowercase",
173
+ capitalize: "capitalize",
174
+ "normal-case": "normal-case"
175
+ },
176
+ italic: {
177
+ true: "italic"
178
+ },
179
+ underline: {
180
+ true: "underline underline-offset-2"
181
+ },
182
+ strikethrough: {
183
+ true: "line-through"
184
+ },
185
+ mono: {
186
+ true: "font-mono"
187
+ },
188
+ truncate: {
189
+ true: "truncate"
190
+ },
191
+ lineClamp: {
192
+ 1: "line-clamp-1",
193
+ 2: "line-clamp-2",
194
+ 3: "line-clamp-3",
195
+ 4: "line-clamp-4",
196
+ 5: "line-clamp-5",
197
+ 6: "line-clamp-6",
198
+ none: "line-clamp-none"
199
+ }
200
+ },
201
+ defaultVariants: {
202
+ size: "sm",
203
+ tone: "default",
204
+ align: "left"
205
+ }
206
+ }), s = e({
207
+ base: [
208
+ "font-km-body text-km-foreground transition-colors duration-200",
209
+ // Headings
210
+ "[&_h1]:font-bold [&_h1]:text-km-foreground [&_h1]:tracking-tight [&_h1]:mt-4 [&_h1]:mb-2",
211
+ "[&_h2]:font-bold [&_h2]:text-km-foreground [&_h2]:tracking-tight [&_h2]:mt-3.5 [&_h2]:mb-2",
212
+ "[&_h3]:font-semibold [&_h3]:text-km-foreground [&_h3]:tracking-tight [&_h3]:mt-3 [&_h3]:mb-1.5",
213
+ "[&_h4]:font-semibold [&_h4]:text-km-foreground [&_h4]:mt-2.5 [&_h4]:mb-1",
214
+ // Paragraphs
215
+ "[&_p]:my-2 [&_p:first-child]:mt-0 [&_p:last-child]:mb-0",
216
+ // Links
217
+ "[&_a]:text-km-primary [&_a]:underline [&_a]:underline-offset-2 [&_a]:transition-colors [&_a:hover]:text-km-primary-hover",
218
+ // Lists
219
+ "[&_ul]:list-disc [&_ul]:pl-5 [&_ul]:my-2 [&_ul]:space-y-1",
220
+ "[&_ol]:list-decimal [&_ol]:pl-5 [&_ol]:my-2 [&_ol]:space-y-1",
221
+ "[&_li]:leading-normal",
222
+ // Strong & Emphasis
223
+ "[&_strong]:font-semibold [&_strong]:text-km-foreground",
224
+ "[&_b]:font-semibold [&_b]:text-km-foreground",
225
+ "[&_em]:italic",
226
+ // Blockquote
227
+ "[&_blockquote]:border-l-2 [&_blockquote]:border-km-primary [&_blockquote]:pl-3 [&_blockquote]:italic [&_blockquote]:text-km-foreground-muted [&_blockquote]:my-3",
228
+ // Code & Pre
229
+ "[&_code]:font-mono [&_code]:text-[0.875em] [&_code]:px-1.5 [&_code]:py-0.5 [&_code]:rounded [&_code]:bg-km-muted [&_code]:text-km-primary",
230
+ "[&_pre]:font-mono [&_pre]:p-3 [&_pre]:rounded-lg [&_pre]:bg-km-muted [&_pre]:overflow-x-auto [&_pre]:my-3 [&_pre_code]:bg-transparent [&_pre_code]:p-0 [&_pre_code]:text-km-foreground",
231
+ // Table
232
+ "[&_table]:w-full [&_table]:border-collapse [&_table]:my-3 [&_table]:text-left",
233
+ "[&_th]:border-b [&_th]:border-km-border [&_th]:pb-2 [&_th]:font-semibold [&_th]:text-km-foreground",
234
+ "[&_td]:border-b [&_td]:border-km-border/60 [&_td]:py-2",
235
+ // Divider
236
+ "[&_hr]:my-4 [&_hr]:border-km-border",
237
+ // Images
238
+ "[&_img]:rounded-lg [&_img]:max-w-full [&_img]:h-auto [&_img]:my-3"
239
+ ],
240
+ variants: {
241
+ size: {
242
+ compact: [
243
+ "text-xs leading-normal",
244
+ "[&_h1]:text-base [&_h2]:text-sm [&_h3]:text-xs [&_h4]:text-xs",
245
+ "[&_p]:my-1",
246
+ "[&_ul]:my-1 [&_ul]:pl-4 [&_ol]:my-1 [&_ol]:pl-4"
247
+ ],
248
+ sm: [
249
+ "text-sm leading-normal",
250
+ "[&_h1]:text-lg [&_h2]:text-base [&_h3]:text-sm [&_h4]:text-sm",
251
+ "[&_p]:my-1.5",
252
+ "[&_ul]:my-1.5 [&_ul]:pl-4 [&_ol]:my-1.5 [&_ol]:pl-4"
253
+ ],
254
+ md: [
255
+ "text-base leading-relaxed",
256
+ "[&_h1]:text-2xl [&_h2]:text-xl [&_h3]:text-lg [&_h4]:text-base",
257
+ "[&_p]:my-2"
258
+ ],
259
+ lg: [
260
+ "text-lg leading-relaxed",
261
+ "[&_h1]:text-3xl [&_h2]:text-2xl [&_h3]:text-xl [&_h4]:text-lg",
262
+ "[&_p]:my-2.5"
263
+ ]
264
+ },
265
+ tone: {
266
+ default: "text-km-foreground",
267
+ muted: "text-km-foreground-muted"
268
+ }
269
+ },
270
+ defaultVariants: {
271
+ size: "sm",
272
+ tone: "default"
273
+ }
274
+ }), d = e({
275
+ slots: {
276
+ root: "inline-flex items-start gap-2.5 cursor-pointer select-none group",
277
+ controlWrapper: "flex items-center justify-center shrink-0",
278
+ control: [
279
+ "relative flex items-center justify-center shrink-0 rounded border transition-all duration-150",
280
+ "border-km-border bg-km-surface text-km-surface",
281
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-km-primary/30 focus-visible:ring-offset-1",
282
+ "group-hover:border-km-border-strong",
283
+ "data-[state=checked]:bg-km-primary data-[state=checked]:border-km-primary data-[state=checked]:text-white",
284
+ "data-[state=indeterminate]:bg-km-primary data-[state=indeterminate]:border-km-primary data-[state=indeterminate]:text-white",
285
+ "data-[disabled=true]:cursor-not-allowed data-[disabled=true]:opacity-50 data-[disabled=true]:bg-km-muted data-[disabled=true]:border-km-border"
286
+ ],
287
+ icon: "transition-transform duration-150 scale-0 data-[visible=true]:scale-100",
288
+ labelWrapper: "flex flex-col min-w-0 select-none",
289
+ label: "text-km-foreground font-medium transition-colors group-hover:text-km-foreground",
290
+ description: "text-km-foreground-muted leading-normal mt-0.5"
291
+ },
292
+ variants: {
293
+ size: {
294
+ sm: {
295
+ controlWrapper: "h-4",
296
+ control: "w-3.5 h-3.5 rounded-[3px]",
297
+ icon: "w-2.5 h-2.5",
298
+ label: "text-xs leading-4",
299
+ description: "text-[11px]"
300
+ },
301
+ md: {
302
+ controlWrapper: "h-5",
303
+ control: "w-4 h-4 rounded-[4px]",
304
+ icon: "w-3 h-3",
305
+ label: "text-sm leading-5",
306
+ description: "text-xs"
307
+ },
308
+ lg: {
309
+ controlWrapper: "h-6",
310
+ control: "w-5 h-5 rounded-[5px]",
311
+ icon: "w-3.5 h-3.5",
312
+ label: "text-base leading-6",
313
+ description: "text-sm"
314
+ }
315
+ },
316
+ tone: {
317
+ primary: {
318
+ control: "data-[state=checked]:bg-km-primary data-[state=checked]:border-km-primary data-[state=indeterminate]:bg-km-primary data-[state=indeterminate]:border-km-primary focus-visible:ring-km-primary/30"
319
+ },
320
+ success: {
321
+ control: "data-[state=checked]:bg-km-success data-[state=checked]:border-km-success data-[state=indeterminate]:bg-km-success data-[state=indeterminate]:border-km-success focus-visible:ring-km-success/30"
322
+ },
323
+ danger: {
324
+ control: "data-[state=checked]:bg-km-danger data-[state=checked]:border-km-danger data-[state=indeterminate]:bg-km-danger data-[state=indeterminate]:border-km-danger focus-visible:ring-km-danger/30"
325
+ }
326
+ }
327
+ },
328
+ defaultVariants: {
329
+ size: "md",
330
+ tone: "primary"
331
+ }
332
+ }), l = e({
333
+ slots: {
334
+ root: "inline-flex items-start gap-2.5 cursor-pointer select-none group",
335
+ controlWrapper: "flex items-center justify-center shrink-0",
336
+ control: [
337
+ "relative flex items-center justify-center shrink-0 rounded-full border transition-all duration-150",
338
+ "border-km-border bg-km-surface",
339
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-km-primary/30 focus-visible:ring-offset-1",
340
+ "group-hover:border-km-border-strong",
341
+ "data-[state=checked]:border-km-primary",
342
+ "data-[disabled=true]:cursor-not-allowed data-[disabled=true]:opacity-50 data-[disabled=true]:bg-km-muted data-[disabled=true]:border-km-border"
343
+ ],
344
+ indicator: "rounded-full bg-km-primary transition-transform duration-150 scale-0 data-[visible=true]:scale-100",
345
+ labelWrapper: "flex flex-col min-w-0 select-none",
346
+ label: "text-km-foreground font-medium transition-colors group-hover:text-km-foreground",
347
+ description: "text-km-foreground-muted leading-normal mt-0.5"
348
+ },
349
+ variants: {
350
+ size: {
351
+ sm: {
352
+ controlWrapper: "h-4",
353
+ control: "w-3.5 h-3.5",
354
+ indicator: "w-1.5 h-1.5",
355
+ label: "text-xs leading-4",
356
+ description: "text-[11px]"
357
+ },
358
+ md: {
359
+ controlWrapper: "h-5",
360
+ control: "w-4 h-4",
361
+ indicator: "w-2 h-2",
362
+ label: "text-sm leading-5",
363
+ description: "text-xs"
364
+ },
365
+ lg: {
366
+ controlWrapper: "h-6",
367
+ control: "w-5 h-5",
368
+ indicator: "w-2.5 h-2.5",
369
+ label: "text-base leading-6",
370
+ description: "text-sm"
371
+ }
372
+ },
373
+ tone: {
374
+ primary: {
375
+ control: "data-[state=checked]:border-km-primary focus-visible:ring-km-primary/30",
376
+ indicator: "bg-km-primary"
377
+ },
378
+ success: {
379
+ control: "data-[state=checked]:border-km-success focus-visible:ring-km-success/30",
380
+ indicator: "bg-km-success"
381
+ },
382
+ danger: {
383
+ control: "data-[state=checked]:border-km-danger focus-visible:ring-km-danger/30",
384
+ indicator: "bg-km-danger"
385
+ }
386
+ }
387
+ },
388
+ defaultVariants: {
389
+ size: "md",
390
+ tone: "primary"
391
+ }
392
+ }), m = e({
393
+ base: [
394
+ "relative flex items-start gap-3.5 p-4 rounded-xl border transition-all duration-200 cursor-pointer select-none",
395
+ "bg-km-surface border-km-border hover:border-km-border-strong hover:bg-black/[0.01] dark:hover:bg-white/[0.01]",
396
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-km-primary/30",
397
+ "data-[state=checked]:border-km-primary data-[state=checked]:bg-km-primary/5 data-[state=checked]:shadow-sm",
398
+ "data-[disabled=true]:cursor-not-allowed data-[disabled=true]:opacity-50 data-[disabled=true]:border-km-border"
399
+ ]
400
+ }), c = e({
401
+ slots: {
402
+ root: "w-full",
403
+ list: "flex items-center text-km-muted-foreground",
404
+ trigger: [
405
+ "inline-flex items-center justify-center whitespace-nowrap font-medium transition-all",
406
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-km-primary focus-visible:ring-offset-2",
407
+ "disabled:pointer-events-none disabled:opacity-50 select-none cursor-pointer"
408
+ ],
409
+ content: "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-km-primary focus-visible:ring-offset-2",
410
+ indicator: "absolute transition-all duration-200"
411
+ },
412
+ variants: {
413
+ variant: {
414
+ line: {
415
+ list: "border-b border-km-border gap-2 bg-transparent p-0",
416
+ trigger: [
417
+ "relative border-b-2 border-transparent bg-transparent text-km-muted-foreground",
418
+ "hover:text-km-foreground",
419
+ "data-[state=active]:border-km-primary data-[state=active]:text-km-primary data-[state=active]:font-semibold",
420
+ "-mb-[1px]"
421
+ ],
422
+ content: "mt-4"
423
+ },
424
+ pill: {
425
+ list: "rounded-km-lg bg-km-muted p-1 gap-1 inline-flex w-fit",
426
+ trigger: [
427
+ "rounded-km-md text-km-muted-foreground transition-all",
428
+ "hover:text-km-foreground",
429
+ "data-[state=active]:bg-km-surface data-[state=active]:text-km-foreground data-[state=active]:shadow-km-sm data-[state=active]:font-semibold"
430
+ ],
431
+ content: "mt-3"
432
+ }
433
+ },
434
+ orientation: {
435
+ horizontal: {
436
+ root: "flex flex-col",
437
+ list: "flex-row"
438
+ },
439
+ vertical: {
440
+ root: "flex flex-row gap-6",
441
+ list: "flex-col items-stretch"
442
+ }
443
+ },
444
+ size: {
445
+ sm: {
446
+ trigger: "text-xs px-2.5 py-1.5 gap-1.5"
447
+ },
448
+ md: {
449
+ trigger: "text-sm px-3.5 py-2 gap-2"
450
+ },
451
+ lg: {
452
+ trigger: "text-base px-4 py-2.5 gap-2.5"
453
+ }
454
+ }
455
+ },
456
+ compoundVariants: [
457
+ {
458
+ variant: "line",
459
+ orientation: "vertical",
460
+ class: {
461
+ list: "border-b-0 border-r border-km-border -mr-[1px]",
462
+ trigger: [
463
+ "border-b-0 border-r-2 text-left justify-start -mr-[1px]",
464
+ "data-[state=active]:border-km-primary"
465
+ ]
466
+ }
467
+ },
468
+ {
469
+ variant: "pill",
470
+ orientation: "vertical",
471
+ class: {
472
+ list: "flex-col w-auto",
473
+ trigger: "justify-start text-left w-full"
474
+ }
475
+ }
476
+ ],
477
+ defaultVariants: {
478
+ variant: "line",
479
+ orientation: "horizontal",
480
+ size: "md"
481
+ }
482
+ }), u = e({
483
+ slots: {
484
+ root: "relative w-full overflow-x-auto rounded-km-lg border border-km-border bg-km-surface shadow-km-sm",
485
+ table: "w-full caption-bottom text-sm border-collapse text-left",
486
+ header: "[&_tr]:border-b border-km-border bg-km-muted/50 font-medium text-km-muted-foreground",
487
+ body: "[&_tr:last-child]:border-0 divide-y divide-km-border",
488
+ footer: [
489
+ "border-t-2 border-km-border-strong bg-km-muted/40 font-semibold text-km-foreground",
490
+ "[&>tr]:last:border-b-0"
491
+ ],
492
+ row: "border-b border-km-border transition-colors data-[state=selected]:bg-km-muted/70",
493
+ head: [
494
+ "h-10 px-4 text-left align-middle font-semibold text-km-muted-foreground",
495
+ "[&:has([role=checkbox])]:pr-0"
496
+ ],
497
+ cell: [
498
+ "p-4 align-middle text-km-foreground",
499
+ "[&:has([role=checkbox])]:pr-0"
500
+ ],
501
+ caption: "mt-4 text-xs text-km-muted-foreground text-center"
502
+ },
503
+ variants: {
504
+ dense: {
505
+ true: {
506
+ head: "h-8 px-2.5 py-1 text-xs font-semibold",
507
+ cell: "px-2.5 py-1.5 text-xs font-normal",
508
+ footer: "text-xs"
509
+ }
510
+ },
511
+ striped: {
512
+ true: {
513
+ body: "[&_tr:nth-child(even)]:bg-km-muted/25"
514
+ }
515
+ },
516
+ hoverable: {
517
+ true: {
518
+ row: "hover:bg-km-muted/50 cursor-pointer"
519
+ }
520
+ },
521
+ bordered: {
522
+ true: {
523
+ head: "border-r border-km-border last:border-r-0",
524
+ cell: "border-r border-km-border last:border-r-0"
525
+ }
526
+ }
527
+ },
528
+ defaultVariants: {
529
+ dense: !1,
530
+ striped: !1,
531
+ hoverable: !0,
532
+ bordered: !1
533
+ }
534
+ }), x = e({
535
+ slots: {
536
+ root: "flex flex-wrap items-center justify-between gap-4 select-none",
537
+ list: "flex items-center gap-1",
538
+ item: "inline-flex items-center justify-center",
539
+ button: [
540
+ "inline-flex items-center justify-center rounded-km-md font-medium transition-colors",
541
+ "border border-transparent text-km-foreground hover:bg-km-muted focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-km-primary",
542
+ "disabled:pointer-events-none disabled:opacity-40 disabled:cursor-not-allowed",
543
+ "data-[selected=true]:bg-km-primary data-[selected=true]:text-white data-[selected=true]:hover:bg-km-primary-hover data-[selected=true]:shadow-km-sm"
544
+ ],
545
+ controlButton: [
546
+ "inline-flex items-center justify-center rounded-km-md font-medium transition-colors",
547
+ "border border-km-border bg-km-surface text-km-foreground hover:bg-km-muted",
548
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-km-primary",
549
+ "disabled:pointer-events-none disabled:opacity-40 disabled:cursor-not-allowed"
550
+ ],
551
+ ellipsis: "flex items-center justify-center text-km-muted-foreground",
552
+ info: "text-xs text-km-muted-foreground font-medium"
553
+ },
554
+ variants: {
555
+ size: {
556
+ sm: {
557
+ button: "h-7 min-w-[28px] px-1.5 text-xs",
558
+ controlButton: "h-7 min-w-[28px] px-1.5 text-xs",
559
+ ellipsis: "h-7 w-7 text-xs",
560
+ info: "text-[11px]"
561
+ },
562
+ md: {
563
+ button: "h-8 min-w-[32px] px-2 text-sm",
564
+ controlButton: "h-8 min-w-[32px] px-2 text-sm",
565
+ ellipsis: "h-8 w-8 text-sm",
566
+ info: "text-xs"
567
+ },
568
+ lg: {
569
+ button: "h-10 min-w-[40px] px-3 text-base",
570
+ controlButton: "h-10 min-w-[40px] px-3 text-base",
571
+ ellipsis: "h-10 w-10 text-base",
572
+ info: "text-sm"
573
+ }
574
+ }
575
+ },
576
+ defaultVariants: {
577
+ size: "md"
578
+ }
579
+ }), b = e({
580
+ slots: {
581
+ root: "w-full select-none text-sm font-sans",
582
+ list: "flex flex-col space-y-0.5",
583
+ item: [
584
+ "group relative flex items-center gap-1.5 rounded-km-md transition-colors",
585
+ "hover:bg-km-muted/70 cursor-pointer select-none",
586
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-km-primary",
587
+ "data-[selected=true]:bg-km-primary/10 data-[selected=true]:text-km-primary",
588
+ "data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50"
589
+ ],
590
+ toggle: [
591
+ "inline-flex items-center justify-center shrink-0 rounded transition-transform duration-200",
592
+ "text-km-muted-foreground hover:text-km-foreground hover:bg-km-muted",
593
+ "data-[expanded=true]:rotate-90"
594
+ ],
595
+ togglePlaceholder: "shrink-0",
596
+ icon: "shrink-0 text-km-muted-foreground group-data-[selected=true]:text-km-primary",
597
+ label: "flex-1 truncate text-km-foreground group-data-[selected=true]:text-km-primary group-data-[selected=true]:font-medium",
598
+ badge: "shrink-0 ml-auto text-xs px-1.5 py-0.5 rounded font-mono font-medium",
599
+ indentGuide: "border-l border-km-border/60 ml-2.5 pl-2"
600
+ },
601
+ variants: {
602
+ density: {
603
+ compact: {
604
+ item: "py-1 px-1.5 text-xs min-h-[26px]",
605
+ toggle: "size-4",
606
+ togglePlaceholder: "size-4",
607
+ icon: "size-3.5"
608
+ },
609
+ normal: {
610
+ item: "py-1.5 px-2 text-sm min-h-[32px]",
611
+ toggle: "size-5",
612
+ togglePlaceholder: "size-5",
613
+ icon: "size-4"
614
+ },
615
+ comfortable: {
616
+ item: "py-2 px-2.5 text-sm min-h-[38px]",
617
+ toggle: "size-6",
618
+ togglePlaceholder: "size-6",
619
+ icon: "size-5"
620
+ }
621
+ }
622
+ },
623
+ defaultVariants: {
624
+ density: "normal"
625
+ }
626
+ });
627
+ export {
628
+ r as a,
629
+ d as b,
630
+ a as c,
631
+ s as d,
632
+ l as e,
633
+ c as f,
634
+ n as g,
635
+ i as h,
636
+ b as i,
637
+ x as p,
638
+ m as r,
639
+ o as s,
640
+ u as t
641
+ };