diff --git a/.changeset/proud-forks-buy.md b/.changeset/proud-forks-buy.md new file mode 100644 index 0000000000..558d5d9078 --- /dev/null +++ b/.changeset/proud-forks-buy.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-scaffolder': patch +--- + +The `ui:options` for `OwnedEntityPicker` field are now passed to `EntityPicker`. This allows you to use any `ui:options` which `EntityPicker` accepts in the `OwnedEntityPicker` field including `allowArbitraryValues` and `defaultNamespace`. diff --git a/plugins/scaffolder/src/components/fields/OwnedEntityPicker/OwnedEntityPicker.tsx b/plugins/scaffolder/src/components/fields/OwnedEntityPicker/OwnedEntityPicker.tsx index 06fdf17824..63e21f5dc6 100644 --- a/plugins/scaffolder/src/components/fields/OwnedEntityPicker/OwnedEntityPicker.tsx +++ b/plugins/scaffolder/src/components/fields/OwnedEntityPicker/OwnedEntityPicker.tsx @@ -94,7 +94,7 @@ function buildEntityPickerUISchema( // Note: This is typed to avoid es-lint rule TS2698 const uiOptions: EntityPickerProps['uiSchema']['ui:options'] = uiSchema?.['ui:options'] || {}; - const allowedKinds = uiOptions.allowedKinds; + const { allowedKinds, ...extraOptions } = uiOptions; const catalogFilter = asArray(uiOptions.catalogFilter).map(e => ({ ...e, @@ -104,6 +104,7 @@ function buildEntityPickerUISchema( return { 'ui:options': { + ...extraOptions, catalogFilter, }, };