@praxisui/expansion 8.0.0-beta.3 → 8.0.0-beta.30
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/README.md +63 -1
- package/fesm2022/praxisui-expansion.mjs +1156 -19
- package/index.d.ts +81 -6
- package/package.json +8 -4
package/index.d.ts
CHANGED
|
@@ -1,19 +1,24 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { OnChanges, OnInit, EventEmitter, QueryList, SimpleChanges, Provider } from '@angular/core';
|
|
2
|
+
import { OnChanges, OnDestroy, OnInit, EventEmitter, QueryList, SimpleChanges, AfterViewInit, Provider } from '@angular/core';
|
|
3
3
|
import { FormGroup } from '@angular/forms';
|
|
4
4
|
import { MatAccordionDisplayMode, MatAccordionTogglePosition, MatExpansionPanelDefaultOptions, MatAccordion, MatExpansionPanel } from '@angular/material/expansion';
|
|
5
|
-
import { AiCapability, FieldMetadata, WidgetDefinition, WidgetEventEnvelope, ComponentDocMeta, AiCapabilityCategory, AiValueKind, AiCapabilityCatalog } from '@praxisui/core';
|
|
5
|
+
import { AiCapability, FieldMetadata, WidgetDefinition, WidgetEventEnvelope, SettingsValueProvider as SettingsValueProvider$1, ComponentDocMeta, AiCapabilityCategory, AiValueKind, AiCapabilityCatalog, ComponentAuthoringManifest } from '@praxisui/core';
|
|
6
6
|
import { BehaviorSubject } from 'rxjs';
|
|
7
|
-
import { BaseAiAdapter, PatchResult } from '@praxisui/ai';
|
|
7
|
+
import { BaseAiAdapter, PatchResult, PraxisAssistantTurnViewState, PraxisAssistantShellLayout, PraxisAssistantShellLabels, PraxisAssistantSessionSnapshot, PraxisAssistantShellQuickReply, PraxisAssistantShellMessage, PraxisAssistantShellContextItem } from '@praxisui/ai';
|
|
8
8
|
import { SettingsValueProvider } from '@praxisui/settings-panel';
|
|
9
9
|
|
|
10
10
|
declare class ExpansionAiAdapter extends BaseAiAdapter<ExpansionMetadata> {
|
|
11
11
|
private expansion;
|
|
12
|
+
componentId: string;
|
|
13
|
+
componentType: string;
|
|
12
14
|
componentName: string;
|
|
13
15
|
constructor(expansion: PraxisExpansion);
|
|
14
16
|
getCurrentConfig(): ExpansionMetadata;
|
|
15
17
|
getCapabilities(): AiCapability[];
|
|
16
18
|
getRuntimeState(): Record<string, any>;
|
|
19
|
+
getDataProfile(): Record<string, any>;
|
|
20
|
+
getSchemaFields(): Array<Record<string, any>>;
|
|
21
|
+
getAuthoringContext(): Record<string, any>;
|
|
17
22
|
createSnapshot(): ExpansionMetadata;
|
|
18
23
|
restoreSnapshot(snapshot: ExpansionMetadata): Promise<void>;
|
|
19
24
|
applyPatch(patch: Partial<ExpansionMetadata>): Promise<PatchResult>;
|
|
@@ -89,6 +94,7 @@ interface PanelMetadata {
|
|
|
89
94
|
id?: string;
|
|
90
95
|
title: string;
|
|
91
96
|
description?: string;
|
|
97
|
+
icon?: string;
|
|
92
98
|
disabled?: boolean;
|
|
93
99
|
expanded?: boolean;
|
|
94
100
|
hideToggle?: boolean;
|
|
@@ -102,7 +108,7 @@ interface PanelMetadata {
|
|
|
102
108
|
action?: string;
|
|
103
109
|
}>;
|
|
104
110
|
}
|
|
105
|
-
declare class PraxisExpansion implements OnChanges, OnInit {
|
|
111
|
+
declare class PraxisExpansion implements OnChanges, OnDestroy, OnInit {
|
|
106
112
|
config?: ExpansionMetadata | null;
|
|
107
113
|
expansionId: string;
|
|
108
114
|
componentInstanceId?: string;
|
|
@@ -143,9 +149,20 @@ declare class PraxisExpansion implements OnChanges, OnInit {
|
|
|
143
149
|
private readonly dynamicForm;
|
|
144
150
|
private readonly componentKeys;
|
|
145
151
|
private readonly route;
|
|
152
|
+
private readonly aiApi;
|
|
153
|
+
private readonly assistantSessions;
|
|
154
|
+
private readonly aiTurnOrchestrator;
|
|
155
|
+
private readonly aiAssistantSessionEffect;
|
|
146
156
|
private warnedMissingId;
|
|
147
157
|
private readonly panelForms;
|
|
148
158
|
aiAdapter: ExpansionAiAdapter;
|
|
159
|
+
aiAssistantOpen: boolean;
|
|
160
|
+
aiAssistantPrompt: string;
|
|
161
|
+
aiAssistantViewState: PraxisAssistantTurnViewState | null;
|
|
162
|
+
aiAssistantLayout: PraxisAssistantShellLayout;
|
|
163
|
+
readonly aiAssistantLabels: Partial<PraxisAssistantShellLabels>;
|
|
164
|
+
private aiAssistantController;
|
|
165
|
+
private aiAssistantStateSubscription;
|
|
149
166
|
accordionRef?: MatAccordion;
|
|
150
167
|
panels?: QueryList<MatExpansionPanel>;
|
|
151
168
|
injectedDefaults: MatExpansionPanelDefaultOptions | null;
|
|
@@ -153,6 +170,7 @@ declare class PraxisExpansion implements OnChanges, OnInit {
|
|
|
153
170
|
single: () => PanelMetadata | null;
|
|
154
171
|
ngOnInit(): void;
|
|
155
172
|
ngOnChanges(changes: SimpleChanges): void;
|
|
173
|
+
ngOnDestroy(): void;
|
|
156
174
|
styleCss(): string | null;
|
|
157
175
|
emitOpened(p: PanelMetadata, index: number): void;
|
|
158
176
|
emitClosed(p: PanelMetadata, index: number): void;
|
|
@@ -173,6 +191,32 @@ declare class PraxisExpansion implements OnChanges, OnInit {
|
|
|
173
191
|
panelDomId(p: PanelMetadata | null, index: number): string;
|
|
174
192
|
panelFormFor(panel: PanelMetadata, index: number): FormGroup<Record<string, any>>;
|
|
175
193
|
applyConfigFromAdapter(next: ExpansionMetadata): void;
|
|
194
|
+
openAiAssistant(): void;
|
|
195
|
+
openAiAssistantFromSession(session: PraxisAssistantSessionSnapshot): void;
|
|
196
|
+
closeAiAssistant(): void;
|
|
197
|
+
onAiAssistantPromptChange(prompt: string): void;
|
|
198
|
+
onAiAssistantSubmit(prompt: string): void;
|
|
199
|
+
onAiAssistantApply(): void;
|
|
200
|
+
onAiAssistantRetry(): void;
|
|
201
|
+
onAiAssistantCancel(): void;
|
|
202
|
+
onAiAssistantQuickReply(reply: PraxisAssistantShellQuickReply): void;
|
|
203
|
+
onAiAssistantEditMessage(message: PraxisAssistantShellMessage): void;
|
|
204
|
+
onAiAssistantResendMessage(message: PraxisAssistantShellMessage): void;
|
|
205
|
+
onAiAssistantLayoutChange(layout: PraxisAssistantShellLayout): void;
|
|
206
|
+
buildAiAssistantContextItems(): PraxisAssistantShellContextItem[];
|
|
207
|
+
private initializeAiAssistantController;
|
|
208
|
+
private buildAiAssistantContextSnapshot;
|
|
209
|
+
private syncAiAssistantSession;
|
|
210
|
+
private hasAiAssistantSessionState;
|
|
211
|
+
private resolveAiAssistantSessionId;
|
|
212
|
+
private resolveAiAssistantOwnerId;
|
|
213
|
+
private safeAiAssistantExpansionId;
|
|
214
|
+
private resolveAiAssistantRouteKey;
|
|
215
|
+
private resolveAiAssistantSummary;
|
|
216
|
+
private resolveAiAssistantBadge;
|
|
217
|
+
private resolveAiAssistantIcon;
|
|
218
|
+
private collectAiAssistantPanelNames;
|
|
219
|
+
private collectAiAssistantCounts;
|
|
176
220
|
openEditor(): void;
|
|
177
221
|
private storageKey;
|
|
178
222
|
private persistConfig;
|
|
@@ -215,6 +259,35 @@ declare class PraxisExpansionConfigEditor implements SettingsValueProvider, OnCh
|
|
|
215
259
|
static ɵcmp: i0.ɵɵComponentDeclaration<PraxisExpansionConfigEditor, "praxis-expansion-config-editor", never, { "config": { "alias": "config"; "required": false; }; "expansionId": { "alias": "expansionId"; "required": false; }; }, {}, never, never, true, never>;
|
|
216
260
|
}
|
|
217
261
|
|
|
262
|
+
interface PraxisExpansionWidgetEditorInputs {
|
|
263
|
+
config?: ExpansionMetadata | null;
|
|
264
|
+
expansionId?: string;
|
|
265
|
+
[key: string]: unknown;
|
|
266
|
+
}
|
|
267
|
+
interface PraxisExpansionWidgetEditorValue {
|
|
268
|
+
inputs: PraxisExpansionWidgetEditorInputs;
|
|
269
|
+
}
|
|
270
|
+
declare class PraxisExpansionWidgetConfigEditor implements SettingsValueProvider$1, AfterViewInit, OnDestroy {
|
|
271
|
+
inputs: PraxisExpansionWidgetEditorInputs | null;
|
|
272
|
+
widgetKey?: string;
|
|
273
|
+
expansionEditor?: PraxisExpansionConfigEditor;
|
|
274
|
+
readonly isDirty$: BehaviorSubject<boolean>;
|
|
275
|
+
readonly isValid$: BehaviorSubject<boolean>;
|
|
276
|
+
readonly isBusy$: BehaviorSubject<boolean>;
|
|
277
|
+
private readonly subscription;
|
|
278
|
+
private readonly emptyConfig;
|
|
279
|
+
get config(): ExpansionMetadata;
|
|
280
|
+
get expansionId(): string | undefined;
|
|
281
|
+
ngAfterViewInit(): void;
|
|
282
|
+
ngOnDestroy(): void;
|
|
283
|
+
getSettingsValue(): PraxisExpansionWidgetEditorValue;
|
|
284
|
+
onSave(): PraxisExpansionWidgetEditorValue;
|
|
285
|
+
reset(): void;
|
|
286
|
+
private buildValue;
|
|
287
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PraxisExpansionWidgetConfigEditor, never>;
|
|
288
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<PraxisExpansionWidgetConfigEditor, "praxis-expansion-widget-config-editor", never, { "inputs": { "alias": "inputs"; "required": false; }; "widgetKey": { "alias": "widgetKey"; "required": false; }; }, {}, never, never, true, never>;
|
|
289
|
+
}
|
|
290
|
+
|
|
218
291
|
declare const PRAXIS_EXPANSION_COMPONENT_METADATA: ComponentDocMeta;
|
|
219
292
|
declare function providePraxisExpansionMetadata(): Provider;
|
|
220
293
|
declare function providePraxisExpansionDefaults(opts: MatExpansionPanelDefaultOptions): Provider;
|
|
@@ -242,5 +315,7 @@ interface CapabilityCatalog extends AiCapabilityCatalog {
|
|
|
242
315
|
}
|
|
243
316
|
declare const EXPANSION_AI_CAPABILITIES: CapabilityCatalog;
|
|
244
317
|
|
|
245
|
-
|
|
246
|
-
|
|
318
|
+
declare const PRAXIS_EXPANSION_AUTHORING_MANIFEST: ComponentAuthoringManifest;
|
|
319
|
+
|
|
320
|
+
export { EXPANSION_AI_CAPABILITIES, PRAXIS_EXPANSION_AUTHORING_MANIFEST, PRAXIS_EXPANSION_COMPONENT_METADATA, PraxisExpansion, PraxisExpansionConfigEditor, PraxisExpansionWidgetConfigEditor, providePraxisExpansionDefaults, providePraxisExpansionMetadata };
|
|
321
|
+
export type { Capability, CapabilityCatalog, CapabilityCategory, ExpansionAppearanceContainer, ExpansionAppearanceHeader, ExpansionAppearanceStates, ExpansionMetadata, PanelMetadata, PraxisExpansionWidgetEditorInputs, PraxisExpansionWidgetEditorValue, ValueKind };
|
package/package.json
CHANGED
|
@@ -1,15 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@praxisui/expansion",
|
|
3
|
-
"version": "8.0.0-beta.
|
|
3
|
+
"version": "8.0.0-beta.30",
|
|
4
4
|
"description": "Expansion panel (accordion) components for Praxis UI with metadata configuration and editor integration.",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@angular/common": "^20.0.0",
|
|
7
7
|
"@angular/core": "^20.0.0",
|
|
8
8
|
"@angular/material": "^20.0.0",
|
|
9
9
|
"@angular/cdk": "^20.0.0",
|
|
10
|
-
"@praxisui/core": "^8.0.0-beta.
|
|
11
|
-
"@praxisui/dynamic-fields": "^8.0.0-beta.
|
|
12
|
-
"@praxisui/settings-panel": "^8.0.0-beta.
|
|
10
|
+
"@praxisui/core": "^8.0.0-beta.30",
|
|
11
|
+
"@praxisui/dynamic-fields": "^8.0.0-beta.30",
|
|
12
|
+
"@praxisui/settings-panel": "^8.0.0-beta.30",
|
|
13
|
+
"@angular/forms": "^20.0.0",
|
|
14
|
+
"@angular/router": "^20.0.0",
|
|
15
|
+
"@praxisui/ai": "^8.0.0-beta.30",
|
|
16
|
+
"rxjs": "~7.8.0"
|
|
13
17
|
},
|
|
14
18
|
"dependencies": {
|
|
15
19
|
"tslib": "^2.3.0"
|