@praxisui/dynamic-fields 9.0.0-beta.3 → 9.0.0-beta.5

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.
@@ -7,7 +7,7 @@ document_kind: "json-api-canonical"
7
7
  reference_mode: "canonical"
8
8
  contract_format: "json"
9
9
  contract_source: "runtime-and-code"
10
- description: "Referencia canonica do contrato JSON do componente pdx-inline-relative-period."
10
+ description: "Referência canônica do contrato JSON do componente pdx-inline-relative-period."
11
11
  category: "components"
12
12
  sub_category: "dynamic-fields"
13
13
  audience:
@@ -44,60 +44,60 @@ related_components:
44
44
 
45
45
  # pdx-inline-relative-period
46
46
 
47
- Este documento e a referencia canonica da API JSON de pdx-inline-relative-period.
47
+ Este documento e a referência canônica da API JSON de pdx-inline-relative-period.
48
48
 
49
49
  ## Summary
50
50
 
51
- - Tipo documental: API reference canonica de contrato JSON.
51
+ - Tipo documental: API reference canônica de contrato JSON.
52
52
  - Source of truth: runtime e codigo declarados no frontmatter.
53
- - Objetivo operacional: consulta rapida, auditavel e deterministica sob pressao.
53
+ - Objetivo operacional: consulta rápida, auditável e determinística sob pressão.
54
54
  - Resumo funcional: Contrato JSON metadata-driven com comportamento definido por runtime e schema associado.
55
55
 
56
56
  ## Purpose and scope
57
57
 
58
- - O componente consome payload JSON metadata-driven e expoe comportamento runtime configuravel por contrato.
59
- - Esta referencia cobre contrato publico, classificacao de paths e semantica de cobertura (runtime/schema/editor).
60
- - Fora de escopo: quickstart, tutorial narrativo e notas arquiteturais que nao alteram contrato publico.
58
+ - O componente consome payload JSON metadata-driven e expõe comportamento runtime configurável por contrato.
59
+ - Esta referência cobre contrato público, classificação de paths e semântica de cobertura (runtime/schema/editor).
60
+ - Fora de escopo: quickstart, tutorial narrativo e notas arquiteturais que não alteram contrato público.
61
61
 
62
- ## Consulta rapida (obrigatorio)
62
+ ## Consulta rápida (obrigatorio)
63
63
 
64
64
  | Regra/tema | Observado | Canonico desejado | Status | Evidencia |
65
65
  | --- | --- | --- | --- | --- |
66
- | Component id | `pdx-inline-relative-period` | Manter ID canonico estavel e versionado por contrato | Active | frontmatter.component |
67
- | Primary contract source | `runtime-and-code` | Runtime, schema e docs devem permanecer rastreaveis | Partial | frontmatter.contract_source + source_of_truth |
68
- | Runtime coverage | `true` | Comportamentos runtime criticos devem ficar explicitamente verificados | Active | `projects/praxis-dynamic-fields/src/lib/components/inline-relative-period/inline-relative-period.component.ts`, `projects/praxis-dynamic-fields/src/lib/base/simple-base-select.component.ts` |
69
- | Schema/type coverage | `true` | Tipos e schema devem refletir paths publicos do contrato | Active | source_of_truth + Detailed API reference |
70
- | Editor/tooling coverage | `false` | Editor/tooling deve espelhar somente contrato publico suportado | Partial | `projects/praxis-core/src/lib/utils/inline-filter-controls.util.ts`, `projects/praxis-dynamic-fields/src/lib/services/component-registry/component-registry.service.ts` |
71
- | Path hygiene | `false` | Manter consistencia entre contrato canonico e caminhos documentados | Active | frontmatter.legacy_paths_present |
72
- | Known mismatches | `false` | Registrar observed vs desired de forma auditavel | Active | frontmatter.has_known_mismatches |
66
+ | Component id | `pdx-inline-relative-period` | Manter ID canônico estável e versionado por contrato | Active | frontmatter.component |
67
+ | Primary contract source | `runtime-and-code` | Runtime, schema e docs devem permanecer rastreáveis | Partial | frontmatter.contract_source + source_of_truth |
68
+ | Runtime coverage | `true` | Comportamentos runtime críticos devem ficar explicitamente verificados | Active | `projects/praxis-dynamic-fields/src/lib/components/inline-relative-period/inline-relative-period.component.ts`, `projects/praxis-dynamic-fields/src/lib/base/simple-base-select.component.ts` |
69
+ | Schema/type coverage | `true` | Tipos e schema devem refletir paths públicos do contrato | Active | source_of_truth + Detailed API reference |
70
+ | Editor/tooling coverage | `false` | Editor/tooling deve espelhar somente contrato público suportado | Partial | `projects/praxis-core/src/lib/utils/inline-filter-controls.util.ts`, `projects/praxis-dynamic-fields/src/lib/services/component-registry/component-registry.service.ts` |
71
+ | Path hygiene | `false` | Manter consistência entre contrato canônico e caminhos documentados | Active | frontmatter.legacy_paths_present |
72
+ | Known mismatches | `false` | Registrar observed vs desired de forma auditável | Active | frontmatter.has_known_mismatches |
73
73
 
