Merge branch 'renovate/npm-nuxt-vulnerability' into 'main'

chore(deps): update dependency nuxt to v4.1.0 [security]

See merge request PronounsPage/PronounsPage!653
This commit is contained in:
Pronouns Page Technical 2025-09-20 22:11:20 +00:00
commit d8d4e3477c
7 changed files with 2517 additions and 3279 deletions

View File

@ -22,8 +22,8 @@ import { getUrlForLocale } from '~/src/domain.ts';
import { useMainStore } from '~/store/index.ts'; import { useMainStore } from '~/store/index.ts';
import type { Config } from '~~/locale/config.ts'; import type { Config } from '~~/locale/config.ts';
interface ProfileFormData extends Omit<Profile, 'birthday' | 'linksMetadata' | 'verifiedLinks' | 'opinions' | interface ProfileFormData extends Omit<Profile, 'birthday' | 'linksMetadata' | 'verifiedLinks' | 'opinions'
'card' | 'cardDark' | 'lastUpdate' | 'id' | 'access'> { | 'card' | 'cardDark' | 'lastUpdate' | 'id' | 'access'> {
birthday: Date | null; birthday: Date | null;
opinions: OpinionFormValue[]; opinions: OpinionFormValue[];
} }

View File

@ -175,7 +175,9 @@ export default withNuxt(
'@stylistic/object-curly-newline': 'warn', '@stylistic/object-curly-newline': 'warn',
'@stylistic/object-property-newline': ['warn', { allowAllPropertiesOnSameLine: true }], '@stylistic/object-property-newline': ['warn', { allowAllPropertiesOnSameLine: true }],
'@stylistic/one-var-declaration-per-line': 'warn', '@stylistic/one-var-declaration-per-line': 'warn',
'@stylistic/operator-linebreak': 'warn', '@stylistic/operator-linebreak': ['warn', 'after', {
overrides: { '?': 'before', ':': 'before', '|': 'before', '&': 'before' },
}],
'@stylistic/switch-colon-spacing': 'warn', '@stylistic/switch-colon-spacing': 'warn',
'@stylistic/generator-star-spacing': ['warn', { '@stylistic/generator-star-spacing': ['warn', {
before: false, before: false,
@ -208,7 +210,9 @@ export default withNuxt(
'vue/no-sparse-arrays': 'warn', 'vue/no-sparse-arrays': 'warn',
'vue/object-curly-newline': 'warn', 'vue/object-curly-newline': 'warn',
'vue/object-shorthand': 'warn', 'vue/object-shorthand': 'warn',
'vue/operator-linebreak': 'warn', 'vue/operator-linebreak': ['warn', 'after', {
overrides: { '?': 'before', ':': 'before', '|': 'before', '&': 'before' },
}],
'vue/prefer-use-template-ref': 'error', 'vue/prefer-use-template-ref': 'error',
'vue/prefer-template': 'warn', 'vue/prefer-template': 'warn',
'vue/require-macro-variable-name': 'error', 'vue/require-macro-variable-name': 'error',

View File

@ -63,7 +63,7 @@
"zh_cn_zh_tw": "^1.0.7" "zh_cn_zh_tw": "^1.0.7"
}, },
"devDependencies": { "devDependencies": {
"@nuxt/eslint": "^1.4.1", "@nuxt/eslint": "^1.9.0",
"@nuxt/test-utils": "^3.19.2", "@nuxt/test-utils": "^3.19.2",
"@nuxtjs/plausible": "^1.2.0", "@nuxtjs/plausible": "^1.2.0",
"@pinia/nuxt": "^0.11.2", "@pinia/nuxt": "^0.11.2",
@ -97,9 +97,9 @@
"avris-vue-share": "^1.0.1", "avris-vue-share": "^1.0.1",
"bootstrap": "^5.3.1", "bootstrap": "^5.3.1",
"chart.js": "4.4.8", "chart.js": "4.4.8",
"eslint": "^9.28.0", "eslint": "^9.36.0",
"eslint-formatter-gitlab": "^6.0.0", "eslint-formatter-gitlab": "^6.0.1",
"eslint-plugin-json-schema-validator": "^5.4.0", "eslint-plugin-json-schema-validator": "^5.4.1",
"eslint-plugin-jsonc": "^2.20.1", "eslint-plugin-jsonc": "^2.20.1",
"eslint-plugin-yml": "^1.18.0", "eslint-plugin-yml": "^1.18.0",
"execa": "^9.5.2", "execa": "^9.5.2",
@ -113,7 +113,7 @@
"markdown-it-sub": "^2.0.0", "markdown-it-sub": "^2.0.0",
"markdown-it-sup": "^2.0.0", "markdown-it-sup": "^2.0.0",
"marked": "^0.7.0", "marked": "^0.7.0",
"nuxt": "^4.0.3", "nuxt": "^4.1.2",
"path-to-regexp": "0.1.12", "path-to-regexp": "0.1.12",
"postcss-rtl": "^2.0.0", "postcss-rtl": "^2.0.0",
"qr-code-styling": "1.6.0-rc.1", "qr-code-styling": "1.6.0-rc.1",

5756
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@ -12,9 +12,9 @@ import type { AuthenticatorRow, UserRow } from '~~/server/express/user.ts';
const getAdminList = defineCachedFunction(async (db: Database, locale: string) => { const getAdminList = defineCachedFunction(async (db: Database, locale: string) => {
const admins = await db.all<Pick< const admins = await db.all<Pick<
UserRow, 'username' | 'id' | 'email' | 'avatarSource'> & UserRow, 'username' | 'id' | 'email' | 'avatarSource'>
Pick<ProfileRow, 'teamName' | 'locale' | 'credentials' | 'credentialsLevel' | 'credentialsName'> & & Pick<ProfileRow, 'teamName' | 'locale' | 'credentials' | 'credentialsLevel' | 'credentialsName'>
Pick<AuthenticatorRow, 'payload'>>(SQL` & Pick<AuthenticatorRow, 'payload'>>(SQL`
SELECT u.username, u.id, u.email, u.avatarSource, SELECT u.username, u.id, u.email, u.avatarSource,
p.teamName, p.locale, p.credentials, p.credentialsLevel, p.credentialsName, p.teamName, p.locale, p.credentials, p.credentialsLevel, p.credentialsName,
a.payload a.payload

View File

@ -703,8 +703,8 @@ const cleanupOpinions = (opinions: OpinionFormValue[]) => {
return cleanOpinions; return cleanOpinions;
}; };
type SaveProfile = Omit<Profile, 'linksMetadata' | 'verifiedLinks' | 'footerAreas' | 'credentials' | type SaveProfile = Omit<Profile, 'linksMetadata' | 'verifiedLinks' | 'footerAreas' | 'credentials'
'card' | 'cardDark' | 'circle' | 'markdown' | 'events' | 'customEvents' | 'lastUpdate' | 'id' | 'access'> | 'card' | 'cardDark' | 'circle' | 'markdown' | 'events' | 'customEvents' | 'lastUpdate' | 'id' | 'access'>
& Partial<Pick<Profile, 'markdown' | 'events' | 'customEvents'>> & Partial<Pick<Profile, 'markdown' | 'events' | 'customEvents'>>
& Pick<ProfileRow, 'footerAreas' | 'credentials'>; & Pick<ProfileRow, 'footerAreas' | 'credentials'>;
@ -1141,8 +1141,8 @@ interface ProfileExportData {
images: Record<string, { flag: string }>; images: Record<string, { flag: string }>;
} }
type ProfileExportProfile = Omit<Profile, 'linksMetadata' | 'verifiedLinks' | 'footerAreas' | 'credentials' | type ProfileExportProfile = Omit<Profile, 'linksMetadata' | 'verifiedLinks' | 'footerAreas' | 'credentials'
'card' | 'cardDark' | 'circle' | 'lastUpdate' | 'id' | 'access'> | 'card' | 'cardDark' | 'circle' | 'lastUpdate' | 'id' | 'access'>
& Pick<ProfileRow, 'footerAreas' | 'credentials'>; & Pick<ProfileRow, 'footerAreas' | 'credentials'>;
router.get('/profile/export', handleErrorAsync(async (req: Request, res: Response) => { router.get('/profile/export', handleErrorAsync(async (req: Request, res: Response) => {

View File

@ -107,8 +107,8 @@ export interface ProfileV1 extends Omit<Profile, 'names' | 'pronouns' | 'words'
customFlags: Record<string, string>; customFlags: Record<string, string>;
} }
export interface SaveProfilePayload extends Omit<Profile, 'linksMetadata' | 'verifiedLinks' | 'opinions' | export interface SaveProfilePayload extends Omit<Profile, 'linksMetadata' | 'verifiedLinks' | 'opinions'
'card' | 'cardDark' | 'lastUpdate' | 'id' | 'access'> { | 'card' | 'cardDark' | 'lastUpdate' | 'id' | 'access'> {
username: string; username: string;
opinions: OpinionFormValue[]; opinions: OpinionFormValue[];
propagate: string[]; propagate: string[];