From 457b219f2f0f94163dceed13d46d7061937daae3 Mon Sep 17 00:00:00 2001 From: Daniel Shuy <17351764+daniel-shuy@users.noreply.github.com> Date: Mon, 2 Mar 2026 11:46:19 +0800 Subject: [PATCH] angular-material: Remove EnumOption[] type from AutocompleteControlRenderer.options --- .../library/controls/autocomplete.renderer.ts | 29 +++++-------------- 1 file changed, 7 insertions(+), 22 deletions(-) diff --git a/packages/angular-material/src/library/controls/autocomplete.renderer.ts b/packages/angular-material/src/library/controls/autocomplete.renderer.ts index 32e19437e..d39e620ff 100644 --- a/packages/angular-material/src/library/controls/autocomplete.renderer.ts +++ b/packages/angular-material/src/library/controls/autocomplete.renderer.ts @@ -110,7 +110,7 @@ export class AutocompleteControlRenderer extends JsonFormsControl implements OnInit { - @Input() options?: EnumOption[] | string[]; + @Input() options?: string[]; valuesToTranslatedOptions?: Map; filteredOptions: Observable; shouldFilter: boolean; @@ -209,29 +209,14 @@ export class AutocompleteControlRenderer protected getOwnProps(): OwnPropsOfControl & OwnPropsOfEnum { return { ...super.getOwnProps(), - options: this.stringOptionsToEnumOptions(this.options), + options: this.options?.map((str) => { + return { + label: str, + value: str, + } satisfies EnumOption; + }), }; } - - /** - * For {@link options} input backwards compatibility - */ - protected stringOptionsToEnumOptions( - options: typeof this.options - ): EnumOption[] | undefined { - if (!options) { - return undefined; - } - - return options.every((item) => typeof item === 'string') - ? options.map((str) => { - return { - label: str, - value: str, - } satisfies EnumOption; - }) - : options; - } } export const enumControlTester: RankedTester = rankWith(2, isEnumControl);