74
74
  ## Source of truth
75
75
 
76
76
  | Source | Kind | Notes |
77
77
  | --- | --- | --- |
78
- | projects/praxis-dynamic-fields/src/lib/components/inline-relative-period/inline-relative-period.component.ts | runtime-code | Arquivo presente no repositorio e usado como evidencia de contrato. |
79
- | projects/praxis-dynamic-fields/src/lib/base/simple-base-select.component.ts | runtime-code | Arquivo presente no repositorio e usado como evidencia de contrato. |
80
- | projects/praxis-core/src/lib/models/material-field-metadata.interface.ts | schema-types | Arquivo presente no repositorio e usado como evidencia de contrato. |
78
+ | projects/praxis-dynamic-fields/src/lib/components/inline-relative-period/inline-relative-period.component.ts | runtime-code | Arquivo presente no repositorio e usado como evidência de contrato. |
79
+ | projects/praxis-dynamic-fields/src/lib/base/simple-base-select.component.ts | runtime-code | Arquivo presente no repositorio e usado como evidência de contrato. |
80
+ | projects/praxis-core/src/lib/models/material-field-metadata.interface.ts | schema-types | Arquivo presente no repositorio e usado como evidência de contrato. |
81
81
 
82
82
  ## Support legend
83
83
 
84
84
  - **Active**: suportado em runtime e liberado para uso externo.
85
- - **Partial**: suporte parcial, com restricoes, lacunas ou validacao incompleta.
86
- - **Declared-only**: declarado em tipos/schema sem evidencia operacional completa.
85
+ - **Partial**: suporte parcial, com restricoes, lacunas ou validação incompleta.
86
+ - **Declared-only**: declarado em tipos/schema sem evidência operacional completa.
87
87
  - **Schema-only**: presente em schema/tipos sem cobertura runtime confirmada.
88
88
 
89
89
  ## Contract status snapshot
90
90
 
91
91
  | Item | Value | Notes |
92
92
  | --- | --- | --- |
93
- | Reference mode | `canonical` | Deve permanecer canonico |
93
+ | Reference mode | `canonical` | Deve permanecer canônico |
94
94
  | Contract format | `json` | Contrato metadata-driven |
95
95
  | Contract source | `runtime-and-code` | Alinhar com source_of_truth |
96
96
  | Runtime scope | `public` | Escopo publicado para consumidores |
97
- | Runtime verified | `true` | Revisar sempre com evidencia de runtime |
98
- | Schema verified | `true` | Revisar sempre com evidencia de tipos/schema |
99
- | Editor coverage verified | `false` | Revisar sempre com evidencia de editor/tooling |
100
- | Current path hygiene | `false` | Segregar consistencia do contrato canonico |
97
+ | Runtime verified | `true` | Revisar sempre com evidência de runtime |
98
+ | Schema verified | `true` | Revisar sempre com evidência de tipos/schema |
99
+ | Editor coverage verified | `false` | Revisar sempre com evidência de editor/tooling |
100
+ | Current path hygiene | `false` | Segregar consistência do contrato canônico |
101
101
  | Has known mismatches | `false` | Divergencias devem aparecer em secao dedicada |
