All files / src/lib/openapi/spec feature-strategy-schema.ts

100% Statements 5/5
100% Branches 0/0
100% Functions 0/0
100% Lines 5/5

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 5960x 60x 60x   60x                                                                                                         60x  
import { createSchemaObject, CreateSchemaType } from '../types';
import { constraintSchema } from './constraint-schema';
import { parametersSchema } from './parameters-schema';
 
export const schema = {
    type: 'object',
    additionalProperties: false,
    required: [
        'id',
        'name',
        'featureName',
        'strategyName',
        'constraints',
        'parameters',
        'environment',
    ],
    properties: {
        id: {
            type: 'string',
        },
        name: {
            type: 'string',
        },
        createdAt: {
            type: 'string',
            format: 'date',
            nullable: true,
        },
        featureName: {
            type: 'string',
        },
        projectId: {
            type: 'string',
        },
        environment: {
            type: 'string',
        },
        strategyName: {
            type: 'string',
        },
        sortOrder: {
            type: 'number',
        },
        constraints: {
            type: 'array',
            items: { $ref: '#/components/schemas/constraintSchema' },
        },
        parameters: { $ref: '#/components/schemas/parametersSchema' },
    },
    'components/schemas': {
        constraintSchema,
        parametersSchema,
    },
} as const;
 
export type FeatureStrategySchema = CreateSchemaType<typeof schema>;
 
export const featureStrategySchema = createSchemaObject(schema);