From 5d4a52d3b7e35924e1a8c9a2c808418bdf224d2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20Ovejero?= Date: Thu, 16 Nov 2023 16:50:06 +0100 Subject: [PATCH] fix(Google Sheets Node): Check for `null` before destructuring (#7729) https://n8nio.sentry.io/issues/4613453684 --- .../nodes/Google/Sheet/v2/methods/loadOptions.ts | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/nodes-base/nodes/Google/Sheet/v2/methods/loadOptions.ts b/packages/nodes-base/nodes/Google/Sheet/v2/methods/loadOptions.ts index 42bc396e48ea7..a09f55b736576 100644 --- a/packages/nodes-base/nodes/Google/Sheet/v2/methods/loadOptions.ts +++ b/packages/nodes-base/nodes/Google/Sheet/v2/methods/loadOptions.ts @@ -5,7 +5,12 @@ import { getSpreadsheetId } from '../helpers/GoogleSheets.utils'; import type { ResourceLocator } from '../helpers/GoogleSheets.types'; export async function getSheets(this: ILoadOptionsFunctions): Promise { - const { mode, value } = this.getNodeParameter('documentId', 0) as IDataObject; + const documentId = this.getNodeParameter('documentId', 0) as IDataObject | null; + + if (!documentId) return []; + + const { mode, value } = documentId; + const spreadsheetId = getSpreadsheetId(this.getNode(), mode as ResourceLocator, value as string); const sheet = new GoogleSheet(spreadsheetId, this); @@ -33,7 +38,12 @@ export async function getSheets(this: ILoadOptionsFunctions): Promise { - const { mode, value } = this.getNodeParameter('documentId', 0) as IDataObject; + const documentId = this.getNodeParameter('documentId', 0) as IDataObject | null; + + if (!documentId) return []; + + const { mode, value } = documentId; + const spreadsheetId = getSpreadsheetId(this.getNode(), mode as ResourceLocator, value as string); const sheet = new GoogleSheet(spreadsheetId, this);