diff --git a/src/Directory.Packages.props b/src/Directory.Packages.props index 86a9a1904..07ea87c85 100644 --- a/src/Directory.Packages.props +++ b/src/Directory.Packages.props @@ -32,7 +32,7 @@ - + diff --git a/src/GZCTF/ClientApp/package.json b/src/GZCTF/ClientApp/package.json index 1fea89f3f..377a3dbb6 100644 --- a/src/GZCTF/ClientApp/package.json +++ b/src/GZCTF/ClientApp/package.json @@ -37,7 +37,7 @@ "embla-carousel-autoplay": "^8.5.1", "embla-carousel-react": "^8.5.1", "fast-average-color": "^9.4.0", - "i18next": "^24.0.2", + "i18next": "^24.0.5", "i18next-browser-languagedetector": "^8.0.0", "katex": "^0.16.11", "lz-string": "^1.5.0", @@ -71,7 +71,7 @@ "@typescript-eslint/eslint-plugin": "^8.17.0", "@typescript-eslint/parser": "^8.17.0", "@vitejs/plugin-react": "^4.3.4", - "axios": "^1.7.8", + "axios": "^1.7.9", "babel-plugin-prismjs": "^2.1.0", "eslint": "^9.16.0", "eslint-plugin-oxlint": "^0.14.0", @@ -84,7 +84,7 @@ "postcss": "^8.4.49", "postcss-preset-mantine": "^1.17.0", "postcss-simple-vars": "^7.0.1", - "prettier": "~3.4.1", + "prettier": "~3.4.2", "prettier-plugin-sort-json": "^4.0.0", "rollup": "^4.28.0", "swagger-typescript-api": "^13.0.23", diff --git a/src/GZCTF/ClientApp/pnpm-lock.yaml b/src/GZCTF/ClientApp/pnpm-lock.yaml index 9aa732461..43e1d69e1 100644 --- a/src/GZCTF/ClientApp/pnpm-lock.yaml +++ b/src/GZCTF/ClientApp/pnpm-lock.yaml @@ -87,8 +87,8 @@ importers: specifier: ^9.4.0 version: 9.4.0 i18next: - specifier: ^24.0.2 - version: 24.0.2(typescript@5.7.2) + specifier: ^24.0.5 + version: 24.0.5(typescript@5.7.2) i18next-browser-languagedetector: specifier: ^8.0.0 version: 8.0.0 @@ -124,7 +124,7 @@ importers: version: 1.10.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react-i18next: specifier: ^15.1.3 - version: 15.1.3(i18next@24.0.2(typescript@5.7.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 15.1.3(i18next@24.0.5(typescript@5.7.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react-pdf: specifier: ^9.1.1 version: 9.1.1(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -155,7 +155,7 @@ importers: version: 2.0.5(eslint@9.16.0)(vite@6.0.2(@types/node@22.10.1)(sass-embedded@1.81.0)(sugarss@4.0.1(postcss@8.4.49))(yaml@2.6.1)) '@trivago/prettier-plugin-sort-imports': specifier: ^4.3.0 - version: 4.3.0(prettier@3.4.1) + version: 4.3.0(prettier@3.4.2) '@types/chroma-js': specifier: ^2.4.4 version: 2.4.4 @@ -184,8 +184,8 @@ importers: specifier: ^4.3.4 version: 4.3.4(vite@6.0.2(@types/node@22.10.1)(sass-embedded@1.81.0)(sugarss@4.0.1(postcss@8.4.49))(yaml@2.6.1)) axios: - specifier: ^1.7.8 - version: 1.7.8 + specifier: ^1.7.9 + version: 1.7.9 babel-plugin-prismjs: specifier: ^2.1.0 version: 2.1.0(prismjs@1.29.0) @@ -223,11 +223,11 @@ importers: specifier: ^7.0.1 version: 7.0.1(postcss@8.4.49) prettier: - specifier: ~3.4.1 - version: 3.4.1 + specifier: ~3.4.2 + version: 3.4.2 prettier-plugin-sort-json: specifier: ^4.0.0 - version: 4.0.0(prettier@3.4.1) + version: 4.0.0(prettier@3.4.2) rollup: specifier: ^4.28.0 version: 4.28.0 @@ -272,8 +272,8 @@ packages: resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} engines: {node: '>=6.9.0'} - '@babel/compat-data@7.26.2': - resolution: {integrity: sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg==} + '@babel/compat-data@7.26.3': + resolution: {integrity: sha512-nHIxvKPniQXpmQLb0vhY3VaFb3S0YrTAwpOWJZh1wn3oJPjJk9Asva204PsBdmAE8vpzfHudT8DB0scYvy9q0g==} engines: {node: '>=6.9.0'} '@babel/core@7.26.0': @@ -291,8 +291,8 @@ packages: resolution: {integrity: sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==} engines: {node: '>=6.9.0'} - '@babel/generator@7.26.2': - resolution: {integrity: sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw==} + '@babel/generator@7.26.3': + resolution: {integrity: sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ==} engines: {node: '>=6.9.0'} '@babel/helper-compilation-targets@7.25.9': @@ -345,8 +345,8 @@ packages: resolution: {integrity: sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw==} engines: {node: '>=6.9.0'} - '@babel/parser@7.26.2': - resolution: {integrity: sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==} + '@babel/parser@7.26.3': + resolution: {integrity: sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==} engines: {node: '>=6.0.0'} hasBin: true @@ -374,16 +374,16 @@ packages: resolution: {integrity: sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.25.9': - resolution: {integrity: sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==} + '@babel/traverse@7.26.3': + resolution: {integrity: sha512-yTmc8J+Sj8yLzwr4PD5Xb/WF3bOYu2C2OoSZPzbuqRm4n98XirsbzaX+GloeO376UnSYIYJ4NCanwV5/ugZkwA==} engines: {node: '>=6.9.0'} '@babel/types@7.17.0': resolution: {integrity: sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==} engines: {node: '>=6.9.0'} - '@babel/types@7.26.0': - resolution: {integrity: sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==} + '@babel/types@7.26.3': + resolution: {integrity: sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==} engines: {node: '>=6.9.0'} '@bufbuild/protobuf@2.2.2': @@ -1135,8 +1135,8 @@ packages: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} - axios@1.7.8: - resolution: {integrity: sha512-Uu0wb7KNqK2t5K+YQyVCLM76prD5sRFjKHbJYCP1J7JFGEQ6nN7HWn9+04LAeiJ3ji54lgS/gZCH1oxyrf1SPw==} + axios@1.7.9: + resolution: {integrity: sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==} babel-plugin-macros@3.1.0: resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==} @@ -1192,8 +1192,8 @@ packages: resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} engines: {node: '>= 6'} - caniuse-lite@1.0.30001685: - resolution: {integrity: sha512-e/kJN1EMyHQzgcMEEgoo+YTCO1NGCmIYHk5Qk8jT6AazWemS5QFKJ5ShCJlH3GZrNIdZofcNCEwZqbMjjKzmnA==} + caniuse-lite@1.0.30001686: + resolution: {integrity: sha512-Y7deg0Aergpa24M3qLC5xjNklnKnhsmSyR/V89dLZ1n0ucJIFNs7PgR2Yfa/Zf6W79SbBicgtGxZr2juHkEUIA==} chalk@4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} @@ -1713,14 +1713,14 @@ packages: hookified@1.5.1: resolution: {integrity: sha512-sZQQ5QgNVQUXffNd66qefqOMXA88CXIV0gW8I4bMAJYeu1ZCJsyy7sdchaoHzRyS4o0cXw3krNDXkljZr7uexw==} - html-dom-parser@5.0.10: - resolution: {integrity: sha512-GwArYL3V3V8yU/mLKoFF7HlLBv80BZ2Ey1BzfVNRpAci0cEKhFHI/Qh8o8oyt3qlAMLlK250wsxLdYX4viedvg==} + html-dom-parser@5.0.11: + resolution: {integrity: sha512-iORudm2K0c0DYeEj4AbrG9PFzgp1dpFGkJUAiBlVTkeyaNf2YYIs1b0dF7rQUPnDZimkLx+Jls+CvRIKO/++Tg==} html-parse-stringify@3.0.1: resolution: {integrity: sha512-KknJ50kTInJ7qIScF3jeaFRpMpE8/lfiTdzf/twXyPBLAGrLRTmkz3AdTnKeh40X8k9L2fdYwEp/42WGXIRGcg==} - html-react-parser@5.1.18: - resolution: {integrity: sha512-65BwC0zzrdeW96jB2FRr5f1ovBhRMpLPJNvwkY5kA8Ay5xdL9t/RH2/uUTM7p+cl5iM88i6dDk4LXtfMnRmaJQ==} + html-react-parser@5.1.19: + resolution: {integrity: sha512-ecjQg5KDhM+Yv3tRRfdp0fYSdSYHI1FQEDqou0g8NO7mXuoK8ksbYGRjeslqWO6QWX3PKREVWnC8VS1FSZaFHA==} peerDependencies: '@types/react': 0.14 || 15 || 16 || 17 || 18 react: 0.14 || 15 || 16 || 17 || 18 @@ -1737,8 +1737,8 @@ packages: i18next-browser-languagedetector@8.0.0: resolution: {integrity: sha512-zhXdJXTTCoG39QsrOCiOabnWj2jecouOqbchu3EfhtSHxIB5Uugnm9JaizenOy39h7ne3+fLikIjeW88+rgszw==} - i18next@24.0.2: - resolution: {integrity: sha512-D88xyIGcWAKwBTAs4RSqASi8NXR/NhCVSTM4LDbdoU8qb/5dcEZjNCLDhtQBB7Epw/Cp1w2vH/3ujoTbqLSs5g==} + i18next@24.0.5: + resolution: {integrity: sha512-1jSdEzgFPGLZRsQwydoMFCBBaV+PmrVEO5WhANllZPX4y2JSGTxUjJ+xVklHIsiS95uR8gYc/y0hYZWevucNjg==} peerDependencies: typescript: ^5 peerDependenciesMeta: @@ -2228,8 +2228,8 @@ packages: engines: {node: '>=14'} hasBin: true - prettier@3.4.1: - resolution: {integrity: sha512-G+YdqtITVZmOJje6QkXQWzl3fSfMxFwm1tjTyo9exhkmWSqC4Yhd1+lug++IlR2mvRVAxEDDWYkQdeSztajqgg==} + prettier@3.4.2: + resolution: {integrity: sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==} engines: {node: '>=14'} hasBin: true @@ -3056,20 +3056,20 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.1.1 - '@babel/compat-data@7.26.2': {} + '@babel/compat-data@7.26.3': {} '@babel/core@7.26.0': dependencies: '@ampproject/remapping': 2.3.0 '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.2 + '@babel/generator': 7.26.3 '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) '@babel/helpers': 7.26.0 - '@babel/parser': 7.26.2 + '@babel/parser': 7.26.3 '@babel/template': 7.25.9 - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 + '@babel/traverse': 7.26.3 + '@babel/types': 7.26.3 convert-source-map: 2.0.0 debug: 4.3.7 gensync: 1.0.0-beta.2 @@ -3092,17 +3092,17 @@ snapshots: jsesc: 2.5.2 source-map: 0.5.7 - '@babel/generator@7.26.2': + '@babel/generator@7.26.3': dependencies: - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 jsesc: 3.0.2 '@babel/helper-compilation-targets@7.25.9': dependencies: - '@babel/compat-data': 7.26.2 + '@babel/compat-data': 7.26.3 '@babel/helper-validator-option': 7.25.9 browserslist: 4.24.2 lru-cache: 5.1.1 @@ -3110,21 +3110,21 @@ snapshots: '@babel/helper-environment-visitor@7.24.7': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@babel/helper-function-name@7.24.7': dependencies: '@babel/template': 7.25.9 - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@babel/helper-hoist-variables@7.24.7': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@babel/helper-module-imports@7.25.9': dependencies: - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 + '@babel/traverse': 7.26.3 + '@babel/types': 7.26.3 transitivePeerDependencies: - supports-color @@ -3133,7 +3133,7 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-module-imports': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.3 transitivePeerDependencies: - supports-color @@ -3141,7 +3141,7 @@ snapshots: '@babel/helper-split-export-declaration@7.24.7': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@babel/helper-string-parser@7.25.9': {} @@ -3152,11 +3152,11 @@ snapshots: '@babel/helpers@7.26.0': dependencies: '@babel/template': 7.25.9 - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 - '@babel/parser@7.26.2': + '@babel/parser@7.26.3': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@babel/plugin-transform-react-jsx-self@7.25.9(@babel/core@7.26.0)': dependencies: @@ -3175,31 +3175,31 @@ snapshots: '@babel/template@7.25.9': dependencies: '@babel/code-frame': 7.26.2 - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 '@babel/traverse@7.23.2': dependencies: '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.2 + '@babel/generator': 7.26.3 '@babel/helper-environment-visitor': 7.24.7 '@babel/helper-function-name': 7.24.7 '@babel/helper-hoist-variables': 7.24.7 '@babel/helper-split-export-declaration': 7.24.7 - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 debug: 4.3.7 globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/traverse@7.25.9': + '@babel/traverse@7.26.3': dependencies: '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.2 - '@babel/parser': 7.26.2 + '@babel/generator': 7.26.3 + '@babel/parser': 7.26.3 '@babel/template': 7.25.9 - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 debug: 4.3.7 globals: 11.12.0 transitivePeerDependencies: @@ -3210,7 +3210,7 @@ snapshots: '@babel/helper-validator-identifier': 7.25.9 to-fast-properties: 2.0.0 - '@babel/types@7.26.0': + '@babel/types@7.26.3': dependencies: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 @@ -3516,7 +3516,7 @@ snapshots: '@emotion/utils': 1.4.2 '@mantine/core': 7.14.3(@mantine/hooks@7.14.3(react@18.3.1))(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mantine/hooks': 7.14.3(react@18.3.1) - html-react-parser: 5.1.18(@types/react@18.3.12)(react@18.3.1) + html-react-parser: 5.1.19(@types/react@18.3.12)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: @@ -3681,38 +3681,38 @@ snapshots: '@sindresorhus/merge-streams@2.3.0': {} - '@trivago/prettier-plugin-sort-imports@4.3.0(prettier@3.4.1)': + '@trivago/prettier-plugin-sort-imports@4.3.0(prettier@3.4.2)': dependencies: '@babel/generator': 7.17.7 - '@babel/parser': 7.26.2 + '@babel/parser': 7.26.3 '@babel/traverse': 7.23.2 '@babel/types': 7.17.0 javascript-natural-sort: 0.7.1 lodash: 4.17.21 - prettier: 3.4.1 + prettier: 3.4.2 transitivePeerDependencies: - supports-color '@types/babel__core@7.20.5': dependencies: - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 '@types/babel__generator': 7.6.8 '@types/babel__template': 7.4.4 '@types/babel__traverse': 7.20.6 '@types/babel__generator@7.6.8': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@types/babel__template@7.4.4': dependencies: - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 '@types/babel__traverse@7.20.6': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@types/chroma-js@2.4.4': {} @@ -3936,7 +3936,7 @@ snapshots: dependencies: possible-typed-array-names: 1.0.0 - axios@1.7.8: + axios@1.7.9: dependencies: follow-redirects: 1.15.9 form-data: 4.0.1 @@ -3973,7 +3973,7 @@ snapshots: browserslist@4.24.2: dependencies: - caniuse-lite: 1.0.30001685 + caniuse-lite: 1.0.30001686 electron-to-chromium: 1.5.68 node-releases: 2.0.18 update-browserslist-db: 1.1.1(browserslist@4.24.2) @@ -4005,7 +4005,7 @@ snapshots: camelcase-css@2.0.1: {} - caniuse-lite@1.0.30001685: {} + caniuse-lite@1.0.30001686: {} chalk@4.1.2: dependencies: @@ -4615,7 +4615,7 @@ snapshots: hookified@1.5.1: {} - html-dom-parser@5.0.10: + html-dom-parser@5.0.11: dependencies: domhandler: 5.0.3 htmlparser2: 9.1.0 @@ -4624,10 +4624,10 @@ snapshots: dependencies: void-elements: 3.1.0 - html-react-parser@5.1.18(@types/react@18.3.12)(react@18.3.1): + html-react-parser@5.1.19(@types/react@18.3.12)(react@18.3.1): dependencies: domhandler: 5.0.3 - html-dom-parser: 5.0.10 + html-dom-parser: 5.0.11 react: 18.3.1 react-property: 2.0.2 style-to-js: 1.1.16 @@ -4647,7 +4647,7 @@ snapshots: dependencies: '@babel/runtime': 7.26.0 - i18next@24.0.2(typescript@5.7.2): + i18next@24.0.5(typescript@5.7.2): dependencies: '@babel/runtime': 7.26.0 optionalDependencies: @@ -5105,13 +5105,13 @@ snapshots: prelude-ls@1.2.1: {} - prettier-plugin-sort-json@4.0.0(prettier@3.4.1): + prettier-plugin-sort-json@4.0.0(prettier@3.4.2): dependencies: - prettier: 3.4.1 + prettier: 3.4.2 prettier@3.3.3: {} - prettier@3.4.1: {} + prettier@3.4.2: {} prismjs@1.29.0: {} @@ -5155,11 +5155,11 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - react-i18next@15.1.3(i18next@24.0.2(typescript@5.7.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + react-i18next@15.1.3(i18next@24.0.5(typescript@5.7.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@babel/runtime': 7.26.0 html-parse-stringify: 3.0.1 - i18next: 24.0.2(typescript@5.7.2) + i18next: 24.0.5(typescript@5.7.2) react: 18.3.1 optionalDependencies: react-dom: 18.3.1(react@18.3.1) @@ -5812,7 +5812,7 @@ snapshots: vite-plugin-webfont-dl@3.10.2(vite@6.0.2(@types/node@22.10.1)(sass-embedded@1.81.0)(sugarss@4.0.1(postcss@8.4.49))(yaml@2.6.1)): dependencies: - axios: 1.7.8 + axios: 1.7.9 clean-css: 5.3.3 flat-cache: 6.1.3 picocolors: 1.1.1 diff --git a/src/GZCTF/ClientApp/src/utils/I18n.tsx b/src/GZCTF/ClientApp/src/utils/I18n.tsx index 995b3aae5..d7ab1785e 100644 --- a/src/GZCTF/ClientApp/src/utils/I18n.tsx +++ b/src/GZCTF/ClientApp/src/utils/I18n.tsx @@ -25,7 +25,7 @@ export const LanguageMap = { 'id-ID': '🇮🇩 Bahasa', 'ko-KR': '🇰🇷 한국어', 'ru-RU': '🇷🇺 Русский', - 'vi-VN': '🇻🇳 Tiếng việt (WIP)', + 'vi-VN': '🇻🇳 Tiếng việt', 'de-DE': '🇩🇪 Deutsch (MT)', 'fr-FR': '🇫🇷 Français (MT)', 'es-ES': '🇪🇸 Español (MT)', diff --git a/src/GZCTF/Controllers/GameController.cs b/src/GZCTF/Controllers/GameController.cs index 76ebdb455..a35ce732d 100644 --- a/src/GZCTF/Controllers/GameController.cs +++ b/src/GZCTF/Controllers/GameController.cs @@ -705,7 +705,7 @@ public async Task ScoreboardSheet([FromRoute] int id, [FromServic return File(stream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", - $"{game.Title}_Scoreboard_{DateTimeOffset.Now:yyyyMMddHHmmss}.xlsx"); + $"{game.Title}-Scoreboard-{DateTimeOffset.Now:yyyyMMdd-HH.mm.ssZ}.xlsx"); } catch (Exception ex) {