Vigia

Memperbarui redoc dari 2.x ke 3.x

Perbandingan API publik redoc 2.5.4 dan 3.0.0, dihitung otomatis dari tipe TypeScript-nya. Tanda tangan yang berubah adalah kemungkinan perubahan tidak kompatibel, bukan kepastian.

Ringkasan

Jalur impor yang dihapus0
Ekspor yang dihapus238
Tanda tangan yang berubah5
Anggota kelas atau antarmuka yang dihapus0
Anggota kelas atau antarmuka yang berubah0
Baru ditandai usang0
Perubahan persyaratan (engines, dependensi peer)9
Ekspor baru5

Ekspor yang dihapus

importexportkindSebelum
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"

Tanda tangan yang berubah

exportSebelumSesudah
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>

Anggota kelas atau antarmuka yang dihapus

Tidak ada yang terdeteksi.

Anggota kelas atau antarmuka yang berubah

Tidak ada yang terdeteksi.

Baru ditandai usang

Tidak ada yang terdeteksi.

Perubahan persyaratan (engines, dependensi peer)

SebelumSesudah
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
Ekspor baru (5)
importexportkind
redoclogoFromSpecfunction
redocprepareApiDocsfunction
redocServerStyleSheetvariable
redocRedoclyApiDocsStandalonevariable
redocRedoclyApiDocsStandalonePropstype

Berikan fakta ini ke agen AI Anda

Vigia adalah server MCP gratis: agen coding Anda memeriksa versi, perubahan yang merusak kompatibilitas, dan kerentanan sebelum menulis kode. Tanpa pendaftaran, tanpa kunci API.

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

Tambahkan ke CursorTambahkan ke VS Code★ Bintang di GitHub

Klien MCP lainnya
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }

Skill agen (SKILL.md): memberi tahu agen kapan memakai Vigia · GitHub Action untuk pull request

Pertanyaan umum

Apa saja perubahan tidak kompatibel saat memperbarui redoc dari 2 ke 3?

Antara redoc 2.5.4 dan 3.0.0, Vigia menemukan 238 ekspor yang dihapus, 5 tanda tangan yang berubah, dan 0 anggota kelas atau antarmuka yang dihapus atau berubah.

Apa yang ditandai usang di redoc 3?

0 ekspor atau anggota baru ditandai usang di redoc 3.0.0.

Untuk agen

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