@pb33f/cowboy-components 0.7.17 → 0.8.0

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 (540) hide show
  1. package/dist/_basePickBy-DtTwxTrV.js +151 -0
  2. package/dist/_baseUniq-C5Y4WFmx.js +614 -0
  3. package/dist/arc-a-7w7y90.js +83 -0
  4. package/dist/architecture-U656AL7Q-c_zxypEp.js +5 -0
  5. package/dist/architectureDiagram-VXUJARFQ-CIhQJ6xS.js +4661 -0
  6. package/dist/assets/elk-layout.worker-B71_NI2D.js +1 -0
  7. package/dist/assets/equalizer.worker-A8HFNy4g.js +1 -0
  8. package/dist/assets/graph-dependent.worker-BgWuMZsb.js +1 -0
  9. package/dist/assets/rule-documentation.worker-BCKuwSgZ.js +1 -0
  10. package/dist/assets/search-graph.worker-Cwqb-ecv.js +1 -0
  11. package/dist/assets/search-problems.worker-60kZqr0h.js +1 -0
  12. package/dist/blockDiagram-VD42YOAC-BLl5ID-l.js +2261 -0
  13. package/dist/c4Diagram-YG6GDRKO-BOGfb13x.js +1580 -0
  14. package/dist/channel-DYeI56io.js +5 -0
  15. package/dist/chunk-4BX2VUAB-BeHGB7ON.js +8 -0
  16. package/dist/chunk-55IACEB6-DgHUzWsw.js +8 -0
  17. package/dist/chunk-B4BG7PRW-Vs7GiQMf.js +1375 -0
  18. package/dist/chunk-DI55MBZ5-CHjdGXx0.js +1370 -0
  19. package/dist/chunk-FMBD7UC4-D-H9-bHN.js +19 -0
  20. package/dist/chunk-QN33PNHL-D7uE2r1Y.js +19 -0
  21. package/dist/chunk-QZHKN3VN-Cp3sUp7e.js +15 -0
  22. package/dist/chunk-TZMSLE5B-BmXGcXo9.js +64 -0
  23. package/dist/classDiagram-2ON5EDUG-9ilqiDEi.js +16 -0
  24. package/dist/classDiagram-v2-WZHVMYZB-9ilqiDEi.js +16 -0
  25. package/dist/clone-CybyMoa0.js +8 -0
  26. package/dist/components/attention-box/attention-box.css.js +8 -0
  27. package/dist/components/auth/login-button.js +1 -1
  28. package/dist/components/auth/login-panel.d.ts +4 -0
  29. package/dist/components/auth/login-panel.js +12 -4
  30. package/dist/components/auth/oauth-login.css.js +4 -0
  31. package/dist/components/auth/oauth-login.d.ts +2 -0
  32. package/dist/components/auth/oauth-login.js +12 -3
  33. package/dist/components/brokerable.d.ts +21 -0
  34. package/dist/components/brokerable.js +39 -0
  35. package/dist/components/bundle-toolbar/bundle-toolbar.css.js +110 -0
  36. package/dist/components/bundle-toolbar/bundle-toolbar.d.ts +21 -0
  37. package/dist/components/bundle-toolbar/bundle-toolbar.js +93 -0
  38. package/dist/components/changelog/changelog.css.js +2 -0
  39. package/dist/components/changelog/changelog.d.ts +2 -0
  40. package/dist/components/changelog/changelog.js +10 -1
  41. package/dist/components/changelog/release.css.js +5 -1
  42. package/dist/components/charts/beefy-chart.js +0 -2
  43. package/dist/components/charts/doughnut-chart.d.ts +5 -1
  44. package/dist/components/charts/doughnut-chart.js +20 -1
  45. package/dist/components/credit-ticker/credit-ticker.d.ts +3 -0
  46. package/dist/components/credit-ticker/credit-ticker.js +20 -4
  47. package/dist/components/details-drawer/details-drawer.css.d.ts +2 -0
  48. package/dist/components/{problem-list → details-drawer}/details-drawer.css.js +18 -3
  49. package/dist/components/details-drawer/generic-details-drawer.css.d.ts +1 -0
  50. package/dist/components/details-drawer/generic-details-drawer.css.js +219 -0
  51. package/dist/components/details-drawer/generic-details-drawer.d.ts +38 -0
  52. package/dist/components/details-drawer/generic-details-drawer.js +245 -0
  53. package/dist/components/details-drawer/handlers/diagram-handler.d.ts +35 -0
  54. package/dist/components/details-drawer/handlers/diagram-handler.js +248 -0
  55. package/dist/components/details-drawer/handlers/documentation-handler.d.ts +11 -0
  56. package/dist/components/details-drawer/handlers/documentation-handler.js +46 -0
  57. package/dist/components/details-drawer/handlers/example-handler.d.ts +18 -0
  58. package/dist/components/details-drawer/handlers/example-handler.js +146 -0
  59. package/dist/components/details-drawer/handlers/howto-handler.d.ts +11 -0
  60. package/dist/components/details-drawer/handlers/howto-handler.js +36 -0
  61. package/dist/components/details-drawer/handlers/markdown-handler.d.ts +12 -0
  62. package/dist/components/details-drawer/handlers/markdown-handler.js +54 -0
  63. package/dist/components/editor/editor-breadcrumb.css.js +1 -1
  64. package/dist/components/editor/editor.css.js +42 -0
  65. package/dist/components/editor/editor.d.ts +29 -3
  66. package/dist/components/editor/editor.js +495 -73
  67. package/dist/components/github/github-workspace-view.css.d.ts +2 -0
  68. package/dist/components/github/github-workspace-view.css.js +165 -0
  69. package/dist/components/github/github-workspace-view.d.ts +59 -0
  70. package/dist/components/github/github-workspace-view.js +525 -0
  71. package/dist/components/global-task/global-task-view.css.d.ts +2 -0
  72. package/dist/components/global-task/global-task-view.css.js +392 -0
  73. package/dist/components/global-task/global-task-view.d.ts +48 -0
  74. package/dist/components/global-task/global-task-view.js +359 -0
  75. package/dist/components/header/header.css.js +9 -1
  76. package/dist/components/http-method/http-method.css.js +5 -1
  77. package/dist/components/indeterminate-loader/indeterminate-loader.css.d.ts +2 -0
  78. package/dist/components/indeterminate-loader/indeterminate-loader.css.js +135 -0
  79. package/dist/components/indeterminate-loader/indeterminate-loader.d.ts +35 -0
  80. package/dist/components/indeterminate-loader/indeterminate-loader.js +201 -0
  81. package/dist/components/kv-view/kv-view.css.js +2 -0
  82. package/dist/components/kv-view/kv-view.js +0 -1
  83. package/dist/components/logo-wall/logo-wall.css.js +9 -0
  84. package/dist/components/manage-ruleset/manage-ruleset.css.js +14 -1
  85. package/dist/components/manage-ruleset/manage-ruleset.d.ts +1 -0
  86. package/dist/components/manage-ruleset/manage-ruleset.js +54 -22
  87. package/dist/components/manage-ruleset/rule-action.css.js +2 -0
  88. package/dist/components/manage-ruleset/rule-action.d.ts +10 -3
  89. package/dist/components/manage-ruleset/rule-action.js +118 -129
  90. package/dist/components/manage-ruleset/rule-input.d.ts +3 -1
  91. package/dist/components/manage-ruleset/rule-input.js +38 -34
  92. package/dist/components/manage-ruleset/rule.css.js +15 -1
  93. package/dist/components/manage-ruleset/rule.d.ts +4 -1
  94. package/dist/components/manage-ruleset/rule.js +44 -17
  95. package/dist/components/mermaid/mermaid-renderer.css.d.ts +1 -0
  96. package/dist/components/mermaid/mermaid-renderer.css.js +121 -0
  97. package/dist/components/mermaid/mermaid-renderer.d.ts +75 -0
  98. package/dist/components/mermaid/mermaid-renderer.js +485 -0
  99. package/dist/components/model-icon/doctor-icon.d.ts +9 -0
  100. package/dist/components/model-icon/doctor-icon.js +60 -0
  101. package/dist/components/model-icon/model-icon.d.ts +2 -1
  102. package/dist/components/model-icon/model-icon.js +13 -1
  103. package/dist/components/model-renderer/change.css.js +22 -8
  104. package/dist/components/model-renderer/changes.d.ts +1 -0
  105. package/dist/components/model-renderer/changes.js +47 -32
  106. package/dist/components/model-renderer/clickable-ref.d.ts +9 -3
  107. package/dist/components/model-renderer/clickable-ref.js +49 -10
  108. package/dist/components/model-renderer/components.d.ts +2 -0
  109. package/dist/components/model-renderer/components.js +196 -116
  110. package/dist/components/model-renderer/contact.js +2 -2
  111. package/dist/components/model-renderer/description.css.js +2 -0
  112. package/dist/components/model-renderer/document.d.ts +1 -0
  113. package/dist/components/model-renderer/document.js +14 -9
  114. package/dist/components/model-renderer/encoding.d.ts +2 -0
  115. package/dist/components/model-renderer/encoding.js +16 -7
  116. package/dist/components/model-renderer/example.css.js +5 -1
  117. package/dist/components/model-renderer/example.d.ts +4 -1
  118. package/dist/components/model-renderer/example.js +72 -118
  119. package/dist/components/model-renderer/extensions.d.ts +2 -0
  120. package/dist/components/model-renderer/extensions.js +11 -2
  121. package/dist/components/model-renderer/external-docs.d.ts +2 -0
  122. package/dist/components/model-renderer/external-docs.js +13 -4
  123. package/dist/components/model-renderer/has-changes.js +3 -3
  124. package/dist/components/model-renderer/header.d.ts +2 -0
  125. package/dist/components/model-renderer/header.js +27 -14
  126. package/dist/components/model-renderer/info.d.ts +2 -0
  127. package/dist/components/model-renderer/info.js +20 -7
  128. package/dist/components/model-renderer/link.d.ts +2 -0
  129. package/dist/components/model-renderer/link.js +27 -10
  130. package/dist/components/model-renderer/media-type.js +2 -2
  131. package/dist/components/model-renderer/model-badge.d.ts +11 -0
  132. package/dist/components/model-renderer/model-badge.js +59 -0
  133. package/dist/components/model-renderer/model-shared.css.js +14 -2
  134. package/dist/components/model-renderer/oauth-flows.js +4 -4
  135. package/dist/components/model-renderer/operation.d.ts +2 -1
  136. package/dist/components/model-renderer/operation.js +37 -16
  137. package/dist/components/model-renderer/param-location.js +3 -3
  138. package/dist/components/model-renderer/parameter.d.ts +2 -0
  139. package/dist/components/model-renderer/parameter.js +28 -15
  140. package/dist/components/model-renderer/path-item.d.ts +3 -0
  141. package/dist/components/model-renderer/path-item.js +52 -80
  142. package/dist/components/model-renderer/paths.d.ts +2 -0
  143. package/dist/components/model-renderer/paths.js +10 -3
  144. package/dist/components/model-renderer/problem-node.js +10 -10
  145. package/dist/components/model-renderer/rendered-node.css.js +35 -6
  146. package/dist/components/model-renderer/rendered-node.d.ts +14 -4
  147. package/dist/components/model-renderer/rendered-node.js +121 -58
  148. package/dist/components/model-renderer/rendered-property.js +4 -4
  149. package/dist/components/model-renderer/request-body.d.ts +2 -0
  150. package/dist/components/model-renderer/request-body.js +16 -9
  151. package/dist/components/model-renderer/response.d.ts +2 -0
  152. package/dist/components/model-renderer/response.js +35 -17
  153. package/dist/components/model-renderer/schema.css.js +10 -1
  154. package/dist/components/model-renderer/schema.d.ts +3 -2
  155. package/dist/components/model-renderer/schema.js +127 -129
  156. package/dist/components/model-renderer/security-scheme.js +3 -3
  157. package/dist/components/model-renderer/server.js +18 -8
  158. package/dist/components/model-renderer/tag.js +1 -1
  159. package/dist/components/model-tree/tree.css.js +21 -10
  160. package/dist/components/model-tree/tree.d.ts +39 -22
  161. package/dist/components/model-tree/tree.js +230 -167
  162. package/dist/components/paginator/paginator-navigator.css.js +9 -5
  163. package/dist/components/paginator/paginator-navigator.js +6 -6
  164. package/dist/components/paginator/paginator.css.js +2 -0
  165. package/dist/components/paginator/paginator.js +5 -8
  166. package/dist/components/percent-bar/percent-bar.css.js +133 -13
  167. package/dist/components/percent-bar/percent-bar.d.ts +2 -0
  168. package/dist/components/percent-bar/percent-bar.js +28 -24
  169. package/dist/components/premium-gate/premium-gate.css.d.ts +1 -0
  170. package/dist/components/premium-gate/premium-gate.css.js +117 -0
  171. package/dist/components/premium-gate/premium-gate.d.ts +49 -0
  172. package/dist/components/premium-gate/premium-gate.js +336 -0
  173. package/dist/components/problem-list/problem-list.css.js +72 -1
  174. package/dist/components/problem-list/problem-list.d.ts +17 -9
  175. package/dist/components/problem-list/problem-list.js +222 -226
  176. package/dist/components/problem-list/problem-mainview.css.js +12 -2
  177. package/dist/components/problem-list/problem-mainview.d.ts +3 -0
  178. package/dist/components/problem-list/problem-mainview.js +37 -17
  179. package/dist/components/problem-list/problem-toolbar.css.js +10 -7
  180. package/dist/components/problems-overview/diagnostic-evaluation.css.js +11 -1
  181. package/dist/components/problems-overview/diagnostic-evaluation.js +6 -7
  182. package/dist/components/problems-overview/document-statistic.css.js +6 -0
  183. package/dist/components/problems-overview/document-statistic.js +1 -1
  184. package/dist/components/problems-overview/problem-overview-group.js +5 -5
  185. package/dist/components/problems-overview/problem-statistic.css.js +24 -5
  186. package/dist/components/problems-overview/problem-statistic.js +15 -6
  187. package/dist/components/problems-overview/problem-statistics.css.js +4 -4
  188. package/dist/components/problems-overview/problem-statistics.js +29 -25
  189. package/dist/components/problems-overview/problems-overview.css.js +2 -2
  190. package/dist/components/property-view/property-view.css.js +2 -0
  191. package/dist/components/render-json-path/render-json-path.css.js +11 -3
  192. package/dist/components/render-json-path/render-json-path.js +3 -0
  193. package/dist/components/render-operation-path/render-operation-path.css.js +9 -0
  194. package/dist/components/render-operation-path/render-operation-path.js +7 -22
  195. package/dist/components/rodeo/rodeo.d.ts +1 -0
  196. package/dist/components/rodeo/rodeo.js +5 -0
  197. package/dist/components/rodeo/roundup.js +2 -2
  198. package/dist/components/rodeo/statistic.css.js +25 -2
  199. package/dist/components/rodeo/statistic.js +0 -4
  200. package/dist/components/shader-canvas/shader-canvas.css.d.ts +2 -0
  201. package/dist/components/shader-canvas/shader-canvas.css.js +66 -0
  202. package/dist/components/shader-canvas/shader-canvas.d.ts +36 -0
  203. package/dist/components/shader-canvas/shader-canvas.js +363 -0
  204. package/dist/components/shaders/flowing-waves-shader.d.ts +2 -0
  205. package/dist/components/shaders/flowing-waves-shader.js +70 -0
  206. package/dist/components/shaders/neon-canyon-shader.d.ts +2 -0
  207. package/dist/components/shaders/neon-canyon-shader.js +265 -0
  208. package/dist/components/shaders/neon-lines-shader.d.ts +2 -0
  209. package/dist/components/shaders/neon-lines-shader.js +181 -0
  210. package/dist/components/shaders/neon-squircles-shader.d.ts +2 -0
  211. package/dist/components/shaders/neon-squircles-shader.js +56 -0
  212. package/dist/components/shaders/retro-grid-shader.d.ts +2 -0
  213. package/dist/components/shaders/retro-grid-shader.js +53 -0
  214. package/dist/components/shaders/shader-base.d.ts +9 -0
  215. package/dist/components/shaders/shader-base.js +11 -0
  216. package/dist/components/terminal/terminal-example.css.js +4 -0
  217. package/dist/components/terminal/terminal-example.js +2 -3
  218. package/dist/components/terminal-emulator/terminal-emulator.css.js +12 -2
  219. package/dist/components/terminal-emulator/terminal-emulator.d.ts +7 -1
  220. package/dist/components/terminal-emulator/terminal-emulator.js +10 -5
  221. package/dist/components/the-doctor/doctor-controls-panel.css.d.ts +2 -0
  222. package/dist/components/the-doctor/doctor-controls-panel.css.js +53 -0
  223. package/dist/components/the-doctor/doctor-controls-panel.d.ts +20 -0
  224. package/dist/components/the-doctor/doctor-controls-panel.js +78 -0
  225. package/dist/components/the-doctor/doctor-editor-panel.css.d.ts +2 -0
  226. package/dist/components/the-doctor/doctor-editor-panel.css.js +209 -0
  227. package/dist/components/the-doctor/doctor-editor-panel.d.ts +41 -0
  228. package/dist/components/the-doctor/doctor-editor-panel.js +188 -0
  229. package/dist/components/the-doctor/doctor-navigator-panel.css.d.ts +2 -0
  230. package/dist/components/the-doctor/doctor-navigator-panel.css.js +134 -0
  231. package/dist/components/the-doctor/doctor-navigator-panel.d.ts +35 -0
  232. package/dist/components/the-doctor/doctor-navigator-panel.js +117 -0
  233. package/dist/components/the-doctor/doctor-sidebar-panel.css.d.ts +2 -0
  234. package/dist/components/the-doctor/doctor-sidebar-panel.css.js +143 -0
  235. package/dist/components/the-doctor/doctor-sidebar-panel.d.ts +31 -0
  236. package/dist/components/the-doctor/doctor-sidebar-panel.js +131 -0
  237. package/dist/components/the-doctor/doctor-url-overlay.css.d.ts +2 -0
  238. package/dist/components/the-doctor/doctor-url-overlay.css.js +59 -0
  239. package/dist/components/the-doctor/doctor-url-overlay.d.ts +23 -0
  240. package/dist/components/the-doctor/doctor-url-overlay.js +82 -0
  241. package/dist/components/the-doctor/nuke-workspace.js +4 -3
  242. package/dist/components/the-doctor/settings.css.js +2 -0
  243. package/dist/components/the-doctor/settings.js +5 -8
  244. package/dist/components/the-doctor/status-bar.d.ts +2 -2
  245. package/dist/components/the-doctor/status-bar.js +32 -31
  246. package/dist/components/the-doctor/the-doctor.css.js +47 -238
  247. package/dist/components/the-doctor/the-doctor.d.ts +149 -37
  248. package/dist/components/the-doctor/the-doctor.js +958 -528
  249. package/dist/components/the-doctor/upload-archive.css.js +8 -2
  250. package/dist/components/the-doctor/upload-archive.js +2 -2
  251. package/dist/components/theme-switcher/theme-switcher.js +5 -1
  252. package/dist/components/time-vortex/change-list-item.css.js +18 -4
  253. package/dist/components/time-vortex/change-list-item.d.ts +1 -0
  254. package/dist/components/time-vortex/change-list-item.js +4 -3
  255. package/dist/components/time-vortex/history-picker.css.js +60 -1
  256. package/dist/components/time-vortex/history-picker.d.ts +7 -1
  257. package/dist/components/time-vortex/history-picker.js +109 -5
  258. package/dist/components/time-vortex/tardis-control.css.js +339 -14
  259. package/dist/components/time-vortex/tardis-control.d.ts +31 -3
  260. package/dist/components/time-vortex/tardis-control.js +296 -58
  261. package/dist/components/time-vortex/time-vortex.d.ts +8 -2
  262. package/dist/components/time-vortex/time-vortex.js +54 -13
  263. package/dist/components/toast/toast-component.css.js +1 -0
  264. package/dist/components/toast/toast-component.d.ts +1 -0
  265. package/dist/components/toast/toast-component.js +23 -8
  266. package/dist/components/toast/toast-manager.d.ts +5 -0
  267. package/dist/components/toast/toast-manager.js +29 -7
  268. package/dist/components/visualizer/edge.d.ts +11 -1
  269. package/dist/components/visualizer/edge.js +27 -22
  270. package/dist/components/visualizer/equalizer.css.js +118 -76
  271. package/dist/components/visualizer/equalizer.d.ts +24 -45
  272. package/dist/components/visualizer/equalizer.js +262 -363
  273. package/dist/components/visualizer/explorer.d.ts +94 -14
  274. package/dist/components/visualizer/explorer.js +580 -393
  275. package/dist/components/visualizer/foreign-object.d.ts +12 -2
  276. package/dist/components/visualizer/foreign-object.js +21 -10
  277. package/dist/components/visualizer/key.js +12 -1
  278. package/dist/components/visualizer/nodes/callback.d.ts +2 -1
  279. package/dist/components/visualizer/nodes/callback.js +2 -2
  280. package/dist/components/visualizer/nodes/components.d.ts +2 -1
  281. package/dist/components/visualizer/nodes/components.js +2 -2
  282. package/dist/components/visualizer/nodes/contact.d.ts +2 -1
  283. package/dist/components/visualizer/nodes/contact.js +2 -2
  284. package/dist/components/visualizer/nodes/document.d.ts +2 -1
  285. package/dist/components/visualizer/nodes/document.js +2 -2
  286. package/dist/components/visualizer/nodes/graph-node.d.ts +14 -3
  287. package/dist/components/visualizer/nodes/graph-node.js +94 -43
  288. package/dist/components/visualizer/nodes/header.d.ts +2 -1
  289. package/dist/components/visualizer/nodes/header.js +2 -2
  290. package/dist/components/visualizer/nodes/info.d.ts +2 -1
  291. package/dist/components/visualizer/nodes/info.js +2 -2
  292. package/dist/components/visualizer/nodes/license.d.ts +2 -1
  293. package/dist/components/visualizer/nodes/license.js +2 -2
  294. package/dist/components/visualizer/nodes/link.d.ts +2 -1
  295. package/dist/components/visualizer/nodes/link.js +2 -2
  296. package/dist/components/visualizer/nodes/media-type.d.ts +2 -1
  297. package/dist/components/visualizer/nodes/media-type.js +2 -2
  298. package/dist/components/visualizer/nodes/operation.d.ts +2 -1
  299. package/dist/components/visualizer/nodes/operation.js +3 -4
  300. package/dist/components/visualizer/nodes/parameter.d.ts +3 -1
  301. package/dist/components/visualizer/nodes/parameter.js +3 -4
  302. package/dist/components/visualizer/nodes/path-item.d.ts +2 -1
  303. package/dist/components/visualizer/nodes/path-item.js +2 -2
  304. package/dist/components/visualizer/nodes/request-body.d.ts +2 -1
  305. package/dist/components/visualizer/nodes/request-body.js +2 -2
  306. package/dist/components/visualizer/nodes/response.d.ts +2 -1
  307. package/dist/components/visualizer/nodes/response.js +2 -2
  308. package/dist/components/visualizer/nodes/schema.d.ts +2 -1
  309. package/dist/components/visualizer/nodes/schema.js +64 -9
  310. package/dist/components/visualizer/nodes/security-scheme.d.ts +2 -1
  311. package/dist/components/visualizer/nodes/security-scheme.js +2 -2
  312. package/dist/components/visualizer/nodes/server.d.ts +2 -1
  313. package/dist/components/visualizer/nodes/server.js +3 -4
  314. package/dist/components/visualizer/nodes/tag.d.ts +2 -1
  315. package/dist/components/visualizer/nodes/tag.js +4 -5
  316. package/dist/components/visualizer/nodes/xml.d.ts +2 -1
  317. package/dist/components/visualizer/nodes/xml.js +2 -2
  318. package/dist/components/visualizer/orientation-controls.d.ts +6 -1
  319. package/dist/components/visualizer/orientation-controls.js +65 -7
  320. package/dist/components/visualizer/search.d.ts +2 -1
  321. package/dist/components/visualizer/search.js +22 -29
  322. package/dist/components/visualizer/shared.css.js +55 -18
  323. package/dist/components/visualizer/templates/svg-markers.d.ts +2 -0
  324. package/dist/components/visualizer/templates/svg-markers.js +73 -0
  325. package/dist/components/waiting-line/waiting-line.css.d.ts +2 -0
  326. package/dist/components/waiting-line/waiting-line.css.js +26 -0
  327. package/dist/components/waiting-line/waiting-line.d.ts +30 -0
  328. package/dist/components/waiting-line/waiting-line.js +424 -0
  329. package/dist/components/workspaces/workspace-view.css.js +89 -8
  330. package/dist/components/workspaces/workspace-view.d.ts +8 -1
  331. package/dist/components/workspaces/workspace-view.js +77 -25
  332. package/dist/controllers/auth-controller.d.ts +9 -0
  333. package/dist/controllers/auth-controller.js +12 -5
  334. package/dist/controllers/broker-controller.d.ts +30 -4
  335. package/dist/controllers/broker-controller.js +148 -25
  336. package/dist/controllers/bundle-controller.d.ts +21 -0
  337. package/dist/controllers/bundle-controller.js +122 -0
  338. package/dist/controllers/countdown-controller.d.ts +17 -0
  339. package/dist/controllers/countdown-controller.js +59 -0
  340. package/dist/controllers/diagnostic-controller.d.ts +18 -5
  341. package/dist/controllers/diagnostic-controller.js +206 -218
  342. package/dist/controllers/diagramatron-controller.d.ts +33 -0
  343. package/dist/controllers/diagramatron-controller.js +128 -0
  344. package/dist/controllers/docs-controller.d.ts +11 -5
  345. package/dist/controllers/docs-controller.js +97 -97
  346. package/dist/controllers/github-controller.d.ts +47 -0
  347. package/dist/controllers/github-controller.js +494 -0
  348. package/dist/controllers/global-task-controller.d.ts +46 -0
  349. package/dist/controllers/global-task-controller.js +352 -0
  350. package/dist/controllers/model-controller.d.ts +26 -4
  351. package/dist/controllers/model-controller.js +98 -62
  352. package/dist/controllers/node-clicker-controller.d.ts +121 -4
  353. package/dist/controllers/node-clicker-controller.js +526 -253
  354. package/dist/controllers/problem-controller.d.ts +11 -4
  355. package/dist/controllers/problem-controller.js +98 -39
  356. package/dist/controllers/rolodex-controller.d.ts +8 -3
  357. package/dist/controllers/rolodex-controller.js +117 -83
  358. package/dist/controllers/rule-controller.d.ts +12 -5
  359. package/dist/controllers/rule-controller.js +154 -161
  360. package/dist/controllers/spec-controller.d.ts +16 -4
  361. package/dist/controllers/spec-controller.js +91 -62
  362. package/dist/controllers/state-controller.d.ts +4 -3
  363. package/dist/controllers/state-controller.js +201 -154
  364. package/dist/controllers/tab-cache-controller.d.ts +29 -0
  365. package/dist/controllers/tab-cache-controller.js +68 -0
  366. package/dist/controllers/timeline-controller.d.ts +18 -0
  367. package/dist/controllers/timeline-controller.js +129 -0
  368. package/dist/controllers/wallet-controller.d.ts +3 -3
  369. package/dist/controllers/wallet-controller.js +22 -41
  370. package/dist/controllers/workspace-controller.d.ts +10 -4
  371. package/dist/controllers/workspace-controller.js +67 -22
  372. package/dist/cose-bilkent-S5V4N54A-2TG-C-n3.js +2608 -0
  373. package/dist/cowboy-components-BcyXo9oX.js +68425 -0
  374. package/dist/cowboy-components.css +1 -0
  375. package/dist/cowboy-components.umd.cjs +14050 -6577
  376. package/dist/css/alerts.css.js +2 -0
  377. package/dist/css/badges.css.js +2 -0
  378. package/dist/css/button.css.js +34 -1
  379. package/dist/css/cowboy-components.css +34 -0
  380. package/dist/css/dialog.css.js +11 -2
  381. package/dist/css/filter.css.js +17 -5
  382. package/dist/css/forms.css.js +14 -0
  383. package/dist/css/pb33f-theme.css +87 -16
  384. package/dist/css/syntax.css.js +5 -0
  385. package/dist/css/tabs.css.js +19 -2
  386. package/dist/css/tooltip.css.js +4 -0
  387. package/dist/cytoscape.esm-DfdJODL8.js +18735 -0
  388. package/dist/dagre-6UL2VRFP-BIlmTbhO.js +444 -0
  389. package/dist/defaultLocale-D7EN2tov.js +171 -0
  390. package/dist/diagram-PSM6KHXK-CeWby24E.js +531 -0
  391. package/dist/diagram-QEK2KX5R-DGonyVCK.js +217 -0
  392. package/dist/diagram-S2PKOQOG-mGn-y1uX.js +142 -0
  393. package/dist/erDiagram-Q2GNP2WA-BlBBw4Mz.js +841 -0
  394. package/dist/events/doctor.d.ts +63 -9
  395. package/dist/events/doctor.js +29 -1
  396. package/dist/events/drawer-events.d.ts +7 -0
  397. package/dist/events/drawer-events.js +3 -0
  398. package/dist/events/theme.d.ts +4 -0
  399. package/dist/events/theme.js +1 -0
  400. package/dist/factories/explorer-component-factory.d.ts +49 -0
  401. package/dist/factories/explorer-component-factory.js +205 -0
  402. package/dist/factories/state-controller-deps.factory.d.ts +88 -0
  403. package/dist/factories/state-controller-deps.factory.js +116 -0
  404. package/dist/flowDiagram-NV44I4VS-BlLzzy1C.js +1620 -0
  405. package/dist/ganttDiagram-LVOFAZNH-BoQtPC8k.js +2505 -0
  406. package/dist/gitGraph-F6HP7TQM-CShNSlrW.js +5 -0
  407. package/dist/gitGraphDiagram-NY62KEGX-BdpWBgHy.js +699 -0
  408. package/dist/graph-D9HS4Ahd.js +247 -0
  409. package/dist/helpers/event-wiring.d.ts +72 -0
  410. package/dist/helpers/event-wiring.js +58 -0
  411. package/dist/helpers/file-size-formatter.d.ts +3 -0
  412. package/dist/helpers/file-size-formatter.js +15 -0
  413. package/dist/helpers/filename-colorizer.d.ts +5 -0
  414. package/dist/helpers/filename-colorizer.js +30 -0
  415. package/dist/helpers/navigation-helper.d.ts +54 -0
  416. package/dist/helpers/navigation-helper.js +159 -0
  417. package/dist/helpers/typed-events.d.ts +1 -0
  418. package/dist/helpers/typed-events.js +3 -0
  419. package/dist/info-NVLQJR56-Bpi6I8up.js +5 -0
  420. package/dist/infoDiagram-F6ZHWCRC-DmhhbuMJ.js +24 -0
  421. package/dist/init-DjUOC4st.js +16 -0
  422. package/dist/interfaces/bundle-interfaces.d.ts +7 -0
  423. package/dist/interfaces/bundle-interfaces.js +1 -0
  424. package/dist/interfaces/doctor-interfaces.d.ts +506 -0
  425. package/dist/interfaces/doctor-interfaces.js +1 -0
  426. package/dist/journeyDiagram-XKPGCS4Q-CpkhK8vl.js +834 -0
  427. package/dist/kanban-definition-3W4ZIXB7-BFbucfYE.js +719 -0
  428. package/dist/katex-SsTUIUTC.js +11688 -0
  429. package/dist/layout-B8H1_UrM.js +1324 -0
  430. package/dist/linear-Bo0rJUSQ.js +259 -0
  431. package/dist/managers/drag-handler.d.ts +28 -0
  432. package/dist/managers/drag-handler.js +64 -0
  433. package/dist/managers/event-registration-manager.d.ts +17 -0
  434. package/dist/managers/event-registration-manager.js +34 -0
  435. package/dist/managers/expansion-manager.d.ts +58 -0
  436. package/dist/managers/expansion-manager.js +189 -0
  437. package/dist/managers/layout-filter-manager.d.ts +31 -0
  438. package/dist/managers/layout-filter-manager.js +109 -0
  439. package/dist/managers/panel-divider-manager.d.ts +33 -0
  440. package/dist/managers/panel-divider-manager.js +71 -0
  441. package/dist/managers/view-state-manager.d.ts +48 -0
  442. package/dist/managers/view-state-manager.js +101 -0
  443. package/dist/managers/viewport-manager.d.ts +53 -0
  444. package/dist/managers/viewport-manager.js +198 -0
  445. package/dist/mermaid-parser.core-BPror82d.js +12966 -0
  446. package/dist/mindmap-definition-VGOIOE7T-VAn-EShH.js +784 -0
  447. package/dist/mocks/task-mock-generator.d.ts +13 -0
  448. package/dist/mocks/task-mock-generator.js +200 -0
  449. package/dist/model/api-response.d.ts +2 -7
  450. package/dist/model/api-response.js +0 -2
  451. package/dist/model/bundle.d.ts +35 -0
  452. package/dist/model/bundle.js +1 -0
  453. package/dist/model/channels.d.ts +8 -1
  454. package/dist/model/channels.js +7 -0
  455. package/dist/model/drawer-content.d.ts +80 -0
  456. package/dist/model/drawer-content.js +14 -0
  457. package/dist/model/formable.js +22 -11
  458. package/dist/model/github.d.ts +125 -0
  459. package/dist/model/github.js +1 -0
  460. package/dist/model/graph.d.ts +15 -15
  461. package/dist/model/graph.js +24 -4
  462. package/dist/model/media-type.js +2 -2
  463. package/dist/model/node_type.d.ts +4 -0
  464. package/dist/model/node_type.js +4 -0
  465. package/dist/model/panel-state.d.ts +1 -0
  466. package/dist/model/rolodex.d.ts +3 -0
  467. package/dist/model/task.d.ts +50 -0
  468. package/dist/model/task.js +22 -0
  469. package/dist/model/timeline.d.ts +107 -1
  470. package/dist/model/tree-icon-config.d.ts +11 -0
  471. package/dist/model/tree-icon-config.js +46 -0
  472. package/dist/model/workspace.d.ts +2 -0
  473. package/dist/monacoeditorwork/css.worker.bundle.js +9 -7
  474. package/dist/monacoeditorwork/editor.worker.bundle.js +2 -0
  475. package/dist/monacoeditorwork/html.worker.bundle.js +9 -7
  476. package/dist/monacoeditorwork/json.worker.bundle.js +9 -7
  477. package/dist/monacoeditorwork/yaml.worker..bundle.js +72 -48
  478. package/dist/ordinal-DfAQgscy.js +61 -0
  479. package/dist/packet-BFZMPI3H-CXPCK9Q2.js +5 -0
  480. package/dist/pie-7BOR55EZ-CMcuUZ_S.js +5 -0
  481. package/dist/pieDiagram-ADFJNKIX-C0kdlQqn.js +161 -0
  482. package/dist/quadrantDiagram-AYHSOK5B-CRVq6wY3.js +1022 -0
  483. package/dist/radar-NHE76QYJ-CX_Gyp4h.js +5 -0
  484. package/dist/requirementDiagram-UZGBJVZJ-B8ZGgMKn.js +850 -0
  485. package/dist/sankeyDiagram-TZEHDZUN-CWAUJJue.js +810 -0
  486. package/dist/sequenceDiagram-WL72ISMW-nz81a4Cq.js +2511 -0
  487. package/dist/services/diagramatron-service.d.ts +20 -0
  488. package/dist/services/diagramatron-service.js +48 -0
  489. package/dist/services/doctor-events.d.ts +58 -0
  490. package/dist/services/doctor-events.js +33 -0
  491. package/dist/services/drawer-content-registry.d.ts +9 -0
  492. package/dist/services/drawer-content-registry.js +37 -0
  493. package/dist/services/github-service.d.ts +9 -0
  494. package/dist/services/github-service.js +166 -0
  495. package/dist/services/global-task-service.d.ts +6 -0
  496. package/dist/services/global-task-service.js +27 -0
  497. package/dist/services/header-service.d.ts +5 -3
  498. package/dist/services/header-service.js +13 -0
  499. package/dist/services/linting-service.d.ts +2 -0
  500. package/dist/services/linting-service.js +19 -2
  501. package/dist/services/mermaid-config-service.d.ts +53 -0
  502. package/dist/services/mermaid-config-service.js +519 -0
  503. package/dist/services/model-service.d.ts +12 -7
  504. package/dist/services/model-service.js +64 -11
  505. package/dist/services/rodeo-service.js +12 -12
  506. package/dist/services/timeline-service.d.ts +12 -2
  507. package/dist/services/timeline-service.js +329 -0
  508. package/dist/services/wallet-service.d.ts +1 -1
  509. package/dist/services/wallet-service.js +4 -1
  510. package/dist/services/workspace-service.js +16 -2
  511. package/dist/stateDiagram-FKZM4ZOC-3PFzJlcG.js +263 -0
  512. package/dist/stateDiagram-v2-4FDKWEC3-Bp46vM6_.js +16 -0
  513. package/dist/timeline-definition-IT6M3QCI-utm7jTLb.js +795 -0
  514. package/dist/treemap-KMMF4GRG-BvEKHn43.js +5 -0
  515. package/dist/utils/language-utils.d.ts +1 -0
  516. package/dist/utils/language-utils.js +23 -0
  517. package/dist/utils/lru-cache.d.ts +11 -0
  518. package/dist/utils/lru-cache.js +38 -0
  519. package/dist/utils/node-helpers.d.ts +6 -0
  520. package/dist/utils/node-helpers.js +62 -0
  521. package/dist/utils/path-utils.d.ts +5 -0
  522. package/dist/utils/path-utils.js +22 -0
  523. package/dist/workers/elk-layout.worker.d.ts +2 -0
  524. package/dist/workers/elk-layout.worker.js +31 -0
  525. package/dist/workers/equalizer.worker.d.ts +6 -1
  526. package/dist/workers/equalizer.worker.js +144 -195
  527. package/dist/workers/graph-dependent.worker.js +6 -6
  528. package/dist/workers/rule-documentation.worker.js +12 -48
  529. package/dist/workers/search-graph.worker.js +8 -23
  530. package/dist/xychartDiagram-PRI3JC2R-twqDKWMX.js +1340 -0
  531. package/package.json +17 -10
  532. package/dist/assets/equalizer.worker-DyLD5JTU.js +0 -1
  533. package/dist/assets/graph-dependent.worker-CpVhp0-T.js +0 -1
  534. package/dist/assets/rule-documentation.worker-B7xOWY5M.js +0 -1
  535. package/dist/assets/search-graph.worker-B9zqINrO.js +0 -1
  536. package/dist/assets/search-problems.worker-BAF8L2rX.js +0 -1
  537. package/dist/components/problem-list/details-drawer.d.ts +0 -34
  538. package/dist/components/problem-list/details-drawer.js +0 -200
  539. package/dist/style.css +0 -1
  540. /package/dist/components/{problem-list/details-drawer.css.d.ts → bundle-toolbar/bundle-toolbar.css.d.ts} +0 -0
