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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (288) hide show
  1. package/README.md +75 -4
  2. package/browser/index.js +8 -14
  3. package/browser/index.js.LICENSE.txt +88 -0
  4. package/browser/standalone/index.js +8 -0
  5. package/browser/standalone/index.js.LICENSE.txt +112 -0
  6. package/browser/standalone/without-parser.js +8 -0
  7. package/browser/standalone/without-parser.js.LICENSE.txt +110 -0
  8. package/browser/without-parser.js +8 -12
  9. package/browser/without-parser.js.LICENSE.txt +86 -0
  10. package/lib/cjs/components/Bindings.js +14 -5
  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 +77 -60
  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 +3 -2
  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 +29 -13
  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 +9 -3
  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 +15 -7
  52. package/lib/cjs/containers/Messages/Messages.js.map +1 -1
  53. package/lib/cjs/containers/Operations/Operation.js +88 -38
  54. package/lib/cjs/containers/Operations/Operation.js.map +1 -1
  55. package/lib/cjs/containers/Operations/Operations.js +20 -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 +32 -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 +11 -6
  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 +15 -16
  84. package/lib/cjs/helpers/parser.js.map +1 -1
  85. package/lib/cjs/helpers/schema.js +186 -149
  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 +12 -4
  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 +71 -59
  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 +1 -1
  113. package/lib/esm/components/Tags.js.map +1 -1
  114. package/lib/esm/components/index.js +1 -1
  115. package/lib/esm/components/index.js.map +1 -1
  116. package/lib/esm/config/config.js.map +1 -1
  117. package/lib/esm/config/default.js +9 -1
  118. package/lib/esm/config/default.js.map +1 -1
  119. package/lib/esm/config/index.js.map +1 -1
  120. package/lib/esm/constants.js +3 -47
  121. package/lib/esm/constants.js.map +1 -1
  122. package/lib/esm/containers/AsyncApi/AsyncApi.js +23 -11
  123. package/lib/esm/containers/AsyncApi/AsyncApi.js.map +1 -1
  124. package/lib/esm/containers/AsyncApi/Layout.js +28 -20
  125. package/lib/esm/containers/AsyncApi/Layout.js.map +1 -1
  126. package/lib/esm/containers/AsyncApi/Standalone.js +4 -2
  127. package/lib/esm/containers/AsyncApi/Standalone.js.map +1 -1
  128. package/lib/esm/containers/Error/Error.js +2 -2
  129. package/lib/esm/containers/Error/Error.js.map +1 -1
  130. package/lib/esm/containers/Info/Info.js +8 -8
  131. package/lib/esm/containers/Info/Info.js.map +1 -1
  132. package/lib/esm/containers/Messages/Message.js +21 -9
  133. package/lib/esm/containers/Messages/Message.js.map +1 -1
  134. package/lib/esm/containers/Messages/MessageExample.js +19 -13
  135. package/lib/esm/containers/Messages/MessageExample.js.map +1 -1
  136. package/lib/esm/containers/Messages/Messages.js +14 -7
  137. package/lib/esm/containers/Messages/Messages.js.map +1 -1
  138. package/lib/esm/containers/Operations/Operation.js +87 -39
  139. package/lib/esm/containers/Operations/Operation.js.map +1 -1
  140. package/lib/esm/containers/Operations/Operations.js +19 -13
  141. package/lib/esm/containers/Operations/Operations.js.map +1 -1
  142. package/lib/esm/containers/Schemas/Schema.js +14 -0
  143. package/lib/esm/containers/Schemas/Schema.js.map +1 -0
  144. package/lib/esm/containers/Schemas/Schemas.js +25 -0
  145. package/lib/esm/containers/Schemas/Schemas.js.map +1 -0
  146. package/lib/esm/containers/Servers/Security.js +143 -0
  147. package/lib/esm/containers/Servers/Security.js.map +1 -0
  148. package/lib/esm/containers/Servers/Server.js +15 -9
  149. package/lib/esm/containers/Servers/Server.js.map +1 -1
  150. package/lib/esm/containers/Servers/Servers.js +10 -6
  151. package/lib/esm/containers/Servers/Servers.js.map +1 -1
  152. package/lib/esm/containers/Sidebar/Sidebar.js +203 -135
  153. package/lib/esm/containers/Sidebar/Sidebar.js.map +1 -1
  154. package/lib/esm/contexts/index.js +1 -0
  155. package/lib/esm/contexts/index.js.map +1 -1
  156. package/lib/esm/contexts/useConfig.js +6 -0
  157. package/lib/esm/contexts/useConfig.js.map +1 -0
  158. package/lib/esm/contexts/useSpec.js +2 -2
  159. package/lib/esm/contexts/useSpec.js.map +1 -1
  160. package/lib/esm/helpers/common.js +14 -0
  161. package/lib/esm/helpers/common.js.map +1 -0
  162. package/lib/esm/helpers/index.js +2 -3
  163. package/lib/esm/helpers/index.js.map +1 -1
  164. package/lib/esm/helpers/marked.js +27 -0
  165. package/lib/esm/helpers/marked.js.map +1 -0
  166. package/lib/esm/helpers/message.js +38 -8
  167. package/lib/esm/helpers/message.js.map +1 -1
  168. package/lib/esm/helpers/parser.js +16 -14
  169. package/lib/esm/helpers/parser.js.map +1 -1
  170. package/lib/esm/helpers/schema.js +182 -142
  171. package/lib/esm/helpers/schema.js.map +1 -1
  172. package/lib/esm/helpers/server.js +49 -0
  173. package/lib/esm/helpers/server.js.map +1 -1
  174. package/lib/esm/helpers/specification.js +36 -18
  175. package/lib/esm/helpers/specification.js.map +1 -1
  176. package/lib/esm/index.js +2 -1
  177. package/lib/esm/index.js.map +1 -1
  178. package/lib/esm/types.js +2 -46
  179. package/lib/esm/types.js.map +1 -1
  180. package/lib/esm/without-parser.js +2 -0
  181. package/lib/esm/without-parser.js.map +1 -1
  182. package/lib/types/components/Bindings.d.ts +2 -1
  183. package/lib/types/components/Bindings.d.ts.map +1 -1
  184. package/lib/types/components/CollapseButton.d.ts +1 -0
  185. package/lib/types/components/CollapseButton.d.ts.map +1 -1
  186. package/lib/types/components/Extensions.d.ts.map +1 -1
  187. package/lib/types/components/JSONSnippet.d.ts +7 -0
  188. package/lib/types/components/JSONSnippet.d.ts.map +1 -0
  189. package/lib/types/components/Markdown.d.ts.map +1 -1
  190. package/lib/types/components/Schema.d.ts +5 -4
  191. package/lib/types/components/Schema.d.ts.map +1 -1
  192. package/lib/types/components/Tag.d.ts +2 -2
  193. package/lib/types/components/Tag.d.ts.map +1 -1
  194. package/lib/types/components/Tags.d.ts +2 -2
  195. package/lib/types/components/Tags.d.ts.map +1 -1
  196. package/lib/types/components/index.d.ts +1 -1
  197. package/lib/types/components/index.d.ts.map +1 -1
  198. package/lib/types/config/config.d.ts +8 -0
  199. package/lib/types/config/config.d.ts.map +1 -1
  200. package/lib/types/config/default.d.ts.map +1 -1
  201. package/lib/types/constants.d.ts +3 -26
  202. package/lib/types/constants.d.ts.map +1 -1
  203. package/lib/types/containers/AsyncApi/AsyncApi.d.ts +4 -4
  204. package/lib/types/containers/AsyncApi/AsyncApi.d.ts.map +1 -1
  205. package/lib/types/containers/AsyncApi/Layout.d.ts +2 -2
  206. package/lib/types/containers/AsyncApi/Layout.d.ts.map +1 -1
  207. package/lib/types/containers/AsyncApi/Standalone.d.ts +4 -4
  208. package/lib/types/containers/AsyncApi/Standalone.d.ts.map +1 -1
  209. package/lib/types/containers/Info/Info.d.ts.map +1 -1
  210. package/lib/types/containers/Messages/Message.d.ts +3 -2
  211. package/lib/types/containers/Messages/Message.d.ts.map +1 -1
  212. package/lib/types/containers/Messages/MessageExample.d.ts +5 -4
  213. package/lib/types/containers/Messages/MessageExample.d.ts.map +1 -1
  214. package/lib/types/containers/Messages/Messages.d.ts.map +1 -1
  215. package/lib/types/containers/Operations/Operation.d.ts +4 -3
  216. package/lib/types/containers/Operations/Operation.d.ts.map +1 -1
  217. package/lib/types/containers/Operations/Operations.d.ts.map +1 -1
  218. package/lib/types/containers/Schemas/Schema.d.ts +9 -0
  219. package/lib/types/containers/Schemas/Schema.d.ts.map +1 -0
  220. package/lib/types/containers/Schemas/Schemas.d.ts +3 -0
  221. package/lib/types/containers/Schemas/Schemas.d.ts.map +1 -0
  222. package/lib/types/containers/Servers/Security.d.ts +10 -0
  223. package/lib/types/containers/Servers/Security.d.ts.map +1 -0
  224. package/lib/types/containers/Servers/Server.d.ts +2 -2
  225. package/lib/types/containers/Servers/Server.d.ts.map +1 -1
  226. package/lib/types/containers/Servers/Servers.d.ts.map +1 -1
  227. package/lib/types/containers/Sidebar/Sidebar.d.ts +1 -9
  228. package/lib/types/containers/Sidebar/Sidebar.d.ts.map +1 -1
  229. package/lib/types/contexts/index.d.ts +1 -0
  230. package/lib/types/contexts/index.d.ts.map +1 -1
  231. package/lib/types/contexts/useConfig.d.ts +5 -0
  232. package/lib/types/contexts/useConfig.d.ts.map +1 -0
  233. package/lib/types/contexts/useSpec.d.ts +3 -5
  234. package/lib/types/contexts/useSpec.d.ts.map +1 -1
  235. package/lib/types/helpers/common.d.ts +5 -0
  236. package/lib/types/helpers/common.d.ts.map +1 -0
  237. package/lib/types/helpers/index.d.ts +2 -3
  238. package/lib/types/helpers/index.d.ts.map +1 -1
  239. package/lib/types/helpers/marked.d.ts +4 -0
  240. package/lib/types/helpers/marked.d.ts.map +1 -0
  241. package/lib/types/helpers/message.d.ts +4 -3
  242. package/lib/types/helpers/message.d.ts.map +1 -1
  243. package/lib/types/helpers/parser.d.ts.map +1 -1
  244. package/lib/types/helpers/schema.d.ts +16 -12
  245. package/lib/types/helpers/schema.d.ts.map +1 -1
  246. package/lib/types/helpers/server.d.ts +6 -1
  247. package/lib/types/helpers/server.d.ts.map +1 -1
  248. package/lib/types/helpers/specification.d.ts +7 -4
  249. package/lib/types/helpers/specification.d.ts.map +1 -1
  250. package/lib/types/index.d.ts +2 -1
  251. package/lib/types/index.d.ts.map +1 -1
  252. package/lib/types/types.d.ts +12 -305
  253. package/lib/types/types.d.ts.map +1 -1
  254. package/lib/types/without-parser.d.ts +2 -0
  255. package/lib/types/without-parser.d.ts.map +1 -1
  256. package/package.json +43 -19
  257. package/styles/default.css +929 -646
  258. package/styles/default.min.css +4 -2
  259. package/lib/cjs/components/Code.js +0 -15
  260. package/lib/cjs/components/Code.js.map +0 -1
  261. package/lib/cjs/containers/Servers/ServerSecurity.js +0 -101
  262. package/lib/cjs/containers/Servers/ServerSecurity.js.map +0 -1
  263. package/lib/cjs/helpers/bemClasses.js +0 -49
  264. package/lib/cjs/helpers/bemClasses.js.map +0 -1
  265. package/lib/cjs/helpers/formatJsonHighlight.js +0 -61
  266. package/lib/cjs/helpers/formatJsonHighlight.js.map +0 -1
  267. package/lib/cjs/helpers/toKebabCase.js +0 -15
  268. package/lib/cjs/helpers/toKebabCase.js.map +0 -1
  269. package/lib/esm/components/Code.js +0 -9
  270. package/lib/esm/components/Code.js.map +0 -1
  271. package/lib/esm/containers/Servers/ServerSecurity.js +0 -95
  272. package/lib/esm/containers/Servers/ServerSecurity.js.map +0 -1
  273. package/lib/esm/helpers/bemClasses.js +0 -46
  274. package/lib/esm/helpers/bemClasses.js.map +0 -1
  275. package/lib/esm/helpers/formatJsonHighlight.js +0 -57
  276. package/lib/esm/helpers/formatJsonHighlight.js.map +0 -1
  277. package/lib/esm/helpers/toKebabCase.js +0 -11
  278. package/lib/esm/helpers/toKebabCase.js.map +0 -1
  279. package/lib/types/components/Code.d.ts +0 -7
  280. package/lib/types/components/Code.d.ts.map +0 -1
  281. package/lib/types/containers/Servers/ServerSecurity.d.ts +0 -8
  282. package/lib/types/containers/Servers/ServerSecurity.d.ts.map +0 -1
  283. package/lib/types/helpers/bemClasses.d.ts +0 -14
  284. package/lib/types/helpers/bemClasses.d.ts.map +0 -1
  285. package/lib/types/helpers/formatJsonHighlight.d.ts +0 -2
  286. package/lib/types/helpers/formatJsonHighlight.d.ts.map +0 -1
  287. package/lib/types/helpers/toKebabCase.d.ts +0 -2
  288. package/lib/types/helpers/toKebabCase.d.ts.map +0 -1
