Documentation
SDK client
Arrêter de partager

Arrêter le partage de fichiers et de dossiers

La méthode secrecyClient.cloud.deleteNodeSharing tente d'arrêter le partage d'un fichier ou d'un dossier avec un utilisateur ou un groupe donné. Elle prend deux paramètres : nodeId (l'ID du fichier ou du dossier dont on arrête le partage) et destPubKey (la clé publique de l'utilisateur ou du groupe avec lequel arrêter le partage).

cloud.ts
const stopSharingFileOrFolder = async ({
  nodeId,
  secrecyUserId,
}: {
  nodeId: string;
  secrecyUserId: string;
}): Promise<boolean> => {
  // First we need to check if the secrecyClient is available
  if (!secrecyClient) {
    return false;
  }
 
  try {
    // the sharing is identified by the public key of the user it was shared to
    const destPubKey = await secrecyClient.app.userPublicKey(secrecyUserId);
 
    const isSharingStop = await secrecyClient.cloud.deleteNodeSharing({
      nodeId,
      destPubKey,
    });
 
    return isSharingStop;
  } catch (error) {
    console.error(error);
    return false;
  }
};

Quitter un partage

La méthode secrecyClient.cloud.leaveNodeSharing est la contrepartie utilisée par le destinataire d'un partage pour retirer son propre accès. Elle prend le nodeId et le sharedByPubKey, la clé publique de l'utilisateur qui a partagé le nœud. Le sharedByPubKey d'un nœud partagé est disponible sur ses accès.

cloud.ts
const leaveSharedNode = async ({
  nodeId,
  sharedByPubKey,
}: {
  nodeId: string;
  sharedByPubKey: string;
}): Promise<boolean> => {
  // First we need to check if the secrecyClient is available
  if (!secrecyClient) {
    return false;
  }
 
  try {
    const hasLeft = await secrecyClient.cloud.leaveNodeSharing({
      nodeId,
      sharedByPubKey,
    });
 
    return hasLeft;
  } catch (error) {
    console.error(error);
    return false;
  }
};