@asyncapi/react-component 1.0.0-next.43 → 1.0.0-next.45
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/browser/index.js +2 -2
- package/browser/standalone/index.js +4 -4
- package/browser/standalone/without-parser.js +7 -7
- package/browser/without-parser.js +2 -2
- package/lib/cjs/components/CollapseButton.js +6 -2
- package/lib/cjs/components/CollapseButton.js.map +1 -1
- package/lib/cjs/config/config.js.map +1 -1
- package/lib/cjs/config/default.js +5 -1
- package/lib/cjs/config/default.js.map +1 -1
- package/lib/cjs/containers/AsyncApi/Layout.js +10 -10
- package/lib/cjs/containers/AsyncApi/Layout.js.map +1 -1
- package/lib/cjs/containers/AsyncApi/Standalone.js +1 -1
- package/lib/cjs/containers/AsyncApi/Standalone.js.map +1 -1
- package/lib/cjs/containers/Messages/MessageExample.js +6 -1
- package/lib/cjs/containers/Messages/MessageExample.js.map +1 -1
- package/lib/cjs/containers/Sidebar/Sidebar.js +153 -127
- package/lib/cjs/containers/Sidebar/Sidebar.js.map +1 -1
- package/lib/cjs/helpers/specification.js +17 -0
- package/lib/cjs/helpers/specification.js.map +1 -1
- package/lib/esm/components/CollapseButton.js +5 -1
- package/lib/esm/components/CollapseButton.js.map +1 -1
- package/lib/esm/config/config.js.map +1 -1
- package/lib/esm/config/default.js +5 -1
- package/lib/esm/config/default.js.map +1 -1
- package/lib/esm/containers/AsyncApi/Layout.js +10 -10
- package/lib/esm/containers/AsyncApi/Layout.js.map +1 -1
- package/lib/esm/containers/AsyncApi/Standalone.js +1 -1
- package/lib/esm/containers/AsyncApi/Standalone.js.map +1 -1
- package/lib/esm/containers/Messages/MessageExample.js +7 -2
- package/lib/esm/containers/Messages/MessageExample.js.map +1 -1
- package/lib/esm/containers/Sidebar/Sidebar.js +152 -123
- package/lib/esm/containers/Sidebar/Sidebar.js.map +1 -1
- package/lib/esm/helpers/specification.js +17 -0
- package/lib/esm/helpers/specification.js.map +1 -1
- package/lib/types/components/CollapseButton.d.ts.map +1 -1
- package/lib/types/config/config.d.ts +5 -0
- package/lib/types/config/config.d.ts.map +1 -1
- package/lib/types/config/default.d.ts.map +1 -1
- package/lib/types/containers/AsyncApi/Layout.d.ts.map +1 -1
- package/lib/types/containers/AsyncApi/Standalone.d.ts.map +1 -1
- package/lib/types/containers/Messages/MessageExample.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/helpers/specification.d.ts +3 -0
- package/lib/types/helpers/specification.d.ts.map +1 -1
- package/package.json +1 -2
|
@@ -27,12 +27,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
27
27
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
28
|
exports.CollapseButton = void 0;
|
|
29
29
|
var react_1 = __importDefault(require("react"));
|
|
30
|
-
var
|
|
30
|
+
var HiChevronRight = function (props) {
|
|
31
|
+
if (props === void 0) { props = {}; }
|
|
32
|
+
return (react_1.default.createElement("svg", __assign({ stroke: "currentColor", fill: "currentColor", strokeWidth: "0", viewBox: "0 0 20 20", height: "1em", width: "1em", xmlns: "http://www.w3.org/2000/svg" }, props),
|
|
33
|
+
react_1.default.createElement("path", { fillRule: "evenodd", d: "M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z", clipRule: "evenodd" })));
|
|
34
|
+
};
|
|
31
35
|
var CollapseButton = function (_a) {
|
|
32
36
|
var chevronProps = _a.chevronProps, _b = _a.expanded, expanded = _b === void 0 ? false : _b, children = _a.children, rest = __rest(_a, ["chevronProps", "expanded", "children"]);
|
|
33
37
|
return (react_1.default.createElement("button", __assign({}, rest, { className: "focus:outline-none ".concat(rest.className), type: "button" }),
|
|
34
38
|
react_1.default.createElement("div", { className: "inline-block" }, children),
|
|
35
|
-
react_1.default.createElement(
|
|
39
|
+
react_1.default.createElement(HiChevronRight, __assign({}, chevronProps, { className: "inline-block align-baseline cursor-pointer ml-0.5 -mb-1 w-5 h-5 transform transition-transform duration-150 ease-linear ".concat(expanded ? '-rotate-90' : '', " ").concat((chevronProps === null || chevronProps === void 0 ? void 0 : chevronProps.className) || '') }))));
|
|
36
40
|
};
|
|
37
41
|
exports.CollapseButton = CollapseButton;
|
|
38
42
|
//# sourceMappingURL=CollapseButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CollapseButton.js","sourceRoot":"","sources":["../../../src/components/CollapseButton.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAmE;
|
|
1
|
+
{"version":3,"file":"CollapseButton.js","sourceRoot":"","sources":["../../../src/components/CollapseButton.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAmE;AAOnE,IAAM,cAAc,GAAG,UAAC,KAAqC;IAArC,sBAAA,EAAA,UAAqC;IAAK,OAAA,CAEhE,gDACE,MAAM,EAAC,cAAc,EACrB,IAAI,EAAC,cAAc,EACnB,WAAW,EAAC,GAAG,EACf,OAAO,EAAC,WAAW,EACnB,MAAM,EAAC,KAAK,EACZ,KAAK,EAAC,KAAK,EACX,KAAK,EAAC,4BAA4B,IAC9B,KAAK;QAET,wCACE,QAAQ,EAAC,SAAS,EAClB,CAAC,EAAC,oHAAoH,EACtH,QAAQ,EAAC,SAAS,GAClB,CACE,CACP;AAlBiE,CAkBjE,CAAC;AAEK,IAAM,cAAc,GAAmC,UAAC,EAK9D;IAJC,IAAA,YAAY,kBAAA,EACZ,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,QAAQ,cAAA,EACL,IAAI,cAJsD,wCAK9D,CADQ;IACH,OAAA,CACJ,qDACM,IAAI,IACR,SAAS,EAAE,6BAAsB,IAAI,CAAC,SAAS,CAAE,EACjD,IAAI,EAAC,QAAQ;QAEb,uCAAK,SAAS,EAAC,cAAc,IAAE,QAAQ,CAAO;QAC9C,8BAAC,cAAc,eACT,YAAY,IAChB,SAAS,EAAE,kIACT,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,cAC1B,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,SAAS,KAAI,EAAE,CAAE,IACnC,CACK,CACV,CAAA;CAAA,CAAC;AAnBW,QAAA,cAAc,kBAmBzB","sourcesContent":["import React, { ButtonHTMLAttributes, SVGAttributes } from 'react';\n\ninterface Props extends ButtonHTMLAttributes<HTMLButtonElement> {\n chevronProps?: SVGAttributes<SVGElement>;\n expanded?: boolean;\n}\n\nconst HiChevronRight = (props: SVGAttributes<SVGElement> = {}) => (\n // Copied from https://icon-sets.iconify.design/heroicons-solid/chevron-right/\n <svg\n stroke=\"currentColor\"\n fill=\"currentColor\"\n strokeWidth=\"0\"\n viewBox=\"0 0 20 20\"\n height=\"1em\"\n width=\"1em\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n d=\"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z\"\n clipRule=\"evenodd\"\n />\n </svg>\n);\n\nexport const CollapseButton: React.FunctionComponent<Props> = ({\n chevronProps,\n expanded = false,\n children,\n ...rest\n}) => (\n <button\n {...rest}\n className={`focus:outline-none ${rest.className}`}\n type=\"button\"\n >\n <div className=\"inline-block\">{children}</div>\n <HiChevronRight\n {...chevronProps}\n className={`inline-block align-baseline cursor-pointer ml-0.5 -mb-1 w-5 h-5 transform transition-transform duration-150 ease-linear ${\n expanded ? '-rotate-90' : ''\n } ${chevronProps?.className || ''}`}\n />\n </button>\n);\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/config/config.ts"],"names":[],"mappings":"","sourcesContent":["export interface ConfigInterface {\n schemaID?: string;\n show?: ShowConfig;\n sidebar?: SideBarConfig;\n parserOptions?: any;\n publishLabel?: string;\n subscribeLabel?: string;\n}\n\nexport interface ShowConfig {\n sidebar?: boolean;\n info?: boolean;\n servers?: boolean;\n operations?: boolean;\n messages?: boolean;\n schemas?: boolean;\n errors?: boolean;\n}\n\nexport interface SideBarConfig {\n showOperations?: 'byDefault' | 'bySpecTags' | 'byOperationsTags';\n}\n"]}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/config/config.ts"],"names":[],"mappings":"","sourcesContent":["export interface ConfigInterface {\n schemaID?: string;\n show?: ShowConfig;\n expand?: ExpandConfig;\n sidebar?: SideBarConfig;\n parserOptions?: any;\n publishLabel?: string;\n subscribeLabel?: string;\n}\n\nexport interface ShowConfig {\n sidebar?: boolean;\n info?: boolean;\n servers?: boolean;\n operations?: boolean;\n messages?: boolean;\n schemas?: boolean;\n errors?: boolean;\n}\n\nexport interface ExpandConfig {\n messageExamples?: boolean;\n}\n\nexport interface SideBarConfig {\n showServers?: 'byDefault' | 'bySpecTags' | 'byServersTags';\n showOperations?: 'byDefault' | 'bySpecTags' | 'byOperationsTags';\n}\n"]}
|
|
@@ -13,8 +13,12 @@ exports.defaultConfig = {
|
|
|
13
13
|
schemas: true,
|
|
14
14
|
errors: true,
|
|
15
15
|
},
|
|
16
|
+
expand: {
|
|
17
|
+
messageExamples: false,
|
|
18
|
+
},
|
|
16
19
|
sidebar: {
|
|
17
|
-
|
|
20
|
+
showServers: 'byDefault',
|
|
21
|
+
showOperations: 'byDefault',
|
|
18
22
|
},
|
|
19
23
|
publishLabel: constants_1.PUBLISH_LABEL_DEFAULT_TEXT,
|
|
20
24
|
subscribeLabel: constants_1.SUBSCRIBE_LABEL_DEFAULT_TEXT,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default.js","sourceRoot":"","sources":["../../../src/config/default.ts"],"names":[],"mappings":";;;AACA,0CAGsB;AAET,QAAA,aAAa,GAAoB;IAC5C,QAAQ,EAAE,EAAE;IACZ,IAAI,EAAE;QACJ,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,IAAI;KACb;IACD,OAAO,EAAE;QACP,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"default.js","sourceRoot":"","sources":["../../../src/config/default.ts"],"names":[],"mappings":";;;AACA,0CAGsB;AAET,QAAA,aAAa,GAAoB;IAC5C,QAAQ,EAAE,EAAE;IACZ,IAAI,EAAE;QACJ,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,IAAI;KACb;IACD,MAAM,EAAE;QACN,eAAe,EAAE,KAAK;KACvB;IACD,OAAO,EAAE;QACP,WAAW,EAAE,WAAW;QACxB,cAAc,EAAE,WAAW;KAC5B;IACD,YAAY,EAAE,sCAA0B;IACxC,cAAc,EAAE,wCAA4B;CAC7C,CAAC","sourcesContent":["import { ConfigInterface } from './config';\nimport {\n PUBLISH_LABEL_DEFAULT_TEXT,\n SUBSCRIBE_LABEL_DEFAULT_TEXT,\n} from '../constants';\n\nexport const defaultConfig: ConfigInterface = {\n schemaID: '',\n show: {\n sidebar: false,\n info: true,\n servers: true,\n operations: true,\n messages: true,\n schemas: true,\n errors: true,\n },\n expand: {\n messageExamples: false,\n },\n sidebar: {\n showServers: 'byDefault',\n showOperations: 'byDefault',\n },\n publishLabel: PUBLISH_LABEL_DEFAULT_TEXT,\n subscribeLabel: SUBSCRIBE_LABEL_DEFAULT_TEXT,\n};\n"]}
|
|
@@ -37,9 +37,8 @@ var Schemas_1 = require("../Schemas/Schemas");
|
|
|
37
37
|
var Error_1 = require("../Error/Error");
|
|
38
38
|
var contexts_1 = require("../../contexts");
|
|
39
39
|
var AsyncApiLayout = function (_a) {
|
|
40
|
-
var
|
|
41
|
-
var
|
|
42
|
-
var _k = (0, react_1.useState)('container:xl'), observerClassName = _k[0], setObserverClassName = _k[1];
|
|
40
|
+
var asyncapi = _a.asyncapi, config = _a.config, _b = _a.error, error = _b === void 0 ? null : _b;
|
|
41
|
+
var _c = (0, react_1.useState)('container:xl'), observerClassName = _c[0], setObserverClassName = _c[1];
|
|
43
42
|
var ref = (0, use_resize_observer_1.default)({
|
|
44
43
|
onResize: function (_a) {
|
|
45
44
|
var width = _a.width;
|
|
@@ -54,19 +53,20 @@ var AsyncApiLayout = function (_a) {
|
|
|
54
53
|
});
|
|
55
54
|
},
|
|
56
55
|
}).ref;
|
|
56
|
+
var configShow = config.show || {};
|
|
57
57
|
return (react_1.default.createElement(contexts_1.ConfigContext.Provider, { value: config },
|
|
58
58
|
react_1.default.createElement(contexts_1.SpecificationContext.Provider, { value: asyncapi },
|
|
59
59
|
react_1.default.createElement("section", { className: "aui-root" },
|
|
60
60
|
react_1.default.createElement("div", { className: "".concat(observerClassName, " relative md:flex bg-white leading-normal"), id: config.schemaID || undefined, ref: ref },
|
|
61
|
-
|
|
61
|
+
configShow.sidebar && react_1.default.createElement(Sidebar_1.Sidebar, null),
|
|
62
62
|
react_1.default.createElement("div", { className: "panel--center relative py-8 flex-1" },
|
|
63
63
|
react_1.default.createElement("div", { className: "relative z-10" },
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
64
|
+
configShow.errors && error && react_1.default.createElement(Error_1.Error, { error: error }),
|
|
65
|
+
configShow.info && react_1.default.createElement(Info_1.Info, null),
|
|
66
|
+
configShow.servers && react_1.default.createElement(Servers_1.Servers, null),
|
|
67
|
+
configShow.operations && react_1.default.createElement(Operations_1.Operations, null),
|
|
68
|
+
configShow.messages && react_1.default.createElement(Messages_1.Messages, null),
|
|
69
|
+
configShow.schemas && react_1.default.createElement(Schemas_1.Schemas, null)),
|
|
70
70
|
react_1.default.createElement("div", { className: "panel--right absolute top-0 right-0 h-full bg-gray-800" })))))));
|
|
71
71
|
};
|
|
72
72
|
exports.default = AsyncApiLayout;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Layout.js","sourceRoot":"","sources":["../../../../src/containers/AsyncApi/Layout.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAwC;AAExC,4EAAoD;AAEpD,8CAA6C;AAC7C,qCAAoC;AACpC,8CAA6C;AAC7C,uDAAsD;AACtD,iDAAgD;AAChD,8CAA6C;AAC7C,wCAAuC;AAGvC,2CAAqE;AASrE,IAAM,cAAc,GAAmC,UAAC,EAIvD
|
|
1
|
+
{"version":3,"file":"Layout.js","sourceRoot":"","sources":["../../../../src/containers/AsyncApi/Layout.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAwC;AAExC,4EAAoD;AAEpD,8CAA6C;AAC7C,qCAAoC;AACpC,8CAA6C;AAC7C,uDAAsD;AACtD,iDAAgD;AAChD,8CAA6C;AAC7C,wCAAuC;AAGvC,2CAAqE;AASrE,IAAM,cAAc,GAAmC,UAAC,EAIvD;QAHC,QAAQ,cAAA,EACR,MAAM,YAAA,EACN,aAAY,EAAZ,KAAK,mBAAG,IAAI,KAAA;IAEN,IAAA,KAA4C,IAAA,gBAAQ,EAAC,cAAc,CAAC,EAAnE,iBAAiB,QAAA,EAAE,oBAAoB,QAA4B,CAAC;IAEnE,IAAA,GAAG,GAAK,IAAA,6BAAiB,EAAiB;QAChD,QAAQ,EAAE,UAAC,EAAS;gBAAP,KAAK,WAAA;YAChB,qBAAqB,CAAC;gBACpB,IAAI,KAAK,KAAK,SAAS,EAAE;oBACvB,OAAO;iBACR;gBAED,IAAM,iBAAiB,GACrB,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,gBAAgB,CAAC;gBACpD,IAAI,iBAAiB,KAAK,iBAAiB,EAAE;oBAC3C,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;iBACzC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC,IAdS,CAcR;IAEH,IAAM,UAAU,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;IACrC,OAAO,CACL,8BAAC,wBAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,MAAM;QACnC,8BAAC,+BAAoB,CAAC,QAAQ,IAAC,KAAK,EAAE,QAAQ;YAC5C,2CAAS,SAAS,EAAC,UAAU;gBAC3B,uCACE,SAAS,EAAE,UAAG,iBAAiB,8CAA2C,EAC1E,EAAE,EAAE,MAAM,CAAC,QAAQ,IAAI,SAAS,EAChC,GAAG,EAAE,GAAG;oBAEP,UAAU,CAAC,OAAO,IAAI,8BAAC,iBAAO,OAAG;oBAClC,uCAAK,SAAS,EAAC,oCAAoC;wBACjD,uCAAK,SAAS,EAAC,eAAe;4BAC3B,UAAU,CAAC,MAAM,IAAI,KAAK,IAAI,8BAAC,aAAK,IAAC,KAAK,EAAE,KAAK,GAAI;4BACrD,UAAU,CAAC,IAAI,IAAI,8BAAC,WAAI,OAAG;4BAC3B,UAAU,CAAC,OAAO,IAAI,8BAAC,iBAAO,OAAG;4BACjC,UAAU,CAAC,UAAU,IAAI,8BAAC,uBAAU,OAAG;4BACvC,UAAU,CAAC,QAAQ,IAAI,8BAAC,mBAAQ,OAAG;4BACnC,UAAU,CAAC,OAAO,IAAI,8BAAC,iBAAO,OAAG,CAC9B;wBACN,uCAAK,SAAS,EAAC,wDAAwD,GAAG,CACtE,CACF,CACE,CACoB,CACT,CAC1B,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,cAAc,CAAC","sourcesContent":["import React, { useState } from 'react';\nimport { AsyncAPIDocument } from '@asyncapi/parser';\nimport useResizeObserver from 'use-resize-observer';\n\nimport { Sidebar } from '../Sidebar/Sidebar';\nimport { Info } from '../Info/Info';\nimport { Servers } from '../Servers/Servers';\nimport { Operations } from '../Operations/Operations';\nimport { Messages } from '../Messages/Messages';\nimport { Schemas } from '../Schemas/Schemas';\nimport { Error } from '../Error/Error';\n\nimport { ConfigInterface } from '../../config';\nimport { SpecificationContext, ConfigContext } from '../../contexts';\nimport { ErrorObject } from '../../types';\n\ninterface Props {\n asyncapi: AsyncAPIDocument;\n config: ConfigInterface;\n error?: ErrorObject;\n}\n\nconst AsyncApiLayout: React.FunctionComponent<Props> = ({\n asyncapi,\n config,\n error = null,\n}) => {\n const [observerClassName, setObserverClassName] = useState('container:xl');\n\n const { ref } = useResizeObserver<HTMLDivElement>({\n onResize: ({ width }) => {\n requestAnimationFrame(() => {\n if (width === undefined) {\n return;\n }\n\n const possibleClassName =\n width <= 1280 ? 'container:xl' : 'container:base';\n if (possibleClassName !== observerClassName) {\n setObserverClassName(possibleClassName);\n }\n });\n },\n });\n\n const configShow = config.show || {};\n return (\n <ConfigContext.Provider value={config}>\n <SpecificationContext.Provider value={asyncapi}>\n <section className=\"aui-root\">\n <div\n className={`${observerClassName} relative md:flex bg-white leading-normal`}\n id={config.schemaID || undefined}\n ref={ref}\n >\n {configShow.sidebar && <Sidebar />}\n <div className=\"panel--center relative py-8 flex-1\">\n <div className=\"relative z-10\">\n {configShow.errors && error && <Error error={error} />}\n {configShow.info && <Info />}\n {configShow.servers && <Servers />}\n {configShow.operations && <Operations />}\n {configShow.messages && <Messages />}\n {configShow.schemas && <Schemas />}\n </div>\n <div className=\"panel--right absolute top-0 right-0 h-full bg-gray-800\" />\n </div>\n </div>\n </section>\n </SpecificationContext.Provider>\n </ConfigContext.Provider>\n );\n};\n\nexport default AsyncApiLayout;\n"]}
|
|
@@ -135,7 +135,7 @@ var AsyncApiComponent = (function (_super) {
|
|
|
135
135
|
var _b = this.props, config = _b.config, propError = _b.error;
|
|
136
136
|
var _c = this.state, asyncapi = _c.asyncapi, stateError = _c.error;
|
|
137
137
|
var error = propError || stateError;
|
|
138
|
-
var concatenatedConfig = __assign(__assign(__assign({}, config_1.defaultConfig), config), { show: __assign(__assign({}, config_1.defaultConfig.show), (!!config && config.show)), sidebar: __assign(__assign({}, config_1.defaultConfig.sidebar), (!!config && config.sidebar)) });
|
|
138
|
+
var concatenatedConfig = __assign(__assign(__assign({}, config_1.defaultConfig), config), { show: __assign(__assign({}, config_1.defaultConfig.show), (!!config && config.show)), expand: __assign(__assign({}, config_1.defaultConfig.expand), (!!config && config.expand)), sidebar: __assign(__assign({}, config_1.defaultConfig.sidebar), (!!config && config.sidebar)) });
|
|
139
139
|
if (!asyncapi) {
|
|
140
140
|
if (!error) {
|
|
141
141
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Standalone.js","sourceRoot":"","sources":["../../../../src/containers/AsyncApi/Standalone.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAyC;AAGzC,yCAAqD;AAErD,uCAA8D;AAE9D,oDAAsC;AACtC,wCAAuC;AAavC;IAAgC,qCAAuC;IAMrE,2BAAY,KAAoB;QAAhC,YACE,kBAAM,KAAK,CAAC,SAOb;QAbD,WAAK,GAAkB;YACrB,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,SAAS;SACjB,CAAC;QAKA,IAAM,UAAU,GAAG,8BAAoB,CAAC,kBAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACzE,IAAI,UAAU,EAAE;YACd,KAAI,CAAC,KAAK,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;SACvC;;IAEH,CAAC;IAEK,6CAAiB,GAAvB;;;gBACE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;oBACxB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;iBACrC;;;;KACF;IAEK,8CAAkB,GAAxB,UAAyB,SAAwB;;;;gBACzC,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC;gBAC7B,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;gBAEpC,IAAI,SAAS,KAAK,SAAS,EAAE;oBAC3B,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;iBAC7B;;;;KACF;IAED,kCAAM,GAAN;;QACQ,IAAA,KAA+B,IAAI,CAAC,KAAK,EAAvC,MAAM,YAAA,EAAS,SAAS,WAAe,CAAC;QAC1C,IAAA,KAAkC,IAAI,CAAC,KAAK,EAA1C,QAAQ,cAAA,EAAS,UAAU,WAAe,CAAC;QAEnD,IAAM,KAAK,GAAG,SAAS,IAAI,UAAU,CAAC;QACtC,IAAM,kBAAkB,kCACnB,sBAAa,GACb,MAAM,KACT,IAAI,wBACC,sBAAa,CAAC,IAAI,GAClB,CAAC,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,GAE9B,OAAO,wBACF,sBAAa,CAAC,OAAO,GACrB,CAAC,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,IAElC,CAAC;QAEF,IAAI,CAAC,QAAQ,EAAE;YACb,IAAI,CAAC,KAAK,EAAE;gBACV,OAAO,IAAI,CAAC;aACb;YACD,OAAO,CAAA,MAAA,kBAAkB,CAAC,IAAI,0CAAE,MAAM,KAAI,8BAAC,aAAK,IAAC,KAAK,EAAE,KAAK,GAAI,CAAC;SACnE;QAED,OAAO,CACL,8BAAC,gBAAc,IACb,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,kBAAkB,EAC1B,KAAK,EAAE,KAAK,GACZ,CACH,CAAC;IACJ,CAAC;IAEO,uCAAW,GAAnB,UAAoB,MAAmB;QACrC,IAAM,UAAU,GAAG,8BAAoB,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACnE,IAAI,CAAC,UAAU,EAAE;YACf,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;YACvC,OAAO;SACR;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;IAC1C,CAAC;IACH,wBAAC;AAAD,CAAC,
|
|
1
|
+
{"version":3,"file":"Standalone.js","sourceRoot":"","sources":["../../../../src/containers/AsyncApi/Standalone.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAyC;AAGzC,yCAAqD;AAErD,uCAA8D;AAE9D,oDAAsC;AACtC,wCAAuC;AAavC;IAAgC,qCAAuC;IAMrE,2BAAY,KAAoB;QAAhC,YACE,kBAAM,KAAK,CAAC,SAOb;QAbD,WAAK,GAAkB;YACrB,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,SAAS;SACjB,CAAC;QAKA,IAAM,UAAU,GAAG,8BAAoB,CAAC,kBAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACzE,IAAI,UAAU,EAAE;YACd,KAAI,CAAC,KAAK,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;SACvC;;IAEH,CAAC;IAEK,6CAAiB,GAAvB;;;gBACE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;oBACxB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;iBACrC;;;;KACF;IAEK,8CAAkB,GAAxB,UAAyB,SAAwB;;;;gBACzC,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC;gBAC7B,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;gBAEpC,IAAI,SAAS,KAAK,SAAS,EAAE;oBAC3B,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;iBAC7B;;;;KACF;IAED,kCAAM,GAAN;;QACQ,IAAA,KAA+B,IAAI,CAAC,KAAK,EAAvC,MAAM,YAAA,EAAS,SAAS,WAAe,CAAC;QAC1C,IAAA,KAAkC,IAAI,CAAC,KAAK,EAA1C,QAAQ,cAAA,EAAS,UAAU,WAAe,CAAC;QAEnD,IAAM,KAAK,GAAG,SAAS,IAAI,UAAU,CAAC;QACtC,IAAM,kBAAkB,kCACnB,sBAAa,GACb,MAAM,KACT,IAAI,wBACC,sBAAa,CAAC,IAAI,GAClB,CAAC,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,GAE9B,MAAM,wBACD,sBAAa,CAAC,MAAM,GACpB,CAAC,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,GAEhC,OAAO,wBACF,sBAAa,CAAC,OAAO,GACrB,CAAC,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,IAElC,CAAC;QAEF,IAAI,CAAC,QAAQ,EAAE;YACb,IAAI,CAAC,KAAK,EAAE;gBACV,OAAO,IAAI,CAAC;aACb;YACD,OAAO,CAAA,MAAA,kBAAkB,CAAC,IAAI,0CAAE,MAAM,KAAI,8BAAC,aAAK,IAAC,KAAK,EAAE,KAAK,GAAI,CAAC;SACnE;QAED,OAAO,CACL,8BAAC,gBAAc,IACb,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,kBAAkB,EAC1B,KAAK,EAAE,KAAK,GACZ,CACH,CAAC;IACJ,CAAC;IAEO,uCAAW,GAAnB,UAAoB,MAAmB;QACrC,IAAM,UAAU,GAAG,8BAAoB,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACnE,IAAI,CAAC,UAAU,EAAE;YACf,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;YACvC,OAAO;SACR;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;IAC1C,CAAC;IACH,wBAAC;AAAD,CAAC,AA7ED,CAAgC,iBAAS,GA6ExC;AAED,kBAAe,iBAAiB,CAAC","sourcesContent":["import React, { Component } from 'react';\nimport { AsyncAPIDocument } from '@asyncapi/parser';\n\nimport { SpecificationHelpers } from '../../helpers';\nimport { ErrorObject, PropsSchema } from '../../types';\nimport { ConfigInterface, defaultConfig } from '../../config';\n\nimport AsyncApiLayout from './Layout';\nimport { Error } from '../Error/Error';\n\nexport interface AsyncApiProps {\n schema: PropsSchema;\n config?: Partial<ConfigInterface>;\n error?: ErrorObject;\n}\n\ninterface AsyncAPIState {\n asyncapi?: AsyncAPIDocument;\n error?: ErrorObject;\n}\n\nclass AsyncApiComponent extends Component<AsyncApiProps, AsyncAPIState> {\n state: AsyncAPIState = {\n asyncapi: undefined,\n error: undefined,\n };\n\n constructor(props: AsyncApiProps) {\n super(props);\n\n const parsedSpec = SpecificationHelpers.retrieveParsedSpec(props.schema);\n if (parsedSpec) {\n this.state = { asyncapi: parsedSpec };\n }\n return;\n }\n\n async componentDidMount() {\n if (!this.state.asyncapi) {\n this.updateState(this.props.schema);\n }\n }\n\n async componentDidUpdate(prevProps: AsyncApiProps) {\n const oldSchema = prevProps.schema;\n const newSchema = this.props.schema;\n\n if (oldSchema !== newSchema) {\n this.updateState(newSchema);\n }\n }\n\n render() {\n const { config, error: propError } = this.props;\n const { asyncapi, error: stateError } = this.state;\n\n const error = propError || stateError;\n const concatenatedConfig: ConfigInterface = {\n ...defaultConfig,\n ...config,\n show: {\n ...defaultConfig.show,\n ...(!!config && config.show),\n },\n expand: {\n ...defaultConfig.expand,\n ...(!!config && config.expand),\n },\n sidebar: {\n ...defaultConfig.sidebar,\n ...(!!config && config.sidebar),\n },\n };\n\n if (!asyncapi) {\n if (!error) {\n return null;\n }\n return concatenatedConfig.show?.errors && <Error error={error} />;\n }\n\n return (\n <AsyncApiLayout\n asyncapi={asyncapi}\n config={concatenatedConfig}\n error={error}\n />\n );\n }\n\n private updateState(schema: PropsSchema) {\n const parsedSpec = SpecificationHelpers.retrieveParsedSpec(schema);\n if (!parsedSpec) {\n this.setState({ asyncapi: undefined });\n return;\n }\n this.setState({ asyncapi: parsedSpec });\n }\n}\n\nexport default AsyncApiComponent;\n"]}
|
|
@@ -27,6 +27,7 @@ exports.Example = exports.MessageExample = void 0;
|
|
|
27
27
|
var react_1 = __importStar(require("react"));
|
|
28
28
|
var components_1 = require("../../components");
|
|
29
29
|
var message_1 = require("../../helpers/message");
|
|
30
|
+
var contexts_1 = require("../../contexts");
|
|
30
31
|
var MessageExample = function (_a) {
|
|
31
32
|
var message = _a.message;
|
|
32
33
|
if (!message) {
|
|
@@ -42,7 +43,11 @@ var MessageExample = function (_a) {
|
|
|
42
43
|
exports.MessageExample = MessageExample;
|
|
43
44
|
var Example = function (_a) {
|
|
44
45
|
var _b = _a.type, type = _b === void 0 ? 'Payload' : _b, schema = _a.schema, _c = _a.examples, examples = _c === void 0 ? [] : _c;
|
|
45
|
-
var
|
|
46
|
+
var config = (0, contexts_1.useConfig)();
|
|
47
|
+
var _d = (0, react_1.useState)((config && config.expand && config.expand.messageExamples) || false), expanded = _d[0], setExpanded = _d[1];
|
|
48
|
+
(0, react_1.useEffect)(function () {
|
|
49
|
+
setExpanded((config && config.expand && config.expand.messageExamples) || false);
|
|
50
|
+
}, [config.expand]);
|
|
46
51
|
return (react_1.default.createElement("div", { className: "mt-4" },
|
|
47
52
|
react_1.default.createElement("div", null,
|
|
48
53
|
react_1.default.createElement(components_1.CollapseButton, { onClick: function () { return setExpanded(function (prev) { return !prev; }); }, expanded: expanded, chevronProps: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageExample.js","sourceRoot":"","sources":["../../../../src/containers/Messages/MessageExample.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"MessageExample.js","sourceRoot":"","sources":["../../../../src/containers/Messages/MessageExample.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState, useEffect } from 'react';\nimport { Message, Schema } from '@asyncapi/parser';\n\nimport { CollapseButton, JSONSnippet } from '../../components';\nimport { MessageHelpers } from '../../helpers/message';\nimport { MessageExample as MessageExampleType } from '../../types';\nimport { useConfig } from '../../contexts';\n\ninterface Props {\n message: Message;\n}\n\nexport const MessageExample: React.FunctionComponent<Props> = ({ message }) => {\n if (!message) {\n return null;\n }\n\n const payload = message.payload();\n const headers = message.headers();\n\n return (\n <div className=\"bg-gray-800 px-8 py-4 mt-4 -mx-8 2xl:mx-0 2xl:px-4 2xl:rounded examples\">\n <h4 className=\"text-white text-lg\">Examples</h4>\n {payload && (\n <Example\n type=\"Payload\"\n schema={payload}\n examples={MessageHelpers.getPayloadExamples(message)}\n />\n )}\n {headers && (\n <Example\n type=\"Headers\"\n schema={headers}\n examples={MessageHelpers.getHeadersExamples(message)}\n />\n )}\n </div>\n );\n};\n\ninterface ExampleProps {\n type: 'Payload' | 'Headers';\n schema: Schema;\n examples?: MessageExampleType[];\n}\n\nexport const Example: React.FunctionComponent<ExampleProps> = ({\n type = 'Payload',\n schema,\n examples = [],\n}) => {\n const config = useConfig();\n const [expanded, setExpanded] = useState(\n (config && config.expand && config.expand.messageExamples) || false,\n );\n\n useEffect(() => {\n setExpanded(\n (config && config.expand && config.expand.messageExamples) || false,\n );\n }, [config.expand]);\n\n return (\n <div className=\"mt-4\">\n <div>\n <CollapseButton\n onClick={() => setExpanded(prev => !prev)}\n expanded={expanded}\n chevronProps={{\n className: 'fill-current text-gray-200',\n }}\n >\n <span className=\"inline-block w-20 py-0.5 mr-1 text-gray-200 text-sm border text-center rounded focus:outline-none\">\n {type}\n </span>\n </CollapseButton>\n </div>\n <div className={expanded ? 'block' : 'hidden'}>\n {examples && examples.length > 0 ? (\n <ul>\n {examples.map((example, idx) => (\n <li className=\"mt-4\" key={idx}>\n <h5 className=\"text-xs font-bold text-gray-500\">\n {example.name\n ? `#${idx + 1} Example - ${example.name}`\n : `#${idx + 1} Example`}\n </h5>\n {example.summary && (\n <p className=\"text-xs font-bold text-gray-500\">\n {example.summary}\n </p>\n )}\n <div className=\"mt-1\">\n <JSONSnippet\n snippet={MessageHelpers.sanitizeExample(example.example)}\n />\n </div>\n </li>\n ))}\n </ul>\n ) : (\n <div className=\"mt-4\">\n <JSONSnippet\n snippet={MessageHelpers.generateExample(schema.json())}\n />\n <h6 className=\"text-xs font-bold text-gray-600 italic mt-2\">\n This example has been generated automatically.\n </h6>\n </div>\n )}\n </div>\n </div>\n );\n};\n"]}
|
|
@@ -23,32 +23,24 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.
|
|
26
|
+
exports.Sidebar = void 0;
|
|
27
27
|
var react_1 = __importStar(require("react"));
|
|
28
28
|
var components_1 = require("../../components");
|
|
29
29
|
var contexts_1 = require("../../contexts");
|
|
30
|
-
var helpers_1 = require("../../helpers");
|
|
31
30
|
var constants_1 = require("../../constants");
|
|
32
31
|
var SidebarContext = react_1.default.createContext({
|
|
33
32
|
setShowSidebar: function (value) { return value; },
|
|
34
33
|
});
|
|
35
|
-
var Sidebar = function (
|
|
36
|
-
var
|
|
37
|
-
var _b = (0, react_1.useState)(false), showSidebar = _b[0], setShowSidebar = _b[1];
|
|
38
|
-
var showOperations = (config === null || config === void 0 ? void 0 : config.showOperations) || 'byDefault';
|
|
34
|
+
var Sidebar = function () {
|
|
35
|
+
var _a = (0, react_1.useState)(false), showSidebar = _a[0], setShowSidebar = _a[1];
|
|
39
36
|
var asyncapi = (0, contexts_1.useSpec)();
|
|
40
37
|
var info = asyncapi.info();
|
|
41
38
|
var logo = info.ext('x-logo');
|
|
42
39
|
var components = asyncapi.hasComponents() && asyncapi.components();
|
|
43
40
|
var messages = components && components.messages();
|
|
44
41
|
var schemas = components && components.schemas();
|
|
45
|
-
var
|
|
46
|
-
|
|
47
|
-
Operations = exports.OperationsByRootTags;
|
|
48
|
-
}
|
|
49
|
-
else if (showOperations === 'byOperationsTags') {
|
|
50
|
-
Operations = exports.OperationsByOperationsTags;
|
|
51
|
-
}
|
|
42
|
+
var hasOperations = asyncapi.hasChannels() &&
|
|
43
|
+
Object.values(asyncapi.channels()).some(function (channel) { return channel.hasPublish() || channel.hasSubscribe(); });
|
|
52
44
|
var messagesList = messages && Object.keys(messages).length > 0 && (react_1.default.createElement("li", { className: "mb-3 mt-9" },
|
|
53
45
|
react_1.default.createElement("a", { className: "text-xs uppercase text-gray-700 mt-10 mb-4 font-thin hover:text-gray-900", href: "#messages", onClick: function () { return setShowSidebar(false); } }, "Messages"),
|
|
54
46
|
react_1.default.createElement("ul", { className: "text-sm mt-2" }, Object.entries(messages).map(function (_a) {
|
|
@@ -78,123 +70,175 @@ var Sidebar = function (_a) {
|
|
|
78
70
|
react_1.default.createElement("ul", { className: "text-sm mt-10 relative" },
|
|
79
71
|
react_1.default.createElement("li", { className: "mb-3" },
|
|
80
72
|
react_1.default.createElement("a", { className: "text-gray-700 no-underline hover:text-gray-900", href: "#introduction", onClick: function () { return setShowSidebar(false); } }, "Introduction")),
|
|
81
|
-
asyncapi.hasServers() && (react_1.default.createElement("li", { className: "mb-3" },
|
|
82
|
-
react_1.default.createElement("a", { className: "text-gray-700
|
|
83
|
-
|
|
73
|
+
asyncapi.hasServers() && (react_1.default.createElement("li", { className: "mb-3 mt-9" },
|
|
74
|
+
react_1.default.createElement("a", { className: "text-xs uppercase text-gray-700 mt-10 mb-4 font-thin hover:text-gray-900", href: "#servers", onClick: function () { return setShowSidebar(false); } }, "Servers"),
|
|
75
|
+
react_1.default.createElement(ServersList, null))),
|
|
76
|
+
hasOperations && (react_1.default.createElement(react_1.default.Fragment, null,
|
|
84
77
|
react_1.default.createElement("li", { className: "mb-3 mt-9" },
|
|
85
78
|
react_1.default.createElement("a", { className: "text-xs uppercase text-gray-700 mt-10 mb-4 font-thin hover:text-gray-900", href: "#operations", onClick: function () { return setShowSidebar(false); } }, "Operations"),
|
|
86
|
-
react_1.default.createElement(
|
|
79
|
+
react_1.default.createElement(OperationsList, null)),
|
|
87
80
|
messagesList,
|
|
88
81
|
schemasList))))))));
|
|
89
82
|
};
|
|
90
83
|
exports.Sidebar = Sidebar;
|
|
91
|
-
|
|
92
|
-
var
|
|
93
|
-
var
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
84
|
+
function filterObjectsByTags(tags, objects) {
|
|
85
|
+
var taggedObjects = new Set();
|
|
86
|
+
var tagged = new Map();
|
|
87
|
+
tags.forEach(function (tag) {
|
|
88
|
+
var taggedForTag = [];
|
|
89
|
+
objects.forEach(function (obj) {
|
|
90
|
+
var object = obj.object;
|
|
91
|
+
if (typeof object.tags !== 'function') {
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
var objectTags = (object.tags() || []).map(function (t) { return t.name(); });
|
|
95
|
+
var hasTag = objectTags.includes(tag);
|
|
96
|
+
if (hasTag) {
|
|
97
|
+
taggedForTag.push(obj);
|
|
98
|
+
taggedObjects.add(obj);
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
tagged.set(tag, taggedForTag);
|
|
102
|
+
});
|
|
103
|
+
var untagged = [];
|
|
104
|
+
objects.forEach(function (obj) {
|
|
105
|
+
if (!taggedObjects.has(obj)) {
|
|
106
|
+
untagged.push(obj);
|
|
102
107
|
}
|
|
103
108
|
});
|
|
104
|
-
return
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
var
|
|
109
|
+
return { tagged: tagged, untagged: untagged };
|
|
110
|
+
}
|
|
111
|
+
var ServersList = function () {
|
|
112
|
+
var sidebarConfig = (0, contexts_1.useConfig)().sidebar;
|
|
108
113
|
var asyncapi = (0, contexts_1.useSpec)();
|
|
109
|
-
var
|
|
110
|
-
var
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
114
|
+
var servers = asyncapi.servers();
|
|
115
|
+
var showServers = (sidebarConfig === null || sidebarConfig === void 0 ? void 0 : sidebarConfig.showServers) || 'byDefault';
|
|
116
|
+
if (showServers === 'byDefault') {
|
|
117
|
+
return (react_1.default.createElement("ul", { className: "text-sm mt-2" }, Object.keys(servers).map(function (serverName) { return (react_1.default.createElement(ServerItem, { serverName: serverName, key: serverName })); })));
|
|
118
|
+
}
|
|
119
|
+
var specTagNames;
|
|
120
|
+
if (showServers === 'bySpecTags') {
|
|
121
|
+
specTagNames = (asyncapi.tags() || []).map(function (tag) { return tag.name(); });
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
var serverTagNamesSet_1 = new Set();
|
|
125
|
+
Object.values(servers).forEach(function (server) {
|
|
126
|
+
if (typeof server.tags !== 'function') {
|
|
127
|
+
return;
|
|
122
128
|
}
|
|
129
|
+
server.tags().forEach(function (t) { return serverTagNamesSet_1.add(t.name()); });
|
|
130
|
+
});
|
|
131
|
+
specTagNames = Array.from(serverTagNamesSet_1);
|
|
132
|
+
}
|
|
133
|
+
var serializedServers = Object.entries(servers).map(function (_a) {
|
|
134
|
+
var serverName = _a[0], server = _a[1];
|
|
135
|
+
return ({
|
|
136
|
+
name: serverName,
|
|
137
|
+
object: server,
|
|
138
|
+
data: {},
|
|
123
139
|
});
|
|
124
|
-
return operationsList;
|
|
125
|
-
};
|
|
126
|
-
var untaggedOperations = [];
|
|
127
|
-
Object.entries(channels).forEach(function (_a) {
|
|
128
|
-
var channelName = _a[0], channel = _a[1];
|
|
129
|
-
if (channel.hasPublish() &&
|
|
130
|
-
(!channel.publish().hasTags() ||
|
|
131
|
-
!helpers_1.SpecificationHelpers.containTags(channel.publish(), tags))) {
|
|
132
|
-
untaggedOperations.push(react_1.default.createElement(OperationsPubItem, { channelName: channelName, key: "pub-".concat(channelName) }));
|
|
133
|
-
}
|
|
134
|
-
if (channel.hasSubscribe() &&
|
|
135
|
-
(!channel.subscribe().hasTags() ||
|
|
136
|
-
!helpers_1.SpecificationHelpers.containTags(channel.subscribe(), tags))) {
|
|
137
|
-
untaggedOperations.push(react_1.default.createElement(OperationsSubItem, { channelName: channelName, key: "sub-".concat(channelName) }));
|
|
138
|
-
}
|
|
139
140
|
});
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
141
|
+
var _a = filterObjectsByTags(specTagNames, serializedServers), tagged = _a.tagged, untagged = _a.untagged;
|
|
142
|
+
return (react_1.default.createElement("ul", { className: "text-sm mt-2" },
|
|
143
|
+
Array.from(tagged.entries()).map(function (_a) {
|
|
144
|
+
var tag = _a[0], taggedServers = _a[1];
|
|
145
|
+
return (react_1.default.createElement("li", { key: tag },
|
|
146
|
+
react_1.default.createElement(ItemsByTagItem, { tagName: tag }, taggedServers.map(function (_a) {
|
|
147
|
+
var serverName = _a.name;
|
|
148
|
+
return (react_1.default.createElement(ServerItem, { serverName: serverName, key: serverName }));
|
|
149
|
+
}))));
|
|
150
|
+
}),
|
|
151
|
+
untagged.length > 0 ? (react_1.default.createElement("li", null,
|
|
152
|
+
react_1.default.createElement(ItemsByTagItem, { tagName: "Untagged" }, untagged.map(function (_a) {
|
|
153
|
+
var serverName = _a.name;
|
|
154
|
+
return (react_1.default.createElement(ServerItem, { serverName: serverName, key: serverName }));
|
|
155
|
+
})))) : null));
|
|
150
156
|
};
|
|
151
|
-
|
|
152
|
-
var
|
|
157
|
+
var OperationsList = function () {
|
|
158
|
+
var sidebarConfig = (0, contexts_1.useConfig)().sidebar;
|
|
153
159
|
var asyncapi = (0, contexts_1.useSpec)();
|
|
154
160
|
var channels = asyncapi.channels();
|
|
155
|
-
var
|
|
156
|
-
var
|
|
157
|
-
var operationsList = [];
|
|
158
|
-
Object.entries(channels).forEach(function (_a) {
|
|
159
|
-
var channelName = _a[0], channel = _a[1];
|
|
160
|
-
if (channel.hasPublish() &&
|
|
161
|
-
helpers_1.SpecificationHelpers.containTags(channel.publish(), tag)) {
|
|
162
|
-
operationsList.push(react_1.default.createElement(OperationsPubItem, { channelName: channelName, key: "pub-".concat(channelName) }));
|
|
163
|
-
}
|
|
164
|
-
if (channel.hasSubscribe() &&
|
|
165
|
-
helpers_1.SpecificationHelpers.containTags(channel.subscribe(), tag)) {
|
|
166
|
-
operationsList.push(react_1.default.createElement(OperationsSubItem, { channelName: channelName, key: "sub-".concat(channelName) }));
|
|
167
|
-
}
|
|
168
|
-
});
|
|
169
|
-
return operationsList;
|
|
170
|
-
};
|
|
171
|
-
var untaggedOperations = [];
|
|
161
|
+
var showOperations = (sidebarConfig === null || sidebarConfig === void 0 ? void 0 : sidebarConfig.showOperations) || 'byDefault';
|
|
162
|
+
var operations = [];
|
|
172
163
|
Object.entries(channels).forEach(function (_a) {
|
|
173
164
|
var channelName = _a[0], channel = _a[1];
|
|
174
|
-
if (channel.hasPublish()
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
165
|
+
if (channel.hasPublish()) {
|
|
166
|
+
operations.push({
|
|
167
|
+
name: "publish-".concat(channelName),
|
|
168
|
+
object: channel.publish(),
|
|
169
|
+
data: { channelName: channelName, kind: 'publish' },
|
|
170
|
+
});
|
|
178
171
|
}
|
|
179
|
-
if (channel.hasSubscribe()
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
172
|
+
if (channel.hasSubscribe()) {
|
|
173
|
+
operations.push({
|
|
174
|
+
name: "subscribe-".concat(channelName),
|
|
175
|
+
object: channel.subscribe(),
|
|
176
|
+
data: { channelName: channelName, kind: 'subscribe' },
|
|
177
|
+
});
|
|
183
178
|
}
|
|
184
179
|
});
|
|
185
|
-
|
|
186
|
-
react_1.default.createElement("ul",
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
180
|
+
if (showOperations === 'byDefault') {
|
|
181
|
+
return (react_1.default.createElement("ul", { className: "text-sm mt-2" }, operations.map(function (_a) {
|
|
182
|
+
var name = _a.name, _b = _a.data, channelName = _b.channelName, kind = _b.kind;
|
|
183
|
+
return (react_1.default.createElement(OperationItem, { channelName: channelName, kind: kind, key: name }));
|
|
184
|
+
})));
|
|
185
|
+
}
|
|
186
|
+
var operationTagNames;
|
|
187
|
+
if (showOperations === 'bySpecTags') {
|
|
188
|
+
operationTagNames = (asyncapi.tags() || []).map(function (tag) { return tag.name(); });
|
|
189
|
+
}
|
|
190
|
+
else {
|
|
191
|
+
var operationTagNamesSet_1 = new Set();
|
|
192
|
+
Object.values(operations).forEach(function (_a) {
|
|
193
|
+
var object = _a.object;
|
|
194
|
+
if (typeof object.tags !== 'function') {
|
|
195
|
+
return;
|
|
196
|
+
}
|
|
197
|
+
object.tags().forEach(function (t) { return operationTagNamesSet_1.add(t.name()); });
|
|
198
|
+
});
|
|
199
|
+
operationTagNames = Array.from(operationTagNamesSet_1);
|
|
200
|
+
}
|
|
201
|
+
var _a = filterObjectsByTags(operationTagNames, operations), tagged = _a.tagged, untagged = _a.untagged;
|
|
202
|
+
return (react_1.default.createElement("ul", { className: "text-sm mt-2" },
|
|
203
|
+
Array.from(tagged.entries()).map(function (_a) {
|
|
204
|
+
var tag = _a[0], taggedOperations = _a[1];
|
|
205
|
+
return (react_1.default.createElement("li", { key: tag },
|
|
206
|
+
react_1.default.createElement(ItemsByTagItem, { tagName: tag }, taggedOperations.map(function (_a) {
|
|
207
|
+
var name = _a.name, _b = _a.data, kind = _b.kind, channelName = _b.channelName;
|
|
208
|
+
return (react_1.default.createElement(OperationItem, { channelName: channelName, kind: kind, key: name }));
|
|
209
|
+
}))));
|
|
210
|
+
}),
|
|
211
|
+
untagged.length > 0 ? (react_1.default.createElement("li", null,
|
|
212
|
+
react_1.default.createElement(ItemsByTagItem, { tagName: "Untagged" }, untagged.map(function (_a) {
|
|
213
|
+
var name = _a.name, _b = _a.data, kind = _b.kind, channelName = _b.channelName;
|
|
214
|
+
return (react_1.default.createElement(OperationItem, { channelName: channelName, kind: kind, key: name }));
|
|
215
|
+
})))) : null));
|
|
216
|
+
};
|
|
217
|
+
var OperationItem = function (_a) {
|
|
218
|
+
var channelName = _a.channelName, kind = _a.kind;
|
|
219
|
+
var config = (0, contexts_1.useConfig)();
|
|
220
|
+
var setShowSidebar = (0, react_1.useContext)(SidebarContext).setShowSidebar;
|
|
221
|
+
var isPublish = kind === 'publish';
|
|
222
|
+
var label = '';
|
|
223
|
+
if (isPublish) {
|
|
224
|
+
label = config.publishLabel || constants_1.PUBLISH_LABEL_DEFAULT_TEXT;
|
|
225
|
+
}
|
|
226
|
+
else {
|
|
227
|
+
label = config.subscribeLabel || constants_1.SUBSCRIBE_LABEL_DEFAULT_TEXT;
|
|
228
|
+
}
|
|
229
|
+
return (react_1.default.createElement("li", null,
|
|
230
|
+
react_1.default.createElement("a", { className: "flex no-underline text-gray-700 mb-2 hover:text-gray-900", href: "#operation-".concat(kind, "-").concat(channelName), onClick: function () { return setShowSidebar(false); } },
|
|
231
|
+
react_1.default.createElement("span", { className: "".concat(isPublish ? 'bg-blue-600' : 'bg-green-600', " font-bold h-6 no-underline text-white uppercase p-1 mr-2 rounded text-xs"), title: isPublish ? 'Publish' : 'Subscribe' }, label),
|
|
232
|
+
react_1.default.createElement("span", { className: "break-all inline-block" }, channelName))));
|
|
233
|
+
};
|
|
234
|
+
var ServerItem = function (_a) {
|
|
235
|
+
var serverName = _a.serverName;
|
|
236
|
+
var setShowSidebar = (0, react_1.useContext)(SidebarContext).setShowSidebar;
|
|
237
|
+
return (react_1.default.createElement("li", null,
|
|
238
|
+
react_1.default.createElement("a", { className: "flex no-underline text-gray-700 mb-2 hover:text-gray-900", href: "#server-".concat(serverName), onClick: function () { return setShowSidebar(false); } },
|
|
239
|
+
react_1.default.createElement("span", { className: "break-all inline-block" }, serverName))));
|
|
195
240
|
};
|
|
196
|
-
|
|
197
|
-
var OperationsByTagItem = function (_a) {
|
|
241
|
+
var ItemsByTagItem = function (_a) {
|
|
198
242
|
var tagName = _a.tagName, children = _a.children;
|
|
199
243
|
var _b = (0, react_1.useState)(false), expand = _b[0], setExpand = _b[1];
|
|
200
244
|
return (react_1.default.createElement("div", null,
|
|
@@ -204,22 +248,4 @@ var OperationsByTagItem = function (_a) {
|
|
|
204
248
|
react_1.default.createElement("span", { className: "text-sm inline-block mt-1 font-extralight" }, tagName)),
|
|
205
249
|
react_1.default.createElement("ul", { className: "".concat(expand ? 'block' : 'hidden', " text-sm mt-2 font-light") }, children)));
|
|
206
250
|
};
|
|
207
|
-
var OperationsPubItem = function (_a) {
|
|
208
|
-
var channelName = _a.channelName;
|
|
209
|
-
var config = (0, contexts_1.useConfig)();
|
|
210
|
-
var setShowSidebar = (0, react_1.useContext)(SidebarContext).setShowSidebar;
|
|
211
|
-
return (react_1.default.createElement("li", null,
|
|
212
|
-
react_1.default.createElement("a", { className: "flex no-underline text-gray-700 mb-2 hover:text-gray-900", href: "#operation-publish-".concat(channelName), onClick: function () { return setShowSidebar(false); } },
|
|
213
|
-
react_1.default.createElement("span", { className: "bg-blue-600 font-bold h-6 no-underline text-white uppercase p-1 mr-2 rounded text-xs", title: "Publish" }, config.publishLabel || constants_1.PUBLISH_LABEL_DEFAULT_TEXT),
|
|
214
|
-
react_1.default.createElement("span", { className: "break-all inline-block" }, channelName))));
|
|
215
|
-
};
|
|
216
|
-
var OperationsSubItem = function (_a) {
|
|
217
|
-
var channelName = _a.channelName;
|
|
218
|
-
var config = (0, contexts_1.useConfig)();
|
|
219
|
-
var setShowSidebar = (0, react_1.useContext)(SidebarContext).setShowSidebar;
|
|
220
|
-
return (react_1.default.createElement("li", null,
|
|
221
|
-
react_1.default.createElement("a", { className: "flex no-underline text-gray-700 mb-2 hover:text-gray-900", href: "#operation-subscribe-".concat(channelName), onClick: function () { return setShowSidebar(false); } },
|
|
222
|
-
react_1.default.createElement("span", { className: "bg-green-600 font-bold h-6 no-underline text-white uppercase p-1 mr-2 rounded text-xs", title: "Subscribe" }, config.subscribeLabel || constants_1.SUBSCRIBE_LABEL_DEFAULT_TEXT),
|
|
223
|
-
react_1.default.createElement("span", { className: "break-all inline-block" }, channelName))));
|
|
224
|
-
};
|
|
225
251
|
//# sourceMappingURL=Sidebar.js.map
|