@memberjunction/ng-chat 2.51.0 → 2.53.0
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.
|
@@ -3,10 +3,9 @@ import { LogError } from '@memberjunction/core';
|
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "ngx-markdown";
|
|
5
5
|
import * as i2 from "@angular/forms";
|
|
6
|
-
import * as i3 from "@
|
|
7
|
-
import * as i4 from "@progress/kendo-angular-
|
|
8
|
-
import * as i5 from "@progress/kendo-angular-
|
|
9
|
-
import * as i6 from "@progress/kendo-angular-dialog";
|
|
6
|
+
import * as i3 from "@progress/kendo-angular-indicators";
|
|
7
|
+
import * as i4 from "@progress/kendo-angular-buttons";
|
|
8
|
+
import * as i5 from "@progress/kendo-angular-dialog";
|
|
10
9
|
const _c0 = ["messagesContainer"];
|
|
11
10
|
const _c1 = ["theInput"];
|
|
12
11
|
function ChatComponent_Conditional_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
@@ -319,7 +318,7 @@ export class ChatComponent {
|
|
|
319
318
|
let _t;
|
|
320
319
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.messagesContainer = _t.first);
|
|
321
320
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.theInput = _t.first);
|
|
322
|
-
} }, inputs: { InitialMessage: "InitialMessage", Messages: "Messages", AIImageURL: "AIImageURL", AILargeImageURL: "AILargeImageURL", WelcomeQuestions: "WelcomeQuestions", ClearAllMessagesPrompt: "ClearAllMessagesPrompt", AllowSend: "AllowSend", Placeholder: "Placeholder", ShowWaitingIndicator: "ShowWaitingIndicator" }, outputs: { MessageAdded: "MessageAdded", ClearChatRequested: "ClearChatRequested" }, decls: 18, vars: 10, consts: [["messagesContainer", ""], ["theInput", ""], [
|
|
321
|
+
} }, inputs: { InitialMessage: "InitialMessage", Messages: "Messages", AIImageURL: "AIImageURL", AILargeImageURL: "AILargeImageURL", WelcomeQuestions: "WelcomeQuestions", ClearAllMessagesPrompt: "ClearAllMessagesPrompt", AllowSend: "AllowSend", Placeholder: "Placeholder", ShowWaitingIndicator: "ShowWaitingIndicator" }, outputs: { MessageAdded: "MessageAdded", ClearChatRequested: "ClearChatRequested" }, decls: 18, vars: 10, consts: [["messagesContainer", ""], ["theInput", ""], [1, "chat-wrapper"], [1, "welcome-wrapper"], [1, "chat-messages", 3, "scroll"], [1, "scroll-to-bottom", "fas", "fa-arrow-down"], [1, "chat-input-area"], ["type", "converging-spinner", 1, "loader"], [1, "text-area-wrapper"], [3, "ngModelChange", "input", "keyup.enter", "ngModel", "disabled", "placeholder"], ["kendoButton", "", 3, "click", "disabled"], ["title", "Clear Chat", 1, "fa-solid", "fa-trash-can"], ["title", "Send Message", 1, "fas", "fa-solid", "fa-arrow-up"], [1, "welcome-message"], [3, "src"], [1, "welcome-header-text"], [1, "welcome-suggested-questions"], [1, "welcome-suggested-questions-col"], [1, "welcome-question"], [1, "welcome-question", 3, "click"], [1, "welcome-question-header"], [1, "scroll-to-bottom", "fas", "fa-arrow-down", 3, "click"], ["kendoButton", "", "themeColor", "primary", 3, "click"], ["kendoButton", "", 3, "click"]], template: function ChatComponent_Template(rf, ctx) { if (rf & 1) {
|
|
323
322
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
324
323
|
i0.ɵɵelementStart(0, "div", 2);
|
|
325
324
|
i0.ɵɵtemplate(1, ChatComponent_Conditional_1_Template, 12, 5, "div", 3);
|
|
@@ -363,11 +362,11 @@ export class ChatComponent {
|
|
|
363
362
|
i0.ɵɵproperty("disabled", !ctx.InternalAllowSend || ctx.currentMessage.length === 0 || ctx.ShowWaitingIndicator);
|
|
364
363
|
i0.ɵɵadvance(2);
|
|
365
364
|
i0.ɵɵconditional(ctx.showingClearAllDialog ? 17 : -1);
|
|
366
|
-
} }, dependencies: [i2.DefaultValueAccessor, i2.NgControlStatus, i2.NgModel, i3.
|
|
365
|
+
} }, dependencies: [i2.DefaultValueAccessor, i2.NgControlStatus, i2.NgModel, i3.LoaderComponent, i4.ButtonComponent, i5.DialogComponent, i5.DialogActionsComponent], styles: [".loader[_ngcontent-%COMP%] {\n position: absolute;\n left: 0px;\n}\n\n.chat-wrapper[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n position: relative; \n\n}\n\n.chat-messages[_ngcontent-%COMP%] {\n overflow-y: auto; \n\n overflow-x: hidden; \n\n \n\n margin-bottom: 5px;\n\n margin-top: 2px; \n\n\n flex: 1;\n}\n\n\n\n.chat-messages[_ngcontent-%COMP%]::-webkit-scrollbar {\n width: 0;\n background: transparent; \n\n}\n\n\n\n.chat-messages[_ngcontent-%COMP%]:hover::-webkit-scrollbar {\n width: 12px; \n\n background-color: #f0f0f0; \n\n\n}\n\n\n\n.chat-messages[_ngcontent-%COMP%]:hover::-webkit-scrollbar-thumb {\n background-color: #888; \n\n opacity: 0.5; \n\n}\n\n\n\n.chat-messages[_ngcontent-%COMP%]:hover::-webkit-scrollbar-thumb {\n border-radius: 10px;\n}\n\n\n\n.chat-messages[_ngcontent-%COMP%]:hover::-webkit-scrollbar-thumb:hover {\n background: #555; \n\n}\n\n\n.chat-messages[_ngcontent-%COMP%] {\n scrollbar-width: thin; \n\n scrollbar-color: #888 #f0f0f0; \n\n}\n \n\n\n\n.chat-input-area[_ngcontent-%COMP%] {\n background: #fff;\n display: flex;\n justify-content: center;\n align-items: center;\n padding-top: 12px;\n min-height: 35px;\n margin-bottom: 15px;\n}\n.chat-input-area[_ngcontent-%COMP%] > button[_ngcontent-%COMP%] {\n vertical-align: top;\n width: 30px;\n height: 30px;\n margin-top: 3px;\n border-radius: 12px;\n}\n.chat-input-area[_ngcontent-%COMP%] > button[_ngcontent-%COMP%]:first-of-type {\n margin-left: -40px;\n}\n.chat-input-area[_ngcontent-%COMP%] > button[_ngcontent-%COMP%]:last-child {\n margin-left: -65px;\n}\n\n.text-area-wrapper[_ngcontent-%COMP%] {\n padding: 3px;\n border: solid 1px rgba(0, 0, 0, 0.08) ;\n border-radius: 15px;\n\n margin-top: 4px;\n margin-right: -1px;\n min-height: 42px;\n max-height: 100%; \n\n\n overflow: hidden; \n align-items: center;\n\n \n\n max-width: 710px; \n width: 75%; \n\n padding-right: 90px; \n\n} \n.text-area-wrapper[_ngcontent-%COMP%] > textarea[_ngcontent-%COMP%] {\n border: 0;\n outline: 0;\n resize: none;\n\n min-height: 20px; \n\n\n width: 100%;\n overflow-y: hidden; \n\n\n font-family: S\u00F6hne, ui-sans-serif, system-ui, -apple-system, \"Segoe UI\", Roboto, Ubuntu, Cantarell, \"Noto Sans\", sans-serif, \"Helvetica Neue\", Arial, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-size: 1rem;\n\n margin-left: 7px;\n margin-top: 7px;\n margin-bottom: 5px;\n}\n\n.text-area-wrapper[_ngcontent-%COMP%] > textarea[_ngcontent-%COMP%]:disabled {\n background-color: white;\n}\n\n\n .chat-message-wrap {\n display: flex;\n align-items: flex-start; \n\n margin-bottom: 10px;\n margin-right: 10px;\n}\n\n .chat-message-image {\n margin-top: 12px;\n font-size: 24px; \n\n margin-right: 10px; \n\n width: 50px;\n flex-shrink: 0; \n \n}\n\n\n\n .chat-message {\n padding-left: 7px;\n padding-right: 7px;\n margin-bottom: 10px;\n border-radius: 5px;\n background-color: rgb(255, 255, 240);\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n word-wrap: break-word;\n}\n\n .chat-message-ai {\n background-color: rgb(230, 246, 253);\n}\n\n.scroll-to-bottom[_ngcontent-%COMP%] {\n position: absolute; \n\n left: 50%; \n\n transform: translateX(-50%); \n\n bottom: 100px; \n\n z-index: 1000; \n\n border-radius: 50%;\n width: 35px;\n height: 35px;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 22px;\n background-color: #f8f8f8;\n box-shadow: 0px 0px 5px rgba(0,0,0,0.3); \n\n cursor: pointer;\n}\n\n\n\n\n\n.welcome-wrapper[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n height: 100%;\n width: 100%;\n overflow: hidden;\n}\n\n.welcome-message[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n text-align: center;\n overflow: hidden;\n height: 100%;\n}\n\n\n.welcome-message[_ngcontent-%COMP%] img[_ngcontent-%COMP%] {\n width: 120px;\n height: 50px;\n margin-bottom: 20px; \n\n}\n\n.welcome-header-text[_ngcontent-%COMP%] {\n font-size: larger;\n font-weight: bold;\n}\n\n\n\n.welcome-suggested-questions[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-content: center;\n}\n.welcome-suggested-questions-col[_ngcontent-%COMP%] {\n display: flex;\n}\n\n\n\n.welcome-question[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column; \n\n align-items: left;;\n width: 300px; \n justify-content: space-between;\n margin: 5px; \n\n border: solid 1px rgba(41, 28, 28, 0.08);\n border-radius: 15px;\n padding: 10px;\n cursor: pointer;\n}\n\n.welcome-question[_ngcontent-%COMP%]:hover {\n background-color: rgba(0, 0, 0, 0.05);\n}\n\n\n.welcome-question-header[_ngcontent-%COMP%] {\n font-size: 12pt;\n font-weight: bold;\n display: block; \n\n}\n\n\n\n.welcome-question[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:not(.welcome-question-header) {\n font-weight: normal;\n font-size: 10pt;\n}"] });
|
|
367
366
|
}
|
|
368
367
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ChatComponent, [{
|
|
369
368
|
type: Component,
|
|
370
|
-
args: [{ selector: 'mj-chat', template: "<div mjFillContainer class=\"chat-wrapper\">\n @if(Messages.length === 0 && !ShowWaitingIndicator) {\n <div class=\"welcome-wrapper\">\n <div class='welcome-message'>\n @if(AILargeImageURL) {\n <img [src]=\"AILargeImageURL\"/>\n }\n <div class=\"welcome-header-text\">What can I help with today?</div>\n </div>\n <div class='welcome-suggested-questions'>\n <div class=\"welcome-suggested-questions-col\">\n @if (WelcomeQuestions.length > 0) {\n <div class=\"welcome-question\" (click)=\"SendUserMessage(WelcomeQuestions[0].prompt)\">\n <span class=\"welcome-question-header\">{{WelcomeQuestions[0].topLine}}</span>\n <span>{{WelcomeQuestions[0].bottomLine}}</span>\n </div>\n }\n @if (WelcomeQuestions.length > 1) {\n <div class=\"welcome-question\" (click)=\"SendUserMessage(WelcomeQuestions[1].prompt)\">\n <span class=\"welcome-question-header\">{{WelcomeQuestions[1].topLine}}</span>\n <span>{{WelcomeQuestions[1].bottomLine}}</span>\n </div> \n }\n </div>\n <div class=\"welcome-suggested-questions-col\">\n @if (WelcomeQuestions.length > 2) {\n <div class=\"welcome-question\" (click)=\"SendUserMessage(WelcomeQuestions[2].prompt)\">\n <span class=\"welcome-question-header\">{{WelcomeQuestions[2].topLine}}</span>\n <span>{{WelcomeQuestions[2].bottomLine}}</span>\n </div> \n }\n @if (WelcomeQuestions.length > 3) {\n <div class=\"welcome-question\" (click)=\"SendUserMessage(WelcomeQuestions[3].prompt)\">\n <span class=\"welcome-question-header\">{{WelcomeQuestions[3].topLine}}</span>\n <span>{{WelcomeQuestions[3].bottomLine}}</span>\n </div> \n }\n </div>\n </div>\n </div> \n }\n\n <div class=\"chat-messages\" \n #messagesContainer \n (scroll)=\"handleCheckScroll()\">\n <!-- messages go here -->\n <span>{{InitialMessage}}</span>\n </div>\n @if (ShowScrollToBottomButton) {\n <span class=\"scroll-to-bottom fas fa-arrow-down\" (click)=\"ScrollMessagesToBottom()\"></span>\n }\n\n <div class = \"chat-input-area\">\n @if (ShowWaitingIndicator) {\n <kendo-loader type=\"converging-spinner\" class=\"loader\"></kendo-loader>\n }\n <div class=\"text-area-wrapper\">\n <textarea #theInput \n [(ngModel)]=\"currentMessage\" \n [disabled]=\"ShowWaitingIndicator\" \n [placeholder]=\"Placeholder\" \n (input)=\"handleInputChange($event)\"\n (keyup.enter)=\"SendCurrentMessage()\" >\n </textarea>\n </div>\n <button kendoButton \n [disabled]=\"Messages.length === 0 || ShowWaitingIndicator\"\n (click)=\"showingClearAllDialog = true\">\n <span class=\"fa-solid fa-trash-can\" title=\"Clear Chat\">\n </span>\n </button>\n <button kendoButton\n [disabled]=\"!InternalAllowSend || currentMessage.length === 0 || ShowWaitingIndicator\" \n (click)=\"SendCurrentMessage()\">\n <span class=\"fas fa-solid fa-arrow-up\" title=\"Send Message\"></span>\n </button>\n </div>\n</div>\n@if (showingClearAllDialog) {\n <kendo-dialog>\n <p>{{ClearAllMessagesPrompt}}</p>\n <kendo-dialog-actions>\n <button kendoButton (click)=\"HandleClearChat()\" themeColor=\"primary\">Yes</button>\n <button kendoButton (click)=\"showingClearAllDialog = false\">No</button>\n </kendo-dialog-actions>\n </kendo-dialog>\n}\n", styles: [".loader {\n position: absolute;\n left: 0px;\n}\n\n.chat-wrapper {\n display: flex;\n flex-direction: column;\n position: relative; /* Add this line if the wrapper needs to be a reference point */\n}\n\n.chat-messages {\n overflow-y: auto; /* enable scrolling if the content overflows */\n overflow-x: hidden; /* hide horizontal scrollbar */\n /* border: solid 1px rgba(0, 0, 0, 0.08); */\n margin-bottom: 5px;\n\n margin-top: 2px; /* align it with the top of converation history exactly*/\n\n flex: 1;\n}\n\n/* Hide scrollbar for Chrome, Safari and Opera */\n.chat-messages::-webkit-scrollbar {\n width: 0;\n background: transparent; /* Optional: just make scrollbar invisible */\n}\n\n/* Optional: Show scrollbar on hover */\n.chat-messages:hover::-webkit-scrollbar {\n width: 12px; /* Adjust the width of the scrollbar here */\n background-color: #f0f0f0; /* Adjust the background color of the scrollbar here */\n\n}\n\n/* Handle on hover */\n.chat-messages:hover::-webkit-scrollbar-thumb {\n background-color: #888; /* Adjust the color of the scrollbar handle here */\n opacity: 0.5; /* Adjust the opacity of the scrollbar handle here */\n}\n\n/* Handle rounded corners */\n.chat-messages:hover::-webkit-scrollbar-thumb {\n border-radius: 10px;\n}\n\n/* Optional: handle's hover effect */\n.chat-messages:hover::-webkit-scrollbar-thumb:hover {\n background: #555; /* Adjust hover color here */\n}\n/* Works on Firefox */\n.chat-messages {\n scrollbar-width: thin; /* \"auto\" or \"thin\" */\n scrollbar-color: #888 #f0f0f0; /* thumb and track color */\n}\n \n\n\n\n.chat-input-area {\n background: #fff;\n display: flex;\n justify-content: center;\n align-items: center;\n padding-top: 12px;\n min-height: 35px;\n margin-bottom: 15px;\n}\n.chat-input-area > button {\n vertical-align: top;\n width: 30px;\n height: 30px;\n margin-top: 3px;\n border-radius: 12px;\n}\n.chat-input-area > button:first-of-type {\n margin-left: -40px;\n}\n.chat-input-area > button:last-child {\n margin-left: -65px;\n}\n\n.text-area-wrapper {\n padding: 3px;\n border: solid 1px rgba(0, 0, 0, 0.08) ;\n border-radius: 15px;\n\n margin-top: 4px;\n margin-right: -1px;\n min-height: 42px;\n max-height: 100%; /* Prevent it from growing beyond the container */\n\n overflow: hidden; \n align-items: center;\n\n /*combined width and padding is 800*/\n max-width: 710px; \n width: 75%; /*take up 75% but no more than 710px*/\n padding-right: 90px; /* Space for the buttons */\n} \n.text-area-wrapper > textarea {\n border: 0;\n outline: 0;\n resize: none;\n\n min-height: 20px; /* Initial height */\n\n width: 100%;\n overflow-y: hidden; /* Hide scrollbar */\n\n font-family: S\u00F6hne, ui-sans-serif, system-ui, -apple-system, \"Segoe UI\", Roboto, Ubuntu, Cantarell, \"Noto Sans\", sans-serif, \"Helvetica Neue\", Arial, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-size: 1rem;\n\n margin-left: 7px;\n margin-top: 7px;\n margin-bottom: 5px;\n}\n\n.text-area-wrapper > textarea:disabled {\n background-color: white;\n}\n\n\n::ng-deep .chat-message-wrap {\n display: flex;\n align-items: flex-start; /* Align items to the top */\n margin-bottom: 10px;\n margin-right: 10px;\n}\n\n::ng-deep .chat-message-image {\n margin-top: 12px;\n font-size: 24px; /* Adjust size as necessary */\n margin-right: 10px; /* Space between the icon and the message text */\n width: 50px;\n flex-shrink: 0; /* Prevents the icon from shrinking */ \n}\n\n/* Styling for dynamic markdown content and message differentiation */\n::ng-deep .chat-message {\n padding-left: 7px;\n padding-right: 7px;\n margin-bottom: 10px;\n border-radius: 5px;\n background-color: rgb(255, 255, 240);\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n word-wrap: break-word;\n}\n\n::ng-deep .chat-message-ai {\n background-color: rgb(230, 246, 253);\n}\n\n.scroll-to-bottom {\n position: absolute; /* Or absolute, depending on your layout specifics */\n left: 50%; /* Start from the middle of the container */\n transform: translateX(-50%); /* Move it back by half of its own width to truly center it */\n bottom: 100px; /* Adjust based on the height of your input area */\n z-index: 1000; /* Make sure it's above all other content */\n border-radius: 50%;\n width: 35px;\n height: 35px;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 22px;\n background-color: #f8f8f8;\n box-shadow: 0px 0px 5px rgba(0,0,0,0.3); /* Optional: Adds a subtle shadow for better visibility */\n cursor: pointer;\n}\n\n\n\n/* Center the welcome message vertically and horizontally */\n.welcome-wrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n height: 100%;\n width: 100%;\n overflow: hidden;\n}\n\n.welcome-message {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n text-align: center;\n overflow: hidden;\n height: 100%;\n}\n\n\n.welcome-message img {\n width: 120px;\n height: 50px;\n margin-bottom: 20px; /* Adds some space between the image and the text below */\n}\n\n.welcome-header-text {\n font-size: larger;\n font-weight: bold;\n}\n\n/* Position the welcome-suggested-questions at the bottom of its container */\n.welcome-suggested-questions {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-content: center;\n}\n.welcome-suggested-questions-col {\n display: flex;\n}\n\n/* Flex layout for questions, two per row */\n.welcome-question {\n display: flex;\n flex-direction: column; /* Stack the header and text vertically */\n align-items: left;;\n width: 300px; \n justify-content: space-between;\n margin: 5px; /* Adds some space around each question */\n border: solid 1px rgba(41, 28, 28, 0.08);\n border-radius: 15px;\n padding: 10px;\n cursor: pointer;\n}\n\n.welcome-question:hover {\n background-color: rgba(0, 0, 0, 0.05);\n}\n\n\n.welcome-question-header {\n font-size: 12pt;\n font-weight: bold;\n display: block; /* Ensures the header is on its own line */\n}\n\n/* Non-bold text for the content below the header */\n.welcome-question span:not(.welcome-question-header) {\n font-weight: normal;\n font-size: 10pt;\n}\n"] }]
|
|
369
|
+
args: [{ selector: 'mj-chat', template: "<div class=\"chat-wrapper\">\n @if(Messages.length === 0 && !ShowWaitingIndicator) {\n <div class=\"welcome-wrapper\">\n <div class='welcome-message'>\n @if(AILargeImageURL) {\n <img [src]=\"AILargeImageURL\"/>\n }\n <div class=\"welcome-header-text\">What can I help with today?</div>\n </div>\n <div class='welcome-suggested-questions'>\n <div class=\"welcome-suggested-questions-col\">\n @if (WelcomeQuestions.length > 0) {\n <div class=\"welcome-question\" (click)=\"SendUserMessage(WelcomeQuestions[0].prompt)\">\n <span class=\"welcome-question-header\">{{WelcomeQuestions[0].topLine}}</span>\n <span>{{WelcomeQuestions[0].bottomLine}}</span>\n </div>\n }\n @if (WelcomeQuestions.length > 1) {\n <div class=\"welcome-question\" (click)=\"SendUserMessage(WelcomeQuestions[1].prompt)\">\n <span class=\"welcome-question-header\">{{WelcomeQuestions[1].topLine}}</span>\n <span>{{WelcomeQuestions[1].bottomLine}}</span>\n </div> \n }\n </div>\n <div class=\"welcome-suggested-questions-col\">\n @if (WelcomeQuestions.length > 2) {\n <div class=\"welcome-question\" (click)=\"SendUserMessage(WelcomeQuestions[2].prompt)\">\n <span class=\"welcome-question-header\">{{WelcomeQuestions[2].topLine}}</span>\n <span>{{WelcomeQuestions[2].bottomLine}}</span>\n </div> \n }\n @if (WelcomeQuestions.length > 3) {\n <div class=\"welcome-question\" (click)=\"SendUserMessage(WelcomeQuestions[3].prompt)\">\n <span class=\"welcome-question-header\">{{WelcomeQuestions[3].topLine}}</span>\n <span>{{WelcomeQuestions[3].bottomLine}}</span>\n </div> \n }\n </div>\n </div>\n </div> \n }\n\n <div class=\"chat-messages\" \n #messagesContainer \n (scroll)=\"handleCheckScroll()\">\n <!-- messages go here -->\n <span>{{InitialMessage}}</span>\n </div>\n @if (ShowScrollToBottomButton) {\n <span class=\"scroll-to-bottom fas fa-arrow-down\" (click)=\"ScrollMessagesToBottom()\"></span>\n }\n\n <div class = \"chat-input-area\">\n @if (ShowWaitingIndicator) {\n <kendo-loader type=\"converging-spinner\" class=\"loader\"></kendo-loader>\n }\n <div class=\"text-area-wrapper\">\n <textarea #theInput \n [(ngModel)]=\"currentMessage\" \n [disabled]=\"ShowWaitingIndicator\" \n [placeholder]=\"Placeholder\" \n (input)=\"handleInputChange($event)\"\n (keyup.enter)=\"SendCurrentMessage()\" >\n </textarea>\n </div>\n <button kendoButton \n [disabled]=\"Messages.length === 0 || ShowWaitingIndicator\"\n (click)=\"showingClearAllDialog = true\">\n <span class=\"fa-solid fa-trash-can\" title=\"Clear Chat\">\n </span>\n </button>\n <button kendoButton\n [disabled]=\"!InternalAllowSend || currentMessage.length === 0 || ShowWaitingIndicator\" \n (click)=\"SendCurrentMessage()\">\n <span class=\"fas fa-solid fa-arrow-up\" title=\"Send Message\"></span>\n </button>\n </div>\n</div>\n@if (showingClearAllDialog) {\n <kendo-dialog>\n <p>{{ClearAllMessagesPrompt}}</p>\n <kendo-dialog-actions>\n <button kendoButton (click)=\"HandleClearChat()\" themeColor=\"primary\">Yes</button>\n <button kendoButton (click)=\"showingClearAllDialog = false\">No</button>\n </kendo-dialog-actions>\n </kendo-dialog>\n}\n", styles: [".loader {\n position: absolute;\n left: 0px;\n}\n\n.chat-wrapper {\n display: flex;\n flex-direction: column;\n position: relative; /* Add this line if the wrapper needs to be a reference point */\n}\n\n.chat-messages {\n overflow-y: auto; /* enable scrolling if the content overflows */\n overflow-x: hidden; /* hide horizontal scrollbar */\n /* border: solid 1px rgba(0, 0, 0, 0.08); */\n margin-bottom: 5px;\n\n margin-top: 2px; /* align it with the top of converation history exactly*/\n\n flex: 1;\n}\n\n/* Hide scrollbar for Chrome, Safari and Opera */\n.chat-messages::-webkit-scrollbar {\n width: 0;\n background: transparent; /* Optional: just make scrollbar invisible */\n}\n\n/* Optional: Show scrollbar on hover */\n.chat-messages:hover::-webkit-scrollbar {\n width: 12px; /* Adjust the width of the scrollbar here */\n background-color: #f0f0f0; /* Adjust the background color of the scrollbar here */\n\n}\n\n/* Handle on hover */\n.chat-messages:hover::-webkit-scrollbar-thumb {\n background-color: #888; /* Adjust the color of the scrollbar handle here */\n opacity: 0.5; /* Adjust the opacity of the scrollbar handle here */\n}\n\n/* Handle rounded corners */\n.chat-messages:hover::-webkit-scrollbar-thumb {\n border-radius: 10px;\n}\n\n/* Optional: handle's hover effect */\n.chat-messages:hover::-webkit-scrollbar-thumb:hover {\n background: #555; /* Adjust hover color here */\n}\n/* Works on Firefox */\n.chat-messages {\n scrollbar-width: thin; /* \"auto\" or \"thin\" */\n scrollbar-color: #888 #f0f0f0; /* thumb and track color */\n}\n \n\n\n\n.chat-input-area {\n background: #fff;\n display: flex;\n justify-content: center;\n align-items: center;\n padding-top: 12px;\n min-height: 35px;\n margin-bottom: 15px;\n}\n.chat-input-area > button {\n vertical-align: top;\n width: 30px;\n height: 30px;\n margin-top: 3px;\n border-radius: 12px;\n}\n.chat-input-area > button:first-of-type {\n margin-left: -40px;\n}\n.chat-input-area > button:last-child {\n margin-left: -65px;\n}\n\n.text-area-wrapper {\n padding: 3px;\n border: solid 1px rgba(0, 0, 0, 0.08) ;\n border-radius: 15px;\n\n margin-top: 4px;\n margin-right: -1px;\n min-height: 42px;\n max-height: 100%; /* Prevent it from growing beyond the container */\n\n overflow: hidden; \n align-items: center;\n\n /*combined width and padding is 800*/\n max-width: 710px; \n width: 75%; /*take up 75% but no more than 710px*/\n padding-right: 90px; /* Space for the buttons */\n} \n.text-area-wrapper > textarea {\n border: 0;\n outline: 0;\n resize: none;\n\n min-height: 20px; /* Initial height */\n\n width: 100%;\n overflow-y: hidden; /* Hide scrollbar */\n\n font-family: S\u00F6hne, ui-sans-serif, system-ui, -apple-system, \"Segoe UI\", Roboto, Ubuntu, Cantarell, \"Noto Sans\", sans-serif, \"Helvetica Neue\", Arial, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-size: 1rem;\n\n margin-left: 7px;\n margin-top: 7px;\n margin-bottom: 5px;\n}\n\n.text-area-wrapper > textarea:disabled {\n background-color: white;\n}\n\n\n::ng-deep .chat-message-wrap {\n display: flex;\n align-items: flex-start; /* Align items to the top */\n margin-bottom: 10px;\n margin-right: 10px;\n}\n\n::ng-deep .chat-message-image {\n margin-top: 12px;\n font-size: 24px; /* Adjust size as necessary */\n margin-right: 10px; /* Space between the icon and the message text */\n width: 50px;\n flex-shrink: 0; /* Prevents the icon from shrinking */ \n}\n\n/* Styling for dynamic markdown content and message differentiation */\n::ng-deep .chat-message {\n padding-left: 7px;\n padding-right: 7px;\n margin-bottom: 10px;\n border-radius: 5px;\n background-color: rgb(255, 255, 240);\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n word-wrap: break-word;\n}\n\n::ng-deep .chat-message-ai {\n background-color: rgb(230, 246, 253);\n}\n\n.scroll-to-bottom {\n position: absolute; /* Or absolute, depending on your layout specifics */\n left: 50%; /* Start from the middle of the container */\n transform: translateX(-50%); /* Move it back by half of its own width to truly center it */\n bottom: 100px; /* Adjust based on the height of your input area */\n z-index: 1000; /* Make sure it's above all other content */\n border-radius: 50%;\n width: 35px;\n height: 35px;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 22px;\n background-color: #f8f8f8;\n box-shadow: 0px 0px 5px rgba(0,0,0,0.3); /* Optional: Adds a subtle shadow for better visibility */\n cursor: pointer;\n}\n\n\n\n/* Center the welcome message vertically and horizontally */\n.welcome-wrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n height: 100%;\n width: 100%;\n overflow: hidden;\n}\n\n.welcome-message {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n text-align: center;\n overflow: hidden;\n height: 100%;\n}\n\n\n.welcome-message img {\n width: 120px;\n height: 50px;\n margin-bottom: 20px; /* Adds some space between the image and the text below */\n}\n\n.welcome-header-text {\n font-size: larger;\n font-weight: bold;\n}\n\n/* Position the welcome-suggested-questions at the bottom of its container */\n.welcome-suggested-questions {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-content: center;\n}\n.welcome-suggested-questions-col {\n display: flex;\n}\n\n/* Flex layout for questions, two per row */\n.welcome-question {\n display: flex;\n flex-direction: column; /* Stack the header and text vertically */\n align-items: left;;\n width: 300px; \n justify-content: space-between;\n margin: 5px; /* Adds some space around each question */\n border: solid 1px rgba(41, 28, 28, 0.08);\n border-radius: 15px;\n padding: 10px;\n cursor: pointer;\n}\n\n.welcome-question:hover {\n background-color: rgba(0, 0, 0, 0.05);\n}\n\n\n.welcome-question-header {\n font-size: 12pt;\n font-weight: bold;\n display: block; /* Ensures the header is on its own line */\n}\n\n/* Non-bold text for the content below the header */\n.welcome-question span:not(.welcome-question-header) {\n font-weight: normal;\n font-size: 10pt;\n}\n"] }]
|
|
371
370
|
}], () => [{ type: i1.MarkdownService }, { type: i0.ChangeDetectorRef }], { InitialMessage: [{
|
|
372
371
|
type: Input
|
|
373
372
|
}], Messages: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.component.js","sourceRoot":"","sources":["../../../src/lib/chat/chat.component.ts","../../../src/lib/chat/chat.component.html"],"names":[],"mappings":"AAAA,OAAO,EAAoC,SAAS,EAAc,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAEhI,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA
|
|
1
|
+
{"version":3,"file":"chat.component.js","sourceRoot":"","sources":["../../../src/lib/chat/chat.component.ts","../../../src/lib/chat/chat.component.html"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/ng-chat",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.53.0",
|
|
4
4
|
"description": "MemberJunction: Reusable Chat Component - can be used for AI or peer to peer chat applications.",
|
|
5
5
|
"main": "./dist/public-api.js",
|
|
6
6
|
"typings": "./dist/public-api.d.ts",
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
"@angular/forms": "18.0.2"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@memberjunction/core": "2.
|
|
28
|
-
"@memberjunction/ng-container-directives": "2.
|
|
27
|
+
"@memberjunction/core": "2.53.0",
|
|
28
|
+
"@memberjunction/ng-container-directives": "2.53.0",
|
|
29
29
|
"@progress/kendo-angular-indicators": "16.2.0",
|
|
30
30
|
"@progress/kendo-angular-buttons": "16.2.0",
|
|
31
31
|
"@progress/kendo-angular-dialog": "16.2.0",
|