@praxisui/ai 9.0.0-beta.9 → 9.0.0-beta.90

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.
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@praxisui/ai",
3
- "version": "9.0.0-beta.9",
3
+ "version": "9.0.0-beta.90",
4
4
  "description": "AI building blocks and assistant integration for Praxis UI applications.",
5
5
  "peerDependencies": {
6
6
  "@angular/common": "^21.0.0",
7
7
  "@angular/core": "^21.0.0",
8
- "@praxisui/core": "^9.0.0-beta.9",
8
+ "@praxisui/core": "^9.0.0-beta.90",
9
9
  "@angular/cdk": "^21.0.0",
10
10
  "@angular/forms": "^21.0.0",
11
11
  "@angular/material": "^21.0.0",
@@ -23,6 +23,7 @@
23
23
  "keywords": [
24
24
  "angular",
25
25
  "praxisui",
26
+ "praxis",
26
27
  "ai",
27
28
  "assistant",
28
29
  "llm",
@@ -39,7 +40,10 @@
39
40
  ".": {
40
41
  "types": "./types/praxisui-ai.d.ts",
41
42
  "default": "./fesm2022/praxisui-ai.mjs"
43
+ },
44
+ "./ai/component-registry.json": {
45
+ "default": "./ai/component-registry.json"
42
46
  }
43
47
  },
44
48
  "type": "module"
45
- }
49
+ }
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, OnDestroy, ElementRef, OnChanges, EventEmitter, SimpleChanges, OnInit, ChangeDetectorRef } from '@angular/core';
2
+ import { InjectionToken, OnDestroy, ElementRef, AfterViewInit, OnChanges, EventEmitter, SimpleChanges, OnInit, ChangeDetectorRef } from '@angular/core';
3
3
  import * as rxjs from 'rxjs';
4
4
  import { Observable } from 'rxjs';
5
5
  import { PraxisRuntimeComponentObservationEnvelope, PraxisRuntimeComponentObservationRegistryService } from '@praxisui/core';
