vitepress-theme-element-plus 0.0.3 → 0.0.4

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