@opensumi/ide-markdown 2.21.10-rc-1671677903.0 → 2.21.10

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.
@@ -1 +1 @@
1
- {"version":3,"file":"contribution.js","sourceRoot":"","sources":["../../src/browser/contribution.ts"],"names":[],"mappings":";;;;AAAA,qCAAyC;AACzC,iEAA+D;AAC/D,+DAAsE;AACtE,8DAAsG;AAEtG,sCAA6C;AAE7C,uDAA4D;AAE/C,QAAA,4BAA4B,GAAG,8BAA8B,CAAC;AAGpE,IAAM,kCAAkC,GAAxC,MAAM,kCAAkC;IAO7C,uBAAuB,CAAC,iBAA0C;QAChE,iBAAiB,CAAC,uBAAuB,CAAC;YACxC,GAAG,EAAE,oCAA4B;YACjC,SAAS,EAAE,yCAAuB;YAClC,MAAM,EAAE,yBAAO,CAAC,IAAI;SACrB,CAAC,CAAC;QAEH,iBAAiB,CAAC,+BAA+B,CAAC,yBAAO,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE;YACpF,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,KAAK,EAAE;gBACnC,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,WAAW;oBACjB,WAAW,EAAE,oCAA4B;oBACzC,KAAK,EAAE,IAAA,0BAAQ,EAAC,wBAAwB,CAAC;oBACzC,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAU,mCAAmC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC3F,CAAC,CAAC;aACJ;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAxBC;IAAC,IAAA,cAAS,EAAC,yBAAgB,CAAC;;2EACM;AAElC;IAAC,IAAA,cAAS,EAAC,oCAAiB,CAAC;;6EACQ;AAL1B,kCAAkC;IAD9C,IAAA,wBAAM,EAAC,mCAAyB,CAAC;GACrB,kCAAkC,CAyB9C;AAzBY,gFAAkC"}
1
+ {"version":3,"file":"contribution.js","sourceRoot":"","sources":["../../src/browser/contribution.ts"],"names":[],"mappings":";;;;AAAA,qCAAyC;AACzC,iEAA+D;AAC/D,+DAAsE;AACtE,8DAAsG;AAEtG,sCAA6C;AAE7C,uDAA4D;AAE/C,QAAA,4BAA4B,GAAG,8BAA8B,CAAC;AAG3E,IAAa,kCAAkC,GAA/C,MAAa,kCAAkC;IAO7C,uBAAuB,CAAC,iBAA0C;QAChE,iBAAiB,CAAC,uBAAuB,CAAC;YACxC,GAAG,EAAE,oCAA4B;YACjC,SAAS,EAAE,yCAAuB;YAClC,MAAM,EAAE,yBAAO,CAAC,IAAI;SACrB,CAAC,CAAC;QAEH,iBAAiB,CAAC,+BAA+B,CAAC,yBAAO,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE;YACpF,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,KAAK,EAAE;gBACnC,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,WAAW;oBACjB,WAAW,EAAE,oCAA4B;oBACzC,KAAK,EAAE,IAAA,0BAAQ,EAAC,wBAAwB,CAAC;oBACzC,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAU,mCAAmC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC3F,CAAC,CAAC;aACJ;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAvBC;IADC,IAAA,cAAS,EAAC,yBAAgB,CAAC;;2EACM;AAGlC;IADC,IAAA,cAAS,EAAC,oCAAiB,CAAC;;6EACQ;AAL1B,kCAAkC;IAD9C,IAAA,wBAAM,EAAC,mCAAyB,CAAC;GACrB,kCAAkC,CAyB9C;AAzBY,gFAAkC"}
@@ -1 +1 @@
1
- {"version":3,"file":"editor.markdown.d.ts","sourceRoot":"","sources":["../../src/browser/editor.markdown.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAA+B,MAAM,kCAAkC,CAAC;AAIrG,eAAO,MAAM,uBAAuB,EAAE,oBAAoB,CAAC,GAAG,CA2D7D,CAAC"}
1
+ {"version":3,"file":"editor.markdown.d.ts","sourceRoot":"","sources":["../../src/browser/editor.markdown.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAA+B,MAAM,kCAAkC,CAAC;AAIrG,eAAO,MAAM,uBAAuB,EAAE,oBAAoB,CAAC,GAAG,CAqD7D,CAAC"}
@@ -34,7 +34,7 @@ const MarkdownEditorComponent = ({ resource }) => {
34
34
  if (container) {
35
35
  // container可能已不存在
36
36
  markdownService
37
- .previewMarkdownInContainer(documentRef.instance.getText(), container, cancellation.token, undefined, onUpdate.event)
37
+ .previewMarkdownInContainer(documentRef.instance.getText(), container, cancellation.token, onUpdate.event)
38
38
  .then((r) => {
39
39
  disposer.addDispose(r);
40
40
  });
@@ -1 +1 @@
1
- {"version":3,"file":"editor.markdown.js","sourceRoot":"","sources":["../../src/browser/editor.markdown.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAE1B,iEAAyG;AACzG,8DAAqG;AAErG,sCAA6C;AAEtC,MAAM,uBAAuB,GAA8B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IACjF,IAAI,SAAS,GAAuB,IAAI,CAAC;IACzC,MAAM,eAAe,GAAqB,IAAA,gCAAa,EAAC,yBAAgB,CAAC,CAAC;IAC1E,MAAM,eAAe,GAAgC,IAAA,gCAAa,EAAC,qCAA2B,CAAC,CAAC;IAEhG,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,SAAS,EAAE;YACb,MAAM,QAAQ,GAAG,IAAI,6BAAU,EAAE,CAAC;YAClC,MAAM,YAAY,GAAG,IAAI,0CAAuB,EAAE,CAAC;YACnD,QAAQ,CAAC,UAAU,CAAC;gBAClB,OAAO,EAAE,GAAG,EAAE;oBACZ,YAAY,CAAC,MAAM,EAAE,CAAC;gBACxB,CAAC;aACF,CAAC,CAAC;YACH,eAAe,CAAC,oBAAoB,CAAC,QAAQ,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE;gBAC1F,IAAI,YAAY,CAAC,KAAK,CAAC,uBAAuB,EAAE;oBAC9C,IAAI,WAAW,EAAE;wBACf,WAAW,CAAC,OAAO,EAAE,CAAC;qBACvB;oBACD,OAAO;iBACR;gBACD,MAAM,QAAQ,GAAG,IAAI,0BAAO,EAAU,CAAC;gBACvC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAC9B,QAAQ,CAAC,UAAU,CACjB,WAAW,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE;oBAC7D,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;gBAChD,CAAC,CAAC,CACH,CAAC;gBACF,IAAI,SAAS,EAAE;oBACb,kBAAkB;oBAClB,eAAe;yBACZ,0BAA0B,CACzB,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,EAC9B,SAAU,EACV,YAAY,CAAC,KAAK,EAClB,SAAS,EACT,QAAQ,CAAC,KAAK,CACf;yBACA,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;wBACV,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;oBACzB,CAAC,CAAC,CAAC;iBACN;gBACD,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;YAEH,OAAO,GAAG,EAAE;gBACV,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrB,CAAC,CAAC;SACH;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CACL,uCACE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE;YACV,SAAS,GAAG,EAAE,CAAC;QACjB,CAAC,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GACpB,CACR,CAAC;AACJ,CAAC,CAAC;AA3DW,QAAA,uBAAuB,2BA2DlC"}
1
+ {"version":3,"file":"editor.markdown.js","sourceRoot":"","sources":["../../src/browser/editor.markdown.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAE1B,iEAAyG;AACzG,8DAAqG;AAErG,sCAA6C;AAEtC,MAAM,uBAAuB,GAA8B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IACjF,IAAI,SAAS,GAAuB,IAAI,CAAC;IACzC,MAAM,eAAe,GAAqB,IAAA,gCAAa,EAAC,yBAAgB,CAAC,CAAC;IAC1E,MAAM,eAAe,GAAgC,IAAA,gCAAa,EAAC,qCAA2B,CAAC,CAAC;IAEhG,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,SAAS,EAAE;YACb,MAAM,QAAQ,GAAG,IAAI,6BAAU,EAAE,CAAC;YAClC,MAAM,YAAY,GAAG,IAAI,0CAAuB,EAAE,CAAC;YACnD,QAAQ,CAAC,UAAU,CAAC;gBAClB,OAAO,EAAE,GAAG,EAAE;oBACZ,YAAY,CAAC,MAAM,EAAE,CAAC;gBACxB,CAAC;aACF,CAAC,CAAC;YACH,eAAe,CAAC,oBAAoB,CAAC,QAAQ,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE;gBAC1F,IAAI,YAAY,CAAC,KAAK,CAAC,uBAAuB,EAAE;oBAC9C,IAAI,WAAW,EAAE;wBACf,WAAW,CAAC,OAAO,EAAE,CAAC;qBACvB;oBACD,OAAO;iBACR;gBACD,MAAM,QAAQ,GAAG,IAAI,0BAAO,EAAU,CAAC;gBACvC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAC9B,QAAQ,CAAC,UAAU,CACjB,WAAW,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE;oBAC7D,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;gBAChD,CAAC,CAAC,CACH,CAAC;gBACF,IAAI,SAAS,EAAE;oBACb,kBAAkB;oBAClB,eAAe;yBACZ,0BAA0B,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,SAAU,EAAE,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;yBAC1G,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;wBACV,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;oBACzB,CAAC,CAAC,CAAC;iBACN;gBACD,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;YAEH,OAAO,GAAG,EAAE;gBACV,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrB,CAAC,CAAC;SACH;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CACL,uCACE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE;YACV,SAAS,GAAG,EAAE,CAAC;QACjB,CAAC,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GACpB,CACR,CAAC;AACJ,CAAC,CAAC;AArDW,QAAA,uBAAuB,2BAqDlC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":";;;;AAAA,qCAAoD;AACpD,iEAA2D;AAE3D,sCAA6C;AAE7C,yDAAyD;AACzD,qDAA6C;AAApC,2GAAA,QAAQ,OAAA;AAEV,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,gCAAa;IAA1C;;QACL,cAAS,GAAe;YACtB;gBACE,KAAK,EAAE,yBAAgB;gBACvB,QAAQ,EAAE,sCAAmB;aAC9B;SACF,CAAC;IACJ,CAAC;CAAA,CAAA;AAPY,cAAc;IAD1B,IAAA,eAAU,GAAE;GACA,cAAc,CAO1B;AAPY,wCAAc"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":";;;;AAAA,qCAAoD;AACpD,iEAA2D;AAE3D,sCAA6C;AAE7C,yDAAyD;AACzD,qDAA6C;AAApC,2GAAA,QAAQ,OAAA;AAEjB,IAAa,cAAc,GAA3B,MAAa,cAAe,SAAQ,gCAAa;IAAjD;;QACE,cAAS,GAAe;YACtB;gBACE,KAAK,EAAE,yBAAgB;gBACvB,QAAQ,EAAE,sCAAmB;aAC9B;SACF,CAAC;IACJ,CAAC;CAAA,CAAA;AAPY,cAAc;IAD1B,IAAA,eAAU,GAAE;GACA,cAAc,CAO1B;AAPY,wCAAc"}
@@ -1,9 +1,7 @@
1
1
  /// <reference types="react" />
2
- import { IMarkedOptions } from '@opensumi/ide-components/lib/utils';
3
2
  import { URI } from '@opensumi/ide-core-browser';
4
- export declare const Markdown: ({ content, options, onLoaded, onLinkClick, }: {
3
+ export declare const Markdown: ({ content, onLoaded, onLinkClick, }: {
5
4
  content: string;
6
- options?: import("marked").marked.MarkedOptions | undefined;
7
5
  onLoaded?: (() => void) | undefined;
8
6
  onLinkClick?: ((uri: URI) => void) | undefined;
9
7
  }) => JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"markdown-widget.d.ts","sourceRoot":"","sources":["../../src/browser/markdown-widget.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAsD,GAAG,EAAE,MAAM,4BAA4B,CAAC;AAIrG,eAAO,MAAM,QAAQ;aAMV,MAAM;;sBAEE,IAAI;yBACD,GAAG,KAAK,IAAI;iBAqCjC,CAAC"}
1
+ {"version":3,"file":"markdown-widget.d.ts","sourceRoot":"","sources":["../../src/browser/markdown-widget.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAsD,GAAG,EAAE,MAAM,4BAA4B,CAAC;AAIrG,eAAO,MAAM,QAAQ;aAKV,MAAM;sBACE,IAAI;yBACD,GAAG,KAAK,IAAI;iBAqCjC,CAAC"}
@@ -5,7 +5,7 @@ const tslib_1 = require("tslib");
5
5
  const react_1 = tslib_1.__importDefault(require("react"));
6
6
  const ide_core_browser_1 = require("@opensumi/ide-core-browser");
7
7
  const common_1 = require("../common");
8
- const Markdown = ({ content, options, onLoaded, onLinkClick, }) => {
8
+ const Markdown = ({ content, onLoaded, onLinkClick, }) => {
9
9
  let container = null;
10
10
  const markdownService = (0, ide_core_browser_1.useInjectable)(common_1.IMarkdownService);
11
11
  react_1.default.useEffect(() => {
@@ -18,7 +18,7 @@ const Markdown = ({ content, options, onLoaded, onLinkClick, }) => {
18
18
  },
19
19
  });
20
20
  markdownService
21
- .previewMarkdownInContainer(content, container, cancellation.token, options, undefined, onLinkClick)
21
+ .previewMarkdownInContainer(content, container, cancellation.token, undefined, onLinkClick)
22
22
  .then((r) => {
23
23
  disposer.addDispose(r);
24
24
  if (onLoaded) {
@@ -1 +1 @@
1
- {"version":3,"file":"markdown-widget.js","sourceRoot":"","sources":["../../src/browser/markdown-widget.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAG1B,iEAAqG;AAErG,sCAA6C;AAEtC,MAAM,QAAQ,GAAG,CAAC,EACvB,OAAO,EACP,OAAO,EACP,QAAQ,EACR,WAAW,GAMZ,EAAE,EAAE;IACH,IAAI,SAAS,GAAuB,IAAI,CAAC;IACzC,MAAM,eAAe,GAAqB,IAAA,gCAAa,EAAC,yBAAgB,CAAC,CAAC;IAE1E,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,SAAS,EAAE;YACb,MAAM,QAAQ,GAAG,IAAI,6BAAU,EAAE,CAAC;YAClC,MAAM,YAAY,GAAG,IAAI,0CAAuB,EAAE,CAAC;YACnD,QAAQ,CAAC,UAAU,CAAC;gBAClB,OAAO,EAAE,GAAG,EAAE;oBACZ,YAAY,CAAC,MAAM,EAAE,CAAC;gBACxB,CAAC;aACF,CAAC,CAAC;YACH,eAAe;iBACZ,0BAA0B,CAAC,OAAO,EAAE,SAAU,EAAE,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,CAAC;iBACpG,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACV,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBACvB,IAAI,QAAQ,EAAE;oBACZ,QAAQ,EAAE,CAAC;iBACZ;YACH,CAAC,CAAC,CAAC;YAEL,OAAO,GAAG,EAAE;gBACV,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrB,CAAC,CAAC;SACH;IACH,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,OAAO,CACL,uCACE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE;YACV,SAAS,GAAG,EAAE,CAAC;QACjB,CAAC,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GACpB,CACR,CAAC;AACJ,CAAC,CAAC;AA9CW,QAAA,QAAQ,YA8CnB"}
1
+ {"version":3,"file":"markdown-widget.js","sourceRoot":"","sources":["../../src/browser/markdown-widget.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAE1B,iEAAqG;AAErG,sCAA6C;AAEtC,MAAM,QAAQ,GAAG,CAAC,EACvB,OAAO,EACP,QAAQ,EACR,WAAW,GAKZ,EAAE,EAAE;IACH,IAAI,SAAS,GAAuB,IAAI,CAAC;IACzC,MAAM,eAAe,GAAqB,IAAA,gCAAa,EAAC,yBAAgB,CAAC,CAAC;IAE1E,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,SAAS,EAAE;YACb,MAAM,QAAQ,GAAG,IAAI,6BAAU,EAAE,CAAC;YAClC,MAAM,YAAY,GAAG,IAAI,0CAAuB,EAAE,CAAC;YACnD,QAAQ,CAAC,UAAU,CAAC;gBAClB,OAAO,EAAE,GAAG,EAAE;oBACZ,YAAY,CAAC,MAAM,EAAE,CAAC;gBACxB,CAAC;aACF,CAAC,CAAC;YACH,eAAe;iBACZ,0BAA0B,CAAC,OAAO,EAAE,SAAU,EAAE,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC;iBAC3F,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACV,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBACvB,IAAI,QAAQ,EAAE;oBACZ,QAAQ,EAAE,CAAC;iBACZ;YACH,CAAC,CAAC,CAAC;YAEL,OAAO,GAAG,EAAE;gBACV,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrB,CAAC,CAAC;SACH;IACH,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,OAAO,CACL,uCACE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE;YACV,SAAS,GAAG,EAAE,CAAC;QACjB,CAAC,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GACpB,CACR,CAAC;AACJ,CAAC,CAAC;AA5CW,QAAA,QAAQ,YA4CnB"}
@@ -1,4 +1,3 @@
1
- import { IMarkedOptions } from '@opensumi/ide-components/lib/utils';
2
1
  import { IDisposable, CancellationToken, Event, URI } from '@opensumi/ide-core-browser';
3
2
  import { IWebviewService } from '@opensumi/ide-webview';
4
3
  import { IMarkdownService } from '../common';
@@ -6,7 +5,7 @@ export declare class MarkdownServiceImpl implements IMarkdownService {
6
5
  webviewService: IWebviewService;
7
6
  private readonly openerService;
8
7
  private isSupportedLink;
9
- previewMarkdownInContainer(content: string, container: HTMLElement, cancellationToken: CancellationToken, options?: IMarkedOptions, onUpdate?: Event<string>, onLinkClick?: (uri: URI) => void): Promise<IDisposable>;
10
- getBody(content: string, options: IMarkedOptions | undefined): Promise<string>;
8
+ previewMarkdownInContainer(content: string, container: HTMLElement, cancellationToken: CancellationToken, onUpdate?: Event<string>, onLinkClick?: (uri: URI) => void): Promise<IDisposable>;
9
+ getBody(content: string): Promise<string>;
11
10
  }
12
11
  //# sourceMappingURL=markdown.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.service.d.ts","sourceRoot":"","sources":["../../src/browser/markdown.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAiB,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,WAAW,EAAc,iBAAiB,EAAE,KAAK,EAAE,GAAG,EAAkB,MAAM,4BAA4B,CAAC;AAEpH,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAI7C,qBACa,mBAAoB,YAAW,gBAAgB;IAE1D,cAAc,EAAE,eAAe,CAAC;IAGhC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiB;IAG/C,OAAO,CAAC,eAAe;IAIjB,0BAA0B,CAC9B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,WAAW,EACtB,iBAAiB,EAAE,iBAAiB,EACpC,OAAO,CAAC,EAAE,cAAc,EACxB,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EACxB,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,GAC/B,OAAO,CAAC,WAAW,CAAC;IA2CjB,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;CAUrF"}
1
+ {"version":3,"file":"markdown.service.d.ts","sourceRoot":"","sources":["../../src/browser/markdown.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAc,iBAAiB,EAAE,KAAK,EAAE,GAAG,EAAkB,MAAM,4BAA4B,CAAC;AAEpH,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAI7C,qBACa,mBAAoB,YAAW,gBAAgB;IAE1D,cAAc,EAAE,eAAe,CAAC;IAGhC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiB;IAG/C,OAAO,CAAC,eAAe;IAIjB,0BAA0B,CAC9B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,WAAW,EACtB,iBAAiB,EAAE,iBAAiB,EACpC,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EACxB,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,GAC/B,OAAO,CAAC,WAAW,CAAC;IA2CjB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAUhD"}
@@ -13,8 +13,8 @@ let MarkdownServiceImpl = class MarkdownServiceImpl {
13
13
  isSupportedLink(uri) {
14
14
  return http_opener_1.HttpOpener.standardSupportedLinkSchemes.has(uri.scheme);
15
15
  }
16
- async previewMarkdownInContainer(content, container, cancellationToken, options, onUpdate, onLinkClick) {
17
- const body = await this.getBody(content, options);
16
+ async previewMarkdownInContainer(content, container, cancellationToken, onUpdate, onLinkClick) {
17
+ const body = await this.getBody(content);
18
18
  if (cancellationToken.isCancellationRequested) {
19
19
  return new ide_core_browser_1.Disposable();
20
20
  }
@@ -40,7 +40,7 @@ let MarkdownServiceImpl = class MarkdownServiceImpl {
40
40
  disposer.addDispose(webviewElement);
41
41
  if (onUpdate) {
42
42
  disposer.addDispose(onUpdate(async (content) => {
43
- const body = await this.getBody(content, options);
43
+ const body = await this.getBody(content);
44
44
  if (!cancellationToken.isCancellationRequested) {
45
45
  webviewElement.setContent(body);
46
46
  }
@@ -48,9 +48,9 @@ let MarkdownServiceImpl = class MarkdownServiceImpl {
48
48
  }
49
49
  return disposer;
50
50
  }
51
- async getBody(content, options) {
51
+ async getBody(content) {
52
52
  return new Promise((resolve, reject) => {
53
- (0, utils_1.parseMarkdown)(content, options, (err, result) => {
53
+ (0, utils_1.parseMarkdown)(content, undefined, (err, result) => {
54
54
  if (err) {
55
55
  reject(err);
56
56
  }
@@ -76,7 +76,7 @@ function renderBody(body) {
76
76
  <html>
77
77
  <head>
78
78
  <meta http-equiv="Content-type" content="text/html;charset=UTF-8">
79
- <meta http-equiv="Content-Security-Policy" content="default-src 'none'; img-src http: https: data:; media-src https:; script-src 'none'; style-src 'unsafe-inline'; child-src 'none'; frame-src 'none';">
79
+ <meta http-equiv="Content-Security-Policy" content="default-src 'none'; img-src https: data:; media-src https:; script-src 'none'; style-src 'unsafe-inline'; child-src 'none'; frame-src 'none';">
80
80
  <style>
81
81
  ${mardown_style_1.markdownCss}
82
82
  </style>
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.service.js","sourceRoot":"","sources":["../../src/browser/markdown.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"markdown.service.js","sourceRoot":"","sources":["../../src/browser/markdown.service.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,6 @@
1
1
  import { CancellationToken, IDisposable, Event, URI } from '@opensumi/ide-core-common';
2
2
  export interface IMarkdownService {
3
- previewMarkdownInContainer(content: string, container: HTMLElement, cancellationToken: CancellationToken, options?: {
4
- baseUrl?: string | undefined;
5
- }, onUpdate?: Event<string>, onLinkClick?: (uri: URI) => void): Promise<IDisposable>;
3
+ previewMarkdownInContainer(content: string, container: HTMLElement, cancellationToken: CancellationToken, onUpdate?: Event<string>, onLinkClick?: (uri: URI) => void): Promise<IDisposable>;
6
4
  }
7
5
  export declare const IMarkdownService: unique symbol;
8
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAEvF,MAAM,WAAW,gBAAgB;IAC/B,0BAA0B,CACxB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,WAAW,EACtB,iBAAiB,EAAE,iBAAiB,EACpC,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,EAC1C,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EACxB,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,GAC/B,OAAO,CAAC,WAAW,CAAC,CAAC;CACzB;AAED,eAAO,MAAM,gBAAgB,eAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAEvF,MAAM,WAAW,gBAAgB;IAC/B,0BAA0B,CACxB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,WAAW,EACtB,iBAAiB,EAAE,iBAAiB,EACpC,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EACxB,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,GAC/B,OAAO,CAAC,WAAW,CAAC,CAAC;CACzB;AAED,eAAO,MAAM,gBAAgB,eAA6B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;AAaa,QAAA,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;AAYa,QAAA,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,15 +1,14 @@
1
1
  {
2
2
  "name": "@opensumi/ide-markdown",
3
- "version": "2.21.10-rc-1671677903.0",
3
+ "version": "2.21.10",
4
4
  "files": [
5
- "lib",
6
- "src"
5
+ "lib"
7
6
  ],
8
7
  "license": "MIT",
9
8
  "main": "lib/index.js",
10
9
  "typings": "lib/index.d.ts",
11
10
  "scripts": {
12
- "prepublishOnly": "yarn run build",
11
+ "prepublishOnly": "npm run build",
13
12
  "build": "tsc --build ../../configs/ts/references/tsconfig.markdown.json"
14
13
  },
15
14
  "repository": {
@@ -17,14 +16,15 @@
17
16
  "url": "git@github.com:opensumi/core.git"
18
17
  },
19
18
  "dependencies": {
20
- "@opensumi/ide-core-common": "2.21.10-rc-1671677903.0"
19
+ "@opensumi/ide-core-common": "2.21.10",
20
+ "@opensumi/ide-core-node": "2.21.10"
21
21
  },
22
22
  "devDependencies": {
23
- "@opensumi/ide-components": "2.21.10-rc-1671677903.0",
24
- "@opensumi/ide-core-browser": "2.21.10-rc-1671677903.0",
23
+ "@opensumi/ide-components": "2.21.10",
24
+ "@opensumi/ide-core-browser": "2.21.10",
25
25
  "@opensumi/ide-dev-tool": "^1.3.1",
26
- "@opensumi/ide-editor": "2.21.10-rc-1671677903.0",
27
- "@opensumi/ide-webview": "2.21.10-rc-1671677903.0"
26
+ "@opensumi/ide-editor": "2.21.10",
27
+ "@opensumi/ide-webview": "2.21.10"
28
28
  },
29
- "gitHead": "21fe449ee1b16095758728b799e0fb1738a1db4a"
29
+ "gitHead": "571756af952413b756eb682223697a39544b3461"
30
30
  }
@@ -1,38 +0,0 @@
1
- import { Autowired } from '@opensumi/di';
2
- import { PreferenceService } from '@opensumi/ide-core-browser';
3
- import { Domain, localize, Schemes } from '@opensumi/ide-core-common';
4
- import { BrowserEditorContribution, EditorComponentRegistry } from '@opensumi/ide-editor/lib/browser';
5
-
6
- import { IMarkdownService } from '../common';
7
-
8
- import { MarkdownEditorComponent } from './editor.markdown';
9
-
10
- export const MARKDOWN_EDITOR_COMPONENT_ID = 'MARKDOWN_EDITOR_COMPONENT_ID';
11
-
12
- @Domain(BrowserEditorContribution)
13
- export class EmbeddedMarkdownEditorContribution implements BrowserEditorContribution {
14
- @Autowired(IMarkdownService)
15
- markdownService: IMarkdownService;
16
-
17
- @Autowired(PreferenceService)
18
- preferenceService: PreferenceService;
19
-
20
- registerEditorComponent(componentRegistry: EditorComponentRegistry) {
21
- componentRegistry.registerEditorComponent({
22
- uid: MARKDOWN_EDITOR_COMPONENT_ID,
23
- component: MarkdownEditorComponent,
24
- scheme: Schemes.file,
25
- });
26
-
27
- componentRegistry.registerEditorComponentResolver(Schemes.file, (resource, results) => {
28
- if (resource.uri.path.ext === '.md') {
29
- results.push({
30
- type: 'component',
31
- componentId: MARKDOWN_EDITOR_COMPONENT_ID,
32
- title: localize('editorOpenType.preview'),
33
- weight: this.preferenceService.get<boolean>('application.preferMarkdownPreview') ? 10 : -1,
34
- });
35
- }
36
- });
37
- }
38
- }
@@ -1,67 +0,0 @@
1
- import React from 'react';
2
-
3
- import { useInjectable, Disposable, CancellationTokenSource, Emitter } from '@opensumi/ide-core-browser';
4
- import { ReactEditorComponent, IEditorDocumentModelService } from '@opensumi/ide-editor/lib/browser';
5
-
6
- import { IMarkdownService } from '../common';
7
-
8
- export const MarkdownEditorComponent: ReactEditorComponent<any> = ({ resource }) => {
9
- let container: HTMLElement | null = null;
10
- const markdownService: IMarkdownService = useInjectable(IMarkdownService);
11
- const documentService: IEditorDocumentModelService = useInjectable(IEditorDocumentModelService);
12
-
13
- React.useEffect(() => {
14
- if (container) {
15
- const disposer = new Disposable();
16
- const cancellation = new CancellationTokenSource();
17
- disposer.addDispose({
18
- dispose: () => {
19
- cancellation.cancel();
20
- },
21
- });
22
- documentService.createModelReference(resource.uri, 'markdown-preview').then((documentRef) => {
23
- if (cancellation.token.isCancellationRequested) {
24
- if (documentRef) {
25
- documentRef.dispose();
26
- }
27
- return;
28
- }
29
- const onUpdate = new Emitter<string>();
30
- disposer.addDispose(onUpdate);
31
- disposer.addDispose(
32
- documentRef.instance.getMonacoModel().onDidChangeContent((e) => {
33
- onUpdate.fire(documentRef.instance.getText());
34
- }),
35
- );
36
- if (container) {
37
- // container可能已不存在
38
- markdownService
39
- .previewMarkdownInContainer(
40
- documentRef.instance.getText(),
41
- container!,
42
- cancellation.token,
43
- undefined,
44
- onUpdate.event,
45
- )
46
- .then((r) => {
47
- disposer.addDispose(r);
48
- });
49
- }
50
- disposer.addDispose(documentRef);
51
- });
52
-
53
- return () => {
54
- disposer.dispose();
55
- };
56
- }
57
- });
58
-
59
- return (
60
- <div
61
- ref={(el) => {
62
- container = el;
63
- }}
64
- style={{ height: '100%' }}
65
- ></div>
66
- );
67
- };
@@ -1,16 +0,0 @@
1
- import { Provider, Injectable } from '@opensumi/di';
2
- import { BrowserModule } from '@opensumi/ide-core-browser';
3
-
4
- import { IMarkdownService } from '../common';
5
-
6
- import { MarkdownServiceImpl } from './markdown.service';
7
- export { Markdown } from './markdown-widget';
8
- @Injectable()
9
- export class MarkdownModule extends BrowserModule {
10
- providers: Provider[] = [
11
- {
12
- token: IMarkdownService,
13
- useClass: MarkdownServiceImpl,
14
- },
15
- ];
16
- }
@@ -1,178 +0,0 @@
1
- export const markdownCss = `
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Microsoft Corporation. All rights reserved.
4
- * Licensed under the MIT License. See License.txt in the project root for license information.
5
- *--------------------------------------------------------------------------------------------*/
6
-
7
- body {
8
- padding: 10px 20px;
9
- line-height: 22px;
10
- }
11
-
12
- img {
13
- max-width: 100%;
14
- max-height: 100%;
15
- }
16
-
17
- a {
18
- text-decoration: none;
19
- }
20
-
21
- a:hover {
22
- text-decoration: underline;
23
- }
24
-
25
- a:focus,
26
- input:focus,
27
- select:focus,
28
- textarea:focus {
29
- outline: 1px solid -webkit-focus-ring-color;
30
- outline-offset: -1px;
31
- }
32
-
33
- hr {
34
- border: 0;
35
- height: 2px;
36
- border-bottom: 2px solid;
37
- }
38
-
39
- h1 {
40
- padding-bottom: 0.3em;
41
- line-height: 1.2;
42
- border-bottom-width: 1px;
43
- border-bottom-style: solid;
44
- }
45
-
46
- h1, h2, h3 {
47
- font-weight: normal;
48
- }
49
-
50
- table {
51
- border-collapse: collapse;
52
- }
53
-
54
- table > thead > tr > th {
55
- text-align: left;
56
- border-bottom: 1px solid;
57
- }
58
-
59
- table > thead > tr > th,
60
- table > thead > tr > td,
61
- table > tbody > tr > th,
62
- table > tbody > tr > td {
63
- padding: 5px 10px;
64
- }
65
-
66
- table > tbody > tr + tr > td {
67
- border-top: 1px solid;
68
- }
69
-
70
- blockquote {
71
- margin: 0 7px 0 5px;
72
- padding: 0 16px 0 10px;
73
- border-left-width: 5px;
74
- border-left-style: solid;
75
- }
76
-
77
- code {
78
- font-family: Menlo, Monaco, Consolas, "Droid Sans Mono", "Courier New", monospace, "Droid Sans Fallback";
79
- font-size: 14px;
80
- line-height: 19px;
81
- }
82
-
83
- .mac code {
84
- font-size: 12px;
85
- line-height: 18px;
86
- }
87
-
88
- code > div {
89
- padding: 16px;
90
- border-radius: 3px;
91
- overflow: auto;
92
- }
93
-
94
- #scroll-to-top {
95
- position: fixed;
96
- width: 40px;
97
- height: 40px;
98
- right: 25px;
99
- bottom: 77px;
100
- background-color:#444444;
101
- border-radius: 50%;
102
- cursor: pointer;
103
- box-shadow: 1px 1px 1px rgba(0,0,0,.25);
104
- outline: none;
105
- display: flex;
106
- justify-content: center;
107
- align-items: center;
108
- }
109
-
110
- #scroll-to-top:hover {
111
- background-color:#007acc;
112
- box-shadow: 2px 2px 2px rgba(0,0,0,.25);
113
- }
114
-
115
- body.vscode-light #scroll-to-top {
116
- background-color: #949494;
117
- }
118
-
119
- body.vscode-high-contrast #scroll-to-top:hover {
120
- background-color: #007acc;
121
- }
122
-
123
- body.vscode-high-contrast #scroll-to-top {
124
- background-color: black;
125
- border: 2px solid #6fc3df;
126
- box-shadow: none;
127
- }
128
- body.vscode-high-contrast #scroll-to-top:hover {
129
- background-color: #007acc;
130
- }
131
-
132
- #scroll-to-top span.icon::before {
133
- content: "";
134
- display: block;
135
- /* Chevron up icon */
136
- background:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjIuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxNiAxNiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTYgMTY7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDojRkZGRkZGO30KCS5zdDF7ZmlsbDpub25lO30KPC9zdHlsZT4KPHRpdGxlPnVwY2hldnJvbjwvdGl0bGU+CjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik04LDUuMWwtNy4zLDcuM0wwLDExLjZsOC04bDgsOGwtMC43LDAuN0w4LDUuMXoiLz4KPHJlY3QgY2xhc3M9InN0MSIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2Ii8+Cjwvc3ZnPgo=');
137
- width: 16px;
138
- height: 16px;
139
- }
140
-
141
- /** Theming */
142
- .vscode-light code > div {
143
- background-color: rgba(220, 220, 220, 0.4);
144
- }
145
-
146
- .vscode-dark code > div {
147
- background-color: rgba(10, 10, 10, 0.4);
148
- }
149
-
150
- .vscode-high-contrast code > div {
151
- background-color: rgb(0, 0, 0);
152
- }
153
-
154
- .vscode-high-contrast h1 {
155
- border-color: rgb(0, 0, 0);
156
- }
157
-
158
- .vscode-light table > thead > tr > th {
159
- border-color: rgba(0, 0, 0, 0.69);
160
- }
161
-
162
- .vscode-dark table > thead > tr > th {
163
- border-color: rgba(255, 255, 255, 0.69);
164
- }
165
-
166
- .vscode-light h1,
167
- .vscode-light hr,
168
- .vscode-light table > tbody > tr + tr > td {
169
- border-color: rgba(0, 0, 0, 0.18);
170
- }
171
-
172
- .vscode-dark h1,
173
- .vscode-dark hr,
174
- .vscode-dark table > tbody > tr + tr > td {
175
- border-color: rgba(255, 255, 255, 0.18);
176
- }
177
-
178
- `;
@@ -1,54 +0,0 @@
1
- import React from 'react';
2
-
3
- import { IMarkedOptions } from '@opensumi/ide-components/lib/utils';
4
- import { useInjectable, Disposable, CancellationTokenSource, URI } from '@opensumi/ide-core-browser';
5
-
6
- import { IMarkdownService } from '../common';
7
-
8
- export const Markdown = ({
9
- content,
10
- options,
11
- onLoaded,
12
- onLinkClick,
13
- }: {
14
- content: string;
15
- options?: IMarkedOptions;
16
- onLoaded?: () => void;
17
- onLinkClick?: (uri: URI) => void;
18
- }) => {
19
- let container: HTMLElement | null = null;
20
- const markdownService: IMarkdownService = useInjectable(IMarkdownService);
21
-
22
- React.useEffect(() => {
23
- if (container) {
24
- const disposer = new Disposable();
25
- const cancellation = new CancellationTokenSource();
26
- disposer.addDispose({
27
- dispose: () => {
28
- cancellation.cancel();
29
- },
30
- });
31
- markdownService
32
- .previewMarkdownInContainer(content, container!, cancellation.token, options, undefined, onLinkClick)
33
- .then((r) => {
34
- disposer.addDispose(r);
35
- if (onLoaded) {
36
- onLoaded();
37
- }
38
- });
39
-
40
- return () => {
41
- disposer.dispose();
42
- };
43
- }
44
- }, [content]);
45
-
46
- return (
47
- <div
48
- ref={(el) => {
49
- container = el;
50
- }}
51
- style={{ height: '100%' }}
52
- ></div>
53
- );
54
- };
@@ -1,119 +0,0 @@
1
- import { Injectable, Autowired } from '@opensumi/di';
2
- import { IMarkedOptions, parseMarkdown } from '@opensumi/ide-components/lib/utils';
3
- import { IDisposable, Disposable, CancellationToken, Event, URI, IOpenerService } from '@opensumi/ide-core-browser';
4
- import { HttpOpener } from '@opensumi/ide-core-browser/lib/opener/http-opener';
5
- import { IWebviewService } from '@opensumi/ide-webview';
6
-
7
- import { IMarkdownService } from '../common';
8
-
9
- import { markdownCss } from './mardown.style';
10
-
11
- @Injectable()
12
- export class MarkdownServiceImpl implements IMarkdownService {
13
- @Autowired(IWebviewService)
14
- webviewService: IWebviewService;
15
-
16
- @Autowired(IOpenerService)
17
- private readonly openerService: IOpenerService;
18
-
19
- // 检测下支持的协议,以防打开内部协议
20
- private isSupportedLink(uri: URI) {
21
- return HttpOpener.standardSupportedLinkSchemes.has(uri.scheme);
22
- }
23
-
24
- async previewMarkdownInContainer(
25
- content: string,
26
- container: HTMLElement,
27
- cancellationToken: CancellationToken,
28
- options?: IMarkedOptions,
29
- onUpdate?: Event<string>,
30
- onLinkClick?: (uri: URI) => void,
31
- ): Promise<IDisposable> {
32
- const body = await this.getBody(content, options);
33
- if (cancellationToken.isCancellationRequested) {
34
- return new Disposable();
35
- }
36
-
37
- const disposer = new Disposable();
38
- const webviewElement = this.webviewService.createWebview({
39
- enableFindWidget: true,
40
- localResourceRoots: [],
41
- });
42
- webviewElement.appendTo(container);
43
- webviewElement.setContent(body);
44
-
45
- disposer.addDispose(
46
- webviewElement.onDidClickLink((link) => {
47
- if (!link) {
48
- return;
49
- }
50
- // Whitelist supported schemes for links
51
- if (this.isSupportedLink(link)) {
52
- this.openerService.open(link);
53
- }
54
- if (onLinkClick) {
55
- onLinkClick(link);
56
- }
57
- }),
58
- );
59
- disposer.addDispose(webviewElement);
60
- if (onUpdate) {
61
- disposer.addDispose(
62
- onUpdate(async (content) => {
63
- const body = await this.getBody(content, options);
64
- if (!cancellationToken.isCancellationRequested) {
65
- webviewElement.setContent(body);
66
- }
67
- }),
68
- );
69
- }
70
-
71
- return disposer;
72
- }
73
-
74
- async getBody(content: string, options: IMarkedOptions | undefined): Promise<string> {
75
- return new Promise((resolve, reject) => {
76
- parseMarkdown(content, options, (err, result) => {
77
- if (err) {
78
- reject(err);
79
- }
80
- resolve(removeEmbeddedSVGs(renderBody(result)));
81
- });
82
- });
83
- }
84
- }
85
-
86
- function renderBody(body: string): string {
87
- return `<!DOCTYPE html>
88
- <html>
89
- <head>
90
- <meta http-equiv="Content-type" content="text/html;charset=UTF-8">
91
- <meta http-equiv="Content-Security-Policy" content="default-src 'none'; img-src http: https: data:; media-src https:; script-src 'none'; style-src 'unsafe-inline'; child-src 'none'; frame-src 'none';">
92
- <style>
93
- ${markdownCss}
94
- </style>
95
- </head>
96
- <body>
97
- <a id="scroll-to-top" role="button" aria-label="scroll to top" href="#"><span class="icon"></span></a>
98
- ${body}
99
- </body>
100
- </html>`;
101
- }
102
-
103
- function removeEmbeddedSVGs(documentContent: string): string {
104
- const newDocument = new DOMParser().parseFromString(documentContent, 'text/html');
105
-
106
- // remove all inline svgs
107
- const allSVGs = newDocument.documentElement.querySelectorAll('svg');
108
- if (allSVGs) {
109
- // eslint-disable-next-line @typescript-eslint/prefer-for-of
110
- for (let i = 0; i < allSVGs.length; i++) {
111
- const svg = allSVGs[i];
112
- if (svg.parentNode) {
113
- svg.parentNode.removeChild(allSVGs[i]);
114
- }
115
- }
116
- }
117
-
118
- return newDocument.documentElement.outerHTML;
119
- }
@@ -1,14 +0,0 @@
1
- import { CancellationToken, IDisposable, Event, URI } from '@opensumi/ide-core-common';
2
-
3
- export interface IMarkdownService {
4
- previewMarkdownInContainer(
5
- content: string,
6
- container: HTMLElement,
7
- cancellationToken: CancellationToken,
8
- options?: { baseUrl?: string | undefined },
9
- onUpdate?: Event<string>,
10
- onLinkClick?: (uri: URI) => void,
11
- ): Promise<IDisposable>;
12
- }
13
-
14
- export const IMarkdownService = Symbol('IMarkdownService');
package/src/index.ts DELETED
@@ -1,2 +0,0 @@
1
- export * from './common';
2
- export * from './browser';