@praxisui/table 9.0.18 → 9.0.19

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 CHANGED
@@ -164,7 +164,7 @@ Common outputs:
164
164
  - `rowClick`, `rowDoubleClick`, `rowExpansionChange`
165
165
  - `rowAction`, `toolbarAction`, `bulkAction`, `exportAction`
166
166
  - `selectionChange`
167
- - `columnReorder`, `columnReorderAttempt`
167
+ - `columnReorder`, `columnReorderAttempt`, `columnResize`
168
168
  - `beforeDelete`, `afterDelete`, `deleteError`
169
169
  - `beforeBulkDelete`, `afterBulkDelete`, `bulkDeleteError`
170
170
  - `schemaStatusChange`, `configChange`, `metadataChange`
@@ -177,6 +177,23 @@ otherwise a valid `idField` can produce a diagnostic key-only fallback. This
177
177
  context is for list/detail continuity and must not be copied into command
178
178
  controls or persistence payloads.
179
179
 
180
+ ## Column resizing and auto-fit
181
+
182
+ Column resizing is governed by `behavior.resizing`. When `enabled` is `true`,
183
+ each resizable header exposes an accessible separator that supports pointer drag,
184
+ keyboard adjustment and, when `autoFit` is enabled, double-click auto-fit.
185
+
186
+ Auto-fit measures the header and the cells currently rendered in the DOM. The
187
+ result is materialized as a pixel width, clamped by the canonical
188
+ `minColumnWidth` and `maxColumnWidth` defaults. Repeating the double click is
189
+ idempotent: width-filling layout wrappers and the resize handle are excluded
190
+ from intrinsic-content measurement.
191
+
192
+ When `persistWidths` is enabled, column mutations are serialized and pending
193
+ changes are coalesced to the latest state before persistence. Strict CSP style
194
+ mode disables resizing because the runtime cannot safely materialize dynamic
195
+ inline widths.
196
+
180
197
  ## TableConfig Boundaries
181
198
 
182
199
  `TableConfig` comes from `@praxisui/core` and is the public table configuration contract. It covers columns, behavior, appearance, toolbar, messages, filtering, selection, expansion, export configuration, conditional styles/renderers, and other table semantics.
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "schemaVersion": "1.0.0",
3
- "generatedAt": "2026-08-24T23:27:32.982Z",
3
+ "generatedAt": "2026-08-25T03:30:16.706Z",
4
4
  "packageName": "@praxisui/table",
5
- "packageVersion": "9.0.18",
5
+ "packageVersion": "9.0.19",
6
6
  "sourceRegistry": "praxis-component-registry-ingestion",
7
7
  "sourceRegistryVersion": "1.0.0",
8
8
  "componentCount": 3,
@@ -11977,7 +11977,7 @@
11977
11977
  "path": "outputs.columnResize",
11978
11978
  "category": "outputs",
11979
11979
  "valueKind": "object",
11980
- "description": "Evento emitido quando uma coluna e redimensionada por ponteiro ou teclado (inclui operationId monotonico e status de persistencia)."
11980
+ "description": "Evento emitido quando uma coluna e redimensionada por ponteiro, teclado ou auto-fit (inclui operationId monotonico e status de persistencia)."
11981
11981
  },
