From 5c865668d186abe41ef2a56e29a3a67be9293bca Mon Sep 17 00:00:00 2001 From: Michael Lustig Date: Tue, 22 Oct 2024 17:19:04 -0400 Subject: [PATCH] feat: Add Dependency Control Pattern --- .../joinGroup/joinGroup.machine.test.ts | 228 +++++ .../joinGroup/joinGroup.machine.ts | 806 ++++++++++++++++++ features/GroupInvites/joinGroup/joinGroup.md | 46 + .../joinGroup/joinGroup.screen.logic.png | Bin 0 -> 245436 bytes features/groupJoin.proposal.md | 104 +++ jest.config.ts | 115 +++ jest.setup.ts | 9 +- package.json | 16 +- yarn.lock | 76 ++ 9 files changed, 1386 insertions(+), 14 deletions(-) create mode 100644 features/GroupInvites/joinGroup/joinGroup.machine.test.ts create mode 100644 features/GroupInvites/joinGroup/joinGroup.machine.ts create mode 100644 features/GroupInvites/joinGroup/joinGroup.md create mode 100644 features/GroupInvites/joinGroup/joinGroup.screen.logic.png create mode 100644 features/groupJoin.proposal.md create mode 100644 jest.config.ts diff --git a/features/GroupInvites/joinGroup/joinGroup.machine.test.ts b/features/GroupInvites/joinGroup/joinGroup.machine.test.ts new file mode 100644 index 000000000..e9e517dda --- /dev/null +++ b/features/GroupInvites/joinGroup/joinGroup.machine.test.ts @@ -0,0 +1,228 @@ +import { createActor, waitFor } from "xstate"; + +import { JoinGroupClient } from "./JoinGroup.client"; +import { joinGroupMachineLogic } from "./joinGroup.machine"; +import { Controlled } from "../../../dependencies/Environment/Environment"; +import { GroupInvite } from "@utils/api.types"; + +jest.setTimeout(1); + +describe("Joining a Group from an Invite", () => { + let OriginalCurrent: typeof Controlled; + beforeEach(() => { + OriginalCurrent = { ...Controlled }; + }); + + afterEach(() => { + Object.entries(OriginalCurrent).forEach(([key, value]) => { + // todo fix this any crap + Controlled[key as keyof typeof Controlled] = value as any; + }); + }); + + it("Should Successfully allow an Invited user to join with a valid group invite", async () => { + const newlyInvitedGroupId = "groupIdAbc"; + let navigateToGroupPayload: any = null; + const navigateToGroupScreenSpy = jest.fn((payload) => { + navigateToGroupPayload = payload; + }); + Controlled.joinGroupClient = + JoinGroupClient.userNotAMemberOfGroupWithId(newlyInvitedGroupId); + + const input = { groupInviteId: "irrelevant", account: "irrelevant" }; + const joinGroupActor = createActor( + joinGroupMachineLogic.provide({ + actions: { + navigateToGroupScreen: navigateToGroupScreenSpy, + }, + }), + { + input, + } + ).start(); + + expect(joinGroupActor.getSnapshot().value).toBe( + "Loading Group Invite Metadata" + ); + + await waitFor(joinGroupActor, (state) => + state.matches("Loading Initially Joined Groups") + ); + + expect( + joinGroupActor.getSnapshot().context.groupInviteMetadata + ).toBeDefined(); + + await waitFor(joinGroupActor, (state) => + state.matches("Waiting For User Action") + ); + + joinGroupActor.send({ type: "user.didTapJoinGroup" }); + expect(joinGroupActor.getSnapshot().value).toBe("Attempting to Join Group"); + + Controlled.joinGroupClient = + JoinGroupClient.userAMemberOfGroupWithId(newlyInvitedGroupId); + + // Wait for join attempt to complete + await waitFor(joinGroupActor, (state) => + state.matches("Determining Newly Joined Group") + ); + + await waitFor(joinGroupActor, (state) => + state.matches("Providing User Consent to Join Group") + ); + + await waitFor(joinGroupActor, (state) => state.matches("Refreshing Group")); + + await waitFor(joinGroupActor, (state) => + state.matches("User Joined Group") + ); + + expect(navigateToGroupScreenSpy).toHaveBeenCalledTimes(1); + expect(navigateToGroupPayload.context.groupInviteMetadata.groupId).toBe( + newlyInvitedGroupId + ); + }); + + it("Should transition to 'User Was Already a Member of Group Prior to Clicking Join Link' if the user has already joined the group before user action", async () => { + const GroupIdUserWasAlreadyAMemberOf = "AwesomeSupercoolGroupId"; + let navigateToGroupPayload: any = null; + const navigateToGroupScreenSpy = jest.fn((payload) => { + navigateToGroupPayload = payload; + }); + Controlled.joinGroupClient = JoinGroupClient.userAMemberOfGroupWithId( + GroupIdUserWasAlreadyAMemberOf + ); + + const input = { groupInviteId: "valid-invite-id", account: "0x123" }; + const joinGroupActor = createActor( + joinGroupMachineLogic.provide({ + actions: { + navigateToGroupScreen: navigateToGroupScreenSpy, + }, + }), + { + input, + } + ).start(); + + // Initial state + expect(joinGroupActor.getSnapshot().value).toBe( + "Loading Group Invite Metadata" + ); + + await waitFor(joinGroupActor, (state) => + state.matches("Loading Initially Joined Groups") + ); + + await waitFor(joinGroupActor, (state) => + state.matches( + "User Was Already a Member of Group Prior to Clicking Join Link" + ) + ); + + joinGroupActor.send({ type: "user.didTapOpenConversation" }); + + expect(navigateToGroupScreenSpy).toHaveBeenCalledTimes(1); + expect(navigateToGroupPayload.context.groupInviteMetadata.groupId).toBe( + GroupIdUserWasAlreadyAMemberOf + ); + }); + + it("It should transition to 'User Has Been Blocked From Group' if User was blocked from group", async () => { + const blockedGroupId = "groupIdAbc"; + let navigateToGroupPayload: any = null; + const navigateToGroupScreenSpy = jest.fn((payload) => { + navigateToGroupPayload = payload; + }); + Controlled.joinGroupClient = + JoinGroupClient.userBlockedFromGroupWithId(blockedGroupId); + + const input = { groupInviteId: "irrelevant", account: "irrelevant" }; + const joinGroupActor = createActor( + joinGroupMachineLogic.provide({ + actions: { + navigateToGroupScreen: navigateToGroupScreenSpy, + }, + }), + { + input, + } + ).start(); + + // Initial state + expect(joinGroupActor.getSnapshot().value).toBe( + "Loading Group Invite Metadata" + ); + + // Wait for metadata to load + await waitFor(joinGroupActor, (state) => + state.matches("Loading Initially Joined Groups") + ); + + await waitFor(joinGroupActor, (state) => + state.matches("User Has Been Blocked From Group") + ); + }); + + it("Should transition to Attempting to Join Group Timed Out if the attempt times out", async () => { + jest.useFakeTimers(); + const newlyInvitedGroupId = "groupIdAbc"; + let navigateToGroupPayload: any = null; + const navigateToGroupScreenSpy = jest.fn((payload) => { + navigateToGroupPayload = payload; + }); + Controlled.joinGroupClient = + JoinGroupClient.userJoinGroupTimeout(newlyInvitedGroupId); + + const input = { groupInviteId: "irrelevant", account: "irrelevant" }; + const joinGroupActor = createActor( + joinGroupMachineLogic.provide({ + actions: { + navigateToGroupScreen: navigateToGroupScreenSpy, + }, + }), + { + input, + } + ).start(); + + // Initial state + expect(joinGroupActor.getSnapshot().value).toBe( + "Loading Group Invite Metadata" + ); + + // Wait for metadata to load + await waitFor(joinGroupActor, (state) => + state.matches("Loading Initially Joined Groups") + ); + + await waitFor( + joinGroupActor, + (state) => !state.matches("Loading Initially Joined Groups") + ); + + expect( + joinGroupActor.getSnapshot().context.groupInviteMetadata + ).toBeDefined(); + + await waitFor(joinGroupActor, (state) => + state.matches("Waiting For User Action") + ); + + // User taps join group + joinGroupActor.send({ type: "user.didTapJoinGroup" }); + expect(joinGroupActor.getSnapshot().value).toBe("Attempting to Join Group"); + + jest.advanceTimersByTime(2500); + jest.advanceTimersByTime(2500); + + // Wait for join attempt to complete + await waitFor(joinGroupActor, (state) => + state.matches("Attempting to Join Group Timed Out") + ); + expect(navigateToGroupPayload).toBeNull(); + expect(navigateToGroupScreenSpy).not.toHaveBeenCalled(); + jest.useRealTimers(); + }); +}); diff --git a/features/GroupInvites/joinGroup/joinGroup.machine.ts b/features/GroupInvites/joinGroup/joinGroup.machine.ts new file mode 100644 index 000000000..984ea5a57 --- /dev/null +++ b/features/GroupInvites/joinGroup/joinGroup.machine.ts @@ -0,0 +1,806 @@ +/// Shared Diagram: https://stately.ai/registry/editor/9e6921a4-4b05-4277-96c4-cb4d4e60680a?machineId=dbb1249d-7715-4b1f-8fb7-e476a116272a +/// Figma: TODO +import { GroupJoinRequestStatus } from "@utils/api"; +import { GroupInvite } from "@utils/api.types"; +import { GroupData, GroupsDataEntity } from "@utils/xmtpRN/client.types"; +import { assign, fromPromise, log, setup } from "xstate"; + +import { AllowGroupProps } from "./JoinGroup.client"; +import { JoinGroupResult, JoinGroupResultType } from "./joinGroup.types"; +import { Controlled } from "../../../dependencies/Environment/Environment"; + +type JoinGroupMachineEvents = + | { type: "user.didTapJoinGroup" } + | { type: "user.didTapOpenConversation" }; + +type JoinGroupMachineErrorType = + | "fetchGroupInviteError" + | "fetchGroupsByAccountError" + | "attemptToJoinGroupError" + | "provideUserConsentToJoinGroupError" + | "refreshGroupError"; + +export type JoinGroupMachineContext = { + // Context + /** User's currently active account */ + account: string; + /** Group invite metadata, includes info such as group name, group ID, etc */ + groupInviteMetadata?: GroupInvite; + /** Contains a snapshot of the groups a user was a member of prior to + * attempting to join this group from the Deeplink */ + groupsBeforeJoinRequestAccepted?: GroupsDataEntity; + /** The group that the user has been invited to join */ + invitedGroup?: GroupData; + /** The status of the group join request (accepted, rejected, pending) */ + joinStatus: GroupJoinRequestStatus; + + // From Input + /** The ID of the group invite - used to fetch the metadata */ + groupInviteId: string; + error?: { type: JoinGroupMachineErrorType; payload: string }; +}; + +type JoinGroupMachineInput = { + groupInviteId: string; + account: string; +}; + +type JoinGroupMachineTags = "loading" | "polling" | "error"; + +export const joinGroupMachineLogic = setup({ + types: { + events: {} as JoinGroupMachineEvents, + context: {} as JoinGroupMachineContext, + input: {} as JoinGroupMachineInput, + tags: {} as JoinGroupMachineTags, + }, + + actors: { + fetchGroupInviteActorLogic: fromPromise< + GroupInvite, + { account: string; groupInviteId: string } + >(async ({ input }) => { + const { groupInviteId } = input; + const groupInvite = + await Controlled.joinGroupClient.fetchGroupInvite(groupInviteId); + return groupInvite; + }), + + fetchGroupsByAccountActorLogic: fromPromise< + GroupsDataEntity, + { account: string } + >(async ({ input }) => { + const { account } = input; + const groups = + await Controlled.joinGroupClient.fetchGroupsByAccount(account); + return groups; + }), + + attemptToJoinGroupActorLogic: fromPromise< + JoinGroupResult, + { account: string; groupInviteId: string } + >(async ({ input }) => { + const { account, groupInviteId } = input; + const result = await Controlled.joinGroupClient.attemptToJoinGroup( + account, + groupInviteId + ); + return result; + }), + + provideUserConsentToJoinGroup: fromPromise< + void, + { account: string; group: GroupData } + >(async ({ input }) => { + const { account, group } = input; + const allowGroupProps: AllowGroupProps = { + account, + options: { + includeCreator: false, + includeAddedBy: false, + }, + group, + }; + return await Controlled.joinGroupClient.allowGroup(allowGroupProps); + }), + + refreshGroup: fromPromise( + async ({ input }) => { + const { account, topic } = input; + return await Controlled.joinGroupClient.refreshGroup(account, topic); + } + ), + }, + + actions: { + saveGroupInviteMetadata: assign({ + groupInviteMetadata: ( + _, + params: { groupInviteMetadata: GroupInvite } + ) => { + return params.groupInviteMetadata; + }, + }), + + saveError: assign({ + error: ( + _, + params: { error: { type: JoinGroupMachineErrorType; payload: string } } + ) => { + return params.error; + }, + }), + + navigateToGroupScreen: log( + (_, params: { topic: string }) => + `[navigateToGroupScreen] Navigating to group screen with topic: ${params.topic}` + ), + + saveGroupsBeforeJoinAttempt: assign({ + groupsBeforeJoinRequestAccepted: ( + _, + params: { groupsBeforeJoinRequestAccepted: GroupsDataEntity } + ) => { + return params.groupsBeforeJoinRequestAccepted; + }, + }), + + saveNewGroup: assign({ + invitedGroup: (_, params: { invitedGroup?: GroupData }) => { + return params.invitedGroup; + }, + }), + + saveGroupJoinStatus: assign({ + joinStatus: (_, params: { joinStatus: GroupJoinRequestStatus }) => { + return params.joinStatus; + }, + }), + }, + + guards: { + isGroupJoinRequestType: ( + _, + params: { + groupJoinRequestEventType: JoinGroupResultType; + expectedType: JoinGroupResultType; + } + ) => params.groupJoinRequestEventType === params.expectedType, + + hasGroupIdInMetadata: (_, params: { groupInviteMetadata: GroupInvite }) => { + const result = params.groupInviteMetadata.groupId !== undefined; + return result; + }, + + /** + * + * @param _ I need to refactor this to say the positive case + * where user is a member of group. + * the problem occurs because of all of these potentials for things + * to be undefined... + * todo: userIsAMemberOfGroup + * @param params + * @returns + */ + userHasAlreadyJoinedGroup: ( + _, + params: { invitedGroup: GroupData | undefined } + ) => { + const result = params.invitedGroup === undefined; + return result; + }, + + hasUserNotBeenBlocked: ( + _, + params: { invitedGroup: GroupData | undefined } + ) => { + const invitedGroup: GroupData | undefined = params.invitedGroup; + + const isNotBlocked = invitedGroup?.isGroupActive === true; + + if (invitedGroup === undefined) { + // If the invited group is undefined, we can't + // determine if the user has been blocked or not. + // We'll be able to do so later in the process. + return true; + } else if (isNotBlocked) { + return true; + } + + return false; + }, + + isUserInGroup: ( + _, + params: { + invitedGroupId: string | undefined; + groups: GroupsDataEntity | undefined; + } + ) => { + const { invitedGroupId, groups } = params; + if (invitedGroupId === undefined || groups === undefined) { + return false; + } + + const invitedGroup: GroupData | undefined = groups.byId[invitedGroupId]; + const userHasNotBeenBlocked = invitedGroup?.isGroupActive === true; + const userIsInGroup = userHasNotBeenBlocked && invitedGroup !== undefined; + return userIsInGroup; + }, + }, +}).createMachine({ + /** @xstate-layout N4IgpgJg5mDOIC5QCsD2BLAdgcQE6oFcAHAWQEMBjACyzADoAZVMiLKAAj0KPYElMAbugAuYdiTDCWZKQGIIqTPSwDUAa3oAzSdS7F+Q0QEEKw1LiZR0FANoAGALqJQRVLBHpFzkAA9EAVgBmQLoATgAOcNCAJgAWaP9-aIA2OwB2ABoQAE9EaLsARjoEuxSC2ILQwtj-AF9arLQsPVJKGiVGZlZMDha+QRExCSkIGTJZMFx8XDoiABsZTXMAWzptYV18fQHjU3NLa3snJBBXd2FPTG8-BCCQiKi4hKTUzJzECLCCgrTfgv9krFAr96o0MDgtq1qLROiw2P0PGQ5nNsuwAFLgyCcSGweSKZSCdT0OZdNj8RHI7IY2gQFqwI7eM4eLwnG4FfLhOh2ZLBdnhZJVUKBZJZXK3Qp0ZJpAGVUJBcK-NKgkBNCHccjQjpMOE9BEXJEo9GYiDY7i4hQdFREugknVQcn6ynUpS0nE2ArHFxuZlXVmIdl2Tnc3nRfmC4WivISkplCpVcqJZWqloa9r0bXdDgO9AG1HOrF0iZTcyzBbCJa4Va2zPZ3P511mhknJkXFmgNkcrk8wJ8gV2IUi94IcLRLl2QLhbmhNIRaLfaJJ8EptowgDCVDAFDU7AAqrBJqbiEasOwAMpSYQEWDsABCYArYj3B5MrcwsibXvOl2uUcidDSgT+HYsQVIEMQTpGtwTnQNTJMk-jTmkUqlOEi7NJCqZrhuW67vuuCHjwzpnheV63ve5iPnh7Avpc74eoy3qvj+CAcpyAFASBBRgdEEFDoE8RfHKFQKlxsRRGharEJhHTrpu25PvhfREeeMikXeD64c+pi0TY0SeqcjHfn6LGBmxgHAaB4HhJBBR2IkXLCqE4axOBgQScumr0Ap7AAOpkNeRhzLgYAsKiZDiGAywAEYHqgmgEewAAKuCePhZjsKuczWGo8JEQwWBqLIV6THQrAQAAKmQRAAPJEGAmCrooAiTLAMiXB+Blfm2vh5GJ-iSr8oSwfE+SxJBsTAcUcqlKE5SBsCCruRhK4dH5Hi6gAYuYmn4TRihFXhpXoBVVXOi0HUtkZ7Z5JERQuSBLlDaEyQjpB0RpHY-6BIG47JP8f3ckt6orfQa0XJt23eXtb7FTMZWVTVdUNU1LVtYoF2Gd1NxxJOdBJOEXHvbNTmQXK-6RM9PH+D8YHlEDUkg3QRjCKIyxEODHDpURLR4pahIaHQMis+z5WoGdkIvvsqBWLYjgMV1vrXQgwrcsUk7wTOwShtEkHSqExTcu9UTJHE-hifTUJpkzLORez8Jc+CBG8wSqgC0LtvCKL4vcJLFjS4c9HNpjis9crqTJGr3L+JrgTa5BUT-mJ85a7NE4W9J9DM8LHPsA7J48xaLvWu7bOe2LS4S3sfsy7p+mXVjiAqxHoZRzHcdDnORRPCrTmORUC4NCqFfA551vZ-bqDHpgTuF3QVpuzbpde8PxC+wctiBHXwfMU3kca0KsevR3aSjjxgbPTyPJ2IDg-Jsto9Zx7E9TzP+Jz-z9AlyL5foT7VfrzYWIW8FY73DnvaOB925iiBEURIC1EJgTcrfFelsYQABFJCTGWFgeEAA5MAAB3Q09ZX581dloHQVA6RGE0KIXALQDCDBMBQMA7NIAYxAcZWIPIiiRCSLHQEhQpTx1DHQcIiRe5SilIkOoyDf4M1Hhguh2DMB4MIcQ40pCi4C3WJsM0NC6EMJ2GAZhrDRAQHdMAn0zFuE9jEeIniKQJoFGER3QM-5QwmxcmkSIwIALp0ZkorBODdT4KIXmTRPNJjTFLIsFYaxKHUNoZMIxhgTEUBYWwixcsg6cKVrY3hDiBHONcWKACEdqZpCBO9E+gYpQBNHrJLc8JeDxW8gACX8mReqt4SRbixBtfAywnYcOscZRIJ8uRJHKATOCQ0CjxxqGInxwET48knO9BpVsmk5V1K0na7BOnXjvD0m8fSNAmkGagYZPNLHyzGUrCZo47JziTnMiopNhRiLsv2TusQfFBC2VhOSLS2lUSOdRIKIUIARJpCMnJn4HmhyeVM15syBQfLcWxTxcRpy+N+EgsE8jUEyWwrsrMYKDwQsCsFUKU8CyQjolYpi4zo7POmW8jFCy+KAjCHZCc-hxHhAqCbWRRLJIkvoDs0FBzqVQrpSQ25el7ksseWy1FMyXFcvjrNOg-F-g9mFCOJOQKOjJVQEITMBzGqYH3JgYQudJ7c0ZbPee9AiD4EtWABSNq7Vl29sQUZqrQ48M5CkKpk4gRpEqIEca3CxHRHevxPsQpvjJFNfQc1lr4TeV9fVB1edp5ROLDMeYcTKyzE9cdb1eE832uXsSoNV0Q09jDVKMSwFgQxsgvxUc312SVHnC9CcsQM10AAEr3mCrAdovQXVvzdXQYKmhp1UMhE2huCABTAjCFUfkHbZyAXGrHSUSbxyCuvkBAoY7J0rrgLOp20SSxlvLPE5dq7zoIs6kim4260i7rqQekcR6hz-P1oKkcSRE0RBvoPTAqAIBwG8HfEeaYVXNpuAAWkHGKTD-UnIEcI0RwlQ9iUZ1hFavojDRARRGGMdDm74jxyKIBCIPxr6RHCIfMdGYWmqMdBouFdIGMhxuATZ5BNgQ9kTd4t4YoCgJy4-xJyAJpQfQBGOnZBylKOxUpeY55FgoHOhiJ5iLikJhDDFEJyXEuKxqHEECOIF8gJAJS9CIY7vJ+QCvKmF7BwoSGirFeKfRkqpUdRlLKzTdR5QKqZ4yPEXqSinFx8cXFEhjQc5Nbsg1o7ch+KEMdYN4RbXwlDbS3V66ibyFJvlgIKjU3DZl+Tz06Dsj+Ebf4g701yIleRx+pdn7Ou4PFpWPZJrRFmgBYUKy5w2RPROSctl-lwSJiRlDCirZBMrCEjgYTBMugIqN0OlkxHPXKGmiB8FIIQb1SbPd0cATR3Wyg8j0q9mUvwhCk508zmoH6ZcoZR3ck-oCC42IYQqnje+BI-w8cgLFB8QTZ6URjajt6x5bZZKZUdK6TS6FsLDstGOzcam-JJSHxeqGWyPie0mzO+kb4M5cV0wx-fK2Wbjo5qonWgtTrHbE5B8G0nkQIepCThOCNoYe1iWKNwoE30Kg1H4i9sjjNb2rvhILxFwvEBwTsVrWyqR8jXdA4m4oLjZoAi4y41TnnwVdJ+70-7Fz2BXJuZCEnARxFFHAislyU5uVikiJ9eCcF4jCulLZAe4rMcwm8oqz3QuMOIGjdBb4tkza2RmThxABM2sKkmz2CIZtpwx9I319XYAACOBA4B85fn0SdyBNzmK9wgU7xsLu25nKbsUnYT78lxUjvxqvK8P0XnbXUhaErlXQMsLE1UCDCHb5387FQe-PTh3xb6-47J-UppUCDY6ACiJb2C8d1FR4x7fxNckkwBdkw+5P+nyHq5N1TY4B9jqf8-zotdJ464p4d5cT6xd4b77x955ACj-g-BP7fTjgRBj5x4dBn7TAX6khX44jt7mYRwRACjWapx2Y2TjgwQpA8iTYxCUy-7oHbYqJqIELA5AGbrUy8rTgwKFD-AITb5lLRxhATQJAKgOLvQ9ax7s4whoHbSc5Wq5qKB+rt764saxxG6lBRx04hAnwTTciRq-CRA0HbQa73oAEjbJ6bpp6cgZ52QVDVD8g3YSicGXY8hOSTb1D1BAA */ + id: "joinGroupMachine", + context: ({ input }) => ({ + account: input.account, + groupInviteId: input.groupInviteId, + joinStatus: "PENDING" as const, + }), + + initial: "Loading Group Invite Metadata", + + states: { + "Loading Group Invite Metadata": { + description: ` +Fetches the group invite metadata from the server. +This metadata contains information that a potential +joiner will see when they land on the deep link page. +`, + tags: ["loading"], + invoke: { + id: "fetchGroupInviteActorLogic", + src: "fetchGroupInviteActorLogic", + input: ({ context }) => { + return { + groupInviteId: context.groupInviteId, + account: context.account, + }; + }, + onDone: { + target: "Loading Initially Joined Groups", + + actions: [ + { + type: "saveGroupInviteMetadata", + params: ({ event }) => ({ + groupInviteMetadata: event.output, + }), + }, + ], + }, + onError: { + target: "Error Loading Group Invite", + actions: [ + { + type: "saveError", + params: ({ event }) => ({ + error: { + type: "fetchGroupInviteError", + payload: JSON.stringify(event.error), + }, + }), + }, + ], + }, + }, + }, + + "Loading Initially Joined Groups": { + invoke: { + id: "loadingInitiallyJoinedGroups", + src: "fetchGroupsByAccountActorLogic", + input: ({ context }) => ({ + account: context.account, + }), + onDone: [ + { + guard: { + type: "hasGroupIdInMetadata", + params: ({ context }) => ({ + groupInviteMetadata: context.groupInviteMetadata!, + }), + }, + target: "Check User Group Join Status Before User Action", + actions: [ + { + type: "saveGroupsBeforeJoinAttempt", + params: ({ event }) => { + const groups = event.output; + return { + groupsBeforeJoinRequestAccepted: groups, + }; + }, + }, + { + type: "saveNewGroup", + params: ({ context }) => { + const groupId = context.groupInviteMetadata!.groupId!; + const groups = context.groupsBeforeJoinRequestAccepted!; + const groupIfUserHasAlreadyJoined: GroupData | undefined = + groups.byId[groupId]; + return { + invitedGroup: groupIfUserHasAlreadyJoined, + }; + }, + }, + ], + }, + { + target: "Waiting For User Action", + actions: [ + { + type: "saveGroupsBeforeJoinAttempt", + params: ({ event }) => { + const groups = event.output; + return { + groupsBeforeJoinRequestAccepted: groups, + }; + }, + }, + ], + }, + ], + onError: { + target: "Error Loading Groups", + actions: [ + { + type: "saveError", + params: ({ event }) => ({ + error: { + type: "fetchGroupsByAccountError", + payload: JSON.stringify(event.error), + }, + }), + }, + ], + }, + }, + }, + + "Check User Group Join Status Before User Action": { + always: [ + { + target: + "User Was Already a Member of Group Prior to Clicking Join Link", + guard: { + type: "isUserInGroup", + params: ({ context }) => ({ + invitedGroupId: context.groupInviteMetadata?.groupId, + groups: context.groupsBeforeJoinRequestAccepted, + }), + }, + }, + { + target: "Waiting For User Action", + guard: { + type: "hasUserNotBeenBlocked", + params: ({ context }) => { + return { + invitedGroup: context.invitedGroup, + }; + }, + }, + }, + { + target: "User Has Been Blocked From Group", + }, + ], + }, + + "User Was Already a Member of Group Prior to Clicking Join Link": { + entry: { + type: "saveGroupJoinStatus", + params: { + joinStatus: "ACCEPTED", + }, + }, + description: ` +The user was already a member of the group they clicked the +link to join. In this case, we just want to allow them to +navigate to the group conversation and provide them +messaging to give them some context. + `, + on: { + "user.didTapOpenConversation": { + actions: { + type: "navigateToGroupScreen", + params: ({ context }) => { + return { + topic: context.invitedGroup!.topic, + }; + }, + }, + }, + }, + }, + + "Waiting For User Action": { + description: ` +In this state, the UI will display a button to the user +to allow them to begin the group join process. + +Some potential improvements to this flow would be to have a state +prior where we check the status of the group join request, but +that isn't how things are done in the current version of the +screen so I'm going to follow what's currently there. + `, + on: { + "user.didTapJoinGroup": { + target: "Attempting to Join Group", + }, + + "user.didTapOpenConversation": { + description: ` +Upon further investigation, I'm not sure it is appropriate to hanle this event here +before we've determined the user was in the group... + +TODO: investigate this further +`, + actions: [ + { + type: "navigateToGroupScreen", + params: ({ context }) => ({ + topic: context.invitedGroup?.topic!, + }), + }, + ], + }, + }, + }, + + "Attempting to Join Group": { + description: ` +Attempts to join the group. + +Due to the encrypted nature of our protocol, we send a request to the creator +of the group invite via Push Notifications that, when received, will +automatically accept the join request. + +However, if there is any latency, or if the user that created +the invite is offline or has uninstalled the application, +then the group invite will never be accepted. + +This is a known limitation of our current implementation, +and we are exploring ideas such as allowing more admins +to accept the invite. + `, + tags: ["polling"], + invoke: { + id: "attemptToJoinGroupActorLogic", + src: "attemptToJoinGroupActorLogic", + input: ({ context }) => { + return { + groupInviteId: context.groupInviteId, + account: context.account, + }; + }, + onDone: [ + { + guard: { + type: "isGroupJoinRequestType", + params: ({ event }) => ({ + groupJoinRequestEventType: event.output.type, + expectedType: "group-join-request.accepted", + }), + }, + target: "Determining Newly Joined Group", + }, + { + guard: { + type: "isGroupJoinRequestType", + params: ({ event }) => ({ + groupJoinRequestEventType: event.output.type, + expectedType: "group-join-request.already-joined", + }), + }, + target: "User Joined Group", + }, + { + guard: { + type: "isGroupJoinRequestType", + params: ({ event }) => ({ + groupJoinRequestEventType: event.output.type, + expectedType: "group-join-request.rejected", + }), + }, + target: "Request to Join Group Rejected", + }, + { + guard: { + type: "isGroupJoinRequestType", + params: ({ event }) => ({ + groupJoinRequestEventType: event.output.type, + expectedType: "group-join-request.error", + }), + }, + target: "Error Joining Group", + }, + { + guard: { + type: "isGroupJoinRequestType", + params: ({ event }) => ({ + groupJoinRequestEventType: event.output.type, + expectedType: "group-join-request.timed-out", + }), + }, + target: "Attempting to Join Group Timed Out", + }, + ], + }, + }, + + "Determining Newly Joined Group": { + description: ` +Immediately upon entering this state, we fetch the groups +query to determine our groups after receiving the accepted +status. Our logic then splits based on whether we have a +group ID in our group invite metadata: +1. If we have a group ID, we can use it to look up the new + group directly. +2. If we don't have a group ID, we need to compare the + groups before joining (stored in our context) with the + newly fetched groups. We perform a diff between the old + IDs and the new IDs to identify the new group. +If the list of IDs are identical, it indicates that the user +has already joined this group. +Once we successfully determine the new group that +was joined, we transition to a state for allowing group +consent for the new group. +`, + invoke: { + id: "fetchGroupsAfterGroupInviteAccepted", + src: "fetchGroupsByAccountActorLogic", + input: ({ context }) => ({ + account: context.account, + }), + onDone: [ + { + guard: { + type: "hasGroupIdInMetadata", + params: ({ context }) => ({ + groupInviteMetadata: context.groupInviteMetadata!, + }), + }, + actions: [ + { + type: "saveNewGroup", + params: ({ context, event }) => ({ + invitedGroup: + event.output.byId[context.groupInviteMetadata!.groupId!], + }), + }, + ], + target: "Checking If User Has Been Blocked From Group", + }, + { + target: "Checking If User Has Already Joined Group", + actions: [ + { + type: "saveNewGroup", + params: ({ context, event }) => { + const oldGroupIds = new Set( + context.groupsBeforeJoinRequestAccepted!.ids + ); + const newGroupId = event.output.ids.find( + (id) => !oldGroupIds.has(id) + ); + return { + invitedGroup: newGroupId + ? event.output.byId[newGroupId] + : undefined, + }; + }, + }, + ], + description: ` +This branch handles the case where we don't have a groupId in our metadata. +We need to determine if a new group was joined by comparing the groups before and after the join attempt. +This method is less certain than when we have a groupId, as there's a possibility +that no new group was actually joined (e.g., if the user was already a member). +If we don't find a new group (i.e., old groups === new groups), +we assume the user has already joined the group indicated by the invite link. +This approach allows us to handle cases where the groupId isn't available in the metadata, +providing a fallback method to determine the join status. + `, + }, + ], + onError: { + target: "Error Determining New Group", + actions: { + type: "saveError", + params: ({ event }) => ({ + error: { + type: "fetchGroupsByAccountError", + payload: JSON.stringify(event.error), + }, + }), + }, + }, + }, + }, + + "Checking If User Has Been Blocked From Group": { + always: [ + { + guard: { + type: "hasUserNotBeenBlocked", + params: ({ context }) => ({ + invitedGroup: context.invitedGroup, + }), + }, + target: "Providing User Consent to Join Group", + }, + { + target: "User Has Been Blocked From Group", + }, + ], + }, + + "Checking If User Has Already Joined Group": { + always: [ + { + guard: { + type: "userHasAlreadyJoinedGroup", + params: ({ context }) => ({ + invitedGroup: context.invitedGroup, + }), + }, + target: "User Joined Group", + }, + { + guard: { + type: "hasUserNotBeenBlocked", + params: ({ context }) => ({ + invitedGroup: context.invitedGroup, + }), + }, + target: "Providing User Consent to Join Group", + }, + { + target: "User Has Been Blocked From Group", + }, + ], + }, + + "Providing User Consent to Join Group": { + invoke: { + id: "provideUserConsentToJoinGroup", + src: "provideUserConsentToJoinGroup", + input: ({ context }) => ({ + account: context.account, + group: context.invitedGroup!, + options: { + includeCreator: false, + includeAddedBy: false, + }, + }), + onDone: { + target: "Refreshing Group", + }, + onError: { + target: "Error Providing User Consent", + actions: { + type: "saveError", + params: ({ event }) => ({ + error: { + type: "provideUserConsentToJoinGroupError", + payload: JSON.stringify(event.error), + }, + }), + }, + }, + }, + }, + + "Refreshing Group": { + invoke: { + id: "refreshGroup", + src: "refreshGroup", + input: ({ context }) => ({ + account: context.account, + topic: context.invitedGroup!.topic, + }), + onDone: { + target: "User Joined Group", + }, + onError: { + target: "Error Refreshing Group", + actions: { + type: "saveError", + params: ({ event }) => ({ + error: { + type: "refreshGroupError", + payload: JSON.stringify(event.error), + }, + }), + }, + }, + }, + }, + + "User Has Been Blocked From Group": { + description: ` +The user has been blocked from the group or the group is not active. + `, + + entry: [ + { + type: "saveGroupJoinStatus", + params: { + joinStatus: "REJECTED", + }, + }, + ], + }, + + "User Joined Group": { + entry: [ + { + type: "saveGroupJoinStatus", + params: { + joinStatus: "ACCEPTED", + }, + }, + { + type: "navigateToGroupScreen", + params: ({ context }) => { + return { + topic: context.invitedGroup!.topic, + }; + }, + }, + ], + }, + + "Request to Join Group Rejected": { + type: "final", + }, + + /////////////////////////////////////////////////////////////////////////// + // ERROR STATES + /////////////////////////////////////////////////////////////////////////// + + "Attempting to Join Group Timed Out": { + description: ` + The invitor client has not yet automatically accepted the + group join request. This is a known limitation of our current + implementation, and we are exploring ideas such as allowing + more admins to accept the invite. + + This doesn't mean the user cannot join, it just means that + the client that was invited needs to wait for the inviter + to accept the request. + + The next time we are able to contact the inviter, we will + automatically accept the request and the newly invited + user will be able to join the group. + `, + type: "final", + }, + + "Error Loading Group Invite": { + tags: ["error"], + }, + + "Error Joining Group": { + tags: ["error"], + type: "final", + }, + + "Error Loading Groups": { + tags: ["error"], + }, + + "Error Determining New Group": { + tags: ["error"], + }, + + "Error Providing User Consent": { + tags: ["error"], + }, + + "Error Refreshing Group": { + tags: ["error"], + }, + }, +}); diff --git a/features/GroupInvites/joinGroup/joinGroup.md b/features/GroupInvites/joinGroup/joinGroup.md new file mode 100644 index 000000000..ea55a54b7 --- /dev/null +++ b/features/GroupInvites/joinGroup/joinGroup.md @@ -0,0 +1,46 @@ +```mermaid +flowchart TD + A[Start] --> B[Load Group Invite Data] + B --> C{Is Loading?} + C -->|Yes| D[Show Loading Indicator] + C -->|No| E{Error Loading?} + E -->|Yes| F[Display Error Message] + E -->|No| G[Display Group Info] + G --> H{Join Status?} + H -->|Accepted| I[Show 'Already Joined' Message] + H -->|Rejected or Error| J[Show Error Message] + H -->|Null or Pending| K[Show Join Button] + K --> L{User Presses Join} + L -->|Yes| M[Start Join Process] + M --> N[Set Join Status to Pending] + N --> O[Check for Existing Join Request] + O -->|Exists| Q[Use Existing Request ID] + O -->|Doesn't Exist| P[Create New Join Request] + P --> Q + Q --> R[Start Polling for Status] + R --> S{Check Status} + S -->|Pending| T{Tried 10 times?} + T -->|No| U[Wait 500ms] + U --> S + T -->|Yes| V[Set Finished Polling Unsuccessfully] + S -->|Accepted| W[Fetch Updated Groups] + W --> X{Group ID Exists?} + X -->|Yes| Y[Check if Group is Active] + Y -->|Active| Z[Set New Group] + Y -->|Inactive| AA[Set Join Status to Rejected] + X -->|No| AB[Find New Group ID] + AB -->|Found| Z + AB -->|Not Found| AC[Set Join Status to Accepted] + S -->|Rejected or Error| AD[Set Final Join Status] + Z --> AE[Handle New Group] + AE --> AF[Allow Group] + AF --> AG[Refresh Group] + AG --> AH[Navigate to Conversation] + I --> AI[End] + J --> AI + V --> AI + AA --> AI + AC --> AI + AD --> AI + AH --> AI +``` diff --git a/features/GroupInvites/joinGroup/joinGroup.screen.logic.png b/features/GroupInvites/joinGroup/joinGroup.screen.logic.png new file mode 100644 index 0000000000000000000000000000000000000000..d75bb459f7b8f4d8a5aab01e3fe8b3ef03123ccc GIT binary patch literal 245436 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̶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/jest.setup.ts"], + + /** + * Specifies patterns for modules that should not be transformed. + * Typically used for node_modules, but allows exceptions for + * specific packages. + * + * @example + * Will transform: "@react-native-community/async-storage" + * Won't transform: "lodash", "moment" + */ + transformIgnorePatterns: [ + "node_modules/(?!((jest-)?react-native|@react-native(-community)?|expo(nent)?|@expo(nent)?/.*|@expo-google-fonts/.*|react-navigation|@react-navigation/.*|@unimodules/.*|unimodules|sentry-expo|native-base|react-native-svg|rn-fetch-blob|@xmtp|typeorm|uuid|wagmi))", + ], + + /** + * Enables verbose output, providing detailed information about each test. + */ + verbose: true, + + /** + * Maps module names to file paths or other modules. + * Useful for resolving aliases or mocking modules. + * @example + * Import of 'typeorm' will resolve to the specified file. + */ + moduleNameMapper: { + typeorm: "/node_modules/typeorm/index.js", + }, + + /** + * Specifies setup files to run after the test environment is set up + * but before tests are run. + */ + setupFilesAfterEnv: ["/jest.setup.ts"], +}; + +export default config; diff --git a/jest.setup.ts b/jest.setup.ts index dc25744cc..84b0addad 100644 --- a/jest.setup.ts +++ b/jest.setup.ts @@ -1,5 +1,6 @@ // @ts-ignore import mockRNDeviceInfo from "react-native-device-info/jest/react-native-device-info-mock"; +require("dotenv").config(); jest.mock("react-native-webview", () => { const { View } = require("react-native"); @@ -46,10 +47,10 @@ jest.mock("react-native-fs", () => { touch: jest.fn(), MainBundlePath: jest.fn(), CachesDirectoryPath: jest.fn(), - DocumentDirectoryPath: jest.fn(), + DocumentDirectoryPath: "", ExternalDirectoryPath: jest.fn(), ExternalStorageDirectoryPath: jest.fn(), - TemporaryDirectoryPath: jest.fn(), + TemporaryDirectoryPath: "", LibraryDirectoryPath: jest.fn(), PicturesDirectoryPath: jest.fn(), }; @@ -67,6 +68,10 @@ jest.mock("rn-fetch-blob", () => { }; }); +jest.mock("@sentry/react-native", () => ({ + init: jest.fn(), + addBreadcrumb: jest.fn(), +})); jest.mock("expo-constants", () => ({})); jest.mock("uuid", () => ({ diff --git a/package.json b/package.json index 9ea790b76..06fe26f98 100644 --- a/package.json +++ b/package.json @@ -68,6 +68,7 @@ "@sentry/react-native": "^5.31.1", "@shopify/flash-list": "1.6.4", "@stardazed/streams-polyfill": "^2.4.0", + "@statelyai/inspect": "^0.4.0", "@tanstack/query-persist-client-core": "^5.54.1", "@tanstack/query-sync-storage-persister": "^5.45.0", "@tanstack/react-query": "^5.45.0", @@ -84,6 +85,7 @@ "@xmtp/proto": "^3.60.0", "@xmtp/react-native-sdk": "^3.0.6", "@xmtp/xmtp-js": "11.5.0", + "@xstate/react": "^4.1.3", "@yornaath/batshit": "^0.10.1", "alchemy-sdk": "^3.4.4", "amazon-cognito-identity-js": "^6.3.12", @@ -100,6 +102,7 @@ "eciesjs": "^0.4.4", "emoji-regex": "^10.3.0", "ethers": "5.7.2", + "event-target-shim": "^6.0.2", "eventemitter3": "^5.0.1", "expo": "~51.0.38", "expo-application": "~5.9.1", @@ -207,6 +210,7 @@ "walletsdk-ethos": "0.1.0-no-web3j", "web3": "^1.8.1", "web3.storage": "^4.5.5", + "xstate": "^5.18.2", "zod": "^3.23.8", "zustand": "^4.4.7" }, @@ -264,18 +268,6 @@ "prettier --write" ] }, - "jest": { - "preset": "jest-expo", - "setupFiles": [ - "/jest.setup.ts" - ], - "moduleNameMapper": { - "typeorm": "/node_modules/typeorm/index.js" - }, - "transformIgnorePatterns": [ - "node_modules/(?!((jest-)?react-native|@react-native(-community)?)|expo(nent)?|@sentry|@xmtp|typeorm|uuid|wagmi|@expo(nent)?/.*|@expo-google-fonts/.*|react-navigation|@react-navigation/.*|@unimodules/.*|unimodules|sentry-expo|native-base|react-native-svg|rn-fetch-blob)" - ] - }, "resolutions": { "react-native-svg": "15.2.0", "@expo/config-plugins": "~8.0.0" diff --git a/yarn.lock b/yarn.lock index 47c10204a..e865b1d6b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6587,6 +6587,18 @@ resolved "https://registry.yarnpkg.com/@stardazed/streams-polyfill/-/streams-polyfill-2.4.0.tgz#d35fee3af8a95e60cc575ebf9cf373cc23cef2ee" integrity sha512-W6Yg9cA8YT1b9qCQsz/2+kmKt7i/Za2Nj4QOLqdiANzpTiGy5mOyCQNyh0CVpbvXkjCBo2QxrwPvbDlP9u9k+Q== +"@statelyai/inspect@^0.4.0": + version "0.4.0" + resolved "https://registry.yarnpkg.com/@statelyai/inspect/-/inspect-0.4.0.tgz#5bdd54d62a6132372f0f8f71644a864bc4d788c0" + integrity sha512-VxQldRlKYcu6rzLY83RSXVwMYexkH6hNx85B89YWYyXYWtNGaWHFCwV7a/Kz8FFPeUz8EKVAnyMOg2kNpn07wQ== + dependencies: + fast-safe-stringify "^2.1.1" + isomorphic-ws "^5.0.0" + partysocket "^0.0.25" + safe-stable-stringify "^2.4.3" + superjson "^1.13.3" + uuid "^9.0.1" + "@svgr/babel-plugin-add-jsx-attribute@8.0.0": version "8.0.0" resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz#4001f5d5dd87fa13303e36ee106e3ff3a7eb8b22" @@ -8387,6 +8399,14 @@ long "^5.2.3" viem "2.7.15" +"@xstate/react@^4.1.3": + version "4.1.3" + resolved "https://registry.yarnpkg.com/@xstate/react/-/react-4.1.3.tgz#d3db7102ad950584d15f5a07fc17d52a127f3c68" + integrity sha512-zhE+ZfrcCR87bu71Rkh5Z5ruZBivR/7uD/dkelzJqjQdI45IZc9DqTI8lL4Cg5+VN2p5k86KxDsusqW1kW11Tg== + dependencies: + use-isomorphic-layout-effect "^1.1.2" + use-sync-external-store "^1.2.0" + "@yarnpkg/lockfile@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31" @@ -10423,6 +10443,13 @@ cookie@^0.6.0: resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.6.0.tgz#2798b04b071b0ecbff0dbb62a505a8efa4e19051" integrity sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw== +copy-anything@^3.0.2: + version "3.0.5" + resolved "https://registry.yarnpkg.com/copy-anything/-/copy-anything-3.0.5.tgz#2d92dce8c498f790fa7ad16b01a1ae5a45b020a0" + integrity sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w== + dependencies: + is-what "^4.1.8" + core-js-compat@^3.36.1: version "3.37.1" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.37.1.tgz#c844310c7852f4bdf49b8d339730b97e17ff09ee" @@ -12130,6 +12157,11 @@ event-target-shim@^5.0.0, event-target-shim@^5.0.1: resolved "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz" integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== +event-target-shim@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-6.0.2.tgz#ea5348c3618ee8b62ff1d344f01908ee2b8a2b71" + integrity sha512-8q3LsZjRezbFZ2PN+uP+Q7pnHUMmAOziU2vA2OwoFaKIXxlxl38IylhSSgUorWu/rf4er67w0ikBqjBFk/pomA== + eventemitter2@^6.4.5, eventemitter2@^6.4.7: version "6.4.9" resolved "https://registry.yarnpkg.com/eventemitter2/-/eventemitter2-6.4.9.tgz#41f2750781b4230ed58827bc119d293471ecb125" @@ -14880,6 +14912,11 @@ is-weakset@^2.0.3: call-bind "^1.0.7" get-intrinsic "^1.2.4" +is-what@^4.1.8: + version "4.1.16" + resolved "https://registry.yarnpkg.com/is-what/-/is-what-4.1.16.tgz#1ad860a19da8b4895ad5495da3182ce2acdd7a6f" + integrity sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A== + is-wsl@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz" @@ -14952,6 +14989,11 @@ isomorphic-ws@^4.0.1: resolved "https://registry.yarnpkg.com/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz#55fd4cd6c5e6491e76dc125938dd863f5cd4f2dc" integrity sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w== +isomorphic-ws@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/isomorphic-ws/-/isomorphic-ws-5.0.0.tgz#e5529148912ecb9b451b46ed44d53dae1ce04bbf" + integrity sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw== + isows@1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/isows/-/isows-1.0.3.tgz#93c1cf0575daf56e7120bab5c8c448b0809d0d74" @@ -18216,6 +18258,13 @@ parseurl@~1.3.3: resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== +partysocket@^0.0.25: + version "0.0.25" + resolved "https://registry.yarnpkg.com/partysocket/-/partysocket-0.0.25.tgz#f35fd89d9e4202ff6115ccdc8a4ebcc6acaf0bb1" + integrity sha512-1oCGA65fydX/FgdnsiBh68buOvfxuteoZVSb3Paci2kRp/7lhF0HyA8EDb5X/O6FxId1e+usPTQNRuzFEvkJbQ== + dependencies: + event-target-shim "^6.0.2" + password-prompt@^1.0.4: version "1.1.3" resolved "https://registry.yarnpkg.com/password-prompt/-/password-prompt-1.1.3.tgz#05e539f4e7ca4d6c865d479313f10eb9db63ee5f" @@ -20188,6 +20237,11 @@ safe-stable-stringify@^2.1.0: resolved "https://registry.yarnpkg.com/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz#138c84b6f6edb3db5f8ef3ef7115b8f55ccbf886" integrity sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g== +safe-stable-stringify@^2.4.3: + version "2.5.0" + resolved "https://registry.yarnpkg.com/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz#4ca2f8e385f2831c432a719b108a3bf7af42a1dd" + integrity sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA== + "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" @@ -21263,6 +21317,13 @@ summary@^2.1.0: resolved "https://registry.yarnpkg.com/summary/-/summary-2.1.0.tgz#be8a49a0aa34eb6ceea56042cae88f8add4b0885" integrity sha512-nMIjMrd5Z2nuB2RZCKJfFMjgS3fygbeyGk9PxPPaJR1RIcyN9yn4A63Isovzm3ZtQuEkLBVgMdPup8UeLH7aQw== +superjson@^1.13.3: + version "1.13.3" + resolved "https://registry.yarnpkg.com/superjson/-/superjson-1.13.3.tgz#3bd64046f6c0a47062850bb3180ef352a471f930" + integrity sha512-mJiVjfd2vokfDxsQPOwJ/PtanO87LhpYY88ubI5dUB1Ab58Txbyje3+jpm+/83R/fevaq/107NNhtYBLuoTrFg== + dependencies: + copy-anything "^3.0.2" + superstruct@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/superstruct/-/superstruct-1.0.3.tgz#de626a5b49c6641ff4d37da3c7598e7a87697046" @@ -22313,6 +22374,11 @@ use-context-selector@^2.0.0: resolved "https://registry.yarnpkg.com/use-context-selector/-/use-context-selector-2.0.0.tgz#3b5dafec7aa947c152d4f0aa7f250e99a205df3d" integrity sha512-owfuSmUNd3eNp3J9CdDl0kMgfidV+MkDvHPpvthN5ThqM+ibMccNE0k+Iq7TWC6JPFvGZqanqiGCuQx6DyV24g== +use-isomorphic-layout-effect@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz#497cefb13d863d687b08477d9e5a164ad8c1a6fb" + integrity sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA== + use-latest-callback@^0.1.5, use-latest-callback@^0.1.7: version "0.1.9" resolved "https://registry.yarnpkg.com/use-latest-callback/-/use-latest-callback-0.1.9.tgz#10191dc54257e65a8e52322127643a8940271e2a" @@ -22331,6 +22397,11 @@ use-sync-external-store@1.2.0: resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz#7dbefd6ef3fe4e767a0cf5d7287aacfb5846928a" integrity sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA== +use-sync-external-store@^1.2.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.2.2.tgz#c3b6390f3a30eba13200d2302dcdf1e7b57b2ef9" + integrity sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw== + utf-8-validate@^5.0.2: version "5.0.10" resolved "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.10.tgz" @@ -23402,6 +23473,11 @@ xmlhttprequest-ssl@~2.0.0: resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-2.0.0.tgz#91360c86b914e67f44dce769180027c0da618c67" integrity sha512-QKxVRxiRACQcVuQEYFsI1hhkrMlrXHPegbbd1yn9UHOmRxY+si12nQYzri3vbzt8VdTTRviqcKxcyllFas5z2A== +xstate@^5.18.2: + version "5.18.2" + resolved "https://registry.yarnpkg.com/xstate/-/xstate-5.18.2.tgz#924122af5102f3c3f7e172ebf20a09455ddb2963" + integrity sha512-hab5VOe29D0agy8/7dH1lGw+7kilRQyXwpaChoMu4fe6rDP+nsHYhDYKfS2O4iXE7myA98TW6qMEudj/8NXEkA== + xtend@^4.0.0, xtend@^4.0.1, xtend@^4.0.2, xtend@~4.0.1: version "4.0.2" resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz"