diff --git a/src/Squidex/app/app.module.ts b/src/Squidex/app/app.module.ts
index c2b9ad383..b65f53064 100644
--- a/src/Squidex/app/app.module.ts
+++ b/src/Squidex/app/app.module.ts
@@ -13,7 +13,6 @@ import { BrowserModule } from '@angular/platform-browser';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { RouterModule } from '@angular/router';
import { DndModule } from 'ng2-dnd';
-import { NgxMdModule } from 'ngx-md';
import { AppComponent } from './app.component';
@@ -64,7 +63,6 @@ export function configUserReport() {
HttpClientModule,
FormsModule,
CommonModule,
- NgxMdModule.forRoot(),
RouterModule,
ReactiveFormsModule,
SqxFrameworkModule.forRoot(),
diff --git a/src/Squidex/app/shared/components/help-markdown.pipe.ts b/src/Squidex/app/shared/components/help-markdown.pipe.ts
new file mode 100644
index 000000000..8db8182a1
--- /dev/null
+++ b/src/Squidex/app/shared/components/help-markdown.pipe.ts
@@ -0,0 +1,29 @@
+/*
+ * Squidex Headless CMS
+ *
+ * @license
+ * Copyright (c) Squidex UG (haftungsbeschränkt). All rights reserved.
+ */
+
+import { Pipe, PipeTransform } from '@angular/core';
+import * as Marked from 'marked';
+
+const renderer = new Marked.Renderer();
+
+renderer.link = (href, title, text) => {
+ return `${text} `;
+};
+
+@Pipe({
+ name: 'sqxHelpMarkdown',
+ pure: true
+})
+export class HelpMarkdownPipe implements PipeTransform {
+ public transform(text: string): string {
+ if (text) {
+ return Marked(text, { renderer });
+ } else {
+ return '';
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/Squidex/app/shared/components/help.component.html b/src/Squidex/app/shared/components/help.component.html
index 7f4a96e59..4beff0d69 100644
--- a/src/Squidex/app/shared/components/help.component.html
+++ b/src/Squidex/app/shared/components/help.component.html
@@ -5,7 +5,7 @@
\ No newline at end of file
diff --git a/src/Squidex/app/shared/components/help.component.ts b/src/Squidex/app/shared/components/help.component.ts
index b1d08d53f..9b53db840 100644
--- a/src/Squidex/app/shared/components/help.component.ts
+++ b/src/Squidex/app/shared/components/help.component.ts
@@ -7,7 +7,6 @@
import { ChangeDetectionStrategy, Component } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
-import { NgxMdService } from 'ngx-md';
import { HelpService } from '@app/shared/internal';
@@ -22,11 +21,7 @@ export class HelpComponent {
constructor(
private readonly helpService: HelpService,
- private readonly markdownService: NgxMdService,
private readonly route: ActivatedRoute
) {
- this.markdownService.renderer.link = (href, title, text) => {
- return `${text} `;
- };
}
}
\ No newline at end of file
diff --git a/src/Squidex/app/shared/declarations.ts b/src/Squidex/app/shared/declarations.ts
index 61d9f4365..bf704c175 100644
--- a/src/Squidex/app/shared/declarations.ts
+++ b/src/Squidex/app/shared/declarations.ts
@@ -11,6 +11,7 @@ export * from './components/assets-list.component';
export * from './components/assets-selector.component';
export * from './components/comment.component';
export * from './components/comments.component';
+export * from './components/help-markdown.pipe';
export * from './components/help.component';
export * from './components/geolocation-editor.component';
export * from './components/history.component';
diff --git a/src/Squidex/app/shared/module.ts b/src/Squidex/app/shared/module.ts
index c596679d5..f7d6c9380 100644
--- a/src/Squidex/app/shared/module.ts
+++ b/src/Squidex/app/shared/module.ts
@@ -9,7 +9,6 @@ import { HTTP_INTERCEPTORS } from '@angular/common/http';
import { ModuleWithProviders, NgModule } from '@angular/core';
import { RouterModule } from '@angular/router';
import { DndModule } from 'ng2-dnd';
-import { NgxMdModule } from 'ngx-md';
import { SqxFrameworkModule } from '@app/framework';
@@ -47,6 +46,7 @@ import {
GeolocationEditorComponent,
GraphQlService,
HelpComponent,
+ HelpMarkdownPipe,
HelpService,
HistoryComponent,
HistoryListComponent,
@@ -94,7 +94,6 @@ import {
@NgModule({
imports: [
DndModule,
- NgxMdModule,
RouterModule,
SqxFrameworkModule
],
@@ -110,6 +109,7 @@ import {
FileIconPipe,
GeolocationEditorComponent,
HelpComponent,
+ HelpMarkdownPipe,
HistoryComponent,
HistoryListComponent,
HistoryMessagePipe,
diff --git a/src/Squidex/package-lock.json b/src/Squidex/package-lock.json
index e9c47604f..5d5d27175 100644
--- a/src/Squidex/package-lock.json
+++ b/src/Squidex/package-lock.json
@@ -2881,17 +2881,6 @@
"integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
"dev": true
},
- "clipboard": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.4.tgz",
- "integrity": "sha512-Vw26VSLRpJfBofiVaFb/I8PVfdI1OxKcYShe6fm0sP/DtmiWQNCjhM/okTvdCo0G+lMMm1rMYbk4IK4x1X+kgQ==",
- "optional": true,
- "requires": {
- "good-listener": "^1.2.2",
- "select": "^1.1.2",
- "tiny-emitter": "^2.0.0"
- }
- },
"cliui": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz",
@@ -3926,12 +3915,6 @@
"integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
"dev": true
},
- "delegate": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz",
- "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==",
- "optional": true
- },
"delegates": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
@@ -5864,15 +5847,6 @@
}
}
},
- "good-listener": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz",
- "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=",
- "optional": true,
- "requires": {
- "delegate": "^3.1.2"
- }
- },
"graceful-fs": {
"version": "4.1.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
@@ -8458,9 +8432,9 @@
}
},
"marked": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/marked/-/marked-0.5.2.tgz",
- "integrity": "sha512-fdZvBa7/vSQIZCi4uuwo2N3q+7jJURpMVCcbaX0S1Mg65WZ5ilXvC67MviJAsdjqqgD+CEq4RKo5AYGgINkVAA=="
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/marked/-/marked-0.6.0.tgz",
+ "integrity": "sha512-HduzIW2xApSXKXJSpCipSxKyvMbwRRa/TwMbepmlZziKdH8548WSoDP4SxzulEKjlo8BE39l+2fwJZuRKOln6g=="
},
"math-random": {
"version": "1.0.1",
@@ -8847,16 +8821,6 @@
"resolved": "https://registry.npmjs.org/ngx-color-picker/-/ngx-color-picker-7.2.0.tgz",
"integrity": "sha512-n+PBgc5T37Gi84UFY0EUbgBwQe+rU3dj+azH87BW49flpTmF0G5nDQg/NaXS1hthzQPGXGwT4lsxsZ70Z3kZ5Q=="
},
- "ngx-md": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/ngx-md/-/ngx-md-7.0.0.tgz",
- "integrity": "sha512-IMqjkc33lS8jlQXqrLh2McuhUFXrUKBfYH5VqCAcGa3QDBkiPOakh/CuYbI5KC8KQDZMe5fngSGMKgDNVBzR7g==",
- "requires": {
- "marked": "^0.5.0",
- "prismjs": "^1.15.0",
- "tslib": "^1.9.0"
- }
- },
"nice-try": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
@@ -10697,14 +10661,6 @@
"utila": "~0.4"
}
},
- "prismjs": {
- "version": "1.15.0",
- "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.15.0.tgz",
- "integrity": "sha512-Lf2JrFYx8FanHrjoV5oL8YHCclLQgbJcVZR+gikGGMqz6ub5QVWDTM6YIwm3BuPxM/LOV+rKns3LssXNLIf+DA==",
- "requires": {
- "clipboard": "^2.0.0"
- }
- },
"private": {
"version": "0.1.8",
"resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz",
@@ -11557,12 +11513,6 @@
}
}
},
- "select": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz",
- "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=",
- "optional": true
- },
"select-hose": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz",
@@ -12760,12 +12710,6 @@
"integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=",
"dev": true
},
- "tiny-emitter": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.0.2.tgz",
- "integrity": "sha512-2NM0auVBGft5tee/OxP4PI3d8WItkDM+fPnaRAVo6xTDI2knbz9eC5ArWGqtGlYqiH3RU5yMpdyTTO7MguC4ow==",
- "optional": true
- },
"tmp": {
"version": "0.0.33",
"resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
diff --git a/src/Squidex/package.json b/src/Squidex/package.json
index bcb841deb..fd4c67ad8 100644
--- a/src/Squidex/package.json
+++ b/src/Squidex/package.json
@@ -30,11 +30,11 @@
"core-js": "2.6.1",
"graphiql": "0.12.0",
"graphql": "14.0.2",
+ "marked": "^0.6.0",
"moment": "2.23.0",
"mousetrap": "1.6.2",
"ng2-dnd": "5.0.2",
"ngx-color-picker": "7.2.0",
- "ngx-md": "^7.0.0",
"oidc-client": "1.6.1",
"pikaday": "1.8.0",
"progressbar.js": "1.0.1",