raffel 1.1.74 → 1.1.76

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 (105) hide show
  1. package/README.md +7 -0
  2. package/dist/docs/docs-state.d.ts +2 -0
  3. package/dist/docs/docs-state.d.ts.map +1 -1
  4. package/dist/docs/docs-state.js +1 -0
  5. package/dist/docs/docs-state.js.map +1 -1
  6. package/dist/docs/generators/http-generator.d.ts +1 -1
  7. package/dist/docs/generators/http-generator.js +2 -2
  8. package/dist/docs/generators/http-generator.js.map +1 -1
  9. package/dist/docs/generators/usd-generator.d.ts +5 -1
  10. package/dist/docs/generators/usd-generator.d.ts.map +1 -1
  11. package/dist/docs/generators/usd-generator.js +5 -1
  12. package/dist/docs/generators/usd-generator.js.map +1 -1
  13. package/dist/docs/index.d.ts +1 -1
  14. package/dist/docs/index.d.ts.map +1 -1
  15. package/dist/docs/index.js +1 -1
  16. package/dist/docs/index.js.map +1 -1
  17. package/dist/docs/try-it-proxy.d.ts +16 -0
  18. package/dist/docs/try-it-proxy.d.ts.map +1 -0
  19. package/dist/docs/try-it-proxy.js +138 -0
  20. package/dist/docs/try-it-proxy.js.map +1 -0
  21. package/dist/docs/ui/assets/raffel-docs.css +266 -10
  22. package/dist/docs/ui/assets/raffel-docs.js +1167 -49
  23. package/dist/docs/ui/client-script/index.d.ts +1 -1
  24. package/dist/docs/ui/client-script/index.d.ts.map +1 -1
  25. package/dist/docs/ui/client-script/index.js +4 -2
  26. package/dist/docs/ui/client-script/index.js.map +1 -1
  27. package/dist/docs/ui/html-builder.d.ts.map +1 -1
  28. package/dist/docs/ui/html-builder.js +58 -2
  29. package/dist/docs/ui/html-builder.js.map +1 -1
  30. package/dist/docs/ui/response-examples.d.ts +10 -0
  31. package/dist/docs/ui/response-examples.d.ts.map +1 -0
  32. package/dist/docs/ui/response-examples.js +113 -0
  33. package/dist/docs/ui/response-examples.js.map +1 -0
  34. package/dist/docs/ui/runtime/index.js +1167 -49
  35. package/dist/docs/ui/runtime/index.js.map +1 -1
  36. package/dist/docs/ui/style-sections/schema-code.d.ts +1 -1
  37. package/dist/docs/ui/style-sections/schema-code.d.ts.map +1 -1
  38. package/dist/docs/ui/style-sections/schema-code.js +249 -0
  39. package/dist/docs/ui/style-sections/schema-code.js.map +1 -1
  40. package/dist/docs/ui/style-sections/shell.d.ts.map +1 -1
  41. package/dist/docs/ui/style-sections/shell.js +17 -10
  42. package/dist/docs/ui/style-sections/shell.js.map +1 -1
  43. package/dist/docs/ui/types.d.ts +23 -2
  44. package/dist/docs/ui/types.d.ts.map +1 -1
  45. package/dist/docs/usd-middleware.d.ts +23 -2
  46. package/dist/docs/usd-middleware.d.ts.map +1 -1
  47. package/dist/docs/usd-middleware.js +142 -6
  48. package/dist/docs/usd-middleware.js.map +1 -1
  49. package/dist/http/route-table.d.ts.map +1 -1
  50. package/dist/http/route-table.js +19 -0
  51. package/dist/http/route-table.js.map +1 -1
  52. package/dist/server/builder/execution-http-docs.d.ts.map +1 -1
  53. package/dist/server/builder/execution-http-docs.js +35 -3
  54. package/dist/server/builder/execution-http-docs.js.map +1 -1
  55. package/dist/server/builder.d.ts.map +1 -1
  56. package/dist/server/builder.js +4 -1
  57. package/dist/server/builder.js.map +1 -1
  58. package/dist/server/rest-middleware.d.ts +1 -1
  59. package/dist/server/rest-middleware.d.ts.map +1 -1
  60. package/dist/server/rest-middleware.js +36 -16
  61. package/dist/server/rest-middleware.js.map +1 -1
  62. package/dist/server/types/lifecycle-docs-types.d.ts +13 -2
  63. package/dist/server/types/lifecycle-docs-types.d.ts.map +1 -1
  64. package/dist/ui/docs/docs-state.d.ts +2 -0
  65. package/dist/ui/docs/docs-state.d.ts.map +1 -1
  66. package/dist/ui/docs/generators/http-generator.d.ts +1 -1
  67. package/dist/ui/docs/generators/usd-generator.d.ts +5 -1
  68. package/dist/ui/docs/generators/usd-generator.d.ts.map +1 -1
  69. package/dist/ui/docs/index.d.ts +1 -1
  70. package/dist/ui/docs/index.d.ts.map +1 -1
  71. package/dist/ui/docs/try-it-proxy.d.ts +16 -0
  72. package/dist/ui/docs/try-it-proxy.d.ts.map +1 -0
  73. package/dist/ui/docs/ui/client-script/index.d.ts +1 -1
  74. package/dist/ui/docs/ui/client-script/index.d.ts.map +1 -1
  75. package/dist/ui/docs/ui/html-builder.d.ts.map +1 -1
  76. package/dist/ui/docs/ui/response-examples.d.ts +10 -0
  77. package/dist/ui/docs/ui/response-examples.d.ts.map +1 -0
  78. package/dist/ui/docs/ui/style-sections/schema-code.d.ts +1 -1
  79. package/dist/ui/docs/ui/style-sections/schema-code.d.ts.map +1 -1
  80. package/dist/ui/docs/ui/style-sections/shell.d.ts.map +1 -1
  81. package/dist/ui/docs/ui/types.d.ts +23 -2
  82. package/dist/ui/docs/ui/types.d.ts.map +1 -1
  83. package/dist/ui/docs/usd-middleware.d.ts +23 -2
  84. package/dist/ui/docs/usd-middleware.d.ts.map +1 -1
  85. package/dist/ui/usd/export/openapi.d.ts.map +1 -1
  86. package/dist/ui/usd/index.d.ts +1 -1
  87. package/dist/ui/usd/index.d.ts.map +1 -1
  88. package/dist/ui/usd/spec/types.d.ts +43 -0
  89. package/dist/ui/usd/spec/types.d.ts.map +1 -1
  90. package/dist/ui/usd/validator/schema.d.ts +40 -0
  91. package/dist/ui/usd/validator/schema.d.ts.map +1 -1
  92. package/dist/usd/export/openapi.d.ts.map +1 -1
  93. package/dist/usd/export/openapi.js +4 -1
  94. package/dist/usd/export/openapi.js.map +1 -1
  95. package/dist/usd/index.d.ts +1 -1
  96. package/dist/usd/index.d.ts.map +1 -1
  97. package/dist/usd/index.js.map +1 -1
  98. package/dist/usd/spec/types.d.ts +43 -0
  99. package/dist/usd/spec/types.d.ts.map +1 -1
  100. package/dist/usd/spec/types.js.map +1 -1
  101. package/dist/usd/validator/schema.d.ts +40 -0
  102. package/dist/usd/validator/schema.d.ts.map +1 -1
  103. package/dist/usd/validator/schema.js +21 -0
  104. package/dist/usd/validator/schema.js.map +1 -1
  105. package/package.json +2 -1
