carpetas inicio

This commit is contained in:
Lemuel Marquez
2021-01-19 09:39:50 -06:00
parent 81d14c48a1
commit f22ffca48c
3 changed files with 80 additions and 46 deletions
+48 -8
View File
@@ -15,7 +15,7 @@ jwtClient = new google.auth.JWT(
['https://www.googleapis.com/auth/drive']
);
const list = () => {
const list = (pageToken) => {
return new Promise((resolve, reject) => {
jwtClient.authorize((err, tokens) => {
if (err) reject('Error de autorización: ' + err);
@@ -26,19 +26,58 @@ const list = () => {
supportsTeamDrives: true,
includeTeamDriveItems: true,
spaces: 'drive',
pageSize: 100,
pageToken,
fields: '*',
orderBy: 'name',
},
async (err, resp) => {
if (err) {
reject('Ha habido un error en la petición: ' + err);
return;
}
resolve(resp.data.files);
(err, resp) => {
if (err) reject('Ha habido un error en la petición: ' + err);
resolve(resp.data);
}
);
});
});
};
// Buscar carpeta
const buscarCarpeta = async (name) => {
const data = [];
let pageToken = '';
do {
let response = await list(pageToken);
let files = response.files;
for (let i = 0; i < files.length; i++)
if (
files[i].name === name //&&
// files[i].mimeType === 'application/vnd.google-apps.folder'
)
data.push(files[i]);
if (response.nextPageToken) pageToken = response.nextPageToken;
else pageToken = '';
} while (pageToken);
return data;
};
const archivosCarpeta = async (id) => {
let pageToken = '';
const data = [];
do {
let response = await list(pageToken);
let files = response.files;
for (let i = 0; i < files.length; i++)
if (files[i].parents[0] === id) data.push(files[i]);
if (response.nextPageToken) pageToken = response.nextPageToken;
else pageToken = '';
} while (pageToken);
return data;
};
// Borrar archivo
const deleteFile = (fileId) => {
return new Promise((resolve, reject) => {
jwtClient.authorize(async (err, tokens) => {
@@ -151,5 +190,6 @@ const borrarTodo = () => {
module.exports = {
folder,
uploadFile,
list,
buscarCarpeta,
archivosCarpeta,
};