feat/tauri-mobile #1
No files matched your search
+2
-1
@@ -1 +1,2 @@
|
||||
node_modules
|
||||
node_modules
|
||||
.env
|
||||
Vendored
+4
@@ -6,6 +6,10 @@
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
||||
"editor.maxTokenizationLineLength": 2500,
|
||||
},
|
||||
"[typescript]": {
|
||||
"editor.formatOnSave": true,
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
||||
},
|
||||
"[vue]": {
|
||||
"editor.formatOnSave": true,
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
||||
|
||||
+53
-19
@@ -1,35 +1,71 @@
|
||||
import { defineConfig } from 'vitepress'
|
||||
import { defineConfig } from "vitepress";
|
||||
import { execSync } from "node:child_process";
|
||||
|
||||
const host = process.env.TAURI_DEV_HOST;
|
||||
|
||||
const {
|
||||
IMG_ORIGIN = `https://git.polv.cc/polv/yt2press/raw/branch/${
|
||||
execSync("git branch --show-current").toString().trimEnd()
|
||||
}/docs/public`,
|
||||
} = process.env;
|
||||
|
||||
// https://vitepress.dev/reference/site-config
|
||||
export default defineConfig({
|
||||
title: "yt2press",
|
||||
description: "video to vitepress",
|
||||
themeConfig: {
|
||||
// https://vitepress.dev/reference/default-theme-config
|
||||
nav: [
|
||||
{ text: 'Home', link: '/' },
|
||||
],
|
||||
nav: [{ text: "Home", link: "/" }],
|
||||
|
||||
sidebar: [
|
||||
{
|
||||
text: 'Preview',
|
||||
text: "Preview",
|
||||
// items: [
|
||||
// { text: 'Markdown Examples', link: '/markdown-examples' },
|
||||
// { text: 'Runtime API Examples', link: '/api-examples' }
|
||||
// ]
|
||||
}
|
||||
},
|
||||
],
|
||||
|
||||
socialLinks: [
|
||||
{ icon: 'github', link: 'https://git.polv.cc/polv/yt2press' }
|
||||
]
|
||||
{ icon: "github", link: "https://git.polv.cc/polv/yt2press" },
|
||||
],
|
||||
},
|
||||
markdown: {
|
||||
image: {
|
||||
lazyLoading: true,
|
||||
},
|
||||
config(md) {
|
||||
// production-only gate
|
||||
const isProd =
|
||||
process.env.NODE_ENV === "production" ||
|
||||
process.env.VITEPRESS_ENV === "production"; // extra safety
|
||||
|
||||
if (isProd) {
|
||||
md.core.ruler.push("rewrite-image-urls", (state) => {
|
||||
if (!state.tokens) return;
|
||||
|
||||
for (const token of state.tokens) {
|
||||
if (token.type !== "inline") continue;
|
||||
|
||||
for (const child of token.children ?? []) {
|
||||
// images: 
|
||||
if (
|
||||
child.type === "image" &&
|
||||
typeof child.attrGet("src") === "string"
|
||||
) {
|
||||
const src = child.attrGet("src");
|
||||
|
||||
// rewrite only /images/* (adjust if your paths differ)
|
||||
if (src && src.startsWith("/images/")) {
|
||||
child.attrSet("src", `${IMG_ORIGIN}${src}`);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
},
|
||||
vite: {
|
||||
clearScreen: false,
|
||||
@@ -42,28 +78,26 @@ export default defineConfig({
|
||||
host: host || false,
|
||||
watch: {
|
||||
// tell vite to ignore watching `src-tauri`
|
||||
ignored: ['**/src-tauri/**'],
|
||||
ignored: ["**/src-tauri/**"],
|
||||
},
|
||||
proxy: {
|
||||
'/socket': {
|
||||
target: 'ws://localhost:8080',
|
||||
"/socket": {
|
||||
target: "ws://localhost:8080",
|
||||
ws: true,
|
||||
rewriteWsOrigin: true,
|
||||
}
|
||||
},
|
||||
},
|
||||
},
|
||||
// Env variables starting with the item of `envPrefix` will be exposed in tauri's source code through `import.meta.env`.
|
||||
envPrefix: ['VITE_', 'TAURI_ENV_*'],
|
||||
envPrefix: ["VITE_", "TAURI_ENV_*"],
|
||||
build: {
|
||||
// Tauri uses Chromium on Windows and WebKit on macOS and Linux
|
||||
target:
|
||||
process.env.TAURI_ENV_PLATFORM == 'windows'
|
||||
? 'chrome105'
|
||||
: 'safari13',
|
||||
process.env.TAURI_ENV_PLATFORM == "windows" ? "chrome105" : "safari13",
|
||||
// don't minify for debug builds
|
||||
minify: !process.env.TAURI_ENV_DEBUG ? 'esbuild' : false,
|
||||
minify: !process.env.TAURI_ENV_DEBUG ? "esbuild" : false,
|
||||
// produce sourcemaps for debug builds
|
||||
sourcemap: !!process.env.TAURI_ENV_DEBUG,
|
||||
},
|
||||
}
|
||||
})
|
||||
},
|
||||
});
|
||||
@@ -14,3 +14,4 @@ async function removeAllVideos(dir) {
|
||||
}
|
||||
|
||||
await removeAllVideos("docs/.vitepress/dist");
|
||||
await fs.rm("docs/.vitepress/dist/images", { recursive: true });
|
||||
Reference in new issue
Block a user