@@ -0,0 +1,86 @@
1
+ /*!
2
+ * The buffer module from node.js, for the browser.
3
+ *
4
+ * @author Feross Aboukhadijeh <feross@feross.org> <http://feross.org>
5
+ * @license MIT
6
+ */
7
+
8
+ /*!
9
+ * The buffer module from node.js, for the browser.
10
+ *
11
+ * @author Feross Aboukhadijeh <https://feross.org>
12
+ * @license MIT
13
+ */
14
+
15
+ /*!
16
+ * URI.js - Mutating URLs
17
+ *
18
+ * Version: 1.19.11
19
+ *
20
+ * Author: Rodney Rehm
21
+ * Web: http://medialize.github.io/URI.js/
22
+ *
23
+ * Licensed under
24
+ * MIT License http://www.opensource.org/licenses/mit-license
25
+ *
26
+ */
27
+
28
+ /*!
29
+ * URI.js - Mutating URLs
30
+ * IPv6 Support
31
+ *
32
+ * Version: 1.19.11
33
+ *
34
+ * Author: Rodney Rehm
35
+ * Web: http://medialize.github.io/URI.js/
36
+ *
37
+ * Licensed under
38
+ * MIT License http://www.opensource.org/licenses/mit-license
39
+ *
40
+ */
41
+
42
+ /*!
43
+ * URI.js - Mutating URLs
44
+ * Second Level Domain (SLD) Support
45
+ *
46
+ * Version: 1.19.11
47
+ *
48
+ * Author: Rodney Rehm
49
+ * Web: http://medialize.github.io/URI.js/
50
+ *
51
+ * Licensed under
52
+ * MIT License http://www.opensource.org/licenses/mit-license
53
+ *
54
+ */
55
+
56
+ /*! *****************************************************************************
57
+ Copyright (c) Microsoft Corporation.
58
+
59
+ Permission to use, copy, modify, and/or distribute this software for any
60
+ purpose with or without fee is hereby granted.
61
+
62
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
63
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
64
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
65
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
66
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
67
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
68
+ PERFORMANCE OF THIS SOFTWARE.
69
+ ***************************************************************************** */
70
+
71
+ /*! @license DOMPurify 2.4.7 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/2.4.7/LICENSE */
72
+
73
+ /*! https://mths.be/punycode v1.4.0 by @mathias */
74
+
75
+ /*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
76
+
77
+ /**
78
+ * @license
79
+ * Lodash <https://lodash.com/>
80
+ * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
81
+ * Released under MIT license <https://lodash.com/license>
82
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
83
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
84
+ */
85
+
86
+ /** @license URI.js v4.4.1 (c) 2011 Gary Court. License: http://github.com/garycourt/uri-js */
@@ -7,12 +7,21 @@ exports.Bindings = void 0;
7
7
  var react_1 = __importDefault(require("react"));
8
8
  var Schema_1 = require("./Schema");
9
9
  var helpers_1 = require("../helpers");
