UNPKG

@gravityforms/gulp-tasks

Version:
44 lines (43 loc) 1.37 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.makeFolder = void 0; const utils = require("../utils/utilsMethods"); /** * Make a folder in Google Drive. */ async function makeFolder(params) { let folderName; let parentIdentifiers; let overwrite = false; let isSharedDrive = false; // Add this let sharedDriveId; // Add this if (typeof params === 'string') { folderName = params; } else { ({ folderName, parentIdentifiers, overwrite, isSharedDrive, sharedDriveId } = params); } // Resolve parent ID const parentId = isSharedDrive && !parentIdentifiers ? sharedDriveId : await utils.resolveId(this, parentIdentifiers); const fileMetadata = { name: folderName, mimeType: 'application/vnd.google-apps.folder', parents: [parentId], }; if (overwrite) { await utils.overwrite(this, fileMetadata); } const createParams = { resource: fileMetadata, fields: 'id', supportsAllDrives: true, }; if (isSharedDrive && sharedDriveId) { createParams.corpora = 'drive'; createParams.driveId = sharedDriveId; createParams.includeItemsFromAllDrives = true; } const data = await this.call('files', 'create', createParams); return data.id; } exports.makeFolder = makeFolder;