/** * 管理员账号变更后,同步父级全局用户目录(App allUsers / localStorage)。 * 若漏接 onRefreshUsers,立项成员候选会看不到新开通账号(UI-01 实战缺陷)。 */ export type ParentUserDirectoryRefresh = () => void | Promise; /** * 先刷新模态内部列表,再强制调用父级 onRefreshUsers。 * onRefreshUsers 缺失或抛错时必须让调用方可见,禁止静默成功。 */ export async function syncAdminUserDirectories(params: { reloadLocalUsers: () => Promise; onRefreshUsers?: ParentUserDirectoryRefresh; }): Promise { await params.reloadLocalUsers(); if (!params.onRefreshUsers) { throw new Error( 'onRefreshUsers 未绑定:全局用户目录不会更新,立项成员候选可能缺少新开通账号', ); } await Promise.resolve(params.onRefreshUsers()); }