Fix select theming, add object field
This commit is contained in:
@@ -17,9 +17,11 @@ import {
|
||||
MapMessage,
|
||||
MessageConfiguration,
|
||||
MessageTypeEnum,
|
||||
ObjectMessage,
|
||||
} from '../../model/proto-message.model';
|
||||
import { ListFieldComponent } from '../list-field/list-field.component';
|
||||
import { MapFieldComponent } from '../map-field/map-field.component';
|
||||
import { ObjectFieldComponent } from '../object-field/object-field.component';
|
||||
|
||||
@Component({
|
||||
selector: 'app-proto-field',
|
||||
@@ -33,6 +35,7 @@ import { MapFieldComponent } from '../map-field/map-field.component';
|
||||
MatFormFieldModule,
|
||||
MatSelectModule,
|
||||
MatInputModule,
|
||||
ObjectFieldComponent,
|
||||
],
|
||||
template: `@switch (configuration().type) { @case (MessageTypeEnum.String) {
|
||||
<mat-form-field>
|
||||
@@ -71,7 +74,13 @@ import { MapFieldComponent } from '../map-field/map-field.component';
|
||||
[(values)]="value"
|
||||
[configuration]="mapConfiguration()"
|
||||
></app-map-field>
|
||||
} @case (MessageTypeEnum.Object) {} @case (MessageTypeEnum.Raw) {}}`,
|
||||
} @case (MessageTypeEnum.Object) {
|
||||
<app-object-field
|
||||
[label]="label()"
|
||||
[(values)]="value"
|
||||
[configuration]="objectConfiguration()"
|
||||
></app-object-field>
|
||||
} @case (MessageTypeEnum.Raw) {}}`,
|
||||
styleUrl: './proto-field.component.scss',
|
||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||
})
|
||||
@@ -92,5 +101,9 @@ export class ProtoFieldComponent {
|
||||
() => this.configuration() as MapMessage
|
||||
);
|
||||
|
||||
protected objectConfiguration = computed(
|
||||
() => this.configuration() as ObjectMessage
|
||||
);
|
||||
|
||||
protected readonly MessageTypeEnum = MessageTypeEnum;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user