102
102
 
103
103
  ## Contract classification (obrigatorio)
@@ -117,15 +117,15 @@ Este documento e a referencia canonica da API JSON de pdx-inline-relative-period
117
117
 
118
118
  ### Path audit
119
119
 
120
- Nenhum desvio de caminho foi identificado nesta revisao.
120
+ Nenhum desvio de caminho foi identificado nesta revisão.
121
121
 
122
122
  ### Internal-only paths
123
123
 
124
- Nao ha paths internal-only confirmados no contrato publico desta revisao.
124
+ Não ha paths internal-only confirmados no contrato público desta revisão.
125
125
 
126
126
  ### Experimental paths
127
127
 
128
- Nao ha paths experimentais confirmados no contrato publico desta revisao.
128
+ Não ha paths experimentais confirmados no contrato público desta revisão.
129
129
 
130
130
  ## Public contract surface (obrigatorio)
131
131
 
@@ -137,7 +137,7 @@ Nao ha paths experimentais confirmados no contrato publico desta revisao.
137
137
  | `readonlyMode` | Override de readonly no host/runtime | false | override | runtime linkage verified for core flows (component specs, 2026-03-16). |
138
138
  | `disabledMode` | Override de disabled no host/runtime | false | override | runtime linkage verified for core flows (component specs, 2026-03-16). |
139
139
  | `visible` | Override de visibilidade no host/runtime | false | override | runtime linkage verified for core flows (component specs, 2026-03-16). |
140
- | `presentationMode` | Renderizacao de apresentacao sem interacao | false | override | runtime linkage verified for core flows (component specs, 2026-03-16). |
140
+ | `presentationMode` | Renderização de apresentação sem interação | false | override | runtime linkage verified for core flows (component specs, 2026-03-16). |
141
141
 
142
142
  ### Nested configuration blocks
143
143
 
@@ -202,15 +202,15 @@ Nao ha paths experimentais confirmados no contrato publico desta revisao.
202
202
  ### Runtime coverage boundaries
203
203
 
204
204
  - Ambientes suportados: browser/dev/prod; SSR/hydration appears to be component-dependent unless explicitly verified.
205
- - Pre-condicoes: payload JSON valido, bindings de host consistentes e dependencias descritas no source_of_truth.
206
- - Fora de cobertura confirmada: caminhos internos, experimentais ou aliases nao enumerados formalmente.
205
+ - Pre-condicoes: payload JSON válido, bindings de host consistentes e dependencias descritas no source_of_truth.
206
+ - Fora de cobertura confirmada: caminhos internos, experimentais ou aliases não enumerados formalmente.
207
207
 
208
208
  ### Editor and tooling notes
209
209
 
210
210
  - Evidencia de tooling: aliases `pdx-inline-*` resolvidos por `inline-filter-controls.util.ts` e consumidos no `ComponentRegistryService`; editor visual E2E permanece not-yet-verified.
211
- - O que esta exposto no editor visual depende da cobertura real do workspace e nao deve ser inferido como suporte runtime total.
212
- - Campos disponiveis apenas via JSON/manual devem continuar no contrato, com rotulo explicito de cobertura parcial.
213
- - Quando houver divergencia entre editor e runtime, manter mismatch rastreavel em secao dedicada.
211
+ - O que esta exposto no editor visual depende da cobertura real do workspace e não deve ser inferido como suporte runtime total.
212
+ - Campos disponíveis apenas via JSON/manual devem continuar no contrato, com rótulo explícito de cobertura parcial.
213
+ - Quando houver divergencia entre editor e runtime, manter mismatch rastreável em secao dedicada.
214
214
 
215
215
  ## Resolution and precedence model (obrigatorio)
216
216
 
@@ -223,21 +223,21 @@ Nao ha paths experimentais confirmados no contrato publico desta revisao.
223
223
 
224
224
  ### Fallback order
225
225
 
226
- contrato explicito -> aliases historicos (quando suportados) -> defaults internos -> comportamento seguro
226
+ contrato explicito -> aliases históricos (quando suportados) -> defaults internos -> comportamento seguro
227
227
 
