slidev-theme-neversink 0.0.0
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/.github/workflows/deploy.yml +67 -0
- package/.prettierrc +15 -0
- package/.vscode/settings.json +4 -0
- package/LICENSE +21 -0
- package/README.md +112 -0
- package/assets/nyu_long_black_on_white.svg +41 -0
- package/components/Admonition.vue +80 -0
- package/components/AdmonitionType.vue +56 -0
- package/components/CreditScroll.vue +94 -0
- package/components/SpeechBubble.vue +294 -0
- package/components/StickyNote.vue +71 -0
- package/components/vue3-kawaii/README.md +5 -0
- package/components/vue3-kawaii/components/backpack/BackPack.vue +123 -0
- package/components/vue3-kawaii/components/backpack/backpackpaths.js +17 -0
- package/components/vue3-kawaii/components/browser/Browser.vue +56 -0
- package/components/vue3-kawaii/components/browser/browserpaths.js +9 -0
- package/components/vue3-kawaii/components/cat/Cat.vue +89 -0
- package/components/vue3-kawaii/components/cat/catpaths.js +8 -0
- package/components/vue3-kawaii/components/common/face/Face.vue +95 -0
- package/components/vue3-kawaii/components/common/face/facepaths.js +24 -0
- package/components/vue3-kawaii/components/common/wrapper/Wrapper.vue +24 -0
- package/components/vue3-kawaii/components/creditCard/CreditCard.vue +47 -0
- package/components/vue3-kawaii/components/creditCard/creditcardpaths.js +8 -0
- package/components/vue3-kawaii/components/ghost/Ghost.vue +48 -0
- package/components/vue3-kawaii/components/ghost/ghostpaths.js +8 -0
- package/components/vue3-kawaii/components/iceCream/IceCream.vue +49 -0
- package/components/vue3-kawaii/components/iceCream/icecreampaths.js +9 -0
- package/components/vue3-kawaii/components/mug/Mug.vue +48 -0
- package/components/vue3-kawaii/components/mug/mugpaths.js +7 -0
- package/components/vue3-kawaii/components/planet/Planet.vue +58 -0
- package/components/vue3-kawaii/components/planet/planetpaths.js +7 -0
- package/components/vue3-kawaii/components/speechBubble/SpeechBubbleGuy.vue +63 -0
- package/components/vue3-kawaii/components/speechBubble/speechbubblepaths.js +8 -0
- package/components/vue3-kawaii/utils/getUniqueId.js +10 -0
- package/docs/.vitepress/config.js +75 -0
- package/docs/.vitepress/theme/index.js +50 -0
- package/docs/.vitepress/theme/style.css +145 -0
- package/docs/api-examples.md +49 -0
- package/docs/branding.md +43 -0
- package/docs/colors.md +108 -0
- package/docs/components/admonitions.md +106 -0
- package/docs/components/creditscroll.md +1 -0
- package/docs/components/kawaii.md +26 -0
- package/docs/components/qrcode.md +24 -0
- package/docs/components/speechbubble.md +69 -0
- package/docs/components/stickynote.md +54 -0
- package/docs/components.md +19 -0
- package/docs/contributing.md +5 -0
- package/docs/customizing.md +38 -0
- package/docs/getting-started.md +32 -0
- package/docs/index.md +19 -0
- package/docs/layouts/cover.md +69 -0
- package/docs/layouts/credits.md +111 -0
- package/docs/layouts/default.md +88 -0
- package/docs/layouts/full.md +131 -0
- package/docs/layouts/intro.md +63 -0
- package/docs/layouts/quote.md +51 -0
- package/docs/layouts/section.md +67 -0
- package/docs/layouts/side-title.md +180 -0
- package/docs/layouts/top-title-two-cols.md +171 -0
- package/docs/layouts/top-title.md +103 -0
- package/docs/layouts/two-cols-title.md +273 -0
- package/docs/layouts.md +92 -0
- package/docs/markdown-examples.md +85 -0
- package/docs/markdown.md +87 -0
- package/docs/parts/columnsystem.md +18 -0
- package/docs/parts/layoutpicker.md +73 -0
- package/docs/public/deck.png +0 -0
- package/docs/public/layouts/side-title-12row.svg +27 -0
- package/docs/public/layouts/side-title-is-3.svg +7 -0
- package/docs/public/layouts/side-title-is-6.svg +7 -0
- package/docs/public/layouts/side-title-side.svg +13 -0
- package/docs/public/layouts/two-col-title-12row.svg +31 -0
- package/docs/public/layouts/two-col-title-align.svg +13 -0
- package/docs/public/layouts/two-col-title-is-4.svg +23 -0
- package/docs/public/layouts/two-col-title-is-6.svg +23 -0
- package/docs/public/layouts/two-col-title-titlepos.svg +31 -0
- package/docs/public/screenshots/1.png +0 -0
- package/docs/public/screenshots/10.png +0 -0
- package/docs/public/screenshots/11.png +0 -0
- package/docs/public/screenshots/12.png +0 -0
- package/docs/public/screenshots/13.png +0 -0
- package/docs/public/screenshots/14.png +0 -0
- package/docs/public/screenshots/15.png +0 -0
- package/docs/public/screenshots/16.png +0 -0
- package/docs/public/screenshots/17.png +0 -0
- package/docs/public/screenshots/18.png +0 -0
- package/docs/public/screenshots/19.png +0 -0
- package/docs/public/screenshots/2.png +0 -0
- package/docs/public/screenshots/20.png +0 -0
- package/docs/public/screenshots/21.png +0 -0
- package/docs/public/screenshots/22.png +0 -0
- package/docs/public/screenshots/23.png +0 -0
- package/docs/public/screenshots/24.png +0 -0
- package/docs/public/screenshots/25.png +0 -0
- package/docs/public/screenshots/26.png +0 -0
- package/docs/public/screenshots/27.png +0 -0
- package/docs/public/screenshots/28.png +0 -0
- package/docs/public/screenshots/29.png +0 -0
- package/docs/public/screenshots/3.png +0 -0
- package/docs/public/screenshots/30.png +0 -0
- package/docs/public/screenshots/31.png +0 -0
- package/docs/public/screenshots/32.png +0 -0
- package/docs/public/screenshots/33.png +0 -0
- package/docs/public/screenshots/34.png +0 -0
- package/docs/public/screenshots/35.png +0 -0
- package/docs/public/screenshots/36.png +0 -0
- package/docs/public/screenshots/37.png +0 -0
- package/docs/public/screenshots/38.png +0 -0
- package/docs/public/screenshots/4.png +0 -0
- package/docs/public/screenshots/5.png +0 -0
- package/docs/public/screenshots/6.png +0 -0
- package/docs/public/screenshots/7.png +0 -0
- package/docs/public/screenshots/8.png +0 -0
- package/docs/public/screenshots/9.png +0 -0
- package/example.md +1503 -0
- package/layoutHelper.ts +118 -0
- package/layouts/cover.vue +93 -0
- package/layouts/credits.vue +35 -0
- package/layouts/default.vue +18 -0
- package/layouts/four-cell.vue +210 -0
- package/layouts/full.vue +22 -0
- package/layouts/intro.vue +75 -0
- package/layouts/quote.vue +62 -0
- package/layouts/section.vue +84 -0
- package/layouts/side-title.vue +142 -0
- package/layouts/top-title-two-cols.vue +131 -0
- package/layouts/top-title.vue +63 -0
- package/layouts/two-cols-title.vue +176 -0
- package/layouts/two-cols.vue +141 -0
- package/package.json +54 -0
- package/public/images/photo.png +0 -0
- package/public/images/photo2.png +0 -0
- package/public/images/scatter1.png +0 -0
- package/public/images/scatter1.svg +20 -0
- package/screenshot.md +874 -0
- package/setup/main.ts +45 -0
- package/setup/shiki.ts +14 -0
- package/slide-bottom.vue +107 -0
- package/styles/base.css +240 -0
- package/styles/bubbles.css +4 -0
- package/styles/colors.css +12 -0
- package/styles/index.ts +11 -0
- package/styles/layouts.css +76 -0
- package/styles/stickynote.css +4 -0
- package/uno.config.ts +222 -0
- package/vite.config.ts +16 -0
package/setup/main.ts
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { defineAppSetup } from '@slidev/types'
|
|
2
|
+
// import courseInfoPlugin from '../plugins/courseInfoPlugin'
|
|
3
|
+
// import Cite from '../../src/components/Cite.vue'
|
|
4
|
+
//import Bibliography from '../../src/components/Bibliography'
|
|
5
|
+
//import CreditScroll from '../components/CreditScroll.vue'
|
|
6
|
+
// import Admonition from '../components/Admonition.vue'
|
|
7
|
+
// import AdmonitionType from '../components/AdmonitionType.vue'
|
|
8
|
+
import QrcodeVue from 'qrcode.vue'
|
|
9
|
+
// import SpeechBubble from '../components/SpeechBubble.vue'
|
|
10
|
+
// import StickyNote from '../components/StickyNote.vue'
|
|
11
|
+
|
|
12
|
+
// // Vue3 Kawaii
|
|
13
|
+
// import Backpack from '../components/vue3-kawaii/components/backpack/Backpack.vue'
|
|
14
|
+
// import Browser from '../components/vue3-kawaii/components/browser/Browser.vue'
|
|
15
|
+
// import Cat from '../components/vue3-kawaii/components/cat/Cat.vue'
|
|
16
|
+
// import CreditCard from '../components/vue3-kawaii/components/creditCard/CreditCard.vue'
|
|
17
|
+
// import Ghost from '../components/vue3-kawaii/components/ghost/Ghost.vue'
|
|
18
|
+
// import IceCream from '../components/vue3-kawaii/components/iceCream/IceCream.vue'
|
|
19
|
+
// import Mug from '../components/vue3-kawaii/components/mug/Mug.vue'
|
|
20
|
+
// import Planet from '../components/vue3-kawaii/components/planet/Planet.vue'
|
|
21
|
+
// import SpeechBubbleGuy from '../components/vue3-kawaii/components/speechBubble/SpeechBubbleGuy.vue'
|
|
22
|
+
|
|
23
|
+
// import { GeistSans } from 'geist/font/sans'
|
|
24
|
+
// import { GeistMono } from 'geist/font/mono'
|
|
25
|
+
|
|
26
|
+
export default defineAppSetup(({ app, router }) => {
|
|
27
|
+
// app.component('CreditScroll', CreditScroll)
|
|
28
|
+
// app.component('Admonition', Admonition)
|
|
29
|
+
// app.component('AdmonitionType', AdmonitionType)
|
|
30
|
+
app.component('QRCode', QrcodeVue)
|
|
31
|
+
// app.component('SpeechBubble', SpeechBubble)
|
|
32
|
+
// app.component('StickyNote', StickyNote)
|
|
33
|
+
// app.component('BackPack', Backpack)
|
|
34
|
+
// app.component('Browser', Browser)
|
|
35
|
+
// app.component('Cat', Cat)
|
|
36
|
+
// app.component('CreditCard', CreditCard)
|
|
37
|
+
// app.component('Ghost', Ghost)
|
|
38
|
+
// app.component('IceCream', IceCream)
|
|
39
|
+
// app.component('Mug', Mug)
|
|
40
|
+
// app.component('Planet', Planet)
|
|
41
|
+
// app.component('SpeechBubbleGuy', SpeechBubbleGuy)
|
|
42
|
+
// Vue App
|
|
43
|
+
// app.component('Cite', Cite)
|
|
44
|
+
// app.use(courseInfoPlugin)
|
|
45
|
+
})
|
package/setup/shiki.ts
ADDED
package/slide-bottom.vue
ADDED
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
<script setup>
|
|
2
|
+
import { onMounted, ref } from 'vue'
|
|
3
|
+
import { useSlideContext } from '@slidev/client'
|
|
4
|
+
const { $slidev, $frontmatter } = useSlideContext()
|
|
5
|
+
|
|
6
|
+
//const frontmatter = ref('')
|
|
7
|
+
const fg_default = 'text-neutral-800'
|
|
8
|
+
const bg_default = 'bg-neutral-100'
|
|
9
|
+
const label = ref('')
|
|
10
|
+
const fg = ref(fg_default)
|
|
11
|
+
const bg = ref(bg_default)
|
|
12
|
+
|
|
13
|
+
function process_colors() {
|
|
14
|
+
if ($frontmatter.color) {
|
|
15
|
+
if ($frontmatter.color == 'black') {
|
|
16
|
+
fg.value = `text-gray-600`
|
|
17
|
+
bg.value = `bg-gray-100`
|
|
18
|
+
} else if ($frontmatter.color == 'white') {
|
|
19
|
+
fg.value = fg_default
|
|
20
|
+
bg.value = bg_default
|
|
21
|
+
} else if ($frontmatter.color == 'dark') {
|
|
22
|
+
fg.value = `text-gray-100`
|
|
23
|
+
bg.value = `bg-gray-500`
|
|
24
|
+
} else if ($frontmatter.color == 'navy') {
|
|
25
|
+
fg.value = `text-gray-300`
|
|
26
|
+
bg.value = `bg-gray-600`
|
|
27
|
+
} else if ($frontmatter.color == 'light') {
|
|
28
|
+
fg.value = `text-neutral-600`
|
|
29
|
+
bg.value = `bg-neutral-300`
|
|
30
|
+
} else if ($frontmatter.color.includes('-light')) {
|
|
31
|
+
const parts = $frontmatter.color.split('-')
|
|
32
|
+
fg.value = `text-${parts[0]}-100`
|
|
33
|
+
bg.value = `bg-${parts[0]}-500`
|
|
34
|
+
} else {
|
|
35
|
+
fg.value = `text-${$frontmatter.color}-500`
|
|
36
|
+
bg.value = `bg-${$frontmatter.color}-100`
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
function checkvars() {
|
|
41
|
+
if ($frontmatter.slide_info_color === undefined) {
|
|
42
|
+
// default
|
|
43
|
+
fg.value = fg_default
|
|
44
|
+
bg.value = bg_default
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
if ($frontmatter.slide_info_color && $frontmatter.slide_info_color.includes(',')) {
|
|
48
|
+
// slide info
|
|
49
|
+
const parts = $frontmatter.slide_info.split(',')
|
|
50
|
+
fg.value = parts[0]
|
|
51
|
+
bg.value = parts[1]
|
|
52
|
+
} else {
|
|
53
|
+
// slide specific things
|
|
54
|
+
if ($frontmatter.layout == 'end') {
|
|
55
|
+
fg.value = `text-neutral-100`
|
|
56
|
+
bg.value = `bg-neutral-800`
|
|
57
|
+
} else if ($frontmatter.layout == 'side-title') {
|
|
58
|
+
// if side title
|
|
59
|
+
if ($frontmatter.side && ($frontmatter.side == 'right' || $frontmatter.side == 'r')) {
|
|
60
|
+
process_colors()
|
|
61
|
+
} else {
|
|
62
|
+
fg.value = fg_default
|
|
63
|
+
bg.value = bg_default
|
|
64
|
+
}
|
|
65
|
+
} else if (
|
|
66
|
+
$frontmatter.layout == 'cover' ||
|
|
67
|
+
$frontmatter.layout == 'intro' ||
|
|
68
|
+
$frontmatter.layout == 'default' ||
|
|
69
|
+
$frontmatter.layout == 'section' ||
|
|
70
|
+
$frontmatter.layout == 'credits' ||
|
|
71
|
+
$frontmatter.layout == 'full'
|
|
72
|
+
) {
|
|
73
|
+
process_colors()
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
function getlabel() {
|
|
79
|
+
if ($frontmatter.neversink_slug) {
|
|
80
|
+
label.value = $frontmatter.neversink_slug
|
|
81
|
+
} else if ($slidev.configs.neversink_slug) {
|
|
82
|
+
label.value = $slidev.configs.neversink_slug
|
|
83
|
+
} else {
|
|
84
|
+
label.value = ''
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
//watch($slidev.nav, () => checkvars())
|
|
88
|
+
|
|
89
|
+
onMounted(() => {
|
|
90
|
+
getlabel()
|
|
91
|
+
checkvars()
|
|
92
|
+
})
|
|
93
|
+
</script>
|
|
94
|
+
|
|
95
|
+
<!-- an example footer for pages -->
|
|
96
|
+
<template>
|
|
97
|
+
<footer v-if="$frontmatter.slide_info !== false" class="absolute bottom-1 right-1 left-0 p-2 pr-3 full-width z-10">
|
|
98
|
+
<div class="absolute bottom-0 right-0 p-2 pr-2">
|
|
99
|
+
<span class="pl-3 pr-3 p-2 font-mono font-size-2" :class="fg + ' ' + bg">
|
|
100
|
+
<mdi-orbit /> <span class="fw-bold">{{ label }}</span> | {{ $slidev.nav.currentPage }} of
|
|
101
|
+
{{ $slidev.nav.total }}
|
|
102
|
+
</span>
|
|
103
|
+
</div>
|
|
104
|
+
</footer>
|
|
105
|
+
</template>
|
|
106
|
+
|
|
107
|
+
<style scoped></style>
|
package/styles/base.css
ADDED
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
@import url('https://fonts.googleapis.com/css2?family=Fira+Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
|
|
2
|
+
@import url('https://fonts.googleapis.com/css2?family=Fira+Sans:wght@100;200;300;400;500;600;700;800;900&display=swap');
|
|
3
|
+
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@50;100;200;300;400;500;600;700;800;900&display=swap');
|
|
4
|
+
|
|
5
|
+
:root {
|
|
6
|
+
--neversink-title-font: 'Inter', sans-serif;
|
|
7
|
+
--neversink-main-font: 'Inter', sans-serif;
|
|
8
|
+
--neversink-mono-font: 'Inter', monospace;
|
|
9
|
+
--neversink-quote-font: 'Fire Code', monospace;
|
|
10
|
+
@apply neversink-white-scheme; /* apply the default white scheme everywhere */
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/* layout specific customizations are shared in the layout file (e.g., layouts/cover.vue) */
|
|
14
|
+
|
|
15
|
+
/* sets the default font */
|
|
16
|
+
#page-root {
|
|
17
|
+
font-family: var(--neversink-main-font);
|
|
18
|
+
font-weight: 400;
|
|
19
|
+
letter-spacing: 0.015em;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/* binds variable to the color of a slide*/
|
|
23
|
+
.slidecolor {
|
|
24
|
+
background-color: var(--neversink-bg-color);
|
|
25
|
+
color: var(--neversink-text-color);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/* adjust default bullets */
|
|
29
|
+
.slidev-layout li {
|
|
30
|
+
margin-bottom: 1em;
|
|
31
|
+
line-height: 1.5em;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/* adds a modifier class which reduces the space between bullets */
|
|
35
|
+
.tight li {
|
|
36
|
+
line-height: 1em;
|
|
37
|
+
margin-bottom: 0.5em;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/* change the bold and strong fonts */
|
|
41
|
+
.slidev-layout strong,
|
|
42
|
+
.slidev-layout b {
|
|
43
|
+
font-family: var(--neversink-main-font);
|
|
44
|
+
font-weight: 700;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.slidev-code-wrapper {
|
|
48
|
+
width: 100%;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/* the highlighted terms from markdown highlighter == == */
|
|
52
|
+
.slidev-layout mark {
|
|
53
|
+
@apply bg-amber-200;
|
|
54
|
+
@apply text-amber-600;
|
|
55
|
+
font-weight: 300;
|
|
56
|
+
padding-left: 0.4em;
|
|
57
|
+
padding-right: 0.4em;
|
|
58
|
+
padding-top: 0.2em;
|
|
59
|
+
padding-bottom: 0.2em;
|
|
60
|
+
border-radius: 0.4em;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/* inlight code blocks */
|
|
64
|
+
.slidev-layout :not(pre) > code {
|
|
65
|
+
font-size: 0.9em;
|
|
66
|
+
background: var(--neversink-bg-code-color);
|
|
67
|
+
border-radius: var(--slidev-code-radius);
|
|
68
|
+
color: var(--neversink-fg-code-color);
|
|
69
|
+
padding-top: 0.125rem;
|
|
70
|
+
padding-bottom: 0.125rem;
|
|
71
|
+
padding-left: 0.375rem;
|
|
72
|
+
padding-right: 0.375rem;
|
|
73
|
+
font-weight: 300;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/* for links that are icons. removes underlining which is default for links in markdown parser */
|
|
77
|
+
.iconlink a {
|
|
78
|
+
border-style: none !important;
|
|
79
|
+
border-bottom: none !important;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/* default layout */
|
|
83
|
+
|
|
84
|
+
.my-auto p {
|
|
85
|
+
margin: 0;
|
|
86
|
+
padding: 0;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.slidev-layout {
|
|
90
|
+
margin-top: 0px;
|
|
91
|
+
padding-top: 1.8rem;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.slidev-layout p:first-child {
|
|
95
|
+
padding-top: 0;
|
|
96
|
+
margin-top: 0.5rem;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.slidev-layout h1 {
|
|
100
|
+
font-weight: 600;
|
|
101
|
+
font-size: 1.7em;
|
|
102
|
+
padding-bottom: 0;
|
|
103
|
+
font-family: var(--neversink-title-font);
|
|
104
|
+
margin-bottom: 0;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
.slidev-layout h2 {
|
|
108
|
+
font-weight: 600;
|
|
109
|
+
font-size: 1.5em;
|
|
110
|
+
padding-bottom: 0;
|
|
111
|
+
font-family: var(--neversink-title-font);
|
|
112
|
+
margin-bottom: 0;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.slidev-layout h4 {
|
|
116
|
+
font-weight: 600;
|
|
117
|
+
font-size: 1.2em;
|
|
118
|
+
padding-bottom: 0;
|
|
119
|
+
font-family: var(--neversink-title-font);
|
|
120
|
+
margin-bottom: 0;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
.slidev-layout h1 + p,
|
|
124
|
+
.slidev-layout h2 + p,
|
|
125
|
+
.slidev-layout h3 + p {
|
|
126
|
+
opacity: 0.9;
|
|
127
|
+
margin-top: 1.5em;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
.slidev-layout h1 + ul,
|
|
131
|
+
.slidev-layout h2 + ul,
|
|
132
|
+
.slidev-layout h3 + ul {
|
|
133
|
+
margin-top: 1.5em;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
/* columns stuff */
|
|
137
|
+
.warning {
|
|
138
|
+
color: red;
|
|
139
|
+
}
|
|
140
|
+
.error {
|
|
141
|
+
font-size: 0.9em;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
.left {
|
|
145
|
+
justify-content: left; /* Left align the content */
|
|
146
|
+
text-align: left;
|
|
147
|
+
align-items: start;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
.center {
|
|
151
|
+
justify-content: center; /* Horizontally center the content */
|
|
152
|
+
text-align: center;
|
|
153
|
+
align-items: center;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
.right {
|
|
157
|
+
justify-content: right; /* Right align the content */
|
|
158
|
+
text-align: right;
|
|
159
|
+
align-items: end;
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
.top {
|
|
163
|
+
margin-top: 0;
|
|
164
|
+
margin-bottom: auto;
|
|
165
|
+
}
|
|
166
|
+
.middle {
|
|
167
|
+
margin-top: auto;
|
|
168
|
+
margin-bottom: auto;
|
|
169
|
+
}
|
|
170
|
+
.bottom {
|
|
171
|
+
margin-top: auto;
|
|
172
|
+
margin-bottom: 0;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
/* a new tight bullet list */
|
|
176
|
+
/* .tight {
|
|
177
|
+
margin-top: 1em;
|
|
178
|
+
} */
|
|
179
|
+
|
|
180
|
+
.bwimg {
|
|
181
|
+
filter: grayscale(100%) contrast(150%) brightness(120%);
|
|
182
|
+
display: inline;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
img {
|
|
186
|
+
display: inline;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
/* customize the v-clicks */
|
|
190
|
+
.slidev-vclick-target {
|
|
191
|
+
transition: opacity 100ms ease;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
.slidev-vclick-hidden {
|
|
195
|
+
opacity: 0.3;
|
|
196
|
+
pointer-events: none;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
.fader .slidev-vclick-prior {
|
|
200
|
+
opacity: 0.3;
|
|
201
|
+
pointer-events: none;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
html.dark {
|
|
205
|
+
/* dark mode css here */
|
|
206
|
+
.lectureno {
|
|
207
|
+
background-color: #9a9a9a;
|
|
208
|
+
color: hsl(0, 0%, 100%);
|
|
209
|
+
opacity: 1;
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
.invert {
|
|
213
|
+
filter: invert(1);
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
.slidev-layout {
|
|
217
|
+
color: #d0d0d0;
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
html:not(.dark) {
|
|
222
|
+
/* light mode css here */
|
|
223
|
+
.lectureno {
|
|
224
|
+
background-color: #e1e1e1;
|
|
225
|
+
color: #000;
|
|
226
|
+
opacity: 1;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
/* credits */
|
|
231
|
+
|
|
232
|
+
.fullpage {
|
|
233
|
+
height: 100vh;
|
|
234
|
+
display: flex;
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
/* markdown-it-footnotes */
|
|
238
|
+
.footnotes-sep {
|
|
239
|
+
visibility: hidden;
|
|
240
|
+
}
|
package/styles/index.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// styles/index.ts
|
|
2
|
+
import '@slidev/client/styles/layouts-base.css' // base theme layouts
|
|
3
|
+
import './layouts.css' // default theme layouts
|
|
4
|
+
import './bubbles.css'
|
|
5
|
+
import './stickynote.css'
|
|
6
|
+
import './base.css'
|
|
7
|
+
import './colors.css'
|
|
8
|
+
|
|
9
|
+
// import './code.css'
|
|
10
|
+
// import './layout.css'
|
|
11
|
+
// import './custom.css'
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
.slidev-layout {
|
|
2
|
+
h1 + p {
|
|
3
|
+
@apply -mt-2 opacity-50 mb-4;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
p + h2, ul + h2, table + h2 {
|
|
7
|
+
@apply mt-10;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
h1 {
|
|
11
|
+
@apply text-4xl mb-4 -ml-[0.05em];
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
h2 {
|
|
15
|
+
@apply text-3xl;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
h3 {
|
|
19
|
+
@apply text-2xl;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
h4 {
|
|
23
|
+
@apply text-xl;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
h5 {
|
|
27
|
+
@apply text-base;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
h6 {
|
|
31
|
+
@apply text-sm pt-1 uppercase tracking-widest font-500 -ml-[0.05em];
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
h6:not(.opacity-100) {
|
|
35
|
+
@apply opacity-40;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.slidev-layout.cover,
|
|
40
|
+
.slidev-layout.intro {
|
|
41
|
+
@apply h-full grid;
|
|
42
|
+
|
|
43
|
+
h1 {
|
|
44
|
+
@apply text-6xl leading-20;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
.slidev-layout.fact {
|
|
50
|
+
@apply text-center grid h-full;
|
|
51
|
+
h1 {
|
|
52
|
+
@apply text-8xl font-700;
|
|
53
|
+
}
|
|
54
|
+
h1 + p {
|
|
55
|
+
@apply font-700 text-2xl;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
.slidev-layout.statement {
|
|
59
|
+
@apply text-center grid h-full;
|
|
60
|
+
|
|
61
|
+
h1 {
|
|
62
|
+
@apply text-6xl font-700;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
.slidev-layout.quote {
|
|
66
|
+
@apply grid h-full;
|
|
67
|
+
|
|
68
|
+
h1 + p {
|
|
69
|
+
@apply mt-2;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
.slidev-layout.section {
|
|
73
|
+
h1 {
|
|
74
|
+
@apply text-6xl font-500 leading-20;
|
|
75
|
+
}
|
|
76
|
+
}
|