@bytebrain.ai/bytebrain-ui 0.0.7 → 0.0.8
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.
- package/dist/Bot.d.ts +3 -0
- package/dist/ChatApp.d.ts +8 -0
- package/dist/ChatMessage.d.ts +18 -0
- package/dist/ChatPrompt/References.d.ts +8 -1
- package/dist/ChatPrompt/RelatedQuestions.d.ts +6 -2
- package/dist/ChatPrompt.d.ts +13 -0
- package/dist/FeedbackForm.d.ts +6 -1
- package/dist/Message.d.ts +9 -0
- package/dist/PopupChatWindow.d.ts +10 -0
- package/dist/References.d.ts +10 -0
- package/dist/RelatedQuestions.d.ts +9 -0
- package/dist/User.d.ts +3 -0
- package/dist/UserTypes.d.ts +5 -0
- package/dist/index.d.ts +6 -6
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +2 -1
package/dist/Bot.d.ts
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import "highlight.js/styles/github.css";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { ReferenceItem } from "./References";
|
|
4
|
+
import Message from "./Message";
|
|
5
|
+
import UserTypes from "./UserTypes";
|
|
6
|
+
interface ChatMessageProps {
|
|
7
|
+
id: string;
|
|
8
|
+
chatHistory: Message[];
|
|
9
|
+
highlight: boolean;
|
|
10
|
+
userType: UserTypes;
|
|
11
|
+
text: string;
|
|
12
|
+
setQuestion: React.Dispatch<React.SetStateAction<string>>;
|
|
13
|
+
references: ReferenceItem[];
|
|
14
|
+
baseHttpUrl: string;
|
|
15
|
+
index: number;
|
|
16
|
+
}
|
|
17
|
+
declare const ChatMessage: React.FC<ChatMessageProps>;
|
|
18
|
+
export default ChatMessage;
|
|
@@ -1,3 +1,10 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
|
|
2
|
+
type ReferenceItem = {
|
|
3
|
+
page_url: string;
|
|
4
|
+
page_title: string;
|
|
5
|
+
};
|
|
6
|
+
interface ReferencesProps {
|
|
7
|
+
items?: ReferenceItem[];
|
|
8
|
+
}
|
|
9
|
+
export declare const References: React.FC<ReferencesProps>;
|
|
3
10
|
export default References;
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import './ChatPrompt.css';
|
|
3
2
|
import './RelatedQuestions.css';
|
|
4
|
-
|
|
3
|
+
type QuestionItem = string;
|
|
4
|
+
interface RelatedQuestionsProps {
|
|
5
|
+
items?: QuestionItem[];
|
|
6
|
+
setQuestion: (question: string) => void;
|
|
7
|
+
}
|
|
8
|
+
export declare const RelatedQuestions: React.FC<RelatedQuestionsProps>;
|
|
5
9
|
export default RelatedQuestions;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './ChatPrompt.css';
|
|
3
|
+
interface ChatPromptProps {
|
|
4
|
+
title?: string;
|
|
5
|
+
defaultQuestion?: string;
|
|
6
|
+
websocketHost?: string;
|
|
7
|
+
websocketPort?: string;
|
|
8
|
+
websocketEndpoint: string;
|
|
9
|
+
welcomeMessages: string[];
|
|
10
|
+
fullScreen?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export declare const ChatPrompt: (props: ChatPromptProps) => React.JSX.Element;
|
|
13
|
+
export default ChatPrompt;
|
package/dist/FeedbackForm.d.ts
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import './FeedbackForm.css';
|
|
3
|
-
|
|
3
|
+
import Message from './Message';
|
|
4
|
+
interface FeedbackFormProps {
|
|
5
|
+
chatHistory: Message[];
|
|
6
|
+
baseHttpUrl: string;
|
|
7
|
+
}
|
|
8
|
+
export declare const FeedbackForm: React.FC<FeedbackFormProps>;
|
|
4
9
|
export default FeedbackForm;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface PopupChatWindowProps {
|
|
3
|
+
visible: boolean;
|
|
4
|
+
onClose: () => void;
|
|
5
|
+
websocketHost?: string;
|
|
6
|
+
websocketPort?: string;
|
|
7
|
+
websocketEndpoint?: string;
|
|
8
|
+
}
|
|
9
|
+
declare const PopupChatWindow: React.FC<PopupChatWindowProps>;
|
|
10
|
+
export default PopupChatWindow;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './RelatedQuestions.css';
|
|
3
|
+
type QuestionItem = string;
|
|
4
|
+
interface RelatedQuestionsProps {
|
|
5
|
+
items?: QuestionItem[];
|
|
6
|
+
setQuestion: React.Dispatch<React.SetStateAction<string>>;
|
|
7
|
+
}
|
|
8
|
+
export declare const RelatedQuestions: React.FC<RelatedQuestionsProps>;
|
|
9
|
+
export default RelatedQuestions;
|
package/dist/User.d.ts
ADDED
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import FeedbackForm from "./FeedbackForm";
|
|
2
2
|
import ThumbsDown from "./thumbs-down";
|
|
3
3
|
import ThumbsUp from "./thumbs-up";
|
|
4
|
-
import RelatedQuestions from "./
|
|
5
|
-
import References from "./
|
|
6
|
-
import ChatMessage from "./
|
|
7
|
-
import ChatPrompt from "./ChatPrompt
|
|
8
|
-
import ChatApp from "./
|
|
9
|
-
import PopupChatWindow from "./
|
|
4
|
+
import RelatedQuestions from "./RelatedQuestions";
|
|
5
|
+
import References from "./References";
|
|
6
|
+
import ChatMessage from "./ChatMessage";
|
|
7
|
+
import ChatPrompt from "./ChatPrompt";
|
|
8
|
+
import ChatApp from "./ChatApp";
|
|
9
|
+
import PopupChatWindow from "./PopupChatWindow";
|
|
10
10
|
export { FeedbackForm, ThumbsDown, ThumbsUp, RelatedQuestions, References, ChatMessage, ChatPrompt, ChatApp, PopupChatWindow };
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e,{useState as t,useEffect as n,useRef as A}from"react";import r from"highlight.js";import o from"react-markdown";function a(e,t,n,A){return new(n||(n=Promise))((function(r,o){function a(e){try{s(A.next(e))}catch(e){o(e)}}function i(e){try{s(A.throw(e))}catch(e){o(e)}}function s(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,i)}s((A=A.apply(e,t||[])).next())}))}"function"==typeof SuppressedError&&SuppressedError;const i=()=>e.createElement(e.Fragment,null,e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.2,stroke:"currentColor",className:"w-6 h-6"},e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6.633 10.5c.806 0 1.533-.446 2.031-1.08a9.041 9.041 0 012.861-2.4c.723-.384 1.35-.956 1.653-1.715a4.498 4.498 0 00.322-1.672V3a.75.75 0 01.75-.75A2.25 2.25 0 0116.5 4.5c0 1.152-.26 2.243-.723 3.218-.266.558.107 1.282.725 1.282h3.126c1.026 0 1.945.694 2.054 1.715.045.422.068.85.068 1.285a11.95 11.95 0 01-2.649 7.521c-.388.482-.987.729-1.605.729H13.48c-.483 0-.964-.078-1.423-.23l-3.114-1.04a4.501 4.501 0 00-1.423-.23H5.904M14.25 9h2.25M5.904 18.75c.083.205.173.405.27.602.197.4-.078.898-.523.898h-.908c-.889 0-1.713-.518-1.972-1.368a12 12 0 01-.521-3.507c0-1.553.295-3.036.831-4.398C3.387 10.203 4.167 9.75 5 9.75h1.053c.472 0 .745.556.5.96a8.958 8.958 0 00-1.302 4.665c0 1.194.232 2.333.654 3.375z"}))),s=()=>e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.2,stroke:"currentColor",className:"w-6 h-6"},e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M7.5 15h2.25m8.024-9.75c.011.05.028.1.052.148.591 1.2.924 2.55.924 3.977a8.96 8.96 0 01-.999 4.125m.023-8.25c-.076-.365.183-.75.575-.75h.908c.889 0 1.713.518 1.972 1.368.339 1.11.521 2.287.521 3.507 0 1.553-.295 3.036-.831 4.398C20.613 14.547 19.833 15 19 15h-1.053c-.472 0-.745-.556-.5-.96a8.95 8.95 0 00.303-.54m.023-8.25H16.48a4.5 4.5 0 01-1.423-.23l-3.114-1.04a4.5 4.5 0 00-1.423-.23H6.504c-.618 0-1.217.247-1.605.729A11.95 11.95 0 002.25 12c0 .434.023.863.068 1.285C2.427 14.306 3.346 15 4.372 15h3.126c.618 0 .991.724.725 1.282A7.471 7.471 0 007.5 19.5a2.25 2.25 0 002.25 2.25.75.75 0 00.75-.75v-.633c0-.573.11-1.14.322-1.672.304-.76.93-1.33 1.653-1.715a9.04 9.04 0 002.86-2.4c.498-.634 1.226-1.08 2.032-1.08h.384"}));function l(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var A=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css","top"===n&&A.firstChild?A.insertBefore(r,A.firstChild):A.appendChild(r),r.styleSheet?r.styleSheet.cssText=e:r.appendChild(document.createTextNode(e))}}l(".feedback-button {\n border-width: 0;\n border-top-width: 0;\n border-right-width: 0;\n border-bottom-width: 0;\n border-left-width: 0;\n}\n");const g=A=>{const[r,o]=t(A.chatHistory),[l,g]=t(null),[c,d]=t(!1);n((()=>{o(A.chatHistory)}),[A]);const w=e=>a(void 0,void 0,void 0,(function*(){try{if(c)return;g(e);(yield fetch(A.baseHttpUrl+"/feedback/",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({chat_history:r,is_useful:e})})).ok?(console.log("Feedback submitted successfully"),d(!0)):console.error("Failed to submit feedback")}catch(e){console.error("Error submitting feedback:",e)}}));return e.createElement("form",null,e.createElement("button",{type:"button",title:"It was helpful to me!",className:"feedback-button inline-block "+(c&&!l?"hidden":""),onClick:()=>w(!0),disabled:c},e.createElement(i,null)),e.createElement("button",{type:"button",title:"It didn't help me at all!",className:"feedback-button inline-block "+(c&&l?"hidden":""),onClick:()=>w(!1),disabled:c},e.createElement(s,null)))};l('*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n.container {\n width: 100%;\n}\n@media (min-width: 640px) {\n .container {\n max-width: 640px;\n }\n}\n@media (min-width: 768px) {\n .container {\n max-width: 768px;\n }\n}\n@media (min-width: 1024px) {\n .container {\n max-width: 1024px;\n }\n}\n@media (min-width: 1280px) {\n .container {\n max-width: 1280px;\n }\n}\n@media (min-width: 1536px) {\n .container {\n max-width: 1536px;\n }\n}\n.visible {\n visibility: visible;\n}\n.fixed {\n position: fixed;\n}\n.bottom-0 {\n bottom: 0px;\n}\n.bottom-5 {\n bottom: 1.25rem;\n}\n.left-5 {\n left: 1.25rem;\n}\n.right-0 {\n right: 0px;\n}\n.right-5 {\n right: 1.25rem;\n}\n.mb-6 {\n margin-bottom: 1.5rem;\n}\n.mr-2 {\n margin-right: 0.5rem;\n}\n.mt-4 {\n margin-top: 1rem;\n}\n.block {\n display: block;\n}\n.inline-block {\n display: inline-block;\n}\n.flex {\n display: flex;\n}\n.hidden {\n display: none;\n}\n.h-10 {\n height: 2.5rem;\n}\n.h-6 {\n height: 1.5rem;\n}\n.h-screen {\n height: 100vh;\n}\n.max-h-screen {\n max-height: 100vh;\n}\n.w-6 {\n width: 1.5rem;\n}\n.w-full {\n width: 100%;\n}\n.list-inside {\n list-style-position: inside;\n}\n.flex-row {\n flex-direction: row;\n}\n.flex-col {\n flex-direction: column;\n}\n.flex-wrap {\n flex-wrap: wrap;\n}\n.justify-between {\n justify-content: space-between;\n}\n.space-x-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.5rem * var(--tw-space-x-reverse));\n margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));\n}\n.space-y-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));\n}\n.space-y-4 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(1rem * var(--tw-space-y-reverse));\n}\n.overflow-y-scroll {\n overflow-y: scroll;\n}\n.scroll-smooth {\n scroll-behavior: smooth;\n}\n.rounded-full {\n border-radius: 9999px;\n}\n.rounded-lg {\n border-radius: 0.5rem;\n}\n.rounded-md {\n border-radius: 0.375rem;\n}\n.rounded-b-lg {\n border-bottom-right-radius: 0.5rem;\n border-bottom-left-radius: 0.5rem;\n}\n.rounded-t-lg {\n border-top-left-radius: 0.5rem;\n border-top-right-radius: 0.5rem;\n}\n.rounded-bl-none {\n border-bottom-left-radius: 0px;\n}\n.rounded-br-none {\n border-bottom-right-radius: 0px;\n}\n.rounded-tl-md {\n border-top-left-radius: 0.375rem;\n}\n.border-0 {\n border-width: 0px;\n}\n.bg-black {\n --tw-bg-opacity: 1;\n background-color: rgb(0 0 0 / var(--tw-bg-opacity));\n}\n.bg-blue-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n}\n.bg-blue-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(37 99 235 / var(--tw-bg-opacity));\n}\n.bg-gray-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity));\n}\n.bg-gray-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(229 231 235 / var(--tw-bg-opacity));\n}\n.bg-gray-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(209 213 219 / var(--tw-bg-opacity));\n}\n.bg-orange-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(251 146 60 / var(--tw-bg-opacity));\n}\n.p-5 {\n padding: 1.25rem;\n}\n.px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n.px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n.px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n}\n.py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n.pl-0 {\n padding-left: 0px;\n}\n.pt-2 {\n padding-top: 0.5rem;\n}\n.font-sans {\n font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";\n}\n.text-3xl {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n.text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n.text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n.text-xs {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n.font-bold {\n font-weight: 700;\n}\n.font-normal {\n font-weight: 400;\n}\n.text-black {\n --tw-text-opacity: 1;\n color: rgb(0 0 0 / var(--tw-text-opacity));\n}\n.text-gray-600 {\n --tw-text-opacity: 1;\n color: rgb(75 85 99 / var(--tw-text-opacity));\n}\n.text-orange-600 {\n --tw-text-opacity: 1;\n color: rgb(234 88 12 / var(--tw-text-opacity));\n}\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n.underline {\n text-decoration-line: underline;\n}\n.placeholder-black::placeholder {\n --tw-placeholder-opacity: 1;\n color: rgb(0 0 0 / var(--tw-placeholder-opacity));\n}\n.placeholder-gray-500::placeholder {\n --tw-placeholder-opacity: 1;\n color: rgb(107 114 128 / var(--tw-placeholder-opacity));\n}\n.filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n#scroller * {\n overflow-anchor: none;\n}\n\n#anchor {\n overflow-anchor: auto;\n height: 1px;\n}\n\np code {\n border-radius: 3px;\n}\n\n.chat-message p {\n margin: 0;\n}\n\n.user-message p code {\n background-color: aliceblue;\n}\n\n.bot-message p code {\n background-color: cornflowerblue;\n}\n\n.bot-message li > code {\n background-color: cornflowerblue;\n}\n\nol {\n list-style-type: decimal;\n margin: 1.0em;\n}\n\nli {\n padding: 0.2em;\n}\n\n#ChatPrompt ::-webkit-scrollbar {\n display: none;\n}\n\npre {\n color: black;\n white-space: pre-wrap;\n word-break: break-word;\n}\n\n.hover\\:scale-95:hover {\n --tw-scale-x: .95;\n --tw-scale-y: .95;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.hover\\:bg-gray-900:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(17 24 39 / var(--tw-bg-opacity));\n}\n\n.focus\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n.disabled\\:cursor-not-allowed:disabled {\n cursor: not-allowed;\n}\n\n.disabled\\:opacity-75:disabled {\n opacity: 0.75;\n}\n\n@media (min-width: 640px) {\n .sm\\:w-\\[100\\%\\] {\n width: 100%;\n }\n}\n\n@media (min-width: 768px) {\n .md\\:w-\\[100\\%\\] {\n width: 100%;\n }\n}\n\n@media (min-width: 1024px) {\n .lg\\:w-\\[50\\%\\] {\n width: 50%;\n }\n}\n\n@media (min-width: 1280px) {\n .xl\\:w-\\[40\\%\\] {\n width: 40%;\n }\n}\n\n@media (min-width: 1536px) {\n .\\32xl\\:w-\\[30\\%\\] {\n width: 30%;\n }\n}\n');function c(t){return e.createElement(e.Fragment,null," ",void 0!==t.items&&t.items.length>0?e.createElement("div",{className:"text-xs px-4 pt-2 rounded-br-none bg-blue-500 text-white"},e.createElement("h3",{className:"text-xs font-bold"},"Ask Related Questions:"),e.createElement("ol",{className:"list-inside custom-list"},t.items.map(((n,A)=>e.createElement("li",{key:A,className:"mr-2"},e.createElement("a",{className:"underline text-white text-sm",href:"#",onClick:e=>{t.setQuestion(e.target.textContent)}},n)))))):null)}function d(t){return e.createElement(e.Fragment,null,void 0!==t.items&&t.items.length>0?e.createElement("div",{className:"text-xs px-4 py-2 rounded-b-lg rounded-br-none bg-blue-500 text-white"},e.createElement("h3",{className:"text-xs font-bold"},"Discover Related Sources:"),e.createElement("ol",{className:"flex flex-wrap list-inside pl-0"},t.items.map(((t,n)=>e.createElement("li",{key:n,className:"mr-2"},e.createElement("a",{className:"underline text-white text-sm",href:t.page_url},t.page_title)))))):null)}l(".custom-list {\n\n\n padding-left: 0.5rem;\n\n\n margin: 0px\n}\n\n\n");l("pre code.hljs {\n display: block;\n overflow-x: auto;\n padding: 1em\n}\ncode.hljs {\n padding: 3px 5px\n}\n/*!\n Theme: GitHub\n Description: Light theme as seen on github.com\n Author: github.com\n Maintainer: @Hirse\n Updated: 2021-05-15\n\n Outdated base version: https://github.com/primer/github-syntax-light\n Current colors taken from GitHub's CSS\n*/\n.hljs {\n color: #24292e;\n background: #ffffff\n}\n.hljs-doctag,\n.hljs-keyword,\n.hljs-meta .hljs-keyword,\n.hljs-template-tag,\n.hljs-template-variable,\n.hljs-type,\n.hljs-variable.language_ {\n /* prettylights-syntax-keyword */\n color: #d73a49\n}\n.hljs-title,\n.hljs-title.class_,\n.hljs-title.class_.inherited__,\n.hljs-title.function_ {\n /* prettylights-syntax-entity */\n color: #6f42c1\n}\n.hljs-attr,\n.hljs-attribute,\n.hljs-literal,\n.hljs-meta,\n.hljs-number,\n.hljs-operator,\n.hljs-variable,\n.hljs-selector-attr,\n.hljs-selector-class,\n.hljs-selector-id {\n /* prettylights-syntax-constant */\n color: #005cc5\n}\n.hljs-regexp,\n.hljs-string,\n.hljs-meta .hljs-string {\n /* prettylights-syntax-string */\n color: #032f62\n}\n.hljs-built_in,\n.hljs-symbol {\n /* prettylights-syntax-variable */\n color: #e36209\n}\n.hljs-comment,\n.hljs-code,\n.hljs-formula {\n /* prettylights-syntax-comment */\n color: #6a737d\n}\n.hljs-name,\n.hljs-quote,\n.hljs-selector-tag,\n.hljs-selector-pseudo {\n /* prettylights-syntax-entity-tag */\n color: #22863a\n}\n.hljs-subst {\n /* prettylights-syntax-storage-modifier-import */\n color: #24292e\n}\n.hljs-section {\n /* prettylights-syntax-markup-heading */\n color: #005cc5;\n font-weight: bold\n}\n.hljs-bullet {\n /* prettylights-syntax-markup-list */\n color: #735c0f\n}\n.hljs-emphasis {\n /* prettylights-syntax-markup-italic */\n color: #24292e;\n font-style: italic\n}\n.hljs-strong {\n /* prettylights-syntax-markup-bold */\n color: #24292e;\n font-weight: bold\n}\n.hljs-addition {\n /* prettylights-syntax-markup-inserted */\n color: #22863a;\n background-color: #f0fff4\n}\n.hljs-deletion {\n /* prettylights-syntax-markup-deleted */\n color: #b31d28;\n background-color: #ffeef0\n}\n.hljs-char.escape_,\n.hljs-link,\n.hljs-params,\n.hljs-property,\n.hljs-punctuation,\n.hljs-tag {\n /* purposely ignored */\n \n}");var w="data:image/png;base64,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";function m(t){const[A,a]=e.useState(t.chatHistory);let i;if(n((()=>{t.highlight&&"bot"===t.userType&&document.querySelectorAll("#"+t.id+" pre code").forEach((e=>{r.highlightElement(e)}))})),n((()=>{a(t.chatHistory)}),[t]),"user"===t.userType)i=e.createElement("div",{className:"w-full chat-message user-message text-base flex flex-row space-x-2",id:t.id},e.createElement("img",{src:"data:image/png;base64,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",alt:"User Profile",className:"w-6 h-6 rounded-full"}),e.createElement(o,{className:"px-4 py-2 rounded-lg rounded-bl-none bg-gray-300 text-gray-600"},t.text));else if("bot"===t.userType)if(String(t.text).includes("Related Questions:")){let n=t.text.split("Related Questions:"),r=(s=n[1].trim(),s.split(/\n/).filter((e=>e.length>0)).map((e=>e.trim())).filter((e=>/\d+|[*-]/.test(e)))).map((e=>function(e){return e.replace(/^\d+\.|[*-]\s*/,"")}(e)));i=e.createElement("div",{className:"w-full chat-message bot-message text-base flex flex-row space-x-2",id:t.id},e.createElement("img",{src:w,alt:"Robot Profile",className:"w-6 h-6 rounded-full"}),e.createElement("div",{className:"w-full"},e.createElement(o,{className:"px-4 py-2 space-y-2 rounded-t-lg bg-blue-600 text-white"},n[0]),e.createElement(c,{items:r,setQuestion:t.setQuestion}),e.createElement(d,{items:t.references})),e.createElement(g,{chatHistory:A.slice(1,t.index+1),baseHttpUrl:t.baseHttpUrl}))}else i=e.createElement("div",{className:"w-full chat-message bot-message text-base flex flex-row space-x-2",id:t.id},e.createElement("img",{src:w,alt:"Robot Profile",className:"w-6 h-6 rounded-full"}),e.createElement("div",{className:"w-full"},e.createElement(o,{className:"px-4 py-2 space-y-2 rounded-t-lg bg-blue-600 text-white"},t.text),e.createElement(d,{items:t.references})),e.createElement(g,{chatHistory:A.slice(1,t.index+1),baseHttpUrl:t.baseHttpUrl}));var s;return i}const p=t=>{const{title:n="ByteBrain ChatBot",defaultQuestion:A="Send your message",websocketHost:r,websocketPort:o,websocketEndpoint:a,welcomeMessages:i,fullScreen:s}=t,l=i.map((e=>({userType:"bot",message:e,completed:!0}))),[g,c]=e.useState(A),[d,w]=e.useState([function(e){const t=Math.floor(Math.random()*e.length);return e.splice(t,1)[0]}(l)]),p=r||window.location.hostname,k="80"===o?"":":"+o,h="80"===o?"wss://":"ws://",u=("80"===o?"https://":"http://")+p+k;const B=()=>{const e=new WebSocket(h+p+k+a);e.onopen=t=>{w((e=>e.concat([{userType:"user",message:g,completed:!0}])));const n=d.map((e=>e.message)).slice(1),A={question:g,history:n};e.send(JSON.stringify(A))},e.onmessage=function(e){const t=JSON.parse(e.data),n=t.token,A=t.references,r=t.completed;w((e=>{if(0===e.length||"user"===e[e.length-1].userType)return[...e,{userType:"bot",message:n,completed:r}];{const t=[...e];return t[t.length-1]=Object.assign(Object.assign({},t[t.length-1]),{message:t[t.length-1].message+n,references:A,completed:r}),t}}))}};return e.createElement("div",{id:"ChatPrompt",className:"justify-between flex flex-col p-5 rounded-md bg-gray-100 max-h-screen "+(s?"h-screen":"")},e.createElement("h1",{className:"text-orange-600 text-3xl font-bold mb-6"},n),e.createElement("div",{id:"scroller",className:"flex flex-col space-y-4 overflow-y-scroll scroll-smooth"},d.map(((t,n)=>e.createElement(m,{key:n,id:"chat"+n,index:n,userType:t.userType,text:t.message,references:t.references,highlight:t.completed,chatHistory:d,baseHttpUrl:u,setQuestion:c}))),e.createElement("div",{id:"anchor"})),e.createElement("form",{onSubmit:e=>{e.preventDefault(),B(),e.target.reset(),c(A)},className:"flex bottom-5 left-5 right-5 h-10 mt-4"},e.createElement("input",{type:"text",id:"promptInput",onChange:e=>{c(e.target.value)},className:`w-full px-4 py-2 \n border-0\n rounded-md\n text-base\n text-blac\n bg-gray-200\n focus:outline-none\n font-sans\n font-normal\n ${g===A?"placeholder-gray-500":"placeholder-black"}\n `,placeholder:g}),e.createElement("button",{disabled:0!==d.length&&("user"==d[d.length-1].userType||("bot"==d[d.length-1].userType?!d[d.length-1].completed:void 0)),id:"generateBtn",type:"submit",className:"px-6 rounded-md border-0 bg-black text-base text-white hover:bg-gray-900 focus:outline-none disabled:opacity-75 disabled:cursor-not-allowed font-sans font-normal"},"Send")))};function k({visible:t,onClose:r,websocketHost:o,websocketPort:a,websocketEndpoint:i}){const s=A();((e,t)=>{const A=n=>{if("chat-button"===n.target.id)return null;e.current&&!e.current.contains(n.target)&&t()};n((()=>(document.addEventListener("click",A),()=>{document.removeEventListener("click",A)})))})(s,r);return e.createElement("div",{ref:s,id:"container",className:`fixed 2xl:w-[30%] xl:w-[40%] lg:w-[50%] md:w-[100%] sm:w-[100%] bottom-0 right-0 ${t?"block":"hidden"} `},e.createElement(p,{title:"ZIO Chat",defaultQuestion:"Write a question about ZIO!",websocketHost:o||"localhost",websocketPort:a||"8081",websocketEndpoint:i||"/chat",welcomeMessages:["🌟 Greetings from ZIO Chat! 🌟 Have questions about ZIO? Look no further! I'm here to be your ZIO guru. Whether you're a seasoned pro or just starting out, I've got answers tailored just for you. Fire away with your ZIO queries, and I'll hit you back with the best insights I've got. Let's dive into the world of ZIO together!","🔥 Ignite your ZIO journey with ZIO Chat! 🔥 Ready to unravel the intricacies of ZIO? As your trusty sidekick, I'm here to light the way. No matter if you're wandering through functional forests or traversing effectful landscapes, I've got answers to keep you on track. Your ZIO adventure starts here – ask me anything and let's explore together!","Hello! 😊 I'm your ZIO Chat Bot, designed to be your go-to resource for all things ZIO! Whether you're new to this powerful functional effect system or a seasoned pro, I'm here to assist you. ZIO empowers you to build concurrent and resilient applications in Scala, offering referential transparency, composable data types, type-safety, and more. So, go ahead and ask me anything about ZIO – I'm here to provide the answers you need! 🤖","Hi there! 👋 I'm ZIO Chat, your friendly neighborhood ZIO expert. I'm here to help you navigate the world of ZIO. Whether you're a seasoned pro or just starting out, fire away with your ZIO questions. I will hit you back with the best insights I've got. Let's dive into the world of ZIO together!","🎉 Hey there, ZIO aficionado! 🎉 Step into the ZIO wonderland with me as your guide. Whether you're a functional fanatic or just dipping your toes into the ZIO ecosystem, I'm here to make your journey smooth. Got ZIO questions? I've got answers! Let's navigate the ZIO universe together and unlock its infinite possibilities!","Hi, fellow coder! 🌟 Welcome to your ZIO adventure with the ZIO Chat Bot. 🚀 Let's master functional Scala together. From referential transparency to concurrent prowess, I've got your back. Ready to dive in? Your questions, my insights – let's conquer ZIO! 💡🤖"],fullScreen:!1}))}const h=n=>{const[A,r]=t(!1);return e.createElement(e.Fragment,null,e.createElement("button",{id:"chat-button",className:"fixed border-0 font-sans text-xl bg-orange-400 rounded-tl-md text-black px-3 py-2 hover:scale-95 transition text-ms bottom-0 right-0",onClick:()=>r(!0)},"ZIO Chat!"),e.createElement(k,{onClose:()=>r(!1),visible:A,websocketHost:n.websocketHost,websocketPort:n.websocketPort,websocketEndpoint:n.websocketEndpoint}))};export{h as ChatApp,m as ChatMessage,p as ChatPrompt,g as FeedbackForm,k as PopupChatWindow,d as References,c as RelatedQuestions,s as ThumbsDown,i as ThumbsUp};
|
|
1
|
+
import e,{useState as t,useEffect as n,useRef as r}from"react";import o from"highlight.js";import a from"react-markdown";function s(e,t,n,r){return new(n||(n=Promise))((function(o,a){function s(e){try{l(r.next(e))}catch(e){a(e)}}function i(e){try{l(r.throw(e))}catch(e){a(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,i)}l((r=r.apply(e,t||[])).next())}))}"function"==typeof SuppressedError&&SuppressedError;const i=()=>e.createElement(e.Fragment,null,e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.2,stroke:"currentColor",className:"dark:stroke-white w-6 h-6"},e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6.633 10.5c.806 0 1.533-.446 2.031-1.08a9.041 9.041 0 012.861-2.4c.723-.384 1.35-.956 1.653-1.715a4.498 4.498 0 00.322-1.672V3a.75.75 0 01.75-.75A2.25 2.25 0 0116.5 4.5c0 1.152-.26 2.243-.723 3.218-.266.558.107 1.282.725 1.282h3.126c1.026 0 1.945.694 2.054 1.715.045.422.068.85.068 1.285a11.95 11.95 0 01-2.649 7.521c-.388.482-.987.729-1.605.729H13.48c-.483 0-.964-.078-1.423-.23l-3.114-1.04a4.501 4.501 0 00-1.423-.23H5.904M14.25 9h2.25M5.904 18.75c.083.205.173.405.27.602.197.4-.078.898-.523.898h-.908c-.889 0-1.713-.518-1.972-1.368a12 12 0 01-.521-3.507c0-1.553.295-3.036.831-4.398C3.387 10.203 4.167 9.75 5 9.75h1.053c.472 0 .745.556.5.96a8.958 8.958 0 00-1.302 4.665c0 1.194.232 2.333.654 3.375z"}))),l=()=>e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.2,stroke:"currentColor",className:"dark:stroke-white w-6 h-6"},e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M7.5 15h2.25m8.024-9.75c.011.05.028.1.052.148.591 1.2.924 2.55.924 3.977a8.96 8.96 0 01-.999 4.125m.023-8.25c-.076-.365.183-.75.575-.75h.908c.889 0 1.713.518 1.972 1.368.339 1.11.521 2.287.521 3.507 0 1.553-.295 3.036-.831 4.398C20.613 14.547 19.833 15 19 15h-1.053c-.472 0-.745-.556-.5-.96a8.95 8.95 0 00.303-.54m.023-8.25H16.48a4.5 4.5 0 01-1.423-.23l-3.114-1.04a4.5 4.5 0 00-1.423-.23H6.504c-.618 0-1.217.247-1.605.729A11.95 11.95 0 002.25 12c0 .434.023.863.068 1.285C2.427 14.306 3.346 15 4.372 15h3.126c.618 0 .991.724.725 1.282A7.471 7.471 0 007.5 19.5a2.25 2.25 0 002.25 2.25.75.75 0 00.75-.75v-.633c0-.573.11-1.14.322-1.672.304-.76.93-1.33 1.653-1.715a9.04 9.04 0 002.86-2.4c.498-.634 1.226-1.08 2.032-1.08h.384"}));function c(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===n&&r.firstChild?r.insertBefore(o,r.firstChild):r.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}}c(".feedback-button {\n border-width: 0;\n border-top-width: 0;\n border-right-width: 0;\n border-bottom-width: 0;\n border-left-width: 0;\n}\n");const d=({chatHistory:r,baseHttpUrl:o})=>{const[a,c]=t(null),[d,h]=t(!1);n((()=>{c(null),h(!1)}),[]);const m=e=>s(void 0,void 0,void 0,(function*(){try{if(d)return;c(e);(yield fetch(`${o}/feedback/`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({chat_history:r,is_useful:e})})).ok?(console.log("Feedback submitted successfully"),h(!0)):console.error("Failed to submit feedback")}catch(e){console.error("Error submitting feedback:",e)}}));return e.createElement("form",null,e.createElement("button",{type:"button",title:"It was helpful to me!",className:"dark:bg-[#242526] bg-gray-100 feedback-button inline-block "+(d&&!a?"hidden":""),onClick:()=>m(!0),disabled:d},e.createElement(i,null)),e.createElement("button",{type:"button",title:"It didn't help me at all!",className:"dark:bg-[#242526] bg-gray-100 feedback-button inline-block "+(d&&a?"hidden":""),onClick:()=>m(!1),disabled:d},e.createElement(l,null)))};c(".custom-list {\n\n padding-left: 0.5rem;\n\n margin: 0px\n}\n\n\n");const h=({items:t,setQuestion:n})=>e.createElement(e.Fragment,null,t&&t.length>0?e.createElement("div",{className:"text-xs px-4 pt-2 rounded-br-none bg-blue-500 text-white"},e.createElement("h3",{className:"text-xs font-bold"},"Ask Related Questions:"),e.createElement("ol",{className:"list-inside custom-list"},t.map(((t,r)=>e.createElement("li",{key:r,className:"mr-2"},e.createElement("a",{className:"underline text-white text-sm hover:text-black",href:"#",onClick:e=>n(e.target.textContent)},t)))))):null),m=({items:t})=>e.createElement(e.Fragment,null,t&&t.length>0?e.createElement("div",{className:"text-xs px-4 py-2 rounded-b-lg rounded-br-none bg-blue-500 text-white"},e.createElement("h3",{className:"text-xs font-bold"},"Discover Related Sources:"),e.createElement("ol",{className:"flex flex-wrap list-inside pl-0"},t.map(((t,n)=>e.createElement("li",{key:n,className:"mr-2"},e.createElement("a",{className:"underline text-white text-sm hover:text-black",href:t.page_url},t.page_title)))))):null);c("pre code.hljs {\n display: block;\n overflow-x: auto;\n padding: 1em\n}\ncode.hljs {\n padding: 3px 5px\n}\n/*!\n Theme: GitHub\n Description: Light theme as seen on github.com\n Author: github.com\n Maintainer: @Hirse\n Updated: 2021-05-15\n\n Outdated base version: https://github.com/primer/github-syntax-light\n Current colors taken from GitHub's CSS\n*/\n.hljs {\n color: #24292e;\n background: #ffffff\n}\n.hljs-doctag,\n.hljs-keyword,\n.hljs-meta .hljs-keyword,\n.hljs-template-tag,\n.hljs-template-variable,\n.hljs-type,\n.hljs-variable.language_ {\n /* prettylights-syntax-keyword */\n color: #d73a49\n}\n.hljs-title,\n.hljs-title.class_,\n.hljs-title.class_.inherited__,\n.hljs-title.function_ {\n /* prettylights-syntax-entity */\n color: #6f42c1\n}\n.hljs-attr,\n.hljs-attribute,\n.hljs-literal,\n.hljs-meta,\n.hljs-number,\n.hljs-operator,\n.hljs-variable,\n.hljs-selector-attr,\n.hljs-selector-class,\n.hljs-selector-id {\n /* prettylights-syntax-constant */\n color: #005cc5\n}\n.hljs-regexp,\n.hljs-string,\n.hljs-meta .hljs-string {\n /* prettylights-syntax-string */\n color: #032f62\n}\n.hljs-built_in,\n.hljs-symbol {\n /* prettylights-syntax-variable */\n color: #e36209\n}\n.hljs-comment,\n.hljs-code,\n.hljs-formula {\n /* prettylights-syntax-comment */\n color: #6a737d\n}\n.hljs-name,\n.hljs-quote,\n.hljs-selector-tag,\n.hljs-selector-pseudo {\n /* prettylights-syntax-entity-tag */\n color: #22863a\n}\n.hljs-subst {\n /* prettylights-syntax-storage-modifier-import */\n color: #24292e\n}\n.hljs-section {\n /* prettylights-syntax-markup-heading */\n color: #005cc5;\n font-weight: bold\n}\n.hljs-bullet {\n /* prettylights-syntax-markup-list */\n color: #735c0f\n}\n.hljs-emphasis {\n /* prettylights-syntax-markup-italic */\n color: #24292e;\n font-style: italic\n}\n.hljs-strong {\n /* prettylights-syntax-markup-bold */\n color: #24292e;\n font-weight: bold\n}\n.hljs-addition {\n /* prettylights-syntax-markup-inserted */\n color: #22863a;\n background-color: #f0fff4\n}\n.hljs-deletion {\n /* prettylights-syntax-markup-deleted */\n color: #b31d28;\n background-color: #ffeef0\n}\n.hljs-char.escape_,\n.hljs-link,\n.hljs-params,\n.hljs-property,\n.hljs-punctuation,\n.hljs-tag {\n /* purposely ignored */\n \n}");const p=()=>e.createElement("svg",{stroke:"currentColor",className:"dark:fill-white w-8 h-8",width:"512",height:"512",strokeWidth:1.2,version:"1.1",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg"},e.createElement("path",{d:"m251.5 465.47c-2.2-0.79382-4.0658-1.4501-4.1462-1.4584-0.0804-8e-3 -11.213-14.603-24.738-32.433-13.526-17.83-25.783-33.355-27.239-34.5-2.5677-2.0197-3.6988-2.0819-37.881-2.0819-26.502 0-37.311-0.36376-43.615-1.4678-41.84-7.3275-73.739-38.446-83.067-81.032-1.0295-4.7003-1.3141-24.846-1.3141-93 0-87 0-87 2.3606-95.933 4.8879-18.497 12.559-32.605 24.787-45.587 9.2497-9.82 17.894-16.206 29.853-22.055 12.164-5.9487 22.475-8.7238 37-9.9582 14.341-1.2188 250.66-1.2188 265 0 14.525 1.2344 24.836 4.0095 37 9.9582 27.681 13.537 46.498 36.883 54.694 67.859 2.3061 8.7158 2.3061 8.7158 2.3061 95.716 0 91.914 0.0591 90.587-4.7047 105.5-6.7536 21.141-21.967 41.003-40.805 53.271-10.293 6.7034-17.59 10.036-29.49 13.469-8.8282 2.5465-9.7661 2.6072-49.147 3.1783-38.3 0.55544-40.249 0.67425-42.37 2.5822-1.2225 1.1-12.734 15.789-25.581 32.643-22.432 29.428-27.972 35.857-30.897 35.857-0.73782 0-1.9408 0.20627-2.6733 0.45837-0.73249 0.25211-3.1318-0.19112-5.3318-0.98494zm23.537-59.973c10.012-13.2 19.611-25.489 21.333-27.309s6.0438-4.7447 9.605-6.5c6.4748-3.1914 6.4748-3.1914 47.5-3.7939 45.163-0.66322 46.206-0.7918 60.055-7.4041 22.518-10.752 38.146-32.47 41.471-57.628 0.75544-5.7172 0.99241-33.69 0.74856-88.365-0.32659-73.226-0.50777-80.505-2.1398-85.964-7.6316-25.527-24.675-43.653-49.109-52.228-8-2.8078-8-2.8078-148.5-2.8078s-140.5 0-148.5 2.8078c-24.041 8.4376-41.205 26.366-48.686 50.854-2.2293 7.2975-2.2438 7.7874-2.5808 87.339-0.23126 54.58 0.01227 82.658 0.76639 88.365 3.3308 25.208 18.878 46.839 41.391 57.59 13.937 6.655 14.937 6.7788 60.109 7.4426 41 0.60245 41 0.60245 46.5 3.1926 3.025 1.4246 6.9095 3.7825 8.6322 5.2398 1.7227 1.4573 11.848 14.126 22.5 28.154 10.652 14.027 19.668 25.394 20.035 25.26 0.36691-0.13406 8.8583-11.044 18.87-24.244zm-113.54-158.39c-8.0155-2.0869-15.285-7.9248-19.132-15.365-0.91824-1.7757-1.8816-6.1929-2.1409-9.8161-0.7674-10.725 4.3824-20.221 13.724-25.305 18.472-10.054 40.351 2.8809 40.386 23.877 0.0238 14.063-10.461 25.41-24.837 26.879-2.75 0.28104-6.35 0.15949-8-0.2701zm87.306-0.4596c-4.9404-1.3809-6.2234-2.1606-11.678-7.0974-8.3404-7.5483-10.677-21.444-5.3274-31.684 4.7261-9.0467 14.275-14.868 24.388-14.868 19.531 0 32.73 20.777 24.459 38.5-2.5529 5.4705-9.0324 11.927-14.09 14.04-4.9964 2.0876-12.56 2.5602-17.752 1.1091zm88.987-3e-3c-6.3455-1.7731-12.159-5.9747-15.733-11.371-12.497-18.867 2.493-44.045 25.008-42.003 15.041 1.3638 25.769 13.807 24.706 28.656-0.25923 3.6232-1.2226 8.0404-2.1409 9.8161-6.175 11.941-19.731 18.285-31.84 14.902z"})),w=()=>e.createElement("svg",{version:"1.1",stroke:"currentColor",className:"dark:fill-white w-8 h-8 pt-2",width:"546.1333",height:"546.1333",viewBox:"0 0 546.1333 546.1333",xmlns:"http://www.w3.org/2000/svg"},e.createElement("path",{d:"M 248.18949,545.01565 C 140.78277,536.1654 43.347437,457.67748 12.625464,354.27462 -19.122727,256.23986 11.148578,141.59748 88.05005,72.75365 170.6778,-6.3870784 305.25108,-22.727519 404.55416,34.075212 c 90.71756,48.808052 148.5915,152.240698 140.72412,255.265468 -4.721,117.18135 -94.83362,223.7082 -209.03208,249.29175 -28.74608,6.97865 -58.63168,7.99917 -88.05671,6.38322 z m 59.01049,-33.47524 c 44.11214,-6.14054 85.94851,-25.33589 120.34908,-53.46875 -7.50443,-76.23751 -78.33803,-139.58196 -155.13069,-137.4082 -75.87947,-1.11955 -147.39136,61.9662 -153.18566,137.95022 51.92152,43.01255 121.21529,62.41741 187.96727,52.92673 z M 95.23624,417.23455 c 17.04457,-53.94473 60.52333,-97.03721 112.76027,-117.54871 -38.16232,-27.24165 -58.08238,-77.27541 -46.17288,-123.04103 13.97512,-63.62214 88.10784,-103.424302 148.92029,-80.419223 54.27562,17.927063 88.7395,80.021723 73.57777,135.512803 -6.24704,27.51678 -24.27076,50.99914 -46.18838,68.09848 55.60255,21.00409 99.9566,68.92585 115.77754,126.329 11.90975,-0.3504 25.78141,-30.94799 34.70002,-45.64418 C 534.17056,292.25875 516.88138,176.40132 446.32219,106.18998 376.66755,30.895815 256.59496,9.9644804 165.64534,57.566388 73.710219,101.90396 17.392768,209.22775 35.202048,310.08314 c 6.457967,44.14691 25.903239,86.34538 55.464613,119.76818 1.924099,-4.05191 3.127315,-8.38542 4.569579,-12.61677 z m 188.6392,-130.78572 c 51.57064,-4.49807 86.2598,-64.54174 66.52297,-111.81618 -17.42381,-48.17969 -82.7984,-69.2237 -124.13766,-38.07569 -43.14422,27.09101 -48.02204,94.62224 -9.98242,128.12649 17.76999,16.83784 43.29836,25.47902 67.59711,21.76538 z"}));var g;!function(e){e.User="user",e.Bot="bot"}(g||(g={}));var u=g;const b=r=>{const[s,i]=t(r.chatHistory);n((()=>{r.highlight&&r.userType===u.Bot&&document.querySelectorAll("#"+r.id+" pre code").forEach((e=>{o.highlightElement(e)}))}),[r.highlight,r.userType,r.id]),n((()=>{i(r.chatHistory)}),[r]);let l=null;if(r.userType===u.User)l=e.createElement("div",{className:"w-full chat-message user-message text-base flex flex-row space-x-2",id:r.id},e.createElement(w,null),e.createElement(a,{className:"px-4 py-2 rounded-lg rounded-bl-none bg-gray-300 text-gray-600"},r.text));else if(r.userType===u.Bot)if(String(r.text).includes("Related Questions:")){const t=r.text.split("Related Questions:"),n=(c=t[1].trim(),c.split(/\n/).filter((e=>e.length>0)).map((e=>e.trim())).filter((e=>/\d+|[*-]/.test(e)))).map((e=>function(e){return e.replace(/^\d+\.|[*-]\s*/,"")}(e)));l=e.createElement("div",{className:"w-full chat-message bot-message text-base flex flex-row space-x-2",id:r.id},e.createElement(p,null),e.createElement("div",{className:"w-full"},e.createElement(a,{className:"px-4 py-2 space-y-2 rounded-t-lg bg-blue-600 text-white"},t[0]),e.createElement(h,{items:n,setQuestion:r.setQuestion}),e.createElement(m,{items:r.references})),e.createElement(d,{chatHistory:s.slice(1,r.index+1),baseHttpUrl:r.baseHttpUrl}))}else l=e.createElement("div",{className:"w-full chat-message bot-message text-base flex flex-row space-x-2",id:r.id},e.createElement(p,null),e.createElement("div",{className:"w-full"},e.createElement(a,{className:"px-4 py-2 space-y-2 rounded-t-lg bg-blue-600 text-white"},r.text),e.createElement(m,{items:r.references})),e.createElement(d,{chatHistory:s.slice(1,r.index+1),baseHttpUrl:r.baseHttpUrl}));var c;return l};c('*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n.container {\n width: 100%;\n}\n@media (min-width: 640px) {\n .container {\n max-width: 640px;\n }\n}\n@media (min-width: 768px) {\n .container {\n max-width: 768px;\n }\n}\n@media (min-width: 1024px) {\n .container {\n max-width: 1024px;\n }\n}\n@media (min-width: 1280px) {\n .container {\n max-width: 1280px;\n }\n}\n@media (min-width: 1536px) {\n .container {\n max-width: 1536px;\n }\n}\n.visible {\n visibility: visible;\n}\n.fixed {\n position: fixed;\n}\n.bottom-0 {\n bottom: 0px;\n}\n.bottom-5 {\n bottom: 1.25rem;\n}\n.left-5 {\n left: 1.25rem;\n}\n.right-0 {\n right: 0px;\n}\n.right-5 {\n right: 1.25rem;\n}\n.mb-6 {\n margin-bottom: 1.5rem;\n}\n.mr-2 {\n margin-right: 0.5rem;\n}\n.mt-4 {\n margin-top: 1rem;\n}\n.block {\n display: block;\n}\n.inline-block {\n display: inline-block;\n}\n.flex {\n display: flex;\n}\n.hidden {\n display: none;\n}\n.h-10 {\n height: 2.5rem;\n}\n.h-6 {\n height: 1.5rem;\n}\n.h-8 {\n height: 2rem;\n}\n.h-screen {\n height: 100vh;\n}\n.max-h-screen {\n max-height: 100vh;\n}\n.w-6 {\n width: 1.5rem;\n}\n.w-8 {\n width: 2rem;\n}\n.w-full {\n width: 100%;\n}\n.list-inside {\n list-style-position: inside;\n}\n.flex-row {\n flex-direction: row;\n}\n.flex-col {\n flex-direction: column;\n}\n.flex-wrap {\n flex-wrap: wrap;\n}\n.justify-between {\n justify-content: space-between;\n}\n.space-x-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.5rem * var(--tw-space-x-reverse));\n margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));\n}\n.space-y-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));\n}\n.space-y-4 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(1rem * var(--tw-space-y-reverse));\n}\n.overflow-y-scroll {\n overflow-y: scroll;\n}\n.scroll-smooth {\n scroll-behavior: smooth;\n}\n.rounded-lg {\n border-radius: 0.5rem;\n}\n.rounded-md {\n border-radius: 0.375rem;\n}\n.rounded-b-lg {\n border-bottom-right-radius: 0.5rem;\n border-bottom-left-radius: 0.5rem;\n}\n.rounded-t-lg {\n border-top-left-radius: 0.5rem;\n border-top-right-radius: 0.5rem;\n}\n.rounded-bl-none {\n border-bottom-left-radius: 0px;\n}\n.rounded-br-none {\n border-bottom-right-radius: 0px;\n}\n.rounded-tl-md {\n border-top-left-radius: 0.375rem;\n}\n.border-0 {\n border-width: 0px;\n}\n.bg-black {\n --tw-bg-opacity: 1;\n background-color: rgb(0 0 0 / var(--tw-bg-opacity));\n}\n.bg-blue-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n}\n.bg-blue-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(37 99 235 / var(--tw-bg-opacity));\n}\n.bg-gray-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity));\n}\n.bg-gray-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(229 231 235 / var(--tw-bg-opacity));\n}\n.bg-gray-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(209 213 219 / var(--tw-bg-opacity));\n}\n.bg-orange-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(251 146 60 / var(--tw-bg-opacity));\n}\n.p-5 {\n padding: 1.25rem;\n}\n.px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n.px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n.px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n}\n.py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n.pl-0 {\n padding-left: 0px;\n}\n.pt-2 {\n padding-top: 0.5rem;\n}\n.font-sans {\n font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";\n}\n.text-3xl {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n.text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n.text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n.text-xs {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n.font-bold {\n font-weight: 700;\n}\n.font-normal {\n font-weight: 400;\n}\n.text-\\[red\\] {\n --tw-text-opacity: 1;\n color: rgb(255 0 0 / var(--tw-text-opacity));\n}\n.text-black {\n --tw-text-opacity: 1;\n color: rgb(0 0 0 / var(--tw-text-opacity));\n}\n.text-gray-600 {\n --tw-text-opacity: 1;\n color: rgb(75 85 99 / var(--tw-text-opacity));\n}\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n.underline {\n text-decoration-line: underline;\n}\n.placeholder-black::placeholder {\n --tw-placeholder-opacity: 1;\n color: rgb(0 0 0 / var(--tw-placeholder-opacity));\n}\n.placeholder-gray-500::placeholder {\n --tw-placeholder-opacity: 1;\n color: rgb(107 114 128 / var(--tw-placeholder-opacity));\n}\n.filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n#scroller * {\n overflow-anchor: none;\n}\n\n#anchor {\n overflow-anchor: auto;\n height: 1px;\n}\n\np code {\n border-radius: 3px;\n}\n\n.chat-message p {\n margin: 0;\n}\n\n.user-message p code {\n background-color: aliceblue;\n}\n\n.bot-message p code {\n background-color: cornflowerblue;\n}\n\n.bot-message li > code {\n background-color: cornflowerblue;\n}\n\nol {\n list-style-type: decimal;\n margin: 1.0em;\n}\n\nli {\n padding: 0.2em;\n}\n\n#ChatPrompt ::-webkit-scrollbar {\n display: none;\n}\n\npre {\n color: black;\n white-space: pre-wrap;\n word-break: break-word;\n}\n\n.hover\\:scale-95:hover {\n --tw-scale-x: .95;\n --tw-scale-y: .95;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.hover\\:bg-gray-900:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(17 24 39 / var(--tw-bg-opacity));\n}\n\n.hover\\:text-black:hover {\n --tw-text-opacity: 1;\n color: rgb(0 0 0 / var(--tw-text-opacity));\n}\n\n.focus\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n.disabled\\:cursor-not-allowed:disabled {\n cursor: not-allowed;\n}\n\n.disabled\\:opacity-75:disabled {\n opacity: 0.75;\n}\n\n:is([data-theme="dark"] .dark\\:bg-\\[\\#242526\\]) {\n --tw-bg-opacity: 1;\n background-color: rgb(36 37 38 / var(--tw-bg-opacity));\n}\n\n:is([data-theme="dark"] .dark\\:bg-\\[\\#2b2e30\\]) {\n --tw-bg-opacity: 1;\n background-color: rgb(43 46 48 / var(--tw-bg-opacity));\n}\n\n:is([data-theme="dark"] .dark\\:fill-white) {\n fill: #fff;\n}\n\n:is([data-theme="dark"] .dark\\:stroke-white) {\n stroke: #fff;\n}\n\n:is([data-theme="dark"] .dark\\:text-white) {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n\n:is([data-theme="dark"] .dark\\:placeholder-white)::placeholder {\n --tw-placeholder-opacity: 1;\n color: rgb(255 255 255 / var(--tw-placeholder-opacity));\n}\n\n@media (min-width: 640px) {\n .sm\\:w-\\[100\\%\\] {\n width: 100%;\n }\n}\n\n@media (min-width: 768px) {\n .md\\:w-\\[100\\%\\] {\n width: 100%;\n }\n}\n\n@media (min-width: 1024px) {\n .lg\\:w-\\[50\\%\\] {\n width: 50%;\n }\n}\n\n@media (min-width: 1280px) {\n .xl\\:w-\\[40\\%\\] {\n width: 40%;\n }\n}\n\n@media (min-width: 1536px) {\n .\\32xl\\:w-\\[30\\%\\] {\n width: 30%;\n }\n}\n');const f=t=>{const{title:n="ByteBrain ChatBot",defaultQuestion:r="Send your message",websocketHost:o,websocketPort:a,websocketEndpoint:s,welcomeMessages:i,fullScreen:l}=t,c=i.map((e=>({userType:u.Bot,message:e,completed:!0}))),[d,h]=e.useState(r),[m,p]=e.useState([function(e){const t=Math.floor(Math.random()*e.length);return e.splice(t,1)[0]}(c)]),w=o||window.location.hostname,g="80"===a?"":":"+a,f="80"===a?"wss://":"ws://",y=("80"===a?"https://":"http://")+w+g;const x=()=>{const e=new WebSocket(f+w+g+s);e.onopen=t=>{p((e=>e.concat([{userType:u.User,message:d,completed:!0}])));const n=m.map((e=>e.message)).slice(1),r={question:d,history:n};e.send(JSON.stringify(r))},e.onmessage=function(e){const t=JSON.parse(e.data),n=t.token,r=t.references,o=t.completed;p((e=>{if(0===e.length||e[e.length-1].userType===u.User)return[...e,{userType:u.Bot,message:n,completed:o}];{const t=[...e];return t[t.length-1]=Object.assign(Object.assign({},t[t.length-1]),{message:t[t.length-1].message+n,references:r,completed:o}),t}}))}};return e.createElement("div",{id:"ChatPrompt",className:"dark:bg-[#242526] justify-between flex flex-col p-5 rounded-md bg-gray-100 max-h-screen "+(l?"h-screen":"")},e.createElement("h1",{className:"text-[red] text-3xl font-bold mb-6"},n),e.createElement("div",{id:"scroller",className:"flex flex-col space-y-4 overflow-y-scroll scroll-smooth"},m.map(((t,n)=>e.createElement(b,{key:n,id:"chat"+n,index:n,userType:t.userType,text:t.message,references:t.references,highlight:t.completed,chatHistory:m,baseHttpUrl:y,setQuestion:h}))),e.createElement("div",{id:"anchor"})),e.createElement("form",{onSubmit:e=>{e.preventDefault(),x(),e.target.reset(),h(r)},className:"flex bottom-5 left-5 right-5 h-10 mt-4"},e.createElement("input",{type:"text",id:"promptInput",onChange:e=>{h(e.target.value)},className:`w-full px-4 py-2 \n border-0\n rounded-md\n text-base\n text-black\n dark:text-white\n bg-gray-200\n dark:bg-[#2b2e30]\n focus:outline-none\n font-sans\n font-normal\n ${d===r?"placeholder-gray-500":"placeholder-black dark:placeholder-white"}\n `,placeholder:d}),e.createElement("button",{disabled:0!==m.length&&(m[m.length-1].userType==u.User||(m[m.length-1].userType==u.Bot?!m[m.length-1].completed:void 0)),id:"generateBtn",type:"submit",className:"px-6 rounded-md border-0 bg-black text-base text-white hover:bg-gray-900 focus:outline-none disabled:opacity-75 disabled:cursor-not-allowed font-sans font-normal"},"Send")))},y=({visible:t,onClose:o,websocketHost:a,websocketPort:s,websocketEndpoint:i})=>{const l=r(null);((e,t)=>{const r=n=>{var r;if("chat-button"===(null===(r=n.target)||void 0===r?void 0:r.id))return null;e.current&&!e.current.contains(n.target)&&t()};n((()=>(document.addEventListener("click",r),()=>{document.removeEventListener("click",r)})),[t,e])})(l,o);return e.createElement("div",{ref:l,id:"container",className:`fixed 2xl:w-[30%] xl:w-[40%] lg:w-[50%] md:w-[100%] sm:w-[100%] bottom-0 right-0 ${t?"block":"hidden"} `},e.createElement(f,{title:"ZIO Chat",defaultQuestion:"Write a question about ZIO!",websocketHost:a||"localhost",websocketPort:s||"8081",websocketEndpoint:i||"/chat",welcomeMessages:["🌟 Greetings from ZIO Chat! 🌟 Have questions about ZIO? Look no further! I'm here to be your ZIO guru. Whether you're a seasoned pro or just starting out, I've got answers tailored just for you. Fire away with your ZIO queries, and I'll hit you back with the best insights I've got. Let's dive into the world of ZIO together!","🔥 Ignite your ZIO journey with ZIO Chat! 🔥 Ready to unravel the intricacies of ZIO? As your trusty sidekick, I'm here to light the way. No matter if you're wandering through functional forests or traversing effectful landscapes, I've got answers to keep you on track. Your ZIO adventure starts here – ask me anything and let's explore together!","Hello! 😊 I'm your ZIO Chat Bot, designed to be your go-to resource for all things ZIO! Whether you're new to this powerful functional effect system or a seasoned pro, I'm here to assist you. ZIO empowers you to build concurrent and resilient applications in Scala, offering referential transparency, composable data types, type-safety, and more. So, go ahead and ask me anything about ZIO – I'm here to provide the answers you need! 🤖","Hi there! 👋 I'm ZIO Chat, your friendly neighborhood ZIO expert. I'm here to help you navigate the world of ZIO. Whether you're a seasoned pro or just starting out, fire away with your ZIO questions. I will hit you back with the best insights I've got. Let's dive into the world of ZIO together!","🎉 Hey there, ZIO aficionado! 🎉 Step into the ZIO wonderland with me as your guide. Whether you're a functional fanatic or just dipping your toes into the ZIO ecosystem, I'm here to make your journey smooth. Got ZIO questions? I've got answers! Let's navigate the ZIO universe together and unlock its infinite possibilities!","Hi, fellow coder! 🌟 Welcome to your ZIO adventure with the ZIO Chat Bot. 🚀 Let's master functional Scala together. From referential transparency to concurrent prowess, I've got your back. Ready to dive in? Your questions, my insights – let's conquer ZIO! 💡🤖"],fullScreen:!1}))},x=n=>{const[r,o]=t(!1);return e.createElement(e.Fragment,null,e.createElement("button",{id:"chat-button",className:"fixed border-0 font-sans text-xl bg-orange-400 rounded-tl-md text-black px-3 py-2 hover:scale-95 transition text-ms bottom-0 right-0",onClick:()=>o(!0)},"ZIO Chat!"),e.createElement(y,{onClose:()=>o(!1),visible:r,websocketHost:n.websocketHost,websocketPort:n.websocketPort,websocketEndpoint:n.websocketEndpoint}))};export{x as ChatApp,b as ChatMessage,f as ChatPrompt,d as FeedbackForm,y as PopupChatWindow,m as References,h as RelatedQuestions,l as ThumbsDown,i as ThumbsUp};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../node_modules/tslib/tslib.es6.js","../src/src/stories/thumbs-up.tsx","../src/src/stories/thumbs-down.tsx","../node_modules/style-inject/dist/style-inject.es.js","../src/src/stories/FeedbackForm.tsx","../src/src/stories/ChatPrompt/RelatedQuestions.tsx","../src/src/stories/ChatPrompt/References.tsx","../src/stories/ChatPrompt/bot.png","../src/src/stories/ChatPrompt/ChatMessage.tsx","../src/stories/ChatPrompt/user.png","../src/src/stories/ChatPrompt/ChatPrompt.tsx","../src/src/stories/ChatPrompt/PopupChatWindow.tsx","../src/src/stories/ChatPrompt/ChatApp.tsx"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n",null,null,"function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n",null,null,null,"var img = \"data:image/png;base64,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\";\n export default img;",null,"var img = \"data:image/png;base64,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\";\n export default img;",null,null,null],"names":["__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","SuppressedError","ThumbsUp","React","createElement","Fragment","xmlns","fill","viewBox","strokeWidth","stroke","className","strokeLinecap","strokeLinejoin","d","ThumbsDown","styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","FeedbackForm","props","chatHistory","setChatHistory","useState","isUseful","setIsUseful","feedbackSubmitted","setFeedbackSubmitted","useEffect","handleSubmit","fetch","baseHttpUrl","method","headers","body","JSON","stringify","chat_history","is_useful","ok","console","log","error","title","onClick","disabled","RelatedQuestions","undefined","items","length","map","item","index","key","href","event","setQuestion","target","textContent","References","page_url","page_title","img","ChatMessage","chatMessage","highlight","userType","querySelectorAll","id","forEach","el","hljs","highlightElement","src","alt","ReactMarkdown","text","String","includes","response","split","related_questions","string","trim","filter","line","l","test","replace","remove_number_fromHead","bot","references","slice","ChatPrompt","defaultQuestion","websocketHost","websocketPort","websocketEndpoint","welcomeMessages","fullScreen","greetings","m","message","completed","question","messages","setMessages","arr","randomIndex","Math","floor","random","splice","getRandom","host","window","location","hostname","port","protocol","handleClick","ws","WebSocket","onopen","concat","history","data","send","onmessage","parse","word","token","updatedMessages","Object","assign","onSubmit","preventDefault","reset","onChange","placeholder","PopupChatWindow","visible","onClose","useRef","callback","current","contains","addEventListener","removeEventListener","useClickOutside","ChatApp","isOpen","setIsOpen"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../node_modules/tslib/tslib.es6.js","../src/src/stories/thumbs-up.tsx","../src/src/stories/thumbs-down.tsx","../node_modules/style-inject/dist/style-inject.es.js","../src/src/stories/FeedbackForm.tsx","../src/src/stories/RelatedQuestions.tsx","../src/src/stories/References.tsx","../src/src/stories/Bot.tsx","../src/src/stories/User.tsx","../src/src/stories/UserTypes.tsx","../src/src/stories/ChatMessage.tsx","../src/src/stories/ChatPrompt.tsx","../src/src/stories/PopupChatWindow.tsx","../src/src/stories/ChatApp.tsx"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n",null,null,"function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n",null,null,null,null,null,null,null,null,null,null],"names":["__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","SuppressedError","ThumbsUp","React","createElement","Fragment","xmlns","fill","viewBox","strokeWidth","stroke","className","strokeLinecap","strokeLinejoin","d","ThumbsDown","styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","FeedbackForm","chatHistory","baseHttpUrl","isUseful","setIsUseful","useState","feedbackSubmitted","setFeedbackSubmitted","useEffect","handleSubmit","fetch","method","headers","body","JSON","stringify","chat_history","is_useful","ok","console","log","error","title","onClick","disabled","RelatedQuestions","items","setQuestion","length","map","item","index","key","href","event","target","textContent","References","page_url","page_title","Bot","width","height","version","User","UserTypes","UserTypes$1","ChatMessage","props","setChatHistory","highlight","userType","querySelectorAll","id","forEach","el","hljs","highlightElement","chatMessage","ReactMarkdown","text","String","includes","response","split","related_questions","string","trim","filter","line","l","test","replace","remove_number_fromHead","references","slice","ChatPrompt","defaultQuestion","websocketHost","websocketPort","websocketEndpoint","welcomeMessages","fullScreen","greetings","m","message","completed","question","messages","setMessages","arr","randomIndex","Math","floor","random","splice","getRandom","host","window","location","hostname","port","protocol","handleClick","ws","WebSocket","onopen","concat","history","data","send","onmessage","parse","word","token","updatedMessages","Object","assign","onSubmit","preventDefault","reset","onChange","placeholder","PopupChatWindow","visible","onClose","useRef","callback","_a","current","contains","addEventListener","removeEventListener","useClickOutside","ChatApp","isOpen","setIsOpen"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bytebrain.ai/bytebrain-ui",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.8",
|
|
4
4
|
"engines": {
|
|
5
5
|
"node": ">=16.x"
|
|
6
6
|
},
|
|
@@ -104,6 +104,7 @@
|
|
|
104
104
|
"rollup-plugin-terser": "^7.0.2",
|
|
105
105
|
"storybook": "^7.5.2",
|
|
106
106
|
"storybook-addon-themes": "^6.1.0",
|
|
107
|
+
"storybook-dark-mode": "^3.0.1",
|
|
107
108
|
"storybook-tailwind-dark-mode": "^1.0.22",
|
|
108
109
|
"tailwindcss": "^3.3.5",
|
|
109
110
|
"typescript": "^4.9.5",
|