@fox-js/foxui-pad 4.1.4 → 4.1.6

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 (55) hide show
  1. package/dist/index.cjs.js +1 -1
  2. package/dist/index.esm.js +6875 -6769
  3. package/dist/index.umd.js +1 -1
  4. package/dist/style.css +58 -41
  5. package/dist/style.js +1 -1
  6. package/dist/theme/common/base.scss +44 -0
  7. package/dist/theme/common/border.scss +25 -0
  8. package/dist/theme/common/color.scss +143 -0
  9. package/dist/theme/common/fill.scss +38 -0
  10. package/dist/theme/common/shadow.scss +19 -0
  11. package/dist/theme/common/typography.scss +34 -0
  12. package/dist/theme/common/var.scss +7 -0
  13. package/dist/theme/components/actionsheet.scss +57 -0
  14. package/dist/theme/components/buttons-item.scss +17 -0
  15. package/dist/theme/components/calendar.scss +35 -0
  16. package/dist/theme/components/cascader.scss +37 -0
  17. package/dist/theme/components/content.scss +17 -0
  18. package/dist/theme/components/dialog.scss +53 -0
  19. package/dist/theme/components/floating-button.scss +25 -0
  20. package/dist/theme/components/floating-window.scss +36 -0
  21. package/dist/theme/components/footer-bar.scss +24 -0
  22. package/dist/theme/components/group.scss +32 -0
  23. package/dist/theme/components/header-bar.scss +39 -0
  24. package/dist/theme/components/hint-text.scss +24 -0
  25. package/dist/theme/components/index.scss +36 -0
  26. package/dist/theme/components/infiniteloading.scss +16 -0
  27. package/dist/theme/components/input-item.scss +47 -0
  28. package/dist/theme/components/input-number-item.scss +23 -0
  29. package/dist/theme/components/input.scss +20 -0
  30. package/dist/theme/components/link-item.scss +19 -0
  31. package/dist/theme/components/messagebox.scss +68 -0
  32. package/dist/theme/components/numberkeyboard.scss +37 -0
  33. package/dist/theme/components/picker.scss +28 -0
  34. package/dist/theme/components/popover-dialog.scss +28 -0
  35. package/dist/theme/components/popup-wrapper.scss +47 -0
  36. package/dist/theme/components/popup.scss +21 -0
  37. package/dist/theme/components/price.scss +24 -0
  38. package/dist/theme/components/radio.scss +36 -0
  39. package/dist/theme/components/row-item.scss +20 -0
  40. package/dist/theme/components/searchbar.scss +29 -0
  41. package/dist/theme/components/shortpassword.scss +19 -0
  42. package/dist/theme/components/slot-item.scss +17 -0
  43. package/dist/theme/components/steps-bar.scss +59 -0
  44. package/dist/theme/components/switch-item.scss +16 -0
  45. package/dist/theme/components/tabs-bar.scss +110 -0
  46. package/dist/theme/components/tabs-frame.scss +16 -0
  47. package/dist/theme/components/text.scss +38 -0
  48. package/dist/theme/components/toast.scss +22 -0
  49. package/dist/theme/dark/css-vars.scss +31 -0
  50. package/dist/theme/dark/var.scss +10 -0
  51. package/dist/theme/index.scss +162 -0
  52. package/dist/theme/mixins/_css-var.scss +47 -0
  53. package/dist/theme/mixins/index.scss +1 -0
  54. package/dist/theme/readme.md +244 -0
  55. package/package.json +1 -1