@@ -0,0 +1,485 @@
1
+ // Copyright 2023-2025 Princess Beef Heavy Industries, LLC / Dave Shanley
2
+ // https://pb33f.io
3
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
4
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
5
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
6
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
7
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
8
+ };
9
+ var MermaidRenderer_1;
10
+ import { LitElement, html } from 'lit';
11
+ import { customElement, property, query, state } from 'lit/decorators.js';
12
+ import { styles } from './mermaid-renderer.css.js';
13
+ import mermaid from 'mermaid';
14
+ import { MermaidConfigService } from '../../services/mermaid-config-service.js';
15
+ let MermaidRenderer = MermaidRenderer_1 = class MermaidRenderer extends LitElement {
16
+ constructor() {
17
+ super();
18
+ this.diagram = '';
19
+ this.fitWidth = true;
20
+ this.config = {};
21
+ this.theme = 'light';
22
+ this._loading = false;
23
+ this._error = null;
24
+ this._svgContent = '';
25
+ this._svgElement = null;
26
+ this.zoomX = null;
27
+ this.zoomY = null;
28
+ this.zoomW = null;
29
+ this.zoomH = null;
30
+ this.initialZoomX = 0;
31
+ this.initialZoomY = 0;
32
+ this.initialZoomW = 0;
33
+ this.initialZoomH = 0;
34
+ this.grabbed = false;
35
+ this.isDragging = false;
36
+ this.dragThreshold = 5;
37
+ this.startX = 0;
38
+ this.startY = 0;
39
+ this.dragStartViewBoxX = 0;
40
+ this.dragStartViewBoxY = 0;
41
+ this.zoomMax = 50000;
42
+ this.zoomMin = 50;
43
+ // store bound event handlers to properly remove them later
44
+ this.boundOnWheel = null;
45
+ this.boundMouseDown = null;
46
+ this.boundMouseUp = null;
47
+ this.boundMouseMove = null;
48
+ this._handleThemeChange = (event) => {
49
+ const customEvent = event;
50
+ this.theme = customEvent.detail.theme;
51
+ this._renderDiagram();
52
+ };
53
+ this._diagramId = `mermaid-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
54
+ this.configService = MermaidConfigService.getInstance();
55
+ // bind event handlers once to maintain consistent references
56
+ this.boundOnWheel = this.onWheel.bind(this);
57
+ this.boundMouseDown = this.mouseDown.bind(this);
58
+ this.boundMouseUp = this.mouseUp.bind(this);
59
+ this.boundMouseMove = this.mouseMove.bind(this);
60
+ }
61
+ connectedCallback() {
62
+ super.connectedCallback();
63
+ if (!MermaidRenderer_1._initialized) {
64
+ this._initializeMermaid();
65
+ MermaidRenderer_1._initialized = true;
66
+ }
67
+ this.theme = this.configService.getTheme();
68
+ window.addEventListener('mermaid-theme-change', this._handleThemeChange);
69
+ }
70
+ disconnectedCallback() {
71
+ super.disconnectedCallback();
72
+ window.removeEventListener('mermaid-theme-change', this._handleThemeChange);
73
+ const existingDiagram = document.getElementById(this._diagramId);
74
+ if (existingDiagram) {
75
+ existingDiagram.remove();
76
+ }
77
+ this._detachZoomHandlers();
78
+ }
79
+ _detachZoomHandlers() {
80
+ if (!this._container)
81
+ return;
82
+ // use stored bound functions to properly remove event listeners
83
+ if (this.boundOnWheel) {
84
+ this._container.removeEventListener('wheel', this.boundOnWheel);
85
+ }
86
+ if (this.boundMouseDown) {
87
+ this._container.removeEventListener('mousedown', this.boundMouseDown);
88
+ }
89
+ if (this.boundMouseUp) {
90
+ this._container.removeEventListener('mouseup', this.boundMouseUp);
91
+ this._container.removeEventListener('mouseleave', this.boundMouseUp);
92
+ }
93
+ if (this.boundMouseMove) {
94
+ this._container.removeEventListener('mousemove', this.boundMouseMove);
95
+ }
96
+ }
97
+ updated(changedProperties) {
98
+ super.updated(changedProperties);
99
+ // Re-render if diagram, config, or theme changes
100
+ if (changedProperties.has('diagram') ||
101
+ changedProperties.has('config') ||
102
+ changedProperties.has('theme')) {
103
+ this._renderDiagram();
104
+ }
105
+ }
106
+ _initializeMermaid() {
107
+ const baseConfig = this.configService.getMermaidConfig({
108
+ flowchart: {
109
+ useMaxWidth: this.fitWidth,
110
+ htmlLabels: true,
111
+ curve: 'linear',
112
+ },
113
+ ...this.config,
114
+ });
115
+ mermaid.initialize(baseConfig);
116
+ }
117
+ async _renderDiagram() {
118
+ if (!this.diagram) {
119
+ this._svgContent = '';
120
+ this._error = null;
121
+ return;
122
+ }
123
+ this._loading = true;
124
+ this._error = null;
125
+ try {
126
+ const config = this.configService.getMermaidConfig({
127
+ flowchart: {
128
+ useMaxWidth: this.fitWidth,
129
+ htmlLabels: true,
130
+ curve: 'linear',
131
+ },
132
+ ...this.config,
133
+ });
134
+ mermaid.initialize(config);
135
+ // Validate the diagram syntax
136
+ const isValid = await mermaid.parse(this.diagram);
137
+ if (!isValid) {
138
+ throw new Error('Invalid diagram syntax');
139
+ }
140
+ // Render the diagram
141
+ const { svg } = await mermaid.render(this._diagramId, this.diagram);
142
+ this._svgContent = svg;
143
+ await this.updateComplete;
144
+ this._postProcessSVG();
145
+ }
146
+ catch (error) {
147
+ console.error('Error rendering mermaid diagram:', error);
148
+ this._error = error instanceof Error ? error.message : 'Unknown error occurred';
149
+ }
150
+ finally {
151
+ this._loading = false;
152
+ }
153
+ }
154
+ /**
155
+ * post-processes the rendered SVG
156
+ */
157
+ _postProcessSVG() {
158
+ if (!this._container)
159
+ return;
160
+ const svg = this._container.querySelector('svg');
161
+ if (!svg)
162
+ return;
163
+ svg.querySelectorAll('rect').forEach((rect) => {
164
+ rect.setAttribute('rx', '0');
165
+ rect.setAttribute('ry', '0');
166
+ });
167
+ svg.querySelectorAll('text').forEach((text) => {
168
+ text.style.fontFamily = 'var(--font-stack)';
169
+ });
170
+ const primaryColor = getComputedStyle(document.documentElement).getPropertyValue('--primary-color').trim();
171
+ const terminalGreen = getComputedStyle(document.documentElement).getPropertyValue('--terminal-text').trim();
172
+ const tertiaryColor = getComputedStyle(document.documentElement).getPropertyValue('--tertiary-color').trim();
173
+ svg.querySelectorAll('.label-group .label').forEach((label) => {
174
+ const p = label.querySelector('p');
175
+ if (p) {
176
+ p.style.color = primaryColor;
177
+ }
178
+ });
179
+ svg.querySelectorAll('.annotation-group .label').forEach((label) => {
180
+ const p = label.querySelector('p');
181
+ if (p) {
182
+ p.style.color = terminalGreen;
183
+ }
184
+ });
185
+ svg.querySelectorAll('.members-group .label').forEach((label) => {
186
+ const p = label.querySelector('p');
187
+ if (p) {
188
+ p.style.color = tertiaryColor;
189
+ }
190
+ });
191
+ svg.querySelectorAll('.methods-group .label').forEach((label) => {
192
+ const p = label.querySelector('p');
193
+ if (p) {
194
+ p.style.color = terminalGreen;
195
+ }
196
+ });
197
+ svg.querySelectorAll('.methods-group').forEach((group) => {
198
+ const hasContent = group.querySelector('.label');
199
+ if (!hasContent || group.children.length === 0) {
200
+ group.style.display = 'none';
201
+ }
202
+ });
203
+ svg.querySelectorAll('g.divider').forEach((divider) => {
204
+ const parent = divider.parentElement;
205
+ if (parent) {
206
+ const methodsGroup = parent.querySelector('.methods-group');
207
+ const hasMethods = methodsGroup && methodsGroup.children.length > 0;
208
+ if (!hasMethods) {
209
+ const dividers = parent.querySelectorAll('.divider');
210
+ if (dividers.length > 1) {
211
+ dividers[dividers.length - 1].remove();
212
+ }
213
+ }
214
+ }
215
+ });
216
+ svg.removeAttribute('width');
217
+ svg.removeAttribute('height');
218
+ svg.removeAttribute('style');
219
+ svg.style.width = '100%';
220
+ svg.style.height = '100%';
221
+ svg.style.maxWidth = 'none';
222
+ svg.setAttribute('preserveAspectRatio', 'xMidYMid meet');
223
+ this._svgElement = svg;
224
+ this._setInitialViewBox();
225
+ this._attachZoomHandlers();
226
+ }
227
+ _setInitialViewBox() {
228
+ if (!this._svgElement)
229
+ return;
230
+ const viewBoxAttr = this._svgElement.getAttribute('viewBox');
231
+ if (!viewBoxAttr)
232
+ return;
233
+ const [x, y, width, height] = viewBoxAttr.split(' ').map(Number);
234
+ const paddingPercent = 0.15;
235
+ const paddingX = width * paddingPercent;
236
+ const paddingY = height * paddingPercent;
237
+ const newX = x - paddingX;
238
+ const newY = y - paddingY;
239
+ const newWidth = width + (paddingX * 2);
240
+ const newHeight = height + (paddingY * 2);
241
+ this._svgElement.setAttribute('viewBox', `${newX} ${newY} ${newWidth} ${newHeight}`);
242
+ this.initialZoomX = newX;
243
+ this.initialZoomY = newY;
244
+ this.initialZoomW = newWidth;
245
+ this.initialZoomH = newHeight;
246
+ this.zoomX = newX;
247
+ this.zoomY = newY;
248
+ this.zoomW = newWidth;
249
+ this.zoomH = newHeight;
250
+ this.zoomMax = Math.max(newWidth * 10, 50000);
251
+ this.zoomMin = Math.min(newWidth * 0.01, 50);
252
+ }
253
+ _attachZoomHandlers() {
254
+ if (!this._container)
255
+ return;
256
+ // use stored bound functions for consistent event listener references
257
+ if (this.boundOnWheel) {
258
+ this._container.addEventListener('wheel', this.boundOnWheel, { passive: false });
259
+ }
260
+ if (this.boundMouseDown) {
261
+ this._container.addEventListener('mousedown', this.boundMouseDown);
262
+ }
263
+ if (this.boundMouseUp) {
264
+ this._container.addEventListener('mouseup', this.boundMouseUp);
265
+ this._container.addEventListener('mouseleave', this.boundMouseUp);
266
+ }
267
+ if (this.boundMouseMove) {
268
+ this._container.addEventListener('mousemove', this.boundMouseMove);
269
+ }
270
+ }
271
+ /**
272
+ * public method to re-render the diagram
273
+ */
274
+ async refresh() {
275
+ await this._renderDiagram();
276
+ }
277
+ /**
278
+ * public method to export the diagram as SVG
279
+ */
280
+ exportSVG() {
281
+ if (!this._svgContent)
282
+ return null;
283
+ return this._svgContent;
284
+ }
285
+ async exportPNG() {
286
+ if (!this._svgContent || !this._svgElement)
287
+ return null;
288
+ const viewBox = this._svgElement.viewBox.baseVal;
289
+ const width = viewBox.width || this.initialZoomW || 800;
290
+ const height = viewBox.height || this.initialZoomH || 600;
291
+ return new Promise((resolve) => {
292
+ const url = `data:image/svg+xml;charset=utf-8,${encodeURIComponent(this._svgContent)}`;
293
+ const img = new Image();
294
+ img.onload = () => {
295
+ const canvas = document.createElement('canvas');
296
+ canvas.width = width;
297
+ canvas.height = height;
298
+ const ctx = canvas.getContext('2d');
299
+ if (!ctx) {
300
+ img.onload = null;
301
+ img.onerror = null;
302
+ img.src = '';
303
+ resolve(null);
304
+ return;
305
+ }
306
+ ctx.drawImage(img, 0, 0, width, height);
307
+ canvas.toBlob((blob) => {
308
+ img.onload = null;
309
+ img.onerror = null;
310
+ img.src = '';
311
+ resolve(blob);
312
+ }, 'image/png', 0.95);
313
+ };
314
+ img.onerror = () => {
315
+ img.onload = null;
316
+ img.onerror = null;
317
+ img.src = '';
318
+ resolve(null);
319
+ };
320
+ img.src = url;
321
+ });
322
+ }
323
+ zoom(scale) {
324
+ if (!this._svgElement)
325
+ return;
326
+ scale = Math.abs(scale) < 0.02 ? (scale / Math.abs(scale)) * 0.02 : scale;
327
+ const viewBoxAttr = this._svgElement.getAttribute('viewBox');
328
+ if (!viewBoxAttr)
329
+ return;
330
+ const [x, y, width, height] = viewBoxAttr.split(' ').map(Number);
331
+ const centerX = x + width / 2;
332
+ const centerY = y + height / 2;
333
+ const width2 = width + width * scale;
334
+ const height2 = height + height * scale;
335
+ const x2 = centerX - (width2 / 2);
336
+ const y2 = centerY - (height2 / 2);
337
+ if (width2 >= this.zoomMax || width2 <= this.zoomMin) {
338
+ return;
339
+ }
340
+ this._svgElement.setAttribute('viewBox', `${x2} ${y2} ${width2} ${height2}`);
341
+ this.zoomX = x2;
342
+ this.zoomY = y2;
343
+ this.zoomW = width2;
344
+ this.zoomH = height2;
345
+ }
346
+ zoomIn() {
347
+ this.zoom(-0.1);
348
+ }
349
+ zoomOut() {
350
+ this.zoom(0.1);
351
+ }
352
+ resetZoom() {
353
+ if (!this._svgElement)
354
+ return;
355
+ this._svgElement.setAttribute('viewBox', `${this.initialZoomX} ${this.initialZoomY} ${this.initialZoomW} ${this.initialZoomH}`);
356
+ this.zoomX = this.initialZoomX;
357
+ this.zoomY = this.initialZoomY;
358
+ this.zoomW = this.initialZoomW;
359
+ this.zoomH = this.initialZoomH;
360
+ }
361
+ onWheel(evt) {
362
+ evt.preventDefault();
363
+ if (!this._svgElement)
364
+ return;
365
+ let scale = evt.deltaY / 1000;
366
+ scale = Math.abs(scale) < 0.02 ? 0.02 * evt.deltaY / Math.abs(evt.deltaY) : scale;
367
+ const pt = new DOMPoint(evt.clientX, evt.clientY);
368
+ const transformedPt = pt.matrixTransform(this._svgElement.getScreenCTM()?.inverse());
369
+ const viewBoxAttr = this._svgElement.getAttribute('viewBox');
370
+ if (!viewBoxAttr)
371
+ return;
372
+ const [x, y, width, height] = viewBoxAttr.split(' ').map(Number);
373
+ const xPropW = (transformedPt.x - x) / width;
374
+ const yPropH = (transformedPt.y - y) / height;
375
+ const width2 = width + width * scale;
376
+ const height2 = height + height * scale;
377
+ const x2 = transformedPt.x - xPropW * width2;
378
+ const y2 = transformedPt.y - yPropH * height2;
379
+ if (width2 >= this.zoomMax || width2 <= this.zoomMin) {
380
+ return;
381
+ }
382
+ if (Number.isNaN(x2) || Number.isNaN(y2) || Number.isNaN(width2) || Number.isNaN(height2)) {
383
+ return;
384
+ }
385
+ requestAnimationFrame(() => {
386
+ this.zoomX = x2;
387
+ this.zoomY = y2;
388
+ this.zoomW = width2;
389
+ this.zoomH = height2;
390
+ this._svgElement.setAttribute('viewBox', `${x2} ${y2} ${width2} ${height2}`);
391
+ });
392
+ }
393
+ mouseDown(evt) {
394
+ this.grabbed = true;
395
+ if (!this._svgElement)
396
+ return;
397
+ const viewBox = this._svgElement.viewBox.baseVal;
398
+ this.startX = evt.clientX;
399
+ this.startY = evt.clientY;
400
+ this.dragStartViewBoxX = viewBox.x;
401
+ this.dragStartViewBoxY = viewBox.y;
402
+ }
403
+ mouseUp() {
404
+ this.grabbed = false;
405
+ this.isDragging = false;
406
+ }
407
+ mouseMove(evt) {
408
+ if (!this.grabbed || !this._svgElement)
409
+ return;
410
+ const distanceMoved = Math.sqrt(Math.pow(evt.clientX - this.startX, 2) +
411
+ Math.pow(evt.clientY - this.startY, 2));
412
+ if (!this.isDragging && distanceMoved > this.dragThreshold) {
413
+ this.isDragging = true;
414
+ }
415
+ if (this.isDragging) {
416
+ requestAnimationFrame(() => {
417
+ if (!this._svgElement)
418
+ return;
419
+ const viewBox = this._svgElement.viewBox.baseVal;
420
+ const dx = (evt.clientX - this.startX) * (viewBox.width / this._svgElement.clientWidth);
421
+ const dy = (evt.clientY - this.startY) * (viewBox.height / this._svgElement.clientHeight);
422
+ viewBox.x = this.dragStartViewBoxX - dx;
423
+ viewBox.y = this.dragStartViewBoxY - dy;
424
+ this.zoomX = viewBox.x;
425
+ this.zoomY = viewBox.y;
426
+ this.zoomW = viewBox.width;
427
+ this.zoomH = viewBox.height;
428
+ });
429
+ }
430
+ }
431
+ render() {
432
+ return html `
433
+ <div class="mermaid-renderer">
434
+ ${this._loading ? html `
435
+ <div class="loading">
436
+ <sl-spinner></sl-spinner>
437
+ <span>Rendering diagram...</span>
438
+ </div>
439
+ ` : ''}
440
+
441
+ ${this._error ? html `
442
+ <div class="error">
443
+ <sl-icon name="exclamation-triangle"></sl-icon>
444
+ <span>Error: ${this._error}</span>
445
+ </div>
446
+ ` : ''}
447
+
448
+ <div id="diagram-container"
449
+ class="diagram-container"
450
+ .innerHTML=${this._svgContent}>
451
+ </div>
452
+ </div>
453
+ `;
454
+ }
455
+ };
456
+ MermaidRenderer.styles = styles;
457
+ MermaidRenderer._initialized = false;
458
+ __decorate([
459
+ property({ type: String })
460
+ ], MermaidRenderer.prototype, "diagram", void 0);
461
+ __decorate([
462
+ property({ type: Boolean, attribute: 'fit-width' })
463
+ ], MermaidRenderer.prototype, "fitWidth", void 0);
464
+ __decorate([
465
+ property({ type: Object })
466
+ ], MermaidRenderer.prototype, "config", void 0);
467
+ __decorate([
468
+ property({ type: String })
469
+ ], MermaidRenderer.prototype, "theme", void 0);
470
+ __decorate([
471
+ state()
472
+ ], MermaidRenderer.prototype, "_loading", void 0);
473
+ __decorate([
474
+ state()
475
+ ], MermaidRenderer.prototype, "_error", void 0);
476
+ __decorate([
477
+ state()
478
+ ], MermaidRenderer.prototype, "_svgContent", void 0);
479
+ __decorate([
480
+ query('#diagram-container')
481
+ ], MermaidRenderer.prototype, "_container", void 0);
482
+ MermaidRenderer = MermaidRenderer_1 = __decorate([
483
+ customElement('pb33f-mermaid-renderer')
484
+ ], MermaidRenderer);
485
+ export { MermaidRenderer };
@@ -0,0 +1,9 @@
1
+ import { LitElement, TemplateResult } from "lit";
2
+ export declare class DoctorIcon extends LitElement {
3
+ static styles: import("lit").CSSResult;
4
+ size: number;
5
+ iconType: string;
6
+ static getOpenAPIIcon(size?: number): TemplateResult;
7
+ static getGitHubIcon(size?: number): TemplateResult;
8
+ render(): TemplateResult;
9
+ }
@@ -0,0 +1,60 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var DoctorIcon_1;
8
+ import { css, html, LitElement } from "lit";
9
+ import { customElement, property } from "lit/decorators.js";
10
+ let DoctorIcon = DoctorIcon_1 = class DoctorIcon extends LitElement {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.size = 20;
14
+ this.iconType = 'openapi';
15
+ }
16
+ static getOpenAPIIcon(size = 20) {
17
+ return html `
18
+ <svg width="${size}" height="${size}" id="openapi-logo" data-name="openapi-logo" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 784.37 784.29" style=" vertical-align: middle;">
19
+ <path d="M207.28,450.97H.31c.04,1.02.07,2.03.12,3.03.08,1.95.22,3.88.34,5.83.05.84.09,1.67.16,2.5.16,2.25.35,4.5.56,6.73.05.51.09,1.02.14,1.5.24,2.5.51,4.99.8,7.47.01.24.04.48.08.72.33,2.67.67,5.35,1.06,8,0,.04,0,.08.01.1,2.39,16.54,5.96,32.88,10.7,48.9.03.07.05.13.07.2.75,2.54,1.53,5.05,2.33,7.54.05.14.1.3.14.44s.09.29.14.44c.73,2.26,1.5,4.51,2.28,6.77.2.56.39,1.14.6,1.71.69,1.95,1.4,3.9,2.13,5.86.34.88.67,1.75.99,2.64.64,1.62,1.26,3.23,1.9,4.84.48,1.22.98,2.43,1.49,3.63.52,1.27,1.05,2.51,1.58,3.78.65,1.54,1.35,3.07,2.03,4.62.41.92.82,1.82,1.23,2.73.84,1.84,1.7,3.69,2.58,5.52.29.59.56,1.18.85,1.75,1.02,2.12,2.05,4.2,3.1,6.28.18.31.33.64.5.95,1.18,2.3,2.38,4.59,3.62,6.86.05.1.12.2.16.31.26.47.55.93.81,1.4l176.76-106.47.65-.39c-6.97-14.7-11.31-30.33-12.93-46.22h0Z" style="fill: #359ed3;"/>
20
+ <path d="M258.15,545.99l-.5.5-145.79,145.77c.75.69,1.49,1.41,2.26,2.08,1.36,1.24,2.75,2.46,4.12,3.67.72.63,1.41,1.26,2.13,1.88,1.65,1.43,3.32,2.81,4.98,4.21.46.38.89.75,1.35,1.12,2.12,1.74,4.26,3.46,6.42,5.15,2.07,1.63,4.14,3.22,6.26,4.81.09.05.16.1.24.17,8.8,6.57,17.9,12.72,27.27,18.44.31.21.64.39.97.6,1.79,1.06,3.57,2.12,5.37,3.16l3.29,1.88c1.05.6,2.08,1.18,3.12,1.75,1.9,1.03,3.79,2.07,5.7,3.07.26.14.52.29.8.42,5.3,2.77,10.68,5.35,16.12,7.83l5.18-12.57,73.33-178.04.26-.65c-8-4.29-15.68-9.36-22.89-15.27h0Z" style="fill: #62c4ff;"/>
21
+ <path d="M242.97,531.46c-1.57-1.74-3.08-3.53-4.55-5.36-1.31-1.61-2.56-3.23-3.78-4.88-1.4-1.88-2.76-3.79-4.05-5.73-1.29-1.95-2.58-3.91-3.78-5.9l-176.98,106.6c2.72,4.52,5.54,8.92,8.45,13.26.09.16.18.31.29.46.03.07.07.1.1.17.09.13.18.29.27.43.01.01.03.03.03.05.24.34.47.68.71,1.03.01.01.03.04.05.07s.01.01.01.03c3.07,4.54,6.24,9.01,9.49,13.38.07.09.14.18.21.27.08.09.14.18.21.27,1.43,1.87,2.84,3.74,4.3,5.6.2.25.38.48.59.72,1.49,1.92,3.02,3.82,4.58,5.69.37.44.75.89,1.11,1.35,1.4,1.67,2.8,3.33,4.22,4.98.61.71,1.24,1.43,1.87,2.12,1.22,1.39,2.42,2.77,3.66,4.13.68.75,1.39,1.5,2.08,2.25.31.35.63.68.95,1.03.9.98,1.8,1.96,2.72,2.93.37.38.76.76,1.12,1.15,1.61,1.67,3.24,3.36,4.89,5.01l146.01-145.98c-1.67-1.67-3.24-3.4-4.79-5.13h0Z" style="fill: #f6f;"/>
22
+ <path d="M436.5,545.91c-1.61,1.29-3.23,2.56-4.88,3.78l.35.61,106.46,176.68c4.93-3.22,9.81-6.54,14.57-10.03,10.3-7.6,20.27-15.83,29.88-24.7l-145.8-145.77-.58-.58Z" style="fill: #62c4ff;"/>
23
+ <path d="M522.96,728.44l-3.61-6-99.37-164.92c-2.01,1.2-4.07,2.3-6.12,3.4-2.08,1.12-4.16,2.16-6.28,3.16-19.09,9.05-39.75,13.68-60.45,13.68-13.56,0-27.1-1.96-40.21-5.87-2.24-.67-4.42-1.54-6.62-2.33-2.21-.77-4.45-1.45-6.62-2.34l-73.27,177.93-2.86,6.97-2.46,5.98v.03c.17.08.37.14.55.22.21.08.41.14.6.24h.03c.05.03.1.04.14.05,1.73.72,3.46,1.32,5.2,2,2.18.85,4.35,1.71,6.54,2.51,1.12.41,2.22.88,3.33,1.27h.01c22.96,8.1,46.71,13.79,70.85,16.96.95.12,1.88.25,2.84.38.98.12,1.97.21,2.97.33,1.86.21,3.71.42,5.58.6l1.39.12c2.29.22,4.58.42,6.85.58.78.07,1.57.09,2.34.16,2,.13,4,.25,6,.34,1.23.08,2.46.1,3.69.16,1.6.05,3.18.12,4.77.17,2.29.05,4.6.07,6.9.08.55,0,1.09.01,1.63.03,19.29,0,38.57-1.61,57.65-4.81.31-.05.64-.1.97-.14,2.01-.35,4.03-.73,6.04-1.1,1.15-.22,2.31-.44,3.44-.67,1.18-.25,2.37-.48,3.54-.75,1.96-.41,3.92-.84,5.9-1.29.35-.08.71-.14,1.06-.25,29-6.75,57.01-17.21,83.31-31.05h0c1.73-.92,3.41-1.95,5.13-2.89,2.04-1.11,4.07-2.28,6.11-3.44,1.4-.8,2.82-1.54,4.22-2.38.01-.01.03-.03.04-.03h.01s.04-.03.07-.04l.03-.03-.26-.43.26.43s.03-.01.04-.01c.03-.01.04-.03.07-.04.08-.05.16-.09.24-.14.44-.27.9-.54,1.36-.81l-3.58-5.99ZM258.23,328.05c1.61-1.31,3.24-2.56,4.88-3.79l-.35-.6-106.46-176.7c-4.94,3.23-9.82,6.56-14.59,10.05-10.29,7.58-20.27,15.81-29.85,24.66l145.8,145.79.58.59Z" style="fill: #359ed3;"/>
24
+ <path d="M101.75,191.39c-1.66,1.66-3.23,3.37-4.85,5.05-1.61,1.69-3.26,3.36-4.84,5.06-10.64,11.51-20.5,23.72-29.5,36.56-.43.59-.85,1.22-1.28,1.82-.99,1.46-1.99,2.92-2.95,4.38-1.02,1.52-2.03,3.06-3.01,4.59-.37.56-.73,1.14-1.09,1.7C20.7,303.14,2.73,362.8.31,422.96c-.09,2.34-.14,4.68-.2,7.01-.04,2.33-.12,4.67-.12,7h206.49c0-2.33.21-4.65.34-7,.12-2.34.14-4.68.38-7.01,2.67-26.88,13.05-53.14,31.14-75.18,1.46-1.79,3.12-3.48,4.71-5.2,1.56-1.74,3.02-3.53,4.69-5.2L101.75,191.39ZM527.8,140.14c-.27-.17-.58-.34-.85-.51-1.82-1.11-3.65-2.18-5.49-3.26-1.06-.61-2.13-1.22-3.19-1.82-1.09-.6-2.14-1.2-3.23-1.79-1.87-1.02-3.74-2.03-5.61-3.03-.3-.14-.59-.3-.89-.46-12.11-6.33-24.54-11.9-37.24-16.74-.33-.13-.65-.26-.98-.38-2.77-1.03-5.54-2.07-8.34-3.03-22.56-7.87-45.88-13.4-69.57-16.51l-2.9-.39c-.98-.12-1.95-.21-2.92-.31-1.87-.22-3.73-.43-5.61-.61-.51-.05-1.03-.08-1.57-.14-2.21-.2-4.45-.39-6.67-.56l-2.6-.16c-1.9-.12-3.83-.26-5.73-.34-1.02-.05-2.04-.09-3.05-.12v206.97c10.62,1.1,21.14,3.36,31.35,6.83l152.34-152.31c-5.66-3.92-11.38-7.74-17.26-11.31h0Z" style="fill: #62c4ff;"/>
25
+ <path d="M340.37,89.8c-2.34.05-4.68.05-7.01.14-14.6.59-29.18,2.08-43.64,4.51-.31.05-.63.1-.95.16-2.03.35-4.04.72-6.05,1.1-1.14.22-2.29.43-3.44.65-1.19.24-2.37.48-3.56.75-1.96.41-3.92.84-5.87,1.29-.37.07-.72.16-1.07.24-28.98,6.77-56.99,17.21-83.33,31.07-1.71.92-3.39,1.95-5.1,2.88-2.04,1.12-4.08,2.28-6.11,3.44-1.5.88-3.03,1.67-4.54,2.56-.01.01-.04.03-.05.03-.1.07-.21.13-.31.18-.39.25-.8.44-1.19.68v.03s3.63,6,3.63,6l102.97,170.93c2.01-1.2,4.07-2.31,6.12-3.41,2.07-1.11,4.16-2.16,6.26-3.15,14.55-6.95,30.19-11.33,46.23-12.96,2.33-.24,4.65-.43,7-.55,2.33-.12,4.67-.24,7.01-.24V89.65c-2.34,0-4.67.1-7,.14h0Z" style="fill: #f6f;"/>
26
+ <path d="M694.3,419.9c-.1-1.86-.21-3.7-.34-5.57-.05-.92-.11-1.85-.18-2.77-.14-2.18-.33-4.37-.54-6.55-.04-.56-.09-1.12-.14-1.69-.24-2.45-.5-4.88-.78-7.31-.03-.2-.04-.39-.07-.59l-.04-.27c-.31-2.63-.67-5.26-1.03-7.87l-.04-.25c-2.38-16.5-5.95-32.82-10.67-48.81-.04-.12-.07-.21-.1-.31-.75-2.5-1.52-4.97-2.29-7.44-.12-.33-.22-.65-.33-.98-.73-2.24-1.48-4.46-2.25-6.68l-.63-1.8c-.68-1.92-1.39-3.84-2.09-5.77-.35-.92-.69-1.83-1.06-2.73-.6-1.6-1.22-3.18-1.86-4.75-.5-1.27-1.01-2.51-1.52-3.74-.51-1.24-1.03-2.46-1.54-3.69-.68-1.57-1.37-3.14-2.07-4.69-.39-.88-.78-1.77-1.19-2.65-.85-1.86-1.73-3.73-2.6-5.58-.27-.55-.55-1.12-.82-1.69-1.02-2.12-2.07-4.25-3.14-6.34-.14-.29-.3-.59-.44-.88-1.19-2.31-2.42-4.64-3.65-6.93-.05-.08-.09-.17-.14-.25-6-11.03-12.6-21.74-19.76-32.06l-152.38,152.38c3.46,10.21,5.71,20.74,6.81,31.34h207c-.05-1.03-.08-2.07-.13-3.07h0Z" style="fill: #62c4ff;"/>
27
+ <path d="M488.24,436.97c0,2.34-.22,4.67-.34,7.01s-.16,4.68-.39,7c-2.67,26.9-13.04,53.15-31.13,75.21-1.46,1.79-3.12,3.46-4.71,5.2-1.57,1.73-3.02,3.52-4.69,5.19l146.01,145.98c1.66-1.66,3.22-3.37,4.84-5.06s3.27-3.35,4.84-5.06c10.8-11.7,20.68-23.94,29.58-36.66.37-.51.69-1.01,1.05-1.5,1.09-1.56,2.13-3.14,3.2-4.71.93-1.41,1.86-2.81,2.76-4.24.46-.68.9-1.39,1.33-2.07,33.49-52.57,51.41-112.17,53.82-172.29.09-2.33.14-4.67.18-7.01.05-2.33.12-4.65.12-7h-206.46Z" style="fill: #f6f;"/>
28
+ <path d="M756.04,28.33c-37.77-37.77-99.02-37.77-136.79,0-30.14,30.12-36.17,75.17-18.21,111.33l-210.72,210.7c-36.17-17.94-81.22-11.92-111.36,18.2-37.77,37.77-37.76,99.02,0,136.79,37.79,37.77,99.04,37.76,136.82,0,30.14-30.14,36.15-75.18,18.2-111.35l210.72-210.69c36.18,17.94,81.21,11.92,111.35-18.21,37.77-37.76,37.77-99,0-136.78h0Z" style="fill: #fff;"/>
29
+ </svg>
30
+ `;
31
+ }
32
+ static getGitHubIcon(size = 20) {
33
+ return html `
34
+ <svg width="${size}" height="${size}" id="github-logo" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" style="vertical-align: middle;">
35
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M8 0C3.58 0 0 3.58 0 8C0 11.54 2.29 14.53 5.47 15.59C5.87 15.66 6.02 15.42 6.02 15.21C6.02 15.02 6.01 14.39 6.01 13.72C4 14.09 3.48 13.23 3.32 12.78C3.23 12.55 2.84 11.84 2.5 11.65C2.22 11.5 1.82 11.13 2.49 11.12C3.12 11.11 3.57 11.7 3.72 11.94C4.44 13.15 5.59 12.81 6.05 12.6C6.12 12.08 6.33 11.73 6.56 11.53C4.78 11.33 2.92 10.64 2.92 7.58C2.92 6.71 3.23 5.99 3.74 5.43C3.66 5.23 3.38 4.41 3.82 3.31C3.82 3.31 4.49 3.1 6.02 4.13C6.66 3.95 7.34 3.86 8.02 3.86C8.7 3.86 9.38 3.95 10.02 4.13C11.55 3.09 12.22 3.31 12.22 3.31C12.66 4.41 12.38 5.23 12.3 5.43C12.81 5.99 13.12 6.7 13.12 7.58C13.12 10.65 11.25 11.33 9.47 11.53C9.76 11.78 10.01 12.26 10.01 13.01C10.01 14.08 10 14.94 10 15.21C10 15.42 10.15 15.67 10.55 15.59C13.71 14.53 16 11.53 16 8C16 3.58 12.42 0 8 0Z" transform="scale(64)" fill="currentColor"/>
36
+ </svg>
37
+ `;
38
+ }
39
+ render() {
40
+ if (this.iconType === 'openapi') {
41
+ return DoctorIcon_1.getOpenAPIIcon(this.size);
42
+ }
43
+ return html ``;
44
+ }
45
+ };
46
+ DoctorIcon.styles = css `
47
+ :host {
48
+ display: inline-block;
49
+ }
50
+ `;
51
+ __decorate([
52
+ property({ type: Number })
53
+ ], DoctorIcon.prototype, "size", void 0);
54
+ __decorate([
55
+ property({ type: String })
56
+ ], DoctorIcon.prototype, "iconType", void 0);
57
+ DoctorIcon = DoctorIcon_1 = __decorate([
58
+ customElement("pb33f-doctor-icon")
59
+ ], DoctorIcon);
60
+ export { DoctorIcon };
@@ -28,9 +28,10 @@ export declare class ModelIconComponent extends LitElement {
28
28
  getSize(): string;
29
29
  getIconColor(): string;
30
30
  constructor();
31
+ isLightMode(): boolean;
31
32
  getNodeTypeFromIcon(icon: string): NodeType;
32
33
  static getIconForType(nodeType: NodeType): string;
33
- openapiIcon(): string;
34
+ openapiIcon(): "PHN2ZyBpZD0icGIzM2Zfb3BlbmFwaSIgZGF0YS1uYW1lPSJwYjMzZl9vcGVuYXBpIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA3ODQuMzcgNzg0LjI5Ij4KICA8cGF0aCBkPSJNMjA3LjI4LDQ1MC45N0guMzFjLjA0LDEuMDIuMDcsMi4wMy4xMiwzLjAzLjA4LDEuOTUuMjIsMy44OC4zNCw1LjgzLjA1Ljg0LjA5LDEuNjcuMTYsMi41LjE2LDIuMjUuMzUsNC41LjU2LDYuNzMuMDUuNTEuMDksMS4wMi4xNCwxLjUuMjQsMi41LjUxLDQuOTkuOCw3LjQ3LjAxLjI0LjA0LjQ4LjA4LjcyLjMzLDIuNjcuNjcsNS4zNSwxLjA2LDgsMCwuMDQsMCwuMDguMDEuMSwyLjM5LDE2LjU0LDUuOTYsMzIuODgsMTAuNyw0OC45LjAzLjA3LjA1LjEzLjA3LjIuNzUsMi41NCwxLjUzLDUuMDUsMi4zMyw3LjU0LjA1LjE0LjEuMy4xNC40NHMuMDkuMjkuMTQuNDRjLjczLDIuMjYsMS41LDQuNTEsMi4yOCw2Ljc3LjIuNTYuMzksMS4xNC42LDEuNzEuNjksMS45NSwxLjQsMy45LDIuMTMsNS44Ni4zNC44OC42NywxLjc1Ljk5LDIuNjQuNjQsMS42MiwxLjI2LDMuMjMsMS45LDQuODQuNDgsMS4yMi45OCwyLjQzLDEuNDksMy42My41MiwxLjI3LDEuMDUsMi41MSwxLjU4LDMuNzguNjUsMS41NCwxLjM1LDMuMDcsMi4wMyw0LjYyLjQxLjkyLjgyLDEuODIsMS4yMywyLjczLjg0LDEuODQsMS43LDMuNjksMi41OCw1LjUyLjI5LjU5LjU2LDEuMTguODUsMS43NSwxLjAyLDIuMTIsMi4wNSw0LjIsMy4xLDYuMjguMTguMzEuMzMuNjQuNS45NSwxLjE4LDIuMywyLjM4LDQuNTksMy42Miw2Ljg2LjA1LjEuMTIuMi4xNi4zMS4yNi40Ny41NS45My44MSwxLjRsMTc2Ljc2LTEwNi40Ny42NS0uMzljLTYuOTctMTQuNy0xMS4zMS0zMC4zMy0xMi45My00Ni4yMmgwWiIgc3R5bGU9ImZpbGw6ICMzNTllZDM7Ii8+CiAgPHBhdGggZD0iTTI1OC4xNSw1NDUuOTlsLS41LjUtMTQ1Ljc5LDE0NS43N2MuNzUuNjksMS40OSwxLjQxLDIuMjYsMi4wOCwxLjM2LDEuMjQsMi43NSwyLjQ2LDQuMTIsMy42Ny43Mi42MywxLjQxLDEuMjYsMi4xMywxLjg4LDEuNjUsMS40MywzLjMyLDIuODEsNC45OCw0LjIxLjQ2LjM4Ljg5Ljc1LDEuMzUsMS4xMiwyLjEyLDEuNzQsNC4yNiwzLjQ2LDYuNDIsNS4xNSwyLjA3LDEuNjMsNC4xNCwzLjIyLDYuMjYsNC44MS4wOS4wNS4xNi4xLjI0LjE3LDguOCw2LjU3LDE3LjksMTIuNzIsMjcuMjcsMTguNDQuMzEuMjEuNjQuMzkuOTcuNiwxLjc5LDEuMDYsMy41NywyLjEyLDUuMzcsMy4xNmwzLjI5LDEuODhjMS4wNS42LDIuMDgsMS4xOCwzLjEyLDEuNzUsMS45LDEuMDMsMy43OSwyLjA3LDUuNywzLjA3LjI2LjE0LjUyLjI5LjguNDIsNS4zLDIuNzcsMTAuNjgsNS4zNSwxNi4xMiw3LjgzbDUuMTgtMTIuNTcsNzMuMzMtMTc4LjA0LjI2LS42NWMtOC00LjI5LTE1LjY4LTkuMzYtMjIuODktMTUuMjdoMFoiIHN0eWxlPSJmaWxsOiAjNjJjNGZmOyIvPgogIDxwYXRoIGQ9Ik0yNDIuOTcsNTMxLjQ2Yy0xLjU3LTEuNzQtMy4wOC0zLjUzLTQuNTUtNS4zNi0xLjMxLTEuNjEtMi41Ni0zLjIzLTMuNzgtNC44OC0xLjQtMS44OC0yLjc2LTMuNzktNC4wNS01LjczLTEuMjktMS45NS0yLjU4LTMuOTEtMy43OC01LjlsLTE3Ni45OCwxMDYuNmMyLjcyLDQuNTIsNS41NCw4LjkyLDguNDUsMTMuMjYuMDkuMTYuMTguMzEuMjkuNDYuMDMuMDcuMDcuMS4xLjE3LjA5LjEzLjE4LjI5LjI3LjQzLjAxLjAxLjAzLjAzLjAzLjA1LjI0LjM0LjQ3LjY4LjcxLDEuMDMuMDEuMDEuMDMuMDQuMDUuMDdzLjAxLjAxLjAxLjAzYzMuMDcsNC41NCw2LjI0LDkuMDEsOS40OSwxMy4zOC4wNy4wOS4xNC4xOC4yMS4yNy4wOC4wOS4xNC4xOC4yMS4yNywxLjQzLDEuODcsMi44NCwzLjc0LDQuMyw1LjYuMi4yNS4zOC40OC41OS43MiwxLjQ5LDEuOTIsMy4wMiwzLjgyLDQuNTgsNS42OS4zNy40NC43NS44OSwxLjExLDEuMzUsMS40LDEuNjcsMi44LDMuMzMsNC4yMiw0Ljk4LjYxLjcxLDEuMjQsMS40MywxLjg3LDIuMTIsMS4yMiwxLjM5LDIuNDIsMi43NywzLjY2LDQuMTMuNjguNzUsMS4zOSwxLjUsMi4wOCwyLjI1LjMxLjM1LjYzLjY4Ljk1LDEuMDMuOS45OCwxLjgsMS45NiwyLjcyLDIuOTMuMzcuMzguNzYuNzYsMS4xMiwxLjE1LDEuNjEsMS42NywzLjI0LDMuMzYsNC44OSw1LjAxbDE0Ni4wMS0xNDUuOThjLTEuNjctMS42Ny0zLjI0LTMuNC00Ljc5LTUuMTNoMFoiIHN0eWxlPSJmaWxsOiAjZjZmOyIvPgogIDxwYXRoIGQ9Ik00MzYuNSw1NDUuOTFjLTEuNjEsMS4yOS0zLjIzLDIuNTYtNC44OCwzLjc4bC4zNS42MSwxMDYuNDYsMTc2LjY4YzQuOTMtMy4yMiw5LjgxLTYuNTQsMTQuNTctMTAuMDMsMTAuMy03LjYsMjAuMjctMTUuODMsMjkuODgtMjQuN2wtMTQ1LjgtMTQ1Ljc3LS41OC0uNThaIiBzdHlsZT0iZmlsbDogIzYyYzRmZjsiLz4KICA8cGF0aCBkPSJNNTIyLjk2LDcyOC40NGwtMy42MS02LTk5LjM3LTE2NC45MmMtMi4wMSwxLjItNC4wNywyLjMtNi4xMiwzLjQtMi4wOCwxLjEyLTQuMTYsMi4xNi02LjI4LDMuMTYtMTkuMDksOS4wNS0zOS43NSwxMy42OC02MC40NSwxMy42OC0xMy41NiwwLTI3LjEtMS45Ni00MC4yMS01Ljg3LTIuMjQtLjY3LTQuNDItMS41NC02LjYyLTIuMzMtMi4yMS0uNzctNC40NS0xLjQ1LTYuNjItMi4zNGwtNzMuMjcsMTc3LjkzLTIuODYsNi45Ny0yLjQ2LDUuOTh2LjAzYy4xNy4wOC4zNy4xNC41NS4yMi4yMS4wOC40MS4xNC42LjI0aC4wM2MuMDUuMDMuMS4wNC4xNC4wNSwxLjczLjcyLDMuNDYsMS4zMiw1LjIsMiwyLjE4Ljg1LDQuMzUsMS43MSw2LjU0LDIuNTEsMS4xMi40MSwyLjIyLjg4LDMuMzMsMS4yN2guMDFjMjIuOTYsOC4xLDQ2LjcxLDEzLjc5LDcwLjg1LDE2Ljk2Ljk1LjEyLDEuODguMjUsMi44NC4zOC45OC4xMiwxLjk3LjIxLDIuOTcuMzMsMS44Ni4yMSwzLjcxLjQyLDUuNTguNmwxLjM5LjEyYzIuMjkuMjIsNC41OC40Miw2Ljg1LjU4Ljc4LjA3LDEuNTcuMDksMi4zNC4xNiwyLC4xMyw0LC4yNSw2LC4zNCwxLjIzLjA4LDIuNDYuMSwzLjY5LjE2LDEuNi4wNSwzLjE4LjEyLDQuNzcuMTcsMi4yOS4wNSw0LjYuMDcsNi45LjA4LjU1LDAsMS4wOS4wMSwxLjYzLjAzLDE5LjI5LDAsMzguNTctMS42MSw1Ny42NS00LjgxLjMxLS4wNS42NC0uMS45Ny0uMTQsMi4wMS0uMzUsNC4wMy0uNzMsNi4wNC0xLjEsMS4xNS0uMjIsMi4zMS0uNDQsMy40NC0uNjcsMS4xOC0uMjUsMi4zNy0uNDgsMy41NC0uNzUsMS45Ni0uNDEsMy45Mi0uODQsNS45LTEuMjkuMzUtLjA4LjcxLS4xNCwxLjA2LS4yNSwyOS02Ljc1LDU3LjAxLTE3LjIxLDgzLjMxLTMxLjA1aDBjMS43My0uOTIsMy40MS0xLjk1LDUuMTMtMi44OSwyLjA0LTEuMTEsNC4wNy0yLjI4LDYuMTEtMy40NCwxLjQtLjgsMi44Mi0xLjU0LDQuMjItMi4zOC4wMS0uMDEuMDMtLjAzLjA0LS4wM2guMDFzLjA0LS4wMy4wNy0uMDRsLjAzLS4wMy0uMjYtLjQzLjI2LjQzcy4wMy0uMDEuMDQtLjAxYy4wMy0uMDEuMDQtLjAzLjA3LS4wNC4wOC0uMDUuMTYtLjA5LjI0LS4xNC40NC0uMjcuOS0uNTQsMS4zNi0uODFsLTMuNTgtNS45OVpNMjU4LjIzLDMyOC4wNWMxLjYxLTEuMzEsMy4yNC0yLjU2LDQuODgtMy43OWwtLjM1LS42LTEwNi40Ni0xNzYuN2MtNC45NCwzLjIzLTkuODIsNi41Ni0xNC41OSwxMC4wNS0xMC4yOSw3LjU4LTIwLjI3LDE1LjgxLTI5Ljg1LDI0LjY2bDE0NS44LDE0NS43OS41OC41OVoiIHN0eWxlPSJmaWxsOiAjMzU5ZWQzOyIvPgogIDxwYXRoIGQ9Ik0xMDEuNzUsMTkxLjM5Yy0xLjY2LDEuNjYtMy4yMywzLjM3LTQuODUsNS4wNS0xLjYxLDEuNjktMy4yNiwzLjM2LTQuODQsNS4wNi0xMC42NCwxMS41MS0yMC41LDIzLjcyLTI5LjUsMzYuNTYtLjQzLjU5LS44NSwxLjIyLTEuMjgsMS44Mi0uOTksMS40Ni0xLjk5LDIuOTItMi45NSw0LjM4LTEuMDIsMS41Mi0yLjAzLDMuMDYtMy4wMSw0LjU5LS4zNy41Ni0uNzMsMS4xNC0xLjA5LDEuN0MyMC43LDMwMy4xNCwyLjczLDM2Mi44LjMxLDQyMi45NmMtLjA5LDIuMzQtLjE0LDQuNjgtLjIsNy4wMS0uMDQsMi4zMy0uMTIsNC42Ny0uMTIsN2gyMDYuNDljMC0yLjMzLjIxLTQuNjUuMzQtNywuMTItMi4zNC4xNC00LjY4LjM4LTcuMDEsMi42Ny0yNi44OCwxMy4wNS01My4xNCwzMS4xNC03NS4xOCwxLjQ2LTEuNzksMy4xMi0zLjQ4LDQuNzEtNS4yLDEuNTYtMS43NCwzLjAyLTMuNTMsNC42OS01LjJMMTAxLjc1LDE5MS4zOVpNNTI3LjgsMTQwLjE0Yy0uMjctLjE3LS41OC0uMzQtLjg1LS41MS0xLjgyLTEuMTEtMy42NS0yLjE4LTUuNDktMy4yNi0xLjA2LS42MS0yLjEzLTEuMjItMy4xOS0xLjgyLTEuMDktLjYtMi4xNC0xLjItMy4yMy0xLjc5LTEuODctMS4wMi0zLjc0LTIuMDMtNS42MS0zLjAzLS4zLS4xNC0uNTktLjMtLjg5LS40Ni0xMi4xMS02LjMzLTI0LjU0LTExLjktMzcuMjQtMTYuNzQtLjMzLS4xMy0uNjUtLjI2LS45OC0uMzgtMi43Ny0xLjAzLTUuNTQtMi4wNy04LjM0LTMuMDMtMjIuNTYtNy44Ny00NS44OC0xMy40LTY5LjU3LTE2LjUxbC0yLjktLjM5Yy0uOTgtLjEyLTEuOTUtLjIxLTIuOTItLjMxLTEuODctLjIyLTMuNzMtLjQzLTUuNjEtLjYxLS41MS0uMDUtMS4wMy0uMDgtMS41Ny0uMTQtMi4yMS0uMi00LjQ1LS4zOS02LjY3LS41NmwtMi42LS4xNmMtMS45LS4xMi0zLjgzLS4yNi01LjczLS4zNC0xLjAyLS4wNS0yLjA0LS4wOS0zLjA1LS4xMnYyMDYuOTdjMTAuNjIsMS4xLDIxLjE0LDMuMzYsMzEuMzUsNi44M2wxNTIuMzQtMTUyLjMxYy01LjY2LTMuOTItMTEuMzgtNy43NC0xNy4yNi0xMS4zMWgwWiIgc3R5bGU9ImZpbGw6ICM2MmM0ZmY7Ii8+CiAgPHBhdGggZD0iTTM0MC4zNyw4OS44Yy0yLjM0LjA1LTQuNjguMDUtNy4wMS4xNC0xNC42LjU5LTI5LjE4LDIuMDgtNDMuNjQsNC41MS0uMzEuMDUtLjYzLjEtLjk1LjE2LTIuMDMuMzUtNC4wNC43Mi02LjA1LDEuMS0xLjE0LjIyLTIuMjkuNDMtMy40NC42NS0xLjE5LjI0LTIuMzcuNDgtMy41Ni43NS0xLjk2LjQxLTMuOTIuODQtNS44NywxLjI5LS4zNy4wNy0uNzIuMTYtMS4wNy4yNC0yOC45OCw2Ljc3LTU2Ljk5LDE3LjIxLTgzLjMzLDMxLjA3LTEuNzEuOTItMy4zOSwxLjk1LTUuMSwyLjg4LTIuMDQsMS4xMi00LjA4LDIuMjgtNi4xMSwzLjQ0LTEuNS44OC0zLjAzLDEuNjctNC41NCwyLjU2LS4wMS4wMS0uMDQuMDMtLjA1LjAzLS4xLjA3LS4yMS4xMy0uMzEuMTgtLjM5LjI1LS44LjQ0LTEuMTkuNjh2LjAzczMuNjMsNiwzLjYzLDZsMTAyLjk3LDE3MC45M2MyLjAxLTEuMiw0LjA3LTIuMzEsNi4xMi0zLjQxLDIuMDctMS4xMSw0LjE2LTIuMTYsNi4yNi0zLjE1LDE0LjU1LTYuOTUsMzAuMTktMTEuMzMsNDYuMjMtMTIuOTYsMi4zMy0uMjQsNC42NS0uNDMsNy0uNTUsMi4zMy0uMTIsNC42Ny0uMjQsNy4wMS0uMjRWODkuNjVjLTIuMzQsMC00LjY3LjEtNywuMTRoMFoiIHN0eWxlPSJmaWxsOiAjZjZmOyIvPgogIDxwYXRoIGQ9Ik02OTQuMyw0MTkuOWMtLjEtMS44Ni0uMjEtMy43LS4zNC01LjU3LS4wNS0uOTItLjExLTEuODUtLjE4LTIuNzctLjE0LTIuMTgtLjMzLTQuMzctLjU0LTYuNTUtLjA0LS41Ni0uMDktMS4xMi0uMTQtMS42OS0uMjQtMi40NS0uNS00Ljg4LS43OC03LjMxLS4wMy0uMi0uMDQtLjM5LS4wNy0uNTlsLS4wNC0uMjdjLS4zMS0yLjYzLS42Ny01LjI2LTEuMDMtNy44N2wtLjA0LS4yNWMtMi4zOC0xNi41LTUuOTUtMzIuODItMTAuNjctNDguODEtLjA0LS4xMi0uMDctLjIxLS4xLS4zMS0uNzUtMi41LTEuNTItNC45Ny0yLjI5LTcuNDQtLjEyLS4zMy0uMjItLjY1LS4zMy0uOTgtLjczLTIuMjQtMS40OC00LjQ2LTIuMjUtNi42OGwtLjYzLTEuOGMtLjY4LTEuOTItMS4zOS0zLjg0LTIuMDktNS43Ny0uMzUtLjkyLS42OS0xLjgzLTEuMDYtMi43My0uNi0xLjYtMS4yMi0zLjE4LTEuODYtNC43NS0uNS0xLjI3LTEuMDEtMi41MS0xLjUyLTMuNzQtLjUxLTEuMjQtMS4wMy0yLjQ2LTEuNTQtMy42OS0uNjgtMS41Ny0xLjM3LTMuMTQtMi4wNy00LjY5LS4zOS0uODgtLjc4LTEuNzctMS4xOS0yLjY1LS44NS0xLjg2LTEuNzMtMy43My0yLjYtNS41OC0uMjctLjU1LS41NS0xLjEyLS44Mi0xLjY5LTEuMDItMi4xMi0yLjA3LTQuMjUtMy4xNC02LjM0LS4xNC0uMjktLjMtLjU5LS40NC0uODgtMS4xOS0yLjMxLTIuNDItNC42NC0zLjY1LTYuOTMtLjA1LS4wOC0uMDktLjE3LS4xNC0uMjUtNi0xMS4wMy0xMi42LTIxLjc0LTE5Ljc2LTMyLjA2bC0xNTIuMzgsMTUyLjM4YzMuNDYsMTAuMjEsNS43MSwyMC43NCw2LjgxLDMxLjM0aDIwN2MtLjA1LTEuMDMtLjA4LTIuMDctLjEzLTMuMDdoMFoiIHN0eWxlPSJmaWxsOiAjNjJjNGZmOyIvPgogIDxwYXRoIGQ9Ik00ODguMjQsNDM2Ljk3YzAsMi4zNC0uMjIsNC42Ny0uMzQsNy4wMXMtLjE2LDQuNjgtLjM5LDdjLTIuNjcsMjYuOS0xMy4wNCw1My4xNS0zMS4xMyw3NS4yMS0xLjQ2LDEuNzktMy4xMiwzLjQ2LTQuNzEsNS4yLTEuNTcsMS43My0zLjAyLDMuNTItNC42OSw1LjE5bDE0Ni4wMSwxNDUuOThjMS42Ni0xLjY2LDMuMjItMy4zNyw0Ljg0LTUuMDZzMy4yNy0zLjM1LDQuODQtNS4wNmMxMC44LTExLjcsMjAuNjgtMjMuOTQsMjkuNTgtMzYuNjYuMzctLjUxLjY5LTEuMDEsMS4wNS0xLjUsMS4wOS0xLjU2LDIuMTMtMy4xNCwzLjItNC43MS45My0xLjQxLDEuODYtMi44MSwyLjc2LTQuMjQuNDYtLjY4LjktMS4zOSwxLjMzLTIuMDcsMzMuNDktNTIuNTcsNTEuNDEtMTEyLjE3LDUzLjgyLTE3Mi4yOS4wOS0yLjMzLjE0LTQuNjcuMTgtNy4wMS4wNS0yLjMzLjEyLTQuNjUuMTItN2gtMjA2LjQ2WiIgc3R5bGU9ImZpbGw6ICNmNmY7Ii8+CiAgPHBhdGggZD0iTTc1Ni4wNCwyOC4zM2MtMzcuNzctMzcuNzctOTkuMDItMzcuNzctMTM2Ljc5LDAtMzAuMTQsMzAuMTItMzYuMTcsNzUuMTctMTguMjEsMTExLjMzbC0yMTAuNzIsMjEwLjdjLTM2LjE3LTE3Ljk0LTgxLjIyLTExLjkyLTExMS4zNiwxOC4yLTM3Ljc3LDM3Ljc3LTM3Ljc2LDk5LjAyLDAsMTM2Ljc5LDM3Ljc5LDM3Ljc3LDk5LjA0LDM3Ljc2LDEzNi44MiwwLDMwLjE0LTMwLjE0LDM2LjE1LTc1LjE4LDE4LjItMTExLjM1bDIxMC43Mi0yMTAuNjljMzYuMTgsMTcuOTQsODEuMjEsMTEuOTIsMTExLjM1LTE4LjIxLDM3Ljc3LTM3Ljc2LDM3Ljc3LTk5LDAtMTM2Ljc4aDBaIiBzdHlsZT0iZmlsbDogIzAwMDsiLz4KPC9zdmc+" | "PHN2ZyBpZD0icGIzM2Zfb3BlbmFwaSIgZGF0YS1uYW1lPSJwYjMzZl9vcGVuYXBpIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA3ODQuMzcgNzg0LjI5Ij4KICA8cGF0aCBkPSJNMjA3LjI4LDQ1MC45N0guMzFjLjA0LDEuMDIuMDcsMi4wMy4xMiwzLjAzLjA4LDEuOTUuMjIsMy44OC4zNCw1LjgzLjA1Ljg0LjA5LDEuNjcuMTYsMi41LjE2LDIuMjUuMzUsNC41LjU2LDYuNzMuMDUuNTEuMDksMS4wMi4xNCwxLjUuMjQsMi41LjUxLDQuOTkuOCw3LjQ3LjAxLjI0LjA0LjQ4LjA4LjcyLjMzLDIuNjcuNjcsNS4zNSwxLjA2LDgsMCwuMDQsMCwuMDguMDEuMSwyLjM5LDE2LjU0LDUuOTYsMzIuODgsMTAuNyw0OC45LjAzLjA3LjA1LjEzLjA3LjIuNzUsMi41NCwxLjUzLDUuMDUsMi4zMyw3LjU0LjA1LjE0LjEuMy4xNC40NHMuMDkuMjkuMTQuNDRjLjczLDIuMjYsMS41LDQuNTEsMi4yOCw2Ljc3LjIuNTYuMzksMS4xNC42LDEuNzEuNjksMS45NSwxLjQsMy45LDIuMTMsNS44Ni4zNC44OC42NywxLjc1Ljk5LDIuNjQuNjQsMS42MiwxLjI2LDMuMjMsMS45LDQuODQuNDgsMS4yMi45OCwyLjQzLDEuNDksMy42My41MiwxLjI3LDEuMDUsMi41MSwxLjU4LDMuNzguNjUsMS41NCwxLjM1LDMuMDcsMi4wMyw0LjYyLjQxLjkyLjgyLDEuODIsMS4yMywyLjczLjg0LDEuODQsMS43LDMuNjksMi41OCw1LjUyLjI5LjU5LjU2LDEuMTguODUsMS43NSwxLjAyLDIuMTIsMi4wNSw0LjIsMy4xLDYuMjguMTguMzEuMzMuNjQuNS45NSwxLjE4LDIuMywyLjM4LDQuNTksMy42Miw2Ljg2LjA1LjEuMTIuMi4xNi4zMS4yNi40Ny41NS45My44MSwxLjRsMTc2Ljc2LTEwNi40Ny42NS0uMzljLTYuOTctMTQuNy0xMS4zMS0zMC4zMy0xMi45My00Ni4yMmgwWiIgc3R5bGU9ImZpbGw6ICMzNTllZDM7Ii8+CiAgPHBhdGggZD0iTTI1OC4xNSw1NDUuOTlsLS41LjUtMTQ1Ljc5LDE0NS43N2MuNzUuNjksMS40OSwxLjQxLDIuMjYsMi4wOCwxLjM2LDEuMjQsMi43NSwyLjQ2LDQuMTIsMy42Ny43Mi42MywxLjQxLDEuMjYsMi4xMywxLjg4LDEuNjUsMS40MywzLjMyLDIuODEsNC45OCw0LjIxLjQ2LjM4Ljg5Ljc1LDEuMzUsMS4xMiwyLjEyLDEuNzQsNC4yNiwzLjQ2LDYuNDIsNS4xNSwyLjA3LDEuNjMsNC4xNCwzLjIyLDYuMjYsNC44MS4wOS4wNS4xNi4xLjI0LjE3LDguOCw2LjU3LDE3LjksMTIuNzIsMjcuMjcsMTguNDQuMzEuMjEuNjQuMzkuOTcuNiwxLjc5LDEuMDYsMy41NywyLjEyLDUuMzcsMy4xNmwzLjI5LDEuODhjMS4wNS42LDIuMDgsMS4xOCwzLjEyLDEuNzUsMS45LDEuMDMsMy43OSwyLjA3LDUuNywzLjA3LjI2LjE0LjUyLjI5LjguNDIsNS4zLDIuNzcsMTAuNjgsNS4zNSwxNi4xMiw3LjgzbDUuMTgtMTIuNTcsNzMuMzMtMTc4LjA0LjI2LS42NWMtOC00LjI5LTE1LjY4LTkuMzYtMjIuODktMTUuMjdoMFoiIHN0eWxlPSJmaWxsOiAjNjJjNGZmOyIvPgogIDxwYXRoIGQ9Ik0yNDIuOTcsNTMxLjQ2Yy0xLjU3LTEuNzQtMy4wOC0zLjUzLTQuNTUtNS4zNi0xLjMxLTEuNjEtMi41Ni0zLjIzLTMuNzgtNC44OC0xLjQtMS44OC0yLjc2LTMuNzktNC4wNS01LjczLTEuMjktMS45NS0yLjU4LTMuOTEtMy43OC01LjlsLTE3Ni45OCwxMDYuNmMyLjcyLDQuNTIsNS41NCw4LjkyLDguNDUsMTMuMjYuMDkuMTYuMTguMzEuMjkuNDYuMDMuMDcuMDcuMS4xLjE3LjA5LjEzLjE4LjI5LjI3LjQzLjAxLjAxLjAzLjAzLjAzLjA1LjI0LjM0LjQ3LjY4LjcxLDEuMDMuMDEuMDEuMDMuMDQuMDUuMDdzLjAxLjAxLjAxLjAzYzMuMDcsNC41NCw2LjI0LDkuMDEsOS40OSwxMy4zOC4wNy4wOS4xNC4xOC4yMS4yNy4wOC4wOS4xNC4xOC4yMS4yNywxLjQzLDEuODcsMi44NCwzLjc0LDQuMyw1LjYuMi4yNS4zOC40OC41OS43MiwxLjQ5LDEuOTIsMy4wMiwzLjgyLDQuNTgsNS42OS4zNy40NC43NS44OSwxLjExLDEuMzUsMS40LDEuNjcsMi44LDMuMzMsNC4yMiw0Ljk4LjYxLjcxLDEuMjQsMS40MywxLjg3LDIuMTIsMS4yMiwxLjM5LDIuNDIsMi43NywzLjY2LDQuMTMuNjguNzUsMS4zOSwxLjUsMi4wOCwyLjI1LjMxLjM1LjYzLjY4Ljk1LDEuMDMuOS45OCwxLjgsMS45NiwyLjcyLDIuOTMuMzcuMzguNzYuNzYsMS4xMiwxLjE1LDEuNjEsMS42NywzLjI0LDMuMzYsNC44OSw1LjAxbDE0Ni4wMS0xNDUuOThjLTEuNjctMS42Ny0zLjI0LTMuNC00Ljc5LTUuMTNoMFoiIHN0eWxlPSJmaWxsOiAjZjZmOyIvPgogIDxwYXRoIGQ9Ik00MzYuNSw1NDUuOTFjLTEuNjEsMS4yOS0zLjIzLDIuNTYtNC44OCwzLjc4bC4zNS42MSwxMDYuNDYsMTc2LjY4YzQuOTMtMy4yMiw5LjgxLTYuNTQsMTQuNTctMTAuMDMsMTAuMy03LjYsMjAuMjctMTUuODMsMjkuODgtMjQuN2wtMTQ1LjgtMTQ1Ljc3LS41OC0uNThaIiBzdHlsZT0iZmlsbDogIzYyYzRmZjsiLz4KICA8cGF0aCBkPSJNNTIyLjk2LDcyOC40NGwtMy42MS02LTk5LjM3LTE2NC45MmMtMi4wMSwxLjItNC4wNywyLjMtNi4xMiwzLjQtMi4wOCwxLjEyLTQuMTYsMi4xNi02LjI4LDMuMTYtMTkuMDksOS4wNS0zOS43NSwxMy42OC02MC40NSwxMy42OC0xMy41NiwwLTI3LjEtMS45Ni00MC4yMS01Ljg3LTIuMjQtLjY3LTQuNDItMS41NC02LjYyLTIuMzMtMi4yMS0uNzctNC40NS0xLjQ1LTYuNjItMi4zNGwtNzMuMjcsMTc3LjkzLTIuODYsNi45Ny0yLjQ2LDUuOTh2LjAzYy4xNy4wOC4zNy4xNC41NS4yMi4yMS4wOC40MS4xNC42LjI0aC4wM2MuMDUuMDMuMS4wNC4xNC4wNSwxLjczLjcyLDMuNDYsMS4zMiw1LjIsMiwyLjE4Ljg1LDQuMzUsMS43MSw2LjU0LDIuNTEsMS4xMi40MSwyLjIyLjg4LDMuMzMsMS4yN2guMDFjMjIuOTYsOC4xLDQ2LjcxLDEzLjc5LDcwLjg1LDE2Ljk2Ljk1LjEyLDEuODguMjUsMi44NC4zOC45OC4xMiwxLjk3LjIxLDIuOTcuMzMsMS44Ni4yMSwzLjcxLjQyLDUuNTguNmwxLjM5LjEyYzIuMjkuMjIsNC41OC40Miw2Ljg1LjU4Ljc4LjA3LDEuNTcuMDksMi4zNC4xNiwyLC4xMyw0LC4yNSw2LC4zNCwxLjIzLjA4LDIuNDYuMSwzLjY5LjE2LDEuNi4wNSwzLjE4LjEyLDQuNzcuMTcsMi4yOS4wNSw0LjYuMDcsNi45LjA4LjU1LDAsMS4wOS4wMSwxLjYzLjAzLDE5LjI5LDAsMzguNTctMS42MSw1Ny42NS00LjgxLjMxLS4wNS42NC0uMS45Ny0uMTQsMi4wMS0uMzUsNC4wMy0uNzMsNi4wNC0xLjEsMS4xNS0uMjIsMi4zMS0uNDQsMy40NC0uNjcsMS4xOC0uMjUsMi4zNy0uNDgsMy41NC0uNzUsMS45Ni0uNDEsMy45Mi0uODQsNS45LTEuMjkuMzUtLjA4LjcxLS4xNCwxLjA2LS4yNSwyOS02Ljc1LDU3LjAxLTE3LjIxLDgzLjMxLTMxLjA1aDBjMS43My0uOTIsMy40MS0xLjk1LDUuMTMtMi44OSwyLjA0LTEuMTEsNC4wNy0yLjI4LDYuMTEtMy40NCwxLjQtLjgsMi44Mi0xLjU0LDQuMjItMi4zOC4wMS0uMDEuMDMtLjAzLjA0LS4wM2guMDFzLjA0LS4wMy4wNy0uMDRsLjAzLS4wMy0uMjYtLjQzLjI2LjQzcy4wMy0uMDEuMDQtLjAxYy4wMy0uMDEuMDQtLjAzLjA3LS4wNC4wOC0uMDUuMTYtLjA5LjI0LS4xNC40NC0uMjcuOS0uNTQsMS4zNi0uODFsLTMuNTgtNS45OVpNMjU4LjIzLDMyOC4wNWMxLjYxLTEuMzEsMy4yNC0yLjU2LDQuODgtMy43OWwtLjM1LS42LTEwNi40Ni0xNzYuN2MtNC45NCwzLjIzLTkuODIsNi41Ni0xNC41OSwxMC4wNS0xMC4yOSw3LjU4LTIwLjI3LDE1LjgxLTI5Ljg1LDI0LjY2bDE0NS44LDE0NS43OS41OC41OVoiIHN0eWxlPSJmaWxsOiAjMzU5ZWQzOyIvPgogIDxwYXRoIGQ9Ik0xMDEuNzUsMTkxLjM5Yy0xLjY2LDEuNjYtMy4yMywzLjM3LTQuODUsNS4wNS0xLjYxLDEuNjktMy4yNiwzLjM2LTQuODQsNS4wNi0xMC42NCwxMS41MS0yMC41LDIzLjcyLTI5LjUsMzYuNTYtLjQzLjU5LS44NSwxLjIyLTEuMjgsMS44Mi0uOTksMS40Ni0xLjk5LDIuOTItMi45NSw0LjM4LTEuMDIsMS41Mi0yLjAzLDMuMDYtMy4wMSw0LjU5LS4zNy41Ni0uNzMsMS4xNC0xLjA5LDEuN0MyMC43LDMwMy4xNCwyLjczLDM2Mi44LjMxLDQyMi45NmMtLjA5LDIuMzQtLjE0LDQuNjgtLjIsNy4wMS0uMDQsMi4zMy0uMTIsNC42Ny0uMTIsN2gyMDYuNDljMC0yLjMzLjIxLTQuNjUuMzQtNywuMTItMi4zNC4xNC00LjY4LjM4LTcuMDEsMi42Ny0yNi44OCwxMy4wNS01My4xNCwzMS4xNC03NS4xOCwxLjQ2LTEuNzksMy4xMi0zLjQ4LDQuNzEtNS4yLDEuNTYtMS43NCwzLjAyLTMuNTMsNC42OS01LjJMMTAxLjc1LDE5MS4zOVpNNTI3LjgsMTQwLjE0Yy0uMjctLjE3LS41OC0uMzQtLjg1LS41MS0xLjgyLTEuMTEtMy42NS0yLjE4LTUuNDktMy4yNi0xLjA2LS42MS0yLjEzLTEuMjItMy4xOS0xLjgyLTEuMDktLjYtMi4xNC0xLjItMy4yMy0xLjc5LTEuODctMS4wMi0zLjc0LTIuMDMtNS42MS0zLjAzLS4zLS4xNC0uNTktLjMtLjg5LS40Ni0xMi4xMS02LjMzLTI0LjU0LTExLjktMzcuMjQtMTYuNzQtLjMzLS4xMy0uNjUtLjI2LS45OC0uMzgtMi43Ny0xLjAzLTUuNTQtMi4wNy04LjM0LTMuMDMtMjIuNTYtNy44Ny00NS44OC0xMy40LTY5LjU3LTE2LjUxbC0yLjktLjM5Yy0uOTgtLjEyLTEuOTUtLjIxLTIuOTItLjMxLTEuODctLjIyLTMuNzMtLjQzLTUuNjEtLjYxLS41MS0uMDUtMS4wMy0uMDgtMS41Ny0uMTQtMi4yMS0uMi00LjQ1LS4zOS02LjY3LS41NmwtMi42LS4xNmMtMS45LS4xMi0zLjgzLS4yNi01LjczLS4zNC0xLjAyLS4wNS0yLjA0LS4wOS0zLjA1LS4xMnYyMDYuOTdjMTAuNjIsMS4xLDIxLjE0LDMuMzYsMzEuMzUsNi44M2wxNTIuMzQtMTUyLjMxYy01LjY2LTMuOTItMTEuMzgtNy43NC0xNy4yNi0xMS4zMWgwWiIgc3R5bGU9ImZpbGw6ICM2MmM0ZmY7Ii8+CiAgPHBhdGggZD0iTTM0MC4zNyw4OS44Yy0yLjM0LjA1LTQuNjguMDUtNy4wMS4xNC0xNC42LjU5LTI5LjE4LDIuMDgtNDMuNjQsNC41MS0uMzEuMDUtLjYzLjEtLjk1LjE2LTIuMDMuMzUtNC4wNC43Mi02LjA1LDEuMS0xLjE0LjIyLTIuMjkuNDMtMy40NC42NS0xLjE5LjI0LTIuMzcuNDgtMy41Ni43NS0xLjk2LjQxLTMuOTIuODQtNS44NywxLjI5LS4zNy4wNy0uNzIuMTYtMS4wNy4yNC0yOC45OCw2Ljc3LTU2Ljk5LDE3LjIxLTgzLjMzLDMxLjA3LTEuNzEuOTItMy4zOSwxLjk1LTUuMSwyLjg4LTIuMDQsMS4xMi00LjA4LDIuMjgtNi4xMSwzLjQ0LTEuNS44OC0zLjAzLDEuNjctNC41NCwyLjU2LS4wMS4wMS0uMDQuMDMtLjA1LjAzLS4xLjA3LS4yMS4xMy0uMzEuMTgtLjM5LjI1LS44LjQ0LTEuMTkuNjh2LjAzczMuNjMsNiwzLjYzLDZsMTAyLjk3LDE3MC45M2MyLjAxLTEuMiw0LjA3LTIuMzEsNi4xMi0zLjQxLDIuMDctMS4xMSw0LjE2LTIuMTYsNi4yNi0zLjE1LDE0LjU1LTYuOTUsMzAuMTktMTEuMzMsNDYuMjMtMTIuOTYsMi4zMy0uMjQsNC42NS0uNDMsNy0uNTUsMi4zMy0uMTIsNC42Ny0uMjQsNy4wMS0uMjRWODkuNjVjLTIuMzQsMC00LjY3LjEtNywuMTRoMFoiIHN0eWxlPSJmaWxsOiAjZjZmOyIvPgogIDxwYXRoIGQ9Ik02OTQuMyw0MTkuOWMtLjEtMS44Ni0uMjEtMy43LS4zNC01LjU3LS4wNS0uOTItLjExLTEuODUtLjE4LTIuNzctLjE0LTIuMTgtLjMzLTQuMzctLjU0LTYuNTUtLjA0LS41Ni0uMDktMS4xMi0uMTQtMS42OS0uMjQtMi40NS0uNS00Ljg4LS43OC03LjMxLS4wMy0uMi0uMDQtLjM5LS4wNy0uNTlsLS4wNC0uMjdjLS4zMS0yLjYzLS42Ny01LjI2LTEuMDMtNy44N2wtLjA0LS4yNWMtMi4zOC0xNi41LTUuOTUtMzIuODItMTAuNjctNDguODEtLjA0LS4xMi0uMDctLjIxLS4xLS4zMS0uNzUtMi41LTEuNTItNC45Ny0yLjI5LTcuNDQtLjEyLS4zMy0uMjItLjY1LS4zMy0uOTgtLjczLTIuMjQtMS40OC00LjQ2LTIuMjUtNi42OGwtLjYzLTEuOGMtLjY4LTEuOTItMS4zOS0zLjg0LTIuMDktNS43Ny0uMzUtLjkyLS42OS0xLjgzLTEuMDYtMi43My0uNi0xLjYtMS4yMi0zLjE4LTEuODYtNC43NS0uNS0xLjI3LTEuMDEtMi41MS0xLjUyLTMuNzQtLjUxLTEuMjQtMS4wMy0yLjQ2LTEuNTQtMy42OS0uNjgtMS41Ny0xLjM3LTMuMTQtMi4wNy00LjY5LS4zOS0uODgtLjc4LTEuNzctMS4xOS0yLjY1LS44NS0xLjg2LTEuNzMtMy43My0yLjYtNS41OC0uMjctLjU1LS41NS0xLjEyLS44Mi0xLjY5LTEuMDItMi4xMi0yLjA3LTQuMjUtMy4xNC02LjM0LS4xNC0uMjktLjMtLjU5LS40NC0uODgtMS4xOS0yLjMxLTIuNDItNC42NC0zLjY1LTYuOTMtLjA1LS4wOC0uMDktLjE3LS4xNC0uMjUtNi0xMS4wMy0xMi42LTIxLjc0LTE5Ljc2LTMyLjA2bC0xNTIuMzgsMTUyLjM4YzMuNDYsMTAuMjEsNS43MSwyMC43NCw2LjgxLDMxLjM0aDIwN2MtLjA1LTEuMDMtLjA4LTIuMDctLjEzLTMuMDdoMFoiIHN0eWxlPSJmaWxsOiAjNjJjNGZmOyIvPgogIDxwYXRoIGQ9Ik00ODguMjQsNDM2Ljk3YzAsMi4zNC0uMjIsNC42Ny0uMzQsNy4wMXMtLjE2LDQuNjgtLjM5LDdjLTIuNjcsMjYuOS0xMy4wNCw1My4xNS0zMS4xMyw3NS4yMS0xLjQ2LDEuNzktMy4xMiwzLjQ2LTQuNzEsNS4yLTEuNTcsMS43My0zLjAyLDMuNTItNC42OSw1LjE5bDE0Ni4wMSwxNDUuOThjMS42Ni0xLjY2LDMuMjItMy4zNyw0Ljg0LTUuMDZzMy4yNy0zLjM1LDQuODQtNS4wNmMxMC44LTExLjcsMjAuNjgtMjMuOTQsMjkuNTgtMzYuNjYuMzctLjUxLjY5LTEuMDEsMS4wNS0xLjUsMS4wOS0xLjU2LDIuMTMtMy4xNCwzLjItNC43MS45My0xLjQxLDEuODYtMi44MSwyLjc2LTQuMjQuNDYtLjY4LjktMS4zOSwxLjMzLTIuMDcsMzMuNDktNTIuNTcsNTEuNDEtMTEyLjE3LDUzLjgyLTE3Mi4yOS4wOS0yLjMzLjE0LTQuNjcuMTgtNy4wMS4wNS0yLjMzLjEyLTQuNjUuMTItN2gtMjA2LjQ2WiIgc3R5bGU9ImZpbGw6ICNmNmY7Ii8+CiAgPHBhdGggZD0iTTc1Ni4wNCwyOC4zM2MtMzcuNzctMzcuNzctOTkuMDItMzcuNzctMTM2Ljc5LDAtMzAuMTQsMzAuMTItMzYuMTcsNzUuMTctMTguMjEsMTExLjMzbC0yMTAuNzIsMjEwLjdjLTM2LjE3LTE3Ljk0LTgxLjIyLTExLjkyLTExMS4zNiwxOC4yLTM3Ljc3LDM3Ljc3LTM3Ljc2LDk5LjAyLDAsMTM2Ljc5LDM3Ljc5LDM3Ljc3LDk5LjA0LDM3Ljc2LDEzNi44MiwwLDMwLjE0LTMwLjE0LDM2LjE1LTc1LjE4LDE4LjItMTExLjM1bDIxMC43Mi0yMTAuNjljMzYuMTgsMTcuOTQsODEuMjEsMTEuOTIsMTExLjM1LTE4LjIxLDM3Ljc3LTM3Ljc2LDM3Ljc3LTk5LDAtMTM2Ljc4aDBaIiBzdHlsZT0iZmlsbDogI2ZmZjsiLz4KPC9zdmc+";
34
35
  goIcon(): string;
35
36
  typescriptIcon(): string;
36
37
  csIcon(): string;