Vigia

Upgrading redoc from 2.x to 3.x

Comparison of the public API of redoc 2.5.4 and 3.0.0, computed automatically from their TypeScript types. A changed signature is a candidate for a breaking change, not a certainty.

Summary

Removed import paths0
Removed exports238
Changed signatures5
Removed class or interface members0
Changed class or interface members0
Newly deprecated0
Requirement changes (engines, peer dependencies)9
New exports5

Removed exports

importexportkindBefore
redocRowvariableany
redoccssvariablestyledComponents.ThemedCssFunction<ResolvedThemeInterface>
redocmediavariable{ lessThan(breakpoint: any, print?: boolean | undefined, extra?: string | undefined): (...args: any[]) => styledComponents.FlattenInterpolation<styledComponents.ThemedStyledProps<object, ResolvedThemeInterface>>; greaterThan(breakpoint: any): (...args: any[]) => styledComponents.FlattenInterpolation<styledComponents.ThemedStyledProps<object, ResolvedThemeInterface>>; between(firstBreakpoint: any, secondBreakpoint: any): (...args: any[]) => styledComponents.FlattenInterpolation<styledComponents.ThemedStyledProps<object, ResolvedThemeInterface>>; }
redocSchemaclassclass
redocstyledvariablestyledComponents.ThemedStyledInterface<ResolvedThemeInterface>
redocApiInfoclassclass
redocApiLogoclassclass
redocExamplefunction({ example, mimeType }: ExampleProps): React.JSX.Element
redocLoadingclassclass
redocSectionvariableany
redocTagInfotypeOpenAPITag & { operations: ExtendedOpenAPIOperation[]; used?: boolean | undefined; }
redochistoryvariableHistoryService
redocisArrayfunction(value: unknown): value is any[]
redocmapLangfunction(lang: string): string
redocmemoizefunction<T>(target: any, name: string, descriptor: TypedPropertyDescriptor<T>): TypedPropertyDescriptor<T>
redocpushReffunction(stack: string[], ref?: string | undefined): string[]
redocAppStoreclassclass
redocDropdownvariableany
redocMarkdownclassclass
redocMenuItemclassclass
redocSideMenuclassclass
redocTagGroupinterfaceinterface
redocThrottlefunction(delay: number): (_: any, _2: any, desc: PropertyDescriptor) => void
redochtml2Strfunction(html: string): string
redocisObjectvariable(item: unknown): item is Record<string, unknown>
redoctitleizefunction(text: string): string
redocuseStorefunction(): AppStore | undefined
redocIMenuIteminterfaceinterface
redocJsonPropsinterfaceinterface
redocMenuItemsclassclass
redocMenuStoreclassclass
redocMimeLabelvariableany
redocOperationvariable({ operation }: OperationProps): JSX.Element
redocRedocWrapvariableany
redocSearchBoxclassclass
redocSpecStoreclassclass
redocdebugTimefunction(label: string): void
redochighlightfunction(source: string | number | boolean, lang?: string | undefined): string
redocisBooleanfunction(value: unknown): value is boolean
redocisNumericfunction(n: any): n is number
redockeyframesvariable(strings: any, ...interpolations: styledComponents.SimpleInterpolation[]): styledComponents.Keyframes
redocmapValuesfunction<T, P>(object: Record<string, T>, iteratee: (val: T, key: string, obj: Record<string, T>) => P): Record<string, P>
redocAUTH_TYPESvariable{ oauth2: string; apiKey: string; http: string; openIdConnect: string; }
redocFieldModelclassclass
redocGroupModelclassclass
redocIS_BROWSERvariableboolean
redocJsonViewervariableany
redocMenuItemLivariableany
redocMenuItemUlvariableany
redocParametersclassclass
redocRightPanelvariableany
redocSourceCodevariable(props: SourceCodeProps): React.JSX.Element
redocStoreStateinterfaceinterface
redocdetectTypefunction(schema: OpenAPISchema): string
redocisJsonLikefunction(contentType: string): boolean
redocresolveUrlfunction(url: string, to: string): string
redocArraySchemaclassclass
redocBodyContentfunction(props: { content: MediaContentModel; description?: string | undefined; bodyRequired?: boolean | undefined; }): JSX.Element
redocContentItemclassclass
redocGROUP_DEPTHvariable0
redocJsonPointerclassclass
redocMenuBuilderclassclass
redocMiddlePanelvariableany
redocOneOfButtonclassclass
redocOneOfSchemaclassclass
redocSchemaModelclassclass
redocSchemaPropsinterfaceinterface
redocSearchStoreclassclass
redocSectionItemclassclass
redocTagsInfoMaptype{ [x: string]: TagInfo; }
redoccreateStorefunction(spec: object, specUrl: string | undefined, options?: RedocRawOptions | undefined): Promise<AppStore>
redocgetBasePathfunction(serverUrl: string): string
redocmapWithLastfunction<T, P>(array: T[], iteratee: (item: T, isLast: boolean) => P): P[]
redocmergeParamsfunction(parser: OpenAPIParser, pathParams?: Referenced<OpenAPIParameter>[] | undefined, operationParams?: Referenced<OpenAPIParameter>[] | undefined): Referenced<OpenAPIParameter>[]
redocsafeSlugifyfunction(value: string): string
redocsortByFieldfunction(fields: FieldModel[], param: "name" | "description" | "kind"): FieldModel[]
redocApiInfoModelclassclass
redocApiInfoPropsinterfaceinterface
redocContentItemsclassclass
redocExampleModelclassclass
redocExamplePropsinterfaceinterface
redocLabelsConfiginterfaceinterface
redocLoadingPropsinterfaceinterface
redocMenuItemTypetypeMenuItemGroupType | "operation"
redocObjectSchemavariable({ schema: { fields, title }, showTitle, discriminator, skipReadOnly, skipWriteOnly, level, fieldParentsName, }: ObjectSchemaProps): React.JSX.Element
redocResponseViewvariable({ response }: ResponseViewProps): React.ReactElement
redocSECTION_ATTRvariable"data-section-id"
redocSearchResultinterfaceinterface
redocSecurityDefsclassclass
redocStoreBuilderfunction(props: StoreBuilderProps): any
redocStoreContextvariableReact.Context<AppStore | undefined>
redocdebugTimeEndfunction(label: string): void
redocisStatusCodefunction(statusCode: string): boolean
redoclangFromMimefunction(contentType: string): string
redocmergeObjectsvariable(target: any, ...sources: any[]): any
redocCallbackModelclassclass
redocDropdownLabelvariableany
redocErrorBoundaryclassclass
redocLEGACY_REGEXPvariable"^ {0,3}<!-- ReDoc-Inject:\\s+?<({component}).*?/?>\\s+?-->\\s*$"
redocMarkdownPropstypeBaseMarkdownProps & StylingMarkdownProps & { source: string; className?: string | undefined; 'data-role'?: string | undefined; }
redocMarkerServiceclassclass
redocMenuItemLabelvariableany
redocMenuItemPropsinterfaceinterface
redocMenuItemTitlevariableany
redocNoSampleLabelvariableany
redocOpenAPIParserclassclass
redocOperationItemclassclass
redocResponseModelclassclass
redocResponseTitlevariableReact.NamedExoticComponent<ResponseTitleProps>
redocResponsesListclassclass
redocSchemaOptionsinterfaceinterface
redocScrollServiceclassclass
redocStoreConsumervariableReact.Consumer<AppStore | undefined>
redocStoreProvidervariableReact.Provider<AppStore | undefined>
redocThemeProvidervariablestyledComponents.BaseThemeProviderComponent<ResolvedThemeInterface, ResolvedThemeInterface>
redocflattenByPropfunction<T extends object, P extends keyof T>(collectionItems: T[], prop: P): T[]
redocisAbsoluteUrlfunction(url: string): boolean
redocmenuItemDepthvariable{ 0: any; 1: any; }
redocpluralizeTypefunction(displayType: string): string
redocquerySelectorfunction(selector: string): Element | null
redocApiContentWrapvariableany
redocBackgroundStubvariableany
redocDropdownOptioninterfaceinterface
redocHistoryServiceclassclass
redocMediaTypeModelclassclass
redocMenuItemsPropsinterfaceinterface
redocOperationBadgevariableany
redocOperationModelclassclass
redocOperationPropsinterfaceinterface
redocOptionsContextvariableReact.Context<RedocNormalizedOptions>
redocPayloadSamplesclassclass
redocSearchBoxPropsinterfaceinterface
redocSearchBoxStateinterfaceinterface
redocSearchDocumentinterfaceinterface
redocSimpleDropdownvariableany
redocXPayloadSampleinterfaceinterface
redocextensionsHookfunction(styledName: string): (props: any) => any
redocsortByRequiredfunction(fields: FieldModel[], order?: string[] | undefined): FieldModel[]
redocDropdownOrLabelfunction(props: DropdownOrLabelProps): JSX.Element
redocDropdownWrappervariableany
redocExternalExamplefunction({ example, mimeType }: ExampleProps): React.JSX.Element
redocLabelsConfigRawtype{ enum?: string | undefined; enumSingleValue?: string | undefined; enumArray?: string | undefined; default?: string | undefined; deprecated?: string | undefined; example?: string | undefined; examples?: string | undefined; recursive?: string | undefined; arrayOf?: string | undefined; webhook?: string | undefined; const?: string | undefined; noResultsFound?: string | undefined; download?: string | undefined; downloadSpecification?: string | undefined; responses?: string | undefined; callbackResponses?: string | undefined; requestSamples?: string | undefined; responseSamples?: string | undefined…
redocMarkdownHeadinginterfaceinterface
redocOpenAPIEncodinginterfaceinterface
redocOptionsConsumervariableReact.Consumer<RedocNormalizedOptions>
redocOptionsProvidervariableReact.Provider<RedocNormalizedOptions>
redocParametersPropsinterfaceinterface
redocRedocRawOptionsinterfaceinterface
redocResponseDetailsclassclass
redocResponseHeadersclassclass
redocResponseSamplesclassclass
redocSourceCodePropsinterfaceinterface
redocconcatRefStacksfunction(base: string[], stack?: string[] | undefined): string[]
redocisOperationNamefunction(key: string): boolean
redocisPayloadSamplefunction(sample: XPayloadSample | OpenAPIXCodeSample): sample is XPayloadSample
redocisPrimitiveTypefunction(schema: OpenAPISchema, type?: string | string[] | undefined): any
redocshortenHTTPVerbvariable(verb: any): any
redocCOMPONENT_REGEXPvariablestring
redocClipboardServiceclassclass
redocContentItemModeltypeGroupModel | OperationModel
redocContentItemPropsinterfaceinterface
redocMDXComponentMetainterfaceinterface
redocMarkdownRendererclassclass
redocMediaTypesSwitchclassclass
redocOneOfButtonPropsinterfaceinterface
redocRedocAttributionvariableany
redocRequestBodyModelclassclass
redocSchemaDefinitionclassclass
redocSideNavStyleEnumenumSideNavStyleEnum
redocisFormUrlEncodedfunction(contentType: string): boolean
redocisRedocExtensionfunction(key: string): boolean
redocnormalizeServersfunction(specUrl: string | undefined, servers: OpenAPIServer[]): OpenAPIServer[]
redocBaseMarkdownPropsinterfaceinterface
redocMediaContentModelclassclass
redocMenuItemGroupTypetype"schema" | "group" | "tag" | "section"
redocMenuItemLabelTypeinterfaceinterface
redocObjectSchemaPropsinterfaceinterface
redocResponseListPropsinterfaceinterface
redocResponseViewPropsinterfaceinterface
redocSecurityDefsPropsinterfaceinterface
redocStoreBuilderPropsinterfaceinterface
redocStoreBuilderStateinterfaceinterface
redocappendToMdHeadingfunction(md: string, heading: string, content: string): string
redocargValueToBooleanfunction(val?: string | boolean | undefined, defaultValue?: boolean | undefined): boolean
redoccreateGlobalStylevariable<P extends object = {}>(first: any, ...interpolations: styledComponents.Interpolation<styledComponents.ThemedStyledProps<P, ResolvedThemeInterface>>[]): styledComponents.GlobalStyleComponent<P, ResolvedThemeInterface>
redocextractExtensionsfunction(obj: object, showExtensions: true | string[]): Record<string, any>
redocgetDefinitionNamefunction(pointer?: string | undefined): string | undefined
redocgetStatusCodeTypefunction(statusCode: string | number, defaultAsError?: boolean | undefined): string
redocisNamedDefinitionfunction(pointer?: string | undefined): boolean
redocloadAndBundleSpecfunction(specUrlOrObject: string | object): Promise<OpenAPISpec>
redocunescapeHTMLCharsfunction(str: string): string
redocDownloadUrlsConfigtype{ title?: string | undefined; url: string; }[]
redocResponseTitlePropsinterfaceinterface
redocSourceCodeWithCopyvariable(props: SourceCodeProps): React.JSX.Element
redocStickySidebarPropsinterfaceinterface
redocStickySidebarStateinterfaceinterface
redocgetSerializedValuefunction(field: FieldModel, example: any): any
redocstripTrailingSlashfunction(path: string): string
redocMediaTypeChildPropsinterfaceinterface
redocMergedOpenAPISchematypeOpenAPISchema & { 'x-refsStack'?: string[] | undefined; 'x-parentRefs'?: string[] | undefined; 'x-circular-ref'?: boolean | undefined; }
redocPayloadSamplesPropsinterfaceinterface
redocSecuritySchemeModelclassclass
redocStyledMarkdownBlockvariableStyledComponent<"div", ResolvedThemeInterface, { $compact?: boolean | undefined; $inline?: boolean | undefined; }, never>
redocescapeHTMLAttrCharsfunction(str: string): string
redocgetOperationSummaryfunction(operation: ExtendedOpenAPIOperation): string
redochumanizeConstraintsfunction(schema: OpenAPISchema): string[]
redochumanizeNumberRangefunction(schema: OpenAPISchema): string | undefined
redocDropdownOrLabelPropsinterfaceinterface
redocMDX_COMPONENT_REGEXPvariablestring
redocResponseHeadersPropsinterfaceinterface
redocResponseSamplesPropsinterfaceinterface
redocSecuritySchemesModelclassclass
redocStylingMarkdownPropsinterfaceinterface
redocalphabeticallyByPropfunction<T>(property: string): (a: T, b: T) => number
redocurlFormEncodePayloadfunction(payload: object, encoding?: { [field: string]: OpenAPIEncoding; } | undefined): string
redocDiscriminatorDropdownclassclass
redocMediaTypesSwitchPropsinterfaceinterface
redocbuildComponentCommentfunction(name: string): string
redocInvertedSimpleDropdownvariableany
redocObjectDescriptionPropsinterfaceinterface
redocRedocNormalizedOptionsclassclass
redocResolvedThemeInterfaceinterfaceinterface
redocmergeSimilarMediaTypesfunction(types: Record<string, OpenAPIMediaType>): Record<string, OpenAPIMediaType>
redocscrollIntoViewIfNeededfunction(el: HTMLElement, centerIfNeeded?: boolean | undefined): void
redocStickyResponsiveSidebarclassclass
redocserializeParameterValuefunction(parameter: FieldModel | (OpenAPIParameter & { serializationMime?: string | undefined; }), value: any): string
redocsetSecuritySchemePrefixfunction(prefix: string): void
redocExtendedOpenAPIOperationtype{ pointer: string; pathName: string; httpVerb: string; pathParameters: Referenced<OpenAPIParameter>[]; pathServers: OpenAPIServer[] | undefined; isWebhook: boolean; } & OpenAPIOperation
redocOperationMenuItemContentvariable(props: OperationMenuItemContentProps): React.JSX.Element
redocremoveQueryStringAndHashfunction(serverUrl: string): string
redocSCHEMA_DEFINITION_JSX_NAMEvariable"SchemaDefinition"
redocexpandDefaultServerVariablesfunction(url: string, variables?: object | undefined): string
redocgetContentWithLegacyExamplesfunction(info: OpenAPIRequestBody | OpenAPIResponse): { [mime: string]: OpenAPIMediaType; } | undefined
redocOperationMenuItemContentPropsinterfaceinterface
redocSECURITY_DEFINITIONS_JSX_NAMEvariable"SecurityDefinitions"
redocSECURITY_SCHEMES_SECTION_PREFIXvariablestring
redocserializeParameterValueWithMimefunction(value: any, mime: string): string
redocOLD_SECURITY_DEFINITIONS_JSX_NAMEvariable"security-definitions"

Changed signatures

exportBeforeAfter
redoc · RedocclassFC<any>
redoc · RedocPropsinterfaceRedoclyApiDocsInnerProps & { store: ApiStore; options: RawApiDocsOptions; layout?: any; }
redoc · RedocStandalone(props: RedocStandaloneProps): React.JSX.Element({ spec, specUrl, options, basePath, logo, markdownAdapter, onLoaded, children, }: RedocStandaloneProps): any
redoc · RedocStandalonePropsinterface{ spec?: string | Record<string, unknown> | undefined; specUrl?: string | undefined; options?: Partial<RawApiDocsOptions> | undefined; basePath?: string | undefined; logo?: RawLogo | undefined; markdownAdapter?: MarkdownAdapter | undefined; onLoaded?: ((error?: Error | undefined) => void) | undefined; children?: any; }
redoc · convertSwagger2OpenAPI(spec: any): Promise<OpenAPISpec>(document: Record<string, unknown>): Promise<OpenAPIDefinition>

Removed class or interface members

None detected.

Changed class or interface members

None detected.

Newly deprecated

None detected.

Requirement changes (engines, peer dependencies)

BeforeAfter
engines.npm>=3.0.0>=10.0.0
engines.node>=6.9>=22
peerDependencies.mobx^6.0.4—
peerDependencies.react^16.8.4 || ^17.0.0 || ^18.0.0 || ^19.0.0^18.3.0 || ^19.0.0
peerDependencies.core-js^3.1.4—
peerDependencies.react-dom^16.8.4 || ^17.0.0 || ^18.0.0 || ^19.0.0^18.3.0 || ^19.0.0
peerDependencies.styled-components^4.1.1 || ^5.1.1 || ^6.0.5^6.0.0
peerDependencies.react-router—^7.0.0 || ^8.0.0
peerDependencies.@redocly/config—>=0.65.0
New exports (5)
importexportkind
redoclogoFromSpecfunction
redocprepareApiDocsfunction
redocServerStyleSheetvariable
redocRedoclyApiDocsStandalonevariable
redocRedoclyApiDocsStandalonePropstype

Give your AI agent these facts

Vigia is a free MCP server: your coding agent checks versions, breaking changes and vulnerabilities before it writes code. No signup, no API key.

claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp

Add to CursorAdd to VS Code★ Star on GitHub

Any other MCP client
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }

Agent skill (SKILL.md): tells the agent when to use Vigia · GitHub Action for pull requests

Frequently asked questions

What are the breaking changes when upgrading redoc from 2 to 3?

Between redoc 2.5.4 and 3.0.0, Vigia found 238 removed exports, 5 changed signatures and 0 removed or changed class or interface members.

What became deprecated in redoc 3?

0 exports or members are newly marked as deprecated in redoc 3.0.0.

For agents

GET https://vigia.coredls.cloud/v1/packages/npm/redoc/upgrade?from=2.5.4&to=3.0.0