chore: sync local changes to Gitea
This commit is contained in:
@@ -2,8 +2,16 @@
|
|||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8" />
|
<meta charset="UTF-8" />
|
||||||
|
<link rel="icon" href="/favicon.ico" sizes="any" />
|
||||||
|
<link rel="apple-touch-icon" href="/logo.png" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
<meta name="color-scheme" content="light" />
|
<meta name="color-scheme" content="light" />
|
||||||
|
<meta name="theme-color" content="#2563eb" />
|
||||||
|
<meta name="mobile-web-app-capable" content="yes" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<meta name="apple-mobile-web-app-status-bar-style" content="default" />
|
||||||
|
<meta name="apple-mobile-web-app-title" content="Star Manager" />
|
||||||
|
<meta name="application-name" content="Star Manager" />
|
||||||
<meta name="description" content="Manage GitHub starred repositories with Star Lists." />
|
<meta name="description" content="Manage GitHub starred repositories with Star Lists." />
|
||||||
<title>GitHub星标管理面板</title>
|
<title>GitHub星标管理面板</title>
|
||||||
</head>
|
</head>
|
||||||
|
|||||||
4407
package-lock.json
generated
4407
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -20,6 +20,7 @@
|
|||||||
"@types/react-dom": "^19.1.7",
|
"@types/react-dom": "^19.1.7",
|
||||||
"@vitejs/plugin-react": "^5.0.2",
|
"@vitejs/plugin-react": "^5.0.2",
|
||||||
"typescript": "~5.9.3",
|
"typescript": "~5.9.3",
|
||||||
"vite": "^7.3.1"
|
"vite": "^7.3.1",
|
||||||
|
"vite-plugin-pwa": "^1.2.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
BIN
public/favicon.ico
Normal file
BIN
public/favicon.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 100 KiB |
BIN
public/logo.png
Normal file
BIN
public/logo.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 3.3 MiB |
@@ -208,7 +208,9 @@ export default function App() {
|
|||||||
<div className="app">
|
<div className="app">
|
||||||
<header className="app-header">
|
<header className="app-header">
|
||||||
<div className="brand">
|
<div className="brand">
|
||||||
<div className="brand-icon">★</div>
|
<div className="brand-logo">
|
||||||
|
<img src="/logo.png" alt="" width={40} height={40} decoding="async" />
|
||||||
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<h1 className="brand-title">{t("common.appName")}</h1>
|
<h1 className="brand-title">{t("common.appName")}</h1>
|
||||||
<p className="brand-subtitle">{t("app.subtitle")}</p>
|
<p className="brand-subtitle">{t("app.subtitle")}</p>
|
||||||
|
|||||||
@@ -56,18 +56,22 @@ body {
|
|||||||
gap: 14px;
|
gap: 14px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.brand-icon {
|
.brand-logo {
|
||||||
width: 40px;
|
width: 40px;
|
||||||
height: 40px;
|
height: 40px;
|
||||||
border-radius: var(--radius-lg);
|
border-radius: var(--radius-lg);
|
||||||
background: var(--doc-accent-soft);
|
|
||||||
border: 1px solid var(--doc-border);
|
border: 1px solid var(--doc-border);
|
||||||
display: grid;
|
display: grid;
|
||||||
place-items: center;
|
place-items: center;
|
||||||
font-weight: 600;
|
overflow: hidden;
|
||||||
font-family: var(--font-ui);
|
flex-shrink: 0;
|
||||||
font-size: 15px;
|
background: var(--doc-surface);
|
||||||
color: var(--doc-accent);
|
}
|
||||||
|
|
||||||
|
.brand-logo img {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
object-fit: contain;
|
||||||
}
|
}
|
||||||
|
|
||||||
.brand-title {
|
.brand-title {
|
||||||
|
|||||||
@@ -1,10 +1,13 @@
|
|||||||
import React from "react";
|
import React from "react";
|
||||||
import { createRoot } from "react-dom/client";
|
import { createRoot } from "react-dom/client";
|
||||||
|
import { registerSW } from "virtual:pwa-register";
|
||||||
import App from "./app/App";
|
import App from "./app/App";
|
||||||
import "./app/i18n";
|
import "./app/i18n";
|
||||||
import "./app/styles/fonts.css";
|
import "./app/styles/fonts.css";
|
||||||
import "./app/styles/app.css";
|
import "./app/styles/app.css";
|
||||||
|
|
||||||
|
registerSW({ immediate: true });
|
||||||
|
|
||||||
const container = document.querySelector<HTMLDivElement>("#app");
|
const container = document.querySelector<HTMLDivElement>("#app");
|
||||||
|
|
||||||
if (!container) {
|
if (!container) {
|
||||||
|
|||||||
1
src/vite-env.d.ts
vendored
1
src/vite-env.d.ts
vendored
@@ -1 +1,2 @@
|
|||||||
/// <reference types="vite/client" />
|
/// <reference types="vite/client" />
|
||||||
|
/// <reference types="vite-plugin-pwa/client" />
|
||||||
|
|||||||
@@ -1,6 +1,49 @@
|
|||||||
import { defineConfig } from "vite";
|
import { defineConfig } from "vite";
|
||||||
import react from "@vitejs/plugin-react";
|
import react from "@vitejs/plugin-react";
|
||||||
|
import { VitePWA } from "vite-plugin-pwa";
|
||||||
|
|
||||||
export default defineConfig({
|
export default defineConfig({
|
||||||
plugins: [react()],
|
plugins: [
|
||||||
|
react(),
|
||||||
|
VitePWA({
|
||||||
|
registerType: "autoUpdate",
|
||||||
|
includeAssets: ["public/favicon.ico", "public/logo.png"],
|
||||||
|
manifest: {
|
||||||
|
name: "GitHub Star Manager",
|
||||||
|
short_name: "Star Manager",
|
||||||
|
description: "Manage GitHub starred repositories with Star Lists.",
|
||||||
|
theme_color: "#2563eb",
|
||||||
|
background_color: "#f8fafc",
|
||||||
|
display: "standalone",
|
||||||
|
orientation: "any",
|
||||||
|
scope: "/",
|
||||||
|
start_url: "/",
|
||||||
|
icons: [
|
||||||
|
{
|
||||||
|
src: "/logo.png",
|
||||||
|
sizes: "192x192",
|
||||||
|
type: "image/png",
|
||||||
|
purpose: "any",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
src: "/logo.png",
|
||||||
|
sizes: "512x512",
|
||||||
|
type: "image/png",
|
||||||
|
purpose: "any",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
src: "/logo.png",
|
||||||
|
sizes: "512x512",
|
||||||
|
type: "image/png",
|
||||||
|
purpose: "maskable",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
workbox: {
|
||||||
|
globPatterns: ["**/*.{js,css,html,ico,png,svg,woff2,woff}"],
|
||||||
|
// logo.png is large after bundling; default Workbox limit is 2 MiB
|
||||||
|
maximumFileSizeToCacheInBytes: 6 * 1024 * 1024,
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
],
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user