@praxisui/dynamic-fields 8.0.0-beta.98 → 9.0.0-beta.0

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.
Files changed (22) hide show
  1. package/README.md +2 -2
  2. package/docs/dynamic-fields-inline-components-guide.md +36 -24
  3. package/fesm2022/praxisui-dynamic-fields.mjs +3699 -345
  4. package/package.json +3 -3
  5. package/src/lib/base/pdx-base-input-runtime-contract.json-api.md +4 -4
  6. package/src/lib/components/inline-color-label/pdx-inline-color-label.json-api.md +43 -2
  7. package/src/lib/components/inline-currency-range/pdx-inline-currency-range.json-api.md +15 -0
  8. package/src/lib/components/inline-date/pdx-inline-date.json-api.md +10 -2
  9. package/src/lib/components/inline-date-range/pdx-inline-date-range.json-api.md +26 -9
  10. package/src/lib/components/inline-distance-radius/pdx-inline-distance-radius.json-api.md +7 -0
  11. package/src/lib/components/inline-multi-select/pdx-inline-multi-select.json-api.md +24 -3
  12. package/src/lib/components/inline-pipeline-status/pdx-inline-pipeline-status.json-api.md +17 -0
  13. package/src/lib/components/inline-range-slider/pdx-inline-range-slider.json-api.md +8 -1
  14. package/src/lib/components/inline-rating/pdx-inline-rating.json-api.md +13 -0
  15. package/src/lib/components/inline-relative-period/pdx-inline-relative-period.json-api.md +13 -0
  16. package/src/lib/components/inline-score-priority/pdx-inline-score-priority.json-api.md +13 -0
  17. package/src/lib/components/inline-sentiment/pdx-inline-sentiment.json-api.md +20 -2
  18. package/src/lib/components/inline-time-range/pdx-inline-time-range.json-api.md +13 -0
  19. package/src/lib/components/material-cpf-cnpj-input/pdx-material-cpf-cnpj-input.json-api.md +4 -3
  20. package/src/lib/components/material-price-range/pdx-material-price-range.json-api.md +4 -0
  21. package/src/lib/components/material-slide-toggle/pdx-material-slide-toggle.json-api.md +26 -22
  22. package/types/praxisui-dynamic-fields.d.ts +381 -4
package/README.md CHANGED
@@ -81,7 +81,7 @@ Biblioteca de campos dinâmicos para aplicações Angular (v20+) com Material De
81
81
  ## Instalação
82
82
 
83
83
  ```bash
84
- npm install @praxisui/dynamic-fields
84
+ npm install @praxisui/dynamic-fields@beta
85
85
  ```
86
86
 
87
87
  ### Estilos e tokens (opcional)
@@ -281,7 +281,7 @@ Tokens M3 aplicados:
281
281
  ## 📦 Instalação
282
282
 
283
283
  ```bash
284
- npm install @praxisui/dynamic-fields
284
+ npm install @praxisui/dynamic-fields@beta
285
285
  ```
286
286
 
287
287
  ## 🚀 Uso Básico (DynamicFieldLoaderDirective)
@@ -149,8 +149,8 @@ Exemplo mínimo (quick clear explícito para os 3 inline especiais):
149
149
  - `inlineAutocomplete`: autocomplete compacto em pill, com busca incremental e lista em popover arredondado.
150
150
  - `inlineNumber`: número compacto em pill, com validação `min/max`, clear e largura adaptativa. Em `numericFormat/format = percent`, renderiza sufixo `%` e defaults corporativos (`min=0`, `max=100`, `step=0.01`) quando não informados. O visual gráfico enriquecido fica sob opt-in explícito com `inlineVisualStyle = "graphic"`, preservando o modo compacto como padrão corporativo.
151
151
  - `inlineCurrency`: moeda compacta em pill, com máscara, locale/moeda configuráveis e clear.
152
- - `inlineCurrencyRange`: faixa monetária compacta em pill, com slider duplo em popover e resumo `min-max`.
153
- - `inlineMultiSelect`: listas múltiplas compactas em pill + popover, exibindo tokens selecionados com overflow `+N` e seção de selecionados no painel.
152
+ - `inlineCurrencyRange`: faixa monetária compacta em pill, com slider duplo em popover, resumo `min-max`, ticks/marks semânticos compactos, bands opcionais, histograma/distribuição, readout adaptativo para evitar colisão de valores longos e confirmação explícita por `Aplicar`/`Cancelar`.
153
+ - `inlineMultiSelect`: listas múltiplas compactas em pill + popover, exibindo tokens selecionados com overflow `+N`, seção de selecionados no painel e confirmação explícita por `inlineOverlay` quando necessário.
154
154
  - `inlineInput`: texto compacto com ícone de busca, clear, largura adaptativa e mascara de
155
155
  display para campos textuais semanticamente conhecidos (CPF/CNPJ, telefone BR/E.164 e CEP),