228
228
  ### Override points
229
229
 
230
230
  - inputs publicos do componente
231
- - configuracao JSON de runtime
232
- - integracoes de host (servicos/tokens/adapters)
231
+ - configuração JSON de runtime
232
+ - integracoes de host (serviços/tokens/adapters)
233
233
 
234
234
  ### Runtime normalization
235
235
 
236
- Alias e defaults devem convergir para paths canonicos; onde nao houver evidencia, manter not-yet-verified de forma explicita.
236
+ Alias e defaults devem convergir para paths canônicos; onde não houver evidência, manter not-yet-verified de forma explícita.
237
237
 
238
238
  ### Precedence rules
239
239
 
240
- Em conflito entre caminho historico e path canonico, priorizar path canonico e registrar janela de migracao do historico.
240
+ Em conflito entre caminho histórico e path canônico, priorizar path canônico e registrar janela de migração do histórico.
241
241
 
242
242
  ## Validation and error semantics (obrigatorio)
243
243
 
@@ -245,7 +245,7 @@ Em conflito entre caminho historico e path canonico, priorizar path canonico e r
245
245
 
246
246
  | Path/Rule | Validation phase | Behavior on fail | Error code / warning | Notes |
247
247
  | --- | --- | --- | --- | --- |
248
- | canonical-paths | parse/runtime | component-defined (warn/reject/default) | not-yet-standardized | Semantica detalhada preservada na referencia tecnica por componente. |
248
+ | canonical-paths | parse/runtime | component-defined (warn/reject/default) | not-yet-standardized | Semantica detalhada preservada na referência técnica por componente. |
249
249
 
250
250
  ### Invalid and unknown field handling
251
251
 
@@ -263,75 +263,75 @@ Em conflito entre caminho historico e path canonico, priorizar path canonico e r
263
263
 
264
264
  | Condition | Severity | Observability | Consumer action |
265
265
  | --- | --- | --- | --- |
266
- | partial-or-declared-only-coverage | warning | logs/eventos do componente | Confirmar ligacao runtime antes de uso critico. |
267
- | mismatch-confirmed | error-or-warning | componente/host observability | Planejar migracao e corrigir contrato/runtime. |
266
+ | partial-or-declared-only-coverage | warning | logs/eventos do componente | Confirmar ligação runtime antes de uso crítico. |
267
+ | mismatch-confirmed | error-or-warning | componente/host observability | Planejar migração e corrigir contrato/runtime. |
268
268
 
269
269
  ## Detailed API reference
270
270
  ### Preserved technical reference (normalized from previous revision)
271
271
 
272
- ### 1. Visao Geral e Quando Usar
273
- `pdx-inline-relative-period` e o filtro inline para periodos relativos com cards, icones e barra de progresso.
272
+ ### 1. Visão Geral e Quando Usar
273
+ `pdx-inline-relative-period` é o filtro inline para períodos relativos com cards, ícones e barra de progresso.
274
274
 
275
275
  Use quando precisar:
276
- - selecionar janelas como "Hoje", "Ultimos 7 dias", "Ultimo mes";
277
- - operar com presets custom de periodo relativo;
278
- - dar feedback visual de posicao/progresso da selecao.
276
+ - selecionar janelas como "Hoje", "Últimos 7 dias", "Último mês";
277
+ - operar com presets custom de período relativo;
278
+ - dar feedback visual de posição/progresso da seleção.
279
279
 
280
280
  ### 2. API do Componente (Inputs/Outputs)
281
- | Propriedade | Tipo | Padrao | Obrigatorio | Comportamento |
281
+ | Propriedade | Tipo | Padrão | Obrigatório | Comportamento |
282
282
  | --- | --- | --- | --- | --- |
283
- | `metadata` | `MaterialSelectMetadata` | - | Sim | Contrato principal de periodo relativo inline. |
284
- | `readonlyMode/disabledMode/visible/presentationMode` | `boolean` | `false/false/true/false` | Nao | Estados de host do campo inline. |
283
+ | `metadata` | `MaterialSelectMetadata` | - | Sim | Contrato principal de período relativo inline. |
284
+ | `readonlyMode/disabledMode/visible/presentationMode` | `boolean` | `false/false/true/false` | Não | Estados de host do campo inline. |
285
285
  | `selectionChange` | `T \| T[]` | - | Output herdado | Valor(es) selecionado(s). |
