Skip to content

Wire only meeting participant invites on schedule modal [WPB-25056] - #21643

Merged
thisisamir98 merged 22 commits into
devfrom
wire-only-meeting-participants
Jul 6, 2026
Merged

Wire only meeting participant invites on schedule modal [WPB-25056]#21643
thisisamir98 merged 22 commits into
devfrom
wire-only-meeting-participants

Conversation

@thisisamir98

@thisisamir98 thisisamir98 commented Jun 24, 2026

Copy link
Copy Markdown
Collaborator
TaskWPB-25056 [Web] Schedule a meeting: participants (Wire users)

Use contact search with remote lookup and showAllProvidedUsers, drop edit prefill email placeholders, baseline invitation diffs on resolved emails only, and surface named ParticipantMissingEmailError messages via i18n.

Use contact search with remote lookup and showAllProvidedUsers, drop edit prefill email placeholders, baseline invitation diffs on resolved emails only, and surface named ParticipantMissingEmailError messages via i18n.
@thisisamir98 thisisamir98 changed the title Wire-only meeting participant invites on schedule modal. Wire-only meeting participant invites on schedule modal [WPB-25056] Jun 24, 2026
@thisisamir98 thisisamir98 changed the title Wire-only meeting participant invites on schedule modal [WPB-25056] Wire only meeting participant invites on schedule modal [WPB-25056] Jun 24, 2026
@thisisamir98
thisisamir98 requested a review from ikotarac as a code owner June 29, 2026 11:39
M1 adds and removes schedule-meeting participants via ConversationRepository on the meeting's qualified_conversation, with metadata-only meetings API calls and no webapp invitation endpoint usage.
ConversationRepository is not registered in the tsyringe container, which caused edit meeting to throw at runtime.
Comment thread apps/webapp/src/script/components/Meeting/useEditMeeting.ts Outdated
Meetings now sync Wire participants via conversation membership only.
Replace useMeetingsList with a createMeetingStore factory and MeetingStoreProvider so list state lives at the meetings feature boundary.
Colocate safe* methods with their wrapped APIs, deprecate direct throws from meetings code paths, and add establishMeetingConversation for MLS shell setup without event injection.
Wire meeting submit through Task-based sync and the meeting store so create/update establishes MLS groups, syncs participants, and refreshes the list.
After a successful schedule or update, surface failedToAdd via an acknowledge dialog reusing existing i18n keys.
Comment thread apps/webapp/src/script/components/Meeting/meetingStore/createMeetingStore.ts Outdated
Comment thread apps/webapp/src/script/components/Meeting/meetingStore/createMeetingStore.ts Outdated
Comment thread apps/webapp/src/script/repositories/conversation/ConversationRepository.ts Outdated
Establish MLS only on create and return partial add failures for the UI.
On update, add new participants then remove unselected ones without
attempting to establish broken conversations.
The previous wrapper around addUsers() could still resolve successfully
when participants were not added. safeAddUsers now calls the MLS core
service directly and returns partial failures in the Task value channel,
matching establishMeetingConversation for the meeting update flow.
Apply nx format:write fixes so lint:other Prettier check passes in CI.
When meeting metadata is saved but participant sync fails, the submit
hook now refreshes the list before showing the error so the UI stays in
sync with the server.
LoadMeetingsListResult now includes hasLoadError on success. Update the
empty-list test expectation so it matches the current return shape.
CI lint failed because the test file was not formatted according to project Prettier rules.
@sonarqubecloud

sonarqubecloud Bot commented Jul 6, 2026

Copy link
Copy Markdown

@thisisamir98
thisisamir98 added this pull request to the merge queue Jul 6, 2026
Merged via the queue into dev with commit 26fc783 Jul 6, 2026
18 checks passed
@thisisamir98
thisisamir98 deleted the wire-only-meeting-participants branch July 6, 2026 14:04
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.

2 participants