From 999645ede83ed9de618b65d6305a2a0ec510c560 Mon Sep 17 00:00:00 2001 From: Vikram Kalta Date: Mon, 11 Mar 2024 22:08:34 +0000 Subject: [PATCH 1/3] feat: added support for fragments --- .../utils/render/DefaultOption.java | 2 + .../com/contentstack/utils/RTEResult.java | 2 + .../java/com/contentstack/utils/TestRte.java | 9 ++ src/test/resources/reports/fragment.json | 132 ++++++++++++++++++ 4 files changed, 145 insertions(+) create mode 100644 src/test/resources/reports/fragment.json diff --git a/src/main/java/com/contentstack/utils/render/DefaultOption.java b/src/main/java/com/contentstack/utils/render/DefaultOption.java index 7bdeab7..a713145 100644 --- a/src/main/java/com/contentstack/utils/render/DefaultOption.java +++ b/src/main/java/com/contentstack/utils/render/DefaultOption.java @@ -154,6 +154,8 @@ public String renderNode(String nodeType, JSONObject nodeObject, NodeCallback ca return "" + children + ""; case "reference": return ""; + case "fragment": + return "" + children + ""; default: return children; } diff --git a/src/test/java/com/contentstack/utils/RTEResult.java b/src/test/java/com/contentstack/utils/RTEResult.java index 1458870..6ba9ab2 100644 --- a/src/test/java/com/contentstack/utils/RTEResult.java +++ b/src/test/java/com/contentstack/utils/RTEResult.java @@ -23,4 +23,6 @@ public class RTEResult { public static String kWFSFeesHtml = "

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.


\t\t\t\tUt enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
\tExcepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

"; public static String kONEHtml = "


A paragraph with break set as trueA paragraph with line break
and \t tab

"; + + public static String kFragment = "
  • One
    • nested one
    • nested two
  • Two
"; } diff --git a/src/test/java/com/contentstack/utils/TestRte.java b/src/test/java/com/contentstack/utils/TestRte.java index 86066fe..cea24dd 100644 --- a/src/test/java/com/contentstack/utils/TestRte.java +++ b/src/test/java/com/contentstack/utils/TestRte.java @@ -152,5 +152,14 @@ public void testIssueOct() throws IOException { // Assert.assertEquals(kONEHtml, result); } + @Test + public void testFragment() throws IOException { + final String rte = "src/test/resources/reports/fragment.json"; + JSONObject rteFragment = new ReadResource().readJson(rte); + String[] keyPath = {"json_rte"}; + Utils.jsonToHTML(rteFragment, keyPath, new DefaultOption()); + Assert.assertEquals(kFragment, rteFragment.get("json_rte")); + } + } diff --git a/src/test/resources/reports/fragment.json b/src/test/resources/reports/fragment.json new file mode 100644 index 0000000..4487166 --- /dev/null +++ b/src/test/resources/reports/fragment.json @@ -0,0 +1,132 @@ +{ + "title": "", + "json_rte": + { + "type": "doc", + "attrs": + {}, + "uid": "71ff5918b9434999b97c97629aecc32e", + "children": + [ + { + "uid": "6b80a5ead10445bf939d39c1f033bed9", + "type": "ul", + "children": + [ + { + "uid": "bf242d94ca4847b6a7144c57c03d0c84", + "type": "li", + "attrs": + { + "style": + {}, + "redactor-attributes": + {}, + "dir": "ltr" + }, + "children": + [ + { + "type": "fragment", + "children": + [ + { + "text": "One", + "bold": true + } + ], + "uid": "cc6c5b25a77f443ba7b7cc1c1a92e7cb" + }, + { + "uid": "388cdd29331e46859cb78806c30aab52", + "type": "ul", + "attrs": + { + "style": + {} + }, + "children": + [ + { + "type": "li", + "attrs": + { + "style": + {}, + "redactor-attributes": + {}, + "dir": "ltr" + }, + "uid": "5e35c7de876e463a80d5b7e7bb3dbb46", + "children": + [ + { + "text": "nested one " + } + ] + }, + { + "type": "li", + "attrs": + { + "style": + {}, + "redactor-attributes": + {}, + "dir": "ltr" + }, + "uid": "23015f6106ad47db9142a01fa6e5465c", + "children": + [ + { + "text": "nested two " + } + ] + } + ] + } + ] + }, + { + "type": "li", + "attrs": + { + "style": + {}, + "redactor-attributes": + {}, + "dir": "ltr" + }, + "uid": "6c3fe490f18347b896d3ac2ec982d389", + "children": + [ + { + "text": "Two" + } + ] + } + ], + "id": "10b11adfd2be427bb20f9e24122a6b48", + "attrs": + { + "style": + {}, + "redactor-attributes": + {}, + "dir": "ltr" + } + } + ], + "_version": 1 + }, + "tags": + [], + "locale": "en-us", + "uid": "blt9a8011fa3669348b", + "created_by": "blta7bacfb988d2bf5c", + "updated_by": "blt734e8a0a85290dd1", + "created_at": "2024-02-08T10:58:07.835Z", + "updated_at": "2024-02-13T10:59:49.357Z", + "_version": 9, + "_in_progress": true +} From a2dbcfef1f3057122df547e43508acf4837c3774 Mon Sep 17 00:00:00 2001 From: Abhinav Gupta Date: Thu, 21 Mar 2024 13:03:49 +0530 Subject: [PATCH 2/3] fix: updated dependency to fix snyk error --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d68f72d..ea7be60 100644 --- a/pom.xml +++ b/pom.xml @@ -28,7 +28,7 @@ 2.5.3 2.0.1.Final 20231013 - 6.0.13 + 6.0.18 1.10.0 From d7d2fbced1239b8d6e74d28ed47dedb1291e2a0a Mon Sep 17 00:00:00 2001 From: Abhinav Gupta Date: Thu, 21 Mar 2024 13:07:00 +0530 Subject: [PATCH 3/3] fix: updated package version --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ea7be60..9f0de33 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ 4.0.0 com.contentstack.sdk utils - 1.2.6 + 1.2.7 jar Contentstack-utils Java Utils SDK for Contentstack Content Delivery API, Contentstack is a headless CMS