Re-skin the API documentation layout for the retro theme to ensure readability and maintain the Windows 98 aesthetic. The default dark revamp tokens were unreadable on the black retro desktop background. Changes include: - Styling the API sidebar as a raised silver window with a classic title bar. - Styling endpoint cards as silver windows with navy title bars. - Excluding API navigation links, shortcut cards, and link pills from default retro link styles to prevent styling conflicts. - Updating API documentation content, including adding a section for resumable uploads.
129 lines
6.9 KiB
HTML
129 lines
6.9 KiB
HTML
{{define "base"}}
|
|
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title>{{if .Title}}{{.Title}} | {{end}}{{.AppName}}</title>
|
|
<meta name="description" content="{{.Description}}">
|
|
{{if .CanonicalURL}}<link rel="canonical" href="{{.CanonicalURL}}">{{end}}
|
|
<meta name="robots" content="{{if .Robots}}{{.Robots}}{{else}}index,follow{{end}}">
|
|
<meta name="generator" content="Warp Box {{.AppVersion}}">
|
|
|
|
<meta property="og:site_name" content="{{.AppName}}">
|
|
<meta property="og:type" content="{{if .OGType}}{{.OGType}}{{else}}website{{end}}">
|
|
<meta property="og:title" content="{{if .Title}}{{.Title}}{{else}}{{.AppName}}{{end}}">
|
|
<meta property="og:description" content="{{.Description}}">
|
|
<meta property="og:url" content="{{if .CanonicalURL}}{{.CanonicalURL}}{{else}}{{.BaseURL}}{{end}}">
|
|
{{if .ImageURL}}
|
|
<meta property="og:image" content="{{.ImageURL}}">
|
|
<meta property="og:image:secure_url" content="{{.ImageURL}}">
|
|
{{if .ImageType}}<meta property="og:image:type" content="{{.ImageType}}">{{end}}
|
|
<meta property="og:image:width" content="1200">
|
|
<meta property="og:image:height" content="630">
|
|
{{if .ImageAlt}}<meta property="og:image:alt" content="{{.ImageAlt}}">{{else}}<meta property="og:image:alt" content="{{.AppName}} preview">{{end}}
|
|
{{end}}
|
|
{{if .MediaURL}}
|
|
{{if eq .OGType "video.other"}}
|
|
<meta property="og:video" content="{{.MediaURL}}">
|
|
<meta property="og:video:secure_url" content="{{.MediaURL}}">
|
|
{{if .MediaType}}<meta property="og:video:type" content="{{.MediaType}}">{{end}}
|
|
{{end}}
|
|
{{if eq .OGType "music.song"}}
|
|
<meta property="og:audio" content="{{.MediaURL}}">
|
|
<meta property="og:audio:secure_url" content="{{.MediaURL}}">
|
|
{{if .MediaType}}<meta property="og:audio:type" content="{{.MediaType}}">{{end}}
|
|
{{end}}
|
|
{{end}}
|
|
|
|
<meta name="twitter:card" content="summary_large_image">
|
|
<meta name="twitter:title" content="{{if .Title}}{{.Title}}{{else}}{{.AppName}}{{end}}">
|
|
<meta name="twitter:description" content="{{.Description}}">
|
|
{{if .ImageURL}}
|
|
<meta name="twitter:image" content="{{.ImageURL}}">
|
|
{{if .ImageAlt}}<meta name="twitter:image:alt" content="{{.ImageAlt}}">{{else}}<meta name="twitter:image:alt" content="{{.AppName}} preview">{{end}}
|
|
{{end}}
|
|
|
|
<link rel="icon" href="/static/favicon.ico" sizes="any">
|
|
<link rel="icon" type="image/png" sizes="16x16" href="/static/favicon-16x16.png">
|
|
<link rel="icon" type="image/png" sizes="32x32" href="/static/favicon-32x32.png">
|
|
<link rel="apple-touch-icon" href="/static/apple-touch-icon.png">
|
|
<link rel="manifest" href="/static/site.webmanifest">
|
|
<meta name="theme-color" content="#8b5cf6">
|
|
<meta name="msapplication-TileColor" content="#0b0b16">
|
|
|
|
<script src="/static/js/05-theme.js?version={{.AppVersion}}"></script>
|
|
<link rel="stylesheet" href="/static/css/00-base.css?version={{.AppVersion}}">
|
|
<link rel="stylesheet" href="/static/css/04-dialogs.css?version={{.AppVersion}}">
|
|
<link rel="stylesheet" href="/static/css/10-layout.css?version={{.AppVersion}}">
|
|
<link rel="stylesheet" href="/static/css/15-revamp.css?version={{.AppVersion}}">
|
|
<link rel="stylesheet" href="/static/css/16-retro.css?version={{.AppVersion}}">
|
|
<link rel="stylesheet" href="/static/css/17-gruvbox.css?version={{.AppVersion}}">
|
|
<link rel="stylesheet" href="/static/css/18-cyberpunk.css?version={{.AppVersion}}">
|
|
<link rel="stylesheet" href="/static/css/19-popups.css?version={{.AppVersion}}">
|
|
<link rel="stylesheet" href="/static/css/20-upload.css?version={{.AppVersion}}">
|
|
<link rel="stylesheet" href="/static/css/30-download.css?version={{.AppVersion}}">
|
|
<link rel="stylesheet" href="/static/css/40-docs.css?version={{.AppVersion}}">
|
|
<link rel="stylesheet" href="/static/css/50-admin.css?version={{.AppVersion}}">
|
|
<link rel="stylesheet" href="/static/css/60-storage.css?version={{.AppVersion}}">
|
|
<link rel="stylesheet" href="/static/css/70-tokens.css?version={{.AppVersion}}">
|
|
<link rel="stylesheet" href="/static/css/90-responsive.css?version={{.AppVersion}}">
|
|
<script defer src="/static/js/00-utils.js?version={{.AppVersion}}"></script>
|
|
<script defer src="/static/js/02-pwa.js?version={{.AppVersion}}"></script>
|
|
<script defer src="/static/js/03-popups.js?version={{.AppVersion}}"></script>
|
|
<script defer src="/static/js/04-dialogs.js?version={{.AppVersion}}"></script>
|
|
<script defer src="/static/js/10-file-browser.js?version={{.AppVersion}}"></script>
|
|
<script defer src="/static/js/12-reactions.js?version={{.AppVersion}}"></script>
|
|
<script defer src="/static/js/13-share.js?version={{.AppVersion}}"></script>
|
|
<script defer src="/static/js/20-storage-admin.js?version={{.AppVersion}}"></script>
|
|
<script defer src="/static/js/25-admin-charts.js?version={{.AppVersion}}"></script>
|
|
<script defer src="/static/js/30-token-copy.js?version={{.AppVersion}}"></script>
|
|
<script defer src="/static/js/35-pagination.js?version={{.AppVersion}}"></script>
|
|
<script defer src="/static/js/40-upload.js?version={{.AppVersion}}"></script>
|
|
<script defer src="/static/js/45-preview.js?version={{.AppVersion}}"></script>
|
|
<script defer src="/static/js/48-api-docs.js?version={{.AppVersion}}"></script>
|
|
</head>
|
|
<body class="dark">
|
|
<a class="skip-link" href="#main">Skip to content</a>
|
|
<header class="site-header">
|
|
<nav class="nav" aria-label="Main navigation">
|
|
<a class="brand" href="/" aria-label="{{.AppName}} home">
|
|
<span class="brand-mark" aria-hidden="true">W</span>
|
|
<span>{{.AppName}}</span>
|
|
</a>
|
|
<div class="nav-links">
|
|
{{if .CurrentUser}}
|
|
<a class="button button-ghost" href="/app">Dashboard</a>
|
|
{{if eq .CurrentUser.Role "admin"}}<a class="button button-ghost" href="/admin">Admin</a>{{end}}
|
|
<a class="button button-ghost" href="/api">API</a>
|
|
<a class="button button-outline" href="/account/settings"><span class="nav-username">{{.CurrentUser.Username}}</span></a>
|
|
{{else}}
|
|
<a class="button button-ghost" href="/api">API</a>
|
|
<a class="button button-outline" href="/login">Sign in</a>
|
|
{{end}}
|
|
</div>
|
|
</nav>
|
|
</header>
|
|
|
|
<main id="main">
|
|
{{template "content" .}}
|
|
</main>
|
|
|
|
<footer class="site-footer">
|
|
<span>{{.AppName}} · {{.AppVersion}} · {{.CurrentYear}}</span>
|
|
<label class="theme-picker">
|
|
<span>Theme</span>
|
|
<select data-theme-select aria-label="Site theme">
|
|
<option value="revamp">Aurora (default)</option>
|
|
<option value="classic">Classic</option>
|
|
<option value="retro">Web 1.0 (retro)</option>
|
|
<option value="gruvbox">Gruvbox</option>
|
|
<option value="cyberpunk">CyberPunk</option>
|
|
</select>
|
|
</label>
|
|
<span class="footer-links">{{if .CurrentUser}}<a href="/app">Dashboard</a><a href="/api">API</a><a href="/account/settings">Account</a>{{else}}<a href="/login">Sign in</a><a href="/api">API</a>{{end}}</span>
|
|
</footer>
|
|
</body>
|
|
</html>
|
|
{{end}}
|