Skip to content

✨ use the Linkit user picker to add group members - #164

Merged
zccz14 merged 1 commit into
mainfrom
feat/manage-panel-member-picker
Oct 9, 2026
Merged

zccz14 merged 1 commit into
mainfrom
feat/manage-panel-member-picker

Conversation

@zccz14

@zccz14 zccz14 commented Oct 9, 2026

Copy link
Copy Markdown
Owner

What

The group manage panel adds members through the controlled LinkitUserPicker instead of a free-text username field:

  • Controlled multi-select — LinkitUserPicker with multiple + value: string[] / onValueChange; each selected user ID posts straight to POST /api/conversations/{id}/members, dropping the username→profile lookup step.
  • Picker search — matches username, UUID or private note, replacing the exact-username input; rows show the note name, username and full user ID.
  • Locales — the form reuses group.membersPlaceholder ("Search username, UUID or note" / "搜索用户名、UUID 或备注"); the unused conversation.memberPlaceholder key is removed from en/zh.
  • Unchanged — owner-only removal and its hint, the "add your Bot" list, and all server-side membership rules stay as delivered in ✨ let any group member add users while only the group owner removes members #163.

Release

  • bump the crate to 0.1.101 (tag-driven release)

Complexity

  • Net simplification: the add flow loses its two-step lookup mutation and free-text state; the picker owns search and selection. One locale key removed, none added.

Verification

  • web: npm ci && npm run check — 51 tests pass, including the rewritten source-contract tests ("member adding uses the controlled multi user picker", "only the owner removes members"); typecheck, eslint, build, portal-layering all pass.
  • packages/linkit-react-components: npm ci && npm run typecheck && npm test && npm run build && npm run pack:check — 56 tests pass.
  • cargo fmt --check + cargo clippy --all-targets --all-features --locked -- -D warnings — clean (no Rust source changes in this PR).

Replace the free-text username field in the group manage panel with the controlled multiple LinkitUserPicker; the selected user IDs post straight to the membership endpoint. Drop the unused conversation.memberPlaceholder locale key and bump to 0.1.101.
@zccz14
zccz14 enabled auto-merge (squash) October 9, 2026 19:04
@zccz14
zccz14 merged commit 6f4593d into main Oct 9, 2026
2 checks passed
@zccz14
zccz14 deleted the feat/manage-panel-member-picker branch October 9, 2026 19:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant