From 08427935709fad4bf7fc1cb9927829a3be0d31a1 Mon Sep 17 00:00:00 2001
From: vitaliy-bezugly <157373241+vitalii-bezuhlyi@users.noreply.github.com>
Date: Mon, 8 Sep 2025 16:45:14 +0300
Subject: [PATCH 1/2] fix: updated blackbird.filters
---
Apps.Shopify/Apps.Shopify.csproj | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Apps.Shopify/Apps.Shopify.csproj b/Apps.Shopify/Apps.Shopify.csproj
index 253f8c2..ccee711 100644
--- a/Apps.Shopify/Apps.Shopify.csproj
+++ b/Apps.Shopify/Apps.Shopify.csproj
@@ -13,7 +13,7 @@
-
+
From d582cef6c025768ca2b6738fac3d064319b76a35 Mon Sep 17 00:00:00 2001
From: Anton Fesenko
Date: Mon, 8 Sep 2025 18:53:09 +0300
Subject: [PATCH 2/2] update app packages, add exception handling to
ShopifyHtmlConverter.ProductToJson
---
Apps.Shopify/Apps.Shopify.csproj | 4 ++--
Apps.Shopify/HtmlConversion/ShopifyHtmlConverter.cs | 4 ++++
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/Apps.Shopify/Apps.Shopify.csproj b/Apps.Shopify/Apps.Shopify.csproj
index ccee711..68a43c6 100644
--- a/Apps.Shopify/Apps.Shopify.csproj
+++ b/Apps.Shopify/Apps.Shopify.csproj
@@ -6,12 +6,12 @@
enable
Shopify
E-commerce platform that enables individuals and businesses to create and manage online stores.
- 1.5.7
+ 1.5.8
Apps.Shopify
-
+
diff --git a/Apps.Shopify/HtmlConversion/ShopifyHtmlConverter.cs b/Apps.Shopify/HtmlConversion/ShopifyHtmlConverter.cs
index 3901c3f..2c3a173 100644
--- a/Apps.Shopify/HtmlConversion/ShopifyHtmlConverter.cs
+++ b/Apps.Shopify/HtmlConversion/ShopifyHtmlConverter.cs
@@ -4,6 +4,7 @@
using Apps.Shopify.Models.Dto;
using Apps.Shopify.Models.Entities;
using Apps.Shopify.Models.Request.TranslatableResource;
+using Blackbird.Applications.Sdk.Common.Exceptions;
using HtmlAgilityPack;
namespace Apps.Shopify.HtmlConversion;
@@ -156,6 +157,9 @@ public static ProductTranslatableResourceDto ProductToJson(string file, string l
var productContentNodes = doc.DocumentNode.Descendants()
.Where(x => x.Attributes[KeyAttr]?.Value != null && x.ParentNode.Name == "body");
+ if (!productContentNodes.Any())
+ throw new PluginMisconfigurationException("Invalid product HTML: no product nodes with 'key' attribute found.");
+
var metafieldContentNodes = doc.DocumentNode.Descendants()
.FirstOrDefault(x => x.Attributes[TypeAttr]?.Value == MetafieldType)?
.ChildNodes.Where(x => x.Attributes[KeyAttr]?.Value != null);