286
- | `optionSelected` | `SelectOption` | - | Output herdado | Opcao escolhida no painel. |
286
+ | `optionSelected` | `SelectOption` | - | Output herdado | Opção escolhida no painel. |
287
287
 
288
288
  ### 3. Matriz de Cobertura JSON (Completa)
289
- #### 3.1 Campos especificos do componente
289
+ #### 3.1 Campos específicos do componente
290
290
  | Caminho JSON | Tipo | Status | Comportamento em runtime |
291
291
  | --- | --- | --- | --- |
292
- | `metadata.relativePeriodOptions` / `relativePeriodPresets` | `array \| string(JSON)` | Ativo | Fonte principal de periodos relativos. |
292
+ | `metadata.relativePeriodOptions` / `relativePeriodPresets` | `array \| string(JSON)` | Ativo | Fonte principal de períodos relativos. |
293
293
  | `metadata.relativePeriodMultiple` / `multiple` | `boolean` | Ativo | Define single/multiple selection. |
294
294
  | `metadata.relativePeriodSearchable` / `searchable` | `boolean` | Ativo | Habilita busca no painel. |
295
- | `metadata.relativePeriodColumns` / `columns` | `number` | Ativo | Numero de colunas da grade de cards. |
295
+ | `metadata.relativePeriodColumns` / `columns` | `number` | Ativo | Número de colunas da grade de cards. |
296
296
  | `metadata.relativePeriodShowProgress` | `boolean` | Ativo | Exibe barra de progresso superior. |
297
297
  | `metadata.relativePeriodProgressGradientLowColor/midColor/highColor` | `string` | Ativo | Cores do gradiente da barra de progresso relativa. |
298
- | `metadata.relativePeriodCloseOnSelect` | `boolean` | Ativo | Fecha painel apos escolha (single). |
299
- | `metadata.relativePeriodIcon` / `prefixIcon` | `string` | Ativo | Icone do trigger/painel. |
300
- | `metadata.relativePeriodIconKey/optionIconKey` | `string` | Ativo | Chave do icone por opcao. |
301
- | `metadata.relativePeriodSubtitleKey/optionSubtitleKey` | `string` | Ativo | Chave de subtitulo por opcao. |
302
- | `metadata.relativePeriodTexts` / `inlineTexts` | `object \| string(JSON)` | Ativo | Textos de labels, empty state e aria; templates canonicos devem usar `{{label}}` e `{{percent}}` quando houver interpolacao, com compatibilidade legada para `{...}` em metadata. |
303
- | `metadata.inlineOverlay.applyMode` | `"auto" \| "explicit" \| "confirm"` | Ativo | Quando `explicit`/`confirm`, selecoes ficam em rascunho ate `Aplicar`. |
298
+ | `metadata.relativePeriodCloseOnSelect` | `boolean` | Ativo | Fecha painel após escolha (single). |
299
+ | `metadata.relativePeriodIcon` / `prefixIcon` | `string` | Ativo | Ícone do trigger/painel. |
300
+ | `metadata.relativePeriodIconKey/optionIconKey` | `string` | Ativo | Chave do ícone por opção. |
301
+ | `metadata.relativePeriodSubtitleKey/optionSubtitleKey` | `string` | Ativo | Chave de subtítulo por opção. |
302
+ | `metadata.relativePeriodTexts` / `inlineTexts` | `object \| string(JSON)` | Ativo | Textos de labels, empty state e aria; templates canônicos devem usar `{{label}}` e `{{percent}}` quando houver interpolação, com compatibilidade legada para `{...}` em metadata. |
303
+ | `metadata.inlineOverlay.applyMode` | `"auto" \| "explicit" \| "confirm"` | Ativo | Quando `explicit`/`confirm`, seleções ficam em rascunho até `Aplicar`. |
304
304
  | `metadata.inlineOverlay.actions.apply.*` | `object` | Ativo | Label, aria, icon, appearance e colorRole do commit. |
