vitepress-theme-element-plus 1.3.0 → 1.3.2

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 (42) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +3 -3
  3. package/client/components/A11yTag.vue +29 -29
  4. package/client/components/ApiTyping.vue +54 -54
  5. package/client/components/Backdrop.vue +41 -41
  6. package/client/components/Bili.vue +94 -94
  7. package/client/components/Content.vue +148 -148
  8. package/client/components/DeprecatedTag.vue +19 -19
  9. package/client/components/Doc.vue +185 -185
  10. package/client/components/DocAside.vue +46 -46
  11. package/client/components/DocAsideOutline.vue +145 -145
  12. package/client/components/DocFooter.vue +162 -162
  13. package/client/components/Footer.vue +100 -100
  14. package/client/components/FooterCopyright.vue +27 -27
  15. package/client/components/Layout.vue +156 -156
  16. package/client/components/Link.vue +41 -41
  17. package/client/components/LocalNav.vue +160 -160
  18. package/client/components/Nav.vue +69 -69
  19. package/client/components/NavBar.vue +203 -203
  20. package/client/components/NavBarTitle.vue +89 -89
  21. package/client/components/Sidebar.vue +129 -129
  22. package/client/components/SidebarGroup.vue +51 -51
  23. package/client/components/SidebarItem.vue +304 -304
  24. package/client/components/ThemeToggler.vue +129 -129
  25. package/client/components/VPNavBarSearch.vue +23 -23
  26. package/client/hooks/useBackTop.ts +71 -71
  27. package/client/hooks/useLangs.ts +50 -50
  28. package/client/hooks/useSidebarControl.ts +78 -78
  29. package/client/hooks/useSize.ts +69 -69
  30. package/client/icons/dark.vue +8 -8
  31. package/client/icons/light.vue +8 -8
  32. package/client/utils/client/common.ts +49 -49
  33. package/client/utils/client/outline.ts +133 -126
  34. package/client/utils/common.ts +90 -90
  35. package/index.ts +45 -45
  36. package/package.json +2 -2
  37. package/shared/constants.ts +3 -3
  38. package/styles/base.scss +105 -105
  39. package/styles/code.scss +290 -290
  40. package/styles/doc-content.scss +363 -363
  41. package/styles/index.scss +71 -71
  42. package/styles/tag-content.scss +30 -30
