@hivegpt/hiveai-angular 0.0.199 → 0.0.201

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.
@@ -1 +1 @@
1
- {"version":3,"file":"hivegpt-hiveai-angular.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/hivegpt/eventsgpt-angular/src/lib/utils/utils.ts","../../../../projects/hivegpt/eventsgpt-angular/src/environments/environment.ts","../../../../projects/hivegpt/eventsgpt-angular/src/lib/components/conversation.service.ts","../../../../projects/hivegpt/eventsgpt-angular/src/lib/components/NotificationSocket.ts","../../../../projects/hivegpt/eventsgpt-angular/src/lib/components/socket-service.service.ts","../../../../projects/hivegpt/eventsgpt-angular/src/lib/components/chat-drawer/chat-drawer.component.ts","../../../../projects/hivegpt/eventsgpt-angular/src/lib/components/chatbot/chatbot.component.ts","../../../../projects/hivegpt/eventsgpt-angular/src/lib/pipes/safe-html.pipe.ts","../../../../projects/hivegpt/eventsgpt-angular/src/lib/components/video-player/video-player.component.ts","../../../../projects/hivegpt/eventsgpt-angular/src/lib/hivegpt.module.ts","../../../../projects/hivegpt/eventsgpt-angular/src/public-api.ts","../../../../projects/hivegpt/eventsgpt-angular/src/hivegpt-hiveai-angular.ts"],"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","const formatHoursAndMinutes = (date: Date) => {\n let hours = date.getHours() % 12;\n const minutes = date.getMinutes();\n const amPm = date.getHours() < 12 ? 'AM' : 'PM';\n if(hours === 0) hours = 12;\n\n const formattedHours = hours < 10 ? `0${hours}` : hours;\n const formattedMinutes = minutes < 10 ? `0${minutes}` : minutes;\n\n return `${formattedHours}:${formattedMinutes} ${amPm}`;\n};\n\nexport const formatNow = (timezone?: string) => {\n const now = new Date();\n if (timezone) {\n const options: any = {\n hour12: true,\n hour: 'numeric',\n minute: 'numeric',\n timeZone: timezone,\n };\n return now.toLocaleString('en-US', options);\n }\n return formatHoursAndMinutes(now);\n};\n\nexport const formatTimeStamps = (timezone: string, timestamps: any) => {\n const date = new Date(timestamps + 'Z');\n\n const options: any = {\n hour12: true,\n hour: 'numeric',\n minute: 'numeric',\n timeZone: timezone,\n };\n return date.toLocaleString('en-US', options);\n};\n","\n\nexport const prod_environment = {\n USERS_API: 'https://es-user.social27.com/api',\n BASE_URL: 'https://agent-api.hivegpt.ai',\n AGENTS_API: 'https://hive-ai.social27.com/api',\n API_KEY: 'b621eb3f-0bd2-41d5-a48c-a8f8ab7d38f8',\n SocketUrl: 'https://notif-v2-ws.social27.com/'\n}\n\nexport const dev_environment = {\n USERS_API: 'https://pre-user.social27.com/api',\n BASE_URL: 'https://agent-api.hivegpt.ai',\n AGENTS_API: 'https://hive-ai.social27.com/api',\n API_KEY: 'b621eb3f-0bd2-41d5-a48c-a8f8ab7d38f8',\n SocketUrl: 'https://notif-v2-ws.social27.com/'\n}\n","import { Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConversationService {\n\n private storageKey = 'conversationKey';\n\n constructor() {\n\n }\n generateKey(): string {\n const timestamp = Math.floor(new Date().getTime() / 1000).toString(16);\n const randomHex = 'xxxxxxxxxxxxxxxx'.replace(/[x]/g, () => {\n return (Math.floor(Math.random() * 16)).toString(16);\n });\n return timestamp + randomHex;\n }\n private generateStorageKey(key: string): string {\n return `conversationKey_${key}`;\n }\n\n private ensureKeyExists(storageKey: string, key: string): void {\n if (!localStorage.getItem(storageKey)) {\n const newKey = this.generateKey();\n localStorage.setItem(storageKey, newKey);\n }\n }\n\n getKey(key: string): string {\n const storageKey = this.generateStorageKey(key);\n this.ensureKeyExists(storageKey, key);\n return localStorage.getItem(storageKey)!;\n }\n private userSepecificNotification: Subject<any> = new Subject<any>();\n sendValidatedUserData(message: any) {\n //console.log('lgging messages', message, new Date());\\\n\n this.userSepecificNotification.next(message);\n }\n getUserSpecificNotification(): Observable<any> {\n return this.userSepecificNotification.asObservable();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Socket, SocketIoConfig } from 'ngx-socket-io';\nimport { prod_environment } from '../../environments/environment';\n\n@Injectable({\n providedIn: 'root' // This ensures the service is available across the application\n})\nexport class NotificationSocket extends Socket {\n constructor() {\n super(socketConfig);\n\n // Log connection status\n this.on('connect', () => {\n console.log('Socket connected');\n });\n\n this.on('disconnect', () => {\n console.warn('Socket disconnected');\n });\n\n this.on('connect_error', (err) => {\n console.error('Socket connection error:', err);\n });\n }\n}\n\nconst socketConfig: SocketIoConfig = {\n url: prod_environment.SocketUrl,\n options: {\n transports: ['websocket', 'polling'],\n reconnection: true,\n autoConnect: true,\n upgrade: true,\n reconnectionDelay: 1000,\n reconnectionDelayMax: 5000,\n reconnectionAttempts: Infinity\n }\n};","import { Injectable } from '@angular/core';\n\nimport { Observable, Subject } from 'rxjs';\nimport { webSocket, WebSocketSubject } from 'rxjs/webSocket';\nimport { prod_environment } from '../../environments/environment';\nimport { ConversationService } from './conversation.service';\nimport { NotificationSocket } from './NotificationSocket';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SocketService {\n public testMessage: string;\n private isCommonSocketInitialized = false;\n private isUserSpecificSocketInitialized = false;\n private isUserSpecificEventReleased = true;\n private messageQueue: any[] = [];\n private releaseInterval = 1000;\n private intervalSetup: boolean = false;\n\n constructor(\n private conversationService: ConversationService,\n private notificationSocket: NotificationSocket,\n ) {\n this.startReleasingMessages();\n }\n\n isSocketInitialized(isCommon: boolean) {\n return isCommon\n ? this.isCommonSocketInitialized\n : this.isUserSpecificSocketInitialized &&\n !this.isUserSpecificEventReleased;\n }\n\n disconnectSocketConnection() {\n this.notificationSocket.disconnect();\n }\n\n registerUserSpecificHiveSocket(botId: string, conversation_id: string) {\n const commonNotification = \"commonNotification\";\n\n this.notificationSocket.removeAllListeners(commonNotification);\n\n console.log('Registering user-specific Hive socket with botId:' + botId);\n console.log('and conversation_id:' + conversation_id);\n\n this.notificationSocket.emit('joinData', {\n groupId: `Hive_AI_Notifs_${botId}_${conversation_id}`,\n });\n\n this.notificationSocket\n .fromEvent(commonNotification)\n .subscribe((res) => {\n console.log('Received commonNotification:', res);\n this.conversationService.sendValidatedUserData(res);\n }, (error) => {\n console.error('Error receiving commonNotification:', error);\n });\n }\n\n private startReleasingMessages() {\n if (!this.intervalSetup) {\n setInterval(() => {\n if (this.messageQueue.length > 0) {\n const message = this.messageQueue.shift(); // Remove the first message from the queue\n // Handle the message here, e.g., send it to the server or process it\n console.log('Releasing message from queue:', message);\n // this.campaignService.sendValidatedUserData(message);\n }\n }, this.releaseInterval);\n this.intervalSetup = true; // Prevents multiple intervals\n }\n }\n}\n","// import { Platform } from '@angular/cdk/platform';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnInit,\n Output,\n QueryList,\n Renderer2,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { MatDrawer } from '@angular/material/sidenav';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\nimport { of, Subscription } from 'rxjs';\nimport { catchError, switchMap } from 'rxjs/operators';\nimport { formatNow, formatTimeStamps } from '../../utils/utils';\nimport { dev_environment, prod_environment } from '../../../environments/environment';\nimport { ConversationService } from '../conversation.service';\nimport { Observable } from 'rxjs';\nimport { SocketService } from '../socket-service.service';\n\n\n@Component({\n selector: 'hivegpt-chat-drawer',\n templateUrl: './chat-drawer.component.html',\n styleUrls: ['./chat-drawer.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ChatDrawerComponent implements OnInit {\n @ViewChild('chatMain') private chatMain: ElementRef;\n @ViewChildren('closeplaygroundbutton') closePlaygroundButtons: QueryList<ElementRef>;\n @ViewChild('drawer') drawer!: MatDrawer;\n @ViewChild('sourcesDrawer') sourcesDrawer!: MatDrawer;\n private bodyOverflowClass = 'body-overflow-hidden';\n @ViewChild('myTextarea', { static: false })\n myTextarea!: ElementRef<HTMLTextAreaElement>; // Reference to the textarea\n isCollapsedTrue = false;\n @Input() copilotName: string = \"HiveXGPT\";\n @Input() firstName!: string;\n @Input() lastName!: string;\n @Input() apiKey!: string;\n @Input() bgBubbleAi!: string;\n @Input() bgBubbleUser!: string;\n @Input() bgGradient!: string[];\n @Input() botName!: string;\n @Input() botSkills!: string;\n @Input() botId!: string;\n @Input() closeButtonColor!: string;\n @Input() closeButtonbgColor!: string;\n @Input() credentials!: [];\n @Input() dateTimeColor!: string;\n @Input() dateTextColor!: string;\n @Input() eventId!: string;\n @Input() s27UserToken!: string;\n @Input() eventName!: string;\n @Input() botIcon!: string;\n @Input() formFieldBgColor!: string;\n @Input() formFieldTextColor!: string;\n @Input() fullView!: boolean;\n @Input() gradientColors!: string[];\n @Input() greeting!: string;\n @Input() messageTextColorAi!: string;\n @Input() messageTextColorUser!: string;\n @Input() rules!: string;\n @Input() sendButtonColor!: string;\n @Input() sendButtonTextColor!: string;\n @Input() showClose!: boolean;\n @Input() thumbsDownMessages!: string[];\n @Input() thumbsUpMessage!: string;\n @Input() timezone!: string;\n @Input() unknownResponses!: [];\n @Input() useOpenAi!: boolean;\n @Input() userId!: string;\n @Input() isDev!: boolean;\n\n @Input() againButtonColor!: string[];\n @Input() againButtonTextColor!: string[];\n @Output() feedbackEvent = new EventEmitter<string>();\n @Output() onCloseEvent = new EventEmitter<void>();\n @Output() openPage = new EventEmitter<any>();\n @Output() sessionActions = new EventEmitter<any>();\n @Output() closeBot = new EventEmitter<any>();\n @Output() connectWithUser = new EventEmitter<any>();\n @Output() scheduleMeeting = new EventEmitter<string>();\n\n autogenKey = \"Autogen_eDJTtEU-NB0RtIpzq1w\"\n addToMyAgendaAction = \"add_to_my_agenda\";\n myUpcomingSessionAction = \"my_upcomming_session\";\n connectOrFollowAction = \"connect_or_follow\";\n aiResponse: string = '';\n chatLog: any[] = [];\n decoder = new TextDecoder();\n feedbackDone: boolean = false;\n greetingMsg: string = '';\n hasBackdropValue: boolean = false;\n input: string = '';\n listenerAdded = false;\n loading: boolean = false;\n mode: string = 'over';\n quickPrompts: any[] = [];\n thumbsDownMsgIndex = 0;\n userName: string = '';\n showStartAgain: boolean = false;\n isIOSDevice: boolean = false;\n showFeedBackIconsIndex: number | null = null;\n temperature: number = 1;\n speakers = [];\n environment: {\n USERS_API,\n BASE_URL,\n AGENTS_API\n };\n pendingRequests: any;\n myConnections: any;\n conversationKey: string;\n\n constructor(\n private cdr: ChangeDetectorRef,\n private http: HttpClient,\n private sanitizer: DomSanitizer,\n private elementRef: ElementRef,\n private renderer: Renderer2,\n private socketService: SocketService,\n private conversationService: ConversationService\n // private platform: Platform\n ) {\n this.chatMain = new ElementRef(null);\n\n // if (this.platform.IOS) {\n // this.isIOSDevice = true;\n // }\n\n }\n\n ngOnInit(): void {\n this.environment = this.isDev ? dev_environment : prod_environment;\n\n // this.fetchMyConnections().subscribe();\n // this.fetchPendingRequests().subscribe();\n\n this.changeTemperature(this.temperature);\n this.fetchBotConfig().subscribe(\n (res) => {\n this.cdr.markForCheck();\n\n this.fetchChatHistory().subscribe(\n (response) => {\n this.loading = false;\n this.mapChatHistory(response);\n this.cdr.markForCheck();\n },\n (err) => {\n console.error('Error fetching chat history:', err);\n }\n );\n },\n (err) => {\n console.error('Error fetching chat history:', err);\n }\n );\n this.fetchAgents();\n this.cdr.markForCheck();\n this.initializeSocket();\n setTimeout(() => {\n this.listenSockets();\n }, 200);\n }\n private eventSubscription: Subscription;\n initializeSocket() {\n ;\n const conversation_id = this.conversationService.getKey(this.botId);\n\n this.socketService.registerUserSpecificHiveSocket(this.botId, conversation_id);\n }\n\n subscriptionNew: any;\n socketData: any;\n\n listenSockets() {\n this.eventSubscription = this.conversationService\n .getUserSpecificNotification()\n .subscribe(\n (res) => {\n // Check if OtherFields exists in the response\n if (res?.m?.OtherFields) {\n const { \n conversation_id, \n bot_id, \n message_id,\n answer, \n web_results, \n financial_graphs, \n execution_graphs, \n online_search_terms, \n suggestions\n } = res?.m?.OtherFields;\n\n var currentChatMessage = this.chatLog.find(p => p._id == message_id); \n \n if(!currentChatMessage) {\n currentChatMessage = {\n _id: message_id,\n type: 'ai',\n time: formatNow(this.timezone),\n }\n\n this.chatLog.push(currentChatMessage);\n this.showFeedBackIconsIndex = this.chatLog.length - 1;\n }\n\n // Handle the fields based on their presence\n if (online_search_terms && Array.isArray(online_search_terms)) {\n console.log('Online Search Terms:', online_search_terms);\n currentChatMessage.searchTerms = online_search_terms;\n this.cdr.markForCheck();\n }\n\n if (web_results && Array.isArray(web_results)) {\n console.log('Web Results:', web_results);\n currentChatMessage.sourcesList = web_results;\n currentChatMessage.displayedSources = web_results?.slice(0, 3); // First 3 cards\n currentChatMessage.remainingSources = web_results?.slice(3); // Remaining items\n this.cdr.markForCheck();\n\n }\n\n if (answer) {\n this.isChatingWithAi = false;\n console.log('Answer:', answer);\n\n currentChatMessage.message = this.processMessageForDisplay(answer);\n this.cdr.markForCheck();\n this.scrollToBottom();\n }\n\n if (financial_graphs && Array.isArray(financial_graphs)) {\n console.log('Financial Graphs:', financial_graphs);\n currentChatMessage.financialGraphs = financial_graphs;\n this.cdr.markForCheck();\n }\n\n if (execution_graphs && Array.isArray(execution_graphs)) {\n console.log('Execution Graphs:', execution_graphs);\n currentChatMessage.executionGraphs = execution_graphs;\n this.cdr.markForCheck();\n }\n\n if (suggestions && Array.isArray(suggestions)) {\n console.log('suggestions:', suggestions);\n currentChatMessage.relatedListItems = suggestions;\n this.cdr.markForCheck();\n // Process online search terms as needed\n }\n\n // Add any other fields and their processing here\n } else {\n console.warn('OtherFields is missing in the response');\n }\n },\n (err) => {\n this.eventSubscription.unsubscribe();\n console.error('Error in fetching data from socket', err);\n }\n );\n }\n\n initializeSocketAndListen() {\n\n }\n handleEvent(data: any, type: string) {\n switch (type) {\n case 'webresult':\n\n break;\n case 'answer':\n\n break;\n case 'graph':\n\n break;\n default:\n break;\n }\n }\n ngOnDestroy(): void {\n if (this.eventSubscription) {\n this.eventSubscription.unsubscribe();\n }\n //this.socketService.close();\n }\n changeTemperature(newTemperature: number) {\n if (this.loading) return;\n this.temperature = newTemperature;\n const wrapper = document.querySelector('.hivegpt-chat-wrapper')\n // Remove existing theme classes from body\n wrapper?.classList.remove('creative', 'balanced', 'precise');\n\n switch (newTemperature) {\n case 0:\n wrapper?.classList.add('creative');\n break;\n case 1:\n wrapper?.classList.add('balanced');\n break;\n case 2:\n wrapper?.classList.add('precise');\n break;\n default:\n break;\n }\n }\n\n onStartAgain() {\n if (this.loading) return;\n this.showStartAgain = false;\n this.chatLog = [];\n this.chatLog.push({\n type: 'ai',\n message:\n this.greetingMsg ||\n this.processMessage(\n \"Greetings! I'm your COP28 virtual assistant. Have questions about the event? I'm here to help.\"\n ),\n time: formatNow(this.timezone),\n });\n this.archieveMessages().subscribe();\n }\n\n archieveMessages() {\n const headers = new HttpHeaders({\n 'Content-Type': 'application/json',\n 'x-api-key': this.apiKey,\n });\n const url = `${this.environment.BASE_URL}/bot/clear-history/${this.botId}/${this.userId}`;\n return this.http.post(url, {}, { headers }).pipe(\n switchMap((res: any) => {\n return of(res);\n }),\n catchError((error) => {\n return of(null);\n })\n );\n }\n\n fetchBotConfig() {\n this.loading = true;\n const url = `${this.environment.BASE_URL}/bots?bot_id=${this.botId}`;\n return this.http.get(url).pipe(\n switchMap((res: any) => {\n this.botName = res.Name;\n this.botIcon = res.Icon;\n this.botSkills = res?.Skills;\n this.greetingMsg = res.Greeting;\n\n this.thumbsDownMessages = res?.NegativeResponses?.length\n ? res.NegativeResponses\n : [\n \"We are sorry we've not been able to answer your question.<br/> However, our dedicated support team is happy to help. <span class='feedback-link' style='cursor: pointer; text-decoration: underline; font-weight: 700; color: #17235B;'>Please click here</span> and a human agent will assist you as soon as possible\",\n ];\n this.quickPrompts = res.QuickPrompts;\n this.cdr.markForCheck();\n this.loading = false;\n return of(res);\n }),\n catchError((error) => {\n console.error('Error fetching chatbot config: ', error);\n this.loading = false;\n return of(null);\n })\n );\n }\n\n fetchChatHistory(): Observable<any> {\n this.loading = true;\n this.conversationKey = this.conversationService.getKey(this.botId);\n const url = `${this.environment.BASE_URL}/conversations/${this.conversationKey}`;\n const headers = new HttpHeaders({\n 'accept': 'application/json'\n });\n\n return this.http.get(url, { headers }).pipe(\n catchError(this.handleError<any>('fetchConversation'))\n );\n }\n\n private handleError<T>(operation = 'operation', result?: T) {\n return (error: any): Observable<T> => {\n console.error(`${operation} failed: ${error.message}`);\n return of(result as T);\n };\n }\n // fetchChatHistory() {\n // this.loading = true;\n // const headers = new HttpHeaders({\n // 'Content-Type': 'application/json',\n // 'x-api-key': this.apiKey,\n // });\n // return this.http\n // .get(`${this.environment.BASE_URL}/conversations/${this.conversationKey}`, { headers })\n // .pipe(\n // switchMap((res: any) => {\n // this.loading = false;\n // return of(res);\n // }),\n // catchError((error: any) => {\n // console.error('Error fetching chat history: ', error);\n // this.loading = false;\n // return of(null);\n // })\n // );\n // }\n\n mapChatHistory(chats: any) {\n this.chatLog.push({\n type: 'ai',\n message:\n this.greetingMsg ||\n this.processMessage(\n \"Greetings! I'm your COP28 virtual assistant. Have questions about the event? I'm here to help.\"\n ),\n time: formatNow(this.timezone),\n });\n if (chats && chats?.Messages?.length) {\n chats?.Messages.forEach((chat: any) => {\n if (chat.Type == \"user\") {\n this.chatLog.push({\n type: 'user',\n message: this.processMessageForDisplay(chat.Text),\n executionGraphs: chat.ExecutionGraphs,\n time: formatTimeStamps(this.timezone, chat.InsertTimestamp),\n copied: false,\n isCollapsedTrue: false\n });\n }\n if (chat.Type == \"ai\") {\n this.chatLog.push({\n type: 'ai',\n message: this.processMessageForDisplay(chat.Text),\n time: formatTimeStamps(this.timezone, chat.InsertTimestamp),\n copied: false,\n isCollapsedTrue: false\n });\n this.showFeedBackIconsIndex = this.chatLog.length - 1;\n }\n });\n this.showStartAgain = true;\n }\n this.scrollToBottom();\n this.cdr.markForCheck();\n }\n\n processMessage(message: string): SafeHtml {\n if (!message || !(message?.length > 0)) {\n return '';\n }\n\n // console.log('here is my message')\n // console.log(message);\n\n message = message.trim();\n\n const markdownLinkRegex = /\\[([^[]+)]\\(([^)]+)\\)/g;\n const urlRegex = /(?<!href=\")\\bhttps?:\\/\\/\\S+(?<![.,])/gi;\n\n if (markdownLinkRegex.test(message)) {\n const html = message.replace(\n markdownLinkRegex,\n '<a href=\"$2\" target=\"_blank\">$1</a>'\n );\n //console.log('Sanitized message: ', message);\n return this.sanitizeHtml(html);\n }\n\n if (urlRegex.test(message)) {\n const html = message.replace(\n urlRegex,\n '<a href=\"$&\" target=\"_blank\">$&</a>'\n );\n // console.log('Sanitized message: ', message);\n return this.sanitizeHtml(html);\n }\n\n message = message.replace(/(?:\\r\\n|\\r|\\n)/g, '<br>');\n\n message = message.replace(/\\*\\*(.*?)\\*\\*/g, '<strong>$1</strong>');\n // Convert Markdown headers to HTML headers\n message = message.replace(/^(#{1,6})\\s+(.*)$/gm, (match, hashes, text) => {\n const level = hashes.length;\n return `<h${level}>${text}</h${level}>`;\n });\n\n this.cdr.markForCheck();\n const sanitizedMessage = this.sanitizeHtml(message);\n return sanitizedMessage;\n }\n\n ngAfterViewChecked() {\n const feedbackLinks =\n this.elementRef.nativeElement.querySelectorAll('.feedback-link');\n feedbackLinks.forEach((link: any) => {\n link.addEventListener(\n 'click',\n this.onFeedbackClick.bind(this, 'zendesk')\n );\n });\n // if (this.elementRef.nativeElement.querySelector('.feedback-link')) {\n // this.elementRef.nativeElement\n // .querySelector('.feedback-link')\n // .addEventListener('click', this.onFeedbackClick.bind(this, 'zendesk'));\n // }\n }\n\n sanitizeHtml(html: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustHtml(html);\n }\n\n onFeedbackClick(value: string) {\n this.feedbackEvent.emit(value);\n }\n\n onClose() {\n this.renderer.removeClass(document.body, this.bodyOverflowClass);\n this.onCloseEvent.emit();\n }\n\n sendMessageWithTile(prompt: string) {\n this.input = prompt;\n this.fetchData();\n this.scrollToBottom();\n }\n isChatingWithAi = false;\n fetchData() {\n this.input = this.input?.trim();\n if (!this.input || this.loading) {\n return;\n }\n\n this.chatLog.push({\n type: 'user',\n message: this.processMessageForDisplay(this.input),\n time: formatNow(this.timezone),\n copied: false,\n isCollapsedTrue: false\n });\n\n this.cdr.markForCheck();\n\n this.aiResponse = '';\n this.isChatingWithAi = true;\n\n const url =\n `${this.environment.BASE_URL}/ai/ask`// +\n // (this.useOpenAi === false ? '/llm-hf' : '');\n fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'x-api-key': this.apiKey,\n },\n body: JSON.stringify({\n user_question: this.input,\n user_id: this.userId,\n bot_id: this.botId,\n message_id: this.conversationService.generateKey(),\n // temperature: this.temperature,\n // event_id: this.eventId,\n // token: this.s27UserToken,\n agents: this.agents.filter(p => p.selected).map(p => p.id),\n conversation_id: this.conversationKey\n }),\n })\n // Retrieve its body as ReadableStream\n .then((response) => {\n //return this.readAllChunks(response.body); \n return of(null);\n })\n .catch((err) => {\n console.error('Err: ', err);\n this.isChatingWithAi = false;\n });\n\n this.input = '';\n }\n fetchDataFor(msg) {\n const inputMsg = msg?.trim();\n if (!inputMsg || this.loading) {\n return;\n }\n this.scrollToBottom();\n this.chatLog.push({\n type: 'user',\n message: this.processMessageForDisplay(inputMsg),\n time: formatNow(this.timezone),\n copied: false,\n isCollapsedTrue: false\n });\n\n this.cdr.markForCheck();\n\n this.aiResponse = '';\n this.isChatingWithAi = true;\n\n const url =\n `${this.environment.BASE_URL}/ai/ask`// +\n // (this.useOpenAi === false ? '/llm-hf' : '');\n fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'x-api-key': this.apiKey,\n },\n body: JSON.stringify({\n user_question: inputMsg,\n user_id: this.userId,\n bot_id: this.botId,\n message_id: this.conversationService.generateKey(),\n // temperature: this.temperature,\n // event_id: this.eventId,\n // token: this.s27UserToken,\n agents: this.agents.filter(p => p.selected).map(p => p.id),\n conversation_id: this.conversationKey\n }),\n })\n // Retrieve its body as ReadableStream\n .then((response) => {\n return this.readAllChunks(response.body);\n })\n .catch((err) => {\n console.error('Err: ', err);\n this.isChatingWithAi = false;\n });\n\n this.input = '';\n }\n fetchSmallTalk() {\n this.loading = true;\n this.cdr.markForCheck();\n\n const url = `${this.environment.BASE_URL}/bot/small-talk/${this.botId}/${this.userId}`;\n\n this.http\n .get<{ smallTalk: string }>(url, {\n headers: {\n 'x-api-key': this.apiKey,\n },\n })\n .pipe(\n catchError((error) => {\n console.error('Error while fetching small talk:', error);\n\n return of(null);\n })\n )\n .subscribe((response) => {\n this.loading = false;\n this.cdr.markForCheck();\n\n if (!response) {\n return;\n }\n\n if (response && response.smallTalk) {\n this.chatLog.push({\n type: 'ai',\n message: this.processMessage(response.smallTalk),\n time: formatNow(this.timezone),\n isFeedbackMsg: true,\n });\n this.showFeedBackIconsIndex = this.chatLog.length - 2;\n // this.scrollToBottom();\n this.cdr.markForCheck();\n }\n });\n }\n\n readAllChunks = (stream: any) => {\n const reader = stream.getReader();\n const allSuggestions: string[] = [];\n\n reader.closed.catch((err: any) => {\n if (err) {\n console.error('Error reading stream: ', err);\n }\n\n this.isChatingWithAi = false;\n this.scrollToBottom();\n return;\n });\n\n return new ReadableStream({\n start: (controller) => {\n return this.pump(controller, reader, allSuggestions);\n },\n });\n };\n\n pump(controller: any, reader: any, allSuggestions: string[]) {\n reader.read().then(({ done, value }: any) => {\n const lastItem = this.chatLog[this.chatLog.length - 1];\n\n if (done) {\n lastItem.message = this.processMessageForDisplay(lastItem.message);\n this.chatLog.pop();\n this.chatLog.push(lastItem);\n if (allSuggestions?.length) {\n this.chatLog.push({\n type: 'suggestions',\n suggestions: allSuggestions\n })\n }\n\n controller.close();\n this.isChatingWithAi = false;\n // this.scrollToBottom();\n this.cdr.markForCheck();\n this.showStartAgain = true;\n\n // setTimeout(() => {\n // this.fetchSmallTalk();\n // },1000)\n return;\n }\n\n let decodedChunk = this.decoder.decode(value, { stream: true });\n this.aiResponse += decodedChunk;\n if (lastItem.type === 'ai') {\n const suggestionsMatch = this.aiResponse.match(/<sug>(.*?)<\\/sug>/g);\n if (suggestionsMatch) {\n suggestionsMatch.forEach((match) => {\n this.aiResponse = this.aiResponse.replace(match, \"\");\n allSuggestions.push(match?.replace(/<\\/?sug>/g, \"\"));\n });\n }\n\n lastItem.message = this.aiResponse;\n this.cdr.markForCheck();\n } else {\n this.isChatingWithAi = false;\n\n let aiFormattedData: any;\n\n try {\n console.log('parsing json ')\n aiFormattedData = JSON.parse(JSON.parse(this.aiResponse))\n }\n catch (e) {\n try {\n console.log('parsing json 2')\n aiFormattedData = JSON.parse(this.aiResponse)\n } catch (e) { }\n }\n\n console.log('parsing json done')\n\n if (aiFormattedData && aiFormattedData?.section_id?.length > 0) {\n if (aiFormattedData.section_id == 'company_search' || aiFormattedData.section_id == 'user_search' || aiFormattedData.section_id == 'industry_company_search') {\n this.fetchMyConnections().subscribe();\n this.fetchPendingRequests().subscribe();\n }\n\n if (aiFormattedData.section_id == this.myUpcomingSessionAction) {\n var speakerIds = [];\n aiFormattedData.content?.forEach(session => {\n speakerIds = [...speakerIds, ...session.speakers]\n });\n\n if (speakerIds?.length > 0)\n this.getSpeakersByStaffIds(speakerIds);\n }\n\n if (aiFormattedData.section_id == this.addToMyAgendaAction && aiFormattedData.content?.length > 0) {\n this.openPage.next({\n sectionId: aiFormattedData.section_id,\n sessionIds: aiFormattedData.content\n })\n }\n\n if (aiFormattedData.section_id == this.connectOrFollowAction) {\n let usersLen = aiFormattedData.content?.length;\n if (usersLen > 1) {\n this.openPage.next({\n sectionId: \"open_networking_drawer\",\n search: aiFormattedData.content\n })\n }\n else if (usersLen == 1) {\n this.openPage.next({\n sectionId: aiFormattedData.section_id,\n connetUserIds: [aiFormattedData.content[0].userId]\n })\n }\n }\n\n if (aiFormattedData.is_open_page == \"true\") {\n this.openPage.next({\n sectionId: aiFormattedData.section_id,\n search: aiFormattedData.content\n });\n\n if (this.isMobileBrowser()) {\n aiFormattedData.message += \"\\n\\n\" + '<a id=\"closeBotNow\">Click Here</a> to see results.'\n }\n }\n\n\n\n this.chatLog.push({\n type: 'ai',\n message: aiFormattedData.message,\n action: aiFormattedData,\n time: formatNow(this.timezone)\n });\n\n if (this.isMobileBrowser()) {\n setTimeout(() => {\n this.addCloseBotClickEvent();\n }, 500);\n }\n\n this.aiResponse = \"\";\n } else {\n this.chatLog.push({\n type: 'ai',\n message: this.aiResponse,\n time: formatNow(this.timezone),\n });\n }\n\n this.showFeedBackIconsIndex = this.chatLog.length - 1;\n this.cdr.markForCheck();\n }\n\n this.scrollToBottom();\n\n // Enqueue the next data chunk into our target stream\n controller.enqueue(value);\n this.pump(controller, reader, allSuggestions);\n });\n }\n\n submitFeedback(flag: boolean) {\n this.feedbackDone = true;\n this.showFeedBackIconsIndex = null;\n const url = `${this.environment.BASE_URL}/bot/feedback`;\n fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'x-api-key': this.apiKey,\n },\n body: JSON.stringify({ flag, user_id: this.userId, bot_id: this.botId }),\n }).then(() => {\n if (flag) {\n this.chatLog.push({\n type: 'ai',\n message:\n this.thumbsUpMessage ||\n `Great. May I assist you with anything else?`,\n time: formatNow(this.timezone),\n isFeedbackMsg: true,\n });\n\n this.scrollToBottom();\n this.cdr.markForCheck();\n this.feedbackDone = false;\n this.showFeedBackIconsIndex = null;\n return;\n }\n\n this.chatLog.push({\n type: 'ai',\n message: this.processMessage(\n this.thumbsDownMessages[this.thumbsDownMsgIndex]\n ),\n time: formatNow(this.timezone),\n isFeedbackMsg: true,\n });\n this.thumbsDownMsgIndex =\n (this.thumbsDownMsgIndex + 1) % this.thumbsDownMessages.length;\n this.scrollToBottom();\n this.cdr.markForCheck();\n this.feedbackDone = false;\n this.showFeedBackIconsIndex = null;\n });\n }\n\n handleSubmit() {\n this.fetchData();\n this.scrollToBottom();\n }\n\n handleUpClick(idx: any) {\n if (this.feedbackDone) {\n return;\n }\n\n this.submitFeedback(true);\n this.chatLog[idx].liked = !this.chatLog[idx].liked;\n\n if (this.chatLog[idx].unliked) {\n this.chatLog[idx].unliked = !this.chatLog[idx].unliked;\n }\n\n this.cdr.markForCheck();\n }\n\n handleDownClick(idx: any) {\n if (this.feedbackDone) return;\n this.submitFeedback(false);\n this.chatLog[idx].unliked = !this.chatLog[idx].unliked;\n if (this.chatLog[idx].liked)\n this.chatLog[idx].liked = !this.chatLog[idx].liked;\n }\n handleCopyClick(index: any) {\n // Copy the message to the clipboard\n const contentToCopy = this.chatLog[index].message;\n navigator.clipboard.writeText(contentToCopy).then(() => {\n // Indicate that the message was copied\n this.chatLog[index].copied = true;\n this.cdr.detectChanges();\n // Reset the copied state after a delay\n setTimeout(() => {\n this.chatLog[index].copied = false;\n this.cdr.detectChanges();\n }, 2000); // Reset after 2 seconds\n });\n }\n\n scrollToBottom() {\n let counter = 0;\n const interval = setInterval(() => {\n this.chatMain.nativeElement.scrollTop =\n this.chatMain.nativeElement.scrollHeight;\n if (counter++ > 5) clearInterval(interval);\n }, 5);\n }\n\n handleAction(action: any) {\n console.info(\"incoming action from the chatbot AI\")\n console.info(action)\n\n if (action?.content) {\n\n }\n }\n\n ngAfterViewInit() {\n // Check if the drawer is initially open and apply overflow hidden to body if so\n if (this.drawer.opened) {\n this.setBodyOverflow();\n }\n\n // Listen to changes in the drawer being opened or closed\n this.drawer.openedChange.subscribe((opened: boolean) => {\n if (opened) {\n this.setBodyOverflow();\n } else {\n this.removeBodyOverflow();\n }\n });\n\n this.drawer.openedChange.subscribe((opened) => {\n if (opened) {\n setTimeout(() => {\n if (this.myTextarea && this.myTextarea.nativeElement) {\n this.myTextarea.nativeElement.focus(); // Focus on the textarea\n }\n });\n }\n });\n }\n\n private setBodyOverflow() {\n this.renderer.addClass(document.body, this.bodyOverflowClass);\n }\n\n private removeBodyOverflow() {\n this.renderer.removeClass(document.body, this.bodyOverflowClass);\n }\n\n getSpeakersByStaffIds(ids) {\n const url =\n `${this.environment.USERS_API}/events/${this.eventId}/users/get-by-staff-ids`\n fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'Authorization': \"Bearer \" + \"your_token_here\",\n },\n body: JSON.stringify(ids),\n })\n .then((response) => {\n if (response.ok) {\n return response.json(); // Parse the JSON body of the response\n } else {\n throw new Error('Network response was not ok.');\n }\n })\n .then((data) => {\n if (data?.length > 0) {\n data.forEach(speaker => {\n this.speakers[speaker.id] = speaker;\n });\n\n this.cdr.markForCheck();\n }\n })\n .catch((err) => {\n console.error('Error fetching data:', err);\n this.loading = false;\n });\n }\n\n performSessionAction(sessionId, action) {\n this.sessionActions.next({\n sessionId,\n action\n });\n }\n\n addCloseBotClickEvent() {\n const element = this.elementRef.nativeElement.querySelector('#closeBotNow');\n if (element) {\n this.renderer.listen(element, 'click', () => {\n this.closeBot.next();\n });\n }\n }\n\n isMobileBrowser() {\n return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\n }\n\n connectToUser(userId) {\n this.connectWithUser.emit({\n connect: !this.canDisconnect(userId),\n userId\n });\n\n setTimeout(() => {\n this.fetchMyConnections().subscribe(res => {\n this.cdr.markForCheck();\n });\n this.fetchPendingRequests().subscribe(res => {\n this.cdr.markForCheck();\n });\n }, 500);\n }\n\n scheduleMeetingWithUser(user) {\n this.scheduleMeeting.emit(user);\n }\n\n canConnect(userId) {\n return !(this.canDisconnect(userId) || this.pendingRequests.find(a => a == userId))\n }\n\n canDisconnect(userId) {\n return this.myConnections.find(conn => conn.userId == userId)\n }\n\n fetchPendingRequests() {\n const headers = new HttpHeaders({\n 'Content-Type': 'application/json',\n 'apiKey': this.autogenKey\n });\n return this.http\n .get(\n `${this.environment.USERS_API}/events/${this.eventId}/connection-requests/autogen/pending-sent-requests?userId=${this.userId}`,\n { headers }\n )\n .pipe(\n switchMap((res: any) => {\n this.pendingRequests = res;\n this.cdr.markForCheck();\n return of(res);\n }),\n catchError((error: any) => {\n console.error('Error fetching pending requests: ', error);\n return of(null);\n })\n );\n }\n\n fetchMyConnections() {\n const headers = new HttpHeaders({\n 'Content-Type': 'application/json',\n 'apiKey': this.autogenKey\n });\n return this.http\n .get(\n `${this.environment.USERS_API}/events/${this.eventId}/users-connections/autogen?userId=${this.userId}`,\n { headers }\n )\n .pipe(\n switchMap((res: any) => {\n this.myConnections = res;\n this.cdr.markForCheck();\n return of(res);\n }),\n catchError((error: any) => {\n console.error('Error fetching pending requests: ', error);\n return of(null);\n })\n );\n }\n\n\n isDropdownOpen: boolean = false;\n agents: any;\n selectedAgents = [];\n allSelected = false;\n // Toggle the dropdown visibility\n toggleDropdown() {\n this.isDropdownOpen = !this.isDropdownOpen;\n }\n\n onSelectAll(event: Event): void {\n\n this.agents?.forEach(agent => agent.selected = false);\n this.cdr.detectChanges();\n\n }\n\n onAgentChange(agent: any): void {\n //agent.selected = !agent.selected;\n //console.log(agent);\n let agentFound = this.agents.filter(p => p.id == agent.id);\n if (agentFound && agentFound.length > 0) {\n agentFound[0].selected = !agentFound[0].selected;\n this.cdr.detectChanges();\n }\n this.cdr.detectChanges();\n }\n\n areAllSelected(): boolean {\n return this.agents?.every(agent => !agent.selected);\n }\n\n getDropdownHeaderText(): string {\n const selectedAgents = this.agents?.filter(agent => agent.selected);\n if (selectedAgents && selectedAgents?.length === 0) {\n return 'All Agents';\n } else {\n return selectedAgents?.length > 1 ? `${selectedAgents?.length} Agents Selected` : `${selectedAgents?.length} Agent Selected`;\n }\n }\n fetchAgents_http() {\n this.loading = true;\n const url = `${this.environment.AGENTS_API}/CoPilot/${this.botId}/active-agents`;\n const headers = new HttpHeaders({\n 'Content-Type': 'application/json'\n });\n\n return this.http.post(url, {}, { headers }).pipe(\n switchMap((res: any) => {\n if (res) {\n this.agents = res.map(agent => ({\n ...agent,\n selected: false\n }));\n }\n this.cdr.markForCheck();\n\n return of(res);\n }),\n catchError((error) => {\n console.error('Error fetching chatbot config: ', error);\n\n return of(null);\n })\n );\n }\n\n\n fetchAgents() {\n this.fetchAgents_http()\n .subscribe();\n }\n\n\n\n // events/${eventId}/users-connections\n processMessageForDisplay(markdown: string): SafeHtml {\n if (!markdown || !(markdown.length > 0)) {\n console.error('Input Markdown is null or empty');\n return '';\n }\n\n //console.log('Markdown input:', markdown);\n\n // Convert Markdown headers to HTML headers\n let html = markdown.replace(/^(#{1,6})\\s+(.*)$/gm, (match, hashes, text) => {\n const level = hashes.length;\n return `<h${level}>${text}</h${level}>`;\n });\n\n // console.log('After header conversion:', html);\n\n // Convert Markdown links to HTML links\n html = html.replace(/\\[([^\\]]+)]\\(([^)]+)\\)/g, '<a href=\"$2\" target=\"_blank\">$1</a>');\n\n // console.log('After link conversion:', html);\n\n // Convert Markdown bold to HTML strong\n html = html.replace(/\\*\\*(.*?)\\*\\*/g, '<strong>$1</strong>');\n\n //console.log('After bold conversion:', html);\n\n // Convert new lines to <br> tags\n html = html.replace(/(?:\\r\\n|\\r|\\n)/g, '<br>');\n\n // console.log('After line breaks conversion:', html);\n\n // Optional: Sanitize the HTML to prevent XSS\n const sanitizedHtml = this.sanitizeHtml(html);\n\n // console.log('Sanitized HTML:', sanitizedHtml);\n\n return sanitizedHtml;\n }\n isCollapsed = false;\n isCollapsedForGraph = false;\n isCollapsedForFGraph = false;\n toggleCollapse() {\n this.isCollapsed = !this.isCollapsed;\n this.cdr.detectChanges();\n }\n\n toggleCollapseGraph() {\n this.isCollapsedForGraph = !this.isCollapsedForGraph;\n this.cdr.detectChanges();\n }\n toggleCollapseFGraph() {\n this.isCollapsedForFGraph = !this.isCollapsedForFGraph;\n this.cdr.detectChanges();\n }\n // [\n // {\n // \"title\": \"AI News January 2024: In-Depth and Concise - The AI Track\",\n // \"desc\": \"Each month, we compile significant news, trends, and happenings in AI, providing detailed summaries with key points in bullet form for concise yet complete understanding.\",\n // \"link\": \"https://theaitrack.com/ai-news-january-2024/\"\n // },\n // {\n // \"title\": \"Top AI News, January 2024 - Everypixel Journal\",\n // \"desc\": \"In this monthly roundup, we spotlight the top AI news stories from January, including the OpenAI vs. The New York Times Lawsuit.\",\n // \"link\": \"https://journal.everypixel.com/top-ai-news-january-2024\"\n // },\n // {\n // \"title\": \"AI News July 2024: In-Depth and Concise - The AI Track\",\n // \"desc\": \"This page features AI News for July 2024, highlighting significant events such as Canva acquiring Leonardo AI.\",\n // \"link\": \"https://theaitrack.com/ai-news-july-2024-in-depth-and-concise/\"\n // },\n // {\n // \"title\": \"January news roundup: What's new in the world of AI? - Pluralsight\",\n // \"desc\": \"OpenAI’s new GPT store, business-ready ChatGPT plans, and a predicted rise in AI-powered cybercrime.\",\n // \"link\": \"https://www.pluralsight.com/resources/blog/data/ai-this-month-january-2024\"\n // },\n // {\n // \"title\": \"AI News August 2024: In-Depth and Concise - The AI Track\",\n // \"desc\": \"This page features AI News for August 2024, with highlights such as Nvidia delaying the “Blackwell” B200 AI chips delivery.\",\n // \"link\": \"https://theaitrack.com/ai-news-august-2024-in-depth-and-concise-duplicate/\"\n // }\n // ]\n dateTime = { now: new Date().toISOString() };\n // Extracts the domain from a URL\n getDomainName(url: string): string {\n try {\n const { hostname } = new URL(url);\n return hostname.replace(/^www\\./, ''); // Remove 'www.' if present\n } catch {\n return 'unknown';\n }\n }\n\n // Generates the favicon URL\n getFaviconUrl(url: string): string {\n const domain = this.getDomainName(url);\n return `https://www.google.com/s2/favicons?sz=128&domain=${domain}`;\n }\n onCardClick(): void {\n\n this.sourcesDrawer.open();\n const button = document.getElementById('botcloseplaygroundbutton');\n if (button) {\n button.style.display = 'none';\n }\n }\n onCloseSource() {\n this.sourcesDrawer.close();\n this.isDrawerOpen = false;\n this.cdr.detectChanges(); // Trigger change detection if needed\n this.onDrawerClosed();\n }\n onDrawerClosed() {\n setTimeout(() => {\n this.isDrawerOpen = true;\n this.cdr.detectChanges(); // Trigger change detection if needed\n // Use ngClass to dynamically apply the class\n const button = document.getElementById('botcloseplaygroundbutton');\n if (button) {\n button.style.display = 'block';\n }\n }, 1000);\n }\n isDrawerOpen = true;\n\n toggleDrawer(todo) {\n this.isDrawerOpen = todo;\n this.cdr.detectChanges();\n this.updateButtonVisibility();\n }\n updateButtonVisibility() {\n const button = document.getElementById('botcloseplaygroundbutton');\n if (button) {\n button.style.display = this.isDrawerOpen ? 'block' : 'none';\n }\n }\n openLinkInNewTab(link: string): void {\n window.open(link, '_blank');\n }\n\n}\n","import { Component, Input } from '@angular/core';\n@Component({\n selector: 'hivegpt-chatbot',\n templateUrl: './chatbot.component.html',\n styleUrls: ['./chatbot.component.scss'],\n})\nexport class ChatBotComponent {\n @Input() userId!: string;\n @Input() apiKey!: string;\n @Input() botName!: string;\n @Input() botSkills!: string;\n @Input() botId!: string;\n @Input() closeButtonColor!: string;\n @Input() gradientColors!: string[];\n @Input() greeting!: string;\n @Input() sendButtonColor!: string;\n @Input() useOpenAi!: boolean;\n @Input() showClose!: boolean;\n @Input() bgGradient!: string[];\n @Input() sendButtonTextColor!: string;\n @Input() fullView!: boolean;\n @Input() bgBubbleAi!: string;\n @Input() bgBubbleUser!: string;\n @Input() closeButtonbgColor!: string;\n @Input() messageTextColorAi!: string;\n @Input() messageTextColorUser!: string;\n @Input() dateTimeColor!: string;\n @Input() dateTextColor!: string;\n @Input() formFieldBgColor!: string;\n @Input() formFieldTextColor!: string;\n @Input() thumbsUpMessage!: string;\n @Input() thumbsDownMessages!: string[];\n @Input() timezone!: string;\n @Input() eventName!: string;\n @Input() credentials!: [];\n @Input() unknownResponses!: [];\n @Input() rules!: string;\n @Input() eventId!: string;\n visible = false;\n\n toggle() {\n this.visible = !this.visible;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n@Pipe({\n name: 'safeHtml',\n})\nexport class SafeHtmlPipe implements PipeTransform {\n\n constructor(private sanitizer: DomSanitizer) {\n }\n\n transform(html): unknown {\n return html ? this.sanitizer.bypassSecurityTrustHtml(html) : '';\n }\n\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { IVideo } from '../../models/video';\nimport { DOCUMENT } from '@angular/common';\n\n@Component({\n selector: 'app-video-player',\n templateUrl: './video-player.component.html',\n styleUrls: ['./video-player.component.scss'],\n})\nexport class VideoPlayerComponent\n implements OnInit, AfterViewInit {\n @Input() currentUserId: string;\n @Input() user: any;\n @Input() eventId: string;\n @Input() videoObj: IVideo;\n @Input() isDev: boolean;\n myFollowingList: Array<string>;\n myPendingSentRequests: Array<string>;\n @Input() type: string;\n isMuted: boolean = true;\n private observer: IntersectionObserver;\n isFullscreen: boolean = false;\n @ViewChild('video') video: any;\n @ViewChild('fullscreenvideo') fullscreenvideo: any;\n isFullscreenvideoPlaying: boolean = false;\n\n @Output() connectWithUser = new EventEmitter<string>();\n @Output() scheduleMeeting = new EventEmitter<any>();\n\n constructor(\n @Inject(DOCUMENT) private doc: any,\n private el: ElementRef,\n private cdr: ChangeDetectorRef\n ) {\n }\n\n ngOnInit(): void {\n }\n\n toggleSound(isMuted = null) {\n this.isMuted = isMuted != null ? isMuted : !this.isMuted;\n setTimeout(() => {\n const video: any = this.doc\n .getElementById(this.video.id.toString());\n if (video) {\n video.muted = this.isMuted;\n this.video.isMuted = this.isMuted;\n }\n\n this.cdr.markForCheck();\n //this.muteToggle.emit(this.isMuted);\n })\n}\n\n togglePlay(playState: boolean, videoEl) {\n this.videoObj.isPlaying = !this.videoObj.isPlaying;\n setTimeout(() => { \n if (playState) { \n this.videoObj.isPlaying = true;\n videoEl.play();\n var pauseBtn = document.getElementById('pause-btn');\n pauseBtn.classList.add('hide-pause-btn');\n\n this.toggleSound(false);\n }\n else{\n this.videoObj.isPlaying = false;\n videoEl.pause();\n }\n this.cdr.markForCheck();\n })\n }\n \n ngAfterViewInit() {\n if (window.innerWidth <= 576) {\n this.observer = new IntersectionObserver(\n (entries) => {\n if (entries[0].isIntersecting === true) {\n this.video.nativeElement.play();\n } else {\n this.video.nativeElement.pause();\n }\n },\n {\n threshold: 0.75,\n }\n );\n\n this.observer.observe(this.el.nativeElement as HTMLElement);\n }\n }\n\n toggleFullscreen() {\n this.isFullscreen = !this.isFullscreen;\n if (!this.isFullscreen) {\n this.fullscreenvideo.nativeElement.pause();\n }\n }\n\n toggleFullscreenPlay() {\n this.isFullscreenvideoPlaying = !this.isFullscreenvideoPlaying;\n\n if (this.isFullscreenvideoPlaying) {\n this.fullscreenvideo.nativeElement.play();\n } else {\n this.fullscreenvideo.nativeElement.pause();\n }\n }\n\n followUser(userId) {\n this.connectWithUser.emit(userId);\n }\n\n checkPendingSentRequest(userId) {\n return this.myPendingSentRequests?.find(a => a == userId);\n }\n\n canUnfollowUser() {\n return false;\n }\n\n canFollowUser() {\n return true;\n }\n\n getIniNames(firstName, lastName) {\n if(!firstName && !lastName) {\n return '';\n }\n \n if (firstName && lastName)\n return (\n firstName.charAt(0).toUpperCase() + lastName.charAt(0).toUpperCase()\n );\n else return firstName.charAt(0).toUpperCase();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { ChatDrawerComponent } from './components/chat-drawer/chat-drawer.component';\nimport { ChatBotComponent } from './components/chatbot/chatbot.component';\nimport { SafeHtmlPipe } from './pipes/safe-html.pipe';\nimport { VideoPlayerComponent } from './components/video-player/video-player.component';\n\n@NgModule({\n declarations: [ChatBotComponent, ChatDrawerComponent, VideoPlayerComponent, SafeHtmlPipe],\n imports: [CommonModule, MatIconModule, MatSidenavModule, FormsModule],\n exports: [ChatBotComponent, ChatDrawerComponent, VideoPlayerComponent]\n})\nexport class HiveGptModule {}\n","/*\n * Public API Surface of hive-gpt\n */\n\nexport * from './lib/components/chat-drawer/chat-drawer.component';\nexport * from './lib/components/chatbot/chatbot.component';\nexport * from './lib/hivegpt.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {NotificationSocket as ɵc} from './lib/components/NotificationSocket';\nexport {ConversationService as ɵb} from './lib/components/conversation.service';\nexport {SocketService as ɵa} from './lib/components/socket-service.service';\nexport {VideoPlayerComponent as ɵd} from './lib/components/video-player/video-player.component';\nexport {SafeHtmlPipe as ɵe} from './lib/pipes/safe-html.pipe';"],"names":["Subject","Injectable","Socket","EventEmitter","ElementRef","HttpHeaders","switchMap","of","catchError","Component","ChangeDetectionStrategy","ChangeDetectorRef","HttpClient","DomSanitizer","Renderer2","ViewChild","ViewChildren","Input","Output","Pipe","Inject","DOCUMENT","NgModule","CommonModule","MatIconModule","MatSidenavModule","FormsModule"],"mappings":"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"}
1
+ {"version":3,"file":"hivegpt-hiveai-angular.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/hivegpt/eventsgpt-angular/src/lib/utils/utils.ts","../../../../projects/hivegpt/eventsgpt-angular/src/environments/environment.ts","../../../../projects/hivegpt/eventsgpt-angular/src/lib/components/conversation.service.ts","../../../../projects/hivegpt/eventsgpt-angular/src/lib/components/NotificationSocket.ts","../../../../projects/hivegpt/eventsgpt-angular/src/lib/components/socket-service.service.ts","../../../../projects/hivegpt/eventsgpt-angular/src/lib/components/chat-drawer/chat-drawer.component.ts","../../../../projects/hivegpt/eventsgpt-angular/src/lib/components/chatbot/chatbot.component.ts","../../../../projects/hivegpt/eventsgpt-angular/src/lib/pipes/safe-html.pipe.ts","../../../../projects/hivegpt/eventsgpt-angular/src/lib/components/video-player/video-player.component.ts","../../../../projects/hivegpt/eventsgpt-angular/src/lib/hivegpt.module.ts","../../../../projects/hivegpt/eventsgpt-angular/src/public-api.ts","../../../../projects/hivegpt/eventsgpt-angular/src/hivegpt-hiveai-angular.ts"],"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","const formatHoursAndMinutes = (date: Date) => {\n let hours = date.getHours() % 12;\n const minutes = date.getMinutes();\n const amPm = date.getHours() < 12 ? 'AM' : 'PM';\n if(hours === 0) hours = 12;\n\n const formattedHours = hours < 10 ? `0${hours}` : hours;\n const formattedMinutes = minutes < 10 ? `0${minutes}` : minutes;\n\n return `${formattedHours}:${formattedMinutes} ${amPm}`;\n};\n\nexport const formatNow = (timezone?: string) => {\n const now = new Date();\n if (timezone) {\n const options: any = {\n hour12: true,\n hour: 'numeric',\n minute: 'numeric',\n timeZone: timezone,\n };\n return now.toLocaleString('en-US', options);\n }\n return formatHoursAndMinutes(now);\n};\n\nexport const formatTimeStamps = (timezone: string, timestamps: any) => {\n const date = new Date(timestamps + 'Z');\n\n const options: any = {\n hour12: true,\n hour: 'numeric',\n minute: 'numeric',\n timeZone: timezone,\n };\n return date.toLocaleString('en-US', options);\n};\n","\n\nexport const prod_environment = {\n USERS_API: 'https://es-user.social27.com/api',\n BASE_URL: 'https://agent-api.hivegpt.ai',\n AGENTS_API: 'https://hive-ai.social27.com/api',\n API_KEY: 'b621eb3f-0bd2-41d5-a48c-a8f8ab7d38f8',\n SocketUrl: 'https://notif-v2-ws.social27.com/'\n}\n\nexport const dev_environment = {\n USERS_API: 'https://pre-user.social27.com/api',\n BASE_URL: 'https://agent-api.hivegpt.ai',\n AGENTS_API: 'https://hive-ai.social27.com/api',\n API_KEY: 'b621eb3f-0bd2-41d5-a48c-a8f8ab7d38f8',\n SocketUrl: 'https://notif-v2-ws.social27.com/'\n}\n","import { Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConversationService {\n\n private storageKey = 'conversationKey';\n\n constructor() {\n\n }\n generateKey(): string {\n const timestamp = Math.floor(new Date().getTime() / 1000).toString(16);\n const randomHex = 'xxxxxxxxxxxxxxxx'.replace(/[x]/g, () => {\n return (Math.floor(Math.random() * 16)).toString(16);\n });\n return timestamp + randomHex;\n }\n private generateStorageKey(key: string): string {\n return `conversationKey_${key}`;\n }\n\n private ensureKeyExists(storageKey: string, key: string): void {\n if (!localStorage.getItem(storageKey)) {\n const newKey = this.generateKey();\n localStorage.setItem(storageKey, newKey);\n }\n }\n\n getKey(key: string): string {\n const storageKey = this.generateStorageKey(key);\n this.ensureKeyExists(storageKey, key);\n return localStorage.getItem(storageKey)!;\n }\n private userSepecificNotification: Subject<any> = new Subject<any>();\n sendValidatedUserData(message: any) {\n //console.log('lgging messages', message, new Date());\\\n\n this.userSepecificNotification.next(message);\n }\n getUserSpecificNotification(): Observable<any> {\n return this.userSepecificNotification.asObservable();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Socket, SocketIoConfig } from 'ngx-socket-io';\nimport { prod_environment } from '../../environments/environment';\n\n@Injectable({\n providedIn: 'root' // This ensures the service is available across the application\n})\nexport class NotificationSocket extends Socket {\n constructor() {\n super(socketConfig);\n\n // Log connection status\n this.on('connect', () => {\n console.log('Socket connected');\n });\n\n this.on('disconnect', () => {\n console.warn('Socket disconnected');\n });\n\n this.on('connect_error', (err) => {\n console.error('Socket connection error:', err);\n });\n }\n}\n\nconst socketConfig: SocketIoConfig = {\n url: prod_environment.SocketUrl,\n options: {\n transports: ['websocket', 'polling'],\n reconnection: true,\n autoConnect: true,\n upgrade: true,\n reconnectionDelay: 1000,\n reconnectionDelayMax: 5000,\n reconnectionAttempts: Infinity\n }\n};","import { Injectable } from '@angular/core';\n\nimport { Observable, Subject } from 'rxjs';\nimport { webSocket, WebSocketSubject } from 'rxjs/webSocket';\nimport { prod_environment } from '../../environments/environment';\nimport { ConversationService } from './conversation.service';\nimport { NotificationSocket } from './NotificationSocket';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SocketService {\n public testMessage: string;\n private isCommonSocketInitialized = false;\n private isUserSpecificSocketInitialized = false;\n private isUserSpecificEventReleased = true;\n private messageQueue: any[] = [];\n private releaseInterval = 1000;\n private intervalSetup: boolean = false;\n\n constructor(\n private conversationService: ConversationService,\n private notificationSocket: NotificationSocket,\n ) {\n this.startReleasingMessages();\n }\n\n isSocketInitialized(isCommon: boolean) {\n return isCommon\n ? this.isCommonSocketInitialized\n : this.isUserSpecificSocketInitialized &&\n !this.isUserSpecificEventReleased;\n }\n\n disconnectSocketConnection() {\n this.notificationSocket.disconnect();\n }\n\n registerUserSpecificHiveSocket(botId: string, conversation_id: string) {\n const commonNotification = \"commonNotification\";\n\n this.notificationSocket.removeAllListeners(commonNotification);\n\n console.log('Registering user-specific Hive socket with botId:' + botId);\n console.log('and conversation_id:' + conversation_id);\n\n this.notificationSocket.emit('joinData', {\n groupId: `Hive_AI_Notifs_${botId}_${conversation_id}`,\n });\n\n this.notificationSocket\n .fromEvent(commonNotification)\n .subscribe((res) => {\n console.log('Received commonNotification:', res);\n this.conversationService.sendValidatedUserData(res);\n }, (error) => {\n console.error('Error receiving commonNotification:', error);\n });\n }\n\n private startReleasingMessages() {\n if (!this.intervalSetup) {\n setInterval(() => {\n if (this.messageQueue.length > 0) {\n const message = this.messageQueue.shift(); // Remove the first message from the queue\n // Handle the message here, e.g., send it to the server or process it\n console.log('Releasing message from queue:', message);\n // this.campaignService.sendValidatedUserData(message);\n }\n }, this.releaseInterval);\n this.intervalSetup = true; // Prevents multiple intervals\n }\n }\n}\n","// import { Platform } from '@angular/cdk/platform';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnInit,\n Output,\n QueryList,\n Renderer2,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { MatDrawer } from '@angular/material/sidenav';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\nimport { of, Subscription } from 'rxjs';\nimport { catchError, switchMap } from 'rxjs/operators';\nimport { formatNow, formatTimeStamps } from '../../utils/utils';\nimport { dev_environment, prod_environment } from '../../../environments/environment';\nimport { ConversationService } from '../conversation.service';\nimport { Observable } from 'rxjs';\nimport { SocketService } from '../socket-service.service';\n\n\n@Component({\n selector: 'hivegpt-chat-drawer',\n templateUrl: './chat-drawer.component.html',\n styleUrls: ['./chat-drawer.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ChatDrawerComponent implements OnInit {\n @ViewChild('chatMain') private chatMain: ElementRef;\n @ViewChildren('closeplaygroundbutton') closePlaygroundButtons: QueryList<ElementRef>;\n @ViewChild('drawer') drawer!: MatDrawer;\n @ViewChild('sourcesDrawer') sourcesDrawer!: MatDrawer;\n private bodyOverflowClass = 'body-overflow-hidden';\n @ViewChild('myTextarea', { static: false })\n myTextarea!: ElementRef<HTMLTextAreaElement>; // Reference to the textarea\n isCollapsedTrue = false;\n @Input() copilotName: string = \"HiveXGPT\";\n @Input() firstName!: string;\n @Input() lastName!: string;\n @Input() apiKey!: string;\n @Input() bgBubbleAi!: string;\n @Input() bgBubbleUser!: string;\n @Input() bgGradient!: string[];\n @Input() botName!: string;\n @Input() botSkills!: string;\n @Input() botId!: string;\n @Input() closeButtonColor!: string;\n @Input() closeButtonbgColor!: string;\n @Input() credentials!: [];\n @Input() dateTimeColor!: string;\n @Input() dateTextColor!: string;\n @Input() eventId!: string;\n @Input() s27UserToken!: string;\n @Input() eventName!: string;\n @Input() botIcon!: string;\n @Input() formFieldBgColor!: string;\n @Input() formFieldTextColor!: string;\n @Input() fullView!: boolean;\n @Input() gradientColors!: string[];\n @Input() greeting!: string;\n @Input() messageTextColorAi!: string;\n @Input() messageTextColorUser!: string;\n @Input() rules!: string;\n @Input() sendButtonColor!: string;\n @Input() sendButtonTextColor!: string;\n @Input() showClose!: boolean;\n @Input() thumbsDownMessages!: string[];\n @Input() thumbsUpMessage!: string;\n @Input() timezone!: string;\n @Input() unknownResponses!: [];\n @Input() useOpenAi!: boolean;\n @Input() userId!: string;\n @Input() isDev!: boolean;\n\n @Input() againButtonColor!: string[];\n @Input() againButtonTextColor!: string[];\n @Output() feedbackEvent = new EventEmitter<string>();\n @Output() onCloseEvent = new EventEmitter<void>();\n @Output() openPage = new EventEmitter<any>();\n @Output() sessionActions = new EventEmitter<any>();\n @Output() closeBot = new EventEmitter<any>();\n @Output() connectWithUser = new EventEmitter<any>();\n @Output() scheduleMeeting = new EventEmitter<string>();\n\n autogenKey = \"Autogen_eDJTtEU-NB0RtIpzq1w\"\n addToMyAgendaAction = \"add_to_my_agenda\";\n myUpcomingSessionAction = \"my_upcomming_session\";\n connectOrFollowAction = \"connect_or_follow\";\n aiResponse: string = '';\n chatLog: any[] = [];\n decoder = new TextDecoder();\n feedbackDone: boolean = false;\n greetingMsg: string = '';\n hasBackdropValue: boolean = false;\n input: string = '';\n listenerAdded = false;\n loading: boolean = false;\n mode: string = 'over';\n quickPrompts: any[] = [];\n thumbsDownMsgIndex = 0;\n userName: string = '';\n showStartAgain: boolean = false;\n isIOSDevice: boolean = false;\n showFeedBackIconsIndex: number | null = null;\n temperature: number = 1;\n speakers = [];\n environment: {\n USERS_API,\n BASE_URL,\n AGENTS_API\n };\n pendingRequests: any;\n myConnections: any;\n conversationKey: string;\n\n constructor(\n private cdr: ChangeDetectorRef,\n private http: HttpClient,\n private sanitizer: DomSanitizer,\n private elementRef: ElementRef,\n private renderer: Renderer2,\n private socketService: SocketService,\n private conversationService: ConversationService\n // private platform: Platform\n ) {\n this.chatMain = new ElementRef(null);\n\n // if (this.platform.IOS) {\n // this.isIOSDevice = true;\n // }\n\n }\n\n ngOnInit(): void {\n this.environment = this.isDev ? dev_environment : prod_environment;\n\n // this.fetchMyConnections().subscribe();\n // this.fetchPendingRequests().subscribe();\n\n this.changeTemperature(this.temperature);\n this.fetchBotConfig().subscribe(\n (res) => {\n this.cdr.markForCheck();\n\n this.fetchChatHistory().subscribe(\n (response) => {\n this.loading = false;\n this.mapChatHistory(response);\n this.cdr.markForCheck();\n },\n (err) => {\n console.error('Error fetching chat history:', err);\n }\n );\n },\n (err) => {\n console.error('Error fetching chat history:', err);\n }\n );\n this.fetchAgents();\n this.cdr.markForCheck();\n this.initializeSocket();\n setTimeout(() => {\n this.listenSockets();\n }, 200);\n }\n private eventSubscription: Subscription;\n initializeSocket() {\n ;\n const conversation_id = this.conversationService.getKey(this.botId);\n\n this.socketService.registerUserSpecificHiveSocket(this.botId, conversation_id);\n }\n\n subscriptionNew: any;\n socketData: any;\n\n listenSockets() {\n this.eventSubscription = this.conversationService\n .getUserSpecificNotification()\n .subscribe(\n (res) => {\n // Check if OtherFields exists in the response\n if (res?.m?.OtherFields) {\n const { \n conversation_id, \n bot_id, \n message_id,\n answer, \n web_results, \n financial_graphs, \n execution_graphs, \n online_search_terms, \n suggestions\n } = res?.m?.OtherFields;\n\n var currentChatMessage = this.chatLog.find(p => p._id == message_id); \n \n if(!currentChatMessage) {\n currentChatMessage = {\n _id: message_id,\n type: 'ai',\n time: formatNow(this.timezone),\n }\n\n this.chatLog.push(currentChatMessage);\n this.showFeedBackIconsIndex = this.chatLog.length - 1;\n }\n\n // Handle the fields based on their presence\n if (online_search_terms && Array.isArray(online_search_terms)) {\n console.log('Online Search Terms:', online_search_terms);\n currentChatMessage.searchTerms = online_search_terms;\n this.cdr.markForCheck();\n }\n\n if (web_results && Array.isArray(web_results)) {\n console.log('Web Results:', web_results);\n currentChatMessage.sourcesList = web_results;\n currentChatMessage.displayedSources = web_results?.slice(0, 3); // First 3 cards\n currentChatMessage.remainingSources = web_results?.slice(3); // Remaining items\n this.cdr.markForCheck();\n\n }\n\n if (answer) {\n this.isChatingWithAi = false;\n console.log('Answer:', answer);\n\n currentChatMessage.message = this.processMessageForDisplay(answer);\n this.cdr.markForCheck();\n this.scrollToBottom();\n }\n\n if (financial_graphs && Array.isArray(financial_graphs)) {\n console.log('Financial Graphs:', financial_graphs);\n currentChatMessage.financialGraphs = financial_graphs;\n this.cdr.markForCheck();\n }\n\n if (execution_graphs && Array.isArray(execution_graphs)) {\n console.log('Execution Graphs:', execution_graphs);\n currentChatMessage.executionGraphs = execution_graphs;\n this.cdr.markForCheck();\n }\n\n if (suggestions && Array.isArray(suggestions)) {\n console.log('suggestions:', suggestions);\n currentChatMessage.relatedListItems = suggestions;\n this.cdr.markForCheck();\n // Process online search terms as needed\n }\n\n // Add any other fields and their processing here\n } else {\n console.warn('OtherFields is missing in the response');\n }\n },\n (err) => {\n this.eventSubscription.unsubscribe();\n console.error('Error in fetching data from socket', err);\n }\n );\n }\n\n initializeSocketAndListen() {\n\n }\n handleEvent(data: any, type: string) {\n switch (type) {\n case 'webresult':\n\n break;\n case 'answer':\n\n break;\n case 'graph':\n\n break;\n default:\n break;\n }\n }\n ngOnDestroy(): void {\n if (this.eventSubscription) {\n this.eventSubscription.unsubscribe();\n }\n //this.socketService.close();\n }\n changeTemperature(newTemperature: number) {\n if (this.loading) return;\n this.temperature = newTemperature;\n const wrapper = document.querySelector('.hivegpt-chat-wrapper')\n // Remove existing theme classes from body\n wrapper?.classList.remove('creative', 'balanced', 'precise');\n\n switch (newTemperature) {\n case 0:\n wrapper?.classList.add('creative');\n break;\n case 1:\n wrapper?.classList.add('balanced');\n break;\n case 2:\n wrapper?.classList.add('precise');\n break;\n default:\n break;\n }\n }\n\n onStartAgain() {\n if (this.loading) return;\n this.showStartAgain = false;\n this.chatLog = [];\n this.chatLog.push({\n type: 'ai',\n message:\n this.greetingMsg ||\n this.processMessage(\n \"Greetings! I'm your COP28 virtual assistant. Have questions about the event? I'm here to help.\"\n ),\n time: formatNow(this.timezone),\n });\n this.archieveMessages().subscribe();\n }\n\n archieveMessages() {\n const headers = new HttpHeaders({\n 'Content-Type': 'application/json',\n 'x-api-key': this.apiKey,\n });\n const url = `${this.environment.BASE_URL}/bot/clear-history/${this.botId}/${this.userId}`;\n return this.http.post(url, {}, { headers }).pipe(\n switchMap((res: any) => {\n return of(res);\n }),\n catchError((error) => {\n return of(null);\n })\n );\n }\n\n fetchBotConfig() {\n this.loading = true;\n const url = `${this.environment.BASE_URL}/bots?bot_id=${this.botId}`;\n return this.http.get(url).pipe(\n switchMap((res: any) => {\n this.botName = res.Name;\n this.botIcon = res.Icon;\n this.botSkills = res?.Skills;\n this.greetingMsg = res.Greeting;\n\n this.thumbsDownMessages = res?.NegativeResponses?.length\n ? res.NegativeResponses\n : [\n \"We are sorry we've not been able to answer your question.<br/> However, our dedicated support team is happy to help. <span class='feedback-link' style='cursor: pointer; text-decoration: underline; font-weight: 700; color: #17235B;'>Please click here</span> and a human agent will assist you as soon as possible\",\n ];\n this.quickPrompts = res.QuickPrompts;\n this.cdr.markForCheck();\n this.loading = false;\n return of(res);\n }),\n catchError((error) => {\n console.error('Error fetching chatbot config: ', error);\n this.loading = false;\n return of(null);\n })\n );\n }\n\n fetchChatHistory(): Observable<any> {\n this.loading = true;\n this.conversationKey = this.conversationService.getKey(this.botId);\n const url = `${this.environment.BASE_URL}/conversations/${this.conversationKey}`;\n const headers = new HttpHeaders({\n 'accept': 'application/json'\n });\n\n return this.http.get(url, { headers }).pipe(\n catchError(this.handleError<any>('fetchConversation'))\n );\n }\n\n private handleError<T>(operation = 'operation', result?: T) {\n return (error: any): Observable<T> => {\n console.error(`${operation} failed: ${error.message}`);\n return of(result as T);\n };\n }\n // fetchChatHistory() {\n // this.loading = true;\n // const headers = new HttpHeaders({\n // 'Content-Type': 'application/json',\n // 'x-api-key': this.apiKey,\n // });\n // return this.http\n // .get(`${this.environment.BASE_URL}/conversations/${this.conversationKey}`, { headers })\n // .pipe(\n // switchMap((res: any) => {\n // this.loading = false;\n // return of(res);\n // }),\n // catchError((error: any) => {\n // console.error('Error fetching chat history: ', error);\n // this.loading = false;\n // return of(null);\n // })\n // );\n // }\n\n mapChatHistory(chats: any) {\n this.chatLog.push({\n type: 'ai',\n message:\n this.greetingMsg ||\n this.processMessage(\n \"Greetings! I'm your COP28 virtual assistant. Have questions about the event? I'm here to help.\"\n ),\n time: formatNow(this.timezone),\n });\n if (chats && chats?.Messages?.length) {\n chats?.Messages.forEach((chat: any) => {\n if (chat.Type == \"user\") {\n this.chatLog.push({\n type: 'user',\n message: this.processMessageForDisplay(chat.Text),\n time: formatTimeStamps(this.timezone, chat.InsertTimestamp),\n copied: false,\n isCollapsedTrue: false\n });\n }\n if (chat.Type == \"ai\") {\n var sourcesList = chat.WebLinks || [];\n var displayedSources = chat.WebLinks.slice(0, 3); // First 3 cards\n var remainingSources = chat.WebLinks.slice(3); // Remaining items\n\n this.chatLog.push({\n type: 'ai',\n message: this.processMessageForDisplay(chat.Text),\n executionGraphs: chat.ExecutionGraphs,\n searchTerms: chat.SearchTerms,\n sourcesList: sourcesList,\n displayedSources: displayedSources,\n remainingSources: remainingSources,\n time: formatTimeStamps(this.timezone, chat.InsertTimestamp),\n copied: false,\n isCollapsedTrue: false\n });\n this.showFeedBackIconsIndex = this.chatLog.length - 1;\n }\n });\n this.showStartAgain = true;\n }\n this.scrollToBottom();\n this.cdr.markForCheck();\n }\n\n processMessage(message: string): SafeHtml {\n if (!message || !(message?.length > 0)) {\n return '';\n }\n\n // console.log('here is my message')\n // console.log(message);\n\n message = message.trim();\n\n const markdownLinkRegex = /\\[([^[]+)]\\(([^)]+)\\)/g;\n const urlRegex = /(?<!href=\")\\bhttps?:\\/\\/\\S+(?<![.,])/gi;\n\n if (markdownLinkRegex.test(message)) {\n const html = message.replace(\n markdownLinkRegex,\n '<a href=\"$2\" target=\"_blank\">$1</a>'\n );\n //console.log('Sanitized message: ', message);\n return this.sanitizeHtml(html);\n }\n\n if (urlRegex.test(message)) {\n const html = message.replace(\n urlRegex,\n '<a href=\"$&\" target=\"_blank\">$&</a>'\n );\n // console.log('Sanitized message: ', message);\n return this.sanitizeHtml(html);\n }\n\n message = message.replace(/(?:\\r\\n|\\r|\\n)/g, '<br>');\n\n message = message.replace(/\\*\\*(.*?)\\*\\*/g, '<strong>$1</strong>');\n // Convert Markdown headers to HTML headers\n message = message.replace(/^(#{1,6})\\s+(.*)$/gm, (match, hashes, text) => {\n const level = hashes.length;\n return `<h${level}>${text}</h${level}>`;\n });\n\n this.cdr.markForCheck();\n const sanitizedMessage = this.sanitizeHtml(message);\n return sanitizedMessage;\n }\n\n ngAfterViewChecked() {\n const feedbackLinks =\n this.elementRef.nativeElement.querySelectorAll('.feedback-link');\n feedbackLinks.forEach((link: any) => {\n link.addEventListener(\n 'click',\n this.onFeedbackClick.bind(this, 'zendesk')\n );\n });\n // if (this.elementRef.nativeElement.querySelector('.feedback-link')) {\n // this.elementRef.nativeElement\n // .querySelector('.feedback-link')\n // .addEventListener('click', this.onFeedbackClick.bind(this, 'zendesk'));\n // }\n }\n\n sanitizeHtml(html: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustHtml(html);\n }\n\n onFeedbackClick(value: string) {\n this.feedbackEvent.emit(value);\n }\n\n onClose() {\n this.renderer.removeClass(document.body, this.bodyOverflowClass);\n this.onCloseEvent.emit();\n }\n\n sendMessageWithTile(prompt: string) {\n this.input = prompt;\n this.fetchData();\n this.scrollToBottom();\n }\n isChatingWithAi = false;\n fetchData() {\n this.input = this.input?.trim();\n if (!this.input || this.loading) {\n return;\n }\n\n this.chatLog.push({\n type: 'user',\n message: this.processMessageForDisplay(this.input),\n time: formatNow(this.timezone),\n copied: false,\n isCollapsedTrue: false\n });\n\n this.cdr.markForCheck();\n\n this.aiResponse = '';\n this.isChatingWithAi = true;\n\n const url =\n `${this.environment.BASE_URL}/ai/ask`// +\n // (this.useOpenAi === false ? '/llm-hf' : '');\n fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'x-api-key': this.apiKey,\n },\n body: JSON.stringify({\n user_question: this.input,\n user_id: this.userId,\n bot_id: this.botId,\n message_id: this.conversationService.generateKey(),\n // temperature: this.temperature,\n // event_id: this.eventId,\n // token: this.s27UserToken,\n agents: this.agents.filter(p => p.selected).map(p => p.id),\n conversation_id: this.conversationKey\n }),\n })\n // Retrieve its body as ReadableStream\n .then((response) => {\n //return this.readAllChunks(response.body); \n return of(null);\n })\n .catch((err) => {\n console.error('Err: ', err);\n this.isChatingWithAi = false;\n });\n\n this.input = '';\n }\n fetchDataFor(msg) {\n const inputMsg = msg?.trim();\n if (!inputMsg || this.loading) {\n return;\n }\n this.scrollToBottom();\n this.chatLog.push({\n type: 'user',\n message: this.processMessageForDisplay(inputMsg),\n time: formatNow(this.timezone),\n copied: false,\n isCollapsedTrue: false\n });\n\n this.cdr.markForCheck();\n\n this.aiResponse = '';\n this.isChatingWithAi = true;\n\n const url =\n `${this.environment.BASE_URL}/ai/ask`// +\n // (this.useOpenAi === false ? '/llm-hf' : '');\n fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'x-api-key': this.apiKey,\n },\n body: JSON.stringify({\n user_question: inputMsg,\n user_id: this.userId,\n bot_id: this.botId,\n message_id: this.conversationService.generateKey(),\n // temperature: this.temperature,\n // event_id: this.eventId,\n // token: this.s27UserToken,\n agents: this.agents.filter(p => p.selected).map(p => p.id),\n conversation_id: this.conversationKey\n }),\n })\n // Retrieve its body as ReadableStream\n .then((response) => {\n return this.readAllChunks(response.body);\n })\n .catch((err) => {\n console.error('Err: ', err);\n this.isChatingWithAi = false;\n });\n\n this.input = '';\n }\n fetchSmallTalk() {\n this.loading = true;\n this.cdr.markForCheck();\n\n const url = `${this.environment.BASE_URL}/bot/small-talk/${this.botId}/${this.userId}`;\n\n this.http\n .get<{ smallTalk: string }>(url, {\n headers: {\n 'x-api-key': this.apiKey,\n },\n })\n .pipe(\n catchError((error) => {\n console.error('Error while fetching small talk:', error);\n\n return of(null);\n })\n )\n .subscribe((response) => {\n this.loading = false;\n this.cdr.markForCheck();\n\n if (!response) {\n return;\n }\n\n if (response && response.smallTalk) {\n this.chatLog.push({\n type: 'ai',\n message: this.processMessage(response.smallTalk),\n time: formatNow(this.timezone),\n isFeedbackMsg: true,\n });\n this.showFeedBackIconsIndex = this.chatLog.length - 2;\n // this.scrollToBottom();\n this.cdr.markForCheck();\n }\n });\n }\n\n readAllChunks = (stream: any) => {\n const reader = stream.getReader();\n const allSuggestions: string[] = [];\n\n reader.closed.catch((err: any) => {\n if (err) {\n console.error('Error reading stream: ', err);\n }\n\n this.isChatingWithAi = false;\n this.scrollToBottom();\n return;\n });\n\n return new ReadableStream({\n start: (controller) => {\n return this.pump(controller, reader, allSuggestions);\n },\n });\n };\n\n pump(controller: any, reader: any, allSuggestions: string[]) {\n reader.read().then(({ done, value }: any) => {\n const lastItem = this.chatLog[this.chatLog.length - 1];\n\n if (done) {\n lastItem.message = this.processMessageForDisplay(lastItem.message);\n this.chatLog.pop();\n this.chatLog.push(lastItem);\n if (allSuggestions?.length) {\n this.chatLog.push({\n type: 'suggestions',\n suggestions: allSuggestions\n })\n }\n\n controller.close();\n this.isChatingWithAi = false;\n // this.scrollToBottom();\n this.cdr.markForCheck();\n this.showStartAgain = true;\n\n // setTimeout(() => {\n // this.fetchSmallTalk();\n // },1000)\n return;\n }\n\n let decodedChunk = this.decoder.decode(value, { stream: true });\n this.aiResponse += decodedChunk;\n if (lastItem.type === 'ai') {\n const suggestionsMatch = this.aiResponse.match(/<sug>(.*?)<\\/sug>/g);\n if (suggestionsMatch) {\n suggestionsMatch.forEach((match) => {\n this.aiResponse = this.aiResponse.replace(match, \"\");\n allSuggestions.push(match?.replace(/<\\/?sug>/g, \"\"));\n });\n }\n\n lastItem.message = this.aiResponse;\n this.cdr.markForCheck();\n } else {\n this.isChatingWithAi = false;\n\n let aiFormattedData: any;\n\n try {\n console.log('parsing json ')\n aiFormattedData = JSON.parse(JSON.parse(this.aiResponse))\n }\n catch (e) {\n try {\n console.log('parsing json 2')\n aiFormattedData = JSON.parse(this.aiResponse)\n } catch (e) { }\n }\n\n console.log('parsing json done')\n\n if (aiFormattedData && aiFormattedData?.section_id?.length > 0) {\n if (aiFormattedData.section_id == 'company_search' || aiFormattedData.section_id == 'user_search' || aiFormattedData.section_id == 'industry_company_search') {\n this.fetchMyConnections().subscribe();\n this.fetchPendingRequests().subscribe();\n }\n\n if (aiFormattedData.section_id == this.myUpcomingSessionAction) {\n var speakerIds = [];\n aiFormattedData.content?.forEach(session => {\n speakerIds = [...speakerIds, ...session.speakers]\n });\n\n if (speakerIds?.length > 0)\n this.getSpeakersByStaffIds(speakerIds);\n }\n\n if (aiFormattedData.section_id == this.addToMyAgendaAction && aiFormattedData.content?.length > 0) {\n this.openPage.next({\n sectionId: aiFormattedData.section_id,\n sessionIds: aiFormattedData.content\n })\n }\n\n if (aiFormattedData.section_id == this.connectOrFollowAction) {\n let usersLen = aiFormattedData.content?.length;\n if (usersLen > 1) {\n this.openPage.next({\n sectionId: \"open_networking_drawer\",\n search: aiFormattedData.content\n })\n }\n else if (usersLen == 1) {\n this.openPage.next({\n sectionId: aiFormattedData.section_id,\n connetUserIds: [aiFormattedData.content[0].userId]\n })\n }\n }\n\n if (aiFormattedData.is_open_page == \"true\") {\n this.openPage.next({\n sectionId: aiFormattedData.section_id,\n search: aiFormattedData.content\n });\n\n if (this.isMobileBrowser()) {\n aiFormattedData.message += \"\\n\\n\" + '<a id=\"closeBotNow\">Click Here</a> to see results.'\n }\n }\n\n\n\n this.chatLog.push({\n type: 'ai',\n message: aiFormattedData.message,\n action: aiFormattedData,\n time: formatNow(this.timezone)\n });\n\n if (this.isMobileBrowser()) {\n setTimeout(() => {\n this.addCloseBotClickEvent();\n }, 500);\n }\n\n this.aiResponse = \"\";\n } else {\n this.chatLog.push({\n type: 'ai',\n message: this.aiResponse,\n time: formatNow(this.timezone),\n });\n }\n\n this.showFeedBackIconsIndex = this.chatLog.length - 1;\n this.cdr.markForCheck();\n }\n\n this.scrollToBottom();\n\n // Enqueue the next data chunk into our target stream\n controller.enqueue(value);\n this.pump(controller, reader, allSuggestions);\n });\n }\n\n submitFeedback(flag: boolean) {\n this.feedbackDone = true;\n this.showFeedBackIconsIndex = null;\n const url = `${this.environment.BASE_URL}/bot/feedback`;\n fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'x-api-key': this.apiKey,\n },\n body: JSON.stringify({ flag, user_id: this.userId, bot_id: this.botId }),\n }).then(() => {\n if (flag) {\n this.chatLog.push({\n type: 'ai',\n message:\n this.thumbsUpMessage ||\n `Great. May I assist you with anything else?`,\n time: formatNow(this.timezone),\n isFeedbackMsg: true,\n });\n\n this.scrollToBottom();\n this.cdr.markForCheck();\n this.feedbackDone = false;\n this.showFeedBackIconsIndex = null;\n return;\n }\n\n this.chatLog.push({\n type: 'ai',\n message: this.processMessage(\n this.thumbsDownMessages[this.thumbsDownMsgIndex]\n ),\n time: formatNow(this.timezone),\n isFeedbackMsg: true,\n });\n this.thumbsDownMsgIndex =\n (this.thumbsDownMsgIndex + 1) % this.thumbsDownMessages.length;\n this.scrollToBottom();\n this.cdr.markForCheck();\n this.feedbackDone = false;\n this.showFeedBackIconsIndex = null;\n });\n }\n\n handleSubmit() {\n this.fetchData();\n this.scrollToBottom();\n }\n\n handleUpClick(idx: any) {\n if (this.feedbackDone) {\n return;\n }\n\n this.submitFeedback(true);\n this.chatLog[idx].liked = !this.chatLog[idx].liked;\n\n if (this.chatLog[idx].unliked) {\n this.chatLog[idx].unliked = !this.chatLog[idx].unliked;\n }\n\n this.cdr.markForCheck();\n }\n\n handleDownClick(idx: any) {\n if (this.feedbackDone) return;\n this.submitFeedback(false);\n this.chatLog[idx].unliked = !this.chatLog[idx].unliked;\n if (this.chatLog[idx].liked)\n this.chatLog[idx].liked = !this.chatLog[idx].liked;\n }\n handleCopyClick(index: any) {\n // Copy the message to the clipboard\n const contentToCopy = this.chatLog[index].message;\n navigator.clipboard.writeText(contentToCopy).then(() => {\n // Indicate that the message was copied\n this.chatLog[index].copied = true;\n this.cdr.detectChanges();\n // Reset the copied state after a delay\n setTimeout(() => {\n this.chatLog[index].copied = false;\n this.cdr.detectChanges();\n }, 2000); // Reset after 2 seconds\n });\n }\n\n scrollToBottom() {\n let counter = 0;\n const interval = setInterval(() => {\n this.chatMain.nativeElement.scrollTop =\n this.chatMain.nativeElement.scrollHeight;\n if (counter++ > 5) clearInterval(interval);\n }, 5);\n }\n\n handleAction(action: any) {\n console.info(\"incoming action from the chatbot AI\")\n console.info(action)\n\n if (action?.content) {\n\n }\n }\n\n ngAfterViewInit() {\n // Check if the drawer is initially open and apply overflow hidden to body if so\n if (this.drawer.opened) {\n this.setBodyOverflow();\n }\n\n // Listen to changes in the drawer being opened or closed\n this.drawer.openedChange.subscribe((opened: boolean) => {\n if (opened) {\n this.setBodyOverflow();\n } else {\n this.removeBodyOverflow();\n }\n });\n\n this.drawer.openedChange.subscribe((opened) => {\n if (opened) {\n setTimeout(() => {\n if (this.myTextarea && this.myTextarea.nativeElement) {\n this.myTextarea.nativeElement.focus(); // Focus on the textarea\n }\n });\n }\n });\n }\n\n private setBodyOverflow() {\n this.renderer.addClass(document.body, this.bodyOverflowClass);\n }\n\n private removeBodyOverflow() {\n this.renderer.removeClass(document.body, this.bodyOverflowClass);\n }\n\n getSpeakersByStaffIds(ids) {\n const url =\n `${this.environment.USERS_API}/events/${this.eventId}/users/get-by-staff-ids`\n fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'Authorization': \"Bearer \" + \"your_token_here\",\n },\n body: JSON.stringify(ids),\n })\n .then((response) => {\n if (response.ok) {\n return response.json(); // Parse the JSON body of the response\n } else {\n throw new Error('Network response was not ok.');\n }\n })\n .then((data) => {\n if (data?.length > 0) {\n data.forEach(speaker => {\n this.speakers[speaker.id] = speaker;\n });\n\n this.cdr.markForCheck();\n }\n })\n .catch((err) => {\n console.error('Error fetching data:', err);\n this.loading = false;\n });\n }\n\n performSessionAction(sessionId, action) {\n this.sessionActions.next({\n sessionId,\n action\n });\n }\n\n addCloseBotClickEvent() {\n const element = this.elementRef.nativeElement.querySelector('#closeBotNow');\n if (element) {\n this.renderer.listen(element, 'click', () => {\n this.closeBot.next();\n });\n }\n }\n\n isMobileBrowser() {\n return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\n }\n\n connectToUser(userId) {\n this.connectWithUser.emit({\n connect: !this.canDisconnect(userId),\n userId\n });\n\n setTimeout(() => {\n this.fetchMyConnections().subscribe(res => {\n this.cdr.markForCheck();\n });\n this.fetchPendingRequests().subscribe(res => {\n this.cdr.markForCheck();\n });\n }, 500);\n }\n\n scheduleMeetingWithUser(user) {\n this.scheduleMeeting.emit(user);\n }\n\n canConnect(userId) {\n return !(this.canDisconnect(userId) || this.pendingRequests.find(a => a == userId))\n }\n\n canDisconnect(userId) {\n return this.myConnections.find(conn => conn.userId == userId)\n }\n\n fetchPendingRequests() {\n const headers = new HttpHeaders({\n 'Content-Type': 'application/json',\n 'apiKey': this.autogenKey\n });\n return this.http\n .get(\n `${this.environment.USERS_API}/events/${this.eventId}/connection-requests/autogen/pending-sent-requests?userId=${this.userId}`,\n { headers }\n )\n .pipe(\n switchMap((res: any) => {\n this.pendingRequests = res;\n this.cdr.markForCheck();\n return of(res);\n }),\n catchError((error: any) => {\n console.error('Error fetching pending requests: ', error);\n return of(null);\n })\n );\n }\n\n fetchMyConnections() {\n const headers = new HttpHeaders({\n 'Content-Type': 'application/json',\n 'apiKey': this.autogenKey\n });\n return this.http\n .get(\n `${this.environment.USERS_API}/events/${this.eventId}/users-connections/autogen?userId=${this.userId}`,\n { headers }\n )\n .pipe(\n switchMap((res: any) => {\n this.myConnections = res;\n this.cdr.markForCheck();\n return of(res);\n }),\n catchError((error: any) => {\n console.error('Error fetching pending requests: ', error);\n return of(null);\n })\n );\n }\n\n\n isDropdownOpen: boolean = false;\n agents: any;\n selectedAgents = [];\n allSelected = false;\n // Toggle the dropdown visibility\n toggleDropdown() {\n this.isDropdownOpen = !this.isDropdownOpen;\n }\n\n onSelectAll(event: Event): void {\n\n this.agents?.forEach(agent => agent.selected = false);\n this.cdr.detectChanges();\n\n }\n\n onAgentChange(agent: any): void {\n //agent.selected = !agent.selected;\n //console.log(agent);\n let agentFound = this.agents.filter(p => p.id == agent.id);\n if (agentFound && agentFound.length > 0) {\n agentFound[0].selected = !agentFound[0].selected;\n this.cdr.detectChanges();\n }\n this.cdr.detectChanges();\n }\n\n areAllSelected(): boolean {\n return this.agents?.every(agent => !agent.selected);\n }\n\n getDropdownHeaderText(): string {\n const selectedAgents = this.agents?.filter(agent => agent.selected);\n if (selectedAgents && selectedAgents?.length === 0) {\n return 'All Agents';\n } else {\n return selectedAgents?.length > 1 ? `${selectedAgents?.length} Agents Selected` : `${selectedAgents?.length} Agent Selected`;\n }\n }\n fetchAgents_http() {\n this.loading = true;\n const url = `${this.environment.AGENTS_API}/CoPilot/${this.botId}/active-agents`;\n const headers = new HttpHeaders({\n 'Content-Type': 'application/json'\n });\n\n return this.http.post(url, {}, { headers }).pipe(\n switchMap((res: any) => {\n if (res) {\n this.agents = res.map(agent => ({\n ...agent,\n selected: false\n }));\n }\n this.cdr.markForCheck();\n\n return of(res);\n }),\n catchError((error) => {\n console.error('Error fetching chatbot config: ', error);\n\n return of(null);\n })\n );\n }\n\n\n fetchAgents() {\n this.fetchAgents_http()\n .subscribe();\n }\n\n\n\n // events/${eventId}/users-connections\n processMessageForDisplay(markdown: string): SafeHtml {\n if (!markdown || !(markdown.length > 0)) {\n console.error('Input Markdown is null or empty');\n return '';\n }\n\n //console.log('Markdown input:', markdown);\n\n // Convert Markdown headers to HTML headers\n let html = markdown.replace(/^(#{1,6})\\s+(.*)$/gm, (match, hashes, text) => {\n const level = hashes.length;\n return `<h${level}>${text}</h${level}>`;\n });\n\n // console.log('After header conversion:', html);\n\n // Convert Markdown links to HTML links\n html = html.replace(/\\[([^\\]]+)]\\(([^)]+)\\)/g, '<a href=\"$2\" target=\"_blank\">$1</a>');\n\n // console.log('After link conversion:', html);\n\n // Convert Markdown bold to HTML strong\n html = html.replace(/\\*\\*(.*?)\\*\\*/g, '<strong>$1</strong>');\n\n //console.log('After bold conversion:', html);\n\n // Convert new lines to <br> tags\n html = html.replace(/(?:\\r\\n|\\r|\\n)/g, '<br>');\n\n // console.log('After line breaks conversion:', html);\n\n // Optional: Sanitize the HTML to prevent XSS\n const sanitizedHtml = this.sanitizeHtml(html);\n\n // console.log('Sanitized HTML:', sanitizedHtml);\n\n return sanitizedHtml;\n }\n isCollapsed = false;\n isCollapsedForGraph = false;\n isCollapsedForFGraph = false;\n toggleCollapse() {\n this.isCollapsed = !this.isCollapsed;\n this.cdr.detectChanges();\n }\n\n toggleCollapseGraph() {\n this.isCollapsedForGraph = !this.isCollapsedForGraph;\n this.cdr.detectChanges();\n }\n toggleCollapseFGraph() {\n this.isCollapsedForFGraph = !this.isCollapsedForFGraph;\n this.cdr.detectChanges();\n }\n // [\n // {\n // \"title\": \"AI News January 2024: In-Depth and Concise - The AI Track\",\n // \"desc\": \"Each month, we compile significant news, trends, and happenings in AI, providing detailed summaries with key points in bullet form for concise yet complete understanding.\",\n // \"link\": \"https://theaitrack.com/ai-news-january-2024/\"\n // },\n // {\n // \"title\": \"Top AI News, January 2024 - Everypixel Journal\",\n // \"desc\": \"In this monthly roundup, we spotlight the top AI news stories from January, including the OpenAI vs. The New York Times Lawsuit.\",\n // \"link\": \"https://journal.everypixel.com/top-ai-news-january-2024\"\n // },\n // {\n // \"title\": \"AI News July 2024: In-Depth and Concise - The AI Track\",\n // \"desc\": \"This page features AI News for July 2024, highlighting significant events such as Canva acquiring Leonardo AI.\",\n // \"link\": \"https://theaitrack.com/ai-news-july-2024-in-depth-and-concise/\"\n // },\n // {\n // \"title\": \"January news roundup: What's new in the world of AI? - Pluralsight\",\n // \"desc\": \"OpenAI’s new GPT store, business-ready ChatGPT plans, and a predicted rise in AI-powered cybercrime.\",\n // \"link\": \"https://www.pluralsight.com/resources/blog/data/ai-this-month-january-2024\"\n // },\n // {\n // \"title\": \"AI News August 2024: In-Depth and Concise - The AI Track\",\n // \"desc\": \"This page features AI News for August 2024, with highlights such as Nvidia delaying the “Blackwell” B200 AI chips delivery.\",\n // \"link\": \"https://theaitrack.com/ai-news-august-2024-in-depth-and-concise-duplicate/\"\n // }\n // ]\n dateTime = { now: new Date().toISOString() };\n // Extracts the domain from a URL\n getDomainName(url: string): string {\n try {\n const { hostname } = new URL(url);\n return hostname.replace(/^www\\./, ''); // Remove 'www.' if present\n } catch {\n return 'unknown';\n }\n }\n\n // Generates the favicon URL\n getFaviconUrl(url: string): string {\n const domain = this.getDomainName(url);\n return `https://www.google.com/s2/favicons?sz=128&domain=${domain}`;\n }\n onCardClick(): void {\n\n this.sourcesDrawer.open();\n const button = document.getElementById('botcloseplaygroundbutton');\n if (button) {\n button.style.display = 'none';\n }\n }\n onCloseSource() {\n this.sourcesDrawer.close();\n this.isDrawerOpen = false;\n this.cdr.detectChanges(); // Trigger change detection if needed\n this.onDrawerClosed();\n }\n onDrawerClosed() {\n setTimeout(() => {\n this.isDrawerOpen = true;\n this.cdr.detectChanges(); // Trigger change detection if needed\n // Use ngClass to dynamically apply the class\n const button = document.getElementById('botcloseplaygroundbutton');\n if (button) {\n button.style.display = 'block';\n }\n }, 1000);\n }\n isDrawerOpen = true;\n\n toggleDrawer(todo) {\n this.isDrawerOpen = todo;\n this.cdr.detectChanges();\n this.updateButtonVisibility();\n }\n updateButtonVisibility() {\n const button = document.getElementById('botcloseplaygroundbutton');\n if (button) {\n button.style.display = this.isDrawerOpen ? 'block' : 'none';\n }\n }\n openLinkInNewTab(link: string): void {\n window.open(link, '_blank');\n }\n\n}\n","import { Component, Input } from '@angular/core';\n@Component({\n selector: 'hivegpt-chatbot',\n templateUrl: './chatbot.component.html',\n styleUrls: ['./chatbot.component.scss'],\n})\nexport class ChatBotComponent {\n @Input() userId!: string;\n @Input() apiKey!: string;\n @Input() botName!: string;\n @Input() botSkills!: string;\n @Input() botId!: string;\n @Input() closeButtonColor!: string;\n @Input() gradientColors!: string[];\n @Input() greeting!: string;\n @Input() sendButtonColor!: string;\n @Input() useOpenAi!: boolean;\n @Input() showClose!: boolean;\n @Input() bgGradient!: string[];\n @Input() sendButtonTextColor!: string;\n @Input() fullView!: boolean;\n @Input() bgBubbleAi!: string;\n @Input() bgBubbleUser!: string;\n @Input() closeButtonbgColor!: string;\n @Input() messageTextColorAi!: string;\n @Input() messageTextColorUser!: string;\n @Input() dateTimeColor!: string;\n @Input() dateTextColor!: string;\n @Input() formFieldBgColor!: string;\n @Input() formFieldTextColor!: string;\n @Input() thumbsUpMessage!: string;\n @Input() thumbsDownMessages!: string[];\n @Input() timezone!: string;\n @Input() eventName!: string;\n @Input() credentials!: [];\n @Input() unknownResponses!: [];\n @Input() rules!: string;\n @Input() eventId!: string;\n visible = false;\n\n toggle() {\n this.visible = !this.visible;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n@Pipe({\n name: 'safeHtml',\n})\nexport class SafeHtmlPipe implements PipeTransform {\n\n constructor(private sanitizer: DomSanitizer) {\n }\n\n transform(html): unknown {\n return html ? this.sanitizer.bypassSecurityTrustHtml(html) : '';\n }\n\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { IVideo } from '../../models/video';\nimport { DOCUMENT } from '@angular/common';\n\n@Component({\n selector: 'app-video-player',\n templateUrl: './video-player.component.html',\n styleUrls: ['./video-player.component.scss'],\n})\nexport class VideoPlayerComponent\n implements OnInit, AfterViewInit {\n @Input() currentUserId: string;\n @Input() user: any;\n @Input() eventId: string;\n @Input() videoObj: IVideo;\n @Input() isDev: boolean;\n myFollowingList: Array<string>;\n myPendingSentRequests: Array<string>;\n @Input() type: string;\n isMuted: boolean = true;\n private observer: IntersectionObserver;\n isFullscreen: boolean = false;\n @ViewChild('video') video: any;\n @ViewChild('fullscreenvideo') fullscreenvideo: any;\n isFullscreenvideoPlaying: boolean = false;\n\n @Output() connectWithUser = new EventEmitter<string>();\n @Output() scheduleMeeting = new EventEmitter<any>();\n\n constructor(\n @Inject(DOCUMENT) private doc: any,\n private el: ElementRef,\n private cdr: ChangeDetectorRef\n ) {\n }\n\n ngOnInit(): void {\n }\n\n toggleSound(isMuted = null) {\n this.isMuted = isMuted != null ? isMuted : !this.isMuted;\n setTimeout(() => {\n const video: any = this.doc\n .getElementById(this.video.id.toString());\n if (video) {\n video.muted = this.isMuted;\n this.video.isMuted = this.isMuted;\n }\n\n this.cdr.markForCheck();\n //this.muteToggle.emit(this.isMuted);\n })\n}\n\n togglePlay(playState: boolean, videoEl) {\n this.videoObj.isPlaying = !this.videoObj.isPlaying;\n setTimeout(() => { \n if (playState) { \n this.videoObj.isPlaying = true;\n videoEl.play();\n var pauseBtn = document.getElementById('pause-btn');\n pauseBtn.classList.add('hide-pause-btn');\n\n this.toggleSound(false);\n }\n else{\n this.videoObj.isPlaying = false;\n videoEl.pause();\n }\n this.cdr.markForCheck();\n })\n }\n \n ngAfterViewInit() {\n if (window.innerWidth <= 576) {\n this.observer = new IntersectionObserver(\n (entries) => {\n if (entries[0].isIntersecting === true) {\n this.video.nativeElement.play();\n } else {\n this.video.nativeElement.pause();\n }\n },\n {\n threshold: 0.75,\n }\n );\n\n this.observer.observe(this.el.nativeElement as HTMLElement);\n }\n }\n\n toggleFullscreen() {\n this.isFullscreen = !this.isFullscreen;\n if (!this.isFullscreen) {\n this.fullscreenvideo.nativeElement.pause();\n }\n }\n\n toggleFullscreenPlay() {\n this.isFullscreenvideoPlaying = !this.isFullscreenvideoPlaying;\n\n if (this.isFullscreenvideoPlaying) {\n this.fullscreenvideo.nativeElement.play();\n } else {\n this.fullscreenvideo.nativeElement.pause();\n }\n }\n\n followUser(userId) {\n this.connectWithUser.emit(userId);\n }\n\n checkPendingSentRequest(userId) {\n return this.myPendingSentRequests?.find(a => a == userId);\n }\n\n canUnfollowUser() {\n return false;\n }\n\n canFollowUser() {\n return true;\n }\n\n getIniNames(firstName, lastName) {\n if(!firstName && !lastName) {\n return '';\n }\n \n if (firstName && lastName)\n return (\n firstName.charAt(0).toUpperCase() + lastName.charAt(0).toUpperCase()\n );\n else return firstName.charAt(0).toUpperCase();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { ChatDrawerComponent } from './components/chat-drawer/chat-drawer.component';\nimport { ChatBotComponent } from './components/chatbot/chatbot.component';\nimport { SafeHtmlPipe } from './pipes/safe-html.pipe';\nimport { VideoPlayerComponent } from './components/video-player/video-player.component';\n\n@NgModule({\n declarations: [ChatBotComponent, ChatDrawerComponent, VideoPlayerComponent, SafeHtmlPipe],\n imports: [CommonModule, MatIconModule, MatSidenavModule, FormsModule],\n exports: [ChatBotComponent, ChatDrawerComponent, VideoPlayerComponent]\n})\nexport class HiveGptModule {}\n","/*\n * Public API Surface of hive-gpt\n */\n\nexport * from './lib/components/chat-drawer/chat-drawer.component';\nexport * from './lib/components/chatbot/chatbot.component';\nexport * from './lib/hivegpt.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {NotificationSocket as ɵc} from './lib/components/NotificationSocket';\nexport {ConversationService as ɵb} from './lib/components/conversation.service';\nexport {SocketService as ɵa} from './lib/components/socket-service.service';\nexport {VideoPlayerComponent as ɵd} from './lib/components/video-player/video-player.component';\nexport {SafeHtmlPipe as ɵe} from './lib/pipes/safe-html.pipe';"],"names":["Subject","Injectable","Socket","EventEmitter","ElementRef","HttpHeaders","switchMap","of","catchError","Component","ChangeDetectionStrategy","ChangeDetectorRef","HttpClient","DomSanitizer","Renderer2","ViewChild","ViewChildren","Input","Output","Pipe","Inject","DOCUMENT","NgModule","CommonModule","MatIconModule","MatSidenavModule","FormsModule"],"mappings":"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"}