mirror of
https://github.com/Unleash/unleash.git
synced 2024-11-01 19:07:38 +01:00
4dec126199
* Feat: add initial event schema * Feat: add events-schema plus tests * Feat(broken): add openapi validation to getEvents endpoint * Add schema to basic events endpoint * Feat: Add openapi for feature events * Fix: fix recursive schema inclusion * Feat: add test for recursive function * Fix: make nullable fields nullable * Fix: remove `ADMIN` permission for toggle events. * fix: add new schemas to the snapshot * Fix: remove recursive schema inclusion * Feat: test feature events schema * Fix: add correct permissions for feature events endpoint. * Refactor: rename "name" to "featureName" for clearer docs * Fix: Add missing "version" field to feature events * Feat: add descriptions and extra responses to events endpoints. * Fix: update openapi snapshot * Simplify standard responses function * Refactor: move endpoint descriptions into own file. * Refactor: simplify type signature. * Feat: specify type of data and preData properties to object * Fix: update snapshot * Refactor: move standard-responses into /util/ directory.
54 lines
1.2 KiB
TypeScript
54 lines
1.2 KiB
TypeScript
import { FromSchema } from 'json-schema-to-ts';
|
|
import { tagSchema } from './tag-schema';
|
|
|
|
export const eventSchema = {
|
|
$id: '#/components/schemas/eventSchema',
|
|
type: 'object',
|
|
additionalProperties: false,
|
|
required: ['id', 'createdAt', 'type', 'createdBy'],
|
|
properties: {
|
|
id: {
|
|
type: 'integer',
|
|
minimum: 1,
|
|
},
|
|
createdAt: {
|
|
type: 'string',
|
|
format: 'date-time',
|
|
},
|
|
type: {
|
|
type: 'string',
|
|
},
|
|
createdBy: {
|
|
type: 'string',
|
|
},
|
|
environment: {
|
|
type: 'string',
|
|
nullable: true,
|
|
},
|
|
project: {
|
|
type: 'string',
|
|
nullable: true,
|
|
},
|
|
featureName: {
|
|
type: 'string',
|
|
nullable: true,
|
|
},
|
|
data: { type: 'object', nullable: true },
|
|
preData: { type: 'object', nullable: true },
|
|
tags: {
|
|
type: 'array',
|
|
items: {
|
|
$ref: tagSchema.$id,
|
|
},
|
|
nullable: true,
|
|
},
|
|
},
|
|
components: {
|
|
schemas: {
|
|
tagSchema,
|
|
},
|
|
},
|
|
} as const;
|
|
|
|
export type EventSchema = FromSchema<typeof eventSchema>;
|