unleash-server
Version:
Unleash is an enterprise ready feature toggles service. It provides different strategies for handling feature toggles.
107 lines • 3.66 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.stateSchema = void 0;
const feature_schema_1 = require("./feature-schema");
const tag_schema_1 = require("./tag-schema");
const tag_type_schema_1 = require("./tag-type-schema");
const feature_tag_schema_1 = require("./feature-tag-schema");
const project_schema_1 = require("./project-schema");
const feature_strategy_schema_1 = require("./feature-strategy-schema");
const feature_environment_schema_1 = require("./feature-environment-schema");
const environment_schema_1 = require("./environment-schema");
const segment_schema_1 = require("./segment-schema");
const feature_strategy_segment_schema_1 = require("./feature-strategy-segment-schema");
const strategy_schema_1 = require("./strategy-schema");
exports.stateSchema = {
$id: '#/components/schemas/stateSchema',
type: 'object',
additionalProperties: true,
required: ['version'],
properties: {
version: {
type: 'integer',
},
features: {
type: 'array',
items: {
$ref: '#/components/schemas/featureSchema',
},
},
strategies: {
type: 'array',
items: {
$ref: '#/components/schemas/strategySchema',
},
},
tags: {
type: 'array',
items: {
$ref: '#/components/schemas/tagSchema',
},
},
tagTypes: {
type: 'array',
items: {
$ref: '#/components/schemas/tagTypeSchema',
},
},
featureTags: {
type: 'array',
items: {
$ref: '#/components/schemas/featureTagSchema',
},
},
projects: {
type: 'array',
items: {
$ref: '#/components/schemas/projectSchema',
},
},
featureStrategies: {
type: 'array',
items: {
$ref: '#/components/schemas/featureStrategySchema',
},
},
featureEnvironments: {
type: 'array',
items: {
$ref: '#/components/schemas/featureEnvironmentSchema',
},
},
environments: {
type: 'array',
items: {
$ref: '#/components/schemas/environmentSchema',
},
},
segments: {
type: 'array',
items: {
$ref: '#/components/schemas/segmentSchema',
},
},
featureStrategySegments: {
type: 'array',
items: {
$ref: '#/components/schemas/featureStrategySegmentSchema',
},
},
},
components: {
schemas: {
featureSchema: feature_schema_1.featureSchema,
tagSchema: tag_schema_1.tagSchema,
tagTypeSchema: tag_type_schema_1.tagTypeSchema,
featureTagSchema: feature_tag_schema_1.featureTagSchema,
projectSchema: project_schema_1.projectSchema,
featureStrategySchema: feature_strategy_schema_1.featureStrategySchema,
featureEnvironmentSchema: feature_environment_schema_1.featureEnvironmentSchema,
environmentSchema: environment_schema_1.environmentSchema,
segmentSchema: segment_schema_1.segmentSchema,
featureStrategySegmentSchema: feature_strategy_segment_schema_1.featureStrategySegmentSchema,
strategySchema: strategy_schema_1.strategySchema,
},
},
};
//# sourceMappingURL=state-schema.js.map