Vigia

Nâng cấp redoc từ 2.x lên 3.x

So sánh API công khai của redoc 2.5.4 và 3.0.0, được tính tự động từ kiểu TypeScript. Chữ ký thay đổi là thay đổi có thể không tương thích, không phải điều chắc chắn.

Tóm tắt

Đường dẫn import bị xóa0
Export bị xóa238
Chữ ký thay đổi5
Thành viên lớp hoặc interface bị xóa0
Thành viên lớp hoặc interface thay đổi0
Mới bị ngừng hỗ trợ0
Thay đổi yêu cầu (engines, phụ thuộc peer)9
Export mới5

Export bị xóa

importexportkindTrước
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"

Chữ ký thay đổi

exportTrướcSau
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>

Thành viên lớp hoặc interface bị xóa

Không phát hiện.

Thành viên lớp hoặc interface thay đổi

Không phát hiện.

Mới bị ngừng hỗ trợ

Không phát hiện.

Thay đổi yêu cầu (engines, phụ thuộc peer)

TrướcSau
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
Export mới (5)
importexportkind
redoclogoFromSpecfunction
redocprepareApiDocsfunction
redocServerStyleSheetvariable
redocRedoclyApiDocsStandalonevariable
redocRedoclyApiDocsStandalonePropstype

Cung cấp dữ liệu này cho tác tử AI của bạn

Vigia là máy chủ MCP miễn phí: tác tử lập trình của bạn kiểm tra phiên bản, thay đổi phá vỡ tương thích và lỗ hổng trước khi viết mã. Không cần đăng ký, không cần khóa API.

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

Thêm vào CursorThêm vào VS Code★ Gắn sao trên GitHub

Mọi ứng dụng MCP khác
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }

Kỹ năng cho tác tử (SKILL.md): cho tác tử biết khi nào dùng Vigia · GitHub Action cho pull request

Câu hỏi thường gặp

Nâng cấp redoc từ 2 lên 3 có những thay đổi không tương thích nào?

Giữa redoc 2.5.4 và 3.0.0, Vigia tìm thấy 238 export bị xóa, 5 chữ ký thay đổi và 0 thành viên lớp hoặc interface bị xóa hay thay đổi.

Những gì bị ngừng hỗ trợ trong redoc 3?

0 export hoặc thành viên mới bị đánh dấu ngừng hỗ trợ trong redoc 3.0.0.

Dành cho tác tử

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