@hivegpt/hiveai-angular 0.0.588 → 0.0.589

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/README.md +0 -26
  2. package/bundles/hivegpt-hiveai-angular.umd.js +535 -3549
  3. package/bundles/hivegpt-hiveai-angular.umd.js.map +1 -1
  4. package/bundles/hivegpt-hiveai-angular.umd.min.js +1 -1
  5. package/bundles/hivegpt-hiveai-angular.umd.min.js.map +1 -1
  6. package/esm2015/hivegpt-hiveai-angular.js +5 -8
  7. package/esm2015/lib/components/NotificationSocket.js +22 -29
  8. package/esm2015/lib/components/bot.service.js +12 -18
  9. package/esm2015/lib/components/chat-drawer/chat-drawer.component.js +214 -2429
  10. package/esm2015/lib/components/chatbot/chatbot.component.js +5 -9
  11. package/esm2015/lib/components/conversation.service.js +5 -13
  12. package/esm2015/lib/components/socket-service.service.js +11 -21
  13. package/esm2015/lib/components/translations/translation.service.js +36 -38
  14. package/esm2015/lib/components/voice-agent/components/voice-agent-modal/voice-agent-modal.component.js +17 -35
  15. package/esm2015/lib/components/voice-agent/services/audio-analyzer.service.js +5 -11
  16. package/esm2015/lib/components/voice-agent/services/voice-agent.service.js +142 -183
  17. package/esm2015/lib/components/voice-agent/voice-agent.module.js +2 -10
  18. package/esm2015/lib/components/voice-agent/voice-modal-tokens.js +1 -1
  19. package/esm2015/lib/models/chat.js +2 -0
  20. package/esm2015/lib/utils/utils.js +2 -4
  21. package/esm2015/public-api.js +3 -2
  22. package/fesm2015/hivegpt-hiveai-angular.js +462 -3343
  23. package/fesm2015/hivegpt-hiveai-angular.js.map +1 -1
  24. package/hivegpt-hiveai-angular.d.ts +4 -7
  25. package/hivegpt-hiveai-angular.d.ts.map +1 -1
  26. package/hivegpt-hiveai-angular.metadata.json +1 -1
  27. package/lib/components/NotificationSocket.d.ts +3 -1
  28. package/lib/components/NotificationSocket.d.ts.map +1 -1
  29. package/lib/components/bot.service.d.ts +2 -1
  30. package/lib/components/bot.service.d.ts.map +1 -1
  31. package/lib/components/chat-drawer/chat-drawer.component.d.ts +52 -285
  32. package/lib/components/chat-drawer/chat-drawer.component.d.ts.map +1 -1
  33. package/lib/components/chatbot/chatbot.component.d.ts +1 -8
  34. package/lib/components/chatbot/chatbot.component.d.ts.map +1 -1
  35. package/lib/components/conversation.service.d.ts +2 -8
  36. package/lib/components/conversation.service.d.ts.map +1 -1
  37. package/lib/components/socket-service.service.d.ts +4 -3
  38. package/lib/components/socket-service.service.d.ts.map +1 -1
  39. package/lib/components/translations/translation.service.d.ts.map +1 -1
  40. package/lib/components/voice-agent/components/voice-agent-modal/voice-agent-modal.component.d.ts +4 -10
  41. package/lib/components/voice-agent/components/voice-agent-modal/voice-agent-modal.component.d.ts.map +1 -1
  42. package/lib/components/voice-agent/services/audio-analyzer.service.d.ts +0 -5
  43. package/lib/components/voice-agent/services/audio-analyzer.service.d.ts.map +1 -1
  44. package/lib/components/voice-agent/services/voice-agent.service.d.ts +9 -32
  45. package/lib/components/voice-agent/services/voice-agent.service.d.ts.map +1 -1
  46. package/lib/components/voice-agent/voice-agent.module.d.ts +0 -4
  47. package/lib/components/voice-agent/voice-agent.module.d.ts.map +1 -1
  48. package/lib/components/voice-agent/voice-modal-tokens.d.ts +0 -4
  49. package/lib/components/voice-agent/voice-modal-tokens.d.ts.map +1 -1
  50. package/lib/models/chat.d.ts +134 -0
  51. package/lib/models/chat.d.ts.map +1 -0
  52. package/lib/utils/utils.d.ts +1 -1
  53. package/lib/utils/utils.d.ts.map +1 -1
  54. package/package.json +2 -4
  55. package/public-api.d.ts +2 -1
  56. package/public-api.d.ts.map +1 -1
  57. package/esm2015/lib/components/voice-agent/services/daily-voice-client.service.js +0 -312
  58. package/esm2015/lib/components/voice-agent/services/websocket-voice-client.service.js +0 -95
  59. package/esm2015/lib/services/platform-token-refresh.service.js +0 -173
  60. package/lib/components/voice-agent/services/daily-voice-client.service.d.ts +0 -65
  61. package/lib/components/voice-agent/services/daily-voice-client.service.d.ts.map +0 -1
  62. package/lib/components/voice-agent/services/websocket-voice-client.service.d.ts +0 -49
  63. package/lib/components/voice-agent/services/websocket-voice-client.service.d.ts.map +0 -1
  64. package/lib/services/platform-token-refresh.service.d.ts +0 -59
  65. package/lib/services/platform-token-refresh.service.d.ts.map +0 -1
