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 CHANGED
@@ -2,8 +2,93 @@
2
2
 
3
3
  [![NPM version](https://img.shields.io/npm/v/slidev-theme-the-unnamed?color=F141A8&label=)](https://www.npmjs.com/package/slidev-theme-the-unnamed)
4
4
 
5
- TBA
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
- ## Components
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
+ ![](./assets/001.png)
30
+
31
+ **Usage**
32
+
33
+ ```yaml
34
+ ---
35
+ layout: cover
36
+ background: <image url> (optional)
37
+ ---
38
+ ```
39
+
40
+ ### About me
41
+
42
+ ![](./assets/002.png)
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
+ ![](./assets/005.png)
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
+ [![Visitors](https://api.visitorbadge.io/api/visitors?path=https%3A%2F%2Fgithub.com%2Festruyf%2Fslidev-theme-the-unnamed&countColor=%23F141A8)](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
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import { computed } from 'vue'
3
- import { handleBackground } from '../layoutHelper'
3
+ import { handleBackground } from '@slidev/client/layoutHelper'
4
4
  const props = defineProps({
5
5
  background: {
6
6
  default: '',
@@ -0,0 +1,7 @@
1
+ <template>
2
+ <div class="bg-main slidev-layout default">
3
+ <div class="my-auto h-full">
4
+ <slot />
5
+ </div>
6
+ </div>
7
+ </template>
@@ -1,7 +1,5 @@
1
1
  <template>
2
- <div class="slidev-layout section w-full h-full grid">
3
- <div class="my-auto text-center">
4
- <slot />
5
- </div>
2
+ <div class="slidev-layout section">
3
+ <slot />
6
4
  </div>
7
5
  </template>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "slidev-theme-the-unnamed",
3
- "version": "0.0.2",
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
  }
@@ -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:before {
24
- margin-right: -0.08em;
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
@@ -2,3 +2,4 @@
2
2
  import '@slidev/client/styles/layouts-base.css'
3
3
  import './layout.css'
4
4
  import './code.css'
5
+ import './mermaid.css'
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
- // Custom colors
8
- --slidev-slide-color: #F3EFF5;
9
- --slidev-code-background: #0F131E;
10
-
11
- --slidev-accents-teal: #44FFD2;
12
- --slidev-accents-yellow: #FFE45E;
13
- --slidev-accents-red: #FE4A49;
14
- --slidev-accents-blue: #5EADF2;
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-slide-container-background);
21
- color: var(--slidev-slide-color);
26
+ background: var(--slidev-theme-background);
27
+ color: var(--slidev-theme-color);
22
28
  }
23
29
 
24
- .slidev-layout h1 + p {
25
- opacity: 1;
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: #0E131F;
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-slide-color);
122
- border-radius: 0 !important;
203
+ color: var(--slidev-theme-color);
123
204
  }
124
205
  }
125
206
  }
126
207
 
127
- .slidev-layout.center {
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
- margin-bottom: 0;
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-blue);
231
+ background: var(--slidev-theme-accents-lightblue);
134
232
  }
233
+ }
135
234
 
136
- code {
137
- background: transparent !important;
138
- }
235
+ p {
236
+ font-size: 1.25rem;
237
+ margin-bottom: 1em;
238
+ line-height: 1.25em;
139
239
  }
140
240
  }
141
241
 
142
- .slidev-layout.default {
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-yellow);
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
- .slidev-layout blockquote {
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-slide-color) !important;
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
 
@@ -0,0 +1,9 @@
1
+ .mermaid {
2
+ display: flex;
3
+ justify-content: center;
4
+ align-items: center;
5
+
6
+ svg {
7
+ margin: 0 auto;
8
+ }
9
+ }
@@ -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>
@@ -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>
@@ -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
@@ -1,7 +0,0 @@
1
- <template>
2
- <div class="slidev-layout intro">
3
- <div class="my-auto">
4
- <slot />
5
- </div>
6
- </div>
7
- </template>
package/layouts/quote.vue DELETED
@@ -1,7 +0,0 @@
1
- <template>
2
- <div class="slidev-layout quote">
3
- <div class="my-auto">
4
- <slot />
5
- </div>
6
- </div>
7
- </template>
@@ -1,7 +0,0 @@
1
- <template>
2
- <div class="slidev-layout statement">
3
- <div class="my-auto">
4
- <slot />
5
- </div>
6
- </div>
7
- </template>