From 9e60ade821387d31877f664043fc4a77dcb1b5c1 Mon Sep 17 00:00:00 2001 From: Ana Margarida Silva Date: Thu, 15 Jun 2023 13:51:09 +0100 Subject: [PATCH 1/7] fix: comparison for accountID --- src/pages/workspace/WorkspaceMembersPage.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/workspace/WorkspaceMembersPage.js b/src/pages/workspace/WorkspaceMembersPage.js index 7274dc3ec662..797566af0219 100644 --- a/src/pages/workspace/WorkspaceMembersPage.js +++ b/src/pages/workspace/WorkspaceMembersPage.js @@ -217,7 +217,7 @@ class WorkspaceMembersPage extends React.Component { const emailList = _.keys(memberList); this.setState( (prevState) => ({ - selectedEmployees: !_.every(emailList, (memberEmail) => _.contains(prevState.selectedEmployees, memberEmail)) ? emailList : [], + selectedEmployees: !_.every(emailList, (memberAccountID) => _.contains(prevState.selectedEmployees, memberAccountID)) ? emailList : [], }), () => this.validate(), ); @@ -320,7 +320,7 @@ class WorkspaceMembersPage extends React.Component { */ renderItem({item}) { const hasError = !_.isEmpty(item.errors) || this.state.errors[item.login]; - const isChecked = _.contains(this.state.selectedEmployees, item.accountID); + const isChecked = _.contains(this.state.selectedEmployees, item.accountID.toString()); return ( this.dismissError(item)} From 949fa34a34102f61c75ecc08c129fa3fc09e10a6 Mon Sep 17 00:00:00 2001 From: Ana Margarida Silva Date: Thu, 15 Jun 2023 14:45:14 +0100 Subject: [PATCH 2/7] fix: convert to string --- src/pages/workspace/WorkspaceMembersPage.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/pages/workspace/WorkspaceMembersPage.js b/src/pages/workspace/WorkspaceMembersPage.js index 797566af0219..7765b2afbde4 100644 --- a/src/pages/workspace/WorkspaceMembersPage.js +++ b/src/pages/workspace/WorkspaceMembersPage.js @@ -103,7 +103,7 @@ class WorkspaceMembersPage extends React.Component { this.setState((prevState) => ({ selectedEmployees: _.intersection( prevState.selectedEmployees, - _.keys(PolicyUtils.getClientPolicyMemberEmailsToAccountIDs(this.props.policyMembers, this.props.personalDetails)), + _.map(_.keys(PolicyUtils.getClientPolicyMemberEmailsToAccountIDs(this.props.policyMembers, this.props.personalDetails)), (accountID) => accountID.toString()), ), })); } @@ -217,7 +217,7 @@ class WorkspaceMembersPage extends React.Component { const emailList = _.keys(memberList); this.setState( (prevState) => ({ - selectedEmployees: !_.every(emailList, (memberAccountID) => _.contains(prevState.selectedEmployees, memberAccountID)) ? emailList : [], + selectedEmployees: !_.every(emailList, (memberAccountID) => _.contains(prevState.selectedEmployees, memberAccountID.toString())) ? emailList : [], }), () => this.validate(), ); @@ -236,10 +236,10 @@ class WorkspaceMembersPage extends React.Component { } // Add or remove the user if the checkbox is enabled - if (_.contains(this.state.selectedEmployees, accountID)) { - this.removeUser(accountID); + if (_.contains(this.state.selectedEmployees, accountID.toString())) { + this.removeUser(accountID.toString()); } else { - this.addUser(accountID); + this.addUser(accountID.toString()); } } From e0955a0e62f48e0da260843fd9c54f9d2315065c Mon Sep 17 00:00:00 2001 From: Ana Margarida Silva Date: Thu, 15 Jun 2023 18:51:42 +0100 Subject: [PATCH 3/7] fix: cast to number instead --- src/pages/workspace/WorkspaceMembersPage.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/pages/workspace/WorkspaceMembersPage.js b/src/pages/workspace/WorkspaceMembersPage.js index 7765b2afbde4..569c518a23d8 100644 --- a/src/pages/workspace/WorkspaceMembersPage.js +++ b/src/pages/workspace/WorkspaceMembersPage.js @@ -103,7 +103,7 @@ class WorkspaceMembersPage extends React.Component { this.setState((prevState) => ({ selectedEmployees: _.intersection( prevState.selectedEmployees, - _.map(_.keys(PolicyUtils.getClientPolicyMemberEmailsToAccountIDs(this.props.policyMembers, this.props.personalDetails)), (accountID) => accountID.toString()), + _.map(_.keys(PolicyUtils.getClientPolicyMemberEmailsToAccountIDs(this.props.policyMembers, this.props.personalDetails)), (accountID) => Number(accountID)), ), })); } @@ -217,7 +217,7 @@ class WorkspaceMembersPage extends React.Component { const emailList = _.keys(memberList); this.setState( (prevState) => ({ - selectedEmployees: !_.every(emailList, (memberAccountID) => _.contains(prevState.selectedEmployees, memberAccountID.toString())) ? emailList : [], + selectedEmployees: !_.every(emailList, (memberAccountID) => _.contains(prevState.selectedEmployees, Number(memberAccountID))) ? emailList : [], }), () => this.validate(), ); @@ -236,10 +236,10 @@ class WorkspaceMembersPage extends React.Component { } // Add or remove the user if the checkbox is enabled - if (_.contains(this.state.selectedEmployees, accountID.toString())) { - this.removeUser(accountID.toString()); + if (_.contains(this.state.selectedEmployees, Number(accountID))) { + this.removeUser(Number(accountID)); } else { - this.addUser(accountID.toString()); + this.addUser(Number(accountID)); } } @@ -320,7 +320,7 @@ class WorkspaceMembersPage extends React.Component { */ renderItem({item}) { const hasError = !_.isEmpty(item.errors) || this.state.errors[item.login]; - const isChecked = _.contains(this.state.selectedEmployees, item.accountID.toString()); + const isChecked = _.contains(this.state.selectedEmployees, Number(item.accountID)); return ( this.dismissError(item)} From 8c60148f3c91fefd167ac6e6089a9c71ee39cc41 Mon Sep 17 00:00:00 2001 From: Ana Margarida Silva Date: Thu, 15 Jun 2023 18:56:15 +0100 Subject: [PATCH 4/7] fix: cast to number instead in missing places --- src/pages/workspace/WorkspaceMembersPage.js | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/pages/workspace/WorkspaceMembersPage.js b/src/pages/workspace/WorkspaceMembersPage.js index 569c518a23d8..529b7c2a3850 100644 --- a/src/pages/workspace/WorkspaceMembersPage.js +++ b/src/pages/workspace/WorkspaceMembersPage.js @@ -214,10 +214,10 @@ class WorkspaceMembersPage extends React.Component { * @param {Object} memberList */ toggleAllUsers(memberList) { - const emailList = _.keys(memberList); + const accountIDList = _.map(_.keys(memberList), (member) => Number(member)); this.setState( (prevState) => ({ - selectedEmployees: !_.every(emailList, (memberAccountID) => _.contains(prevState.selectedEmployees, Number(memberAccountID))) ? emailList : [], + selectedEmployees: !_.every(accountIDList, (memberAccountID) => _.contains(prevState.selectedEmployees, Number(memberAccountID))) ? accountIDList : [], }), () => this.validate(), ); @@ -246,7 +246,7 @@ class WorkspaceMembersPage extends React.Component { /** * Add user from the selectedEmployees list * - * @param {String} accountID + * @param {Number} accountID */ addUser(accountID) { this.setState( @@ -260,7 +260,7 @@ class WorkspaceMembersPage extends React.Component { /** * Remove user from the selectedEmployees list * - * @param {String} accountID + * @param {Number} accountID */ removeUser(accountID) { this.setState( @@ -474,7 +474,9 @@ class WorkspaceMembersPage extends React.Component { _.contains(this.state.selectedEmployees, accountID))} + isChecked={ + !_.isEmpty(removableMembers) && _.every(_.keys(removableMembers), (accountID) => _.contains(this.state.selectedEmployees, Number(accountID))) + } onPress={() => this.toggleAllUsers(removableMembers)} /> From 94fe1b6e77d05955ad3362d7d9eed03b31454968 Mon Sep 17 00:00:00 2001 From: Ana Margarida Silva Date: Thu, 15 Jun 2023 19:26:05 +0100 Subject: [PATCH 5/7] fix: switch to empty object --- src/pages/workspace/WorkspaceInviteMessagePage.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/workspace/WorkspaceInviteMessagePage.js b/src/pages/workspace/WorkspaceInviteMessagePage.js index c3b53e98a09a..92cb38171c64 100644 --- a/src/pages/workspace/WorkspaceInviteMessagePage.js +++ b/src/pages/workspace/WorkspaceInviteMessagePage.js @@ -115,7 +115,7 @@ class WorkspaceInviteMessagePage extends React.Component { sendInvitation() { Policy.addMembersToWorkspace(this.props.invitedEmailsToAccountIDsDraft, this.state.welcomeNote, this.props.route.params.policyID, this.props.betas); - Policy.setWorkspaceInviteMembersDraft(this.props.route.params.policyID, []); + Policy.setWorkspaceInviteMembersDraft(this.props.route.params.policyID, {}); Navigation.navigate(ROUTES.getWorkspaceMembersRoute(this.props.route.params.policyID)); } From db62b9163de966fd9a18602e26ed4077cd9ae4b5 Mon Sep 17 00:00:00 2001 From: Ana Margarida Silva Date: Thu, 15 Jun 2023 19:34:25 +0100 Subject: [PATCH 6/7] fix: use values for accountIDs --- src/pages/workspace/WorkspaceMembersPage.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/workspace/WorkspaceMembersPage.js b/src/pages/workspace/WorkspaceMembersPage.js index 529b7c2a3850..1e5ec52d575d 100644 --- a/src/pages/workspace/WorkspaceMembersPage.js +++ b/src/pages/workspace/WorkspaceMembersPage.js @@ -103,7 +103,7 @@ class WorkspaceMembersPage extends React.Component { this.setState((prevState) => ({ selectedEmployees: _.intersection( prevState.selectedEmployees, - _.map(_.keys(PolicyUtils.getClientPolicyMemberEmailsToAccountIDs(this.props.policyMembers, this.props.personalDetails)), (accountID) => Number(accountID)), + _.map(_.values(PolicyUtils.getClientPolicyMemberEmailsToAccountIDs(this.props.policyMembers, this.props.personalDetails)), (accountID) => Number(accountID)), ), })); } From 50e80f65d038d7cdc2afe5efc0e49948ec677942 Mon Sep 17 00:00:00 2001 From: Ana Margarida Silva Date: Thu, 15 Jun 2023 19:53:57 +0100 Subject: [PATCH 7/7] fix: rename and remove cast --- src/pages/workspace/WorkspaceMembersPage.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/workspace/WorkspaceMembersPage.js b/src/pages/workspace/WorkspaceMembersPage.js index 1e5ec52d575d..4e90c16c0077 100644 --- a/src/pages/workspace/WorkspaceMembersPage.js +++ b/src/pages/workspace/WorkspaceMembersPage.js @@ -214,10 +214,10 @@ class WorkspaceMembersPage extends React.Component { * @param {Object} memberList */ toggleAllUsers(memberList) { - const accountIDList = _.map(_.keys(memberList), (member) => Number(member)); + const accountIDList = _.map(_.keys(memberList), (memberAccountID) => Number(memberAccountID)); this.setState( (prevState) => ({ - selectedEmployees: !_.every(accountIDList, (memberAccountID) => _.contains(prevState.selectedEmployees, Number(memberAccountID))) ? accountIDList : [], + selectedEmployees: !_.every(accountIDList, (memberAccountID) => _.contains(prevState.selectedEmployees, memberAccountID)) ? accountIDList : [], }), () => this.validate(), );