package/styles/code.scss CHANGED
@@ -1,290 +1,290 @@
1
- :root {
2
- --vp-code-block-bg: var(--el-fill-color-light);
3
- --vp-code-line-height: 1.6;
4
- }
5
- pre,
6
- code,
7
- kbd,
8
- samp {
9
- font-family: var(--code-font-family);
10
- }
11
-
12
- :not(pre) > code {
13
- border-radius: 4px;
14
- padding: 0.15rem 0.5rem;
15
- background-color: var(--el-fill-color-light);
16
- transition:
17
- color 0.25s,
18
- background-color 0.5s;
19
- font-size: 14px;
20
- }
21
-
22
- .doc-content a > code {
23
- color: var(--vp-code-link-color);
24
- }
25
-
26
- .doc-content a:hover > code {
27
- color: var(--vp-code-link-hover-color);
28
- }
29
-
30
- .doc-content h1 > code,
31
- .doc-content h2 > code,
32
- .doc-content h3 > code {
33
- font-size: 0.9em;
34
- }
35
-
36
- .doc-content div[class*='language-'],
37
- .vp-block {
38
- position: relative;
39
- margin: 16px 0;
40
- background-color: var(--vp-code-block-bg);
41
- overflow-x: auto;
42
- transition: background-color 0.5s;
43
- }
44
-
45
- @media (min-width: 640px) {
46
- .doc-content div[class*='language-'],
47
- .vp-block {
48
- border-radius: 8px;
49
- }
50
- }
51
-
52
- @media (max-width: 639px) {
53
- .doc-content li div[class*='language-'] {
54
- border-radius: 8px 0 0 8px;
55
- }
56
- }
57
-
58
- .doc-content div[class*='language-'] + div[class*='language-'],
59
- .doc-content div[class$='-api'] + div[class*='language-'],
60
- .doc-content div[class*='language-'] + div[class$='-api'] > div[class*='language-'] {
61
- margin-top: -8px;
62
- }
63
-
64
- .doc-content [class*='language-'] pre,
65
- .doc-content [class*='language-'] code {
66
- /*rtl:ignore*/
67
- direction: ltr;
68
- /*rtl:ignore*/
69
- text-align: left;
70
- white-space: pre;
71
- word-spacing: normal;
72
- word-break: normal;
73
- word-wrap: normal;
74
- -moz-tab-size: 4;
75
- -o-tab-size: 4;
76
- tab-size: 4;
77
- -webkit-hyphens: none;
78
- -moz-hyphens: none;
79
- -ms-hyphens: none;
80
- hyphens: none;
81
- }
82
-
83
- .doc-content [class*='language-'] pre {
84
- position: relative;
85
- z-index: 1;
86
- margin: 0;
87
- padding: 20px 0;
88
- background: transparent;
89
- overflow-x: auto;
90
- }
91
-
92
- .doc-content [class*='language-'] code {
93
- display: block;
94
- padding: 0 24px;
95
- width: fit-content;
96
- min-width: 100%;
97
- line-height: var(--vp-code-line-height);
98
- font-size: var(--vp-code-font-size);
99
- color: var(--vp-code-block-color);
100
- transition: color 0.5s;
101
- }
102
-
103
- .doc-content [class*='language-'] code .highlighted {
104
- background-color: var(--vp-code-line-highlight-color);
105
- transition: background-color 0.5s;
106
- margin: 0 -24px;
107
- padding: 0 24px;
108
- width: calc(100% + 2 * 24px);
109
- display: inline-block;
110
- }
111
-
112
- .doc-content [class*='language-'] code .highlighted.error {
113
- background-color: var(--vp-code-line-error-color);
114
- }
115
-
116
- .doc-content [class*='language-'] code .highlighted.warning {
117
- background-color: var(--vp-code-line-warning-color);
118
- }
119
-
120
- .doc-content [class*='language-'] code .diff {
121
- transition: background-color 0.5s;
122
- margin: 0 -24px;
123
- padding: 0 24px;
124
- width: calc(100% + 2 * 24px);
125
- display: inline-block;
126
- }
127
-
128
- .doc-content [class*='language-'] code .diff::before {
129
- position: absolute;
130
- left: 10px;
131
- }
132
-
133
- .doc-content [class*='language-'] .has-focused-lines .line:not(.has-focus) {
134
- filter: blur(0.095rem);
135
- opacity: 0.4;
136
- transition:
137
- filter 0.35s,
138
- opacity 0.35s;
139
- }
140
-
141
- .doc-content [class*='language-'] .has-focused-lines .line:not(.has-focus) {
142
- opacity: 0.7;
143
- transition:
144
- filter 0.35s,
145
- opacity 0.35s;
146
- }
147
-
148
- .doc-content [class*='language-']:hover .has-focused-lines .line:not(.has-focus) {
149
- filter: blur(0);
150
- opacity: 1;
151
- }
152
-
153
- .doc-content [class*='language-'] code .diff.remove {
154
- background-color: var(--vp-code-line-diff-remove-color);
155
- opacity: 0.7;
156
- }
157
-
158
- .doc-content [class*='language-'] code .diff.remove::before {
159
- content: '-';
160
- color: var(--vp-code-line-diff-remove-symbol-color);
161
- }
162
-
163
- .doc-content [class*='language-'] code .diff.add {
164
- background-color: var(--vp-code-line-diff-add-color);
165
- }
166
-
167
- .doc-content [class*='language-'] code .diff.add::before {
168
- content: '+';
169
- color: var(--vp-code-line-diff-add-symbol-color);
170
- }
171
-
172
- .doc-content div[class*='language-'].line-numbers-mode {
173
- /*rtl:ignore*/
174
- padding-left: 32px;
175
- }
176
-
177
- .doc-content .line-numbers-wrapper {
178
- position: absolute;
179
- top: 0;
180
- bottom: 0;
181
- /*rtl:ignore*/
182
- left: 0;
183
- z-index: 3;
184
- /*rtl:ignore*/
185
- border-right: 1px solid var(--vp-code-block-divider-color);
186
- padding-top: 20px;
187
- width: 32px;
188
- text-align: center;
189
- font-family: var(--vp-font-family-mono);
190
- line-height: var(--vp-code-line-height);
191
- font-size: var(--vp-code-font-size);
192
- color: var(--vp-code-line-number-color);
193
- transition:
194
- border-color 0.5s,
195
- color 0.5s;
196
- }
197
-
198
- .doc-content [class*='language-'] > button.copy {
199
- /*rtl:ignore*/
200
- direction: ltr;
201
- position: absolute;
202
- top: 12px;
203
- /*rtl:ignore*/
204
- right: 12px;
205
- z-index: 3;
206
- border: 1px solid var(--vp-code-copy-code-border-color);
207
- border-radius: 4px;
208
- width: 40px;
209
- height: 40px;
210
- background-color: var(--vp-code-copy-code-bg);
211
- opacity: 0;
212
- cursor: pointer;
213
- background-image: var(--vp-icon-copy);
214
- background-position: 50%;
215
- background-size: 20px;
216
- background-repeat: no-repeat;
217
- transition:
218
- border-color 0.25s,
219
- background-color 0.25s,
220
- opacity 0.25s;
221
- }
222
-
223
- .doc-content [class*='language-']:hover > button.copy,
224
- .doc-content [class*='language-'] > button.copy:focus {
225
- opacity: 1;
226
- }
227
-
228
- .doc-content [class*='language-'] > button.copy:hover,
229
- .doc-content [class*='language-'] > button.copy.copied {
230
- border-color: var(--vp-code-copy-code-hover-border-color);
231
- background-color: var(--vp-code-copy-code-hover-bg);
232
- }
233
-
234
- .doc-content [class*='language-'] > button.copy.copied,
235
- .doc-content [class*='language-'] > button.copy:hover.copied {
236
- /*rtl:ignore*/
237
- border-radius: 0 4px 4px 0;
238
- background-color: var(--vp-code-copy-code-hover-bg);
239
- background-image: var(--vp-icon-copied);
240
- }
241
-
242
- .doc-content [class*='language-'] > button.copy.copied::before,
243
- .doc-content [class*='language-'] > button.copy:hover.copied::before {
244
- position: relative;
245
- top: -1px;
246
- /*rtl:ignore*/
247
- transform: translateX(calc(-100% - 1px));
248
- display: flex;
249
- justify-content: center;
250
- align-items: center;
251
- border: 1px solid var(--vp-code-copy-code-hover-border-color);
252
- /*rtl:ignore*/
253
- border-right: 0;
254
- border-radius: 4px 0 0 4px;
255
- padding: 0 10px;
256
- width: fit-content;
257
- height: 40px;
258
- text-align: center;
259
- font-size: 12px;
260
- font-weight: 500;
261
- color: var(--vp-code-copy-code-active-text);
262
- background-color: var(--vp-code-copy-code-hover-bg);
263
- white-space: nowrap;
264
- content: var(--vp-code-copy-copied-text-content);
265
- }
266
-
267
- .doc-content [class*='language-'] > span.lang {
268
- position: absolute;
269
- top: 2px;
270
- /*rtl:ignore*/
271
- right: 8px;
272
- z-index: 2;
273
- font-size: 12px;
274
- font-weight: 500;
275
- color: var(--vp-code-lang-color);
276
- transition:
277
- color 0.4s,
278
- opacity 0.4s;
279
- }
280
-
281
- .doc-content [class*='language-']:hover > button.copy + span.lang,
282
- .doc-content [class*='language-'] > button.copy:focus + span.lang {
283
- opacity: 0;
284
- }
285
-
286
- html.dark .shiki,
287
- html.dark .shiki span {
288
- color: var(--shiki-dark) !important;
289
- background-color: var(--shiki-dark-bg) !important;
290
- }
1
+ :root {
2
+ --vp-code-block-bg: var(--el-fill-color-light);
3
+ --vp-code-line-height: 1.6;
4
+ }
5
+ pre,
6
+ code,
7
+ kbd,
8
+ samp {
9
+ font-family: var(--code-font-family);
10
+ }
11
+
12
+ :not(pre) > code {
13
+ border-radius: 4px;
14
+ padding: 0.15rem 0.5rem;
15
+ background-color: var(--el-fill-color-light);
16
+ transition:
17
+ color 0.25s,
18
+ background-color 0.5s;
19
+ font-size: 14px;
20
+ }
21
+
22
+ .doc-content a > code {
23
+ color: var(--vp-code-link-color);
24
+ }
25
+
26
+ .doc-content a:hover > code {
27
+ color: var(--vp-code-link-hover-color);
28
+ }
29
+
30
+ .doc-content h1 > code,
31
+ .doc-content h2 > code,
32
+ .doc-content h3 > code {
33
+ font-size: 0.9em;
34
+ }
35
+
36
+ .doc-content div[class*='language-'],
37
+ .vp-block {
38
+ position: relative;
39
+ margin: 16px 0;
40
+ background-color: var(--vp-code-block-bg);
41
+ overflow-x: auto;
42
+ transition: background-color 0.5s;
43
+ }
44
+
45
+ @media (min-width: 640px) {
46
+ .doc-content div[class*='language-'],
47
+ .vp-block {
48
+ border-radius: 8px;
49
+ }
50
+ }
51
+
52
+ @media (max-width: 639px) {
53
+ .doc-content li div[class*='language-'] {
54
+ border-radius: 8px 0 0 8px;
55
+ }
56
+ }
57
+
58
+ .doc-content div[class*='language-'] + div[class*='language-'],
59
+ .doc-content div[class$='-api'] + div[class*='language-'],
60
+ .doc-content div[class*='language-'] + div[class$='-api'] > div[class*='language-'] {
61
+ margin-top: -8px;
62
+ }
63
+
64
+ .doc-content [class*='language-'] pre,
65
+ .doc-content [class*='language-'] code {
66
+ /*rtl:ignore*/
67
+ direction: ltr;
68
+ /*rtl:ignore*/
69
+ text-align: left;
70
+ white-space: pre;
71
+ word-spacing: normal;
72
+ word-break: normal;
73
+ word-wrap: normal;
74
+ -moz-tab-size: 4;
75
+ -o-tab-size: 4;
76
+ tab-size: 4;
77
+ -webkit-hyphens: none;
78
+ -moz-hyphens: none;
79
+ -ms-hyphens: none;
80
+ hyphens: none;
81
+ }
82
+
83
+ .doc-content [class*='language-'] pre {
84
+ position: relative;
85
+ z-index: 1;
86
+ margin: 0;
87
+ padding: 20px 0;
88
+ background: transparent;
89
+ overflow-x: auto;
90
+ }
91
+
92
+ .doc-content [class*='language-'] code {
93
+ display: block;
94
+ padding: 0 24px;
95
+ width: fit-content;
96
+ min-width: 100%;
97
+ line-height: var(--vp-code-line-height);
98
+ font-size: var(--vp-code-font-size);
99
+ color: var(--vp-code-block-color);
100
+ transition: color 0.5s;
101
+ }
102
+
103
+ .doc-content [class*='language-'] code .highlighted {
104
+ background-color: var(--vp-code-line-highlight-color);
105
+ transition: background-color 0.5s;
106
+ margin: 0 -24px;
107
+ padding: 0 24px;
108
+ width: calc(100% + 2 * 24px);
109
+ display: inline-block;
110
+ }
111
+
112
+ .doc-content [class*='language-'] code .highlighted.error {
113
+ background-color: var(--vp-code-line-error-color);
114
+ }
115
+
116
+ .doc-content [class*='language-'] code .highlighted.warning {
117
+ background-color: var(--vp-code-line-warning-color);
118
+ }
119
+
120
+ .doc-content [class*='language-'] code .diff {
121
+ transition: background-color 0.5s;
122
+ margin: 0 -24px;
123
+ padding: 0 24px;
124
+ width: calc(100% + 2 * 24px);
125
+ display: inline-block;
126
+ }
127
+
128
+ .doc-content [class*='language-'] code .diff::before {
129
+ position: absolute;
130
+ left: 10px;
131
+ }
132
+
133
+ .doc-content [class*='language-'] .has-focused-lines .line:not(.has-focus) {
134
+ filter: blur(0.095rem);
135
+ opacity: 0.4;
136
+ transition:
137
+ filter 0.35s,
138
+ opacity 0.35s;
139
+ }
140
+
141
+ .doc-content [class*='language-'] .has-focused-lines .line:not(.has-focus) {
142
+ opacity: 0.7;
143
+ transition:
144
+ filter 0.35s,
145
+ opacity 0.35s;
146
+ }
147
+
148
+ .doc-content [class*='language-']:hover .has-focused-lines .line:not(.has-focus) {
149
+ filter: blur(0);
150
+ opacity: 1;
151
+ }
152
+
153
+ .doc-content [class*='language-'] code .diff.remove {
154
+ background-color: var(--vp-code-line-diff-remove-color);
155
+ opacity: 0.7;
156
+ }
157
+
158
+ .doc-content [class*='language-'] code .diff.remove::before {
159
+ content: '-';
160
+ color: var(--vp-code-line-diff-remove-symbol-color);
161
+ }
162
+
163
+ .doc-content [class*='language-'] code .diff.add {
164
+ background-color: var(--vp-code-line-diff-add-color);
165
+ }
166
+
167
+ .doc-content [class*='language-'] code .diff.add::before {
168
+ content: '+';
169
+ color: var(--vp-code-line-diff-add-symbol-color);
170
+ }
171
+
172
+ .doc-content div[class*='language-'].line-numbers-mode {
173
+ /*rtl:ignore*/
174
+ padding-left: 32px;
175
+ }
176
+
177
+ .doc-content .line-numbers-wrapper {
178
+ position: absolute;
179
+ top: 0;
180
+ bottom: 0;
181
+ /*rtl:ignore*/
182
+ left: 0;
183
+ z-index: 3;
184
+ /*rtl:ignore*/
185
+ border-right: 1px solid var(--vp-code-block-divider-color);
186
+ padding-top: 20px;
187
+ width: 32px;
188
+ text-align: center;
189
+ font-family: var(--vp-font-family-mono);
190
+ line-height: var(--vp-code-line-height);
191
+ font-size: var(--vp-code-font-size);
192
+ color: var(--vp-code-line-number-color);
193
+ transition:
194
+ border-color 0.5s,
195
+ color 0.5s;
196
+ }
197
+
198
+ .doc-content [class*='language-'] > button.copy {
199
+ /*rtl:ignore*/
200
+ direction: ltr;
201
+ position: absolute;
202
+ top: 12px;
203
+ /*rtl:ignore*/
204
+ right: 12px;
205
+ z-index: 3;
206
+ border: 1px solid var(--vp-code-copy-code-border-color);
207
+ border-radius: 4px;
208
+ width: 40px;
209
+ height: 40px;
210
+ background-color: var(--vp-code-copy-code-bg);
211
+ opacity: 0;
212
+ cursor: pointer;
213
+ background-image: var(--vp-icon-copy);
214
+ background-position: 50%;
215
+ background-size: 20px;
216
+ background-repeat: no-repeat;
217
+ transition:
218
+ border-color 0.25s,
219
+ background-color 0.25s,
220
+ opacity 0.25s;
221
+ }
222
+
223
+ .doc-content [class*='language-']:hover > button.copy,
224
+ .doc-content [class*='language-'] > button.copy:focus {
225
+ opacity: 1;
226
+ }
227
+
228
+ .doc-content [class*='language-'] > button.copy:hover,
229
+ .doc-content [class*='language-'] > button.copy.copied {
230
+ border-color: var(--vp-code-copy-code-hover-border-color);
231
+ background-color: var(--vp-code-copy-code-hover-bg);
232
+ }
233
+
234
+ .doc-content [class*='language-'] > button.copy.copied,
235
+ .doc-content [class*='language-'] > button.copy:hover.copied {
236
+ /*rtl:ignore*/
237
+ border-radius: 0 4px 4px 0;
238
+ background-color: var(--vp-code-copy-code-hover-bg);
239
+ background-image: var(--vp-icon-copied);
240
+ }
241
+
242
+ .doc-content [class*='language-'] > button.copy.copied::before,
243
+ .doc-content [class*='language-'] > button.copy:hover.copied::before {
244
+ position: relative;
245
+ top: -1px;
246
+ /*rtl:ignore*/
247
+ transform: translateX(calc(-100% - 1px));
248
+ display: flex;
249
+ justify-content: center;
250
+ align-items: center;
251
+ border: 1px solid var(--vp-code-copy-code-hover-border-color);
252
+ /*rtl:ignore*/
253
+ border-right: 0;
254
+ border-radius: 4px 0 0 4px;
255
+ padding: 0 10px;
256
+ width: fit-content;
257
+ height: 40px;
258
+ text-align: center;
259
+ font-size: 12px;
260
+ font-weight: 500;
261
+ color: var(--vp-code-copy-code-active-text);
262
+ background-color: var(--vp-code-copy-code-hover-bg);
263
+ white-space: nowrap;
264
+ content: var(--vp-code-copy-copied-text-content);
265
+ }
266
+
267
+ .doc-content [class*='language-'] > span.lang {
268
+ position: absolute;
269
+ top: 2px;
270
+ /*rtl:ignore*/
271
+ right: 8px;
272
+ z-index: 2;
273
+ font-size: 12px;
274
+ font-weight: 500;
275
+ color: var(--vp-code-lang-color);
276
+ transition:
277
+ color 0.4s,
278
+ opacity 0.4s;
279
+ }
280
+
281
+ .doc-content [class*='language-']:hover > button.copy + span.lang,
282
+ .doc-content [class*='language-'] > button.copy:focus + span.lang {
283
+ opacity: 0;
284
+ }
285
+
286
+ html.dark .shiki,
287
+ html.dark .shiki span {
288
+ color: var(--shiki-dark) !important;
289
+ background-color: var(--shiki-dark-bg) !important;
290
+ }