@praxisui/table 9.0.5-rc.1 → 9.0.5-rc.11
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 +33 -0
- package/ai/component-registry.json +5 -5
- package/fesm2022/{praxisui-table-praxisui-table-JEy1jghM.mjs → praxisui-table-praxisui-table-Bx2Kwy44.mjs} +437 -168
- package/fesm2022/{praxisui-table-table-agentic-authoring-turn-flow-BAgDlFvc.mjs → praxisui-table-table-agentic-authoring-turn-flow-CYaamZq1.mjs} +1 -1
- package/fesm2022/{praxisui-table-table-ai.adapter-CP-S9ZZ1.mjs → praxisui-table-table-ai.adapter-CxsALuRo.mjs} +1 -1
- package/fesm2022/praxisui-table.mjs +1 -1
- package/package.json +10 -10
- package/src/lib/praxis-table.json-api.md +2 -2
- package/types/praxisui-table.d.ts +13 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Observable, firstValueFrom } from 'rxjs';
|
|
2
2
|
import { withAuthoringScopePolicy } from '@praxisui/ai';
|
|
3
|
-
import { ad as setTableActionGlobalActionRef } from './praxisui-table-praxisui-table-
|
|
3
|
+
import { ad as setTableActionGlobalActionRef } from './praxisui-table-praxisui-table-Bx2Kwy44.mjs';
|
|
4
4
|
|
|
5
5
|
class TableAgenticAuthoringTurnFlow {
|
|
6
6
|
adapter;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { firstValueFrom } from 'rxjs';
|
|
2
2
|
import { BaseAiAdapter, sanitizePraxisAssistantText, createComponentAuthoringContext } from '@praxisui/ai';
|
|
3
3
|
import { PRAXIS_GLOBAL_ACTION_CATALOG, deepMerge } from '@praxisui/core';
|
|
4
|
-
import { I as TABLE_COMPONENT_EDIT_PLAN_OPERATION_IDS, l as PRAXIS_TABLE_AUTHORING_MANIFEST, T as TABLE_AI_CAPABILITIES, Z as coerceTableComponentEditPlans, $ as compileTableComponentEditPlans, L as TASK_PRESETS, a4 as getTableComponentEditPlanCapabilities, E as TABLE_COMPONENT_EDIT_PLAN_EXPECTED_PATHS, y as TABLE_COMPONENT_EDIT_PLAN_ALLOWED_CHANGE_KINDS, G as TABLE_COMPONENT_EDIT_PLAN_JSON_SCHEMA, K as TABLE_COMPONENT_EDIT_PLAN_VERSION, z as TABLE_COMPONENT_EDIT_PLAN_BATCH_KIND, H as TABLE_COMPONENT_EDIT_PLAN_KIND } from './praxisui-table-praxisui-table-
|
|
4
|
+
import { I as TABLE_COMPONENT_EDIT_PLAN_OPERATION_IDS, l as PRAXIS_TABLE_AUTHORING_MANIFEST, T as TABLE_AI_CAPABILITIES, Z as coerceTableComponentEditPlans, $ as compileTableComponentEditPlans, L as TASK_PRESETS, a4 as getTableComponentEditPlanCapabilities, E as TABLE_COMPONENT_EDIT_PLAN_EXPECTED_PATHS, y as TABLE_COMPONENT_EDIT_PLAN_ALLOWED_CHANGE_KINDS, G as TABLE_COMPONENT_EDIT_PLAN_JSON_SCHEMA, K as TABLE_COMPONENT_EDIT_PLAN_VERSION, z as TABLE_COMPONENT_EDIT_PLAN_BATCH_KIND, H as TABLE_COMPONENT_EDIT_PLAN_KIND } from './praxisui-table-praxisui-table-Bx2Kwy44.mjs';
|
|
5
5
|
|
|
6
6
|
const TABLE_ROW_EXPRESSION_CONTEXT_OPTION = {
|
|
7
7
|
mode: 'expression',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { A as ANALYTICS_TABLE_ROW_KEY_FIELD, a as AnalyticsTableConfigAdapterService, b as AnalyticsTableContractService, c as AnalyticsTableStatsApiService, B as BOOLEAN_PRESETS, d as BehaviorConfigEditorComponent, C as CURRENCY_PRESETS, e as ColumnsConfigEditorComponent, D as DATE_PRESETS, f as DataFormatterComponent, g as DataFormattingService, F as FORMULA_TEMPLATES, h as FilterConfigService, i as FilterSettingsComponent, j as FormulaGeneratorService, J as JsonConfigEditorComponent, M as MessagesLocalizationEditorComponent, N as NUMBER_PRESETS, P as PERCENTAGE_PRESETS, k as PRAXIS_FILTER_COMPONENT_METADATA, l as PRAXIS_TABLE_AUTHORING_MANIFEST, m as PRAXIS_TABLE_COMPONENT_METADATA, n as PRAXIS_TABLE_TOOLBAR_APPEARANCE_PRESETS, o as PRAXIS_TABLE_TOOLBAR_DEFAULT_APPEARANCE, p as PRAXIS_TABLE_TOOLBAR_TOKEN_PRESETS, q as PraxisFilter, r as PraxisFilterWidgetConfigEditor, s as PraxisTable, t as PraxisTableConfigEditor, u as PraxisTableInlineAuthoringEditorComponent, v as PraxisTableToolbar, w as PraxisTableWidgetConfigEditor, S as STRING_PRESETS, T as TABLE_AI_CAPABILITIES, x as TABLE_COMPONENT_AI_CAPABILITIES, y as TABLE_COMPONENT_EDIT_PLAN_ALLOWED_CHANGE_KINDS, z as TABLE_COMPONENT_EDIT_PLAN_BATCH_KIND, E as TABLE_COMPONENT_EDIT_PLAN_EXPECTED_PATHS, G as TABLE_COMPONENT_EDIT_PLAN_JSON_SCHEMA, H as TABLE_COMPONENT_EDIT_PLAN_KIND, K as TABLE_COMPONENT_EDIT_PLAN_VERSION, L as TASK_PRESETS, O as TableDefaultsProvider, Q as TableRulesEditorComponent, R as ToolbarActionsEditorComponent, V as ValueMappingEditorComponent, U as VisualFormulaBuilderComponent, W as analyticsComparisonMetricField, X as buildTableApplyPlan, Y as coerceTableComponentEditPlan, Z as coerceTableComponentEditPlans, _ as compileTableComponentEditPlan, $ as compileTableComponentEditPlans, a0 as createTableAuthoringDocument, a1 as getActionId, a2 as getEnum, a3 as getTableCapabilities, a4 as getTableComponentEditPlanCapabilities, a5 as isTableRendererSupportedByRichContentP0, a6 as mapTableRendererToRichContentP0, a7 as normalizeTableAuthoringDocument, a8 as parseLegacyOrTableDocument, a9 as providePraxisFilterMetadata, aa as providePraxisTableMetadata, ab as providePraxisTableToolbarAppearance, ac as serializeTableAuthoringDocument, ae as toCanonicalTableConfig, af as validateTableAuthoringDocument } from './praxisui-table-praxisui-table-
|
|
1
|
+
export { A as ANALYTICS_TABLE_ROW_KEY_FIELD, a as AnalyticsTableConfigAdapterService, b as AnalyticsTableContractService, c as AnalyticsTableStatsApiService, B as BOOLEAN_PRESETS, d as BehaviorConfigEditorComponent, C as CURRENCY_PRESETS, e as ColumnsConfigEditorComponent, D as DATE_PRESETS, f as DataFormatterComponent, g as DataFormattingService, F as FORMULA_TEMPLATES, h as FilterConfigService, i as FilterSettingsComponent, j as FormulaGeneratorService, J as JsonConfigEditorComponent, M as MessagesLocalizationEditorComponent, N as NUMBER_PRESETS, P as PERCENTAGE_PRESETS, k as PRAXIS_FILTER_COMPONENT_METADATA, l as PRAXIS_TABLE_AUTHORING_MANIFEST, m as PRAXIS_TABLE_COMPONENT_METADATA, n as PRAXIS_TABLE_TOOLBAR_APPEARANCE_PRESETS, o as PRAXIS_TABLE_TOOLBAR_DEFAULT_APPEARANCE, p as PRAXIS_TABLE_TOOLBAR_TOKEN_PRESETS, q as PraxisFilter, r as PraxisFilterWidgetConfigEditor, s as PraxisTable, t as PraxisTableConfigEditor, u as PraxisTableInlineAuthoringEditorComponent, v as PraxisTableToolbar, w as PraxisTableWidgetConfigEditor, S as STRING_PRESETS, T as TABLE_AI_CAPABILITIES, x as TABLE_COMPONENT_AI_CAPABILITIES, y as TABLE_COMPONENT_EDIT_PLAN_ALLOWED_CHANGE_KINDS, z as TABLE_COMPONENT_EDIT_PLAN_BATCH_KIND, E as TABLE_COMPONENT_EDIT_PLAN_EXPECTED_PATHS, G as TABLE_COMPONENT_EDIT_PLAN_JSON_SCHEMA, H as TABLE_COMPONENT_EDIT_PLAN_KIND, K as TABLE_COMPONENT_EDIT_PLAN_VERSION, L as TASK_PRESETS, O as TableDefaultsProvider, Q as TableRulesEditorComponent, R as ToolbarActionsEditorComponent, V as ValueMappingEditorComponent, U as VisualFormulaBuilderComponent, W as analyticsComparisonMetricField, X as buildTableApplyPlan, Y as coerceTableComponentEditPlan, Z as coerceTableComponentEditPlans, _ as compileTableComponentEditPlan, $ as compileTableComponentEditPlans, a0 as createTableAuthoringDocument, a1 as getActionId, a2 as getEnum, a3 as getTableCapabilities, a4 as getTableComponentEditPlanCapabilities, a5 as isTableRendererSupportedByRichContentP0, a6 as mapTableRendererToRichContentP0, a7 as normalizeTableAuthoringDocument, a8 as parseLegacyOrTableDocument, a9 as providePraxisFilterMetadata, aa as providePraxisTableMetadata, ab as providePraxisTableToolbarAppearance, ac as serializeTableAuthoringDocument, ae as toCanonicalTableConfig, af as validateTableAuthoringDocument } from './praxisui-table-praxisui-table-Bx2Kwy44.mjs';
|
package/package.json
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@praxisui/table",
|
|
3
|
-
"version": "9.0.5-rc.
|
|
3
|
+
"version": "9.0.5-rc.11",
|
|
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
8
|
"@angular/platform-browser": "^21.0.0",
|
|
9
|
-
"@praxisui/ai": "^9.0.5-rc.
|
|
10
|
-
"@praxisui/core": "^9.0.5-rc.
|
|
11
|
-
"@praxisui/dynamic-fields": "^9.0.5-rc.
|
|
12
|
-
"@praxisui/dynamic-form": "^9.0.5-rc.
|
|
13
|
-
"@praxisui/metadata-editor": "^9.0.5-rc.
|
|
14
|
-
"@praxisui/rich-content": "^9.0.5-rc.
|
|
15
|
-
"@praxisui/settings-panel": "^9.0.5-rc.
|
|
16
|
-
"@praxisui/table-rule-builder": "^9.0.5-rc.
|
|
9
|
+
"@praxisui/ai": "^9.0.5-rc.11",
|
|
10
|
+
"@praxisui/core": "^9.0.5-rc.11",
|
|
11
|
+
"@praxisui/dynamic-fields": "^9.0.5-rc.11",
|
|
12
|
+
"@praxisui/dynamic-form": "^9.0.5-rc.11",
|
|
13
|
+
"@praxisui/metadata-editor": "^9.0.5-rc.11",
|
|
14
|
+
"@praxisui/rich-content": "^9.0.5-rc.11",
|
|
15
|
+
"@praxisui/settings-panel": "^9.0.5-rc.11",
|
|
16
|
+
"@praxisui/table-rule-builder": "^9.0.5-rc.11",
|
|
17
17
|
"@angular/cdk": "^21.0.0",
|
|
18
18
|
"@angular/forms": "^21.0.0",
|
|
19
19
|
"@angular/material": "^21.0.0",
|
|
20
20
|
"@angular/router": "^21.0.0",
|
|
21
|
-
"@praxisui/dialog": "^9.0.5-rc.
|
|
21
|
+
"@praxisui/dialog": "^9.0.5-rc.11",
|
|
22
22
|
"rxjs": "~7.8.0"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
@@ -307,7 +307,7 @@ type TableAuthoringDocument = {
|
|
|
307
307
|
- `behavior.expansion.detail.source.mode = "hypermedia"` começa sempre em `_links.capabilities`.
|
|
308
308
|
- `surfaces`, `actions` e `canonicalOperations` são lidos do `ResourceCapabilitySnapshot` retornado pelo backend.
|
|
309
309
|
- O primeiro corte monta um detail schema leve de resumo contextual; ele não embute execução inline de `surface.open` nem de workflow.
|
|
310
|
-
- O runtime faz prefetch por linha
|
|
310
|
+
- O runtime faz prefetch por linha somente quando existe ao menos uma ação contextual configurada para projeção inline (`display="icons"|"buttons"`). Ações restritas ao menu preservam discovery sob demanda ao abrir o overflow; expansion `hypermedia` sem row actions continua resolvendo o contexto ao expandir a linha.
|
|
311
311
|
- `actions.row.discovery.enabled=false` desliga somente o enriquecimento automático de ações por linha. Use este modo para telas corporativas curadas, nas quais o host quer expor apenas `actions.row.actions[]` e evitar overflow/actions descobertas por HATEOAS/capabilities. O default permanece habilitado quando o campo é omitido.
|
|
312
312
|
|
|
313
313
|
## Overview
|
|
@@ -447,7 +447,7 @@ degraded filter.
|
|
|
447
447
|
| `rowDoubleClick` | `{ action, row }` | Duplo clique quando habilitado. | Partial | Preservado da documentação anterior. |
|
|
448
448
|
| `rowExpansionChange` | `RowExpansionChangeEvent` | Evento canônico para expand/collapse de detail row no runtime P0A (caminho não virtualizado), com payload discriminado por política de exposição (`allowRawExposure` + `eventExposureDefault`). | Partial | Preservado da documentação anterior. |
|
|
449
449
|
| `rowAction` | `{ action, row, payload?, actionConfig?, localMode?, preventedHttp? }` | Acao de linha (coluna `_actions`, renderer interativo ou CRUD capability sintetizada). `payload` e emitido quando houver `payloadExpr` em renderer interativo. Quando `actionConfig.globalAction` aponta para `navigation.openRoute`, o runtime resolve templates como `${row.id}` antes de executar a navegação interna. Para actions como `surface.open`, `payload.*` continua sendo o envelope canônico do evento entregue ao destino. Para `view/edit/delete/duplicate-draft` vindos de capabilities, `actionConfig` carrega a operacao canonica e o host composto deve encaminhar ao contexto CRUD apropriado. | Partial | Preservado da documentação anterior. |
|
|
450
|
-
| `toolbarAction` | `{ action, actionConfig? }` | Acao clicada em `toolbar.actions[]` que nao foi roteada para fluxo bulk; `actionConfig` carrega o objeto da acao quando disponivel. A acao `create` de colecao pode ser materializada automaticamente a partir de `_links.create`, rel `capabilities`, surfaces e `CrudOperationResolutionService
|
|
450
|
+
| `toolbarAction` | `{ action, actionConfig? }` | Acao clicada em `toolbar.actions[]` que nao foi roteada para fluxo bulk; `actionConfig` carrega o objeto da acao quando disponivel. A acao `create` de colecao pode ser materializada automaticamente a partir de `_links.create`, rel `capabilities`, surfaces e `CrudOperationResolutionService`. Dentro de CRUD, a tabela delega ao owner antes de abrir. Standalone, uma surface selecionada usa uma unica tentativa de `surface.open`; falha de execução é fail-closed e não emite `toolbarAction` como segundo caminho. O fallback local só permanece quando nenhuma surface executável foi selecionada. | Partial | Preservado da documentação anterior com materializacao CRUD de colecao e ownership explícito. |
|
|
451
451
|
| `exportAction` | `{ format, request?, result?, error?, tableId? }` | Acao de exportacao acionada pelo menu `export.formats[]`; `request` segue `PraxisCollectionExportRequest`. | Active | Usa o contrato canonico de Collection Export em `@praxisui/core`. |
|
|
452
452
|
| `exportAction` | `{ format, request?, result?, error?, tableId? }` | Acao de exportacao acionada pelo menu `export.formats[]`; `request` segue `PraxisCollectionExportRequest`. | Active | Usa o contrato canonico de Collection Export em `@praxisui/core`. |
|
|
453
453
|
| `bulkAction` | `{ action, rows, actionConfig? }` | Acao em lote; `actionConfig` carrega a configuracao da acao quando disponivel. | Partial | Preservado da documentação anterior. |
|
|
@@ -160,6 +160,9 @@ declare class PraxisTableToolbar implements OnDestroy {
|
|
|
160
160
|
getToolbarDensity(): TableToolbarAppearanceDensity;
|
|
161
161
|
getToolbarShape(): TableToolbarAppearanceShape;
|
|
162
162
|
getToolbarDivider(): TableToolbarAppearanceDivider;
|
|
163
|
+
getToolbarLayoutAlignment(): 'start' | 'center' | 'end' | 'space-between';
|
|
164
|
+
getToolbarLayoutPadding(): string | null;
|
|
165
|
+
shouldShowLayoutSeparator(): boolean;
|
|
163
166
|
getToolbarToken(name: TableToolbarTokenName): string | null;
|
|
164
167
|
private resolveToolbarAppearance;
|
|
165
168
|
private resolveToolbarAppearancePreset;
|
|
@@ -174,6 +177,8 @@ declare class PraxisTableToolbar implements OnDestroy {
|
|
|
174
177
|
emitOverflowToolbarAction(event: Event, action: string, actionConfig?: ToolbarAction$1): void;
|
|
175
178
|
getStartActions(): any[];
|
|
176
179
|
getNonStartActions(): any[];
|
|
180
|
+
hasBusinessActions(): boolean;
|
|
181
|
+
hasCompactCommands(): boolean;
|
|
177
182
|
getOverflowActions(): any[];
|
|
178
183
|
getActionType(action: any): 'button' | 'icon' | 'fab' | 'menu';
|
|
179
184
|
getActionChildren(action: any): any[];
|
|
@@ -1211,6 +1216,7 @@ declare class PraxisTable implements OnInit, OnChanges, AfterViewInit, AfterCont
|
|
|
1211
1216
|
private static readonly AI_SELECTION_FIELD_LIMIT;
|
|
1212
1217
|
private static readonly ROW_DISCOVERY_SUCCESS_CACHE_TTL_MS;
|
|
1213
1218
|
private static readonly ROW_DISCOVERY_ERROR_CACHE_TTL_MS;
|
|
1219
|
+
private static readonly ROW_DISCOVERY_REQUEST_TIMEOUT_MS;
|
|
1214
1220
|
private static readonly ROW_DISCOVERY_CACHE_LIMIT;
|
|
1215
1221
|
private static readonly ROW_DISCOVERY_MAX_CONCURRENT_REQUESTS;
|
|
1216
1222
|
private _resourceDiscovery?;
|
|
@@ -1402,6 +1408,10 @@ declare class PraxisTable implements OnInit, OnChanges, AfterViewInit, AfterCont
|
|
|
1402
1408
|
getToolbarLayoutHeightCssVar(): string | null;
|
|
1403
1409
|
getToolbarLayoutHeightHostStyle(): string | null;
|
|
1404
1410
|
getRowActionsWidthStyle(): string | null;
|
|
1411
|
+
protected isStickyStartBoundary(column: ColumnDefinition): boolean;
|
|
1412
|
+
protected isStickyEndBoundary(column: ColumnDefinition): boolean;
|
|
1413
|
+
protected isActionsStickyStartBoundary(): boolean;
|
|
1414
|
+
protected isActionsStickyEndBoundary(): boolean;
|
|
1405
1415
|
getColumnTextAlignStyle(column: ColumnDefinition): string | null;
|
|
1406
1416
|
getColumnWidthStyle(column: ColumnDefinition): string | null;
|
|
1407
1417
|
getColumnResizeTableWidthStyle(): string | null;
|
|
@@ -1421,6 +1431,7 @@ declare class PraxisTable implements OnInit, OnChanges, AfterViewInit, AfterCont
|
|
|
1421
1431
|
private isWithinResponsiveMobileBreakpoint;
|
|
1422
1432
|
private refreshResponsiveHorizontalScroll;
|
|
1423
1433
|
onHorizontalViewportScroll(event: Event): void;
|
|
1434
|
+
onHorizontalViewportKeydown(event: KeyboardEvent): void;
|
|
1424
1435
|
private refreshHorizontalOverflowState;
|
|
1425
1436
|
private scheduleHorizontalOverflowRefresh;
|
|
1426
1437
|
/**
|
|
@@ -1549,6 +1560,7 @@ declare class PraxisTable implements OnInit, OnChanges, AfterViewInit, AfterCont
|
|
|
1549
1560
|
private fallbackLogger?;
|
|
1550
1561
|
private fallbackLoggerEnvironment;
|
|
1551
1562
|
private lastColumnDropHandledAt;
|
|
1563
|
+
private surfaceOpenAttemptSequence;
|
|
1552
1564
|
private activeColumnDragField;
|
|
1553
1565
|
private readonly _effectiveCellRenderCache;
|
|
1554
1566
|
private readonly cellAnimationPreviousValuesByRowId;
|
|
@@ -2611,6 +2623,7 @@ declare class PraxisTable implements OnInit, OnChanges, AfterViewInit, AfterCont
|
|
|
2611
2623
|
getOverflowRowActions(row: any): any[];
|
|
2612
2624
|
hasOverflowRowActions(row: any): boolean;
|
|
2613
2625
|
onRowOverflowMenuOpened(row: any): void;
|
|
2626
|
+
private prepareRowDiscoveryRetry;
|
|
2614
2627
|
private getVisibleRowActions;
|
|
2615
2628
|
private getResolvedRowActions;
|
|
2616
2629
|
private buildResolvedRowActions;
|