Yuki Takei vor 1 Jahr
Ursprung
Commit
c6f7408446
2 geänderte Dateien mit 4 neuen und 10 gelöschten Zeilen
  1. 2 8
      apps/app/src/services/xss/commonmark-spec.ts
  2. 2 2
      apps/app/src/services/xss/xss.ts

+ 2 - 8
apps/app/src/services/xss/commonmark-spec.js → apps/app/src/services/xss/commonmark-spec.ts

@@ -25,7 +25,7 @@ const schemesCondition = schemesForAutolink.join('|');
  * @type {RegExp}
  * @see https://spec.commonmark.org/0.16/#autolinks
  */
-const uriAutolinkRegexp = new RegExp(`^(${schemesCondition}):\\/\\/.+$`);
+export const uriAutolinkRegexp = new RegExp(`^(${schemesCondition}):\\/\\/.+$`);
 
 /**
  * RegExp for email
@@ -33,10 +33,4 @@ const uriAutolinkRegexp = new RegExp(`^(${schemesCondition}):\\/\\/.+$`);
  * @see https://spec.commonmark.org/0.16/#autolinks
  */
 // eslint-disable-next-line max-len
-const emailAutolinkRegexp = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
-
-
-module.exports = {
-  uriAutolinkRegexp,
-  emailAutolinkRegexp,
-};
+export const emailAutolinkRegexp = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;

+ 2 - 2
apps/app/src/services/xss/xss.ts

@@ -1,7 +1,7 @@
 import type { IFilterXSSOptions } from 'xss';
 import { FilterXSS } from 'xss';
 
-import commonmarkSpec from './commonmark-spec';
+import { uriAutolinkRegexp, emailAutolinkRegexp } from './commonmark-spec';
 import type XssOption from './xssOption';
 
 
@@ -23,7 +23,7 @@ export class Xss {
       escapeHtml: (html) => { return html }, // resolve https://github.com/weseek/growi/issues/221
       onTag: (tag, html) => {
         // pass autolink
-        if (tag.match(commonmarkSpec.uriAutolinkRegexp) || tag.match(commonmarkSpec.emailAutolinkRegexp)) {
+        if (tag.match(uriAutolinkRegexp) || tag.match(emailAutolinkRegexp)) {
           return html;
         }
       },