chore: Update package dependencies and optimize imports
This commit is contained in:
parent
e16fb88c08
commit
01be05c0fc
16
.github/FUNDING.yml
vendored
16
.github/FUNDING.yml
vendored
@ -1,14 +1,2 @@
|
||||
# These are supported funding model platforms
|
||||
|
||||
github: ccbikai # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
|
||||
patreon: # Replace with a single Patreon username
|
||||
open_collective: # Replace with a single Open Collective username
|
||||
ko_fi: # Replace with a single Ko-fi username
|
||||
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
|
||||
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
|
||||
liberapay: # Replace with a single Liberapay username
|
||||
issuehunt: # Replace with a single IssueHunt username
|
||||
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
|
||||
polar: # Replace with a single Polar username
|
||||
buy_me_a_coffee: ccbikai # Replace with a single Buy Me a Coffee username
|
||||
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
|
||||
github: ccbikai
|
||||
buy_me_a_coffee: ccbikai
|
||||
|
||||
2
app.vue
2
app.vue
@ -1,7 +1,7 @@
|
||||
<script setup>
|
||||
const { title, description, image } = useAppConfig()
|
||||
useSeoMeta({
|
||||
title: title + ' - ' + description,
|
||||
title: `${title} - ${description}`,
|
||||
description,
|
||||
ogType: 'website',
|
||||
ogTitle: title,
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
<script setup>
|
||||
import { Sun, Moon, Laptop } from 'lucide-vue-next'
|
||||
import { Laptop, Moon, Sun } from 'lucide-vue-next'
|
||||
|
||||
const colorMode = useColorMode()
|
||||
</script>
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
<script setup>
|
||||
// https://vue3-simple-icons.wyatt-herkamp.dev/
|
||||
import {
|
||||
AppleIcon,
|
||||
AndroidIcon,
|
||||
AppleIcon,
|
||||
DebianIcon,
|
||||
FacebookIcon,
|
||||
FirefoxBrowserIcon,
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
<script setup>
|
||||
import { Link, AreaChart, ServerOff, Paintbrush, Sparkles, Hourglass } from 'lucide-vue-next'
|
||||
import { AreaChart, Hourglass, Link, Paintbrush, ServerOff, Sparkles } from 'lucide-vue-next'
|
||||
|
||||
const features = ref([
|
||||
{
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
<script setup>
|
||||
import { GmailIcon, TelegramIcon, BloggerIcon, XIcon, MastodonIcon, GitHubIcon } from 'vue3-simple-icons'
|
||||
import { BloggerIcon, GitHubIcon, GmailIcon, MastodonIcon, TelegramIcon, XIcon } from 'vue3-simple-icons'
|
||||
|
||||
const email = ref(null)
|
||||
onMounted(() => {
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
// @ts-check
|
||||
// import antfu from '@antfu/eslint-config'
|
||||
import antfu from '@antfu/eslint-config'
|
||||
import withNuxt from './.nuxt/eslint.config.mjs'
|
||||
|
||||
export default withNuxt(
|
||||
// antfu(),
|
||||
antfu(),
|
||||
{
|
||||
ignores: ['components/ui'],
|
||||
ignores: ['components/ui', '.data', 'public/world.json'],
|
||||
},
|
||||
{
|
||||
rules: {
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
// https://nuxt.com/docs/api/configuration/nuxt-config
|
||||
export default defineNuxtConfig({
|
||||
devtools: { enabled: true },
|
||||
|
||||
modules: [
|
||||
'@nuxthub/core',
|
||||
'shadcn-nuxt',
|
||||
@ -8,9 +9,11 @@ export default defineNuxtConfig({
|
||||
'@nuxtjs/tailwindcss',
|
||||
'@nuxtjs/color-mode',
|
||||
],
|
||||
|
||||
colorMode: {
|
||||
classSuffix: '',
|
||||
},
|
||||
|
||||
routeRules: {
|
||||
'/': {
|
||||
prerender: true,
|
||||
@ -19,25 +22,30 @@ export default defineNuxtConfig({
|
||||
ssr: false,
|
||||
},
|
||||
},
|
||||
|
||||
hub: {
|
||||
// ai: true,
|
||||
analytics: true,
|
||||
blob: false,
|
||||
cache: false,
|
||||
database: false,
|
||||
kv: true,
|
||||
// ai: true,
|
||||
},
|
||||
|
||||
eslint: {
|
||||
config: {
|
||||
stylistic: true,
|
||||
standalone: false,
|
||||
},
|
||||
},
|
||||
|
||||
nitro: {
|
||||
experimental: {
|
||||
// Enable Server API documentation within NuxtHub
|
||||
openAPI: true,
|
||||
},
|
||||
},
|
||||
|
||||
runtimeConfig: {
|
||||
siteToken: 'SinkCool',
|
||||
redirectStatusCode: '301',
|
||||
@ -52,4 +60,6 @@ export default defineNuxtConfig({
|
||||
slugDefaultLength: '6',
|
||||
},
|
||||
},
|
||||
|
||||
compatibilityDate: '2024-07-08',
|
||||
})
|
||||
44
package.json
44
package.json
@ -3,7 +3,10 @@
|
||||
"type": "module",
|
||||
"version": "0.1.2",
|
||||
"private": true,
|
||||
"packageManager": "pnpm@9.1.2",
|
||||
"packageManager": "pnpm@9.5.0",
|
||||
"engines": {
|
||||
"node": ">=20.11"
|
||||
},
|
||||
"scripts": {
|
||||
"dev": "nuxt dev",
|
||||
"build": "nuxt build",
|
||||
@ -17,46 +20,43 @@
|
||||
"wrangler": "wrangler",
|
||||
"lint-staged": "lint-staged"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=20.11"
|
||||
},
|
||||
"dependencies": {
|
||||
"@unovis/ts": "^1.4.1",
|
||||
"@unovis/vue": "^1.4.1",
|
||||
"@vee-validate/zod": "^4.12.8",
|
||||
"@vueuse/core": "^10.9.0",
|
||||
"@unovis/ts": "^1.4.2",
|
||||
"@unovis/vue": "^1.4.2",
|
||||
"@vee-validate/zod": "^4.13.2",
|
||||
"@vueuse/core": "^10.11.0",
|
||||
"intl-parse-accept-language": "^1.0.0",
|
||||
"lucide-vue-next": "^0.379.0",
|
||||
"lucide-vue-next": "^0.401.0",
|
||||
"mysql-bricks": "^1.1.2",
|
||||
"nanoid": "^5.0.7",
|
||||
"pluralize": "^8.0.0",
|
||||
"qr-code-styling": "1.6.0-rc.1",
|
||||
"radix-vue": "^1.8.1",
|
||||
"radix-vue": "^1.9.0",
|
||||
"ua-parser-js": "next",
|
||||
"vee-validate": "^4.12.8",
|
||||
"virtua": "^0.31.0",
|
||||
"vue-sonner": "^1.1.2",
|
||||
"vue3-simple-icons": "^11.13.0",
|
||||
"vee-validate": "^4.13.2",
|
||||
"virtua": "^0.33.2",
|
||||
"vue-sonner": "^1.1.3",
|
||||
"vue3-simple-icons": "^12.0.0",
|
||||
"zod": "^3.23.8"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@antfu/eslint-config": "^2.18.1",
|
||||
"@antfu/eslint-config": "^2.21.3",
|
||||
"@nuxt/eslint": "^0.3.13",
|
||||
"@nuxt/eslint-config": "^0.3.13",
|
||||
"@nuxthub/core": "^0.5.17",
|
||||
"@nuxtjs/color-mode": "^3.4.1",
|
||||
"@nuxthub/core": "^0.7.0",
|
||||
"@nuxtjs/color-mode": "^3.4.2",
|
||||
"@nuxtjs/tailwindcss": "^6.12.0",
|
||||
"class-variance-authority": "^0.7.0",
|
||||
"clsx": "^2.1.1",
|
||||
"eslint": "^8.57.0",
|
||||
"lint-staged": "^15.2.4",
|
||||
"nuxt": "^3.11.2",
|
||||
"lint-staged": "^15.2.7",
|
||||
"nuxt": "^3.12.3",
|
||||
"shadcn-nuxt": "^0.10.4",
|
||||
"simple-git-hooks": "^2.11.1",
|
||||
"tailwind-merge": "^2.3.0",
|
||||
"tailwind-merge": "^2.4.0",
|
||||
"tailwindcss-animate": "^1.0.7",
|
||||
"vue-tsc": "^2.0.19",
|
||||
"wrangler": "^3.57.1"
|
||||
"vue-tsc": "^2.0.26",
|
||||
"wrangler": "^3.63.1"
|
||||
},
|
||||
"simple-git-hooks": {
|
||||
"pre-commit": "npm run lint-staged"
|
||||
|
||||
@ -17,10 +17,11 @@ async function getLink() {
|
||||
}
|
||||
|
||||
function updateLink(link, type) {
|
||||
if (type === 'delete')
|
||||
if (type === 'delete') {
|
||||
navigateTo('/dashboard/links', {
|
||||
replace: true,
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
|
||||
5366
pnpm-lock.yaml
5366
pnpm-lock.yaml
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,5 @@
|
||||
import { writeFileSync } from 'fs'
|
||||
import { join } from 'path'
|
||||
import { writeFileSync } from 'node:fs'
|
||||
import { join } from 'node:path'
|
||||
import { WorldMapSimplestTopoJSON } from '@unovis/ts/maps.js'
|
||||
|
||||
writeFileSync(join(import.meta.dirname, '../public/world.json'), JSON.stringify(WorldMapSimplestTopoJSON), 'utf8')
|
||||
|
||||
@ -2,11 +2,12 @@ import type { H3Event } from 'h3'
|
||||
import { parseURL } from 'ufo'
|
||||
import { UAParser } from 'ua-parser-js'
|
||||
import {
|
||||
Apps,
|
||||
Bots,
|
||||
CLIs,
|
||||
Crawlers,
|
||||
Emails,
|
||||
ExtraDevices,
|
||||
Fetchers,
|
||||
InApps,
|
||||
MediaPlayers,
|
||||
Modules,
|
||||
} from 'ua-parser-js/extensions'
|
||||
@ -68,7 +69,7 @@ export function useAccessLog(event: H3Event) {
|
||||
|
||||
const userAgent = getHeader(event, 'user-agent') || ''
|
||||
const uaInfo = (new UAParser(userAgent, {
|
||||
browser: [Apps.browser || [], Bots.browser || [], CLIs.browser || [], Emails.browser || [], MediaPlayers.browser || [], Modules.browser || []].flat(),
|
||||
browser: [Crawlers.browser || [], CLIs.browser || [], Emails.browser || [], Fetchers.browser || [], InApps.browser || [], MediaPlayers.browser || [], Modules.browser || []].flat(),
|
||||
device: [ExtraDevices.device || []].flat(),
|
||||
})).getResult()
|
||||
|
||||
@ -90,7 +91,6 @@ export function useAccessLog(event: H3Event) {
|
||||
language,
|
||||
os: uaInfo?.os?.name,
|
||||
browser: uaInfo?.browser?.name,
|
||||
// @ts-expect-error todo
|
||||
browserType: uaInfo?.browser?.type,
|
||||
device: uaInfo?.device?.model,
|
||||
deviceType: uaInfo?.device?.type,
|
||||
|
||||
Loading…
Reference in New Issue
Block a user