getRange = async (range, spreadsheetId) => {
try {
if (Array.isArray(range)) {
const { result } = await client.sheets.spreadsheets.values.batchGet({
spreadsheetId,
ranges: range,
valueRenderOption
});
return result.valueRanges.reduce(
(result, { range, values }) => ({
...result,
[range]: rangeToObject(values)
}),
{}
);
}
const { result } = await client.sheets.spreadsheets.values.get({
spreadsheetId,
range,
valueRenderOption
});
return rangeToObject(result.values);
} catch (error) {
console.error(error.result.error);
return new Error(error.result.error.message);
}
}