156
156
  preservando o valor cru enviado ao filtro.
@@ -159,8 +159,8 @@ Exemplo mínimo (quick clear explícito para os 3 inline especiais):
159
159
  - `inlinePeriodRange`: faixa temporal compacta por granularidade, cobrindo `month`, `quarter`, `year` e `fiscal-year` com chip e presets específicos por período.
160
160
  - `inlineYearRange`: alias compatível para `inlinePeriodRange` com `granularity: 'year'`.
161
161
  - `inlineMonthRange`: alias compatível para `inlinePeriodRange` com `granularity: 'month'`.
162
- - `inlineDate`: datepicker compacto em pill, com largura automática por conteúdo e placeholder inline.
163
- - `inlineDateRange`: intervalo de datas compacto em pill, com largura adaptativa por conteúdo.
162
+ - `inlineDate`: datepicker compacto em pill, com largura automática por conteúdo, placeholder inline e confirmação explícita opcional via `inlineOverlay`.
163
+ - `inlineDateRange`: intervalo de datas compacto em pill, com largura adaptativa por conteúdo. Em barras corporativas densas, toda a área acionável do chip deve abrir o calendário, inclusive o texto de início/fim; o `clearButton` é a única ação isolada para limpar sem abrir o overlay.
164
164
  - `inlineTime`: timepicker compacto em pill, com largura adaptativa por conteúdo e modos `list|columns|auto`.
165
165
  - `inlineTimeRange`: intervalo de horário compacto em pill, com validações de faixa reutilizando o componente base.
166
166
  - `inlineTreeSelect`: tree select compacto em pill, com busca no popover e seleção hierárquica de nó único.
