UI: Improvement copy text in markdown (didn't work in HTTP)

This commit is contained in:
Vladyslav_Prykhodko 2021-11-03 16:12:52 +02:00
parent 113a6389fa
commit 47b9892f80

View File

@ -21,6 +21,7 @@ import { DOCUMENT } from '@angular/common';
import { WINDOW } from '@core/services/window.service';
import { Tokenizer } from 'marked';
import * as marked from 'marked';
import { Clipboard } from '@angular/cdk/clipboard';
const copyCodeBlock = '{:copy-code}';
const codeStyleRegex = '^{:code-style="(.*)"}\n';
@ -47,6 +48,7 @@ export class MarkedOptionsService extends MarkedOptions {
private id = 1;
constructor(private translate: TranslateService,
private clipboardService: Clipboard,
@Inject(WINDOW) private readonly window: Window,
@Inject(DOCUMENT) private readonly document: Document) {
super();
@ -162,7 +164,7 @@ export class MarkedOptionsService extends MarkedOptions {
const copyWrapper = $('#codeWrapper' + id);
if (copyWrapper.hasClass('noChars')) {
const text = decodeURIComponent($('#copyCodeId' + id).text());
this.window.navigator.clipboard.writeText(text).then(() => {
if (this.clipboardService.copy(text)) {
import('tooltipster').then(
() => {
if (!copyWrapper.hasClass('tooltipstered')) {
@ -186,9 +188,8 @@ export class MarkedOptionsService extends MarkedOptions {
}
const tooltip = copyWrapper.tooltipster('instance');
tooltip.open();
}
);
});
});
}
}
}
}