diff --git a/packages/nodes-base/nodes/Google/Firebase/CloudFirestore/GenericFunctions.ts b/packages/nodes-base/nodes/Google/Firebase/CloudFirestore/GenericFunctions.ts index 7480448e12d..7ebde804135 100644 --- a/packages/nodes-base/nodes/Google/Firebase/CloudFirestore/GenericFunctions.ts +++ b/packages/nodes-base/nodes/Google/Firebase/CloudFirestore/GenericFunctions.ts @@ -90,7 +90,7 @@ export function jsonToDocument(value: string | number | IDataObject | IDataObjec return { booleanValue: value }; } else if (value === null) { return { nullValue: null }; - } else if (value !== '' && !isNaN(value as number)) { + } else if (value !== '' && typeof value !== 'object' && !isNaN(value as number)) { if (value.toString().indexOf('.') !== -1) { return { doubleValue: value }; } else { diff --git a/packages/nodes-base/nodes/Google/Firebase/CloudFirestore/__test__/GenericFunctions.test.ts b/packages/nodes-base/nodes/Google/Firebase/CloudFirestore/__test__/GenericFunctions.test.ts index 3820d03f3ea..41116693aa9 100644 --- a/packages/nodes-base/nodes/Google/Firebase/CloudFirestore/__test__/GenericFunctions.test.ts +++ b/packages/nodes-base/nodes/Google/Firebase/CloudFirestore/__test__/GenericFunctions.test.ts @@ -344,6 +344,10 @@ describe('GoogleFirebaseCloudFirestore > GenericFunctions', () => { }); }); + it('should convert empty arrays', () => { + expect(jsonToDocument([] as any)).toEqual({ arrayValue: { values: [] } }); + }); + it('should handle edge cases', () => { expect(jsonToDocument(0)).toEqual({ integerValue: 0 }); expect(jsonToDocument(NaN as any)).toEqual({});