@@ -266,8 +266,8 @@ Esta seção formaliza o contrato único de metadata para todos os inline do `pr
266
266
  | `inlinePeriodRange` | `range-slider.config.ts` | `extensão temporal genérica co-localizada` | granularidades `month`, `quarter`, `year`, `fiscal-year` | `registrado por default no runtime inline` |
267
267
  | `inlineYearRange` | `range-slider.config.ts` | `alias compatível de inlinePeriodRange` | converte para `granularity: 'year'` | `compatível; prefira inlinePeriodRange em contratos novos` |
268
268
  | `inlineMonthRange` | `range-slider.config.ts` | `alias compatível de inlinePeriodRange` | converte para `granularity: 'month'` | `compatível; prefira inlinePeriodRange em contratos novos` |
269
- | `inlineDate` | `date.config.ts` | — | datepicker inline com auto width | `registrado por default no runtime inline` |
270
- | `inlineDateRange` | `date-range.config.ts` | — | presets + modo `auto/confirm` | `registrado por default no runtime inline` |
269
+ | `inlineDate` | `date.config.ts` | — | datepicker inline com auto width + `inlineOverlay` opcional | `registrado por default no runtime inline` |
270
+ | `inlineDateRange` | `date-range.config.ts` | — | presets + `inlineOverlay.applyMode` | `registrado por default no runtime inline` |
271
271
  | `inlineTime` | `time-picker.config.ts` | — | modo `auto/list/columns`; toggle e selected icon metadata-driven | `registrado por default no runtime inline` |
272
272
  | `inlineTimeRange` | `time-range.config.ts` | — | faixa de horário com validações | `registrado por default no runtime inline` |
273
273
  | `inlineTreeSelect` | `tree-select.config.ts` | — | busca em árvore + seleção de nó | `registrado por default no runtime inline` |
@@ -328,7 +328,7 @@ Fonte de verdade: `projects/praxis-metadata-editor/src/lib/config/*.config.ts`.
328
328
 
329
329
  #### `date-range.config.ts`
330
330
 
331
- `label, hint, startPlaceholder, endPlaceholder, defaultValue.startDate, defaultValue.endDate, prefixIcon, prefixIconColor, suffixIconColor, suffixIcon, startView, startAt, touchUi, required, minDate, maxDate, validators.requiredMessage, materialDesign.appearance, materialDesign.color, materialDesign.floatLabel, materialDesign.subscriptSizing, inlineAutoSize.minWidth, inlineAutoSize.maxWidth, inlineAutoSize.minWidthMobile, inlineAutoSize.maxWidthMobile, materialDesign.hideRequiredMarker, errorStateMatcher, startAriaLabel, endAriaLabel, tabIndex, dataAttributes, showShortcuts, shortcutsPosition, applyOnShortcutClick, shortcuts, inlineQuickPresets.enabled, inlineQuickPresets.maxVisible, inlineQuickPresetsAriaLabel, inlineQuickPresetsApplyMode, inlineQuickPresetsCancelLabel, inlineQuickPresetsCancelAriaLabel, inlineQuickPresetsApplyLabel, inlineQuickPresetsApplyAriaLabel, clearButton.enabled, clearButton.icon, clearButton.iconColor, clearButton.tooltip, clearButton.ariaLabel, clearButton.showOnlyWhenFilled`
331
+ `label, hint, startPlaceholder, endPlaceholder, defaultValue.startDate, defaultValue.endDate, prefixIcon, prefixIconColor, suffixIconColor, suffixIcon, startView, startAt, touchUi, required, minDate, maxDate, validators.requiredMessage, materialDesign.appearance, materialDesign.color, materialDesign.floatLabel, materialDesign.subscriptSizing, inlineAutoSize.minWidth, inlineAutoSize.maxWidth, inlineAutoSize.minWidthMobile, inlineAutoSize.maxWidthMobile, materialDesign.hideRequiredMarker, errorStateMatcher, startAriaLabel, endAriaLabel, tabIndex, dataAttributes, showShortcuts, shortcutsPosition, applyOnShortcutClick, shortcuts, inlineQuickPresets.enabled, inlineQuickPresets.maxVisible, inlineQuickPresetsAriaLabel, inlineOverlay.applyMode, inlineOverlay.actions.apply.label, inlineOverlay.actions.apply.ariaLabel, inlineOverlay.actions.apply.appearance, inlineOverlay.actions.apply.colorRole, inlineOverlay.actions.cancel.label, inlineOverlay.actions.cancel.ariaLabel, inlineOverlay.actions.cancel.appearance, inlineOverlay.actions.cancel.colorRole, clearButton.enabled, clearButton.icon, clearButton.iconColor, clearButton.tooltip, clearButton.ariaLabel, clearButton.showOnlyWhenFilled`
332
332
 
333
333
  #### `time-picker.config.ts`
334
334
 
@@ -348,28 +348,28 @@ Fonte de verdade: `projects/praxis-metadata-editor/src/lib/config/*.config.ts`.
348
348
 
349
349
  #### `range-slider.config.ts`
350
350
 
351
- `label, hint, prefixIcon, prefixIconColor, suffixIcon, suffixIconColor, mode, step, thumbLabel, showTicks, discrete, vertical, invert, displayWith, showInputs, quickPresets, quickPresetsAuto, quickPresetsLabels, inlineTexts, min, max, minDistance, maxDistance, validators.minMessage, validators.maxMessage, validators.rangeMessage, validators.distanceMessage, required, validators.requiredMessage, clearButton.enabled, clearButton.icon, clearButton.iconColor, clearButton.tooltip, clearButton.ariaLabel, clearButton.showOnlyWhenFilled, color, inlineAutoSize.minWidth, inlineAutoSize.maxWidth, inlineAutoSize.minWidthMobile, inlineAutoSize.maxWidthMobile, inlineAutoSize.panelMinWidth, inlineAutoSize.panelMaxWidth, inlineAutoSize.panelMinWidthMobile, inlineAutoSize.panelMaxWidthMobile, ariaLabel, ariaDescribedby, ariaLabelledby, tabIndex`
351
+ `label, hint, prefixIcon, prefixIconColor, suffixIcon, suffixIconColor, mode, step, thumbLabel, showTicks, discrete, vertical, invert, displayWith, showInputs, quickPresets, quickPresetsAuto, quickPresetsLabels, inlineTexts, inlineOverlay.applyMode, inlineOverlay.actions.apply.label, inlineOverlay.actions.apply.ariaLabel, inlineOverlay.actions.apply.appearance, inlineOverlay.actions.apply.colorRole, inlineOverlay.actions.cancel.label, inlineOverlay.actions.cancel.ariaLabel, inlineOverlay.actions.cancel.appearance, inlineOverlay.actions.cancel.colorRole, inlineOverlay.actions.clear.label, inlineOverlay.actions.clear.ariaLabel, inlineOverlay.actions.clear.appearance, inlineOverlay.actions.clear.colorRole, min, max, minDistance, maxDistance, validators.minMessage, validators.maxMessage, validators.rangeMessage, validators.distanceMessage, required, validators.requiredMessage, clearButton.enabled, clearButton.icon, clearButton.iconColor, clearButton.tooltip, clearButton.ariaLabel, clearButton.showOnlyWhenFilled, color, inlineAutoSize.minWidth, inlineAutoSize.maxWidth, inlineAutoSize.minWidthMobile, inlineAutoSize.maxWidthMobile, inlineAutoSize.panelMinWidth, inlineAutoSize.panelMaxWidth, inlineAutoSize.panelMinWidthMobile, inlineAutoSize.panelMaxWidthMobile, ariaLabel, ariaDescribedby, ariaLabelledby, tabIndex`
352
352
 
353
353
  #### `price-range.config.ts`
354
354
 
355
- `label, hint, tooltip, inlinePanelTitle, startLabel, endLabel, prefixIcon, prefixIconColor, suffixIcon, suffixIconColor, startPlaceholder, endPlaceholder, defaultValue.minPrice, defaultValue.maxPrice, hideSubLabels, layout, gap, clearButtonPlacement, required, readonly, disabled, hidden, min, max, startMin, startMax, startMinMessage, startMaxMessage, endMin, endMax, endMinMessage, endMaxMessage, endMinOffset, endMinOffsetMessage, startMaxOffset, startMaxOffsetMessage, step, showTicks, currency, currencyPosition, decimalPlaces, locale, thousandsSeparator, decimalSeparator, allowNegative, clearButton.enabled, clearButton.icon, clearButton.iconColor, clearButton.tooltip, clearButton.ariaLabel, clearButton.showOnlyWhenFilled, materialDesign.appearance, materialDesign.color, inlineAutoSize.minWidth, inlineAutoSize.maxWidth, inlineAutoSize.minWidthMobile, inlineAutoSize.maxWidthMobile, inlineAutoSize.panelMinWidth, inlineAutoSize.panelMaxWidth, ariaLabel, ariaDescribedby, ariaLabelledby`
355
+ `label, hint, tooltip, inlinePanelTitle, startLabel, endLabel, prefixIcon, prefixIconColor, suffixIcon, suffixIconColor, startPlaceholder, endPlaceholder, defaultValue.minPrice, defaultValue.maxPrice, hideSubLabels, layout, gap, clearButtonPlacement, required, readonly, disabled, hidden, min, max, startMin, startMax, startMinMessage, startMaxMessage, endMin, endMax, endMinMessage, endMaxMessage, endMinOffset, endMinOffsetMessage, startMaxOffset, startMaxOffsetMessage, step, showTicks, marks, semanticBands, currency, currencyPosition, decimalPlaces, locale, thousandsSeparator, decimalSeparator, allowNegative, clearButton.enabled, clearButton.icon, clearButton.iconColor, clearButton.tooltip, clearButton.ariaLabel, clearButton.showOnlyWhenFilled, inlineOverlay.applyMode, inlineOverlay.actions.apply.label, inlineOverlay.actions.apply.ariaLabel, inlineOverlay.actions.apply.appearance, inlineOverlay.actions.apply.colorRole, inlineOverlay.actions.cancel.label, inlineOverlay.actions.cancel.ariaLabel, inlineOverlay.actions.cancel.appearance, inlineOverlay.actions.cancel.colorRole, inlineOverlay.actions.clear.label, inlineOverlay.actions.clear.ariaLabel, inlineOverlay.actions.clear.appearance, inlineOverlay.actions.clear.colorRole, materialDesign.appearance, materialDesign.color, inlineAutoSize.minWidth, inlineAutoSize.maxWidth, inlineAutoSize.minWidthMobile, inlineAutoSize.maxWidthMobile, inlineAutoSize.panelMinWidth, inlineAutoSize.panelMaxWidth, ariaLabel, ariaDescribedby, ariaLabelledby`
356
356
 
357
357
  #### Matrizes especializadas (incrementais)
358
358
 
359
359
  - `inlineRating`:
360
- `ratingIcon, allowHalf, ratingAllowHalf, ratingPrecision, precision, ratingToneLowColor, ratingToneMidColor, ratingToneHighColor, ratingBadgeColor, ratingBadgeIcon, ratingBadgeIconColor, ratingActiveIcon, ratingInactiveIcon, ratingToneColors, ratingColors, starColors, ratingLowColor, ratingMidColor, ratingHighColor, ratingIndicatorColor, ratingMin, ratingMax, itemsCount, ratingStep, materialDesign.density`
360
+ `ratingIcon, allowHalf, ratingAllowHalf, ratingPrecision, precision, ratingToneLowColor, ratingToneMidColor, ratingToneHighColor, ratingBadgeColor, ratingBadgeIcon, ratingBadgeIconColor, ratingActiveIcon, ratingInactiveIcon, ratingToneColors, ratingColors, starColors, ratingLowColor, ratingMidColor, ratingHighColor, ratingIndicatorColor, ratingMin, ratingMax, itemsCount, ratingStep, inlineOverlay.applyMode, inlineOverlay.actions.apply.label, inlineOverlay.actions.cancel.label, inlineOverlay.actions.clear.label, materialDesign.density`
361
361
  - `inlineDistanceRadius`:
362
- `distanceIcon, distanceSubtitle, distanceUnit, distanceBaseUnit, distanceAllowUnitToggle, distanceUnits, distanceUnitLabels.km, distanceUnitLabels.mi, distanceDisplayDecimals, distancePresets, distanceRadialRings, distanceAccentColor, distanceRingColor, distanceTrackColor, distanceGlowColor, materialDesign.density`
362
+ `distanceIcon, distanceSubtitle, distanceUnit, distanceBaseUnit, distanceAllowUnitToggle, distanceUnits, distanceUnitLabels.km, distanceUnitLabels.mi, distanceDisplayDecimals, distancePresets, distanceRadialRings, distanceAccentColor, distanceRingColor, distanceTrackColor, distanceGlowColor, inlineOverlay.applyMode, inlineOverlay.actions.apply.label, inlineOverlay.actions.cancel.label, inlineOverlay.actions.clear.label, inlineOverlay.actions.clear.appearance, inlineOverlay.actions.clear.colorRole, materialDesign.density`
363
363
  - `inlinePipelineStatus`:
364
- `pipelineSubtitle, pipelineOptions, pipelineSearchable, pipelineSearchPlaceholder, pipelineOptionSubtitleKey, pipelineOptionWeightKey, pipelineOptionColorKey, pipelineShowBar, pipelineShowSelectionPills, pipelineShowSelectAll, pipelineSelectAllText, pipelineShowClearAction, pipelineClearActionText, pipelineChipMaxVisible, pipelineColors, pipelineEmptyStateText, pipelineSelectionActionsAriaLabel, pipelineOptionsGroupAriaLabelMultiple, pipelineOptionsGroupAriaLabelSingle, pipelineSelectionPillsAriaLabel, pipelineBarAriaLabelEmpty, pipelineBarAriaLabelSelected, pipelineTexts, pipelineIcon, pipelineSearchIcon, pipelineSearchIconColor, inlineAutoSize.panelMinWidth, inlineAutoSize.panelMaxWidth, inlineAutoSize.panelMinWidthMobile, inlineAutoSize.panelMaxWidthMobile`
364
+ `pipelineSubtitle, pipelineOptions, pipelineSearchable, pipelineSearchPlaceholder, pipelineOptionSubtitleKey, pipelineOptionWeightKey, pipelineOptionColorKey, pipelineShowBar, pipelineShowSelectionPills, pipelineShowSelectAll, pipelineSelectAllText, pipelineShowClearAction, pipelineClearActionText, inlineOverlay.applyMode, inlineOverlay.actions.apply.label, inlineOverlay.actions.cancel.label, inlineOverlay.actions.clear.label, inlineOverlay.actions.clear.appearance, inlineOverlay.actions.clear.colorRole, pipelineChipMaxVisible, pipelineColors, pipelineEmptyStateText, pipelineSelectionActionsAriaLabel, pipelineOptionsGroupAriaLabelMultiple, pipelineOptionsGroupAriaLabelSingle, pipelineSelectionPillsAriaLabel, pipelineBarAriaLabelEmpty, pipelineBarAriaLabelSelected, pipelineTexts, pipelineIcon, pipelineSearchIcon, pipelineSearchIconColor, inlineAutoSize.panelMinWidth, inlineAutoSize.panelMaxWidth, inlineAutoSize.panelMinWidthMobile, inlineAutoSize.panelMaxWidthMobile`
365
365
  - `inlineScorePriority`:
366
- `scoreSubtitle, scoreBands, scoreUnit, scoreDisplayDecimals, scoreShowScaleLabels, scoreShowBandChips, scoreRangeSeparator, scorePalette, scoreValueFallbackColor, scoreEmptyGradient, scoreIcon, scoreBandsAriaLabel, scoreBandAriaLabelTemplate, scoreTexts, scoreMin, scoreMax, scoreStep, priorityBands, severityBands, materialDesign.density`
366
+ `scoreSubtitle, scoreBands, scoreUnit, scoreDisplayDecimals, scoreShowScaleLabels, scoreShowBandChips, scoreRangeSeparator, scorePalette, scoreValueFallbackColor, scoreEmptyGradient, scoreIcon, scoreBandsAriaLabel, scoreBandAriaLabelTemplate, scoreTexts, scoreMin, scoreMax, scoreStep, priorityBands, severityBands, inlineOverlay.applyMode, inlineOverlay.actions.apply.label, inlineOverlay.actions.cancel.label, inlineOverlay.actions.clear.label, inlineOverlay.actions.clear.appearance, inlineOverlay.actions.clear.colorRole, materialDesign.density`
367
367
  - `inlineRelativePeriod`:
368
- `relativePeriodSubtitle, relativePeriodOptions, relativePeriodPresets, relativePeriodShowProgress, relativePeriodColumns, relativePeriodCloseOnSelect, relativePeriodMultiple, relativePeriodSearchable, relativePeriodIcon, relativePeriodIconKey, relativePeriodSubtitleKey, relativePeriodOptionsAriaLabel, relativePeriodProgressEmptyLabel, relativePeriodEmptyStateText, relativePeriodTexts, inlineAutoSize.panelMinWidth, inlineAutoSize.panelMaxWidth, inlineAutoSize.panelMinWidthMobile, inlineAutoSize.panelMaxWidthMobile`
368
+ `relativePeriodSubtitle, relativePeriodOptions, relativePeriodPresets, relativePeriodShowProgress, relativePeriodColumns, relativePeriodCloseOnSelect, relativePeriodMultiple, relativePeriodSearchable, relativePeriodIcon, relativePeriodIconKey, relativePeriodSubtitleKey, relativePeriodOptionsAriaLabel, relativePeriodProgressEmptyLabel, relativePeriodEmptyStateText, relativePeriodTexts, inlineOverlay.applyMode, inlineOverlay.actions.apply.label, inlineOverlay.actions.apply.ariaLabel, inlineOverlay.actions.apply.appearance, inlineOverlay.actions.apply.colorRole, inlineOverlay.actions.cancel.label, inlineOverlay.actions.cancel.ariaLabel, inlineOverlay.actions.cancel.appearance, inlineOverlay.actions.cancel.colorRole, inlineOverlay.actions.clear.label, inlineOverlay.actions.clear.ariaLabel, inlineOverlay.actions.clear.appearance, inlineOverlay.actions.clear.colorRole, inlineAutoSize.panelMinWidth, inlineAutoSize.panelMaxWidth, inlineAutoSize.panelMinWidthMobile, inlineAutoSize.panelMaxWidthMobile`
369
369
  - `inlineSentiment`:
370
- `sentimentSubtitle, sentimentOptions, sentimentPalette, sentimentShowBar, sentimentAnimatedEmoji, sentimentCloseOnSelect, sentimentMultiple, sentimentShowSelectionPills, sentimentIcon, sentimentColorKey, sentimentEmojiKey, sentimentOptionsAriaLabel, sentimentSelectionPillsAriaLabel, sentimentEmptyStateText, sentimentTexts, inlineAutoSize.panelMinWidth, inlineAutoSize.panelMaxWidth, inlineAutoSize.panelMinWidthMobile, inlineAutoSize.panelMaxWidthMobile`
370
+ `sentimentSubtitle, sentimentOptions, sentimentPalette, sentimentShowBar, sentimentAnimatedEmoji, sentimentCloseOnSelect, sentimentMultiple, sentimentShowSelectionPills, sentimentIcon, sentimentColorKey, sentimentEmojiKey, sentimentOptionsAriaLabel, sentimentSelectionPillsAriaLabel, sentimentEmptyStateText, sentimentTexts, inlineOverlay.applyMode, inlineOverlay.actions.apply.label, inlineOverlay.actions.cancel.label, inlineOverlay.actions.clear.label, inlineOverlay.actions.clear.appearance, inlineOverlay.actions.clear.colorRole, inlineAutoSize.panelMinWidth, inlineAutoSize.panelMaxWidth, inlineAutoSize.panelMinWidthMobile, inlineAutoSize.panelMaxWidthMobile`
371
371
  - `inlineColorLabel`:
372
- `colorLabelSubtitle, colorLabelOptions, colorLabelPalette, colorLabelMultiple, colorLabelColumns, colorLabelShowSelectedBadges, colorLabelCloseOnSelect, colorLabelSelectionTitle, colorLabelIcon, colorLabelBadgeRemoveIcon, colorLabelBadgeRemoveIconColor, colorLabelColorKey, colorLabelOptionsAriaLabel, colorLabelSelectionBadgesAriaLabel, colorLabelRemoveSelectionAriaLabel, colorLabelEmptyStateText, colorLabelTexts, inlineAutoSize.panelMinWidth, inlineAutoSize.panelMaxWidth, inlineAutoSize.panelMinWidthMobile, inlineAutoSize.panelMaxWidthMobile`
372
+ `colorLabelSubtitle, colorLabelOptions, colorLabelPalette, colorLabelMultiple, colorLabelColumns, colorLabelShowSelectedBadges, colorLabelCloseOnSelect, colorLabelSelectionTitle, colorLabelIcon, colorLabelBadgeRemoveIcon, colorLabelBadgeRemoveIconColor, colorLabelColorKey, colorLabelOptionsAriaLabel, colorLabelSelectionBadgesAriaLabel, colorLabelRemoveSelectionAriaLabel, colorLabelEmptyStateText, colorLabelTexts, inlineOverlay.applyMode, inlineOverlay.actions.apply.label, inlineOverlay.actions.cancel.label, inlineOverlay.actions.clear.label, inlineOverlay.actions.clear.appearance, inlineOverlay.actions.clear.colorRole, inlineAutoSize.panelMinWidth, inlineAutoSize.panelMaxWidth, inlineAutoSize.panelMinWidthMobile, inlineAutoSize.panelMaxWidthMobile`
373
373
 
374
374
  ## Auto Width (input inline)
375
375
 
@@ -395,16 +395,25 @@ Override opcional por metadata:
395
395
  ```
396
396
 
397
397
  `inlineSelect` usa o mesmo envelope de min/max por densidade/viewport (pill vazio e preenchido), mantendo largura por conteúdo para o texto selecionado.
398
+ `inlineMultiSelect` também usa o envelope adaptativo e, com `inlineOverlay.applyMode: "explicit"`, mantém seleção, remoção e limpeza do painel em rascunho até `Aplicar`; `Cancelar`, `Esc` ou fechamento externo restauram a seleção confirmada anterior. Labels, aria, `appearance` e `colorRole` das ações do rodapé devem vir de `inlineOverlay.actions.*`. O `inlineSelect` single ainda comita no clique por herdar o comportamento nativo do `mat-select`; confirmação explícita ali exige uma superfície de painel própria para não fechar ao selecionar.
398
399
  `inlineAsyncSelect` segue o mesmo envelope adaptativo de largura e mantém label como placeholder visual quando vazio.
399
400
  `inlineAutocomplete` também usa auto-width por conteúdo (valor/label), mantendo foco no shape pill e clear alinhado.
400
401
  `inlineNumber` segue o mesmo envelope adaptativo de largura, usando valor numérico atual ou label como fallback quando vazio.
401
402
  No modo percentual (`numericFormat` ou `format` com valor `percent`), mantém o mesmo layout inline e exibe sufixo `%`, preservando overrides explícitos de `min/max/step`.
402
403
  `inlineCurrency` segue envelope adaptativo (`inlineAutoSize`) com máscara de moeda e símbolo antes/depois conforme metadata (`currencyPosition`).
403
- `inlineCurrencyRange` segue envelope adaptativo (`inlineAutoSize`) no chip e popover, com escala e resumo monetário formatados.
404
+ `inlineCurrencyRange` segue envelope adaptativo (`inlineAutoSize`) no chip e popover, com escala e resumo monetário formatados. No painel, o resumo completo é a leitura principal da faixa selecionada; os valores junto ao slider são usados apenas como orientação quando não duplicam a seleção ativa. `marks` materializa até três labels compactos e ativa ticks; `semanticBands` projeta faixas de significado no trilho; `distribution/rangeDistribution/histogram` continua sendo a camada para comparação com população real. Por padrão, alterações feitas no painel ficam em rascunho até `Aplicar`; `Cancelar`, `Esc` ou fechamento externo descartam o rascunho, e `Limpar` remove o filtro explicitamente. Labels, aria, `appearance`, `colorRole` e ícones dessas ações devem vir de `inlineOverlay.actions.*` e materializar tokens do tema. Quando `inlineOverlay.applyMode: "auto"` for explicitado, o slider comita durante a interação e a ação de cancelar deixa de ser exibida.
404
405
  `inlineEntityLookup` usa envelope adaptativo (`inlineAutoSize`) com faixa padrão maior para comportar `id + descrição`.
405
- `inlineRange` usa envelope adaptativo de largura (`inlineAutoSize`) no chip e no popover para evitar bloco fixo largo quando usado na barra compacta.
406
- `inlineDate` também usa envelope adaptativo (`inlineAutoSize`) e calcula a largura pelo valor exibido ou label do campo quando vazio.
407
- `inlineDateRange` segue o mesmo princípio (`inlineAutoSize`) e usa o resumo do período para calcular largura.
406
+ `inlineRange` usa envelope adaptativo de largura (`inlineAutoSize`) no chip e no popover para evitar bloco fixo largo quando usado na barra compacta. Por padrao, altera em modo `auto` para preservar filtros rápidos; com `inlineOverlay.applyMode: "explicit"`, slider, inputs e presets ficam em rascunho até `Aplicar`, enquanto `Cancelar`, `Esc` ou fechamento externo descartam o rascunho. Labels, aria, `appearance` e `colorRole` dos botoes devem vir de `inlineOverlay.actions.*` e materializar tokens do tema, nao CSS ad hoc.
407
+ `inlineRating` usa o mesmo contrato `inlineOverlay` para fluxos em que explorar estrelas, inputs ou presets nao deve alterar o filtro aplicado imediatamente. Em `applyMode: "explicit"`, o painel exibe `Aplicar`, `Cancelar` e `Limpar`; a escala visual acompanha o rascunho e o valor final so muda no commit.
408
+ `inlineDistanceRadius` usa o mesmo contrato `inlineOverlay` quando a decisao de UX exigir confirmacao: em `applyMode: "explicit"`, slider radial e presets ficam em rascunho ate `Aplicar`; `Cancelar`, `Esc` e fechamento externo descartam a alteracao. O modo default continua imediato para preservar filtros de raio rapidos.
409
+ `inlinePipelineStatus` usa `inlineOverlay` quando mudanças de etapa/status precisam ser revisadas antes de afetar o filtro aplicado. Em `applyMode: "explicit"`, cards, selecionar todos e limpar seleção alteram apenas o rascunho do painel; `Aplicar` comita, enquanto `Cancelar`, `Esc` e fechamento externo restauram a seleção anterior. Labels, aria, `appearance`, `colorRole` e ícones das ações finais devem vir de `inlineOverlay.actions.*`.
410
+ `inlineRelativePeriod` usa `inlineOverlay` quando presets temporais precisam ser explorados sem alterar imediatamente o filtro aplicado. Em `applyMode: "explicit"`, cards de período e progresso visual acompanham apenas o rascunho; `Aplicar` comita o preset, enquanto `Cancelar`, `Esc` e fechamento externo restauram a seleção anterior. Labels, aria, `appearance`, `colorRole` e ícones devem ser authorados em `inlineOverlay.actions.*`.
411
+
412
+ `inlineScorePriority` usa `inlineOverlay` para cenarios em que score, prioridade ou bandas de risco nao devem comitar durante a exploracao. Em `applyMode: "explicit"`, slider e chips de bandas ficam em rascunho ate `Aplicar`; `Cancelar`, `Esc` e fechamento externo restauram a selecao anterior. Os botoes devem ser authorados em `inlineOverlay.actions.*` para respeitar labels, aria, `appearance`, `colorRole` e tokens do tema.
413
+ `inlineColorLabel` usa `inlineOverlay` quando a seleção de etiquetas precisa ser revisada antes de alterar o filtro aplicado. Em `applyMode: "explicit"`, cards e badges alteram apenas o rascunho; `Aplicar` comita a seleção, enquanto `Cancelar`, `Esc` ou fechamento externo descartam a exploração.
414
+ `inlineSentiment` usa `inlineOverlay` quando a escolha visual de humor, polaridade ou satisfação precisa ser revisada antes de afetar o filtro aplicado. Em `applyMode: "explicit"`, cards e barra visual acompanham o rascunho; `Aplicar` comita e `Cancelar`, `Esc` ou fechamento externo descartam.
415
+ `inlineDate` também usa envelope adaptativo (`inlineAutoSize`) e calcula a largura pelo valor exibido ou label do campo quando vazio. Com `inlineOverlay.applyMode: "explicit"`, o calendário nativo exibe `Aplicar` e `Cancelar`; a data escolhida fica em rascunho até o commit, e labels/aria/`appearance`/`colorRole` vêm de `inlineOverlay.actions.*`.
416
+ `inlineDateRange` segue o mesmo princípio (`inlineAutoSize`) e usa o resumo do período para calcular largura. Em `inlineOverlay.applyMode: "explicit"`, o rodapé de `Aplicar` e `Cancelar` deve aparecer mesmo sem atalhos rápidos, para que a confirmação explícita não dependa da presença de presets.
408
417
  `inlineTime` usa envelope adaptativo (`inlineAutoSize`) e calcula a largura com base no horário exibido.
409
418
  No modo `inlineTimeMode: "auto"`:
410
419
 
@@ -419,11 +428,14 @@ Convenções importantes para contrato corporativo:
419
428
  - `{ "controlType": "inlineTime", "interval": 900 }` -> 900s (15 minutos)
420
429
  - `{ "controlType": "inlineTime", "interval": "15m" }` -> equivalente (recomendado por legibilidade)
421
430
  - para i18n do inline, use `inlineTexts.*` (`hourLabel`, `minuteLabel`, `secondLabel`, `emptyStateLabel`, labels aria).
422
- `inlineTimeRange` usa envelope adaptativo (`inlineAutoSize`) e calcula a largura pelo resumo `inicio - fim`.
431
+ `inlineTimeRange` usa envelope adaptativo (`inlineAutoSize`) e calcula a largura pelo resumo `inicio - fim`. Com `inlineOverlay.applyMode: "explicit"`, slider, inputs manuais e presets ficam em rascunho até `Aplicar`; `Cancelar`, `Esc` e fechamento externo restauram o valor confirmado anterior. Labels, aria, `appearance`, `colorRole` e ícones das ações finais devem vir de `inlineOverlay.actions.*`.
423
432
  `inlineTreeSelect` usa envelope adaptativo (`inlineAutoSize`) com faixa maior para rótulos hierárquicos.
424
- Para `inlineDateRange`, `inlineQuickPresetsApplyMode` define o contrato:
425
- - `auto`: preset aplica imediatamente e fecha overlay.
426
- - `confirm`: preset fica em rascunho no overlay; só `Aplicar` comita no valor final e `Cancelar` descarta.
433
+ Para `inlineDateRange`, o contrato compartilhado é `inlineOverlay.applyMode`:
434
+ - `auto`: preset ou calendário aplica imediatamente e fecha overlay quando a interação for conclusiva.
435
+ - `explicit`: preset ou calendário fica em rascunho no overlay; só `Aplicar` comita no valor final e `Cancelar` descarta.
436
+ - `inlineQuickPresetsApplyMode` continua como compatibilidade específica do date-range e é interpretado depois de `inlineOverlay.applyMode`.
437
+ - Labels, aria, `appearance` e `colorRole` dos botões `Aplicar` e `Cancelar` devem vir de `inlineOverlay.actions.*`; os campos `inlineQuickPresets*Label` são fallback legado.
438
+ - O trigger preenchido deve permanecer previsível em uso corporativo: clique no ícone, no texto ou no espaço interno da pill abre o calendário; clique no clear remove o valor e não abre o calendário.
427
439
 
428
440
  Exemplo rápido para `inlineRange` com presets automáticos:
429
441