@praxisui/dynamic-fields 9.0.0 → 9.0.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@praxisui/dynamic-fields",
3
- "version": "9.0.0",
3
+ "version": "9.0.2",
4
4
  "description": "Angular Material-based dynamic form fields for Praxis UI with lazy loading and metadata-driven rendering.",
5
5
  "peerDependencies": {
6
6
  "@angular/common": "^21.0.0",
@@ -11,8 +11,8 @@
11
11
  "@angular/platform-browser": "^21.0.0",
12
12
  "@angular/router": "^21.0.0",
13
13
  "rxjs": "^7.8.0",
14
- "@praxisui/core": "^9.0.0",
15
- "@praxisui/cron-builder": "^9.0.0"
14
+ "@praxisui/core": "^9.0.2",
15
+ "@praxisui/cron-builder": "^9.0.2"
16
16
  },
17
17
  "dependencies": {
18
18
  "libphonenumber-js": "^1.12.41",
@@ -21,8 +21,8 @@ source_of_truth:
21
21
  - "projects/praxis-dynamic-fields/src/lib/components/inline-entity-lookup/inline-entity-lookup.component.ts"
22
22
  - "projects/praxis-dynamic-fields/src/lib/components/material-async-select/material-async-select.component.ts"
23
23
  - "projects/praxis-core/src/lib/models/material-field-metadata.interface.ts"
24
- source_of_truth_last_verified: "2026-04-16"
25
- last_updated: "2026-04-16"
24
+ source_of_truth_last_verified: "2026-07-26"
25
+ last_updated: "2026-07-26"
26
26
  toc: true
27
27
  sidebar: true
28
28
  tags:
@@ -128,6 +128,9 @@ Este documento e a referencia canonica da API JSON de pdx-inline-entity-lookup.
128
128
  | `metadata.optionSource.display.secondaryPropertyPaths` | string[] | false | n/a | Active | Campos de subtitulo usados para diferenciar entidades parecidas. |
129
129
  | `metadata.optionSource.display.fields` | object[] | false | n/a | Active | Campos ricos semanticos exibidos na lista e no valor selecionado. Cada item aceita `key`, `propertyPath`, `label`, `icon`, `presentation`, `tone` e `format`. |
130
130
  | `metadata.optionSource.display.badgePropertyPaths` | string[] | false | n/a | Active | Campos publicados como badges/chips quando o backend tambem os materializa no payload de option. |
131
+ | `metadata.searchable` | boolean | false | `true` para fontes nao categoricas | Active | Materializa a acao acessivel de busca no sufixo e abre o dialogo governado sem inserir controles interativos no listbox do `MatSelect`. |
132
+ | `metadata.dialog` | object | false | configuracao derivada do campo | Active | Customiza titulo, tamanho, preview, colunas e acoes da busca governada. |
133
+ | `metadata.dialog.enabled` | boolean | false | herda `metadata.searchable` | Active | `false` desativa explicitamente a superficie de busca; `true` a habilita mesmo quando `searchable=false`. |
131
134
 
132
135
  ### Path audit
133
136
 
@@ -169,7 +172,9 @@ Nao ha paths experimentais confirmados no contrato publico desta revisao.
169
172
  | `metadata.optionSource.display` | object | false | n/a | contrato semantico de UX, nao CSS | Governanca de preset, uso, densidade, campos ricos, secundarios e badges do resultado. |
170
173
  | `metadata.resourcePath` | string | false | n/a | component-defined | Partial; verify per source_of_truth. |
171
174
  | `metadata.inlineAutoSize.*` | object | false | n/a | component-defined | Partial; verify per source_of_truth. |
172
- | `metadata.searchable` | boolean | false | n/a | component-defined | Partial; verify per source_of_truth. |
175
+ | `metadata.searchable` | boolean | false | `true` para fontes nao categoricas | boolean | Active; abre a busca governada por uma acao irma do `mat-select`. |
176
+ | `metadata.dialog` | object | false | derivado do campo | `LookupDialogMetadata` | Active; configura a busca avancada sem redefinir identidade ou option source. |
177
+ | `metadata.dialog.enabled` | boolean | false | herda `metadata.searchable` | boolean | Active; opt-out explicito quando `false`. |
173
178
 
174
179
  ### Input bindings (inbound data)
175
180
 
@@ -3,7 +3,7 @@ import { WritableSignal, InjectionToken, Provider, OnInit, OnDestroy, AfterViewI
3
3
  import { AbstractControl, ControlValueAccessor, NgControl, ValidationErrors, FormControl, FormGroup, FormArray, FormGroupDirective, NgForm } from '@angular/forms';
4
4
  import { Observable, BehaviorSubject, Subscription } from 'rxjs';
5
5
  import * as _praxisui_core from '@praxisui/core';
6
- import { ComponentMetadata, PraxisTextValue, PraxisI18nDictionary, PraxisI18nConfig, PraxisI18nMessageDescriptor, PraxisI18nService, FormFieldHelpDisplay, GlobalActionService, GlobalActionRef, OptionSourceMetadata, GenericCrudService, GlobalConfigService, OptionDTO, ComponentMetadataEditorialDescriptor, ComponentDocMeta, ComponentMetadataRegistry, FieldMetadata, MaterialButtonMetadata, FieldArrayConfig, MaterialInputMetadata, MaterialColorInputMetadata, MaterialDateInputMetadata, MaterialDatepickerMetadata, MaterialDateRangeMetadata, DateRangePreset, DateRangeShortcutPreset, StaticPresetResolutionOptions, StaticDateRangePreset, DateRangeValue, MaterialDatetimeLocalInputMetadata, MaterialEmailInputMetadata, MaterialTextareaMetadata, MaterialNumericMetadata, MaterialCurrencyMetadata, MaterialCpfCnpjMetadata, MaterialPriceRangeMetadata, MaterialMonthInputMetadata, MaterialPasswordMetadata, MaterialSearchInputMetadata, MaterialSelectMetadata, LookupFilterRequest, LookupFilteringMetadata, LookupSortOptionMetadata, LookupFilterDefinitionMetadata, MaterialEntityLookupMetadata, LookupStatusTone, EntityLookupResultState, EntityLookupResult, LookupDialogMetadata, LookupFilterOperator, LookupFilterFieldType, LookupResultColumnMetadata, MaterialAutocompleteMetadata, RangeSliderMark, RangeSliderSemanticTone, MaterialToggleMetadata, MaterialRangeSliderMetadata, RangeSliderValue, InlinePeriodRangeMetadata, FieldControlType, MaterialTimepickerMetadata, MaterialTimeRangeMetadata, MaterialTreeNode, MaterialTreeSelectMetadata, MaterialMultiSelectTreeMetadata, MaterialChipsMetadata, RangeSliderSemanticBand, MaterialSliderMetadata, MaterialPhoneMetadata, MaterialTimeInputMetadata, MaterialUrlInputMetadata, MaterialWeekInputMetadata, MaterialColorPickerMetadata, MaterialYearInputMetadata, CapabilityCatalog, ComponentAuthoringManifest, ManifestControlProfile } from '@praxisui/core';
6
+ import { ComponentMetadata, PraxisTextValue, PraxisI18nDictionary, PraxisI18nConfig, PraxisI18nMessageDescriptor, PraxisI18nService, FormFieldHelpDisplay, GlobalActionService, GlobalActionRef, OptionSourceMetadata, GenericCrudService, GlobalConfigService, OptionDTO, ComponentMetadataEditorialDescriptor, ComponentDocMeta, ComponentMetadataRegistry, FieldMetadata, MaterialButtonMetadata, FieldArrayConfig, MaterialInputMetadata, MaterialColorInputMetadata, MaterialDateInputMetadata, MaterialDatepickerMetadata, MaterialDateRangeMetadata, DateRangePreset, DateRangeShortcutPreset, StaticPresetResolutionOptions, StaticDateRangePreset, DateRangeValue, MaterialDatetimeLocalInputMetadata, MaterialEmailInputMetadata, MaterialTextareaMetadata, MaterialNumericMetadata, MaterialCurrencyMetadata, MaterialCpfCnpjMetadata, MaterialPriceRangeMetadata, MaterialMonthInputMetadata, MaterialPasswordMetadata, MaterialSearchInputMetadata, MaterialSelectMetadata, LookupFilterRequest, LookupFilteringMetadata, LookupSortOptionMetadata, LookupFilterDefinitionMetadata, LookupSearchStrategyMetadata, MaterialEntityLookupMetadata, LookupStatusTone, EntityLookupResultState, EntityLookupResult, LookupDialogMetadata, LookupFilterOperator, LookupFilterFieldType, LookupResultColumnMetadata, MaterialAutocompleteMetadata, RangeSliderMark, RangeSliderSemanticTone, MaterialToggleMetadata, MaterialRangeSliderMetadata, RangeSliderValue, InlinePeriodRangeMetadata, FieldControlType, MaterialTimepickerMetadata, MaterialTimeRangeMetadata, MaterialTreeNode, MaterialTreeSelectMetadata, MaterialMultiSelectTreeMetadata, MaterialChipsMetadata, RangeSliderSemanticBand, MaterialSliderMetadata, MaterialPhoneMetadata, MaterialTimeInputMetadata, MaterialUrlInputMetadata, MaterialWeekInputMetadata, MaterialColorPickerMetadata, MaterialYearInputMetadata, CapabilityCatalog, ComponentAuthoringManifest, ManifestControlProfile } from '@praxisui/core';
7
7
  import { Router } from '@angular/router';
8
8
  import { MatDialog, MatDialogRef } from '@angular/material/dialog';
9
9
  import { MatSelect } from '@angular/material/select';
@@ -2730,6 +2730,7 @@ declare class MaterialAsyncSelectComponent extends SimpleBaseSelectComponent {
2730
2730
  readonly termControl: FormControl<unknown>;
2731
2731
  readonly activeLookupFilters: _angular_core.WritableSignal<LookupFilterRequest[]>;
2732
2732
  readonly selectedLookupSortKey: _angular_core.WritableSignal<string | null>;
2733
+ readonly selectedLookupSearchStrategyKey: _angular_core.WritableSignal<string | null>;
2733
2734
  protected readonly remoteTotalElements: _angular_core.WritableSignal<number | null>;
2734
2735
  private readonly queryTerm;
2735
2736
  private readonly store;
@@ -2767,12 +2768,18 @@ declare class MaterialAsyncSelectComponent extends SimpleBaseSelectComponent {
2767
2768
  protected currentLookupFiltering(): LookupFilteringMetadata | null;
2768
2769
  lookupSortOptions(): LookupSortOptionMetadata[];
2769
2770
  lookupFilterDefinitions(): LookupFilterDefinitionMetadata[];
2771
+ lookupSearchStrategies(): LookupSearchStrategyMetadata[];
2770
2772
  protected initializeLookupFilteringState(): void;
2771
2773
  protected buildDefaultLookupFilters(filtering: LookupFilteringMetadata): LookupFilterRequest[];
2772
2774
  protected normalizeLookupFilterValue(operator: LookupFilterRequest['operator'], values: unknown[]): unknown;
2773
2775
  hasLookupFiltering(): boolean;
2774
2776
  hasLookupSortOptions(): boolean;
2775
2777
  hasMultipleLookupSortOptions(): boolean;
2778
+ hasMultipleLookupSearchStrategies(): boolean;
2779
+ lookupSearchStrategySelectValue(): string;
2780
+ setLookupSearchStrategyKey(strategyKey: string | null): void;
2781
+ lookupSearchStrategyLabelText(): string;
2782
+ lookupSearchStrategyDefaultOptionText(): string;
2776
2783
  hasActiveLookupFilters(): boolean;
2777
2784
  lookupFilterForField(field: string): LookupFilterRequest | undefined;
2778
2785
  setLookupSortKey(sortKey: string | null): void;
@@ -3075,7 +3082,6 @@ declare class InlineEntityLookupComponent extends MaterialAsyncSelectComponent {
3075
3082
  clearAllFiltersText(): string;
3076
3083
  currentDialogMetadata(): LookupDialogMetadata | null;
3077
3084
  dialogEnabled(): boolean;
3078
- showDialogOption(): boolean;
3079
3085
  dialogOpenActionText(): string;
3080
3086
  dialogOpenSupportingText(): string;
3081
3087
  dialogContextSupportingText(hasActiveFilters: boolean): string;
@@ -3204,6 +3210,15 @@ declare class EntityLookupDialogComponent implements AfterViewInit {
3204
3210
  dialogFiltersAriaLabel(): string;
3205
3211
  dialogPreviewAriaLabel(): string;
3206
3212
  showSortControl(): boolean;
3213
+ showSearchStrategyControl(): boolean;
3214
+ searchStrategies(): _praxisui_core.LookupSearchStrategyMetadata[];
3215
+ trackLookupSearchStrategy(index: number, strategy: {
3216
+ key?: string;
3217
+ }): string;
3218
+ searchStrategyValue(): string;
3219
+ onSearchStrategyChange(event: Event): void;
3220
+ searchStrategyLabel(): string;
3221
+ searchStrategyDefaultLabel(): string;
3207
3222
  sortOptions(): _praxisui_core.LookupSortOptionMetadata[];
3208
3223
  trackLookupSortOption(index: number, option: {
3209
3224
  key?: string;