ele-admin-plus 1.1.4-beta.2 → 1.1.4-beta.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.
@@ -125,7 +125,7 @@
125
125
  // 主题
126
126
  &.is-dark {
127
127
  background: elVar('color-primary');
128
- border: none;
128
+ border-color: elVar('color-primary');
129
129
 
130
130
  & > .ele-alert-icon {
131
131
  color: eleVar('alert-dark', 'title-color');
@@ -151,14 +151,17 @@
151
151
 
152
152
  &.is-success {
153
153
  background: elVar('color-success');
154
+ border-color: elVar('color-success');
154
155
  }
155
156
 
156
157
  &.is-warning {
157
158
  background: elVar('color-warning');
159
+ border-color: elVar('color-warning');
158
160
  }
159
161
 
160
162
  &.is-error {
161
163
  background: elVar('color-error');
164
+ border-color: elVar('color-error');
162
165
  }
163
166
  }
164
167
  }
@@ -53,6 +53,11 @@
53
53
  @include set-ele-var('message-box', $var);
54
54
  }
55
55
 
56
+ // Notification
57
+ .el-notification {
58
+ @include set-ele-var('notification', $var);
59
+ }
60
+
56
61
  // Radio
57
62
  .el-radio {
58
63
  @include set-ele-var('radio', $var);
@@ -85,3 +90,50 @@
85
90
  @include set-ele-var('timepicker', $var);
86
91
  }
87
92
  }
93
+
94
+ // 美化滚动条样式
95
+ @mixin scrollbar-style() {
96
+ ::-webkit-scrollbar {
97
+ width: eleVar('scrollbar', 'size');
98
+ height: eleVar('scrollbar', 'size');
99
+ }
100
+
101
+ ::-webkit-scrollbar-thumb {
102
+ border: eleVar('scrollbar', 'padding') solid transparent;
103
+ border-radius: eleVar('scrollbar', 'radius');
104
+ background-color: eleVar('scrollbar', 'color');
105
+ background-clip: padding-box;
106
+
107
+ &:hover {
108
+ background-color: eleVar('scrollbar', 'hover-color');
109
+ }
110
+ }
111
+
112
+ ::-webkit-scrollbar-track {
113
+ background: eleVar('scrollbar', 'bg');
114
+ }
115
+
116
+ ::-webkit-scrollbar-corner {
117
+ background: transparent;
118
+ }
119
+
120
+ // 火狐浏览器
121
+ * {
122
+ scrollbar-width: thin;
123
+ scrollbar-color: eleVar('scrollbar', 'color') eleVar('scrollbar', 'bg');
124
+ }
125
+ }
126
+
127
+ @mixin set-scrollbar-style($selector) {
128
+ @if $selector == '' {
129
+ @include scrollbar-style();
130
+ } @else if $selector == 'pc' {
131
+ @media (hover: hover) and (pointer: fine) {
132
+ @include scrollbar-style();
133
+ }
134
+ } @else if $selector != 'never' {
135
+ #{$selector} {
136
+ @include scrollbar-style();
137
+ }
138
+ }
139
+ }
@@ -392,6 +392,66 @@ body .el-overlay.is-message-box > .el-overlay-message-box {
392
392
  }
393
393
  }
394
394
 
395
+ /* Notification */
396
+ body .el-notification {
397
+ width: eleVar('notification', 'width');
398
+ max-width: calc(100vw - 48px);
399
+ padding: eleVar('notification', 'padding');
400
+ border: eleVar('notification', 'border');
401
+ border-radius: eleVar('notification', 'radius');
402
+ box-shadow: eleVar('notification', 'shadow');
403
+
404
+ .el-notification__icon {
405
+ width: eleVar('notification', 'icon-size');
406
+ height: eleVar('notification', 'icon-size');
407
+ font-size: eleVar('notification', 'icon-size');
408
+ margin: eleVar('notification', 'icon-margin');
409
+ }
410
+ }
411
+
412
+ .el-notification .el-notification__icon.el-notification--info {
413
+ color: elVar('color-primary');
414
+ }
415
+
416
+ .el-notification .el-notification__group {
417
+ margin: 0;
418
+
419
+ .el-notification__closeBtn {
420
+ top: 0;
421
+ right: 0;
422
+ width: eleVar('notification', 'close-size');
423
+ height: eleVar('notification', 'close-size');
424
+ line-height: eleVar('notification', 'close-size');
425
+ color: eleVar('notification', 'close-color');
426
+ font-size: eleVar('notification', 'close-font-size');
427
+ margin: eleVar('notification', 'close-margin');
428
+ border-radius: eleVar('notification', 'close-radius');
429
+ transition: (color $ele-transition, background-color $ele-transition);
430
+
431
+ &:hover {
432
+ color: eleVar('notification', 'close-hover-color');
433
+ background: eleVar('notification', 'close-hover-bg');
434
+ }
435
+ }
436
+
437
+ .el-notification__title {
438
+ color: eleVar('notification', 'title-color');
439
+ font-size: eleVar('notification', 'title-size');
440
+ font-weight: eleVar('notification', 'title-font-weight');
441
+ line-height: eleVar('notification', 'title-line-height');
442
+ padding: eleVar('notification', 'title-padding');
443
+ box-sizing: border-box;
444
+ }
445
+
446
+ .el-notification__content {
447
+ color: eleVar('notification', 'color');
448
+ font-size: eleVar('notification', 'size');
449
+ margin-top: eleVar('notification', 'body-margin');
450
+ line-height: inherit;
451
+ text-align: left;
452
+ }
453
+ }
454
+
395
455
  /* Radio */