@@ -19,7 +19,7 @@ declare class PraxisAi {
19
19
  * Do not edit manually. Run praxis-config-starter/tools/contracts/generate-ai-contract-bindings.js.
20
20
  */
21
21
  declare const AI_CONTRACT_VERSION: "v1.1";
22
- declare const AI_CONTRACT_SCHEMA_HASH: "39e28310b20a9f2bb5e58df32f4f3f98bb1a4236761dfc7d9ee5d18fb588894c";
22
+ declare const AI_CONTRACT_SCHEMA_HASH: "d817fcf351207371c5cb8528b70c0ba6830648710581b08c7cc2b2b428989289";
23
23
  declare const AI_STREAM_EVENT_SCHEMA_VERSION: "v1";
24
24
  declare const AI_DOMAIN_CATALOG_CONTEXT_HINT_SCHEMA_VERSION: "praxis.ai.context-hints.domain-catalog/v0.2";
25
25
  declare const AI_STREAM_EVENT_TYPES: readonly ["status", "thought.step", "heartbeat", "intent.resolved", "result", "error", "cancelled"];
@@ -60,10 +60,38 @@ interface AiDomainCatalogContextHintContract {
60
60
  limit?: number;
61
61
  relationships?: AiDomainCatalogRelationshipHintContract | null;
62
62
  }
63
+ interface AgenticAuthoringApplyTargetBaseContract {
64
+ schemaVersion: 'praxis-agentic-authoring-apply-target.v1';
65
+ componentType: string;
66
+ componentId: string;
67
+ scope: 'user' | 'tenant';
68
+ environment?: string | null;
69
+ }
70
+ type AgenticAuthoringApplyTargetContract = AgenticAuthoringApplyTargetBaseContract & ({
71
+ mode: 'create';
72
+ baseEtag?: never;
73
+ } | {
74
+ mode: 'update';
75
+ baseEtag: string;
76
+ });
63
77
  interface AiContextHintsContract {
64
78
  domainCatalog?: AiDomainCatalogContextHintContract;
65
79
  [key: string]: AiJsonValue | AiDomainCatalogContextHintContract | undefined;
66
80
  }
81
+ interface AgenticAuthoringClientActionContract {
82
+ schemaVersion: 'praxis-agentic-authoring-client-action.v1';
83
+ id: string;
84
+ kind: 'local-undo';
85
+ capabilityRef: string;
86
+ available: boolean;
87
+ targetComponentId?: string | null;
88
+ }
89
+ interface AgenticAuthoringTurnStreamContextHintsContract {
90
+ domainCatalog?: AiDomainCatalogContextHintContract;
91
+ agenticApplyTarget?: AgenticAuthoringApplyTargetContract;
92
+ clientActions?: AgenticAuthoringClientActionContract[];
93
+ [key: string]: AiJsonValue | AiDomainCatalogContextHintContract | AgenticAuthoringApplyTargetContract | AgenticAuthoringClientActionContract[] | undefined;
94
+ }
67
95
  interface AiSchemaContextContract {
68
96
  path?: string | null;
69
97
  operation?: string | null;
@@ -292,6 +320,7 @@ interface AgenticAuthoringSemanticSelectedResourceContract {
292
320
  schemaUrl?: string | null;
293
321
  submitUrl?: string | null;
294
322
  submitMethod?: string | null;
323
+ label?: string | null;
295
324
  [key: string]: AiJsonValue | undefined;
296
325
  }
297
326
  interface AgenticAuthoringSemanticRetrievalEvidenceContract {
@@ -442,13 +471,13 @@ interface AgenticAuthoringTurnStreamRequestContract extends AgenticAuthoringConv
442
471
  provider?: string | null;
443
472
  model?: string | null;
444
473
  apiKey?: string | null;
445
- contextHints?: AiContextHintsContract | null;
474
+ contextHints?: AgenticAuthoringTurnStreamContextHintsContract | null;
446
475
  componentCapabilities?: AgenticAuthoringComponentCapabilitiesResultContract | null;
447
476
  activeSemanticDecision?: AgenticAuthoringSemanticDecisionContract | null;
448
477
  diagnostics?: AiJsonObject | null;
449
478
  runtimeComponentObservations?: unknown[] | null;
450
479
  runtimeComponentObservationTrustBoundary?: 'untrusted_frontend_observation' | null;
451
- [key: string]: AiJsonValue | AiContextHintsContract | AgenticAuthoringComponentCapabilitiesResultContract | AgenticAuthoringSemanticDecisionContract | AgenticAuthoringConversationMessageContract[] | AgenticAuthoringPendingClarificationContract | AgenticAuthoringAttachmentSummaryContract[] | unknown[] | undefined;
480
+ [key: string]: AiJsonValue | AgenticAuthoringTurnStreamContextHintsContract | AgenticAuthoringComponentCapabilitiesResultContract | AgenticAuthoringSemanticDecisionContract | AgenticAuthoringConversationMessageContract[] | AgenticAuthoringPendingClarificationContract | AgenticAuthoringAttachmentSummaryContract[] | unknown[] | undefined;
452
481
  }
453
482
  interface AgenticAuthoringPreviewResultContract {
454
483
  valid?: boolean;
@@ -462,6 +491,8 @@ interface AgenticAuthoringPreviewResultContract {
462
491
  interface AgenticAuthoringApplyRequestContract {
463
492
  componentType: string;
464
493
  componentId: string;
494
+ streamId: string;
495
+ resultEventId: string;
465
496
  scope?: string | null;
466
497
  compiledFormPatch: AiJsonObject;
467
498
  tags?: AiJsonObject | null;
@@ -498,10 +529,19 @@ interface AgenticAuthoringComponentCapabilityCatalogContract {
498
529
  capabilities?: AgenticAuthoringComponentCapabilityContract[];
499
530
  [key: string]: AiJsonValue | AgenticAuthoringComponentCapabilityContract[] | undefined;
500
531
  }
532
+ interface AgenticAuthoringComponentCapabilityDiagnosticsContract {
533
+ source?: 'registry' | 'last-known-good' | 'built-in-fallback' | 'built-in' | null;
534
+ degraded?: boolean | null;
535
+ degradationReason?: string | null;
536
+ resolvedAt?: string | null;
537
+ lastSuccessfulRegistryLoadAt?: string | null;
538
+ [key: string]: AiJsonValue | undefined;
539
+ }
501
540
  interface AgenticAuthoringComponentCapabilitiesResultContract {
502
541
  version?: string | null;
503
542
  catalogs?: AgenticAuthoringComponentCapabilityCatalogContract[];
504
- [key: string]: AiJsonValue | AgenticAuthoringComponentCapabilityCatalogContract[] | undefined;
543
+ diagnostics?: AgenticAuthoringComponentCapabilityDiagnosticsContract | null;
544
+ [key: string]: AiJsonValue | AgenticAuthoringComponentCapabilityCatalogContract[] | AgenticAuthoringComponentCapabilityDiagnosticsContract | undefined;
505
545
  }
506
546
  interface AgenticAuthoringManifestEditPlanRequestContract {
507
547
  config?: AiJsonObject | null;
@@ -716,7 +756,7 @@ interface Capability {
716
756
  example?: string;
717
757
  safetyNotes?: string;
718
758
  }
719
- type RulePropertyType = 'string' | 'boolean' | 'object' | 'enum' | 'number';
759
+ type RulePropertyType = 'string' | 'boolean' | 'object' | 'array' | 'enum' | 'number';
720
760
  interface RulePropertyDefinition {
721
761
  name: string;
722
762
  type: RulePropertyType;
@@ -845,7 +885,7 @@ declare function normalizePraxisAssistantContextSnapshot(value: unknown): Praxis
845
885
  type PraxisAssistantShellMessageRole = 'user' | 'assistant' | 'system' | 'status' | 'error';
846
886
  type PraxisAssistantShellMode = 'config' | 'agentic-authoring' | 'chat' | 'diagnostic' | 'review' | 'inline-help';
847
887
  type PraxisAssistantShellState = 'idle' | 'listening' | 'processing' | 'clarification' | 'review' | 'applying' | 'success' | 'error';
848
- type PraxisAssistantVoiceInputMode = 'disabled' | 'browser-speech';
888
+ type PraxisAssistantVoiceInputMode = 'disabled' | 'browser-speech' | 'governed-transcription';
849
889
  type PraxisAssistantVoiceCaptureState = 'unsupported' | 'idle' | 'listening' | 'stopping' | 'error';
850
890
  interface PraxisAssistantShellMessage {
851
891
  id: string;
@@ -1086,6 +1126,7 @@ interface PraxisAssistantShellLabels {
1086
1126
  voiceStop?: string;
1087
1127
  voiceListening?: string;
1088
1128
  voiceUnsupported?: string;
1129
+ voiceFailed?: string;
1089
1130
  voicePermissionDenied?: string;
1090
1131
  voiceNoSpeech?: string;
1091
1132
  modeConfig: string;
@@ -1397,6 +1438,27 @@ declare abstract class BaseAiAdapter<TConfig = any> implements AiConfigAdapter<T
1397
1438
  protected getCriticalWarnings(patch: any): string[];
1398
1439
  }
1399
1440
 
1441
+ type PraxisAuthoringScopeChatMessage = {
1442
+ role: 'user' | 'assistant' | 'system';
1443
+ content: string;
1444
+ };
1445
+ interface PraxisAuthoringScopePolicyOptions {
1446
+ componentId?: string | null;
1447
+ componentType?: string | null;
1448
+ componentLabel?: string | null;
1449
+ }
1450
+ interface PraxisAuthoringScopePolicyRequest {
1451
+ messages?: PraxisAuthoringScopeChatMessage[] | null;
1452
+ contextHints?: AiJsonObject | null;
1453
+ }
1454
+ declare const PRAXIS_AUTHORING_SCOPE_POLICY_KIND = "praxis.authoring-scope-policy.v1";
1455
+ declare const PRAXIS_AUTHORING_SCOPE_POLICY_VERSION = "1.0";
1456
+ declare function createAuthoringScopePolicyContext(options?: PraxisAuthoringScopePolicyOptions): AiJsonObject;
1457
+ declare function createAuthoringScopePolicySystemMessage(options?: PraxisAuthoringScopePolicyOptions): PraxisAuthoringScopeChatMessage;
1458
+ declare function withAuthoringScopePolicy<TRequest extends PraxisAuthoringScopePolicyRequest>(request: TRequest, options?: PraxisAuthoringScopePolicyOptions): TRequest;
1459
+ declare function withAuthoringScopePolicyMessage(messages: readonly PraxisAuthoringScopeChatMessage[] | null | undefined, options?: PraxisAuthoringScopePolicyOptions): PraxisAuthoringScopeChatMessage[];
1460
+ declare function withAuthoringScopePolicyContextHints(contextHints: AiJsonObject | null | undefined, options?: PraxisAuthoringScopePolicyOptions): AiJsonObject;
1461
+
1400
1462
  interface AiGovernedDecisionRoutingOptions {
1401
1463
  localCompositionTerms?: readonly string[];
1402
1464
  }
@@ -1467,7 +1529,7 @@ declare class PraxisAiService {
1467
1529
  }
1468
1530
 
1469
1531
  declare const AI_INTENT_CONTRACT_VERSION: "v1.1";
1470
- declare const AI_INTENT_CONTRACT_SCHEMA_HASH: "39e28310b20a9f2bb5e58df32f4f3f98bb1a4236761dfc7d9ee5d18fb588894c";
1532
+ declare const AI_INTENT_CONTRACT_SCHEMA_HASH: "d817fcf351207371c5cb8528b70c0ba6830648710581b08c7cc2b2b428989289";
1471
1533
  type AiSchemaContext = AiSchemaContextContract;
1472
1534
  interface AiSuggestionsRequest {
1473
1535
  componentId: string;
@@ -1589,6 +1651,13 @@ interface AiProviderStatusResponse {
1589
1651
  success?: boolean;
1590
1652
  message?: string;
1591
1653
  }
1654
+ interface AiAudioTranscriptionResponse {
1655
+ schemaVersion: 'praxis-ai-audio-transcription.v1' | string;
1656
+ text: string;
1657
+ provider?: string | null;
1658
+ model?: string | null;
1659
+ language?: string | null;
1660
+ }
1592
1661
  type AiAssistantObservationFeedbackRatingValue = AiAssistantObservationFeedbackRating;
1593
1662
  type AiAssistantObservationFeedbackRequest = AiAssistantObservationFeedbackRequestContract;
1594
1663
  type AiAssistantObservationFeedbackResponse = AiAssistantObservationFeedbackResponseContract;
@@ -1665,12 +1734,13 @@ declare class AiBackendApiService {
1665
1734
  cancelPatchStream(streamId: string, accessToken?: string): Observable<AiPatchStreamCancelResponse>;
1666
1735
  startAgenticAuthoringTurnStream(request: AgenticAuthoringTurnStreamRequest, options?: AgenticAuthoringTurnStreamStartOptions): Observable<AgenticAuthoringTurnStreamStartResponse>;
1667
1736
  connectAgenticAuthoringTurnStream(streamId: string, lastEventId?: string, accessToken?: string, options?: AgenticAuthoringTurnStreamConnectionOptions): AgenticAuthoringTurnStreamConnection;
1668
- cancelAgenticAuthoringTurnStream(streamId: string, accessToken?: string): Observable<AiPatchStreamCancelResponse>;
1737
+ cancelAgenticAuthoringTurnStream(streamId: string, accessToken?: string, options?: AgenticAuthoringTurnStreamStartOptions): Observable<AiPatchStreamCancelResponse>;
1669
1738
  sendAssistantObservationFeedback(observationId: string, request: AiAssistantObservationFeedbackRequest): Observable<AiAssistantObservationFeedbackResponse>;
1670
1739
  listModels(request: AiProviderModelsRequest): Observable<AiProviderModelsResponse>;
1671
1740
  listProviderCatalog(): Observable<AiProviderCatalogResponse>;
1672
1741
  testProvider(request: AiProviderTestRequest): Observable<AiProviderTestResponse>;
1673
1742
  getAiStatus(): Observable<AiProviderStatusResponse>;
1743
+ transcribeAudio(audio: Blob, fileName: string, language?: string | null): Observable<AiAudioTranscriptionResponse>;
1674
1744
  getAiContext(componentId: string, componentType: string): Observable<AiContextDTO>;
1675
1745
  getAgenticAuthoringManifest(componentId: string): Observable<AiJsonObject>;
1676
1746
  listAgenticAuthoringManifestTargets(componentId: string): Observable<AiJsonObject[]>;
@@ -1712,6 +1782,30 @@ declare class AiBackendApiService {
1712
1782
  static ɵprov: i0.ɵɵInjectableDeclaration<AiBackendApiService>;
1713
1783
  }
1714
1784
 
1785
+ interface PraxisBrowserSpeechTranscriptionOptions {
1786
+ lang?: string | null;
1787
+ }
1788
+ interface PraxisBrowserSpeechTranscriptionResult {
1789
+ text: string;
1790
+ language?: string | null;
1791
+ }
1792
+
1793
+ declare class PraxisGovernedAudioTranscriptionService {
1794
+ private readonly backend;
1795
+ private activeRecorder;
1796
+ private activeStream;
1797
+ private cancelled;
1798
+ isSupported(): boolean;
1799
+ transcribe(options?: PraxisBrowserSpeechTranscriptionOptions): Promise<PraxisBrowserSpeechTranscriptionResult>;
1800
+ stop(): void;
1801
+ cancel(): void;
1802
+ private resolveMimeType;
1803
+ private cleanup;
1804
+ private stopTracks;
1805
+ static ɵfac: i0.ɵɵFactoryDeclaration<PraxisGovernedAudioTranscriptionService, never>;
1806
+ static ɵprov: i0.ɵɵInjectableDeclaration<PraxisGovernedAudioTranscriptionService>;
1807
+ }
1808
+
1715
1809
  interface AgenticAuthoringTurnClientOptions {
1716
1810
  readonly baseUrl?: string;
1717
1811
  readonly headers?: Record<string, string | undefined>;
@@ -1738,6 +1832,7 @@ interface AgenticAuthoringTurnLifecycleEvent {
1738
1832
  type AgenticAuthoringTurnClientEvent = AgenticAuthoringTurnStreamStartedEvent | AgenticAuthoringTurnLifecycleEvent | AgenticAuthoringTurnStreamEnvelopeEvent;
1739
1833
  declare class AgenticAuthoringTurnClientService {
1740
1834
  private readonly aiApi;
1835
+ private readonly logger;
1741
1836
  private readonly runtimeObservationRegistry;
1742
1837
  streamEvents(request: AgenticAuthoringTurnStreamRequest, options?: AgenticAuthoringTurnClientOptions): Observable<AgenticAuthoringTurnClientEvent>;
1743
1838
  streamTurn(request: AgenticAuthoringTurnStreamRequest, options?: AgenticAuthoringTurnClientOptions): Observable<PraxisAssistantTurnResult>;
@@ -1760,11 +1855,20 @@ declare class AgenticAuthoringTurnClientService {
1760
1855
  private silenceStatusEvent;
1761
1856
  private resultTimeoutEvent;
1762
1857
  private streamTimeoutEvent;
1858
+ private isTurnTimeoutError;
1859
+ private cancelTimedOutTurn;
1860
+ private logTimeoutCancellation;
1861
+ private turnTelemetryContext;
1862
+ private safeTelemetryDimension;
1863
+ private logTurnLifecycle;
1763
1864
  private isTerminalEventType;
1865
+ private terminalTelemetryOutcome;
1764
1866
  private toQuickReplies;
1765
1867
  private isQuickReply;
1766
1868
  private toPendingClarificationContract;
1767
1869
  private readString;
1870
+ private readDisplayString;
1871
+ private isRedactedDisplayText;
1768
1872
  private toJsonObject;
1769
1873
  private isRecord;
1770
1874
  static ɵfac: i0.ɵɵFactoryDeclaration<AgenticAuthoringTurnClientService, never>;
@@ -1853,6 +1957,7 @@ declare class PraxisAssistantTurnController {
1853
1957
  private resetConversationState;
1854
1958
  private resetConversationAfterCancel;
1855
1959
  private applyResult;
1960
+ private resolveCanonicalSessionId;
1856
1961
  private resolveSubmitAction;
1857
1962
  private buildPendingClarification;
1858
1963
  private resolvePendingClarificationSourcePrompt;
@@ -2263,6 +2368,7 @@ declare class PraxisAiAssistantComponent implements OnDestroy {
2263
2368
  private acceptStreamEvent;
2264
2369
  private resolveLastEventIdForStream;
2265
2370
  private extractStreamMessage;
2371
+ private resolveStreamStepFromPhase;
2266
2372
  private requestStreamCancel;
2267
2373
  private closeActiveStreamConnection;
2268
2374
  private resetStreamTracking;
@@ -2336,8 +2442,6 @@ declare class PraxisAiAssistantComponent implements OnDestroy {
2336
2442
  private buildValueColorMap;
2337
2443
  private findColumnInPrompt;
2338
2444
  private extractOptionValue;
2339
- private buildMaskSelectionHints;
2340
- private extractMaskFromText;
2341
2445
  private resolveComponentId;
2342
2446
  private resolveComponentType;
2343
2447
  private buildSuggestionsRequest;
@@ -2395,7 +2499,7 @@ interface AssistantContentResource {
2395
2499
  fields: readonly AssistantContentResourceField[];
2396
2500
  evidence: readonly string[];
2397
2501
  }
2398
- declare class PraxisAiAssistantShellComponent implements OnChanges, OnDestroy {
2502
+ declare class PraxisAiAssistantShellComponent implements AfterViewInit, OnChanges, OnDestroy {
2399
2503
  labels: Partial<PraxisAssistantShellLabels> | null;
2400
2504
  mode: PraxisAssistantShellMode;
2401
2505
  state: PraxisAssistantShellState;
@@ -2455,9 +2559,11 @@ declare class PraxisAiAssistantShellComponent implements OnChanges, OnDestroy {
2455
2559
  layoutChange: EventEmitter<PraxisAssistantShellLayout>;
2456
2560
  panel?: ElementRef<HTMLElement>;
2457
2561
  conversation?: ElementRef<HTMLElement>;
2562
+ promptInput?: ElementRef<HTMLTextAreaElement>;
2458
2563
  private readonly cdr;
2459
2564
  private readonly injector;
2460
2565
  private readonly browserSpeech;
2566
+ private readonly governedSpeech;
2461
2567
  protected currentPrompt: string;
2462
2568
  protected resolvedLabels: PraxisAssistantShellLabels;
2463
2569
  protected voiceCaptureState: PraxisAssistantVoiceCaptureState;
@@ -2474,9 +2580,12 @@ declare class PraxisAiAssistantShellComponent implements OnChanges, OnDestroy {
2474
2580
  private processingTimer;
2475
2581
  private readonly onWindowPointerMove;
2476
2582
  private readonly onWindowPointerUp;
2583
+ ngAfterViewInit(): void;
2477
2584
  ngOnChanges(changes: SimpleChanges): void;
2478
2585
  ngOnDestroy(): void;
2586
+ protected onViewportResize(): void;
2479
2587
  protected onPromptInput(value: string): void;
2588
+ protected resizePromptToContent(): void;
2480
2589
  protected onSubmit(): void;
2481
2590
  protected onPromptKeydown(event: KeyboardEvent): void;
2482
2591
  protected onPromptPaste(event: ClipboardEvent): void;
@@ -2489,7 +2598,9 @@ declare class PraxisAiAssistantShellComponent implements OnChanges, OnDestroy {
2489
2598
  private canUseBrowserSpeech;
2490
2599
  private cancelVoiceCapture;
2491
2600
  private isCurrentVoiceCapture;
2601
+ private activeVoiceService;
2492
2602
  private applyVoiceTranscript;
2603
+ private schedulePromptResize;
2493
2604
  private resolveVoiceErrorText;
2494
2605
  private getVoiceLabel;
2495
2606
  protected onAttachClick(fileInput: HTMLInputElement): void;
@@ -2563,10 +2674,12 @@ declare class PraxisAiAssistantShellComponent implements OnChanges, OnDestroy {
2563
2674
  protected isContextualPreviewActionQuickReply(reply: PraxisAssistantShellQuickReply): boolean;
2564
2675
  protected isSourceReviewQuickReply(reply: PraxisAssistantShellQuickReply): boolean;
2565
2676
  protected isGuidedActionQuickReply(reply: PraxisAssistantShellQuickReply): boolean;
2677
+ protected isConversationQuickActionQuickReply(reply: PraxisAssistantShellQuickReply): boolean;
2566
2678
  private quickReplyPresentation;
2567
2679
  private quickReplyPresentationKind;
2568
2680
  private presentationEvidenceToChip;
2569
2681
  private getContextualActionChips;
2682
+ private publicQuickReplyHint;
2570
2683
  private isGenericContextualActionDescription;
2571
2684
  private trimSentencePunctuation;
2572
2685
  private shortPathLabel;
@@ -2605,6 +2718,8 @@ declare class PraxisAiAssistantShellComponent implements OnChanges, OnDestroy {
2605
2718
  private resolveViewportBounds;
2606
2719
  private normalizeLayout;
2607
2720
  private clampLayout;
2721
+ private clampToViewport;
2722
+ private effectiveMinimum;
2608
2723
  private clamp;
2609
2724
  private scheduleConversationScroll;
2610
2725
  private fileAttachment;
@@ -2736,5 +2851,5 @@ declare class AiRuleWizardDialogComponent implements OnInit {
2736
2851
  static ɵcmp: i0.ɵɵComponentDeclaration<AiRuleWizardDialogComponent, "praxis-ai-rule-wizard-dialog", never, {}, {}, never, never, true, never>;
2737
2852
  }
2738
2853
 
2739
- export { AI_BACKEND_CONFIG_STORE, AI_BACKEND_ENDPOINTS, AI_BACKEND_STORAGE_OPTIONS, AI_CONTRACT_SCHEMA_HASH, AI_CONTRACT_VERSION, AI_INTENT_CONTRACT_SCHEMA_HASH, AI_INTENT_CONTRACT_VERSION, AI_STREAM_EVENT_SCHEMA_VERSION, AI_STREAM_EVENT_TYPES, AgenticAuthoringTurnClientService, AiBackendApiService, AiPatchStreamConnectionError, AiResponseValidatorService, AiRuleWizardDialogComponent, BaseAiAdapter, PRAXIS_ASSISTANT_CONTEXT_ATTACHMENT_LIMIT, PRAXIS_ASSISTANT_CONTEXT_ITEM_LIMIT, PRAXIS_ASSISTANT_CONTEXT_SCHEMA_FIELD_LIMIT, PRAXIS_ASSISTANT_CONTEXT_TEXT_LIMIT, PRAXIS_ASSISTANT_VOICE_INPUT_MODE, PRAXIS_ASSISTANT_VOICE_LANGUAGE, PraxisAi, PraxisAiAssistantComponent, PraxisAiAssistantDockComponent, PraxisAiAssistantSessionHostComponent, PraxisAiAssistantShellComponent, PraxisAiService, PraxisAssistantSessionRegistryService, PraxisAssistantTurnController, PraxisAssistantTurnOrchestratorService, SchemaMinifierService, createComponentAuthoringContext, createPraxisAssistantViewportLayout, normalizeAuthoringPrompt, normalizePraxisAssistantAttachmentSummary, normalizePraxisAssistantContextSnapshot, sanitizePraxisAssistantText, shouldRoutePromptToGovernedDecision, submitPraxisAssistantQuickReply, toAiJsonObject, toPraxisAssistantClarificationOption, toPraxisAssistantConversationMessages };
2740
- export type { AgenticAuthoringApplyRequestContract, AgenticAuthoringApplyResultContract, AgenticAuthoringAttachmentSummaryContract, AgenticAuthoringCandidateContract, AgenticAuthoringComponentCapabilitiesResultContract, AgenticAuthoringComponentCapabilityCatalogContract, AgenticAuthoringComponentCapabilityContract, AgenticAuthoringComponentCapabilityExampleContract, AgenticAuthoringComponentFieldAliasContract, AgenticAuthoringConversationContextContract, AgenticAuthoringConversationMessageContract, AgenticAuthoringIntentResolutionRequestContract, AgenticAuthoringIntentResolutionResultContract, AgenticAuthoringManifestCompileResult, AgenticAuthoringManifestCompileResultContract, AgenticAuthoringManifestEditPlanRequest, AgenticAuthoringManifestEditPlanRequestContract, AgenticAuthoringManifestValidationResult, AgenticAuthoringManifestValidationResultContract, AgenticAuthoringPendingClarificationContract, AgenticAuthoringPlanRequestContract, AgenticAuthoringPreviewResultContract, AgenticAuthoringQuickReplyContract, AgenticAuthoringResolveTargetRequest, AgenticAuthoringResolveTargetRequestContract, AgenticAuthoringResolvedTarget, AgenticAuthoringResolvedTargetContract, AgenticAuthoringResourceCandidatesRequestContract, AgenticAuthoringResourceCandidatesResultContract, AgenticAuthoringSemanticDecisionContract, AgenticAuthoringTurnClientEvent, AgenticAuthoringTurnClientOptions, AgenticAuthoringTurnLifecycleEvent, AgenticAuthoringTurnStreamConnection, AgenticAuthoringTurnStreamConnectionOptions, AgenticAuthoringTurnStreamEnvelope, AgenticAuthoringTurnStreamEnvelopeContract, AgenticAuthoringTurnStreamEnvelopeEvent, AgenticAuthoringTurnStreamLifecycle, AgenticAuthoringTurnStreamRequest, AgenticAuthoringTurnStreamRequestContract, AgenticAuthoringTurnStreamStartOptions, AgenticAuthoringTurnStreamStartResponse, AgenticAuthoringTurnStreamStartResponseContract, AgenticAuthoringTurnStreamStartedEvent, AiAssistantObservationFeedbackRating, AiAssistantObservationFeedbackRatingValue, AiAssistantObservationFeedbackRequest, AiAssistantObservationFeedbackRequestContract, AiAssistantObservationFeedbackResponse, AiAssistantObservationFeedbackResponseContract, AiAssistantObservationResponseContract, AiAssistantObservationSummaryResponseContract, AiAssistantObservationSummaryRowContract, AiAuthoringResponseMode, AiAuthoringResponseModeKind, AiBackendConfigStore, AiBackendEndpoints, AiBackendStorageOptions, AiChatMessage, AiChatMessageContract, AiClarificationUiContract, AiComponentAuthoringContract, AiConfigAdapter, AiConsultativeAuthoringContext, AiContextDTO, AiContextHintsContract, AiContextTemplate, AiContextTemplateMeta, AiCurrentStateDigest, AiCurrentStateDigestContract, AiDomainCatalogContextHintContract, AiDomainCatalogContextHintIntent, AiDomainCatalogContextHintItemType, AiDomainCatalogRelationshipHintContract, AiExamplePair, AiGlobalConfigSnapshot, AiGovernedDecisionRoutingOptions, AiHeaderContext, AiIntegrationConfig, AiJsonArray, AiJsonObject, AiJsonPrimitive, AiJsonValue, AiMemoryInfoContract, AiModel, AiOptionContract, AiOrchestratorRequest, AiOrchestratorRequestContract, AiOrchestratorResponse, AiOrchestratorResponseContract, AiOrchestratorResponseType, AiPatchDiff, AiPatchDiffContract, AiPatchStreamCancelResponse, AiPatchStreamCancelResponseContract, AiPatchStreamConnection, AiPatchStreamConnectionErrorKind, AiPatchStreamEnvelope, AiPatchStreamEnvelopeContract, AiPatchStreamEventType, AiPatchStreamStartResponse, AiPatchStreamStartResponseContract, AiProviderCatalogItem, AiProviderCatalogResponse, AiProviderModelsRequest, AiProviderModelsResponse, AiProviderStatusResponse, AiProviderTestRequest, AiProviderTestResponse, AiResponseCompileResult, AiRuleResponse, AiSchemaContext, AiSchemaContextContract, AiSuggestion, AiSuggestionsRequest, AiSuggestionsResponse, AiTurnStreamEventType, AiUiContextRef, AiUiContextRefContract, AiValidationError, AiValidationResult, AiValidationWarning, AiWizardData, Capability, FieldSchemaLike, MinifiedField, PatchResult, PraxisAssistantActionContract, PraxisAssistantActionKind, PraxisAssistantAttachmentKind, PraxisAssistantAttachmentSummary, PraxisAssistantAuthoringManifestRef, PraxisAssistantCapabilityRef, PraxisAssistantClarificationOption, PraxisAssistantClarificationQuestion, PraxisAssistantClarificationQuestionType, PraxisAssistantComponentType, PraxisAssistantContextItem, PraxisAssistantContextMode, PraxisAssistantContextSessionDescriptor, PraxisAssistantContextSnapshot, PraxisAssistantConversationMessage, PraxisAssistantConversationMessageRole, PraxisAssistantDigest, PraxisAssistantDockTone, PraxisAssistantGovernanceHint, PraxisAssistantIdentity, PraxisAssistantOpenRequest, PraxisAssistantOpportunityCandidate, PraxisAssistantOpportunityCandidateStatus, PraxisAssistantOpportunityCatalog, PraxisAssistantOpportunityEvidence, PraxisAssistantOpportunityGroup, PraxisAssistantOpportunityMissingContext, PraxisAssistantOpportunitySafety, PraxisAssistantOpportunityTarget, PraxisAssistantOwnerType, PraxisAssistantPendingClarification, PraxisAssistantRecommendedIntent, PraxisAssistantRecommendedIntentAction, PraxisAssistantRecommendedIntentPresentation, PraxisAssistantRecommendedIntentTone, PraxisAssistantRiskLevel, PraxisAssistantSessionDescriptor, PraxisAssistantSessionIdentityRef, PraxisAssistantSessionPresence, PraxisAssistantSessionSnapshot, PraxisAssistantSessionVisibility, PraxisAssistantShellAction, PraxisAssistantShellActionTone, PraxisAssistantShellAttachment, PraxisAssistantShellContextItem, PraxisAssistantShellLabels, PraxisAssistantShellLayout, PraxisAssistantShellMessage, PraxisAssistantShellMessageAction, PraxisAssistantShellMessageRole, PraxisAssistantShellMode, PraxisAssistantShellQuickReply, PraxisAssistantShellQuickReplyEvidence, PraxisAssistantShellQuickReplyPresentation, PraxisAssistantShellQuickReplyPresentationItem, PraxisAssistantShellQuickReplyPresentationKind, PraxisAssistantShellState, PraxisAssistantTargetKind, PraxisAssistantTargetRef, PraxisAssistantTurnAction, PraxisAssistantTurnControllerOptions, PraxisAssistantTurnFlow, PraxisAssistantTurnPhase, PraxisAssistantTurnRequest, PraxisAssistantTurnResult, PraxisAssistantTurnViewState, PraxisAssistantViewportLayoutOptions, PraxisAssistantVoiceCaptureState, PraxisAssistantVoiceInputMode, ProblemResponseContract, PromptContext, RulePropertyDefinition, RulePropertySchema, RulePropertyType, ValidationContext, ValueKind };
2854
+ export { AI_BACKEND_CONFIG_STORE, AI_BACKEND_ENDPOINTS, AI_BACKEND_STORAGE_OPTIONS, AI_CONTRACT_SCHEMA_HASH, AI_CONTRACT_VERSION, AI_INTENT_CONTRACT_SCHEMA_HASH, AI_INTENT_CONTRACT_VERSION, AI_STREAM_EVENT_SCHEMA_VERSION, AI_STREAM_EVENT_TYPES, AgenticAuthoringTurnClientService, AiBackendApiService, AiPatchStreamConnectionError, AiResponseValidatorService, AiRuleWizardDialogComponent, BaseAiAdapter, PRAXIS_ASSISTANT_CONTEXT_ATTACHMENT_LIMIT, PRAXIS_ASSISTANT_CONTEXT_ITEM_LIMIT, PRAXIS_ASSISTANT_CONTEXT_SCHEMA_FIELD_LIMIT, PRAXIS_ASSISTANT_CONTEXT_TEXT_LIMIT, PRAXIS_ASSISTANT_VOICE_INPUT_MODE, PRAXIS_ASSISTANT_VOICE_LANGUAGE, PRAXIS_AUTHORING_SCOPE_POLICY_KIND, PRAXIS_AUTHORING_SCOPE_POLICY_VERSION, PraxisAi, PraxisAiAssistantComponent, PraxisAiAssistantDockComponent, PraxisAiAssistantSessionHostComponent, PraxisAiAssistantShellComponent, PraxisAiService, PraxisAssistantSessionRegistryService, PraxisAssistantTurnController, PraxisAssistantTurnOrchestratorService, PraxisGovernedAudioTranscriptionService, SchemaMinifierService, createAuthoringScopePolicyContext, createAuthoringScopePolicySystemMessage, createComponentAuthoringContext, createPraxisAssistantViewportLayout, normalizeAuthoringPrompt, normalizePraxisAssistantAttachmentSummary, normalizePraxisAssistantContextSnapshot, sanitizePraxisAssistantText, shouldRoutePromptToGovernedDecision, submitPraxisAssistantQuickReply, toAiJsonObject, toPraxisAssistantClarificationOption, toPraxisAssistantConversationMessages, withAuthoringScopePolicy, withAuthoringScopePolicyContextHints, withAuthoringScopePolicyMessage };
2855
+ export type { AgenticAuthoringApplyRequestContract, AgenticAuthoringApplyResultContract, AgenticAuthoringApplyTargetContract, AgenticAuthoringAttachmentSummaryContract, AgenticAuthoringCandidateContract, AgenticAuthoringClientActionContract, AgenticAuthoringComponentCapabilitiesResultContract, AgenticAuthoringComponentCapabilityCatalogContract, AgenticAuthoringComponentCapabilityContract, AgenticAuthoringComponentCapabilityDiagnosticsContract, AgenticAuthoringComponentCapabilityExampleContract, AgenticAuthoringComponentFieldAliasContract, AgenticAuthoringConversationContextContract, AgenticAuthoringConversationMessageContract, AgenticAuthoringIntentResolutionRequestContract, AgenticAuthoringIntentResolutionResultContract, AgenticAuthoringManifestCompileResult, AgenticAuthoringManifestCompileResultContract, AgenticAuthoringManifestEditPlanRequest, AgenticAuthoringManifestEditPlanRequestContract, AgenticAuthoringManifestValidationResult, AgenticAuthoringManifestValidationResultContract, AgenticAuthoringPendingClarificationContract, AgenticAuthoringPlanRequestContract, AgenticAuthoringPreviewResultContract, AgenticAuthoringQuickReplyContract, AgenticAuthoringResolveTargetRequest, AgenticAuthoringResolveTargetRequestContract, AgenticAuthoringResolvedTarget, AgenticAuthoringResolvedTargetContract, AgenticAuthoringResourceCandidatesRequestContract, AgenticAuthoringResourceCandidatesResultContract, AgenticAuthoringSemanticDecisionContract, AgenticAuthoringTurnClientEvent, AgenticAuthoringTurnClientOptions, AgenticAuthoringTurnLifecycleEvent, AgenticAuthoringTurnStreamConnection, AgenticAuthoringTurnStreamConnectionOptions, AgenticAuthoringTurnStreamContextHintsContract, AgenticAuthoringTurnStreamEnvelope, AgenticAuthoringTurnStreamEnvelopeContract, AgenticAuthoringTurnStreamEnvelopeEvent, AgenticAuthoringTurnStreamLifecycle, AgenticAuthoringTurnStreamRequest, AgenticAuthoringTurnStreamRequestContract, AgenticAuthoringTurnStreamStartOptions, AgenticAuthoringTurnStreamStartResponse, AgenticAuthoringTurnStreamStartResponseContract, AgenticAuthoringTurnStreamStartedEvent, AiAssistantObservationFeedbackRating, AiAssistantObservationFeedbackRatingValue, AiAssistantObservationFeedbackRequest, AiAssistantObservationFeedbackRequestContract, AiAssistantObservationFeedbackResponse, AiAssistantObservationFeedbackResponseContract, AiAssistantObservationResponseContract, AiAssistantObservationSummaryResponseContract, AiAssistantObservationSummaryRowContract, AiAudioTranscriptionResponse, AiAuthoringResponseMode, AiAuthoringResponseModeKind, AiBackendConfigStore, AiBackendEndpoints, AiBackendStorageOptions, AiChatMessage, AiChatMessageContract, AiClarificationUiContract, AiComponentAuthoringContract, AiConfigAdapter, AiConsultativeAuthoringContext, AiContextDTO, AiContextHintsContract, AiContextTemplate, AiContextTemplateMeta, AiCurrentStateDigest, AiCurrentStateDigestContract, AiDomainCatalogContextHintContract, AiDomainCatalogContextHintIntent, AiDomainCatalogContextHintItemType, AiDomainCatalogRelationshipHintContract, AiExamplePair, AiGlobalConfigSnapshot, AiGovernedDecisionRoutingOptions, AiHeaderContext, AiIntegrationConfig, AiJsonArray, AiJsonObject, AiJsonPrimitive, AiJsonValue, AiMemoryInfoContract, AiModel, AiOptionContract, AiOrchestratorRequest, AiOrchestratorRequestContract, AiOrchestratorResponse, AiOrchestratorResponseContract, AiOrchestratorResponseType, AiPatchDiff, AiPatchDiffContract, AiPatchStreamCancelResponse, AiPatchStreamCancelResponseContract, AiPatchStreamConnection, AiPatchStreamConnectionErrorKind, AiPatchStreamEnvelope, AiPatchStreamEnvelopeContract, AiPatchStreamEventType, AiPatchStreamStartResponse, AiPatchStreamStartResponseContract, AiProviderCatalogItem, AiProviderCatalogResponse, AiProviderModelsRequest, AiProviderModelsResponse, AiProviderStatusResponse, AiProviderTestRequest, AiProviderTestResponse, AiResponseCompileResult, AiRuleResponse, AiSchemaContext, AiSchemaContextContract, AiSuggestion, AiSuggestionsRequest, AiSuggestionsResponse, AiTurnStreamEventType, AiUiContextRef, AiUiContextRefContract, AiValidationError, AiValidationResult, AiValidationWarning, AiWizardData, Capability, FieldSchemaLike, MinifiedField, PatchResult, PraxisAssistantActionContract, PraxisAssistantActionKind, PraxisAssistantAttachmentKind, PraxisAssistantAttachmentSummary, PraxisAssistantAuthoringManifestRef, PraxisAssistantCapabilityRef, PraxisAssistantClarificationOption, PraxisAssistantClarificationQuestion, PraxisAssistantClarificationQuestionType, PraxisAssistantComponentType, PraxisAssistantContextItem, PraxisAssistantContextMode, PraxisAssistantContextSessionDescriptor, PraxisAssistantContextSnapshot, PraxisAssistantConversationMessage, PraxisAssistantConversationMessageRole, PraxisAssistantDigest, PraxisAssistantDockTone, PraxisAssistantGovernanceHint, PraxisAssistantIdentity, PraxisAssistantOpenRequest, PraxisAssistantOpportunityCandidate, PraxisAssistantOpportunityCandidateStatus, PraxisAssistantOpportunityCatalog, PraxisAssistantOpportunityEvidence, PraxisAssistantOpportunityGroup, PraxisAssistantOpportunityMissingContext, PraxisAssistantOpportunitySafety, PraxisAssistantOpportunityTarget, PraxisAssistantOwnerType, PraxisAssistantPendingClarification, PraxisAssistantRecommendedIntent, PraxisAssistantRecommendedIntentAction, PraxisAssistantRecommendedIntentPresentation, PraxisAssistantRecommendedIntentTone, PraxisAssistantRiskLevel, PraxisAssistantSessionDescriptor, PraxisAssistantSessionIdentityRef, PraxisAssistantSessionPresence, PraxisAssistantSessionSnapshot, PraxisAssistantSessionVisibility, PraxisAssistantShellAction, PraxisAssistantShellActionTone, PraxisAssistantShellAttachment, PraxisAssistantShellContextItem, PraxisAssistantShellLabels, PraxisAssistantShellLayout, PraxisAssistantShellMessage, PraxisAssistantShellMessageAction, PraxisAssistantShellMessageRole, PraxisAssistantShellMode, PraxisAssistantShellQuickReply, PraxisAssistantShellQuickReplyEvidence, PraxisAssistantShellQuickReplyPresentation, PraxisAssistantShellQuickReplyPresentationItem, PraxisAssistantShellQuickReplyPresentationKind, PraxisAssistantShellState, PraxisAssistantTargetKind, PraxisAssistantTargetRef, PraxisAssistantTurnAction, PraxisAssistantTurnControllerOptions, PraxisAssistantTurnFlow, PraxisAssistantTurnPhase, PraxisAssistantTurnRequest, PraxisAssistantTurnResult, PraxisAssistantTurnViewState, PraxisAssistantViewportLayoutOptions, PraxisAssistantVoiceCaptureState, PraxisAssistantVoiceInputMode, PraxisAuthoringScopeChatMessage, PraxisAuthoringScopePolicyOptions, PraxisAuthoringScopePolicyRequest, ProblemResponseContract, PromptContext, RulePropertyDefinition, RulePropertySchema, RulePropertyType, ValidationContext, ValueKind };