raise-common-lib-new 0.0.59 → 0.0.61
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.
|
@@ -20423,7 +20423,6 @@ class RichtexteditorComponent {
|
|
|
20423
20423
|
dialogWidth = "800px";
|
|
20424
20424
|
dialogHeight = "642px";
|
|
20425
20425
|
showZoomBtn = true;
|
|
20426
|
-
showMsg = false;
|
|
20427
20426
|
editorManager;
|
|
20428
20427
|
size = "";
|
|
20429
20428
|
selectedQuery;
|
|
@@ -20482,6 +20481,7 @@ class RichtexteditorComponent {
|
|
|
20482
20481
|
],
|
|
20483
20482
|
};
|
|
20484
20483
|
translation;
|
|
20484
|
+
zoomout = true;
|
|
20485
20485
|
constructor(ref, http, dialog, snackBar) {
|
|
20486
20486
|
this.ref = ref;
|
|
20487
20487
|
this.http = http;
|
|
@@ -20584,36 +20584,12 @@ class RichtexteditorComponent {
|
|
|
20584
20584
|
}
|
|
20585
20585
|
}
|
|
20586
20586
|
onContentChange(args) {
|
|
20587
|
-
// const tables = document.querySelectorAll("table.e-rte-table");
|
|
20588
|
-
// tables.forEach((table) => {
|
|
20589
|
-
// const htmlTable = table as HTMLTableElement;
|
|
20590
|
-
// htmlTable.style.marginBottom = "10px";
|
|
20591
|
-
// htmlTable.style.borderCollapse = "collapse";
|
|
20592
|
-
// htmlTable.style.emptyCells = "show";
|
|
20593
|
-
// const tdElements = table.querySelectorAll("td");
|
|
20594
|
-
// tdElements.forEach((td) => {
|
|
20595
|
-
// td.style.border = "1px solid #adb5bd";
|
|
20596
|
-
// td.style.height = "20px";
|
|
20597
|
-
// td.style.minWidth = "20px";
|
|
20598
|
-
// td.style.padding = "2px 5px";
|
|
20599
|
-
// td.style.boxSizing = "border-box";
|
|
20600
|
-
// });
|
|
20601
|
-
// });
|
|
20602
20587
|
this.change.emit(args);
|
|
20603
20588
|
}
|
|
20604
20589
|
onCreate() {
|
|
20605
|
-
//
|
|
20606
|
-
// this.editorManager = this.rteObj.formatter.editorManager;
|
|
20607
|
-
// let splitButton = new DropDownButton({
|
|
20608
|
-
// items: lineHeight_items,
|
|
20609
|
-
// iconCss: "e-icons e-line-spacing",
|
|
20610
|
-
// select: this.onSelect.bind(this),
|
|
20611
|
-
// });
|
|
20612
|
-
// splitButton.appendTo("#lineheight_tbar");
|
|
20613
|
-
// // ai assist
|
|
20590
|
+
// ai assist
|
|
20614
20591
|
let aiassistantButton = new DropDownButton({
|
|
20615
20592
|
items: this.queryList,
|
|
20616
|
-
// iconCss: "e-btn-icon e-icons e-assistview-icon e-icon-left",
|
|
20617
20593
|
select: (args) => this.aiQuerySelectedMenu(args),
|
|
20618
20594
|
});
|
|
20619
20595
|
aiassistantButton.appendTo("#ai_assistant_button_tbar_" + this.editorId);
|
|
@@ -20639,7 +20615,7 @@ class RichtexteditorComponent {
|
|
|
20639
20615
|
if (selectionText) {
|
|
20640
20616
|
let range = this.rteObj.formatter.editorManager.nodeSelection.getRange(this.rteObj.contentModule.getDocument());
|
|
20641
20617
|
this.rteObj.formatter.editorManager.nodeSelection.save(range, this.rteObj.contentModule.getDocument());
|
|
20642
|
-
this.dropValIndex = this.queryList.findIndex((q) => q.
|
|
20618
|
+
this.dropValIndex = this.queryList.findIndex((q) => q.id.toLowerCase() === selectedQuery.toLowerCase());
|
|
20643
20619
|
this.queryCategory.index = this.dropValIndex;
|
|
20644
20620
|
this.leftRte.value = this.promptQuery = selectionText;
|
|
20645
20621
|
this.leftRte.refreshUI();
|
|
@@ -20647,11 +20623,6 @@ class RichtexteditorComponent {
|
|
|
20647
20623
|
this.updateAISugesstionsData(selectedQuery);
|
|
20648
20624
|
}
|
|
20649
20625
|
else {
|
|
20650
|
-
// this.showMsg = true;
|
|
20651
|
-
// setTimeout(() => {
|
|
20652
|
-
// this.showMsg = false;
|
|
20653
|
-
// }, 3000);
|
|
20654
|
-
// console.log("Please select the content to perform the AI operation.");
|
|
20655
20626
|
this.dialog.showNotification(this.translation.FIRST_SELECT_SOME_TEXT || "First, Select some text", {
|
|
20656
20627
|
status: "Warning",
|
|
20657
20628
|
});
|
|
@@ -20661,25 +20632,29 @@ class RichtexteditorComponent {
|
|
|
20661
20632
|
this.isSentimentCheck = false;
|
|
20662
20633
|
switch (selectedQuery) {
|
|
20663
20634
|
case "Summarize":
|
|
20664
|
-
this.subQuery =
|
|
20635
|
+
this.subQuery =
|
|
20636
|
+
"Please summarize the following text. Preserve all HTML tags exactly as they are:";
|
|
20665
20637
|
break;
|
|
20666
20638
|
case "Elaborate":
|
|
20667
|
-
this.subQuery =
|
|
20639
|
+
this.subQuery =
|
|
20640
|
+
"Please elaborate and expand on the following text with more details. Preserve all HTML tags exactly as they are:";
|
|
20668
20641
|
break;
|
|
20669
20642
|
case "Rephrase":
|
|
20670
|
-
this.subQuery =
|
|
20643
|
+
this.subQuery =
|
|
20644
|
+
this.chipValue +
|
|
20645
|
+
" Please rephrase the following text while maintaining the same meaning. Preserve all HTML tags exactly as they are:";
|
|
20671
20646
|
break;
|
|
20672
20647
|
case "Grammar":
|
|
20673
|
-
this.subQuery =
|
|
20648
|
+
this.subQuery =
|
|
20649
|
+
"Please correct any grammar errors in the following text. Preserve all HTML tags exactly as they are:";
|
|
20674
20650
|
break;
|
|
20675
20651
|
case "Translate":
|
|
20676
|
-
this.subQuery =
|
|
20677
|
-
"Translate the upcoming sentence to " + this.translatelanguage + ".";
|
|
20652
|
+
this.subQuery = `Please translate the following text to ${this.translatelanguage}. Preserve all HTML tags exactly as they are:`;
|
|
20678
20653
|
break;
|
|
20679
20654
|
case "SentimentAnalysis":
|
|
20680
20655
|
this.isSentimentCheck = true;
|
|
20681
20656
|
this.subQuery =
|
|
20682
|
-
|
|
20657
|
+
"Please analyze the sentiment of the following text. Preserve all HTML tags in the text when referencing it:";
|
|
20683
20658
|
break;
|
|
20684
20659
|
}
|
|
20685
20660
|
this.updateAISugesstions();
|
|
@@ -20700,6 +20675,7 @@ class RichtexteditorComponent {
|
|
|
20700
20675
|
}
|
|
20701
20676
|
this.apiResultData = this.getResponseFromOpenAI(this.subQuery, this.promptQuery);
|
|
20702
20677
|
this.apiResultData.then((result) => {
|
|
20678
|
+
this.isDialogVisible = true;
|
|
20703
20679
|
this.AIResult = this.isSentimentCheck ? this.promptQuery : result;
|
|
20704
20680
|
this.sentimentButton.content = result
|
|
20705
20681
|
.toLowerCase()
|
|
@@ -20711,7 +20687,7 @@ class RichtexteditorComponent {
|
|
|
20711
20687
|
this.sentimentButton.element.style.display = !this.isSentimentCheck
|
|
20712
20688
|
? "none"
|
|
20713
20689
|
: "";
|
|
20714
|
-
this.rightRte.value = this.AIResult;
|
|
20690
|
+
//this.rightRte.value = this.AIResult;
|
|
20715
20691
|
var noResultsFound = !(this.AIResult || this.promptQuery);
|
|
20716
20692
|
document.getElementById("no-results-found").style.display = noResultsFound ? "" : "none";
|
|
20717
20693
|
this.regenerateButton.disabled = noResultsFound;
|
|
@@ -20721,12 +20697,17 @@ class RichtexteditorComponent {
|
|
|
20721
20697
|
});
|
|
20722
20698
|
}
|
|
20723
20699
|
}
|
|
20724
|
-
catch {
|
|
20725
|
-
// this.toastObj.show();
|
|
20726
|
-
}
|
|
20700
|
+
catch { }
|
|
20727
20701
|
}
|
|
20728
|
-
|
|
20702
|
+
currentResponse = "";
|
|
20703
|
+
abortController = null;
|
|
20729
20704
|
async getResponseFromOpenAI(subQuery, promptQuery) {
|
|
20705
|
+
this.zoomout = true;
|
|
20706
|
+
if (this.abortController) {
|
|
20707
|
+
this.abortController.abort();
|
|
20708
|
+
this.abortController = null;
|
|
20709
|
+
}
|
|
20710
|
+
this.abortController = new AbortController();
|
|
20730
20711
|
const messages = [
|
|
20731
20712
|
{
|
|
20732
20713
|
role: "system",
|
|
@@ -20736,22 +20717,23 @@ class RichtexteditorComponent {
|
|
|
20736
20717
|
},
|
|
20737
20718
|
{
|
|
20738
20719
|
role: "user",
|
|
20739
|
-
content: `${subQuery}
|
|
20720
|
+
content: `${subQuery}\n\n${promptQuery}`,
|
|
20740
20721
|
},
|
|
20741
20722
|
];
|
|
20742
20723
|
const param = {
|
|
20743
20724
|
messages: messages,
|
|
20744
|
-
max_tokens:
|
|
20725
|
+
max_tokens: 16000,
|
|
20745
20726
|
temperature: 0.7,
|
|
20746
20727
|
top_p: 1,
|
|
20747
20728
|
frequency_penalty: 0,
|
|
20748
20729
|
presence_penalty: 0,
|
|
20749
20730
|
};
|
|
20750
20731
|
try {
|
|
20751
|
-
const response = await fetch("api/ai/chat-stream", {
|
|
20732
|
+
const response = await fetch("api/ai/v2/chat/chat-stream", {
|
|
20752
20733
|
method: "POST",
|
|
20753
20734
|
headers: { "Content-Type": "application/json" },
|
|
20754
20735
|
body: JSON.stringify(param),
|
|
20736
|
+
signal: this.abortController.signal,
|
|
20755
20737
|
});
|
|
20756
20738
|
if (!response.ok) {
|
|
20757
20739
|
throw new Error(`HTTP error! status: ${response.status}`);
|
|
@@ -20760,41 +20742,27 @@ class RichtexteditorComponent {
|
|
|
20760
20742
|
"none";
|
|
20761
20743
|
document.getElementById("rightRte").style.display = "";
|
|
20762
20744
|
this.ref.detectChanges();
|
|
20763
|
-
this.
|
|
20745
|
+
this.currentResponse = "";
|
|
20746
|
+
this.updateResponse("");
|
|
20764
20747
|
this.rightRte.value = "";
|
|
20765
20748
|
const reader = response.body.getReader();
|
|
20766
20749
|
const decoder = new TextDecoder();
|
|
20767
20750
|
while (true) {
|
|
20768
20751
|
const { done, value } = await reader.read();
|
|
20769
|
-
if (done)
|
|
20752
|
+
if (done)
|
|
20770
20753
|
break;
|
|
20771
|
-
}
|
|
20772
20754
|
const chunk = decoder.decode(value, { stream: true });
|
|
20773
|
-
const
|
|
20774
|
-
|
|
20775
|
-
|
|
20776
|
-
const data = line.substring(6).trim();
|
|
20777
|
-
if (data === "[DONE]") {
|
|
20778
|
-
//this.showDialog();
|
|
20779
|
-
return this.fullResponse;
|
|
20780
|
-
}
|
|
20781
|
-
try {
|
|
20782
|
-
const parsed = JSON.parse(data);
|
|
20783
|
-
const content = parsed.choices?.[0]?.delta?.content;
|
|
20784
|
-
if (content) {
|
|
20785
|
-
this.fullResponse += content;
|
|
20786
|
-
setTimeout(() => this.scrollToBottom(content));
|
|
20787
|
-
}
|
|
20788
|
-
}
|
|
20789
|
-
catch (e) {
|
|
20790
|
-
console.error("Parse error:", e, "Data:", data);
|
|
20791
|
-
}
|
|
20792
|
-
}
|
|
20793
|
-
}
|
|
20755
|
+
const cleanedChunk = chunk.replace(/chunk:/g, "");
|
|
20756
|
+
this.currentResponse += cleanedChunk;
|
|
20757
|
+
this.updateResponse(this.currentResponse);
|
|
20794
20758
|
}
|
|
20795
|
-
return this.
|
|
20759
|
+
return this.currentResponse;
|
|
20796
20760
|
}
|
|
20797
20761
|
catch (error) {
|
|
20762
|
+
if (error.name === "AbortError") {
|
|
20763
|
+
console.log("The AI request was actively canceled by the user");
|
|
20764
|
+
return this.currentResponse;
|
|
20765
|
+
}
|
|
20798
20766
|
console.error("Stream error:", error);
|
|
20799
20767
|
throw error;
|
|
20800
20768
|
}
|
|
@@ -20821,6 +20789,10 @@ class RichtexteditorComponent {
|
|
|
20821
20789
|
this.AIdialog.element.style.display = "";
|
|
20822
20790
|
}
|
|
20823
20791
|
closeDialog() {
|
|
20792
|
+
if (this.abortController) {
|
|
20793
|
+
this.abortController.abort();
|
|
20794
|
+
this.abortController = null;
|
|
20795
|
+
}
|
|
20824
20796
|
this.AIdialog.hide();
|
|
20825
20797
|
this.rightRte.value = "";
|
|
20826
20798
|
this.leftRte.value = "";
|
|
@@ -20831,6 +20803,7 @@ class RichtexteditorComponent {
|
|
|
20831
20803
|
this.selectedQuery = "Rephrase";
|
|
20832
20804
|
this.sentimentButton.content = "😊 Neutral";
|
|
20833
20805
|
this.size = "";
|
|
20806
|
+
this.isDialogVisible = false;
|
|
20834
20807
|
}
|
|
20835
20808
|
copyTextToClipboard(text) {
|
|
20836
20809
|
if (!this.rightRte) {
|
|
@@ -20857,30 +20830,6 @@ class RichtexteditorComponent {
|
|
|
20857
20830
|
catch (err) {
|
|
20858
20831
|
console.error("Failed to copy text: ", err);
|
|
20859
20832
|
}
|
|
20860
|
-
// if (navigator.clipboard) {
|
|
20861
|
-
// navigator.clipboard
|
|
20862
|
-
// .writeText(text)
|
|
20863
|
-
// .then(() => {
|
|
20864
|
-
// console.log("Text copied to clipboard successfully!");
|
|
20865
|
-
// })
|
|
20866
|
-
// .catch((err) => {
|
|
20867
|
-
// console.error("Failed to copy text: ", err);
|
|
20868
|
-
// });
|
|
20869
|
-
// } else {
|
|
20870
|
-
// // Fallback for browsers that do not support the Clipboard API
|
|
20871
|
-
// const textarea = document.createElement("textarea");
|
|
20872
|
-
// textarea.value = text;
|
|
20873
|
-
// document.body.appendChild(textarea);
|
|
20874
|
-
// textarea.select();
|
|
20875
|
-
// try {
|
|
20876
|
-
// document.execCommand("copy");
|
|
20877
|
-
// console.log("Text copied to clipboard using execCommand");
|
|
20878
|
-
// } catch (err) {
|
|
20879
|
-
// console.error("Failed to copy text: ", err);
|
|
20880
|
-
// } finally {
|
|
20881
|
-
// document.body.removeChild(textarea);
|
|
20882
|
-
// }
|
|
20883
|
-
// }
|
|
20884
20833
|
}
|
|
20885
20834
|
onOverlayClick() {
|
|
20886
20835
|
let activeEle = this.AIdialog.element.querySelector(".char_block.e-active");
|
|
@@ -20975,9 +20924,6 @@ class RichtexteditorComponent {
|
|
|
20975
20924
|
.replace(/"/g, '"')
|
|
20976
20925
|
.replace(/'/g, "'");
|
|
20977
20926
|
}
|
|
20978
|
-
hideToast() {
|
|
20979
|
-
this.showMsg = false;
|
|
20980
|
-
}
|
|
20981
20927
|
onZoom() {
|
|
20982
20928
|
if (this.size === "largest") {
|
|
20983
20929
|
this.size = ""; // 恢复到原始大小
|
|
@@ -21000,18 +20946,30 @@ class RichtexteditorComponent {
|
|
|
21000
20946
|
});
|
|
21001
20947
|
this.closeDialog();
|
|
21002
20948
|
}
|
|
21003
|
-
|
|
21004
|
-
this.
|
|
20949
|
+
updateResponse(content) {
|
|
20950
|
+
this.currentResponse = content;
|
|
20951
|
+
const htmlContent = this.extractHTMLFromResponse(content);
|
|
20952
|
+
this.rightRte.value = htmlContent;
|
|
21005
20953
|
const rteContainer = document.getElementById("rightRte");
|
|
21006
20954
|
const scrollableElement = rteContainer?.querySelector(".e-rte-content");
|
|
21007
20955
|
if (scrollableElement) {
|
|
20956
|
+
// 自动滚动到底部
|
|
21008
20957
|
scrollableElement.scrollTop =
|
|
21009
20958
|
scrollableElement.scrollHeight - scrollableElement.clientHeight;
|
|
21010
20959
|
this.ref.detectChanges();
|
|
21011
20960
|
}
|
|
21012
20961
|
}
|
|
20962
|
+
extractHTMLFromResponse(content) {
|
|
20963
|
+
const codeBlockRegex = /```html\s*([\s\S]*?)\s*```/;
|
|
20964
|
+
const match = content.match(codeBlockRegex);
|
|
20965
|
+
if (match && match[1]) {
|
|
20966
|
+
return match[1].trim();
|
|
20967
|
+
}
|
|
20968
|
+
return content;
|
|
20969
|
+
}
|
|
21013
20970
|
onMinimize() {
|
|
21014
20971
|
this.AIdialog.element.style.display = "none";
|
|
20972
|
+
// this.AIdialog.hide();
|
|
21015
20973
|
this.dialog.showLoadingNotification({
|
|
21016
20974
|
loadingCallback: (callback) => { },
|
|
21017
20975
|
message: this.translation.AI_IN_PROGRESS || "AI is in progress",
|
|
@@ -21019,17 +20977,15 @@ class RichtexteditorComponent {
|
|
|
21019
20977
|
}
|
|
21020
20978
|
showDialog() {
|
|
21021
20979
|
this.AIdialog.element.style.display = "";
|
|
20980
|
+
// this.AIdialog.show();
|
|
21022
20981
|
this.snackBar.dismiss();
|
|
21023
20982
|
}
|
|
21024
|
-
insertHtmlToEditor(html) {
|
|
21025
|
-
this.rightRte.executeCommand("insertText", html);
|
|
21026
|
-
}
|
|
21027
20983
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RichtexteditorComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$4.HttpClient }, { token: DialogService }, { token: i1$2.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component });
|
|
21028
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RichtexteditorComponent, selector: "rs-richtext-editor", inputs: { placeholder: "placeholder", value: "value", editorId: "editorId", saveInterval: "saveInterval", height: "height", autoSaveOnIdle: "autoSaveOnIdle", disabled: "disabled", target: "target", insertImageSettings: "insertImageSettings", showTicketAttachment: "showTicketAttachment" }, outputs: { toolbarClick: "toolbarClick", change: "change", created: "created", actionBegin: "actionBegin", input: "input", focus: "focus", blur: "blur", actionComplete: "actionComplete", afterPasteCleanup: "afterPasteCleanup" }, viewQueries: [{ propertyName: "rteObj", first: true, predicate: ["editor"], descendants: true }, { propertyName: "queryCategory", first: true, predicate: ["queryCategory"], descendants: true }, { propertyName: "leftRte", first: true, predicate: ["leftRte"], descendants: true }, { propertyName: "rightRte", first: true, predicate: ["rightRte"], descendants: true }, { propertyName: "AIdialog", first: true, predicate: ["AIdialog"], descendants: true, static: true }, { propertyName: "sentimentButton", first: true, predicate: ["sentimentButton"], descendants: true }, { propertyName: "regenerateButton", first: true, predicate: ["regenerateButton"], descendants: true }, { propertyName: "copyButton", first: true, predicate: ["copyButton"], descendants: true }, { propertyName: "replaceButton", first: true, predicate: ["replaceButton"], descendants: true }], ngImport: i0, template: "<div class=\"editor_box\" id=\"container\">\r\n <ejs-richtexteditor\r\n #editor\r\n [id]=\"editorId\"\r\n [height]=\"height\"\r\n [saveInterval]=\"0\"\r\n [autoSaveOnIdle]=\"autoSaveOnIdle\"\r\n [toolbarSettings]=\"tools\"\r\n [bulletFormatList]=\"bulletFormatList\"\r\n [numberFormatList]=\"numberFormatList\"\r\n [fontFamily]=\"family\"\r\n [fontSize]=\"fontSize\"\r\n [disabled]=\"disabled\"\r\n [insertImageSettings]=\"insertImageSettings\"\r\n [(ngModel)]=\"value\"\r\n (actionBegin)=\"_actionBegin($event)\"\r\n (change)=\"onContentChange($event)\"\r\n (created)=\"onCreate()\"\r\n (toolbarClick)=\"_toolbarClick($event)\"\r\n (input)=\"_input($event)\"\r\n (focus)=\"_focus($event)\"\r\n (blur)=\"_blur($event)\"\r\n (actionComplete)=\"_actionComplete($event)\"\r\n (dialogOpen)=\"_dialogOpen($event)\"\r\n (afterPasteCleanup)=\"_afterPasteCleanup($event)\"\r\n >\r\n </ejs-richtexteditor>\r\n <ejs-dialog\r\n #AIdialog\r\n id=\"AIdialog\"\r\n [ngClass]=\"size\"\r\n [visible]=\"false\"\r\n [target]=\"target\"\r\n [isModal]=\"true\"\r\n [height]=\"dialogHeight\"\r\n [width]=\"dialogWidth\"\r\n maxHeight=\"80%\"\r\n cssClass=\"e-rte-elements custom-dialog-rte\"\r\n zIndex=\"1000\"\r\n (close)=\"closeDialog()\"\r\n (overlayClick)=\"onOverlayClick()\"\r\n (open)=\"dialogShow()\"\r\n >\r\n <ng-template #header>\r\n <div class=\"header-title\">\r\n {{ translation.AI_ASSIST || \".AI Assist\" }}\r\n </div>\r\n <div class=\"header-buttons\">\r\n <!-- <div class=\"header-btn\">\r\n <img\r\n src=\"/assets/img/dialog-narrow.svg\"\r\n class=\"header-icon\"\r\n (click)=\"onMinimize()\"\r\n />\r\n </div> -->\r\n <div *ngIf=\"showZoomBtn\" class=\"header-zoom\" (click)=\"onZoom()\">\r\n <img\r\n class=\"header-icon\"\r\n *ngIf=\"size === 'largest'\"\r\n src=\"../../../assets/img/dialog-shrink.svg\"\r\n />\r\n <img\r\n class=\"header-icon\"\r\n *ngIf=\"size !== 'largest'\"\r\n src=\"../../../assets/img/dialog-grow.svg\"\r\n />\r\n </div>\r\n <div class=\"header-btn\" (click)=\"closeDialog()\">\r\n <img class=\"header-icon\" src=\"../../../assets/img/dialog-close.svg\" />\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template #footerTemplate>\r\n <div id=\"dialog-footer-content\">\r\n <div class=\"custom-row-0\">\r\n <div\r\n class=\"cuscol-0\"\r\n style=\"width: 100%; align-items: center; justify-content: left\"\r\n ></div>\r\n <div\r\n class=\"cuscol-1\"\r\n style=\"\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n width: 100%;\r\n \"\r\n >\r\n <div style=\"text-align: right; width: 100%\">\r\n <button\r\n ejs-button\r\n #sentimentButton\r\n [content]=\"'\uD83D\uDE0A ' + (translation.NEUTRAL || '.Neutral')\"\r\n disabled=\"false\"\r\n cssClass=\"sentiment\"\r\n ></button>\r\n <button\r\n ejs-button\r\n #copyButton\r\n [content]=\"translation.COPY || '.Copy'\"\r\n disabled=\"false\"\r\n class=\"copy-btn\"\r\n (click)=\"copyClick()\"\r\n ></button>\r\n <button\r\n ejs-button\r\n #replaceButton\r\n [content]=\"translation.REPLACE || '.Replace'\"\r\n isPrimary=\"true\"\r\n disabled=\"false\"\r\n (click)=\"replaceClick()\"\r\n ></button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template #content>\r\n <div class=\"dialog-content\" style=\"height: 100%\">\r\n <div class=\"custom-row-0\">\r\n <div class=\"cuscol-0\" style=\"width: 100%\">\r\n <ejs-dropdownlist\r\n #queryCategory\r\n style=\"width: 200px\"\r\n id=\"queryCategory\"\r\n [dataSource]=\"queryList\"\r\n index=\"0\"\r\n [fields]=\"{ text: 'text', value: 'id' }\"\r\n (select)=\"onQuerySelect($event)\"\r\n >\r\n {{ translation.REPHRASE || \".Rephrase\" }}\r\n </ejs-dropdownlist>\r\n <ejs-dropdownlist\r\n *ngIf=\"selectedQuery == 'Rephrase'\"\r\n id=\"chips-container\"\r\n #chipList\r\n style=\"width: 160px\"\r\n [(ngModel)]=\"chipValue\"\r\n [dataSource]=\"rephraseTyleList\"\r\n [fields]=\"{ text: 'text', value: 'id' }\"\r\n (select)=\"onChipClick($event)\"\r\n >\r\n </ejs-dropdownlist>\r\n <ejs-dropdownlist\r\n *ngIf=\"selectedQuery == 'Translate'\"\r\n #languageCategory\r\n index=\"0\"\r\n id=\"language-Category\"\r\n [dataSource]=\"languageList\"\r\n [fields]=\"{ text: 'text', value: 'id' }\"\r\n (select)=\"onLanguageSelect($event)\"\r\n >\r\n </ejs-dropdownlist>\r\n </div>\r\n <div\r\n class=\"cuscol-1\"\r\n style=\"\r\n justify-content: space-between;\r\n align-items: center;\r\n width: 100%;\r\n \"\r\n >\r\n <!-- <ejs-chiplist\r\n id=\"chips-container\"\r\n #chipList\r\n [chips]=\"['Standard', 'Fluent', 'Professional']\"\r\n selection=\"Single\"\r\n cssClass=\"e-outline\"\r\n [selectedChips]=\"[0]\"\r\n (click)=\"onChipClick($event)\"\r\n >\r\n </ejs-chiplist> -->\r\n <button\r\n ejs-button\r\n #regenerateButton\r\n [content]=\"translation.REGENERATE || '.Regenerate'\"\r\n isPrimary=\"true\"\r\n disabled=\"false\"\r\n (click)=\"regenerateClick()\"\r\n ></button>\r\n </div>\r\n </div>\r\n <div class=\"custom-row-1\" style=\"height: calc(100% - 40px)\">\r\n <div\r\n class=\"cuscol-0\"\r\n style=\"\r\n flex: 1;\r\n height: 100%;\r\n align-items: center;\r\n justify-content: left;\r\n overflow: auto;\r\n \"\r\n >\r\n <div style=\"text-align: left; height: 100%\">\r\n <ejs-richtexteditor\r\n #leftRte\r\n id=\"leftRte\"\r\n height=\"100%\"\r\n [toolbarSettings]=\"{ enable: false }\"\r\n [placeholder]=\"\r\n translation.ANALYSIS_OF_AI_SUPPORT ||\r\n '.Analysis of AI Support'\r\n \"\r\n cssClass=\"e-outline\"\r\n >\r\n </ejs-richtexteditor>\r\n </div>\r\n </div>\r\n <div\r\n class=\"cuscol-1\"\r\n style=\"\r\n flex: 1;\r\n height: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n overflow: hidden;\r\n \"\r\n >\r\n <div style=\"flex: 1; min-height: 0; overflow: hidden\">\r\n <ejs-richtexteditor\r\n #rightRte\r\n id=\"rightRte\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n [toolbarSettings]=\"{ enable: false }\"\r\n [placeholder]=\"\r\n translation.ANALYSIS_OF_AI_SUPPORT ||\r\n '.Analysis of AI Support'\r\n \"\r\n cssClass=\"e-outline\"\r\n >\r\n </ejs-richtexteditor>\r\n <div\r\n class=\"no-results-found\"\r\n id=\"no-results-found\"\r\n style=\"display: none; height: 244px; align-content: center\"\r\n >\r\n <img\r\n height=\"50\"\r\n width=\"50\"\r\n src=\"https://storage.googleapis.com/cdn-bolddesk/agent-angular-app/images/light/no-records-warning.svg\"\r\n />\r\n <div>\r\n {{ translation.NO_RESULTS_FOUND || \".No results found\" }}\r\n </div>\r\n </div>\r\n <div id=\"skeletonId\">\r\n <ejs-skeleton\r\n #skeletonId1\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"100%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId2\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"90%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId3\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"70%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId4\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"50%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId5\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"30%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId6\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"10%\"\r\n ></ejs-skeleton\r\n ><br />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </ejs-dialog>\r\n <!-- <div class=\"toast\" *ngIf=\"showMsg\">\r\n <span class=\"toast_text\">First, Select some text</span\r\n ><span class=\"close_icon\" (click)=\"hideToast()\"></span>\r\n </div> -->\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.editor_box{position:relative;width:100%;height:100%}.editor_box .toast{position:absolute;left:35%;top:110px;z-index:1;width:400px;border-radius:4px;border:1px solid #e8f2ff;background:#f4f8ff;padding:4px 12px;color:#1f3f5c;font-size:12px;font-style:normal;font-weight:400;height:32px;font-family:Arial;display:flex;align-items:center;justify-content:space-between}.editor_box .toast .toast_text:before{content:url(\"data:image/svg+xml,%3Csvg width%3D%2216%22 height%3D%2217%22 viewBox%3D%220 0 16 17%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Ccircle cx%3D%228%22 cy%3D%228.5%22 r%3D%226.5%22 stroke%3D%22%236B6B6B%22%2F%3E%0D%3Cpath d%3D%22M8 8.5V11.5%22 stroke%3D%22%236B6B6B%22 stroke-width%3D%222%22 stroke-linecap%3D%22round%22%2F%3E%0D%3Ccircle cx%3D%228%22 cy%3D%225.5%22 r%3D%221%22 fill%3D%22%236B6B6B%22%2F%3E%0D%3C%2Fsvg%3E%0D\");display:inline-block;width:16px;height:16px;vertical-align:bottom;margin-right:8px}.editor_box .toast .close_icon{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2216%22 height%3D%2216%22 viewBox%3D%220 0 16 16%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cpath d%3D%22M3.50021 12.9999L12.5001 4.00007%22 stroke%3D%22%236C7C90%22 stroke-linecap%3D%22round%22%2F%3E%0D%3Cpath d%3D%22M12.4999 12.9999L3.50007 4.00007%22 stroke%3D%22%236C7C90%22 stroke-linecap%3D%22round%22%2F%3E%0D%3C%2Fsvg%3E%0D\");cursor:pointer;display:inline-block;width:16px;height:16px}.custom-dialog-rte{padding:0 20px;border-radius:10px}.custom-row-0,.custom-row-1,.custom-row-2{display:flex;align-items:center;padding:12px 24px}.e-rte-dropdown-btn-text{padding-left:4px}.no-results-found{text-align:center}.no-results-found img{display:block;margin:0 auto}.e-custom{margin-right:.5rem;border-radius:25px!important}.custom-dialog-rte .skeleton-rectangle{border-radius:4px}@media (max-width: 767px){.cuscol-0,.cuscol-1,.cuscol-2{justify-content:center!important}.custom-row-0,.custom-row-1,.custom-row-2{flex-direction:column!important}.cuscol-1{border-right:none!important}.cuscol-0{width:100%;align-items:center}::ng-deep:host .e-dialog{max-height:80%!important}.custom-dialog-rte .e-dialog .e-dlg-content{overflow-y:auto!important}.custom-dialog-rte .e-dialog .e-dlg-content .e-richtexteditor{height:100px!important}.cuscol-noresult{padding-bottom:20px!important}.e-chip-list{padding:5px!important}.cuscol{padding-right:.2rem!important;width:auto!important}.custom-row-1{height:auto!important}}.cuscol-1{display:flex;flex-direction:row!important}.cuscol-2{display:flex;flex-direction:column!important}.sentiment{color:#000!important}.custom-dialog-rte .e-dialog .e-dlg-content{padding:0!important;overflow-y:hidden}.custom-dialog-rte .e-dialog .e-dlg-header-content{padding:20px 0!important;border:0!important}.custom-dialog-rte .e-dialog .e-dlg-header-content .e-dlg-header{display:flex;align-items:center;line-height:18px;justify-content:space-between}.custom-dialog-rte .e-dialog .e-dlg-header-content .e-dlg-header .header-title{font-family:Arial;font-size:15px;font-weight:700;font-style:normal}.custom-dialog-rte .e-dialog .e-dlg-header-content .header-buttons{display:flex}.custom-dialog-rte .e-dialog .e-dlg-header-content .header-buttons img{width:16px;height:16px;cursor:pointer;padding:2px;margin-left:12px}.custom-dialog-rte .e-dialog .e-footer-content{padding:0!important}.custom-dialog-rte .e-dialog .e-dlg-content .e-richtexteditor.e-rte-tb-expand .e-rte-content,.e-richtexteditor.e-rte-tb-expand .e-source-content{border:0;border-bottom:1px solid #dee2e6;border-top:0px solid #dee2e6!important}.custom-dialog-rte .dialog-content .custom-row-0{border-top:0px solid #ddd!important;padding:0;margin-bottom:12px}.custom-dialog-rte .dialog-content .custom-row-0 .cuscol-0{justify-content:left;border-right:none!important;padding:0;display:flex;gap:12px}.custom-dialog-rte .dialog-content .custom-row-0 .cuscol-1{padding:0;margin-left:12px}.custom-dialog-rte .dialog-content .custom-row-0 .cuscol-1 .e-primary{color:#44566c;border-radius:4px;border:1px solid #dbe1e7;background:#fff;width:87px;margin:0;padding:2px 12px;font-family:Arial;font-size:12px;font-style:normal;font-weight:400;line-height:14px;height:28px}.custom-dialog-rte .dialog-content .custom-row-1{padding:0;height:calc(100% - 40px);gap:12px}.custom-dialog-rte .e-footer-content{border:0}.custom-dialog-rte .e-footer-content .custom-row-0{padding:20px 0}.custom-dialog-rte .e-footer-content .e-control.e-btn{font-family:Arial;font-size:12px;line-height:14px;padding:2px 12px;height:28px;background:#fff;color:#44566c}.custom-dialog-rte .e-footer-content .e-control.e-btn.copy-btn{border-color:#dbe1e7}.custom-dialog-rte .e-footer-content .e-control.e-btn.copy-btn:before{content:url(\"data:image/svg+xml,%3Csvg width%3D%2216%22 height%3D%2216%22 viewBox%3D%220 0 16 16%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Crect width%3D%2216%22 height%3D%2216%22 fill%3D%22white%22%2F%3E%0D%3Crect x%3D%224.5%22 y%3D%224.5%22 width%3D%229%22 height%3D%229%22 rx%3D%221.5%22 stroke%3D%22%236C7C90%22%2F%3E%0D%3Cpath d%3D%22M11.5 2.5H4.5C3.39543 2.5 2.5 3.39543 2.5 4.5V11.5%22 stroke%3D%22%236C7C90%22 stroke-linecap%3D%22round%22%2F%3E%0D%3C%2Fsvg%3E%0D\");vertical-align:middle;margin-right:6px}.custom-dialog-rte .e-footer-content .e-control.e-btn.e-primary{color:#fff;background:#1364b3}.e-dialog.largest{width:96vw!important;height:88vh!important;max-height:88vh;max-width:2100px}::ng-deep ol.custom-list{list-style:none!important;counter-reset:list-counter}::ng-deep ol.custom-list li{counter-increment:list-counter}::ng-deep ol.parentheses li::marker{content:\"(\" counter(list-counter) \") \"}::ng-deep .e-tiempos-headline{font-family:Tiempos Headline Semibold!important}::ng-deep .e-avenir-lt-pro-black{font-family:\"Avenir LT Pro 65 Medium\"!important}::ng-deep .e-avenir-lt-pro-black-oblique{font-family:Avenir LT Pro-Black Oblique!important}::ng-deep .e-avenir-lt-pro-heavy{font-family:\"Avenir LT Pro 55 Roman\"!important}::ng-deep .e-avenir-lt-pro-heavy-oblique{font-family:Avenir LT Pro-Heavy Oblique!important}::ng-deep .e-avenir-lt-pro-light{font-family:\"Avenir LT Pro 35 Light\"!important}::ng-deep .e-avenir-lt-pro-light-oblique{font-family:Avenir LT Pro-Light Oblique!important}::ng-deep .e-avenir-lt-pro-medium{font-family:Avenir LT Pro-Medium!important}::ng-deep .e-avenir-lt-pro-medium-oblique{font-family:Avenir LT Pro-Medium Oblique!important}::ng-deep .e-avenir-next-lt-pro-bold{font-family:AvenirNext LT Pro Bold!important}::ng-deep .e-avenir-next-lt-pro-demi{font-family:AvenirNext LT Pro Regular!important}::ng-deep .e-avenir-next-lt-pro-demilt{font-family:Avenir Next LT Pro-Demilt!important}::ng-deep .e-avenir-next-lt-pro-heavy{font-family:AvenirNext LT Pro Heavy!important}::ng-deep .e-avenir-next-lt-pro-heavylt{font-family:AvenirNext LT Pro Heavylt!important}::ng-deep .e-avenir-next-lt-pro-it{font-family:Avenir Next LT Pro-It!important}::ng-deep .e-avenir-next-lt-pro-light{font-family:Avenir Next LT Pro Light!important}::ng-deep .e-avenir-next-lt-pro-mediumlt{font-family:AvenirNext LT Pro Medium!important}::ng-deep .e-avenir-next-lt-pro-regular{font-family:Avenir Next LT Pro-Regular!important}::ng-deep .e-avenir-next-lt-pro-ultlt{font-family:AvenirNext LT Pro UltLight!important}::ng-deep .e-avenir-next-lt-pro-ultltlt{font-family:AvenirNext LT Pro UltLightlt!important}::ng-deep .e-source-han-sans-cn-extralight{font-family:\\601d\\6e90\\9ed1\\4f53 CN ExtraLight!important}::ng-deep .e-source-han-sans-cn-regular{font-family:Source Han Sans CN!important}::ng-deep .e-source-han-sans-cn-medium{font-family:\\601d\\6e90\\9ed1\\4f53 CN Medium!important}::ng-deep .e-source-han-sans-cn-bold{font-family:\\601d\\6e90\\9ed1\\4f53 CN!important}::ng-deep .e-ping-fang-sc-light{font-family:\\82f9\\65b9-\\7b80!important}::ng-deep .e-ping-fang-sc-medium{font-family:Ping Fang SC-Medium!important}::ng-deep .e-ping-fang-sc-regular{font-family:Ping Fang SC-Regular!important}::ng-deep .e-ping-fang-sc-semibold{font-family:Ping Fang SC-Semibold!important}.e-color-palette{width:270px!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3$2.ButtonComponent, selector: "[ejs-button]", inputs: ["content", "cssClass", "disabled", "enableHtmlSanitizer", "enablePersistence", "enableRtl", "iconCss", "iconPosition", "isPrimary", "isToggle", "locale"], outputs: ["created"] }, { kind: "component", type: i6.DialogComponent, selector: "ejs-dialog", inputs: ["allowDragging", "animationSettings", "buttons", "closeOnEscape", "content", "cssClass", "enableHtmlSanitizer", "enablePersistence", "enableResize", "enableRtl", "footerTemplate", "header", "height", "isModal", "locale", "minHeight", "position", "resizeHandles", "showCloseIcon", "target", "visible", "width", "zIndex"], outputs: ["beforeClose", "beforeOpen", "beforeSanitizeHtml", "close", "created", "destroyed", "drag", "dragStart", "dragStop", "open", "overlayClick", "resizeStart", "resizeStop", "resizing", "visibleChange"] }, { kind: "component", type: i6$1.DropDownListComponent, selector: "ejs-dropdownlist", inputs: ["actionFailureTemplate", "allowFiltering", "allowObjectBinding", "cssClass", "dataSource", "enablePersistence", "enableRtl", "enableVirtualization", "enabled", "fields", "filterBarPlaceholder", "filterType", "floatLabelType", "footerTemplate", "groupTemplate", "headerTemplate", "htmlAttributes", "ignoreAccent", "ignoreCase", "index", "isDeviceFullScreen", "itemTemplate", "locale", "noRecordsTemplate", "placeholder", "popupHeight", "popupWidth", "query", "readonly", "showClearButton", "sortOrder", "text", "value", "valueTemplate", "width", "zIndex"], outputs: ["actionBegin", "actionComplete", "actionFailure", "beforeOpen", "blur", "change", "close", "created", "dataBound", "destroyed", "filtering", "focus", "open", "select", "valueChange"] }, { kind: "component", type: i9.SkeletonComponent, selector: "ejs-skeleton", inputs: ["cssClass", "enablePersistence", "enableRtl", "height", "label", "locale", "shape", "shimmerEffect", "visible", "width"] }, { kind: "component", type: i10.RichTextEditorComponent, selector: "ejs-richtexteditor", inputs: ["autoSaveOnIdle", "backgroundColor", "bulletFormatList", "cssClass", "editorMode", "emojiPickerSettings", "enableAutoUrl", "enableHtmlEncode", "enableHtmlSanitizer", "enablePersistence", "enableResize", "enableRtl", "enableTabKey", "enableXhtml", "enabled", "enterKey", "exportPdf", "exportWord", "fileManagerSettings", "floatingToolbarOffset", "fontColor", "fontFamily", "fontSize", "format", "formatPainterSettings", "formatter", "height", "htmlAttributes", "iframeSettings", "importWord", "inlineMode", "insertAudioSettings", "insertImageSettings", "insertVideoSettings", "keyConfig", "locale", "maxLength", "numberFormatList", "pasteCleanupSettings", "placeholder", "quickToolbarSettings", "readonly", "saveInterval", "shiftEnterKey", "showCharCount", "showTooltip", "slashMenuSettings", "tableSettings", "toolbarSettings", "undoRedoSteps", "undoRedoTimer", "value", "valueTemplate", "width"], outputs: ["actionBegin", "actionComplete", "afterImageDelete", "afterMediaDelete", "afterPasteCleanup", "beforeDialogClose", "beforeDialogOpen", "beforeFileUpload", "beforeImageDrop", "beforeImageUpload", "beforePasteCleanup", "beforeQuickToolbarOpen", "beforeSanitizeHtml", "blur", "change", "created", "destroyed", "dialogClose", "dialogOpen", "fileRemoving", "fileSelected", "fileUploadFailed", "fileUploadSuccess", "fileUploading", "focus", "imageRemoving", "imageSelected", "imageUploadFailed", "imageUploadSuccess", "imageUploading", "quickToolbarClose", "quickToolbarOpen", "resizeStart", "resizeStop", "resizing", "slashMenuItemSelect", "toolbarClick", "toolbarStatusUpdate", "updatedToolbarStatus", "valueChange"] }] });
|
|
20984
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RichtexteditorComponent, selector: "rs-richtext-editor", inputs: { placeholder: "placeholder", value: "value", editorId: "editorId", saveInterval: "saveInterval", height: "height", autoSaveOnIdle: "autoSaveOnIdle", disabled: "disabled", target: "target", insertImageSettings: "insertImageSettings", showTicketAttachment: "showTicketAttachment" }, outputs: { toolbarClick: "toolbarClick", change: "change", created: "created", actionBegin: "actionBegin", input: "input", focus: "focus", blur: "blur", actionComplete: "actionComplete", afterPasteCleanup: "afterPasteCleanup" }, viewQueries: [{ propertyName: "rteObj", first: true, predicate: ["editor"], descendants: true }, { propertyName: "queryCategory", first: true, predicate: ["queryCategory"], descendants: true }, { propertyName: "leftRte", first: true, predicate: ["leftRte"], descendants: true }, { propertyName: "rightRte", first: true, predicate: ["rightRte"], descendants: true }, { propertyName: "AIdialog", first: true, predicate: ["AIdialog"], descendants: true, static: true }, { propertyName: "sentimentButton", first: true, predicate: ["sentimentButton"], descendants: true }, { propertyName: "regenerateButton", first: true, predicate: ["regenerateButton"], descendants: true }, { propertyName: "copyButton", first: true, predicate: ["copyButton"], descendants: true }, { propertyName: "replaceButton", first: true, predicate: ["replaceButton"], descendants: true }], ngImport: i0, template: "<div class=\"editor_box\" id=\"container\">\r\n <ejs-richtexteditor\r\n #editor\r\n [id]=\"editorId\"\r\n [height]=\"height\"\r\n [saveInterval]=\"0\"\r\n [autoSaveOnIdle]=\"autoSaveOnIdle\"\r\n [toolbarSettings]=\"tools\"\r\n [bulletFormatList]=\"bulletFormatList\"\r\n [numberFormatList]=\"numberFormatList\"\r\n [fontFamily]=\"family\"\r\n [fontSize]=\"fontSize\"\r\n [disabled]=\"disabled\"\r\n [insertImageSettings]=\"insertImageSettings\"\r\n [(ngModel)]=\"value\"\r\n (actionBegin)=\"_actionBegin($event)\"\r\n (change)=\"onContentChange($event)\"\r\n (created)=\"onCreate()\"\r\n (toolbarClick)=\"_toolbarClick($event)\"\r\n (input)=\"_input($event)\"\r\n (focus)=\"_focus($event)\"\r\n (blur)=\"_blur($event)\"\r\n (actionComplete)=\"_actionComplete($event)\"\r\n (dialogOpen)=\"_dialogOpen($event)\"\r\n (afterPasteCleanup)=\"_afterPasteCleanup($event)\"\r\n >\r\n </ejs-richtexteditor>\r\n <ejs-dialog\r\n #AIdialog\r\n id=\"AIdialog\"\r\n [ngClass]=\"size\"\r\n [visible]=\"false\"\r\n [target]=\"target\"\r\n [isModal]=\"true\"\r\n [height]=\"dialogHeight\"\r\n [width]=\"dialogWidth\"\r\n maxHeight=\"80%\"\r\n cssClass=\"e-rte-elements custom-dialog-rte\"\r\n zIndex=\"1000\"\r\n (close)=\"closeDialog()\"\r\n (overlayClick)=\"onOverlayClick()\"\r\n (open)=\"dialogShow()\"\r\n >\r\n <ng-template #header>\r\n <div class=\"header-title\">\r\n {{ translation.AI_ASSIST || \".AI Assist\" }}\r\n </div>\r\n <div class=\"header-buttons\">\r\n <!-- <div class=\"header-btn\" *ngIf=\"zoomout\">\r\n <img\r\n src=\"/assets/img/dialog-narrow.svg\"\r\n class=\"header-icon\"\r\n (click)=\"onMinimize()\"\r\n />\r\n </div> -->\r\n <div *ngIf=\"showZoomBtn\" class=\"header-zoom\" (click)=\"onZoom()\">\r\n <img\r\n class=\"header-icon\"\r\n *ngIf=\"size === 'largest'\"\r\n src=\"../../../assets/img/dialog-shrink.svg\"\r\n />\r\n <img\r\n class=\"header-icon\"\r\n *ngIf=\"size !== 'largest'\"\r\n src=\"../../../assets/img/dialog-grow.svg\"\r\n />\r\n </div>\r\n <div class=\"header-btn\" (click)=\"closeDialog()\">\r\n <img class=\"header-icon\" src=\"../../../assets/img/dialog-close.svg\" />\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template #footerTemplate>\r\n <div id=\"dialog-footer-content\">\r\n <div class=\"custom-row-0\">\r\n <div\r\n class=\"cuscol-0\"\r\n style=\"width: 100%; align-items: center; justify-content: left\"\r\n ></div>\r\n <div\r\n class=\"cuscol-1\"\r\n style=\"\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n width: 100%;\r\n \"\r\n >\r\n <div style=\"text-align: right; width: 100%\">\r\n <button\r\n ejs-button\r\n #sentimentButton\r\n [content]=\"'\uD83D\uDE0A ' + (translation.NEUTRAL || '.Neutral')\"\r\n disabled=\"false\"\r\n cssClass=\"sentiment\"\r\n ></button>\r\n <button\r\n ejs-button\r\n #copyButton\r\n [content]=\"translation.COPY || '.Copy'\"\r\n disabled=\"false\"\r\n class=\"copy-btn\"\r\n (click)=\"copyClick()\"\r\n ></button>\r\n <button\r\n ejs-button\r\n #replaceButton\r\n [content]=\"translation.REPLACE || '.Replace'\"\r\n isPrimary=\"true\"\r\n disabled=\"false\"\r\n (click)=\"replaceClick()\"\r\n ></button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template #content>\r\n <div class=\"dialog-content\" style=\"height: 100%\">\r\n <div class=\"custom-row-0\">\r\n <div class=\"cuscol-0\" style=\"width: 100%\">\r\n <ejs-dropdownlist\r\n #queryCategory\r\n style=\"width: 200px\"\r\n id=\"queryCategory\"\r\n [dataSource]=\"queryList\"\r\n index=\"0\"\r\n [fields]=\"{ text: 'text', value: 'id' }\"\r\n (select)=\"onQuerySelect($event)\"\r\n >\r\n {{ translation.REPHRASE || \".Rephrase\" }}\r\n </ejs-dropdownlist>\r\n <ejs-dropdownlist\r\n *ngIf=\"selectedQuery == 'Rephrase'\"\r\n id=\"chips-container\"\r\n #chipList\r\n style=\"width: 160px\"\r\n [(ngModel)]=\"chipValue\"\r\n [dataSource]=\"rephraseTyleList\"\r\n [fields]=\"{ text: 'text', value: 'id' }\"\r\n (select)=\"onChipClick($event)\"\r\n >\r\n </ejs-dropdownlist>\r\n <ejs-dropdownlist\r\n *ngIf=\"selectedQuery == 'Translate'\"\r\n #languageCategory\r\n index=\"0\"\r\n id=\"language-Category\"\r\n [dataSource]=\"languageList\"\r\n [fields]=\"{ text: 'text', value: 'id' }\"\r\n (select)=\"onLanguageSelect($event)\"\r\n >\r\n </ejs-dropdownlist>\r\n </div>\r\n <div\r\n class=\"cuscol-1\"\r\n style=\"\r\n justify-content: space-between;\r\n align-items: center;\r\n width: 100%;\r\n \"\r\n >\r\n <!-- <ejs-chiplist\r\n id=\"chips-container\"\r\n #chipList\r\n [chips]=\"['Standard', 'Fluent', 'Professional']\"\r\n selection=\"Single\"\r\n cssClass=\"e-outline\"\r\n [selectedChips]=\"[0]\"\r\n (click)=\"onChipClick($event)\"\r\n >\r\n </ejs-chiplist> -->\r\n <button\r\n ejs-button\r\n #regenerateButton\r\n [content]=\"translation.REGENERATE || '.Regenerate'\"\r\n isPrimary=\"true\"\r\n disabled=\"false\"\r\n (click)=\"regenerateClick()\"\r\n ></button>\r\n </div>\r\n </div>\r\n <div class=\"custom-row-1\" style=\"height: calc(100% - 40px)\">\r\n <div\r\n class=\"cuscol-0\"\r\n style=\"\r\n flex: 1;\r\n height: 100%;\r\n align-items: center;\r\n justify-content: left;\r\n overflow: auto;\r\n \"\r\n >\r\n <div style=\"text-align: left; height: 100%\">\r\n <ejs-richtexteditor\r\n #leftRte\r\n id=\"leftRte\"\r\n height=\"100%\"\r\n [toolbarSettings]=\"{ enable: false }\"\r\n [placeholder]=\"\r\n translation.ANALYSIS_OF_AI_SUPPORT ||\r\n '.Analysis of AI Support'\r\n \"\r\n cssClass=\"e-outline\"\r\n >\r\n </ejs-richtexteditor>\r\n </div>\r\n </div>\r\n <div\r\n class=\"cuscol-1\"\r\n style=\"\r\n flex: 1;\r\n height: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n overflow: hidden;\r\n \"\r\n >\r\n <div style=\"flex: 1; min-height: 0; overflow: hidden\">\r\n <ejs-richtexteditor\r\n #rightRte\r\n id=\"rightRte\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n [toolbarSettings]=\"{ enable: false }\"\r\n [placeholder]=\"\r\n translation.ANALYSIS_OF_AI_SUPPORT ||\r\n '.Analysis of AI Support'\r\n \"\r\n cssClass=\"e-outline\"\r\n >\r\n </ejs-richtexteditor>\r\n <div\r\n class=\"no-results-found\"\r\n id=\"no-results-found\"\r\n style=\"display: none; height: 244px; align-content: center\"\r\n >\r\n <img\r\n height=\"50\"\r\n width=\"50\"\r\n src=\"https://storage.googleapis.com/cdn-bolddesk/agent-angular-app/images/light/no-records-warning.svg\"\r\n />\r\n <div>\r\n {{ translation.NO_RESULTS_FOUND || \".No results found\" }}\r\n </div>\r\n </div>\r\n <div id=\"skeletonId\">\r\n <ejs-skeleton\r\n #skeletonId1\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"100%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId2\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"90%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId3\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"70%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId4\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"50%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId5\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"30%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId6\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"10%\"\r\n ></ejs-skeleton\r\n ><br />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </ejs-dialog>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.editor_box{position:relative;width:100%;height:100%}.editor_box .toast{position:absolute;left:35%;top:110px;z-index:1;width:400px;border-radius:4px;border:1px solid #e8f2ff;background:#f4f8ff;padding:4px 12px;color:#1f3f5c;font-size:12px;font-style:normal;font-weight:400;height:32px;font-family:Arial;display:flex;align-items:center;justify-content:space-between}.editor_box .toast .toast_text:before{content:url(\"data:image/svg+xml,%3Csvg width%3D%2216%22 height%3D%2217%22 viewBox%3D%220 0 16 17%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Ccircle cx%3D%228%22 cy%3D%228.5%22 r%3D%226.5%22 stroke%3D%22%236B6B6B%22%2F%3E%0D%3Cpath d%3D%22M8 8.5V11.5%22 stroke%3D%22%236B6B6B%22 stroke-width%3D%222%22 stroke-linecap%3D%22round%22%2F%3E%0D%3Ccircle cx%3D%228%22 cy%3D%225.5%22 r%3D%221%22 fill%3D%22%236B6B6B%22%2F%3E%0D%3C%2Fsvg%3E%0D\");display:inline-block;width:16px;height:16px;vertical-align:bottom;margin-right:8px}.editor_box .toast .close_icon{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2216%22 height%3D%2216%22 viewBox%3D%220 0 16 16%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cpath d%3D%22M3.50021 12.9999L12.5001 4.00007%22 stroke%3D%22%236C7C90%22 stroke-linecap%3D%22round%22%2F%3E%0D%3Cpath d%3D%22M12.4999 12.9999L3.50007 4.00007%22 stroke%3D%22%236C7C90%22 stroke-linecap%3D%22round%22%2F%3E%0D%3C%2Fsvg%3E%0D\");cursor:pointer;display:inline-block;width:16px;height:16px}.custom-dialog-rte{padding:0 20px;border-radius:10px}.custom-row-0,.custom-row-1,.custom-row-2{display:flex;align-items:center;padding:12px 24px}.e-rte-dropdown-btn-text{padding-left:4px}.no-results-found{text-align:center}.no-results-found img{display:block;margin:0 auto}.e-custom{margin-right:.5rem;border-radius:25px!important}.custom-dialog-rte .skeleton-rectangle{border-radius:4px}@media (max-width: 767px){.cuscol-0,.cuscol-1,.cuscol-2{justify-content:center!important}.custom-row-0,.custom-row-1,.custom-row-2{flex-direction:column!important}.cuscol-1{border-right:none!important}.cuscol-0{width:100%;align-items:center}::ng-deep:host .e-dialog{max-height:80%!important}.custom-dialog-rte .e-dialog .e-dlg-content{overflow-y:auto!important}.custom-dialog-rte .e-dialog .e-dlg-content .e-richtexteditor{height:100px!important}.cuscol-noresult{padding-bottom:20px!important}.e-chip-list{padding:5px!important}.cuscol{padding-right:.2rem!important;width:auto!important}.custom-row-1{height:auto!important}}.cuscol-1{display:flex;flex-direction:row!important}.cuscol-2{display:flex;flex-direction:column!important}.sentiment{color:#000!important}.custom-dialog-rte .e-dialog .e-dlg-content{padding:0!important;overflow-y:hidden}.custom-dialog-rte .e-dialog .e-dlg-header-content{padding:20px 0!important;border:0!important}.custom-dialog-rte .e-dialog .e-dlg-header-content .e-dlg-header{display:flex;align-items:center;line-height:18px;justify-content:space-between}.custom-dialog-rte .e-dialog .e-dlg-header-content .e-dlg-header .header-title{font-family:Arial;font-size:15px;font-weight:700;font-style:normal}.custom-dialog-rte .e-dialog .e-dlg-header-content .header-buttons{display:flex}.custom-dialog-rte .e-dialog .e-dlg-header-content .header-buttons img{width:16px;height:16px;cursor:pointer;padding:2px;margin-left:12px}.custom-dialog-rte .e-dialog .e-footer-content{padding:0!important}.custom-dialog-rte .e-dialog .e-dlg-content .e-richtexteditor.e-rte-tb-expand .e-rte-content,.e-richtexteditor.e-rte-tb-expand .e-source-content{border:0;border-bottom:1px solid #dee2e6;border-top:0px solid #dee2e6!important}.custom-dialog-rte .dialog-content .custom-row-0{border-top:0px solid #ddd!important;padding:0;margin-bottom:12px}.custom-dialog-rte .dialog-content .custom-row-0 .cuscol-0{justify-content:left;border-right:none!important;padding:0;display:flex;gap:12px}.custom-dialog-rte .dialog-content .custom-row-0 .cuscol-1{padding:0;margin-left:12px}.custom-dialog-rte .dialog-content .custom-row-0 .cuscol-1 .e-primary{color:#44566c;border-radius:4px;border:1px solid #dbe1e7;background:#fff;width:87px;margin:0;padding:2px 12px;font-family:Arial;font-size:12px;font-style:normal;font-weight:400;line-height:14px;height:28px}.custom-dialog-rte .dialog-content .custom-row-1{padding:0;height:calc(100% - 40px);gap:12px}.custom-dialog-rte .e-footer-content{border:0}.custom-dialog-rte .e-footer-content .custom-row-0{padding:20px 0}.custom-dialog-rte .e-footer-content .e-control.e-btn{font-family:Arial;font-size:12px;line-height:14px;padding:2px 12px;height:28px;background:#fff;color:#44566c}.custom-dialog-rte .e-footer-content .e-control.e-btn.copy-btn{border-color:#dbe1e7}.custom-dialog-rte .e-footer-content .e-control.e-btn.copy-btn:before{content:url(\"data:image/svg+xml,%3Csvg width%3D%2216%22 height%3D%2216%22 viewBox%3D%220 0 16 16%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Crect width%3D%2216%22 height%3D%2216%22 fill%3D%22white%22%2F%3E%0D%3Crect x%3D%224.5%22 y%3D%224.5%22 width%3D%229%22 height%3D%229%22 rx%3D%221.5%22 stroke%3D%22%236C7C90%22%2F%3E%0D%3Cpath d%3D%22M11.5 2.5H4.5C3.39543 2.5 2.5 3.39543 2.5 4.5V11.5%22 stroke%3D%22%236C7C90%22 stroke-linecap%3D%22round%22%2F%3E%0D%3C%2Fsvg%3E%0D\");vertical-align:middle;margin-right:6px}.custom-dialog-rte .e-footer-content .e-control.e-btn.e-primary{color:#fff;background:#1364b3}.e-dialog.largest{width:96vw!important;height:88vh!important;max-height:88vh;max-width:2100px}::ng-deep ol.custom-list{list-style:none!important;counter-reset:list-counter}::ng-deep ol.custom-list li{counter-increment:list-counter}::ng-deep ol.parentheses li::marker{content:\"(\" counter(list-counter) \") \"}::ng-deep .e-tiempos-headline{font-family:Tiempos Headline Semibold!important}::ng-deep .e-avenir-lt-pro-black{font-family:\"Avenir LT Pro 65 Medium\"!important}::ng-deep .e-avenir-lt-pro-black-oblique{font-family:Avenir LT Pro-Black Oblique!important}::ng-deep .e-avenir-lt-pro-heavy{font-family:\"Avenir LT Pro 55 Roman\"!important}::ng-deep .e-avenir-lt-pro-heavy-oblique{font-family:Avenir LT Pro-Heavy Oblique!important}::ng-deep .e-avenir-lt-pro-light{font-family:\"Avenir LT Pro 35 Light\"!important}::ng-deep .e-avenir-lt-pro-light-oblique{font-family:Avenir LT Pro-Light Oblique!important}::ng-deep .e-avenir-lt-pro-medium{font-family:Avenir LT Pro-Medium!important}::ng-deep .e-avenir-lt-pro-medium-oblique{font-family:Avenir LT Pro-Medium Oblique!important}::ng-deep .e-avenir-next-lt-pro-bold{font-family:AvenirNext LT Pro Bold!important}::ng-deep .e-avenir-next-lt-pro-demi{font-family:AvenirNext LT Pro Regular!important}::ng-deep .e-avenir-next-lt-pro-demilt{font-family:Avenir Next LT Pro-Demilt!important}::ng-deep .e-avenir-next-lt-pro-heavy{font-family:AvenirNext LT Pro Heavy!important}::ng-deep .e-avenir-next-lt-pro-heavylt{font-family:AvenirNext LT Pro Heavylt!important}::ng-deep .e-avenir-next-lt-pro-it{font-family:Avenir Next LT Pro-It!important}::ng-deep .e-avenir-next-lt-pro-light{font-family:Avenir Next LT Pro Light!important}::ng-deep .e-avenir-next-lt-pro-mediumlt{font-family:AvenirNext LT Pro Medium!important}::ng-deep .e-avenir-next-lt-pro-regular{font-family:Avenir Next LT Pro-Regular!important}::ng-deep .e-avenir-next-lt-pro-ultlt{font-family:AvenirNext LT Pro UltLight!important}::ng-deep .e-avenir-next-lt-pro-ultltlt{font-family:AvenirNext LT Pro UltLightlt!important}::ng-deep .e-source-han-sans-cn-extralight{font-family:\\601d\\6e90\\9ed1\\4f53 CN ExtraLight!important}::ng-deep .e-source-han-sans-cn-regular{font-family:Source Han Sans CN!important}::ng-deep .e-source-han-sans-cn-medium{font-family:\\601d\\6e90\\9ed1\\4f53 CN Medium!important}::ng-deep .e-source-han-sans-cn-bold{font-family:\\601d\\6e90\\9ed1\\4f53 CN!important}::ng-deep .e-ping-fang-sc-light{font-family:\\82f9\\65b9-\\7b80!important}::ng-deep .e-ping-fang-sc-medium{font-family:Ping Fang SC-Medium!important}::ng-deep .e-ping-fang-sc-regular{font-family:Ping Fang SC-Regular!important}::ng-deep .e-ping-fang-sc-semibold{font-family:Ping Fang SC-Semibold!important}.e-color-palette{width:270px!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3$2.ButtonComponent, selector: "[ejs-button]", inputs: ["content", "cssClass", "disabled", "enableHtmlSanitizer", "enablePersistence", "enableRtl", "iconCss", "iconPosition", "isPrimary", "isToggle", "locale"], outputs: ["created"] }, { kind: "component", type: i6.DialogComponent, selector: "ejs-dialog", inputs: ["allowDragging", "animationSettings", "buttons", "closeOnEscape", "content", "cssClass", "enableHtmlSanitizer", "enablePersistence", "enableResize", "enableRtl", "footerTemplate", "header", "height", "isModal", "locale", "minHeight", "position", "resizeHandles", "showCloseIcon", "target", "visible", "width", "zIndex"], outputs: ["beforeClose", "beforeOpen", "beforeSanitizeHtml", "close", "created", "destroyed", "drag", "dragStart", "dragStop", "open", "overlayClick", "resizeStart", "resizeStop", "resizing", "visibleChange"] }, { kind: "component", type: i6$1.DropDownListComponent, selector: "ejs-dropdownlist", inputs: ["actionFailureTemplate", "allowFiltering", "allowObjectBinding", "cssClass", "dataSource", "enablePersistence", "enableRtl", "enableVirtualization", "enabled", "fields", "filterBarPlaceholder", "filterType", "floatLabelType", "footerTemplate", "groupTemplate", "headerTemplate", "htmlAttributes", "ignoreAccent", "ignoreCase", "index", "isDeviceFullScreen", "itemTemplate", "locale", "noRecordsTemplate", "placeholder", "popupHeight", "popupWidth", "query", "readonly", "showClearButton", "sortOrder", "text", "value", "valueTemplate", "width", "zIndex"], outputs: ["actionBegin", "actionComplete", "actionFailure", "beforeOpen", "blur", "change", "close", "created", "dataBound", "destroyed", "filtering", "focus", "open", "select", "valueChange"] }, { kind: "component", type: i9.SkeletonComponent, selector: "ejs-skeleton", inputs: ["cssClass", "enablePersistence", "enableRtl", "height", "label", "locale", "shape", "shimmerEffect", "visible", "width"] }, { kind: "component", type: i10.RichTextEditorComponent, selector: "ejs-richtexteditor", inputs: ["autoSaveOnIdle", "backgroundColor", "bulletFormatList", "cssClass", "editorMode", "emojiPickerSettings", "enableAutoUrl", "enableHtmlEncode", "enableHtmlSanitizer", "enablePersistence", "enableResize", "enableRtl", "enableTabKey", "enableXhtml", "enabled", "enterKey", "exportPdf", "exportWord", "fileManagerSettings", "floatingToolbarOffset", "fontColor", "fontFamily", "fontSize", "format", "formatPainterSettings", "formatter", "height", "htmlAttributes", "iframeSettings", "importWord", "inlineMode", "insertAudioSettings", "insertImageSettings", "insertVideoSettings", "keyConfig", "locale", "maxLength", "numberFormatList", "pasteCleanupSettings", "placeholder", "quickToolbarSettings", "readonly", "saveInterval", "shiftEnterKey", "showCharCount", "showTooltip", "slashMenuSettings", "tableSettings", "toolbarSettings", "undoRedoSteps", "undoRedoTimer", "value", "valueTemplate", "width"], outputs: ["actionBegin", "actionComplete", "afterImageDelete", "afterMediaDelete", "afterPasteCleanup", "beforeDialogClose", "beforeDialogOpen", "beforeFileUpload", "beforeImageDrop", "beforeImageUpload", "beforePasteCleanup", "beforeQuickToolbarOpen", "beforeSanitizeHtml", "blur", "change", "created", "destroyed", "dialogClose", "dialogOpen", "fileRemoving", "fileSelected", "fileUploadFailed", "fileUploadSuccess", "fileUploading", "focus", "imageRemoving", "imageSelected", "imageUploadFailed", "imageUploadSuccess", "imageUploading", "quickToolbarClose", "quickToolbarOpen", "resizeStart", "resizeStop", "resizing", "slashMenuItemSelect", "toolbarClick", "toolbarStatusUpdate", "updatedToolbarStatus", "valueChange"] }] });
|
|
21029
20985
|
}
|
|
21030
20986
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RichtexteditorComponent, decorators: [{
|
|
21031
20987
|
type: Component,
|
|
21032
|
-
args: [{ selector: "rs-richtext-editor", template: "<div class=\"editor_box\" id=\"container\">\r\n <ejs-richtexteditor\r\n #editor\r\n [id]=\"editorId\"\r\n [height]=\"height\"\r\n [saveInterval]=\"0\"\r\n [autoSaveOnIdle]=\"autoSaveOnIdle\"\r\n [toolbarSettings]=\"tools\"\r\n [bulletFormatList]=\"bulletFormatList\"\r\n [numberFormatList]=\"numberFormatList\"\r\n [fontFamily]=\"family\"\r\n [fontSize]=\"fontSize\"\r\n [disabled]=\"disabled\"\r\n [insertImageSettings]=\"insertImageSettings\"\r\n [(ngModel)]=\"value\"\r\n (actionBegin)=\"_actionBegin($event)\"\r\n (change)=\"onContentChange($event)\"\r\n (created)=\"onCreate()\"\r\n (toolbarClick)=\"_toolbarClick($event)\"\r\n (input)=\"_input($event)\"\r\n (focus)=\"_focus($event)\"\r\n (blur)=\"_blur($event)\"\r\n (actionComplete)=\"_actionComplete($event)\"\r\n (dialogOpen)=\"_dialogOpen($event)\"\r\n (afterPasteCleanup)=\"_afterPasteCleanup($event)\"\r\n >\r\n </ejs-richtexteditor>\r\n <ejs-dialog\r\n #AIdialog\r\n id=\"AIdialog\"\r\n [ngClass]=\"size\"\r\n [visible]=\"false\"\r\n [target]=\"target\"\r\n [isModal]=\"true\"\r\n [height]=\"dialogHeight\"\r\n [width]=\"dialogWidth\"\r\n maxHeight=\"80%\"\r\n cssClass=\"e-rte-elements custom-dialog-rte\"\r\n zIndex=\"1000\"\r\n (close)=\"closeDialog()\"\r\n (overlayClick)=\"onOverlayClick()\"\r\n (open)=\"dialogShow()\"\r\n >\r\n <ng-template #header>\r\n <div class=\"header-title\">\r\n {{ translation.AI_ASSIST || \".AI Assist\" }}\r\n </div>\r\n <div class=\"header-buttons\">\r\n <!-- <div class=\"header-btn\">\r\n <img\r\n src=\"/assets/img/dialog-narrow.svg\"\r\n class=\"header-icon\"\r\n (click)=\"onMinimize()\"\r\n />\r\n </div> -->\r\n <div *ngIf=\"showZoomBtn\" class=\"header-zoom\" (click)=\"onZoom()\">\r\n <img\r\n class=\"header-icon\"\r\n *ngIf=\"size === 'largest'\"\r\n src=\"../../../assets/img/dialog-shrink.svg\"\r\n />\r\n <img\r\n class=\"header-icon\"\r\n *ngIf=\"size !== 'largest'\"\r\n src=\"../../../assets/img/dialog-grow.svg\"\r\n />\r\n </div>\r\n <div class=\"header-btn\" (click)=\"closeDialog()\">\r\n <img class=\"header-icon\" src=\"../../../assets/img/dialog-close.svg\" />\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template #footerTemplate>\r\n <div id=\"dialog-footer-content\">\r\n <div class=\"custom-row-0\">\r\n <div\r\n class=\"cuscol-0\"\r\n style=\"width: 100%; align-items: center; justify-content: left\"\r\n ></div>\r\n <div\r\n class=\"cuscol-1\"\r\n style=\"\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n width: 100%;\r\n \"\r\n >\r\n <div style=\"text-align: right; width: 100%\">\r\n <button\r\n ejs-button\r\n #sentimentButton\r\n [content]=\"'\uD83D\uDE0A ' + (translation.NEUTRAL || '.Neutral')\"\r\n disabled=\"false\"\r\n cssClass=\"sentiment\"\r\n ></button>\r\n <button\r\n ejs-button\r\n #copyButton\r\n [content]=\"translation.COPY || '.Copy'\"\r\n disabled=\"false\"\r\n class=\"copy-btn\"\r\n (click)=\"copyClick()\"\r\n ></button>\r\n <button\r\n ejs-button\r\n #replaceButton\r\n [content]=\"translation.REPLACE || '.Replace'\"\r\n isPrimary=\"true\"\r\n disabled=\"false\"\r\n (click)=\"replaceClick()\"\r\n ></button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template #content>\r\n <div class=\"dialog-content\" style=\"height: 100%\">\r\n <div class=\"custom-row-0\">\r\n <div class=\"cuscol-0\" style=\"width: 100%\">\r\n <ejs-dropdownlist\r\n #queryCategory\r\n style=\"width: 200px\"\r\n id=\"queryCategory\"\r\n [dataSource]=\"queryList\"\r\n index=\"0\"\r\n [fields]=\"{ text: 'text', value: 'id' }\"\r\n (select)=\"onQuerySelect($event)\"\r\n >\r\n {{ translation.REPHRASE || \".Rephrase\" }}\r\n </ejs-dropdownlist>\r\n <ejs-dropdownlist\r\n *ngIf=\"selectedQuery == 'Rephrase'\"\r\n id=\"chips-container\"\r\n #chipList\r\n style=\"width: 160px\"\r\n [(ngModel)]=\"chipValue\"\r\n [dataSource]=\"rephraseTyleList\"\r\n [fields]=\"{ text: 'text', value: 'id' }\"\r\n (select)=\"onChipClick($event)\"\r\n >\r\n </ejs-dropdownlist>\r\n <ejs-dropdownlist\r\n *ngIf=\"selectedQuery == 'Translate'\"\r\n #languageCategory\r\n index=\"0\"\r\n id=\"language-Category\"\r\n [dataSource]=\"languageList\"\r\n [fields]=\"{ text: 'text', value: 'id' }\"\r\n (select)=\"onLanguageSelect($event)\"\r\n >\r\n </ejs-dropdownlist>\r\n </div>\r\n <div\r\n class=\"cuscol-1\"\r\n style=\"\r\n justify-content: space-between;\r\n align-items: center;\r\n width: 100%;\r\n \"\r\n >\r\n <!-- <ejs-chiplist\r\n id=\"chips-container\"\r\n #chipList\r\n [chips]=\"['Standard', 'Fluent', 'Professional']\"\r\n selection=\"Single\"\r\n cssClass=\"e-outline\"\r\n [selectedChips]=\"[0]\"\r\n (click)=\"onChipClick($event)\"\r\n >\r\n </ejs-chiplist> -->\r\n <button\r\n ejs-button\r\n #regenerateButton\r\n [content]=\"translation.REGENERATE || '.Regenerate'\"\r\n isPrimary=\"true\"\r\n disabled=\"false\"\r\n (click)=\"regenerateClick()\"\r\n ></button>\r\n </div>\r\n </div>\r\n <div class=\"custom-row-1\" style=\"height: calc(100% - 40px)\">\r\n <div\r\n class=\"cuscol-0\"\r\n style=\"\r\n flex: 1;\r\n height: 100%;\r\n align-items: center;\r\n justify-content: left;\r\n overflow: auto;\r\n \"\r\n >\r\n <div style=\"text-align: left; height: 100%\">\r\n <ejs-richtexteditor\r\n #leftRte\r\n id=\"leftRte\"\r\n height=\"100%\"\r\n [toolbarSettings]=\"{ enable: false }\"\r\n [placeholder]=\"\r\n translation.ANALYSIS_OF_AI_SUPPORT ||\r\n '.Analysis of AI Support'\r\n \"\r\n cssClass=\"e-outline\"\r\n >\r\n </ejs-richtexteditor>\r\n </div>\r\n </div>\r\n <div\r\n class=\"cuscol-1\"\r\n style=\"\r\n flex: 1;\r\n height: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n overflow: hidden;\r\n \"\r\n >\r\n <div style=\"flex: 1; min-height: 0; overflow: hidden\">\r\n <ejs-richtexteditor\r\n #rightRte\r\n id=\"rightRte\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n [toolbarSettings]=\"{ enable: false }\"\r\n [placeholder]=\"\r\n translation.ANALYSIS_OF_AI_SUPPORT ||\r\n '.Analysis of AI Support'\r\n \"\r\n cssClass=\"e-outline\"\r\n >\r\n </ejs-richtexteditor>\r\n <div\r\n class=\"no-results-found\"\r\n id=\"no-results-found\"\r\n style=\"display: none; height: 244px; align-content: center\"\r\n >\r\n <img\r\n height=\"50\"\r\n width=\"50\"\r\n src=\"https://storage.googleapis.com/cdn-bolddesk/agent-angular-app/images/light/no-records-warning.svg\"\r\n />\r\n <div>\r\n {{ translation.NO_RESULTS_FOUND || \".No results found\" }}\r\n </div>\r\n </div>\r\n <div id=\"skeletonId\">\r\n <ejs-skeleton\r\n #skeletonId1\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"100%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId2\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"90%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId3\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"70%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId4\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"50%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId5\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"30%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId6\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"10%\"\r\n ></ejs-skeleton\r\n ><br />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </ejs-dialog>\r\n <!-- <div class=\"toast\" *ngIf=\"showMsg\">\r\n <span class=\"toast_text\">First, Select some text</span\r\n ><span class=\"close_icon\" (click)=\"hideToast()\"></span>\r\n </div> -->\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.editor_box{position:relative;width:100%;height:100%}.editor_box .toast{position:absolute;left:35%;top:110px;z-index:1;width:400px;border-radius:4px;border:1px solid #e8f2ff;background:#f4f8ff;padding:4px 12px;color:#1f3f5c;font-size:12px;font-style:normal;font-weight:400;height:32px;font-family:Arial;display:flex;align-items:center;justify-content:space-between}.editor_box .toast .toast_text:before{content:url(\"data:image/svg+xml,%3Csvg width%3D%2216%22 height%3D%2217%22 viewBox%3D%220 0 16 17%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Ccircle cx%3D%228%22 cy%3D%228.5%22 r%3D%226.5%22 stroke%3D%22%236B6B6B%22%2F%3E%0D%3Cpath d%3D%22M8 8.5V11.5%22 stroke%3D%22%236B6B6B%22 stroke-width%3D%222%22 stroke-linecap%3D%22round%22%2F%3E%0D%3Ccircle cx%3D%228%22 cy%3D%225.5%22 r%3D%221%22 fill%3D%22%236B6B6B%22%2F%3E%0D%3C%2Fsvg%3E%0D\");display:inline-block;width:16px;height:16px;vertical-align:bottom;margin-right:8px}.editor_box .toast .close_icon{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2216%22 height%3D%2216%22 viewBox%3D%220 0 16 16%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cpath d%3D%22M3.50021 12.9999L12.5001 4.00007%22 stroke%3D%22%236C7C90%22 stroke-linecap%3D%22round%22%2F%3E%0D%3Cpath d%3D%22M12.4999 12.9999L3.50007 4.00007%22 stroke%3D%22%236C7C90%22 stroke-linecap%3D%22round%22%2F%3E%0D%3C%2Fsvg%3E%0D\");cursor:pointer;display:inline-block;width:16px;height:16px}.custom-dialog-rte{padding:0 20px;border-radius:10px}.custom-row-0,.custom-row-1,.custom-row-2{display:flex;align-items:center;padding:12px 24px}.e-rte-dropdown-btn-text{padding-left:4px}.no-results-found{text-align:center}.no-results-found img{display:block;margin:0 auto}.e-custom{margin-right:.5rem;border-radius:25px!important}.custom-dialog-rte .skeleton-rectangle{border-radius:4px}@media (max-width: 767px){.cuscol-0,.cuscol-1,.cuscol-2{justify-content:center!important}.custom-row-0,.custom-row-1,.custom-row-2{flex-direction:column!important}.cuscol-1{border-right:none!important}.cuscol-0{width:100%;align-items:center}::ng-deep:host .e-dialog{max-height:80%!important}.custom-dialog-rte .e-dialog .e-dlg-content{overflow-y:auto!important}.custom-dialog-rte .e-dialog .e-dlg-content .e-richtexteditor{height:100px!important}.cuscol-noresult{padding-bottom:20px!important}.e-chip-list{padding:5px!important}.cuscol{padding-right:.2rem!important;width:auto!important}.custom-row-1{height:auto!important}}.cuscol-1{display:flex;flex-direction:row!important}.cuscol-2{display:flex;flex-direction:column!important}.sentiment{color:#000!important}.custom-dialog-rte .e-dialog .e-dlg-content{padding:0!important;overflow-y:hidden}.custom-dialog-rte .e-dialog .e-dlg-header-content{padding:20px 0!important;border:0!important}.custom-dialog-rte .e-dialog .e-dlg-header-content .e-dlg-header{display:flex;align-items:center;line-height:18px;justify-content:space-between}.custom-dialog-rte .e-dialog .e-dlg-header-content .e-dlg-header .header-title{font-family:Arial;font-size:15px;font-weight:700;font-style:normal}.custom-dialog-rte .e-dialog .e-dlg-header-content .header-buttons{display:flex}.custom-dialog-rte .e-dialog .e-dlg-header-content .header-buttons img{width:16px;height:16px;cursor:pointer;padding:2px;margin-left:12px}.custom-dialog-rte .e-dialog .e-footer-content{padding:0!important}.custom-dialog-rte .e-dialog .e-dlg-content .e-richtexteditor.e-rte-tb-expand .e-rte-content,.e-richtexteditor.e-rte-tb-expand .e-source-content{border:0;border-bottom:1px solid #dee2e6;border-top:0px solid #dee2e6!important}.custom-dialog-rte .dialog-content .custom-row-0{border-top:0px solid #ddd!important;padding:0;margin-bottom:12px}.custom-dialog-rte .dialog-content .custom-row-0 .cuscol-0{justify-content:left;border-right:none!important;padding:0;display:flex;gap:12px}.custom-dialog-rte .dialog-content .custom-row-0 .cuscol-1{padding:0;margin-left:12px}.custom-dialog-rte .dialog-content .custom-row-0 .cuscol-1 .e-primary{color:#44566c;border-radius:4px;border:1px solid #dbe1e7;background:#fff;width:87px;margin:0;padding:2px 12px;font-family:Arial;font-size:12px;font-style:normal;font-weight:400;line-height:14px;height:28px}.custom-dialog-rte .dialog-content .custom-row-1{padding:0;height:calc(100% - 40px);gap:12px}.custom-dialog-rte .e-footer-content{border:0}.custom-dialog-rte .e-footer-content .custom-row-0{padding:20px 0}.custom-dialog-rte .e-footer-content .e-control.e-btn{font-family:Arial;font-size:12px;line-height:14px;padding:2px 12px;height:28px;background:#fff;color:#44566c}.custom-dialog-rte .e-footer-content .e-control.e-btn.copy-btn{border-color:#dbe1e7}.custom-dialog-rte .e-footer-content .e-control.e-btn.copy-btn:before{content:url(\"data:image/svg+xml,%3Csvg width%3D%2216%22 height%3D%2216%22 viewBox%3D%220 0 16 16%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Crect width%3D%2216%22 height%3D%2216%22 fill%3D%22white%22%2F%3E%0D%3Crect x%3D%224.5%22 y%3D%224.5%22 width%3D%229%22 height%3D%229%22 rx%3D%221.5%22 stroke%3D%22%236C7C90%22%2F%3E%0D%3Cpath d%3D%22M11.5 2.5H4.5C3.39543 2.5 2.5 3.39543 2.5 4.5V11.5%22 stroke%3D%22%236C7C90%22 stroke-linecap%3D%22round%22%2F%3E%0D%3C%2Fsvg%3E%0D\");vertical-align:middle;margin-right:6px}.custom-dialog-rte .e-footer-content .e-control.e-btn.e-primary{color:#fff;background:#1364b3}.e-dialog.largest{width:96vw!important;height:88vh!important;max-height:88vh;max-width:2100px}::ng-deep ol.custom-list{list-style:none!important;counter-reset:list-counter}::ng-deep ol.custom-list li{counter-increment:list-counter}::ng-deep ol.parentheses li::marker{content:\"(\" counter(list-counter) \") \"}::ng-deep .e-tiempos-headline{font-family:Tiempos Headline Semibold!important}::ng-deep .e-avenir-lt-pro-black{font-family:\"Avenir LT Pro 65 Medium\"!important}::ng-deep .e-avenir-lt-pro-black-oblique{font-family:Avenir LT Pro-Black Oblique!important}::ng-deep .e-avenir-lt-pro-heavy{font-family:\"Avenir LT Pro 55 Roman\"!important}::ng-deep .e-avenir-lt-pro-heavy-oblique{font-family:Avenir LT Pro-Heavy Oblique!important}::ng-deep .e-avenir-lt-pro-light{font-family:\"Avenir LT Pro 35 Light\"!important}::ng-deep .e-avenir-lt-pro-light-oblique{font-family:Avenir LT Pro-Light Oblique!important}::ng-deep .e-avenir-lt-pro-medium{font-family:Avenir LT Pro-Medium!important}::ng-deep .e-avenir-lt-pro-medium-oblique{font-family:Avenir LT Pro-Medium Oblique!important}::ng-deep .e-avenir-next-lt-pro-bold{font-family:AvenirNext LT Pro Bold!important}::ng-deep .e-avenir-next-lt-pro-demi{font-family:AvenirNext LT Pro Regular!important}::ng-deep .e-avenir-next-lt-pro-demilt{font-family:Avenir Next LT Pro-Demilt!important}::ng-deep .e-avenir-next-lt-pro-heavy{font-family:AvenirNext LT Pro Heavy!important}::ng-deep .e-avenir-next-lt-pro-heavylt{font-family:AvenirNext LT Pro Heavylt!important}::ng-deep .e-avenir-next-lt-pro-it{font-family:Avenir Next LT Pro-It!important}::ng-deep .e-avenir-next-lt-pro-light{font-family:Avenir Next LT Pro Light!important}::ng-deep .e-avenir-next-lt-pro-mediumlt{font-family:AvenirNext LT Pro Medium!important}::ng-deep .e-avenir-next-lt-pro-regular{font-family:Avenir Next LT Pro-Regular!important}::ng-deep .e-avenir-next-lt-pro-ultlt{font-family:AvenirNext LT Pro UltLight!important}::ng-deep .e-avenir-next-lt-pro-ultltlt{font-family:AvenirNext LT Pro UltLightlt!important}::ng-deep .e-source-han-sans-cn-extralight{font-family:\\601d\\6e90\\9ed1\\4f53 CN ExtraLight!important}::ng-deep .e-source-han-sans-cn-regular{font-family:Source Han Sans CN!important}::ng-deep .e-source-han-sans-cn-medium{font-family:\\601d\\6e90\\9ed1\\4f53 CN Medium!important}::ng-deep .e-source-han-sans-cn-bold{font-family:\\601d\\6e90\\9ed1\\4f53 CN!important}::ng-deep .e-ping-fang-sc-light{font-family:\\82f9\\65b9-\\7b80!important}::ng-deep .e-ping-fang-sc-medium{font-family:Ping Fang SC-Medium!important}::ng-deep .e-ping-fang-sc-regular{font-family:Ping Fang SC-Regular!important}::ng-deep .e-ping-fang-sc-semibold{font-family:Ping Fang SC-Semibold!important}.e-color-palette{width:270px!important}\n"] }]
|
|
20988
|
+
args: [{ selector: "rs-richtext-editor", template: "<div class=\"editor_box\" id=\"container\">\r\n <ejs-richtexteditor\r\n #editor\r\n [id]=\"editorId\"\r\n [height]=\"height\"\r\n [saveInterval]=\"0\"\r\n [autoSaveOnIdle]=\"autoSaveOnIdle\"\r\n [toolbarSettings]=\"tools\"\r\n [bulletFormatList]=\"bulletFormatList\"\r\n [numberFormatList]=\"numberFormatList\"\r\n [fontFamily]=\"family\"\r\n [fontSize]=\"fontSize\"\r\n [disabled]=\"disabled\"\r\n [insertImageSettings]=\"insertImageSettings\"\r\n [(ngModel)]=\"value\"\r\n (actionBegin)=\"_actionBegin($event)\"\r\n (change)=\"onContentChange($event)\"\r\n (created)=\"onCreate()\"\r\n (toolbarClick)=\"_toolbarClick($event)\"\r\n (input)=\"_input($event)\"\r\n (focus)=\"_focus($event)\"\r\n (blur)=\"_blur($event)\"\r\n (actionComplete)=\"_actionComplete($event)\"\r\n (dialogOpen)=\"_dialogOpen($event)\"\r\n (afterPasteCleanup)=\"_afterPasteCleanup($event)\"\r\n >\r\n </ejs-richtexteditor>\r\n <ejs-dialog\r\n #AIdialog\r\n id=\"AIdialog\"\r\n [ngClass]=\"size\"\r\n [visible]=\"false\"\r\n [target]=\"target\"\r\n [isModal]=\"true\"\r\n [height]=\"dialogHeight\"\r\n [width]=\"dialogWidth\"\r\n maxHeight=\"80%\"\r\n cssClass=\"e-rte-elements custom-dialog-rte\"\r\n zIndex=\"1000\"\r\n (close)=\"closeDialog()\"\r\n (overlayClick)=\"onOverlayClick()\"\r\n (open)=\"dialogShow()\"\r\n >\r\n <ng-template #header>\r\n <div class=\"header-title\">\r\n {{ translation.AI_ASSIST || \".AI Assist\" }}\r\n </div>\r\n <div class=\"header-buttons\">\r\n <!-- <div class=\"header-btn\" *ngIf=\"zoomout\">\r\n <img\r\n src=\"/assets/img/dialog-narrow.svg\"\r\n class=\"header-icon\"\r\n (click)=\"onMinimize()\"\r\n />\r\n </div> -->\r\n <div *ngIf=\"showZoomBtn\" class=\"header-zoom\" (click)=\"onZoom()\">\r\n <img\r\n class=\"header-icon\"\r\n *ngIf=\"size === 'largest'\"\r\n src=\"../../../assets/img/dialog-shrink.svg\"\r\n />\r\n <img\r\n class=\"header-icon\"\r\n *ngIf=\"size !== 'largest'\"\r\n src=\"../../../assets/img/dialog-grow.svg\"\r\n />\r\n </div>\r\n <div class=\"header-btn\" (click)=\"closeDialog()\">\r\n <img class=\"header-icon\" src=\"../../../assets/img/dialog-close.svg\" />\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template #footerTemplate>\r\n <div id=\"dialog-footer-content\">\r\n <div class=\"custom-row-0\">\r\n <div\r\n class=\"cuscol-0\"\r\n style=\"width: 100%; align-items: center; justify-content: left\"\r\n ></div>\r\n <div\r\n class=\"cuscol-1\"\r\n style=\"\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n width: 100%;\r\n \"\r\n >\r\n <div style=\"text-align: right; width: 100%\">\r\n <button\r\n ejs-button\r\n #sentimentButton\r\n [content]=\"'\uD83D\uDE0A ' + (translation.NEUTRAL || '.Neutral')\"\r\n disabled=\"false\"\r\n cssClass=\"sentiment\"\r\n ></button>\r\n <button\r\n ejs-button\r\n #copyButton\r\n [content]=\"translation.COPY || '.Copy'\"\r\n disabled=\"false\"\r\n class=\"copy-btn\"\r\n (click)=\"copyClick()\"\r\n ></button>\r\n <button\r\n ejs-button\r\n #replaceButton\r\n [content]=\"translation.REPLACE || '.Replace'\"\r\n isPrimary=\"true\"\r\n disabled=\"false\"\r\n (click)=\"replaceClick()\"\r\n ></button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template #content>\r\n <div class=\"dialog-content\" style=\"height: 100%\">\r\n <div class=\"custom-row-0\">\r\n <div class=\"cuscol-0\" style=\"width: 100%\">\r\n <ejs-dropdownlist\r\n #queryCategory\r\n style=\"width: 200px\"\r\n id=\"queryCategory\"\r\n [dataSource]=\"queryList\"\r\n index=\"0\"\r\n [fields]=\"{ text: 'text', value: 'id' }\"\r\n (select)=\"onQuerySelect($event)\"\r\n >\r\n {{ translation.REPHRASE || \".Rephrase\" }}\r\n </ejs-dropdownlist>\r\n <ejs-dropdownlist\r\n *ngIf=\"selectedQuery == 'Rephrase'\"\r\n id=\"chips-container\"\r\n #chipList\r\n style=\"width: 160px\"\r\n [(ngModel)]=\"chipValue\"\r\n [dataSource]=\"rephraseTyleList\"\r\n [fields]=\"{ text: 'text', value: 'id' }\"\r\n (select)=\"onChipClick($event)\"\r\n >\r\n </ejs-dropdownlist>\r\n <ejs-dropdownlist\r\n *ngIf=\"selectedQuery == 'Translate'\"\r\n #languageCategory\r\n index=\"0\"\r\n id=\"language-Category\"\r\n [dataSource]=\"languageList\"\r\n [fields]=\"{ text: 'text', value: 'id' }\"\r\n (select)=\"onLanguageSelect($event)\"\r\n >\r\n </ejs-dropdownlist>\r\n </div>\r\n <div\r\n class=\"cuscol-1\"\r\n style=\"\r\n justify-content: space-between;\r\n align-items: center;\r\n width: 100%;\r\n \"\r\n >\r\n <!-- <ejs-chiplist\r\n id=\"chips-container\"\r\n #chipList\r\n [chips]=\"['Standard', 'Fluent', 'Professional']\"\r\n selection=\"Single\"\r\n cssClass=\"e-outline\"\r\n [selectedChips]=\"[0]\"\r\n (click)=\"onChipClick($event)\"\r\n >\r\n </ejs-chiplist> -->\r\n <button\r\n ejs-button\r\n #regenerateButton\r\n [content]=\"translation.REGENERATE || '.Regenerate'\"\r\n isPrimary=\"true\"\r\n disabled=\"false\"\r\n (click)=\"regenerateClick()\"\r\n ></button>\r\n </div>\r\n </div>\r\n <div class=\"custom-row-1\" style=\"height: calc(100% - 40px)\">\r\n <div\r\n class=\"cuscol-0\"\r\n style=\"\r\n flex: 1;\r\n height: 100%;\r\n align-items: center;\r\n justify-content: left;\r\n overflow: auto;\r\n \"\r\n >\r\n <div style=\"text-align: left; height: 100%\">\r\n <ejs-richtexteditor\r\n #leftRte\r\n id=\"leftRte\"\r\n height=\"100%\"\r\n [toolbarSettings]=\"{ enable: false }\"\r\n [placeholder]=\"\r\n translation.ANALYSIS_OF_AI_SUPPORT ||\r\n '.Analysis of AI Support'\r\n \"\r\n cssClass=\"e-outline\"\r\n >\r\n </ejs-richtexteditor>\r\n </div>\r\n </div>\r\n <div\r\n class=\"cuscol-1\"\r\n style=\"\r\n flex: 1;\r\n height: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n overflow: hidden;\r\n \"\r\n >\r\n <div style=\"flex: 1; min-height: 0; overflow: hidden\">\r\n <ejs-richtexteditor\r\n #rightRte\r\n id=\"rightRte\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n [toolbarSettings]=\"{ enable: false }\"\r\n [placeholder]=\"\r\n translation.ANALYSIS_OF_AI_SUPPORT ||\r\n '.Analysis of AI Support'\r\n \"\r\n cssClass=\"e-outline\"\r\n >\r\n </ejs-richtexteditor>\r\n <div\r\n class=\"no-results-found\"\r\n id=\"no-results-found\"\r\n style=\"display: none; height: 244px; align-content: center\"\r\n >\r\n <img\r\n height=\"50\"\r\n width=\"50\"\r\n src=\"https://storage.googleapis.com/cdn-bolddesk/agent-angular-app/images/light/no-records-warning.svg\"\r\n />\r\n <div>\r\n {{ translation.NO_RESULTS_FOUND || \".No results found\" }}\r\n </div>\r\n </div>\r\n <div id=\"skeletonId\">\r\n <ejs-skeleton\r\n #skeletonId1\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"100%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId2\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"90%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId3\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"70%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId4\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"50%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId5\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"30%\"\r\n ></ejs-skeleton\r\n ><br />\r\n <ejs-skeleton\r\n #skeletonId6\r\n shape=\"Rectangle\"\r\n height=\"16px\"\r\n width=\"10%\"\r\n ></ejs-skeleton\r\n ><br />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </ejs-dialog>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.editor_box{position:relative;width:100%;height:100%}.editor_box .toast{position:absolute;left:35%;top:110px;z-index:1;width:400px;border-radius:4px;border:1px solid #e8f2ff;background:#f4f8ff;padding:4px 12px;color:#1f3f5c;font-size:12px;font-style:normal;font-weight:400;height:32px;font-family:Arial;display:flex;align-items:center;justify-content:space-between}.editor_box .toast .toast_text:before{content:url(\"data:image/svg+xml,%3Csvg width%3D%2216%22 height%3D%2217%22 viewBox%3D%220 0 16 17%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Ccircle cx%3D%228%22 cy%3D%228.5%22 r%3D%226.5%22 stroke%3D%22%236B6B6B%22%2F%3E%0D%3Cpath d%3D%22M8 8.5V11.5%22 stroke%3D%22%236B6B6B%22 stroke-width%3D%222%22 stroke-linecap%3D%22round%22%2F%3E%0D%3Ccircle cx%3D%228%22 cy%3D%225.5%22 r%3D%221%22 fill%3D%22%236B6B6B%22%2F%3E%0D%3C%2Fsvg%3E%0D\");display:inline-block;width:16px;height:16px;vertical-align:bottom;margin-right:8px}.editor_box .toast .close_icon{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2216%22 height%3D%2216%22 viewBox%3D%220 0 16 16%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cpath d%3D%22M3.50021 12.9999L12.5001 4.00007%22 stroke%3D%22%236C7C90%22 stroke-linecap%3D%22round%22%2F%3E%0D%3Cpath d%3D%22M12.4999 12.9999L3.50007 4.00007%22 stroke%3D%22%236C7C90%22 stroke-linecap%3D%22round%22%2F%3E%0D%3C%2Fsvg%3E%0D\");cursor:pointer;display:inline-block;width:16px;height:16px}.custom-dialog-rte{padding:0 20px;border-radius:10px}.custom-row-0,.custom-row-1,.custom-row-2{display:flex;align-items:center;padding:12px 24px}.e-rte-dropdown-btn-text{padding-left:4px}.no-results-found{text-align:center}.no-results-found img{display:block;margin:0 auto}.e-custom{margin-right:.5rem;border-radius:25px!important}.custom-dialog-rte .skeleton-rectangle{border-radius:4px}@media (max-width: 767px){.cuscol-0,.cuscol-1,.cuscol-2{justify-content:center!important}.custom-row-0,.custom-row-1,.custom-row-2{flex-direction:column!important}.cuscol-1{border-right:none!important}.cuscol-0{width:100%;align-items:center}::ng-deep:host .e-dialog{max-height:80%!important}.custom-dialog-rte .e-dialog .e-dlg-content{overflow-y:auto!important}.custom-dialog-rte .e-dialog .e-dlg-content .e-richtexteditor{height:100px!important}.cuscol-noresult{padding-bottom:20px!important}.e-chip-list{padding:5px!important}.cuscol{padding-right:.2rem!important;width:auto!important}.custom-row-1{height:auto!important}}.cuscol-1{display:flex;flex-direction:row!important}.cuscol-2{display:flex;flex-direction:column!important}.sentiment{color:#000!important}.custom-dialog-rte .e-dialog .e-dlg-content{padding:0!important;overflow-y:hidden}.custom-dialog-rte .e-dialog .e-dlg-header-content{padding:20px 0!important;border:0!important}.custom-dialog-rte .e-dialog .e-dlg-header-content .e-dlg-header{display:flex;align-items:center;line-height:18px;justify-content:space-between}.custom-dialog-rte .e-dialog .e-dlg-header-content .e-dlg-header .header-title{font-family:Arial;font-size:15px;font-weight:700;font-style:normal}.custom-dialog-rte .e-dialog .e-dlg-header-content .header-buttons{display:flex}.custom-dialog-rte .e-dialog .e-dlg-header-content .header-buttons img{width:16px;height:16px;cursor:pointer;padding:2px;margin-left:12px}.custom-dialog-rte .e-dialog .e-footer-content{padding:0!important}.custom-dialog-rte .e-dialog .e-dlg-content .e-richtexteditor.e-rte-tb-expand .e-rte-content,.e-richtexteditor.e-rte-tb-expand .e-source-content{border:0;border-bottom:1px solid #dee2e6;border-top:0px solid #dee2e6!important}.custom-dialog-rte .dialog-content .custom-row-0{border-top:0px solid #ddd!important;padding:0;margin-bottom:12px}.custom-dialog-rte .dialog-content .custom-row-0 .cuscol-0{justify-content:left;border-right:none!important;padding:0;display:flex;gap:12px}.custom-dialog-rte .dialog-content .custom-row-0 .cuscol-1{padding:0;margin-left:12px}.custom-dialog-rte .dialog-content .custom-row-0 .cuscol-1 .e-primary{color:#44566c;border-radius:4px;border:1px solid #dbe1e7;background:#fff;width:87px;margin:0;padding:2px 12px;font-family:Arial;font-size:12px;font-style:normal;font-weight:400;line-height:14px;height:28px}.custom-dialog-rte .dialog-content .custom-row-1{padding:0;height:calc(100% - 40px);gap:12px}.custom-dialog-rte .e-footer-content{border:0}.custom-dialog-rte .e-footer-content .custom-row-0{padding:20px 0}.custom-dialog-rte .e-footer-content .e-control.e-btn{font-family:Arial;font-size:12px;line-height:14px;padding:2px 12px;height:28px;background:#fff;color:#44566c}.custom-dialog-rte .e-footer-content .e-control.e-btn.copy-btn{border-color:#dbe1e7}.custom-dialog-rte .e-footer-content .e-control.e-btn.copy-btn:before{content:url(\"data:image/svg+xml,%3Csvg width%3D%2216%22 height%3D%2216%22 viewBox%3D%220 0 16 16%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Crect width%3D%2216%22 height%3D%2216%22 fill%3D%22white%22%2F%3E%0D%3Crect x%3D%224.5%22 y%3D%224.5%22 width%3D%229%22 height%3D%229%22 rx%3D%221.5%22 stroke%3D%22%236C7C90%22%2F%3E%0D%3Cpath d%3D%22M11.5 2.5H4.5C3.39543 2.5 2.5 3.39543 2.5 4.5V11.5%22 stroke%3D%22%236C7C90%22 stroke-linecap%3D%22round%22%2F%3E%0D%3C%2Fsvg%3E%0D\");vertical-align:middle;margin-right:6px}.custom-dialog-rte .e-footer-content .e-control.e-btn.e-primary{color:#fff;background:#1364b3}.e-dialog.largest{width:96vw!important;height:88vh!important;max-height:88vh;max-width:2100px}::ng-deep ol.custom-list{list-style:none!important;counter-reset:list-counter}::ng-deep ol.custom-list li{counter-increment:list-counter}::ng-deep ol.parentheses li::marker{content:\"(\" counter(list-counter) \") \"}::ng-deep .e-tiempos-headline{font-family:Tiempos Headline Semibold!important}::ng-deep .e-avenir-lt-pro-black{font-family:\"Avenir LT Pro 65 Medium\"!important}::ng-deep .e-avenir-lt-pro-black-oblique{font-family:Avenir LT Pro-Black Oblique!important}::ng-deep .e-avenir-lt-pro-heavy{font-family:\"Avenir LT Pro 55 Roman\"!important}::ng-deep .e-avenir-lt-pro-heavy-oblique{font-family:Avenir LT Pro-Heavy Oblique!important}::ng-deep .e-avenir-lt-pro-light{font-family:\"Avenir LT Pro 35 Light\"!important}::ng-deep .e-avenir-lt-pro-light-oblique{font-family:Avenir LT Pro-Light Oblique!important}::ng-deep .e-avenir-lt-pro-medium{font-family:Avenir LT Pro-Medium!important}::ng-deep .e-avenir-lt-pro-medium-oblique{font-family:Avenir LT Pro-Medium Oblique!important}::ng-deep .e-avenir-next-lt-pro-bold{font-family:AvenirNext LT Pro Bold!important}::ng-deep .e-avenir-next-lt-pro-demi{font-family:AvenirNext LT Pro Regular!important}::ng-deep .e-avenir-next-lt-pro-demilt{font-family:Avenir Next LT Pro-Demilt!important}::ng-deep .e-avenir-next-lt-pro-heavy{font-family:AvenirNext LT Pro Heavy!important}::ng-deep .e-avenir-next-lt-pro-heavylt{font-family:AvenirNext LT Pro Heavylt!important}::ng-deep .e-avenir-next-lt-pro-it{font-family:Avenir Next LT Pro-It!important}::ng-deep .e-avenir-next-lt-pro-light{font-family:Avenir Next LT Pro Light!important}::ng-deep .e-avenir-next-lt-pro-mediumlt{font-family:AvenirNext LT Pro Medium!important}::ng-deep .e-avenir-next-lt-pro-regular{font-family:Avenir Next LT Pro-Regular!important}::ng-deep .e-avenir-next-lt-pro-ultlt{font-family:AvenirNext LT Pro UltLight!important}::ng-deep .e-avenir-next-lt-pro-ultltlt{font-family:AvenirNext LT Pro UltLightlt!important}::ng-deep .e-source-han-sans-cn-extralight{font-family:\\601d\\6e90\\9ed1\\4f53 CN ExtraLight!important}::ng-deep .e-source-han-sans-cn-regular{font-family:Source Han Sans CN!important}::ng-deep .e-source-han-sans-cn-medium{font-family:\\601d\\6e90\\9ed1\\4f53 CN Medium!important}::ng-deep .e-source-han-sans-cn-bold{font-family:\\601d\\6e90\\9ed1\\4f53 CN!important}::ng-deep .e-ping-fang-sc-light{font-family:\\82f9\\65b9-\\7b80!important}::ng-deep .e-ping-fang-sc-medium{font-family:Ping Fang SC-Medium!important}::ng-deep .e-ping-fang-sc-regular{font-family:Ping Fang SC-Regular!important}::ng-deep .e-ping-fang-sc-semibold{font-family:Ping Fang SC-Semibold!important}.e-color-palette{width:270px!important}\n"] }]
|
|
21033
20989
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1$4.HttpClient }, { type: DialogService }, { type: i1$2.MatSnackBar }]; }, propDecorators: { rteObj: [{
|
|
21034
20990
|
type: ViewChild,
|
|
21035
20991
|
args: ["editor", { static: false }]
|