396
456
  body .el-radio {
397
457
  .el-radio__label {
@@ -6,32 +6,4 @@
6
6
  @include set-scrollbar-var($ele);
7
7
  }
8
8
 
9
- ::-webkit-scrollbar {
10
- width: eleVar('scrollbar', 'size');
11
- height: eleVar('scrollbar', 'size');
12
- }
13
-
14
- ::-webkit-scrollbar-thumb {
15
- border: eleVar('scrollbar', 'padding') solid transparent;
16
- border-radius: eleVar('scrollbar', 'radius');
17
- background-color: eleVar('scrollbar', 'color');
18
- background-clip: padding-box;
19
-
20
- &:hover {
21
- background-color: eleVar('scrollbar', 'hover-color');
22
- }
23
- }
24
-
25
- ::-webkit-scrollbar-track {
26
- background: eleVar('scrollbar', 'bg');
27
- }
28
-
29
- ::-webkit-scrollbar-corner {
30
- background: transparent;
31
- }
32
-
33
- // 火狐浏览器
34
- * {
35
- scrollbar-width: thin;
36
- scrollbar-color: eleVar('scrollbar', 'color') eleVar('scrollbar', 'bg');
37
- }
9
+ @include set-scrollbar-style($scrollbar-selector);
@@ -40,19 +40,22 @@
40
40
  }
41
41
 
42
42
  /* 打印状态 */
43
+ html.ele-printing,
43
44
  html.ele-printing > body {
44
- color: #000;
45
- background: #fff;
45
+ color: #000 !important;
46
+ background: #fff !important;
47
+ height: auto !important;
48
+ overflow: visible !important;
49
+ }
46
50
 
47
- & > * {
48
- display: none !important;
49
- }
51
+ html.ele-printing > body > * {
52
+ display: none !important;
53
+ }
50
54
 
51
- #ele-printer-container {
52
- display: block !important;
55
+ html.ele-printing #ele-printer-container {
56
+ display: block !important;
53
57
 
54
- * {
55
- pointer-events: none !important;
56
- }
58
+ * {
59
+ pointer-events: none !important;
57
60
  }
58
61
  }
@@ -107,7 +107,7 @@ const _sfc_main = defineComponent({
107
107
  if (props.fixedBody) {
108
108
  return ".ele-admin-layout.ele-admin-fixed-body>.ele-admin-main>.ele-admin-body>.ele-admin-content";
109
109
  }
110
- return void 0;
110
+ return "body";
111
111
  });
