securemark 0.247.1 → 0.247.2

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.247.2
4
+
5
+ - Fix math parser.
6
+
3
7
  ## 0.247.1
4
8
 
5
9
  - Fix math parser.
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! securemark v0.247.1 https://github.com/falsandtru/securemark | (c) 2017, falsandtru | UNLICENSED License */
1
+ /*! securemark v0.247.2 https://github.com/falsandtru/securemark | (c) 2017, falsandtru | UNLICENSED License */
2
2
  (function webpackUniversalModuleDefinition(root, factory) {
3
3
  if(typeof exports === 'object' && typeof module === 'object')
4
4
  module.exports = factory(require("DOMPurify"), require("Prism"));
@@ -6546,7 +6546,7 @@ const dom_1 = __webpack_require__(3252);
6546
6546
 
6547
6547
  const syntax = /^(?:[ "([](?!\$)|\\{(?!\$)|\\[\\}$]?|^`|`(?!`)|[!#%&')\x2A-\x5A\]^_\x61-\x7A|~])+/;
6548
6548
  const forbiddenCommand = /\\(?:begin|tiny|huge|large)(?![a-z])/i;
6549
- exports.math = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.validate)('$', (0, combinator_1.rewrite)((0, combinator_1.union)([(0, combinator_1.surround)('$', bracket, '$'), (0, combinator_1.surround)(/^\$(?!\s)/, (0, combinator_1.some)((0, combinator_1.union)([bracket, quote, (0, source_1.str)(syntax)])), /^\$(?![0-9A-Za-z])/)]), (source, {
6549
+ exports.math = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.validate)('$', (0, combinator_1.rewrite)((0, combinator_1.union)([(0, combinator_1.surround)('$', bracket, '$'), (0, combinator_1.surround)(/^\$(?![\s{}])/, (0, combinator_1.some)((0, combinator_1.union)([bracket, quote, (0, source_1.str)(syntax)])), /^\$(?![0-9A-Za-z])/)]), (source, {
6550
6550
  caches: {
6551
6551
  math: cache
6552
6552
  } = {}
@@ -6562,7 +6562,7 @@ exports.math = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combin
6562
6562
  'data-invalid-message': `"${source.match(forbiddenCommand)[0]}" command is forbidden`
6563
6563
  }, source)], '']))));
6564
6564
  const bracket = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.surround)('{', (0, combinator_1.some)((0, combinator_1.union)([bracket, (0, combinator_1.some)(source_1.escsource, /^(?:[{}$]|\\?\n)/)])), '}', true)));
6565
- const quote = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.surround)('``', (0, combinator_1.some)((0, combinator_1.union)([quote, bracket, (0, combinator_1.focus)(/^(?:\\[\\{}$]|`(?!`)|[^`{}"$\n])*/, (0, source_1.str)(syntax))])), /^"?/, true)));
6565
+ const quote = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.surround)('``', (0, combinator_1.some)((0, combinator_1.union)([quote, bracket, (0, combinator_1.focus)(/^(?:\\[\\{}$]|`(?!`)|[^`{}"$\n\P{ASCII}])*/u, (0, source_1.str)(syntax))])), /^"?/, true)));
6566
6566
 
6567
6567
  /***/ }),
6568
6568
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "securemark",
3
- "version": "0.247.1",
3
+ "version": "0.247.2",
4
4
  "description": "Secure markdown renderer working on browsers for user input data.",
5
5
  "private": false,
6
6
  "homepage": "https://github.com/falsandtru/securemark",
@@ -54,6 +54,9 @@ describe('Unit: parser/inline/math', () => {
54
54
  assert.deepStrictEqual(inspect(parser('${a} $')), undefined);
55
55
  assert.deepStrictEqual(inspect(parser('${a{b}$')), undefined);
56
56
  assert.deepStrictEqual(inspect(parser('${a}b}$')), undefined);
57
+ assert.deepStrictEqual(inspect(parser('${a}b$')), undefined);
58
+ assert.deepStrictEqual(inspect(parser('${a}b{c}$')), undefined);
59
+ assert.deepStrictEqual(inspect(parser('${a}{b}$')), undefined);
57
60
  assert.deepStrictEqual(inspect(parser('${$}$')), undefined);
58
61
  assert.deepStrictEqual(inspect(parser('${\\}$')), undefined);
59
62
  assert.deepStrictEqual(inspect(parser('${\n}$')), undefined);
@@ -128,9 +131,6 @@ describe('Unit: parser/inline/math', () => {
128
131
  assert.deepStrictEqual(inspect(parser('${\\a}$')), [['<span class="math" translate="no" data-src="${\\a}$">${\\a}$</span>'], '']);
129
132
  assert.deepStrictEqual(inspect(parser('${\\$}$')), [['<span class="math" translate="no" data-src="${\\$}$">${\\$}$</span>'], '']);
130
133
  assert.deepStrictEqual(inspect(parser('${\\\\}$')), [['<span class="math" translate="no" data-src="${\\\\}$">${\\\\}$</span>'], '']);
131
- assert.deepStrictEqual(inspect(parser('${a}b$')), [['<span class="math" translate="no" data-src="${a}b$">${a}b$</span>'], '']);
132
- assert.deepStrictEqual(inspect(parser('${a}b{c}$')), [['<span class="math" translate="no" data-src="${a}b{c}$">${a}b{c}$</span>'], '']);
133
- assert.deepStrictEqual(inspect(parser('${a}{b}$')), [['<span class="math" translate="no" data-src="${a}{b}$">${a}{b}$</span>'], '']);
134
134
  assert.deepStrictEqual(inspect(parser('${あ}$')), [['<span class="math" translate="no" data-src="${あ}$">${あ}$</span>'], '']);
135
135
  });
136
136
 
@@ -10,7 +10,7 @@ export const math: MathParser = lazy(() => creator(validate('$', rewrite(
10
10
  union([
11
11
  surround('$', bracket, '$'),
12
12
  surround(
13
- /^\$(?!\s)/,
13
+ /^\$(?![\s{}])/,
14
14
  some(union([
15
15
  bracket,
16
16
  quote,
@@ -47,7 +47,7 @@ const quote: MathParser.QuoteParser = lazy(() => creator(surround(
47
47
  some(union([
48
48
  quote,
49
49
  bracket,
50
- focus(/^(?:\\[\\{}$]|`(?!`)|[^`{}"$\n])*/, str(syntax)),
50
+ focus(/^(?:\\[\\{}$]|`(?!`)|[^`{}"$\n\P{ASCII}])*/u, str(syntax)),
51
51
  ])),
52
52
  /^"?/,
53
53
  true)));