@asyncapi/react-component 1.0.0-next.5 → 1.0.0-next.51
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/README.md +75 -4
- package/browser/index.js +8 -14
- package/browser/index.js.LICENSE.txt +88 -0
- package/browser/standalone/index.js +8 -0
- package/browser/standalone/index.js.LICENSE.txt +112 -0
- package/browser/standalone/without-parser.js +8 -0
- package/browser/standalone/without-parser.js.LICENSE.txt +110 -0
- package/browser/without-parser.js +8 -12
- package/browser/without-parser.js.LICENSE.txt +86 -0
- package/lib/cjs/components/Bindings.js +14 -5
- package/lib/cjs/components/Bindings.js.map +1 -1
- package/lib/cjs/components/CollapseButton.js +11 -7
- package/lib/cjs/components/CollapseButton.js.map +1 -1
- package/lib/cjs/components/Extensions.js +4 -3
- package/lib/cjs/components/Extensions.js.map +1 -1
- package/lib/cjs/components/Href.js +2 -1
- package/lib/cjs/components/Href.js.map +1 -1
- package/lib/cjs/components/JSONSnippet.js +17 -0
- package/lib/cjs/components/JSONSnippet.js.map +1 -0
- package/lib/cjs/components/Markdown.js +4 -4
- package/lib/cjs/components/Markdown.js.map +1 -1
- package/lib/cjs/components/Schema.js +77 -60
- package/lib/cjs/components/Schema.js.map +1 -1
- package/lib/cjs/components/Tag.js +3 -2
- package/lib/cjs/components/Tag.js.map +1 -1
- package/lib/cjs/components/Tags.js +3 -2
- package/lib/cjs/components/Tags.js.map +1 -1
- package/lib/cjs/components/index.js +6 -2
- package/lib/cjs/components/index.js.map +1 -1
- package/lib/cjs/config/config.js.map +1 -1
- package/lib/cjs/config/default.js +9 -1
- package/lib/cjs/config/default.js.map +1 -1
- package/lib/cjs/config/index.js +5 -1
- package/lib/cjs/config/index.js.map +1 -1
- package/lib/cjs/constants.js +5 -48
- package/lib/cjs/constants.js.map +1 -1
- package/lib/cjs/containers/AsyncApi/AsyncApi.js +29 -13
- package/lib/cjs/containers/AsyncApi/AsyncApi.js.map +1 -1
- package/lib/cjs/containers/AsyncApi/Layout.js +33 -21
- package/lib/cjs/containers/AsyncApi/Layout.js.map +1 -1
- package/lib/cjs/containers/AsyncApi/Standalone.js +9 -3
- package/lib/cjs/containers/AsyncApi/Standalone.js.map +1 -1
- package/lib/cjs/containers/Error/Error.js +4 -3
- package/lib/cjs/containers/Error/Error.js.map +1 -1
- package/lib/cjs/containers/Info/Info.js +11 -10
- package/lib/cjs/containers/Info/Info.js.map +1 -1
- package/lib/cjs/containers/Messages/Message.js +23 -10
- package/lib/cjs/containers/Messages/Message.js.map +1 -1
- package/lib/cjs/containers/Messages/MessageExample.js +26 -14
- package/lib/cjs/containers/Messages/MessageExample.js.map +1 -1
- package/lib/cjs/containers/Messages/Messages.js +15 -7
- package/lib/cjs/containers/Messages/Messages.js.map +1 -1
- package/lib/cjs/containers/Operations/Operation.js +88 -38
- package/lib/cjs/containers/Operations/Operation.js.map +1 -1
- package/lib/cjs/containers/Operations/Operations.js +20 -13
- package/lib/cjs/containers/Operations/Operations.js.map +1 -1
- package/lib/cjs/containers/Schemas/Schema.js +21 -0
- package/lib/cjs/containers/Schemas/Schema.js.map +1 -0
- package/lib/cjs/containers/Schemas/Schemas.js +32 -0
- package/lib/cjs/containers/Schemas/Schemas.js.map +1 -0
- package/lib/cjs/containers/Servers/Security.js +150 -0
- package/lib/cjs/containers/Servers/Security.js.map +1 -0
- package/lib/cjs/containers/Servers/Server.js +15 -8
- package/lib/cjs/containers/Servers/Server.js.map +1 -1
- package/lib/cjs/containers/Servers/Servers.js +11 -6
- package/lib/cjs/containers/Servers/Servers.js.map +1 -1
- package/lib/cjs/containers/Sidebar/Sidebar.js +213 -140
- package/lib/cjs/containers/Sidebar/Sidebar.js.map +1 -1
- package/lib/cjs/contexts/index.js +6 -1
- package/lib/cjs/contexts/index.js.map +1 -1
- package/lib/cjs/contexts/useConfig.js +10 -0
- package/lib/cjs/contexts/useConfig.js.map +1 -0
- package/lib/cjs/contexts/useSpec.js +7 -3
- package/lib/cjs/contexts/useSpec.js.map +1 -1
- package/lib/cjs/helpers/common.js +17 -0
- package/lib/cjs/helpers/common.js.map +1 -0
- package/lib/cjs/helpers/index.js +7 -4
- package/lib/cjs/helpers/index.js.map +1 -1
- package/lib/cjs/helpers/marked.js +34 -0
- package/lib/cjs/helpers/marked.js.map +1 -0
- package/lib/cjs/helpers/message.js +39 -9
- package/lib/cjs/helpers/message.js.map +1 -1
- package/lib/cjs/helpers/parser.js +15 -16
- package/lib/cjs/helpers/parser.js.map +1 -1
- package/lib/cjs/helpers/schema.js +186 -149
- package/lib/cjs/helpers/schema.js.map +1 -1
- package/lib/cjs/helpers/server.js +49 -0
- package/lib/cjs/helpers/server.js.map +1 -1
- package/lib/cjs/helpers/specification.js +36 -21
- package/lib/cjs/helpers/specification.js.map +1 -1
- package/lib/cjs/index.js +3 -1
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/types.js +4 -51
- package/lib/cjs/types.js.map +1 -1
- package/lib/cjs/without-parser.js +3 -0
- package/lib/cjs/without-parser.js.map +1 -1
- package/lib/esm/components/Bindings.js +12 -4
- package/lib/esm/components/Bindings.js.map +1 -1
- package/lib/esm/components/CollapseButton.js +9 -6
- package/lib/esm/components/CollapseButton.js.map +1 -1
- package/lib/esm/components/Extensions.js +2 -2
- package/lib/esm/components/Extensions.js.map +1 -1
- package/lib/esm/components/Href.js.map +1 -1
- package/lib/esm/components/JSONSnippet.js +10 -0
- package/lib/esm/components/JSONSnippet.js.map +1 -0
- package/lib/esm/components/Markdown.js +2 -3
- package/lib/esm/components/Markdown.js.map +1 -1
- package/lib/esm/components/Schema.js +71 -59
- package/lib/esm/components/Schema.js.map +1 -1
- package/lib/esm/components/Tag.js +1 -1
- package/lib/esm/components/Tag.js.map +1 -1
- package/lib/esm/components/Tags.js +1 -1
- package/lib/esm/components/Tags.js.map +1 -1
- package/lib/esm/components/index.js +1 -1
- package/lib/esm/components/index.js.map +1 -1
- package/lib/esm/config/config.js.map +1 -1
- package/lib/esm/config/default.js +9 -1
- package/lib/esm/config/default.js.map +1 -1
- package/lib/esm/config/index.js.map +1 -1
- package/lib/esm/constants.js +3 -47
- package/lib/esm/constants.js.map +1 -1
- package/lib/esm/containers/AsyncApi/AsyncApi.js +23 -11
- package/lib/esm/containers/AsyncApi/AsyncApi.js.map +1 -1
- package/lib/esm/containers/AsyncApi/Layout.js +28 -20
- package/lib/esm/containers/AsyncApi/Layout.js.map +1 -1
- package/lib/esm/containers/AsyncApi/Standalone.js +4 -2
- package/lib/esm/containers/AsyncApi/Standalone.js.map +1 -1
- package/lib/esm/containers/Error/Error.js +2 -2
- package/lib/esm/containers/Error/Error.js.map +1 -1
- package/lib/esm/containers/Info/Info.js +8 -8
- package/lib/esm/containers/Info/Info.js.map +1 -1
- package/lib/esm/containers/Messages/Message.js +21 -9
- package/lib/esm/containers/Messages/Message.js.map +1 -1
- package/lib/esm/containers/Messages/MessageExample.js +19 -13
- package/lib/esm/containers/Messages/MessageExample.js.map +1 -1
- package/lib/esm/containers/Messages/Messages.js +14 -7
- package/lib/esm/containers/Messages/Messages.js.map +1 -1
- package/lib/esm/containers/Operations/Operation.js +87 -39
- package/lib/esm/containers/Operations/Operation.js.map +1 -1
- package/lib/esm/containers/Operations/Operations.js +19 -13
- package/lib/esm/containers/Operations/Operations.js.map +1 -1
- package/lib/esm/containers/Schemas/Schema.js +14 -0
- package/lib/esm/containers/Schemas/Schema.js.map +1 -0
- package/lib/esm/containers/Schemas/Schemas.js +25 -0
- package/lib/esm/containers/Schemas/Schemas.js.map +1 -0
- package/lib/esm/containers/Servers/Security.js +143 -0
- package/lib/esm/containers/Servers/Security.js.map +1 -0
- package/lib/esm/containers/Servers/Server.js +15 -9
- package/lib/esm/containers/Servers/Server.js.map +1 -1
- package/lib/esm/containers/Servers/Servers.js +10 -6
- package/lib/esm/containers/Servers/Servers.js.map +1 -1
- package/lib/esm/containers/Sidebar/Sidebar.js +203 -135
- package/lib/esm/containers/Sidebar/Sidebar.js.map +1 -1
- package/lib/esm/contexts/index.js +1 -0
- package/lib/esm/contexts/index.js.map +1 -1
- package/lib/esm/contexts/useConfig.js +6 -0
- package/lib/esm/contexts/useConfig.js.map +1 -0
- package/lib/esm/contexts/useSpec.js +2 -2
- package/lib/esm/contexts/useSpec.js.map +1 -1
- package/lib/esm/helpers/common.js +14 -0
- package/lib/esm/helpers/common.js.map +1 -0
- package/lib/esm/helpers/index.js +2 -3
- package/lib/esm/helpers/index.js.map +1 -1
- package/lib/esm/helpers/marked.js +27 -0
- package/lib/esm/helpers/marked.js.map +1 -0
- package/lib/esm/helpers/message.js +38 -8
- package/lib/esm/helpers/message.js.map +1 -1
- package/lib/esm/helpers/parser.js +16 -14
- package/lib/esm/helpers/parser.js.map +1 -1
- package/lib/esm/helpers/schema.js +182 -142
- package/lib/esm/helpers/schema.js.map +1 -1
- package/lib/esm/helpers/server.js +49 -0
- package/lib/esm/helpers/server.js.map +1 -1
- package/lib/esm/helpers/specification.js +36 -18
- package/lib/esm/helpers/specification.js.map +1 -1
- package/lib/esm/index.js +2 -1
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/types.js +2 -46
- package/lib/esm/types.js.map +1 -1
- package/lib/esm/without-parser.js +2 -0
- package/lib/esm/without-parser.js.map +1 -1
- package/lib/types/components/Bindings.d.ts +2 -1
- package/lib/types/components/Bindings.d.ts.map +1 -1
- package/lib/types/components/CollapseButton.d.ts +1 -0
- package/lib/types/components/CollapseButton.d.ts.map +1 -1
- package/lib/types/components/Extensions.d.ts.map +1 -1
- package/lib/types/components/JSONSnippet.d.ts +7 -0
- package/lib/types/components/JSONSnippet.d.ts.map +1 -0
- package/lib/types/components/Markdown.d.ts.map +1 -1
- package/lib/types/components/Schema.d.ts +5 -4
- package/lib/types/components/Schema.d.ts.map +1 -1
- package/lib/types/components/Tag.d.ts +2 -2
- package/lib/types/components/Tag.d.ts.map +1 -1
- package/lib/types/components/Tags.d.ts +2 -2
- package/lib/types/components/Tags.d.ts.map +1 -1
- package/lib/types/components/index.d.ts +1 -1
- package/lib/types/components/index.d.ts.map +1 -1
- package/lib/types/config/config.d.ts +8 -0
- package/lib/types/config/config.d.ts.map +1 -1
- package/lib/types/config/default.d.ts.map +1 -1
- package/lib/types/constants.d.ts +3 -26
- package/lib/types/constants.d.ts.map +1 -1
- package/lib/types/containers/AsyncApi/AsyncApi.d.ts +4 -4
- package/lib/types/containers/AsyncApi/AsyncApi.d.ts.map +1 -1
- package/lib/types/containers/AsyncApi/Layout.d.ts +2 -2
- package/lib/types/containers/AsyncApi/Layout.d.ts.map +1 -1
- package/lib/types/containers/AsyncApi/Standalone.d.ts +4 -4
- package/lib/types/containers/AsyncApi/Standalone.d.ts.map +1 -1
- package/lib/types/containers/Info/Info.d.ts.map +1 -1
- package/lib/types/containers/Messages/Message.d.ts +3 -2
- package/lib/types/containers/Messages/Message.d.ts.map +1 -1
- package/lib/types/containers/Messages/MessageExample.d.ts +5 -4
- package/lib/types/containers/Messages/MessageExample.d.ts.map +1 -1
- package/lib/types/containers/Messages/Messages.d.ts.map +1 -1
- package/lib/types/containers/Operations/Operation.d.ts +4 -3
- package/lib/types/containers/Operations/Operation.d.ts.map +1 -1
- package/lib/types/containers/Operations/Operations.d.ts.map +1 -1
- package/lib/types/containers/Schemas/Schema.d.ts +9 -0
- package/lib/types/containers/Schemas/Schema.d.ts.map +1 -0
- package/lib/types/containers/Schemas/Schemas.d.ts +3 -0
- package/lib/types/containers/Schemas/Schemas.d.ts.map +1 -0
- package/lib/types/containers/Servers/Security.d.ts +10 -0
- package/lib/types/containers/Servers/Security.d.ts.map +1 -0
- package/lib/types/containers/Servers/Server.d.ts +2 -2
- package/lib/types/containers/Servers/Server.d.ts.map +1 -1
- package/lib/types/containers/Servers/Servers.d.ts.map +1 -1
- package/lib/types/containers/Sidebar/Sidebar.d.ts +1 -9
- package/lib/types/containers/Sidebar/Sidebar.d.ts.map +1 -1
- package/lib/types/contexts/index.d.ts +1 -0
- package/lib/types/contexts/index.d.ts.map +1 -1
- package/lib/types/contexts/useConfig.d.ts +5 -0
- package/lib/types/contexts/useConfig.d.ts.map +1 -0
- package/lib/types/contexts/useSpec.d.ts +3 -5
- package/lib/types/contexts/useSpec.d.ts.map +1 -1
- package/lib/types/helpers/common.d.ts +5 -0
- package/lib/types/helpers/common.d.ts.map +1 -0
- package/lib/types/helpers/index.d.ts +2 -3
- package/lib/types/helpers/index.d.ts.map +1 -1
- package/lib/types/helpers/marked.d.ts +4 -0
- package/lib/types/helpers/marked.d.ts.map +1 -0
- package/lib/types/helpers/message.d.ts +4 -3
- package/lib/types/helpers/message.d.ts.map +1 -1
- package/lib/types/helpers/parser.d.ts.map +1 -1
- package/lib/types/helpers/schema.d.ts +16 -12
- package/lib/types/helpers/schema.d.ts.map +1 -1
- package/lib/types/helpers/server.d.ts +6 -1
- package/lib/types/helpers/server.d.ts.map +1 -1
- package/lib/types/helpers/specification.d.ts +7 -4
- package/lib/types/helpers/specification.d.ts.map +1 -1
- package/lib/types/index.d.ts +2 -1
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/types.d.ts +12 -305
- package/lib/types/types.d.ts.map +1 -1
- package/lib/types/without-parser.d.ts +2 -0
- package/lib/types/without-parser.d.ts.map +1 -1
- package/package.json +43 -19
- package/styles/default.css +929 -646
- package/styles/default.min.css +4 -2
- package/lib/cjs/components/Code.js +0 -15
- package/lib/cjs/components/Code.js.map +0 -1
- package/lib/cjs/containers/Servers/ServerSecurity.js +0 -101
- package/lib/cjs/containers/Servers/ServerSecurity.js.map +0 -1
- package/lib/cjs/helpers/bemClasses.js +0 -49
- package/lib/cjs/helpers/bemClasses.js.map +0 -1
- package/lib/cjs/helpers/formatJsonHighlight.js +0 -61
- package/lib/cjs/helpers/formatJsonHighlight.js.map +0 -1
- package/lib/cjs/helpers/toKebabCase.js +0 -15
- package/lib/cjs/helpers/toKebabCase.js.map +0 -1
- package/lib/esm/components/Code.js +0 -9
- package/lib/esm/components/Code.js.map +0 -1
- package/lib/esm/containers/Servers/ServerSecurity.js +0 -95
- package/lib/esm/containers/Servers/ServerSecurity.js.map +0 -1
- package/lib/esm/helpers/bemClasses.js +0 -46
- package/lib/esm/helpers/bemClasses.js.map +0 -1
- package/lib/esm/helpers/formatJsonHighlight.js +0 -57
- package/lib/esm/helpers/formatJsonHighlight.js.map +0 -1
- package/lib/esm/helpers/toKebabCase.js +0 -11
- package/lib/esm/helpers/toKebabCase.js.map +0 -1
- package/lib/types/components/Code.d.ts +0 -7
- package/lib/types/components/Code.d.ts.map +0 -1
- package/lib/types/containers/Servers/ServerSecurity.d.ts +0 -8
- package/lib/types/containers/Servers/ServerSecurity.d.ts.map +0 -1
- package/lib/types/helpers/bemClasses.d.ts +0 -14
- package/lib/types/helpers/bemClasses.d.ts.map +0 -1
- package/lib/types/helpers/formatJsonHighlight.d.ts +0 -2
- package/lib/types/helpers/formatJsonHighlight.d.ts.map +0 -1
- package/lib/types/helpers/toKebabCase.d.ts +0 -2
- package/lib/types/helpers/toKebabCase.d.ts.map +0 -1
|
@@ -7,27 +7,34 @@ exports.Operations = void 0;
|
|
|
7
7
|
var react_1 = __importDefault(require("react"));
|
|
8
8
|
var Operation_1 = require("./Operation");
|
|
9
9
|
var contexts_1 = require("../../contexts");
|
|
10
|
-
var
|
|
10
|
+
var helpers_1 = require("../../helpers");
|
|
11
11
|
var constants_1 = require("../../constants");
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
var types_1 = require("../../types");
|
|
13
|
+
var Operations = function () {
|
|
14
|
+
var operations = (0, contexts_1.useSpec)()
|
|
15
|
+
.operations()
|
|
16
|
+
.all();
|
|
17
|
+
var config = (0, contexts_1.useConfig)();
|
|
18
|
+
if (!Object.keys(operations).length) {
|
|
15
19
|
return null;
|
|
16
20
|
}
|
|
17
21
|
var operationsList = [];
|
|
18
|
-
|
|
19
|
-
var
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
22
|
+
operations.forEach(function (operation) {
|
|
23
|
+
var _a;
|
|
24
|
+
var channel = operation.channels().all()[0];
|
|
25
|
+
var channelAddress = (_a = channel === null || channel === void 0 ? void 0 : channel.address()) !== null && _a !== void 0 ? _a : '';
|
|
26
|
+
if (operation.isSend()) {
|
|
27
|
+
operationsList.push(react_1.default.createElement("li", { className: "mb-12", key: "pub-".concat(operation.id()), id: helpers_1.CommonHelpers.getIdentifier("operation-".concat(types_1.PayloadType.PUBLISH, "-").concat(operation.id()), config) },
|
|
28
|
+
react_1.default.createElement(Operation_1.Operation, { type: types_1.PayloadType.PUBLISH, operation: operation, channelName: channelAddress, channel: channel })));
|
|
23
29
|
}
|
|
24
|
-
if (
|
|
25
|
-
operationsList.push(react_1.default.createElement("li", { className: "mb-12", key: "sub-"
|
|
26
|
-
react_1.default.createElement(Operation_1.Operation, { type: types_1.PayloadType.SUBSCRIBE, operation:
|
|
30
|
+
if (operation.isReceive()) {
|
|
31
|
+
operationsList.push(react_1.default.createElement("li", { className: "mb-12", key: "sub-".concat(operation.id()), id: helpers_1.CommonHelpers.getIdentifier("operation-".concat(types_1.PayloadType.SUBSCRIBE, "-").concat(operation.id()), config) },
|
|
32
|
+
react_1.default.createElement(Operation_1.Operation, { type: types_1.PayloadType.SUBSCRIBE, operation: operation, channelName: channelAddress, channel: channel })));
|
|
27
33
|
}
|
|
28
34
|
});
|
|
29
|
-
return (react_1.default.createElement("section", { id: "operations
|
|
35
|
+
return (react_1.default.createElement("section", { id: "".concat(helpers_1.CommonHelpers.getIdentifier('operations', config)), className: "mt-16" },
|
|
30
36
|
react_1.default.createElement("h2", { className: "2xl:w-7/12 text-3xl font-light mb-4 px-8" }, constants_1.OPERATIONS_TEXT),
|
|
31
37
|
react_1.default.createElement("ul", null, operationsList)));
|
|
32
38
|
};
|
|
39
|
+
exports.Operations = Operations;
|
|
33
40
|
//# sourceMappingURL=Operations.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Operations.js","sourceRoot":"","sources":["../../../../src/containers/Operations/Operations.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAE1B,yCAAwC;
|
|
1
|
+
{"version":3,"file":"Operations.js","sourceRoot":"","sources":["../../../../src/containers/Operations/Operations.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAE1B,yCAAwC;AACxC,2CAAoD;AACpD,yCAA8C;AAC9C,6CAAkD;AAClD,qCAA0C;AAEnC,IAAM,UAAU,GAA4B;IACjD,IAAM,UAAU,GAAG,IAAA,kBAAO,GAAE;SACzB,UAAU,EAAE;SACZ,GAAG,EAAE,CAAC;IACT,IAAM,MAAM,GAAG,IAAA,oBAAS,GAAE,CAAC;IAE3B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE;QACnC,OAAO,IAAI,CAAC;KACb;IAED,IAAM,cAAc,GAAyB,EAAE,CAAC;IAChD,UAAU,CAAC,OAAO,CAAC,UAAA,SAAS;;QAC1B,IAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAM,cAAc,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,EAAE,mCAAI,EAAE,CAAC;QAChD,IAAI,SAAS,CAAC,MAAM,EAAE,EAAE;YACtB,cAAc,CAAC,IAAI,CACjB,sCACE,SAAS,EAAC,OAAO,EACjB,GAAG,EAAE,cAAO,SAAS,CAAC,EAAE,EAAE,CAAE,EAC5B,EAAE,EAAE,uBAAa,CAAC,aAAa,CAC7B,oBAAa,mBAAW,CAAC,OAAO,cAAI,SAAS,CAAC,EAAE,EAAE,CAAE,EACpD,MAAM,CACP;gBAED,8BAAC,qBAAS,IACR,IAAI,EAAE,mBAAW,CAAC,OAAO,EACzB,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,cAAc,EAC3B,OAAO,EAAE,OAAO,GAChB,CACC,CACN,CAAC;SACH;QACD,IAAI,SAAS,CAAC,SAAS,EAAE,EAAE;YACzB,cAAc,CAAC,IAAI,CACjB,sCACE,SAAS,EAAC,OAAO,EACjB,GAAG,EAAE,cAAO,SAAS,CAAC,EAAE,EAAE,CAAE,EAC5B,EAAE,EAAE,uBAAa,CAAC,aAAa,CAC7B,oBAAa,mBAAW,CAAC,SAAS,cAAI,SAAS,CAAC,EAAE,EAAE,CAAE,EACtD,MAAM,CACP;gBAED,8BAAC,qBAAS,IACR,IAAI,EAAE,mBAAW,CAAC,SAAS,EAC3B,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,cAAc,EAC3B,OAAO,EAAE,OAAO,GAChB,CACC,CACN,CAAC;SACH;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CACL,2CACE,EAAE,EAAE,UAAG,uBAAa,CAAC,aAAa,CAAC,YAAY,EAAE,MAAM,CAAC,CAAE,EAC1D,SAAS,EAAC,OAAO;QAEjB,sCAAI,SAAS,EAAC,0CAA0C,IACrD,2BAAe,CACb;QACL,0CAAK,cAAc,CAAM,CACjB,CACX,CAAC;AACJ,CAAC,CAAC;AAjEW,QAAA,UAAU,cAiErB","sourcesContent":["import React from 'react';\n\nimport { Operation } from './Operation';\nimport { useConfig, useSpec } from '../../contexts';\nimport { CommonHelpers } from '../../helpers';\nimport { OPERATIONS_TEXT } from '../../constants';\nimport { PayloadType } from '../../types';\n\nexport const Operations: React.FunctionComponent = () => {\n const operations = useSpec()\n .operations()\n .all();\n const config = useConfig();\n\n if (!Object.keys(operations).length) {\n return null;\n }\n\n const operationsList: React.ReactNodeArray = [];\n operations.forEach(operation => {\n const channel = operation.channels().all()[0];\n const channelAddress = channel?.address() ?? '';\n if (operation.isSend()) {\n operationsList.push(\n <li\n className=\"mb-12\"\n key={`pub-${operation.id()}`}\n id={CommonHelpers.getIdentifier(\n `operation-${PayloadType.PUBLISH}-${operation.id()}`,\n config,\n )}\n >\n <Operation\n type={PayloadType.PUBLISH}\n operation={operation}\n channelName={channelAddress}\n channel={channel}\n />\n </li>,\n );\n }\n if (operation.isReceive()) {\n operationsList.push(\n <li\n className=\"mb-12\"\n key={`sub-${operation.id()}`}\n id={CommonHelpers.getIdentifier(\n `operation-${PayloadType.SUBSCRIBE}-${operation.id()}`,\n config,\n )}\n >\n <Operation\n type={PayloadType.SUBSCRIBE}\n operation={operation}\n channelName={channelAddress}\n channel={channel}\n />\n </li>,\n );\n }\n });\n\n return (\n <section\n id={`${CommonHelpers.getIdentifier('operations', config)}`}\n className=\"mt-16\"\n >\n <h2 className=\"2xl:w-7/12 text-3xl font-light mb-4 px-8\">\n {OPERATIONS_TEXT}\n </h2>\n <ul>{operationsList}</ul>\n </section>\n );\n};\n"]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.Schema = void 0;
|
|
7
|
+
var react_1 = __importDefault(require("react"));
|
|
8
|
+
var components_1 = require("../../components");
|
|
9
|
+
var Schema = function (_a) {
|
|
10
|
+
var schemaName = _a.schemaName, schema = _a.schema;
|
|
11
|
+
if (!schema) {
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
return (react_1.default.createElement("div", null,
|
|
15
|
+
react_1.default.createElement("div", { className: "panel-item--center px-8" },
|
|
16
|
+
react_1.default.createElement("div", { className: "shadow rounded px-4 py-2 border bg-gray-200" },
|
|
17
|
+
react_1.default.createElement(components_1.Schema, { schemaName: schemaName, schema: schema }))),
|
|
18
|
+
react_1.default.createElement("div", { className: "w-full mt-4" })));
|
|
19
|
+
};
|
|
20
|
+
exports.Schema = Schema;
|
|
21
|
+
//# sourceMappingURL=Schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Schema.js","sourceRoot":"","sources":["../../../../src/containers/Schemas/Schema.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAG1B,+CAA6D;AAOtD,IAAM,MAAM,GAAmC,UAAC,EAGtD;QAFC,UAAU,gBAAA,EACV,MAAM,YAAA;IAEN,IAAI,CAAC,MAAM,EAAE;QACX,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL;QACE,uCAAK,SAAS,EAAC,yBAAyB;YACtC,uCAAK,SAAS,EAAC,6CAA6C;gBAC1D,8BAAC,mBAAe,IAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAI,CACvD,CACF;QAEN,uCAAK,SAAS,EAAC,aAAa,GAAG,CAC3B,CACP,CAAC;AACJ,CAAC,CAAC;AAnBW,QAAA,MAAM,UAmBjB","sourcesContent":["import React from 'react';\nimport { SchemaInterface } from '@asyncapi/parser';\n\nimport { Schema as SchemaComponent } from '../../components';\n\ninterface Props {\n schemaName: string;\n schema: SchemaInterface;\n}\n\nexport const Schema: React.FunctionComponent<Props> = ({\n schemaName,\n schema,\n}) => {\n if (!schema) {\n return null;\n }\n\n return (\n <div>\n <div className=\"panel-item--center px-8\">\n <div className=\"shadow rounded px-4 py-2 border bg-gray-200\">\n <SchemaComponent schemaName={schemaName} schema={schema} />\n </div>\n </div>\n\n <div className=\"w-full mt-4\" />\n </div>\n );\n};\n"]}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.Schemas = void 0;
|
|
7
|
+
var react_1 = __importDefault(require("react"));
|
|
8
|
+
var Schema_1 = require("./Schema");
|
|
9
|
+
var contexts_1 = require("../../contexts");
|
|
10
|
+
var helpers_1 = require("../../helpers");
|
|
11
|
+
var constants_1 = require("../../constants");
|
|
12
|
+
var Schemas = function () {
|
|
13
|
+
var asyncapi = (0, contexts_1.useSpec)();
|
|
14
|
+
var config = (0, contexts_1.useConfig)();
|
|
15
|
+
var schemas = !asyncapi.components().isEmpty() &&
|
|
16
|
+
asyncapi
|
|
17
|
+
.components()
|
|
18
|
+
.schemas()
|
|
19
|
+
.all();
|
|
20
|
+
if (!schemas || Object.keys(schemas).length === 0) {
|
|
21
|
+
return null;
|
|
22
|
+
}
|
|
23
|
+
return (react_1.default.createElement("section", { id: "".concat(helpers_1.CommonHelpers.getIdentifier('schemas', config)), className: "mt-16" },
|
|
24
|
+
react_1.default.createElement("h2", { className: "2xl:w-7/12 text-3xl font-light mb-4 px-8" }, constants_1.SCHEMAS_TEXT),
|
|
25
|
+
react_1.default.createElement("ul", null, Object.entries(schemas).map(function (_a) {
|
|
26
|
+
var schemaName = _a[0], schema = _a[1];
|
|
27
|
+
return (react_1.default.createElement("li", { className: "mb-4", key: schemaName, id: helpers_1.CommonHelpers.getIdentifier("schema-".concat(schemaName), config) },
|
|
28
|
+
react_1.default.createElement(Schema_1.Schema, { schemaName: schemaName, schema: schema })));
|
|
29
|
+
}))));
|
|
30
|
+
};
|
|
31
|
+
exports.Schemas = Schemas;
|
|
32
|
+
//# sourceMappingURL=Schemas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Schemas.js","sourceRoot":"","sources":["../../../../src/containers/Schemas/Schemas.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAE1B,mCAAkC;AAElC,2CAAoD;AACpD,yCAA8C;AAC9C,6CAA+C;AAExC,IAAM,OAAO,GAA4B;IAC9C,IAAM,QAAQ,GAAG,IAAA,kBAAO,GAAE,CAAC;IAC3B,IAAM,MAAM,GAAG,IAAA,oBAAS,GAAE,CAAC;IAC3B,IAAM,OAAO,GACX,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE;QAChC,QAAQ;aACL,UAAU,EAAE;aACZ,OAAO,EAAE;aACT,GAAG,EAAE,CAAC;IAEX,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;QACjD,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,2CACE,EAAE,EAAE,UAAG,uBAAa,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,CAAE,EACvD,SAAS,EAAC,OAAO;QAEjB,sCAAI,SAAS,EAAC,0CAA0C,IACrD,wBAAY,CACV;QACL,0CACG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,UAAC,EAAoB;gBAAnB,UAAU,QAAA,EAAE,MAAM,QAAA;YAAM,OAAA,CACrD,sCACE,SAAS,EAAC,MAAM,EAChB,GAAG,EAAE,UAAU,EACf,EAAE,EAAE,uBAAa,CAAC,aAAa,CAAC,iBAAU,UAAU,CAAE,EAAE,MAAM,CAAC;gBAE/D,8BAAC,eAAM,IAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAI,CAC/C,CACN;QARsD,CAQtD,CAAC,CACC,CACG,CACX,CAAC;AACJ,CAAC,CAAC;AAnCW,QAAA,OAAO,WAmClB","sourcesContent":["import React from 'react';\n\nimport { Schema } from './Schema';\n\nimport { useConfig, useSpec } from '../../contexts';\nimport { CommonHelpers } from '../../helpers';\nimport { SCHEMAS_TEXT } from '../../constants';\n\nexport const Schemas: React.FunctionComponent = () => {\n const asyncapi = useSpec();\n const config = useConfig();\n const schemas =\n !asyncapi.components().isEmpty() &&\n asyncapi\n .components()\n .schemas()\n .all();\n\n if (!schemas || Object.keys(schemas).length === 0) {\n return null;\n }\n\n return (\n <section\n id={`${CommonHelpers.getIdentifier('schemas', config)}`}\n className=\"mt-16\"\n >\n <h2 className=\"2xl:w-7/12 text-3xl font-light mb-4 px-8\">\n {SCHEMAS_TEXT}\n </h2>\n <ul>\n {Object.entries(schemas).map(([schemaName, schema]) => (\n <li\n className=\"mb-4\"\n key={schemaName}\n id={CommonHelpers.getIdentifier(`schema-${schemaName}`, config)}\n >\n <Schema schemaName={schemaName} schema={schema} />\n </li>\n ))}\n </ul>\n </section>\n );\n};\n"]}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.Security = void 0;
|
|
7
|
+
var react_1 = __importDefault(require("react"));
|
|
8
|
+
var components_1 = require("../../components");
|
|
9
|
+
var contexts_1 = require("../../contexts");
|
|
10
|
+
var helpers_1 = require("../../helpers");
|
|
11
|
+
var Security = function (_a) {
|
|
12
|
+
var _b = _a.security, security = _b === void 0 ? [] : _b, _c = _a.protocol, protocol = _c === void 0 ? '' : _c, _d = _a.header, header = _d === void 0 ? 'Security' : _d;
|
|
13
|
+
var asyncapi = (0, contexts_1.useSpec)();
|
|
14
|
+
var securitySchemes = !asyncapi.components().isEmpty() && asyncapi.components().securitySchemes();
|
|
15
|
+
var renderedSecurities;
|
|
16
|
+
if (!security ||
|
|
17
|
+
!security.length ||
|
|
18
|
+
!securitySchemes ||
|
|
19
|
+
!Object.keys(securitySchemes).length) {
|
|
20
|
+
if (protocol === 'kafka' || protocol === 'kafka-secure') {
|
|
21
|
+
renderedSecurities = (react_1.default.createElement(SecurityItem, { protocol: protocol, securitySchema: null }));
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
var securities = Object.values(security)
|
|
26
|
+
.map(function (requirement) {
|
|
27
|
+
var requirements = requirement.all();
|
|
28
|
+
var key = Object.keys(requirements)[0];
|
|
29
|
+
var def = securitySchemes[String(key)];
|
|
30
|
+
var requiredScopes = requirements[String(key)];
|
|
31
|
+
if (!def) {
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
return (react_1.default.createElement(SecurityItem, { protocol: protocol, securitySchema: def, requiredScopes: requiredScopes, key: def.type() }));
|
|
35
|
+
})
|
|
36
|
+
.filter(Boolean);
|
|
37
|
+
renderedSecurities = (react_1.default.createElement("ul", null, securities.map(function (s, idx) { return (react_1.default.createElement("li", { className: "mt-2", key: idx }, s)); })));
|
|
38
|
+
}
|
|
39
|
+
if (!renderedSecurities) {
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
return (react_1.default.createElement("div", { className: "text-sm mt-4" },
|
|
43
|
+
react_1.default.createElement("h5", { className: "text-gray-800" },
|
|
44
|
+
header,
|
|
45
|
+
":"),
|
|
46
|
+
renderedSecurities));
|
|
47
|
+
};
|
|
48
|
+
exports.Security = Security;
|
|
49
|
+
function collectSecuritySchemas(securitySchema, requiredScopes) {
|
|
50
|
+
if (requiredScopes === void 0) { requiredScopes = []; }
|
|
51
|
+
var schemas = [];
|
|
52
|
+
if (securitySchema) {
|
|
53
|
+
if (securitySchema.name()) {
|
|
54
|
+
schemas.push(react_1.default.createElement("span", null,
|
|
55
|
+
"Name: ",
|
|
56
|
+
securitySchema.name()));
|
|
57
|
+
}
|
|
58
|
+
if (securitySchema.in()) {
|
|
59
|
+
schemas.push(react_1.default.createElement("span", null,
|
|
60
|
+
"In: ",
|
|
61
|
+
securitySchema.in()));
|
|
62
|
+
}
|
|
63
|
+
if (securitySchema.scheme()) {
|
|
64
|
+
schemas.push(react_1.default.createElement("span", null,
|
|
65
|
+
"Scheme: ",
|
|
66
|
+
securitySchema.scheme()));
|
|
67
|
+
}
|
|
68
|
+
if (securitySchema.bearerFormat()) {
|
|
69
|
+
schemas.push(react_1.default.createElement("span", null,
|
|
70
|
+
"Bearer format: ",
|
|
71
|
+
securitySchema.bearerFormat()));
|
|
72
|
+
}
|
|
73
|
+
if (securitySchema.openIdConnectUrl()) {
|
|
74
|
+
schemas.push(react_1.default.createElement(components_1.Href, { href: securitySchema.openIdConnectUrl(), className: "underline" }, "Connect URL"));
|
|
75
|
+
}
|
|
76
|
+
if (requiredScopes.length) {
|
|
77
|
+
schemas.push(react_1.default.createElement("span", null,
|
|
78
|
+
"Required scopes: ",
|
|
79
|
+
requiredScopes.join(', ')));
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return schemas;
|
|
83
|
+
}
|
|
84
|
+
var SecurityItem = function (_a) {
|
|
85
|
+
var securitySchema = _a.securitySchema, protocol = _a.protocol, requiredScopes = _a.requiredScopes;
|
|
86
|
+
var schemas = collectSecuritySchemas(securitySchema, requiredScopes);
|
|
87
|
+
var renderedKafkaSecurity;
|
|
88
|
+
if (['kafka', 'kafka-secure'].includes(protocol)) {
|
|
89
|
+
var _b = helpers_1.ServerHelpers.getKafkaSecurity(protocol, securitySchema), securityProtocol = _b.securityProtocol, saslMechanism = _b.saslMechanism;
|
|
90
|
+
renderedKafkaSecurity = (react_1.default.createElement("div", { className: "px-4 py-2 ml-2 mb-2 border border-gray-400 bg-gray-100 rounded" },
|
|
91
|
+
securityProtocol && (react_1.default.createElement("div", { className: "mt-1" },
|
|
92
|
+
react_1.default.createElement("span", { className: "text-xs font-bold text-gray-600 mt-1 mr-1 uppercase" }, "security.protocol:"),
|
|
93
|
+
react_1.default.createElement("span", { className: "inline-block font-bold no-underline bg-indigo-400 text-white text-xs rounded py-0 px-1 ml-1" }, securityProtocol))),
|
|
94
|
+
saslMechanism && (react_1.default.createElement("div", { className: "mt-1" },
|
|
95
|
+
react_1.default.createElement("span", { className: "text-xs font-bold text-gray-600 mt-1 mr-1 uppercase" }, "sasl.mechanism:"),
|
|
96
|
+
react_1.default.createElement("span", { className: "inline-block font-bold no-underline bg-indigo-400 text-white text-xs rounded py-0 px-1 ml-1" }, saslMechanism)))));
|
|
97
|
+
}
|
|
98
|
+
var flows = securitySchema === null || securitySchema === void 0 ? void 0 : securitySchema.flows();
|
|
99
|
+
var unwrappedFlows = {};
|
|
100
|
+
if (flows === null || flows === void 0 ? void 0 : flows.hasImplicit()) {
|
|
101
|
+
unwrappedFlows.implicit = flows.implicit();
|
|
102
|
+
}
|
|
103
|
+
if (flows === null || flows === void 0 ? void 0 : flows.hasAuthorizationCode()) {
|
|
104
|
+
unwrappedFlows.authorizationCode = flows.authorizationCode();
|
|
105
|
+
}
|
|
106
|
+
if (flows === null || flows === void 0 ? void 0 : flows.hasClientCredentials()) {
|
|
107
|
+
unwrappedFlows.clientCredentials = flows.clientCredentials();
|
|
108
|
+
}
|
|
109
|
+
if (flows === null || flows === void 0 ? void 0 : flows.hasPassword()) {
|
|
110
|
+
unwrappedFlows.password = flows.implicit();
|
|
111
|
+
}
|
|
112
|
+
var renderedFlows = Object.entries(unwrappedFlows).map(function (_a) {
|
|
113
|
+
var flowName = _a[0], flow = _a[1];
|
|
114
|
+
var authorizationUrl = flow.authorizationUrl();
|
|
115
|
+
var tokenUrl = flow.tokenUrl();
|
|
116
|
+
var refreshUrl = flow.refreshUrl();
|
|
117
|
+
var scopes = flow.scopes();
|
|
118
|
+
return (react_1.default.createElement("div", { className: "px-4 py-2 ml-2 mb-2 border border-gray-400 bg-gray-100 rounded", key: flowName },
|
|
119
|
+
react_1.default.createElement("div", null,
|
|
120
|
+
react_1.default.createElement("span", { className: "text-xs font-bold text-gray-600 mt-1 mr-1 uppercase" }, "Flow:"),
|
|
121
|
+
react_1.default.createElement("span", { className: "text-xs font-bold text-gray-600 mt-1 mr-1 uppercase" }, helpers_1.ServerHelpers.flowName(flowName))),
|
|
122
|
+
authorizationUrl && (react_1.default.createElement("div", { className: "mt-1" },
|
|
123
|
+
react_1.default.createElement("span", { className: "text-xs font-bold text-gray-600 mt-1 mr-1 uppercase" }, "Auth URL:"),
|
|
124
|
+
react_1.default.createElement(components_1.Href, { href: authorizationUrl, className: "underline" }, authorizationUrl))),
|
|
125
|
+
tokenUrl && (react_1.default.createElement("div", { className: "mt-1" },
|
|
126
|
+
react_1.default.createElement("span", { className: "text-xs font-bold text-gray-600 mt-1 mr-1 uppercase" }, "Token URL:"),
|
|
127
|
+
react_1.default.createElement(components_1.Href, { href: tokenUrl, className: "underline" }, tokenUrl))),
|
|
128
|
+
refreshUrl && (react_1.default.createElement("div", { className: "mt-1" },
|
|
129
|
+
react_1.default.createElement("span", { className: "text-xs font-bold text-gray-600 mt-1 mr-1 uppercase" }, "Refresh URL:"),
|
|
130
|
+
react_1.default.createElement(components_1.Href, { href: refreshUrl, className: "underline" }, refreshUrl))),
|
|
131
|
+
scopes && (react_1.default.createElement("div", { className: "mt-1" },
|
|
132
|
+
react_1.default.createElement("span", { className: "text-xs font-bold text-gray-600 mt-1 mr-1 uppercase" }, "Scopes:"),
|
|
133
|
+
react_1.default.createElement("ul", { className: "inline-block" }, scopes &&
|
|
134
|
+
Object.entries(scopes).map(function (_a) {
|
|
135
|
+
var scopeName = _a[0], scopeDesc = _a[1];
|
|
136
|
+
return (react_1.default.createElement("li", { className: "inline-block font-bold no-underline bg-indigo-400 text-white text-xs rounded py-0 px-1 ml-1", title: scopeDesc, key: scopeName }, scopeName));
|
|
137
|
+
}))))));
|
|
138
|
+
});
|
|
139
|
+
return (react_1.default.createElement("div", null,
|
|
140
|
+
securitySchema && schemas && (react_1.default.createElement("div", null,
|
|
141
|
+
react_1.default.createElement("span", null,
|
|
142
|
+
helpers_1.ServerHelpers.securityType(securitySchema.type()),
|
|
143
|
+
schemas.length > 0 && (react_1.default.createElement("ul", { className: "inline-block ml-2" }, schemas.map(function (schema, idx) { return (react_1.default.createElement("li", { className: "inline-block font-bold no-underline bg-blue-400 text-white text-xs uppercase rounded px-2 py-0 ml-1", key: idx }, schema)); })))))),
|
|
144
|
+
securitySchema && securitySchema.hasDescription() && (react_1.default.createElement("div", null,
|
|
145
|
+
react_1.default.createElement(components_1.Markdown, null, securitySchema.description()))),
|
|
146
|
+
renderedFlows && renderedFlows.length > 0 && (react_1.default.createElement("ul", { className: "my-2" },
|
|
147
|
+
react_1.default.createElement("li", null, renderedFlows))),
|
|
148
|
+
renderedKafkaSecurity && react_1.default.createElement("div", null, renderedKafkaSecurity)));
|
|
149
|
+
};
|
|
150
|
+
//# sourceMappingURL=Security.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Security.js","sourceRoot":"","sources":["../../../../src/containers/Servers/Security.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n OAuthFlowInterface,\n SecurityRequirementsInterface,\n SecuritySchemeInterface,\n} from '@asyncapi/parser';\n\nimport { Href, Markdown } from '../../components';\nimport { useSpec } from '../../contexts';\nimport { ServerHelpers } from '../../helpers';\n\ninterface Props {\n security: SecurityRequirementsInterface[];\n protocol?: string;\n header?: string;\n}\n\nexport const Security: React.FunctionComponent<Props> = ({\n security = [],\n protocol = '',\n header = 'Security',\n}) => {\n const asyncapi = useSpec();\n const securitySchemes =\n !asyncapi.components().isEmpty() && asyncapi.components().securitySchemes();\n\n let renderedSecurities;\n if (\n !security ||\n !security.length ||\n !securitySchemes ||\n !Object.keys(securitySchemes).length\n ) {\n if (protocol === 'kafka' || protocol === 'kafka-secure') {\n renderedSecurities = (\n <SecurityItem protocol={protocol} securitySchema={null} />\n );\n }\n } else {\n const securities: React.ReactNodeArray = Object.values(security)\n .map(requirement => {\n const requirements = requirement.all();\n const key = Object.keys(requirements)[0];\n const def = securitySchemes[String(key)];\n const requiredScopes: string[] = requirements[String(key)];\n\n if (!def) {\n return null;\n }\n return (\n <SecurityItem\n protocol={protocol}\n securitySchema={def}\n requiredScopes={requiredScopes}\n key={def.type()}\n />\n );\n })\n .filter(Boolean);\n\n renderedSecurities = (\n <ul>\n {securities.map((s, idx) => (\n <li className=\"mt-2\" key={idx}>\n {s}\n </li>\n ))}\n </ul>\n );\n }\n\n if (!renderedSecurities) {\n return null;\n }\n\n return (\n <div className=\"text-sm mt-4\">\n <h5 className=\"text-gray-800\">{header}:</h5>\n {renderedSecurities}\n </div>\n );\n};\n\nfunction collectSecuritySchemas(\n securitySchema: SecuritySchemeInterface | null,\n requiredScopes: string[] = [],\n): React.ReactNodeArray {\n const schemas: React.ReactNodeArray = [];\n if (securitySchema) {\n if (securitySchema.name()) {\n schemas.push(<span>Name: {securitySchema.name()}</span>);\n }\n if (securitySchema.in()) {\n schemas.push(<span>In: {securitySchema.in()}</span>);\n }\n if (securitySchema.scheme()) {\n schemas.push(<span>Scheme: {securitySchema.scheme()}</span>);\n }\n if (securitySchema.bearerFormat()) {\n schemas.push(<span>Bearer format: {securitySchema.bearerFormat()}</span>);\n }\n if (securitySchema.openIdConnectUrl()) {\n schemas.push(\n <Href\n href={securitySchema.openIdConnectUrl() as string}\n className=\"underline\"\n >\n Connect URL\n </Href>,\n );\n }\n if (requiredScopes.length) {\n schemas.push(<span>Required scopes: {requiredScopes.join(', ')}</span>);\n }\n }\n return schemas;\n}\n\ninterface SecurityItemProps {\n securitySchema: SecuritySchemeInterface | null;\n protocol: string;\n requiredScopes?: string[];\n}\n\nconst SecurityItem: React.FunctionComponent<SecurityItemProps> = ({\n securitySchema,\n protocol,\n requiredScopes,\n}) => {\n const schemas: React.ReactNodeArray = collectSecuritySchemas(\n securitySchema,\n requiredScopes,\n );\n\n let renderedKafkaSecurity;\n if (['kafka', 'kafka-secure'].includes(protocol)) {\n const { securityProtocol, saslMechanism } = ServerHelpers.getKafkaSecurity(\n protocol,\n securitySchema,\n );\n\n renderedKafkaSecurity = (\n <div className=\"px-4 py-2 ml-2 mb-2 border border-gray-400 bg-gray-100 rounded\">\n {securityProtocol && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n security.protocol:\n </span>\n <span className=\"inline-block font-bold no-underline bg-indigo-400 text-white text-xs rounded py-0 px-1 ml-1\">\n {securityProtocol}\n </span>\n </div>\n )}\n {saslMechanism && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n sasl.mechanism:\n </span>\n <span className=\"inline-block font-bold no-underline bg-indigo-400 text-white text-xs rounded py-0 px-1 ml-1\">\n {saslMechanism}\n </span>\n </div>\n )}\n </div>\n );\n }\n\n const flows = securitySchema?.flows();\n const unwrappedFlows: Record<string, OAuthFlowInterface> = {};\n if (flows?.hasImplicit()) {\n unwrappedFlows.implicit = flows.implicit() as OAuthFlowInterface;\n }\n if (flows?.hasAuthorizationCode()) {\n unwrappedFlows.authorizationCode = flows.authorizationCode() as OAuthFlowInterface;\n }\n if (flows?.hasClientCredentials()) {\n unwrappedFlows.clientCredentials = flows.clientCredentials() as OAuthFlowInterface;\n }\n if (flows?.hasPassword()) {\n unwrappedFlows.password = flows.implicit() as OAuthFlowInterface;\n }\n const renderedFlows = Object.entries(unwrappedFlows).map(\n ([flowName, flow]) => {\n const authorizationUrl = flow.authorizationUrl();\n const tokenUrl = flow.tokenUrl();\n const refreshUrl = flow.refreshUrl();\n const scopes = flow.scopes();\n\n return (\n <div\n className=\"px-4 py-2 ml-2 mb-2 border border-gray-400 bg-gray-100 rounded\"\n key={flowName}\n >\n <div>\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n Flow:\n </span>\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n {ServerHelpers.flowName(flowName)}\n </span>\n </div>\n\n {authorizationUrl && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n Auth URL:\n </span>\n <Href href={authorizationUrl} className=\"underline\">\n {authorizationUrl}\n </Href>\n </div>\n )}\n {tokenUrl && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n Token URL:\n </span>\n <Href href={tokenUrl} className=\"underline\">\n {tokenUrl}\n </Href>\n </div>\n )}\n {refreshUrl && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n Refresh URL:\n </span>\n <Href href={refreshUrl} className=\"underline\">\n {refreshUrl}\n </Href>\n </div>\n )}\n {scopes && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n Scopes:\n </span>\n <ul className=\"inline-block\">\n {scopes &&\n Object.entries(scopes).map(([scopeName, scopeDesc]) => (\n <li\n className=\"inline-block font-bold no-underline bg-indigo-400 text-white text-xs rounded py-0 px-1 ml-1\"\n title={scopeDesc}\n key={scopeName}\n >\n {scopeName}\n </li>\n ))}\n </ul>\n </div>\n )}\n </div>\n );\n },\n );\n\n return (\n <div>\n {securitySchema && schemas && (\n <div>\n <span>\n {ServerHelpers.securityType(securitySchema.type())}\n {schemas.length > 0 && (\n <ul className=\"inline-block ml-2\">\n {schemas.map((schema, idx) => (\n <li\n className=\"inline-block font-bold no-underline bg-blue-400 text-white text-xs uppercase rounded px-2 py-0 ml-1\"\n key={idx}\n >\n {schema}\n </li>\n ))}\n </ul>\n )}\n </span>\n </div>\n )}\n\n {securitySchema && securitySchema.hasDescription() && (\n <div>\n <Markdown>{securitySchema.description()}</Markdown>\n </div>\n )}\n\n {renderedFlows && renderedFlows.length > 0 && (\n <ul className=\"my-2\">\n <li>{renderedFlows}</li>\n </ul>\n )}\n\n {renderedKafkaSecurity && <div>{renderedKafkaSecurity}</div>}\n </div>\n );\n};\n"]}
|
|
@@ -5,33 +5,40 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.Server = void 0;
|
|
7
7
|
var react_1 = __importDefault(require("react"));
|
|
8
|
-
var
|
|
8
|
+
var Security_1 = require("./Security");
|
|
9
9
|
var components_1 = require("../../components");
|
|
10
|
+
var contexts_1 = require("../../contexts");
|
|
10
11
|
var helpers_1 = require("../../helpers");
|
|
11
|
-
|
|
12
|
+
var Server = function (_a) {
|
|
12
13
|
var serverName = _a.serverName, server = _a.server;
|
|
14
|
+
var config = (0, contexts_1.useConfig)();
|
|
13
15
|
if (!server) {
|
|
14
16
|
return null;
|
|
15
17
|
}
|
|
16
18
|
var urlVariables = helpers_1.SchemaHelpers.serverVariablesToSchema(server.variables());
|
|
17
19
|
var protocolVersion = server.protocolVersion();
|
|
18
|
-
var
|
|
20
|
+
var security = server.security();
|
|
19
21
|
return (react_1.default.createElement("div", { className: "panel-item" },
|
|
20
22
|
react_1.default.createElement("div", { className: "panel-item--center px-8" },
|
|
21
23
|
react_1.default.createElement("div", { className: "shadow rounded bg-gray-200 p-4 border bg-gray-100" },
|
|
22
24
|
react_1.default.createElement("div", null,
|
|
23
25
|
react_1.default.createElement("span", { className: "font-mono text-base" }, server.url()),
|
|
24
26
|
react_1.default.createElement("span", { className: "bg-teal-500 font-bold no-underline text-white uppercase rounded mx-2 px-2 py-1 text-sm" }, protocolVersion
|
|
25
|
-
? server.protocol()
|
|
27
|
+
? "".concat(server.protocol(), " ").concat(protocolVersion)
|
|
26
28
|
: server.protocol()),
|
|
27
29
|
react_1.default.createElement("span", { className: "bg-blue-500 font-bold no-underline text-white uppercase rounded px-2 py-1 text-sm" }, serverName)),
|
|
28
30
|
server.hasDescription() && (react_1.default.createElement("div", { className: "mt-2" },
|
|
29
31
|
react_1.default.createElement(components_1.Markdown, null, server.description()))),
|
|
30
|
-
urlVariables && (react_1.default.createElement("div", { className: "mt-2" },
|
|
32
|
+
urlVariables && (react_1.default.createElement("div", { className: "mt-2", id: "".concat(helpers_1.CommonHelpers.getIdentifier("server-".concat(serverName, "-url-variables"), config)) },
|
|
31
33
|
react_1.default.createElement(components_1.Schema, { schemaName: "URL Variables", schema: urlVariables, expanded: true }))),
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
34
|
+
react_1.default.createElement("div", { id: "".concat(helpers_1.CommonHelpers.getIdentifier("server-".concat(serverName, "-security"), config)) },
|
|
35
|
+
react_1.default.createElement(Security_1.Security, { protocol: server.protocol(), security: security })),
|
|
36
|
+
server.bindings() && (react_1.default.createElement("div", { className: "mt-2" },
|
|
37
|
+
react_1.default.createElement(components_1.Bindings, { name: "Server specific information", bindings: server.bindings() }))),
|
|
38
|
+
react_1.default.createElement(components_1.Extensions, { name: "Server Extensions", item: server }),
|
|
39
|
+
server.tags().length > 0 && (react_1.default.createElement("div", { className: "mt-2" },
|
|
40
|
+
react_1.default.createElement(components_1.Tags, { tags: server.tags() }))))),
|
|
35
41
|
react_1.default.createElement("div", { className: "panel-item--right" })));
|
|
36
42
|
};
|
|
43
|
+
exports.Server = Server;
|
|
37
44
|
//# sourceMappingURL=Server.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Server.js","sourceRoot":"","sources":["../../../../src/containers/Servers/Server.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAG1B,
|
|
1
|
+
{"version":3,"file":"Server.js","sourceRoot":"","sources":["../../../../src/containers/Servers/Server.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAG1B,uCAAsC;AACtC,+CAAgF;AAEhF,2CAA2C;AAC3C,yCAA6D;AAOtD,IAAM,MAAM,GAAmC,UAAC,EAGtD;QAFC,UAAU,gBAAA,EACV,MAAM,YAAA;IAEN,IAAM,MAAM,GAAG,IAAA,oBAAS,GAAE,CAAC;IAE3B,IAAI,CAAC,MAAM,EAAE;QACX,OAAO,IAAI,CAAC;KACb;IAED,IAAM,YAAY,GAAG,uBAAa,CAAC,uBAAuB,CACxD,MAAM,CAAC,SAAS,EAAE,CACnB,CAAC;IACF,IAAM,eAAe,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;IACjD,IAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAEnC,OAAO,CACL,uCAAK,SAAS,EAAC,YAAY;QACzB,uCAAK,SAAS,EAAC,yBAAyB;YACtC,uCAAK,SAAS,EAAC,mDAAmD;gBAChE;oBACE,wCAAM,SAAS,EAAC,qBAAqB,IAAE,MAAM,CAAC,GAAG,EAAE,CAAQ;oBAC3D,wCAAM,SAAS,EAAC,wFAAwF,IACrG,eAAe;wBACd,CAAC,CAAC,UAAG,MAAM,CAAC,QAAQ,EAAE,cAAI,eAAe,CAAE;wBAC3C,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAChB;oBACP,wCAAM,SAAS,EAAC,mFAAmF,IAChG,UAAU,CACN,CACH;gBAEL,MAAM,CAAC,cAAc,EAAE,IAAI,CAC1B,uCAAK,SAAS,EAAC,MAAM;oBACnB,8BAAC,qBAAQ,QAAE,MAAM,CAAC,WAAW,EAAE,CAAY,CACvC,CACP;gBAEA,YAAY,IAAI,CACf,uCACE,SAAS,EAAC,MAAM,EAChB,EAAE,EAAE,UAAG,uBAAa,CAAC,aAAa,CAChC,iBAAU,UAAU,mBAAgB,EACpC,MAAM,CACP,CAAE;oBAEH,8BAAC,mBAAM,IACL,UAAU,EAAC,eAAe,EAC1B,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,IAAI,GACd,CACE,CACP;gBAGC,uCACE,EAAE,EAAE,UAAG,uBAAa,CAAC,aAAa,CAChC,iBAAU,UAAU,cAAW,EAC/B,MAAM,CACP,CAAE;oBAEH,8BAAC,mBAAQ,IAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,QAAQ,GAAI,CACzD;gBAGP,MAAM,CAAC,QAAQ,EAAE,IAAI,CACpB,uCAAK,SAAS,EAAC,MAAM;oBACnB,8BAAC,qBAAQ,IACP,IAAI,EAAC,6BAA6B,EAClC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,GAC3B,CACE,CACP;gBAED,8BAAC,uBAAU,IAAC,IAAI,EAAC,mBAAmB,EAAC,IAAI,EAAE,MAAM,GAAI;gBAEpD,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,CAC3B,uCAAK,SAAS,EAAC,MAAM;oBACnB,8BAAC,iBAAI,IAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,GAAI,CACzB,CACP,CACG,CACF;QAEN,uCAAK,SAAS,EAAC,mBAAmB,GAAG,CACjC,CACP,CAAC;AACJ,CAAC,CAAC;AAvFW,QAAA,MAAM,UAuFjB","sourcesContent":["import React from 'react';\nimport { ServerInterface } from '@asyncapi/parser';\n\nimport { Security } from './Security';\nimport { Markdown, Schema, Bindings, Tags, Extensions } from '../../components';\n\nimport { useConfig } from '../../contexts';\nimport { CommonHelpers, SchemaHelpers } from '../../helpers';\n\ninterface Props {\n serverName: string;\n server: ServerInterface;\n}\n\nexport const Server: React.FunctionComponent<Props> = ({\n serverName,\n server,\n}) => {\n const config = useConfig();\n\n if (!server) {\n return null;\n }\n\n const urlVariables = SchemaHelpers.serverVariablesToSchema(\n server.variables(),\n );\n const protocolVersion = server.protocolVersion();\n const security = server.security();\n\n return (\n <div className=\"panel-item\">\n <div className=\"panel-item--center px-8\">\n <div className=\"shadow rounded bg-gray-200 p-4 border bg-gray-100\">\n <div>\n <span className=\"font-mono text-base\">{server.url()}</span>\n <span className=\"bg-teal-500 font-bold no-underline text-white uppercase rounded mx-2 px-2 py-1 text-sm\">\n {protocolVersion\n ? `${server.protocol()} ${protocolVersion}`\n : server.protocol()}\n </span>\n <span className=\"bg-blue-500 font-bold no-underline text-white uppercase rounded px-2 py-1 text-sm\">\n {serverName}\n </span>\n </div>\n\n {server.hasDescription() && (\n <div className=\"mt-2\">\n <Markdown>{server.description()}</Markdown>\n </div>\n )}\n\n {urlVariables && (\n <div\n className=\"mt-2\"\n id={`${CommonHelpers.getIdentifier(\n `server-${serverName}-url-variables`,\n config,\n )}`}\n >\n <Schema\n schemaName=\"URL Variables\"\n schema={urlVariables}\n expanded={true}\n />\n </div>\n )}\n\n {\n <div\n id={`${CommonHelpers.getIdentifier(\n `server-${serverName}-security`,\n config,\n )}`}\n >\n <Security protocol={server.protocol()} security={security} />\n </div>\n }\n\n {server.bindings() && (\n <div className=\"mt-2\">\n <Bindings\n name=\"Server specific information\"\n bindings={server.bindings()}\n />\n </div>\n )}\n\n <Extensions name=\"Server Extensions\" item={server} />\n\n {server.tags().length > 0 && (\n <div className=\"mt-2\">\n <Tags tags={server.tags()} />\n </div>\n )}\n </div>\n </div>\n\n <div className=\"panel-item--right\" />\n </div>\n );\n};\n"]}
|
|
@@ -7,18 +7,23 @@ exports.Servers = void 0;
|
|
|
7
7
|
var react_1 = __importDefault(require("react"));
|
|
8
8
|
var Server_1 = require("./Server");
|
|
9
9
|
var contexts_1 = require("../../contexts");
|
|
10
|
+
var helpers_1 = require("../../helpers");
|
|
10
11
|
var constants_1 = require("../../constants");
|
|
11
|
-
|
|
12
|
-
var servers = contexts_1.useSpec
|
|
12
|
+
var Servers = function () {
|
|
13
|
+
var servers = (0, contexts_1.useSpec)()
|
|
14
|
+
.servers()
|
|
15
|
+
.all();
|
|
16
|
+
var config = (0, contexts_1.useConfig)();
|
|
13
17
|
if (!Object.keys(servers).length) {
|
|
14
18
|
return null;
|
|
15
19
|
}
|
|
16
|
-
return (react_1.default.createElement("section", { id: "servers
|
|
20
|
+
return (react_1.default.createElement("section", { id: "".concat(helpers_1.CommonHelpers.getIdentifier('servers', config)), className: "mt-16" },
|
|
17
21
|
react_1.default.createElement("h2", { className: "2xl:w-7/12 text-3xl font-light mb-4 px-8" }, constants_1.SERVERS_TEXT),
|
|
18
|
-
react_1.default.createElement("ul", null,
|
|
19
|
-
var serverName =
|
|
20
|
-
return (react_1.default.createElement("li", { className: "mb-4", key: serverName },
|
|
22
|
+
react_1.default.createElement("ul", null, servers.map(function (server) {
|
|
23
|
+
var serverName = server.id();
|
|
24
|
+
return (react_1.default.createElement("li", { className: "mb-4", key: serverName, id: "".concat(helpers_1.CommonHelpers.getIdentifier("server-".concat(serverName), config)) },
|
|
21
25
|
react_1.default.createElement(Server_1.Server, { serverName: serverName, server: server, key: serverName })));
|
|
22
26
|
}))));
|
|
23
27
|
};
|
|
28
|
+
exports.Servers = Servers;
|
|
24
29
|
//# sourceMappingURL=Servers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Servers.js","sourceRoot":"","sources":["../../../../src/containers/Servers/Servers.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAE1B,mCAAkC;AAElC,
|
|
1
|
+
{"version":3,"file":"Servers.js","sourceRoot":"","sources":["../../../../src/containers/Servers/Servers.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAE1B,mCAAkC;AAElC,2CAAoD;AACpD,yCAA8C;AAC9C,6CAA+C;AAExC,IAAM,OAAO,GAA4B;IAC9C,IAAM,OAAO,GAAG,IAAA,kBAAO,GAAE;SACtB,OAAO,EAAE;SACT,GAAG,EAAE,CAAC;IACT,IAAM,MAAM,GAAG,IAAA,oBAAS,GAAE,CAAC;IAE3B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE;QAChC,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,2CACE,EAAE,EAAE,UAAG,uBAAa,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,CAAE,EACvD,SAAS,EAAC,OAAO;QAEjB,sCAAI,SAAS,EAAC,0CAA0C,IACrD,wBAAY,CACV;QACL,0CACG,OAAO,CAAC,GAAG,CAAC,UAAA,MAAM;YACjB,IAAM,UAAU,GAAG,MAAM,CAAC,EAAE,EAAE,CAAC;YAC/B,OAAO,CACL,sCACE,SAAS,EAAC,MAAM,EAChB,GAAG,EAAE,UAAU,EACf,EAAE,EAAE,UAAG,uBAAa,CAAC,aAAa,CAChC,iBAAU,UAAU,CAAE,EACtB,MAAM,CACP,CAAE;gBAEH,8BAAC,eAAM,IACL,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,UAAU,GACf,CACC,CACN,CAAC;QACJ,CAAC,CAAC,CACC,CACG,CACX,CAAC;AACJ,CAAC,CAAC;AAzCW,QAAA,OAAO,WAyClB","sourcesContent":["import React from 'react';\n\nimport { Server } from './Server';\n\nimport { useConfig, useSpec } from '../../contexts';\nimport { CommonHelpers } from '../../helpers';\nimport { SERVERS_TEXT } from '../../constants';\n\nexport const Servers: React.FunctionComponent = () => {\n const servers = useSpec()\n .servers()\n .all();\n const config = useConfig();\n\n if (!Object.keys(servers).length) {\n return null;\n }\n\n return (\n <section\n id={`${CommonHelpers.getIdentifier('servers', config)}`}\n className=\"mt-16\"\n >\n <h2 className=\"2xl:w-7/12 text-3xl font-light mb-4 px-8\">\n {SERVERS_TEXT}\n </h2>\n <ul>\n {servers.map(server => {\n const serverName = server.id();\n return (\n <li\n className=\"mb-4\"\n key={serverName}\n id={`${CommonHelpers.getIdentifier(\n `server-${serverName}`,\n config,\n )}`}\n >\n <Server\n serverName={serverName}\n server={server}\n key={serverName}\n />\n </li>\n );\n })}\n </ul>\n </section>\n );\n};\n"]}
|