305
305
  | `metadata.inlineOverlay.actions.cancel.*` | `object` | Ativo | Label, aria, icon, appearance e colorRole do descarte. |
306
- | `metadata.inlineOverlay.actions.clear.*` | `object` | Ativo | Label, aria, icon, appearance, colorRole e visibilidade da limpeza explicita. |
306
+ | `metadata.inlineOverlay.actions.clear.*` | `object` | Ativo | Label, aria, icon, appearance, colorRole e visibilidade da limpeza explícita. |
307
307
  | `metadata.inlineAutoSize.*` | `object` | Ativo | Controle de largura da pill e painel. |
308
308
 
309
309
  #### 3.2 Campos herdados compartilhados (exaustivo)
310
310
  - `projects/praxis-dynamic-fields/src/lib/components/material-select/pdx-material-select.json-api.md`
311
311
  - `projects/praxis-dynamic-fields/src/lib/base/pdx-base-select-runtime-contract.json-api.md`
312
312
 
313
- Resumo de composicao deste componente:
314
- - `Ativo`: presets de periodo, grade com icones e progresso visual.
315
- - `Extensao de runtime`: namespace `relativePeriod*` para contratos de filtro temporal.
313
+ Resumo de composição deste componente:
314
+ - `Ativo`: presets de período, grade com ícones e progresso visual.
315
+ - `Extensão de runtime`: namespace `relativePeriod*` para contratos de filtro temporal.
316
316
 
317
317
  ### 4. Mapeamento de Comportamento
318
- - Opcoes podem vir como array ou string JSON no metadado.
318
+ - Opções podem vir como array ou string JSON no metadado.
319
319
  - Em single mode, pode fechar automaticamente por `relativePeriodCloseOnSelect`.
320
- - Barra de progresso calcula posicao da opcao selecionada no conjunto.
321
- - Busca filtra opcoes por label/subtitulo antes da selecao.
320
+ - Barra de progresso calcula posição da opção selecionada no conjunto.
321
+ - Busca filtra opções por label/subtítulo antes da seleção.
322
322
  - Com `inlineOverlay.applyMode: "explicit"` ou `"confirm"`, clique em card altera apenas o rascunho do painel; `Aplicar` comita, enquanto `Cancelar`, `Esc`, detach ou clique externo descartam.
323
323
 
324
- ### 5. Exemplo Minimo (JSON + Uso)
324
+ ### 5. Exemplo Mínimo (JSON + Uso)
325
325
  ```json
326
326
  {
327
327
  "componentId": "pdx-inline-relative-period",
328
328
  "metadata": {
329
329
  "name": "period",
330
- "label": "Periodo",
330
+ "label": "Período",
331
331
  "controlType": "select",
332
332
  "relativePeriodOptions": [
333
333
  { "value": "today", "label": "Hoje" },
334
- { "value": "last_7_days", "label": "Ultimos 7 dias" }
334
+ { "value": "last_7_days", "label": "Últimos 7 dias" }
335
335
  ]
336
336
  }
337
337
  }
@@ -354,12 +354,12 @@ Uso: filtro temporal relativo em modo single.
354
354
  "relativePeriodIconKey": "icon",
355
355
  "relativePeriodSubtitleKey": "subtitle",
356
356
  "relativePeriodOptions": [
357
- { "value": "today", "label": "Hoje", "subtitle": "00:00 ate agora", "icon": "today" },
358
- { "value": "last_30_days", "label": "Ultimos 30 dias", "subtitle": "Janela mensal", "icon": "date_range" }
357
+ { "value": "today", "label": "Hoje", "subtitle": "00:00 até agora", "icon": "today" },
358
+ { "value": "last_30_days", "label": "Últimos 30 dias", "subtitle": "Janela mensal", "icon": "date_range" }
359
359
  ],
360
360
  "relativePeriodTexts": {
361
- "relativePeriodSubtitle": "Escolha uma janela de analise",
362
- "relativePeriodEmptyStateText": "Nenhum preset disponivel",
361
+ "relativePeriodSubtitle": "Escolha uma janela de análise",
362
+ "relativePeriodEmptyStateText": "Nenhum preset disponível",
363
363
  "progressAriaLabel": "{{label}} em {{percent}} por cento"
364
364
  },
365
365
  "inlineOverlay": {
@@ -374,34 +374,34 @@ Uso: filtro temporal relativo em modo single.
374
374
  }
375
375
  }
376
376
  ```
