diff --git a/components/Segmented/__test__/__snapshots__/segmented.spec.ts.snap b/components/Segmented/__test__/__snapshots__/segmented.spec.ts.snap
index 577d25d8b..8b8853b2d 100644
--- a/components/Segmented/__test__/__snapshots__/segmented.spec.ts.snap
+++ b/components/Segmented/__test__/__snapshots__/segmented.spec.ts.snap
@@ -1,21 +1,21 @@
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
-exports[`Test: KSegmented > props: block 1`] = `"
"`;
+exports[`Test: KSegmented > props: block 1`] = `""`;
-exports[`Test: KSegmented > props: cls 1`] = `""`;
+exports[`Test: KSegmented > props: cls 1`] = `""`;
-exports[`Test: KSegmented > props: size 1`] = `" "`;
+exports[`Test: KSegmented > props: size 1`] = `" "`;
-exports[`Test: KSegmented > props: size 2`] = `" "`;
+exports[`Test: KSegmented > props: size 2`] = `" "`;
-exports[`Test: KSegmented > props: size 3`] = `" "`;
+exports[`Test: KSegmented > props: size 3`] = `" "`;
-exports[`Test: KSegmentedItem > props: block 1`] = `" Daily-value
"`;
+exports[`Test: KSegmentedItem > props: block 1`] = `" Daily-value
"`;
-exports[`Test: KSegmentedItem > props: disabled 1`] = `" Daily-value
"`;
+exports[`Test: KSegmentedItem > props: disabled 1`] = `" Daily-value
"`;
-exports[`Test: KSegmentedItem > props: icon 1`] = `" Daily-value
"`;
+exports[`Test: KSegmentedItem > props: icon 1`] = `" Daily-value
"`;
-exports[`Test: KSegmentedItem > props: onlyIcon 1`] = `" Daily-value
"`;
+exports[`Test: KSegmentedItem > props: onlyIcon 1`] = `" Daily-value
"`;
-exports[`Test: KSegmentedItem > slots: default 1`] = `" Weekly 🎤
Monthly 💃
Quarterly ✌️
Yearly 🏀
"`;
+exports[`Test: KSegmentedItem > slots: default 1`] = `" Weekly 🎤
Monthly 💃
Quarterly ✌️
Yearly 🏀
"`;
diff --git a/components/Segmented/src/index.svelte b/components/Segmented/src/index.svelte
index bc0a33dc3..90bf528a1 100644
--- a/components/Segmented/src/index.svelte
+++ b/components/Segmented/src/index.svelte
@@ -47,6 +47,7 @@
const prefixCls = getPrefixCls('segmented');
$: cnames = clsx(
prefixCls,
+ `${prefixCls}__dark`,
{
[`${prefixCls}-block`]: block
},
diff --git a/components/Segmented/src/item.svelte b/components/Segmented/src/item.svelte
index aa6dded41..8f666b78e 100644
--- a/components/Segmented/src/item.svelte
+++ b/components/Segmented/src/item.svelte
@@ -39,6 +39,7 @@
const prefixCls = getPrefixCls('segmented-item');
$: cnames = clsx(
`${prefixCls}--${size}`,
+ `${prefixCls}__dark`,
{
[prefixCls]: !disabled,
[`${prefixCls}--disabled`]: disabled,
@@ -47,7 +48,8 @@
cls
);
$: activeCls = clsx({
- [`${prefixCls}--active`]: isActive
+ [`${prefixCls}--active`]: isActive,
+ [`${prefixCls}--active__dark`]: isActive
});
const labelCls = `${prefixCls}--label`;
const iconCls = `${prefixCls}--icon`;
diff --git a/preset/src/shortcuts/src/segmented.ts b/preset/src/shortcuts/src/segmented.ts
index 92d7ad8cb..168968ec5 100644
--- a/preset/src/shortcuts/src/segmented.ts
+++ b/preset/src/shortcuts/src/segmented.ts
@@ -1,13 +1,17 @@
export const segmentedShortcuts: Record = {
'k-segmented':
'cursor-pointer p-2px box-border m-0 inline-block rounded text-14px text-ikun-tx-base bg-ikun-bg-grs3', // hover:bg-ikun-bg-grs2
+ 'k-segmented__dark': 'dark:text-white dark:bg-ikun-dark',
'k-segmented-group': 'pr fssc w-full',
'k-segmented-block': 'flex',
'k-segmented-item': 'fcc text-center pr rounded hover:bg-ikun-bg-grs2 active:bg-ikun-bg-grs1',
+ 'k-segmented-item__dark': 'dark:hover:bg-ikun-dark-200 dark:active:bg-ikun-dark-300',
'k-segmented-item--disabled': 'fcc text-center pr rounded k-cur-disabled opacity-50',
'k-segmented-item--active':
'rounded bg-white shadow hover:bg-white active:bg-white h-full w-full pa',
+ 'k-segmented-item--active__dark':
+ 'dark:bg-ikun-dark-400 dark:hover:bg-ikun-dark-400 dark:active:bg-ikun-dark-400',
'k-segmented-item--label': 'px-11px pr z-1 truncate w-full',
'k-segmented-item--icon': 'align-middle !inline-flex',
'k-segmented-item--block': 'flex-1 min-w-0',