UNPKG

@nestjsvn/swagger-sse

Version:

OpenAPI documentation and interactive Swagger UI for NestJS Server-Sent Events endpoints

69 lines (68 loc) 1.95 kB
"use strict"; /** * Constants used throughout the library */ Object.defineProperty(exports, "__esModule", { value: true }); exports.SSE_EVENT_FIELDS = exports.OPENAPI_CONSTANTS = exports.SSE_HEADERS = exports.SSE_DEFAULTS = exports.METADATA_KEYS = void 0; /** * Metadata keys for storing decorator information */ exports.METADATA_KEYS = { /** Key for storing ApiSse decorator metadata */ API_SSE: 'api-sse', /** Key for storing SSE endpoint configuration */ SSE_CONFIG: 'sse-config', /** Key for storing event type mappings */ SSE_EVENTS: 'sse-events', }; /** * Default SSE configuration values */ exports.SSE_DEFAULTS = { /** Default retry interval in milliseconds */ RETRY_INTERVAL: 3000, /** Default connection timeout in milliseconds */ CONNECTION_TIMEOUT: 30000, /** Default keep-alive interval in milliseconds */ KEEP_ALIVE_INTERVAL: 15000, /** Default maximum number of retry attempts */ MAX_RETRIES: 5, }; /** * HTTP headers commonly used with SSE */ exports.SSE_HEADERS = { /** Content-Type for Server-Sent Events */ CONTENT_TYPE: 'text/event-stream', /** Cache control header */ CACHE_CONTROL: 'no-cache', /** Connection header */ CONNECTION: 'keep-alive', /** Access control headers for CORS */ ACCESS_CONTROL_ALLOW_ORIGIN: '*', ACCESS_CONTROL_ALLOW_HEADERS: 'Cache-Control', }; /** * OpenAPI specification constants */ exports.OPENAPI_CONSTANTS = { /** Media type for SSE in OpenAPI specs */ SSE_MEDIA_TYPE: 'text/event-stream', /** Schema reference prefix */ SCHEMA_REF_PREFIX: '#/components/schemas/', /** Extension key for SSE metadata */ SSE_EXTENSION: 'x-sse-events', }; /** * Event field names in SSE format */ exports.SSE_EVENT_FIELDS = { /** Event type field */ EVENT: 'event', /** Data field */ DATA: 'data', /** ID field */ ID: 'id', /** Retry field */ RETRY: 'retry', };