fix: Resolve Google Drive picker promise with file data

This commit is contained in:
Taylor Wilsdon (aider) 2024-12-15 16:31:30 -05:00
parent 90e70608b9
commit 7bc1876e37

View File

@ -47,7 +47,9 @@ export const getAuthToken = async () => {
return oauthToken; return oauthToken;
}; };
export const createPicker = async () => { export const createPicker = () => {
return new Promise(async (resolve, reject) => {
try {
if (!pickerApiLoaded) { if (!pickerApiLoaded) {
await loadGoogleDriveApi(); await loadGoogleDriveApi();
} }
@ -68,13 +70,19 @@ export const createPicker = async () => {
const fileName = doc[google.picker.Document.NAME]; const fileName = doc[google.picker.Document.NAME];
const fileUrl = doc[google.picker.Document.URL]; const fileUrl = doc[google.picker.Document.URL];
return { resolve({
id: fileId, id: fileId,
name: fileName, name: fileName,
url: fileUrl url: fileUrl
}; });
} else if (data[google.picker.Response.ACTION] === google.picker.Action.CANCEL) {
resolve(null);
} }
}) })
.build(); .build();
picker.setVisible(true); picker.setVisible(true);
} catch (error) {
reject(error);
}
});
}; };