@praxisui/dynamic-fields 8.0.0-beta.82 → 8.0.0-beta.85

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.
@@ -177,7 +177,7 @@ Compatibilidade de mapeamento no `praxis-filter`:
177
177
  - Para novos schemas, use `controlType` no formato canônico `inline*`.
178
178
  - `select` -> `inlineSelect`.
179
179
  - `searchable-select` -> `inlineSearchableSelect` por padrão (desative via `useInlineSearchableSelectVariant=false` quando o host precisar do renderer dedicado).
180
- - `async-select` -> `inlineAsyncSelect` por padrão com a mesma regra de opt-out: `useInlineSearchableSelectVariant=false`.
180
+ - `async-select` -> `inlineAsyncSelect` por padrão com a mesma regra de opt-out: `useInlineSearchableSelectVariant=false`; campos `multiple=true` continuam emitindo arrays e permanecem compactos na toolbar.
181
181
  - `entityLookup` -> `inlineEntityLookup` por configuração explícita no `controlType`.
182
182
  - `autoComplete` / `autocomplete` -> `inlineAutocomplete` por padrão com a mesma regra de opt-out: `useInlineSearchableSelectVariant=false`.
183
183
  - `numericTextBox` -> `inlineNumber`.
@@ -35,10 +35,11 @@ related_docs:
35
35
  - "dynamic-filter-range-filters-guide"
36
36
  keywords:
37
37
  - "inlineSelect"
38
+ - "inlinePhone"
38
39
  - "inlineDateRange"
39
40
  - "inlineTreeSelect"
40
41
  - "inlineRelativePeriod"
41
- last_updated: "2026-03-26"
42
+ last_updated: "2026-05-26"
42
43
  ---
43
44
 
44
45
  # Dynamic Fields Inline Filter Catalog
@@ -107,6 +108,21 @@ Para hosts oficiais:
107
108
  - UX note: mantenha placeholder curto e `clearButton` habilitado
108
109
  - Docs relacionadas: `dynamic-fields-inline-filter-runtime-contract`, `dynamic-filter-payload-contract`
109
110
 
111
+ ### <span id="inline-phone"></span>`inlinePhone`
112
+
113
+ - Quando usar: busca compacta por telefone em listas de contatos, pessoas, clientes ou funcionarios
114
+ - Quando evitar: edicao completa de telefone, seletor de pais, validacao internacional rica ou cadastro de multiplos telefones
115
+ - Shape do valor: `string` com digitos preservados no form
116
+ - Mascara de display: usa semantica telefonica do `inlineInput`, com `type="tel"` no input nativo e mascara visual quando `phoneFormat`, `mask`, `displayMask`, `inputMask` ou `format` indicarem telefone.
117
+ - Snippet:
118
+
119
+ ```json
120
+ { "name": "telefone", "controlType": "inlinePhone", "label": "Telefone", "prefixIcon": "phone" }
121
+ ```
122
+
123
+ - UX note: use placeholder curto e nao exponha texto de ajuda permanente na toolbar; detalhes de formato devem ficar em hint acessivel ou filtro avancado
124
+ - Docs relacionadas: `dynamic-fields-inline-filter-runtime-contract`, `dynamic-filter-payload-contract`
125
+
110
126
  ## 2. Selecao simples e multipla
111
127
 
112
128
  ### <span id="inline-select"></span>`inlineSelect`
@@ -36,6 +36,7 @@ related_docs:
36
36
  - "dynamic-filter-payload-contract"
37
37
  keywords:
38
38
  - "inlineSelect"
39
+ - "inlinePhone"
39
40
  - "INLINE_FILTER_CONTROL_TYPES"
40
41
  - "ComponentRegistryService"
41
42
  - "praxis-filter"
@@ -44,7 +45,7 @@ source_of_truth:
44
45
  - "projects/praxis-dynamic-fields/src/lib/services/component-registry/component-registry.service.ts"
45
46
  - "projects/praxis-table/src/lib/components/praxis-filter/praxis-filter.component.ts"
46
47
  - "projects/praxis-table/src/lib/filter-settings/filter-settings.component.ts"
47
- last_updated: "2026-03-23"
48
+ last_updated: "2026-05-26"
48
49
  ---
49
50
 
50
51
  # Dynamic Fields Inline Filter Inventory
@@ -99,10 +100,10 @@ Regra para hosts:
99
100
 
100
101
  ## Resumo executivo
101
102
 
102
- Existem **24 controlTypes inline canonicamente publicados** no runtime:
103
+ Existem **28 controlTypes inline canonicamente publicados** no runtime:
103
104
 
104
- - 24 estao definidos em `INLINE_FILTER_CONTROL_TYPES`
105
- - 24 estao registrados em `ComponentRegistryService`
105
+ - 28 estao definidos em `INLINE_FILTER_CONTROL_TYPES`
106
+ - 28 estao registrados em `ComponentRegistryService`
106
107
  - nem todos aparecem automaticamente na toolbar
107
108
  - parte deles so entra na jornada inline por `controlType` explicito
