refactor(schema): simplify validation and OpenAPI generation (#2709)

This commit is contained in:
Hampus
2026-09-11 23:24:26 +02:00
committed by GitHub
parent 4bc5593f9f
commit de1fd95a99
510 changed files with 29494 additions and 36131 deletions
-1
View File
@@ -13,7 +13,6 @@
},
"devDependencies": {
"@typescript/native-preview": "catalog:",
"vite-tsconfig-paths": "catalog:",
"vitest": "catalog:"
}
}
+4
View File
@@ -0,0 +1,4 @@
{
"ageRestrictedGeos": [{"countryCode": "GB", "regionCode": null}, {"countryCode": "BR", "regionCode": null}],
"ageBlockedGeos": [{"countryCode": "US", "regionCode": "MS"}]
}
@@ -42,7 +42,6 @@ export const ValidationErrorCodes = {
CHANNEL_ID_IS_REQUIRED: 'CHANNEL_ID_IS_REQUIRED',
CHANNEL_MUST_BE_DM_OR_GROUP_DM: 'CHANNEL_MUST_BE_DM_OR_GROUP_DM',
CHANNEL_MUST_BE_VOICE: 'CHANNEL_MUST_BE_VOICE',
CHANNEL_NAME_EMPTY_AFTER_NORMALIZATION: 'CHANNEL_NAME_EMPTY_AFTER_NORMALIZATION',
CHANNEL_NOT_FOUND: 'CHANNEL_NOT_FOUND',
COLOR_VALUE_TOO_HIGH: 'COLOR_VALUE_TOO_HIGH',
COLOR_VALUE_TOO_LOW: 'COLOR_VALUE_TOO_LOW',
@@ -85,8 +84,6 @@ export const ValidationErrorCodes = {
FAVORITE_MEME_NOT_FOUND: 'FAVORITE_MEME_NOT_FOUND',
FILE_INDEX_EXCEEDS_MAXIMUM: 'FILE_INDEX_EXCEEDS_MAXIMUM',
FILE_NOT_FOUND: 'FILE_NOT_FOUND',
FILENAME_EMPTY_AFTER_NORMALIZATION: 'FILENAME_EMPTY_AFTER_NORMALIZATION',
FILENAME_INVALID_CHARACTERS: 'FILENAME_INVALID_CHARACTERS',
FILENAME_LENGTH_INVALID: 'FILENAME_LENGTH_INVALID',
FORWARD_MESSAGES_CANNOT_CONTAIN_CONTENT: 'FORWARD_MESSAGES_CANNOT_CONTAIN_CONTENT',
FORWARD_REFERENCE_REQUIRES_CHANNEL_AND_MESSAGE: 'FORWARD_REFERENCE_REQUIRES_CHANNEL_AND_MESSAGE',
@@ -243,3 +240,9 @@ export const ValidationErrorCodes = {
} as const;
export type ValidationErrorCode = ValueOf<typeof ValidationErrorCodes>;
const validationErrorCodeSet = new Set<string>(Object.values(ValidationErrorCodes));
export function isValidationErrorCode(value: string): value is ValidationErrorCode {
return validationErrorCodeSet.has(value);
}
+1 -10
View File
@@ -1,18 +1,9 @@
// SPDX-License-Identifier: AGPL-3.0-or-later
import path from 'node:path';
import {fileURLToPath} from 'node:url';
import tsconfigPaths from 'vite-tsconfig-paths';
import {defineConfig} from 'vitest/config';
const __dirname = path.dirname(fileURLToPath(import.meta.url));
export default defineConfig({
plugins: [
tsconfigPaths({
root: path.resolve(__dirname, '../..'),
}),
],
resolve: {tsconfigPaths: true},
test: {
globals: true,
environment: 'node',