10
- exports.Bindings = function (_a) {
11
- var _b = _a.name, name = _b === void 0 ? 'Bindings' : _b, bindings = _a.bindings;
12
- if (!bindings || !Object.keys(bindings).length) {
10
+ var Bindings = function (_a) {
11
+ var _b = _a.name, name = _b === void 0 ? 'Binding specific information' : _b, bindings = _a.bindings;
12
+ if (!bindings || bindings.isEmpty()) {
13
13
  return null;
14
14
  }
15
- var schema = helpers_1.SchemaHelpers.jsonToSchema(bindings);
16
- return react_1.default.createElement(Schema_1.Schema, { schemaName: name, schema: schema });
15
+ var renderedBindings = bindings.all().map(function (binding) {
16
+ var bindingValue = binding.value();
17
+ var schema = helpers_1.SchemaHelpers.jsonToSchema(bindingValue);
18
+ var protocol = binding.protocol();
19
+ var schemaName = (react_1.default.createElement("div", { className: "inline-block text-sm" },
20
+ react_1.default.createElement("span", null, name),
21
+ react_1.default.createElement("span", { className: "bg-teal-500 font-bold no-underline text-white uppercase rounded mx-2 px-2 py-1 text-xs" }, protocol)));
22
+ return (schema !== undefined && (react_1.default.createElement(Schema_1.Schema, { schemaName: schemaName, schema: schema, key: protocol, onlyTitle: true })));
23
+ });
24
+ return react_1.default.createElement(react_1.default.Fragment, null, renderedBindings);
17
25
  };
26
+ exports.Bindings = Bindings;
18
27
  //# sourceMappingURL=Bindings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Bindings.js","sourceRoot":"","sources":["../../../src/components/Bindings.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAE1B,mCAAkC;AAElC,sCAA2C;AAO9B,QAAA,QAAQ,GAAmC,UAAC,EAGxD;QAFC,YAAiB,EAAjB,IAAI,mBAAG,UAAU,KAAA,EACjB,QAAQ,cAAA;IAER,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE;QAC9C,OAAO,IAAI,CAAC;KACb;IAED,IAAM,MAAM,GAAG,uBAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IACpD,OAAO,8BAAC,eAAM,IAAC,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAI,CAAC;AACtD,CAAC,CAAC"}
1
+ {"version":3,"file":"Bindings.js","sourceRoot":"","sources":["../../../src/components/Bindings.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAC1B,mCAAkC;AAClC,sCAA2C;AAQpC,IAAM,QAAQ,GAAmC,UAAC,EAGxD;QAFC,YAAqC,EAArC,IAAI,mBAAG,8BAA8B,KAAA,EACrC,QAAQ,cAAA;IAER,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE;QACnC,OAAO,IAAI,CAAC;KACb;IAED,IAAM,gBAAgB,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,UAAA,OAAO;QACjD,IAAM,YAAY,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;QACrC,IAAM,MAAM,GAAG,uBAAa,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QACxD,IAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;QACpC,IAAM,UAAU,GAAG,CACjB,uCAAK,SAAS,EAAC,sBAAsB;YACnC,4CAAO,IAAI,CAAQ;YACnB,wCAAM,SAAS,EAAC,wFAAwF,IACrG,QAAQ,CACJ,CACH,CACP,CAAC;QACF,OAAO,CACL,MAAM,KAAK,SAAS,IAAI,CACtB,8BAAC,eAAM,IACL,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,QAAQ,EACb,SAAS,EAAE,IAAI,GACf,CACH,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,8DAAG,gBAAgB,CAAI,CAAC;AACjC,CAAC,CAAC;AAjCW,QAAA,QAAQ,YAiCnB","sourcesContent":["import React from 'react';\nimport { Schema } from './Schema';\nimport { SchemaHelpers } from '../helpers';\nimport { BindingsInterface } from '@asyncapi/parser';\n\ninterface Props {\n name?: string;\n bindings: BindingsInterface;\n}\n\nexport const Bindings: React.FunctionComponent<Props> = ({\n name = 'Binding specific information',\n bindings,\n}) => {\n if (!bindings || bindings.isEmpty()) {\n return null;\n }\n\n const renderedBindings = bindings.all().map(binding => {\n const bindingValue = binding.value();\n const schema = SchemaHelpers.jsonToSchema(bindingValue);\n const protocol = binding.protocol();\n const schemaName = (\n <div className=\"inline-block text-sm\">\n <span>{name}</span>\n <span className=\"bg-teal-500 font-bold no-underline text-white uppercase rounded mx-2 px-2 py-1 text-xs\">\n {protocol}\n </span>\n </div>\n );\n return (\n schema !== undefined && (\n <Schema\n schemaName={schemaName}\n schema={schema}\n key={protocol}\n onlyTitle={true}\n />\n )\n );\n });\n\n return <>{renderedBindings}</>;\n};\n"]}
@@ -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
- exports.CollapseButton = function (_a) {
31
- var chevronProps = _a.chevronProps, children = _a.children, rest = __rest(_a, ["chevronProps", "children"]);
32
- return (react_1.default.createElement("button", __assign({}, rest, { className: "focus:outline-none " + rest.className }),
33
- children,
34
- react_1.default.createElement("svg", __assign({ version: "1.1", viewBox: "0 0 24 24", x: "0", xmlns: "http://www.w3.org/2000/svg", y: "0" }, chevronProps, { className: "inline-block align-baseline cursor-pointer -mb-1 w-5 transform transition-transform duration-150 ease-linear " + ((chevronProps === null || chevronProps === void 0 ? void 0 : chevronProps.className) ||
35
- '') }),
36
- react_1.default.createElement("polygon", { points: "17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 " }))));
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" })));
37
34
  };
35
+ var CollapseButton = function (_a) {
36
+ var chevronProps = _a.chevronProps, _b = _a.expanded, expanded = _b === void 0 ? false : _b, children = _a.children, rest = __rest(_a, ["chevronProps", "expanded", "children"]);
37
+ return (react_1.default.createElement("button", __assign({}, rest, { className: "focus:outline-none ".concat(rest.className), type: "button" }),
38
+ react_1.default.createElement("div", { className: "inline-block" }, children),
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) || '') }))));
40
+ };
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;AAMtD,QAAA,cAAc,GAAmC,UAAC,EAI9D;IAHC,IAAA,YAAY,kBAAA,EACZ,QAAQ,cAAA,EACL,IAAI,cAHsD,4BAI9D,CADQ;IACH,OAAA,CACJ,qDAAY,IAAI,IAAE,SAAS,EAAE,wBAAsB,IAAI,CAAC,SAAW;QAChE,QAAQ;QACT,gDACE,OAAO,EAAC,KAAK,EACb,OAAO,EAAC,WAAW,EACnB,CAAC,EAAC,GAAG,EACL,KAAK,EAAC,4BAA4B,EAClC,CAAC,EAAC,GAAG,IACD,YAAY,IAChB,SAAS,EAAE,mHAAgH,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,SAAS;gBAChJ,EAAE,CAAE;YAEN,2CAAS,MAAM,EAAC,oDAAoD,GAAG,CACnE,CACC,CACV,CAAA;CAAA,CAAC"}
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"]}
@@ -7,14 +7,15 @@ exports.Extensions = void 0;
7
7
  var react_1 = __importDefault(require("react"));
8
8
  var Schema_1 = require("./Schema");
9
9
  var helpers_1 = require("../helpers");
