Hosting moves to git.zacharyzhang.com: component dependency, site links, references; GitHub workflows removed
This commit is contained in:
13 files changed
+29
-161
No files matched your search
@@ -1,7 +1,7 @@
|
||||
import { expect, test, type Page } from "@playwright/test";
|
||||
import { TEXT, type Key, type Lang } from "../src/text.ts";
|
||||
|
||||
const REPO = "https://github.com/ZacharyZhang-NY/ElyOffice";
|
||||
const REPO = "https://git.zacharyzhang.com/ZacharyZhang-NY/ElyOffice";
|
||||
const APPS = ["ElyDoc", "ElyTable", "ElyShow", "ElyPDF", "ElyTree", "ElyMark"];
|
||||
const RELEASES = `${REPO}/releases/latest`;
|
||||
|
||||
@@ -78,13 +78,13 @@ test.describe("English locale", () => {
|
||||
await expect(lang).toHaveText("中文");
|
||||
});
|
||||
|
||||
test("downloads go to the GitHub release page, never to a file", async ({ page }) => {
|
||||
test("downloads go to the release page, never to a file", async ({ page }) => {
|
||||
await page.goto("/");
|
||||
await expect(page.locator(".tour .get")).toHaveCount(APPS.length);
|
||||
for (const i of APPS.keys()) await expect(page.locator(".tour .get").nth(i)).toHaveAttribute("href", RELEASES);
|
||||
await expect(page.locator("#download a")).toHaveCount(1);
|
||||
await expect(page.locator("#download [data-t=github]")).toHaveAttribute("href", RELEASES);
|
||||
await expect(page.locator(".hero > a")).toHaveText("GitHub");
|
||||
await expect(page.locator("#download [data-t=get]")).toHaveAttribute("href", RELEASES);
|
||||
await expect(page.locator(".hero > a")).toHaveText("Source");
|
||||
await expect(page.locator(".hero > a")).toHaveAttribute("href", REPO);
|
||||
const files = await page.locator("a[href]").evaluateAll((as) =>
|
||||
as.map((a) => (a as HTMLAnchorElement).href).filter((h) => /\.(dmg|tar\.gz|zip|exe|AppImage)$/.test(h)),
|
||||
|
||||
+6
-6
@@ -10,7 +10,7 @@ import { film } from "./film.ts";
|
||||
import { said, speak, type Lang } from "./text.ts";
|
||||
import { RELEASES, VERSION } from "./release.ts";
|
||||
|
||||
const REPO = "https://github.com/ZacharyZhang-NY/ElyOffice";
|
||||
const REPO = "https://git.zacharyzhang.com/ZacharyZhang-NY/ElyOffice";
|
||||
|
||||
const app = document.querySelector<HTMLElement>("#app");
|
||||
if (!app) throw new Error("index.html has no #app");
|
||||
@@ -18,10 +18,10 @@ if (!app) throw new Error("index.html has no #app");
|
||||
const hero = document.createElement("header");
|
||||
const title = document.createElement("h1");
|
||||
title.textContent = "Ely Office";
|
||||
const github = document.createElement("a");
|
||||
github.href = REPO;
|
||||
github.textContent = "GitHub";
|
||||
hero.append(title, said("p", "tagline"), said("p", "platforms"), github);
|
||||
const source = document.createElement("a");
|
||||
source.href = REPO;
|
||||
source.textContent = "Source";
|
||||
hero.append(title, said("p", "tagline"), said("p", "platforms"), source);
|
||||
const { section, host, svg } = tour(hero);
|
||||
rhythm(host, svg);
|
||||
|
||||
@@ -31,7 +31,7 @@ const footer = document.createElement("footer");
|
||||
footer.id = "download";
|
||||
const version = document.createElement("h2");
|
||||
version.textContent = `Ely Office ${VERSION}`;
|
||||
const get = said("a", "github");
|
||||
const get = said("a", "get");
|
||||
get.href = RELEASES;
|
||||
footer.append(version, said("p", "platforms"), said("p", "needs"), said("p", "unsigned"), get);
|
||||
|
||||
|
||||
+1
-1
@@ -1,3 +1,3 @@
|
||||
// The published release; downloads live on its GitHub page.
|
||||
export const VERSION = "0.1.1";
|
||||
export const RELEASES = "https://github.com/ZacharyZhang-NY/ElyOffice/releases/latest";
|
||||
export const RELEASES = "https://git.zacharyzhang.com/ZacharyZhang-NY/ElyOffice/releases/latest";
|
||||
+2
-2
@@ -16,7 +16,7 @@ const en = {
|
||||
platforms: "Out now for macOS. Windows and Linux are coming soon.",
|
||||
needs: "macOS 14 or later, Apple silicon.",
|
||||
unsigned: "Not notarized. If macOS blocks the app, open System Settings › Privacy & Security and click Open Anyway.",
|
||||
github: "Download from GitHub",
|
||||
get: "Download",
|
||||
other: "中文",
|
||||
roads: "Drag a file down the road.",
|
||||
fileDoc: "ElyDoc file",
|
||||
@@ -52,7 +52,7 @@ const zh: typeof en = {
|
||||
platforms: "macOS 版已发布。Windows 与 Linux 版即将推出。",
|
||||
needs: "macOS 14 或更新,Apple 芯片。",
|
||||
unsigned: "未经公证。macOS 拦下应用时,打开“系统设置 › 隐私与安全性”,点“仍要打开”。",
|
||||
github: "前往 GitHub 下载",
|
||||
get: "前往下载",
|
||||
other: "English",
|
||||
roads: "把文件沿着路拖过去。",
|
||||
fileDoc: "ElyDoc 文件",
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
<h1 data-text="title">Ely Office</h1>
|
||||
<h1 data-text="name">Ely Office 0.1.0</h1>
|
||||
<p class="version" data-text="version" data-soft>Out now for macOS · Windows and Linux soon macOS 现已推出 · Windows 与 Linux 即将推出</p>
|
||||
<p class="url" data-text="url" data-soft>github.com/ZacharyZhang-NY/ElyOffice/releases</p>
|
||||
<p class="url" data-text="url" data-soft>git.zacharyzhang.com/ZacharyZhang-NY/ElyOffice/releases</p>
|
||||
<div class="cap" data-text="offline"><p class="en">Works with the network off.</p><p class="zh">断网照常工作。</p></div>
|
||||
<div class="cap" data-text="open"><p class="en">Open source, AGPL.</p><p class="zh">开源,AGPL 许可。</p></div>
|
||||
<div class="cap" data-text="local"><p class="en">Your files stay in your folders.</p><p class="zh">文件留在你自己的文件夹里。</p></div>
|
||||
|
||||
@@ -163,7 +163,7 @@ function end(ctx, t) {
|
||||
const line = { x: left, align: "left", a };
|
||||
text(ctx, { ...line, s: "macOS now · Windows and Linux soon", y, size: 34, color: "#c4c2c0" });
|
||||
text(ctx, { ...line, s: "macOS 现已推出 · Windows 与 Linux 即将推出", y: y + 46, size: 28, color: "#acaaa8" });
|
||||
const url = "github.com/ZacharyZhang-NY/ElyOffice";
|
||||
const url = "git.zacharyzhang.com/ZacharyZhang-NY/ElyOffice";
|
||||
text(ctx, { ...line, s: url, y: y + 122, size: 30, color: "#f5f5f7", a: fade(t0 + BAR), weight: 400 });
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user