raffel 1.1.97 → 1.1.98-next.e243022

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 (117) hide show
  1. package/dist/docs/try-it-proxy.d.ts +15 -0
  2. package/dist/docs/try-it-proxy.d.ts.map +1 -1
  3. package/dist/docs/try-it-proxy.js +54 -0
  4. package/dist/docs/try-it-proxy.js.map +1 -1
  5. package/dist/docs/ui/assets/marked-renderer.js +13 -2
  6. package/dist/docs/ui/assets/protocol-console.js +13 -1
  7. package/dist/docs/ui/assets/raffel-docs.css +16 -115
  8. package/dist/docs/ui/assets/raffel-docs.js +174 -4
  9. package/dist/docs/ui/client-script/index.d.ts.map +1 -1
  10. package/dist/docs/ui/client-script/index.js +3 -95
  11. package/dist/docs/ui/client-script/index.js.map +1 -1
  12. package/dist/docs/ui/html-builder.d.ts.map +1 -1
  13. package/dist/docs/ui/html-builder.js +7 -5
  14. package/dist/docs/ui/html-builder.js.map +1 -1
  15. package/dist/docs/ui/html-shell.d.ts +0 -4
  16. package/dist/docs/ui/html-shell.d.ts.map +1 -1
  17. package/dist/docs/ui/html-shell.js +0 -14
  18. package/dist/docs/ui/html-shell.js.map +1 -1
  19. package/dist/docs/ui/runtime/index.js +174 -4
  20. package/dist/docs/ui/runtime/index.js.map +1 -1
  21. package/dist/docs/ui/runtime/marked-renderer.js +13 -2
  22. package/dist/docs/ui/runtime/marked-renderer.js.map +1 -1
  23. package/dist/docs/ui/runtime/protocol-console.d.ts +2 -0
  24. package/dist/docs/ui/runtime/protocol-console.d.ts.map +1 -1
  25. package/dist/docs/ui/runtime/protocol-console.js +13 -1
  26. package/dist/docs/ui/runtime/protocol-console.js.map +1 -1
  27. package/dist/docs/ui/style-sections/content.d.ts +1 -1
  28. package/dist/docs/ui/style-sections/content.d.ts.map +1 -1
  29. package/dist/docs/ui/style-sections/content.js +11 -1
  30. package/dist/docs/ui/style-sections/content.js.map +1 -1
  31. package/dist/docs/ui/style-sections/shell.d.ts.map +1 -1
  32. package/dist/docs/ui/style-sections/shell.js +5 -114
  33. package/dist/docs/ui/style-sections/shell.js.map +1 -1
  34. package/dist/docs/usd-middleware.d.ts +2 -0
  35. package/dist/docs/usd-middleware.d.ts.map +1 -1
  36. package/dist/docs/usd-middleware.js +37 -1
  37. package/dist/docs/usd-middleware.js.map +1 -1
  38. package/dist/server/builder/execution-http-docs.d.ts.map +1 -1
  39. package/dist/server/builder/execution-http-docs.js +8 -0
  40. package/dist/server/builder/execution-http-docs.js.map +1 -1
  41. package/dist/server/rest-middleware.d.ts.map +1 -1
  42. package/dist/server/rest-middleware.js +26 -0
  43. package/dist/server/rest-middleware.js.map +1 -1
  44. package/dist/ui/docs/try-it-proxy.d.ts +15 -0
  45. package/dist/ui/docs/try-it-proxy.d.ts.map +1 -1
  46. package/dist/ui/docs/ui/client-script/index.d.ts.map +1 -1
  47. package/dist/ui/docs/ui/html-builder.d.ts.map +1 -1
  48. package/dist/ui/docs/ui/html-shell.d.ts +0 -4
  49. package/dist/ui/docs/ui/html-shell.d.ts.map +1 -1
  50. package/dist/ui/docs/ui/runtime/protocol-console.d.ts +2 -0
  51. package/dist/ui/docs/ui/runtime/protocol-console.d.ts.map +1 -1
  52. package/dist/ui/docs/ui/style-sections/content.d.ts +1 -1
  53. package/dist/ui/docs/ui/style-sections/content.d.ts.map +1 -1
  54. package/dist/ui/docs/ui/style-sections/shell.d.ts.map +1 -1
  55. package/dist/ui/docs/usd-middleware.d.ts +2 -0
  56. package/dist/ui/docs/usd-middleware.d.ts.map +1 -1
  57. package/package.json +1 -1
  58. package/dist/docs/ui/client-script/cards-and-code.d.ts +0 -5
  59. package/dist/docs/ui/client-script/cards-and-code.d.ts.map +0 -1
  60. package/dist/docs/ui/client-script/cards-and-code.js +0 -5
  61. package/dist/docs/ui/client-script/cards-and-code.js.map +0 -1
  62. package/dist/docs/ui/client-script/content.d.ts +0 -5
  63. package/dist/docs/ui/client-script/content.d.ts.map +0 -1
  64. package/dist/docs/ui/client-script/content.js +0 -412
  65. package/dist/docs/ui/client-script/content.js.map +0 -1
  66. package/dist/docs/ui/client-script/docs-pages.d.ts +0 -5
  67. package/dist/docs/ui/client-script/docs-pages.d.ts.map +0 -1
  68. package/dist/docs/ui/client-script/docs-pages.js +0 -153
  69. package/dist/docs/ui/client-script/docs-pages.js.map +0 -1
  70. package/dist/docs/ui/client-script/endpoint-details.d.ts +0 -5
  71. package/dist/docs/ui/client-script/endpoint-details.d.ts.map +0 -1
  72. package/dist/docs/ui/client-script/endpoint-details.js +0 -5
  73. package/dist/docs/ui/client-script/endpoint-details.js.map +0 -1
  74. package/dist/docs/ui/client-script/init.d.ts +0 -5
  75. package/dist/docs/ui/client-script/init.d.ts.map +0 -1
  76. package/dist/docs/ui/client-script/init.js +0 -227
  77. package/dist/docs/ui/client-script/init.js.map +0 -1
  78. package/dist/docs/ui/client-script/markdown.d.ts +0 -5
  79. package/dist/docs/ui/client-script/markdown.d.ts.map +0 -1
  80. package/dist/docs/ui/client-script/markdown.js +0 -438
  81. package/dist/docs/ui/client-script/markdown.js.map +0 -1
  82. package/dist/docs/ui/client-script/navigation.d.ts +0 -5
  83. package/dist/docs/ui/client-script/navigation.d.ts.map +0 -1
  84. package/dist/docs/ui/client-script/navigation.js +0 -548
  85. package/dist/docs/ui/client-script/navigation.js.map +0 -1
  86. package/dist/docs/ui/client-script/protocols.d.ts +0 -5
  87. package/dist/docs/ui/client-script/protocols.d.ts.map +0 -1
  88. package/dist/docs/ui/client-script/protocols.js +0 -5
  89. package/dist/docs/ui/client-script/protocols.js.map +0 -1
  90. package/dist/docs/ui/client-script/schema-rendering.d.ts +0 -5
  91. package/dist/docs/ui/client-script/schema-rendering.d.ts.map +0 -1
  92. package/dist/docs/ui/client-script/schema-rendering.js +0 -5
  93. package/dist/docs/ui/client-script/schema-rendering.js.map +0 -1
  94. package/dist/docs/ui/client-script/try-it.d.ts +0 -5
  95. package/dist/docs/ui/client-script/try-it.d.ts.map +0 -1
  96. package/dist/docs/ui/client-script/try-it.js +0 -5
  97. package/dist/docs/ui/client-script/try-it.js.map +0 -1
  98. package/dist/ui/docs/ui/client-script/cards-and-code.d.ts +0 -5
  99. package/dist/ui/docs/ui/client-script/cards-and-code.d.ts.map +0 -1
  100. package/dist/ui/docs/ui/client-script/content.d.ts +0 -5
  101. package/dist/ui/docs/ui/client-script/content.d.ts.map +0 -1
  102. package/dist/ui/docs/ui/client-script/docs-pages.d.ts +0 -5
  103. package/dist/ui/docs/ui/client-script/docs-pages.d.ts.map +0 -1
  104. package/dist/ui/docs/ui/client-script/endpoint-details.d.ts +0 -5
  105. package/dist/ui/docs/ui/client-script/endpoint-details.d.ts.map +0 -1
  106. package/dist/ui/docs/ui/client-script/init.d.ts +0 -5
  107. package/dist/ui/docs/ui/client-script/init.d.ts.map +0 -1
  108. package/dist/ui/docs/ui/client-script/markdown.d.ts +0 -5
  109. package/dist/ui/docs/ui/client-script/markdown.d.ts.map +0 -1
  110. package/dist/ui/docs/ui/client-script/navigation.d.ts +0 -5
  111. package/dist/ui/docs/ui/client-script/navigation.d.ts.map +0 -1
  112. package/dist/ui/docs/ui/client-script/protocols.d.ts +0 -5
  113. package/dist/ui/docs/ui/client-script/protocols.d.ts.map +0 -1
  114. package/dist/ui/docs/ui/client-script/schema-rendering.d.ts +0 -5
  115. package/dist/ui/docs/ui/client-script/schema-rendering.d.ts.map +0 -1
  116. package/dist/ui/docs/ui/client-script/try-it.d.ts +0 -5
  117. package/dist/ui/docs/ui/client-script/try-it.d.ts.map +0 -1
