slidev-theme-the-unnamed 0.0.2 → 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.
- package/README.md +87 -2
- package/changelog.md +10 -0
- package/components/.gitkeep +0 -0
- package/example.md +92 -10
- package/layouts/about-me.vue +48 -0
- package/layouts/cover.vue +1 -1
- package/layouts/default.vue +7 -0
- package/layouts/section.vue +2 -4
- package/package.json +3 -2
- package/setup/mermaid.ts +35 -0
- package/styles/code.css +13 -4
- package/styles/index.ts +1 -0
- package/styles/layout.css +142 -49
- package/styles/mermaid.css +9 -0
- package/components/Box.vue +0 -45
- package/components/Oval.vue +0 -45
- package/components/ShowHide.vue +0 -48
- package/layouts/flex.vue +0 -83
- package/layouts/intro.vue +0 -7
- package/layouts/quote.vue +0 -7
- package/layouts/statement.vue +0 -7
package/README.md
CHANGED
|
@@ -2,8 +2,93 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://www.npmjs.com/package/slidev-theme-the-unnamed)
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
A [Slidev](https://sli.dev/) theme based on the [The unnamed - VS Code theme](https://marketplace.visualstudio.com/items?itemName=eliostruyf.vscode-unnamed-theme) by [Elio Struyf](https://elio.dev).
|
|
6
|
+
|
|
7
|
+
## Usage
|
|
8
|
+
|
|
9
|
+
Add the following frontmatter to your `slides.md`. Start Slidev then it will prompt you to install the theme automatically.
|
|
10
|
+
|
|
11
|
+
```yaml
|
|
12
|
+
---
|
|
13
|
+
theme: the-unnamed
|
|
14
|
+
---
|
|
15
|
+
```
|
|
6
16
|
|
|
7
17
|
## Layouts
|
|
8
18
|
|
|
9
|
-
|
|
19
|
+
The theme currently has the following layouts:
|
|
20
|
+
|
|
21
|
+
- `default`
|
|
22
|
+
- `cover`
|
|
23
|
+
- `section`
|
|
24
|
+
- `about-me`
|
|
25
|
+
- and the ones from Slidev itself
|
|
26
|
+
|
|
27
|
+
### Cover
|
|
28
|
+
|
|
29
|
+

|
|
30
|
+
|
|
31
|
+
**Usage**
|
|
32
|
+
|
|
33
|
+
```yaml
|
|
34
|
+
---
|
|
35
|
+
layout: cover
|
|
36
|
+
background: <image url> (optional)
|
|
37
|
+
---
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### About me
|
|
41
|
+
|
|
42
|
+

|
|
43
|
+
|
|
44
|
+
**Usage**
|
|
45
|
+
|
|
46
|
+
```yaml
|
|
47
|
+
---
|
|
48
|
+
layout: about-me
|
|
49
|
+
|
|
50
|
+
helloMsg: Hello!
|
|
51
|
+
name: <name>
|
|
52
|
+
imageSrc: <image url>
|
|
53
|
+
job: <job title>
|
|
54
|
+
line1:
|
|
55
|
+
line2:
|
|
56
|
+
social1:
|
|
57
|
+
social2:
|
|
58
|
+
social3:
|
|
59
|
+
---
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### Default
|
|
63
|
+
|
|
64
|
+

|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
## Cusomizations
|
|
68
|
+
|
|
69
|
+
You can customize the theme by adding the following frontmatter to your `slides.md`.
|
|
70
|
+
|
|
71
|
+
```yaml
|
|
72
|
+
themeConfig:
|
|
73
|
+
background: "#161C2C"
|
|
74
|
+
color: "#F3EFF5"
|
|
75
|
+
|
|
76
|
+
accents-teal: "#44FFD2"
|
|
77
|
+
accents-yellow: "#FFE45E"
|
|
78
|
+
accents-red: "#FE4A49"
|
|
79
|
+
accents-lightblue: "#15C2CB"
|
|
80
|
+
accents-blue: "#5EADF2"
|
|
81
|
+
accents-vulcan: "#0E131F"
|
|
82
|
+
|
|
83
|
+
code-background: "#0F131E"
|
|
84
|
+
code-border: "#242d34"
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## Components
|
|
88
|
+
|
|
89
|
+
*Coming later*
|
|
90
|
+
|
|
91
|
+
<br />
|
|
92
|
+
<br />
|
|
93
|
+
|
|
94
|
+
[](https://visitorbadge.io/status?path=https%3A%2F%2Fgithub.com%2Festruyf%2Fslidev-theme-the-unnamed)
|
package/changelog.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.0.4] - 2023-02-02
|
|
4
|
+
|
|
5
|
+
- Added mermaid styles for `sequenceDiagram`
|
|
6
|
+
- Small fixes
|
|
7
|
+
|
|
8
|
+
## [0.0.3] - 2023-02-02
|
|
9
|
+
|
|
10
|
+
- Updated styles for all layouts
|
|
11
|
+
- Added screenshots and documentation
|
|
12
|
+
|
|
3
13
|
## [0.0.2] - 2023-01-31
|
|
4
14
|
|
|
5
15
|
- New layouts
|
|
File without changes
|
package/example.md
CHANGED
|
@@ -1,12 +1,104 @@
|
|
|
1
1
|
---
|
|
2
2
|
theme: ./
|
|
3
3
|
background: https://source.unsplash.com/collection/94734566/1920x1080
|
|
4
|
+
|
|
5
|
+
themeConfig:
|
|
6
|
+
background: "#161C2C"
|
|
7
|
+
color: "#F3EFF5"
|
|
8
|
+
accents-teal: "#44FFD2"
|
|
9
|
+
accents-yellow: "#FFE45E"
|
|
10
|
+
accents-red: "#FE4A49"
|
|
11
|
+
accents-lightblue: "#15C2CB"
|
|
12
|
+
accents-blue: "#5EADF2"
|
|
13
|
+
accents-vulcan: "#0E131F"
|
|
14
|
+
code-background: "#0F131E"
|
|
15
|
+
code-border: "#242d34"
|
|
4
16
|
---
|
|
5
17
|
|
|
6
18
|
# Slidev - The Unnamed
|
|
7
19
|
|
|
8
20
|
Created by [Elio Struyf](https://elio.dev)
|
|
9
21
|
|
|
22
|
+
---
|
|
23
|
+
layout: about-me
|
|
24
|
+
|
|
25
|
+
helloMsg: Hello!
|
|
26
|
+
name: Elio Struyf
|
|
27
|
+
imageSrc: https://elio.dev/eliostruyf_2022.jpg
|
|
28
|
+
job: Lead DevTools Engineer @ Rapid
|
|
29
|
+
line1: "#Stickerpreneur @ pyod.shop"
|
|
30
|
+
line2: "#Maintainer @ Front Matter CMS"
|
|
31
|
+
social1: "@eliostruyf"
|
|
32
|
+
social2: eliostruyf.com
|
|
33
|
+
social3: elio@struyfconsulting.be
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
layout: cover
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
# Cover title
|
|
41
|
+
|
|
42
|
+
Subtitle for the cover
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
layout: section
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
# Section title
|
|
49
|
+
|
|
50
|
+
Subtitle for the section
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
# Code with Shiki and The unnamed theme
|
|
55
|
+
|
|
56
|
+
The code highlighting is powered by Shiki and [The unnamed - VS Code theme](https://marketplace.visualstudio.com/items?itemName=eliostruyf.vscode-unnamed-theme)
|
|
57
|
+
|
|
58
|
+
```ts
|
|
59
|
+
interface User {
|
|
60
|
+
id: number
|
|
61
|
+
firstName: string
|
|
62
|
+
lastName: string
|
|
63
|
+
role: string
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
function updateUser(id: number, update: Partial<User>) {
|
|
67
|
+
const user = getUser(id)
|
|
68
|
+
const newUser = { ...user, ...update }
|
|
69
|
+
saveUser(id, newUser)
|
|
70
|
+
}
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
# Table
|
|
76
|
+
|
|
77
|
+
| Title | Description | Default |
|
|
78
|
+
| --- | --- | --- |
|
|
79
|
+
| `layout` | The layout to use for the slide | `default` |
|
|
80
|
+
| `theme` | The theme to use for the slide | `the-unnamed` |
|
|
81
|
+
| `highlighter` | The highlighter to use for the slide | `shiki` |
|
|
82
|
+
| `background` | The background to use for the slide | `none` |
|
|
83
|
+
|
|
84
|
+
## Content test underneath
|
|
85
|
+
|
|
86
|
+
Some content to place here
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
# Heading 1
|
|
91
|
+
|
|
92
|
+
## Heading 2
|
|
93
|
+
|
|
94
|
+
### Heading 3
|
|
95
|
+
|
|
96
|
+
#### Heading 4
|
|
97
|
+
|
|
98
|
+
##### Heading 5
|
|
99
|
+
|
|
100
|
+
> **Info**: This is a note
|
|
101
|
+
|
|
10
102
|
---
|
|
11
103
|
|
|
12
104
|
# What is Slidev?
|
|
@@ -74,13 +166,3 @@ class: "text-center"
|
|
|
74
166
|
# Learn More
|
|
75
167
|
|
|
76
168
|
[Documentations](https://sli.dev) / [GitHub Repo](https://github.com/slidevjs/slidev)
|
|
77
|
-
|
|
78
|
-
---
|
|
79
|
-
layout: flex
|
|
80
|
-
---
|
|
81
|
-
|
|
82
|
-
# `flex` layout
|
|
83
|
-
|
|
84
|
-
The `flex` layout is similar to cover, but with a bit more space for the content. Opacity is set to `1`.
|
|
85
|
-
|
|
86
|
-
> **Info**: This is a note
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
import { computed } from 'vue'
|
|
3
|
+
import { handleBackground } from '@slidev/client/layoutHelper'
|
|
4
|
+
|
|
5
|
+
const props = defineProps<{
|
|
6
|
+
imageSrc?: string
|
|
7
|
+
helloMsg?: string
|
|
8
|
+
name?: string
|
|
9
|
+
job?: string
|
|
10
|
+
line1?: string
|
|
11
|
+
line2?: string
|
|
12
|
+
email?: string
|
|
13
|
+
social1?: string
|
|
14
|
+
social2?: string
|
|
15
|
+
social3?: string
|
|
16
|
+
}>()
|
|
17
|
+
|
|
18
|
+
const style = computed(() => handleBackground(props.imageSrc, false))
|
|
19
|
+
</script>
|
|
20
|
+
|
|
21
|
+
<template>
|
|
22
|
+
<div class="slidev-layout about-me p-0">
|
|
23
|
+
<div class="flex h-full">
|
|
24
|
+
<div class="w-1/2 h-full flex flex-col justify-end" :style="style">
|
|
25
|
+
</div>
|
|
26
|
+
<div class="w-1/2 flex flex-col justify-between items-end px-8 py-16">
|
|
27
|
+
<h1 v-if="helloMsg" class="flex">{{ helloMsg }}</h1>
|
|
28
|
+
|
|
29
|
+
<div class="flex flex-col justify-end items-end text-right py-16">
|
|
30
|
+
<h2 class="font-extrabold">{{ name }}</h2>
|
|
31
|
+
|
|
32
|
+
<div class="text-2xl space-y-2 mt-4">
|
|
33
|
+
<p class="job">{{ job }}</p>
|
|
34
|
+
<p class="line-1">{{ line1 }}</p>
|
|
35
|
+
<p class="line-2">{{ line2 }}</p>
|
|
36
|
+
</div>
|
|
37
|
+
|
|
38
|
+
<div class="text-2xl space-y-2 mt-4">
|
|
39
|
+
<p class="social social-1">{{ social1 }}</p>
|
|
40
|
+
<p class="social social-2">{{ social2 }}</p>
|
|
41
|
+
<p class="social social-3">{{ social3 }}</p>
|
|
42
|
+
</div>
|
|
43
|
+
</div>
|
|
44
|
+
</div>
|
|
45
|
+
</div>
|
|
46
|
+
</div>
|
|
47
|
+
</template>
|
|
48
|
+
|
package/layouts/cover.vue
CHANGED
package/layouts/section.vue
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "slidev-theme-the-unnamed",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4",
|
|
4
4
|
"keywords": [
|
|
5
5
|
"slidev-theme",
|
|
6
6
|
"slidev"
|
|
@@ -37,5 +37,6 @@
|
|
|
37
37
|
}
|
|
38
38
|
},
|
|
39
39
|
"author": "Elio Struyf <elio@struyfconsulting.be>",
|
|
40
|
-
"funding": "https://github.com/sponsors/estruyf"
|
|
40
|
+
"funding": "https://github.com/sponsors/estruyf",
|
|
41
|
+
"bugs": "https://github.com/estruyf/slidev-theme-the-unnamed/issues"
|
|
41
42
|
}
|
package/setup/mermaid.ts
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { MermaidOptions } from '@slidev/types'
|
|
2
|
+
import { defineMermaidSetup } from '@slidev/types'
|
|
3
|
+
|
|
4
|
+
export default defineMermaidSetup(() => {
|
|
5
|
+
// eslint-disable-next-line prefer-const
|
|
6
|
+
let injection_return: MermaidOptions = {
|
|
7
|
+
theme: 'forest',
|
|
8
|
+
themeVariables: {
|
|
9
|
+
// General theme variables
|
|
10
|
+
noteBkgColor: "#181d29",
|
|
11
|
+
noteTextColor: "#F3EFF5cc",
|
|
12
|
+
noteBorderColor: "#404551",
|
|
13
|
+
|
|
14
|
+
// Sequence diagram variables
|
|
15
|
+
actorBkg: "#0E131F",
|
|
16
|
+
actorBorder: "#44FFD2",
|
|
17
|
+
actorTextColor: "#F3EFF5",
|
|
18
|
+
actorLineColor: "#F3EFF5",
|
|
19
|
+
signalColor: "#F3EFF5",
|
|
20
|
+
signalTextColor: "#F3EFF5",
|
|
21
|
+
sequenceNumberColor: "#F3EFF5",
|
|
22
|
+
labelBoxBorderColor: "#5EADF2",
|
|
23
|
+
activationBkgColor: "#181d29",
|
|
24
|
+
activationBorderColor: "#5EADF2",
|
|
25
|
+
},
|
|
26
|
+
themeCSS: `
|
|
27
|
+
polygon.labelBox,
|
|
28
|
+
polygon.labelBox + text {
|
|
29
|
+
display: none;
|
|
30
|
+
}
|
|
31
|
+
`
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
return injection_return
|
|
35
|
+
})
|
package/styles/code.css
CHANGED
|
@@ -1,14 +1,18 @@
|
|
|
1
1
|
.shiki-dark {
|
|
2
|
-
background: var(--slidev-code-background) !important;
|
|
2
|
+
background: var(--slidev-theme-code-background) !important;
|
|
3
3
|
}
|
|
4
4
|
|
|
5
5
|
:not(pre) > code {
|
|
6
|
-
background: var(--slidev-code-background) !important;
|
|
6
|
+
background: var(--slidev-theme-code-background) !important;
|
|
7
7
|
}
|
|
8
8
|
|
|
9
9
|
.shiki-container {
|
|
10
10
|
@apply mb-4;
|
|
11
11
|
|
|
12
|
+
.slidev-code {
|
|
13
|
+
border: 1px solid var(--slidev-code-border);
|
|
14
|
+
}
|
|
15
|
+
|
|
12
16
|
code, pre {
|
|
13
17
|
font-size: 1em;
|
|
14
18
|
}
|
|
@@ -20,6 +24,11 @@
|
|
|
20
24
|
opacity: 0.50;
|
|
21
25
|
}
|
|
22
26
|
|
|
23
|
-
:not(pre) > code
|
|
24
|
-
|
|
27
|
+
:not(pre) > code {
|
|
28
|
+
&:before {
|
|
29
|
+
margin-right: -0.08em;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
outline: 1px solid var(--slidev-code-border);
|
|
33
|
+
@apply rounded-sm;
|
|
25
34
|
}
|
package/styles/index.ts
CHANGED
package/styles/layout.css
CHANGED
|
@@ -2,27 +2,90 @@
|
|
|
2
2
|
// default theme color
|
|
3
3
|
// can be overrided by uses `themeConfig` option
|
|
4
4
|
--slidev-theme-primary: #161C2C;
|
|
5
|
-
--slidev-slide-container-background: #161C2C;
|
|
6
5
|
|
|
7
|
-
|
|
8
|
-
--slidev-
|
|
9
|
-
--slidev-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
--slidev-
|
|
13
|
-
--slidev-
|
|
14
|
-
|
|
6
|
+
/* Custom colors*/
|
|
7
|
+
--slidev-theme-color: #F3EFF5;
|
|
8
|
+
--slidev-theme-background: #161C2C;
|
|
9
|
+
|
|
10
|
+
// Code colors
|
|
11
|
+
--slidev-theme-code-background: #0F131E;
|
|
12
|
+
--slidev-theme-code-border: #242d34;
|
|
13
|
+
|
|
14
|
+
// Accent colors
|
|
15
|
+
--slidev-theme-accents-teal: #44FFD2;
|
|
16
|
+
--slidev-theme-accents-yellow: #FFE45E;
|
|
17
|
+
--slidev-theme-accents-red: #FE4A49;
|
|
18
|
+
--slidev-theme-accents-lightblue: #15C2CB;
|
|
19
|
+
--slidev-theme-accents-blue: #5EADF2;
|
|
20
|
+
--slidev-theme-accents-vulcan: #0E131F;
|
|
15
21
|
}
|
|
16
22
|
|
|
17
|
-
|
|
23
|
+
/* The unnamed styles */
|
|
18
24
|
.dark #slide-content,
|
|
19
25
|
.dark .bg-main {
|
|
20
|
-
background: var(--slidev-
|
|
21
|
-
color: var(--slidev-
|
|
26
|
+
background: var(--slidev-theme-background);
|
|
27
|
+
color: var(--slidev-theme-color);
|
|
22
28
|
}
|
|
23
29
|
|
|
24
|
-
|
|
25
|
-
|
|
30
|
+
// General layout styles
|
|
31
|
+
.slidev-layout {
|
|
32
|
+
h1 + p {
|
|
33
|
+
opacity: 1;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
blockquote {
|
|
37
|
+
display: flex;
|
|
38
|
+
align-items: center;
|
|
39
|
+
background: var(--slidev-theme-code-background);
|
|
40
|
+
color: var(--slidev-theme-color);
|
|
41
|
+
border-color: #F141A8;
|
|
42
|
+
border-left-width: 3px;
|
|
43
|
+
font-size: 1.1em;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
h1 {
|
|
47
|
+
@apply text-4xl;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
h2 {
|
|
51
|
+
@apply text-3xl;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
h3 {
|
|
55
|
+
@apply text-2xl;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
h4 {
|
|
59
|
+
@apply text-xl;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
h5 {
|
|
63
|
+
@apply text-base;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
a {
|
|
67
|
+
color: inherit;
|
|
68
|
+
|
|
69
|
+
&:hover {
|
|
70
|
+
color: inherit;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
h2 + p,
|
|
75
|
+
h2 + ul {
|
|
76
|
+
@apply mt-4;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
p + h2,
|
|
80
|
+
ul + h2,
|
|
81
|
+
table + h2,
|
|
82
|
+
p + blockquote,
|
|
83
|
+
h2 + blockquote,
|
|
84
|
+
h3 + blockquote,
|
|
85
|
+
h4 + blockquote,
|
|
86
|
+
h5 + blockquote {
|
|
87
|
+
@apply mt-8;
|
|
88
|
+
}
|
|
26
89
|
}
|
|
27
90
|
|
|
28
91
|
.slidev-layout.cover,
|
|
@@ -36,15 +99,14 @@
|
|
|
36
99
|
h1 + p {
|
|
37
100
|
@apply -mt-2 opacity-50 mb-4;
|
|
38
101
|
}
|
|
39
|
-
|
|
40
|
-
p + h2, ul + h2, table + h2 {
|
|
41
|
-
@apply mt-10;
|
|
42
|
-
}
|
|
43
102
|
}
|
|
44
103
|
|
|
45
104
|
.slidev-layout.cover,
|
|
105
|
+
.slidev-layout.section,
|
|
106
|
+
.slidev-layout.intro,
|
|
46
107
|
.slidev-layout.default,
|
|
47
|
-
.slidev-layout.center
|
|
108
|
+
.slidev-layout.center,
|
|
109
|
+
.slidev-layout[layout="default"] {
|
|
48
110
|
h1 {
|
|
49
111
|
display: inline-block;
|
|
50
112
|
padding: 0.25em;
|
|
@@ -63,9 +125,29 @@
|
|
|
63
125
|
z-index: -1;
|
|
64
126
|
transform: rotate(-1deg);
|
|
65
127
|
}
|
|
128
|
+
|
|
129
|
+
code {
|
|
130
|
+
background: transparent !important;
|
|
131
|
+
font-size: inherit;
|
|
132
|
+
outline: 0 !important;
|
|
133
|
+
}
|
|
66
134
|
}
|
|
67
135
|
}
|
|
68
136
|
|
|
137
|
+
|
|
138
|
+
// Default
|
|
139
|
+
.slidev-layout.default,
|
|
140
|
+
.slidev-layout[layout="default"] {
|
|
141
|
+
h1 {
|
|
142
|
+
color: var(--slidev-theme-code-background);
|
|
143
|
+
|
|
144
|
+
&::before {
|
|
145
|
+
background: var(--slidev-theme-accents-yellow);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
// Cover
|
|
69
151
|
.slidev-layout.cover {
|
|
70
152
|
|
|
71
153
|
&::before {
|
|
@@ -81,29 +163,28 @@
|
|
|
81
163
|
&.slidev-page-1 {
|
|
82
164
|
p {
|
|
83
165
|
font-weight: bold;
|
|
84
|
-
padding-left: 1.25em;
|
|
85
166
|
}
|
|
86
167
|
}
|
|
87
168
|
|
|
88
169
|
h1 + p {
|
|
89
170
|
opacity: 0.7;
|
|
171
|
+
padding-left: 1.25em;
|
|
90
172
|
}
|
|
91
173
|
|
|
92
174
|
> div {
|
|
93
175
|
z-index: 1;
|
|
94
176
|
|
|
95
177
|
h1 {
|
|
96
|
-
color:
|
|
178
|
+
color: var(--slidev-theme-accents-vulcan);
|
|
97
179
|
padding: .25em .5em;
|
|
98
180
|
margin: 0;
|
|
99
|
-
font-size: 3em;
|
|
100
181
|
|
|
101
182
|
&::before {
|
|
102
183
|
width: calc(100% - 0.5em);
|
|
103
184
|
height: calc(100% - 0.25em);
|
|
104
185
|
margin-left: -0.25em;
|
|
105
186
|
margin-top: -0.12em;
|
|
106
|
-
background: var(--slidev-accents-teal);
|
|
187
|
+
background: var(--slidev-theme-accents-teal);
|
|
107
188
|
}
|
|
108
189
|
}
|
|
109
190
|
|
|
@@ -115,36 +196,57 @@
|
|
|
115
196
|
|
|
116
197
|
h2 {
|
|
117
198
|
margin: .5em 0 0;
|
|
199
|
+
padding-left: .5em;
|
|
118
200
|
}
|
|
119
201
|
|
|
120
202
|
code {
|
|
121
|
-
color: var(--slidev-
|
|
122
|
-
border-radius: 0 !important;
|
|
203
|
+
color: var(--slidev-theme-color);
|
|
123
204
|
}
|
|
124
205
|
}
|
|
125
206
|
}
|
|
126
207
|
|
|
127
|
-
|
|
208
|
+
// Section
|
|
209
|
+
.slidev-layout.section {
|
|
210
|
+
display: flex;
|
|
211
|
+
flex-direction: column;
|
|
212
|
+
justify-content: center;
|
|
213
|
+
|
|
214
|
+
height: 100%;
|
|
215
|
+
font-size: 1.1rem;
|
|
216
|
+
line-height: 1;
|
|
217
|
+
padding-left: 3.5rem;
|
|
218
|
+
padding-right: 3.5rem;
|
|
219
|
+
padding-top: 2.5rem;
|
|
220
|
+
padding-bottom: 2.5rem;
|
|
221
|
+
|
|
128
222
|
h1 {
|
|
129
|
-
color: var(--slidev-code-background);
|
|
130
|
-
|
|
223
|
+
color: var(--slidev-theme-code-background);
|
|
224
|
+
font-size: 2.25rem;
|
|
225
|
+
line-height: 2.5rem;
|
|
226
|
+
margin-left: -0.05em;
|
|
227
|
+
width: fit-content;
|
|
228
|
+
position: relative;
|
|
131
229
|
|
|
132
230
|
&::before {
|
|
133
|
-
background: var(--slidev-accents-
|
|
231
|
+
background: var(--slidev-theme-accents-lightblue);
|
|
134
232
|
}
|
|
233
|
+
}
|
|
135
234
|
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
235
|
+
p {
|
|
236
|
+
font-size: 1.25rem;
|
|
237
|
+
margin-bottom: 1em;
|
|
238
|
+
line-height: 1.25em;
|
|
139
239
|
}
|
|
140
240
|
}
|
|
141
241
|
|
|
142
|
-
|
|
242
|
+
// Center
|
|
243
|
+
.slidev-layout.center {
|
|
143
244
|
h1 {
|
|
144
|
-
color: var(--slidev-code-background);
|
|
245
|
+
color: var(--slidev-theme-code-background);
|
|
246
|
+
margin-bottom: 0;
|
|
145
247
|
|
|
146
248
|
&::before {
|
|
147
|
-
background: var(--slidev-accents-
|
|
249
|
+
background: var(--slidev-theme-accents-blue);
|
|
148
250
|
}
|
|
149
251
|
|
|
150
252
|
code {
|
|
@@ -153,22 +255,13 @@
|
|
|
153
255
|
}
|
|
154
256
|
}
|
|
155
257
|
|
|
156
|
-
|
|
157
|
-
display: flex;
|
|
158
|
-
align-items: center;
|
|
159
|
-
background: var(--slidev-code-background);
|
|
160
|
-
color: var(--slidev-slide-color);
|
|
161
|
-
border-color: #F141A8;
|
|
162
|
-
border-left-width: 3px;
|
|
163
|
-
font-size: 1.1em;
|
|
164
|
-
}
|
|
165
|
-
|
|
258
|
+
/* About me slide */
|
|
166
259
|
.about-me {
|
|
167
|
-
background: var(--slidev-
|
|
168
|
-
color: var(--slidev-code-background) !important;
|
|
260
|
+
background: var(--slidev-theme-color) !important;
|
|
261
|
+
color: var(--slidev-theme-code-background) !important;
|
|
169
262
|
|
|
170
263
|
h1 {
|
|
171
|
-
background: var(--slidev-accents-yellow);
|
|
264
|
+
background: var(--slidev-theme-accents-yellow);
|
|
172
265
|
display: inline-block;
|
|
173
266
|
padding: 0.25em;
|
|
174
267
|
font-weight: bold;
|
|
@@ -176,7 +269,7 @@
|
|
|
176
269
|
}
|
|
177
270
|
|
|
178
271
|
h2 {
|
|
179
|
-
color: var(--slidev-accents-red);
|
|
272
|
+
color: var(--slidev-theme-accents-red);
|
|
180
273
|
font-size: 2.5em;
|
|
181
274
|
}
|
|
182
275
|
|
package/components/Box.vue
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
<!--
|
|
2
|
-
Usage:
|
|
3
|
-
|
|
4
|
-
<box left="430px" top="350px" width="330px" height="45px" borderColor="#44FFD2" borderWidth="5px" borderStyle="solid" />
|
|
5
|
-
-->
|
|
6
|
-
|
|
7
|
-
<script setup lang="ts">
|
|
8
|
-
import { computed } from 'vue';
|
|
9
|
-
|
|
10
|
-
const props = defineProps<{
|
|
11
|
-
x: number | string
|
|
12
|
-
y: number | string
|
|
13
|
-
backgroundColor?: string
|
|
14
|
-
borderColor?: string
|
|
15
|
-
borderStyle?: string
|
|
16
|
-
borderWidth?: string
|
|
17
|
-
width?: string
|
|
18
|
-
height?: string
|
|
19
|
-
title?: string
|
|
20
|
-
description?: string
|
|
21
|
-
textColor?: string
|
|
22
|
-
}>()
|
|
23
|
-
|
|
24
|
-
const style = computed(() => ({
|
|
25
|
-
'width': props.width || `100px`,
|
|
26
|
-
'height': props.height || `100px`,
|
|
27
|
-
'top': props.y,
|
|
28
|
-
'left': props.x,
|
|
29
|
-
'background-color': props.backgroundColor || undefined,
|
|
30
|
-
'border-color': props.borderColor || `#fff`,
|
|
31
|
-
'border-width': props.borderWidth || `2px`,
|
|
32
|
-
'border-style': props.borderStyle || `solid`,
|
|
33
|
-
'color': props.textColor || undefined,
|
|
34
|
-
'content': `' '`
|
|
35
|
-
}))
|
|
36
|
-
</script>
|
|
37
|
-
|
|
38
|
-
<template>
|
|
39
|
-
<div
|
|
40
|
-
class="absolute flex flex-col justify-center items-center text-base text-center p-4 space-y-2"
|
|
41
|
-
:style="style">
|
|
42
|
-
<h2 v-if="title">{{ title }}</h2>
|
|
43
|
-
<p v-if="description">{{ description }}</p>
|
|
44
|
-
</div>
|
|
45
|
-
</template>
|
package/components/Oval.vue
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
<!--
|
|
2
|
-
Usage:
|
|
3
|
-
|
|
4
|
-
<circle left="430px" top="350px" width="330px" height="45px" borderColor="#44FFD2" borderWidth="5px" borderStyle="solid" />
|
|
5
|
-
-->
|
|
6
|
-
|
|
7
|
-
<script setup lang="ts">
|
|
8
|
-
import { computed } from 'vue';
|
|
9
|
-
|
|
10
|
-
const props = defineProps<{
|
|
11
|
-
x: number | string
|
|
12
|
-
y: number | string
|
|
13
|
-
backgroundColor?: string
|
|
14
|
-
borderColor?: string
|
|
15
|
-
borderStyle?: string
|
|
16
|
-
borderWidth?: string
|
|
17
|
-
width?: string
|
|
18
|
-
height?: string
|
|
19
|
-
title?: string
|
|
20
|
-
description?: string
|
|
21
|
-
textColor?: string
|
|
22
|
-
}>()
|
|
23
|
-
|
|
24
|
-
const style = computed(() => ({
|
|
25
|
-
'width': props.width || `100px`,
|
|
26
|
-
'height': props.height || `100px`,
|
|
27
|
-
'top': props.y,
|
|
28
|
-
'left': props.x,
|
|
29
|
-
'background-color': props.backgroundColor || undefined,
|
|
30
|
-
'border-color': props.borderColor || `#fff`,
|
|
31
|
-
'border-width': props.borderWidth || `2px`,
|
|
32
|
-
'border-style': props.borderStyle || `solid`,
|
|
33
|
-
'color': props.textColor || undefined,
|
|
34
|
-
'content': `' '`
|
|
35
|
-
}))
|
|
36
|
-
</script>
|
|
37
|
-
|
|
38
|
-
<template>
|
|
39
|
-
<div
|
|
40
|
-
class="absolute flex flex-col justify-center items-center rounded-full text-base text-center p-4 space-y-2"
|
|
41
|
-
:style="style">
|
|
42
|
-
<h2 v-if="title">{{ title }}</h2>
|
|
43
|
-
<p v-if="description">{{ description }}</p>
|
|
44
|
-
</div>
|
|
45
|
-
</template>
|
package/components/ShowHide.vue
DELETED
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
<!--
|
|
2
|
-
Example:
|
|
3
|
-
|
|
4
|
-
---
|
|
5
|
-
clicks: 4
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Common capabilities of extensions
|
|
9
|
-
|
|
10
|
-
- Registering commands, configurations, keybindings, or menus
|
|
11
|
-
- Storing workspace or global state
|
|
12
|
-
- Displaying notifications
|
|
13
|
-
- Collect user input
|
|
14
|
-
- Open files, folders, or URLs
|
|
15
|
-
- Theming
|
|
16
|
-
- Language features
|
|
17
|
-
|
|
18
|
-
<ShowHide show="1" hide="2">
|
|
19
|
-
Show on click 1, hide on 2, {{ $slidev.nav.clicks }}
|
|
20
|
-
</ShowHide>
|
|
21
|
-
<ShowHide show="2" hide="3">
|
|
22
|
-
Show on click 1, hide on 2, {{ $slidev.nav.clicks }}
|
|
23
|
-
</ShowHide>
|
|
24
|
-
|
|
25
|
-
-->
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
<script setup lang="ts">
|
|
29
|
-
import { ref, resolveDirective } from 'vue'
|
|
30
|
-
|
|
31
|
-
const props = defineProps({
|
|
32
|
-
show: {
|
|
33
|
-
type: Number,
|
|
34
|
-
default: null
|
|
35
|
-
},
|
|
36
|
-
hide: {
|
|
37
|
-
type: Number,
|
|
38
|
-
default: null
|
|
39
|
-
},
|
|
40
|
-
})
|
|
41
|
-
|
|
42
|
-
const show = ref(props.show)
|
|
43
|
-
const hide = ref(props.hide)
|
|
44
|
-
</script>
|
|
45
|
-
|
|
46
|
-
<template>
|
|
47
|
-
<slot v-if="$slidev.nav.clicks >= parseInt(show) && $slidev.nav.clicks < parseInt(hide)" />
|
|
48
|
-
</template>
|
package/layouts/flex.vue
DELETED
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="flexBox">
|
|
3
|
-
<slot />
|
|
4
|
-
</div>
|
|
5
|
-
</template>
|
|
6
|
-
|
|
7
|
-
<style lang="postcss">
|
|
8
|
-
.flexBox {
|
|
9
|
-
display: flex;
|
|
10
|
-
flex-direction: column;
|
|
11
|
-
justify-content: center;
|
|
12
|
-
|
|
13
|
-
height: 100%;
|
|
14
|
-
font-size: 1.1rem;
|
|
15
|
-
line-height: 1;
|
|
16
|
-
padding-left: 3.5rem;
|
|
17
|
-
padding-right: 3.5rem;
|
|
18
|
-
padding-top: 2.5rem;
|
|
19
|
-
padding-bottom: 2.5rem;
|
|
20
|
-
|
|
21
|
-
h1 {
|
|
22
|
-
/* background: #15C2CB; */
|
|
23
|
-
display: inline-block;
|
|
24
|
-
padding: 0.25em;
|
|
25
|
-
color: #0F131E;
|
|
26
|
-
margin-bottom: 1em;
|
|
27
|
-
width: fit-content;
|
|
28
|
-
position: relative;
|
|
29
|
-
|
|
30
|
-
font-size: 2.25rem;
|
|
31
|
-
line-height: 2.5rem;
|
|
32
|
-
margin-left: -0.05em;
|
|
33
|
-
|
|
34
|
-
&::before {
|
|
35
|
-
content: " ";
|
|
36
|
-
display: block;
|
|
37
|
-
position: absolute;
|
|
38
|
-
width: calc(100%);
|
|
39
|
-
height: calc(100%);
|
|
40
|
-
margin-left: -0.25em;
|
|
41
|
-
margin-top: -0.25em;
|
|
42
|
-
background: #15C2CB;
|
|
43
|
-
z-index: -1;
|
|
44
|
-
transform: rotate(-1deg);
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
code {
|
|
48
|
-
background: transparent !important;
|
|
49
|
-
font-size: 2.25rem;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
p {
|
|
54
|
-
font-size: 1.25rem;
|
|
55
|
-
margin-bottom: 1em;
|
|
56
|
-
line-height: 1.25em;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
code {
|
|
60
|
-
font-size: 1.10rem;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
blockquote {
|
|
64
|
-
display: flex;
|
|
65
|
-
align-items: center;
|
|
66
|
-
background: #0F131E;
|
|
67
|
-
color: #F3EFF5;
|
|
68
|
-
border-color: #F141A8;
|
|
69
|
-
border-left-width: 3px;
|
|
70
|
-
border-radius: 0.25rem;
|
|
71
|
-
font-size: 1.1em;
|
|
72
|
-
line-height: 1.25rem;
|
|
73
|
-
padding-left: 0.5rem;
|
|
74
|
-
padding-right: 0.5rem;
|
|
75
|
-
padding-top: 0.25rem;
|
|
76
|
-
padding-bottom: 0.25rem;
|
|
77
|
-
|
|
78
|
-
p {
|
|
79
|
-
margin-bottom: 0;
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
</style>
|
package/layouts/intro.vue
DELETED
package/layouts/quote.vue
DELETED