diff --git a/packages/ui-default/components/autocomplete/components/UserSelectAutoComplete.tsx b/packages/ui-default/components/autocomplete/components/UserSelectAutoComplete.tsx index 04d50f0d8..788355117 100644 --- a/packages/ui-default/components/autocomplete/components/UserSelectAutoComplete.tsx +++ b/packages/ui-default/components/autocomplete/components/UserSelectAutoComplete.tsx @@ -4,14 +4,14 @@ import PropTypes from 'prop-types'; import { forwardRef } from 'react'; import { api } from 'vj/utils'; -const UserSelectAutoComplete = forwardRef, AutoCompleteProps>((props, ref) => ( +const UserSelectAutoComplete = forwardRef, AutoCompleteProps & { byId?: boolean }>((props, ref) => ( ref={ref as any} cacheKey="user" queryItems={(query) => api('users', { search: query }, ['_id', 'uname', 'displayName', 'avatarUrl'])} fetchItems={(ids) => api('users', { auto: ids }, ['_id', 'uname', 'displayName'])} itemText={(user) => user.uname + (user.displayName ? ` (${user.displayName})` : '')} - itemKey={(user) => ((props.multi || /^[+-]?\d+$/.test(user.uname.trim())) ? user._id.toString() : user.uname)} + itemKey={(user) => ((props.multi || props.byId || /^[+-]?\d+$/.test(user.uname.trim())) ? user._id.toString() : user.uname)} renderItem={(user) => (
diff --git a/packages/ui-default/components/dialog/index.tsx b/packages/ui-default/components/dialog/index.tsx index 5e91e1e94..0ac1e3bdd 100644 --- a/packages/ui-default/components/dialog/index.tsx +++ b/packages/ui-default/components/dialog/index.tsx @@ -150,8 +150,9 @@ export async function prompt(title: string, fields: Record : field.type === 'user' ? setValues({ ...values, [name]: e })} + data-autofocus={field.autofocus} selectedKeys={values[name] ? [values[name].toString()] : []} + onChange={(e) => setValues({ ...values, [name]: +e })} + byId /> :