kb-ui-vue 0.2.0
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.
- package/dist/components/Alert/Alert.vue.d.ts +26 -0
- package/dist/components/Alert/index.d.ts +4 -0
- package/dist/components/Avatar/Avatar.vue.d.ts +20 -0
- package/dist/components/Avatar/index.d.ts +4 -0
- package/dist/components/Badge/Badge.vue.d.ts +28 -0
- package/dist/components/Badge/index.d.ts +4 -0
- package/dist/components/Breadcrumb/Breadcrumb.vue.d.ts +15 -0
- package/dist/components/Breadcrumb/index.d.ts +4 -0
- package/dist/components/Button/Button.vue.d.ts +32 -0
- package/dist/components/Button/index.d.ts +4 -0
- package/dist/components/Calendar/Calendar.vue.d.ts +12 -0
- package/dist/components/Calendar/index.d.ts +4 -0
- package/dist/components/Card/Card.vue.d.ts +23 -0
- package/dist/components/Card/index.d.ts +4 -0
- package/dist/components/Carousel/Carousel.vue.d.ts +18 -0
- package/dist/components/Carousel/index.d.ts +4 -0
- package/dist/components/Cascader/Cascader.vue.d.ts +21 -0
- package/dist/components/Cascader/index.d.ts +4 -0
- package/dist/components/Checkbox/Checkbox.vue.d.ts +27 -0
- package/dist/components/Checkbox/index.d.ts +4 -0
- package/dist/components/Collapse/Collapse.vue.d.ts +35 -0
- package/dist/components/Collapse/index.d.ts +4 -0
- package/dist/components/ColorPicker/ColorPicker.vue.d.ts +12 -0
- package/dist/components/ColorPicker/index.d.ts +4 -0
- package/dist/components/CountUp/CountUp.vue.d.ts +20 -0
- package/dist/components/CountUp/index.d.ts +4 -0
- package/dist/components/DatePicker/DatePicker.vue.d.ts +14 -0
- package/dist/components/DatePicker/index.d.ts +4 -0
- package/dist/components/Descriptions/Descriptions.vue.d.ts +19 -0
- package/dist/components/Descriptions/index.d.ts +4 -0
- package/dist/components/Dialog/Dialog.vue.d.ts +35 -0
- package/dist/components/Dialog/index.d.ts +4 -0
- package/dist/components/Divider/Divider.vue.d.ts +20 -0
- package/dist/components/Divider/index.d.ts +4 -0
- package/dist/components/Drawer/Drawer.vue.d.ts +31 -0
- package/dist/components/Drawer/index.d.ts +4 -0
- package/dist/components/Dropdown/Dropdown.vue.d.ts +31 -0
- package/dist/components/Dropdown/index.d.ts +4 -0
- package/dist/components/Empty/Empty.vue.d.ts +21 -0
- package/dist/components/Empty/index.d.ts +4 -0
- package/dist/components/Form/Form.vue.d.ts +38 -0
- package/dist/components/Form/FormItem.vue.d.ts +21 -0
- package/dist/components/Form/index.d.ts +5 -0
- package/dist/components/Grid/Col.vue.d.ts +20 -0
- package/dist/components/Grid/Row.vue.d.ts +22 -0
- package/dist/components/Grid/constants.d.ts +1 -0
- package/dist/components/Grid/index.d.ts +5 -0
- package/dist/components/Icon/Icon.vue.d.ts +10 -0
- package/dist/components/Icon/index.d.ts +4 -0
- package/dist/components/Input/Input.vue.d.ts +29 -0
- package/dist/components/Input/index.d.ts +4 -0
- package/dist/components/InputNumber/InputNumber.vue.d.ts +20 -0
- package/dist/components/InputNumber/index.d.ts +4 -0
- package/dist/components/InputPassword/InputPassword.vue.d.ts +16 -0
- package/dist/components/InputPassword/index.d.ts +4 -0
- package/dist/components/List/List.vue.d.ts +26 -0
- package/dist/components/List/index.d.ts +4 -0
- package/dist/components/Loading/Loading.vue.d.ts +12 -0
- package/dist/components/Loading/index.d.ts +4 -0
- package/dist/components/Message/Message.vue.d.ts +10 -0
- package/dist/components/Message/index.d.ts +16 -0
- package/dist/components/Notification/Notification.vue.d.ts +11 -0
- package/dist/components/Notification/index.d.ts +16 -0
- package/dist/components/Pagination/Pagination.vue.d.ts +18 -0
- package/dist/components/Pagination/index.d.ts +4 -0
- package/dist/components/Popconfirm/Popconfirm.vue.d.ts +28 -0
- package/dist/components/Popconfirm/index.d.ts +4 -0
- package/dist/components/Popover/Popover.vue.d.ts +28 -0
- package/dist/components/Popover/index.d.ts +4 -0
- package/dist/components/Progress/Progress.vue.d.ts +21 -0
- package/dist/components/Progress/index.d.ts +4 -0
- package/dist/components/Radio/Radio.vue.d.ts +27 -0
- package/dist/components/Radio/index.d.ts +4 -0
- package/dist/components/Rate/Rate.vue.d.ts +17 -0
- package/dist/components/Rate/index.d.ts +4 -0
- package/dist/components/Result/Result.vue.d.ts +21 -0
- package/dist/components/Result/index.d.ts +4 -0
- package/dist/components/Search/Search.vue.d.ts +18 -0
- package/dist/components/Search/index.d.ts +4 -0
- package/dist/components/Segmented/Segmented.vue.d.ts +19 -0
- package/dist/components/Segmented/index.d.ts +4 -0
- package/dist/components/Select/Select.vue.d.ts +26 -0
- package/dist/components/Select/index.d.ts +4 -0
- package/dist/components/Skeleton/Skeleton.vue.d.ts +22 -0
- package/dist/components/Skeleton/index.d.ts +4 -0
- package/dist/components/Slider/Slider.vue.d.ts +20 -0
- package/dist/components/Slider/index.d.ts +4 -0
- package/dist/components/Space/Space.vue.d.ts +24 -0
- package/dist/components/Space/index.d.ts +4 -0
- package/dist/components/Statistic/Statistic.vue.d.ts +29 -0
- package/dist/components/Statistic/index.d.ts +4 -0
- package/dist/components/Steps/Steps.vue.d.ts +15 -0
- package/dist/components/Steps/index.d.ts +4 -0
- package/dist/components/Switch/Switch.vue.d.ts +16 -0
- package/dist/components/Switch/index.d.ts +4 -0
- package/dist/components/Table/Table.vue.d.ts +34 -0
- package/dist/components/Table/index.d.ts +4 -0
- package/dist/components/Tabs/Tabs.vue.d.ts +30 -0
- package/dist/components/Tabs/index.d.ts +4 -0
- package/dist/components/Tag/Tag.vue.d.ts +28 -0
- package/dist/components/Tag/index.d.ts +4 -0
- package/dist/components/Textarea/Textarea.vue.d.ts +20 -0
- package/dist/components/Textarea/index.d.ts +4 -0
- package/dist/components/Timeline/Timeline.vue.d.ts +13 -0
- package/dist/components/Timeline/index.d.ts +4 -0
- package/dist/components/Tooltip/Tooltip.vue.d.ts +24 -0
- package/dist/components/Tooltip/index.d.ts +4 -0
- package/dist/components/Transfer/Transfer.vue.d.ts +18 -0
- package/dist/components/Transfer/index.d.ts +4 -0
- package/dist/components/Tree/Tree.vue.d.ts +17 -0
- package/dist/components/Tree/index.d.ts +4 -0
- package/dist/components/Upload/Upload.vue.d.ts +55 -0
- package/dist/components/Upload/index.d.ts +4 -0
- package/dist/components/Watermark/Watermark.vue.d.ts +28 -0
- package/dist/components/Watermark/index.d.ts +4 -0
- package/dist/index.cjs +1 -0
- package/dist/index.d.ts +117 -0
- package/dist/index.js +2410 -0
- package/dist/styles/Alert.css +68 -0
- package/dist/styles/Avatar.css +31 -0
- package/dist/styles/Badge.css +49 -0
- package/dist/styles/Breadcrumb.css +28 -0
- package/dist/styles/Button.css +108 -0
- package/dist/styles/Calendar.css +79 -0
- package/dist/styles/Card.css +40 -0
- package/dist/styles/Carousel.css +87 -0
- package/dist/styles/Cascader.css +75 -0
- package/dist/styles/Checkbox.css +62 -0
- package/dist/styles/Collapse.css +49 -0
- package/dist/styles/ColorPicker.css +36 -0
- package/dist/styles/CountUp.css +4 -0
- package/dist/styles/DatePicker.css +33 -0
- package/dist/styles/Descriptions.css +44 -0
- package/dist/styles/Dialog.css +42 -0
- package/dist/styles/Divider.css +37 -0
- package/dist/styles/Drawer.css +81 -0
- package/dist/styles/Dropdown.css +40 -0
- package/dist/styles/Empty.css +24 -0
- package/dist/styles/Form.css +33 -0
- package/dist/styles/Grid.css +194 -0
- package/dist/styles/Icon.css +5 -0
- package/dist/styles/Input.css +79 -0
- package/dist/styles/InputNumber.css +40 -0
- package/dist/styles/InputPassword.css +42 -0
- package/dist/styles/List.css +29 -0
- package/dist/styles/Loading.css +27 -0
- package/dist/styles/Message.css +32 -0
- package/dist/styles/Notification.css +50 -0
- package/dist/styles/Pagination.css +57 -0
- package/dist/styles/Popconfirm.css +53 -0
- package/dist/styles/Popover.css +54 -0
- package/dist/styles/Progress.css +38 -0
- package/dist/styles/Radio.css +60 -0
- package/dist/styles/Rate.css +21 -0
- package/dist/styles/Result.css +41 -0
- package/dist/styles/Search.css +46 -0
- package/dist/styles/Segmented.css +32 -0
- package/dist/styles/Select.css +108 -0
- package/dist/styles/Skeleton.css +40 -0
- package/dist/styles/Slider.css +46 -0
- package/dist/styles/Space.css +27 -0
- package/dist/styles/Statistic.css +31 -0
- package/dist/styles/Steps.css +83 -0
- package/dist/styles/Switch.css +39 -0
- package/dist/styles/Table.css +43 -0
- package/dist/styles/Tabs.css +41 -0
- package/dist/styles/Tag.css +71 -0
- package/dist/styles/Textarea.css +43 -0
- package/dist/styles/Timeline.css +70 -0
- package/dist/styles/Tooltip.css +42 -0
- package/dist/styles/Transfer.css +64 -0
- package/dist/styles/Tree.css +50 -0
- package/dist/styles/Upload.css +66 -0
- package/dist/styles/Watermark.css +17 -0
- package/dist/styles/all.css +103 -0
- package/dist/styles/dark.css +10 -0
- package/dist/styles/index.css +2953 -0
- package/dist/styles/themes/amber.css +14 -0
- package/dist/styles/themes/aurora.css +15 -0
- package/dist/styles/themes/autumn.css +18 -0
- package/dist/styles/themes/business.css +20 -0
- package/dist/styles/themes/candy.css +21 -0
- package/dist/styles/themes/cartoon.css +31 -0
- package/dist/styles/themes/coffee.css +18 -0
- package/dist/styles/themes/cyber.css +37 -0
- package/dist/styles/themes/cyberpunk.css +32 -0
- package/dist/styles/themes/danqing.css +27 -0
- package/dist/styles/themes/flat.css +18 -0
- package/dist/styles/themes/forest.css +20 -0
- package/dist/styles/themes/gameboy.css +33 -0
- package/dist/styles/themes/glass.css +39 -0
- package/dist/styles/themes/gold.css +26 -0
- package/dist/styles/themes/gothic.css +20 -0
- package/dist/styles/themes/gradient.css +18 -0
- package/dist/styles/themes/ink.css +16 -0
- package/dist/styles/themes/lava.css +15 -0
- package/dist/styles/themes/macaron.css +27 -0
- package/dist/styles/themes/matcha.css +18 -0
- package/dist/styles/themes/memphis.css +25 -0
- package/dist/styles/themes/midnight.css +27 -0
- package/dist/styles/themes/minimal.css +36 -0
- package/dist/styles/themes/mint.css +20 -0
- package/dist/styles/themes/mono.css +36 -0
- package/dist/styles/themes/morandi.css +18 -0
- package/dist/styles/themes/neon.css +16 -0
- package/dist/styles/themes/neonlight.css +20 -0
- package/dist/styles/themes/ocean.css +20 -0
- package/dist/styles/themes/pastel.css +21 -0
- package/dist/styles/themes/pop.css +33 -0
- package/dist/styles/themes/retro.css +35 -0
- package/dist/styles/themes/rose.css +14 -0
- package/dist/styles/themes/rounded.css +18 -0
- package/dist/styles/themes/sakura.css +20 -0
- package/dist/styles/themes/sky.css +20 -0
- package/dist/styles/themes/spring.css +18 -0
- package/dist/styles/themes/starry.css +15 -0
- package/dist/styles/themes/sunset.css +18 -0
- package/dist/styles/themes/teal.css +14 -0
- package/dist/styles/themes/terminal.css +44 -0
- package/dist/styles/themes/vaporwave.css +27 -0
- package/dist/styles/themes/violet.css +14 -0
- package/dist/styles/themes/wabi.css +27 -0
- package/dist/styles/themes/winter.css +20 -0
- package/dist/styles/tokens.css +55 -0
- package/package.json +45 -0
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/* 主题:莫兰迪(低饱和高级灰) */
|
|
2
|
+
[data-theme='morandi'] {
|
|
3
|
+
--kb-color-primary: #9c8f7d;
|
|
4
|
+
--kb-color-success: #8f9e8f;
|
|
5
|
+
--kb-color-warning: #b3a07d;
|
|
6
|
+
--kb-color-danger: #a07d7d;
|
|
7
|
+
--kb-color-info: #7d8f9c;
|
|
8
|
+
--kb-color-bg: #f2f0ec;
|
|
9
|
+
--kb-color-bg-elevated: #e9e5dd;
|
|
10
|
+
--kb-color-border: #d5cfc3;
|
|
11
|
+
--kb-color-text-1: #4a443c;
|
|
12
|
+
--kb-color-text-2: #7a7266;
|
|
13
|
+
--kb-color-text-3: #b0a99c;
|
|
14
|
+
--kb-radius-sm: 8px;
|
|
15
|
+
--kb-radius-md: 12px;
|
|
16
|
+
--kb-radius-lg: 16px;
|
|
17
|
+
--kb-color-primary-gradient: linear-gradient(135deg, #b3a99a, #8d8272);
|
|
18
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/* 涓婚锛氶湏铏癸紙鏆楀鑽у厜锛? */
|
|
2
|
+
[data-theme='neon'] {
|
|
3
|
+
--kb-color-primary: #22d3ee;
|
|
4
|
+
--kb-color-success: #4ade80;
|
|
5
|
+
--kb-color-warning: #fbbf24;
|
|
6
|
+
--kb-color-danger: #fb7185;
|
|
7
|
+
--kb-color-info: #a78bfa;
|
|
8
|
+
--kb-color-bg: #0b0f19;
|
|
9
|
+
--kb-color-bg-elevated: #131a2a;
|
|
10
|
+
--kb-color-border: #243049;
|
|
11
|
+
--kb-color-text-1: #e2e8f0;
|
|
12
|
+
--kb-color-text-2: #94a3b8;
|
|
13
|
+
--kb-color-text-3: #475569;
|
|
14
|
+
--kb-shadow-1: 0 1px 2px rgb(0 0 0 / 60%);
|
|
15
|
+
--kb-shadow-2: 0 4px 16px rgb(34 211 238 / 15%);
|
|
16
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/* 主题:浅色霓虹(白底荧光) */
|
|
2
|
+
[data-theme='neonlight'] {
|
|
3
|
+
--kb-color-primary: #00d4ff;
|
|
4
|
+
--kb-color-success: #0f8;
|
|
5
|
+
--kb-color-warning: #ffd500;
|
|
6
|
+
--kb-color-danger: #ff2d78;
|
|
7
|
+
--kb-color-info: #b967ff;
|
|
8
|
+
--kb-color-bg: #fff;
|
|
9
|
+
--kb-color-bg-elevated: #f2fbff;
|
|
10
|
+
--kb-color-border: #d0f2ff;
|
|
11
|
+
--kb-color-text-1: #00283a;
|
|
12
|
+
--kb-color-text-2: #006a8a;
|
|
13
|
+
--kb-color-text-3: #00a8d4;
|
|
14
|
+
--kb-radius-sm: 6px;
|
|
15
|
+
--kb-radius-md: 10px;
|
|
16
|
+
--kb-radius-lg: 14px;
|
|
17
|
+
--kb-shadow-1: 0 2px 8px rgb(0 212 255 / 20%);
|
|
18
|
+
--kb-shadow-2: 0 8px 28px rgb(0 212 255 / 30%);
|
|
19
|
+
--kb-color-primary-gradient: linear-gradient(135deg, #00ff9d, #00d4ff 60%, #b967ff);
|
|
20
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/* 椋庢牸锛氭捣娲嬶紙娣辫摑 + 姘磋壊锛? */
|
|
2
|
+
[data-theme='ocean'] {
|
|
3
|
+
--kb-color-primary: #0284c7;
|
|
4
|
+
--kb-color-success: #0d9488;
|
|
5
|
+
--kb-color-warning: #eab308;
|
|
6
|
+
--kb-color-danger: #e11d48;
|
|
7
|
+
--kb-color-info: #0369a1;
|
|
8
|
+
--kb-color-bg: #f0f9ff;
|
|
9
|
+
--kb-color-bg-elevated: #e0f2fe;
|
|
10
|
+
--kb-color-border: #bae6fd;
|
|
11
|
+
--kb-color-text-1: #0c4a6e;
|
|
12
|
+
--kb-color-text-2: #0369a1;
|
|
13
|
+
--kb-color-text-3: #7dd3fc;
|
|
14
|
+
--kb-radius-sm: 8px;
|
|
15
|
+
--kb-radius-md: 12px;
|
|
16
|
+
--kb-radius-lg: 20px;
|
|
17
|
+
--kb-shadow-1: 0 2px 8px rgb(2 132 199 / 15%);
|
|
18
|
+
--kb-shadow-2: 0 8px 28px rgb(2 132 199 / 25%);
|
|
19
|
+
--kb-color-primary-gradient: linear-gradient(135deg, #38bdf8, #0284c7);
|
|
20
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/* 主题:粉彩(低饱和柔和) */
|
|
2
|
+
[data-theme='pastel'] {
|
|
3
|
+
--kb-color-primary: #b8a8e0;
|
|
4
|
+
--kb-color-success: #a8d8b8;
|
|
5
|
+
--kb-color-warning: #f5d5a8;
|
|
6
|
+
--kb-color-danger: #e8a8a8;
|
|
7
|
+
--kb-color-info: #a8c8e0;
|
|
8
|
+
--kb-color-bg: #fbfafc;
|
|
9
|
+
--kb-color-bg-elevated: #f2eef8;
|
|
10
|
+
--kb-color-border: #e2d8f0;
|
|
11
|
+
--kb-color-text-1: #4a3f5c;
|
|
12
|
+
--kb-color-text-2: #7a6f8c;
|
|
13
|
+
--kb-color-text-3: #b5a9c8;
|
|
14
|
+
--kb-radius-sm: 12px;
|
|
15
|
+
--kb-radius-md: 18px;
|
|
16
|
+
--kb-radius-lg: 26px;
|
|
17
|
+
--kb-radius-round: 999px;
|
|
18
|
+
--kb-shadow-1: 0 2px 10px rgb(184 168 224 / 18%);
|
|
19
|
+
--kb-shadow-2: 0 8px 30px rgb(184 168 224 / 25%);
|
|
20
|
+
--kb-color-primary-gradient: linear-gradient(135deg, #c8b8e8, #b8a8e0);
|
|
21
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/* 主题:波普(亮黄红蓝粗边框) */
|
|
2
|
+
[data-theme='pop'] {
|
|
3
|
+
--kb-color-primary: #ff2d55;
|
|
4
|
+
--kb-color-success: #00c7be;
|
|
5
|
+
--kb-color-warning: #fc0;
|
|
6
|
+
--kb-color-danger: #ff2d55;
|
|
7
|
+
--kb-color-info: #0095ff;
|
|
8
|
+
--kb-color-bg: #fff9e6;
|
|
9
|
+
--kb-color-bg-elevated: #fff0b3;
|
|
10
|
+
--kb-color-border: #000;
|
|
11
|
+
--kb-color-text-1: #000;
|
|
12
|
+
--kb-color-text-2: #333;
|
|
13
|
+
--kb-color-text-3: #999;
|
|
14
|
+
--kb-radius-sm: 0;
|
|
15
|
+
--kb-radius-md: 0;
|
|
16
|
+
--kb-radius-lg: 0;
|
|
17
|
+
--kb-radius-round: 0;
|
|
18
|
+
--kb-shadow-1: none;
|
|
19
|
+
--kb-shadow-2: none;
|
|
20
|
+
--kb-color-primary-gradient: var(--kb-color-primary);
|
|
21
|
+
--kb-font-family:
|
|
22
|
+
'Impact', 'Arial Black', sans-serif;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
[data-theme='pop'] .kb-button:not(.kb-button--plain) {
|
|
26
|
+
border: 3px solid var(--kb-color-text-1);
|
|
27
|
+
text-transform: uppercase;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
[data-theme='pop'] .kb-card,
|
|
31
|
+
[data-theme='pop'] .kb-dialog {
|
|
32
|
+
border: 3px solid var(--kb-color-text-1);
|
|
33
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/* 妞嬪孩鐗搁敍姘槻閸欍倖濮ら崚濠忕礄缁娊绮嶇痪?+ 閸欏瞼鍤庢潏瑙勵攱閿? */
|
|
2
|
+
[data-theme='retro'] {
|
|
3
|
+
--kb-color-primary: #8b5a2b;
|
|
4
|
+
--kb-color-success: #6b7a3f;
|
|
5
|
+
--kb-color-warning: #a16207;
|
|
6
|
+
--kb-color-danger: #7f1d1d;
|
|
7
|
+
--kb-color-info: #5c4033;
|
|
8
|
+
--kb-color-bg: #f5efe0;
|
|
9
|
+
--kb-color-bg-elevated: #efe6d0;
|
|
10
|
+
--kb-color-border: #8b5a2b;
|
|
11
|
+
--kb-color-text-1: #3e2f1c;
|
|
12
|
+
--kb-color-text-2: #6b5636;
|
|
13
|
+
--kb-color-text-3: #a08b6a;
|
|
14
|
+
--kb-radius-sm: 0;
|
|
15
|
+
--kb-radius-md: 0;
|
|
16
|
+
--kb-radius-lg: 0;
|
|
17
|
+
--kb-radius-round: 0;
|
|
18
|
+
--kb-shadow-1: none;
|
|
19
|
+
--kb-shadow-2: none;
|
|
20
|
+
--kb-color-primary-gradient: var(--kb-color-primary);
|
|
21
|
+
--kb-font-family:
|
|
22
|
+
'Noto Serif SC', 'Songti SC', georgia, serif;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
[data-theme='retro'] .kb-card,
|
|
26
|
+
[data-theme='retro'] .kb-dialog,
|
|
27
|
+
[data-theme='retro'] .kb-button:not(.kb-button--plain) {
|
|
28
|
+
box-shadow: 3px 3px 0 var(--kb-color-primary);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
[data-theme='retro'] .kb-card__header,
|
|
32
|
+
[data-theme='retro'] .kb-dialog__header {
|
|
33
|
+
border-bottom: 2px double var(--kb-color-border);
|
|
34
|
+
letter-spacing: 2px;
|
|
35
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/* 涓婚锛氱帿鐟帮紙娓╂煍绮夌孩锛? */
|
|
2
|
+
[data-theme='rose'] {
|
|
3
|
+
--kb-color-primary: #e11d48;
|
|
4
|
+
--kb-color-success: #16a34a;
|
|
5
|
+
--kb-color-warning: #ea580c;
|
|
6
|
+
--kb-color-danger: #be123c;
|
|
7
|
+
--kb-color-info: #db2777;
|
|
8
|
+
--kb-color-bg: #fffbfc;
|
|
9
|
+
--kb-color-bg-elevated: #fff1f3;
|
|
10
|
+
--kb-color-border: #ffe4e6;
|
|
11
|
+
--kb-color-text-1: #881337;
|
|
12
|
+
--kb-color-text-2: #9f1239;
|
|
13
|
+
--kb-color-text-3: #fda4af;
|
|
14
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/* 椋庢牸锛氬渾娑︾硸鏋滐紙澶у渾瑙?+ 鏌斿拰闃村奖锛? */
|
|
2
|
+
[data-theme='rounded'] {
|
|
3
|
+
--kb-color-primary: #6366f1;
|
|
4
|
+
--kb-color-success: #10b981;
|
|
5
|
+
--kb-color-warning: #f59e0b;
|
|
6
|
+
--kb-color-danger: #f43f5e;
|
|
7
|
+
--kb-color-info: #06b6d4;
|
|
8
|
+
--kb-color-bg: #fffdfd;
|
|
9
|
+
--kb-color-bg-elevated: #f5f3ff;
|
|
10
|
+
--kb-color-border: #e9e5ff;
|
|
11
|
+
--kb-radius-sm: 10px;
|
|
12
|
+
--kb-radius-md: 16px;
|
|
13
|
+
--kb-radius-lg: 24px;
|
|
14
|
+
--kb-radius-round: 999px;
|
|
15
|
+
--kb-shadow-1: 0 2px 8px rgb(99 102 241 / 12%);
|
|
16
|
+
--kb-shadow-2: 0 8px 24px rgb(99 102 241 / 18%);
|
|
17
|
+
--kb-color-primary-gradient: linear-gradient(135deg, #818cf8, #6366f1);
|
|
18
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/* 主题:樱花(浅粉 + 柔和春意) */
|
|
2
|
+
[data-theme='sakura'] {
|
|
3
|
+
--kb-color-primary: #f472b6;
|
|
4
|
+
--kb-color-success: #86efac;
|
|
5
|
+
--kb-color-warning: #fcd34d;
|
|
6
|
+
--kb-color-danger: #fb7185;
|
|
7
|
+
--kb-color-info: #a5b4fc;
|
|
8
|
+
--kb-color-bg: #fff7fb;
|
|
9
|
+
--kb-color-bg-elevated: #fdeef7;
|
|
10
|
+
--kb-color-border: #fbcfe8;
|
|
11
|
+
--kb-color-text-1: #831843;
|
|
12
|
+
--kb-color-text-2: #be185d;
|
|
13
|
+
--kb-color-text-3: #f9a8d4;
|
|
14
|
+
--kb-radius-sm: 10px;
|
|
15
|
+
--kb-radius-md: 16px;
|
|
16
|
+
--kb-radius-lg: 24px;
|
|
17
|
+
--kb-shadow-1: 0 2px 8px rgb(244 114 182 / 15%);
|
|
18
|
+
--kb-shadow-2: 0 8px 28px rgb(244 114 182 / 22%);
|
|
19
|
+
--kb-color-primary-gradient: linear-gradient(135deg, #f9a8d4, #f472b6);
|
|
20
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/* 主题:天空(明亮蓝白) */
|
|
2
|
+
[data-theme='sky'] {
|
|
3
|
+
--kb-color-primary: #0284c7;
|
|
4
|
+
--kb-color-success: #16a34a;
|
|
5
|
+
--kb-color-warning: #d97706;
|
|
6
|
+
--kb-color-danger: #dc2626;
|
|
7
|
+
--kb-color-info: #0ea5e9;
|
|
8
|
+
--kb-color-bg: #f8fafc;
|
|
9
|
+
--kb-color-bg-elevated: #eff6ff;
|
|
10
|
+
--kb-color-border: #bfdbfe;
|
|
11
|
+
--kb-color-text-1: #0c4a6e;
|
|
12
|
+
--kb-color-text-2: #075985;
|
|
13
|
+
--kb-color-text-3: #7dd3fc;
|
|
14
|
+
--kb-radius-sm: 6px;
|
|
15
|
+
--kb-radius-md: 10px;
|
|
16
|
+
--kb-radius-lg: 16px;
|
|
17
|
+
--kb-shadow-1: 0 2px 8px rgb(2 132 199 / 12%);
|
|
18
|
+
--kb-shadow-2: 0 8px 28px rgb(2 132 199 / 18%);
|
|
19
|
+
--kb-color-primary-gradient: linear-gradient(135deg, #38bdf8, #0284c7);
|
|
20
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/* 主题:春(嫩绿 + 鹅黄) */
|
|
2
|
+
[data-theme='spring'] {
|
|
3
|
+
--kb-color-primary: #22c55e;
|
|
4
|
+
--kb-color-success: #4ade80;
|
|
5
|
+
--kb-color-warning: #facc15;
|
|
6
|
+
--kb-color-danger: #f87171;
|
|
7
|
+
--kb-color-info: #38bdf8;
|
|
8
|
+
--kb-color-bg: #f7fef7;
|
|
9
|
+
--kb-color-bg-elevated: #ecfdf0;
|
|
10
|
+
--kb-color-border: #d1fae5;
|
|
11
|
+
--kb-color-text-1: #14532d;
|
|
12
|
+
--kb-color-text-2: #166534;
|
|
13
|
+
--kb-color-text-3: #86efac;
|
|
14
|
+
--kb-radius-sm: 8px;
|
|
15
|
+
--kb-radius-md: 12px;
|
|
16
|
+
--kb-radius-lg: 18px;
|
|
17
|
+
--kb-color-primary-gradient: linear-gradient(135deg, #86efac, #22c55e);
|
|
18
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/* 主题:星空(深蓝 + 星点) */
|
|
2
|
+
[data-theme='starry'] {
|
|
3
|
+
--kb-color-primary: #818cf8;
|
|
4
|
+
--kb-color-success: #34d399;
|
|
5
|
+
--kb-color-warning: #fbbf24;
|
|
6
|
+
--kb-color-danger: #fb7185;
|
|
7
|
+
--kb-color-info: #38bdf8;
|
|
8
|
+
--kb-color-bg: #0b1120;
|
|
9
|
+
--kb-color-bg-elevated: #131c33;
|
|
10
|
+
--kb-color-border: #243255;
|
|
11
|
+
--kb-color-text-1: #e2e8f0;
|
|
12
|
+
--kb-color-text-2: #94a3b8;
|
|
13
|
+
--kb-color-text-3: #475569;
|
|
14
|
+
--kb-color-primary-gradient: linear-gradient(135deg, #a5b4fc, #6366f1);
|
|
15
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/* 主题:日落(橙粉渐变暖色) */
|
|
2
|
+
[data-theme='sunset'] {
|
|
3
|
+
--kb-color-primary: #fb7185;
|
|
4
|
+
--kb-color-success: #fbbf24;
|
|
5
|
+
--kb-color-warning: #fb923c;
|
|
6
|
+
--kb-color-danger: #ef4444;
|
|
7
|
+
--kb-color-info: #f472b6;
|
|
8
|
+
--kb-color-bg: #fff7f5;
|
|
9
|
+
--kb-color-bg-elevated: #ffebe6;
|
|
10
|
+
--kb-color-border: #ffd6cc;
|
|
11
|
+
--kb-color-text-1: #5b1f12;
|
|
12
|
+
--kb-color-text-2: #a83d22;
|
|
13
|
+
--kb-color-text-3: #e88a6f;
|
|
14
|
+
--kb-radius-sm: 10px;
|
|
15
|
+
--kb-radius-md: 16px;
|
|
16
|
+
--kb-radius-lg: 24px;
|
|
17
|
+
--kb-color-primary-gradient: linear-gradient(135deg, #fb923c, #fb7185 55%, #f472b6);
|
|
18
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/* 涓婚锛氶潚纰э紙娓呮柊闈掔豢锛? */
|
|
2
|
+
[data-theme='teal'] {
|
|
3
|
+
--kb-color-primary: #0d9488;
|
|
4
|
+
--kb-color-success: #059669;
|
|
5
|
+
--kb-color-warning: #ca8a04;
|
|
6
|
+
--kb-color-danger: #e11d48;
|
|
7
|
+
--kb-color-info: #0891b2;
|
|
8
|
+
--kb-color-bg: #fff;
|
|
9
|
+
--kb-color-bg-elevated: #f0fdfa;
|
|
10
|
+
--kb-color-border: #ccfbf1;
|
|
11
|
+
--kb-color-text-1: #134e4a;
|
|
12
|
+
--kb-color-text-2: #115e59;
|
|
13
|
+
--kb-color-text-3: #5eead4;
|
|
14
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/* 椋庢牸锛氬鍙ょ粓绔紙绛夊瀛椾綋 + 缁块粦 + 閿愯锛? */
|
|
2
|
+
[data-theme='terminal'] {
|
|
3
|
+
--kb-color-primary: #22c55e;
|
|
4
|
+
--kb-color-success: #4ade80;
|
|
5
|
+
--kb-color-warning: #facc15;
|
|
6
|
+
--kb-color-danger: #f87171;
|
|
7
|
+
--kb-color-info: #38bdf8;
|
|
8
|
+
--kb-color-bg: #0a0f0a;
|
|
9
|
+
--kb-color-bg-elevated: #101810;
|
|
10
|
+
--kb-color-border: #1f3d23;
|
|
11
|
+
--kb-color-text-1: #86efac;
|
|
12
|
+
--kb-color-text-2: #4ade80;
|
|
13
|
+
--kb-color-text-3: #22c55e;
|
|
14
|
+
--kb-radius-sm: 0;
|
|
15
|
+
--kb-radius-md: 0;
|
|
16
|
+
--kb-radius-lg: 0;
|
|
17
|
+
--kb-radius-round: 0;
|
|
18
|
+
--kb-shadow-1: none;
|
|
19
|
+
--kb-shadow-2: none;
|
|
20
|
+
--kb-color-primary-gradient: var(--kb-color-primary);
|
|
21
|
+
--kb-font-family:
|
|
22
|
+
'Cascadia Code', 'Consolas', 'Courier New', ui-monospace, monospace;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
[data-theme='terminal'] .kb-button {
|
|
26
|
+
text-transform: uppercase;
|
|
27
|
+
letter-spacing: 1px;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
[data-theme='terminal'] .kb-button--primary {
|
|
31
|
+
border: 1px solid var(--kb-color-primary);
|
|
32
|
+
background: transparent;
|
|
33
|
+
color: var(--kb-color-primary);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
[data-theme='terminal'] .kb-button--primary:hover:not(.kb-button--disabled) {
|
|
37
|
+
background: var(--kb-color-primary);
|
|
38
|
+
color: var(--kb-color-bg);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
[data-theme='terminal'] .kb-card,
|
|
42
|
+
[data-theme='terminal'] .kb-dialog {
|
|
43
|
+
border: 1px solid var(--kb-color-primary);
|
|
44
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/* 风格:蒸汽波(粉紫霓虹 + 复古未来) */
|
|
2
|
+
[data-theme='vaporwave'] {
|
|
3
|
+
--kb-color-primary: #ff2e97;
|
|
4
|
+
--kb-color-success: #00d2ff;
|
|
5
|
+
--kb-color-warning: #ffe14d;
|
|
6
|
+
--kb-color-danger: #ff3860;
|
|
7
|
+
--kb-color-info: #9d4edd;
|
|
8
|
+
--kb-color-bg: #1a0b2e;
|
|
9
|
+
--kb-color-bg-elevated: #2a1450;
|
|
10
|
+
--kb-color-border: #4a2d8a;
|
|
11
|
+
--kb-color-text-1: #f5e6ff;
|
|
12
|
+
--kb-color-text-2: #c4a6e8;
|
|
13
|
+
--kb-color-text-3: #7a5cb0;
|
|
14
|
+
--kb-radius-sm: 4px;
|
|
15
|
+
--kb-radius-md: 8px;
|
|
16
|
+
--kb-radius-lg: 12px;
|
|
17
|
+
--kb-shadow-1: 0 0 8px rgb(255 46 151 / 25%);
|
|
18
|
+
--kb-shadow-2: 0 0 24px rgb(255 46 151 / 35%);
|
|
19
|
+
--kb-color-primary-gradient: linear-gradient(135deg, #00d2ff, #ff2e97);
|
|
20
|
+
--kb-font-family:
|
|
21
|
+
'Courier New', monospace;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
[data-theme='vaporwave'] .kb-card,
|
|
25
|
+
[data-theme='vaporwave'] .kb-dialog {
|
|
26
|
+
border: 1px solid var(--kb-color-primary);
|
|
27
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/* 涓婚锛氱传缃楀叞锛堜紭闆呯传锛? */
|
|
2
|
+
[data-theme='violet'] {
|
|
3
|
+
--kb-color-primary: #7c3aed;
|
|
4
|
+
--kb-color-success: #059669;
|
|
5
|
+
--kb-color-warning: #d97706;
|
|
6
|
+
--kb-color-danger: #e11d48;
|
|
7
|
+
--kb-color-info: #6366f1;
|
|
8
|
+
--kb-color-bg: #fff;
|
|
9
|
+
--kb-color-bg-elevated: #f5f3ff;
|
|
10
|
+
--kb-color-border: #e4e0f5;
|
|
11
|
+
--kb-color-text-1: #2e1065;
|
|
12
|
+
--kb-color-text-2: #5b21b6;
|
|
13
|
+
--kb-color-text-3: #a78bfa;
|
|
14
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/* 风格:日式侘寂(米白灰 + 高级克制) */
|
|
2
|
+
[data-theme='wabi'] {
|
|
3
|
+
--kb-color-primary: #7c6f64;
|
|
4
|
+
--kb-color-success: #8a9a5b;
|
|
5
|
+
--kb-color-warning: #c8a45d;
|
|
6
|
+
--kb-color-danger: #a05d5d;
|
|
7
|
+
--kb-color-info: #6d7a83;
|
|
8
|
+
--kb-color-bg: #f4f1ea;
|
|
9
|
+
--kb-color-bg-elevated: #ebe6db;
|
|
10
|
+
--kb-color-border: #ddd6c8;
|
|
11
|
+
--kb-color-text-1: #3d3832;
|
|
12
|
+
--kb-color-text-2: #6b655b;
|
|
13
|
+
--kb-color-text-3: #a8a094;
|
|
14
|
+
--kb-radius-sm: 2px;
|
|
15
|
+
--kb-radius-md: 4px;
|
|
16
|
+
--kb-radius-lg: 6px;
|
|
17
|
+
--kb-shadow-1: 0 1px 4px rgb(61 56 50 / 8%);
|
|
18
|
+
--kb-shadow-2: 0 6px 20px rgb(61 56 50 / 12%);
|
|
19
|
+
--kb-color-primary-gradient: var(--kb-color-primary);
|
|
20
|
+
--kb-font-family:
|
|
21
|
+
'Noto Serif SC', 'Songti SC', 'Hiragino Mincho ProN', serif;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
[data-theme='wabi'] .kb-button {
|
|
25
|
+
font-weight: 400;
|
|
26
|
+
letter-spacing: 2px;
|
|
27
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/* 主题:冬(冰雪蓝白 + 冷冽) */
|
|
2
|
+
[data-theme='winter'] {
|
|
3
|
+
--kb-color-primary: #38bdf8;
|
|
4
|
+
--kb-color-success: #34d399;
|
|
5
|
+
--kb-color-warning: #a5b4fc;
|
|
6
|
+
--kb-color-danger: #60a5fa;
|
|
7
|
+
--kb-color-info: #818cf8;
|
|
8
|
+
--kb-color-bg: #f0f9ff;
|
|
9
|
+
--kb-color-bg-elevated: #e0f2fe;
|
|
10
|
+
--kb-color-border: #bae6fd;
|
|
11
|
+
--kb-color-text-1: #0c4a6e;
|
|
12
|
+
--kb-color-text-2: #075985;
|
|
13
|
+
--kb-color-text-3: #7dd3fc;
|
|
14
|
+
--kb-radius-sm: 10px;
|
|
15
|
+
--kb-radius-md: 16px;
|
|
16
|
+
--kb-radius-lg: 24px;
|
|
17
|
+
--kb-shadow-1: 0 2px 10px rgb(56 189 248 / 20%);
|
|
18
|
+
--kb-shadow-2: 0 8px 32px rgb(56 189 248 / 28%);
|
|
19
|
+
--kb-color-primary-gradient: linear-gradient(135deg, #7dd3fc, #38bdf8);
|
|
20
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
/* 品牌色 */
|
|
3
|
+
--kb-color-primary: #3b82f6;
|
|
4
|
+
--kb-color-success: #16a34a;
|
|
5
|
+
--kb-color-warning: #f59e0b;
|
|
6
|
+
--kb-color-danger: #dc2626;
|
|
7
|
+
--kb-color-info: #64748b;
|
|
8
|
+
|
|
9
|
+
/* 渐变变体(风格主题可覆盖,默认与实色一致) */
|
|
10
|
+
--kb-color-primary-gradient: linear-gradient(135deg, var(--kb-color-primary), var(--kb-color-primary));
|
|
11
|
+
--kb-color-success-gradient: linear-gradient(135deg, var(--kb-color-success), var(--kb-color-success));
|
|
12
|
+
|
|
13
|
+
/* 中性色 */
|
|
14
|
+
--kb-color-bg: #fff;
|
|
15
|
+
--kb-color-bg-elevated: #f8fafc;
|
|
16
|
+
--kb-color-border: #e2e8f0;
|
|
17
|
+
--kb-color-text-1: #0f172a;
|
|
18
|
+
--kb-color-text-2: #475569;
|
|
19
|
+
--kb-color-text-3: #94a3b8;
|
|
20
|
+
|
|
21
|
+
/* 圆角 */
|
|
22
|
+
--kb-radius-sm: 4px;
|
|
23
|
+
--kb-radius-md: 6px;
|
|
24
|
+
--kb-radius-lg: 10px;
|
|
25
|
+
--kb-radius-round: 999px;
|
|
26
|
+
|
|
27
|
+
/* 阴影 */
|
|
28
|
+
--kb-shadow-1: 0 1px 2px rgb(0 0 0 / 5%);
|
|
29
|
+
--kb-shadow-2: 0 4px 12px rgb(0 0 0 / 8%);
|
|
30
|
+
|
|
31
|
+
/* 字体 */
|
|
32
|
+
--kb-font-family:
|
|
33
|
+
-apple-system, 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif;
|
|
34
|
+
--kb-font-size-xs: 12px;
|
|
35
|
+
--kb-font-size-sm: 13px;
|
|
36
|
+
--kb-font-size-md: 14px;
|
|
37
|
+
--kb-font-size-lg: 16px;
|
|
38
|
+
--kb-font-size-xl: 20px;
|
|
39
|
+
|
|
40
|
+
/* 间距(4px 基数) */
|
|
41
|
+
--kb-space-1: 4px;
|
|
42
|
+
--kb-space-2: 8px;
|
|
43
|
+
--kb-space-3: 12px;
|
|
44
|
+
--kb-space-4: 16px;
|
|
45
|
+
--kb-space-5: 20px;
|
|
46
|
+
--kb-space-6: 24px;
|
|
47
|
+
|
|
48
|
+
/* 过渡 */
|
|
49
|
+
--kb-transition-duration: 0.2s;
|
|
50
|
+
--kb-transition-timing: ease;
|
|
51
|
+
|
|
52
|
+
/* 层级 */
|
|
53
|
+
--kb-z-index-message: 2000;
|
|
54
|
+
--kb-z-index-modal: 1000;
|
|
55
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "kb-ui-vue",
|
|
3
|
+
"version": "0.2.0",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"files": [
|
|
6
|
+
"dist"
|
|
7
|
+
],
|
|
8
|
+
"main": "./dist/index.cjs",
|
|
9
|
+
"module": "./dist/index.js",
|
|
10
|
+
"types": "./dist/index.d.ts",
|
|
11
|
+
"exports": {
|
|
12
|
+
".": {
|
|
13
|
+
"types": "./dist/index.d.ts",
|
|
14
|
+
"import": "./dist/index.js",
|
|
15
|
+
"require": "./dist/index.cjs"
|
|
16
|
+
},
|
|
17
|
+
"./styles/*": "./dist/styles/*",
|
|
18
|
+
"./package.json": "./package.json"
|
|
19
|
+
},
|
|
20
|
+
"sideEffects": [
|
|
21
|
+
"**/*.css"
|
|
22
|
+
],
|
|
23
|
+
"publishConfig": { "access": "public" },
|
|
24
|
+
"peerDependencies": {
|
|
25
|
+
"vue": "^3.4.0"
|
|
26
|
+
},
|
|
27
|
+
"scripts": {
|
|
28
|
+
"dev": "vite",
|
|
29
|
+
"build": "vue-tsc --noEmit && vite build && node scripts/build-styles.mjs",
|
|
30
|
+
"test": "vitest run",
|
|
31
|
+
"typecheck": "vue-tsc --noEmit",
|
|
32
|
+
"lint": "eslint . && stylelint \"src/**/*.css\" --allow-empty-input"
|
|
33
|
+
},
|
|
34
|
+
"devDependencies": {
|
|
35
|
+
"@vitejs/plugin-vue": "^6.0.8",
|
|
36
|
+
"@vue/test-utils": "^2.4.11",
|
|
37
|
+
"jsdom": "^30.0.1",
|
|
38
|
+
"typescript": "^5.9.3",
|
|
39
|
+
"vite": "^8.2.1",
|
|
40
|
+
"vite-plugin-dts": "^5.0.3",
|
|
41
|
+
"vitest": "^4.1.10",
|
|
42
|
+
"vue": "^3.5.41",
|
|
43
|
+
"vue-tsc": "^3.3.9"
|
|
44
|
+
}
|
|
45
|
+
}
|