This commit is contained in:
Patrick Alvin Alcala 2026-01-30 19:18:45 +08:00
parent cde344cb59
commit b8a0d0179e
12 changed files with 70 additions and 44 deletions

View file

@ -9,7 +9,7 @@ interface Props {
}
export default (props: Props) => {
const boxClass = createMemo(() => (props.curved ? "curvedbox" : "box"));
const boxClass = createMemo(() => (props.curved ? "dasig-curvedbox" : "dasig-box"));
return (
<section

View file

@ -9,10 +9,8 @@ interface Props {
export default (props: Props) => {
return (
<>
<section class={`column-${props.content || 'center'}`} style={`gap: ${props.gap}rem`}>
{props.children}
</section>
</>
<section class={`column-${props.content || 'center'}`} style={`gap: ${props.gap}rem`}>
{props.children}
</section>
)
}

View file

@ -1,11 +1,12 @@
import { $companyName, $copyRightYear } from "../../configs/config.site.ts";
import * as fs from 'node:fs'
import * as toml from 'toml'
const config = toml.parse(fs.readFileSync('configs/config.site.toml', 'utf8'))
export default () => {
return (
<>
<span>
Copyright © {$copyRightYear.get()} {$companyName.get()} All Rights Reserved.
</span>
</>
<span>
Copyright © {config.copyright.year} {config.copyright.name} All Rights Reserved.
</span>
)
}

View file

@ -10,32 +10,30 @@ interface Props {
export default (props: Props) => {
return (
<>
<Switch>
<Match when={props.desktop && !props.tablet && !props.mobile}>
<div class="on-desktop-only">{props.children}</div>
</Match>
<Switch>
<Match when={props.desktop && !props.tablet && !props.mobile}>
<div class="on-desktop-only">{props.children}</div>
</Match>
<Match when={!props.desktop && props.tablet && !props.mobile}>
<div class="on-tablet-only">{props.children}</div>
</Match>
<Match when={!props.desktop && props.tablet && !props.mobile}>
<div class="on-tablet-only">{props.children}</div>
</Match>
<Match when={!props.desktop && !props.tablet && props.mobile}>
<div class="on-mobile-only">{props.children}</div>
</Match>
<Match when={!props.desktop && !props.tablet && props.mobile}>
<div class="on-mobile-only">{props.children}</div>
</Match>
<Match when={props.desktop && props.tablet && !props.mobile}>
<div class="on-desktop-tablet-only">{props.children}</div>
</Match>
<Match when={props.desktop && props.tablet && !props.mobile}>
<div class="on-desktop-tablet-only">{props.children}</div>
</Match>
<Match when={props.desktop && !props.tablet && props.mobile}>
<div class="on-desktop-mobile-only">{props.children}</div>
</Match>
<Match when={props.desktop && !props.tablet && props.mobile}>
<div class="on-desktop-mobile-only">{props.children}</div>
</Match>
<Match when={!props.desktop && props.tablet && props.mobile}>
<div class="on-tablet-mobile-only">{props.children}</div>
</Match>
</Switch>
</>
<Match when={!props.desktop && props.tablet && props.mobile}>
<div class="on-tablet-mobile-only">{props.children}</div>
</Match>
</Switch>
)
}

View file

@ -35,11 +35,12 @@ export default (props: Props) => {
name="viewport"
content="width=device-width, initial-scale=1, viewport-fit=cover"
/>
<meta name="name" content={props.name} />
<meta name="description" content={props.description} />
<meta name="title" property="og:title" content={props.name} />
<meta name="name" content={config.website.name} />
<meta name="description" content={config.website.description} />
<meta name="title" property="og:title" content={config.website.name} />
<meta name="keywords" content="HTML, CSS, JavaScript" />
<meta name="developer" content={props.author} />
<meta name="developer" content={config.website.developer} />
<meta name="designer" content={config.website.designer} />
<meta property="og:description" content={props.description} />
<meta property="og:type" content="website" />
<link rel="icon" type="image/png" href="/favicon.png" />

View file

@ -1,4 +1,4 @@
import { type JSXElement } from 'solid-js'
import type { JSXElement } from 'solid-js'
interface Props {
left: number