@@ -13,4 +13,19 @@ export interface DocsTryItProxyOptions {
13
13
  fetchImpl?: typeof fetch;
14
14
  }
15
15
  export declare function executeDocsTryItProxy(payload: DocsTryItRequest, options: DocsTryItProxyOptions): Promise<Response>;
16
+ export interface DocsTryItStreamRequest {
17
+ url: string;
18
+ /** Optional bearer/authorization value forwarded upstream (EventSource cannot set headers itself). */
19
+ authorization?: string;
20
+ }
21
+ /**
22
+ * Same-origin proxy for a docs "try it out" SSE / EventSource console.
23
+ *
24
+ * Unlike {@link executeDocsTryItProxy} this does NOT buffer the response — it
25
+ * pipes the upstream `text/event-stream` body straight back so an infinite
26
+ * stream keeps flowing. The same origin allowlist applies: only declared USD
27
+ * server origins (or explicitly configured `allowedOrigins`) are reachable, so
28
+ * the console cannot be pointed at an arbitrary host.
29
+ */
30
+ export declare function executeDocsTryItStreamProxy(payload: DocsTryItStreamRequest, options: DocsTryItProxyOptions): Promise<Response>;
16
31
  //# sourceMappingURL=try-it-proxy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"try-it-proxy.d.ts","sourceRoot":"","sources":["../../src/docs/try-it-proxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAErD,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,SAAS,EAAE,CAAA;IACrB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAA;CACzB;AAED,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,QAAQ,CAAC,CA6DnB"}
