From 165479fbeba1173bb70a69fadf35c24bbae8895e Mon Sep 17 00:00:00 2001 From: DylanDylann Date: Thu, 5 Oct 2023 15:45:05 +0700 Subject: [PATCH 1/5] fix: in offline mode not show workspace member --- src/languages/en.ts | 1 + src/languages/es.ts | 1 + src/pages/workspace/WorkspaceMembersPage.js | 12 ++++++++---- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/languages/en.ts b/src/languages/en.ts index fef4979357fa..d032d9636319 100755 --- a/src/languages/en.ts +++ b/src/languages/en.ts @@ -1336,6 +1336,7 @@ export default { notAuthorized: `You do not have access to this page. Are you trying to join the workspace? Please reach out to the owner of this workspace so they can add you as a member! Something else? Reach out to ${CONST.EMAIL.CONCIERGE}`, goToRoom: ({roomName}: GoToRoomParams) => `Go to ${roomName} room`, workspaceAvatar: 'Workspace avatar', + mustBeOnlineToViewMembers : 'You must be online in order to view members of this workspace' }, emptyWorkspace: { title: 'Create a new workspace', diff --git a/src/languages/es.ts b/src/languages/es.ts index abfcf1218566..46d6305a0131 100644 --- a/src/languages/es.ts +++ b/src/languages/es.ts @@ -1356,6 +1356,7 @@ export default { notAuthorized: `No tienes acceso a esta página. ¿Estás tratando de unirte al espacio de trabajo? Comunícate con el propietario de este espacio de trabajo para que pueda añadirte como miembro. ¿Necesitas algo más? Comunícate con ${CONST.EMAIL.CONCIERGE}`, goToRoom: ({roomName}: GoToRoomParams) => `Ir a la sala ${roomName}`, workspaceAvatar: 'Espacio de trabajo avatar', + mustBeOnlineToViewMembers: 'Debes estar en línea para poder ver los miembros de este espacio de trabajo' }, emptyWorkspace: { title: 'Crear un nuevo espacio de trabajo', diff --git a/src/pages/workspace/WorkspaceMembersPage.js b/src/pages/workspace/WorkspaceMembersPage.js index 2e896f61afda..ca874fae67e0 100644 --- a/src/pages/workspace/WorkspaceMembersPage.js +++ b/src/pages/workspace/WorkspaceMembersPage.js @@ -79,6 +79,7 @@ function WorkspaceMembersPage(props) { const accountIDs = useMemo(() => _.keys(props.policyMembers), [props.policyMembers]); const prevAccountIDs = usePrevious(accountIDs); const textInputRef = useRef(null); + const isOfflineAndNeedGetData = _.isEmpty(props.policyMembers) && props.network.isOffline /** * Get members for the current workspace @@ -344,9 +345,12 @@ function WorkspaceMembersPage(props) { return result; }; - const data = getMemberOptions(); - const headerMessage = searchValue.trim() && !data.length ? props.translate('workspace.common.memberNotFound') : ''; + + const getHeaderMessage = () => { + if(isOfflineAndNeedGetData) {return props.translate('workspace.common.mustBeOnlineToViewMembers');} + return searchValue.trim() && !data.length ? props.translate('workspace.common.memberNotFound') : '' + } return ( toggleUser(item.keyForList)} onSelectAll={() => toggleAllUsers(data)} onDismissError={dismissError} - showLoadingPlaceholder={!OptionsListUtils.isPersonalDetailsReady(props.personalDetails) || _.isEmpty(props.policyMembers)} + showLoadingPlaceholder={!isOfflineAndNeedGetData && (!OptionsListUtils.isPersonalDetailsReady(props.personalDetails) || _.isEmpty(props.policyMembers))} showScrollIndicator shouldFocusOnSelectRow={!Browser.isMobile()} inputRef={textInputRef} From 1b75c22c5ea5f682cc525b74deb94fda38b70d01 Mon Sep 17 00:00:00 2001 From: DylanDylann Date: Thu, 5 Oct 2023 16:01:11 +0700 Subject: [PATCH 2/5] fix lint --- src/languages/en.ts | 2 +- src/languages/es.ts | 2 +- src/pages/workspace/WorkspaceMembersPage.js | 10 ++++++---- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/languages/en.ts b/src/languages/en.ts index d032d9636319..5fba537aae5e 100755 --- a/src/languages/en.ts +++ b/src/languages/en.ts @@ -1336,7 +1336,7 @@ export default { notAuthorized: `You do not have access to this page. Are you trying to join the workspace? Please reach out to the owner of this workspace so they can add you as a member! Something else? Reach out to ${CONST.EMAIL.CONCIERGE}`, goToRoom: ({roomName}: GoToRoomParams) => `Go to ${roomName} room`, workspaceAvatar: 'Workspace avatar', - mustBeOnlineToViewMembers : 'You must be online in order to view members of this workspace' + mustBeOnlineToViewMembers: 'You must be online in order to view members of this workspace', }, emptyWorkspace: { title: 'Create a new workspace', diff --git a/src/languages/es.ts b/src/languages/es.ts index 46d6305a0131..e9f28193f939 100644 --- a/src/languages/es.ts +++ b/src/languages/es.ts @@ -1356,7 +1356,7 @@ export default { notAuthorized: `No tienes acceso a esta página. ¿Estás tratando de unirte al espacio de trabajo? Comunícate con el propietario de este espacio de trabajo para que pueda añadirte como miembro. ¿Necesitas algo más? Comunícate con ${CONST.EMAIL.CONCIERGE}`, goToRoom: ({roomName}: GoToRoomParams) => `Ir a la sala ${roomName}`, workspaceAvatar: 'Espacio de trabajo avatar', - mustBeOnlineToViewMembers: 'Debes estar en línea para poder ver los miembros de este espacio de trabajo' + mustBeOnlineToViewMembers: 'Debes estar en línea para poder ver los miembros de este espacio de trabajo', }, emptyWorkspace: { title: 'Crear un nuevo espacio de trabajo', diff --git a/src/pages/workspace/WorkspaceMembersPage.js b/src/pages/workspace/WorkspaceMembersPage.js index ca874fae67e0..a75623990afb 100644 --- a/src/pages/workspace/WorkspaceMembersPage.js +++ b/src/pages/workspace/WorkspaceMembersPage.js @@ -79,7 +79,7 @@ function WorkspaceMembersPage(props) { const accountIDs = useMemo(() => _.keys(props.policyMembers), [props.policyMembers]); const prevAccountIDs = usePrevious(accountIDs); const textInputRef = useRef(null); - const isOfflineAndNeedGetData = _.isEmpty(props.policyMembers) && props.network.isOffline + const isOfflineAndNeedGetData = _.isEmpty(props.policyMembers) && props.network.isOffline; /** * Get members for the current workspace @@ -348,9 +348,11 @@ function WorkspaceMembersPage(props) { const data = getMemberOptions(); const getHeaderMessage = () => { - if(isOfflineAndNeedGetData) {return props.translate('workspace.common.mustBeOnlineToViewMembers');} - return searchValue.trim() && !data.length ? props.translate('workspace.common.memberNotFound') : '' - } + if (isOfflineAndNeedGetData) { + return props.translate('workspace.common.mustBeOnlineToViewMembers'); + } + return searchValue.trim() && !data.length ? props.translate('workspace.common.memberNotFound') : ''; + }; return ( Date: Tue, 10 Oct 2023 15:01:58 +0700 Subject: [PATCH 3/5] Update en.ts Co-authored-by: Maria D'Costa --- src/languages/en.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/languages/en.ts b/src/languages/en.ts index 5fba537aae5e..f6cb4d3fa5ec 100755 --- a/src/languages/en.ts +++ b/src/languages/en.ts @@ -1336,7 +1336,7 @@ export default { notAuthorized: `You do not have access to this page. Are you trying to join the workspace? Please reach out to the owner of this workspace so they can add you as a member! Something else? Reach out to ${CONST.EMAIL.CONCIERGE}`, goToRoom: ({roomName}: GoToRoomParams) => `Go to ${roomName} room`, workspaceAvatar: 'Workspace avatar', - mustBeOnlineToViewMembers: 'You must be online in order to view members of this workspace', + mustBeOnlineToViewMembers: 'You must be online in order to view members of this workspace.', }, emptyWorkspace: { title: 'Create a new workspace', From 6f9cbbc36342beac6888c2b8552c192ae3183fa3 Mon Sep 17 00:00:00 2001 From: DylanDylann <141406735+DylanDylann@users.noreply.github.com> Date: Tue, 10 Oct 2023 15:02:06 +0700 Subject: [PATCH 4/5] Update es.ts Co-authored-by: Maria D'Costa --- src/languages/es.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/languages/es.ts b/src/languages/es.ts index e9f28193f939..ae8bf1d363e1 100644 --- a/src/languages/es.ts +++ b/src/languages/es.ts @@ -1356,7 +1356,7 @@ export default { notAuthorized: `No tienes acceso a esta página. ¿Estás tratando de unirte al espacio de trabajo? Comunícate con el propietario de este espacio de trabajo para que pueda añadirte como miembro. ¿Necesitas algo más? Comunícate con ${CONST.EMAIL.CONCIERGE}`, goToRoom: ({roomName}: GoToRoomParams) => `Ir a la sala ${roomName}`, workspaceAvatar: 'Espacio de trabajo avatar', - mustBeOnlineToViewMembers: 'Debes estar en línea para poder ver los miembros de este espacio de trabajo', + mustBeOnlineToViewMembers: 'Debes estar en línea para poder ver los miembros de este espacio de trabajo.', }, emptyWorkspace: { title: 'Crear un nuevo espacio de trabajo', From eba4c5d71df03795f94dc49b295f33d32287b285 Mon Sep 17 00:00:00 2001 From: DylanDylann Date: Tue, 10 Oct 2023 15:18:00 +0700 Subject: [PATCH 5/5] Name variable clearer in workspace member page --- src/pages/workspace/WorkspaceMembersPage.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/pages/workspace/WorkspaceMembersPage.js b/src/pages/workspace/WorkspaceMembersPage.js index a75623990afb..873ce8a03623 100644 --- a/src/pages/workspace/WorkspaceMembersPage.js +++ b/src/pages/workspace/WorkspaceMembersPage.js @@ -79,8 +79,7 @@ function WorkspaceMembersPage(props) { const accountIDs = useMemo(() => _.keys(props.policyMembers), [props.policyMembers]); const prevAccountIDs = usePrevious(accountIDs); const textInputRef = useRef(null); - const isOfflineAndNeedGetData = _.isEmpty(props.policyMembers) && props.network.isOffline; - + const isOfflineAndNoMemberDataAvailable = _.isEmpty(props.policyMembers) && props.network.isOffline; /** * Get members for the current workspace */ @@ -348,7 +347,7 @@ function WorkspaceMembersPage(props) { const data = getMemberOptions(); const getHeaderMessage = () => { - if (isOfflineAndNeedGetData) { + if (isOfflineAndNoMemberDataAvailable) { return props.translate('workspace.common.mustBeOnlineToViewMembers'); } return searchValue.trim() && !data.length ? props.translate('workspace.common.memberNotFound') : ''; @@ -421,7 +420,7 @@ function WorkspaceMembersPage(props) { onSelectRow={(item) => toggleUser(item.keyForList)} onSelectAll={() => toggleAllUsers(data)} onDismissError={dismissError} - showLoadingPlaceholder={!isOfflineAndNeedGetData && (!OptionsListUtils.isPersonalDetailsReady(props.personalDetails) || _.isEmpty(props.policyMembers))} + showLoadingPlaceholder={!isOfflineAndNoMemberDataAvailable && (!OptionsListUtils.isPersonalDetailsReady(props.personalDetails) || _.isEmpty(props.policyMembers))} showScrollIndicator shouldFocusOnSelectRow={!Browser.isMobile()} inputRef={textInputRef}