@iexec/dataprotector
Version:
This product enables users to confidentially store data–such as mail address, documents, personal information ...
21 lines • 965 B
JavaScript
import { WorkflowError } from '../../utils/errors.js';
import { grantedAccessSchema, throwIfMissing } from '../../utils/validators.js';
export const revokeOneAccess = async ({ iexec = throwIfMissing(), ...grantedAccess // rest always gives an object
}) => {
const vGrantedAccess = grantedAccessSchema()
.required('The GrantedAccess is required to be revoked')
.validateSync(Object.keys(grantedAccess).length === 0 ? undefined : grantedAccess // pass undefined if rest operator returns an empty object to trigger the 'required' check
);
try {
const { remainingAccess, ...datasetOrder } = vGrantedAccess;
const { txHash } = await iexec.order.cancelDatasetorder(datasetOrder);
return { access: vGrantedAccess, txHash };
}
catch (e) {
throw new WorkflowError({
message: 'Failed to revoke access',
errorCause: e,
});
}
};
//# sourceMappingURL=revokeOneAccess.js.map