377
- Uso: filtro de analytics corporativo com semantica temporal padronizada.
377
+ Uso: filtro de analytics corporativo com semântica temporal padronizada.
378
378
 
379
379
  ### 7. Troubleshooting e Armadilhas Comuns
380
- 1. Presets nao aparecem.
381
- Correcao: validar `relativePeriodOptions` (array ou JSON valido).
380
+ 1. Presets não aparecem.
381
+ Correção: validar `relativePeriodOptions` (array ou JSON válido).
382
382
 
383
- 2. Painel nao fecha apos selecionar.
384
- Correcao: habilitar `relativePeriodCloseOnSelect` em modo single.
383
+ 2. Painel não fecha após selecionar.
384
+ Correção: habilitar `relativePeriodCloseOnSelect` em modo single.
385
385
 
386
- 3. Progresso nao muda.
387
- Correcao: verificar se existe opcao selecionada e lista com mais de um item.
386
+ 3. Progresso não muda.
387
+ Correção: verificar se existe opção selecionada e lista com mais de um item.
388
388
 
389
- 4. Icone/subtitulo vazio.
390
- Correcao: ajustar `relativePeriodIconKey` e `relativePeriodSubtitleKey`.
389
+ 4. Ícone/subtítulo vazio.
390
+ Correção: ajustar `relativePeriodIconKey` e `relativePeriodSubtitleKey`.
391
391
 
392
392
  5. Grade com quebra ruim.
393
- Correcao: calibrar `relativePeriodColumns` e `inlineAutoSize`.
393
+ Correção: calibrar `relativePeriodColumns` e `inlineAutoSize`.
394
394
 
395
395
  ### 8. Cross-links
396
396
  - `projects/praxis-dynamic-fields/src/lib/components/material-select/pdx-material-select.json-api.md`
397
397
  - `projects/praxis-dynamic-fields/src/lib/base/pdx-base-select-runtime-contract.json-api.md`
398
398
 
399
- ### 9. Relatorio de Validacao Estrutural
400
- - Visao geral: PASS
399
+ ### 9. Relatório de Validação Estrutural
400
+ - Visão geral: PASS
401
401
  - API (inputs/outputs): PASS
402
402
  - Cobertura JSON completa (especifico + herdado): PASS
403
403
  - Mapeamento de comportamento: PASS
404
- - Exemplo minimo: PASS
404
+ - Exemplo mínimo: PASS
405
405
  - Exemplo corporativo: PASS
406
406
  - Troubleshooting: PASS
407
407
 
@@ -458,7 +458,7 @@ Correcao: calibrar `relativePeriodColumns` e `inlineAutoSize`.
458
458
  "componentId": "pdx-inline-relative-period",
459
459
  "metadata": {
460
460
  "name": "period",
461
- "label": "Periodo",
461
+ "label": "Período",
462
462
  "controlType": "select",
463
463
  "relativePeriodOptions": [
464
464
  {
@@ -467,7 +467,7 @@ Correcao: calibrar `relativePeriodColumns` e `inlineAutoSize`.
467
467
  },
468
468
  {
469
469
  "value": "last_7_days",
470
- "label": "Ultimos 7 dias"
470
+ "label": "Últimos 7 dias"
471
471
  }
472
472
  ],
473
473
  "relativePeriodMultiple": false
@@ -495,19 +495,19 @@ Correcao: calibrar `relativePeriodColumns` e `inlineAutoSize`.
495
495
  {
496
496
  "value": "today",
497
497
  "label": "Hoje",
498
- "subtitle": "00:00 ate agora",
498
+ "subtitle": "00:00 até agora",
499
499
  "icon": "today"
500
500
  },
501
501
  {
502
502
  "value": "last_30_days",
503
- "label": "Ultimos 30 dias",
503
+ "label": "Últimos 30 dias",
504
504
  "subtitle": "Janela mensal",
505
505
  "icon": "date_range"
506
506
  }
507
507
  ],
