mirror of
https://github.com/fluxerapp/fluxer
synced 2026-10-07 19:22:14 +09:00
refactor(schema): simplify validation and OpenAPI generation (#2709)
This commit is contained in:
@@ -13,7 +13,6 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@typescript/native-preview": "catalog:",
|
||||
"vite-tsconfig-paths": "catalog:",
|
||||
"vitest": "catalog:"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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,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',
|
||||
|
||||
Reference in New Issue
Block a user