redoc 2.0.0-rc.9 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +920 -10
- package/README.md +244 -187
- package/bundles/756674defce81e90acea.worker.js.LICENSE.txt +68 -0
- package/bundles/756674defce81e90acea.worker.js.map +1 -0
- package/bundles/redoc.browser.lib.js +1820 -0
- package/bundles/redoc.browser.lib.js.LICENSE.txt +6 -0
- package/bundles/redoc.browser.lib.js.map +1 -0
- package/bundles/redoc.lib.js +1744 -13438
- package/bundles/redoc.lib.js.LICENSE.txt +6 -0
- package/bundles/redoc.lib.js.map +1 -1
- package/bundles/redoc.standalone.js +1819 -122
- package/bundles/redoc.standalone.js.LICENSE.txt +95 -0
- package/bundles/redoc.standalone.js.map +1 -1
- package/package.json +131 -112
- package/typings/common-elements/CopyButtonWrapper.d.ts +4 -10
- package/typings/common-elements/Dropdown/Dropdown.d.ts +3 -0
- package/typings/common-elements/Dropdown/index.d.ts +2 -0
- package/typings/common-elements/Dropdown/styled.d.ts +8 -0
- package/typings/common-elements/Dropdown/types.d.ts +24 -0
- package/typings/common-elements/fields.d.ts +7 -2
- package/typings/common-elements/headers.d.ts +1 -1
- package/typings/common-elements/index.d.ts +1 -1
- package/typings/common-elements/linkify.d.ts +4 -8
- package/typings/common-elements/mixins.d.ts +1 -1
- package/typings/common-elements/panels.d.ts +4 -3
- package/typings/common-elements/samples.d.ts +3 -1
- package/typings/common-elements/schema.d.ts +3 -2
- package/typings/common-elements/shelfs.d.ts +2 -6
- package/typings/components/ApiInfo/styled.elements.d.ts +3 -1
- package/typings/components/ApiLogo/styled.elements.d.ts +1 -0
- package/typings/components/CallbackSamples/CallbackReqSamples.d.ts +11 -0
- package/typings/components/CallbackSamples/CallbackSamples.d.ts +13 -0
- package/typings/components/Callbacks/CallbackDetails.d.ts +8 -0
- package/typings/components/Callbacks/CallbackOperation.d.ts +8 -0
- package/typings/components/Callbacks/CallbackTitle.d.ts +10 -0
- package/typings/components/Callbacks/CallbacksList.d.ts +8 -0
- package/typings/components/Callbacks/index.d.ts +3 -0
- package/typings/components/Callbacks/styled.elements.d.ts +3 -0
- package/typings/components/ContentItems/ContentItems.d.ts +2 -2
- package/typings/components/DropdownOrLabel/DropdownOrLabel.d.ts +6 -3
- package/typings/components/Endpoint/Endpoint.d.ts +1 -0
- package/typings/components/Endpoint/styled.elements.d.ts +3 -2
- package/typings/components/ErrorBoundary.d.ts +2 -2
- package/typings/components/Fields/ArrayItemDetails.d.ts +5 -0
- package/typings/components/Fields/EnumValues.d.ts +8 -2
- package/typings/components/Fields/Examples.d.ts +5 -0
- package/typings/components/Fields/Field.d.ts +4 -2
- package/typings/components/Fields/FieldDetail.d.ts +1 -3
- package/typings/components/Fields/FieldDetails.d.ts +2 -3
- package/typings/components/Fields/Pattern.d.ts +5 -0
- package/typings/components/GenericChildrenSwitcher/GenericChildrenSwitcher.d.ts +22 -0
- package/typings/components/JsonViewer/JsonViewer.d.ts +2 -15
- package/typings/components/JsonViewer/style.d.ts +1 -1
- package/typings/components/Loading/Spinner.svg.d.ts +2 -1
- package/typings/components/Markdown/AdvancedMarkdown.d.ts +1 -0
- package/typings/components/Markdown/Markdown.d.ts +2 -1
- package/typings/components/Markdown/SanitizedMdBlock.d.ts +2 -0
- package/typings/components/Markdown/styled.elements.d.ts +1 -1
- package/typings/components/MediaTypeSwitch/MediaTypesSwitch.d.ts +3 -4
- package/typings/components/Operation/Operation.d.ts +4 -6
- package/typings/components/OptionsProvider.d.ts +2 -2
- package/typings/components/Parameters/Parameters.d.ts +7 -1
- package/typings/components/PayloadSamples/Example.d.ts +1 -0
- package/typings/components/PayloadSamples/ExampleValue.d.ts +1 -0
- package/typings/components/PayloadSamples/MediaTypeSamples.d.ts +11 -1
- package/typings/components/PayloadSamples/styled.elements.d.ts +6 -2
- package/typings/components/RedocStandalone.d.ts +2 -11
- package/typings/components/Responses/Response.d.ts +3 -5
- package/typings/components/Responses/ResponseTitle.d.ts +1 -3
- package/typings/components/Responses/ResponsesList.d.ts +1 -0
- package/typings/components/Responses/styled.elements.d.ts +6 -3
- package/typings/components/Schema/DiscriminatorDropdown.d.ts +2 -4
- package/typings/components/Schema/ObjectSchema.d.ts +2 -5
- package/typings/components/Schema/RecursiveSchema.d.ts +3 -0
- package/typings/components/Schema/Schema.d.ts +2 -1
- package/typings/components/SchemaDefinition/SchemaDefinition.d.ts +18 -0
- package/typings/components/SearchBox/SearchBox.d.ts +6 -4
- package/typings/components/SearchBox/styled.elements.d.ts +2 -1
- package/typings/components/SecurityRequirement/OAuthFlow.d.ts +9 -0
- package/typings/components/SecurityRequirement/RequiredScopesRow.d.ts +4 -0
- package/typings/components/SecurityRequirement/SecurityDetails.d.ts +8 -0
- package/typings/components/SecurityRequirement/SecurityHeader.d.ts +8 -0
- package/typings/components/SecurityRequirement/SecurityRequirement.d.ts +2 -10
- package/typings/components/SecurityRequirement/styled.elements.d.ts +17 -0
- package/typings/components/SecuritySchemes/SecuritySchemes.d.ts +7 -9
- package/typings/components/SeeMore/SeeMore.d.ts +7 -0
- package/typings/components/SelectOnClick/SelectOnClick.d.ts +1 -1
- package/typings/components/SideMenu/Logo.d.ts +2 -0
- package/typings/components/SideMenu/MenuItem.d.ts +7 -4
- package/typings/components/SideMenu/MenuItems.d.ts +1 -1
- package/typings/components/SideMenu/SideMenu.d.ts +3 -1
- package/typings/components/SideMenu/styled.elements.d.ts +12 -13
- package/typings/components/SourceCode/SourceCode.d.ts +3 -7
- package/typings/components/StickySidebar/ChevronSvg.d.ts +1 -0
- package/typings/components/StickySidebar/StickyResponsiveSidebar.d.ts +10 -3
- package/typings/components/StoreBuilder.d.ts +7 -18
- package/typings/components/index.d.ts +6 -0
- package/typings/index.d.ts +3 -1
- package/typings/services/AppStore.d.ts +4 -13
- package/typings/services/HistoryService.d.ts +1 -1
- package/typings/services/Labels.d.ts +1 -12
- package/typings/services/MarkdownRenderer.d.ts +7 -16
- package/typings/services/MenuBuilder.d.ts +16 -21
- package/typings/services/MenuStore.d.ts +10 -23
- package/typings/services/OpenAPIParser.d.ts +21 -23
- package/typings/services/RedocNormalizedOptions.d.ts +61 -6
- package/typings/services/ScrollService.d.ts +1 -1
- package/typings/services/SearchStore.d.ts +5 -3
- package/typings/services/SearchWorker.worker.d.ts +5 -9
- package/typings/services/SpecStore.d.ts +6 -4
- package/typings/services/index.d.ts +1 -0
- package/typings/services/models/ApiInfo.d.ts +6 -3
- package/typings/services/models/Callback.d.ts +11 -0
- package/typings/services/models/Example.d.ts +2 -2
- package/typings/services/models/Field.d.ts +12 -6
- package/typings/services/models/Group.model.d.ts +3 -4
- package/typings/services/models/MediaContent.d.ts +6 -7
- package/typings/services/models/MediaType.d.ts +4 -3
- package/typings/services/models/Operation.d.ts +29 -11
- package/typings/services/models/RequestBody.d.ts +12 -5
- package/typings/services/models/Response.d.ts +14 -4
- package/typings/services/models/Schema.d.ts +16 -7
- package/typings/services/models/SecurityRequirement.d.ts +3 -2
- package/typings/services/models/SecuritySchemes.d.ts +3 -2
- package/typings/services/models/Webhook.d.ts +9 -0
- package/typings/services/models/index.d.ts +1 -0
- package/typings/services/types.d.ts +107 -0
- package/typings/styled-components.d.ts +6 -9
- package/typings/styled-patch.d.ts +0 -10
- package/typings/theme.d.ts +32 -6
- package/typings/types/index.d.ts +0 -6
- package/typings/types/index.ts +3 -0
- package/typings/types/open-api.d.ts +251 -213
- package/typings/types/open-api.ts +297 -0
- package/typings/utils/dom.d.ts +1 -0
- package/typings/utils/helpers.d.ts +10 -5
- package/typings/utils/highlight.d.ts +6 -2
- package/typings/utils/index.d.ts +1 -0
- package/typings/utils/jsonToHtml.d.ts +1 -1
- package/typings/utils/openapi.d.ts +23 -14
- package/typings/utils/sort.d.ts +6 -0
- package/bundles/63bafba847dac11ff66b.worker.js.map +0 -1
- package/bundles/ad47ff28a70e23aac7c4.worker.js.map +0 -1
- package/typings/common-elements/dropdown.d.ts +0 -13
- package/typings/types/components.d.ts +0 -5
- /package/typings/components/Fields/{FieldContstraints.d.ts → FieldConstraints.d.ts} +0 -0
|
@@ -1,19 +1,22 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { OperationModel } from '../../services';
|
|
3
|
+
import type { IMenuItem } from '../../services';
|
|
3
4
|
export interface MenuItemProps {
|
|
4
5
|
item: IMenuItem;
|
|
5
6
|
onActivate?: (item: IMenuItem) => void;
|
|
6
7
|
withoutChildren?: boolean;
|
|
8
|
+
children?: React.ReactChild;
|
|
7
9
|
}
|
|
8
10
|
export declare class MenuItem extends React.Component<MenuItemProps> {
|
|
9
|
-
ref:
|
|
10
|
-
activate: (evt: React.MouseEvent<HTMLElement
|
|
11
|
+
ref: React.RefObject<HTMLLabelElement>;
|
|
12
|
+
activate: (evt: React.MouseEvent<HTMLElement>) => void;
|
|
11
13
|
componentDidMount(): void;
|
|
12
14
|
componentDidUpdate(): void;
|
|
13
15
|
scrollIntoViewIfActive(): void;
|
|
14
|
-
saveRef: (ref: any) => void;
|
|
15
16
|
render(): JSX.Element;
|
|
16
17
|
}
|
|
17
18
|
export interface OperationMenuItemContentProps {
|
|
18
19
|
item: OperationModel;
|
|
20
|
+
children?: React.ReactChild;
|
|
19
21
|
}
|
|
22
|
+
export declare const OperationMenuItemContent: (props: OperationMenuItemContentProps) => JSX.Element;
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { MenuStore } from '../../services';
|
|
3
|
+
import type { IMenuItem } from '../../services';
|
|
3
4
|
export declare class SideMenu extends React.Component<{
|
|
4
5
|
menu: MenuStore;
|
|
5
6
|
className?: string;
|
|
6
7
|
}> {
|
|
8
|
+
static contextType: React.Context<import("../../services").RedocNormalizedOptions>;
|
|
7
9
|
private _updateScroll?;
|
|
8
10
|
render(): JSX.Element;
|
|
9
11
|
activate: (item: IMenuItem) => void;
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { ResolvedThemeInterface } from '../../styled-components';
|
|
2
|
+
export declare const OperationBadge: import("styled-components").StyledComponent<"span", ResolvedThemeInterface, {
|
|
3
|
+
className: `operation-type ${string}`;
|
|
3
4
|
} & {
|
|
4
5
|
type: string;
|
|
5
6
|
}, "className">;
|
|
6
|
-
export declare const MenuItemUl: import("styled-components").StyledComponent<"ul",
|
|
7
|
+
export declare const MenuItemUl: import("styled-components").StyledComponent<"ul", ResolvedThemeInterface, {
|
|
7
8
|
expanded: boolean;
|
|
8
9
|
}, never>;
|
|
9
|
-
export declare const MenuItemLi: import("styled-components").StyledComponent<"li",
|
|
10
|
+
export declare const MenuItemLi: import("styled-components").StyledComponent<"li", ResolvedThemeInterface, {
|
|
10
11
|
depth: number;
|
|
11
12
|
}, never>;
|
|
12
13
|
export declare const menuItemDepth: {
|
|
13
|
-
0: import("styled-components").FlattenInterpolation<import("styled-components").
|
|
14
|
-
1: import("styled-components").FlattenInterpolation<import("styled-components").
|
|
15
|
-
2: import("styled-components").FlattenInterpolation<import("styled-components").ThemeProps<import("../../theme").ResolvedThemeInterface>>;
|
|
14
|
+
0: import("styled-components").FlattenInterpolation<import("styled-components").ThemedStyledProps<object, ResolvedThemeInterface>>;
|
|
15
|
+
1: import("styled-components").FlattenInterpolation<import("styled-components").ThemedStyledProps<object, ResolvedThemeInterface>>;
|
|
16
16
|
};
|
|
17
17
|
export interface MenuItemLabelType {
|
|
18
18
|
depth: number;
|
|
@@ -20,11 +20,10 @@ export interface MenuItemLabelType {
|
|
|
20
20
|
deprecated?: boolean;
|
|
21
21
|
type?: string;
|
|
22
22
|
}
|
|
23
|
-
export declare const MenuItemLabel: import("styled-components").StyledComponent<"label",
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
export declare const MenuItemTitle: import("styled-components").StyledComponent<"span", import("../../theme").ResolvedThemeInterface, {
|
|
23
|
+
export declare const MenuItemLabel: import("styled-components").StyledComponent<"label", ResolvedThemeInterface, {
|
|
24
|
+
className: string;
|
|
25
|
+
} & MenuItemLabelType, "className">;
|
|
26
|
+
export declare const MenuItemTitle: import("styled-components").StyledComponent<"span", ResolvedThemeInterface, {
|
|
28
27
|
width?: string | undefined;
|
|
29
28
|
}, never>;
|
|
30
|
-
export declare const RedocAttribution: import("styled-components").StyledComponent<"div",
|
|
29
|
+
export declare const RedocAttribution: import("styled-components").StyledComponent<"div", ResolvedThemeInterface, {}, never>;
|
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
/// <reference types="react" />
|
|
2
2
|
export interface SourceCodeProps {
|
|
3
3
|
source: string;
|
|
4
4
|
lang: string;
|
|
5
5
|
}
|
|
6
|
-
export declare
|
|
7
|
-
|
|
8
|
-
}
|
|
9
|
-
export declare class SourceCodeWithCopy extends React.PureComponent<SourceCodeProps> {
|
|
10
|
-
render(): JSX.Element;
|
|
11
|
-
}
|
|
6
|
+
export declare const SourceCode: (props: SourceCodeProps) => JSX.Element;
|
|
7
|
+
export declare const SourceCodeWithCopy: (props: SourceCodeProps) => JSX.Element;
|
|
@@ -1,16 +1,23 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { MenuStore } from '../../services/MenuStore';
|
|
3
|
-
import { RedocRawOptions } from '../../services/RedocNormalizedOptions';
|
|
3
|
+
import { RedocNormalizedOptions, RedocRawOptions } from '../../services/RedocNormalizedOptions';
|
|
4
|
+
import { OptionsContext } from '../OptionsProvider';
|
|
4
5
|
export interface StickySidebarProps {
|
|
5
6
|
className?: string;
|
|
6
7
|
scrollYOffset?: RedocRawOptions['scrollYOffset'];
|
|
7
8
|
menu: MenuStore;
|
|
8
9
|
}
|
|
9
|
-
export
|
|
10
|
+
export interface StickySidebarState {
|
|
11
|
+
offsetTop?: string;
|
|
12
|
+
}
|
|
13
|
+
export declare class StickyResponsiveSidebar extends React.Component<StickySidebarProps, StickySidebarState> {
|
|
14
|
+
static contextType: React.Context<RedocNormalizedOptions>;
|
|
15
|
+
context: React.ContextType<typeof OptionsContext>;
|
|
16
|
+
state: StickySidebarState;
|
|
10
17
|
stickyElement: Element;
|
|
11
18
|
componentDidMount(): void;
|
|
12
19
|
componentWillUnmount(): void;
|
|
13
|
-
getScrollYOffset(options:
|
|
20
|
+
getScrollYOffset(options: RedocNormalizedOptions): string;
|
|
14
21
|
render(): JSX.Element;
|
|
15
22
|
private toggleNavMenu;
|
|
16
23
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as React from 'react';
|
|
2
2
|
import { AppStore } from '../services/';
|
|
3
3
|
import { RedocRawOptions } from '../services/RedocNormalizedOptions';
|
|
4
4
|
export interface StoreBuilderProps {
|
|
@@ -9,7 +9,7 @@ export interface StoreBuilderProps {
|
|
|
9
9
|
onLoaded?: (e?: Error) => void;
|
|
10
10
|
children: (props: {
|
|
11
11
|
loading: boolean;
|
|
12
|
-
store
|
|
12
|
+
store: AppStore | null;
|
|
13
13
|
}) => any;
|
|
14
14
|
}
|
|
15
15
|
export interface StoreBuilderState {
|
|
@@ -19,19 +19,8 @@ export interface StoreBuilderState {
|
|
|
19
19
|
prevSpec?: any;
|
|
20
20
|
prevSpecUrl?: string;
|
|
21
21
|
}
|
|
22
|
-
declare const
|
|
23
|
-
|
|
24
|
-
export
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
resolvedSpec: null;
|
|
28
|
-
prevSpec: object | undefined;
|
|
29
|
-
prevSpecUrl: string | undefined;
|
|
30
|
-
} | null;
|
|
31
|
-
state: StoreBuilderState;
|
|
32
|
-
makeStore(spec: any, specUrl: any, options: any): AppStore | undefined;
|
|
33
|
-
componentDidMount(): void;
|
|
34
|
-
componentDidUpdate(): void;
|
|
35
|
-
load(): Promise<void>;
|
|
36
|
-
render(): any;
|
|
37
|
-
}
|
|
22
|
+
declare const StoreContext: React.Context<AppStore | undefined>;
|
|
23
|
+
declare const Provider: React.Provider<AppStore | undefined>, Consumer: React.Consumer<AppStore | undefined>;
|
|
24
|
+
export { Provider as StoreProvider, Consumer as StoreConsumer, StoreContext };
|
|
25
|
+
export declare function StoreBuilder(props: StoreBuilderProps): any;
|
|
26
|
+
export declare function useStore(): AppStore | undefined;
|
|
@@ -19,10 +19,16 @@ export * from './Responses/ResponsesList';
|
|
|
19
19
|
export * from './Responses/ResponseTitle';
|
|
20
20
|
export * from './ResponseSamples/ResponseSamples';
|
|
21
21
|
export * from './PayloadSamples/PayloadSamples';
|
|
22
|
+
export * from './PayloadSamples/styled.elements';
|
|
22
23
|
export * from './MediaTypeSwitch/MediaTypesSwitch';
|
|
24
|
+
export * from './Parameters/Parameters';
|
|
25
|
+
export * from './PayloadSamples/Example';
|
|
26
|
+
export * from './DropdownOrLabel/DropdownOrLabel';
|
|
23
27
|
export * from './ErrorBoundary';
|
|
24
28
|
export * from './StoreBuilder';
|
|
25
29
|
export * from './OptionsProvider';
|
|
26
30
|
export * from './SideMenu/';
|
|
27
31
|
export * from './StickySidebar/StickyResponsiveSidebar';
|
|
28
32
|
export * from './SearchBox/SearchBox';
|
|
33
|
+
export * from './SchemaDefinition/SchemaDefinition';
|
|
34
|
+
export * from './SourceCode/SourceCode';
|
package/typings/index.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export * from './components';
|
|
2
|
-
export { MiddlePanel, Row, RightPanel, Section } from './common-elements/';
|
|
2
|
+
export { MiddlePanel, Row, RightPanel, Section, Dropdown, SimpleDropdown, } from './common-elements/';
|
|
3
|
+
export type { DropdownOption } from './common-elements';
|
|
4
|
+
export type { OpenAPIEncoding } from './types';
|
|
3
5
|
export * from './services';
|
|
4
6
|
export * from './utils';
|
|
5
7
|
export * from './styled-components';
|
|
@@ -1,20 +1,11 @@
|
|
|
1
|
-
import { OpenAPISpec } from '../types';
|
|
1
|
+
import type { OpenAPISpec } from '../types';
|
|
2
2
|
import { MarkerService } from './MarkerService';
|
|
3
3
|
import { MenuStore } from './MenuStore';
|
|
4
4
|
import { SpecStore } from './models';
|
|
5
|
-
import { RedocNormalizedOptions
|
|
5
|
+
import { RedocNormalizedOptions } from './RedocNormalizedOptions';
|
|
6
|
+
import type { RedocRawOptions } from './RedocNormalizedOptions';
|
|
6
7
|
import { SearchStore } from './SearchStore';
|
|
7
|
-
|
|
8
|
-
menu: {
|
|
9
|
-
activeItemIdx: number;
|
|
10
|
-
};
|
|
11
|
-
spec: {
|
|
12
|
-
url?: string;
|
|
13
|
-
data: any;
|
|
14
|
-
};
|
|
15
|
-
searchIndex: any;
|
|
16
|
-
options: RedocRawOptions;
|
|
17
|
-
}
|
|
8
|
+
import type { StoreState } from './types';
|
|
18
9
|
export declare function createStore(spec: object, specUrl: string | undefined, options?: RedocRawOptions): Promise<AppStore>;
|
|
19
10
|
export declare class AppStore {
|
|
20
11
|
/**
|
|
@@ -1,14 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
enum: string;
|
|
3
|
-
enumSingleValue: string;
|
|
4
|
-
enumArray: string;
|
|
5
|
-
default: string;
|
|
6
|
-
deprecated: string;
|
|
7
|
-
example: string;
|
|
8
|
-
nullable: string;
|
|
9
|
-
recursive: string;
|
|
10
|
-
arrayOf: string;
|
|
11
|
-
}
|
|
12
|
-
export declare type LabelsConfigRaw = Partial<LabelsConfig>;
|
|
1
|
+
import type { LabelsConfig, LabelsConfigRaw } from './types';
|
|
13
2
|
export declare function setRedocLabels(_labels?: LabelsConfigRaw): void;
|
|
14
3
|
export declare function l(key: keyof LabelsConfig, idx?: number): string;
|
|
@@ -1,34 +1,25 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { AppStore } from './AppStore';
|
|
1
|
+
import { marked } from 'marked';
|
|
3
2
|
import { RedocNormalizedOptions } from './RedocNormalizedOptions';
|
|
3
|
+
import type { MarkdownHeading, MDXComponentMeta } from './types';
|
|
4
4
|
export declare const LEGACY_REGEXP = "^ {0,3}<!-- ReDoc-Inject:\\s+?<({component}).*?/?>\\s+?-->\\s*$";
|
|
5
5
|
export declare const MDX_COMPONENT_REGEXP: string;
|
|
6
6
|
export declare const COMPONENT_REGEXP: string;
|
|
7
|
-
export interface MDXComponentMeta {
|
|
8
|
-
component: React.ComponentType;
|
|
9
|
-
propsSelector: (store?: AppStore) => any;
|
|
10
|
-
props?: object;
|
|
11
|
-
}
|
|
12
|
-
export interface MarkdownHeading {
|
|
13
|
-
id: string;
|
|
14
|
-
name: string;
|
|
15
|
-
level: number;
|
|
16
|
-
items?: MarkdownHeading[];
|
|
17
|
-
description?: string;
|
|
18
|
-
}
|
|
19
7
|
export declare function buildComponentComment(name: string): string;
|
|
20
8
|
export declare class MarkdownRenderer {
|
|
21
9
|
options?: RedocNormalizedOptions | undefined;
|
|
10
|
+
parentId?: string | undefined;
|
|
22
11
|
static containsComponent(rawText: string, componentName: string): boolean;
|
|
12
|
+
static getTextBeforeHading(md: string, heading: string): string;
|
|
23
13
|
headings: MarkdownHeading[];
|
|
24
14
|
currentTopHeading: MarkdownHeading;
|
|
15
|
+
parser: marked.Parser;
|
|
25
16
|
private headingEnhanceRenderer;
|
|
26
17
|
private originalHeadingRule;
|
|
27
|
-
constructor(options?: RedocNormalizedOptions | undefined);
|
|
18
|
+
constructor(options?: RedocNormalizedOptions | undefined, parentId?: string | undefined);
|
|
28
19
|
saveHeading(name: string, level: number, container?: MarkdownHeading[], parentId?: string): MarkdownHeading;
|
|
29
20
|
flattenHeadings(container?: MarkdownHeading[]): MarkdownHeading[];
|
|
30
21
|
attachHeadingsDescriptions(rawText: string): void;
|
|
31
|
-
headingRule: (text: string, level:
|
|
22
|
+
headingRule: (text: string, level: 1 | 2 | 3 | 4 | 5 | 6, raw: string, slugger: marked.Slugger) => string;
|
|
32
23
|
renderMd(rawText: string, extractHeadings?: boolean): string;
|
|
33
24
|
extractHeadings(rawText: string): MarkdownHeading[];
|
|
34
25
|
renderMdWithComponents(rawText: string): Array<string | MDXComponentMeta>;
|
|
@@ -1,23 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { OpenAPISpec } from '../types';
|
|
2
2
|
import { GroupModel, OperationModel } from './models';
|
|
3
|
-
import { OpenAPIParser } from './OpenAPIParser';
|
|
4
|
-
import { RedocNormalizedOptions } from './RedocNormalizedOptions';
|
|
5
|
-
|
|
6
|
-
operations: ExtendedOpenAPIOperation[];
|
|
7
|
-
used?: boolean;
|
|
8
|
-
};
|
|
9
|
-
export declare type ExtendedOpenAPIOperation = {
|
|
10
|
-
pathName: string;
|
|
11
|
-
httpVerb: string;
|
|
12
|
-
pathParameters: Array<Referenced<OpenAPIParameter>>;
|
|
13
|
-
} & OpenAPIOperation;
|
|
14
|
-
export declare type TagsInfoMap = Dict<TagInfo>;
|
|
15
|
-
export interface TagGroup {
|
|
16
|
-
name: string;
|
|
17
|
-
tags: string[];
|
|
18
|
-
}
|
|
3
|
+
import type { OpenAPIParser } from './OpenAPIParser';
|
|
4
|
+
import type { RedocNormalizedOptions } from './RedocNormalizedOptions';
|
|
5
|
+
import type { ContentItemModel, TagGroup, TagInfo, TagsInfoMap } from './types';
|
|
19
6
|
export declare const GROUP_DEPTH = 0;
|
|
20
|
-
export declare type ContentItemModel = GroupModel | OperationModel;
|
|
21
7
|
export declare class MenuBuilder {
|
|
22
8
|
/**
|
|
23
9
|
* Builds page content structure based on tags
|
|
@@ -27,28 +13,37 @@ export declare class MenuBuilder {
|
|
|
27
13
|
* extracts items from markdown description
|
|
28
14
|
* @param description - markdown source
|
|
29
15
|
*/
|
|
30
|
-
static addMarkdownItems(description: string, options: RedocNormalizedOptions): ContentItemModel[];
|
|
16
|
+
static addMarkdownItems(description: string, parent: GroupModel | undefined, initialDepth: number, options: RedocNormalizedOptions): ContentItemModel[];
|
|
31
17
|
/**
|
|
32
|
-
* Returns array of OperationsGroup items for the tag groups (x-tagGroups vendor
|
|
18
|
+
* Returns array of OperationsGroup items for the tag groups (x-tagGroups vendor extension)
|
|
33
19
|
* @param tags value of `x-tagGroups` vendor extension
|
|
34
20
|
*/
|
|
35
21
|
static getTagGroupsItems(parser: OpenAPIParser, parent: GroupModel | undefined, groups: TagGroup[], tags: TagsInfoMap, options: RedocNormalizedOptions): GroupModel[];
|
|
36
22
|
/**
|
|
37
23
|
* Returns array of OperationsGroup items for the tags of the group or for all tags
|
|
24
|
+
* @param parser
|
|
38
25
|
* @param tagsMap tags info returned from `getTagsWithOperations`
|
|
39
26
|
* @param parent parent item
|
|
40
27
|
* @param group group which this tag belongs to. if not provided gets all tags
|
|
28
|
+
* @param options normalized options
|
|
41
29
|
*/
|
|
42
30
|
static getTagsItems(parser: OpenAPIParser, tagsMap: TagsInfoMap, parent: GroupModel | undefined, group: TagGroup | undefined, options: RedocNormalizedOptions): ContentItemModel[];
|
|
43
31
|
/**
|
|
44
32
|
* Returns array of Operation items for the tag
|
|
33
|
+
* @param parser
|
|
45
34
|
* @param parent parent OperationsGroup
|
|
46
35
|
* @param tag tag info returned from `getTagsWithOperations`
|
|
47
36
|
* @param depth items depth
|
|
37
|
+
* @param options - normalized options
|
|
48
38
|
*/
|
|
49
39
|
static getOperationsItems(parser: OpenAPIParser, parent: GroupModel | undefined, tag: TagInfo, depth: number, options: RedocNormalizedOptions): OperationModel[];
|
|
50
40
|
/**
|
|
51
41
|
* collects tags and maps each tag to list of operations belonging to this tag
|
|
52
42
|
*/
|
|
53
|
-
static getTagsWithOperations(spec: OpenAPISpec): TagsInfoMap;
|
|
43
|
+
static getTagsWithOperations(parser: OpenAPIParser, spec: OpenAPISpec): TagsInfoMap;
|
|
44
|
+
static getTagRelatedSchema({ parser, tag, parent, }: {
|
|
45
|
+
parser: OpenAPIParser;
|
|
46
|
+
tag: TagInfo;
|
|
47
|
+
parent: GroupModel;
|
|
48
|
+
}): GroupModel[];
|
|
54
49
|
}
|
|
@@ -1,26 +1,8 @@
|
|
|
1
|
-
import { SpecStore } from './models';
|
|
2
1
|
import { HistoryService } from './HistoryService';
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
import type { SpecStore } from './models';
|
|
3
|
+
import type { ScrollService } from './ScrollService';
|
|
4
|
+
import type { IMenuItem } from './types';
|
|
6
5
|
/** Generic interface for MenuItems */
|
|
7
|
-
export interface IMenuItem {
|
|
8
|
-
id: string;
|
|
9
|
-
absoluteIdx?: number;
|
|
10
|
-
name: string;
|
|
11
|
-
description?: string;
|
|
12
|
-
depth: number;
|
|
13
|
-
active: boolean;
|
|
14
|
-
expanded: boolean;
|
|
15
|
-
items: IMenuItem[];
|
|
16
|
-
parent?: IMenuItem;
|
|
17
|
-
deprecated?: boolean;
|
|
18
|
-
type: MenuItemType;
|
|
19
|
-
deactivate(): void;
|
|
20
|
-
activate(): void;
|
|
21
|
-
collapse(): void;
|
|
22
|
-
expand(): void;
|
|
23
|
-
}
|
|
24
6
|
export declare const SECTION_ATTR = "data-section-id";
|
|
25
7
|
/**
|
|
26
8
|
* Stores all side-menu related information
|
|
@@ -72,16 +54,21 @@ export declare class MenuStore {
|
|
|
72
54
|
* @param idx item absolute index
|
|
73
55
|
*/
|
|
74
56
|
getElementAt(idx: number): Element | null;
|
|
57
|
+
/**
|
|
58
|
+
* get section/operation DOM Node related to the item or if it is group item, returns first item of the group
|
|
59
|
+
* @param idx item absolute index
|
|
60
|
+
*/
|
|
61
|
+
getElementAtOrFirstChild(idx: number): Element | null;
|
|
75
62
|
/**
|
|
76
63
|
* current active item
|
|
77
64
|
*/
|
|
78
|
-
|
|
65
|
+
get activeItem(): IMenuItem;
|
|
79
66
|
getItemById: (id: string) => IMenuItem | undefined;
|
|
80
67
|
/**
|
|
81
68
|
* activate menu item
|
|
82
69
|
* @param item item to activate
|
|
83
70
|
* @param updateLocation [true] whether to update location
|
|
84
|
-
* @param rewriteHistory [false] whether to rewrite browser history (do not create new
|
|
71
|
+
* @param rewriteHistory [false] whether to rewrite browser history (do not create new entry)
|
|
85
72
|
*/
|
|
86
73
|
activate(item: IMenuItem | undefined, updateLocation?: boolean, rewriteHistory?: boolean): void;
|
|
87
74
|
/**
|
|
@@ -1,52 +1,50 @@
|
|
|
1
|
-
import { OpenAPIRef,
|
|
1
|
+
import type { OpenAPIRef, OpenAPISpec } from '../types';
|
|
2
2
|
import { RedocNormalizedOptions } from './RedocNormalizedOptions';
|
|
3
|
-
|
|
4
|
-
parentRefs?: string[];
|
|
5
|
-
};
|
|
3
|
+
import type { MergedOpenAPISchema } from './types';
|
|
6
4
|
/**
|
|
7
5
|
* Loads and keeps spec. Provides raw spec operations
|
|
8
6
|
*/
|
|
7
|
+
export declare function pushRef(stack: string[], ref?: string): string[];
|
|
8
|
+
export declare function concatRefStacks(base: string[], stack?: string[]): string[];
|
|
9
9
|
export declare class OpenAPIParser {
|
|
10
10
|
private options;
|
|
11
11
|
specUrl?: string;
|
|
12
12
|
spec: OpenAPISpec;
|
|
13
|
-
private
|
|
13
|
+
private readonly allowMergeRefs;
|
|
14
14
|
constructor(spec: OpenAPISpec, specUrl?: string, options?: RedocNormalizedOptions);
|
|
15
|
-
validate(spec: any): void;
|
|
16
|
-
preprocess(spec: OpenAPISpec): void;
|
|
15
|
+
validate(spec: Record<string, any>): void;
|
|
17
16
|
/**
|
|
18
17
|
* get spec part by JsonPointer ($ref)
|
|
19
18
|
*/
|
|
20
|
-
byRef: <T extends
|
|
19
|
+
byRef: <T extends unknown = any>(ref: string) => T | undefined;
|
|
21
20
|
/**
|
|
22
|
-
* checks if the
|
|
21
|
+
* checks if the object is OpenAPI reference (contains $ref property)
|
|
23
22
|
*/
|
|
24
|
-
isRef(obj:
|
|
25
|
-
/**
|
|
26
|
-
* resets visited enpoints. should be run after
|
|
27
|
-
*/
|
|
28
|
-
resetVisited(): void;
|
|
29
|
-
exitRef<T>(ref: Referenced<T>): void;
|
|
23
|
+
isRef<T extends unknown>(obj: OpenAPIRef | T): obj is OpenAPIRef;
|
|
30
24
|
/**
|
|
31
25
|
* Resolve given reference object or return as is if it is not a reference
|
|
32
26
|
* @param obj object to dereference
|
|
33
|
-
* @param forceCircular whether to dereference even if it is
|
|
27
|
+
* @param forceCircular whether to dereference even if it is circular ref
|
|
28
|
+
* @param mergeAsAllOf
|
|
34
29
|
*/
|
|
35
|
-
deref<T extends
|
|
36
|
-
|
|
30
|
+
deref<T extends unknown>(obj: OpenAPIRef | T, baseRefsStack?: string[], mergeAsAllOf?: boolean): {
|
|
31
|
+
resolved: T;
|
|
32
|
+
refsStack: string[];
|
|
33
|
+
};
|
|
34
|
+
mergeRefs<T extends unknown>(ref: OpenAPIRef, resolved: T, mergeAsAllOf: boolean): T;
|
|
37
35
|
/**
|
|
38
|
-
* Merge allOf
|
|
36
|
+
* Merge allOf constraints.
|
|
39
37
|
* @param schema schema with allOF
|
|
40
38
|
* @param $ref pointer of the schema
|
|
41
|
-
* @param forceCircular whether to dereference children even if it is a
|
|
39
|
+
* @param forceCircular whether to dereference children even if it is a circular ref
|
|
40
|
+
* @param used$Refs
|
|
42
41
|
*/
|
|
43
|
-
mergeAllOf(schema:
|
|
42
|
+
mergeAllOf(schema: MergedOpenAPISchema, $ref: string | undefined, refsStack: string[]): MergedOpenAPISchema;
|
|
44
43
|
/**
|
|
45
44
|
* Find all derived definitions among #/components/schemas from any of $refs
|
|
46
45
|
* returns map of definition pointer to definition name
|
|
47
46
|
* @param $refs array of references to find derived from
|
|
48
47
|
*/
|
|
49
|
-
findDerived($refs: string[]):
|
|
50
|
-
exitParents(shema: MergedOpenAPISchema): void;
|
|
48
|
+
findDerived($refs: string[]): Record<string, string[] | string>;
|
|
51
49
|
private hoistOneOfs;
|
|
52
50
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ResolvedThemeInterface, ThemeInterface } from '../theme';
|
|
2
|
-
import {
|
|
3
|
-
import { MDXComponentMeta } from './
|
|
2
|
+
import { SideNavStyleEnum } from './types';
|
|
3
|
+
import type { LabelsConfigRaw, MDXComponentMeta } from './types';
|
|
4
4
|
export interface RedocRawOptions {
|
|
5
5
|
theme?: ThemeInterface;
|
|
6
6
|
scrollYOffset?: number | string | (() => number);
|
|
@@ -8,25 +8,55 @@ export interface RedocRawOptions {
|
|
|
8
8
|
expandResponses?: string | 'all';
|
|
9
9
|
requiredPropsFirst?: boolean | string;
|
|
10
10
|
sortPropsAlphabetically?: boolean | string;
|
|
11
|
-
|
|
11
|
+
sortEnumValuesAlphabetically?: boolean | string;
|
|
12
|
+
sortOperationsAlphabetically?: boolean | string;
|
|
13
|
+
sortTagsAlphabetically?: boolean | string;
|
|
12
14
|
nativeScrollbars?: boolean | string;
|
|
13
15
|
pathInMiddlePanel?: boolean | string;
|
|
14
16
|
untrustedSpec?: boolean | string;
|
|
15
17
|
hideLoading?: boolean | string;
|
|
16
18
|
hideDownloadButton?: boolean | string;
|
|
19
|
+
downloadFileName?: string;
|
|
20
|
+
downloadDefinitionUrl?: string;
|
|
17
21
|
disableSearch?: boolean | string;
|
|
18
22
|
onlyRequiredInSamples?: boolean | string;
|
|
19
23
|
showExtensions?: boolean | string | string[];
|
|
24
|
+
sideNavStyle?: SideNavStyleEnum;
|
|
20
25
|
hideSingleRequestSampleTab?: boolean | string;
|
|
26
|
+
menuToggle?: boolean | string;
|
|
27
|
+
jsonSampleExpandLevel?: number | string | 'all';
|
|
28
|
+
hideSchemaTitles?: boolean | string;
|
|
29
|
+
simpleOneOfTypeLabel?: boolean | string;
|
|
30
|
+
payloadSampleIdx?: number;
|
|
31
|
+
expandSingleSchemaField?: boolean | string;
|
|
32
|
+
schemaExpansionLevel?: number | string | 'all';
|
|
33
|
+
showObjectSchemaExamples?: boolean | string;
|
|
34
|
+
showSecuritySchemeType?: boolean;
|
|
35
|
+
hideSecuritySection?: boolean;
|
|
21
36
|
unstable_ignoreMimeParameters?: boolean;
|
|
22
|
-
allowedMdComponents?:
|
|
37
|
+
allowedMdComponents?: Record<string, MDXComponentMeta>;
|
|
23
38
|
labels?: LabelsConfigRaw;
|
|
39
|
+
enumSkipQuotes?: boolean | string;
|
|
40
|
+
expandDefaultServerVariables?: boolean;
|
|
41
|
+
maxDisplayedEnumValues?: number;
|
|
42
|
+
ignoreNamedSchemas?: string[] | string;
|
|
43
|
+
hideSchemaPattern?: boolean;
|
|
44
|
+
generatedPayloadSamplesMaxDepth?: number;
|
|
45
|
+
nonce?: string;
|
|
46
|
+
hideFab?: boolean;
|
|
47
|
+
minCharacterLengthToInitSearch?: number;
|
|
48
|
+
showWebhookVerb?: boolean;
|
|
24
49
|
}
|
|
50
|
+
export declare function argValueToBoolean(val?: string | boolean, defaultValue?: boolean): boolean;
|
|
25
51
|
export declare class RedocNormalizedOptions {
|
|
26
52
|
static normalizeExpandResponses(value: RedocRawOptions['expandResponses']): {};
|
|
27
53
|
static normalizeHideHostname(value: RedocRawOptions['hideHostname']): boolean;
|
|
28
54
|
static normalizeScrollYOffset(value: RedocRawOptions['scrollYOffset']): () => number;
|
|
29
55
|
static normalizeShowExtensions(value: RedocRawOptions['showExtensions']): string[] | boolean;
|
|
56
|
+
static normalizeSideNavStyle(value: RedocRawOptions['sideNavStyle']): SideNavStyleEnum;
|
|
57
|
+
static normalizePayloadSampleIdx(value: RedocRawOptions['payloadSampleIdx']): number;
|
|
58
|
+
private static normalizeJsonSampleExpandLevel;
|
|
59
|
+
private static normalizeGeneratedPayloadSamplesMaxDepth;
|
|
30
60
|
theme: ResolvedThemeInterface;
|
|
31
61
|
scrollYOffset: () => number;
|
|
32
62
|
hideHostname: boolean;
|
|
@@ -35,16 +65,41 @@ export declare class RedocNormalizedOptions {
|
|
|
35
65
|
} | 'all';
|
|
36
66
|
requiredPropsFirst: boolean;
|
|
37
67
|
sortPropsAlphabetically: boolean;
|
|
38
|
-
|
|
68
|
+
sortEnumValuesAlphabetically: boolean;
|
|
69
|
+
sortOperationsAlphabetically: boolean;
|
|
70
|
+
sortTagsAlphabetically: boolean;
|
|
39
71
|
nativeScrollbars: boolean;
|
|
40
72
|
pathInMiddlePanel: boolean;
|
|
41
73
|
untrustedSpec: boolean;
|
|
42
74
|
hideDownloadButton: boolean;
|
|
75
|
+
downloadFileName?: string;
|
|
76
|
+
downloadDefinitionUrl?: string;
|
|
43
77
|
disableSearch: boolean;
|
|
44
78
|
onlyRequiredInSamples: boolean;
|
|
45
79
|
showExtensions: boolean | string[];
|
|
80
|
+
sideNavStyle: SideNavStyleEnum;
|
|
46
81
|
hideSingleRequestSampleTab: boolean;
|
|
82
|
+
menuToggle: boolean;
|
|
83
|
+
jsonSampleExpandLevel: number;
|
|
84
|
+
enumSkipQuotes: boolean;
|
|
85
|
+
hideSchemaTitles: boolean;
|
|
86
|
+
simpleOneOfTypeLabel: boolean;
|
|
87
|
+
payloadSampleIdx: number;
|
|
88
|
+
expandSingleSchemaField: boolean;
|
|
89
|
+
schemaExpansionLevel: number;
|
|
90
|
+
showObjectSchemaExamples: boolean;
|
|
91
|
+
showSecuritySchemeType?: boolean;
|
|
92
|
+
hideSecuritySection?: boolean;
|
|
47
93
|
unstable_ignoreMimeParameters: boolean;
|
|
48
|
-
allowedMdComponents:
|
|
94
|
+
allowedMdComponents: Record<string, MDXComponentMeta>;
|
|
95
|
+
expandDefaultServerVariables: boolean;
|
|
96
|
+
maxDisplayedEnumValues?: number;
|
|
97
|
+
ignoreNamedSchemas: Set<string>;
|
|
98
|
+
hideSchemaPattern: boolean;
|
|
99
|
+
generatedPayloadSamplesMaxDepth: number;
|
|
100
|
+
hideFab: boolean;
|
|
101
|
+
minCharacterLengthToInitSearch: number;
|
|
102
|
+
showWebhookVerb: boolean;
|
|
103
|
+
nonce?: string;
|
|
49
104
|
constructor(raw: RedocRawOptions, defaults?: RedocRawOptions);
|
|
50
105
|
}
|