Skip to content

Commit 3be2456

Browse files
authored
fix: incorrect rendering of security schemas (#995)
1 parent ed66855 commit 3be2456

File tree

1 file changed

+5
-16
lines changed

1 file changed

+5
-16
lines changed

library/src/containers/Servers/Security.tsx

+5-16
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import {
66
} from '@asyncapi/parser';
77

88
import { Href, Markdown } from '../../components';
9-
import { useSpec } from '../../contexts';
109
import { ServerHelpers } from '../../helpers';
1110

1211
interface Props {
@@ -20,29 +19,20 @@ export const Security: React.FunctionComponent<Props> = ({
2019
protocol = '',
2120
header = 'Security',
2221
}) => {
23-
const asyncapi = useSpec();
24-
const securitySchemes =
25-
!asyncapi.components().isEmpty() && asyncapi.components().securitySchemes();
26-
2722
let renderedSecurities;
28-
if (
29-
!security?.length ||
30-
!securitySchemes ||
31-
!Object.keys(securitySchemes).length
32-
) {
23+
if (!security?.length) {
3324
if (protocol === 'kafka' || protocol === 'kafka-secure') {
3425
renderedSecurities = (
3526
<SecurityItem protocol={protocol} securitySchema={null} />
3627
);
3728
}
3829
} else {
3930
const securities: React.ReactNodeArray = Object.values(security)
31+
.map((requirements) => requirements.all())
32+
.flat()
4033
.map((requirement) => {
41-
const requirements = requirement.all();
42-
const key = Object.keys(requirements)[0];
43-
const def = securitySchemes[Number(key)];
44-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
45-
const requiredScopes: any = requirements[Number(key)];
34+
const def = requirement.scheme();
35+
const requiredScopes = requirement.scopes();
4636

4737
if (!def) {
4838
return null;
@@ -51,7 +41,6 @@ export const Security: React.FunctionComponent<Props> = ({
5141
<SecurityItem
5242
protocol={protocol}
5343
securitySchema={def}
54-
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
5544
requiredScopes={requiredScopes}
5645
key={def.type()}
5746
/>

0 commit comments

Comments
 (0)