@dargmuesli/nuxt-vio 9.0.1 → 9.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. package/nuxt.config.ts +25 -20
  2. package/package.json +22 -22
package/nuxt.config.ts CHANGED
@@ -89,6 +89,9 @@ export default defineNuxtConfig(
89
89
  },
90
90
  runtimeConfig: {
91
91
  public: {
92
+ i18n: {
93
+ baseUrl: SITE_URL,
94
+ },
92
95
  vio: {
93
96
  googleAnalyticsId: '',
94
97
  isInProduction: process.env.NODE_ENV === 'production',
@@ -159,11 +162,10 @@ export default defineNuxtConfig(
159
162
  locales: ['en', 'de'],
160
163
  },
161
164
  htmlValidator: {
162
- failOnError: true,
165
+ // failOnError: true, // TODO: enable once headers match requirements (https://github.com/unjs/unhead/issues/199#issuecomment-1815728703)
163
166
  logLevel: 'warning',
164
167
  },
165
168
  i18n: {
166
- baseUrl: SITE_URL,
167
169
  detectBrowserLanguage: false,
168
170
  },
169
171
  linkChecker: {
@@ -180,9 +182,7 @@ export default defineNuxtConfig(
180
182
  ...(process.env.NODE_ENV === 'production'
181
183
  ? {
182
184
  'connect-src': ["'self'"], // `${SITE_URL}/cdn-cgi/rum`
183
- 'script-src-elem': [
184
- 'https://static.cloudflareinsights.com',
185
- ],
185
+ 'script-src': ['https://static.cloudflareinsights.com'], // TODO: replace with `script-src-elem` once Webkit supports it (https://caniuse.com/mdn-http_headers_content-security-policy_script-src-elem)
186
186
  }
187
187
  : {}),
188
188
  },
@@ -197,15 +197,15 @@ export default defineNuxtConfig(
197
197
  'https://*.google-analytics.com',
198
198
  'https://*.googletagmanager.com',
199
199
  ],
200
- 'script-src-elem': ['https://*.googletagmanager.com'],
200
+ 'script-src': ['https://*.googletagmanager.com'], // TODO: replace with `script-src-elem` once Webkit supports it (https://caniuse.com/mdn-http_headers_content-security-policy_script-src-elem)
201
201
  },
202
202
  {
203
203
  // vio
204
204
  'connect-src': ["'self'"], // `${SITE_URL}/api/healthcheck`
205
205
  'manifest-src': [`${SITE_URL}/site.webmanifest`],
206
- 'script-src-elem': [
206
+ 'script-src': [
207
207
  'https://polyfill.io/v3/polyfill.min.js', // ESLint plugin compat
208
- ],
208
+ ], // TODO: replace with `script-src-elem` once Webkit supports it (https://caniuse.com/mdn-http_headers_content-security-policy_script-src-elem)
209
209
  },
210
210
  {
211
211
  // @nuxt/devtools
@@ -217,6 +217,14 @@ export default defineNuxtConfig(
217
217
  }
218
218
  : {}),
219
219
  },
220
+ {
221
+ // nuxt-i18n
222
+ ...(process.env.NODE_ENV === 'development'
223
+ ? {}
224
+ : {
225
+ 'script-src': ["'self'"], // 'http://localhost:3000/_nuxt/i18n.config.*.js' // TOD: add with subresource integrity?
226
+ }),
227
+ },
220
228
  {
221
229
  // nuxt-link-checker
222
230
  ...(process.env.NODE_ENV === 'development'
@@ -232,7 +240,7 @@ export default defineNuxtConfig(
232
240
  'font-src': ['https://fonts.gstatic.com/s/inter/'],
233
241
  'frame-ancestors': ["'self'"],
234
242
  'frame-src': ["'self'"],
235
- 'script-src-elem': ['https://cdn.tailwindcss.com/'],
243
+ 'script-src': ['https://cdn.tailwindcss.com/'], // TODO: replace with `script-src-elem` once Webkit supports it (https://caniuse.com/mdn-http_headers_content-security-policy_script-src-elem)
236
244
  'style-src': [
237
245
  // TODO: replace with `style-src-elem` once Webkit supports it
238
246
  'https://cdn.jsdelivr.net/npm/gardevoir https://fonts.googleapis.com/css2',
@@ -242,7 +250,7 @@ export default defineNuxtConfig(
242
250
  },
243
251
  {
244
252
  // nuxt-simple-sitemap
245
- 'script-src-elem': [`${SITE_URL}/__sitemap__/style.xsl`],
253
+ 'script-src': [`${SITE_URL}/__sitemap__/style.xsl`], // TODO: replace with `script-src-elem` once Webkit supports it (https://caniuse.com/mdn-http_headers_content-security-policy_script-src-elem)
246
254
  },
247
255
  {
248
256
  // nuxt
@@ -260,7 +268,7 @@ export default defineNuxtConfig(
260
268
  "'self'", // TODO: replace with `"'nonce-{{nonce}}'",`
261
269
  'data:', // external link icon
262
270
  ],
263
- 'script-src-elem': ["'nonce-{{nonce}}'"],
271
+ 'script-src': ["'nonce-{{nonce}}'"], // TODO: replace with `script-src-elem` once Webkit supports it (https://caniuse.com/mdn-http_headers_content-security-policy_script-src-elem)
264
272
  'style-src': [
265
273
  // TODO: replace with `style-src-elem` once Webkit supports it
266
274
  "'self'", // TODO: replace with `"'nonce-{{nonce}}'",` (https://github.com/vitejs/vite/pull/11864)
@@ -272,9 +280,9 @@ export default defineNuxtConfig(
272
280
  'connect-src': ["'self'"] /* swagger
273
281
  'http://localhost:3000/_nitro/openapi.json',
274
282
  'http://localhost:3000/_nitro/swagger', */,
275
- 'script-src-elem': [
283
+ 'script-src': [
276
284
  'https://cdn.jsdelivr.net/npm/', // swagger // TODO: increase precision (https://github.com/unjs/nitro/issues/1757)
277
- ],
285
+ ], // TODO: replace with `script-src-elem` once Webkit supports it (https://caniuse.com/mdn-http_headers_content-security-policy_script-src-elem)
278
286
  'style-src': [
279
287
  'https://cdn.jsdelivr.net/npm/', // swagger // TODO: increase precision (https://github.com/unjs/nitro/issues/1757)
280
288
  ],
@@ -300,11 +308,11 @@ export default defineNuxtConfig(
300
308
  // 'require-trusted-types-for': ["'script'"], // csp-evaluator
301
309
  sandbox: [],
302
310
  'script-src': [],
303
- 'script-src-attr': [],
304
- 'script-src-elem': [],
311
+ 'script-src-attr': false as const, // TODO: enable once Webkit supports it (https://caniuse.com/mdn-http_headers_content-security-policy_script-src-attr)
312
+ 'script-src-elem': false as const, // TODO: enable once Webkit supports it (https://caniuse.com/mdn-http_headers_content-security-policy_script-src-elem)
305
313
  'style-src': [],
306
- 'style-src-attr': [],
307
- 'style-src-elem': [],
314
+ 'style-src-attr': false as const, // TODO: enable once Webkit supports it (https://caniuse.com/mdn-http_headers_content-security-policy_style-src-attr)
315
+ 'style-src-elem': false as const, // TODO: enable once Webkit supports it (https://caniuse.com/mdn-http_headers_content-security-policy_style-src-elem)
308
316
  'upgrade-insecure-requests': false, // TODO: set to `process.env.NODE_ENV === 'production'` or `true` when tests run on https
309
317
  'worker-src': [],
310
318
  },
@@ -320,9 +328,6 @@ export default defineNuxtConfig(
320
328
  : false,
321
329
  xXSSProtection: '1; mode=block', // TODO: set back to `0` once CSP does not use `unsafe-*` anymore (https://github.com/maevsi/maevsi/issues/1047)
322
330
  },
323
- nonce: {
324
- enabled: true,
325
- },
326
331
  },
327
332
  seo: {
328
333
  splash: false,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dargmuesli/nuxt-vio",
3
- "version": "9.0.1",
3
+ "version": "9.0.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.10.2",
15
+ "packageManager": "pnpm@8.10.5",
16
16
  "files": [
17
17
  "assets",
18
18
  "components",
@@ -34,36 +34,36 @@
34
34
  ],
35
35
  "main": "nuxt.config.ts",
36
36
  "dependencies": {
37
- "@dargmuesli/nuxt-cookie-control": "7.1.1",
37
+ "@dargmuesli/nuxt-cookie-control": "7.1.2",
38
38
  "@heroicons/vue": "2.0.18",
39
39
  "@http-util/status-i18n": "0.8.1",
40
- "@nuxt/devtools": "1.0.0",
40
+ "@nuxt/devtools": "1.0.2",
41
41
  "@nuxt/image": "1.0.0",
42
- "@nuxtjs/color-mode": "3.3.0",
42
+ "@nuxtjs/color-mode": "3.3.2",
43
43
  "@nuxtjs/html-validator": "1.5.2",
44
- "@nuxtjs/i18n": "npm:@nuxtjs/i18n-edge@8.0.0-rc.5-28321928.898d3c8",
45
- "@nuxtjs/tailwindcss": "6.9.4",
46
- "@nuxtseo/module": "2.0.0-beta.39",
44
+ "@nuxtjs/i18n": "npm:@nuxtjs/i18n-edge@8.0.0-rc.5-28335414.dd86b7b",
45
+ "@nuxtjs/tailwindcss": "6.9.5",
46
+ "@nuxtseo/module": "2.0.0-beta.44",
47
47
  "@pinia/nuxt": "0.5.1",
48
- "@tailwindcss/forms": "0.5.6",
48
+ "@tailwindcss/forms": "0.5.7",
49
49
  "@tailwindcss/typography": "0.5.10",
50
- "@types/lodash-es": "4.17.10",
51
- "@urql/core": "4.1.4",
50
+ "@types/lodash-es": "4.17.11",
51
+ "@urql/core": "4.2.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.1.0",
57
- "nuxt-security": "1.0.0-rc.2",
58
- "sweetalert2": "11.9.0",
56
+ "jose": "5.1.1",
57
+ "nuxt-security": "1.0.0-rc.4",
58
+ "sweetalert2": "11.10.0",
59
59
  "vue-gtag": "2.0.1"
60
60
  },
61
61
  "devDependencies": {
62
62
  "@axe-core/playwright": "4.8.1",
63
63
  "@intlify/eslint-plugin-vue-i18n": "3.0.0-next.4",
64
64
  "@nuxtjs/eslint-config-typescript": "12.1.0",
65
- "@playwright/test": "1.39.0",
66
- "@unhead/vue": "1.8.3",
65
+ "@playwright/test": "1.40.0",
66
+ "@unhead/vue": "1.8.4",
67
67
  "@urql/devtools": "2.0.3",
68
68
  "@urql/exchange-graphcache": "6.3.3",
69
69
  "@urql/vue": "1.1.2",
@@ -79,27 +79,27 @@
79
79
  "eslint-plugin-yml": "1.10.0",
80
80
  "h3": "1.8.2",
81
81
  "jiti": "1.21.0",
82
- "lint-staged": "15.0.2",
82
+ "lint-staged": "15.1.0",
83
83
  "lodash-es": "4.17.21",
84
84
  "nuxt": "3.8.1",
85
85
  "pinia": "2.1.7",
86
- "prettier": "3.0.3",
87
- "prettier-plugin-tailwindcss": "0.5.6",
86
+ "prettier": "3.1.0",
87
+ "prettier-plugin-tailwindcss": "0.5.7",
88
88
  "serve": "14.2.1",
89
89
  "stylelint": "15.11.0",
90
90
  "stylelint-config-recommended-vue": "1.5.0",
91
91
  "stylelint-config-standard": "34.0.0",
92
92
  "stylelint-no-unsupported-browser-features": "7.0.0",
93
93
  "tailwindcss": "3.3.5",
94
- "ufo": "1.3.1",
95
- "unhead": "1.8.3",
94
+ "ufo": "1.3.2",
95
+ "unhead": "1.8.4",
96
96
  "vue": "3.3.8",
97
97
  "vue-router": "4.2.5",
98
98
  "vue-tsc": "1.8.22"
99
99
  },
100
100
  "peerDependencies": {
101
- "playwright-core": "1.39.0",
102
101
  "nuxt": "3.8.1",
102
+ "playwright-core": "1.40.0",
103
103
  "vue": "3.3.8",
104
104
  "vue-router": "4.2.5"
105
105
  },