@@ -1,2 +1,2 @@
1
- export declare const schemaCodeStyles = " /* ========== RESPONSE SAMPLES (Right Panel) ========== */\n .response-samples {\n margin-top: 20px;\n }\n\n .response-samples-header {\n font-size: 14px;\n font-weight: 600;\n color: var(--code-panel-text);\n margin-bottom: 12px;\n }\n\n .sample-tabs {\n display: flex;\n gap: 8px;\n margin-bottom: 16px;\n }\n\n .sample-tab {\n padding: 6px 14px;\n border-radius: 4px;\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n background: transparent;\n border: 1px solid rgba(255,255,255,0.2);\n color: var(--code-panel-text);\n transition: all 0.15s;\n }\n\n .sample-tab:hover {\n background: rgba(255,255,255,0.1);\n }\n\n .sample-tab.active {\n background: rgba(255,255,255,0.15);\n border-color: rgba(255,255,255,0.3);\n }\n\n .sample-tab.status-2xx { color: #10b981; border-color: #10b981; }\n .sample-tab.status-4xx { color: #f59e0b; border-color: #f59e0b; }\n .sample-tab.status-5xx { color: #ef4444; border-color: #ef4444; }\n\n .sample-content {\n display: none;\n }\n\n .sample-content.active {\n display: block;\n }\n\n .sample-content-type {\n font-size: 12px;\n color: #90a4ae;\n margin-bottom: 8px;\n }\n\n .sample-actions {\n display: flex;\n gap: 16px;\n margin-bottom: 12px;\n }\n\n .sample-action {\n font-size: 12px;\n color: #90a4ae;\n cursor: pointer;\n background: none;\n border: none;\n padding: 0;\n transition: color 0.15s;\n }\n\n .sample-action:hover {\n color: white;\n }\n\n .sample-json {\n background: rgba(0,0,0,0.3);\n border-radius: 6px;\n padding: 14px;\n font-family: 'SF Mono', 'Monaco', monospace;\n font-size: 12px;\n line-height: 1.5;\n color: #e2e8f0;\n overflow-x: auto;\n white-space: pre-wrap;\n word-break: break-word;\n }\n\n .sample-json .json-key { color: #f8b500; }\n .sample-json .json-string { color: #a5d6a7; }\n .sample-json .json-number { color: #82aaff; }\n .sample-json .json-boolean { color: #f78c6c; }\n .sample-json .json-null { color: #89ddff; }\n\n /* Right panel sections */\n .right-panel-content {\n display: flex;\n flex-direction: column;\n gap: 24px;\n }\n\n .right-section {\n margin-bottom: 0;\n }\n\n .right-section-header {\n font-size: 13px;\n font-weight: 600;\n color: #90a4ae;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n margin-bottom: 16px;\n padding-bottom: 8px;\n border-bottom: 1px solid rgba(255,255,255,0.1);\n }\n\n .sample-contents {\n margin-top: 0;\n }\n\n .tab-status {\n font-weight: 600;\n }\n\n .tab-status.status-2xx { color: #10b981; }\n .tab-status.status-4xx { color: #f59e0b; }\n .tab-status.status-5xx { color: #ef4444; }\n\n .no-example {\n color: #90a4ae;\n font-style: italic;\n font-size: 13px;\n padding: 12px;\n background: rgba(0,0,0,0.2);\n border-radius: 6px;\n }\n\n .response-desc-only {\n color: #90a4ae;\n font-size: 13px;\n padding: 12px;\n background: rgba(0,0,0,0.2);\n border-radius: 6px;\n }\n\n /* ========== CODE EXAMPLES ========== */\n .code-example {\n background: rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n overflow: hidden;\n margin-bottom: 16px;\n }\n\n .code-example-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 10px 14px;\n background: var(--code-panel-header);\n font-size: 12px;\n font-weight: 600;\n color: #90a4ae;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n }\n\n .code-example pre {\n margin: 0;\n background: transparent;\n border: none;\n border-radius: 0;\n color: #e2e8f0;\n padding: 14px;\n }\n\n .code-example code {\n color: #e2e8f0;\n white-space: pre-wrap;\n word-break: break-word;\n font-size: 12px;\n }\n\n /* Code language tabs */\n .code-tabs {\n display: flex;\n gap: 2px;\n padding: 8px 14px;\n background: var(--code-panel-header);\n border-bottom: 1px solid rgba(255,255,255,0.1);\n }\n\n .code-tab {\n padding: 6px 12px;\n border: none;\n border-radius: 4px;\n background: transparent;\n color: #90a4ae;\n font-size: 12px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s;\n }\n\n .code-tab:hover {\n background: rgba(255,255,255,0.1);\n color: var(--code-panel-text);\n }\n\n .code-tab.active {\n background: rgba(255,255,255,0.15);\n color: var(--code-panel-text);\n }\n\n .code-contents {\n padding: 0;\n }\n\n .code-content {\n display: none;\n }\n\n .code-content.active {\n display: block;\n }\n\n pre {\n background: var(--code-bg);\n padding: 16px;\n border-radius: 8px;\n overflow-x: auto;\n font-family: 'SF Mono', 'Fira Code', 'Monaco', monospace;\n font-size: 13px;\n line-height: 1.5;\n border: 1px solid var(--border-color);\n }\n\n /* ========== SCHEMA VISUALIZATION (Redoc-style) ========== */\n .schema-container {\n border: 1px solid var(--border-color);\n border-radius: 8px;\n overflow: hidden;\n margin-bottom: 16px;\n }\n\n .schema-row {\n display: flex;\n align-items: flex-start;\n padding: 12px 16px;\n border-bottom: 1px solid var(--border-color);\n transition: background 0.15s;\n }\n\n .schema-row:last-child { border-bottom: none; }\n .schema-row:hover { background: var(--hover-bg); }\n\n .schema-row.nested {\n padding-left: 32px;\n background: rgba(0,0,0,0.02);\n }\n\n .schema-row.nested-2 { padding-left: 48px; }\n .schema-row.nested-3 { padding-left: 64px; }\n .schema-row.nested-4 { padding-left: 80px; }\n\n .schema-property {\n display: flex;\n align-items: center;\n gap: 8px;\n min-width: 200px;\n flex-shrink: 0;\n }\n\n .schema-name {\n font-family: 'SF Mono', 'Monaco', monospace;\n font-size: 13px;\n font-weight: 600;\n color: var(--text-color);\n }\n\n .schema-required {\n color: #ef4444;\n font-weight: 700;\n font-size: 14px;\n }\n\n .schema-type {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 2px 8px;\n border-radius: 4px;\n font-family: 'SF Mono', 'Monaco', monospace;\n font-size: 11px;\n font-weight: 500;\n }\n\n .type-string { background: #dbeafe; color: #1d4ed8; }\n .type-number, .type-integer { background: #fef3c7; color: #b45309; }\n .type-boolean { background: #fce7f3; color: #be185d; }\n .type-object { background: #e0e7ff; color: #4338ca; }\n .type-array { background: #d1fae5; color: #047857; }\n .type-null { background: #f3f4f6; color: #6b7280; }\n .type-ref { background: #fef3c7; color: #92400e; font-style: italic; }\n\n [data-theme=\"dark\"] .type-string { background: #1e3a5f; color: #93c5fd; }\n [data-theme=\"dark\"] .type-number, [data-theme=\"dark\"] .type-integer { background: #451a03; color: #fcd34d; }\n [data-theme=\"dark\"] .type-boolean { background: #4a0519; color: #f9a8d4; }\n [data-theme=\"dark\"] .type-object { background: #312e81; color: #c7d2fe; }\n [data-theme=\"dark\"] .type-array { background: #064e3b; color: #6ee7b7; }\n [data-theme=\"dark\"] .type-null { background: #374151; color: #9ca3af; }\n [data-theme=\"dark\"] .type-ref { background: #451a03; color: #fbbf24; }\n\n .schema-details {\n flex: 1;\n padding-left: 16px;\n }\n\n .schema-desc {\n color: var(--text-muted);\n font-size: 13px;\n margin-bottom: 4px;\n }\n\n .schema-constraints {\n display: flex;\n flex-wrap: wrap;\n gap: 6px;\n margin-top: 6px;\n }\n\n .schema-constraint {\n font-size: 11px;\n padding: 2px 6px;\n border-radius: 4px;\n background: var(--code-bg);\n color: var(--text-muted);\n font-family: 'SF Mono', 'Monaco', monospace;\n }\n\n .schema-enum {\n display: flex;\n flex-wrap: wrap;\n gap: 4px;\n margin-top: 6px;\n }\n\n .schema-enum-value {\n font-size: 11px;\n padding: 2px 8px;\n border-radius: 4px;\n background: #fef3c7;\n color: #92400e;\n font-family: 'SF Mono', 'Monaco', monospace;\n }\n\n [data-theme=\"dark\"] .schema-enum-value {\n background: #451a03;\n color: #fbbf24;\n }\n\n .schema-default {\n font-size: 12px;\n color: var(--text-muted);\n margin-top: 4px;\n }\n\n .schema-default code {\n background: var(--code-bg);\n padding: 1px 4px;\n border-radius: 3px;\n font-family: 'SF Mono', 'Monaco', monospace;\n }\n\n .schema-toggle {\n cursor: pointer;\n user-select: none;\n color: var(--primary-color);\n font-size: 12px;\n margin-left: 8px;\n }\n\n .schema-toggle:hover { text-decoration: underline; }\n\n .schema-nested-container {\n overflow: hidden;\n transition: max-height 0.3s ease;\n }\n\n .schema-nested-container.collapsed {\n max-height: 0 !important;\n }\n\n .schema-example {\n margin-top: 16px;\n background: var(--code-bg);\n border-radius: 8px;\n overflow: hidden;\n }\n\n .schema-example-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 12px;\n background: rgba(0,0,0,0.05);\n border-bottom: 1px solid var(--border-color);\n font-size: 12px;\n font-weight: 600;\n color: var(--text-muted);\n text-transform: uppercase;\n }\n\n .schema-example-body {\n padding: 12px;\n font-family: 'SF Mono', 'Monaco', monospace;\n font-size: 12px;\n white-space: pre-wrap;\n word-break: break-word;\n }\n\n /* Response tabs */\n .response-tabs {\n display: flex;\n gap: 2px;\n margin-bottom: 12px;\n border-bottom: 2px solid var(--border-color);\n }\n\n .response-tab {\n padding: 8px 16px;\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n border: none;\n background: none;\n color: var(--text-muted);\n border-bottom: 2px solid transparent;\n margin-bottom: -2px;\n transition: all 0.15s;\n }\n\n .response-tab:hover { color: var(--text-color); }\n\n .response-tab.active {\n color: var(--primary-color);\n border-bottom-color: var(--primary-color);\n }\n\n .response-tab.status-2xx { color: #10b981; }\n .response-tab.status-2xx.active { border-bottom-color: #10b981; }\n .response-tab.status-4xx { color: #f59e0b; }\n .response-tab.status-4xx.active { border-bottom-color: #f59e0b; }\n .response-tab.status-5xx { color: #ef4444; }\n .response-tab.status-5xx.active { border-bottom-color: #ef4444; }\n\n .response-content { display: none; }\n .response-content.active { display: block; }\n\n /* Parameters table */\n .params-table {\n width: 100%;\n border-collapse: collapse;\n margin-bottom: 16px;\n }\n\n .params-table th {\n text-align: left;\n padding: 8px 12px;\n font-size: 11px;\n font-weight: 600;\n text-transform: uppercase;\n color: var(--text-muted);\n background: var(--code-bg);\n border-bottom: 1px solid var(--border-color);\n }\n\n .params-table td {\n padding: 10px 12px;\n border-bottom: 1px solid var(--border-color);\n font-size: 13px;\n }\n\n .params-table tr:last-child td { border-bottom: none; }\n\n .param-name {\n font-family: 'SF Mono', 'Monaco', monospace;\n font-weight: 600;\n }\n\n .param-in {\n font-size: 10px;\n padding: 2px 6px;\n border-radius: 3px;\n background: var(--code-bg);\n color: var(--text-muted);\n text-transform: uppercase;\n margin-left: 8px;\n }\n\n /* ========== CHANNEL TYPES ========== */\n .channel-type-public { background: #10b981; color: white; }\n .channel-type-private { background: #f59e0b; color: white; }\n .channel-type-presence { background: #8b5cf6; color: white; }\n\n /* ========== INFO GRID ========== */\n .info-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));\n gap: 12px;\n margin-bottom: 24px;\n }\n\n .info-card {\n background: var(--code-bg);\n padding: 16px;\n border-radius: 10px;\n border: 1px solid var(--border-color);\n }\n\n .info-card-title {\n font-size: 11px;\n color: var(--text-muted);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n margin-bottom: 6px;\n }\n\n .info-card-value {\n font-size: 16px;\n font-weight: 600;\n color: var(--text-color);\n }\n\n /* ========== RESPONSIVE ========== */\n @media (max-width: 900px) {\n .app-container { grid-template-columns: 1fr; }\n .sidebar {\n display: none;\n position: fixed;\n left: 0;\n top: 0;\n width: 300px;\n z-index: 100;\n }\n .sidebar.mobile-open { display: block; }\n .hero { padding: 40px 24px; min-height: 100vh; }\n .hero-logo { height: 80px; margin-bottom: 24px; }\n .hero-title { font-size: 36px; }\n .hero-version { font-size: 12px; margin-left: 8px; }\n .hero-tagline { font-size: 17px; margin-bottom: 20px; }\n .hero-features { flex-direction: column; align-items: center; gap: 12px; }\n .hero-features li { font-size: 15px; }\n .hero-btn { padding: 12px 24px; font-size: 15px; }\n .github-corner svg { width: 60px; height: 60px; }\n .main { padding: 24px; }\n }\n\n /* ========== ANIMATIONS ========== */\n @keyframes fadeIn {\n from { opacity: 0; transform: translateY(10px); }\n to { opacity: 1; transform: translateY(0); }\n }\n\n .endpoint-section {\n animation: fadeIn 0.3s ease-out;\n }\n\n /* ========== HTTP ENDPOINT (ReDoc-style) ========== */\n .http-param-group {\n margin-bottom: 20px;\n }\n\n .http-param-group-title {\n font-size: 12px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--text-muted);\n margin-bottom: 8px;\n }\n\n .http-params {\n border: 1px solid var(--border-color);\n border-radius: 8px;\n overflow: hidden;\n }\n\n .http-param {\n padding: 12px 16px;\n border-bottom: 1px solid var(--border-color);\n }\n\n .http-param:last-child { border-bottom: none; }\n\n .http-param-head {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: 8px;\n }\n\n .http-param-name {\n font-family: 'SF Mono', 'Monaco', monospace;\n font-size: 13px;\n font-weight: 600;\n color: var(--text-color);\n }\n\n .http-param-required {\n font-size: 10px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.4px;\n color: #ef4444;\n }\n\n .http-param-deprecated {\n font-size: 10px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.4px;\n color: #f59e0b;\n }\n\n .http-param-desc {\n color: var(--text-muted);\n font-size: 13px;\n margin-top: 6px;\n line-height: 1.5;\n }\n\n /* Validation constraint chips (reuses .schema-constraint look) */\n .constraint-chips {\n display: flex;\n flex-wrap: wrap;\n gap: 6px;\n margin-top: 8px;\n }\n\n .constraint-chip {\n font-size: 11px;\n padding: 2px 8px;\n border-radius: 4px;\n background: var(--code-bg);\n color: var(--text-muted);\n border: 1px solid var(--border-color);\n font-family: 'SF Mono', 'Monaco', monospace;\n }\n\n .constraint-chip.constraint-enum {\n background: #fef3c7;\n color: #92400e;\n border-color: transparent;\n }\n\n [data-theme=\"dark\"] .constraint-chip.constraint-enum {\n background: #451a03;\n color: #fbbf24;\n }\n\n /* Response accordions */\n .response-accordion {\n border: 1px solid var(--border-color);\n border-radius: 8px;\n margin-bottom: 10px;\n overflow: hidden;\n }\n\n .response-accordion-header {\n display: flex;\n align-items: center;\n gap: 10px;\n width: 100%;\n padding: 12px 14px;\n background: var(--code-bg);\n border: none;\n cursor: pointer;\n text-align: left;\n font-size: 13px;\n color: var(--text-color);\n transition: background 0.15s;\n }\n\n .response-accordion-header:hover { background: var(--hover-bg); }\n\n .response-accordion-caret {\n flex-shrink: 0;\n font-size: 10px;\n color: var(--text-muted);\n transition: transform 0.2s ease;\n }\n\n .response-accordion.open .response-accordion-caret {\n transform: rotate(90deg);\n }\n\n .response-status-dot {\n width: 9px;\n height: 9px;\n border-radius: 50%;\n flex-shrink: 0;\n }\n\n .response-status-dot.status-2xx { background: #10b981; }\n .response-status-dot.status-3xx { background: #3b82f6; }\n .response-status-dot.status-4xx { background: #f59e0b; }\n .response-status-dot.status-5xx { background: #ef4444; }\n\n .response-status-code {\n font-family: 'SF Mono', 'Monaco', monospace;\n font-weight: 600;\n }\n\n .response-status-desc {\n color: var(--text-muted);\n }\n\n .response-accordion-body {\n padding: 14px;\n border-top: 1px solid var(--border-color);\n display: none;\n }\n\n .response-accordion.open .response-accordion-body { display: block; }\n\n .response-subhead {\n font-size: 11px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--text-muted);\n margin: 0 0 8px;\n }\n\n .response-block + .response-block { margin-top: 16px; }\n\n /* Multi-language code samples */\n .http-code-samples {\n margin-top: 8px;\n border: 1px solid var(--border-color);\n border-radius: 8px;\n overflow: hidden;\n background: var(--code-bg);\n }\n\n .http-code-samples .code-tabs {\n flex-wrap: wrap;\n background: rgba(0,0,0,0.04);\n }\n\n [data-theme=\"dark\"] .http-code-samples .code-tabs {\n background: rgba(255,255,255,0.03);\n }\n\n .http-code-sample-pre {\n margin: 0;\n padding: 14px;\n background: transparent;\n border: none;\n border-radius: 0;\n overflow-x: auto;\n font-family: 'SF Mono', 'Fira Code', 'Monaco', monospace;\n font-size: 12px;\n line-height: 1.55;\n color: var(--text-color);\n white-space: pre;\n }\n\n .http-code-copy {\n margin-left: auto;\n padding: 4px 10px;\n background: transparent;\n border: 1px solid var(--border-color);\n border-radius: 4px;\n color: var(--text-muted);\n font-size: 11px;\n cursor: pointer;\n transition: all 0.15s;\n }\n\n .http-code-copy:hover { color: var(--text-color); border-color: var(--text-muted); }\n\n /* Right panel (third column): keep request/response samples dark & legible\n regardless of the active theme, matching ReDoc's sample column. */\n .endpoint-right .endpoint-right-section + .endpoint-right-section {\n margin-top: 24px;\n }\n\n .endpoint-right .http-code-samples {\n background: rgba(0,0,0,0.25);\n border-color: rgba(255,255,255,0.1);\n }\n\n .endpoint-right .http-code-samples .code-tabs {\n background: rgba(0,0,0,0.2);\n border-color: rgba(255,255,255,0.1);\n }\n\n .endpoint-right .http-code-sample-pre {\n color: var(--code-panel-text);\n }\n\n .endpoint-right .code-tab {\n color: #90a4ae;\n }\n\n .endpoint-right .code-tab.active {\n background: rgba(255,255,255,0.12);\n color: #fff;\n }\n\n .endpoint-right .response-subhead {\n color: #90a4ae;\n }\n\n";
1
+ export declare const schemaCodeStyles = " /* ========== RESPONSE SAMPLES (Right Panel) ========== */\n .response-samples {\n margin-top: 20px;\n }\n\n .response-samples-header {\n font-size: 14px;\n font-weight: 600;\n color: var(--code-panel-text);\n margin-bottom: 12px;\n }\n\n .sample-tabs {\n display: flex;\n gap: 8px;\n margin-bottom: 16px;\n }\n\n .sample-tab {\n padding: 6px 14px;\n border-radius: 4px;\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n background: transparent;\n border: 1px solid rgba(255,255,255,0.2);\n color: var(--code-panel-text);\n transition: all 0.15s;\n }\n\n .sample-tab:hover {\n background: rgba(255,255,255,0.1);\n }\n\n .sample-tab.active {\n background: rgba(255,255,255,0.15);\n border-color: rgba(255,255,255,0.3);\n }\n\n .sample-tab.status-2xx { color: #10b981; border-color: #10b981; }\n .sample-tab.status-4xx { color: #f59e0b; border-color: #f59e0b; }\n .sample-tab.status-5xx { color: #ef4444; border-color: #ef4444; }\n\n .sample-content {\n display: none;\n }\n\n .sample-content.active {\n display: block;\n }\n\n .sample-content-type {\n font-size: 12px;\n color: #90a4ae;\n margin-bottom: 8px;\n }\n\n .sample-actions {\n display: flex;\n gap: 16px;\n margin-bottom: 12px;\n }\n\n .sample-action {\n font-size: 12px;\n color: #90a4ae;\n cursor: pointer;\n background: none;\n border: none;\n padding: 0;\n transition: color 0.15s;\n }\n\n .sample-action:hover {\n color: white;\n }\n\n .sample-json {\n background: rgba(0,0,0,0.3);\n border-radius: 6px;\n padding: 14px;\n font-family: 'SF Mono', 'Monaco', monospace;\n font-size: 12px;\n line-height: 1.5;\n color: #e2e8f0;\n overflow-x: auto;\n white-space: pre-wrap;\n word-break: break-word;\n }\n\n .sample-json .json-key { color: #f8b500; }\n .sample-json .json-string { color: #a5d6a7; }\n .sample-json .json-number { color: #82aaff; }\n .sample-json .json-boolean { color: #f78c6c; }\n .sample-json .json-null { color: #89ddff; }\n\n /* Right panel sections */\n .right-panel-content {\n display: flex;\n flex-direction: column;\n gap: 24px;\n }\n\n .right-section {\n margin-bottom: 0;\n }\n\n .right-section-header {\n font-size: 13px;\n font-weight: 600;\n color: #90a4ae;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n margin-bottom: 16px;\n padding-bottom: 8px;\n border-bottom: 1px solid rgba(255,255,255,0.1);\n }\n\n .sample-contents {\n margin-top: 0;\n }\n\n .tab-status {\n font-weight: 600;\n }\n\n .tab-status.status-2xx { color: #10b981; }\n .tab-status.status-4xx { color: #f59e0b; }\n .tab-status.status-5xx { color: #ef4444; }\n\n .no-example {\n color: #90a4ae;\n font-style: italic;\n font-size: 13px;\n padding: 12px;\n background: rgba(0,0,0,0.2);\n border-radius: 6px;\n }\n\n .response-desc-only {\n color: #90a4ae;\n font-size: 13px;\n padding: 12px;\n background: rgba(0,0,0,0.2);\n border-radius: 6px;\n }\n\n /* ========== CODE EXAMPLES ========== */\n .code-example {\n background: rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n overflow: hidden;\n margin-bottom: 16px;\n }\n\n .code-example-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 10px 14px;\n background: var(--code-panel-header);\n font-size: 12px;\n font-weight: 600;\n color: #90a4ae;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n }\n\n .code-example pre {\n margin: 0;\n background: transparent;\n border: none;\n border-radius: 0;\n color: #e2e8f0;\n padding: 14px;\n }\n\n .code-example code {\n color: #e2e8f0;\n white-space: pre-wrap;\n word-break: break-word;\n font-size: 12px;\n }\n\n /* Code language tabs */\n .code-tabs {\n display: flex;\n gap: 2px;\n padding: 8px 14px;\n background: var(--code-panel-header);\n border-bottom: 1px solid rgba(255,255,255,0.1);\n }\n\n .code-tab {\n padding: 6px 12px;\n border: none;\n border-radius: 4px;\n background: transparent;\n color: #90a4ae;\n font-size: 12px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s;\n }\n\n .code-tab:hover {\n background: rgba(255,255,255,0.1);\n color: var(--code-panel-text);\n }\n\n .code-tab.active {\n background: rgba(255,255,255,0.15);\n color: var(--code-panel-text);\n }\n\n .code-contents {\n padding: 0;\n }\n\n .code-content {\n display: none;\n }\n\n .code-content.active {\n display: block;\n }\n\n pre {\n background: var(--code-bg);\n padding: 16px;\n border-radius: 8px;\n overflow-x: auto;\n font-family: 'SF Mono', 'Fira Code', 'Monaco', monospace;\n font-size: 13px;\n line-height: 1.5;\n border: 1px solid var(--border-color);\n }\n\n /* ========== SCHEMA VISUALIZATION (Redoc-style) ========== */\n .schema-container {\n border: 1px solid var(--border-color);\n border-radius: 8px;\n overflow: hidden;\n margin-bottom: 16px;\n }\n\n .schema-row {\n display: flex;\n align-items: flex-start;\n padding: 12px 16px;\n border-bottom: 1px solid var(--border-color);\n transition: background 0.15s;\n }\n\n .schema-row:last-child { border-bottom: none; }\n .schema-row:hover { background: var(--hover-bg); }\n\n .schema-row.nested {\n padding-left: 32px;\n background: rgba(0,0,0,0.02);\n }\n\n .schema-row.nested-2 { padding-left: 48px; }\n .schema-row.nested-3 { padding-left: 64px; }\n .schema-row.nested-4 { padding-left: 80px; }\n\n .schema-property {\n display: flex;\n align-items: center;\n gap: 8px;\n min-width: 200px;\n flex-shrink: 0;\n }\n\n .schema-name {\n font-family: 'SF Mono', 'Monaco', monospace;\n font-size: 13px;\n font-weight: 600;\n color: var(--text-color);\n }\n\n .schema-required {\n color: #ef4444;\n font-weight: 700;\n font-size: 14px;\n }\n\n .schema-type {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 2px 8px;\n border-radius: 4px;\n font-family: 'SF Mono', 'Monaco', monospace;\n font-size: 11px;\n font-weight: 500;\n }\n\n .type-string { background: #dbeafe; color: #1d4ed8; }\n .type-number, .type-integer { background: #fef3c7; color: #b45309; }\n .type-boolean { background: #fce7f3; color: #be185d; }\n .type-object { background: #e0e7ff; color: #4338ca; }\n .type-array { background: #d1fae5; color: #047857; }\n .type-null { background: #f3f4f6; color: #6b7280; }\n .type-ref { background: #fef3c7; color: #92400e; font-style: italic; }\n\n [data-theme=\"dark\"] .type-string { background: #1e3a5f; color: #93c5fd; }\n [data-theme=\"dark\"] .type-number, [data-theme=\"dark\"] .type-integer { background: #451a03; color: #fcd34d; }\n [data-theme=\"dark\"] .type-boolean { background: #4a0519; color: #f9a8d4; }\n [data-theme=\"dark\"] .type-object { background: #312e81; color: #c7d2fe; }\n [data-theme=\"dark\"] .type-array { background: #064e3b; color: #6ee7b7; }\n [data-theme=\"dark\"] .type-null { background: #374151; color: #9ca3af; }\n [data-theme=\"dark\"] .type-ref { background: #451a03; color: #fbbf24; }\n\n .schema-details {\n flex: 1;\n padding-left: 16px;\n }\n\n .schema-desc {\n color: var(--text-muted);\n font-size: 13px;\n margin-bottom: 4px;\n }\n\n .schema-constraints {\n display: flex;\n flex-wrap: wrap;\n gap: 6px;\n margin-top: 6px;\n }\n\n .schema-constraint {\n font-size: 11px;\n padding: 2px 6px;\n border-radius: 4px;\n background: var(--code-bg);\n color: var(--text-muted);\n font-family: 'SF Mono', 'Monaco', monospace;\n }\n\n .schema-enum {\n display: flex;\n flex-wrap: wrap;\n gap: 4px;\n margin-top: 6px;\n }\n\n .schema-enum-value {\n font-size: 11px;\n padding: 2px 8px;\n border-radius: 4px;\n background: #fef3c7;\n color: #92400e;\n font-family: 'SF Mono', 'Monaco', monospace;\n }\n\n [data-theme=\"dark\"] .schema-enum-value {\n background: #451a03;\n color: #fbbf24;\n }\n\n .schema-default {\n font-size: 12px;\n color: var(--text-muted);\n margin-top: 4px;\n }\n\n .schema-default code {\n background: var(--code-bg);\n padding: 1px 4px;\n border-radius: 3px;\n font-family: 'SF Mono', 'Monaco', monospace;\n }\n\n .schema-toggle {\n cursor: pointer;\n user-select: none;\n color: var(--primary-color);\n font-size: 12px;\n margin-left: 8px;\n }\n\n .schema-toggle:hover { text-decoration: underline; }\n\n .schema-nested-container {\n overflow: hidden;\n transition: max-height 0.3s ease;\n }\n\n .schema-nested-container.collapsed {\n max-height: 0 !important;\n }\n\n .schema-example {\n margin-top: 16px;\n background: var(--code-bg);\n border-radius: 8px;\n overflow: hidden;\n }\n\n .schema-example-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 12px;\n background: rgba(0,0,0,0.05);\n border-bottom: 1px solid var(--border-color);\n font-size: 12px;\n font-weight: 600;\n color: var(--text-muted);\n text-transform: uppercase;\n }\n\n .schema-example-body {\n padding: 12px;\n font-family: 'SF Mono', 'Monaco', monospace;\n font-size: 12px;\n white-space: pre-wrap;\n word-break: break-word;\n }\n\n /* Response tabs */\n .response-tabs {\n display: flex;\n gap: 2px;\n margin-bottom: 12px;\n border-bottom: 2px solid var(--border-color);\n }\n\n .response-tab {\n padding: 8px 16px;\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n border: none;\n background: none;\n color: var(--text-muted);\n border-bottom: 2px solid transparent;\n margin-bottom: -2px;\n transition: all 0.15s;\n }\n\n .response-tab:hover { color: var(--text-color); }\n\n .response-tab.active {\n color: var(--primary-color);\n border-bottom-color: var(--primary-color);\n }\n\n .response-tab.status-2xx { color: #10b981; }\n .response-tab.status-2xx.active { border-bottom-color: #10b981; }\n .response-tab.status-4xx { color: #f59e0b; }\n .response-tab.status-4xx.active { border-bottom-color: #f59e0b; }\n .response-tab.status-5xx { color: #ef4444; }\n .response-tab.status-5xx.active { border-bottom-color: #ef4444; }\n\n .response-content { display: none; }\n .response-content.active { display: block; }\n\n /* Parameters table */\n .params-table {\n width: 100%;\n border-collapse: collapse;\n margin-bottom: 16px;\n }\n\n .params-table th {\n text-align: left;\n padding: 8px 12px;\n font-size: 11px;\n font-weight: 600;\n text-transform: uppercase;\n color: var(--text-muted);\n background: var(--code-bg);\n border-bottom: 1px solid var(--border-color);\n }\n\n .params-table td {\n padding: 10px 12px;\n border-bottom: 1px solid var(--border-color);\n font-size: 13px;\n }\n\n .params-table tr:last-child td { border-bottom: none; }\n\n .param-name {\n font-family: 'SF Mono', 'Monaco', monospace;\n font-weight: 600;\n }\n\n .param-in {\n font-size: 10px;\n padding: 2px 6px;\n border-radius: 3px;\n background: var(--code-bg);\n color: var(--text-muted);\n text-transform: uppercase;\n margin-left: 8px;\n }\n\n /* ========== CHANNEL TYPES ========== */\n .channel-type-public { background: #10b981; color: white; }\n .channel-type-private { background: #f59e0b; color: white; }\n .channel-type-presence { background: #8b5cf6; color: white; }\n\n /* ========== INFO GRID ========== */\n .info-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));\n gap: 12px;\n margin-bottom: 24px;\n }\n\n .info-card {\n background: var(--code-bg);\n padding: 16px;\n border-radius: 10px;\n border: 1px solid var(--border-color);\n }\n\n .info-card-title {\n font-size: 11px;\n color: var(--text-muted);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n margin-bottom: 6px;\n }\n\n .info-card-value {\n font-size: 16px;\n font-weight: 600;\n color: var(--text-color);\n }\n\n /* ========== RESPONSIVE ========== */\n @media (max-width: 900px) {\n .app-container { grid-template-columns: 1fr; }\n .sidebar {\n display: none;\n position: fixed;\n left: 0;\n top: 0;\n width: 300px;\n z-index: 100;\n }\n .sidebar.mobile-open { display: block; }\n .hero { padding: 40px 24px; min-height: 100vh; }\n .hero-logo { height: 80px; margin-bottom: 24px; }\n .hero-title { font-size: 36px; }\n .hero-version { font-size: 12px; margin-left: 8px; }\n .hero-tagline { font-size: 17px; margin-bottom: 20px; }\n .hero-features { flex-direction: column; align-items: center; gap: 12px; }\n .hero-features li { font-size: 15px; }\n .hero-btn { padding: 12px 24px; font-size: 15px; }\n .github-corner svg { width: 60px; height: 60px; }\n .main { padding: 24px; }\n }\n\n /* ========== ANIMATIONS ========== */\n @keyframes fadeIn {\n from { opacity: 0; transform: translateY(10px); }\n to { opacity: 1; transform: translateY(0); }\n }\n\n .endpoint-section {\n animation: fadeIn 0.3s ease-out;\n }\n\n /* ========== HTTP ENDPOINT (ReDoc-style) ========== */\n .http-param-group {\n margin-bottom: 20px;\n }\n\n .http-param-group-title {\n font-size: 12px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--text-muted);\n margin-bottom: 8px;\n }\n\n .http-params {\n border: 1px solid var(--border-color);\n border-radius: 8px;\n overflow: hidden;\n }\n\n .http-param {\n padding: 12px 16px;\n border-bottom: 1px solid var(--border-color);\n }\n\n .http-param:last-child { border-bottom: none; }\n\n .http-param-head {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: 8px;\n }\n\n .http-param-name {\n font-family: 'SF Mono', 'Monaco', monospace;\n font-size: 13px;\n font-weight: 600;\n color: var(--text-color);\n }\n\n .http-param-required {\n font-size: 10px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.4px;\n color: #ef4444;\n }\n\n .http-param-deprecated {\n font-size: 10px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.4px;\n color: #f59e0b;\n }\n\n .http-param-desc {\n color: var(--text-muted);\n font-size: 13px;\n margin-top: 6px;\n line-height: 1.5;\n }\n\n /* Validation constraint chips (reuses .schema-constraint look) */\n .constraint-chips {\n display: flex;\n flex-wrap: wrap;\n gap: 6px;\n margin-top: 8px;\n }\n\n .constraint-chip {\n font-size: 11px;\n padding: 2px 8px;\n border-radius: 4px;\n background: var(--code-bg);\n color: var(--text-muted);\n border: 1px solid var(--border-color);\n font-family: 'SF Mono', 'Monaco', monospace;\n }\n\n .constraint-chip.constraint-enum {\n background: #fef3c7;\n color: #92400e;\n border-color: transparent;\n }\n\n [data-theme=\"dark\"] .constraint-chip.constraint-enum {\n background: #451a03;\n color: #fbbf24;\n }\n\n /* Response accordions */\n .response-accordion {\n border: 1px solid var(--border-color);\n border-radius: 8px;\n margin-bottom: 10px;\n overflow: hidden;\n }\n\n .response-accordion-header {\n display: flex;\n align-items: center;\n gap: 10px;\n width: 100%;\n padding: 12px 14px;\n background: var(--code-bg);\n border: none;\n cursor: pointer;\n text-align: left;\n font-size: 13px;\n color: var(--text-color);\n transition: background 0.15s;\n }\n\n .response-accordion-header:hover { background: var(--hover-bg); }\n\n .response-accordion-caret {\n flex-shrink: 0;\n font-size: 10px;\n color: var(--text-muted);\n transition: transform 0.2s ease;\n }\n\n .response-accordion.open .response-accordion-caret {\n transform: rotate(90deg);\n }\n\n .response-status-dot {\n width: 9px;\n height: 9px;\n border-radius: 50%;\n flex-shrink: 0;\n }\n\n .response-status-dot.status-2xx { background: #10b981; }\n .response-status-dot.status-3xx { background: #3b82f6; }\n .response-status-dot.status-4xx { background: #f59e0b; }\n .response-status-dot.status-5xx { background: #ef4444; }\n\n .response-status-code {\n font-family: 'SF Mono', 'Monaco', monospace;\n font-weight: 600;\n }\n\n .response-status-desc {\n color: var(--text-muted);\n }\n\n .response-accordion-body {\n padding: 14px;\n border-top: 1px solid var(--border-color);\n display: none;\n }\n\n .response-accordion.open .response-accordion-body { display: block; }\n\n .response-subhead {\n font-size: 11px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--text-muted);\n margin: 0 0 8px;\n }\n\n .response-block + .response-block { margin-top: 16px; }\n\n /* Multi-language code samples */\n .http-code-samples {\n margin-top: 8px;\n border: 1px solid var(--border-color);\n border-radius: 8px;\n overflow: hidden;\n background: var(--code-bg);\n }\n\n .http-code-samples .code-tabs {\n flex-wrap: wrap;\n background: rgba(0,0,0,0.04);\n }\n\n [data-theme=\"dark\"] .http-code-samples .code-tabs {\n background: rgba(255,255,255,0.03);\n }\n\n .http-code-sample-pre {\n margin: 0;\n padding: 14px;\n background: transparent;\n border: none;\n border-radius: 0;\n overflow-x: auto;\n font-family: 'SF Mono', 'Fira Code', 'Monaco', monospace;\n font-size: 12px;\n line-height: 1.55;\n color: var(--text-color);\n white-space: pre;\n }\n\n .http-code-copy {\n margin-left: auto;\n padding: 4px 10px;\n background: transparent;\n border: 1px solid var(--border-color);\n border-radius: 4px;\n color: var(--text-muted);\n font-size: 11px;\n cursor: pointer;\n transition: all 0.15s;\n }\n\n .http-code-copy:hover { color: var(--text-color); border-color: var(--text-muted); }\n\n /* Right panel (third column): keep request/response samples dark & legible\n regardless of the active theme, matching ReDoc's sample column. */\n .endpoint-right .endpoint-right-section + .endpoint-right-section {\n margin-top: 24px;\n }\n\n .endpoint-right .http-code-samples {\n background: rgba(0,0,0,0.25);\n border-color: rgba(255,255,255,0.1);\n }\n\n .endpoint-right .http-code-samples .code-tabs {\n background: rgba(0,0,0,0.2);\n border-color: rgba(255,255,255,0.1);\n }\n\n .endpoint-right .http-code-sample-pre {\n color: var(--code-panel-text);\n }\n\n .endpoint-right .code-tab {\n color: #90a4ae;\n }\n\n .endpoint-right .code-tab.active {\n background: rgba(255,255,255,0.12);\n color: #fff;\n }\n\n .endpoint-right .response-subhead {\n color: #90a4ae;\n }\n\n /* ========== AUTHENTICATION ========== */\n .authentication-section {\n margin: 28px 36px 36px;\n padding: 24px;\n border: 1px solid var(--border-color);\n border-radius: 10px;\n background: var(--surface-color);\n }\n\n .authentication-header h2 {\n margin: 4px 0 6px;\n font-size: var(--font-size-h2);\n color: var(--text-primary);\n }\n\n .authentication-header p,\n .auth-scheme-description,\n .auth-scheme-meta {\n color: var(--text-muted);\n font-size: var(--font-size-small);\n }\n\n .auth-environment {\n display: grid;\n gap: 6px;\n margin: 18px 0;\n }\n\n .auth-environment-select,\n .auth-input,\n .auth-operation-body {\n width: 100%;\n padding: 8px 10px;\n border: 1px solid var(--border-color);\n border-radius: 6px;\n background: var(--bg-primary);\n color: var(--text-primary);\n font: inherit;\n font-size: var(--font-size-small);\n }\n\n .auth-operation-body {\n min-height: 112px;\n resize: vertical;\n font-family: ui-monospace, SFMono-Regular, Menlo, monospace;\n font-size: var(--font-size-code);\n }\n\n .auth-schemes {\n display: grid;\n gap: 12px;\n }\n\n .auth-scheme {\n padding: 16px;\n border: 1px solid var(--border-color);\n border-radius: 8px;\n background: var(--bg-primary);\n }\n\n .auth-scheme-title {\n display: flex;\n align-items: baseline;\n gap: 10px;\n margin-bottom: 10px;\n color: var(--text-primary);\n }\n\n .auth-scheme-title span,\n .auth-field-label,\n .auth-status {\n color: var(--text-muted);\n font-size: var(--font-size-xs);\n }\n\n .auth-form,\n .auth-field {\n display: grid;\n gap: 6px;\n }\n\n .auth-form { gap: 10px; }\n\n .auth-oauth-flow {\n display: grid;\n gap: 10px;\n margin: 6px 0;\n padding: 14px;\n border: 1px solid var(--border-color);\n border-radius: 7px;\n }\n\n .auth-oauth-flow legend {\n padding: 0 6px;\n font-weight: 600;\n font-size: var(--font-size-small);\n }\n\n .auth-actions {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 10px;\n }\n\n .auth-save,\n .auth-request-token,\n .auth-oauth-token,\n .auth-oauth-authorize,\n .auth-oidc-authorize {\n padding: 7px 12px;\n border: 1px solid var(--primary-color);\n border-radius: 6px;\n background: transparent;\n color: var(--primary-color);\n cursor: pointer;\n font-size: var(--font-size-small);\n font-weight: 600;\n }\n\n .auth-status-error { color: #dc2626; }\n\n @media (max-width: 760px) {\n .authentication-section { margin: 20px 16px 28px; padding: 18px; }\n }\n\n .docs-overview-server-variables {\n width: 100%;\n margin-top: 8px;\n color: var(--text-muted);\n font-size: var(--font-size-xs);\n }\n\n .docs-overview-server-variables ul {\n display: grid;\n gap: 5px;\n margin-top: 5px;\n list-style: none;\n }\n\n .docs-overview-server-variables li {\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n }\n\n .endpoint-deprecated,\n .http-param-deprecated {\n padding: 2px 6px;\n border: 1px solid #d97706;\n border-radius: 4px;\n color: #b45309;\n font-size: var(--font-size-xs);\n font-weight: 600;\n }\n\n .response-media-sample + .response-media-sample,\n .request-example + .request-example {\n margin-top: 14px;\n padding-top: 14px;\n border-top: 1px solid rgba(255,255,255,0.12);\n }\n\n .response-example-name {\n margin: 6px 0;\n color: var(--text-muted);\n font-size: var(--font-size-xs);\n font-weight: 600;\n }\n\n .sample-code-error { color: #fca5a5; }\n\n .response-link {\n display: grid;\n gap: 4px;\n margin-top: 8px;\n padding: 10px;\n border: 1px solid var(--border-color);\n border-radius: 6px;\n font-size: var(--font-size-small);\n }\n\n .response-link-parameters { white-space: pre-wrap; }\n\n .http-try {\n display: grid;\n gap: 10px;\n margin-top: 12px;\n }\n\n .http-try-run {\n justify-self: start;\n padding: 7px 12px;\n border: 1px solid #8bc34a;\n border-radius: 6px;\n background: transparent;\n color: #c5e1a5;\n cursor: pointer;\n font-size: var(--font-size-small);\n font-weight: 600;\n }\n\n .http-try-run:disabled { cursor: wait; opacity: 0.6; }\n\n .http-try-result {\n max-height: 280px;\n overflow: auto;\n padding: 12px;\n border: 1px solid rgba(255,255,255,0.1);\n border-radius: 6px;\n color: var(--code-panel-text);\n white-space: pre-wrap;\n }\n\n .async-contracts {\n margin: 28px 36px;\n padding: 22px;\n border: 1px solid var(--border-color);\n border-radius: 9px;\n background: var(--surface-color);\n }\n\n .endpoint-left > .async-contracts { margin: 16px 0 0; }\n\n .async-contracts h2 { font-size: var(--font-size-h3); }\n .async-contracts h3 { margin-top: 14px; font-size: var(--font-size-h5); }\n .async-contract-note { margin: 5px 0 12px; color: var(--text-muted); font-size: var(--font-size-small); }\n\n .async-contract {\n display: grid;\n gap: 7px;\n margin-top: 8px;\n padding: 10px;\n border: 1px solid var(--border-color);\n border-radius: 6px;\n }\n\n .async-contract-operation {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 8px;\n font-size: var(--font-size-small);\n }\n\n @media (max-width: 760px) {\n .async-contracts { margin: 20px 16px; padding: 18px; }\n }\n\n";
2
2
  //# sourceMappingURL=schema-code.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-code.d.ts","sourceRoot":"","sources":["../../../../src/docs/ui/style-sections/schema-code.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,8ioBAizB5B,CAAA"}
