@praxisui/table 8.0.0-beta.44 → 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.
@@ -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-BAQXQGnC.mjs')
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-BX1o6_il.mjs')
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) && streamId && reconnectAttempts < this.streamTerminalReconnectLimit) {
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.streamTerminalReconnectLimit) {
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.streamTerminalReconnectLimit) {
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 && this.selectedRecordFilterCandidates(contextHints).length > 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-CXSYVYVI.mjs';
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',
@@ -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-CXSYVYVI.mjs';
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.44",
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.44",
9
- "@praxisui/core": "^8.0.0-beta.44",
10
- "@praxisui/dynamic-fields": "^8.0.0-beta.44",
11
- "@praxisui/dynamic-form": "^8.0.0-beta.44",
12
- "@praxisui/metadata-editor": "^8.0.0-beta.44",
13
- "@praxisui/rich-content": "^8.0.0-beta.44",
14
- "@praxisui/settings-panel": "^8.0.0-beta.44",
15
- "@praxisui/table-rule-builder": "^8.0.0-beta.44",
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.44",
20
+ "@praxisui/dialog": "^8.0.0-beta.45",
21
21
  "rxjs": "~7.8.0"
22
22
  },
23
23
  "dependencies": {