Files snapshot from main
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
a2866c Tucker McKnight
a2866c Tucker McKnight
a2866c Tucker McKnight
7bbc3b Tucker McKnight
7bbc3b Tucker McKnight
7bbc3b Tucker McKnight
0dfdda Tucker McKnight
7bbc3b Tucker McKnight
7bbc3b Tucker McKnight
7bbc3b Tucker McKnight
7bbc3b Tucker McKnight
7bbc3b Tucker McKnight
7bbc3b Tucker McKnight
7bbc3b Tucker McKnight
7bbc3b Tucker McKnight
0dfdda Tucker McKnight
7bbc3b Tucker McKnight
0dfdda Tucker McKnight
7bbc3b Tucker McKnight
7bbc3b Tucker McKnight
7bbc3b Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
7bbc3b Tucker McKnight
eeb992 Tucker McKnight
7bbc3b Tucker McKnight
eeb992 Tucker McKnight
eeb992 Tucker McKnight
7bbc3b Tucker McKnight
7bbc3b Tucker McKnight
a2866c Tucker McKnight
7bbc3b Tucker McKnight
7bbc3b Tucker McKnight
7bbc3b Tucker McKnight
7bbc3b Tucker McKnight
7bbc3b Tucker McKnight
0dfdda Tucker McKnight
7bbc3b Tucker McKnight
a2866c Tucker McKnight
a2866c Tucker McKnight
7bbc3b Tucker McKnight
a2866c Tucker McKnight
import m from 'mithril'
import render from 'mithril-node-render'
export default async (template, reposConfiguration, eleventyConfig) => {
return async (data) => {
const opts = await template(reposConfiguration, eleventyConfig, data)
const rootPath = opts.rootPath == '/' ? '' : opts.rootPath
return render([
m.trust('<!doctype html>'),
m('html', {lang: "en"}, [
m('head', [
m('meta', {charset: "utf-8"}),
m('meta', {name: "viewport", content: "width=device-width, initial-scale=1"}),
m('title', opts.pageTitle),
m('link', {rel: "stylesheet", href: `${rootPath}/css/design-board.css`}),
opts.additionalHeadContent || null,
m('script', {src: `${rootPath}/frontend/top.js`}),
]),
m('body', [
m('div', {class: "container-fluid container-lg"}, [
m('div', {class: "row mb-1"}, [
m('div', {class: "col"},
m('div', {class: "row"},
m('div', {class: "col"}, [
opts.navbarContent || null,
]),
m('div', {class: "col-auto pt-2"}, [
m('div', {class: "dropdown"}, [
m('button', {class: "dropdown-toggle btn btn-bg", id: "dark-mode-switch", type: "button", 'data-bs-toggle': "dropdown", 'aria-expanded': 'false'},
m('span', m.trust('️'))
),
m('ul', {class: "dropdown-menu"}, [
m('li',
m('button', {class: "btn shadow-none", 'data-theme-pref': "light", onclick: "toggleDarkMode(this)"}, [
m('span', {class: "me-1"}, m.trust('🌞')),
'Light'
])
),
m('li',
m('button', {class: "btn shadow-none", 'data-theme-pref': "dark", onclick: "toggleDarkMode(this)"}, [
m('span', {class: "me-1"}, m.trust('🌙')),
'Dark'
])
),
m('li',
m('button', {class: "btn shadow-none", 'data-theme-pref': "auto", onclick: "toggleDarkMode(this)"}, [
m('span', {class: "me-1"}, m.trust('🖥️')),
'Match OS'
])
)
])
])
])
)
)
]),
await opts.pageContent,
]),
m('script', {
src: "https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/js/bootstrap.bundle.min.js",
integrity: "sha384-FKyoEForCGlyvwx9Hj09JcYn3nv7wiPVlz7YYwJrWVcXK/BmnVDxM+D2scQbITxI",
crossorigin: "anonymous"
}),
m('script', {src: `${rootPath}/frontend/main-frontend.bundle.js`})
])
])
])
}
}