@@ -2,14 +2,11 @@
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
4
  export * from './public-api';
5
- export { NotificationSocket as ɵd } from './lib/components/NotificationSocket';
6
- export { BotHtmlEditorComponent as ɵj } from './lib/components/bot-html-editor/bot-html-editor.component';
5
+ export { BotHtmlEditorComponent as ɵg } from './lib/components/bot-html-editor/bot-html-editor.component';
7
6
  export { BotsService as ɵa } from './lib/components/bot.service';
8
7
  export { ConversationService as ɵc } from './lib/components/conversation.service';
9
8
  export { SocketService as ɵb } from './lib/components/socket-service.service';
10
- export { TranslationService as ɵe } from './lib/components/translations/translation.service';
11
- export { VideoPlayerComponent as ɵh } from './lib/components/video-player/video-player.component';
12
- export { DailyVoiceClientService as ɵg } from './lib/components/voice-agent/services/daily-voice-client.service';
13
- export { WebSocketVoiceClientService as ɵf } from './lib/components/voice-agent/services/websocket-voice-client.service';
14
- export { SafeHtmlPipe as ɵi } from './lib/pipes/safe-html.pipe';
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl2ZWdwdC1oaXZlYWktYW5ndWxhci5qcyIsInNvdXJjZVJvb3QiOiIvVXNlcnMvcm9oaXR0aGFrdXIvaGl2ZS1ncHQvSGl2ZUFJLVBhY2thZ2VzL0FuZ3VsYXIvcHJvamVjdHMvaGl2ZWdwdC9ldmVudHNncHQtYW5ndWxhci9zcmMvIiwic291cmNlcyI6WyJoaXZlZ3B0LWhpdmVhaS1hbmd1bGFyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUM7QUFFN0IsT0FBTyxFQUFDLGtCQUFrQixJQUFJLEVBQUUsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxzQkFBc0IsSUFBSSxFQUFFLEVBQUMsTUFBTSw0REFBNEQsQ0FBQztBQUN4RyxPQUFPLEVBQUMsV0FBVyxJQUFJLEVBQUUsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUNoRixPQUFPLEVBQUMsYUFBYSxJQUFJLEVBQUUsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxtREFBbUQsQ0FBQztBQUMzRixPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDaEcsT0FBTyxFQUFDLHVCQUF1QixJQUFJLEVBQUUsRUFBQyxNQUFNLGtFQUFrRSxDQUFDO0FBQy9HLE9BQU8sRUFBQywyQkFBMkIsSUFBSSxFQUFFLEVBQUMsTUFBTSxzRUFBc0UsQ0FBQztBQUN2SCxPQUFPLEVBQUMsWUFBWSxJQUFJLEVBQUUsRUFBQyxNQUFNLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge05vdGlmaWNhdGlvblNvY2tldCBhcyDJtWR9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvTm90aWZpY2F0aW9uU29ja2V0JztcbmV4cG9ydCB7Qm90SHRtbEVkaXRvckNvbXBvbmVudCBhcyDJtWp9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvYm90LWh0bWwtZWRpdG9yL2JvdC1odG1sLWVkaXRvci5jb21wb25lbnQnO1xuZXhwb3J0IHtCb3RzU2VydmljZSBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvYm90LnNlcnZpY2UnO1xuZXhwb3J0IHtDb252ZXJzYXRpb25TZXJ2aWNlIGFzIMm1Y30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9jb252ZXJzYXRpb24uc2VydmljZSc7XG5leHBvcnQge1NvY2tldFNlcnZpY2UgYXMgybVifSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NvY2tldC1zZXJ2aWNlLnNlcnZpY2UnO1xuZXhwb3J0IHtUcmFuc2xhdGlvblNlcnZpY2UgYXMgybVlfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RyYW5zbGF0aW9ucy90cmFuc2xhdGlvbi5zZXJ2aWNlJztcbmV4cG9ydCB7VmlkZW9QbGF5ZXJDb21wb25lbnQgYXMgybVofSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3ZpZGVvLXBsYXllci92aWRlby1wbGF5ZXIuY29tcG9uZW50JztcbmV4cG9ydCB7RGFpbHlWb2ljZUNsaWVudFNlcnZpY2UgYXMgybVnfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3ZvaWNlLWFnZW50L3NlcnZpY2VzL2RhaWx5LXZvaWNlLWNsaWVudC5zZXJ2aWNlJztcbmV4cG9ydCB7V2ViU29ja2V0Vm9pY2VDbGllbnRTZXJ2aWNlIGFzIMm1Zn0gZnJvbSAnLi9saWIvY29tcG9uZW50cy92b2ljZS1hZ2VudC9zZXJ2aWNlcy93ZWJzb2NrZXQtdm9pY2UtY2xpZW50LnNlcnZpY2UnO1xuZXhwb3J0IHtTYWZlSHRtbFBpcGUgYXMgybVpfSBmcm9tICcuL2xpYi9waXBlcy9zYWZlLWh0bWwucGlwZSc7Il19
9
+ export { TranslationService as ɵd } from './lib/components/translations/translation.service';
10
+ export { VideoPlayerComponent as ɵe } from './lib/components/video-player/video-player.component';
11
+ export { SafeHtmlPipe as ɵf } from './lib/pipes/safe-html.pipe';
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl2ZWdwdC1oaXZlYWktYW5ndWxhci5qcyIsInNvdXJjZVJvb3QiOiIvVXNlcnMvcm9oaXR0aGFrdXIvaGl2ZS1ncHQvSGl2ZUFJLVBhY2thZ2VzL0FuZ3VsYXIvcHJvamVjdHMvaGl2ZWdwdC9ldmVudHNncHQtYW5ndWxhci9zcmMvIiwic291cmNlcyI6WyJoaXZlZ3B0LWhpdmVhaS1hbmd1bGFyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUM7QUFFN0IsT0FBTyxFQUFDLHNCQUFzQixJQUFJLEVBQUUsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQ3hHLE9BQU8sRUFBQyxXQUFXLElBQUksRUFBRSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxhQUFhLElBQUksRUFBRSxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDNUUsT0FBTyxFQUFDLGtCQUFrQixJQUFJLEVBQUUsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQzNGLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUNoRyxPQUFPLEVBQUMsWUFBWSxJQUFJLEVBQUUsRUFBQyxNQUFNLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0JvdEh0bWxFZGl0b3JDb21wb25lbnQgYXMgybVnfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2JvdC1odG1sLWVkaXRvci9ib3QtaHRtbC1lZGl0b3IuY29tcG9uZW50JztcbmV4cG9ydCB7Qm90c1NlcnZpY2UgYXMgybVhfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2JvdC5zZXJ2aWNlJztcbmV4cG9ydCB7Q29udmVyc2F0aW9uU2VydmljZSBhcyDJtWN9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvY29udmVyc2F0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHtTb2NrZXRTZXJ2aWNlIGFzIMm1Yn0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9zb2NrZXQtc2VydmljZS5zZXJ2aWNlJztcbmV4cG9ydCB7VHJhbnNsYXRpb25TZXJ2aWNlIGFzIMm1ZH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy90cmFuc2xhdGlvbnMvdHJhbnNsYXRpb24uc2VydmljZSc7XG5leHBvcnQge1ZpZGVvUGxheWVyQ29tcG9uZW50IGFzIMm1ZX0gZnJvbSAnLi9saWIvY29tcG9uZW50cy92aWRlby1wbGF5ZXIvdmlkZW8tcGxheWVyLmNvbXBvbmVudCc7XG5leHBvcnQge1NhZmVIdG1sUGlwZSBhcyDJtWZ9IGZyb20gJy4vbGliL3BpcGVzL3NhZmUtaHRtbC5waXBlJzsiXX0=
@@ -1,39 +1,32 @@
1
- import { Injectable } from '@angular/core';
1
+ import { Injectable, InjectionToken, Inject, Optional } from '@angular/core';
2
2
  import { Socket } from 'ngx-socket-io';
