diff --git a/apps/website/content/docs/chat/api/api-docs.json b/apps/website/content/docs/chat/api/api-docs.json index b8391a0aa..19ef10b79 100644 --- a/apps/website/content/docs/chat/api/api-docs.json +++ b/apps/website/content/docs/chat/api/api-docs.json @@ -7104,6 +7104,97 @@ "signature": "Readonly | RenderViewEntry>>", "examples": [] }, + { + "name": "cacheplaneMarkdownViews", + "kind": "const", + "description": "Default view registry consumed by . Maps every\nMarkdownNode.type emitted by @cacheplane/partial-markdown@0.2 to its\ncorresponding Angular component.\n\nOverride per-node-type via `withViews(cacheplaneMarkdownViews, { … })`.", + "signature": "ViewRegistry", + "examples": [] + }, + { + "name": "CHAT_CONFIG", + "kind": "const", + "description": "", + "signature": "InjectionToken", + "examples": [] + }, + { + "name": "CHAT_LIFECYCLE", + "kind": "const", + "description": "", + "signature": "InjectionToken", + "examples": [] + }, + { + "name": "CHAT_MARKDOWN_STYLES", + "kind": "const", + "description": "", + "signature": "\"\\n chat-streaming-md { display: block; color: var(--ngaf-chat-text); line-height: var(--ngaf-chat-line-height); }\\n\\n /* Headings */\\n chat-streaming-md h1, chat-streaming-md h2, chat-streaming-md h3, chat-streaming-md h4, chat-streaming-md h5, chat-streaming-md h6 {\\n font-weight: 600;\\n line-height: 1.25;\\n margin: 1.25rem 0 0.75rem;\\n }\\n chat-streaming-md h1:first-child, chat-streaming-md h2:first-child, chat-streaming-md h3:first-child,\\n chat-streaming-md h4:first-child, chat-streaming-md h5:first-child, chat-streaming-md h6:first-child { margin-top: 0; }\\n chat-streaming-md h1 { font-size: 1.5em; font-weight: 700; }\\n chat-streaming-md h2 { font-size: 1.25em; }\\n chat-streaming-md h3 { font-size: 1.1em; }\\n chat-streaming-md h4 { font-size: 1em; }\\n chat-streaming-md h5, chat-streaming-md h6 { font-size: 0.95em; color: var(--ngaf-chat-text-muted); }\\n\\n /* Paragraphs and inline emphasis */\\n chat-streaming-md p { margin: 0 0 0.75rem; line-height: 1.6; font-size: var(--ngaf-chat-font-size); }\\n chat-streaming-md p:last-child { margin-bottom: 0; }\\n chat-streaming-md strong, chat-streaming-md b { font-weight: 700; }\\n chat-streaming-md em, chat-streaming-md i { font-style: italic; }\\n chat-streaming-md del, chat-streaming-md s { text-decoration: line-through; color: var(--ngaf-chat-text-muted); }\\n chat-streaming-md mark { background: var(--ngaf-chat-surface-alt); padding: 0 2px; border-radius: 2px; }\\n chat-streaming-md sub { font-size: 0.75em; vertical-align: sub; }\\n chat-streaming-md sup { font-size: 0.75em; vertical-align: super; }\\n\\n /* Links */\\n chat-streaming-md a { color: var(--ngaf-chat-primary); text-decoration: underline; text-underline-offset: 2px; }\\n chat-streaming-md a:hover { text-decoration-thickness: 2px; }\\n\\n /* Lists (CommonMark + GFM task lists) */\\n chat-streaming-md ul, chat-streaming-md ol { margin: 0 0 0.75rem; padding-left: 1.5rem; }\\n chat-streaming-md ul { list-style: disc outside; }\\n chat-streaming-md ol { list-style: decimal outside; }\\n chat-streaming-md ul ul { list-style: circle outside; }\\n chat-streaming-md ul ul ul { list-style: square outside; }\\n chat-streaming-md li { margin: 0.2rem 0; }\\n chat-streaming-md li::marker { color: var(--ngaf-chat-text-muted); }\\n chat-streaming-md li > p { margin: 0 0 0.25rem; }\\n chat-streaming-md li > ul, chat-streaming-md li > ol { margin: 0.25rem 0 0; }\\n /* GFM task lists: marked emits
  • ... */\\n chat-streaming-md li:has(> input[type=\\\"checkbox\\\"]) { list-style: none; margin-left: -1.25rem; }\\n chat-streaming-md li > input[type=\\\"checkbox\\\"] { margin-right: 0.5rem; vertical-align: middle; }\\n\\n /* Code (inline + fenced) */\\n chat-streaming-md code {\\n background: var(--ngaf-chat-surface-alt);\\n color: var(--ngaf-chat-text);\\n padding: 1px 5px;\\n border-radius: 4px;\\n font-family: var(--ngaf-chat-font-mono);\\n font-size: 0.9em;\\n }\\n chat-streaming-md pre {\\n background: var(--ngaf-chat-surface-alt);\\n color: var(--ngaf-chat-text);\\n padding: 12px 14px;\\n border-radius: var(--ngaf-chat-radius-card);\\n overflow-x: auto;\\n font-family: var(--ngaf-chat-font-mono);\\n font-size: var(--ngaf-chat-font-size-sm);\\n line-height: 1.5;\\n margin: 0 0 0.75rem;\\n }\\n chat-streaming-md pre code { background: transparent; padding: 0; border-radius: 0; font-size: inherit; }\\n\\n /* Blockquote */\\n chat-streaming-md blockquote {\\n border-left: 3px solid var(--ngaf-chat-separator);\\n padding: 0.25rem 0 0.25rem 12px;\\n margin: 0 0 0.75rem;\\n color: var(--ngaf-chat-text-muted);\\n }\\n chat-streaming-md blockquote > :last-child { margin-bottom: 0; }\\n\\n /* Horizontal rule */\\n chat-streaming-md hr {\\n border: none;\\n border-top: 1px solid var(--ngaf-chat-separator);\\n margin: 1rem 0;\\n }\\n\\n /* Tables (GFM) */\\n chat-streaming-md table {\\n border-collapse: collapse;\\n margin: 0 0 0.75rem;\\n width: 100%;\\n font-size: 0.95em;\\n }\\n chat-streaming-md thead { background: var(--ngaf-chat-surface-alt); }\\n chat-streaming-md th, chat-streaming-md td {\\n border: 1px solid var(--ngaf-chat-separator);\\n padding: 6px 10px;\\n text-align: left;\\n vertical-align: top;\\n }\\n chat-streaming-md th { font-weight: 600; }\\n /* Component-rendered table: chat-md-table becomes a horizontally-scrollable\\n wrapper for the inner ; row/cell elements stay layout-transparent\\n so the browser's table layout takes over. Without this overflow wrapper,\\n wide tables push their parent container past the viewport horizontally. */\\n chat-streaming-md chat-md-table {\\n display: block;\\n overflow-x: auto;\\n max-width: 100%;\\n margin: 0 0 0.75rem;\\n }\\n chat-streaming-md chat-md-table-row { display: contents; }\\n chat-streaming-md chat-md-table-cell { display: contents; }\\n chat-streaming-md chat-md-table > table { margin: 0; }\\n /* Task-list items: checkbox + first paragraph render inline; subsequent\\n blocks (sub-lists, multi-paragraph items) flow normally below. */\\n chat-streaming-md li.chat-md-list-item--task {\\n list-style: none;\\n margin-left: -1.25rem;\\n display: flex;\\n flex-wrap: wrap;\\n align-items: baseline;\\n gap: 0.5rem;\\n }\\n chat-streaming-md li.chat-md-list-item--task > input[type=\\\"checkbox\\\"] {\\n margin: 0;\\n flex: 0 0 auto;\\n transform: translateY(2px);\\n }\\n /* The chat-md-children wrapper around list-item content takes remaining width */\\n chat-streaming-md li.chat-md-list-item--task > chat-md-children {\\n flex: 1 1 auto;\\n min-width: 0;\\n }\\n /* Tight task items: only the FIRST paragraph aligns inline with the\\n checkbox (margin collapsed). Subsequent paragraphs/blocks keep their\\n normal vertical spacing so multi-block items render readably. */\\n chat-streaming-md li.chat-md-list-item--task > chat-md-children > chat-md-paragraph:first-child > p {\\n margin: 0;\\n }\\n\\n /* Media */\\n chat-streaming-md img { max-width: 100%; height: auto; border-radius: 6px; }\\n /* Broken-image fallback: muted pill showing alt text + icon. Triggered\\n when fires (error). Caught by live browser smoke — prior impl\\n showed only the browser's broken-image icon with no readable alt. */\\n chat-streaming-md .chat-md-image--broken {\\n display: inline-flex;\\n align-items: center;\\n gap: 0.4rem;\\n padding: 0.25rem 0.5rem;\\n background: var(--ngaf-chat-surface-alt);\\n border: 1px dashed var(--ngaf-chat-separator);\\n border-radius: 6px;\\n font-size: 0.9em;\\n color: var(--ngaf-chat-text-muted, currentColor);\\n opacity: 0.85;\\n }\\n chat-streaming-md .chat-md-image__icon { font-size: 1em; line-height: 1; }\\n chat-streaming-md .chat-md-image__alt { font-style: italic; }\\n\"", + "examples": [] + }, + { + "name": "ICON_AGENT", + "kind": "const", + "description": "Robot/agent icon (replacement). 14x14.", + "signature": "\"\"", + "examples": [] + }, + { + "name": "ICON_CHECK", + "kind": "const", + "description": "Check mark replacement. 12x12.", + "signature": "\"\"", + "examples": [] + }, + { + "name": "ICON_CHEVRON_DOWN", + "kind": "const", + "description": "Chevron down (▼ replacement). 12x12, stroke-based.", + "signature": "\"\"", + "examples": [] + }, + { + "name": "ICON_CHEVRON_UP", + "kind": "const", + "description": "Chevron up (▲ replacement). 12x12, stroke-based.", + "signature": "\"\"", + "examples": [] + }, + { + "name": "ICON_SEND", + "kind": "const", + "description": "Send arrow (for chat input). 16x16.", + "signature": "\"\"", + "examples": [] + }, + { + "name": "ICON_TOOL", + "kind": "const", + "description": "Gear icon (⚙ replacement). 14x14.", + "signature": "\"\"", + "examples": [] + }, + { + "name": "ICON_WARNING", + "kind": "const", + "description": "Warning triangle (⚠ replacement). 18x18.", + "signature": "\"\"", + "examples": [] + }, + { + "name": "IS_HEADER_ROW", + "kind": "const", + "description": "Provided by MarkdownTableRowComponent for header rows so that\nMarkdownTableCellComponent can render
    instead of .\nThe value is a Signal so that it tracks the row's isHeader reactively.", + "signature": "InjectionToken>", + "examples": [] + }, + { + "name": "MARKDOWN_VIEW_REGISTRY", + "kind": "const", + "description": "DI token for the markdown view registry consumed by \nand . Maps MarkdownNode.type strings (e.g. \"paragraph\",\n\"heading\") to Angular components that render that node type.\n\n`` provides the runtime registry on its component-level\ninjector — either the consumer-supplied [viewRegistry] input, or\n`cacheplaneMarkdownViews` (the default) — so descendant \ncomponents resolve the right components for each node.", + "signature": "InjectionToken | RenderViewEntry>>>", + "examples": [] + }, { "name": "a2uiBasicCatalog", "kind": "function", @@ -7978,6 +8069,34 @@ ], "examples": [] }, + { + "name": "REASONING_FIXTURE_EVENTS", + "kind": "const", + "description": "Canonical sequence: reasoning starts, three reasoning chunks, reasoning\nends, text starts, three text chunks, text ends.", + "signature": "AbstractEvent[]", + "examples": [] + }, + { + "name": "REASONING_FIXTURE_MESSAGE_ID", + "kind": "const", + "description": "", + "signature": "\"fixture-msg-1\"", + "examples": [] + }, + { + "name": "REASONING_FIXTURE_REASONING", + "kind": "const", + "description": "", + "signature": "\"I read the prompt and decided to greet the user.\"", + "examples": [] + }, + { + "name": "REASONING_FIXTURE_RESPONSE", + "kind": "const", + "description": "", + "signature": "\"Hello!\"", + "examples": [] + }, { "name": "assertReasoningFixtureMessages", "kind": "function", diff --git a/apps/website/content/docs/langgraph/api/api-docs.json b/apps/website/content/docs/langgraph/api/api-docs.json index e6057351f..80edbb2e4 100644 --- a/apps/website/content/docs/langgraph/api/api-docs.json +++ b/apps/website/content/docs/langgraph/api/api-docs.json @@ -2348,6 +2348,41 @@ "signature": "NgResourceStatus", "examples": [] }, + { + "name": "AGENT_LIFECYCLE", + "kind": "const", + "description": "", + "signature": "InjectionToken", + "examples": [] + }, + { + "name": "LANGGRAPH_CLIENT", + "kind": "const", + "description": "Optional adapter clients can pass an explicit Client (e.g. for\n testing). When omitted, the adapter constructs one via\n createLangGraphClient.", + "signature": "InjectionToken>", + "examples": [] + }, + { + "name": "LANGGRAPH_CLIENT_OPTIONS", + "kind": "const", + "description": "App-wide LangGraph SDK client tuning (e.g. `maxRetries`). Provide once at the\napp root; both the agent's default FetchStreamTransport and the\nLangGraphThreadsAdapter read it so the retry budget is configured in\none place. A call-site `agent({ clientOptions })` or per-agent\n`provideAgent({ clientOptions })` overrides it for that agent.\nAbsent → the SDK default.", + "signature": "InjectionToken", + "examples": [] + }, + { + "name": "LANGGRAPH_THREADS_CONFIG", + "kind": "const", + "description": "", + "signature": "InjectionToken", + "examples": [] + }, + { + "name": "ResourceStatus", + "kind": "const", + "description": "Runtime constant mirroring Angular's ResourceStatus string-union type.\nAngular 21 ships ResourceStatus as a pure string-union type (no runtime value),\nso we provide a const-object shim for code that needs runtime comparisons.", + "signature": "object", + "examples": [] + }, { "name": "createLangGraphClient", "kind": "function", diff --git a/apps/website/content/docs/licensing/api/api-docs.json b/apps/website/content/docs/licensing/api/api-docs.json index 95e4421b6..97b130a17 100644 --- a/apps/website/content/docs/licensing/api/api-docs.json +++ b/apps/website/content/docs/licensing/api/api-docs.json @@ -175,6 +175,13 @@ "signature": "object | object", "examples": [] }, + { + "name": "LICENSE_PUBLIC_KEY", + "kind": "const", + "description": "Ed25519 public key baked into this build of `@threadplane/licensing`.", + "signature": "Uint8Array", + "examples": [] + }, { "name": "emitNag", "kind": "function", diff --git a/apps/website/content/docs/render/api/api-docs.json b/apps/website/content/docs/render/api/api-docs.json index ecd8c2388..0263921f7 100644 --- a/apps/website/content/docs/render/api/api-docs.json +++ b/apps/website/content/docs/render/api/api-docs.json @@ -657,6 +657,48 @@ "signature": "Readonly | RenderViewEntry>>", "examples": [] }, + { + "name": "RENDER_CONFIG", + "kind": "const", + "description": "", + "signature": "InjectionToken", + "examples": [] + }, + { + "name": "RENDER_CONTEXT", + "kind": "const", + "description": "", + "signature": "InjectionToken", + "examples": [] + }, + { + "name": "RENDER_HOST", + "kind": "const", + "description": "", + "signature": "InjectionToken", + "examples": [] + }, + { + "name": "RENDER_LIFECYCLE", + "kind": "const", + "description": "", + "signature": "InjectionToken", + "examples": [] + }, + { + "name": "REPEAT_SCOPE", + "kind": "const", + "description": "", + "signature": "InjectionToken", + "examples": [] + }, + { + "name": "VIEW_REGISTRY", + "kind": "const", + "description": "", + "signature": "InjectionToken | RenderViewEntry>>>", + "examples": [] + }, { "name": "defineAngularRegistry", "kind": "function", diff --git a/apps/website/content/docs/telemetry/api/api-docs.json b/apps/website/content/docs/telemetry/api/api-docs.json index dc96404b4..152117467 100644 --- a/apps/website/content/docs/telemetry/api/api-docs.json +++ b/apps/website/content/docs/telemetry/api/api-docs.json @@ -368,6 +368,13 @@ }, "examples": [] }, + { + "name": "PERSONAL_EMAIL_DOMAINS", + "kind": "const", + "description": "", + "signature": "ReadonlySet", + "examples": [] + }, { "name": "getEmailDomain", "kind": "function", diff --git a/apps/website/scripts/generate-api-docs.ts b/apps/website/scripts/generate-api-docs.ts index 04e4460b1..6d720a842 100644 --- a/apps/website/scripts/generate-api-docs.ts +++ b/apps/website/scripts/generate-api-docs.ts @@ -19,7 +19,7 @@ interface ApiMethod { interface ApiDocEntry { name: string; - kind: 'function' | 'class' | 'interface' | 'type'; + kind: 'function' | 'class' | 'interface' | 'type' | 'const'; description: string; signature?: string; params?: ApiParam[]; @@ -153,6 +153,10 @@ function reflectionToEntry(ref: any): ApiDocEntry | null { return { name: ref.name, kind: 'type', description: desc, signature: extractType(ref.type), examples }; } + if (kind === ReflectionKind.Variable) { + return { name: ref.name, kind: 'const', description: desc, signature: extractType(ref.type), examples }; + } + return null; } diff --git a/apps/website/src/components/docs/ApiDocRenderer.tsx b/apps/website/src/components/docs/ApiDocRenderer.tsx index 5a6800ac6..7fbf775d1 100644 --- a/apps/website/src/components/docs/ApiDocRenderer.tsx +++ b/apps/website/src/components/docs/ApiDocRenderer.tsx @@ -16,7 +16,7 @@ interface ApiMethod { export interface ApiDocEntry { name: string; - kind: 'function' | 'class' | 'interface' | 'type'; + kind: 'function' | 'class' | 'interface' | 'type' | 'const'; description: string; signature?: string; params?: ApiParam[];