1
+ {"version":3,"file":"schema-code.d.ts","sourceRoot":"","sources":["../../../../src/docs/ui/style-sections/schema-code.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,6zzBA0iC5B,CAAA"}
@@ -815,5 +815,254 @@ export const schemaCodeStyles = ` /* ========== RESPONSE SAMPLES (Right Panel
815
815
  color: #90a4ae;
816
816
  }
817
817
 
818
+ /* ========== AUTHENTICATION ========== */
819
+ .authentication-section {
820
+ margin: 28px 36px 36px;
821
+ padding: 24px;
822
+ border: 1px solid var(--border-color);
823
+ border-radius: 10px;
824
+ background: var(--surface-color);
825
+ }
826
+
827
+ .authentication-header h2 {
828
+ margin: 4px 0 6px;
829
+ font-size: var(--font-size-h2);
830
+ color: var(--text-primary);
831
+ }
832
+
833
+ .authentication-header p,
834
+ .auth-scheme-description,
835
+ .auth-scheme-meta {
836
+ color: var(--text-muted);
837
+ font-size: var(--font-size-small);
838
+ }
839
+
840
+ .auth-environment {
841
+ display: grid;
842
+ gap: 6px;
843
+ margin: 18px 0;
844
+ }
845
+
846
+ .auth-environment-select,
847
+ .auth-input,
848
+ .auth-operation-body {
849
+ width: 100%;
850
+ padding: 8px 10px;
851
+ border: 1px solid var(--border-color);
852
+ border-radius: 6px;
853
+ background: var(--bg-primary);
854
+ color: var(--text-primary);
855
+ font: inherit;
856
+ font-size: var(--font-size-small);
857
+ }
858
+
859
+ .auth-operation-body {
860
+ min-height: 112px;
861
+ resize: vertical;
862
+ font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
863
+ font-size: var(--font-size-code);
864
+ }
865
+
866
+ .auth-schemes {
867
+ display: grid;
868
+ gap: 12px;
869
+ }
870
+
871
+ .auth-scheme {
872
+ padding: 16px;
873
+ border: 1px solid var(--border-color);
874
+ border-radius: 8px;
875
+ background: var(--bg-primary);
876
+ }
877
+
878
+ .auth-scheme-title {
879
+ display: flex;
880
+ align-items: baseline;
881
+ gap: 10px;
882
+ margin-bottom: 10px;
883
+ color: var(--text-primary);
884
+ }
885
+
886
+ .auth-scheme-title span,
887
+ .auth-field-label,
888
+ .auth-status {
889
+ color: var(--text-muted);
890
+ font-size: var(--font-size-xs);
891
+ }
892
+
893
+ .auth-form,
894
+ .auth-field {
895
+ display: grid;
896
+ gap: 6px;
897
+ }
898
+
899
+ .auth-form { gap: 10px; }
900
+
901
+ .auth-oauth-flow {
902
+ display: grid;
903
+ gap: 10px;
904
+ margin: 6px 0;
905
+ padding: 14px;
906
+ border: 1px solid var(--border-color);
907
+ border-radius: 7px;
908
+ }
909
+
910
+ .auth-oauth-flow legend {
911
+ padding: 0 6px;
912
+ font-weight: 600;
913
+ font-size: var(--font-size-small);
914
+ }
915
+
916
+ .auth-actions {
917
+ display: flex;
918
+ flex-wrap: wrap;
919
+ align-items: center;
920
+ gap: 10px;
921
+ }
922
+
923
+ .auth-save,
924
+ .auth-request-token,
925
+ .auth-oauth-token,
926
+ .auth-oauth-authorize,
927
+ .auth-oidc-authorize {
928
+ padding: 7px 12px;
929
+ border: 1px solid var(--primary-color);
930
+ border-radius: 6px;
931
+ background: transparent;
932
+ color: var(--primary-color);
933
+ cursor: pointer;
934
+ font-size: var(--font-size-small);
935
+ font-weight: 600;
936
+ }
937
+
938
+ .auth-status-error { color: #dc2626; }
939
+
940
+ @media (max-width: 760px) {
941
+ .authentication-section { margin: 20px 16px 28px; padding: 18px; }
942
+ }
943
+
944
+ .docs-overview-server-variables {
945
+ width: 100%;
946
+ margin-top: 8px;
947
+ color: var(--text-muted);
948
+ font-size: var(--font-size-xs);
949
+ }
950
+
951
+ .docs-overview-server-variables ul {
952
+ display: grid;
953
+ gap: 5px;
954
+ margin-top: 5px;
955
+ list-style: none;
956
+ }
957
+
958
+ .docs-overview-server-variables li {
959
+ display: flex;
960
+ flex-wrap: wrap;
961
+ gap: 8px;
962
+ }
963
+
964
+ .endpoint-deprecated,
965
+ .http-param-deprecated {
966
+ padding: 2px 6px;
967
+ border: 1px solid #d97706;
968
+ border-radius: 4px;
969
+ color: #b45309;
970
+ font-size: var(--font-size-xs);
971
+ font-weight: 600;
972
+ }
973
+
974
+ .response-media-sample + .response-media-sample,
975
+ .request-example + .request-example {
976
+ margin-top: 14px;
977
+ padding-top: 14px;
978
+ border-top: 1px solid rgba(255,255,255,0.12);
979
+ }
980
+
981
+ .response-example-name {
982
+ margin: 6px 0;
983
+ color: var(--text-muted);
984
+ font-size: var(--font-size-xs);
985
+ font-weight: 600;
986
+ }
987
+
988
+ .sample-code-error { color: #fca5a5; }
989
+
990
+ .response-link {
991
+ display: grid;
992
+ gap: 4px;
993
+ margin-top: 8px;
994
+ padding: 10px;
995
+ border: 1px solid var(--border-color);
996
+ border-radius: 6px;
997
+ font-size: var(--font-size-small);
998
+ }
999
+
1000
+ .response-link-parameters { white-space: pre-wrap; }
1001
+
1002
+ .http-try {
1003
+ display: grid;
1004
+ gap: 10px;
1005
+ margin-top: 12px;
1006
+ }
1007
+
1008
+ .http-try-run {
1009
+ justify-self: start;
1010
+ padding: 7px 12px;
1011
+ border: 1px solid #8bc34a;
1012
+ border-radius: 6px;
1013
+ background: transparent;
1014
+ color: #c5e1a5;
1015
+ cursor: pointer;
1016
+ font-size: var(--font-size-small);
1017
+ font-weight: 600;
1018
+ }
1019
+
1020
+ .http-try-run:disabled { cursor: wait; opacity: 0.6; }
1021
+
1022
+ .http-try-result {
1023
+ max-height: 280px;
1024
+ overflow: auto;
1025
+ padding: 12px;
1026
+ border: 1px solid rgba(255,255,255,0.1);
1027
+ border-radius: 6px;
1028
+ color: var(--code-panel-text);
1029
+ white-space: pre-wrap;
1030
+ }
1031
+
1032
+ .async-contracts {
1033
+ margin: 28px 36px;
1034
+ padding: 22px;
1035
+ border: 1px solid var(--border-color);
1036
+ border-radius: 9px;
1037
+ background: var(--surface-color);
1038
+ }
1039
+
1040
+ .endpoint-left > .async-contracts { margin: 16px 0 0; }
1041
+
1042
+ .async-contracts h2 { font-size: var(--font-size-h3); }
1043
+ .async-contracts h3 { margin-top: 14px; font-size: var(--font-size-h5); }
1044
+ .async-contract-note { margin: 5px 0 12px; color: var(--text-muted); font-size: var(--font-size-small); }
1045
+
1046
+ .async-contract {
1047
+ display: grid;
1048
+ gap: 7px;
1049
+ margin-top: 8px;
1050
+ padding: 10px;
1051
+ border: 1px solid var(--border-color);
1052
+ border-radius: 6px;
1053
+ }
1054
+
1055
+ .async-contract-operation {
1056
+ display: flex;
1057
+ flex-wrap: wrap;
1058
+ align-items: center;
1059
+ gap: 8px;
1060
+ font-size: var(--font-size-small);
1061
+ }
1062
+
1063
+ @media (max-width: 760px) {
1064
+ .async-contracts { margin: 20px 16px; padding: 18px; }
1065
+ }
1066
+
818
1067
  `;
819
1068
  //# sourceMappingURL=schema-code.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-code.js","sourceRoot":"","sources":["../../../../src/docs/ui/style-sections/schema-code.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAizB/B,CAAA"}
1
+ {"version":3,"file":"schema-code.js","sourceRoot":"","sources":["../../../../src/docs/ui/style-sections/schema-code.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0iC/B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../../../src/docs/ui/style-sections/shell.ts"],"names":[],"mappings":"AAAA,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,iBAAiB,EAAE,MAAM,GACxB,MAAM,CAuoBR"}
1
+ {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../../../src/docs/ui/style-sections/shell.ts"],"names":[],"mappings":"AAAA,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,iBAAiB,EAAE,MAAM,GACxB,MAAM,CA8oBR"}
@@ -22,16 +22,17 @@ export function generateShellStyles(primaryColor, primaryHover, heroBackgroundCS
22
22
  --code-panel-text: #cfd8dc;
23
23
  --code-panel-header: #37474f;
24
24
 
25
- /* Type scale (#111 #3) — body 16 / small 14 / xs 12, headings descending */
26
- --font-size-body: 16px;
27
- --font-size-small: 14px;
28
- --font-size-xs: 12px;
29
- --font-size-h1: 36px;
30
- --font-size-h2: 28px;
31
- --font-size-h3: 22px;
32
- --font-size-h4: 18px;
33
- --font-size-h5: 16px;
34
- --font-size-h6: 14px;
25
+ /* Compact documentation type scale. */
26
+ --font-size-body: 14px;
27
+ --font-size-small: 13px;
28
+ --font-size-xs: 11px;
29
+ --font-size-h1: 30px;
30
+ --font-size-h2: 24px;
31
+ --font-size-h3: 19px;
32
+ --font-size-h4: 16px;
33
+ --font-size-h5: 14px;
34
+ --font-size-h6: 13px;
35
+ --font-size-code: 12px;
35
36
  --line-height-body: 1.6;
36
37
  --line-height-tight: 1.25;
37
38
  }
@@ -133,9 +134,15 @@ export function generateShellStyles(primaryColor, primaryHover, heroBackgroundCS
133
134
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;
134
135
  background: var(--bg-color);
135
136
  color: var(--text-color);
137
+ font-size: var(--font-size-body);
136
138
  line-height: 1.6;
137
139
  }
138
140
 
141
+ code,
142
+ pre {
143
+ font-size: var(--font-size-code);
144
+ }
145
+
139
146
  /* ========== TOP NAVIGATION ========== */
140
147
  .top-nav {
141
148
  position: sticky;
@@ -1 +1 @@
1
- {"version":3,"file":"shell.js","sourceRoot":"","sources":["../../../../src/docs/ui/style-sections/shell.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,mBAAmB,CACjC,YAAoB,EACpB,YAAoB,EACpB,iBAAyB;IAEzB,OAAO;;yBAEgB,YAAY;yBACZ,YAAY;;;;;;;;;;;;kBAYnB,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qDAmDuB,YAAY;qDACZ,YAAY;;;;;;;;;;;;mEAYE,YAAY;;;;;;;;;;;;;;;;;;;;;;qEAsBV,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAuPzE,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAySxB,CAAA;AACD,CAAC"}
1
+ {"version":3,"file":"shell.js","sourceRoot":"","sources":["../../../../src/docs/ui/style-sections/shell.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,mBAAmB,CACjC,YAAoB,EACpB,YAAoB,EACpB,iBAAyB;IAEzB,OAAO;;yBAEgB,YAAY;yBACZ,YAAY;;;;;;;;;;;;kBAYnB,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qDAoDuB,YAAY;qDACZ,YAAY;;;;;;;;;;;;mEAYE,YAAY;;;;;;;;;;;;;;;;;;;;;;qEAsBV,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA6PzE,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAySxB,CAAA;AACD,CAAC"}
@@ -11,12 +11,13 @@ export interface UIConfig {
11
11
  primaryColor?: string;
12
12
  logo?: string;
13
13
  favicon?: string;
14
+ openGraph?: OpenGraphConfig;
14
15
  /** External CSS files loaded after the built-in stylesheet so they can override variables and component styles. */
15
16
  customCss?: string | string[];
16
- tryItOut?: boolean;
17
+ tryItOut?: boolean | TryItOutConfig;
17
18
  codeGeneration?: {
18
19
  enabled?: boolean;
19
- languages?: ('typescript' | 'python' | 'go' | 'curl')[];
20
+ languages?: ('curl' | 'typescript' | 'rust' | 'python' | 'go')[];
20
21
  };
21
22
  hero?: HeroConfig;
22
23
  sidebar?: SidebarConfig;
@@ -61,6 +62,26 @@ export interface UIConfig {
61
62
  */
62
63
  mermaid?: boolean | MermaidConfig;
63
64
  }
65
+ export interface OpenGraphConfig {
66
+ title?: string;
67
+ description?: string;
68
+ type?: string;
69
+ url?: string;
70
+ image?: string;
71
+ imageAlt?: string;
72
+ siteName?: string;
73
+ locale?: string;
74
+ }
75
+ export interface TryItOutConfig {
76
+ /** Browser fetch, or a same-origin bounded server proxy for APIs without docs CORS. */
77
+ mode?: 'direct' | 'proxy';
78
+ /** Extra exact origins accepted by proxy mode in addition to document servers. */
79
+ allowedOrigins?: string[];
80
+ /** Abort an upstream proxy request after this duration. Default: 15000. */
81
+ timeoutMs?: number;
82
+ /** Maximum buffered upstream response. Default: 1 MiB. */
83
+ maxResponseBytes?: number;
84
+ }
64
85
  export interface MermaidConfig {
65
86
  /** Script URL to load Mermaid from. Defaults to jsdelivr CDN. */
66
87
  src?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/docs/ui/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/docs/ui/types.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ import { type USDGeneratorOptions, type USDGeneratorProtocolConfig } from './gen
16
16
  import { type MarkdownDocsSource } from './markdown-loader.js';
17
17
  import type { LoadedTcpHandler } from './generators/tcp-generator.js';
18
18
  import type { LoadedUdpHandler } from './generators/udp-generator.js';
19
+ import type { OpenGraphConfig, TryItOutConfig } from './ui/types.js';
19
20
  import { type MarkdownDocsState } from './docs-state.js';
20
21
  export declare function readDocsAsset(rootDir: string, relativePath: string): Response | null;
21
22
  /**
@@ -52,6 +53,10 @@ export interface USDMiddlewareConfig {
52
53
  securitySchemes?: USDGeneratorOptions['securitySchemes'];
53
54
  /** Default security requirement */
54
55
  defaultSecurity?: USDGeneratorOptions['defaultSecurity'];
56
+ /** Interactive authentication recipes keyed by security scheme. */
57
+ authentication?: USDGeneratorOptions['authentication'];
58
+ /** OpenAPI 3.1 inbound webhook contracts. */
59
+ webhooks?: USDGeneratorOptions['webhooks'];
55
60
  /** Tags for grouping */
56
61
  tags?: USDGeneratorOptions['tags'];
57
62
  /** External documentation */
@@ -64,11 +69,12 @@ export interface USDMiddlewareConfig {
64
69
  primaryColor?: string;
65
70
  logo?: string;
66
71
  favicon?: string;
72
+ openGraph?: OpenGraphConfig;
67
73
  customCss?: string | string[];
68
- tryItOut?: boolean;
74
+ tryItOut?: boolean | TryItOutConfig;
69
75
  codeGeneration?: {
70
76
  enabled?: boolean;
71
- languages?: ('typescript' | 'python' | 'go' | 'curl')[];
77
+ languages?: ('curl' | 'typescript' | 'rust' | 'python' | 'go')[];
72
78
  };
73
79
  /** Hero section (landing page header) */
74
80
  hero?: {
@@ -225,8 +231,12 @@ export interface USDHandlers {
225
231
  serveUSD: () => Response;
226
232
  /** Serve USD document as YAML */
227
233
  serveUSDYaml: () => Response;
234
+ /** Serve the USD document using a registered file extension. */
235
+ serveUSDFormat: (extension: string) => Response;
228
236
  /** Serve pure OpenAPI 3.1 JSON (for Swagger UI compatibility) */
229
237
  serveOpenAPI: () => Response;
238
+ /** Serve pure OpenAPI 3.1 using a registered file extension. */
239
+ serveOpenAPIFormat: (extension: string) => Response;
230
240
  /** Serve reusable docs UI JavaScript runtime */
231
241
  serveUIRuntime: () => Response;
232
242
  /** Serve reusable Markdown engine support asset */
@@ -247,8 +257,12 @@ export interface USDHandlers {
247
257
  serveUISearchModal: () => Response;
248
258
  /** Serve docs UI stylesheet */
249
259
  serveUIStyles: () => Response;
260
+ /** Serve the conventional docsDir/favicon.ico file as an exact route. */
261
+ serveFavicon: () => Response;
250
262
  /** Serve static assets referenced by Markdown docsDir pages */
251
263
  serveDocsAsset: (pathname: string) => Response | null;
264
+ /** Execute one opt-in, allowlisted documentation request through the bounded proxy. */
265
+ serveTryItProxy: (payload: unknown) => Promise<Response>;
252
266
  /** Get the USD document */
253
267
  getUSDDocument: () => USDDocument;
254
268
  /** Get the OpenAPI document */
@@ -308,6 +322,13 @@ export interface USDDocsApp {
308
322
  get(path: string, handler: (c: {
309
323
  req: Request | {
310
324
  url: string;
325
+ param?: (name: string) => string | undefined;
326
+ };
327
+ }) => Response | Promise<Response>): unknown;
328
+ post?(path: string, handler: (c: {
329
+ req: Request | {
330
+ url: string;
331
+ json?: <T = unknown>() => Promise<T>;
311
332
  };
312
333
  }) => Response | Promise<Response>): unknown;
313
334
  }
@@ -1 +1 @@
1
- {"version":3,"file":"usd-middleware.d.ts","sourceRoot":"","sources":["../../src/docs/usd-middleware.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"usd-middleware.d.ts","sourceRoot":"","sources":["../../src/docs/usd-middleware.ts"],"names":[],"mappings":"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"}