11982
11982
  {
11983
11983
  "path": "outputs.beforeDelete",
@@ -29547,9 +29547,9 @@
29547
29547
  {
29548
29548
  "chunkIndex": 12,
29549
29549
  "chunkKind": "capabilities",
29550
- "content": "Schema Capability:\n - Path: localization.currency.symbol\n Category: localization\n Kind: string\n Description: Simbolo da moeda.\n\nSchema Capability:\n - Path: localization.currency.position\n Category: localization\n Kind: enum\n Description: Posicao do simbolo da moeda.\n\nSchema Capability:\n - Path: localization.currency.spacing\n Category: localization\n Kind: boolean\n Description: Espaco entre simbolo e valor.\n\nSchema Capability:\n - Path: localization.currency.precision\n Category: localization\n Kind: number\n Description: Precisao padrao da moeda.\n\nSchema Capability:\n - Path: localization.formatting.percentageFormat\n Category: localization\n Kind: string\n Description: Formato de percentual.\n\nSchema Capability:\n - Path: localization.formatting.fileSizeFormat\n Category: localization\n Kind: enum\n Description: Formato de tamanho de arquivo.\n\nSchema Capability:\n - Path: performance.virtualization.enabled\n Category: performance\n Kind: boolean\n Description: Virtualização via PerformanceConfig.\n\nSchema Capability:\n - Path: performance.virtualization.itemHeight\n Category: performance\n Kind: number\n Description: Altura da linha (px) para virtualização.\n\nSchema Capability:\n - Path: performance.debounce.search\n Category: performance\n Kind: number\n Description: Debounce (ms) para buscas.\n\nSchema Capability:\n - Path: performance.debounce.filter\n Category: performance\n Kind: number\n Description: Debounce (ms) para filtros.\n\nSchema Capability:\n - Path: performance.lazyLoading.images\n Category: performance\n Kind: boolean\n Description: Ativa lazy loading de imagens na tabela.\n\nSchema Capability:\n - Path: data.loadingStrategy\n Category: data\n Kind: enum\n Description: Estratégia de carregamento inicial dos dados.\n\nSchema Capability:\n - Path: accessibility.enabled\n Category: accessibility\n Kind: boolean\n Description: Habilita recursos de acessibilidade.\n\nSchema Capability:\n - Path: accessibility.highContrast\n Category: accessibility\n Kind: boolean\n Description: Ativa modo de alto contraste.\n\nSchema Capability:\n - Path: accessibility.reduceMotion\n Category: accessibility\n Kind: boolean\n Description: Reduz ou desativa animações para evitar motion sickness.\n\nSchema Capability:\n - Path: accessibility.announcements.liveRegion\n Category: accessibility\n Kind: enum\n Description: Região ARIA para anúncios (polite/assertive).\n\nSchema Capability:\n - Path: accessibility.keyboard.shortcuts\n Category: accessibility\n Kind: boolean\n Description: Ativa atalhos de teclado.\n\nComponent Capability:\n - Path: inputs.config\n Category: inputs\n Kind: object\n Description: Configuracao completa da tabela (TableConfig).\n\nComponent Capability:\n - Path: inputs.resourcePath\n Category: data\n Kind: string\n Description: Endpoint base para operacoes de dados.\n\nComponent Capability:\n - Path: inputs.queryContext\n Category: data\n Kind: object\n Description: Contrato semantico primario para consulta declarativa; nesta fase a tabela consome filters, sort, limit e page com foco principal em queryContext.filters.\n\nComponent Capability:\n - Path: inputs.filterCriteria\n Category: data\n Kind: object\n Description: Bridge legada de compatibilidade. Para novo authoring, prefira inputs.queryContext.\n\nComponent Capability:\n - Path: inputs.showToolbar\n Category: appearance\n Kind: boolean\n Description: Exibe barra de ferramentas.\n\nComponent Capability:\n - Path: inputs.toolbarV2\n Category: appearance\n Kind: boolean\n Description: Ativa layout da toolbar v2.\n\nComponent Capability:\n - Path: inputs.autoDelete\n Category: behavior\n Kind: boolean\n Description: Ativa delecao automatica.\n\nComponent Capability:\n - Path: inputs.enableCustomization\n Category: behavior\n Kind: boolean\n Description: Permite edicao de layout.\n\nComponent Capability:\n - Path: inputs.dense\n Category: appearance\n Kind: boolean\n Description: Entrada legada: aplica compacto apenas quando appearance.density nao foi definido. Preferir appearance.density para novas configuracoes.\n\nComponent Capability:\n - Path: inputs.tableId\n Category: inputs\n Kind: string\n Description: Identificador para armazenamento de configuracao.\n\nComponent Capability:\n - Path: outputs.rowClick\n Category: outputs\n Kind: object\n Description: Evento emitido ao clicar em uma linha.\n\nComponent Capability:\n - Path: outputs.rowDoubleClick\n Category: outputs\n Kind: object\n Description: Evento emitido ao dar duplo clique em uma linha.\n\nComponent Capability:\n - Path: outputs.rowExpansionChange\n Category: outputs\n Kind: object\n Description: Evento emitido ao expandir/colapsar detalhe de linha com payload governado por politica de exposicao.\n\nComponent Capability:\n - Path: outputs.rowAction\n Category: outputs\n Kind: object\n Description: Evento emitido ao acionar uma acao em uma linha.\n\nComponent Capability:\n - Path: outputs.toolbarAction\n Category: outputs\n Kind: object\n Description: Evento emitido ao acionar uma acao da toolbar.\n\nComponent Capability:\n - Path: outputs.bulkAction\n Category: outputs\n Kind: object\n Description: Evento emitido ao executar acoes em massa.\n\nComponent Capability:\n - Path: outputs.columnReorder\n Category: outputs\n Kind: object\n Description: Evento emitido quando a reordenacao de colunas e concluida (trigger: drag, keyboard ou undo; inclui operationId monotônico).\n\nComponent Capability:\n - Path: outputs.columnReorderAttempt\n Category: outputs\n Kind: object\n Description: Evento emitido para tentativa bloqueada de reordenacao de colunas (inclui operationId monotônico para correlacao).\n\nComponent Capability:\n - Path: outputs.columnResize\n Category: outputs\n Kind: object\n Description: Evento emitido quando uma coluna e redimensionada por ponteiro ou teclado (inclui operationId monotonico e status de persistencia).\n\nComponent Capability:\n - Path: outputs.beforeDelete\n Category: outputs\n Kind: object\n Description: Evento emitido antes de deletar uma linha.\n\nComponent Capability:\n - Path: outputs.afterDelete\n Category: outputs\n Kind: object\n Description: Evento emitido apos deletar uma linha.\n\nComponent Capability:\n - Path: outputs.deleteError\n Category: outputs\n Kind: object\n Description: Evento emitido ao ocorrer erro na delecao.\n\nComponent Capability:\n - Path: outputs.beforeBulkDelete\n Category: outputs\n Kind: object\n Description: Evento emitido antes de deletar multiplas linhas.\n\nComponent Capability:\n - Path: outputs.afterBulkDelete\n Category: outputs\n Kind: object\n Description: Evento emitido apos deletar multiplas linhas.\n\nComponent Capability:\n - Path: outputs.bulkDeleteError\n Category: outputs\n Kind: object\n Description: Evento emitido ao ocorrer erro na delecao em massa.\n\nCapability Note:\n - Este catalogo descreve inputs e outputs do componente.\n\nCapability Note:\n - inputs.config segue o schema de TableConfig (veja table-ai-capabilities).",
29550
+ "content": "Schema Capability:\n - Path: localization.currency.symbol\n Category: localization\n Kind: string\n Description: Simbolo da moeda.\n\nSchema Capability:\n - Path: localization.currency.position\n Category: localization\n Kind: enum\n Description: Posicao do simbolo da moeda.\n\nSchema Capability:\n - Path: localization.currency.spacing\n Category: localization\n Kind: boolean\n Description: Espaco entre simbolo e valor.\n\nSchema Capability:\n - Path: localization.currency.precision\n Category: localization\n Kind: number\n Description: Precisao padrao da moeda.\n\nSchema Capability:\n - Path: localization.formatting.percentageFormat\n Category: localization\n Kind: string\n Description: Formato de percentual.\n\nSchema Capability:\n - Path: localization.formatting.fileSizeFormat\n Category: localization\n Kind: enum\n Description: Formato de tamanho de arquivo.\n\nSchema Capability:\n - Path: performance.virtualization.enabled\n Category: performance\n Kind: boolean\n Description: Virtualização via PerformanceConfig.\n\nSchema Capability:\n - Path: performance.virtualization.itemHeight\n Category: performance\n Kind: number\n Description: Altura da linha (px) para virtualização.\n\nSchema Capability:\n - Path: performance.debounce.search\n Category: performance\n Kind: number\n Description: Debounce (ms) para buscas.\n\nSchema Capability:\n - Path: performance.debounce.filter\n Category: performance\n Kind: number\n Description: Debounce (ms) para filtros.\n\nSchema Capability:\n - Path: performance.lazyLoading.images\n Category: performance\n Kind: boolean\n Description: Ativa lazy loading de imagens na tabela.\n\nSchema Capability:\n - Path: data.loadingStrategy\n Category: data\n Kind: enum\n Description: Estratégia de carregamento inicial dos dados.\n\nSchema Capability:\n - Path: accessibility.enabled\n Category: accessibility\n Kind: boolean\n Description: Habilita recursos de acessibilidade.\n\nSchema Capability:\n - Path: accessibility.highContrast\n Category: accessibility\n Kind: boolean\n Description: Ativa modo de alto contraste.\n\nSchema Capability:\n - Path: accessibility.reduceMotion\n Category: accessibility\n Kind: boolean\n Description: Reduz ou desativa animações para evitar motion sickness.\n\nSchema Capability:\n - Path: accessibility.announcements.liveRegion\n Category: accessibility\n Kind: enum\n Description: Região ARIA para anúncios (polite/assertive).\n\nSchema Capability:\n - Path: accessibility.keyboard.shortcuts\n Category: accessibility\n Kind: boolean\n Description: Ativa atalhos de teclado.\n\nComponent Capability:\n - Path: inputs.config\n Category: inputs\n Kind: object\n Description: Configuracao completa da tabela (TableConfig).\n\nComponent Capability:\n - Path: inputs.resourcePath\n Category: data\n Kind: string\n Description: Endpoint base para operacoes de dados.\n\nComponent Capability:\n - Path: inputs.queryContext\n Category: data\n Kind: object\n Description: Contrato semantico primario para consulta declarativa; nesta fase a tabela consome filters, sort, limit e page com foco principal em queryContext.filters.\n\nComponent Capability:\n - Path: inputs.filterCriteria\n Category: data\n Kind: object\n Description: Bridge legada de compatibilidade. Para novo authoring, prefira inputs.queryContext.\n\nComponent Capability:\n - Path: inputs.showToolbar\n Category: appearance\n Kind: boolean\n Description: Exibe barra de ferramentas.\n\nComponent Capability:\n - Path: inputs.toolbarV2\n Category: appearance\n Kind: boolean\n Description: Ativa layout da toolbar v2.\n\nComponent Capability:\n - Path: inputs.autoDelete\n Category: behavior\n Kind: boolean\n Description: Ativa delecao automatica.\n\nComponent Capability:\n - Path: inputs.enableCustomization\n Category: behavior\n Kind: boolean\n Description: Permite edicao de layout.\n\nComponent Capability:\n - Path: inputs.dense\n Category: appearance\n Kind: boolean\n Description: Entrada legada: aplica compacto apenas quando appearance.density nao foi definido. Preferir appearance.density para novas configuracoes.\n\nComponent Capability:\n - Path: inputs.tableId\n Category: inputs\n Kind: string\n Description: Identificador para armazenamento de configuracao.\n\nComponent Capability:\n - Path: outputs.rowClick\n Category: outputs\n Kind: object\n Description: Evento emitido ao clicar em uma linha.\n\nComponent Capability:\n - Path: outputs.rowDoubleClick\n Category: outputs\n Kind: object\n Description: Evento emitido ao dar duplo clique em uma linha.\n\nComponent Capability:\n - Path: outputs.rowExpansionChange\n Category: outputs\n Kind: object\n Description: Evento emitido ao expandir/colapsar detalhe de linha com payload governado por politica de exposicao.\n\nComponent Capability:\n - Path: outputs.rowAction\n Category: outputs\n Kind: object\n Description: Evento emitido ao acionar uma acao em uma linha.\n\nComponent Capability:\n - Path: outputs.toolbarAction\n Category: outputs\n Kind: object\n Description: Evento emitido ao acionar uma acao da toolbar.\n\nComponent Capability:\n - Path: outputs.bulkAction\n Category: outputs\n Kind: object\n Description: Evento emitido ao executar acoes em massa.\n\nComponent Capability:\n - Path: outputs.columnReorder\n Category: outputs\n Kind: object\n Description: Evento emitido quando a reordenacao de colunas e concluida (trigger: drag, keyboard ou undo; inclui operationId monotônico).\n\nComponent Capability:\n - Path: outputs.columnReorderAttempt\n Category: outputs\n Kind: object\n Description: Evento emitido para tentativa bloqueada de reordenacao de colunas (inclui operationId monotônico para correlacao).\n\nComponent Capability:\n - Path: outputs.columnResize\n Category: outputs\n Kind: object\n Description: Evento emitido quando uma coluna e redimensionada por ponteiro, teclado ou auto-fit (inclui operationId monotonico e status de persistencia).\n\nComponent Capability:\n - Path: outputs.beforeDelete\n Category: outputs\n Kind: object\n Description: Evento emitido antes de deletar uma linha.\n\nComponent Capability:\n - Path: outputs.afterDelete\n Category: outputs\n Kind: object\n Description: Evento emitido apos deletar uma linha.\n\nComponent Capability:\n - Path: outputs.deleteError\n Category: outputs\n Kind: object\n Description: Evento emitido ao ocorrer erro na delecao.\n\nComponent Capability:\n - Path: outputs.beforeBulkDelete\n Category: outputs\n Kind: object\n Description: Evento emitido antes de deletar multiplas linhas.\n\nComponent Capability:\n - Path: outputs.afterBulkDelete\n Category: outputs\n Kind: object\n Description: Evento emitido apos deletar multiplas linhas.\n\nComponent Capability:\n - Path: outputs.bulkDeleteError\n Category: outputs\n Kind: object\n Description: Evento emitido ao ocorrer erro na delecao em massa.\n\nCapability Note:\n - Este catalogo descreve inputs e outputs do componente.\n\nCapability Note:\n - inputs.config segue o schema de TableConfig (veja table-ai-capabilities).",
29551
29551
  "sourcePointer": "projects/praxis-table/src/lib/ai/table-component-ai-capabilities.ts",
29552
- "contentHash": "0a659b5dc4e9647f43285ac2361b80ab3417ba97aaeb5b92db01c6cc3810301e",
29552
+ "contentHash": "7c3a53f1625420b48c34e836da1b4fd172811d29294aa9c20cfb47657c6b03d7",
29553
29553
  "sourceKind": "component_definition",
29554
29554
  "sourceId": "praxis-table",
29555
29555
  "corpusVersion": "1.0.0"