@praxisui/dynamic-fields 9.0.0-beta.62 → 9.0.0-beta.63

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.
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "schemaVersion": "1.0.0",
3
- "generatedAt": "2026-07-09T14:19:11.232Z",
3
+ "generatedAt": "2026-07-09T15:50:30.837Z",
4
4
  "packageName": "@praxisui/dynamic-fields",
5
- "packageVersion": "9.0.0-beta.62",
5
+ "packageVersion": "9.0.0-beta.63",
6
6
  "sourceRegistry": "praxis-component-registry-ingestion",
7
7
  "sourceRegistryVersion": "1.0.0",
8
8
  "componentCount": 76,
@@ -11695,26 +11695,31 @@ class DynamicFieldLoaderDirective {
11695
11695
  }
11696
11696
  /** Cria o componente de campo dentro de um FieldShell e aplica metadados/controle */
11697
11697
  async createFieldComponent(field, index) {
11698
- this.dbg('[DFL] step: resolve component type', { name: field.name, controlType: field.controlType, index });
11699
- // Resolver tipo do componente
11700
- const componentType = await this.componentRegistry.getComponent(field.controlType);
11701
- if (!componentType) {
11702
- const userMessage = this.resolveDynamicFieldsMessage(this.dynamicFieldsI18n?.loader?.missingComponent, 'loader.missingComponent', 'Nenhum componente registrado para "{{controlType}}".', {
11703
- controlType: String(field.controlType ?? ''),
11704
- fieldName: field.name,
11705
- });
11706
- const technicalError = new Error(`[DynamicFieldLoader] Missing component for controlType '${field.controlType}' (field '${field.name}')`);
11707
- logger.error(technicalError.message, { userMessage });
11708
- this.reportRenderError('executeRendering', field.name, technicalError, false, {
11709
- code: 'component_missing',
11710
- userMessage,
11711
- context: {
11698
+ const shouldUsePurePresentationShell = this.presentationMode === true &&
11699
+ String(field.controlType ?? '').toLowerCase() !== 'avatar';
11700
+ let componentType = null;
11701
+ if (!shouldUsePurePresentationShell) {
11702
+ this.dbg('[DFL] step: resolve component type', { name: field.name, controlType: field.controlType, index });
11703
+ // Resolver tipo do componente
11704
+ componentType = await this.componentRegistry.getComponent(field.controlType);
11705
+ if (!componentType) {
11706
+ const userMessage = this.resolveDynamicFieldsMessage(this.dynamicFieldsI18n?.loader?.missingComponent, 'loader.missingComponent', 'Nenhum componente registrado para "{{controlType}}".', {
11712
11707
  controlType: String(field.controlType ?? ''),
11713
- index,
11714
- stage: 'componentRegistry.getComponent',
11715
- },
11716
- });
11717
- return null;
11708
+ fieldName: field.name,
11709
+ });
11710
+ const technicalError = new Error(`[DynamicFieldLoader] Missing component for controlType '${field.controlType}' (field '${field.name}')`);
11711
+ logger.error(technicalError.message, { userMessage });
11712
+ this.reportRenderError('executeRendering', field.name, technicalError, false, {
11713
+ code: 'component_missing',
11714
+ userMessage,
11715
+ context: {
11716
+ controlType: String(field.controlType ?? ''),
11717
+ index,
11718
+ stage: 'componentRegistry.getComponent',
11719
+ },
11720
+ });
11721
+ return null;
11722
+ }
11718
11723
  }
11719
11724
  this.dbg('[DFL] step: create shell start', { name: field.name });
11720
11725
  // Criar shell que irá conter o componente
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@praxisui/dynamic-fields",
3
- "version": "9.0.0-beta.62",
3
+ "version": "9.0.0-beta.63",
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-beta.62",
15
- "@praxisui/cron-builder": "^9.0.0-beta.62"
14
+ "@praxisui/core": "^9.0.0-beta.63",
15
+ "@praxisui/cron-builder": "^9.0.0-beta.63"
16
16
  },
17
17
  "dependencies": {
18
18
  "libphonenumber-js": "^1.12.41",