update
This commit is contained in:
@@ -1,4 +1,8 @@
|
|||||||
@import "tailwindcss";
|
@import "tailwindcss";
|
||||||
|
@plugin "@tailwindcss/typography";
|
||||||
|
@plugin "@tailwindcss/forms";
|
||||||
|
|
||||||
|
@custom-variant dark (&:where(.dark, .dark *));
|
||||||
/* @import "tailwindcss/preflight";
|
/* @import "tailwindcss/preflight";
|
||||||
@tailwind utilities; */
|
@tailwind utilities; */
|
||||||
/* @import url("https://fonts.rhen.cloud/maplemono-cn-regular/result.css"); */
|
/* @import url("https://fonts.rhen.cloud/maplemono-cn-regular/result.css"); */
|
||||||
|
|||||||
@@ -4,6 +4,7 @@
|
|||||||
<!-- 一言 -->
|
<!-- 一言 -->
|
||||||
<p v-if="showHitokoto && quote" class="text-text-muted text-sm m-0 italic">
|
<p v-if="showHitokoto && quote" class="text-text-muted text-sm m-0 italic">
|
||||||
「{{ quote }}」<span v-if="from" class="ml-1.5">—— {{ from }}</span>
|
「{{ quote }}」<span v-if="from" class="ml-1.5">—— {{ from }}</span>
|
||||||
|
<span v-if="from && fromWho" class="ml-1.5"> · {{ fromWho }}</span>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<!-- 访问统计 -->
|
<!-- 访问统计 -->
|
||||||
@@ -61,6 +62,7 @@ const contact = siteConfig.footer || {};
|
|||||||
const config = useRuntimeConfig();
|
const config = useRuntimeConfig();
|
||||||
const quote = ref("");
|
const quote = ref("");
|
||||||
const from = ref("");
|
const from = ref("");
|
||||||
|
const fromWho = ref("");
|
||||||
const pageviews = ref(0);
|
const pageviews = ref(0);
|
||||||
const visitors = ref(0);
|
const visitors = ref(0);
|
||||||
const statsError = ref(true);
|
const statsError = ref(true);
|
||||||
@@ -86,8 +88,10 @@ const fetchHitokoto = async () => {
|
|||||||
try {
|
try {
|
||||||
const resp = await fetch(buildHitokotoUrl());
|
const resp = await fetch(buildHitokotoUrl());
|
||||||
const data = await resp.json();
|
const data = await resp.json();
|
||||||
|
console.log(data);
|
||||||
quote.value = data.hitokoto || "";
|
quote.value = data.hitokoto || "";
|
||||||
from.value = data.from || "";
|
from.value = data.from || "";
|
||||||
|
fromWho.value = data.from_who || "";
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.warn("Hitokoto fetch failed", e);
|
console.warn("Hitokoto fetch failed", e);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,7 +18,6 @@ const formattedData = computed(() => {
|
|||||||
description: articles.description || "no-description available",
|
description: articles.description || "no-description available",
|
||||||
image: meta.image || "/not-found.jpg",
|
image: meta.image || "/not-found.jpg",
|
||||||
alt: meta.alt || "no alter data available",
|
alt: meta.alt || "no alter data available",
|
||||||
ogImage: meta.ogImage || "/not-found.jpg",
|
|
||||||
date: meta.date || "not-date-available",
|
date: meta.date || "not-date-available",
|
||||||
tags: meta.tags || [],
|
tags: meta.tags || [],
|
||||||
published: meta.published || false,
|
published: meta.published || false,
|
||||||
@@ -106,7 +105,6 @@ defineOgImage({
|
|||||||
:description="post.description"
|
:description="post.description"
|
||||||
:image="post.image"
|
:image="post.image"
|
||||||
:alt="post.alt"
|
:alt="post.alt"
|
||||||
:og-image="post.ogImage"
|
|
||||||
:tags="post.tags"
|
:tags="post.tags"
|
||||||
:published="post.published" />
|
:published="post.published" />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
20278
package-lock.json
generated
20278
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
90
package.json
90
package.json
@@ -1,6 +1,11 @@
|
|||||||
{
|
{
|
||||||
"name": "cloud-blog",
|
"name": "cloud-blog",
|
||||||
"private": false,
|
"author": {
|
||||||
|
"name": "RhenCloud",
|
||||||
|
"email": "i@rhen.cloud",
|
||||||
|
"url": "https://rhen.cloud"
|
||||||
|
},
|
||||||
|
"private": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"build": "nuxt build",
|
"build": "nuxt build",
|
||||||
@@ -13,49 +18,46 @@
|
|||||||
"format": "prettier --check ./",
|
"format": "prettier --check ./",
|
||||||
"format:fix": "prettier --write ./"
|
"format:fix": "prettier --write ./"
|
||||||
},
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "24.12.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@formkit/auto-animate": "0.9.0",
|
||||||
|
"@nuxt/content": "3.8.2",
|
||||||
|
"@nuxt/fonts": "0.12.1",
|
||||||
|
"@nuxt/icon": "2.1.1",
|
||||||
|
"@nuxt/image": "2.0.0",
|
||||||
|
"@nuxtjs/color-mode": "4.0.0",
|
||||||
|
"@nuxtjs/robots": "5.6.7",
|
||||||
|
"@nuxtjs/sitemap": "7.5.0",
|
||||||
|
"feed": "5.1.0",
|
||||||
|
"nuxt": "4.2.2",
|
||||||
|
"nuxt-og-image": "5.1.13",
|
||||||
|
"vue": "3.5.26"
|
||||||
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@formkit/auto-animate": "^0.9.0",
|
"@iconify-json/fa": "1.2.2",
|
||||||
"@iconify-json/bi": "^1.2.7",
|
"@iconify-json/fa-brands": "1.2.2",
|
||||||
"@iconify-json/fa": "^1.2.2",
|
"@iconify-json/fa-solid": "1.2.2",
|
||||||
"@iconify-json/fa-brands": "^1.2.2",
|
"@iconify-json/heroicons": "1.2.3",
|
||||||
"@iconify-json/fa-solid": "^1.2.2",
|
"@iconify-json/heroicons-outline": "1.2.1",
|
||||||
"@iconify-json/heroicons": "^1.2.3",
|
"@iconify-json/mdi": "1.2.3",
|
||||||
"@iconify-json/heroicons-outline": "^1.2.1",
|
"@iconify-json/noto": "1.2.7",
|
||||||
"@iconify-json/heroicons-solid": "^1.2.1",
|
"@iconify-json/simple-icons": "1.2.63",
|
||||||
"@iconify-json/mdi": "^1.2.3",
|
"@iconify-json/svg-spinners": "1.2.4",
|
||||||
"@iconify-json/noto": "^1.2.7",
|
"@nuxt/eslint": "1.12.1",
|
||||||
"@iconify-json/svg-spinners": "^1.2.4",
|
"@tailwindcss/forms": "0.5.11",
|
||||||
"@nuxt/content": "^3.8.2",
|
"@tailwindcss/postcss": "4.1.18",
|
||||||
"@nuxt/eslint": "^1.12.1",
|
"@tailwindcss/typography": "0.5.19",
|
||||||
"@nuxt/fonts": "^0.12.1",
|
"@tailwindcss/vite": "4.1.18",
|
||||||
"@nuxt/icon": "^2.1.1",
|
"@vueuse/core": "14.1.0",
|
||||||
"@nuxt/image": "^2.0.0",
|
"@vueuse/nuxt": "14.1.0",
|
||||||
"@nuxtjs/color-mode": "^4.0.0",
|
"eslint": "9.39.2",
|
||||||
"@nuxtjs/robots": "^5.6.7",
|
"eslint-config-prettier": "10.1.8",
|
||||||
"@nuxtjs/sitemap": "^7.5.0",
|
"eslint-plugin-prettier": "5.5.4",
|
||||||
"@nuxtjs/tailwindcss": "^6.14.0",
|
"postcss": "8.5.6",
|
||||||
"@tailwindcss/forms": "^0.5.11",
|
"prettier": "3.7.4",
|
||||||
"@tailwindcss/postcss": "^4.1.18",
|
"tailwindcss": "4.1.18",
|
||||||
"@tailwindcss/typography": "^0.5.19",
|
"typescript": "5.9.3"
|
||||||
"@tailwindcss/vite": "^4.1.18",
|
|
||||||
"@typescript-eslint/parser": "^8.50.0",
|
|
||||||
"@vueuse/core": "^14.1.0",
|
|
||||||
"@vueuse/nuxt": "^14.1.0",
|
|
||||||
"baseline-browser-mapping": "^2.9.10",
|
|
||||||
"eslint": "^9.39.2",
|
|
||||||
"eslint-config-prettier": "^10.1.8",
|
|
||||||
"eslint-plugin-prettier": "^5.5.4",
|
|
||||||
"feed": "^5.1.0",
|
|
||||||
"fuse.js": "^7.1.0",
|
|
||||||
"nuxt": "^4.2.2",
|
|
||||||
"nuxt-og-image": "^5.1.13",
|
|
||||||
"postcss": "^8.5.6",
|
|
||||||
"prettier": "^3.7.4",
|
|
||||||
"prettier-eslint": "^16.4.2",
|
|
||||||
"remark-github": "^12.0.0",
|
|
||||||
"tailwindcss": "^4.1.18",
|
|
||||||
"typescript": "^5.9.3",
|
|
||||||
"unenv": "^1.10.0",
|
|
||||||
"vue": "^3.5.26"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
13580
pnpm-lock.yaml
generated
13580
pnpm-lock.yaml
generated
File diff suppressed because it is too large
Load Diff
@@ -1,6 +0,0 @@
|
|||||||
onlyBuiltDependencies:
|
|
||||||
- "@parcel/watcher"
|
|
||||||
- better-sqlite3
|
|
||||||
- esbuild
|
|
||||||
- sharp
|
|
||||||
- unrs-resolver
|
|
||||||
@@ -10,18 +10,19 @@ export default defineEventHandler(async () => {
|
|||||||
platform = { name: "Netlify", icon: "simple-icons:netlify" };
|
platform = { name: "Netlify", icon: "simple-icons:netlify" };
|
||||||
} else if (process.env.CF_PAGES) {
|
} else if (process.env.CF_PAGES) {
|
||||||
platform = { name: "Cloudflare", icon: "simple-icons:cloudflare" };
|
platform = { name: "Cloudflare", icon: "simple-icons:cloudflare" };
|
||||||
} else if (process.env.GITHUB_ACTIONS) {
|
|
||||||
platform = { name: "GitHub Actions", icon: "simple-icons:githubactions" };
|
|
||||||
} else if (process.env.EDGEONE) {
|
} else if (process.env.EDGEONE) {
|
||||||
platform = { name: "Tencent EdgeOne", icon: "simple-icons:tencentcloud" };
|
platform = { name: "Tencent EdgeOne", icon: "simple-icons:tencentcloud" };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const deps = pkg.dependencies as Record<string, string> | undefined;
|
||||||
|
const devDeps = pkg.devDependencies as Record<string, string> | undefined;
|
||||||
|
|
||||||
return {
|
return {
|
||||||
platform,
|
platform,
|
||||||
versions: {
|
versions: {
|
||||||
vue: pkg.devDependencies.vue,
|
vue: deps?.vue ?? devDeps?.vue,
|
||||||
nuxt: nuxtVersion,
|
nuxt: nuxtVersion,
|
||||||
content: pkg.devDependencies["@nuxt/content"],
|
content: deps?.["@nuxt/content"] ?? devDeps?.["@nuxt/content"],
|
||||||
node: process.version,
|
node: process.version,
|
||||||
os: process.platform,
|
os: process.platform,
|
||||||
arch: process.arch,
|
arch: process.arch,
|
||||||
|
|||||||
Reference in New Issue
Block a user