From 9fbdbf5171f260c7927e4c7860405f0afecb8b10 Mon Sep 17 00:00:00 2001 From: Shawn Erquhart Date: Thu, 28 Sep 2017 11:12:45 -0400 Subject: [PATCH] stop markdown shortcodes from being escaped --- .../Markdown/serializers/remarkEscapeMarkdownEntities.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/components/Widgets/Markdown/serializers/remarkEscapeMarkdownEntities.js b/src/components/Widgets/Markdown/serializers/remarkEscapeMarkdownEntities.js index 6e7903c5..344f0f60 100644 --- a/src/components/Widgets/Markdown/serializers/remarkEscapeMarkdownEntities.js +++ b/src/components/Widgets/Markdown/serializers/remarkEscapeMarkdownEntities.js @@ -1,4 +1,4 @@ -import { flow, partial, flatMap, flatten, map } from 'lodash'; +import { has, flow, partial, flatMap, flatten, map } from 'lodash'; import { joinPatternSegments, combinePatterns, replaceWhen } from '../../../../lib/regexHelper'; /** @@ -248,6 +248,12 @@ function escape(delim) { */ export default function remarkEscapeMarkdownEntities() { const transform = (node, index) => { + /** + * Shortcode nodes will intentionally inject markdown entities in text node + * children not be escaped. + */ + if (has(node.data, 'shortcode')) return node; + const children = node.children && node.children.map(transform); /**