From 8c11edd7e0939fb8f3bd28d62490415a43667be0 Mon Sep 17 00:00:00 2001 From: kodaho <23268819+kodaho@users.noreply.github.com> Date: Tue, 28 Jan 2025 19:44:38 +0100 Subject: [PATCH 1/2] fix(shopify): prevent infinite loop during all items request --- packages/nodes-base/nodes/Shopify/GenericFunctions.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/nodes-base/nodes/Shopify/GenericFunctions.ts b/packages/nodes-base/nodes/Shopify/GenericFunctions.ts index 1993bbba80..1c45d9be8b 100644 --- a/packages/nodes-base/nodes/Shopify/GenericFunctions.ts +++ b/packages/nodes-base/nodes/Shopify/GenericFunctions.ts @@ -113,8 +113,12 @@ export async function shopifyApiRequestAllItems( responseData = await shopifyApiRequest.call(this, method, resource, body, query, uri, { resolveWithFullResponse: true, }); - if (responseData.headers.link) { - uri = responseData.headers.link.split(';')[0].replace('<', '').replace('>', ''); + if (responseData.headers.link?.includes('rel="next"')) { + uri = responseData.headers.link + .split(';') + .filter((s: string) => s.includes('rel="next"'))[0] + .replace('<', '') + .replace('>', ''); } returnData.push.apply(returnData, responseData.body[propertyName] as IDataObject[]); } while (responseData.headers.link?.includes('rel="next"')); From 2665be2a9c97fe24221e79fe0d275cdd5e248d60 Mon Sep 17 00:00:00 2001 From: kodaho <23268819+kodaho@users.noreply.github.com> Date: Tue, 28 Jan 2025 19:52:32 +0100 Subject: [PATCH 2/2] fix split character + format --- packages/nodes-base/nodes/Shopify/GenericFunctions.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/nodes-base/nodes/Shopify/GenericFunctions.ts b/packages/nodes-base/nodes/Shopify/GenericFunctions.ts index 1c45d9be8b..255d608f21 100644 --- a/packages/nodes-base/nodes/Shopify/GenericFunctions.ts +++ b/packages/nodes-base/nodes/Shopify/GenericFunctions.ts @@ -115,8 +115,9 @@ export async function shopifyApiRequestAllItems( }); if (responseData.headers.link?.includes('rel="next"')) { uri = responseData.headers.link - .split(';') + .split(', ') .filter((s: string) => s.includes('rel="next"'))[0] + .split(';')[0] .replace('<', '') .replace('>', ''); }