@@ -0,0 +1,37 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // 数字键盘 组件 Design Token
10
+ $numberkeyboard: () !default;
11
+ $numberkeyboard: map.deep-merge(
12
+ (
13
+ 'width': 100%,
14
+ 'padding': 0 0 22px 0,
15
+ 'background-color': $fill-color-base,
16
+ 'header-height': 34px,
17
+ 'header-padding': 6px 0 0 0,
18
+ 'header-color': $title-color-secondary,
19
+ 'header-font-size': $font-size-medium,
20
+ 'header-close-padding': 0 16px,
21
+ 'header-close-color': $text-color-secondary,
22
+ 'header-close-font-size': $font-size-base,
23
+ 'header-close-background-color': transparent,
24
+ 'key-background-color': $white,
25
+ 'key-active-background-color': $border-color-lighter,
26
+ 'key-height': 48px,
27
+ 'key-line-height': 1.5,
28
+ 'key-border-radius': 8px,
29
+ 'key-font-size': 28px,
30
+ 'key-font-size-color': $title-color,
31
+ 'key-finish-font-size': $font-size-medium,
32
+ 'key-finish-font-size-color': $white,
33
+ 'key-finish-background-color': $color-primary,
34
+ 'key-activeFinsh-background-color': $color-primary-dark-2,
35
+ ),
36
+ $numberkeyboard
37
+ );
@@ -0,0 +1,28 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // 选择器 组件 Design Token
10
+ $picker: () !default;
11
+ $picker: map.deep-merge(
12
+ (
13
+ 'width': 40%,
14
+ 'cancel-color': $text-color-regular,
15
+ 'ok-color': $color-primary,
16
+ 'bar-cancel-font-size': $font-size-base,
17
+ 'bar-ok-font-size': $font-size-base,
18
+ 'bar-button-padding': 0 15px,
19
+ 'bar-title-font-size': $font-size-medium,
20
+ 'bar-title-color': $title-color,
21
+ 'bar-title-font-weight': normal,
22
+ 'item-height': 36px,
23
+ 'item-text-color': $title-color,
24
+ 'item-text-font-size': $font-size-base,
25
+ 'item-active-line-border': 1px solid $border-color-light
26
+ ),
27
+ $picker
28
+ );
@@ -0,0 +1,28 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // 气泡弹层 组件 Design Token
10
+ $popover-dialog: () !default;
11
+ $popover-dialog: map.deep-merge(
12
+ (
13
+ 'position': fixed,
14
+ 'color': $title-color,
15
+ 'color-dark': $white,
16
+ 'background-color': $white,
17
+ 'background-color-dark': $title-color,
18
+ 'border-radius': 4px,
19
+ 'min-width': 0px,
20
+ 'padding': 12px,
21
+ 'z-index': 2000,
22
+ 'title-font-size': $font-size-medium,
23
+ 'content-font-size': $font-size-base,
24
+ 'arrow-size': $font-size-small,
25
+ 'overlay-background-color': transparent
26
+ ),
27
+ $popover-dialog
28
+ );
@@ -0,0 +1,47 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // 弹出层容器 组件 Design Token
10
+ $popup-wrapper: () !default;
11
+ $popup-wrapper: map.deep-merge(
12
+ (
13
+ 'popup-position': fixed,
14
+ 'popup-width': 80%,
15
+ 'popup-height': auto,
16
+ 'popup-border-radius': 20px,
17
+ 'background': transparent,
18
+ 'min-height': 160px,
19
+ 'padding': 0px,
20
+ 'header-height': 20px,
21
+ 'header-background': transparent,
22
+ 'header-padding': 0px,
23
+ 'header-layout': row nowrap,
24
+ 'header-justify-content': center,
25
+ 'header-align-items': center,
26
+ 'header-font-size': $font-size-medium,
27
+ 'header-font-weight': normal,
28
+ 'header-color': $title-color,
29
+ 'close-inset': 16px 16px auto auto,
30
+ 'close-icon-color': $text-color-secondary,
31
+ 'close-icon-size': $font-size-medium,
32
+ 'footer-border-top': 1px solid $border-color-lighter,
33
+ 'footer-height': auto,
34
+ 'footer-background': transparent,
35
+ 'footer-padding': 0px,
36
+ 'footer-layout': row nowrap,
37
+ 'footer-justify-content': space-around,
38
+ 'footer-align-items': center,
39
+ 'footer-button-padding': 10px,
40
+ 'footer-button-font-size': $font-size-medium,
41
+ 'footer-button-color': $title-color-secondary,
42
+ 'footer-button-color-primary': $color-primary,
43
+ 'footer-button-font-weight': 400,
44
+ 'footer-button-border-left': 1px solid $border-color-lighter
45
+ ),
46
+ $popup-wrapper
47
+ );
@@ -0,0 +1,21 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // 弹出层 组件 Design Token
10
+ $popup: () !default;
11
+ $popup: map.deep-merge(
12
+ (
13
+ 'position': fixed,
14
+ 'max-height': 100%,
15
+ 'close-icon-margin': 16px,
16
+ 'border-radius': 20px,
17
+ 'close-icon-size': $font-size-small,
18
+ 'close-icon-color': $text-color-secondary
19
+ ),
20
+ $popup
21
+ );
@@ -0,0 +1,24 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // 价格 组件 Design Token
10
+ $price: () !default;
11
+ $price: map.deep-merge(
12
+ (
13
+ 'symbol-big-size': $font-size-large,
14
+ 'big-size': 24px,
15
+ 'decimal-big-size': $font-size-large,
16
+ 'symbol-medium-size': $font-size-base,
17
+ 'medium-size': $font-size-medium,
18
+ 'decimal-medium-size': $font-size-base,
19
+ 'symbol-small-size': $font-size-extra-small,
20
+ 'small-size': $font-size-small,
21
+ 'decimal-small-size': $font-size-extra-small
22
+ ),
23
+ $price
24
+ );
@@ -0,0 +1,36 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // 单选按钮 组件 Design Token
10
+ $radio: () !default;
11
+ $radio: map.deep-merge(
12
+ (
13
+ 'margin-horizontal': 0 8px 8px 0,
14
+ 'margin-vertical': 0 0 8px 0,
15
+ 'label-color': $title-color,
16
+ 'label-active-color': $color-primary,
17
+ 'label-readonly-color': $readonly-color,
18
+ 'label-disable-color': $disabled-color,
19
+ 'icon-readonly-color': $readonly-color,
20
+ 'icon-disable-color': $disabled-color,
21
+ 'icon-unchecked-color': $disabled-color,
22
+ 'min-width': 0px,
23
+ 'button-min-width': 100px,
24
+ 'button-border-color': $border-color-base,
25
+ 'button-border-color-active': $color-primary,
26
+ 'button-background': $white,
27
+ 'button-background-active': $color-primary-light-9,
28
+ 'button-border-radius': 4px,
29
+ 'button-padding': 5px 18px,
30
+ 'button-font-size': $font-size-small,
31
+ 'label-margin-left': 15px,
32
+ 'label-font-size': $font-size-base,
33
+ 'icon-font-size': $font-size-large
34
+ ),
35
+ $radio
36
+ );
@@ -0,0 +1,20 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // 行单元 组件 Design Token
10
+ $row-item: () !default;
11
+ $row-item: map.deep-merge(
12
+ (
13
+ 'column-gap': 12px,
14
+ 'divide-margin': 0 10px,
15
+ 'divide-height': 12px,
16
+ 'divide-width': 1px,
17
+ 'divide-color': $border-color-light,
18
+ ),
19
+ $row-item
20
+ );
@@ -0,0 +1,29 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // 搜索栏 组件 Design Token
10
+ $searchbar: () !default;
11
+ $searchbar: map.deep-merge(
12
+ (
13
+ 'background': $white,
14
+ 'right-out-color': $black,
15
+ 'padding': 9px 16px,
16
+ 'width': 100%,
17
+ 'icon-size': $font-size-base,
18
+ 'input-background': $fill-color-base,
19
+ 'input-padding': 0 0 0 13px,
20
+ 'input-height': 32px,
21
+ 'input-width': 100%,
22
+ 'input-border-radius': 16px,
23
+ 'input-box-shadow': $box-shadow-lighter,
24
+ 'input-bar-color': inherit,
25
+ 'input-bar-placeholder-color': inherit,
26
+ 'input-inner-padding': 0 20px 0 10px
27
+ ),
28
+ $searchbar
29
+ );
@@ -0,0 +1,19 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // 短密码 组件 Design Token
10
+ $shortpassword: () !default;
11
+ $shortpassword: map.deep-merge(
12
+ (
13
+ 'background-color': $fill-color-base,
14
+ 'border-color': $border-color-base,
15
+ 'error': $color-primary,
16
+ 'forget': $text-color-regular,
17
+ ),
18
+ $shortpassword
19
+ );
@@ -0,0 +1,17 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // 插槽item 组件 Design Token
10
+ $slot-item: () !default;
11
+ $slot-item: map.deep-merge(
12
+ (
13
+ 'padding': 0,
14
+ 'margin': 0,
15
+ ),
16
+ $slot-item
17
+ );
@@ -0,0 +1,59 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // 步骤条 组件 Design Token
10
+ $steps-bar: () !default;
11
+ $steps-bar: map.deep-merge(
12
+ (
13
+ 'font-size': $font-size-base,
14
+ 'icon-size': 28px,
15
+ 'normal-color': $white,
16
+ 'active-color': $white,
17
+ 'done-color': $white,
18
+ 'error-color': $white,
19
+ 'half-color': $white,
20
+ 'disabled-color': $white,
21
+ 'text-font-size': $font-size-base,
22
+ 'text-normal-color': $disabled-color,
23
+ 'text-active-color': $black,
24
+ 'text-done-color': $black,
25
+ 'text-error-color': $black,
26
+ 'text-half-color': $black,
27
+ 'text-disabled-color': $black,
28
+ 'icon-font-size': $font-size-base,
29
+ 'icon-border': none,
30
+ 'icon-normal-color': $white,
31
+ 'icon-active-color': $white,
32
+ 'icon-done-color': $white,
33
+ 'icon-error-color': $white,
34
+ 'icon-half-color': $white,
35
+ 'icon-disabled-color': $white,
36
+ 'icon-bg-normal-color': $disabled-color,
37
+ 'icon-bg-active-color': $color-primary,
38
+ 'icon-bg-done-color': $color-success,
39
+ 'icon-bg-error-color': $color-danger,
40
+ 'icon-bg-half-color': $color-warning,
41
+ 'icon-bg-disabled-color': $disabled-color,
42
+ 'line-normal-color': $disabled-color,
43
+ 'line-active-color': $color-primary,
44
+ 'line-border-style': solid,
45
+ 'line-border-width': 1px,
46
+ 'mark-color': $color-primary,
47
+ 'mark-width-vertical': 28px,
48
+ 'mark-height-vertical': 28px,
49
+ 'main-margin-vertical': 0 0 0 0,
50
+ 'main-width-vertical': 100px,
51
+ 'main-height-vertical': auto,
52
+ 'main-line-height-vertical': 28px,
53
+ 'main-margin-horizontal': 10px 0 0 0,
54
+ 'main-width-horizontal': auto,
55
+ 'main-height-horizontal': auto,
56
+ 'main-line-height-horizontal': auto
57
+ ),
58
+ $steps-bar
59
+ );
@@ -0,0 +1,16 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // 开关 组件 Design Token
10
+ $switch-item: () !default;
11
+ $switch-item: map.deep-merge(
12
+ (
13
+ 'padding': 0 29px 0 0
14
+ ),
15
+ $switch-item
16
+ );
@@ -0,0 +1,110 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // 标签栏 组件 Design Token
10
+ $tabs-bar: () !default;
11
+ $tabs-bar: map.deep-merge(
12
+ (
13
+ 'titles-height-horizontal': 44px,
14
+ 'titles-width-vertical': 100px,
15
+ 'titles-border-radius': 0,
16
+ 'titles-background': $fill-color-base,
17
+ 'item-doit-size': 7px,
18
+ 'item-tip-font-size': $font-size-extra-small,
19
+ 'item-tip-color': $white,
20
+ 'item-tip-background': $color-primary,
21
+ 'item-tip-box-shadow': 0 0 0 1px $white,
22
+ 'item-gutter': 10px,
23
+ 'item-gutter-horizontal': 0px,
24
+ 'item-gutter-vertical': 0px,
25
+ 'item-height-vertical': 40px,
26
+ 'item-min-width-horizontal': 50px,
27
+ 'item-font-size-large': $font-size-medium,
28
+ 'item-font-size-large-active': $font-size-medium,
29
+ 'item-font-size-default': $font-size-base,
30
+ 'item-font-size-default-active': $font-size-base,
31
+ 'item-font-size-small': $font-size-small,
32
+ 'item-font-size-small-active': $font-size-small,
33
+ 'item-color': $title-color,
34
+ 'item-color-active': $title-color,
35
+ 'item-color-disable': $disabled-color,
36
+ 'item-font-weight': normal,
37
+ 'item-font-weight-active': bold,
38
+ 'item-padding-horizontal': 0 12px,
39
+ 'item-padding-vertical': 0px,
40
+ 'item-line-border-radius': 0,
41
+ 'item-line-opacity': 1,
42
+ 'item-line-bottom': 0px,
43
+ 'item-line-color-horizontal': $color-primary,
44
+ 'item-line-color-vertical': $color-primary,
45
+ 'item-line-width-horizontal': 40px,
46
+ 'item-line-height-horizontal': 3px,
47
+ 'item-line-width-vertical': 3px,
48
+ 'item-line-height-vertical': 14px,
49
+ 'item-line-color': $color-primary,
50
+ 'navigation-width': 30px,
51
+ 'navigation-color': $title-color-secondary,
52
+ 'scroll-arrow-width': 20px,
53
+ 'scroll-arrow-color': $title-color-secondary,
54
+ 'item-gutter-button': 8px,
55
+ 'item-radius-button': 4px,
56
+ 'item-border-button': 1px solid transparent,
57
+ 'item-border-active-button': 1px solid transparent,
58
+ 'item-width-button': 80px,
59
+ 'item-height-button': 32px,
60
+ 'item-font-size-button': $font-size-small,
61
+ 'item-font-size-active-button': $font-size-small,
62
+ 'item-font-weight-button': 400,
63
+ 'item-font-weight-active-button': 400,
64
+ 'item-color-button': $title-color-secondary,
65
+ 'item-color-active-button': $color-primary,
66
+ 'item-background-button': $white,
67
+ 'item-background-active-button': $white,
68
+ 'item-gutter-button-group': 0px,
69
+ 'item-radius-button-group': 8px,
70
+ 'item-border-width-button-group': 1px,
71
+ 'item-width-button-group': 105px,
72
+ 'item-height-button-group': 32px,
73
+ 'item-font-size-button-group': $font-size-base,
74
+ 'item-font-size-active-button-group': $font-size-base,
75
+ 'item-font-weight-button-group': 400,
76
+ 'item-font-weight-active-button-group': 400,
77
+ 'item-color-button-group': $color-primary,
78
+ 'item-color-active-button-group': $white,
79
+ 'item-background-button-group': $white,
80
+ 'item-background-active-button-group': $color-primary,
81
+ 'titles-border-radius-capsule': 16px,
82
+ 'titles-background-capsule': $fill-color-base,
83
+ 'titles-padding-capsule': 5px 8px,
84
+ 'item-gutter-capsule': 0px,
85
+ 'item-radius-capsule': 12px,
86
+ 'item-border-width-capsule': 1px,
87
+ 'item-width-capsule': 100px,
88
+ 'item-height-capsule': 29px,
89
+ 'item-font-size-capsule': $font-size-base,
90
+ 'item-font-size-active-capsule': $font-size-base,
91
+ 'item-font-weight-capsule': 400,
92
+ 'item-font-weight-active-capsule': 400,
93
+ 'item-color-capsule': $title-color-secondary,
94
+ 'item-color-active-capsule': $color-primary,
95
+ 'item-background-capsule': transparent,
96
+ 'item-background-active-capsule': $white,
97
+ 'popup-background': $white,
98
+ 'popup-max-height': 500px,
99
+ 'popup-padding': 12px 0 0 12px,
100
+ 'popup-box-shadow': $box-shadow,
101
+ 'popup-item-background': $fill-color-base,
102
+ 'popup-item-background-active': $color-primary-light-9,
103
+ 'popup-item-color': $title-color,
104
+ 'popup-item-color-active': $color-primary,
105
+ 'popup-item-radius': 16px,
106
+ 'popup-item-padding': 5px 12px 5px 12px,
107
+ 'popup-item-margin': 0px 12px 12px 0
108
+ ),
109
+ $tabs-bar
110
+ );
@@ -0,0 +1,16 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // Tabs框架 组件 Design Token
10
+ $tabs-frame: () !default;
11
+ $tabs-frame: map.deep-merge(
12
+ (
13
+ 'bar-margin': 0
14
+ ),
15
+ $tabs-frame
16
+ );
@@ -0,0 +1,38 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // 文本 组件 Design Token
10
+ $text: () !default;
11
+ $text: map.deep-merge(
12
+ (
13
+ 'margin': 0,
14
+ 'padding': 0,
15
+ 'font-size': $font-size-base,
16
+ 'font-size-large': $font-size-large,
17
+ 'font-size-small': $font-size-small,
18
+ 'font-weight': 400,
19
+ 'text-color': $black,
20
+ 'highlight-color': $white,
21
+ 'highlight-background-color': $color-danger,
22
+ 'primary-color': $color-primary,
23
+ 'info-color': $color-info,
24
+ 'warning-color': $color-warning,
25
+ 'danger-color': $color-danger,
26
+ 'success-color': $color-success,
27
+ 'default-color': $color-info,
28
+ 'mark-size': 4px,
29
+ 'mark-text-gutter': 4px,
30
+ 'mark-icon-width': 1em,
31
+ 'mark-icon-height': 1em,
32
+ 'divide-margin': 0 0,
33
+ 'divide-height': 12px,
34
+ 'divide-width': 1px,
35
+ 'divide-color': $border-color-light
36
+ ),
37
+ $text
38
+ );
@@ -0,0 +1,22 @@
1
+ @use 'sass:map';
2
+ @use '../common/color' as *;
3
+ @use '../common/typography' as *;
4
+ @use '../common/border' as *;
5
+ @use '../common/fill' as *;
6
+ @use '../common/shadow' as *;
7
+ @use '../common/base' as *;
8
+
9
+ // 消息提示 组件 Design Token
10
+ $toast: () !default;
11
+ $toast: map.deep-merge(
12
+ (
13
+ 'title-font-size': $font-size-medium,
14
+ 'text-font-size': $font-size-base,
15
+ 'font-color': $white,
16
+ 'inner-padding': 24px 30px,
17
+ 'inner-bg-color': $overlay-text-bg-color,
18
+ 'inner-border-radius': 12px,
19
+ 'cover-bg-color': transparent
20
+ ),
21
+ $toast
22
+ );
@@ -0,0 +1,31 @@
1
+ @use 'var' as *;
2
+
3
+ // 暗黑模式 CSS 自定义属性
4
+ // 基础 token 已委托 element-plus, html.dark 下自动跟随,
5
+ // 这里覆盖 fox 独有变量以及亮色下写死为白色/浅色的组件变量
6
+ html.dark {
7
+ // fox 独有文字颜色
8
+ --fox-readonly-color: #{$dark-readonly-color};
9
+
10
+ // 亮色下使用白色背景的组件变量, 暗黑下切换为 element-plus 暗黑背景
11
+ --fox-searchbar-background: #{$dark-bg-overlay};
12
+ --fox-header-bar-background-color: #{$dark-bg-overlay};
13
+ --fox-footer-bar-background-color: #{$dark-bg-overlay};
14
+ --fox-content-background: #{$dark-bg-overlay};
15
+ --fox-messagebox-background: #{$dark-bg-overlay};
16
+ --fox-cascader-tabs-titles-background-color: #{$dark-bg-overlay};
17
+ --fox-radio-button-background: #{$dark-bg-overlay};
18
+ --fox-tabs-bar-item-background-button: #{$dark-bg-overlay};
19
+ --fox-tabs-bar-item-background-active-button: #{$dark-bg-overlay};
20
+ --fox-tabs-bar-item-background-button-group: #{$dark-bg-overlay};
21
+ --fox-tabs-bar-item-background-active-capsule: #{$dark-bg-overlay};
22
+ --fox-tabs-bar-popup-background: #{$dark-bg-overlay};
23
+ --fox-numberkeyboard-key-background-color: #{$dark-bg-overlay};
24
+ --fox-popover-dialog-background-color: #{$dark-bg-overlay};
25
+
26
+ // 亮色下白色渐变结尾的组件背景, 暗黑下改为纯色
27
+ --fox-messagebox-background-info: #{$dark-bg-overlay};
28
+ --fox-messagebox-background-success: #{$dark-bg-overlay};
29
+ --fox-messagebox-background-warning: #{$dark-bg-overlay};
30
+ --fox-messagebox-background-error: #{$dark-bg-overlay};
31
+ }
@@ -0,0 +1,10 @@
1
+ // 暗黑模式变量定义
2
+ // foxui-desktop 的基础 token(颜色/文字/边框/填充/阴影)已委托 element-plus,
3
+ // html.dark 下自动跟随 element-plus 暗黑主题, 无需重复定义,
4
+ // 这里只定义 fox 独有变量的暗黑覆盖值
5
+
6
+ // 只读颜色(fox 独有, 亮色下为 #808080)
7
+ $dark-readonly-color: #a8abb2 !default;
8
+
9
+ // 暗黑模式背景(委托 element-plus 暗黑背景变量)
10
+ $dark-bg-overlay: var(--el-bg-color-overlay) !default;