mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-04-14 10:07:39 +08:00
* Add vitepress tree * Update existing workflows so they dont trigger on changes in the docs path * Add nojekyll, package.json, LICENCE etc * Add crowdin docs upload/download scripts * Add docs flaw checker workflows * Used docs prefix for docs workflows * Crowdin obvious fixes * ci: docs move to self hosted runner runs on a beefy server for faster builds Signed-off-by: Ramon Roche <mrpollo@gmail.com> * ci: don't run build action for docs or ci changes Signed-off-by: Ramon Roche <mrpollo@gmail.com> * ci: update runners Signed-off-by: Ramon Roche <mrpollo@gmail.com> * Add docs/en * Add docs assets and scripts * Fix up editlinks to point to PX4 sources * Download just the translations that are supported * Add translation sources for zh, uk, ko * Update latest tranlsation and uorb graphs * update vitepress to latest --------- Signed-off-by: Ramon Roche <mrpollo@gmail.com> Co-authored-by: Ramon Roche <mrpollo@gmail.com>
59 lines
1.6 KiB
JavaScript
59 lines
1.6 KiB
JavaScript
// https://vitepress.dev/guide/custom-theme
|
|
import { h } from "vue";
|
|
|
|
import DefaultTheme from "vitepress/theme";
|
|
import "./style.css";
|
|
|
|
// To support medium-zoom - like setup()
|
|
import { onMounted, watch, nextTick } from "vue";
|
|
import { useRoute } from "vitepress";
|
|
import mediumZoom from "medium-zoom";
|
|
|
|
// For https://www.npmjs.com/package/lite-youtube-embed
|
|
import { inBrowser } from "vitepress";
|
|
import "lite-youtube-embed/src/lite-yt-embed.css";
|
|
if (inBrowser) {
|
|
// @ts-ignore
|
|
import("lite-youtube-embed");
|
|
}
|
|
|
|
// Support redirect plugin
|
|
import Redirect from "./components/Redirect.vue";
|
|
|
|
// Tabs: https://github.com/Red-Asuka/vitepress-plugin-tabs
|
|
import { Tab, Tabs } from "vue3-tabs-component";
|
|
import "@red-asuka/vitepress-plugin-tabs/dist/style.css";
|
|
|
|
/** @type {import('vitepress').Theme} */
|
|
export default {
|
|
extends: DefaultTheme,
|
|
Layout: () => {
|
|
return h(DefaultTheme.Layout, null, {
|
|
// https://vitepress.dev/guide/extending-default-theme#layout-slots
|
|
});
|
|
},
|
|
enhanceApp({ app, router, siteData }) {
|
|
app.component("Redirect", Redirect); //Redirect plugin
|
|
//Tabs: https://github.com/Red-Asuka/vitepress-plugin-tabs
|
|
app.component("Tab", Tab);
|
|
app.component("Tabs", Tabs);
|
|
},
|
|
|
|
// to support medium zoom: https://github.com/vuejs/vitepress/issues/854
|
|
setup() {
|
|
const route = useRoute();
|
|
const initZoom = () => {
|
|
//mediumZoom("[data-zoomable]", { background: "var(--vp-c-bg)" });
|
|
mediumZoom(".main img", { background: "var(--vp-c-bg)" });
|
|
};
|
|
onMounted(() => {
|
|
initZoom();
|
|
});
|
|
watch(
|
|
() => route.path,
|
|
() => nextTick(() => initZoom())
|
|
);
|
|
},
|
|
//end to support medium zoom
|
|
};
|