@dargmuesli/nuxt-vio 11.0.0-beta.1 → 11.0.0-beta.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -16,7 +16,7 @@
16
16
  </template>
17
17
 
18
18
  <script setup lang="ts">
19
- import type { Locale } from '@dargmuesli/nuxt-cookie-control/dist/runtime/types'
19
+ import type { Locale } from '@dargmuesli/nuxt-cookie-control/runtime/types'
20
20
  import type { WritableComputedRef } from 'vue'
21
21
 
22
22
  const i18n = useI18n()
@@ -6,11 +6,12 @@ export const useAppLayout = () => {
6
6
  ...useLocaleHead({ addDirAttribute: true, addSeoAttributes: true }).value,
7
7
  bodyAttrs: {
8
8
  class:
9
- 'bg-background-bright dark:bg-background-dark font-sans text-text-dark dark:text-text-bright',
9
+ 'bg-background-bright dark:bg-background-dark text-text-dark dark:text-text-bright',
10
10
  },
11
11
  })
12
12
 
13
- useServerSeoMeta({
13
+ // TODO: convert to `useServerHeadSafe` (https://github.com/harlan-zw/nuxt-seo-kit/issues/98)
14
+ useSeoMeta({
14
15
  titleTemplate: (title) =>
15
16
  TITLE_TEMPLATE({
16
17
  siteName: siteConfig.name,
@@ -1,27 +1,26 @@
1
- import { defu } from 'defu'
2
1
  import type { UseSeoMetaInput } from '@unhead/vue'
3
2
 
4
- export const useHeadDefault = ({
5
- extension,
6
- title,
7
- }: {
8
- extension?: UseSeoMetaInput
9
- title: string | ComputedRef<string>
10
- }) => {
3
+ export const useHeadDefault = (input: UseSeoMetaInput) => {
11
4
  const siteConfig = useSiteConfig()
12
5
 
13
- const defaults: UseSeoMetaInput = {
14
- description: siteConfig.description,
15
- msapplicationConfig: `/assets/static/favicon/browserconfig.xml?v=${CACHE_VERSION}`,
16
- title,
17
- twitterDescription: siteConfig.description,
18
- twitterTitle: ref(
19
- TITLE_TEMPLATE({
6
+ const description = input.description || siteConfig.description // TODO: remove site configuration fallback (https://github.com/harlan-zw/nuxt-site-config/issues/26)
7
+ const title = input.title
8
+ ? TITLE_TEMPLATE({
20
9
  siteName: siteConfig.name,
21
- title: toValue(title),
22
- }),
23
- ), // TODO: remove `ref`
24
- }
10
+ title: input.title.toString(),
11
+ })
12
+ : siteConfig.name
25
13
 
26
- useServerSeoMeta(defu(extension, defaults))
14
+ useServerSeoMeta({
15
+ ...(description
16
+ ? {
17
+ description,
18
+ ogDescription: description,
19
+ twitterDescription: siteConfig.description,
20
+ }
21
+ : {}),
22
+ msapplicationConfig: `/assets/static/favicon/browserconfig.xml?v=${CACHE_VERSION}`,
23
+ ...(title ? { title, ogTitle: title, twitterTitle: title } : {}),
24
+ ...input,
25
+ })
27
26
  }
package/nuxt.config.ts CHANGED
@@ -16,10 +16,6 @@ const currentDir = dirname(fileURLToPath(import.meta.url))
16
16
  export default defineNuxtConfig(
17
17
  defu(
18
18
  {
19
- alias: {
20
- dayjs: 'dayjs',
21
- sweetalert2: 'sweetalert2',
22
- }, // TODO: remove (https://github.com/nuxt/nuxt/issues/19426)
23
19
  app: {
24
20
  head: {
25
21
  htmlAttrs: {
@@ -103,13 +99,11 @@ export default defineNuxtConfig(
103
99
  typescript: {
104
100
  shim: false,
105
101
  strict: true,
106
- tsConfig: {
107
- compilerOptions: {
108
- esModuleInterop: true,
109
- // moduleResolution: 'bundler',
110
- // noErrorTruncation: true,
111
- },
112
- },
102
+ // tsConfig: {
103
+ // compilerOptions: {
104
+ // noErrorTruncation: true,
105
+ // },
106
+ // },
113
107
  },
114
108
 
115
109
  // modules
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dargmuesli/nuxt-vio",
3
- "version": "11.0.0-beta.1",
3
+ "version": "11.0.0-beta.3",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/dargmuesli/vio.git"
@@ -12,7 +12,7 @@
12
12
  "engines": {
13
13
  "node": "20"
14
14
  },
15
- "packageManager": "pnpm@8.14.3",
15
+ "packageManager": "pnpm@8.15.4",
16
16
  "files": [
17
17
  "assets",
18
18
  "components",
@@ -38,70 +38,70 @@
38
38
  "@heroicons/vue": "2.1.1",
39
39
  "@http-util/status-i18n": "0.8.1",
40
40
  "@nuxt/devtools": "1.0.8",
41
- "@nuxt/image": "1.3.0",
41
+ "@nuxt/image": "1.4.0",
42
42
  "@nuxtjs/color-mode": "3.3.2",
43
43
  "@nuxtjs/html-validator": "1.6.0",
44
- "@nuxtjs/i18n": "8.0.0",
45
- "@nuxtjs/seo": "2.0.0-rc.5",
46
- "@nuxtjs/tailwindcss": "6.11.0",
44
+ "@nuxtjs/i18n": "8.1.1",
45
+ "@nuxtjs/seo": "2.0.0-rc.8",
46
+ "@nuxtjs/tailwindcss": "6.11.4",
47
47
  "@pinia/nuxt": "0.5.1",
48
48
  "@tailwindcss/forms": "0.5.7",
49
49
  "@tailwindcss/typography": "0.5.10",
50
50
  "@types/lodash-es": "4.17.12",
51
- "@urql/core": "4.2.3",
51
+ "@urql/core": "4.3.0",
52
52
  "@vuelidate/core": "2.0.3",
53
53
  "@vuelidate/validators": "2.0.4",
54
54
  "clipboardy": "4.0.0",
55
55
  "dayjs": "2.0.0-alpha.4",
56
- "jose": "5.2.0",
57
- "nuxt-security": "1.0.1",
58
- "sweetalert2": "11.10.4",
56
+ "jose": "5.2.3",
57
+ "nuxt-security": "1.2.2",
58
+ "sweetalert2": "11.10.6",
59
59
  "vue-gtag": "2.0.1"
60
60
  },
61
61
  "devDependencies": {
62
- "@axe-core/playwright": "4.8.3",
63
- "@intlify/eslint-plugin-vue-i18n": "3.0.0-next.5",
62
+ "@axe-core/playwright": "4.8.5",
63
+ "@intlify/eslint-plugin-vue-i18n": "3.0.0-next.7",
64
64
  "@nuxtjs/eslint-config-typescript": "12.1.0",
65
- "@playwright/test": "1.41.1",
66
- "@unhead/vue": "1.8.10",
65
+ "@playwright/test": "1.42.1",
66
+ "@unhead/vue": "1.8.12",
67
67
  "@urql/devtools": "2.0.3",
68
- "@urql/exchange-graphcache": "6.4.0",
68
+ "@urql/exchange-graphcache": "6.5.0",
69
69
  "@urql/vue": "1.1.2",
70
70
  "consola": "3.2.3",
71
71
  "cookie-es": "1.0.0",
72
72
  "cross-env": "7.0.3",
73
73
  "defu": "6.1.4",
74
- "eslint": "8.56.0",
74
+ "eslint": "8.57.0",
75
75
  "eslint-config-prettier": "9.1.0",
76
76
  "eslint-plugin-compat": "4.2.0",
77
77
  "eslint-plugin-nuxt": "4.0.0",
78
78
  "eslint-plugin-prettier": "5.1.3",
79
79
  "eslint-plugin-yml": "1.12.2",
80
- "h3": "1.10.0",
80
+ "h3": "1.11.1",
81
81
  "jiti": "1.21.0",
82
- "lint-staged": "15.2.0",
82
+ "lint-staged": "15.2.2",
83
83
  "lodash-es": "4.17.21",
84
- "nuxt": "3.9.3",
84
+ "nuxt": "3.10.3",
85
85
  "pinia": "2.1.7",
86
- "prettier": "3.2.4",
87
- "prettier-plugin-tailwindcss": "0.5.11",
86
+ "prettier": "3.2.5",
87
+ "prettier-plugin-tailwindcss": "0.5.12",
88
88
  "serve": "14.2.1",
89
- "stylelint": "16.2.0",
89
+ "stylelint": "16.2.1",
90
90
  "stylelint-config-recommended-vue": "1.5.0",
91
91
  "stylelint-config-standard": "36.0.0",
92
- "stylelint-no-unsupported-browser-features": "8.0.0",
92
+ "stylelint-no-unsupported-browser-features": "8.0.1",
93
93
  "tailwindcss": "3.4.1",
94
- "ufo": "1.3.2",
95
- "unhead": "1.8.10",
96
- "vue": "3.4.15",
97
- "vue-router": "4.2.5",
98
- "vue-tsc": "1.8.27"
94
+ "ufo": "1.4.0",
95
+ "unhead": "1.8.12",
96
+ "vue": "3.4.21",
97
+ "vue-router": "4.3.0",
98
+ "vue-tsc": "2.0.6"
99
99
  },
100
100
  "peerDependencies": {
101
- "nuxt": "3.9.3",
102
- "playwright-core": "1.41.1",
103
- "vue": "3.4.15",
104
- "vue-router": "4.2.5"
101
+ "nuxt": "3.10.3",
102
+ "playwright-core": "1.42.1",
103
+ "vue": "3.4.21",
104
+ "vue-router": "4.3.0"
105
105
  },
106
106
  "scripts": {
107
107
  "build": "pnpm run build:node",
@@ -49,7 +49,7 @@ export const TITLE_TEMPLATE = ({
49
49
  title,
50
50
  }: {
51
51
  siteName: string
52
- title?: string
52
+ title?: string | null
53
53
  }) => (title && title !== siteName ? `${title} · ${siteName}` : siteName)
54
54
  export const VERIFICATION_FORMAT_UUID = helpers.regex(REGEX_UUID)
55
55
  export const VIO_NUXT_BASE_CONFIG = ({