MetadataFormFieldComponent
Component to render a metadata form field within an object form. These forms are created to render and edit metadata of DMS objects. This component is used as a wrapper for the actual form element, which is defined by the formField input.
Component Metadata
Section titled “Component Metadata”Selector: yuv-metadata-form-field
Standalone: Yes
Inputs
Section titled “Inputs”formChangedSubject
Section titled “formChangedSubject”Type: Subject<ParentFormChangedEvent>
formField
Section titled “formField”Type: ObjectTypeField
Default Value: \{ alias: 'field' \}
Required: Yes
situation
Section titled “situation”Type: string | undefined
Default Value: Situation.EDIT
Form situation, if not set default will be ‘EDIT’
Properties
Section titled “Properties”context
Section titled “context”Type: unknown
Default Value: computed<MetadataFormFieldContext>(() => \{ const field = this.formField(); field.required = this.situation() !== Situation.SEARCH ? field.required : false; const label = this.#system.getLocalizedResource(${field.name}_label) || field.label || field.name; return \{ label, description: field.description, situation: this.situation() || Situation.EDIT, field, ctrl: this.#ngControl?.control || undefined, formChangedSubject: this.formChangedSubject() \}; \})
elementTemplate
Section titled “elementTemplate”Type: unknown
Default Value: computed<TemplateRef<any> | undefined>(() => \{ const field = this.formField(); // TODO: set readonly state based on ...????... schema? this.readonly = false; const templateByName = this.#registry.getElementTemplate(${this.#registry.NAME_PROPERTY_PREFIX}${field.name}, this.situation()); if (templateByName) \{ return templateByName; \} else \{ if (!field._internalType) \{ field._internalType = this.#system.getInternalFormElementType(field.propertyType); \} return this.#registry.getElementTemplate(field._internalType, this.situation()); \} \})
readonly
Section titled “readonly”Type: unknown
Default Value: false