@praxisui/table 8.0.0-beta.43 → 8.0.0-beta.45
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/fesm2022/{praxisui-table-praxisui-table-yrCWkQrc.mjs → praxisui-table-praxisui-table-Cln_diGk.mjs} +2 -2
- package/fesm2022/{praxisui-table-table-agentic-authoring-turn-flow-BX1o6_il.mjs → praxisui-table-table-agentic-authoring-turn-flow-l-pLyTnb.mjs} +28 -4
- package/fesm2022/{praxisui-table-table-ai.adapter-CNKK4L74.mjs → praxisui-table-table-ai.adapter-Ju23kygf.mjs} +19 -1
- package/fesm2022/praxisui-table.mjs +1 -1
- package/package.json +10 -10
|
@@ -39407,7 +39407,7 @@ class PraxisTable {
|
|
|
39407
39407
|
if (this.aiAdapter || this.aiAdapterLoadStarted)
|
|
39408
39408
|
return;
|
|
39409
39409
|
this.aiAdapterLoadStarted = true;
|
|
39410
|
-
import('./praxisui-table-table-ai.adapter-
|
|
39410
|
+
import('./praxisui-table-table-ai.adapter-Ju23kygf.mjs')
|
|
39411
39411
|
.then(({ TableAiAdapter }) => {
|
|
39412
39412
|
this.aiAdapter = new TableAiAdapter(this);
|
|
39413
39413
|
this.initializeAiAssistantController();
|
|
@@ -39557,7 +39557,7 @@ class PraxisTable {
|
|
|
39557
39557
|
initializeAiAssistantController() {
|
|
39558
39558
|
if (!this.aiAdapter || this.aiAssistantController)
|
|
39559
39559
|
return;
|
|
39560
|
-
import('./praxisui-table-table-agentic-authoring-turn-flow-
|
|
39560
|
+
import('./praxisui-table-table-agentic-authoring-turn-flow-l-pLyTnb.mjs')
|
|
39561
39561
|
.then(({ TableAgenticAuthoringTurnFlow }) => {
|
|
39562
39562
|
if (this.aiAssistantController || !this.aiAdapter)
|
|
39563
39563
|
return;
|
|
@@ -148,7 +148,9 @@ class TableAgenticAuthoringTurnFlow {
|
|
|
148
148
|
try {
|
|
149
149
|
emitProgress(this.buildSnapshotFallbackMessage(prompt, componentId));
|
|
150
150
|
const result = await this.submitViaSnapshot(request, currentState, buildRequest);
|
|
151
|
-
if (this.isProcessingTurnResult(result)
|
|
151
|
+
if (this.isProcessingTurnResult(result)
|
|
152
|
+
&& streamId
|
|
153
|
+
&& reconnectAttempts < this.streamTerminalReconnectLimitFor(streamContextHints)) {
|
|
152
154
|
subscriber.next(result);
|
|
153
155
|
reconnectAttempts += 1;
|
|
154
156
|
shouldClose = false;
|
|
@@ -180,7 +182,7 @@ class TableAgenticAuthoringTurnFlow {
|
|
|
180
182
|
terminalWatchdog = setTimeout(() => {
|
|
181
183
|
if (closed || !streamId)
|
|
182
184
|
return;
|
|
183
|
-
if (reconnectAttempts < this.
|
|
185
|
+
if (reconnectAttempts < this.streamTerminalReconnectLimitFor(streamContextHints)) {
|
|
184
186
|
reconnectAttempts += 1;
|
|
185
187
|
emitProgress(this.buildStreamReplayMessage(prompt, componentId));
|
|
186
188
|
openConnection();
|
|
@@ -216,7 +218,7 @@ class TableAgenticAuthoringTurnFlow {
|
|
|
216
218
|
error: async () => {
|
|
217
219
|
if (closed)
|
|
218
220
|
return;
|
|
219
|
-
if (streamId && reconnectAttempts < this.
|
|
221
|
+
if (streamId && reconnectAttempts < this.streamTerminalReconnectLimitFor(streamContextHints)) {
|
|
220
222
|
reconnectAttempts += 1;
|
|
221
223
|
emitProgress(this.buildStreamReplayMessage(prompt, componentId));
|
|
222
224
|
openConnection();
|
|
@@ -265,8 +267,30 @@ class TableAgenticAuthoringTurnFlow {
|
|
|
265
267
|
}
|
|
266
268
|
return this.streamTerminalWatchdogMs;
|
|
267
269
|
}
|
|
270
|
+
streamTerminalReconnectLimitFor(contextHints) {
|
|
271
|
+
if (this.shouldUseSelectedRecordSurfaceSnapshotFallback(contextHints)
|
|
272
|
+
&& this.selectedRecordFilterCandidates(contextHints).length === 0) {
|
|
273
|
+
return 0;
|
|
274
|
+
}
|
|
275
|
+
return this.streamTerminalReconnectLimit;
|
|
276
|
+
}
|
|
268
277
|
shouldUseSelectedRecordSnapshotFallback(contextHints) {
|
|
269
|
-
return this.selectedRecordsCountForTurn > 0
|
|
278
|
+
return this.selectedRecordsCountForTurn > 0
|
|
279
|
+
&& (this.selectedRecordFilterCandidates(contextHints).length > 0
|
|
280
|
+
|| this.shouldUseSelectedRecordSurfaceSnapshotFallback(contextHints));
|
|
281
|
+
}
|
|
282
|
+
shouldUseSelectedRecordSurfaceSnapshotFallback(contextHints) {
|
|
283
|
+
return this.selectedRecordsCountForTurn > 0
|
|
284
|
+
&& this.selectedRecordSurfaces(contextHints).length > 0;
|
|
285
|
+
}
|
|
286
|
+
selectedRecordSurfaces(contextHints) {
|
|
287
|
+
const authoringContract = this.toRecord(contextHints?.['authoringContract']);
|
|
288
|
+
const consultativeContext = this.toRecord(authoringContract?.['consultativeContext']);
|
|
289
|
+
const recordSurfaces = this.toRecord(consultativeContext?.['recordSurfaces']);
|
|
290
|
+
const surfaces = Array.isArray(recordSurfaces?.['surfaces']) ? recordSurfaces['surfaces'] : [];
|
|
291
|
+
return surfaces
|
|
292
|
+
.map((surface) => this.toRecord(surface))
|
|
293
|
+
.filter((surface) => !!surface);
|
|
270
294
|
}
|
|
271
295
|
isProcessingTurnResult(result) {
|
|
272
296
|
return result?.state === 'processing';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { firstValueFrom } from 'rxjs';
|
|
2
2
|
import { BaseAiAdapter, createComponentAuthoringContext } from '@praxisui/ai';
|
|
3
3
|
import { deepMerge } from '@praxisui/core';
|
|
4
|
-
import { z as TABLE_COMPONENT_EDIT_PLAN_OPERATION_IDS, k as PRAXIS_TABLE_AUTHORING_MANIFEST, T as TABLE_AI_CAPABILITIES, R as coerceTableComponentEditPlans, W as compileTableComponentEditPlans, G as TASK_PRESETS, $ as getTableComponentEditPlanCapabilities, w as TABLE_COMPONENT_EDIT_PLAN_EXPECTED_PATHS, u as TABLE_COMPONENT_EDIT_PLAN_ALLOWED_CHANGE_KINDS, x as TABLE_COMPONENT_EDIT_PLAN_JSON_SCHEMA, E as TABLE_COMPONENT_EDIT_PLAN_VERSION, v as TABLE_COMPONENT_EDIT_PLAN_BATCH_KIND, y as TABLE_COMPONENT_EDIT_PLAN_KIND } from './praxisui-table-praxisui-table-
|
|
4
|
+
import { z as TABLE_COMPONENT_EDIT_PLAN_OPERATION_IDS, k as PRAXIS_TABLE_AUTHORING_MANIFEST, T as TABLE_AI_CAPABILITIES, R as coerceTableComponentEditPlans, W as compileTableComponentEditPlans, G as TASK_PRESETS, $ as getTableComponentEditPlanCapabilities, w as TABLE_COMPONENT_EDIT_PLAN_EXPECTED_PATHS, u as TABLE_COMPONENT_EDIT_PLAN_ALLOWED_CHANGE_KINDS, x as TABLE_COMPONENT_EDIT_PLAN_JSON_SCHEMA, E as TABLE_COMPONENT_EDIT_PLAN_VERSION, v as TABLE_COMPONENT_EDIT_PLAN_BATCH_KIND, y as TABLE_COMPONENT_EDIT_PLAN_KIND } from './praxisui-table-praxisui-table-Cln_diGk.mjs';
|
|
5
5
|
|
|
6
6
|
const TABLE_COMPONENT_CONTEXT_PACK = {
|
|
7
7
|
version: 'v1',
|
|
@@ -2071,6 +2071,24 @@ class TableAiAdapter extends BaseAiAdapter {
|
|
|
2071
2071
|
'The user asks to change table configuration, visual rules, renderers, columns, behavior, actions, or appearance.',
|
|
2072
2072
|
],
|
|
2073
2073
|
},
|
|
2074
|
+
{
|
|
2075
|
+
kind: 'runtime',
|
|
2076
|
+
operationKind: 'execute',
|
|
2077
|
+
changeKind: 'runtimeOperation',
|
|
2078
|
+
preferredResponse: TABLE_RUNTIME_OPERATION_BATCH_KIND,
|
|
2079
|
+
useWhen: [
|
|
2080
|
+
'The user asks to execute a declared table runtime operation now, such as applying filters, exporting data, or opening a related dynamic-page surface.',
|
|
2081
|
+
'The user selects records and asks to open, show, display, navigate to, or inspect a declared record surface such as a detail, team, timeline, history, payroll, or other related surface.',
|
|
2082
|
+
'The user selects records and asks to filter or export using declared selectedRecordsContext and runtimeOperations.',
|
|
2083
|
+
],
|
|
2084
|
+
rules: [
|
|
2085
|
+
'Return type "patch" with tableRuntimeOperations when the request can be materialized by a declared runtimeOperations operation.',
|
|
2086
|
+
'For dynamicPage.surface.open, emit tableRuntimeOperations.operations[] with operationId "dynamicPage.surface.open" and input.surfaceId equal to one declared recordSurfaces.surfaces[].id.',
|
|
2087
|
+
'Do not answer with a textual confirmation before emitting dynamicPage.surface.open when a single requested record surface is declared and the user asks to open or show it now.',
|
|
2088
|
+
'Ask clarification only when more than one declared runtime operation or record surface could satisfy the same user request.',
|
|
2089
|
+
'Keep the explanation user-facing; do not expose operationIds, resource paths, field names, or payload details unless the user explicitly asks for technical details.',
|
|
2090
|
+
],
|
|
2091
|
+
},
|
|
2074
2092
|
];
|
|
2075
2093
|
const authoringContract = {
|
|
2076
2094
|
kind: 'praxis.component-authoring-context',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { A as AnalyticsTableConfigAdapterService, a as AnalyticsTableContractService, b as AnalyticsTableStatsApiService, B as BOOLEAN_PRESETS, c as BehaviorConfigEditorComponent, C as CURRENCY_PRESETS, d as ColumnsConfigEditorComponent, D as DATE_PRESETS, e as DataFormatterComponent, f as DataFormattingService, F as FORMULA_TEMPLATES, g as FilterConfigService, h as FilterSettingsComponent, i as FormulaGeneratorService, J as JsonConfigEditorComponent, M as MessagesLocalizationEditorComponent, N as NUMBER_PRESETS, P as PERCENTAGE_PRESETS, j as PRAXIS_FILTER_COMPONENT_METADATA, k as PRAXIS_TABLE_AUTHORING_MANIFEST, l as PRAXIS_TABLE_COMPONENT_METADATA, m as PraxisFilter, n as PraxisFilterWidgetConfigEditor, o as PraxisTable, p as PraxisTableConfigEditor, q as PraxisTableInlineAuthoringEditorComponent, r as PraxisTableToolbar, s as PraxisTableWidgetConfigEditor, S as STRING_PRESETS, T as TABLE_AI_CAPABILITIES, t as TABLE_COMPONENT_AI_CAPABILITIES, u as TABLE_COMPONENT_EDIT_PLAN_ALLOWED_CHANGE_KINDS, v as TABLE_COMPONENT_EDIT_PLAN_BATCH_KIND, w as TABLE_COMPONENT_EDIT_PLAN_EXPECTED_PATHS, x as TABLE_COMPONENT_EDIT_PLAN_JSON_SCHEMA, y as TABLE_COMPONENT_EDIT_PLAN_KIND, E as TABLE_COMPONENT_EDIT_PLAN_VERSION, G as TASK_PRESETS, H as TableDefaultsProvider, I as TableRulesEditorComponent, K as ToolbarActionsEditorComponent, V as ValueMappingEditorComponent, L as VisualFormulaBuilderComponent, O as buildTableApplyPlan, Q as coerceTableComponentEditPlan, R as coerceTableComponentEditPlans, U as compileTableComponentEditPlan, W as compileTableComponentEditPlans, X as createTableAuthoringDocument, Y as getActionId, Z as getEnum, _ as getTableCapabilities, $ as getTableComponentEditPlanCapabilities, a0 as isTableRendererSupportedByRichContentP0, a1 as mapTableRendererToRichContentP0, a2 as normalizeTableAuthoringDocument, a3 as parseLegacyOrTableDocument, a4 as providePraxisFilterMetadata, a5 as providePraxisTableMetadata, a6 as serializeTableAuthoringDocument, a7 as toCanonicalTableConfig, a8 as validateTableAuthoringDocument } from './praxisui-table-praxisui-table-
|
|
1
|
+
export { A as AnalyticsTableConfigAdapterService, a as AnalyticsTableContractService, b as AnalyticsTableStatsApiService, B as BOOLEAN_PRESETS, c as BehaviorConfigEditorComponent, C as CURRENCY_PRESETS, d as ColumnsConfigEditorComponent, D as DATE_PRESETS, e as DataFormatterComponent, f as DataFormattingService, F as FORMULA_TEMPLATES, g as FilterConfigService, h as FilterSettingsComponent, i as FormulaGeneratorService, J as JsonConfigEditorComponent, M as MessagesLocalizationEditorComponent, N as NUMBER_PRESETS, P as PERCENTAGE_PRESETS, j as PRAXIS_FILTER_COMPONENT_METADATA, k as PRAXIS_TABLE_AUTHORING_MANIFEST, l as PRAXIS_TABLE_COMPONENT_METADATA, m as PraxisFilter, n as PraxisFilterWidgetConfigEditor, o as PraxisTable, p as PraxisTableConfigEditor, q as PraxisTableInlineAuthoringEditorComponent, r as PraxisTableToolbar, s as PraxisTableWidgetConfigEditor, S as STRING_PRESETS, T as TABLE_AI_CAPABILITIES, t as TABLE_COMPONENT_AI_CAPABILITIES, u as TABLE_COMPONENT_EDIT_PLAN_ALLOWED_CHANGE_KINDS, v as TABLE_COMPONENT_EDIT_PLAN_BATCH_KIND, w as TABLE_COMPONENT_EDIT_PLAN_EXPECTED_PATHS, x as TABLE_COMPONENT_EDIT_PLAN_JSON_SCHEMA, y as TABLE_COMPONENT_EDIT_PLAN_KIND, E as TABLE_COMPONENT_EDIT_PLAN_VERSION, G as TASK_PRESETS, H as TableDefaultsProvider, I as TableRulesEditorComponent, K as ToolbarActionsEditorComponent, V as ValueMappingEditorComponent, L as VisualFormulaBuilderComponent, O as buildTableApplyPlan, Q as coerceTableComponentEditPlan, R as coerceTableComponentEditPlans, U as compileTableComponentEditPlan, W as compileTableComponentEditPlans, X as createTableAuthoringDocument, Y as getActionId, Z as getEnum, _ as getTableCapabilities, $ as getTableComponentEditPlanCapabilities, a0 as isTableRendererSupportedByRichContentP0, a1 as mapTableRendererToRichContentP0, a2 as normalizeTableAuthoringDocument, a3 as parseLegacyOrTableDocument, a4 as providePraxisFilterMetadata, a5 as providePraxisTableMetadata, a6 as serializeTableAuthoringDocument, a7 as toCanonicalTableConfig, a8 as validateTableAuthoringDocument } from './praxisui-table-praxisui-table-Cln_diGk.mjs';
|
package/package.json
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@praxisui/table",
|
|
3
|
-
"version": "8.0.0-beta.
|
|
3
|
+
"version": "8.0.0-beta.45",
|
|
4
4
|
"description": "Advanced data table for Angular (Praxis UI) with editing, filtering, sorting, virtualization, and settings panel integration.",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@angular/common": "^21.0.0",
|
|
7
7
|
"@angular/core": "^21.0.0",
|
|
8
|
-
"@praxisui/ai": "^8.0.0-beta.
|
|
9
|
-
"@praxisui/core": "^8.0.0-beta.
|
|
10
|
-
"@praxisui/dynamic-fields": "^8.0.0-beta.
|
|
11
|
-
"@praxisui/dynamic-form": "^8.0.0-beta.
|
|
12
|
-
"@praxisui/metadata-editor": "^8.0.0-beta.
|
|
13
|
-
"@praxisui/rich-content": "^8.0.0-beta.
|
|
14
|
-
"@praxisui/settings-panel": "^8.0.0-beta.
|
|
15
|
-
"@praxisui/table-rule-builder": "^8.0.0-beta.
|
|
8
|
+
"@praxisui/ai": "^8.0.0-beta.45",
|
|
9
|
+
"@praxisui/core": "^8.0.0-beta.45",
|
|
10
|
+
"@praxisui/dynamic-fields": "^8.0.0-beta.45",
|
|
11
|
+
"@praxisui/dynamic-form": "^8.0.0-beta.45",
|
|
12
|
+
"@praxisui/metadata-editor": "^8.0.0-beta.45",
|
|
13
|
+
"@praxisui/rich-content": "^8.0.0-beta.45",
|
|
14
|
+
"@praxisui/settings-panel": "^8.0.0-beta.45",
|
|
15
|
+
"@praxisui/table-rule-builder": "^8.0.0-beta.45",
|
|
16
16
|
"@angular/cdk": "^21.0.0",
|
|
17
17
|
"@angular/forms": "^21.0.0",
|
|
18
18
|
"@angular/material": "^21.0.0",
|
|
19
19
|
"@angular/router": "^21.0.0",
|
|
20
|
-
"@praxisui/dialog": "^8.0.0-beta.
|
|
20
|
+
"@praxisui/dialog": "^8.0.0-beta.45",
|
|
21
21
|
"rxjs": "~7.8.0"
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|