mirror of
https://github.com/versia-pub/api.git
synced 2025-12-06 00:18:19 +01:00
refactor(federation): 🚚 Rename validators back to schemas, fix barrel file
This commit is contained in:
parent
d43775ec6e
commit
ce9be7e857
2
build.ts
2
build.ts
|
|
@ -2,7 +2,7 @@ import dts from "bun-plugin-dts";
|
|||
import ora from "ora";
|
||||
|
||||
const entrypoints = {
|
||||
federation: ["index.ts", "validators.ts", "types.ts"],
|
||||
federation: ["index.ts", "schemas.ts", "types.ts"],
|
||||
client: ["index.ts", "types.ts"],
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
* @file index.ts
|
||||
* @fileoverview Main entrypoint and export for the module
|
||||
* @module federation
|
||||
* @see module:federation/validators/base
|
||||
* @see module:federation/schemas/base
|
||||
*/
|
||||
|
||||
import type { ValidationError } from "zod-validation-error";
|
||||
|
|
|
|||
|
|
@ -5,6 +5,6 @@
|
|||
"exports": {
|
||||
".": "./index.ts",
|
||||
"./types": "./types.ts",
|
||||
"./validators": "./validators.ts"
|
||||
"./schemas": "./schemas.ts"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -48,10 +48,10 @@
|
|||
"default": "./dist/types.js",
|
||||
"types": "./dist/types.d.ts"
|
||||
},
|
||||
"./validators": {
|
||||
"import": "./dist/validators.js",
|
||||
"default": "./dist/validators.js",
|
||||
"types": "./dist/validators.d.ts"
|
||||
"./schemas": {
|
||||
"import": "./dist/schemas.js",
|
||||
"default": "./dist/schemas.js",
|
||||
"types": "./dist/schemas.d.ts"
|
||||
}
|
||||
},
|
||||
"funding": {
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import { fromZodError } from "zod-validation-error";
|
||||
import type { SignatureConstructor } from "../cryptography/index.ts";
|
||||
import { WebFingerSchema } from "../validators/webfinger.ts";
|
||||
import { WebFingerSchema } from "../schemas/webfinger.ts";
|
||||
import type { User } from "../types.ts";
|
||||
import { DEFAULT_UA } from "./constants.ts";
|
||||
|
||||
|
|
|
|||
31
federation/schemas.ts
Normal file
31
federation/schemas.ts
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
/**
|
||||
* @file Zod schema definitions
|
||||
* @module federation/schemas
|
||||
*/
|
||||
|
||||
// biome-ignore lint/performance/noBarrelFile: library export
|
||||
export {
|
||||
CollectionSchema as Collection,
|
||||
DeleteSchema as Delete,
|
||||
EntitySchema as Entity,
|
||||
FollowAcceptSchema as FollowAccept,
|
||||
FollowRejectSchema as FollowReject,
|
||||
FollowSchema as Follow,
|
||||
GroupSchema as Group,
|
||||
InstanceMetadataSchema as InstanceMetadata,
|
||||
NoteSchema as Note,
|
||||
UnfollowSchema as Unfollow,
|
||||
UserSchema as User,
|
||||
} from "./schemas/base.ts";
|
||||
export { ContentFormatSchema as ContentFormat } from "./schemas/content_format.ts";
|
||||
export { ExtensionPropertySchema as EntityExtensionProperty } from "./schemas/extensions.ts";
|
||||
export { CustomEmojiExtensionSchema as CustomEmojiExtension } from "./schemas/extensions/custom_emojis.ts";
|
||||
export {
|
||||
DislikeSchema as DislikeExtension,
|
||||
LikeSchema as LikeExtension,
|
||||
} from "./schemas/extensions/likes.ts";
|
||||
export { VoteSchema as PollVoteExtension } from "./schemas/extensions/polls.ts";
|
||||
export { ReactionSchema as ReactionExtension } from "./schemas/extensions/reactions.ts";
|
||||
export { ShareSchema as ShareExtension } from "./schemas/extensions/share.ts";
|
||||
export { VanityExtensionSchema as VanityExtension } from "./schemas/extensions/vanity.ts";
|
||||
export { WebFingerSchema as WebFinger } from "./schemas/webfinger.ts";
|
||||
|
|
@ -16,18 +16,15 @@ import type {
|
|||
NoteSchema,
|
||||
UnfollowSchema,
|
||||
UserSchema,
|
||||
} from "./validators/base.ts";
|
||||
import type { ContentFormatSchema } from "./validators/content_format.ts";
|
||||
import type { ExtensionPropertySchema } from "./validators/extensions.ts";
|
||||
import type { CustomEmojiExtensionSchema } from "./validators/extensions/custom_emojis.ts";
|
||||
import type {
|
||||
DislikeSchema,
|
||||
LikeSchema,
|
||||
} from "./validators/extensions/likes.ts";
|
||||
import type { VoteSchema } from "./validators/extensions/polls.ts";
|
||||
import type { ReactionSchema } from "./validators/extensions/reactions.ts";
|
||||
import type { ShareSchema } from "./validators/extensions/share.ts";
|
||||
import type { VanityExtensionSchema } from "./validators/extensions/vanity.ts";
|
||||
} from "./schemas/base.ts";
|
||||
import type { ContentFormatSchema } from "./schemas/content_format.ts";
|
||||
import type { ExtensionPropertySchema } from "./schemas/extensions.ts";
|
||||
import type { CustomEmojiExtensionSchema } from "./schemas/extensions/custom_emojis.ts";
|
||||
import type { DislikeSchema, LikeSchema } from "./schemas/extensions/likes.ts";
|
||||
import type { VoteSchema } from "./schemas/extensions/polls.ts";
|
||||
import type { ReactionSchema } from "./schemas/extensions/reactions.ts";
|
||||
import type { ShareSchema } from "./schemas/extensions/share.ts";
|
||||
import type { VanityExtensionSchema } from "./schemas/extensions/vanity.ts";
|
||||
|
||||
// biome-ignore lint/suspicious/noExplicitAny: Used only as a base type
|
||||
type AnyZod = z.ZodType<any, any, any>;
|
||||
|
|
|
|||
|
|
@ -12,15 +12,15 @@ import {
|
|||
NoteSchema,
|
||||
UnfollowSchema,
|
||||
UserSchema,
|
||||
} from "./validators/base.ts";
|
||||
import { ContentFormatSchema } from "./validators/content_format.ts";
|
||||
import { ExtensionPropertySchema } from "./validators/extensions.ts";
|
||||
import { CustomEmojiExtensionSchema } from "./validators/extensions/custom_emojis.ts";
|
||||
import { DislikeSchema, LikeSchema } from "./validators/extensions/likes.ts";
|
||||
import { VoteSchema } from "./validators/extensions/polls.ts";
|
||||
import { ReactionSchema } from "./validators/extensions/reactions.ts";
|
||||
import { ShareSchema } from "./validators/extensions/share.ts";
|
||||
import { VanityExtensionSchema } from "./validators/extensions/vanity.ts";
|
||||
} from "./schemas/base.ts";
|
||||
import { ContentFormatSchema } from "./schemas/content_format.ts";
|
||||
import { ExtensionPropertySchema } from "./schemas/extensions.ts";
|
||||
import { CustomEmojiExtensionSchema } from "./schemas/extensions/custom_emojis.ts";
|
||||
import { DislikeSchema, LikeSchema } from "./schemas/extensions/likes.ts";
|
||||
import { VoteSchema } from "./schemas/extensions/polls.ts";
|
||||
import { ReactionSchema } from "./schemas/extensions/reactions.ts";
|
||||
import { ShareSchema } from "./schemas/extensions/share.ts";
|
||||
import { VanityExtensionSchema } from "./schemas/extensions/vanity.ts";
|
||||
import type {
|
||||
Collection,
|
||||
ContentFormat,
|
||||
|
|
@ -52,7 +52,7 @@ type InferType<T extends AnyZod> = z.infer<T>;
|
|||
/**
|
||||
* Validates entities against their respective schemas.
|
||||
* @module federation/validator
|
||||
* @see module:federation/validators/base
|
||||
* @see module:federation/schemas/base
|
||||
* @example
|
||||
* import { EntityValidator, type ValidationError } from "@versia/federation";
|
||||
* const validator = new EntityValidator();
|
||||
|
|
|
|||
|
|
@ -1,51 +0,0 @@
|
|||
/**
|
||||
* @file Zod schema definitions
|
||||
* @module federation/schemas
|
||||
*/
|
||||
|
||||
import {
|
||||
CollectionSchema,
|
||||
DeleteSchema,
|
||||
EntitySchema,
|
||||
FollowAcceptSchema,
|
||||
FollowRejectSchema,
|
||||
FollowSchema,
|
||||
GroupSchema,
|
||||
InstanceMetadataSchema,
|
||||
NoteSchema,
|
||||
UnfollowSchema,
|
||||
UserSchema,
|
||||
} from "./validators/base.ts";
|
||||
import { ContentFormatSchema } from "./validators/content_format.ts";
|
||||
import { ExtensionPropertySchema } from "./validators/extensions.ts";
|
||||
import { CustomEmojiExtensionSchema } from "./validators/extensions/custom_emojis.ts";
|
||||
import { DislikeSchema, LikeSchema } from "./validators/extensions/likes.ts";
|
||||
import { VoteSchema } from "./validators/extensions/polls.ts";
|
||||
import { ReactionSchema } from "./validators/extensions/reactions.ts";
|
||||
import { ShareSchema } from "./validators/extensions/share.ts";
|
||||
import { VanityExtensionSchema } from "./validators/extensions/vanity.ts";
|
||||
import { WebFingerSchema } from "./validators/webfinger.ts";
|
||||
|
||||
export {
|
||||
NoteSchema as Note,
|
||||
CollectionSchema as Collection,
|
||||
EntitySchema as Entity,
|
||||
FollowSchema as Follow,
|
||||
UnfollowSchema as Unfollow,
|
||||
FollowAcceptSchema as FollowAccept,
|
||||
FollowRejectSchema as FollowReject,
|
||||
GroupSchema as Group,
|
||||
InstanceMetadataSchema as InstanceMetadata,
|
||||
UserSchema as User,
|
||||
ContentFormatSchema as ContentFormat,
|
||||
ExtensionPropertySchema as EntityExtensionProperty,
|
||||
CustomEmojiExtensionSchema as CustomEmojiExtension,
|
||||
DeleteSchema as Delete,
|
||||
VanityExtensionSchema as VanityExtension,
|
||||
LikeSchema as LikeExtension,
|
||||
DislikeSchema as DislikeExtension,
|
||||
VoteSchema as PollVoteExtension,
|
||||
ReactionSchema as ReactionExtension,
|
||||
ShareSchema as ShareExtension,
|
||||
WebFingerSchema as WebFinger,
|
||||
};
|
||||
Loading…
Reference in a new issue