UNPKG

n8n-nodes-base

Version:

Base nodes of n8n

70 lines 3.17 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.description = void 0; exports.execute = execute; const utilities_1 = require("../../../../../../utils/utilities"); const transport_1 = require("../../transport"); const common_descriptions_1 = require("../common.descriptions"); const properties = [ common_descriptions_1.workbookRLC, { displayName: 'Options', name: 'additionalFields', type: 'collection', placeholder: 'Add option', default: {}, options: [ { displayName: 'Name', name: 'name', type: 'string', default: '', description: 'The name of the sheet to be added. The name should be unique. If not specified, Excel will determine the name of the new worksheet.', }, ], }, ]; const displayOptions = { show: { resource: ['workbook'], operation: ['addWorksheet'], }, }; exports.description = (0, utilities_1.updateDisplayOptions)(displayOptions, properties); async function execute(items) { //https://docs.microsoft.com/en-us/graph/api/worksheetcollection-add?view=graph-rest-1.0&tabs=http const returnData = []; for (let i = 0; i < items.length; i++) { try { const workbookId = this.getNodeParameter('workbook', i, undefined, { extractValue: true, }); const additionalFields = this.getNodeParameter('additionalFields', i); const body = {}; if (additionalFields.name) { body.name = additionalFields.name; } const { id } = await transport_1.microsoftApiRequest.call(this, 'POST', `/drive/items/${workbookId}/workbook/createSession`, { persistChanges: true }); const responseData = await transport_1.microsoftApiRequest.call(this, 'POST', `/drive/items/${workbookId}/workbook/worksheets/add`, body, {}, '', { 'workbook-session-id': id }); await transport_1.microsoftApiRequest.call(this, 'POST', `/drive/items/${workbookId}/workbook/closeSession`, {}, {}, '', { 'workbook-session-id': id }); if (Array.isArray(responseData)) { const executionData = this.helpers.constructExecutionMetaData(this.helpers.returnJsonArray(responseData), { itemData: { item: i } }); returnData.push(...executionData); } else if (responseData !== undefined) { const executionData = this.helpers.constructExecutionMetaData(this.helpers.returnJsonArray(responseData), { itemData: { item: i } }); returnData.push(...executionData); } } catch (error) { if (this.continueOnFail()) { const executionErrorData = this.helpers.constructExecutionMetaData(this.helpers.returnJsonArray({ error: error.message }), { itemData: { item: i } }); returnData.push(...executionErrorData); continue; } throw error; } } return returnData; } //# sourceMappingURL=addWorksheet.operation.js.map