@voiceflow/slate-serializer 1.5.2 → 1.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -33,19 +33,28 @@ const serializeTextNode = (node) => {
33
33
  const isStrikeThrough = node[base_types_1.Text.TextProperty.STRIKE_THROUGH];
34
34
  const fontWeight = node[base_types_1.Text.TextProperty.FONT_WEIGHT];
35
35
  let { text } = node;
36
+ if (!text.trim())
37
+ return text;
38
+ // Extract leading and trailing whitespaces
39
+ const leadingWhitespace = text.match(/^\s+/) || '';
40
+ const trailingWhitespace = text.match(/\s+$/) || '';
41
+ // Trim the text to remove leading and trailing whitespaces
42
+ text = text.trim();
36
43
  if (isItalic)
37
- text = `_${text}_`;
44
+ text = `*${text}*`;
38
45
  if (isUnderline)
39
46
  text = `<u>${text}</u>`;
40
47
  if (isStrikeThrough)
41
48
  text = `~~${text}~~`;
42
49
  if (fontWeight)
43
50
  text = `**${text}**`;
44
- return text;
51
+ // Add the leading and trailing whitespaces back to the outside of the markers
52
+ return `${leadingWhitespace}${text}${trailingWhitespace}`;
45
53
  };
46
54
  const serializeLinkElement = (node) => {
55
+ var _a;
47
56
  const children = node.children.map(serializeNodeFactory());
48
- return `[${children}](${node.url})`;
57
+ return `[${children}](${(_a = node.url) === null || _a === void 0 ? void 0 : _a.replace(/\s+/g, '')})`;
49
58
  };
50
59
  const serializeVariableElement = (node) => `{${node.name}}`;
51
60
  const serializeElementNode = (node) => {
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.cjs","sourceRoot":"","sources":["../../../src/serializers/markdown.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAAuD;AACvD,6CAA+B;AAE/B,sCAA6D;AAE7D,MAAM,iBAAiB,GAAG,CAAC,IAAmB,EAAU,EAAE;IACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IAEvD,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IAEpB,IAAI,QAAQ;QAAE,IAAI,GAAG,IAAI,IAAI,GAAG,CAAC;IACjC,IAAI,WAAW;QAAE,IAAI,GAAG,MAAM,IAAI,MAAM,CAAC;IACzC,IAAI,eAAe;QAAE,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC;IAC1C,IAAI,UAAU;QAAE,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC;IAErC,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,IAA0B,EAAU,EAAE;IAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,CAAC;IAE3D,OAAO,IAAI,QAAQ,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC;AACtC,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAAC,IAA8B,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC;AAEtF,MAAM,oBAAoB,GAAG,CAAC,IAAyB,EAAU,EAAE;IACjE,IAAI,IAAA,sBAAa,EAAC,IAAI,CAAC;QAAE,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC3D,IAAI,IAAA,0BAAiB,EAAC,IAAI,CAAC;QAAE,OAAO,wBAAwB,CAAC,IAAI,CAAC,CAAC;IAEnE,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC5D,CAAC,CAAC;AAEF,MAAM,oBAAoB,GACxB,GAAG,EAAE,CACL,CAAC,IAAyB,EAAU,EAAE;AACpC,6CAA6C;AAC7C,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAEjH,MAAM,mBAAmB,GAAG,CAAC,OAAgC,EAAU,EAAE,CAC9E,OAAO;KACJ,GAAG,CAAC,oBAAoB,EAAE,CAAC;KAC3B,IAAI,CAAC,IAAI,CAAC;KACV,OAAO,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;AAJnE,QAAA,mBAAmB,uBAIgD"}
1
+ {"version":3,"file":"markdown.cjs","sourceRoot":"","sources":["../../../src/serializers/markdown.ts"],"names":[],"mappings":"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"}
@@ -7,19 +7,28 @@ const serializeTextNode = (node) => {
7
7
  const isStrikeThrough = node[Text.TextProperty.STRIKE_THROUGH];
8
8
  const fontWeight = node[Text.TextProperty.FONT_WEIGHT];
9
9
  let { text } = node;
10
+ if (!text.trim())
11
+ return text;
12
+ // Extract leading and trailing whitespaces
13
+ const leadingWhitespace = text.match(/^\s+/) || '';
14
+ const trailingWhitespace = text.match(/\s+$/) || '';
15
+ // Trim the text to remove leading and trailing whitespaces
16
+ text = text.trim();
10
17
  if (isItalic)
11
- text = `_${text}_`;
18
+ text = `*${text}*`;
12
19
  if (isUnderline)
13
20
  text = `<u>${text}</u>`;
14
21
  if (isStrikeThrough)
15
22
  text = `~~${text}~~`;
16
23
  if (fontWeight)
17
24
  text = `**${text}**`;
18
- return text;
25
+ // Add the leading and trailing whitespaces back to the outside of the markers
26
+ return `${leadingWhitespace}${text}${trailingWhitespace}`;
19
27
  };
20
28
  const serializeLinkElement = (node) => {
29
+ var _a;
21
30
  const children = node.children.map(serializeNodeFactory());
22
- return `[${children}](${node.url})`;
31
+ return `[${children}](${(_a = node.url) === null || _a === void 0 ? void 0 : _a.replace(/\s+/g, '')})`;
23
32
  };
24
33
  const serializeVariableElement = (node) => `{${node.name}}`;
25
34
  const serializeElementNode = (node) => {
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.mjs","sourceRoot":"","sources":["../../../src/serializers/markdown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,IAAI,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE7D,MAAM,iBAAiB,GAAG,CAAC,IAAmB,EAAU,EAAE;IACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IAEvD,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IAEpB,IAAI,QAAQ;QAAE,IAAI,GAAG,IAAI,IAAI,GAAG,CAAC;IACjC,IAAI,WAAW;QAAE,IAAI,GAAG,MAAM,IAAI,MAAM,CAAC;IACzC,IAAI,eAAe;QAAE,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC;IAC1C,IAAI,UAAU;QAAE,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC;IAErC,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,IAA0B,EAAU,EAAE;IAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,CAAC;IAE3D,OAAO,IAAI,QAAQ,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC;AACtC,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAAC,IAA8B,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC;AAEtF,MAAM,oBAAoB,GAAG,CAAC,IAAyB,EAAU,EAAE;IACjE,IAAI,aAAa,CAAC,IAAI,CAAC;QAAE,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC3D,IAAI,iBAAiB,CAAC,IAAI,CAAC;QAAE,OAAO,wBAAwB,CAAC,IAAI,CAAC,CAAC;IAEnE,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC5D,CAAC,CAAC;AAEF,MAAM,oBAAoB,GACxB,GAAG,EAAE,CACL,CAAC,IAAyB,EAAU,EAAE;AACpC,6CAA6C;AAC7C,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAExH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,OAAgC,EAAU,EAAE,CAC9E,OAAO;KACJ,GAAG,CAAC,oBAAoB,EAAE,CAAC;KAC3B,IAAI,CAAC,IAAI,CAAC;KACV,OAAO,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"markdown.mjs","sourceRoot":"","sources":["../../../src/serializers/markdown.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@voiceflow/slate-serializer",
3
3
  "type": "module",
4
4
  "description": "Utilities for serializing slate data",
5
- "version": "1.5.2",
5
+ "version": "1.5.4",
6
6
  "author": "Ben Teichman",
7
7
  "bugs": {
8
8
  "url": "https://github.com/voiceflow/slate-serializer/issues"