Skip to content

Commit 67f51a7

Browse files
committed
fix: credentials logic
1 parent 72e4fd5 commit 67f51a7

File tree

1 file changed

+10
-47
lines changed
  • apps/sim/app/workspace/[workspaceId]/w/components/sidebar/components/settings-modal/components/credentials

1 file changed

+10
-47
lines changed

apps/sim/app/workspace/[workspaceId]/w/components/sidebar/components/settings-modal/components/credentials/credentials-manager.tsx

Lines changed: 10 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -775,20 +775,6 @@ export function CredentialsManager() {
775775
}
776776
}
777777

778-
const handleDeleteCredential = async () => {
779-
if (!selectedCredential) return
780-
if (selectedCredential.type === 'oauth') {
781-
await handleDisconnectSelectedCredential()
782-
return
783-
}
784-
try {
785-
await deleteCredential.mutateAsync(selectedCredential.id)
786-
setSelectedCredentialId(null)
787-
} catch (error) {
788-
logger.error('Failed to delete credential', error)
789-
}
790-
}
791-
792778
const handleDeleteClick = (credential: WorkspaceCredential) => {
793779
setCredentialToDelete(credential)
794780
setShowDeleteConfirmDialog(true)
@@ -905,31 +891,6 @@ export function CredentialsManager() {
905891
}
906892
}
907893

908-
const handleDisconnectSelectedCredential = async () => {
909-
if (!selectedCredential || selectedCredential.type !== 'oauth' || !selectedCredential.accountId)
910-
return
911-
if (!selectedCredential.providerId) return
912-
913-
try {
914-
await disconnectOAuthService.mutateAsync({
915-
provider: selectedCredential.providerId.split('-')[0] || selectedCredential.providerId,
916-
providerId: selectedCredential.providerId,
917-
serviceId: selectedCredential.providerId,
918-
accountId: selectedCredential.accountId,
919-
})
920-
921-
setSelectedCredentialId(null)
922-
await refetchCredentials()
923-
window.dispatchEvent(
924-
new CustomEvent('oauth-credentials-updated', {
925-
detail: { providerId: selectedCredential.providerId, workspaceId },
926-
})
927-
)
928-
} catch (error) {
929-
logger.error('Failed to disconnect credential account', error)
930-
}
931-
}
932-
933894
const handleReconnectOAuth = async () => {
934895
if (
935896
!selectedCredential ||
@@ -1689,7 +1650,7 @@ export function CredentialsManager() {
16891650
)}
16901651
<Button
16911652
variant='ghost'
1692-
onClick={handleDeleteCredential}
1653+
onClick={() => handleDeleteClick(selectedCredential)}
16931654
disabled={
16941655
deleteCredential.isPending || isPromoting || disconnectOAuthService.isPending
16951656
}
@@ -1766,13 +1727,15 @@ export function CredentialsManager() {
17661727
<Button variant='default' onClick={() => handleSelectCredential(credential)}>
17671728
Details
17681729
</Button>
1769-
<Button
1770-
variant='ghost'
1771-
onClick={() => handleDeleteClick(credential)}
1772-
disabled={deleteCredential.isPending || disconnectOAuthService.isPending}
1773-
>
1774-
Delete
1775-
</Button>
1730+
{credential.role === 'admin' && (
1731+
<Button
1732+
variant='ghost'
1733+
onClick={() => handleDeleteClick(credential)}
1734+
disabled={deleteCredential.isPending || disconnectOAuthService.isPending}
1735+
>
1736+
Delete
1737+
</Button>
1738+
)}
17761739
</div>
17771740
</div>
17781741
))}

0 commit comments

Comments
 (0)