@asyncapi/react-component 1.0.0-next.5 → 1.0.0-next.50

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.
Files changed (286) hide show
  1. package/README.md +75 -4
  2. package/browser/index.js +32 -14
  3. package/browser/index.js.LICENSE.txt +88 -0
  4. package/browser/standalone/index.js +32 -0
  5. package/browser/standalone/index.js.LICENSE.txt +112 -0
  6. package/browser/standalone/without-parser.js +14 -0
  7. package/browser/standalone/without-parser.js.LICENSE.txt +110 -0
  8. package/browser/without-parser.js +14 -12
  9. package/browser/without-parser.js.LICENSE.txt +86 -0
  10. package/lib/cjs/components/Bindings.js +12 -4
  11. package/lib/cjs/components/Bindings.js.map +1 -1
  12. package/lib/cjs/components/CollapseButton.js +11 -7
  13. package/lib/cjs/components/CollapseButton.js.map +1 -1
  14. package/lib/cjs/components/Extensions.js +4 -3
  15. package/lib/cjs/components/Extensions.js.map +1 -1
  16. package/lib/cjs/components/Href.js +2 -1
  17. package/lib/cjs/components/Href.js.map +1 -1
  18. package/lib/cjs/components/JSONSnippet.js +17 -0
  19. package/lib/cjs/components/JSONSnippet.js.map +1 -0
  20. package/lib/cjs/components/Markdown.js +4 -4
  21. package/lib/cjs/components/Markdown.js.map +1 -1
  22. package/lib/cjs/components/Schema.js +75 -58
  23. package/lib/cjs/components/Schema.js.map +1 -1
  24. package/lib/cjs/components/Tag.js +3 -2
  25. package/lib/cjs/components/Tag.js.map +1 -1
  26. package/lib/cjs/components/Tags.js +2 -1
  27. package/lib/cjs/components/Tags.js.map +1 -1
  28. package/lib/cjs/components/index.js +6 -2
  29. package/lib/cjs/components/index.js.map +1 -1
  30. package/lib/cjs/config/config.js.map +1 -1
  31. package/lib/cjs/config/default.js +9 -1
  32. package/lib/cjs/config/default.js.map +1 -1
  33. package/lib/cjs/config/index.js +5 -1
  34. package/lib/cjs/config/index.js.map +1 -1
  35. package/lib/cjs/constants.js +5 -48
  36. package/lib/cjs/constants.js.map +1 -1
  37. package/lib/cjs/containers/AsyncApi/AsyncApi.js +8 -2
  38. package/lib/cjs/containers/AsyncApi/AsyncApi.js.map +1 -1
  39. package/lib/cjs/containers/AsyncApi/Layout.js +33 -21
  40. package/lib/cjs/containers/AsyncApi/Layout.js.map +1 -1
  41. package/lib/cjs/containers/AsyncApi/Standalone.js +8 -2
  42. package/lib/cjs/containers/AsyncApi/Standalone.js.map +1 -1
  43. package/lib/cjs/containers/Error/Error.js +4 -3
  44. package/lib/cjs/containers/Error/Error.js.map +1 -1
  45. package/lib/cjs/containers/Info/Info.js +11 -10
  46. package/lib/cjs/containers/Info/Info.js.map +1 -1
  47. package/lib/cjs/containers/Messages/Message.js +23 -10
  48. package/lib/cjs/containers/Messages/Message.js.map +1 -1
  49. package/lib/cjs/containers/Messages/MessageExample.js +26 -14
  50. package/lib/cjs/containers/Messages/MessageExample.js.map +1 -1
  51. package/lib/cjs/containers/Messages/Messages.js +11 -7
  52. package/lib/cjs/containers/Messages/Messages.js.map +1 -1
  53. package/lib/cjs/containers/Operations/Operation.js +73 -37
  54. package/lib/cjs/containers/Operations/Operation.js.map +1 -1
  55. package/lib/cjs/containers/Operations/Operations.js +16 -13
  56. package/lib/cjs/containers/Operations/Operations.js.map +1 -1
  57. package/lib/cjs/containers/Schemas/Schema.js +21 -0
  58. package/lib/cjs/containers/Schemas/Schema.js.map +1 -0
  59. package/lib/cjs/containers/Schemas/Schemas.js +28 -0
  60. package/lib/cjs/containers/Schemas/Schemas.js.map +1 -0
  61. package/lib/cjs/containers/Servers/Security.js +150 -0
  62. package/lib/cjs/containers/Servers/Security.js.map +1 -0
  63. package/lib/cjs/containers/Servers/Server.js +15 -8
  64. package/lib/cjs/containers/Servers/Server.js.map +1 -1
  65. package/lib/cjs/containers/Servers/Servers.js +7 -4
  66. package/lib/cjs/containers/Servers/Servers.js.map +1 -1
  67. package/lib/cjs/containers/Sidebar/Sidebar.js +213 -140
  68. package/lib/cjs/containers/Sidebar/Sidebar.js.map +1 -1
  69. package/lib/cjs/contexts/index.js +6 -1
  70. package/lib/cjs/contexts/index.js.map +1 -1
  71. package/lib/cjs/contexts/useConfig.js +10 -0
  72. package/lib/cjs/contexts/useConfig.js.map +1 -0
  73. package/lib/cjs/contexts/useSpec.js +7 -3
  74. package/lib/cjs/contexts/useSpec.js.map +1 -1
  75. package/lib/cjs/helpers/common.js +17 -0
  76. package/lib/cjs/helpers/common.js.map +1 -0
  77. package/lib/cjs/helpers/index.js +7 -4
  78. package/lib/cjs/helpers/index.js.map +1 -1
  79. package/lib/cjs/helpers/marked.js +34 -0
  80. package/lib/cjs/helpers/marked.js.map +1 -0
  81. package/lib/cjs/helpers/message.js +39 -9
  82. package/lib/cjs/helpers/message.js.map +1 -1
  83. package/lib/cjs/helpers/parser.js +14 -15
  84. package/lib/cjs/helpers/parser.js.map +1 -1
  85. package/lib/cjs/helpers/schema.js +157 -135
  86. package/lib/cjs/helpers/schema.js.map +1 -1
  87. package/lib/cjs/helpers/server.js +49 -0
  88. package/lib/cjs/helpers/server.js.map +1 -1
  89. package/lib/cjs/helpers/specification.js +36 -21
  90. package/lib/cjs/helpers/specification.js.map +1 -1
  91. package/lib/cjs/index.js +3 -1
  92. package/lib/cjs/index.js.map +1 -1
  93. package/lib/cjs/types.js +4 -51
  94. package/lib/cjs/types.js.map +1 -1
  95. package/lib/cjs/without-parser.js +3 -0
  96. package/lib/cjs/without-parser.js.map +1 -1
  97. package/lib/esm/components/Bindings.js +10 -3
  98. package/lib/esm/components/Bindings.js.map +1 -1
  99. package/lib/esm/components/CollapseButton.js +9 -6
  100. package/lib/esm/components/CollapseButton.js.map +1 -1
  101. package/lib/esm/components/Extensions.js +2 -2
  102. package/lib/esm/components/Extensions.js.map +1 -1
  103. package/lib/esm/components/Href.js.map +1 -1
  104. package/lib/esm/components/JSONSnippet.js +10 -0
  105. package/lib/esm/components/JSONSnippet.js.map +1 -0
  106. package/lib/esm/components/Markdown.js +2 -3
  107. package/lib/esm/components/Markdown.js.map +1 -1
  108. package/lib/esm/components/Schema.js +69 -57
  109. package/lib/esm/components/Schema.js.map +1 -1
  110. package/lib/esm/components/Tag.js +1 -1
  111. package/lib/esm/components/Tag.js.map +1 -1
  112. package/lib/esm/components/Tags.js.map +1 -1
  113. package/lib/esm/components/index.js +1 -1
  114. package/lib/esm/components/index.js.map +1 -1
  115. package/lib/esm/config/config.js.map +1 -1
  116. package/lib/esm/config/default.js +9 -1
  117. package/lib/esm/config/default.js.map +1 -1
  118. package/lib/esm/config/index.js.map +1 -1
  119. package/lib/esm/constants.js +3 -47
  120. package/lib/esm/constants.js.map +1 -1
  121. package/lib/esm/containers/AsyncApi/AsyncApi.js +2 -0
  122. package/lib/esm/containers/AsyncApi/AsyncApi.js.map +1 -1
  123. package/lib/esm/containers/AsyncApi/Layout.js +28 -20
  124. package/lib/esm/containers/AsyncApi/Layout.js.map +1 -1
  125. package/lib/esm/containers/AsyncApi/Standalone.js +3 -1
  126. package/lib/esm/containers/AsyncApi/Standalone.js.map +1 -1
  127. package/lib/esm/containers/Error/Error.js +2 -2
  128. package/lib/esm/containers/Error/Error.js.map +1 -1
  129. package/lib/esm/containers/Info/Info.js +8 -8
  130. package/lib/esm/containers/Info/Info.js.map +1 -1
  131. package/lib/esm/containers/Messages/Message.js +21 -9
  132. package/lib/esm/containers/Messages/Message.js.map +1 -1
  133. package/lib/esm/containers/Messages/MessageExample.js +19 -13
  134. package/lib/esm/containers/Messages/MessageExample.js.map +1 -1
  135. package/lib/esm/containers/Messages/Messages.js +10 -7
  136. package/lib/esm/containers/Messages/Messages.js.map +1 -1
  137. package/lib/esm/containers/Operations/Operation.js +72 -38
  138. package/lib/esm/containers/Operations/Operation.js.map +1 -1
  139. package/lib/esm/containers/Operations/Operations.js +15 -13
  140. package/lib/esm/containers/Operations/Operations.js.map +1 -1
  141. package/lib/esm/containers/Schemas/Schema.js +14 -0
  142. package/lib/esm/containers/Schemas/Schema.js.map +1 -0
  143. package/lib/esm/containers/Schemas/Schemas.js +21 -0
  144. package/lib/esm/containers/Schemas/Schemas.js.map +1 -0
  145. package/lib/esm/containers/Servers/Security.js +143 -0
  146. package/lib/esm/containers/Servers/Security.js.map +1 -0
  147. package/lib/esm/containers/Servers/Server.js +15 -9
  148. package/lib/esm/containers/Servers/Server.js.map +1 -1
  149. package/lib/esm/containers/Servers/Servers.js +5 -3
  150. package/lib/esm/containers/Servers/Servers.js.map +1 -1
  151. package/lib/esm/containers/Sidebar/Sidebar.js +203 -135
  152. package/lib/esm/containers/Sidebar/Sidebar.js.map +1 -1
  153. package/lib/esm/contexts/index.js +1 -0
  154. package/lib/esm/contexts/index.js.map +1 -1
  155. package/lib/esm/contexts/useConfig.js +6 -0
  156. package/lib/esm/contexts/useConfig.js.map +1 -0
  157. package/lib/esm/contexts/useSpec.js +2 -2
  158. package/lib/esm/contexts/useSpec.js.map +1 -1
  159. package/lib/esm/helpers/common.js +14 -0
  160. package/lib/esm/helpers/common.js.map +1 -0
  161. package/lib/esm/helpers/index.js +2 -3
  162. package/lib/esm/helpers/index.js.map +1 -1
  163. package/lib/esm/helpers/marked.js +27 -0
  164. package/lib/esm/helpers/marked.js.map +1 -0
  165. package/lib/esm/helpers/message.js +38 -8
  166. package/lib/esm/helpers/message.js.map +1 -1
  167. package/lib/esm/helpers/parser.js +15 -13
  168. package/lib/esm/helpers/parser.js.map +1 -1
  169. package/lib/esm/helpers/schema.js +152 -127
  170. package/lib/esm/helpers/schema.js.map +1 -1
  171. package/lib/esm/helpers/server.js +49 -0
  172. package/lib/esm/helpers/server.js.map +1 -1
  173. package/lib/esm/helpers/specification.js +36 -18
  174. package/lib/esm/helpers/specification.js.map +1 -1
  175. package/lib/esm/index.js +2 -1
  176. package/lib/esm/index.js.map +1 -1
  177. package/lib/esm/types.js +2 -46
  178. package/lib/esm/types.js.map +1 -1
  179. package/lib/esm/without-parser.js +2 -0
  180. package/lib/esm/without-parser.js.map +1 -1
  181. package/lib/types/components/Bindings.d.ts.map +1 -1
  182. package/lib/types/components/CollapseButton.d.ts +1 -0
  183. package/lib/types/components/CollapseButton.d.ts.map +1 -1
  184. package/lib/types/components/Extensions.d.ts.map +1 -1
  185. package/lib/types/components/JSONSnippet.d.ts +7 -0
  186. package/lib/types/components/JSONSnippet.d.ts.map +1 -0
  187. package/lib/types/components/Markdown.d.ts.map +1 -1
  188. package/lib/types/components/Schema.d.ts +5 -4
  189. package/lib/types/components/Schema.d.ts.map +1 -1
  190. package/lib/types/components/Tag.d.ts +2 -2
  191. package/lib/types/components/Tag.d.ts.map +1 -1
  192. package/lib/types/components/Tags.d.ts +2 -2
  193. package/lib/types/components/Tags.d.ts.map +1 -1
  194. package/lib/types/components/index.d.ts +1 -1
  195. package/lib/types/components/index.d.ts.map +1 -1
  196. package/lib/types/config/config.d.ts +8 -0
  197. package/lib/types/config/config.d.ts.map +1 -1
  198. package/lib/types/config/default.d.ts.map +1 -1
  199. package/lib/types/constants.d.ts +3 -26
  200. package/lib/types/constants.d.ts.map +1 -1
  201. package/lib/types/containers/AsyncApi/AsyncApi.d.ts +2 -2
  202. package/lib/types/containers/AsyncApi/AsyncApi.d.ts.map +1 -1
  203. package/lib/types/containers/AsyncApi/Layout.d.ts +2 -2
  204. package/lib/types/containers/AsyncApi/Layout.d.ts.map +1 -1
  205. package/lib/types/containers/AsyncApi/Standalone.d.ts +2 -2
  206. package/lib/types/containers/AsyncApi/Standalone.d.ts.map +1 -1
  207. package/lib/types/containers/Info/Info.d.ts.map +1 -1
  208. package/lib/types/containers/Messages/Message.d.ts +3 -2
  209. package/lib/types/containers/Messages/Message.d.ts.map +1 -1
  210. package/lib/types/containers/Messages/MessageExample.d.ts +5 -4
  211. package/lib/types/containers/Messages/MessageExample.d.ts.map +1 -1
  212. package/lib/types/containers/Messages/Messages.d.ts.map +1 -1
  213. package/lib/types/containers/Operations/Operation.d.ts +4 -3
  214. package/lib/types/containers/Operations/Operation.d.ts.map +1 -1
  215. package/lib/types/containers/Operations/Operations.d.ts.map +1 -1
  216. package/lib/types/containers/Schemas/Schema.d.ts +9 -0
  217. package/lib/types/containers/Schemas/Schema.d.ts.map +1 -0
  218. package/lib/types/containers/Schemas/Schemas.d.ts +3 -0
  219. package/lib/types/containers/Schemas/Schemas.d.ts.map +1 -0
  220. package/lib/types/containers/Servers/Security.d.ts +10 -0
  221. package/lib/types/containers/Servers/Security.d.ts.map +1 -0
  222. package/lib/types/containers/Servers/Server.d.ts +2 -2
  223. package/lib/types/containers/Servers/Server.d.ts.map +1 -1
  224. package/lib/types/containers/Servers/Servers.d.ts.map +1 -1
  225. package/lib/types/containers/Sidebar/Sidebar.d.ts +1 -9
  226. package/lib/types/containers/Sidebar/Sidebar.d.ts.map +1 -1
  227. package/lib/types/contexts/index.d.ts +1 -0
  228. package/lib/types/contexts/index.d.ts.map +1 -1
  229. package/lib/types/contexts/useConfig.d.ts +5 -0
  230. package/lib/types/contexts/useConfig.d.ts.map +1 -0
  231. package/lib/types/contexts/useSpec.d.ts +3 -5
  232. package/lib/types/contexts/useSpec.d.ts.map +1 -1
  233. package/lib/types/helpers/common.d.ts +5 -0
  234. package/lib/types/helpers/common.d.ts.map +1 -0
  235. package/lib/types/helpers/index.d.ts +2 -3
  236. package/lib/types/helpers/index.d.ts.map +1 -1
  237. package/lib/types/helpers/marked.d.ts +4 -0
  238. package/lib/types/helpers/marked.d.ts.map +1 -0
  239. package/lib/types/helpers/message.d.ts +4 -3
  240. package/lib/types/helpers/message.d.ts.map +1 -1
  241. package/lib/types/helpers/parser.d.ts.map +1 -1
  242. package/lib/types/helpers/schema.d.ts +16 -12
  243. package/lib/types/helpers/schema.d.ts.map +1 -1
  244. package/lib/types/helpers/server.d.ts +6 -1
  245. package/lib/types/helpers/server.d.ts.map +1 -1
  246. package/lib/types/helpers/specification.d.ts +7 -4
  247. package/lib/types/helpers/specification.d.ts.map +1 -1
  248. package/lib/types/index.d.ts +2 -1
  249. package/lib/types/index.d.ts.map +1 -1
  250. package/lib/types/types.d.ts +12 -305
  251. package/lib/types/types.d.ts.map +1 -1
  252. package/lib/types/without-parser.d.ts +2 -0
  253. package/lib/types/without-parser.d.ts.map +1 -1
  254. package/package.json +43 -19
  255. package/styles/default.css +907 -642
  256. package/styles/default.min.css +4 -2
  257. package/lib/cjs/components/Code.js +0 -15
  258. package/lib/cjs/components/Code.js.map +0 -1
  259. package/lib/cjs/containers/Servers/ServerSecurity.js +0 -101
  260. package/lib/cjs/containers/Servers/ServerSecurity.js.map +0 -1
  261. package/lib/cjs/helpers/bemClasses.js +0 -49
  262. package/lib/cjs/helpers/bemClasses.js.map +0 -1
  263. package/lib/cjs/helpers/formatJsonHighlight.js +0 -61
  264. package/lib/cjs/helpers/formatJsonHighlight.js.map +0 -1
  265. package/lib/cjs/helpers/toKebabCase.js +0 -15
  266. package/lib/cjs/helpers/toKebabCase.js.map +0 -1
  267. package/lib/esm/components/Code.js +0 -9
  268. package/lib/esm/components/Code.js.map +0 -1
  269. package/lib/esm/containers/Servers/ServerSecurity.js +0 -95
  270. package/lib/esm/containers/Servers/ServerSecurity.js.map +0 -1
  271. package/lib/esm/helpers/bemClasses.js +0 -46
  272. package/lib/esm/helpers/bemClasses.js.map +0 -1
  273. package/lib/esm/helpers/formatJsonHighlight.js +0 -57
  274. package/lib/esm/helpers/formatJsonHighlight.js.map +0 -1
  275. package/lib/esm/helpers/toKebabCase.js +0 -11
  276. package/lib/esm/helpers/toKebabCase.js.map +0 -1
  277. package/lib/types/components/Code.d.ts +0 -7
  278. package/lib/types/components/Code.d.ts.map +0 -1
  279. package/lib/types/containers/Servers/ServerSecurity.d.ts +0 -8
  280. package/lib/types/containers/Servers/ServerSecurity.d.ts.map +0 -1
  281. package/lib/types/helpers/bemClasses.d.ts +0 -14
  282. package/lib/types/helpers/bemClasses.d.ts.map +0 -1
  283. package/lib/types/helpers/formatJsonHighlight.d.ts +0 -2
  284. package/lib/types/helpers/formatJsonHighlight.d.ts.map +0 -1
  285. package/lib/types/helpers/toKebabCase.d.ts +0 -2
  286. package/lib/types/helpers/toKebabCase.d.ts.map +0 -1