112
112
  const sidebarCollapse = computed(() => {
113
113
  return mobile.value || mixSidebar.value ? false : props.collapse;
@@ -8,12 +8,12 @@
8
8
  position: fixed !important;
9
9
  left: 0 !important;
10
10
  width: eleVar('sidebar', 'width') !important;
11
- height: calc(100vh - #{eleVar('header', 'height')}) !important;
12
11
  z-index: calc(eleVar('layout', 'mask-index') + 1) !important;
13
12
  }
14
13
 
15
14
  .ele-admin-sidebar {
16
15
  top: eleVar('header', 'height') !important;
16
+ height: calc(100vh - #{eleVar('header', 'height')}) !important;
17
17
  }
18
18
 
19
19
  .ele-admin-logo > img + h1 {
@@ -5,6 +5,9 @@
5
5
  // 过渡动画
6
6
  $ele-transition: 0.2s !default;
7
7
 
8
+ // 美化滚动条样式选择器
9
+ $scrollbar-selector: '' !default;
10
+
8
11
  // 样式变量
9
12
  $ele: () !default;
10
13
  $ele: map.deep-merge(
@@ -838,6 +841,31 @@ $ele: map.deep-merge(
838
841
  'footer-border': none,
839
842
  'mobile-space': 16px
840
843
  ),
844
+ 'notification': (
845
+ // 通知
846
+ 'width': 360px,
847
+ 'border': none,
848
+ 'padding': 20px,
849
+ 'radius': elVar('border-radius', 'base'),
850
+ 'shadow': elVar('box-shadow', 'light'),
851
+ 'color': elVar('text-color', 'regular'),
852
+ 'size': elVar('font-size', 'base'),
853
+ 'icon-size': 26px,
854
+ 'icon-margin': -2px 12px 0 0,
855
+ 'title-color': elVar('text-color', 'primary'),
856
+ 'title-size': elVar('font-size', 'medium'),
857
+ 'title-font-weight': normal,
858
+ 'title-line-height': 22px,
859
+ 'title-padding': 0 22px 0 0,
860
+ 'body-margin': 8px,
861
+ 'close-size': 22px,
862
+ 'close-margin': 20px 24px 0 0,
863
+ 'close-radius': elVar('border-radius', 'small'),
864
+ 'close-font-size': 18px,
865
+ 'close-color': elVar('text-color', 'secondary'),
866
+ 'close-hover-color': elVar('text-color', 'primary'),
867
+ 'close-hover-bg': transparent
868
+ ),
841
869
  'radio': (
842
870
  // 单选框
843
871
  'color': elVar('text-color', 'regular'),
@@ -216,6 +216,10 @@ $ele-rounded: map.deep-merge(
216
216
  'header-font-weight': bold,
217
217
  'icon-hover-bg': elVar('fill-color', 'light')
218
218
  ),
219
+ 'notification': (
220
+ 'radius': $radius-large,
221
+ 'close-hover-bg': elVar('fill-color', 'light')
222
+ ),
219
223
  'descriptions': (
220
224
  'radius': $radius-large
221
225
  ),
@@ -125,7 +125,7 @@
125
125
  // 主题
126
126
  &.is-dark {
127
127
  background: elVar('color-primary');
128
- border: none;
128
+ border-color: elVar('color-primary');
129
129
 
130
130
  & > .ele-alert-icon {
131
131
  color: eleVar('alert-dark', 'title-color');
@@ -151,14 +151,17 @@
151
151
 
152
152
  &.is-success {
153
153
  background: elVar('color-success');
154
+ border-color: elVar('color-success');
154
155
  }
155
156
 
156
157
  &.is-warning {
157
158
  background: elVar('color-warning');
159
+ border-color: elVar('color-warning');
158
160
  }
159
161
 
160
162
  &.is-error {
161
163
  background: elVar('color-error');
164
+ border-color: elVar('color-error');
162
165
  }
163
166
  }
164
167
  }
@@ -53,6 +53,11 @@
53
53
  @include set-ele-var('message-box', $var);
54
54
  }
55
55
 
56
+ // Notification
57
+ .el-notification {
58
+ @include set-ele-var('notification', $var);
59
+ }
60
+
56
61
  // Radio
57
62
  .el-radio {
58
63
  @include set-ele-var('radio', $var);
@@ -85,3 +90,50 @@
85
90
  @include set-ele-var('timepicker', $var);
86
91
  }
87
92
  }
93
+
94
+ // 美化滚动条样式
95
+ @mixin scrollbar-style() {
96
+ ::-webkit-scrollbar {
97
+ width: eleVar('scrollbar', 'size');
98
+ height: eleVar('scrollbar', 'size');
99
+ }
100
+
101
+ ::-webkit-scrollbar-thumb {
102
+ border: eleVar('scrollbar', 'padding') solid transparent;
103
+ border-radius: eleVar('scrollbar', 'radius');
104
+ background-color: eleVar('scrollbar', 'color');
105
+ background-clip: padding-box;
106
+
107
+ &:hover {
108
+ background-color: eleVar('scrollbar', 'hover-color');
109
+ }
110
+ }
111
+
112
+ ::-webkit-scrollbar-track {
113
+ background: eleVar('scrollbar', 'bg');
114
+ }
115
+
116
+ ::-webkit-scrollbar-corner {
117
+ background: transparent;
118
+ }
119
+
120
+ // 火狐浏览器
121
+ * {
122
+ scrollbar-width: thin;
123
+ scrollbar-color: eleVar('scrollbar', 'color') eleVar('scrollbar', 'bg');
124
+ }
125
+ }
126
+
127
+ @mixin set-scrollbar-style($selector) {
128
+ @if $selector == '' {
129
+ @include scrollbar-style();
130
+ } @else if $selector == 'pc' {
131
+ @media (hover: hover) and (pointer: fine) {
132
+ @include scrollbar-style();
133
+ }
134
+ } @else if $selector != 'never' {
135
+ #{$selector} {
136
+ @include scrollbar-style();
137
+ }
138
+ }
139
+ }
@@ -392,6 +392,66 @@ body .el-overlay.is-message-box > .el-overlay-message-box {
392
392
  }
393
393
  }
394
394
 
395
+ /* Notification */
396
+ body .el-notification {
397
+ width: eleVar('notification', 'width');
398
+ max-width: calc(100vw - 48px);
399
+ padding: eleVar('notification', 'padding');
400
+ border: eleVar('notification', 'border');
401
+ border-radius: eleVar('notification', 'radius');
402
+ box-shadow: eleVar('notification', 'shadow');
403
+
404
+ .el-notification__icon {
405
+ width: eleVar('notification', 'icon-size');
406
+ height: eleVar('notification', 'icon-size');
407
+ font-size: eleVar('notification', 'icon-size');
408
+ margin: eleVar('notification', 'icon-margin');
409
+ }
410
+ }
411
+
412
+ .el-notification .el-notification__icon.el-notification--info {
413
+ color: elVar('color-primary');
414
+ }
415
+
416
+ .el-notification .el-notification__group {
417
+ margin: 0;
418
+
419
+ .el-notification__closeBtn {
420
+ top: 0;
421
+ right: 0;
422
+ width: eleVar('notification', 'close-size');
423
+ height: eleVar('notification', 'close-size');
424
+ line-height: eleVar('notification', 'close-size');
425
+ color: eleVar('notification', 'close-color');
426
+ font-size: eleVar('notification', 'close-font-size');
427
+ margin: eleVar('notification', 'close-margin');
428
+ border-radius: eleVar('notification', 'close-radius');
429
+ transition: (color $ele-transition, background-color $ele-transition);
430
+
431
+ &:hover {
432
+ color: eleVar('notification', 'close-hover-color');
433
+ background: eleVar('notification', 'close-hover-bg');
434
+ }
435
+ }
436
+
437
+ .el-notification__title {
438
+ color: eleVar('notification', 'title-color');
439
+ font-size: eleVar('notification', 'title-size');
440
+ font-weight: eleVar('notification', 'title-font-weight');
441
+ line-height: eleVar('notification', 'title-line-height');
442
+ padding: eleVar('notification', 'title-padding');
443
+ box-sizing: border-box;
444
+ }
445
+
446
+ .el-notification__content {
447
+ color: eleVar('notification', 'color');
448
+ font-size: eleVar('notification', 'size');
449
+ margin-top: eleVar('notification', 'body-margin');
450
+ line-height: inherit;
451
+ text-align: left;
452
+ }
453
+ }
454
+
395
455
  /* Radio */
396
456
  body .el-radio {
397
457
  .el-radio__label {
@@ -6,32 +6,4 @@
6
6
  @include set-scrollbar-var($ele);
7
7
  }
8
8
 
9
- ::-webkit-scrollbar {
10
- width: eleVar('scrollbar', 'size');
11
- height: eleVar('scrollbar', 'size');
12
- }
13
-
14
- ::-webkit-scrollbar-thumb {
15
- border: eleVar('scrollbar', 'padding') solid transparent;
16
- border-radius: eleVar('scrollbar', 'radius');
17
- background-color: eleVar('scrollbar', 'color');
18
- background-clip: padding-box;
19
-
20
- &:hover {
21
- background-color: eleVar('scrollbar', 'hover-color');
22
- }
23
- }
24
-
25
- ::-webkit-scrollbar-track {
26
- background: eleVar('scrollbar', 'bg');
27
- }
28
-
29
- ::-webkit-scrollbar-corner {
30
- background: transparent;
31
- }
32
-
33
- // 火狐浏览器
34
- * {
35
- scrollbar-width: thin;
36
- scrollbar-color: eleVar('scrollbar', 'color') eleVar('scrollbar', 'bg');
37
- }
9
+ @include set-scrollbar-style($scrollbar-selector);
@@ -40,19 +40,22 @@
40
40
  }
41
41
 
42
42
  /* 打印状态 */
43
+ html.ele-printing,
43
44
  html.ele-printing > body {
44
- color: #000;
45
- background: #fff;
45
+ color: #000 !important;
46
+ background: #fff !important;
47
+ height: auto !important;
48
+ overflow: visible !important;
49
+ }
46
50
 
47
- & > * {
48
- display: none !important;
49
- }
51
+ html.ele-printing > body > * {
52
+ display: none !important;
53
+ }
50
54
 
51
- #ele-printer-container {
52
- display: block !important;
55
+ html.ele-printing #ele-printer-container {
56
+ display: block !important;
53
57
 
54
- * {
55
- pointer-events: none !important;
56
- }
58
+ * {
59
+ pointer-events: none !important;
57
60
  }
58
61
  }
@@ -108,7 +108,7 @@ const _sfc_main = vue.defineComponent({
108
108
  if (props2.fixedBody) {
109
109
  return ".ele-admin-layout.ele-admin-fixed-body>.ele-admin-main>.ele-admin-body>.ele-admin-content";
110
110
  }
111
- return void 0;
111
+ return "body";
112
112
  });
113
113
  const sidebarCollapse = vue.computed(() => {
114
114
  return mobile.value || mixSidebar.value ? false : props2.collapse;
@@ -8,12 +8,12 @@
8
8
  position: fixed !important;
9
9
  left: 0 !important;
10
10
  width: eleVar('sidebar', 'width') !important;
11
- height: calc(100vh - #{eleVar('header', 'height')}) !important;
12
11
  z-index: calc(eleVar('layout', 'mask-index') + 1) !important;
13
12
  }
14
13
 
15
14
  .ele-admin-sidebar {
16
15
  top: eleVar('header', 'height') !important;
16
+ height: calc(100vh - #{eleVar('header', 'height')}) !important;
17
17
  }
18
18
 
19
19
  .ele-admin-logo > img + h1 {
@@ -5,6 +5,9 @@
5
5
  // 过渡动画
6
6
  $ele-transition: 0.2s !default;
7
7
 
8
+ // 美化滚动条样式选择器
9
+ $scrollbar-selector: '' !default;
10
+
8
11
  // 样式变量
9
12
  $ele: () !default;
10
13
  $ele: map.deep-merge(
@@ -838,6 +841,31 @@ $ele: map.deep-merge(
838
841
  'footer-border': none,
839
842
  'mobile-space': 16px
840
843
  ),
844
+ 'notification': (
845
+ // 通知
846
+ 'width': 360px,
847
+ 'border': none,
848
+ 'padding': 20px,
849
+ 'radius': elVar('border-radius', 'base'),
850
+ 'shadow': elVar('box-shadow', 'light'),
851
+ 'color': elVar('text-color', 'regular'),
852
+ 'size': elVar('font-size', 'base'),
853
+ 'icon-size': 26px,
854
+ 'icon-margin': -2px 12px 0 0,
855
+ 'title-color': elVar('text-color', 'primary'),
856
+ 'title-size': elVar('font-size', 'medium'),
857
+ 'title-font-weight': normal,
858
+ 'title-line-height': 22px,
859
+ 'title-padding': 0 22px 0 0,
860
+ 'body-margin': 8px,
861
+ 'close-size': 22px,
862
+ 'close-margin': 20px 24px 0 0,
863
+ 'close-radius': elVar('border-radius', 'small'),
864
+ 'close-font-size': 18px,
865
+ 'close-color': elVar('text-color', 'secondary'),
866
+ 'close-hover-color': elVar('text-color', 'primary'),
867
+ 'close-hover-bg': transparent
868
+ ),
841
869
  'radio': (
842
870
  // 单选框
843
871
  'color': elVar('text-color', 'regular'),
@@ -216,6 +216,10 @@ $ele-rounded: map.deep-merge(
216
216
  'header-font-weight': bold,
217
217
  'icon-hover-bg': elVar('fill-color', 'light')
218
218
  ),
219
+ 'notification': (
220
+ 'radius': $radius-large,
221
+ 'close-hover-bg': elVar('fill-color', 'light')
222
+ ),
219
223
  'descriptions': (
220
224
  'radius': $radius-large
221
225
  ),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ele-admin-plus",
3
- "version": "1.1.4-beta.2",
3
+ "version": "1.1.4-beta.3",
4
4
  "description": "EleAdminPlus Library",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",
@@ -42,6 +42,7 @@
42
42
  "@typescript-eslint/eslint-plugin": "^6.5.0",
43
43
  "@typescript-eslint/parser": "^6.5.0",
44
44
  "@vitejs/plugin-vue": "^4.3.4",
45
+ "@vitejs/plugin-vue-jsx": "^3.0.2",
45
46
  "@vue/compiler-sfc": "^3.3.4",
46
47
  "axios": "^1.5.0",
47
48
  "bytemd": "^1.21.0",