3
3
  import { prod_environment } from '../../environments/environment';
4
4
  import * as i0 from "@angular/core";
5
+ export const SOCKET_URL_TOKEN = new InjectionToken('SOCKET_URL');
5
6
  export class NotificationSocket extends Socket {
6
- constructor() {
7
- super(socketConfig);
8
- // Log connection status
9
- this.on('connect', () => {
10
- console.log('Socket connected');
11
- });
12
- this.on('disconnect', () => {
13
- console.warn('Socket disconnected');
14
- });
15
- this.on('connect_error', (err) => {
16
- console.error('Socket connection error:', err);
17
- });
7
+ constructor(socketUrl) {
8
+ const config = {
9
+ url: socketUrl || prod_environment.SocketUrl,
10
+ options: {
11
+ transports: ['websocket', 'polling'],
12
+ reconnection: true,
13
+ autoConnect: true,
14
+ upgrade: true,
15
+ reconnectionDelay: 1000,
16
+ reconnectionDelayMax: 5000,
17
+ reconnectionAttempts: Infinity
18
+ }
19
+ };
20
+ super(config);
18
21
  }
19
22
  }
20
- NotificationSocket.ɵprov = i0.ɵɵdefineInjectable({ factory: function NotificationSocket_Factory() { return new NotificationSocket(); }, token: NotificationSocket, providedIn: "root" });
23
+ NotificationSocket.ɵprov = i0.ɵɵdefineInjectable({ factory: function NotificationSocket_Factory() { return new NotificationSocket(i0.ɵɵinject(SOCKET_URL_TOKEN, 8)); }, token: NotificationSocket, providedIn: "root" });
21
24
  NotificationSocket.decorators = [
22
25
  { type: Injectable, args: [{
23
- providedIn: 'root' // This ensures the service is available across the application
26
+ providedIn: 'root'
24
27
  },] }
25
28
  ];
26
- NotificationSocket.ctorParameters = () => [];
27
- const socketConfig = {
28
- url: prod_environment.SocketUrl,
29
- options: {
30
- transports: ['websocket', 'polling'],
31
- reconnection: true,
32
- autoConnect: true,
33
- upgrade: true,
34
- reconnectionDelay: 1000,
35
- reconnectionDelayMax: 5000,
36
- reconnectionAttempts: Infinity
37
- }
38
- };
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTm90aWZpY2F0aW9uU29ja2V0LmpzIiwic291cmNlUm9vdCI6Ii9Vc2Vycy9yb2hpdHRoYWt1ci9oaXZlLWdwdC9IaXZlQUktUGFja2FnZXMvQW5ndWxhci9wcm9qZWN0cy9oaXZlZ3B0L2V2ZW50c2dwdC1hbmd1bGFyL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL05vdGlmaWNhdGlvblNvY2tldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQWtCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQUtsRSxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsTUFBTTtJQUM1QztRQUNFLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUVwQix3QkFBd0I7UUFDeEIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFO1lBQ3RCLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUNsQyxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxFQUFFLENBQUMsWUFBWSxFQUFFLEdBQUcsRUFBRTtZQUN6QixPQUFPLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDdEMsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsRUFBRSxDQUFDLGVBQWUsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQy9CLE9BQU8sQ0FBQyxLQUFLLENBQUMsMEJBQTBCLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDakQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzs7O1lBbkJGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTSxDQUFFLCtEQUErRDthQUNwRjs7O0FBb0JELE1BQU0sWUFBWSxHQUFtQjtJQUNuQyxHQUFHLEVBQUUsZ0JBQWdCLENBQUMsU0FBUztJQUMvQixPQUFPLEVBQUU7UUFDUCxVQUFVLEVBQUUsQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFDO1FBQ3BDLFlBQVksRUFBRSxJQUFJO1FBQ2xCLFdBQVcsRUFBRSxJQUFJO1FBQ2pCLE9BQU8sRUFBRSxJQUFJO1FBQ2IsaUJBQWlCLEVBQUUsSUFBSTtRQUN2QixvQkFBb0IsRUFBRSxJQUFJO1FBQzFCLG9CQUFvQixFQUFFLFFBQVE7S0FDL0I7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU29ja2V0LCBTb2NrZXRJb0NvbmZpZyB9IGZyb20gJ25neC1zb2NrZXQtaW8nO1xuaW1wb3J0IHsgcHJvZF9lbnZpcm9ubWVudCB9IGZyb20gJy4uLy4uL2Vudmlyb25tZW50cy9lbnZpcm9ubWVudCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnICAvLyBUaGlzIGVuc3VyZXMgdGhlIHNlcnZpY2UgaXMgYXZhaWxhYmxlIGFjcm9zcyB0aGUgYXBwbGljYXRpb25cbn0pXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uU29ja2V0IGV4dGVuZHMgU29ja2V0IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoc29ja2V0Q29uZmlnKTtcblxuICAgIC8vIExvZyBjb25uZWN0aW9uIHN0YXR1c1xuICAgIHRoaXMub24oJ2Nvbm5lY3QnLCAoKSA9PiB7XG4gICAgICBjb25zb2xlLmxvZygnU29ja2V0IGNvbm5lY3RlZCcpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5vbignZGlzY29ubmVjdCcsICgpID0+IHtcbiAgICAgIGNvbnNvbGUud2FybignU29ja2V0IGRpc2Nvbm5lY3RlZCcpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5vbignY29ubmVjdF9lcnJvcicsIChlcnIpID0+IHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ1NvY2tldCBjb25uZWN0aW9uIGVycm9yOicsIGVycik7XG4gICAgfSk7XG4gIH1cbn1cblxuY29uc3Qgc29ja2V0Q29uZmlnOiBTb2NrZXRJb0NvbmZpZyA9IHtcbiAgdXJsOiBwcm9kX2Vudmlyb25tZW50LlNvY2tldFVybCxcbiAgb3B0aW9uczoge1xuICAgIHRyYW5zcG9ydHM6IFsnd2Vic29ja2V0JywgJ3BvbGxpbmcnXSxcbiAgICByZWNvbm5lY3Rpb246IHRydWUsXG4gICAgYXV0b0Nvbm5lY3Q6IHRydWUsXG4gICAgdXBncmFkZTogdHJ1ZSxcbiAgICByZWNvbm5lY3Rpb25EZWxheTogMTAwMCxcbiAgICByZWNvbm5lY3Rpb25EZWxheU1heDogNTAwMCxcbiAgICByZWNvbm5lY3Rpb25BdHRlbXB0czogSW5maW5pdHlcbiAgfVxufTsiXX0=
29
+ NotificationSocket.ctorParameters = () => [
30
+ { type: String, decorators: [{ type: Optional }, { type: Inject, args: [SOCKET_URL_TOKEN,] }] }
31
+ ];
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTm90aWZpY2F0aW9uU29ja2V0LmpzIiwic291cmNlUm9vdCI6Ii9Vc2Vycy9yb2hpdHRoYWt1ci9oaXZlLWdwdC9IaXZlQUktUGFja2FnZXMvQW5ndWxhci9wcm9qZWN0cy9oaXZlZ3B0L2V2ZW50c2dwdC1hbmd1bGFyL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL05vdGlmaWNhdGlvblNvY2tldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBRSxNQUFNLEVBQWtCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQUVsRSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLGNBQWMsQ0FBUyxZQUFZLENBQUMsQ0FBQztBQUt6RSxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsTUFBTTtJQUM1QyxZQUFrRCxTQUFrQjtRQUNsRSxNQUFNLE1BQU0sR0FBbUI7WUFDN0IsR0FBRyxFQUFFLFNBQVMsSUFBSSxnQkFBZ0IsQ0FBQyxTQUFTO1lBQzVDLE9BQU8sRUFBRTtnQkFDUCxVQUFVLEVBQUUsQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFDO2dCQUNwQyxZQUFZLEVBQUUsSUFBSTtnQkFDbEIsV0FBVyxFQUFFLElBQUk7Z0JBQ2pCLE9BQU8sRUFBRSxJQUFJO2dCQUNiLGlCQUFpQixFQUFFLElBQUk7Z0JBQ3ZCLG9CQUFvQixFQUFFLElBQUk7Z0JBQzFCLG9CQUFvQixFQUFFLFFBQVE7YUFDL0I7U0FDRixDQUFDO1FBRUYsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2hCLENBQUM7Ozs7WUFuQkYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7eUNBRWMsUUFBUSxZQUFJLE1BQU0sU0FBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiwgSW5qZWN0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU29ja2V0LCBTb2NrZXRJb0NvbmZpZyB9IGZyb20gJ25neC1zb2NrZXQtaW8nO1xuaW1wb3J0IHsgcHJvZF9lbnZpcm9ubWVudCB9IGZyb20gJy4uLy4uL2Vudmlyb25tZW50cy9lbnZpcm9ubWVudCc7XG5cbmV4cG9ydCBjb25zdCBTT0NLRVRfVVJMX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oJ1NPQ0tFVF9VUkwnKTtcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uU29ja2V0IGV4dGVuZHMgU29ja2V0IHtcbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgQEluamVjdChTT0NLRVRfVVJMX1RPS0VOKSBzb2NrZXRVcmw/OiBzdHJpbmcpIHtcbiAgICBjb25zdCBjb25maWc6IFNvY2tldElvQ29uZmlnID0ge1xuICAgICAgdXJsOiBzb2NrZXRVcmwgfHwgcHJvZF9lbnZpcm9ubWVudC5Tb2NrZXRVcmwsXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIHRyYW5zcG9ydHM6IFsnd2Vic29ja2V0JywgJ3BvbGxpbmcnXSxcbiAgICAgICAgcmVjb25uZWN0aW9uOiB0cnVlLFxuICAgICAgICBhdXRvQ29ubmVjdDogdHJ1ZSxcbiAgICAgICAgdXBncmFkZTogdHJ1ZSxcbiAgICAgICAgcmVjb25uZWN0aW9uRGVsYXk6IDEwMDAsXG4gICAgICAgIHJlY29ubmVjdGlvbkRlbGF5TWF4OiA1MDAwLFxuICAgICAgICByZWNvbm5lY3Rpb25BdHRlbXB0czogSW5maW5pdHlcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgc3VwZXIoY29uZmlnKTtcbiAgfVxufVxuIl19
@@ -1,7 +1,6 @@
1
- import { HttpClient } from '@angular/common/http';
1
+ import { HttpClient, HttpHeaders } from '@angular/common/http';
2
2
  import { Injectable } from '@angular/core';
3
3
  import { map } from 'rxjs/operators';
4
- import { HttpHeaders } from '@angular/common/http';
5
4
  import { Subject } from 'rxjs';
6
5
  import * as i0 from "@angular/core";
7
6
  import * as i1 from "@angular/common/http";
@@ -9,7 +8,10 @@ export class BotsService {
9
8
  constructor(http) {
10
9
  this.http = http;
11
10
  this.eventDescription = new Subject();
12
- this.bot_api = 'https://agent-api.hivegpt.ai/';
11
+ this.bot_api = '';
12
+ }
13
+ setBaseUrl(url) {
14
+ this.bot_api = url.replace(/\/$/, '') + '/';
13
15
  }
14
16
  fetchSpeechAuthorizationToken(botId, apiKey, domain) {
15
17
  const headers = new HttpHeaders({
@@ -18,24 +20,16 @@ export class BotsService {
18
20
  'hive-bot-id': botId,
19
21
  'domain-authority': domain
20
22
  });
21
- const apiUrl = `${this.bot_api}speech/issue_token`;
22
- const url = `${apiUrl}`;
23
- return this.http.get(url, { headers }).pipe(map((resp) => {
24
- return resp.token;
25
- }));
23
+ const url = `${this.bot_api}speech/issue_token`;
24
+ return this.http.get(url, { headers }).pipe(map((resp) => resp.token));
26
25
  }
27
26
  getWorkflowsByOrgId(orgId) {
28
- const apiUrl = `${this.bot_api}workflows`;
29
- const url = `${apiUrl}?org_id=${orgId}`;
30
- return this.http.get(url).pipe(map((resp) => {
31
- return resp;
32
- }));
27
+ const url = `${this.bot_api}workflows?org_id=${orgId}`;
28
+ return this.http.get(url);
33
29
  }
34
30
  getWorkflowExecutionById(executionId) {
35
- const apiUrl = `${this.bot_api}workflows/execution/${executionId}`;
36
- return this.http.get(apiUrl).pipe(map((resp) => {
37
- return resp;
38
- }));
31
+ const url = `${this.bot_api}workflows/execution/${executionId}`;
32
+ return this.http.get(url);
39
33
  }
40
34
  }
41
35
  BotsService.ɵprov = i0.ɵɵdefineInjectable({ factory: function BotsService_Factory() { return new BotsService(i0.ɵɵinject(i1.HttpClient)); }, token: BotsService, providedIn: "root" });
@@ -47,4 +41,4 @@ BotsService.decorators = [
47
41
  BotsService.ctorParameters = () => [
48
42
  { type: HttpClient }
49
43
  ];
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm90LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiL1VzZXJzL3JvaGl0dGhha3VyL2hpdmUtZ3B0L0hpdmVBSS1QYWNrYWdlcy9Bbmd1bGFyL3Byb2plY3RzL2hpdmVncHQvZXZlbnRzZ3B0LWFuZ3VsYXIvc3JjLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvYm90LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFLM0MsTUFBTSxPQUFPLFdBQVc7SUFHcEIsWUFBb0IsSUFBZ0I7UUFBaEIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUZwQyxxQkFBZ0IsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ2pDLFlBQU8sR0FBRywrQkFBK0IsQ0FBQztJQUNGLENBQUM7SUFFekMsNkJBQTZCLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNO1FBQy9DLE1BQU0sT0FBTyxHQUFHLElBQUksV0FBVyxDQUFDO1lBQzVCLGNBQWMsRUFBRSxrQkFBa0I7WUFDbEMsV0FBVyxFQUFFLE1BQU07WUFDbkIsYUFBYSxFQUFFLEtBQUs7WUFDcEIsa0JBQWtCLEVBQUUsTUFBTTtTQUM3QixDQUFDLENBQUM7UUFFSCxNQUFNLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLG9CQUFvQixDQUFDO1FBQ25ELE1BQU0sR0FBRyxHQUFHLEdBQUcsTUFBTSxFQUFFLENBQUM7UUFDeEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDdkMsR0FBRyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUU7WUFDZCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDdEIsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNOLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxLQUFhO1FBQzdCLE1BQU0sTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sV0FBVyxDQUFDO1FBQzFDLE1BQU0sR0FBRyxHQUFHLEdBQUcsTUFBTSxXQUFXLEtBQUssRUFBRSxDQUFDO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUMxQixHQUFHLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRTtZQUNkLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDO0lBRUQsd0JBQXdCLENBQUMsV0FBbUI7UUFDeEMsTUFBTSxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyx1QkFBdUIsV0FBVyxFQUFFLENBQUM7UUFDbkUsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQzdCLEdBQUcsQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFO1lBQ2QsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNOLENBQUM7Ozs7WUExQ0osVUFBVSxTQUFDO2dCQUNSLFVBQVUsRUFBRSxNQUFNO2FBQ3JCOzs7WUFUUSxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEJvdHNTZXJ2aWNlIHtcbiAgICBldmVudERlc2NyaXB0aW9uID0gbmV3IFN1YmplY3QoKTtcbiAgICBib3RfYXBpID0gJ2h0dHBzOi8vYWdlbnQtYXBpLmhpdmVncHQuYWkvJztcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQpIHsgfVxuXG4gICAgZmV0Y2hTcGVlY2hBdXRob3JpemF0aW9uVG9rZW4oYm90SWQsIGFwaUtleSwgZG9tYWluKSB7XG4gICAgICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAgICd4LWFwaS1rZXknOiBhcGlLZXksXG4gICAgICAgICAgICAnaGl2ZS1ib3QtaWQnOiBib3RJZCxcbiAgICAgICAgICAgICdkb21haW4tYXV0aG9yaXR5JzogZG9tYWluXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGNvbnN0IGFwaVVybCA9IGAke3RoaXMuYm90X2FwaX1zcGVlY2gvaXNzdWVfdG9rZW5gO1xuICAgICAgICBjb25zdCB1cmwgPSBgJHthcGlVcmx9YDtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsLCB7IGhlYWRlcnMgfSkucGlwZShcbiAgICAgICAgICAgIG1hcCgocmVzcDogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlc3AudG9rZW47XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldFdvcmtmbG93c0J5T3JnSWQob3JnSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGNvbnN0IGFwaVVybCA9IGAke3RoaXMuYm90X2FwaX13b3JrZmxvd3NgO1xuICAgICAgICBjb25zdCB1cmwgPSBgJHthcGlVcmx9P29yZ19pZD0ke29yZ0lkfWA7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCkucGlwZShcbiAgICAgICAgICAgIG1hcCgocmVzcDogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlc3A7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldFdvcmtmbG93RXhlY3V0aW9uQnlJZChleGVjdXRpb25JZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgY29uc3QgYXBpVXJsID0gYCR7dGhpcy5ib3RfYXBpfXdvcmtmbG93cy9leGVjdXRpb24vJHtleGVjdXRpb25JZH1gO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldChhcGlVcmwpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHJlc3A6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiByZXNwO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG59Il19
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm90LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiL1VzZXJzL3JvaGl0dGhha3VyL2hpdmUtZ3B0L0hpdmVBSS1QYWNrYWdlcy9Bbmd1bGFyL3Byb2plY3RzL2hpdmVncHQvZXZlbnRzZ3B0LWFuZ3VsYXIvc3JjLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvYm90LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFLM0MsTUFBTSxPQUFPLFdBQVc7SUFJcEIsWUFBb0IsSUFBZ0I7UUFBaEIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUhwQyxxQkFBZ0IsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ2pDLFlBQU8sR0FBRyxFQUFFLENBQUM7SUFFMkIsQ0FBQztJQUV6QyxVQUFVLENBQUMsR0FBVztRQUNsQixJQUFJLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUNoRCxDQUFDO0lBRUQsNkJBQTZCLENBQUMsS0FBYSxFQUFFLE1BQWMsRUFBRSxNQUFjO1FBQ3ZFLE1BQU0sT0FBTyxHQUFHLElBQUksV0FBVyxDQUFDO1lBQzVCLGNBQWMsRUFBRSxrQkFBa0I7WUFDbEMsV0FBVyxFQUFFLE1BQU07WUFDbkIsYUFBYSxFQUFFLEtBQUs7WUFDcEIsa0JBQWtCLEVBQUUsTUFBTTtTQUM3QixDQUFDLENBQUM7UUFFSCxNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLG9CQUFvQixDQUFDO1FBQ2hELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQW9CLEdBQUcsRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxDQUMxRCxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FDNUIsQ0FBQztJQUNOLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxLQUFhO1FBQzdCLE1BQU0sR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sb0JBQW9CLEtBQUssRUFBRSxDQUFDO1FBQ3ZELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELHdCQUF3QixDQUFDLFdBQW1CO1FBQ3hDLE1BQU0sR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sdUJBQXVCLFdBQVcsRUFBRSxDQUFDO1FBQ2hFLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDOUIsQ0FBQzs7OztZQW5DSixVQUFVLFNBQUM7Z0JBQ1IsVUFBVSxFQUFFLE1BQU07YUFDckI7OztZQVBRLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQm90c1NlcnZpY2Uge1xuICAgIGV2ZW50RGVzY3JpcHRpb24gPSBuZXcgU3ViamVjdCgpO1xuICAgIGJvdF9hcGkgPSAnJztcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkgeyB9XG5cbiAgICBzZXRCYXNlVXJsKHVybDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYm90X2FwaSA9IHVybC5yZXBsYWNlKC9cXC8kLywgJycpICsgJy8nO1xuICAgIH1cblxuICAgIGZldGNoU3BlZWNoQXV0aG9yaXphdGlvblRva2VuKGJvdElkOiBzdHJpbmcsIGFwaUtleTogc3RyaW5nLCBkb21haW46IHN0cmluZyk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAgICd4LWFwaS1rZXknOiBhcGlLZXksXG4gICAgICAgICAgICAnaGl2ZS1ib3QtaWQnOiBib3RJZCxcbiAgICAgICAgICAgICdkb21haW4tYXV0aG9yaXR5JzogZG9tYWluXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGNvbnN0IHVybCA9IGAke3RoaXMuYm90X2FwaX1zcGVlY2gvaXNzdWVfdG9rZW5gO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDx7IHRva2VuOiBzdHJpbmcgfT4odXJsLCB7IGhlYWRlcnMgfSkucGlwZShcbiAgICAgICAgICAgIG1hcCgocmVzcCkgPT4gcmVzcC50b2tlbilcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXRXb3JrZmxvd3NCeU9yZ0lkKG9yZ0lkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgICAgICBjb25zdCB1cmwgPSBgJHt0aGlzLmJvdF9hcGl9d29ya2Zsb3dzP29yZ19pZD0ke29yZ0lkfWA7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCk7XG4gICAgfVxuXG4gICAgZ2V0V29ya2Zsb3dFeGVjdXRpb25CeUlkKGV4ZWN1dGlvbklkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgICAgICBjb25zdCB1cmwgPSBgJHt0aGlzLmJvdF9hcGl9d29ya2Zsb3dzL2V4ZWN1dGlvbi8ke2V4ZWN1dGlvbklkfWA7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCk7XG4gICAgfVxufVxuIl19