fix: various

This commit is contained in:
Dan Finch 2026-05-13 02:27:48 +02:00
parent d0685c2d59
commit 2d2a4a44bd
14 changed files with 41 additions and 37 deletions

View file

@ -15,13 +15,7 @@ export default defineConfig({
ignorePatterns: ["**/*.gen.ts"], ignorePatterns: ["**/*.gen.ts"],
overrides: [ overrides: [
{ {
files: [ files: ["**/ui/**/*.ts"],
"*.page.ts",
"*.style.ts",
"*.html.ts",
"layout.ts",
"*.layout.ts",
],
options: { options: {
printWidth: 60, printWidth: 60,
}, },

View file

@ -66,6 +66,7 @@ export default defineConfig({
"typescript/no-non-null-assertion": "off", "typescript/no-non-null-assertion": "off",
"typescript/prefer-function-type": "off", "typescript/prefer-function-type": "off",
"unicorn/no-process-exit": "off", "unicorn/no-process-exit": "off",
"unicorn/prefer-string-raw": "off",
"unicorn/text-encoding-identifier-case": "off", "unicorn/text-encoding-identifier-case": "off",
}, },
overrides: [ overrides: [

View file

@ -1,18 +1,16 @@
{ {
"name": "@sigitex/sigitex.com", "name": "@sigitex/sigitex.com",
"type": "module",
"version": "0.0.1", "version": "0.0.1",
"private": true, "private": true,
"workspaces": { "workspaces": {
"packages": [ "packages": [
"../hypeup/packages/*" "/sig/hypeup/packages/*"
], ]
"catalog": {
"@types/bun": "1.3.12"
}
}, },
"scripts": { "scripts": {
"start": "hypeup generate --dir src --watch", "start": "hypeup generate --dir src/routes --watch",
"build": "hypeup generate --dir src", "build": "hypeup generate --dir src/routes",
"check": "tsgo --build", "check": "tsgo --build",
"test": "bun test --pass-with-no-tests --tsconfig-override tsconfig.test.json", "test": "bun test --pass-with-no-tests --tsconfig-override tsconfig.test.json",
"lint": "oxlint", "lint": "oxlint",
@ -24,7 +22,6 @@
"@hypeup/runtime": "workspace:*", "@hypeup/runtime": "workspace:*",
"asta": "anton-io/asta", "asta": "anton-io/asta",
"highlight.js": "^11.11.1", "highlight.js": "^11.11.1",
"hypeup": "workspace:*",
"marked": "^18.0.3", "marked": "^18.0.3",
"marked-gfm-heading-id": "^4.1.4", "marked-gfm-heading-id": "^4.1.4",
"marked-highlight": "^2.2.4" "marked-highlight": "^2.2.4"
@ -41,6 +38,7 @@
"devDependencies": { "devDependencies": {
"@types/bun": "^1.3.13", "@types/bun": "^1.3.13",
"@typescript/native-preview": "beta", "@typescript/native-preview": "beta",
"hypeup": "workspace:*",
"oxfmt": "^0.47.0", "oxfmt": "^0.47.0",
"oxlint": "^1.62.0", "oxlint": "^1.62.0",
"sass-embedded": "^1.99.0", "sass-embedded": "^1.99.0",

View file

@ -1,5 +1,5 @@
{ {
"templates": "profile/app/hypeup-ssg", "templates": ["profile/app/hypeup-static"],
"vars": { "vars": {
"repo": "sigitex.com" "repo": "sigitex.com"
} }

View file

@ -0,0 +1,2 @@
export { default } from "@/ui/Project"
export * from "@/ui/Project"

1
src/routes/index.html.ts Normal file
View file

@ -0,0 +1 @@
export { default } from "@/ui/Home"

View file

@ -1,3 +0,0 @@
export const forges = {
quickbasic: "https://code.quickbasic.org/sigitex",
}

View file

@ -1,9 +1,9 @@
import Projects from "@/projects.html" import Projects from "@/ui/Projects"
import { Divide } from "@/shared/components" import { Divide } from "@/shared/components"
import layout from "@/shared/layout" import Layout from "@/ui/Layout"
export default function Index() { export default function Home() {
return layout( return Layout(
p( p(
"WELCOME TO SIGITEX.COM. SIGITEX MAKES SOFTWARE. SIGITEX HOPES YOU ENJOY THE SOFTWARE.", "WELCOME TO SIGITEX.COM. SIGITEX MAKES SOFTWARE. SIGITEX HOPES YOU ENJOY THE SOFTWARE.",
), ),

View file

@ -3,9 +3,9 @@ import astaCss from "asta/src/scss/asta.scss?inline"
import hljsTheme from "highlight.js/styles/ir-black.min.css?inline" import hljsTheme from "highlight.js/styles/ir-black.min.css?inline"
import favicon from "../../assets/images/favicon.png" import favicon from "../../assets/images/favicon.png"
import logo from "../../assets/images/logo.png" import logo from "../../assets/images/logo.png"
import Theme from "./theme.style" import Theme from "./Theme"
export default function layout(...content: Content[]) { export default function Layout(...content: Content[]) {
return [ return [
doctype.html5, doctype.html5,
html( html(
@ -43,7 +43,9 @@ export default function layout(...content: Content[]) {
"© SIGITEX | ", "© SIGITEX | ",
a("ABOUT US", { href: "https://da.nfin.ch/" }), a("ABOUT US", { href: "https://da.nfin.ch/" }),
" | ", " | ",
a("SOURCE", { href: "https://code.quickbasic.org/sigitex/sigitex.com" }) a("SOURCE", {
href: "https://code.quickbasic.org/sigitex/sigitex.com",
}),
), ),
), ),
), ),

View file

@ -1,7 +1,9 @@
import layout from "@/shared/layout" import Status from "@/ui/Status"
import getProjects, { type Project } from "./getProjects"
import Status from "@/status.html"
import markdown from "@/shared/markdown" import markdown from "@/shared/markdown"
import getProjects, {
type Project,
} from "@/shared/getProjects"
import Layout from "@/ui/Layout"
const projects = await getProjects() const projects = await getProjects()
@ -24,14 +26,18 @@ export default function Project({ name }: Project) {
: `https://github.com/${owner}/${repo}` : `https://github.com/${owner}/${repo}`
const forgeText = const forgeText =
forge === "quickbasic" ? "CODE" : "GITHUB" forge === "quickbasic" ? "CODE" : "GITHUB"
return layout( return Layout(
h1(div("Sigitex/", name), marginBottom("20px")), h1(div("Sigitex/", name), marginBottom("20px")),
div(status && each(status, (s) => Status(s))), div(status && each(status, (s) => Status(s))),
p(description), p(description),
div(a(forgeText, " ↗", { href: forgeUrl })), div(
a(forgeText, " ↗", {
href: forgeUrl,
target: "_top",
}),
),
hr(), hr(),
readme && readme &&
div.readme(h2("DOCS"), p(raw(markdown(readme)))), div.readme(h2("DOCS"), p(raw(markdown(readme)))),
) )
} }

View file

@ -1,5 +1,5 @@
import getProjects from "./getProjects" import getProjects from "@/shared/getProjects"
import Status from "@/status.html" import Status from "@/ui/Status"
const projects = await getProjects() const projects = await getProjects()

View file

@ -1,8 +1,11 @@
import type { ProjectStatus } from "@/getProjects"
import { colors } from "@/shared/colors" import { colors } from "@/shared/colors"
import type { ProjectStatus } from "@/shared/getProjects"
export default function Status(status: ProjectStatus) { export default function Status(status: ProjectStatus) {
return span.tag(backgroundColor(statusColors[status]), status) return span.tag(
backgroundColor(statusColors[status]),
status,
)
} }
const statusColors: Record<ProjectStatus, string> = { const statusColors: Record<ProjectStatus, string> = {

View file

@ -54,7 +54,7 @@ export default function Theme() {
]), ]),
$media( $media(
"screen and (max-width: 768px)", "screen and (max-width: 768px)",
rule("table", [whiteSpace("unset")]), rule("table", [whiteSpace.normal]),
), ),
] ]
} }