|
1 | 1 | 'use strict'; |
2 | 2 | const fs = require('node:fs'); |
3 | | -const oneDriveAPI = require('onedrive-api'); |
| 3 | +//const oneDriveAPI = require('onedrive-api'); |
4 | 4 | const Onedrive = require('../oneDriveLib'); |
5 | | -const got = require('@esm2cjs/got').default; |
| 5 | +//const got = require('@esm2cjs/got').default; |
6 | 6 |
|
7 | 7 | let od_accessToken; |
8 | 8 |
|
@@ -143,7 +143,7 @@ async function list(restoreSource, options, types, log, callback) { |
143 | 143 | callback && callback(); |
144 | 144 | } |
145 | 145 | } |
146 | | - |
| 146 | +/* |
147 | 147 | async function getFile(options, fileName, toStoreName, log, callback) { |
148 | 148 | const db_onedriveAccessJson = options.onedriveAccessJson !== undefined ? options.onedriveAccessJson : options.onedrive?.onedriveAccessJson || ''; |
149 | 149 | const db_dir = options.dir !== undefined ? options.dir : options.onedrive?.dir || '/'; |
@@ -243,6 +243,40 @@ async function getFile(options, fileName, toStoreName, log, callback) { |
243 | 243 | callback && callback('Not configured'); |
244 | 244 | } |
245 | 245 | } |
| 246 | +*/ |
| 247 | + |
| 248 | +async function getFile(options, fileName, toStoreName, log, callback) { |
| 249 | + const db_onedriveAccessJson = options.onedriveAccessJson ?? options.onedrive?.onedriveAccessJson ?? ''; |
| 250 | + const db_dir = options.dir ?? options.onedrive?.dir ?? '/'; |
| 251 | + const db_ownDir = options.ownDir ?? options.onedrive?.ownDir ?? false; |
| 252 | + const db_dirMinimal = options.dirMinimal ?? options.onedrive?.dirMinimal ?? '/'; |
| 253 | + |
| 254 | + const onedrive = new Onedrive(); |
| 255 | + const od_accessToken = await onedrive.getToken(db_onedriveAccessJson, log).catch(err => log.warn(`OneDrive Token: ${err}`)); |
| 256 | + |
| 257 | + if (!od_accessToken) { |
| 258 | + callback?.('Not configured'); |
| 259 | + return; |
| 260 | + } |
| 261 | + |
| 262 | + try { |
| 263 | + const dir = db_ownDir ? db_dirMinimal : db_dir; |
| 264 | + const onlyFileName = fileName.split('/').pop(); |
| 265 | + |
| 266 | + await onedrive.downloadFileByName({ |
| 267 | + accessToken: od_accessToken, |
| 268 | + dir, |
| 269 | + fileName: onlyFileName, |
| 270 | + targetPath: toStoreName, |
| 271 | + log |
| 272 | + }); |
| 273 | + |
| 274 | + callback?.(); |
| 275 | + } catch (err) { |
| 276 | + log.error(`OneDrive: ${err.message}`); |
| 277 | + callback?.(err); |
| 278 | + } |
| 279 | +} |
246 | 280 |
|
247 | 281 | module.exports = { |
248 | 282 | list, |
|
0 commit comments