508
508
  "relativePeriodTexts": {
509
- "relativePeriodSubtitle": "Escolha uma janela de analise",
510
- "relativePeriodEmptyStateText": "Nenhum preset disponivel",
509
+ "relativePeriodSubtitle": "Escolha uma janela de análise",
510
+ "relativePeriodEmptyStateText": "Nenhum preset disponível",
511
511
  "progressAriaLabel": "{{label}} em {{percent}} por cento"
512
512
  },
513
513
  "inlineAutoSize": {
@@ -541,19 +541,19 @@ Correcao: calibrar `relativePeriodColumns` e `inlineAutoSize`.
541
541
  {
542
542
  "value": "today",
543
543
  "label": "Hoje",
544
- "subtitle": "00:00 ate agora",
544
+ "subtitle": "00:00 até agora",
545
545
  "icon": "today"
546
546
  },
547
547
  {
548
548
  "value": "last_30_days",
549
- "label": "Ultimos 30 dias",
549
+ "label": "Últimos 30 dias",
550
550
  "subtitle": "Janela mensal",
551
551
  "icon": "date_range"
552
552
  }
553
553
  ],
554
554
  "relativePeriodTexts": {
555
- "relativePeriodSubtitle": "Escolha uma janela de analise",
556
- "relativePeriodEmptyStateText": "Nenhum preset disponivel",
555
+ "relativePeriodSubtitle": "Escolha uma janela de análise",
556
+ "relativePeriodEmptyStateText": "Nenhum preset disponível",
557
557
  "progressAriaLabel": "{{label}} em {{percent}} por cento"
558
558
  },
559
559
  "inlineAutoSize": {
@@ -588,19 +588,19 @@ Correcao: calibrar `relativePeriodColumns` e `inlineAutoSize`.
588
588
  {
589
589
  "value": "today",
590
590
  "label": "Hoje",
591
- "subtitle": "00:00 ate agora",
591
+ "subtitle": "00:00 até agora",
592
592
  "icon": "today"
593
593
  },
594
594
  {
595
595
  "value": "last_30_days",
596
- "label": "Ultimos 30 dias",
596
+ "label": "Últimos 30 dias",
597
597
  "subtitle": "Janela mensal",
598
598
  "icon": "date_range"
599
599
  }
600
600
  ],
601
601
  "relativePeriodTexts": {
602
- "relativePeriodSubtitle": "Escolha uma janela de analise",
603
- "relativePeriodEmptyStateText": "Nenhum preset disponivel",
602
+ "relativePeriodSubtitle": "Escolha uma janela de análise",
603
+ "relativePeriodEmptyStateText": "Nenhum preset disponível",
604
604
  "progressAriaLabel": "{{label}} em {{percent}} por cento"
605
605
  },
606
606
  "inlineAutoSize": {
@@ -625,7 +625,7 @@ Correcao: calibrar `relativePeriodColumns` e `inlineAutoSize`.
625
625
 
626
626
  | Path/Behavior | Observed behavior (runtime) | Desired behavior | Impact | Tracking issue | Target fix |
627
627
  | --- | --- | --- | --- | --- | --- |
628
- | Canonical contract parity | Runtime e exemplos desta referencia foram realinhados em 2026-03-16 para cobrir `progressAriaLabel` no contrato canonico `{{...}}`; metadata legada com `{...}` continua aceita apenas por compatibilidade | Manter exemplos e host overrides no formato canonico `{{...}}` | Low | n/a | Monitor in periodic audit |
628
+ | Canonical contract parity | Runtime e exemplos desta referência foram realinhados em 2026-03-16 para cobrir `progressAriaLabel` no contrato canônico `{{...}}`; metadata legada com `{...}` continua aceita apenas por compatibilidade | Manter exemplos e host overrides no formato canônico `{{...}}` | Low | n/a | Monitor in periodic audit |
629
629
 
630
630
  ## Source references (obrigatorio)
631
631