@@ -1,12 +1,16 @@
1
1
  import React from 'react';
2
2
  import { MessageExample } from './MessageExample';
3
3
  import { Href, Markdown, Schema, Bindings, Tags, Extensions, } from '../../components';
4
+ import { useConfig } from '../../contexts';
5
+ import { CommonHelpers } from '../../helpers';
4
6
  import { CONTENT_TYPES_SITE, EXTERAL_DOCUMENTATION_TEXT, } from '../../constants';
5
7
  export var Message = function (_a) {
6
- var message = _a.message, index = _a.index, _b = _a.showExamples, showExamples = _b === void 0 ? false : _b;
8
+ var message = _a.message, messageName = _a.messageName, index = _a.index, _b = _a.showExamples, showExamples = _b === void 0 ? false : _b;
9
+ var config = useConfig();
7
10
  if (!message) {
8
11
  return null;
9
12
  }
13
+ var messageId = typeof message.id === 'function' && message.id();
10
14
  var title = message.title();
11
15
  var summary = message.summary();
12
16
  var payload = message.payload();
@@ -17,21 +21,25 @@ export var Message = function (_a) {
17
21
  var showInfoList = contentType || externalDocs;
18
22
  return (React.createElement("div", { className: "panel-item" },
19
23
  React.createElement("div", { className: "panel-item--center px-8" },
20
- React.createElement("div", { className: "shadow rounded bg-gray-200 p-4 border bg-gray-100" },
24
+ React.createElement("div", { className: "shadow rounded bg-gray-200 p-4 border" },
21
25
  React.createElement("div", null,
22
26
  index !== undefined && (React.createElement("span", { className: "text-gray-700 font-bold mr-2" },
23
27
  "#",
24
28
  index)),
25
29
  title && React.createElement("span", { className: "text-gray-700 mr-2" }, title),
26
- React.createElement("span", { className: "border text-orange-600 rounded text-xs py-0 px-2" }, message.uid())),
30
+ React.createElement("span", { className: "border text-orange-600 rounded text-xs py-0 px-2" }, message.id())),
27
31
  summary && React.createElement("p", { className: "text-gray-600 text-sm" }, summary),
28
32
  showInfoList && (React.createElement("ul", { className: "leading-normal mt-2 mb-4 space-x-2 space-y-2" },
29
33
  contentType && (React.createElement("li", { className: "inline-block" },
30
- React.createElement(Href, { className: "border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1", href: CONTENT_TYPES_SITE + "/" + contentType },
34
+ React.createElement(Href, { className: "border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1", href: "".concat(CONTENT_TYPES_SITE, "/").concat(contentType) },
31
35
  React.createElement("span", null, contentType)))),
32
36
  externalDocs && (React.createElement("li", { className: "inline-block" },
33
37
  React.createElement(Href, { className: "border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1", href: externalDocs.url() },
34
38
  React.createElement("span", null, EXTERAL_DOCUMENTATION_TEXT)))))),
39
+ messageId && (React.createElement("div", { className: "border bg-gray-100 rounded px-4 py-2 mt-2" },
40
+ React.createElement("div", { className: "text-sm text-gray-700" },
41
+ "Message ID",
42
+ React.createElement("span", { className: "border text-orange-600 rounded text-xs ml-2 py-0 px-2" }, messageId)))),
35
43
  correlationId && (React.createElement("div", { className: "border bg-gray-100 rounded px-4 py-2 mt-2" },
36
44
  React.createElement("div", { className: "text-sm text-gray-700" },
37
45
  "Correlation ID",
@@ -40,14 +48,18 @@ export var Message = function (_a) {
40
48
  React.createElement(Markdown, null, correlationId.description()))))),
41
49
  message.hasDescription() && (React.createElement("div", { className: "mt-2" },
42
50
  React.createElement(Markdown, null, message.description()))),
43
- payload && (React.createElement("div", { className: "mt-2" },
51
+ payload && (React.createElement("div", { className: "mt-2", id: messageName
52
+ ? CommonHelpers.getIdentifier("message-".concat(messageName, "-payload"), config)
53
+ : undefined },
44
54
  React.createElement(Schema, { schemaName: "Payload", schema: payload }))),
45
- headers && (React.createElement("div", { className: "mt-2" },
55
+ headers && (React.createElement("div", { className: "mt-2", id: messageName
56
+ ? CommonHelpers.getIdentifier("message-".concat(messageName, "-headers"), config)
57
+ : undefined },
46
58
  React.createElement(Schema, { schemaName: "Headers", schema: headers }))),
47
- message.hasBindings() && (React.createElement("div", { className: "mt-2" },
48
- React.createElement(Bindings, { bindings: message.bindings() }))),
59
+ message.bindings().length > 0 && (React.createElement("div", { className: "mt-2" },
60
+ React.createElement(Bindings, { name: "Message specific information", bindings: message.bindings() }))),
49
61
  React.createElement(Extensions, { item: message }),
50
- message.hasTags() && (React.createElement("div", { className: "mt-2" },
62
+ message.tags().length > 0 && (React.createElement("div", { className: "mt-2" },
51
63
  React.createElement(Tags, { tags: message.tags() }))))),
52
64
  showExamples && (React.createElement("div", { className: "panel-item--right px-8" },
53
65
  React.createElement(MessageExample, { message: message })))));
@@ -1 +1 @@
1
- {"version":3,"file":"Message.js","sourceRoot":"","sources":["../../../../src/containers/Messages/Message.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Message.js","sourceRoot":"","sources":["../../../../src/containers/Messages/Message.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { MessageInterface } from '@asyncapi/parser';\n\nimport { MessageExample } from './MessageExample';\nimport {\n Href,\n Markdown,\n Schema,\n Bindings,\n Tags,\n Extensions,\n} from '../../components';\n\nimport { useConfig } from '../../contexts';\nimport { CommonHelpers } from '../../helpers';\nimport {\n CONTENT_TYPES_SITE,\n EXTERAL_DOCUMENTATION_TEXT,\n} from '../../constants';\n\ninterface Props {\n message: MessageInterface;\n messageName?: string;\n index?: number | string;\n showExamples?: boolean;\n}\n\nexport const Message: React.FunctionComponent<Props> = ({\n message,\n messageName,\n index,\n showExamples = false,\n}) => {\n const config = useConfig();\n\n if (!message) {\n return null;\n }\n\n // check typeof as fallback for older version than `2.4.0`\n const messageId = typeof message.id === 'function' && message.id();\n const title = message.title();\n const summary = message.summary();\n const payload = message.payload();\n const headers = message.headers();\n const correlationId = message.correlationId();\n\n const contentType = message.contentType();\n const externalDocs = message.externalDocs();\n const showInfoList = contentType || externalDocs;\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\">\n <div>\n {index !== undefined && (\n <span className=\"text-gray-700 font-bold mr-2\">#{index}</span>\n )}\n {title && <span className=\"text-gray-700 mr-2\">{title}</span>}\n <span className=\"border text-orange-600 rounded text-xs py-0 px-2\">\n {message.id()}\n </span>\n </div>\n\n {summary && <p className=\"text-gray-600 text-sm\">{summary}</p>}\n\n {showInfoList && (\n <ul className=\"leading-normal mt-2 mb-4 space-x-2 space-y-2\">\n {contentType && (\n <li className=\"inline-block\">\n <Href\n className=\"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1\"\n href={`${CONTENT_TYPES_SITE}/${contentType}`}\n >\n <span>{contentType}</span>\n </Href>\n </li>\n )}\n {externalDocs && (\n <li className=\"inline-block\">\n <Href\n className=\"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1\"\n href={externalDocs.url()}\n >\n <span>{EXTERAL_DOCUMENTATION_TEXT}</span>\n </Href>\n </li>\n )}\n </ul>\n )}\n\n {messageId && (\n <div className=\"border bg-gray-100 rounded px-4 py-2 mt-2\">\n <div className=\"text-sm text-gray-700\">\n Message ID\n <span className=\"border text-orange-600 rounded text-xs ml-2 py-0 px-2\">\n {messageId}\n </span>\n </div>\n </div>\n )}\n\n {correlationId && (\n <div className=\"border bg-gray-100 rounded px-4 py-2 mt-2\">\n <div className=\"text-sm text-gray-700\">\n Correlation ID\n <span className=\"border text-orange-600 rounded text-xs ml-2 py-0 px-2\">\n {correlationId.location()}\n </span>\n </div>\n\n {correlationId.hasDescription() && (\n <div className=\"mt-2\">\n <Markdown>{correlationId.description()}</Markdown>\n </div>\n )}\n </div>\n )}\n\n {message.hasDescription() && (\n <div className=\"mt-2\">\n <Markdown>{message.description()}</Markdown>\n </div>\n )}\n\n {payload && (\n <div\n className=\"mt-2\"\n id={\n messageName\n ? CommonHelpers.getIdentifier(\n `message-${messageName}-payload`,\n config,\n )\n : undefined\n }\n >\n <Schema schemaName=\"Payload\" schema={payload} />\n </div>\n )}\n {headers && (\n <div\n className=\"mt-2\"\n id={\n messageName\n ? CommonHelpers.getIdentifier(\n `message-${messageName}-headers`,\n config,\n )\n : undefined\n }\n >\n <Schema schemaName=\"Headers\" schema={headers} />\n </div>\n )}\n\n {message.bindings().length > 0 && (\n <div className=\"mt-2\">\n <Bindings\n name=\"Message specific information\"\n bindings={message.bindings()}\n />\n </div>\n )}\n\n <Extensions item={message} />\n\n {message.tags().length > 0 && (\n <div className=\"mt-2\">\n <Tags tags={message.tags()} />\n </div>\n )}\n </div>\n </div>\n\n {showExamples && (\n <div className=\"panel-item--right px-8\">\n <MessageExample message={message} />\n </div>\n )}\n </div>\n );\n};\n"]}
@@ -1,6 +1,7 @@
1
- import React, { useState } from 'react';
2
- import { CollapseButton, PreCode } from '../../components';
1
+ import React, { useState, useEffect } from 'react';
2
+ import { CollapseButton, JSONSnippet } from '../../components';
3
3
  import { MessageHelpers } from '../../helpers/message';
4
+ import { useConfig } from '../../contexts';
4
5
  export var MessageExample = function (_a) {
5
6
  var message = _a.message;
6
7
  if (!message) {
@@ -15,20 +16,25 @@ export var MessageExample = function (_a) {
15
16
  };
16
17
  export var Example = function (_a) {
17
18
  var _b = _a.type, type = _b === void 0 ? 'Payload' : _b, schema = _a.schema, _c = _a.examples, examples = _c === void 0 ? [] : _c;
18
- var _d = useState(false), expand = _d[0], setExpand = _d[1];
19
+ var config = useConfig();
20
+ var _d = useState((config && config.expand && config.expand.messageExamples) || false), expanded = _d[0], setExpanded = _d[1];
21
+ useEffect(function () {
22
+ setExpanded((config && config.expand && config.expand.messageExamples) || false);
23
+ }, [config.expand]);
19
24
  return (React.createElement("div", { className: "mt-4" },
20
25
  React.createElement("div", null,
21
- React.createElement(CollapseButton, { onClick: function () { return setExpand(function (prev) { return !prev; }); }, chevronProps: {
22
- className: "fill-current text-gray-200 " + (expand ? '-rotate-180' : '-rotate-90'),
26
+ React.createElement(CollapseButton, { onClick: function () { return setExpanded(function (prev) { return !prev; }); }, expanded: expanded, chevronProps: {
27
+ className: 'fill-current text-gray-200',
23
28
  } },
24
- React.createElement("span", { className: "px-2 py-1 mr-2 text-gray-200 text-sm border rounded focus:outline-none" }, type))),
25
- React.createElement("div", { className: expand ? 'block' : 'hidden' }, examples && examples.length > 0 ? (React.createElement("ul", null, examples.map(function (example, idx) { return (React.createElement("li", { className: "mt-4", key: idx },
26
- React.createElement("h5", { className: "text-xs font-bold text-gray-700" },
27
- "Example #",
28
- idx + 1),
29
+ React.createElement("span", { className: "inline-block w-20 py-0.5 mr-1 text-gray-200 text-sm border text-center rounded focus:outline-none" }, type))),
30
+ React.createElement("div", { className: expanded ? 'block' : 'hidden' }, examples && examples.length > 0 ? (React.createElement("ul", null, examples.map(function (example, idx) { return (React.createElement("li", { className: "mt-4", key: idx },
31
+ React.createElement("h5", { className: "text-xs font-bold text-gray-500" }, example.name
32
+ ? "#".concat(idx + 1, " Example - ").concat(example.name)
33
+ : "#".concat(idx + 1, " Example")),
34
+ example.summary && (React.createElement("p", { className: "text-xs font-bold text-gray-500" }, example.summary)),
29
35
  React.createElement("div", { className: "mt-1" },
30
- React.createElement(PreCode, { code: MessageHelpers.sanitizeExample(example) })))); }))) : (React.createElement("div", { className: "mt-4" },
31
- React.createElement(PreCode, { code: MessageHelpers.generateExample(schema.json()) }),
32
- React.createElement("h6", { className: "text-xs font-bold text-gray-700 italic mt-2" }, "This example has been generated automatically."))))));
36
+ React.createElement(JSONSnippet, { snippet: MessageHelpers.sanitizeExample(example.example) })))); }))) : (React.createElement("div", { className: "mt-4" },
37
+ React.createElement(JSONSnippet, { snippet: MessageHelpers.generateExample(schema.json()) }),
38
+ React.createElement("h6", { className: "text-xs font-bold text-gray-600 italic mt-2" }, "This example has been generated automatically."))))));
33
39
  };
34
40
  //# sourceMappingURL=MessageExample.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MessageExample.js","sourceRoot":"","sources":["../../../../src/containers/Messages/MessageExample.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGxC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAMvD,MAAM,CAAC,IAAM,cAAc,GAAmC,UAAC,EAAW;QAAT,OAAO,aAAA;IACtE,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,IAAI,CAAC;KACb;IAED,IAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAClC,IAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAElC,OAAO,CACL,6BAAK,SAAS,EAAC,yEAAyE;QACtF,4BAAI,SAAS,EAAC,oBAAoB,eAAc;QAC/C,OAAO,IAAI,CACV,oBAAC,OAAO,IACN,IAAI,EAAC,SAAS,EACd,MAAM,EAAE,OAAO,EACf,QAAQ,EAAE,cAAc,CAAC,kBAAkB,CAAC,OAAO,CAAC,GACpD,CACH;QACA,OAAO,IAAI,CACV,oBAAC,OAAO,IACN,IAAI,EAAC,SAAS,EACd,MAAM,EAAE,OAAO,EACf,QAAQ,EAAE,cAAc,CAAC,kBAAkB,CAAC,OAAO,CAAC,GACpD,CACH,CACG,CACP,CAAC;AACJ,CAAC,CAAC;AAQF,MAAM,CAAC,IAAM,OAAO,GAA0C,UAAC,EAI9D;QAHC,YAAgB,EAAhB,IAAI,mBAAG,SAAS,KAAA,EAChB,MAAM,YAAA,EACN,gBAAa,EAAb,QAAQ,mBAAG,EAAE,KAAA;IAEP,IAAA,KAAsB,QAAQ,CAAC,KAAK,CAAC,EAApC,MAAM,QAAA,EAAE,SAAS,QAAmB,CAAC;IAE5C,OAAO,CACL,6BAAK,SAAS,EAAC,MAAM;QACnB;YACE,oBAAC,cAAc,IACb,OAAO,EAAE,cAAM,OAAA,SAAS,CAAC,UAAA,IAAI,IAAI,OAAA,CAAC,IAAI,EAAL,CAAK,CAAC,EAAxB,CAAwB,EACvC,YAAY,EAAE;oBACZ,SAAS,EAAE,iCACT,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CACrC;iBACH;gBAED,8BAAM,SAAS,EAAC,wEAAwE,IACrF,IAAI,CACA,CACQ,CACb;QACN,6BAAK,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,IACxC,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACjC,gCACG,QAAQ,CAAC,GAAG,CAAC,UAAC,OAAO,EAAE,GAAG,IAAK,OAAA,CAC9B,4BAAI,SAAS,EAAC,MAAM,EAAC,GAAG,EAAE,GAAG;YAC3B,4BAAI,SAAS,EAAC,iCAAiC;;gBACnC,GAAG,GAAG,CAAC,CACd;YACL,6BAAK,SAAS,EAAC,MAAM;gBACnB,oBAAC,OAAO,IAAC,IAAI,EAAE,cAAc,CAAC,eAAe,CAAC,OAAO,CAAC,GAAI,CACtD,CACH,CACN,EAT+B,CAS/B,CAAC,CACC,CACN,CAAC,CAAC,CAAC,CACF,6BAAK,SAAS,EAAC,MAAM;YACnB,oBAAC,OAAO,IAAC,IAAI,EAAE,cAAc,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,GAAI;YAChE,4BAAI,SAAS,EAAC,6CAA6C,qDAEtD,CACD,CACP,CACG,CACF,CACP,CAAC;AACJ,CAAC,CAAC"}
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 { MessageInterface, SchemaInterface } 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: MessageInterface;\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: SchemaInterface;\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"]}
@@ -1,18 +1,21 @@
1
1
  import React from 'react';
2
2
  import { Message } from './Message';
3
- import { useSpec } from '../../contexts';
3
+ import { useConfig, useSpec } from '../../contexts';
4
+ import { CommonHelpers } from '../../helpers';
4
5
  import { MESSAGES_TEXT } from '../../constants';
5
6
  export var Messages = function () {
6
- var messages = useSpec().allMessages();
7
- if (!messages.size) {
7
+ var asyncapi = useSpec();
8
+ var config = useConfig();
9
+ var messages = !asyncapi.components().isEmpty() && asyncapi.components().messages();
10
+ if (!messages || Object.keys(messages).length === 0) {
8
11
  return null;
9
12
  }
10
- return (React.createElement("section", { id: "messages", className: "mt-16" },
13
+ return (React.createElement("section", { id: "".concat(CommonHelpers.getIdentifier('messages', config)), className: "mt-16" },
11
14
  React.createElement("h2", { className: "2xl:w-7/12 text-3xl font-light mb-4 px-8" }, MESSAGES_TEXT),
12
- React.createElement("ul", null, Array.from(messages).map(function (_a, idx) {
15
+ React.createElement("ul", null, Object.entries(messages).map(function (_a, idx) {
13
16
  var messageName = _a[0], message = _a[1];
14
- return (React.createElement("li", { className: "mb-4", key: messageName, id: "message-" + message.uid() },
15
- React.createElement(Message, { message: message, index: idx + 1, key: messageName })));
17
+ return (React.createElement("li", { className: "mb-4", key: messageName, id: CommonHelpers.getIdentifier("message-".concat(messageName), config) },
18
+ React.createElement(Message, { messageName: messageName, message: message, index: idx + 1, key: messageName })));
16
19
  }))));
17
20
  };
18
21
  //# sourceMappingURL=Messages.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Messages.js","sourceRoot":"","sources":["../../../../src/containers/Messages/Messages.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,CAAC,IAAM,QAAQ,GAA4B;IAC/C,IAAM,QAAQ,GAAG,OAAO,EAAE,CAAC,WAAW,EAAE,CAAC;IAEzC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;QAClB,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,iCAAS,EAAE,EAAC,UAAU,EAAC,SAAS,EAAC,OAAO;QACtC,4BAAI,SAAS,EAAC,0CAA0C,IACrD,aAAa,CACX;QACL,gCACG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,UAAC,EAAsB,EAAE,GAAG;gBAA1B,WAAW,QAAA,EAAE,OAAO,QAAA;YAAW,OAAA,CACzD,4BACE,SAAS,EAAC,MAAM,EAChB,GAAG,EAAE,WAAW,EAChB,EAAE,EAAE,aAAW,OAAO,CAAC,GAAG,EAAI;gBAE9B,oBAAC,OAAO,IAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,WAAW,GAAI,CAC5D,CACN;QAR0D,CAQ1D,CAAC,CACC,CACG,CACX,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"Messages.js","sourceRoot":"","sources":["../../../../src/containers/Messages/Messages.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,CAAC,IAAM,QAAQ,GAA4B;IAC/C,IAAM,QAAQ,GAAG,OAAO,EAAE,CAAC;IAC3B,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,IAAM,QAAQ,GACZ,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC;IAEvE,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;QACnD,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,iCACE,EAAE,EAAE,UAAG,aAAa,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAE,EACxD,SAAS,EAAC,OAAO;QAEjB,4BAAI,SAAS,EAAC,0CAA0C,IACrD,aAAa,CACX;QACL,gCACG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,UAAC,EAAsB,EAAE,GAAG;gBAA1B,WAAW,QAAA,EAAE,OAAO,QAAA;YAAW,OAAA,CAC7D,4BACE,SAAS,EAAC,MAAM,EAChB,GAAG,EAAE,WAAW,EAChB,EAAE,EAAE,aAAa,CAAC,aAAa,CAAC,kBAAW,WAAW,CAAE,EAAE,MAAM,CAAC;gBAEjE,oBAAC,OAAO,IACN,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,GAAG,GAAG,CAAC,EACd,GAAG,EAAE,WAAW,GAChB,CACC,CACN;QAb8D,CAa9D,CAAC,CACC,CACG,CACX,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import React from 'react';\n\nimport { Message } from './Message';\n\nimport { useConfig, useSpec } from '../../contexts';\nimport { CommonHelpers } from '../../helpers';\nimport { MESSAGES_TEXT } from '../../constants';\n\nexport const Messages: React.FunctionComponent = () => {\n const asyncapi = useSpec();\n const config = useConfig();\n const messages =\n !asyncapi.components().isEmpty() && asyncapi.components().messages();\n\n if (!messages || Object.keys(messages).length === 0) {\n return null;\n }\n\n return (\n <section\n id={`${CommonHelpers.getIdentifier('messages', config)}`}\n className=\"mt-16\"\n >\n <h2 className=\"2xl:w-7/12 text-3xl font-light mb-4 px-8\">\n {MESSAGES_TEXT}\n </h2>\n <ul>\n {Object.entries(messages).map(([messageName, message], idx) => (\n <li\n className=\"mb-4\"\n key={messageName}\n id={CommonHelpers.getIdentifier(`message-${messageName}`, config)}\n >\n <Message\n messageName={messageName}\n message={message}\n index={idx + 1}\n key={messageName}\n />\n </li>\n ))}\n </ul>\n </section>\n );\n};\n"]}
@@ -1,49 +1,54 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
1
12
  import React from 'react';
2
13
  import { Message } from '../Messages/Message';
14
+ import { Security } from '../Servers/Security';
3
15
  import { Href, Markdown, Schema, Bindings, Tags, Extensions, } from '../../components';
4
- import { SchemaHelpers } from '../../helpers';
5
- import { EXTERAL_DOCUMENTATION_TEXT } from '../../constants';
16
+ import { useConfig } from '../../contexts';
17
+ import { CommonHelpers, SchemaHelpers } from '../../helpers';
18
+ import { EXTERAL_DOCUMENTATION_TEXT, PUBLISH_LABEL_DEFAULT_TEXT, SUBSCRIBE_LABEL_DEFAULT_TEXT, } from '../../constants';
6
19
  import { PayloadType } from '../../types';
7
- export var Operation = function (_a) {
8
- var _b = _a.type, type = _b === void 0 ? PayloadType.PUBLISH : _b, operation = _a.operation, channelName = _a.channelName, channel = _a.channel;
9
- if (!operation) {
20
+ export var Operation = function (props) {
21
+ var config = useConfig();
22
+ var _a = props.type, type = _a === void 0 ? PayloadType.PUBLISH : _a, operation = props.operation, channelName = props.channelName, channel = props.channel;
23
+ if (!operation || !channel) {
10
24
  return null;
11
25
  }
12
- var operationId = operation.id();
13
- var externalDocs = operation.externalDocs();
14
- var parameters = SchemaHelpers.parametersToSchema(channel.parameters());
15
- var operationSummary = operation.summary();
16
- return (React.createElement("div", { id: "operation-" + type + "-" + channelName },
26
+ var servers = typeof channel.servers === 'function' && channel.servers();
27
+ var security = typeof operation.security === 'function' && operation.security();
28
+ var parameters = channel.parameters() !== undefined
29
+ ? SchemaHelpers.parametersToSchema(channel.parameters())
30
+ : undefined;
31
+ return (React.createElement("div", null,
17
32
  React.createElement("div", { className: "panel-item--center px-8" },
18
- React.createElement("div", { className: "mb-4" },
19
- React.createElement("h3", null,
20
- React.createElement("span", { className: "font-mono border uppercase p-1 rounded mr-2 " + (type === PayloadType.PUBLISH
21
- ? 'border-blue-600 text-blue-500'
22
- : 'border-green-600 text-green-600'), title: type }, type === PayloadType.PUBLISH ? 'PUB' : 'SUB'),
23
- ' ',
24
- React.createElement("span", { className: "font-mono text-base" }, channelName))),
25
- channel.hasDescription() && (React.createElement("div", { className: "mt-2" },
26
- React.createElement(Markdown, null, channel.description()))),
27
- operationSummary && (React.createElement("p", { className: "text-gray-600 text-sm mt-2" }, operationSummary)),
28
- operation.hasDescription() && (React.createElement("div", { className: "mt-2" },
29
- React.createElement(Markdown, null, operation.description()))),
30
- externalDocs && (React.createElement("ul", { className: "leading-normal mt-2 mb-4 space-x-2 space-y-2" }, externalDocs && (React.createElement("li", { className: "inline-block" },
31
- React.createElement(Href, { className: "border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1", href: externalDocs.url() },
32
- React.createElement("span", null, EXTERAL_DOCUMENTATION_TEXT)))))),
33
- operationId && (React.createElement("div", { className: "border bg-gray-100 rounded px-4 py-2 mt-2" },
34
- React.createElement("div", { className: "text-sm text-gray-700" },
35
- "Operation ID",
36
- React.createElement("span", { className: "border text-orange-600 rounded text-xs ml-2 py-0 px-2" }, operationId)))),
37
- parameters && (React.createElement("div", { className: "mt-2" },
33
+ React.createElement(OperationInfo, __assign({}, props)),
34
+ servers && servers.length > 0 ? (React.createElement("div", { className: "mt-2 text-sm" },
35
+ React.createElement("p", null, "Available only on servers:"),
36
+ React.createElement("ul", { className: "flex flex-wrap leading-normal" }, servers.map(function (server) { return (React.createElement("li", { className: "inline-block mt-2 mr-2", key: server.id() },
37
+ React.createElement("a", { href: "#".concat(CommonHelpers.getIdentifier('server-' + server, config)), className: "border border-solid border-blue-300 hover:bg-blue-300 hover:text-blue-600 text-blue-500 font-bold no-underline text-xs rounded px-3 py-1 cursor-pointer" },
38
+ React.createElement("span", { className: "underline" }, server)))); })))) : null,
39
+ parameters && (React.createElement("div", { className: "mt-2", id: CommonHelpers.getIdentifier("operation-".concat(type, "-").concat(channelName, "-parameters"), config) },
38
40
  React.createElement(Schema, { schemaName: "Parameters", schema: parameters, expanded: true }))),
39
- operation.hasBindings() && (React.createElement("div", { className: "mt-2" },
40
- React.createElement(Bindings, { name: "Operation Bindings", bindings: operation.bindings() }))),
41
- channel.hasBindings() && (React.createElement("div", { className: "mt-2" },
42
- React.createElement(Bindings, { name: "Channel Bindings", bindings: channel.bindings() }))),
43
- React.createElement(Extensions, { item: operation }),
44
- operation.hasTags() && (React.createElement("div", { className: "mt-2" },
41
+ security && (React.createElement("div", { className: "mt-2", id: CommonHelpers.getIdentifier("operation-".concat(type, "-").concat(channelName, "-security"), config) },
42
+ React.createElement(Security, { security: security, header: "Additional security requirements" }))),
43
+ channel.bindings() && (React.createElement("div", { className: "mt-2" },
44
+ React.createElement(Bindings, { name: "Channel specific information", bindings: channel.bindings() }))),
45
+ React.createElement(Extensions, { name: "Channel Extensions", item: channel }),
46
+ operation.bindings() && (React.createElement("div", { className: "mt-2" },
47
+ React.createElement(Bindings, { name: "Operation specific information", bindings: operation.bindings() }))),
48
+ React.createElement(Extensions, { name: "Operation Extensions", item: operation }),
49
+ operation.tags() && (React.createElement("div", { className: "mt-2" },
45
50
  React.createElement(Tags, { tags: operation.tags() })))),
46
- React.createElement("div", { className: "w-full mt-4" }, operation.hasMultipleMessages() ? (React.createElement("div", { className: "mt-2" },
51
+ React.createElement("div", { className: "w-full mt-4", id: CommonHelpers.getIdentifier("operation-".concat(type, "-").concat(channelName, "-message"), config) }, operation.messages().length > 1 ? (React.createElement("div", { className: "mt-2" },
47
52
  React.createElement("p", { className: "px-8" },
48
53
  "Accepts ",
49
54
  React.createElement("strong", null, "one of"),
@@ -52,6 +57,35 @@ export var Operation = function (_a) {
52
57
  React.createElement(Message, { message: msg, index: idx, showExamples: true }))); })))) : (React.createElement("div", { className: "mt-2" },
53
58
  React.createElement("p", { className: "px-8" }, "Accepts the following message:"),
54
59
  React.createElement("div", { className: "mt-2" },
55
- React.createElement(Message, { message: operation.message(0), showExamples: true })))))));
60
+ React.createElement(Message, { message: operation.messages()[0], showExamples: true })))))));
61
+ };
62
+ export var OperationInfo = function (_a) {
63
+ var _b = _a.type, type = _b === void 0 ? PayloadType.PUBLISH : _b, operation = _a.operation, channelName = _a.channelName, channel = _a.channel;
64
+ var config = useConfig();
65
+ var operationSummary = operation.summary();
66
+ var externalDocs = operation.externalDocs();
67
+ var operationId = operation.id();
68
+ return (React.createElement(React.Fragment, null,
69
+ React.createElement("div", { className: "mb-4" },
70
+ React.createElement("h3", null,
71
+ React.createElement("span", { className: "font-mono border uppercase p-1 rounded mr-2 ".concat(type === PayloadType.PUBLISH
72
+ ? 'border-blue-600 text-blue-500'
73
+ : 'border-green-600 text-green-600'), title: type }, type === PayloadType.PUBLISH
74
+ ? config.publishLabel || PUBLISH_LABEL_DEFAULT_TEXT
75
+ : config.subscribeLabel || SUBSCRIBE_LABEL_DEFAULT_TEXT),
76
+ ' ',
77
+ React.createElement("span", { className: "font-mono text-base" }, channelName))),
78
+ channel.hasDescription() && (React.createElement("div", { className: "mt-2" },
79
+ React.createElement(Markdown, null, channel.description()))),
80
+ operationSummary && (React.createElement("p", { className: "text-gray-600 text-sm mt-2" }, operationSummary)),
81
+ operation.hasDescription() && (React.createElement("div", { className: "mt-2" },
82
+ React.createElement(Markdown, null, operation.description()))),
83
+ externalDocs && (React.createElement("ul", { className: "leading-normal mt-2 mb-4 space-x-2 space-y-2" }, externalDocs && (React.createElement("li", { className: "inline-block" },
84
+ React.createElement(Href, { className: "border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1", href: externalDocs.url() },
85
+ React.createElement("span", null, EXTERAL_DOCUMENTATION_TEXT)))))),
86
+ operationId && (React.createElement("div", { className: "border bg-gray-100 rounded px-4 py-2 mt-2" },
87
+ React.createElement("div", { className: "text-sm text-gray-700" },
88
+ "Operation ID",
89
+ React.createElement("span", { className: "border text-orange-600 rounded text-xs ml-2 py-0 px-2" }, operationId))))));
56
90
  };
57
91
  //# sourceMappingURL=Operation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Operation.js","sourceRoot":"","sources":["../../../../src/containers/Operations/Operation.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Operation.js","sourceRoot":"","sources":["../../../../src/containers/Operations/Operation.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { ChannelInterface, OperationInterface } from '@asyncapi/parser';\n\nimport { Message } from '../Messages/Message';\nimport { Security } from '../Servers/Security';\nimport {\n Href,\n Markdown,\n Schema,\n Bindings,\n Tags,\n Extensions,\n} from '../../components';\n\nimport { useConfig } from '../../contexts';\nimport { CommonHelpers, SchemaHelpers } from '../../helpers';\nimport {\n EXTERAL_DOCUMENTATION_TEXT,\n PUBLISH_LABEL_DEFAULT_TEXT,\n SUBSCRIBE_LABEL_DEFAULT_TEXT,\n} from '../../constants';\nimport { PayloadType } from '../../types';\n\ninterface Props {\n type: PayloadType;\n operation: OperationInterface;\n channelName: string;\n channel: ChannelInterface;\n}\n\nexport const Operation: React.FunctionComponent<Props> = props => {\n const config = useConfig();\n const { type = PayloadType.PUBLISH, operation, channelName, channel } = props;\n\n if (!operation || !channel) {\n return null;\n }\n\n // check typeof as fallback for older version than `2.2.0`\n const servers = typeof channel.servers === 'function' && channel.servers();\n // check typeof as fallback for older version than `2.4.0`\n const security =\n typeof operation.security === 'function' && operation.security();\n const parameters =\n channel.parameters() !== undefined\n ? SchemaHelpers.parametersToSchema(channel.parameters())\n : undefined;\n\n return (\n <div>\n <div className=\"panel-item--center px-8\">\n <OperationInfo {...props} />\n\n {servers && servers.length > 0 ? (\n <div className=\"mt-2 text-sm\">\n <p>Available only on servers:</p>\n <ul className=\"flex flex-wrap leading-normal\">\n {servers.map(server => (\n <li className=\"inline-block mt-2 mr-2\" key={server.id()}>\n <a\n href={`#${CommonHelpers.getIdentifier(\n 'server-' + server,\n config,\n )}`}\n className=\"border border-solid border-blue-300 hover:bg-blue-300 hover:text-blue-600 text-blue-500 font-bold no-underline text-xs rounded px-3 py-1 cursor-pointer\"\n >\n <span className=\"underline\">{server}</span>\n </a>\n </li>\n ))}\n </ul>\n </div>\n ) : null}\n\n {parameters && (\n <div\n className=\"mt-2\"\n id={CommonHelpers.getIdentifier(\n `operation-${type}-${channelName}-parameters`,\n config,\n )}\n >\n <Schema\n schemaName=\"Parameters\"\n schema={parameters}\n expanded={true}\n />\n </div>\n )}\n\n {security && (\n <div\n className=\"mt-2\"\n id={CommonHelpers.getIdentifier(\n `operation-${type}-${channelName}-security`,\n config,\n )}\n >\n <Security\n security={security}\n header=\"Additional security requirements\"\n />\n </div>\n )}\n\n {channel.bindings() && (\n <div className=\"mt-2\">\n <Bindings\n name=\"Channel specific information\"\n bindings={channel.bindings()}\n />\n </div>\n )}\n\n <Extensions name=\"Channel Extensions\" item={channel} />\n\n {operation.bindings() && (\n <div className=\"mt-2\">\n <Bindings\n name=\"Operation specific information\"\n bindings={operation.bindings()}\n />\n </div>\n )}\n\n <Extensions name=\"Operation Extensions\" item={operation} />\n\n {operation.tags() && (\n <div className=\"mt-2\">\n <Tags tags={operation.tags()} />\n </div>\n )}\n </div>\n\n <div\n className=\"w-full mt-4\"\n id={CommonHelpers.getIdentifier(\n `operation-${type}-${channelName}-message`,\n config,\n )}\n >\n {operation.messages().length > 1 ? (\n <div className=\"mt-2\">\n <p className=\"px-8\">\n Accepts <strong>one of</strong> the following messages:\n </p>\n <ul>\n {operation.messages().map((msg, idx) => (\n <li className=\"mt-4\" key={idx}>\n <Message message={msg} index={idx} showExamples={true} />\n </li>\n ))}\n </ul>\n </div>\n ) : (\n <div className=\"mt-2\">\n <p className=\"px-8\">Accepts the following message:</p>\n <div className=\"mt-2\">\n <Message message={operation.messages()[0]} showExamples={true} />\n </div>\n </div>\n )}\n </div>\n </div>\n );\n};\n\nexport const OperationInfo: React.FunctionComponent<Props> = ({\n type = PayloadType.PUBLISH,\n operation,\n channelName,\n channel,\n}) => {\n const config = useConfig();\n const operationSummary = operation.summary();\n const externalDocs = operation.externalDocs();\n const operationId = operation.id();\n\n return (\n <>\n <div className=\"mb-4\">\n <h3>\n <span\n className={`font-mono border uppercase p-1 rounded mr-2 ${\n type === PayloadType.PUBLISH\n ? 'border-blue-600 text-blue-500'\n : 'border-green-600 text-green-600'\n }`}\n title={type}\n >\n {type === PayloadType.PUBLISH\n ? config.publishLabel || PUBLISH_LABEL_DEFAULT_TEXT\n : config.subscribeLabel || SUBSCRIBE_LABEL_DEFAULT_TEXT}\n </span>{' '}\n <span className=\"font-mono text-base\">{channelName}</span>\n </h3>\n </div>\n\n {channel.hasDescription() && (\n <div className=\"mt-2\">\n <Markdown>{channel.description()}</Markdown>\n </div>\n )}\n {operationSummary && (\n <p className=\"text-gray-600 text-sm mt-2\">{operationSummary}</p>\n )}\n {operation.hasDescription() && (\n <div className=\"mt-2\">\n <Markdown>{operation.description()}</Markdown>\n </div>\n )}\n\n {externalDocs && (\n <ul className=\"leading-normal mt-2 mb-4 space-x-2 space-y-2\">\n {externalDocs && (\n <li className=\"inline-block\">\n <Href\n className=\"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1\"\n href={externalDocs.url()}\n >\n <span>{EXTERAL_DOCUMENTATION_TEXT}</span>\n </Href>\n </li>\n )}\n </ul>\n )}\n\n {operationId && (\n <div className=\"border bg-gray-100 rounded px-4 py-2 mt-2\">\n <div className=\"text-sm text-gray-700\">\n Operation ID\n <span className=\"border text-orange-600 rounded text-xs ml-2 py-0 px-2\">\n {operationId}\n </span>\n </div>\n </div>\n )}\n </>\n );\n};\n"]}
@@ -1,26 +1,28 @@
1
1
  import React from 'react';
2
2
  import { Operation } from './Operation';
3
- import { useSpec } from '../../contexts';
4
- import { PayloadType } from '../../types';
3
+ import { useConfig, useSpec } from '../../contexts';
4
+ import { CommonHelpers } from '../../helpers';
5
5
  import { OPERATIONS_TEXT } from '../../constants';
6
+ import { PayloadType } from '../../types';
6
7
  export var Operations = function () {
7
- var channels = useSpec().channels();
8
- if (!Object.keys(channels).length) {
8
+ var operations = useSpec().operations();
9
+ var config = useConfig();
10
+ if (!Object.keys(operations).length) {
9
11
  return null;
10
12
  }
11
13
  var operationsList = [];
12
- Object.entries(channels).forEach(function (_a) {
13
- var channelName = _a[0], channel = _a[1];
14
- if (channel.hasPublish()) {
15
- operationsList.push(React.createElement("li", { className: "mb-12", key: "pub-" + channelName },
16
- React.createElement(Operation, { type: PayloadType.PUBLISH, operation: channel.publish(), channelName: channelName, channel: channel })));
14
+ Object.entries(operations).forEach(function (_a) {
15
+ var operationName = _a[0], operation = _a[1];
16
+ if (operation.isSend()) {
17
+ operationsList.push(React.createElement("li", { className: "mb-12", key: "pub-".concat(operationName), id: CommonHelpers.getIdentifier("operation-".concat(PayloadType.PUBLISH, "-").concat(operationName), config) },
18
+ React.createElement(Operation, { type: PayloadType.PUBLISH, operation: operation, channelName: operationName, channel: operation.channels()[0] })));
17
19
  }
18
- if (channel.hasSubscribe()) {
19
- operationsList.push(React.createElement("li", { className: "mb-12", key: "sub-" + channelName },
20
- React.createElement(Operation, { type: PayloadType.SUBSCRIBE, operation: channel.subscribe(), channelName: channelName, channel: channel })));
20
+ if (operation.isReceive()) {
21
+ operationsList.push(React.createElement("li", { className: "mb-12", key: "sub-".concat(operationName), id: CommonHelpers.getIdentifier("operation-".concat(PayloadType.SUBSCRIBE, "-").concat(operationName), config) },
22
+ React.createElement(Operation, { type: PayloadType.SUBSCRIBE, operation: operation, channelName: operationName, channel: operation.channels()[0] })));
21
23
  }
22
24
  });
23
- return (React.createElement("section", { id: "operations", className: "mt-16" },
25
+ return (React.createElement("section", { id: "".concat(CommonHelpers.getIdentifier('operations', config)), className: "mt-16" },
24
26
  React.createElement("h2", { className: "2xl:w-7/12 text-3xl font-light mb-4 px-8" }, OPERATIONS_TEXT),
25
27
  React.createElement("ul", null, operationsList)));
26
28
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Operations.js","sourceRoot":"","sources":["../../../../src/containers/Operations/Operations.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,CAAC,IAAM,UAAU,GAA4B;IACjD,IAAM,QAAQ,GAAG,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC;IAEtC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE;QACjC,OAAO,IAAI,CAAC;KACb;IAED,IAAM,cAAc,GAAyB,EAAE,CAAC;IAChD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,UAAC,EAAsB;YAArB,WAAW,QAAA,EAAE,OAAO,QAAA;QACrD,IAAI,OAAO,CAAC,UAAU,EAAE,EAAE;YACxB,cAAc,CAAC,IAAI,CACjB,4BAAI,SAAS,EAAC,OAAO,EAAC,GAAG,EAAE,SAAO,WAAa;gBAC7C,oBAAC,SAAS,IACR,IAAI,EAAE,WAAW,CAAC,OAAO,EACzB,SAAS,EAAE,OAAO,CAAC,OAAO,EAAE,EAC5B,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,OAAO,GAChB,CACC,CACN,CAAC;SACH;QACD,IAAI,OAAO,CAAC,YAAY,EAAE,EAAE;YAC1B,cAAc,CAAC,IAAI,CACjB,4BAAI,SAAS,EAAC,OAAO,EAAC,GAAG,EAAE,SAAO,WAAa;gBAC7C,oBAAC,SAAS,IACR,IAAI,EAAE,WAAW,CAAC,SAAS,EAC3B,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,EAC9B,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,OAAO,GAChB,CACC,CACN,CAAC;SACH;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CACL,iCAAS,EAAE,EAAC,YAAY,EAAC,SAAS,EAAC,OAAO;QACxC,4BAAI,SAAS,EAAC,0CAA0C,IACrD,eAAe,CACb;QACL,gCAAK,cAAc,CAAM,CACjB,CACX,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"Operations.js","sourceRoot":"","sources":["../../../../src/containers/Operations/Operations.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,CAAC,IAAM,UAAU,GAA4B;IACjD,IAAM,UAAU,GAAG,OAAO,EAAE,CAAC,UAAU,EAAE,CAAC;IAC1C,IAAM,MAAM,GAAG,SAAS,EAAE,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,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,UAAC,EAA0B;YAAzB,aAAa,QAAA,EAAE,SAAS,QAAA;QAC3D,IAAI,SAAS,CAAC,MAAM,EAAE,EAAE;YACtB,cAAc,CAAC,IAAI,CACjB,4BACE,SAAS,EAAC,OAAO,EACjB,GAAG,EAAE,cAAO,aAAa,CAAE,EAC3B,EAAE,EAAE,aAAa,CAAC,aAAa,CAC7B,oBAAa,WAAW,CAAC,OAAO,cAAI,aAAa,CAAE,EACnD,MAAM,CACP;gBAED,oBAAC,SAAS,IACR,IAAI,EAAE,WAAW,CAAC,OAAO,EACzB,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,aAAa,EAC1B,OAAO,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,GAChC,CACC,CACN,CAAC;SACH;QACD,IAAI,SAAS,CAAC,SAAS,EAAE,EAAE;YACzB,cAAc,CAAC,IAAI,CACjB,4BACE,SAAS,EAAC,OAAO,EACjB,GAAG,EAAE,cAAO,aAAa,CAAE,EAC3B,EAAE,EAAE,aAAa,CAAC,aAAa,CAC7B,oBAAa,WAAW,CAAC,SAAS,cAAI,aAAa,CAAE,EACrD,MAAM,CACP;gBAED,oBAAC,SAAS,IACR,IAAI,EAAE,WAAW,CAAC,SAAS,EAC3B,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,aAAa,EAC1B,OAAO,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,GAChC,CACC,CACN,CAAC;SACH;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CACL,iCACE,EAAE,EAAE,UAAG,aAAa,CAAC,aAAa,CAAC,YAAY,EAAE,MAAM,CAAC,CAAE,EAC1D,SAAS,EAAC,OAAO;QAEjB,4BAAI,SAAS,EAAC,0CAA0C,IACrD,eAAe,CACb;QACL,gCAAK,cAAc,CAAM,CACjB,CACX,CAAC;AACJ,CAAC,CAAC","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().operations();\n const config = useConfig();\n\n if (!Object.keys(operations).length) {\n return null;\n }\n\n const operationsList: React.ReactNodeArray = [];\n Object.entries(operations).forEach(([operationName, operation]) => {\n if (operation.isSend()) {\n operationsList.push(\n <li\n className=\"mb-12\"\n key={`pub-${operationName}`}\n id={CommonHelpers.getIdentifier(\n `operation-${PayloadType.PUBLISH}-${operationName}`,\n config,\n )}\n >\n <Operation\n type={PayloadType.PUBLISH}\n operation={operation}\n channelName={operationName}\n channel={operation.channels()[0]}\n />\n </li>,\n );\n }\n if (operation.isReceive()) {\n operationsList.push(\n <li\n className=\"mb-12\"\n key={`sub-${operationName}`}\n id={CommonHelpers.getIdentifier(\n `operation-${PayloadType.SUBSCRIBE}-${operationName}`,\n config,\n )}\n >\n <Operation\n type={PayloadType.SUBSCRIBE}\n operation={operation}\n channelName={operationName}\n channel={operation.channels()[0]}\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,14 @@
1
+ import React from 'react';
2
+ import { Schema as SchemaComponent } from '../../components';
3
+ export var Schema = function (_a) {
4
+ var schemaName = _a.schemaName, schema = _a.schema;
5
+ if (!schema) {
6
+ return null;
7
+ }
8
+ return (React.createElement("div", null,
9
+ React.createElement("div", { className: "panel-item--center px-8" },
10
+ React.createElement("div", { className: "shadow rounded px-4 py-2 border bg-gray-200" },
11
+ React.createElement(SchemaComponent, { schemaName: schemaName, schema: schema }))),
12
+ React.createElement("div", { className: "w-full mt-4" })));
13
+ };
14
+ //# sourceMappingURL=Schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Schema.js","sourceRoot":"","sources":["../../../../src/containers/Schemas/Schema.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAO7D,MAAM,CAAC,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,6BAAK,SAAS,EAAC,yBAAyB;YACtC,6BAAK,SAAS,EAAC,6CAA6C;gBAC1D,oBAAC,eAAe,IAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAI,CACvD,CACF;QAEN,6BAAK,SAAS,EAAC,aAAa,GAAG,CAC3B,CACP,CAAC;AACJ,CAAC,CAAC","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,21 @@
1
+ import React from 'react';
2
+ import { Schema } from './Schema';
3
+ import { useConfig, useSpec } from '../../contexts';
4
+ import { CommonHelpers } from '../../helpers';
5
+ import { SCHEMAS_TEXT } from '../../constants';
6
+ export var Schemas = function () {
7
+ var asyncapi = useSpec();
8
+ var config = useConfig();
9
+ var schemas = !asyncapi.components().isEmpty() && asyncapi.components().schemas();
10
+ if (!schemas || Object.keys(schemas).length === 0) {
11
+ return null;
12
+ }
13
+ return (React.createElement("section", { id: "".concat(CommonHelpers.getIdentifier('schemas', config)), className: "mt-16" },
14
+ React.createElement("h2", { className: "2xl:w-7/12 text-3xl font-light mb-4 px-8" }, SCHEMAS_TEXT),
15
+ React.createElement("ul", null, Object.entries(schemas).map(function (_a) {
16
+ var schemaName = _a[0], schema = _a[1];
17
+ return (React.createElement("li", { className: "mb-4", key: schemaName, id: CommonHelpers.getIdentifier("schema-".concat(schemaName), config) },
18
+ React.createElement(Schema, { schemaName: schemaName, schema: schema })));
19
+ }))));
20
+ };
21
+ //# sourceMappingURL=Schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Schemas.js","sourceRoot":"","sources":["../../../../src/containers/Schemas/Schemas.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,CAAC,IAAM,OAAO,GAA4B;IAC9C,IAAM,QAAQ,GAAG,OAAO,EAAE,CAAC;IAC3B,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,IAAM,OAAO,GACX,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC;IAEtE,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;QACjD,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,iCACE,EAAE,EAAE,UAAG,aAAa,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,CAAE,EACvD,SAAS,EAAC,OAAO;QAEjB,4BAAI,SAAS,EAAC,0CAA0C,IACrD,YAAY,CACV;QACL,gCACG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,UAAC,EAAoB;gBAAnB,UAAU,QAAA,EAAE,MAAM,QAAA;YAAM,OAAA,CACrD,4BACE,SAAS,EAAC,MAAM,EAChB,GAAG,EAAE,UAAU,EACf,EAAE,EAAE,aAAa,CAAC,aAAa,CAAC,iBAAU,UAAU,CAAE,EAAE,MAAM,CAAC;gBAE/D,oBAAC,MAAM,IAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAI,CAC/C,CACN;QARsD,CAQtD,CAAC,CACC,CACG,CACX,CAAC;AACJ,CAAC,CAAC","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() && asyncapi.components().schemas();\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"]}