1
+ {"version":3,"file":"try-it-proxy.d.ts","sourceRoot":"","sources":["../../src/docs/try-it-proxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAErD,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,SAAS,EAAE,CAAA;IACrB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAA;CACzB;AAED,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,QAAQ,CAAC,CA6DnB;AAED,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,CAAA;IACX,sGAAsG;IACtG,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,sBAAsB,EAC/B,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,QAAQ,CAAC,CAsDnB"}
@@ -60,6 +60,60 @@ export async function executeDocsTryItProxy(payload, options) {
60
60
  clearTimeout(timeout);
61
61
  }
62
62
  }
63
+ /**
64
+ * Same-origin proxy for a docs "try it out" SSE / EventSource console.
65
+ *
66
+ * Unlike {@link executeDocsTryItProxy} this does NOT buffer the response — it
67
+ * pipes the upstream `text/event-stream` body straight back so an infinite
68
+ * stream keeps flowing. The same origin allowlist applies: only declared USD
69
+ * server origins (or explicitly configured `allowedOrigins`) are reachable, so
70
+ * the console cannot be pointed at an arbitrary host.
71
+ */
72
+ export async function executeDocsTryItStreamProxy(payload, options) {
73
+ const target = parseTarget(payload?.url ?? '');
74
+ const allowedServers = resolveServerUrls(options.servers ?? []);
75
+ const allowedOrigins = new Set((options.allowedOrigins ?? []).flatMap(origin => {
76
+ const parsed = parseTarget(origin);
77
+ return parsed ? [parsed.origin] : [];
78
+ }));
79
+ if (!target || (!allowedOrigins.has(target.origin) && !allowedServers.some(server => isWithinServer(target, server)))) {
80
+ return problem(403, 'Request target is not allowed', 'The documentation proxy only connects to declared API server origins.');
81
+ }
82
+ const headers = new Headers({ accept: 'text/event-stream' });
83
+ if (payload.authorization)
84
+ headers.set('authorization', payload.authorization);
85
+ // Guard only the connection handshake; once headers arrive we stop the timer
86
+ // so the (potentially infinite) stream body is never aborted mid-flight.
87
+ const controller = new AbortController();
88
+ const timeout = setTimeout(() => controller.abort(), options.timeoutMs ?? 15_000);
89
+ let upstream;
90
+ try {
91
+ upstream = await (options.fetchImpl ?? fetch)(target.toString(), {
92
+ method: 'GET',
93
+ headers,
94
+ redirect: 'manual',
95
+ signal: controller.signal,
96
+ });
97
+ }
98
+ catch {
99
+ clearTimeout(timeout);
100
+ const timedOut = controller.signal.aborted;
101
+ return problem(timedOut ? 504 : 502, timedOut ? 'Upstream stream timed out' : 'Upstream stream failed', timedOut
102
+ ? 'The declared upstream server did not start the stream before the configured timeout.'
103
+ : 'The declared upstream server could not open the stream.');
104
+ }
105
+ clearTimeout(timeout);
106
+ if (!upstream.ok || !upstream.body) {
107
+ return problem(upstream.status >= 400 ? upstream.status : 502, 'Upstream stream unavailable', 'The declared upstream server did not return a readable event stream.');
108
+ }
109
+ return new Response(upstream.body, {
110
+ status: 200,
111
+ headers: {
112
+ 'Content-Type': 'text/event-stream; charset=utf-8',
113
+ 'Cache-Control': 'no-store',
114
+ },
115
+ });
116
+ }
63
117
  const HOP_BY_HOP_HEADERS = new Set([
64
118
  'connection', 'keep-alive', 'proxy-authenticate', 'proxy-authorization',
65
119
  'te', 'trailer', 'transfer-encoding', 'upgrade', 'host', 'content-length',
@@ -1 +1 @@
1
- {"version":3,"file":"try-it-proxy.js","sourceRoot":"","sources":["../../src/docs/try-it-proxy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"try-it-proxy.js","sourceRoot":"","sources":["../../src/docs/try-it-proxy.ts"],"names":[],"mappings":"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"}
@@ -70,7 +70,11 @@ function buildRenderer(currentPath, seenHeadingIds, deps) {
70
70
  return `<h${token.depth} class="md-h${token.depth}" id="${deps.escapeAttr(id)}"${ignored}><a class="heading-anchor" href="${deps.escapeAttr(href)}">#</a>${deps.parseMarkdown(parsed.title, currentPath).replace(/^<p class="md-p">|<\/p>\n?$/g, '')}</h${token.depth}>`;
71
71
  },
72
72
  paragraph(token) { return `<p class="md-p">${inline(this, token.tokens)}</p>`; },
73
- list(token) { const tag = token.ordered ? 'ol' : 'ul'; return `<${tag} class="md-list">${token.items.map((item) => this.listitem(item)).join('')}</${tag}>`; },
73
+ list(token) {
74
+ const tag = token.ordered ? 'ol' : 'ul';
75
+ const start = token.ordered && token.start && token.start !== 1 ? ` start="${deps.escapeAttr(token.start)}"` : '';
76
+ return `<${tag} class="md-list"${start}>${token.items.map((item) => this.listitem(item)).join('')}</${tag}>`;
77
+ },
74
78
  listitem(item) { return `<li>${item.task ? `<input type="checkbox" disabled${item.checked ? ' checked' : ''}> ` : ''}${this.parser.parse(item.tokens)}</li>`; },
75
79
  codespan(token) { return `<code class="md-inline-code">${deps.esc(token.text)}</code>`; },
76
80
  code(token) {
@@ -106,7 +110,14 @@ function buildRenderer(currentPath, seenHeadingIds, deps) {
106
110
  const classAttr = parsed.attrs.classes.length > 0 ? '' : ' class="md-image"';
107
111
  return `<img${classAttr} src="${deps.escapeAttr(resolved)}" alt="${deps.escapeAttr(token.text)}"${attrs}>`;
108
112
  },
109
- text(token) { return deps.renderEmojiShorthand(deps.esc(token.text)); },
113
+ text(token) {
114
+ // A block-level `text` token (e.g. an item in a tight list) carries its
115
+ // inline markup as child tokens. The default renderer recurses into them;
116
+ // returning the raw `token.text` would leak literal `**`, backticks, etc.
117
+ if (token.tokens && token.tokens.length)
118
+ return this.parser.parseInline(token.tokens);
119
+ return deps.renderEmojiShorthand(deps.esc(token.text));
120
+ },
110
121
  };
111
122
  }
112
123
  function isSafeMarkedUrl(url) {
@@ -1,3 +1,15 @@
1
+ /**
2
+ * Resolve the URL an EventSource should open: the raw upstream in `direct`
3
+ * mode, or the same-origin `-/stream` proxy (with the upstream passed as a
4
+ * `url` query param) when the docs are configured for `proxy` mode. Routing
5
+ * through the proxy avoids CORS and keeps the stream on the declared origin.
6
+ */
7
+ function resolveStreamUrl(tryItConfig, target) {
8
+ if (tryItConfig?.mode === 'proxy' && tryItConfig.streamProxyUrl) {
9
+ return `${tryItConfig.streamProxyUrl}?url=${encodeURIComponent(target)}`;
10
+ }
11
+ return target;
12
+ }
1
13
  export function appendProtocolConsole(container, deps) {
2
14
  if (deps.activeProtocol === 'http')
3
15
  return;
@@ -76,7 +88,7 @@ function bindLiveConsole(panel, deps) {
76
88
  run.textContent = 'Connect';
77
89
  return;
78
90
  }
79
- events = new EventSource(url.value);
91
+ events = new EventSource(resolveStreamUrl(deps.tryItConfig, url.value));
80
92
  events.onopen = () => { run.textContent = 'Close'; write('connected'); };
81
93
  events.onmessage = (event) => write(`event ${event.data}`);
82
94
  events.onerror = () => write('stream error');
@@ -543,120 +543,11 @@
543
543
  }
544
544
 
545
545
  /* ========== INTRODUCTION SECTION ========== */
546
- .introduction {
547
- background: var(--bg-color);
548
- padding: 80px 40px;
549
- max-width: 100%;
550
- }
551
-
552
- .introduction-content {
553
- max-width: 900px;
554
- margin: 0 auto;
555
- font-size: 1.1em;
556
- line-height: 1.8;
557
- }
558
-
559
- .introduction-content h1 {
560
- font-size: 2.5em;
561
- margin-bottom: 24px;
562
- color: var(--text-color);
563
- font-weight: 700;
564
- border-bottom: 2px solid var(--border-color);
565
- padding-bottom: 16px;
566
- }
567
-
568
- .introduction-content h2 {
569
- font-size: 1.8em;
570
- margin: 48px 0 16px;
571
- color: var(--text-color);
572
- font-weight: 600;
573
- }
574
-
575
- .introduction-content h3 {
576
- font-size: 1.4em;
577
- margin: 32px 0 12px;
578
- color: var(--text-color);
579
- font-weight: 600;
580
- }
581
-
582
- .introduction-content p {
583
- margin-bottom: 16px;
584
- color: var(--text-muted);
585
- }
586
-
587
- .introduction-content ul,
588
- .introduction-content ol {
589
- margin: 16px 0;
590
- padding-left: 24px;
591
- }
592
-
593
- .introduction-content li {
594
- margin-bottom: 8px;
595
- color: var(--text-muted);
596
- }
597
-
598
- .introduction-content pre {
599
- background: var(--code-bg);
600
- border-radius: 8px;
601
- padding: 20px;
602
- overflow-x: auto;
603
- margin: 24px 0;
604
- }
605
-
606
- .introduction-content code {
607
- font-family: 'JetBrains Mono', 'Fira Code', monospace;
608
- font-size: 0.9em;
609
- }
610
-
611
- .introduction-content p code {
612
- background: var(--code-bg);
613
- padding: 2px 6px;
614
- border-radius: 4px;
615
- }
616
-
617
- .introduction-content blockquote {
618
- border-left: 4px solid var(--primary-color);
619
- padding: 16px 24px;
620
- margin: 24px 0;
621
- background: var(--hover-bg);
622
- border-radius: 0 8px 8px 0;
623
- }
624
-
625
- .introduction-content blockquote p {
626
- margin: 0;
627
- }
628
-
629
- .introduction-content a {
630
- color: var(--primary-color);
631
- text-decoration: none;
632
- }
633
-
634
- .introduction-content a:hover {
635
- text-decoration: underline;
636
- }
637
-
638
- .introduction-content table {
639
- width: 100%;
640
- border-collapse: collapse;
641
- margin: 24px 0;
642
- }
643
-
644
- .introduction-content th,
645
- .introduction-content td {
646
- border: 1px solid var(--border-color);
647
- padding: 12px 16px;
648
- text-align: left;
649
- }
650
-
651
- .introduction-content th {
652
- background: var(--code-bg);
653
- font-weight: 600;
654
- }
655
-
656
- .introduction-content hr {
657
- border: none;
658
- border-top: 1px solid var(--border-color);
659
- margin: 48px 0;
546
+ /* Rendered inside #mainContent on the root view, right after the overview
547
+ and before authentication/endpoints. Typography comes from
548
+ .markdown-content; only the surrounding spacing is set here. */
549
+ .docs-introduction {
550
+ margin: 32px 0;
660
551
  }
661
552
 
662
553
  /* ========== LAYOUT ========== */
@@ -1396,7 +1287,7 @@
1396
1287
 
1397
1288
  /* ========== BREADCRUMBS ========== */
1398
1289
  .docs-breadcrumb {
1399
- margin: 0 0 16px 0;
1290
+ margin: 0 0 20px 0;
1400
1291
  font-size: 12px;
1401
1292
  color: var(--text-muted);
1402
1293
  }
@@ -1798,6 +1689,16 @@
1798
1689
  color: var(--text-secondary);
1799
1690
  }
1800
1691
 
1692
+ /* The global `* { margin: 0 }` reset strips the UA heading margins; every
1693
+ other md heading restores its own, so md-h1 needs one too — otherwise the
1694
+ page title sits flush against the breadcrumb above and the content below. */
1695
+ .markdown-content .md-h1 {
1696
+ font-weight: 700;
1697
+ color: var(--text-primary);
1698
+ line-height: 1.25;
1699
+ margin: 0 0 24px 0;
1700
+ }
1701
+
1801
1702
  .markdown-content .md-h2 {
1802
1703
  font-size: 16px;
1803
1704
  font-weight: 600;
@@ -2287,11 +2287,168 @@ function renderAsyncContracts(title, entries, callbacks = false) {
2287
2287
  });
2288
2288
  return section;
2289
2289
  }
2290
+ // Merge content-type declarations across the three USD layers (operation →
2291
+ // protocol → global) the same way the reference generator does, so a console
2292
+ // row shows the effective default plus every supported media type.
2293
+ function resolveEffectiveContentTypes(operationTypes, protocolTypes) {
2294
+ const globalTypes = (xUsd && xUsd.contentTypes) ? xUsd.contentTypes : {};
2295
+ const defaultType = (operationTypes && operationTypes.default)
2296
+ || (protocolTypes && protocolTypes.default)
2297
+ || globalTypes.default
2298
+ || 'application/json';
2299
+ const supportedList = (operationTypes && operationTypes.supported)
2300
+ || (protocolTypes && protocolTypes.supported)
2301
+ || globalTypes.supported
2302
+ || [];
2303
+ const supported = Array.isArray(supportedList) ? supportedList.slice() : [];
2304
+ if (defaultType && supported.indexOf(defaultType) === -1)
2305
+ supported.unshift(defaultType);
2306
+ return { default: defaultType, supported };
2307
+ }
2308
+ function appendContentTypesSection(container, label, contentTypes) {
2309
+ if (!contentTypes)
2310
+ return;
2311
+ const section = doc.createElement('div');
2312
+ section.className = 'endpoint-subsection';
2313
+ section.innerHTML = `<div class="subsection-label">${esc(label)}</div>`;
2314
+ const grid = doc.createElement('div');
2315
+ grid.className = 'info-grid';
2316
+ const supportedText = (contentTypes.supported && contentTypes.supported.length > 0)
2317
+ ? contentTypes.supported.join(', ')
2318
+ : contentTypes.default;
2319
+ grid.innerHTML =
2320
+ `<div class="info-card"><div class="info-card-title">Default</div><div class="info-card-value">${esc(contentTypes.default || 'application/json')}</div></div>` +
2321
+ `<div class="info-card"><div class="info-card-title">Supported</div><div class="info-card-value">${esc(supportedText || 'application/json')}</div></div>`;
2322
+ section.appendChild(grid);
2323
+ container.appendChild(section);
2324
+ }
2325
+ // Multi-language client snippets for WebSocket channels.
2326
+ function generateWsCodeSample(lang, url, path, data) {
2327
+ const channelType = data?.type || 'public';
2328
+ const subscribeMsg = { type: 'subscribe', channel: path, id: '1' };
2329
+ const subscribeMsgStr = JSON.stringify(subscribeMsg, null, 2);
2330
+ const publishMsg = data?.publish?.message?.payload
2331
+ ? { type: 'publish', channel: path, event: 'message', data: generateExampleFromSchema(data.publish.message.payload), id: '2' }
2332
+ : null;
2333
+ const needsAuth = channelType === 'private' || channelType === 'presence';
2334
+ const authUrl = needsAuth ? `${url}?token=YOUR_TOKEN` : url;
2335
+ const indent = (value, pad) => value.split('\n').map((line, i) => i === 0 ? line : pad + line).join('\n');
2336
+ switch (lang) {
2337
+ case 'wscat': {
2338
+ let out = `wscat -c "${authUrl}"\n\n# Subscribe to channel:\n> ${JSON.stringify(subscribeMsg)}`;
2339
+ if (publishMsg)
2340
+ out += `\n\n# Publish a message:\n> ${JSON.stringify(publishMsg)}`;
2341
+ return out;
2342
+ }
2343
+ case 'javascript': {
2344
+ let out = `const ws = new WebSocket("${authUrl}");\n\n`;
2345
+ out += `ws.onopen = () => {\n console.log("Connected");\n // Subscribe to channel\n ws.send(JSON.stringify(${indent(subscribeMsgStr, ' ')}));\n};\n\n`;
2346
+ out += `ws.onmessage = (event) => {\n const msg = JSON.parse(event.data);\n console.log("Received:", msg);\n`;
2347
+ if (publishMsg)
2348
+ out += `\n // After subscribed, you can publish:\n // ws.send(JSON.stringify(${JSON.stringify(publishMsg)}));\n`;
2349
+ out += `};\n\nws.onclose = () => {\n console.log("Disconnected");\n};`;
2350
+ return out;
2351
+ }
2352
+ case 'recker': {
2353
+ let out = `import { ws } from "recker";\n\n`;
2354
+ out += needsAuth
2355
+ ? `const socket = await ws("${url}", {\n query: { token: "YOUR_TOKEN" }\n});\n\n`
2356
+ : `const socket = await ws("${url}");\n\n`;
2357
+ out += `// Subscribe to channel\nsocket.send(${indent(subscribeMsgStr, ' ')});\n\n`;
2358
+ out += `// Listen for messages\nsocket.on("message", (data) => {\n console.log("Received:", data);\n});\n`;
2359
+ if (publishMsg)
2360
+ out += `\n// Publish a message\n// socket.send(${JSON.stringify(publishMsg)});\n`;
2361
+ return out;
2362
+ }
2363
+ case 'python': {
2364
+ let out = `import asyncio\nimport websockets\nimport json\n\n`;
2365
+ out += `async def connect():\n async with websockets.connect("${authUrl}") as ws:\n`;
2366
+ out += ` # Subscribe to channel\n await ws.send(json.dumps(${indent(subscribeMsgStr, ' ')}))\n \n`;
2367
+ out += ` # Wait for messages\n async for message in ws:\n data = json.loads(message)\n print(f"Received: {data}")\n\n`;
2368
+ out += `asyncio.run(connect())`;
2369
+ return out;
2370
+ }
2371
+ default:
2372
+ return '// Not implemented';
2373
+ }
2374
+ }
2375
+ // Multi-language client snippets for SSE / EventSource streams.
2376
+ function generateStreamCodeSample(lang, url) {
2377
+ switch (lang) {
2378
+ case 'curl':
2379
+ return `curl -N "${url}"\n\n# -N disables buffering for streaming output`;
2380
+ case 'eventsource':
2381
+ return `const eventSource = new EventSource("${url}");\n\neventSource.onmessage = (event) => {\n console.log("Received:", event.data);\n};\n\neventSource.onerror = (error) => {\n console.error("Error:", error);\n eventSource.close();\n};\n\n// To close the connection:\n// eventSource.close();`;
2382
+ case 'recker':
2383
+ return `import { sse } from "recker";\n\nconst stream = sse("${url}");\n\nfor await (const event of stream) {\n console.log("Received:", event.data);\n}`;
2384
+ case 'python':
2385
+ return `import sseclient\nimport requests\n\nresponse = requests.get("${url}", stream=True)\nclient = sseclient.SSEClient(response)\n\nfor event in client.events():\n print(f"Event: {event.event}, Data: {event.data}")`;
2386
+ default:
2387
+ return '// Not implemented';
2388
+ }
2389
+ }
2390
+ // Tabbed client-code panel for the non-HTTP protocols that carry a live console
2391
+ // (WebSocket, streams). Mirrors renderCodeExamples' markup so the shared code
2392
+ // tab / copy styling applies.
2393
+ function renderProtocolCodeSamples(kind, endpoint, data) {
2394
+ const base = String(spec.servers?.[0]?.url ?? 'http://localhost:3000').replace(/\/$/, '');
2395
+ const isWs = kind === 'websocket';
2396
+ const url = isWs
2397
+ ? `${base.replace(/^http/, 'ws')}${wsSpec.path ?? '/ws'}`
2398
+ : `${base}/${streamsSpec.pathPrefix ?? 'streams'}/${endpoint.path}`.replace(/([^:]\/)\/+/g, '$1');
2399
+ const langs = isWs
2400
+ ? [['wscat', 'wscat', 'bash'], ['javascript', 'WebSocket', 'javascript'], ['recker', 'Recker', 'typescript'], ['python', 'Python', 'python']]
2401
+ : [['curl', 'cURL', 'bash'], ['eventsource', 'EventSource', 'javascript'], ['recker', 'Recker', 'typescript'], ['python', 'Python', 'python']];
2402
+ const section = doc.createElement('div');
2403
+ section.className = 'endpoint-subsection';
2404
+ section.innerHTML = '<div class="subsection-label">Client examples</div>';
2405
+ const wrap = doc.createElement('div');
2406
+ wrap.className = 'http-code-samples';
2407
+ const tabs = doc.createElement('div');
2408
+ tabs.className = 'code-tabs';
2409
+ const contents = doc.createElement('div');
2410
+ contents.className = 'code-contents';
2411
+ langs.forEach(([key, label, language], index) => {
2412
+ const tab = doc.createElement('button');
2413
+ tab.type = 'button';
2414
+ tab.className = `code-tab${index === 0 ? ' active' : ''}`;
2415
+ tab.textContent = label;
2416
+ const content = doc.createElement('div');
2417
+ content.className = `code-content${index === 0 ? ' active' : ''}`;
2418
+ const pre = doc.createElement('pre');
2419
+ pre.className = 'http-code-sample-pre';
2420
+ pre.setAttribute('data-code-toolbar', 'managed');
2421
+ const code = doc.createElement('code');
2422
+ code.className = `language-${language}`;
2423
+ code.textContent = isWs
2424
+ ? generateWsCodeSample(key, url, endpoint.path, data)
2425
+ : generateStreamCodeSample(key, url);
2426
+ pre.appendChild(code);
2427
+ content.appendChild(pre);
2428
+ tab.onclick = () => {
2429
+ tabs.querySelectorAll('.code-tab').forEach((t) => t.classList.remove('active'));
2430
+ contents.querySelectorAll('.code-content').forEach((c) => c.classList.remove('active'));
2431
+ tab.classList.add('active');
2432
+ content.classList.add('active');
2433
+ };
2434
+ tabs.appendChild(tab);
2435
+ contents.appendChild(content);
2436
+ });
2437
+ const copy = createSampleCopyButton('http-code-copy', () => {
2438
+ const active = contents.querySelector('.code-content.active pre');
2439
+ return active?.textContent ?? '';
2440
+ });
2441
+ tabs.appendChild(copy);
2442
+ wrap.appendChild(tabs);
2443
+ wrap.appendChild(contents);
2444
+ section.appendChild(wrap);
2445
+ return section;
2446
+ }
2290
2447
  function renderEndpointDetails(endpoint) {
2291
2448
  const container = doc.createElement('div');
2292
2449
  container.className = 'endpoint-details';
2293
2450
  const data = (endpoint.data ?? {});
2294
- appendProtocolConsole(container, { doc, spec, wsSpec, streamsSpec, jsonrpcSpec, activeProtocol, endpoint, data, esc, escapeAttr });
2451
+ appendProtocolConsole(container, { doc, spec, wsSpec, streamsSpec, jsonrpcSpec, activeProtocol, endpoint, data, esc, escapeAttr, tryItConfig });
2295
2452
  const appendMany = (items) => items.forEach(([title, value]) => appendSchemaSubsection(container, title, value));
2296
2453
  if (activeProtocol === 'http') {
2297
2454
  // Two-column operation layout (ReDoc-style): the left column carries the
@@ -2417,6 +2574,9 @@ function renderEndpointDetails(endpoint) {
2417
2574
  if (activeProtocol === 'websocket') {
2418
2575
  appendInfoGrid(container, [['Channel Type', data.type], ['Path', endpoint.path]]);
2419
2576
  appendMany([['Parameters', parameterMapToSchema(data.parameters)], ['Subscribe Message', resolveMessagePayload(data.subscribe?.message)], ['Publish Message', resolveMessagePayload(data.publish?.message)]]);
2577
+ appendContentTypesSection(container, 'Subscribe Content Types', resolveEffectiveContentTypes(data.subscribe?.contentTypes, wsSpec?.contentTypes));
2578
+ appendContentTypesSection(container, 'Publish Content Types', resolveEffectiveContentTypes(data.publish?.contentTypes, wsSpec?.contentTypes));
2579
+ container.appendChild(renderProtocolCodeSamples('websocket', endpoint, data));
2420
2580
  }
2421
2581
  if (activeProtocol === 'graphql') {
2422
2582
  appendInfoGrid(container, [['Endpoint', graphqlSpec.endpoint], ['Kind', data.kind], ['Resource', data.resource ?? data.name], ['Source', data.source]]);
@@ -2433,23 +2593,29 @@ function renderEndpointDetails(endpoint) {
2433
2593
  ]);
2434
2594
  appendStreamProjectionDiagnostics(container, resumable?.projections);
2435
2595
  appendMany([['Parameters', parameterMapToSchema(data.parameters)], ['Message Schema', resolveMessagePayload(data.message)]]);
2596
+ appendContentTypesSection(container, 'Content Types', resolveEffectiveContentTypes(data.contentTypes, streamsSpec?.contentTypes));
2597
+ container.appendChild(renderProtocolCodeSamples('streams', endpoint, data));
2436
2598
  }
2437
2599
  if (activeProtocol === 'jsonrpc') {
2438
2600
  appendInfoGrid(container, [['Method', endpoint.path], ['Notification', data['x-usd-notification'] === true ? 'yes' : undefined], ['Streaming', data['x-usd-streaming'] === true ? 'yes' : undefined]]);
2439
2601
  appendMany([['Parameters', data.params], ['Result', data.result], ['Errors', data.errors]]);
2602
+ appendContentTypesSection(container, 'Content Types', resolveEffectiveContentTypes(data.contentTypes, jsonrpcSpec?.contentTypes));
2440
2603
  }
2441
2604
  if (activeProtocol === 'grpc') {
2442
2605
  const method = data.method ?? {};
2443
2606
  appendInfoGrid(container, [['Service', data.serviceName], ['Method', data.methodName], ['Type', getGrpcMethodType(method).replace(/_/g, ' ')]]);
2444
2607
  appendMany([['Request', method.input], ['Response', method.output]]);
2608
+ appendContentTypesSection(container, 'Content Types', resolveEffectiveContentTypes(method.contentTypes, grpcSpec?.contentTypes));
2445
2609
  }
2446
2610
  if (activeProtocol === 'tcp') {
2447
2611
  appendInfoGrid(container, [['Host', data.host ?? 'localhost'], ['Port', data.port], ['TLS', data.tls?.enabled === true ? 'enabled' : undefined]]);
2448
2612
  appendMany([['Framing', data.framing], ['Inbound Message', resolveMessagePayload(data.messages?.inbound)], ['Outbound Message', resolveMessagePayload(data.messages?.outbound)]]);
2613
+ appendContentTypesSection(container, 'Content Types', resolveEffectiveContentTypes(data.contentTypes, tcpSpec?.contentTypes));
2449
2614
  }
2450
2615
  if (activeProtocol === 'udp') {
2451
2616
  appendInfoGrid(container, [['Host', data.host ?? '127.0.0.1'], ['Port', data.port], ['Max Packet', data.maxPacketSize ? `${data.maxPacketSize} bytes` : undefined]]);
2452
2617
  appendMany([['Inbound Message', resolveMessagePayload(data.messages?.inbound)], ['Outbound Message', resolveMessagePayload(data.messages?.outbound)], ['Message Schema', resolveMessagePayload(data.message)]]);
2618
+ appendContentTypesSection(container, 'Content Types', resolveEffectiveContentTypes(data.contentTypes, udpSpec?.contentTypes));
2453
2619
  }
2454
2620
  return container;
2455
2621
  }
@@ -3214,6 +3380,13 @@ function renderContent() {
3214
3380
  // mid-search, in which case the search results take the surface.
3215
3381
  if (!searchQuery) {
3216
3382
  main.appendChild(renderDocsOverview());
3383
+ if (introductionMarkdown) {
3384
+ const introduction = doc.createElement('section');
3385
+ introduction.className = 'docs-introduction markdown-content';
3386
+ introduction.id = 'introduction';
3387
+ introduction.innerHTML = parseMarkdown(introductionMarkdown);
3388
+ main.appendChild(introduction);
3389
+ }
3217
3390
  const authentication = renderAuthenticationSection();
3218
3391
  if (authentication)
3219
3392
  main.appendChild(authentication);
@@ -4050,9 +4223,6 @@ function init() {
4050
4223
  if (activePagePath && activePagePath !== routeState.pagePath) {
4051
4224
  win.history?.replaceState?.(null, '', routeToHash(activePagePath, activeHeadingId));
4052
4225
  }
4053
- const intro = byId('introductionContent');
4054
- if (intro && introductionMarkdown)
4055
- intro.innerHTML = parseMarkdown(introductionMarkdown);
4056
4226
  initSidebarResize();
4057
4227
  bindEvents();
4058
4228
  renderFooter();
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/docs/ui/client-script/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAqBH;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,mBAAmB,EAAE,MAAM,EAC3B,gBAAgB,EAAE,MAAM,EACxB,kBAAkB,EAAE,MAAM,EAC1B,kBAAkB,EAAE,MAAM,EAC1B,kBAAkB,EAAE,MAAM,EAC1B,wBAAwB,EAAE,MAAM,EAChC,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,EACvB,eAAe,GAAE,MAAe,EAChC,kBAAkB,GAAE,MAA6C,EACjE,cAAc,GAAE,MAAqC,EACrD,cAAc,GAAE,MAA6G,EAC7H,uBAAuB,GAAE,MAAa,EACtC,YAAY,GAAE,MAA4C,GACzD,MAAM,CAwBR;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,IAAI,MAAM,CAIpD;AAED,wBAAgB,sCAAsC,IAAI,MAAM,CAK/D;AAyKD;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,mBAAmB,EAAE,MAAM,EAC3B,gBAAgB,EAAE,MAAM,EACxB,kBAAkB,EAAE,MAAM,EAC1B,kBAAkB,EAAE,MAAM,EAC1B,kBAAkB,EAAE,MAAM,EAC1B,wBAAwB,EAAE,MAAM,EAChC,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,EACvB,eAAe,GAAE,MAAe,EAChC,kBAAkB,CAAC,EAAE,MAAM,EAC3B,cAAc,GAAE,MAAqC,GACpD,MAAM,CAoBR"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/docs/ui/client-script/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAWH;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,mBAAmB,EAAE,MAAM,EAC3B,gBAAgB,EAAE,MAAM,EACxB,kBAAkB,EAAE,MAAM,EAC1B,kBAAkB,EAAE,MAAM,EAC1B,kBAAkB,EAAE,MAAM,EAC1B,wBAAwB,EAAE,MAAM,EAChC,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,EACvB,eAAe,GAAE,MAAe,EAChC,kBAAkB,GAAE,MAA6C,EACjE,cAAc,GAAE,MAAqC,EACrD,cAAc,GAAE,MAA6G,EAC7H,uBAAuB,GAAE,MAAa,EACtC,YAAY,GAAE,MAA4C,GACzD,MAAM,CAwBR;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,IAAI,MAAM,CAQpD;AAED,wBAAgB,sCAAsC,IAAI,MAAM,CAK/D;AAoFD;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,mBAAmB,EAAE,MAAM,EAC3B,gBAAgB,EAAE,MAAM,EACxB,kBAAkB,EAAE,MAAM,EAC1B,kBAAkB,EAAE,MAAM,EAC1B,kBAAkB,EAAE,MAAM,EAC1B,wBAAwB,EAAE,MAAM,EAChC,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,EACvB,eAAe,GAAE,MAAe,EAChC,kBAAkB,CAAC,EAAE,MAAM,EAC3B,cAAc,GAAE,MAAqC,GACpD,MAAM,CAoBR"}