10
- exports.Extensions = function (_a) {
10
+ var Extensions = function (_a) {
11
11
  var _b = _a.name, name = _b === void 0 ? 'Extensions' : _b, item = _a.item;
12
12
  var extensions = helpers_1.SchemaHelpers.getCustomExtensions(item);
13
13
  if (!extensions || !Object.keys(extensions).length) {
14
14
  return null;
15
15
  }
16
16
  var schema = helpers_1.SchemaHelpers.jsonToSchema(extensions);
17
- return (react_1.default.createElement("div", { className: "mt-2" },
18
- react_1.default.createElement(Schema_1.Schema, { schemaName: name, schema: schema })));
17
+ return (schema && (react_1.default.createElement("div", { className: "mt-2" },
18
+ react_1.default.createElement(Schema_1.Schema, { schemaName: name, schema: schema, onlyTitle: true }))));
19
19
  };
20
+ exports.Extensions = Extensions;
20
21
  //# sourceMappingURL=Extensions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Extensions.js","sourceRoot":"","sources":["../../../src/components/Extensions.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAE1B,mCAAkC;AAElC,sCAA2C;AAO9B,QAAA,UAAU,GAAmC,UAAC,EAG1D;QAFC,YAAmB,EAAnB,IAAI,mBAAG,YAAY,KAAA,EACnB,IAAI,UAAA;IAEJ,IAAM,UAAU,GAAG,uBAAa,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC3D,IAAI,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE;QAClD,OAAO,IAAI,CAAC;KACb;IAED,IAAM,MAAM,GAAG,uBAAa,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IACtD,OAAO,CACL,uCAAK,SAAS,EAAC,MAAM;QACnB,8BAAC,eAAM,IAAC,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAI,CACxC,CACP,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"Extensions.js","sourceRoot":"","sources":["../../../src/components/Extensions.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAE1B,mCAAkC;AAElC,sCAA2C;AAOpC,IAAM,UAAU,GAAmC,UAAC,EAG1D;QAFC,YAAmB,EAAnB,IAAI,mBAAG,YAAY,KAAA,EACnB,IAAI,UAAA;IAEJ,IAAM,UAAU,GAAG,uBAAa,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC3D,IAAI,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE;QAClD,OAAO,IAAI,CAAC;KACb;IAED,IAAM,MAAM,GAAG,uBAAa,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IACtD,OAAO,CACL,MAAM,IAAI,CACR,uCAAK,SAAS,EAAC,MAAM;QACnB,8BAAC,eAAM,IAAC,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,GAAI,CACzD,CACP,CACF,CAAC;AACJ,CAAC,CAAC;AAjBW,QAAA,UAAU,cAiBrB","sourcesContent":["import React from 'react';\n\nimport { Schema } from './Schema';\n\nimport { SchemaHelpers } from '../helpers';\n\ninterface Props {\n name?: string;\n item: any;\n}\n\nexport const Extensions: React.FunctionComponent<Props> = ({\n name = 'Extensions',\n item,\n}) => {\n const extensions = SchemaHelpers.getCustomExtensions(item);\n if (!extensions || !Object.keys(extensions).length) {\n return null;\n }\n\n const schema = SchemaHelpers.jsonToSchema(extensions);\n return (\n schema && (\n <div className=\"mt-2\">\n <Schema schemaName={name} schema={schema} onlyTitle={true} />\n </div>\n )\n );\n};\n"]}
@@ -5,8 +5,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.Href = void 0;
7
7
  var react_1 = __importDefault(require("react"));
8
- exports.Href = function (_a) {
8
+ var Href = function (_a) {
9
9
  var href = _a.href, title = _a.title, className = _a.className, children = _a.children;
10
10
  return (react_1.default.createElement("a", { href: href, title: title, className: className, target: "_blank", rel: "nofollow noopener noreferrer" }, children));
11
11
  };
12
+ exports.Href = Href;
12
13
  //# sourceMappingURL=Href.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Href.js","sourceRoot":"","sources":["../../../src/components/Href.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAQb,QAAA,IAAI,GAAmC,UAAC,EAKpD;QAJC,IAAI,UAAA,EACJ,KAAK,WAAA,EACL,SAAS,eAAA,EACT,QAAQ,cAAA;IACJ,OAAA,CACJ,qCACE,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,8BAA8B,IAEjC,QAAQ,CACP,CACL;AAVK,CAUL,CAAC"}
1
+ {"version":3,"file":"Href.js","sourceRoot":"","sources":["../../../src/components/Href.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAQnB,IAAM,IAAI,GAAmC,UAAC,EAKpD;QAJC,IAAI,UAAA,EACJ,KAAK,WAAA,EACL,SAAS,eAAA,EACT,QAAQ,cAAA;IACJ,OAAA,CACJ,qCACE,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,8BAA8B,IAEjC,QAAQ,CACP,CACL;AAVK,CAUL,CAAC;AAfW,QAAA,IAAI,QAef","sourcesContent":["import React from 'react';\n\ninterface Props {\n href: string;\n title?: string;\n className?: string;\n}\n\nexport const Href: React.FunctionComponent<Props> = ({\n href,\n title,\n className,\n children,\n}) => (\n <a\n href={href}\n title={title}\n className={className}\n target=\"_blank\"\n rel=\"nofollow noopener noreferrer\"\n >\n {children}\n </a>\n);\n"]}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.JSONSnippet = void 0;
7
+ var react_1 = __importDefault(require("react"));
8
+ var index_1 = require("./index");
9
+ var JSONSnippet = function (_a) {
10
+ var snippet = _a.snippet;
11
+ if (typeof snippet === 'object') {
12
+ snippet = '```json\n' + JSON.stringify(snippet, undefined, 2) + '\n```';
13
+ }
14
+ return react_1.default.createElement(index_1.Markdown, null, snippet);
15
+ };
16
+ exports.JSONSnippet = JSONSnippet;
17
+ //# sourceMappingURL=JSONSnippet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JSONSnippet.js","sourceRoot":"","sources":["../../../src/components/JSONSnippet.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAE1B,iCAAmC;AAM5B,IAAM,WAAW,GAAmC,UAAC,EAAW;QAAT,OAAO,aAAA;IACnE,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAE/B,OAAO,GAAG,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC;KACzE;IAED,OAAO,8BAAC,gBAAQ,QAAE,OAAO,CAAY,CAAC;AACxC,CAAC,CAAC;AAPW,QAAA,WAAW,eAOtB","sourcesContent":["import React from 'react';\n\nimport { Markdown } from './index';\n\ninterface Props {\n snippet: string | object;\n}\n\nexport const JSONSnippet: React.FunctionComponent<Props> = ({ snippet }) => {\n if (typeof snippet === 'object') {\n // change code to markdown's json code block\n snippet = '```json\\n' + JSON.stringify(snippet, undefined, 2) + '\\n```';\n }\n\n return <Markdown>{snippet}</Markdown>;\n};\n"]}
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.Markdown = void 0;
7
7
  var react_1 = __importDefault(require("react"));
8
8
  var isomorphic_dompurify_1 = require("isomorphic-dompurify");
9
- var marked_1 = __importDefault(require("marked"));
10
- exports.Markdown = function (_a) {
9
+ var helpers_1 = require("../helpers");
10
+ var Markdown = function (_a) {
11
11
  var children = _a.children;
12
12
  if (!children) {
13
13
  return null;
@@ -15,7 +15,7 @@ exports.Markdown = function (_a) {
15
15
  if (typeof children !== 'string') {
16
16
  return react_1.default.createElement(react_1.default.Fragment, null, children);
17
17
  }
18
- var html = marked_1.default(children);
19
- return (react_1.default.createElement("div", { className: "prose max-w-max text-sm", dangerouslySetInnerHTML: { __html: isomorphic_dompurify_1.sanitize(html) } }));
18
+ return (react_1.default.createElement("div", { className: "prose max-w-none text-sm", dangerouslySetInnerHTML: { __html: (0, isomorphic_dompurify_1.sanitize)((0, helpers_1.renderMarkdown)(children)) } }));
20
19
  };
20
+ exports.Markdown = Markdown;
21
21
  //# sourceMappingURL=Markdown.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Markdown.js","sourceRoot":"","sources":["../../../src/components/Markdown.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAC1B,6DAAgD;AAChD,kDAA4B;AAEf,QAAA,QAAQ,GAA4B,UAAC,EAAY;QAAV,QAAQ,cAAA;IAC1D,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,IAAI,CAAC;KACb;IACD,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;QAChC,OAAO,8DAAG,QAAQ,CAAI,CAAC;KACxB;IAED,IAAM,IAAI,GAAG,gBAAM,CAAC,QAAQ,CAAC,CAAC;IAC9B,OAAO,CACL,uCACE,SAAS,EAAC,yBAAyB,EACnC,uBAAuB,EAAE,EAAE,MAAM,EAAE,+BAAQ,CAAC,IAAI,CAAC,EAAE,GACnD,CACH,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"Markdown.js","sourceRoot":"","sources":["../../../src/components/Markdown.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAC1B,6DAAgD;AAEhD,sCAA4C;AAErC,IAAM,QAAQ,GAA4B,UAAC,EAAY;QAAV,QAAQ,cAAA;IAC1D,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,IAAI,CAAC;KACb;IACD,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;QAChC,OAAO,8DAAG,QAAQ,CAAI,CAAC;KACxB;IAED,OAAO,CACL,uCACE,SAAS,EAAC,0BAA0B,EACpC,uBAAuB,EAAE,EAAE,MAAM,EAAE,IAAA,+BAAQ,EAAC,IAAA,wBAAc,EAAC,QAAQ,CAAC,CAAC,EAAE,GACvE,CACH,CAAC;AACJ,CAAC,CAAC;AAdW,QAAA,QAAQ,YAcnB","sourcesContent":["import React from 'react';\nimport { sanitize } from 'isomorphic-dompurify';\n\nimport { renderMarkdown } from '../helpers';\n\nexport const Markdown: React.FunctionComponent = ({ children }) => {\n if (!children) {\n return null;\n }\n if (typeof children !== 'string') {\n return <>{children}</>;\n }\n\n return (\n <div\n className=\"prose max-w-none text-sm\"\n dangerouslySetInnerHTML={{ __html: sanitize(renderMarkdown(children)) }}\n />\n );\n};\n"]}
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -23,37 +27,50 @@ exports.Schema = void 0;
23
27
  var react_1 = __importStar(require("react"));
24
28
  var index_1 = require("./index");
25
29
  var helpers_1 = require("../helpers");
26
- var SchemaContext = react_1.default.createContext({ reverse: false });
27
- exports.Schema = function (_a) {
28
- var schemaName = _a.schemaName, schema = _a.schema, _b = _a.required, required = _b === void 0 ? false : _b, _c = _a.isCircular, isCircular = _c === void 0 ? false : _c, _d = _a.isPatternProperty, isPatternProperty = _d === void 0 ? false : _d, _e = _a.isProperty, isProperty = _e === void 0 ? false : _e, dependentRequired = _a.dependentRequired, _f = _a.expanded, expanded = _f === void 0 ? false : _f;
29
- var reverse = react_1.useContext(SchemaContext).reverse;
30
- var _g = react_1.useState(expanded), expand = _g[0], setExpand = _g[1];
31
- if (!schema || (schemaName === null || schemaName === void 0 ? void 0 : schemaName.startsWith('x-parser-')) || (schemaName === null || schemaName === void 0 ? void 0 : schemaName.startsWith('x-schema-private-'))) {
30
+ var SchemaContext = react_1.default.createContext({
31
+ reverse: false,
32
+ deepExpanded: false,
33
+ });
34
+ var Schema = function (_a) {
35
+ var _b, _c, _d, _e, _f;
36
+ var schemaName = _a.schemaName, schema = _a.schema, _g = _a.required, required = _g === void 0 ? false : _g, _h = _a.isPatternProperty, isPatternProperty = _h === void 0 ? false : _h, _j = _a.isProperty, isProperty = _j === void 0 ? false : _j, _k = _a.isCircular, isCircular = _k === void 0 ? false : _k, dependentRequired = _a.dependentRequired, _l = _a.expanded, propExpanded = _l === void 0 ? false : _l, _m = _a.onlyTitle, onlyTitle = _m === void 0 ? false : _m;
37
+ var _o = (0, react_1.useContext)(SchemaContext), reverse = _o.reverse, deepExpanded = _o.deepExpanded;
38
+ var _p = (0, react_1.useState)(propExpanded), expanded = _p[0], setExpanded = _p[1];
39
+ var _q = (0, react_1.useState)(false), deepExpand = _q[0], setDeepExpand = _q[1];
40
+ (0, react_1.useEffect)(function () {
41
+ setDeepExpand(deepExpanded);
42
+ }, [deepExpanded, setDeepExpand]);
43
+ (0, react_1.useEffect)(function () {
44
+ setExpanded(deepExpand);
45
+ }, [deepExpand, setExpanded]);
46
+ if (!schema ||
47
+ (typeof schemaName === 'string' &&
48
+ ((schemaName === null || schemaName === void 0 ? void 0 : schemaName.startsWith('x-parser-')) ||
49
+ (schemaName === null || schemaName === void 0 ? void 0 : schemaName.startsWith('x-schema-private-'))))) {
32
50
  return null;
33
51
  }
34
52
  var dependentSchemas = helpers_1.SchemaHelpers.getDependentSchemas(schema);
35
53
  var constraints = helpers_1.SchemaHelpers.humanizeConstraints(schema);
36
54
  var externalDocs = schema.externalDocs();
37
- var renderType = schema.ext(helpers_1.SchemaHelpers.extRenderType) !== false;
38
- var rawValue = schema.ext(helpers_1.SchemaHelpers.extRawValue) === true;
39
- var parameterLocation = schema.ext(helpers_1.SchemaHelpers.extParameterLocation);
55
+ var rawValueExt = schema.extensions().get(helpers_1.SchemaHelpers.extRawValue);
56
+ var rawValue = (rawValueExt === null || rawValueExt === void 0 ? void 0 : rawValueExt.value()) === true;
57
+ var parameterLocationExt = schema
58
+ .extensions()
59
+ .get(helpers_1.SchemaHelpers.extParameterLocation);
60
+ var parameterLocation = (parameterLocationExt === null || parameterLocationExt === void 0 ? void 0 : parameterLocationExt.value()) === true;
61
+ var schemaType = helpers_1.SchemaHelpers.toSchemaType(schema);
40
62
  var isExpandable = helpers_1.SchemaHelpers.isExpandable(schema) || dependentSchemas;
41
- isCircular = isCircular || schema.ext('x-parser-circular') || false;
42
- var uid = schema.uid();
43
- if (isCircular &&
44
- !uid &&
45
- schema.items() &&
46
- typeof schema.items().uid === 'function') {
47
- uid = schema.items().uid();
48
- }
49
- return (react_1.default.createElement(SchemaContext.Provider, { value: { reverse: !reverse } },
63
+ isCircular = isCircular || schema.isCircular() || false;
64
+ var uid = schema.$id();
65
+ var styledSchemaName = isProperty ? 'italic' : '';
66
+ var renderedSchemaName = typeof schemaName === 'string' ? (react_1.default.createElement("span", { className: "break-anywhere text-sm ".concat(styledSchemaName) }, schemaName)) : (schemaName);
67
+ return (react_1.default.createElement(SchemaContext.Provider, { value: { reverse: !reverse, deepExpanded: deepExpand } },
50
68
  react_1.default.createElement("div", null,
51
69
  react_1.default.createElement("div", { className: "flex py-2" },
52
- react_1.default.createElement("div", { className: "w-3/12 min-w-min mr-2" },
53
- isExpandable && !isCircular ? (react_1.default.createElement(index_1.CollapseButton, { onClick: function () { return setExpand(function (prev) { return !prev; }); }, chevronProps: {
54
- className: expand ? '-rotate-180' : '-rotate-90',
55
- } },
56
- react_1.default.createElement("span", { className: "break-words text-sm " + (isProperty ? 'italic' : '') }, schemaName))) : (react_1.default.createElement("span", { className: "break-words text-sm " + (isProperty ? 'italic' : '') }, schemaName)),
70
+ react_1.default.createElement("div", { className: "".concat(onlyTitle ? '' : 'min-w-1/4', " mr-2") },
71
+ isExpandable && !isCircular ? (react_1.default.createElement(react_1.default.Fragment, null,
72
+ react_1.default.createElement(index_1.CollapseButton, { onClick: function () { return setExpanded(function (prev) { return !prev; }); }, expanded: expanded }, renderedSchemaName),
73
+ react_1.default.createElement("button", { type: "button", onClick: function () { return setDeepExpand(function (prev) { return !prev; }); }, className: "ml-1 text-sm text-gray-500" }, deepExpand ? 'Collapse all' : 'Expand all'))) : (react_1.default.createElement("span", { className: "break-anywhere text-sm ".concat(isProperty ? 'italic' : '') }, schemaName)),
57
74
  isPatternProperty && (react_1.default.createElement("div", { className: "text-gray-500 text-xs italic" }, "(pattern property)")),
58
75
  required && react_1.default.createElement("div", { className: "text-red-600 text-xs" }, "required"),
59
76
  dependentRequired && (react_1.default.createElement(react_1.default.Fragment, null,
@@ -63,16 +80,14 @@ exports.Schema = function (_a) {
63
80
  schema.writeOnly() && (react_1.default.createElement("div", { className: "text-gray-500 text-xs" }, "write-only")),
64
81
  schema.readOnly() && (react_1.default.createElement("div", { className: "text-gray-500 text-xs" }, "read-only"))),
65
82
  rawValue ? (react_1.default.createElement("div", null,
66
- react_1.default.createElement("div", { className: "text-sm" }, schema.const()))) : (react_1.default.createElement("div", null,
83
+ react_1.default.createElement("div", { className: "text-sm" }, helpers_1.SchemaHelpers.prettifyValue(schema.const(), false)))) : (react_1.default.createElement("div", null,
67
84
  react_1.default.createElement("div", null,
68
- renderType && (react_1.default.createElement("div", { className: "capitalize text-sm text-teal-500 font-bold inline-block mr-2" }, isCircular
69
- ? helpers_1.SchemaHelpers.toSchemaType(schema) + " [CIRCULAR]"
70
- : helpers_1.SchemaHelpers.toSchemaType(schema))),
85
+ react_1.default.createElement("div", { className: "capitalize text-sm text-teal-500 font-bold inline-block mr-2" }, isCircular ? "".concat(schemaType, " [CIRCULAR]") : schemaType),
71
86
  react_1.default.createElement("div", { className: "inline-block" },
72
87
  schema.format() && (react_1.default.createElement("span", { className: "bg-yellow-600 font-bold no-underline text-white rounded lowercase mr-2 p-1 text-xs" },
73
88
  "format: ",
74
89
  schema.format())),
75
- schema.pattern() !== undefined && (react_1.default.createElement("span", { className: "bg-yellow-600 font-bold no-underline text-white rounded lowercase mr-2 p-1 text-xs" },
90
+ schema.pattern() !== undefined && (react_1.default.createElement("span", { className: "bg-yellow-600 font-bold no-underline text-white rounded mr-2 p-1 text-xs" },
76
91
  "must match: ",
77
92
  schema.pattern())),
78
93
  schema.contentMediaType() !== undefined && (react_1.default.createElement("span", { className: "bg-yellow-600 font-bold no-underline text-white rounded lowercase mr-2 p-1 text-xs" },
@@ -86,7 +101,7 @@ exports.Schema = function (_a) {
86
101
  uid && !uid.startsWith('<anonymous-') && (react_1.default.createElement("span", { className: "border text-orange-600 rounded mr-2 p-1 text-xs" },
87
102
  "uid: ",
88
103
  uid))),
89
- schema.hasDescription() && (react_1.default.createElement("div", null,
104
+ schema.description() !== undefined && (react_1.default.createElement("div", null,
90
105
  react_1.default.createElement(index_1.Markdown, null, schema.description()))),
91
106
  schema.default() !== undefined && (react_1.default.createElement("div", { className: "text-xs" },
92
107
  "Default value:",
@@ -96,8 +111,8 @@ exports.Schema = function (_a) {
96
111
  react_1.default.createElement("span", { className: "border inline-block text-orange-600 rounded ml-1 py-0 px-2" }, helpers_1.SchemaHelpers.prettifyValue(schema.const())))),
97
112
  schema.enum() && (react_1.default.createElement("ul", { className: "text-xs" },
98
113
  "Allowed values:",
99
- ' ',
100
- schema.enum().map(function (e, idx) { return (react_1.default.createElement("li", { key: idx, className: "border inline-block text-orange-600 rounded ml-1 py-0 px-2" },
114
+ ' ', (_b = schema.enum()) === null || _b === void 0 ? void 0 :
115
+ _b.map(function (e, idx) { return (react_1.default.createElement("li", { key: idx, className: "border inline-block text-orange-600 rounded ml-1 py-0 px-2" },
101
116
  react_1.default.createElement("span", null, helpers_1.SchemaHelpers.prettifyValue(e)))); }))),
102
117
  parameterLocation && (react_1.default.createElement("div", { className: "text-xs" },
103
118
  "Parameter location:",
@@ -107,24 +122,21 @@ exports.Schema = function (_a) {
107
122
  react_1.default.createElement(index_1.Href, { href: externalDocs.url(), title: externalDocs.description() || '' }, "Documentation"))),
108
123
  schema.examples() && (react_1.default.createElement("ul", { className: "text-xs" },
109
124
  "Examples values:",
110
- ' ',
111
- schema.examples().map(function (e, idx) { return (react_1.default.createElement("li", { key: idx, className: "border inline-block text-orange-600 rounded ml-1 py-0 px-2" },
125
+ ' ', (_c = schema.examples()) === null || _c === void 0 ? void 0 :
126
+ _c.map(function (e, idx) { return (react_1.default.createElement("li", { key: idx, className: "border inline-block text-orange-600 rounded ml-1 py-0 px-2 break-all" },
112
127
  react_1.default.createElement("span", null, helpers_1.SchemaHelpers.prettifyValue(e)))); }))))))),
113
- isCircular || !isExpandable ? null : (react_1.default.createElement("div", { className: "rounded p-4 py-2 bg-gray-100 border bg-gray-100 " + (reverse ? 'bg-gray-200' : '') + " " + (expand ? 'block' : 'hidden') },
128
+ isCircular || !isExpandable ? null : (react_1.default.createElement("div", { className: "rounded p-4 py-2 border bg-gray-100 ".concat(reverse ? 'bg-gray-200' : '', " ").concat(expanded ? 'block' : 'hidden') },
114
129
  react_1.default.createElement(SchemaProperties, { schema: schema }),
115
130
  react_1.default.createElement(SchemaItems, { schema: schema }),
116
131
  schema.oneOf() &&
117
- schema
118
- .oneOf()
119
- .map(function (s, idx) { return (react_1.default.createElement(exports.Schema, { key: idx, schema: s, schemaName: idx === 0 ? 'Adheres to:' : 'Or to:' })); }),
132
+ ((_d = schema
133
+ .oneOf()) === null || _d === void 0 ? void 0 : _d.map(function (s, idx) { return (react_1.default.createElement(exports.Schema, { key: idx, schema: s, schemaName: idx === 0 ? 'Adheres to:' : 'Or to:' })); })),
120
134
  schema.anyOf() &&
121
- schema
122
- .anyOf()
123
- .map(function (s, idx) { return (react_1.default.createElement(exports.Schema, { key: idx, schema: s, schemaName: idx === 0 ? 'Can adhere to:' : 'Or to:' })); }),
135
+ ((_e = schema
136
+ .anyOf()) === null || _e === void 0 ? void 0 : _e.map(function (s, idx) { return (react_1.default.createElement(exports.Schema, { key: idx, schema: s, schemaName: idx === 0 ? 'Can adhere to:' : 'Or to:' })); })),
124
137
  schema.allOf() &&
125
- schema
126
- .allOf()
127
- .map(function (s, idx) { return (react_1.default.createElement(exports.Schema, { key: idx, schema: s, schemaName: idx === 0 ? 'Consists of:' : 'And with:' })); }),
138
+ ((_f = schema
139
+ .allOf()) === null || _f === void 0 ? void 0 : _f.map(function (s, idx) { return (react_1.default.createElement(exports.Schema, { key: idx, schema: s, schemaName: idx === 0 ? 'Consists of:' : 'And with:' })); })),
128
140
  schema.not() && (react_1.default.createElement(exports.Schema, { schema: schema.not(), schemaName: "Cannot adhere to:" })),
129
141
  schema.propertyNames() && (react_1.default.createElement(exports.Schema, { schema: schema.propertyNames(), schemaName: "Property names must adhere to:" })),
130
142
  schema.contains() && (react_1.default.createElement(exports.Schema, { schema: schema.contains(), schemaName: "Array must contain at least one of:" })),
@@ -136,33 +148,35 @@ exports.Schema = function (_a) {
136
148
  react_1.default.createElement(AdditionalProperties, { schema: schema }),
137
149
  react_1.default.createElement(AdditionalItems, { schema: schema }))))));
138
150
  };
151
+ exports.Schema = Schema;
139
152
  var SchemaProperties = function (_a) {
140
153
  var schema = _a.schema;
141
- var properties = schema.properties() || {};
142
- if (!Object.keys(properties)) {
154
+ var properties = schema.properties();
155
+ if (properties === undefined || !Object.keys(properties)) {
143
156
  return null;
144
157
  }
145
158
  var required = schema.required() || [];
146
159
  var patternProperties = schema.patternProperties();
147
- var circularProps = schema.circularProps() || [];
148
160
  return (react_1.default.createElement(react_1.default.Fragment, null,
149
161
  Object.entries(properties).map(function (_a) {
150
162
  var propertyName = _a[0], property = _a[1];
151
- return (react_1.default.createElement(exports.Schema, { schema: property, schemaName: propertyName, required: required.includes(propertyName), isCircular: circularProps.includes(propertyName), isProperty: true, dependentRequired: helpers_1.SchemaHelpers.getDependentRequired(propertyName, schema), key: propertyName }));
163
+ return (react_1.default.createElement(exports.Schema, { schema: property, schemaName: propertyName, required: required.includes(propertyName), isProperty: true, isCircular: property.isCircular(), dependentRequired: helpers_1.SchemaHelpers.getDependentRequired(propertyName, schema), key: propertyName }));
152
164
  }),
153
- Object.entries(patternProperties).map(function (_a) {
165
+ Object.entries(patternProperties || {}).map(function (_a) {
154
166
  var propertyName = _a[0], property = _a[1];
155
- return (react_1.default.createElement(exports.Schema, { schema: property, schemaName: propertyName, isCircular: circularProps.includes(propertyName), isPatternProperty: true, isProperty: true, key: propertyName }));
167
+ return (react_1.default.createElement(exports.Schema, { schema: property, schemaName: propertyName, isPatternProperty: true, isProperty: true, isCircular: property.isCircular(), key: propertyName }));
156
168
  })));
157
169
  };
158
170
  var AdditionalProperties = function (_a) {
171
+ var _b;
159
172
  var schema = _a.schema;
160
- if (schema.ext(helpers_1.SchemaHelpers.extRenderAdditionalInfo) === false) {
173
+ if (((_b = schema
174
+ .extensions()
175
+ .get(helpers_1.SchemaHelpers.extRenderAdditionalInfo)) === null || _b === void 0 ? void 0 : _b.value()) === false) {
161
176
  return null;
162
177
  }
163
178
  var type = schema.type();
164
- type = Array.isArray(type) ? type : [type];
165
- if (!type.includes('object')) {
179
+ if (type === undefined || !type.includes('object')) {
166
180
  return null;
167
181
  }
168
182
  var additionalProperties = schema.additionalProperties();
@@ -180,27 +194,30 @@ var AdditionalProperties = function (_a) {
180
194
  var SchemaItems = function (_a) {
181
195
  var schema = _a.schema;
182
196
  var type = schema.type();
183
- type = Array.isArray(type) ? type : [type];
184
- if (!type.includes('array')) {
197
+ if (type === undefined || !type.includes('array')) {
185
198
  return null;
186
199
  }
187
200
  var items = schema.items();
188
- if (items && !Array.isArray(items) && items.properties()) {
201
+ if (items &&
202
+ !Array.isArray(items) &&
203
+ Object.keys(items.properties() || {}).length) {
189
204
  return react_1.default.createElement(SchemaProperties, { schema: items });
190
205
  }
191
206
  else if (Array.isArray(items)) {
192
- return (react_1.default.createElement(react_1.default.Fragment, null, items.map(function (item, idx) { return (react_1.default.createElement(exports.Schema, { schema: item, schemaName: idx + 1 + " item:", key: idx })); })));
207
+ return (react_1.default.createElement(react_1.default.Fragment, null, items.map(function (item, idx) { return (react_1.default.createElement(exports.Schema, { schema: item, schemaName: "".concat(idx + 1, " item:"), key: idx })); })));
193
208
  }
194
209
  return react_1.default.createElement(exports.Schema, { schema: items, schemaName: "Items:" });
195
210
  };
196
211
  var AdditionalItems = function (_a) {
212
+ var _b;
197
213
  var schema = _a.schema;
198
- if (schema.ext(helpers_1.SchemaHelpers.extRenderAdditionalInfo) === false) {
214
+ if (((_b = schema
215
+ .extensions()
216
+ .get(helpers_1.SchemaHelpers.extRenderAdditionalInfo)) === null || _b === void 0 ? void 0 : _b.value()) === false) {
199
217
  return null;
200
218
  }
201
219
  var type = schema.type();
202
- type = Array.isArray(type) ? type : [type];
203
- if (!type.includes('array')) {
220
+ if (type === undefined || !type.includes('array')) {
204
221
  return null;
205
222
  }
206
223
  if (!Array.isArray(schema.items())) {
@@ -1 +1 @@
1
- {"version":3,"file":"Schema.js","sourceRoot":"","sources":["../../../src/components/Schema.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Schema.js","sourceRoot":"","sources":["../../../src/components/Schema.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState, useEffect, useContext } from 'react';\nimport { SchemaInterface } from '@asyncapi/parser';\n\nimport { Href, CollapseButton, Markdown, Extensions } from './index';\nimport { SchemaHelpers } from '../helpers';\n\ninterface Props {\n schemaName?: React.ReactNode;\n schema?: SchemaInterface;\n required?: boolean;\n isPatternProperty?: boolean;\n isProperty?: boolean;\n isCircular?: boolean;\n dependentRequired?: string[];\n expanded?: boolean;\n onlyTitle?: boolean;\n}\n\nconst SchemaContext = React.createContext({\n reverse: false,\n deepExpanded: false,\n});\n\nexport const Schema: React.FunctionComponent<Props> = ({\n schemaName,\n schema,\n required = false,\n isPatternProperty = false,\n isProperty = false,\n isCircular = false,\n dependentRequired,\n expanded: propExpanded = false,\n onlyTitle = false,\n}) => {\n const { reverse, deepExpanded } = useContext(SchemaContext);\n const [expanded, setExpanded] = useState(propExpanded);\n const [deepExpand, setDeepExpand] = useState(false);\n\n useEffect(() => {\n setDeepExpand(deepExpanded);\n }, [deepExpanded, setDeepExpand]);\n\n useEffect(() => {\n setExpanded(deepExpand);\n }, [deepExpand, setExpanded]);\n\n if (\n !schema ||\n (typeof schemaName === 'string' &&\n (schemaName?.startsWith('x-parser-') ||\n schemaName?.startsWith('x-schema-private-')))\n ) {\n return null;\n }\n\n const dependentSchemas = SchemaHelpers.getDependentSchemas(schema);\n\n const constraints = SchemaHelpers.humanizeConstraints(schema);\n const externalDocs = schema.externalDocs();\n\n const rawValueExt = schema.extensions().get(SchemaHelpers.extRawValue);\n const rawValue = rawValueExt?.value() === true;\n\n const parameterLocationExt = schema\n .extensions()\n .get(SchemaHelpers.extParameterLocation);\n const parameterLocation = parameterLocationExt?.value() === true;\n\n const schemaType = SchemaHelpers.toSchemaType(schema);\n const isExpandable = SchemaHelpers.isExpandable(schema) || dependentSchemas;\n\n isCircular = isCircular || schema.isCircular() || false;\n const uid = schema.$id();\n const styledSchemaName = isProperty ? 'italic' : '';\n const renderedSchemaName =\n typeof schemaName === 'string' ? (\n <span className={`break-anywhere text-sm ${styledSchemaName}`}>\n {schemaName}\n </span>\n ) : (\n schemaName\n );\n\n return (\n <SchemaContext.Provider\n value={{ reverse: !reverse, deepExpanded: deepExpand }}\n >\n <div>\n <div className=\"flex py-2\">\n <div className={`${onlyTitle ? '' : 'min-w-1/4'} mr-2`}>\n {isExpandable && !isCircular ? (\n <>\n <CollapseButton\n onClick={() => setExpanded(prev => !prev)}\n expanded={expanded}\n >\n {renderedSchemaName}\n </CollapseButton>\n <button\n type=\"button\"\n onClick={() => setDeepExpand(prev => !prev)}\n className=\"ml-1 text-sm text-gray-500\"\n >\n {deepExpand ? 'Collapse all' : 'Expand all'}\n </button>\n </>\n ) : (\n <span\n className={`break-anywhere text-sm ${\n isProperty ? 'italic' : ''\n }`}\n >\n {schemaName}\n </span>\n )}\n {isPatternProperty && (\n <div className=\"text-gray-500 text-xs italic\">\n (pattern property)\n </div>\n )}\n {required && <div className=\"text-red-600 text-xs\">required</div>}\n {dependentRequired && (\n <>\n <div className=\"text-gray-500 text-xs\">\n required when defined:\n </div>\n <div className=\"text-red-600 text-xs\">\n {dependentRequired.join(', ')}\n </div>\n </>\n )}\n {schema.deprecated() && (\n <div className=\"text-red-600 text-xs\">deprecated</div>\n )}\n {schema.writeOnly() && (\n <div className=\"text-gray-500 text-xs\">write-only</div>\n )}\n {schema.readOnly() && (\n <div className=\"text-gray-500 text-xs\">read-only</div>\n )}\n </div>\n {rawValue ? (\n <div>\n <div className=\"text-sm\">\n {SchemaHelpers.prettifyValue(schema.const(), false)}\n </div>\n </div>\n ) : (\n <div>\n <div>\n <div className=\"capitalize text-sm text-teal-500 font-bold inline-block mr-2\">\n {isCircular ? `${schemaType} [CIRCULAR]` : schemaType}\n </div>\n <div className=\"inline-block\">\n {schema.format() && (\n <span className=\"bg-yellow-600 font-bold no-underline text-white rounded lowercase mr-2 p-1 text-xs\">\n format: {schema.format()}\n </span>\n )}\n\n {/* related to string */}\n {schema.pattern() !== undefined && (\n <span className=\"bg-yellow-600 font-bold no-underline text-white rounded mr-2 p-1 text-xs\">\n must match: {schema.pattern()}\n </span>\n )}\n {schema.contentMediaType() !== undefined && (\n <span className=\"bg-yellow-600 font-bold no-underline text-white rounded lowercase mr-2 p-1 text-xs\">\n media type: {schema.contentMediaType()}\n </span>\n )}\n {schema.contentEncoding() !== undefined && (\n <span className=\"bg-yellow-600 font-bold no-underline text-white rounded lowercase mr-2 p-1 text-xs\">\n encoding: {schema.contentEncoding()}\n </span>\n )}\n\n {/* constraints */}\n {!!constraints.length &&\n constraints.map(c => (\n <span\n className=\"bg-purple-600 font-bold no-underline text-white rounded lowercase mr-2 p-1 text-xs\"\n key={c}\n >\n {c}\n </span>\n ))}\n\n {uid && !uid.startsWith('<anonymous-') && (\n <span className=\"border text-orange-600 rounded mr-2 p-1 text-xs\">\n uid: {uid}\n </span>\n )}\n </div>\n\n {schema.description() !== undefined && (\n <div>\n <Markdown>{schema.description()}</Markdown>\n </div>\n )}\n\n {schema.default() !== undefined && (\n <div className=\"text-xs\">\n Default value:\n <span className=\"border inline-block text-orange-600 rounded ml-1 py-0 px-2\">\n {SchemaHelpers.prettifyValue(schema.default())}\n </span>\n </div>\n )}\n {schema.const() !== undefined && (\n <div className=\"text-xs\">\n Const:\n <span className=\"border inline-block text-orange-600 rounded ml-1 py-0 px-2\">\n {SchemaHelpers.prettifyValue(schema.const())}\n </span>\n </div>\n )}\n {schema.enum() && (\n <ul className=\"text-xs\">\n Allowed values:{' '}\n {schema.enum()?.map((e, idx) => (\n <li\n key={idx}\n className=\"border inline-block text-orange-600 rounded ml-1 py-0 px-2\"\n >\n <span>{SchemaHelpers.prettifyValue(e)}</span>\n </li>\n ))}\n </ul>\n )}\n {parameterLocation && (\n <div className=\"text-xs\">\n Parameter location:{' '}\n <span className=\"border text-orange-600 rounded mr-2 p-1 text-xs\">\n {parameterLocation}\n </span>\n </div>\n )}\n {externalDocs && (\n <span 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-2 py-0\">\n <Href\n href={externalDocs.url()}\n title={externalDocs.description() || ''}\n >\n Documentation\n </Href>\n </span>\n )}\n {schema.examples() && (\n <ul className=\"text-xs\">\n Examples values:{' '}\n {schema.examples()?.map((e, idx) => (\n <li\n key={idx}\n className=\"border inline-block text-orange-600 rounded ml-1 py-0 px-2 break-all\"\n >\n <span>{SchemaHelpers.prettifyValue(e)}</span>\n </li>\n ))}\n </ul>\n )}\n </div>\n </div>\n )}\n </div>\n\n {isCircular || !isExpandable ? null : (\n <div\n className={`rounded p-4 py-2 border bg-gray-100 ${\n reverse ? 'bg-gray-200' : ''\n } ${expanded ? 'block' : 'hidden'}`}\n >\n <SchemaProperties schema={schema} />\n <SchemaItems schema={schema} />\n\n {schema.oneOf() &&\n schema\n .oneOf()\n ?.map((s, idx) => (\n <Schema\n key={idx}\n schema={s}\n schemaName={idx === 0 ? 'Adheres to:' : 'Or to:'}\n />\n ))}\n {schema.anyOf() &&\n schema\n .anyOf()\n ?.map((s, idx) => (\n <Schema\n key={idx}\n schema={s}\n schemaName={idx === 0 ? 'Can adhere to:' : 'Or to:'}\n />\n ))}\n {schema.allOf() &&\n schema\n .allOf()\n ?.map((s, idx) => (\n <Schema\n key={idx}\n schema={s}\n schemaName={idx === 0 ? 'Consists of:' : 'And with:'}\n />\n ))}\n {schema.not() && (\n <Schema schema={schema.not()} schemaName=\"Cannot adhere to:\" />\n )}\n\n {schema.propertyNames() && (\n <Schema\n schema={schema.propertyNames()}\n schemaName=\"Property names must adhere to:\"\n />\n )}\n {schema.contains() && (\n <Schema\n schema={schema.contains()}\n schemaName=\"Array must contain at least one of:\"\n />\n )}\n\n {schema.if() && (\n <Schema schema={schema.if()} schemaName=\"If schema adheres to:\" />\n )}\n {schema.then() && (\n <Schema\n schema={schema.then()}\n schemaName=\"Then must adhere to:\"\n />\n )}\n {schema.else() && (\n <Schema schema={schema.else()} schemaName=\"Otherwise:\" />\n )}\n\n {dependentSchemas && (\n <Schema\n schema={dependentSchemas}\n schemaName=\"Dependent schemas:\"\n />\n )}\n\n <Extensions item={schema} />\n\n <AdditionalProperties schema={schema} />\n <AdditionalItems schema={schema} />\n </div>\n )}\n </div>\n </SchemaContext.Provider>\n );\n};\n\ninterface SchemaPropertiesProps {\n schema: SchemaInterface;\n}\n\nconst SchemaProperties: React.FunctionComponent<SchemaPropertiesProps> = ({\n schema,\n}) => {\n const properties = schema.properties();\n if (properties === undefined || !Object.keys(properties)) {\n return null;\n }\n\n const required = schema.required() || [];\n const patternProperties = schema.patternProperties();\n\n return (\n <>\n {Object.entries(properties).map(([propertyName, property]) => (\n <Schema\n schema={property}\n schemaName={propertyName}\n required={required.includes(propertyName)}\n isProperty={true}\n isCircular={property.isCircular()}\n dependentRequired={SchemaHelpers.getDependentRequired(\n propertyName,\n schema,\n )}\n key={propertyName}\n />\n ))}\n {Object.entries(patternProperties || {}).map(\n ([propertyName, property]) => (\n <Schema\n schema={property}\n schemaName={propertyName}\n isPatternProperty={true}\n isProperty={true}\n isCircular={property.isCircular()}\n key={propertyName}\n />\n ),\n )}\n </>\n );\n};\n\ninterface AdditionalPropertiesProps {\n schema: SchemaInterface;\n}\n\nconst AdditionalProperties: React.FunctionComponent<AdditionalPropertiesProps> = ({\n schema,\n}) => {\n if (\n schema\n .extensions()\n .get(SchemaHelpers.extRenderAdditionalInfo)\n ?.value() === false\n ) {\n return null;\n }\n\n const type = schema.type();\n if (type === undefined || !type.includes('object')) {\n return null;\n }\n\n const additionalProperties = schema.additionalProperties();\n if (additionalProperties === true || additionalProperties === undefined) {\n return (\n <p className=\"mt-2 text-xs text-gray-700\">\n Additional properties are allowed.\n </p>\n );\n }\n if (additionalProperties === false) {\n return (\n <p className=\"mt-2 text-xs text-gray-700\">\n Additional properties are <strong>NOT</strong> allowed.\n </p>\n );\n }\n return (\n <Schema schemaName=\"Additional properties:\" schema={additionalProperties} />\n );\n};\n\ninterface SchemaItemsProps {\n schema: SchemaInterface;\n}\n\nconst SchemaItems: React.FunctionComponent<SchemaItemsProps> = ({ schema }) => {\n const type = schema.type();\n if (type === undefined || !type.includes('array')) {\n return null;\n }\n const items = schema.items();\n\n // object in items\n if (\n items &&\n !Array.isArray(items) &&\n Object.keys(items.properties() || {}).length\n ) {\n return <SchemaProperties schema={items} />;\n } else if (Array.isArray(items)) {\n return (\n <>\n {items.map((item, idx) => (\n <Schema schema={item} schemaName={`${idx + 1} item:`} key={idx} />\n ))}\n </>\n );\n }\n return <Schema schema={items} schemaName=\"Items:\" />;\n};\n\ninterface AdditionalItemsProps {\n schema: SchemaInterface;\n}\n\nconst AdditionalItems: React.FunctionComponent<AdditionalItemsProps> = ({\n schema,\n}) => {\n if (\n schema\n .extensions()\n .get(SchemaHelpers.extRenderAdditionalInfo)\n ?.value() === false\n ) {\n return null;\n }\n\n const type = schema.type();\n if (type === undefined || !type.includes('array')) {\n return null;\n }\n if (!Array.isArray(schema.items())) {\n return null;\n }\n\n const additionalItems = schema.additionalItems() as any;\n if (additionalItems === true || additionalItems === undefined) {\n return (\n <p className=\"mt-2 text-xs text-gray-700\">\n Additional items are allowed.\n </p>\n );\n }\n if (additionalItems === false) {\n return (\n <p className=\"mt-2 text-xs text-gray-700\">\n Additional items are <strong>NOT</strong> allowed.\n </p>\n );\n }\n return <Schema schemaName=\"Additional items:\" schema={additionalItems} />;\n};\n"]}