108
109
  - parte deles depende de feature flags do `praxis-filter`
@@ -132,6 +133,7 @@ Dependem do schema/base control + flags da trilha de filtro:
132
133
  - `select` -> `inlineSelect`
133
134
  - `multiSelect` -> `inlineMultiSelect`
134
135
  - `input`/`searchInput` -> `inlineInput`
136
+ - `phone`/`tel` -> `inlinePhone`
135
137
  - `numericTextBox` -> `inlineNumber`
136
138
  - `currency` -> `inlineCurrency`
137
139
  - `priceRange` -> `inlineCurrencyRange`
@@ -152,6 +154,7 @@ As colunas de implementacao e metadata abaixo descrevem artefatos internos co-lo
152
154
  | ControlType canonico | implementacao Angular | Metadata | JSON API | Valor | Visual principal | Dependencia backend |
153
155
  | --- | --- | --- | --- | --- | --- | --- |
154
156
  | `inlineInput` | `registrada por default no registry inline` | `metadata co-localizada ao controlType` | `co-localizado ao metadata (*.json-api.md)` | `string` | pill compacta com busca/clear | opcional |
157
+ | `inlinePhone` | `registrada por default no registry inline` | `metadata co-localizada ao controlType` | `co-localizado ao metadata (*.json-api.md)` | `string` com digitos preservados | pill compacta com `type="tel"` e mascara telefonica | opcional |
155
158
 
156
159
  ### Selecao
157
160
 
@@ -36,10 +36,11 @@ related_docs:
36
36
  - "dynamic-filter-backend-contract-cheatsheet"
37
37
  keywords:
38
38
  - "controlType"
39
+ - "inlinePhone"
39
40
  - "range payload"
40
41
  - "praxis-filter"
41
42
  - "metadata-starter"
42
- last_updated: "2026-03-07"
43
+ last_updated: "2026-05-26"
43
44
  ---
44
45
 
45
46
  # Dynamic Fields Inline Filter Runtime Contract
@@ -114,6 +115,7 @@ O `PraxisFilter` consegue promover alguns controls genericos para inline.
114
115
  Exemplos:
115
116
 
116
117
  - `select` -> `inlineSelect`
118
+ - `phone`/`tel` -> `inlinePhone`; preserva `type="tel"`, mascara de telefone e valor cru em digitos quando a metadata carregar semantica telefonica
117
119
  - `searchable-select` -> `inlineSearchableSelect` por padrao; use `useInlineSearchableSelectVariant = false` para opt-out
118
120
  - `async-select` -> `inlineAsyncSelect` por padrao; use a mesma flag em `false` para opt-out
119
121
  - `dateRange` -> `inlineDateRange` por padrao; use `useInlineDateRangeVariant = false` para opt-out
@@ -130,6 +132,7 @@ Conclusao importante:
130
132
  ### Valores simples
131
133
 
132
134
  - texto: `string`
135
+ - telefone inline: `string` com valor cru preservado, normalmente digitos; a mascara visual nao deve alterar o valor emitido
133
136
  - numero/moeda: `number`
134
137
  - toggle: `boolean | null`
135
138
  - time: **canonico recomendado** `HH:mm`; o runtime tambem aceita `HH:mm:ss` e `Date`
@@ -156,6 +156,7 @@ As colunas de implementacao e metadata abaixo descrevem artefatos internos co-lo
156
156
  | inline de filtro | `inlineCurrencyRange` | `registrada por default no registry inline` | `metadata co-localizada ao controlType` | `co-localizado ao metadata (*.json-api.md)` | no | no | range monetario |
157
157
  | inline de filtro | `inlineMultiSelect` | `registrada por default no registry inline` | `metadata co-localizada ao controlType` | `co-localizado ao metadata (*.json-api.md)` | no | no | multipla selecao |
158
158
  | inline de filtro | `inlineInput` | `registrada por default no registry inline` | `metadata co-localizada ao controlType` | `co-localizado ao metadata (*.json-api.md)` | no | no | texto compacto |
159
+ | inline de filtro | `inlinePhone` | `registrada por default no registry inline` | `metadata co-localizada ao controlType` | `co-localizado ao metadata (*.json-api.md)` | no | no | telefone compacto |
159
160
  | inline de filtro | `inlineToggle` | `registrada por default no registry inline` | `metadata co-localizada ao controlType` | `co-localizado ao metadata (*.json-api.md)` | no | no | toggle compacto |
160
161
  | inline de filtro | `inlineRange` | `registrada por default no registry inline` | `metadata co-localizada ao controlType` | `co-localizado ao metadata (*.json-api.md)` | no | no | slider compacto |
161
162
  | inline de filtro | `inlineDate` | `registrada por default no registry inline` | `metadata co-localizada ao controlType` | `co-localizado ao metadata (*.json-api.md)` | no | no | date inline |
@@ -0,0 +1 @@
1
+ export { InlineInputComponent, PDX_INLINE_INPUT_COMPONENT_METADATA, PDX_INLINE_PHONE_COMPONENT_METADATA } from './praxisui-dynamic-fields.mjs';