@bytebrain.ai/bytebrain-ui 0.0.1 → 0.0.3

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.
Files changed (2) hide show
  1. package/dist/index.js +1 -859
  2. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -1,859 +1 @@
1
- import React, { useState, useEffect, useRef } from 'react';
2
- import hljs from 'highlight.js';
3
- import ReactMarkdown from 'react-markdown';
4
-
5
- var ThumbsUp = function ThumbsUp() {
6
- return /*#__PURE__*/React.createElement("svg", {
7
- xmlns: "http://www.w3.org/2000/svg",
8
- fill: "none",
9
- viewBox: "0 0 24 24",
10
- strokeWidth: 1.5,
11
- stroke: "currentColor",
12
- className: "w-6 h-6"
13
- }, /*#__PURE__*/React.createElement("path", {
14
- strokeLinecap: "round",
15
- strokeLinejoin: "round",
16
- 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"
17
- }));
18
- };
19
-
20
- var ThumbsDown = function ThumbsDown() {
21
- return /*#__PURE__*/React.createElement("svg", {
22
- xmlns: "http://www.w3.org/2000/svg",
23
- fill: "none",
24
- viewBox: "0 0 24 24",
25
- strokeWidth: 1.5,
26
- stroke: "currentColor",
27
- className: "w-6 h-6"
28
- }, /*#__PURE__*/React.createElement("path", {
29
- strokeLinecap: "round",
30
- strokeLinejoin: "round",
31
- 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"
32
- }));
33
- };
34
-
35
- function _iterableToArrayLimit(r, l) {
36
- var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
37
- if (null != t) {
38
- var e,
39
- n,
40
- i,
41
- u,
42
- a = [],
43
- f = !0,
44
- o = !1;
45
- try {
46
- if (i = (t = t.call(r)).next, 0 === l) {
47
- if (Object(t) !== t) return;
48
- f = !1;
49
- } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
50
- } catch (r) {
51
- o = !0, n = r;
52
- } finally {
53
- try {
54
- if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return;
55
- } finally {
56
- if (o) throw n;
57
- }
58
- }
59
- return a;
60
- }
61
- }
62
- function ownKeys(e, r) {
63
- var t = Object.keys(e);
64
- if (Object.getOwnPropertySymbols) {
65
- var o = Object.getOwnPropertySymbols(e);
66
- r && (o = o.filter(function (r) {
67
- return Object.getOwnPropertyDescriptor(e, r).enumerable;
68
- })), t.push.apply(t, o);
69
- }
70
- return t;
71
- }
72
- function _objectSpread2(e) {
73
- for (var r = 1; r < arguments.length; r++) {
74
- var t = null != arguments[r] ? arguments[r] : {};
75
- r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {
76
- _defineProperty(e, r, t[r]);
77
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {
78
- Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
79
- });
80
- }
81
- return e;
82
- }
83
- function _regeneratorRuntime() {
84
- _regeneratorRuntime = function () {
85
- return e;
86
- };
87
- var t,
88
- e = {},
89
- r = Object.prototype,
90
- n = r.hasOwnProperty,
91
- o = Object.defineProperty || function (t, e, r) {
92
- t[e] = r.value;
93
- },
94
- i = "function" == typeof Symbol ? Symbol : {},
95
- a = i.iterator || "@@iterator",
96
- c = i.asyncIterator || "@@asyncIterator",
97
- u = i.toStringTag || "@@toStringTag";
98
- function define(t, e, r) {
99
- return Object.defineProperty(t, e, {
100
- value: r,
101
- enumerable: !0,
102
- configurable: !0,
103
- writable: !0
104
- }), t[e];
105
- }
106
- try {
107
- define({}, "");
108
- } catch (t) {
109
- define = function (t, e, r) {
110
- return t[e] = r;
111
- };
112
- }
113
- function wrap(t, e, r, n) {
114
- var i = e && e.prototype instanceof Generator ? e : Generator,
115
- a = Object.create(i.prototype),
116
- c = new Context(n || []);
117
- return o(a, "_invoke", {
118
- value: makeInvokeMethod(t, r, c)
119
- }), a;
120
- }
121
- function tryCatch(t, e, r) {
122
- try {
123
- return {
124
- type: "normal",
125
- arg: t.call(e, r)
126
- };
127
- } catch (t) {
128
- return {
129
- type: "throw",
130
- arg: t
131
- };
132
- }
133
- }
134
- e.wrap = wrap;
135
- var h = "suspendedStart",
136
- l = "suspendedYield",
137
- f = "executing",
138
- s = "completed",
139
- y = {};
140
- function Generator() {}
141
- function GeneratorFunction() {}
142
- function GeneratorFunctionPrototype() {}
143
- var p = {};
144
- define(p, a, function () {
145
- return this;
146
- });
147
- var d = Object.getPrototypeOf,
148
- v = d && d(d(values([])));
149
- v && v !== r && n.call(v, a) && (p = v);
150
- var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);
151
- function defineIteratorMethods(t) {
152
- ["next", "throw", "return"].forEach(function (e) {
153
- define(t, e, function (t) {
154
- return this._invoke(e, t);
155
- });
156
- });
157
- }
158
- function AsyncIterator(t, e) {
159
- function invoke(r, o, i, a) {
160
- var c = tryCatch(t[r], t, o);
161
- if ("throw" !== c.type) {
162
- var u = c.arg,
163
- h = u.value;
164
- return h && "object" == typeof h && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) {
165
- invoke("next", t, i, a);
166
- }, function (t) {
167
- invoke("throw", t, i, a);
168
- }) : e.resolve(h).then(function (t) {
169
- u.value = t, i(u);
170
- }, function (t) {
171
- return invoke("throw", t, i, a);
172
- });
173
- }
174
- a(c.arg);
175
- }
176
- var r;
177
- o(this, "_invoke", {
178
- value: function (t, n) {
179
- function callInvokeWithMethodAndArg() {
180
- return new e(function (e, r) {
181
- invoke(t, n, e, r);
182
- });
183
- }
184
- return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
185
- }
186
- });
187
- }
188
- function makeInvokeMethod(e, r, n) {
189
- var o = h;
190
- return function (i, a) {
191
- if (o === f) throw new Error("Generator is already running");
192
- if (o === s) {
193
- if ("throw" === i) throw a;
194
- return {
195
- value: t,
196
- done: !0
197
- };
198
- }
199
- for (n.method = i, n.arg = a;;) {
200
- var c = n.delegate;
201
- if (c) {
202
- var u = maybeInvokeDelegate(c, n);
203
- if (u) {
204
- if (u === y) continue;
205
- return u;
206
- }
207
- }
208
- if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) {
209
- if (o === h) throw o = s, n.arg;
210
- n.dispatchException(n.arg);
211
- } else "return" === n.method && n.abrupt("return", n.arg);
212
- o = f;
213
- var p = tryCatch(e, r, n);
214
- if ("normal" === p.type) {
215
- if (o = n.done ? s : l, p.arg === y) continue;
216
- return {
217
- value: p.arg,
218
- done: n.done
219
- };
220
- }
221
- "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg);
222
- }
223
- };
224
- }
225
- function maybeInvokeDelegate(e, r) {
226
- var n = r.method,
227
- o = e.iterator[n];
228
- if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y;
229
- var i = tryCatch(o, e.iterator, r.arg);
230
- if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y;
231
- var a = i.arg;
232
- return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y);
233
- }
234
- function pushTryEntry(t) {
235
- var e = {
236
- tryLoc: t[0]
237
- };
238
- 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);
239
- }
240
- function resetTryEntry(t) {
241
- var e = t.completion || {};
242
- e.type = "normal", delete e.arg, t.completion = e;
243
- }
244
- function Context(t) {
245
- this.tryEntries = [{
246
- tryLoc: "root"
247
- }], t.forEach(pushTryEntry, this), this.reset(!0);
248
- }
249
- function values(e) {
250
- if (e || "" === e) {
251
- var r = e[a];
252
- if (r) return r.call(e);
253
- if ("function" == typeof e.next) return e;
254
- if (!isNaN(e.length)) {
255
- var o = -1,
256
- i = function next() {
257
- for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;
258
- return next.value = t, next.done = !0, next;
259
- };
260
- return i.next = i;
261
- }
262
- }
263
- throw new TypeError(typeof e + " is not iterable");
264
- }
265
- return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", {
266
- value: GeneratorFunctionPrototype,
267
- configurable: !0
268
- }), o(GeneratorFunctionPrototype, "constructor", {
269
- value: GeneratorFunction,
270
- configurable: !0
271
- }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) {
272
- var e = "function" == typeof t && t.constructor;
273
- return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name));
274
- }, e.mark = function (t) {
275
- return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t;
276
- }, e.awrap = function (t) {
277
- return {
278
- __await: t
279
- };
280
- }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {
281
- return this;
282
- }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {
283
- void 0 === i && (i = Promise);
284
- var a = new AsyncIterator(wrap(t, r, n, o), i);
285
- return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {
286
- return t.done ? t.value : a.next();
287
- });
288
- }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () {
289
- return this;
290
- }), define(g, "toString", function () {
291
- return "[object Generator]";
292
- }), e.keys = function (t) {
293
- var e = Object(t),
294
- r = [];
295
- for (var n in e) r.push(n);
296
- return r.reverse(), function next() {
297
- for (; r.length;) {
298
- var t = r.pop();
299
- if (t in e) return next.value = t, next.done = !1, next;
300
- }
301
- return next.done = !0, next;
302
- };
303
- }, e.values = values, Context.prototype = {
304
- constructor: Context,
305
- reset: function (e) {
306
- if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);
307
- },
308
- stop: function () {
309
- this.done = !0;
310
- var t = this.tryEntries[0].completion;
311
- if ("throw" === t.type) throw t.arg;
312
- return this.rval;
313
- },
314
- dispatchException: function (e) {
315
- if (this.done) throw e;
316
- var r = this;
317
- function handle(n, o) {
318
- return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o;
319
- }
320
- for (var o = this.tryEntries.length - 1; o >= 0; --o) {
321
- var i = this.tryEntries[o],
322
- a = i.completion;
323
- if ("root" === i.tryLoc) return handle("end");
324
- if (i.tryLoc <= this.prev) {
325
- var c = n.call(i, "catchLoc"),
326
- u = n.call(i, "finallyLoc");
327
- if (c && u) {
328
- if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
329
- if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
330
- } else if (c) {
331
- if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
332
- } else {
333
- if (!u) throw new Error("try statement without catch or finally");
334
- if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
335
- }
336
- }
337
- }
338
- },
339
- abrupt: function (t, e) {
340
- for (var r = this.tryEntries.length - 1; r >= 0; --r) {
341
- var o = this.tryEntries[r];
342
- if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) {
343
- var i = o;
344
- break;
345
- }
346
- }
347
- i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);
348
- var a = i ? i.completion : {};
349
- return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a);
350
- },
351
- complete: function (t, e) {
352
- if ("throw" === t.type) throw t.arg;
353
- return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y;
354
- },
355
- finish: function (t) {
356
- for (var e = this.tryEntries.length - 1; e >= 0; --e) {
357
- var r = this.tryEntries[e];
358
- if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;
359
- }
360
- },
361
- catch: function (t) {
362
- for (var e = this.tryEntries.length - 1; e >= 0; --e) {
363
- var r = this.tryEntries[e];
364
- if (r.tryLoc === t) {
365
- var n = r.completion;
366
- if ("throw" === n.type) {
367
- var o = n.arg;
368
- resetTryEntry(r);
369
- }
370
- return o;
371
- }
372
- }
373
- throw new Error("illegal catch attempt");
374
- },
375
- delegateYield: function (e, r, n) {
376
- return this.delegate = {
377
- iterator: values(e),
378
- resultName: r,
379
- nextLoc: n
380
- }, "next" === this.method && (this.arg = t), y;
381
- }
382
- }, e;
383
- }
384
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
385
- try {
386
- var info = gen[key](arg);
387
- var value = info.value;
388
- } catch (error) {
389
- reject(error);
390
- return;
391
- }
392
- if (info.done) {
393
- resolve(value);
394
- } else {
395
- Promise.resolve(value).then(_next, _throw);
396
- }
397
- }
398
- function _asyncToGenerator(fn) {
399
- return function () {
400
- var self = this,
401
- args = arguments;
402
- return new Promise(function (resolve, reject) {
403
- var gen = fn.apply(self, args);
404
- function _next(value) {
405
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
406
- }
407
- function _throw(err) {
408
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
409
- }
410
- _next(undefined);
411
- });
412
- };
413
- }
414
- function _defineProperty(obj, key, value) {
415
- key = _toPropertyKey(key);
416
- if (key in obj) {
417
- Object.defineProperty(obj, key, {
418
- value: value,
419
- enumerable: true,
420
- configurable: true,
421
- writable: true
422
- });
423
- } else {
424
- obj[key] = value;
425
- }
426
- return obj;
427
- }
428
- function _slicedToArray(arr, i) {
429
- return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
430
- }
431
- function _toConsumableArray(arr) {
432
- return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
433
- }
434
- function _arrayWithoutHoles(arr) {
435
- if (Array.isArray(arr)) return _arrayLikeToArray(arr);
436
- }
437
- function _arrayWithHoles(arr) {
438
- if (Array.isArray(arr)) return arr;
439
- }
440
- function _iterableToArray(iter) {
441
- if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
442
- }
443
- function _unsupportedIterableToArray(o, minLen) {
444
- if (!o) return;
445
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
446
- var n = Object.prototype.toString.call(o).slice(8, -1);
447
- if (n === "Object" && o.constructor) n = o.constructor.name;
448
- if (n === "Map" || n === "Set") return Array.from(o);
449
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
450
- }
451
- function _arrayLikeToArray(arr, len) {
452
- if (len == null || len > arr.length) len = arr.length;
453
- for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
454
- return arr2;
455
- }
456
- function _nonIterableSpread() {
457
- throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
458
- }
459
- function _nonIterableRest() {
460
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
461
- }
462
- function _toPrimitive(input, hint) {
463
- if (typeof input !== "object" || input === null) return input;
464
- var prim = input[Symbol.toPrimitive];
465
- if (prim !== undefined) {
466
- var res = prim.call(input, hint || "default");
467
- if (typeof res !== "object") return res;
468
- throw new TypeError("@@toPrimitive must return a primitive value.");
469
- }
470
- return (hint === "string" ? String : Number)(input);
471
- }
472
- function _toPropertyKey(arg) {
473
- var key = _toPrimitive(arg, "string");
474
- return typeof key === "symbol" ? key : String(key);
475
- }
476
-
477
- var FeedbackForm = function FeedbackForm(props) {
478
- var _useState = useState(props.chatHistory),
479
- _useState2 = _slicedToArray(_useState, 2),
480
- chatHistory = _useState2[0],
481
- setChatHistory = _useState2[1];
482
- var _useState3 = useState(null),
483
- _useState4 = _slicedToArray(_useState3, 2),
484
- isUseful = _useState4[0],
485
- setIsUseful = _useState4[1];
486
- var _useState5 = useState(false),
487
- _useState6 = _slicedToArray(_useState5, 2),
488
- feedbackSubmitted = _useState6[0],
489
- setFeedbackSubmitted = _useState6[1];
490
- useEffect(function () {
491
- setChatHistory(props.chatHistory);
492
- }, [props]);
493
- var handleSubmit = /*#__PURE__*/function () {
494
- var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(value) {
495
- var response;
496
- return _regeneratorRuntime().wrap(function _callee$(_context) {
497
- while (1) switch (_context.prev = _context.next) {
498
- case 0:
499
- _context.prev = 0;
500
- if (!feedbackSubmitted) {
501
- _context.next = 3;
502
- break;
503
- }
504
- return _context.abrupt("return");
505
- case 3:
506
- setIsUseful(value);
507
- _context.next = 6;
508
- return fetch(props.baseHttpUrl + '/feedback/', {
509
- method: 'POST',
510
- headers: {
511
- 'Content-Type': 'application/json'
512
- },
513
- body: JSON.stringify({
514
- chat_history: chatHistory,
515
- is_useful: value
516
- })
517
- });
518
- case 6:
519
- response = _context.sent;
520
- if (response.ok) {
521
- console.log('Feedback submitted successfully');
522
- setFeedbackSubmitted(true);
523
- } else {
524
- console.error('Failed to submit feedback');
525
- }
526
- _context.next = 13;
527
- break;
528
- case 10:
529
- _context.prev = 10;
530
- _context.t0 = _context["catch"](0);
531
- console.error('Error submitting feedback:', _context.t0);
532
- case 13:
533
- case "end":
534
- return _context.stop();
535
- }
536
- }, _callee, null, [[0, 10]]);
537
- }));
538
- return function handleSubmit(_x) {
539
- return _ref.apply(this, arguments);
540
- };
541
- }();
542
- return /*#__PURE__*/React.createElement("form", null, /*#__PURE__*/React.createElement("button", {
543
- type: "button",
544
- title: "It was helpful to me!",
545
- className: "inline-block ".concat(feedbackSubmitted && !isUseful ? 'hidden' : ''),
546
- onClick: function onClick() {
547
- return handleSubmit(true);
548
- },
549
- disabled: feedbackSubmitted
550
- }, /*#__PURE__*/React.createElement(ThumbsUp, null)), /*#__PURE__*/React.createElement("button", {
551
- type: "button",
552
- title: "It didn't help me at all!",
553
- className: "inline-block ".concat(feedbackSubmitted && isUseful ? 'hidden' : ''),
554
- onClick: function onClick() {
555
- return handleSubmit(false);
556
- },
557
- disabled: feedbackSubmitted
558
- }, /*#__PURE__*/React.createElement(ThumbsDown, null)));
559
- };
560
-
561
- function styleInject(css, ref) {
562
- if ( ref === void 0 ) ref = {};
563
- var insertAt = ref.insertAt;
564
-
565
- if (!css || typeof document === 'undefined') { return; }
566
-
567
- var head = document.head || document.getElementsByTagName('head')[0];
568
- var style = document.createElement('style');
569
- style.type = 'text/css';
570
-
571
- if (insertAt === 'top') {
572
- if (head.firstChild) {
573
- head.insertBefore(style, head.firstChild);
574
- } else {
575
- head.appendChild(style);
576
- }
577
- } else {
578
- head.appendChild(style);
579
- }
580
-
581
- if (style.styleSheet) {
582
- style.styleSheet.cssText = css;
583
- } else {
584
- style.appendChild(document.createTextNode(css));
585
- }
586
- }
587
-
588
- var css_248z$1 = "pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!\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*/.hljs{background:#fff;color:#24292e}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#005cc5}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-code,.hljs-comment,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{background-color:#f0fff4;color:#22863a}.hljs-deletion{background-color:#ffeef0;color:#b31d28}";
589
- styleInject(css_248z$1);
590
-
591
- var img$1 = "data:image/png;base64,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";
592
-
593
- var img = "data:image/png;base64,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";
594
-
595
- function ChatMessage(props) {
596
- var _React$useState = React.useState(props.chatHistory),
597
- _React$useState2 = _slicedToArray(_React$useState, 2),
598
- chatHistory = _React$useState2[0],
599
- setChatHistory = _React$useState2[1];
600
- useEffect(function () {
601
- if (props.highlight && props.userType === "bot") {
602
- document.querySelectorAll("#" + props.id + " pre code").forEach(function (el) {
603
- hljs.highlightElement(el);
604
- });
605
- }
606
- });
607
- useEffect(function () {
608
- setChatHistory(props.chatHistory);
609
- }, [props]);
610
- var chatMessage;
611
- if (props.userType === "user") {
612
- chatMessage = /*#__PURE__*/React.createElement("div", {
613
- className: "w-full chat-message user-message text-base flex flex-row space-x-2",
614
- id: props.id
615
- }, /*#__PURE__*/React.createElement("img", {
616
- src: img,
617
- alt: "User Profile",
618
- className: "w-6 h-6 rounded-full"
619
- }), /*#__PURE__*/React.createElement(ReactMarkdown, {
620
- className: "px-4 py-2 rounded-lg rounded-bl-none bg-gray-300 text-gray-600"
621
- }, props.text));
622
- } else if (props.userType === "bot") {
623
- chatMessage = /*#__PURE__*/React.createElement("div", {
624
- className: "w-full chat-message bot-message text-base flex flex-row space-x-2",
625
- id: props.id
626
- }, /*#__PURE__*/React.createElement("img", {
627
- src: img$1,
628
- alt: "Robot Profile",
629
- className: "w-6 h-6 rounded-full"
630
- }), /*#__PURE__*/React.createElement("div", {
631
- className: "w-full"
632
- }, /*#__PURE__*/React.createElement(ReactMarkdown, {
633
- className: "px-4 py-2 space-y-2 rounded-t-lg bg-blue-600 text-white"
634
- }, props.text), /*#__PURE__*/React.createElement(References, {
635
- items: props.references
636
- })), /*#__PURE__*/React.createElement(FeedbackForm, {
637
- chatHistory: chatHistory.slice(1, props.index + 1),
638
- baseHttpUrl: props.baseHttpUrl
639
- }));
640
- }
641
- return chatMessage;
642
- }
643
- function References(props) {
644
- return /*#__PURE__*/React.createElement(React.Fragment, null, " ", props.items !== undefined && props.items.length > 0 ? /*#__PURE__*/React.createElement("div", {
645
- className: "flex flex-wrap text-xs px-4 py-2 rounded-b-lg rounded-br-none bg-blue-500 text-white"
646
- }, /*#__PURE__*/React.createElement("p", {
647
- className: "text-sm"
648
- }, "You can discover more information by checking out the pages mentioned below:"), /*#__PURE__*/React.createElement("ol", {
649
- className: "flex flex-wrap list-inside"
650
- }, props.items.map(function (item, index) {
651
- return /*#__PURE__*/React.createElement("li", {
652
- key: index,
653
- className: "mr-2"
654
- }, /*#__PURE__*/React.createElement("a", {
655
- className: "underline text-white text-sm",
656
- href: item.page_url
657
- }, item.page_title));
658
- }))) : null);
659
- }
660
-
661
- var css_248z = "/*! tailwindcss v3.3.2 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:\"\"}html{-webkit-text-size-adjust:100%;font-feature-settings:normal;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;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}*,::backdrop,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.visible{visibility:visible}.fixed{position:fixed}.bottom-0{bottom:0}.bottom-5{bottom:1.25rem}.left-5{left:1.25rem}.right-0{right:0}.right-5{right:1.25rem}.mb-6{margin-bottom:1.5rem}.mr-2{margin-right:.5rem}.mt-4{margin-top:1rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.hidden{display:none}.h-10{height:2.5rem}.h-6{height:1.5rem}.h-screen{height:100vh}.max-h-screen{max-height:100vh}.w-6{width:1.5rem}.w-full{width:100%}.list-inside{list-style-position:inside}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.justify-between{justify-content:space-between}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.overflow-y-scroll{overflow-y:scroll}.scroll-smooth{scroll-behavior:smooth}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-b-lg{border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}.rounded-t-lg{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.rounded-bl-none{border-bottom-left-radius:0}.rounded-br-none{border-bottom-right-radius:0}.rounded-tl-md{border-top-left-radius:.375rem}.border-0{border-width:0}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity))}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.bg-gray-300{--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity))}.bg-orange-400{--tw-bg-opacity:1;background-color:rgb(251 146 60/var(--tw-bg-opacity))}.p-5{padding:1.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.font-sans{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}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-normal{font-weight:400}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity))}.text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.underline{text-decoration-line:underline}.placeholder-gray-500::placeholder{--tw-placeholder-opacity:1;color:rgb(107 114 128/var(--tw-placeholder-opacity))}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}#scroller *{overflow-anchor:none}#anchor{height:1px;overflow-anchor:auto}p code{border-radius:3px}.chat-message p{margin:0}.user-message p code{background-color:#f0f8ff}.bot-message li>code,.bot-message p code{background-color:#6495ed}ol{list-style-type:decimal;margin:1em}li{padding:.2em}#ChatPrompt ::-webkit-scrollbar{display:none}pre{color:#000;white-space:pre-wrap;word-break:break-word}.hover\\:scale-95:hover{--tw-scale-x:.95;--tw-scale-y:.95;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))}.hover\\:bg-gray-900:hover{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity))}.focus\\:outline-none:focus{outline:2px solid #0000;outline-offset:2px}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:opacity-75:disabled{opacity:.75}@media (min-width:640px){.sm\\:w-\\[100\\%\\]{width:100%}}@media (min-width:768px){.md\\:w-\\[100\\%\\]{width:100%}}@media (min-width:1024px){.lg\\:w-\\[50\\%\\]{width:50%}}@media (min-width:1280px){.xl\\:w-\\[40\\%\\]{width:40%}}@media (min-width:1536px){.\\32xl\\:w-\\[30\\%\\]{width:30%}}";
662
- styleInject(css_248z);
663
-
664
- var ChatPrompt = function ChatPrompt(props) {
665
- function getRandom(arr) {
666
- var randomIndex = Math.floor(Math.random() * arr.length);
667
- return arr.splice(randomIndex, 1)[0];
668
- }
669
- var _props$title = props.title,
670
- title = _props$title === void 0 ? 'ByteBrain ChatBot' : _props$title,
671
- _props$defaultQuestio = props.defaultQuestion,
672
- defaultQuestion = _props$defaultQuestio === void 0 ? 'Send your message' : _props$defaultQuestio,
673
- websocketHost = props.websocketHost,
674
- websocketPort = props.websocketPort,
675
- websocketEndpoint = props.websocketEndpoint,
676
- welcomeMessages = props.welcomeMessages,
677
- fullScreen = props.fullScreen;
678
- var greetings = welcomeMessages.map(function (m) {
679
- return {
680
- userType: "bot",
681
- message: m,
682
- completed: true
683
- };
684
- });
685
- var _React$useState = React.useState(''),
686
- _React$useState2 = _slicedToArray(_React$useState, 2),
687
- question = _React$useState2[0],
688
- setQuestion = _React$useState2[1];
689
- var _React$useState3 = React.useState([getRandom(greetings)]),
690
- _React$useState4 = _slicedToArray(_React$useState3, 2),
691
- messages = _React$useState4[0],
692
- setMessages = _React$useState4[1];
693
- var host = websocketHost || window.location.hostname;
694
- var port = websocketPort === "80" ? "" : ":" + websocketPort;
695
- var protocol = websocketPort === "80" ? "wss://" : "ws://";
696
- var httpProtocol = websocketPort === "80" ? 'https://' : "http://";
697
- var baseHttpUrl = httpProtocol + host + port;
698
- var handleChange = function handleChange(event) {
699
- setQuestion(event.target.value);
700
- };
701
- var handleSubmit = function handleSubmit(event) {
702
- event.preventDefault();
703
- handleClick();
704
- event.target.reset();
705
- };
706
- function isButtonDisabled() {
707
- if (messages.length === 0) {
708
- return false;
709
- } else if (messages[messages.length - 1].userType == "user") {
710
- return true;
711
- } else if (messages[messages.length - 1].userType == "bot") {
712
- return !messages[messages.length - 1].completed ? true : false;
713
- }
714
- }
715
- var handleClick = function handleClick() {
716
- var ws = new WebSocket(protocol + host + port + websocketEndpoint);
717
- ws.onopen = function (event) {
718
- setMessages(function (messages) {
719
- return messages.concat([{
720
- userType: "user",
721
- message: question,
722
- completed: true
723
- }]);
724
- });
725
- var history = messages.map(function (m) {
726
- return m.message;
727
- }).slice(1);
728
- var data = {
729
- "question": question,
730
- "history": history
731
- };
732
- ws.send(JSON.stringify(data));
733
- };
734
- ws.onmessage = function (event) {
735
- var result = JSON.parse(event.data);
736
- var word = result.token;
737
- var references = result.references;
738
- var completed = result.completed;
739
- setMessages(function (messages) {
740
- if (messages.length === 0 || messages[messages.length - 1].userType === "user") {
741
- return [].concat(_toConsumableArray(messages), [{
742
- userType: "bot",
743
- message: word,
744
- completed: completed
745
- }]);
746
- } else {
747
- var updatedMessages = _toConsumableArray(messages);
748
- updatedMessages[updatedMessages.length - 1] = _objectSpread2(_objectSpread2({}, updatedMessages[updatedMessages.length - 1]), {}, {
749
- message: updatedMessages[updatedMessages.length - 1].message + word,
750
- references: references,
751
- completed: completed
752
- });
753
- return updatedMessages;
754
- }
755
- });
756
- };
757
- };
758
- return /*#__PURE__*/React.createElement("div", {
759
- id: "ChatPrompt",
760
- className: "justify-between flex flex-col p-5 rounded-md bg-gray-100 max-h-screen ".concat(fullScreen ? "h-screen" : "")
761
- }, /*#__PURE__*/React.createElement("h1", {
762
- className: "text-orange-600 text-3xl font-bold mb-6"
763
- }, title), /*#__PURE__*/React.createElement("div", {
764
- id: "scroller",
765
- className: "flex flex-col space-y-4 overflow-y-scroll scroll-smooth"
766
- }, messages.map(function (m, id) {
767
- return /*#__PURE__*/React.createElement(ChatMessage, {
768
- key: id,
769
- id: "chat" + id,
770
- index: id,
771
- userType: m.userType,
772
- text: m.message,
773
- references: m.references,
774
- highlight: m.completed,
775
- chatHistory: messages,
776
- baseHttpUrl: baseHttpUrl
777
- });
778
- }), /*#__PURE__*/React.createElement("div", {
779
- id: "anchor"
780
- })), /*#__PURE__*/React.createElement("form", {
781
- onSubmit: handleSubmit,
782
- className: "flex bottom-5 left-5 right-5 h-10 mt-4"
783
- }, /*#__PURE__*/React.createElement("input", {
784
- type: "text",
785
- id: "promptInput",
786
- onChange: handleChange,
787
- className: "w-full px-4 py-2 border-0 rounded-md text-base text-black bg-gray-200 placeholder-gray-500 focus:outline-none font-sans font-normal",
788
- placeholder: defaultQuestion
789
- }), /*#__PURE__*/React.createElement("button", {
790
- disabled: isButtonDisabled(),
791
- id: "generateBtn",
792
- type: "submit",
793
- 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"
794
- }, "Send")));
795
- };
796
-
797
- var useClickOutside = function useClickOutside(ref, callback) {
798
- var handleClick = function handleClick(event) {
799
- if (event.target.id === "chat-button") return null;
800
- if (ref.current && !ref.current.contains(event.target)) {
801
- callback();
802
- }
803
- };
804
- useEffect(function () {
805
- document.addEventListener('click', handleClick);
806
- return function () {
807
- document.removeEventListener('click', handleClick);
808
- };
809
- });
810
- };
811
- function PopupChatWindow(_ref) {
812
- var visible = _ref.visible,
813
- onClose = _ref.onClose,
814
- websocketHost = _ref.websocketHost,
815
- websocketPort = _ref.websocketPort,
816
- websocketEndpoint = _ref.websocketEndpoint;
817
- var ref = useRef();
818
- useClickOutside(ref, onClose);
819
- var welcome_messages = ["🌟 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! 💡🤖"];
820
- return /*#__PURE__*/React.createElement("div", {
821
- ref: ref,
822
- id: "container",
823
- className: "fixed 2xl:w-[30%] xl:w-[40%] lg:w-[50%] md:w-[100%] sm:w-[100%] bottom-0 right-0 ".concat(visible ? 'block' : 'hidden', " ")
824
- }, /*#__PURE__*/React.createElement(ChatPrompt, {
825
- title: "ZIO Chat",
826
- defaultQuestion: "Write a question about ZIO!",
827
- websocketHost: websocketHost || "localhost",
828
- websocketPort: websocketPort || "8081",
829
- websocketEndpoint: websocketEndpoint || "/chat",
830
- welcomeMessages: welcome_messages,
831
- fullScreen: false
832
- }));
833
- }
834
-
835
- var ChatApp = function ChatApp(props) {
836
- var _useState = useState(false),
837
- _useState2 = _slicedToArray(_useState, 2),
838
- isOpen = _useState2[0],
839
- setIsOpen = _useState2[1];
840
- var close = function close() {
841
- return setIsOpen(false);
842
- };
843
- var open = function open() {
844
- return setIsOpen(true);
845
- };
846
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("button", {
847
- id: "chat-button",
848
- className: "fixed border-0 font-sans bg-orange-400 rounded-tl-md text-black px-3 py-2 hover:scale-95 transition text-ms bottom-0 right-0",
849
- onClick: open
850
- }, "ZIO Chat!"), /*#__PURE__*/React.createElement(PopupChatWindow, {
851
- onClose: close,
852
- visible: isOpen,
853
- websocketHost: props.websocketHost,
854
- websocketPort: props.websocketPort,
855
- websocketEndpoint: props.websocketEndpoint
856
- }));
857
- };
858
-
859
- export { ChatApp, ChatMessage, ChatPrompt, FeedbackForm, PopupChatWindow, ThumbsDown, ThumbsUp };
1
+ import e,{useState as t,useEffect as r,useRef as o}from"react";import n from"highlight.js";import i from"react-markdown";var a=function(){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,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"}))},A=function(){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,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 c(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function s(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?c(Object(r),!0).forEach((function(t){d(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):c(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l(){l=function(){return t};var e,t={},r=Object.prototype,o=r.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",A=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function s(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{s({},"")}catch(e){s=function(e,t,r){return e[t]=r}}function g(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),A=new N(o||[]);return n(a,"_invoke",{value:z(e,r,A)}),a}function d(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=g;var u="suspendedStart",w="suspendedYield",f="executing",m="completed",h={};function p(){}function k(){}function b(){}var B={};s(B,a,(function(){return this}));var v=Object.getPrototypeOf,S=v&&v(v(E([])));S&&S!==r&&o.call(S,a)&&(B=S);var O=b.prototype=p.prototype=Object.create(B);function y(e){["next","throw","return"].forEach((function(t){s(e,t,(function(e){return this._invoke(t,e)}))}))}function J(e,t){function r(n,i,a,A){var c=d(e[n],e,i);if("throw"!==c.type){var s=c.arg,l=s.value;return l&&"object"==typeof l&&o.call(l,"__await")?t.resolve(l.__await).then((function(e){r("next",e,a,A)}),(function(e){r("throw",e,a,A)})):t.resolve(l).then((function(e){s.value=e,a(s)}),(function(e){return r("throw",e,a,A)}))}A(c.arg)}var i;n(this,"_invoke",{value:function(e,o){function n(){return new t((function(t,n){r(e,o,t,n)}))}return i=i?i.then(n,n):n()}})}function z(t,r,o){var n=u;return function(i,a){if(n===f)throw new Error("Generator is already running");if(n===m){if("throw"===i)throw a;return{value:e,done:!0}}for(o.method=i,o.arg=a;;){var A=o.delegate;if(A){var c=I(A,o);if(c){if(c===h)continue;return c}}if("next"===o.method)o.sent=o._sent=o.arg;else if("throw"===o.method){if(n===u)throw n=m,o.arg;o.dispatchException(o.arg)}else"return"===o.method&&o.abrupt("return",o.arg);n=f;var s=d(t,r,o);if("normal"===s.type){if(n=o.done?m:w,s.arg===h)continue;return{value:s.arg,done:o.done}}"throw"===s.type&&(n=m,o.method="throw",o.arg=s.arg)}}}function I(t,r){var o=r.method,n=t.iterator[o];if(n===e)return r.delegate=null,"throw"===o&&t.iterator.return&&(r.method="return",r.arg=e,I(t,r),"throw"===r.method)||"return"!==o&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+o+"' method")),h;var i=d(n,t.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,h;var a=i.arg;return a?a.done?(r[t.resultName]=a.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,h):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,h)}function x(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function C(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function N(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(x,this),this.reset(!0)}function E(t){if(t||""===t){var r=t[a];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function r(){for(;++n<t.length;)if(o.call(t,n))return r.value=t[n],r.done=!1,r;return r.value=e,r.done=!0,r};return i.next=i}}throw new TypeError(typeof t+" is not iterable")}return k.prototype=b,n(O,"constructor",{value:b,configurable:!0}),n(b,"constructor",{value:k,configurable:!0}),k.displayName=s(b,c,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===k||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,s(e,c,"GeneratorFunction")),e.prototype=Object.create(O),e},t.awrap=function(e){return{__await:e}},y(J.prototype),s(J.prototype,A,(function(){return this})),t.AsyncIterator=J,t.async=function(e,r,o,n,i){void 0===i&&(i=Promise);var a=new J(g(e,r,o,n),i);return t.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},y(O),s(O,c,"Generator"),s(O,a,(function(){return this})),s(O,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var o in t)r.push(o);return r.reverse(),function e(){for(;r.length;){var o=r.pop();if(o in t)return e.value=o,e.done=!1,e}return e.done=!0,e}},t.values=E,N.prototype={constructor:N,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(C),!t)for(var r in this)"t"===r.charAt(0)&&o.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function n(o,n){return A.type="throw",A.arg=t,r.next=o,n&&(r.method="next",r.arg=e),!!n}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],A=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var c=o.call(a,"catchLoc"),s=o.call(a,"finallyLoc");if(c&&s){if(this.prev<a.catchLoc)return n(a.catchLoc,!0);if(this.prev<a.finallyLoc)return n(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return n(a.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return n(a.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&o.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var i=n;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,h):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),h},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),C(r),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var o=r.completion;if("throw"===o.type){var n=o.arg;C(r)}return n}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,o){return this.delegate={iterator:E(t),resultName:r,nextLoc:o},"next"===this.method&&(this.arg=e),h}},t}function g(e,t,r,o,n,i,a){try{var A=e[i](a),c=A.value}catch(e){return void r(e)}A.done?t(c):Promise.resolve(c).then(o,n)}function d(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,t||"default");if("object"!=typeof o)return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function u(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var o,n,i,a,A=[],c=!0,s=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(o=i.call(r)).done)&&(A.push(o.value),A.length!==t);c=!0);}catch(e){s=!0,n=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw n}}return A}}(e,t)||f(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function w(e){return function(e){if(Array.isArray(e))return m(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||f(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function f(e,t){if(e){if("string"==typeof e)return m(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?m(e,t):void 0}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=new Array(t);r<t;r++)o[r]=e[r];return o}var h=function(o){var n=u(t(o.chatHistory),2),i=n[0],c=n[1],s=u(t(null),2),d=s[0],w=s[1],f=u(t(!1),2),m=f[0],h=f[1];r((function(){c(o.chatHistory)}),[o]);var p=function(){var e,t=(e=l().mark((function e(t){return l().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(e.prev=0,!m){e.next=3;break}return e.abrupt("return");case 3:return w(t),e.next=6,fetch(o.baseHttpUrl+"/feedback/",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({chat_history:i,is_useful:t})});case 6:e.sent.ok?(console.log("Feedback submitted successfully"),h(!0)):console.error("Failed to submit feedback"),e.next=13;break;case 10:e.prev=10,e.t0=e.catch(0),console.error("Error submitting feedback:",e.t0);case 13:case"end":return e.stop()}}),e,null,[[0,10]])})),function(){var t=this,r=arguments;return new Promise((function(o,n){var i=e.apply(t,r);function a(e){g(i,o,n,a,A,"next",e)}function A(e){g(i,o,n,a,A,"throw",e)}a(void 0)}))});return function(e){return t.apply(this,arguments)}}();return e.createElement("form",null,e.createElement("button",{type:"button",title:"It was helpful to me!",className:"inline-block ".concat(m&&!d?"hidden":""),onClick:function(){return p(!0)},disabled:m},e.createElement(a,null)),e.createElement("button",{type:"button",title:"It didn't help me at all!",className:"inline-block ".concat(m&&d?"hidden":""),onClick:function(){return p(!1)},disabled:m},e.createElement(A,null)))};function p(e,t){void 0===t&&(t={});var r=t.insertAt;if(e&&"undefined"!=typeof document){var o=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css","top"===r&&o.firstChild?o.insertBefore(n,o.firstChild):o.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}}p("pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!\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*/.hljs{background:#fff;color:#24292e}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#005cc5}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-code,.hljs-comment,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{background-color:#f0fff4;color:#22863a}.hljs-deletion{background-color:#ffeef0;color:#b31d28}");function k(t){var o,a=u(e.useState(t.chatHistory),2),A=a[0],c=a[1];return r((function(){t.highlight&&"bot"===t.userType&&document.querySelectorAll("#"+t.id+" pre code").forEach((function(e){n.highlightElement(e)}))})),r((function(){c(t.chatHistory)}),[t]),"user"===t.userType?o=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(i,{className:"px-4 py-2 rounded-lg rounded-bl-none bg-gray-300 text-gray-600"},t.text)):"bot"===t.userType&&(o=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:"data:image/png;base64,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",alt:"Robot Profile",className:"w-6 h-6 rounded-full"}),e.createElement("div",{className:"w-full"},e.createElement(i,{className:"px-4 py-2 space-y-2 rounded-t-lg bg-blue-600 text-white"},t.text),e.createElement(b,{items:t.references})),e.createElement(h,{chatHistory:A.slice(1,t.index+1),baseHttpUrl:t.baseHttpUrl}))),o}function b(t){return e.createElement(e.Fragment,null," ",void 0!==t.items&&t.items.length>0?e.createElement("div",{className:"flex flex-wrap text-xs px-4 py-2 rounded-b-lg rounded-br-none bg-blue-500 text-white"},e.createElement("p",{className:"text-sm"},"You can discover more information by checking out the pages mentioned below:"),e.createElement("ol",{className:"flex flex-wrap list-inside"},t.items.map((function(t,r){return e.createElement("li",{key:r,className:"mr-2"},e.createElement("a",{className:"underline text-white text-sm",href:t.page_url},t.page_title))})))):null)}p('/*! tailwindcss v3.3.2 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}html{-webkit-text-size-adjust:100%;font-feature-settings:normal;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;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}*,::backdrop,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.visible{visibility:visible}.fixed{position:fixed}.bottom-0{bottom:0}.bottom-5{bottom:1.25rem}.left-5{left:1.25rem}.right-0{right:0}.right-5{right:1.25rem}.mb-6{margin-bottom:1.5rem}.mr-2{margin-right:.5rem}.mt-4{margin-top:1rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.hidden{display:none}.h-10{height:2.5rem}.h-6{height:1.5rem}.h-screen{height:100vh}.max-h-screen{max-height:100vh}.w-6{width:1.5rem}.w-full{width:100%}.list-inside{list-style-position:inside}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.justify-between{justify-content:space-between}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.overflow-y-scroll{overflow-y:scroll}.scroll-smooth{scroll-behavior:smooth}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-b-lg{border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}.rounded-t-lg{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.rounded-bl-none{border-bottom-left-radius:0}.rounded-br-none{border-bottom-right-radius:0}.rounded-tl-md{border-top-left-radius:.375rem}.border-0{border-width:0}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity))}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.bg-gray-300{--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity))}.bg-orange-400{--tw-bg-opacity:1;background-color:rgb(251 146 60/var(--tw-bg-opacity))}.p-5{padding:1.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.font-sans{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}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-normal{font-weight:400}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity))}.text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.underline{text-decoration-line:underline}.placeholder-gray-500::placeholder{--tw-placeholder-opacity:1;color:rgb(107 114 128/var(--tw-placeholder-opacity))}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}#scroller *{overflow-anchor:none}#anchor{height:1px;overflow-anchor:auto}p code{border-radius:3px}.chat-message p{margin:0}.user-message p code{background-color:#f0f8ff}.bot-message li>code,.bot-message p code{background-color:#6495ed}ol{list-style-type:decimal;margin:1em}li{padding:.2em}#ChatPrompt ::-webkit-scrollbar{display:none}pre{color:#000;white-space:pre-wrap;word-break:break-word}.hover\\:scale-95:hover{--tw-scale-x:.95;--tw-scale-y:.95;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))}.hover\\:bg-gray-900:hover{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity))}.focus\\:outline-none:focus{outline:2px solid #0000;outline-offset:2px}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:opacity-75:disabled{opacity:.75}@media (min-width:640px){.sm\\:w-\\[100\\%\\]{width:100%}}@media (min-width:768px){.md\\:w-\\[100\\%\\]{width:100%}}@media (min-width:1024px){.lg\\:w-\\[50\\%\\]{width:50%}}@media (min-width:1280px){.xl\\:w-\\[40\\%\\]{width:40%}}@media (min-width:1536px){.\\32xl\\:w-\\[30\\%\\]{width:30%}}');var B=function(t){var r,o,n=t.title,i=void 0===n?"ByteBrain ChatBot":n,a=t.defaultQuestion,A=void 0===a?"Send your message":a,c=t.websocketHost,l=t.websocketPort,g=t.websocketEndpoint,d=t.welcomeMessages,f=t.fullScreen,m=d.map((function(e){return{userType:"bot",message:e,completed:!0}})),h=u(e.useState(""),2),p=h[0],b=h[1],B=u(e.useState([(r=m,o=Math.floor(Math.random()*r.length),r.splice(o,1)[0])]),2),v=B[0],S=B[1],O=c||window.location.hostname,y="80"===l?"":":"+l,J="80"===l?"wss://":"ws://",z=("80"===l?"https://":"http://")+O+y;var I=function(){var e=new WebSocket(J+O+y+g);e.onopen=function(t){S((function(e){return e.concat([{userType:"user",message:p,completed:!0}])}));var r=v.map((function(e){return e.message})).slice(1),o={question:p,history:r};e.send(JSON.stringify(o))},e.onmessage=function(e){var t=JSON.parse(e.data),r=t.token,o=t.references,n=t.completed;S((function(e){if(0===e.length||"user"===e[e.length-1].userType)return[].concat(w(e),[{userType:"bot",message:r,completed:n}]);var t=w(e);return t[t.length-1]=s(s({},t[t.length-1]),{},{message:t[t.length-1].message+r,references:o,completed:n}),t}))}};return e.createElement("div",{id:"ChatPrompt",className:"justify-between flex flex-col p-5 rounded-md bg-gray-100 max-h-screen ".concat(f?"h-screen":"")},e.createElement("h1",{className:"text-orange-600 text-3xl font-bold mb-6"},i),e.createElement("div",{id:"scroller",className:"flex flex-col space-y-4 overflow-y-scroll scroll-smooth"},v.map((function(t,r){return e.createElement(k,{key:r,id:"chat"+r,index:r,userType:t.userType,text:t.message,references:t.references,highlight:t.completed,chatHistory:v,baseHttpUrl:z})})),e.createElement("div",{id:"anchor"})),e.createElement("form",{onSubmit:function(e){e.preventDefault(),I(),e.target.reset()},className:"flex bottom-5 left-5 right-5 h-10 mt-4"},e.createElement("input",{type:"text",id:"promptInput",onChange:function(e){b(e.target.value)},className:"w-full px-4 py-2 border-0 rounded-md text-base text-black bg-gray-200 placeholder-gray-500 focus:outline-none font-sans font-normal",placeholder:A}),e.createElement("button",{disabled:0!==v.length&&("user"==v[v.length-1].userType||("bot"==v[v.length-1].userType?!v[v.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 v(t){var n=t.visible,i=t.onClose,a=t.websocketHost,A=t.websocketPort,c=t.websocketEndpoint,s=o();!function(e,t){var o=function(r){if("chat-button"===r.target.id)return null;e.current&&!e.current.contains(r.target)&&t()};r((function(){return document.addEventListener("click",o),function(){document.removeEventListener("click",o)}}))}(s,i);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 ".concat(n?"block":"hidden"," ")},e.createElement(B,{title:"ZIO Chat",defaultQuestion:"Write a question about ZIO!",websocketHost:a||"localhost",websocketPort:A||"8081",websocketEndpoint:c||"/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}))}var S=function(r){var o=u(t(!1),2),n=o[0],i=o[1];return e.createElement(e.Fragment,null,e.createElement("button",{id:"chat-button",className:"fixed border-0 font-sans bg-orange-400 rounded-tl-md text-black px-3 py-2 hover:scale-95 transition text-ms bottom-0 right-0",onClick:function(){return i(!0)}},"ZIO Chat!"),e.createElement(v,{onClose:function(){return i(!1)},visible:n,websocketHost:r.websocketHost,websocketPort:r.websocketPort,websocketEndpoint:r.websocketEndpoint}))};export{S as ChatApp,k as ChatMessage,B as ChatPrompt,h as FeedbackForm,v as PopupChatWindow,A as ThumbsDown,a as ThumbsUp};
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@bytebrain.ai/bytebrain-ui",
3
- "version": "0.0.1",
3
+ "version": "0.0.3",
4
4
  "engines": {
5
- "node": "18.x"
5
+ "node": ">=16.x"
6
6
  },
7
7
  "main": "dist/index.js",
8
8
  "module": "dist/index.js",