nerdagent-chat-widget-angular 1.0.16 → 1.0.18

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.
@@ -27,24 +27,29 @@ export class ChatWidgetComponent {
27
27
  widgetOpened = new EventEmitter();
28
28
  widgetClosed = new EventEmitter();
29
29
  ngAfterViewInit() {
30
- // Set all attributes on the host element
30
+ // Set properties directly on the web component element
31
31
  const element = this.elementRef.nativeElement;
32
- this.renderer.setAttribute(element, 'apikey', this.apikey || '');
33
- this.renderer.setAttribute(element, 'agent-id', this.agentId || '');
34
- this.renderer.setAttribute(element, 'agent-name', this.agentName || '');
35
- this.renderer.setAttribute(element, 'agent-role', this.agentRole || '');
36
- this.renderer.setAttribute(element, 'primary-color', this.primaryColor || '');
37
- this.renderer.setAttribute(element, 'accent-color', this.accentColor || '');
38
- this.renderer.setAttribute(element, 'welcome-message', this.welcomeMessage || '');
39
- this.renderer.setAttribute(element, 'placeholder-text', this.placeholderText || '');
40
- this.renderer.setAttribute(element, 'position', this.position || '');
41
- this.renderer.setAttribute(element, 'width', this.width || '');
42
- this.renderer.setAttribute(element, 'height', this.height || '');
43
- this.renderer.setAttribute(element, 'show-minimize-button', this.showMinimizeButton?.toString() || 'false');
44
- this.renderer.setAttribute(element, 'show-timestamps', this.showTimestamps?.toString() || 'false');
45
- this.renderer.setAttribute(element, 'enable-file-upload', this.enableFileUpload?.toString() || 'false');
46
- this.renderer.setAttribute(element, 'enable-speech', this.enableSpeech?.toString() || 'false');
47
- this.renderer.setAttribute(element, 'show-powered-by', this.showPoweredBy?.toString() || 'false');
32
+ // Set properties (not attributes) for the web component
33
+ element.apikey = this.apikey || '';
34
+ element.agentId = this.agentId || '';
35
+ element.agentName = this.agentName || '';
36
+ element.agentRole = this.agentRole || '';
37
+ element.primaryColor = this.primaryColor || '';
38
+ element.accentColor = this.accentColor || '';
39
+ element.welcomeMessage = this.welcomeMessage || '';
40
+ element.placeholderText = this.placeholderText || '';
41
+ element.position = this.position || '';
42
+ element.width = this.width || '';
43
+ element.height = this.height || '';
44
+ element.showMinimizeButton = this.showMinimizeButton;
45
+ element.showTimestamps = this.showTimestamps;
46
+ element.enableFileUpload = this.enableFileUpload;
47
+ element.enableSpeech = this.enableSpeech;
48
+ element.showPoweredBy = this.showPoweredBy;
49
+ console.log('[Angular Wrapper] Set properties on web component:', {
50
+ apikey: element.apikey,
51
+ agentId: element.agentId
52
+ });
48
53
  }
49
54
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChatWidgetComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
50
55
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ChatWidgetComponent, selector: "nerd-chat-widget", inputs: { apikey: "apikey", agentId: "agentId", agentName: "agentName", agentRole: "agentRole", primaryColor: "primaryColor", accentColor: "accentColor", welcomeMessage: "welcomeMessage", placeholderText: "placeholderText", position: "position", width: "width", height: "height", showMinimizeButton: "showMinimizeButton", showTimestamps: "showTimestamps", enableFileUpload: "enableFileUpload", enableSpeech: "enableSpeech", showPoweredBy: "showPoweredBy" }, outputs: { messageSent: "messageSent", widgetOpened: "widgetOpened", widgetClosed: "widgetClosed" }, ngImport: i0, template: '', isInline: true });
@@ -91,4 +96,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
91
96
  }], widgetClosed: [{
92
97
  type: Output
93
98
  }] } });
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC13aWRnZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jaGF0LXdpZGdldC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBd0MsTUFBTSxlQUFlLENBQUM7O0FBUTdHLE1BQU0sT0FBTyxtQkFBbUI7SUFFcEI7SUFDQTtJQUZWLFlBQ1UsVUFBc0IsRUFDdEIsUUFBbUI7UUFEbkIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixhQUFRLEdBQVIsUUFBUSxDQUFXO0lBQzFCLENBQUM7SUFDSyxNQUFNLEdBQVcsRUFBRSxDQUFDO0lBQ3BCLE9BQU8sR0FBVyxFQUFFLENBQUM7SUFDckIsU0FBUyxHQUFXLGVBQWUsQ0FBQztJQUNwQyxTQUFTLEdBQVcsa0JBQWtCLENBQUM7SUFDdkMsWUFBWSxHQUFXLFNBQVMsQ0FBQztJQUNqQyxXQUFXLEdBQVcsU0FBUyxDQUFDO0lBQ2hDLGNBQWMsR0FBVyxxQkFBcUIsQ0FBQztJQUMvQyxlQUFlLEdBQVcsc0JBQXNCLENBQUM7SUFDakQsUUFBUSxHQUFtQixjQUFjLENBQUM7SUFDMUMsS0FBSyxHQUFXLEtBQUssQ0FBQztJQUN0QixNQUFNLEdBQVcsS0FBSyxDQUFDO0lBQ3ZCLGtCQUFrQixHQUFZLElBQUksQ0FBQztJQUNuQyxjQUFjLEdBQVksSUFBSSxDQUFDO0lBQy9CLGdCQUFnQixHQUFZLEtBQUssQ0FBQztJQUNsQyxZQUFZLEdBQVksS0FBSyxDQUFDO0lBQzlCLGFBQWEsR0FBWSxJQUFJLENBQUM7SUFFN0IsV0FBVyxHQUFHLElBQUksWUFBWSxFQUF3QyxDQUFDO0lBQ3ZFLFlBQVksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBQ3hDLFlBQVksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBRWxELGVBQWU7UUFDYix5Q0FBeUM7UUFDekMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7UUFFOUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ2pFLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDLENBQUM7UUFDeEUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxJQUFJLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsSUFBSSxDQUFDLFlBQVksSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM5RSxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsY0FBYyxFQUFFLElBQUksQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLElBQUksQ0FBQyxjQUFjLElBQUksRUFBRSxDQUFDLENBQUM7UUFDbEYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLElBQUksQ0FBQyxlQUFlLElBQUksRUFBRSxDQUFDLENBQUM7UUFDcEYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3JFLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQztRQUMvRCxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLENBQUM7UUFDakUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxRQUFRLEVBQUUsSUFBSSxPQUFPLENBQUMsQ0FBQztRQUM1RyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxRQUFRLEVBQUUsSUFBSSxPQUFPLENBQUMsQ0FBQztRQUNuRyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxJQUFJLE9BQU8sQ0FBQyxDQUFDO1FBQ3hHLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxRQUFRLEVBQUUsSUFBSSxPQUFPLENBQUMsQ0FBQztRQUMvRixJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxRQUFRLEVBQUUsSUFBSSxPQUFPLENBQUMsQ0FBQztJQUNwRyxDQUFDO3dHQTlDVSxtQkFBbUI7NEZBQW5CLG1CQUFtQix1bUJBSHBCLEVBQUU7OzRGQUdELG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxrQkFBa0IsWUFDbEIsRUFBRTt1R0FRSCxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVJLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIEVsZW1lbnRSZWYsIEFmdGVyVmlld0luaXQsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgV2lkZ2V0UG9zaXRpb24gfSBmcm9tICcuL2NoYXQtd2lkZ2V0LnR5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmVyZC1jaGF0LXdpZGdldCcsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBDaGF0V2lkZ2V0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjJcbiAgKSB7fVxuICBASW5wdXQoKSBhcGlrZXk6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBhZ2VudElkOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgYWdlbnROYW1lOiBzdHJpbmcgPSAnU3VwcG9ydCBBZ2VudCc7XG4gIEBJbnB1dCgpIGFnZW50Um9sZTogc3RyaW5nID0gJ0N1c3RvbWVyIFN1cHBvcnQnO1xuICBASW5wdXQoKSBwcmltYXJ5Q29sb3I6IHN0cmluZyA9ICcjMmQzZTUwJztcbiAgQElucHV0KCkgYWNjZW50Q29sb3I6IHN0cmluZyA9ICcjNGU4Y2ZmJztcbiAgQElucHV0KCkgd2VsY29tZU1lc3NhZ2U6IHN0cmluZyA9ICdIaSEgSG93IGNhbiBJIGhlbHA/JztcbiAgQElucHV0KCkgcGxhY2Vob2xkZXJUZXh0OiBzdHJpbmcgPSAnVHlwZSB5b3VyIG1lc3NhZ2UuLi4nO1xuICBASW5wdXQoKSBwb3NpdGlvbjogV2lkZ2V0UG9zaXRpb24gPSAnYm90dG9tLXJpZ2h0JztcbiAgQElucHV0KCkgd2lkdGg6IHN0cmluZyA9ICczNTAnO1xuICBASW5wdXQoKSBoZWlnaHQ6IHN0cmluZyA9ICc1MDAnO1xuICBASW5wdXQoKSBzaG93TWluaW1pemVCdXR0b246IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBzaG93VGltZXN0YW1wczogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIGVuYWJsZUZpbGVVcGxvYWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgZW5hYmxlU3BlZWNoOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNob3dQb3dlcmVkQnk6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIEBPdXRwdXQoKSBtZXNzYWdlU2VudCA9IG5ldyBFdmVudEVtaXR0ZXI8eyBtZXNzYWdlOiBzdHJpbmc7IHRpbWVzdGFtcDogRGF0ZSB9PigpO1xuICBAT3V0cHV0KCkgd2lkZ2V0T3BlbmVkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAT3V0cHV0KCkgd2lkZ2V0Q2xvc2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAvLyBTZXQgYWxsIGF0dHJpYnV0ZXMgb24gdGhlIGhvc3QgZWxlbWVudFxuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICBcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShlbGVtZW50LCAnYXBpa2V5JywgdGhpcy5hcGlrZXkgfHwgJycpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKGVsZW1lbnQsICdhZ2VudC1pZCcsIHRoaXMuYWdlbnRJZCB8fCAnJyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoZWxlbWVudCwgJ2FnZW50LW5hbWUnLCB0aGlzLmFnZW50TmFtZSB8fCAnJyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoZWxlbWVudCwgJ2FnZW50LXJvbGUnLCB0aGlzLmFnZW50Um9sZSB8fCAnJyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoZWxlbWVudCwgJ3ByaW1hcnktY29sb3InLCB0aGlzLnByaW1hcnlDb2xvciB8fCAnJyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoZWxlbWVudCwgJ2FjY2VudC1jb2xvcicsIHRoaXMuYWNjZW50Q29sb3IgfHwgJycpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKGVsZW1lbnQsICd3ZWxjb21lLW1lc3NhZ2UnLCB0aGlzLndlbGNvbWVNZXNzYWdlIHx8ICcnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShlbGVtZW50LCAncGxhY2Vob2xkZXItdGV4dCcsIHRoaXMucGxhY2Vob2xkZXJUZXh0IHx8ICcnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShlbGVtZW50LCAncG9zaXRpb24nLCB0aGlzLnBvc2l0aW9uIHx8ICcnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShlbGVtZW50LCAnd2lkdGgnLCB0aGlzLndpZHRoIHx8ICcnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShlbGVtZW50LCAnaGVpZ2h0JywgdGhpcy5oZWlnaHQgfHwgJycpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKGVsZW1lbnQsICdzaG93LW1pbmltaXplLWJ1dHRvbicsIHRoaXMuc2hvd01pbmltaXplQnV0dG9uPy50b1N0cmluZygpIHx8ICdmYWxzZScpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKGVsZW1lbnQsICdzaG93LXRpbWVzdGFtcHMnLCB0aGlzLnNob3dUaW1lc3RhbXBzPy50b1N0cmluZygpIHx8ICdmYWxzZScpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKGVsZW1lbnQsICdlbmFibGUtZmlsZS11cGxvYWQnLCB0aGlzLmVuYWJsZUZpbGVVcGxvYWQ/LnRvU3RyaW5nKCkgfHwgJ2ZhbHNlJyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoZWxlbWVudCwgJ2VuYWJsZS1zcGVlY2gnLCB0aGlzLmVuYWJsZVNwZWVjaD8udG9TdHJpbmcoKSB8fCAnZmFsc2UnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShlbGVtZW50LCAnc2hvdy1wb3dlcmVkLWJ5JywgdGhpcy5zaG93UG93ZXJlZEJ5Py50b1N0cmluZygpIHx8ICdmYWxzZScpO1xuICB9XG59XG4iXX0=
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC13aWRnZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jaGF0LXdpZGdldC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBd0MsTUFBTSxlQUFlLENBQUM7O0FBUTdHLE1BQU0sT0FBTyxtQkFBbUI7SUFFcEI7SUFDQTtJQUZWLFlBQ1UsVUFBc0IsRUFDdEIsUUFBbUI7UUFEbkIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixhQUFRLEdBQVIsUUFBUSxDQUFXO0lBQzFCLENBQUM7SUFDSyxNQUFNLEdBQVcsRUFBRSxDQUFDO0lBQ3BCLE9BQU8sR0FBVyxFQUFFLENBQUM7SUFDckIsU0FBUyxHQUFXLGVBQWUsQ0FBQztJQUNwQyxTQUFTLEdBQVcsa0JBQWtCLENBQUM7SUFDdkMsWUFBWSxHQUFXLFNBQVMsQ0FBQztJQUNqQyxXQUFXLEdBQVcsU0FBUyxDQUFDO0lBQ2hDLGNBQWMsR0FBVyxxQkFBcUIsQ0FBQztJQUMvQyxlQUFlLEdBQVcsc0JBQXNCLENBQUM7SUFDakQsUUFBUSxHQUFtQixjQUFjLENBQUM7SUFDMUMsS0FBSyxHQUFXLEtBQUssQ0FBQztJQUN0QixNQUFNLEdBQVcsS0FBSyxDQUFDO0lBQ3ZCLGtCQUFrQixHQUFZLElBQUksQ0FBQztJQUNuQyxjQUFjLEdBQVksSUFBSSxDQUFDO0lBQy9CLGdCQUFnQixHQUFZLEtBQUssQ0FBQztJQUNsQyxZQUFZLEdBQVksS0FBSyxDQUFDO0lBQzlCLGFBQWEsR0FBWSxJQUFJLENBQUM7SUFFN0IsV0FBVyxHQUFHLElBQUksWUFBWSxFQUF3QyxDQUFDO0lBQ3ZFLFlBQVksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBQ3hDLFlBQVksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBRWxELGVBQWU7UUFDYix1REFBdUQ7UUFDdkQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFvQixDQUFDO1FBRXJELHdEQUF3RDtRQUN4RCxPQUFPLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDO1FBQ25DLE9BQU8sQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDckMsT0FBTyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQztRQUN6QyxPQUFPLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDO1FBQ3pDLE9BQU8sQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksSUFBSSxFQUFFLENBQUM7UUFDL0MsT0FBTyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQztRQUM3QyxPQUFPLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxjQUFjLElBQUksRUFBRSxDQUFDO1FBQ25ELE9BQU8sQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGVBQWUsSUFBSSxFQUFFLENBQUM7UUFDckQsT0FBTyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQztRQUN2QyxPQUFPLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ2pDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUM7UUFDbkMsT0FBTyxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztRQUNyRCxPQUFPLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7UUFDN0MsT0FBTyxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUNqRCxPQUFPLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDekMsT0FBTyxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBRTNDLE9BQU8sQ0FBQyxHQUFHLENBQUMsb0RBQW9ELEVBQUU7WUFDaEUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO1lBQ3RCLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztTQUN6QixDQUFDLENBQUM7SUFDTCxDQUFDO3dHQXBEVSxtQkFBbUI7NEZBQW5CLG1CQUFtQix1bUJBSHBCLEVBQUU7OzRGQUdELG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxrQkFBa0IsWUFDbEIsRUFBRTt1R0FRSCxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVJLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIEVsZW1lbnRSZWYsIEFmdGVyVmlld0luaXQsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgV2lkZ2V0UG9zaXRpb24gfSBmcm9tICcuL2NoYXQtd2lkZ2V0LnR5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmVyZC1jaGF0LXdpZGdldCcsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBDaGF0V2lkZ2V0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjJcbiAgKSB7fVxuICBASW5wdXQoKSBhcGlrZXk6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBhZ2VudElkOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgYWdlbnROYW1lOiBzdHJpbmcgPSAnU3VwcG9ydCBBZ2VudCc7XG4gIEBJbnB1dCgpIGFnZW50Um9sZTogc3RyaW5nID0gJ0N1c3RvbWVyIFN1cHBvcnQnO1xuICBASW5wdXQoKSBwcmltYXJ5Q29sb3I6IHN0cmluZyA9ICcjMmQzZTUwJztcbiAgQElucHV0KCkgYWNjZW50Q29sb3I6IHN0cmluZyA9ICcjNGU4Y2ZmJztcbiAgQElucHV0KCkgd2VsY29tZU1lc3NhZ2U6IHN0cmluZyA9ICdIaSEgSG93IGNhbiBJIGhlbHA/JztcbiAgQElucHV0KCkgcGxhY2Vob2xkZXJUZXh0OiBzdHJpbmcgPSAnVHlwZSB5b3VyIG1lc3NhZ2UuLi4nO1xuICBASW5wdXQoKSBwb3NpdGlvbjogV2lkZ2V0UG9zaXRpb24gPSAnYm90dG9tLXJpZ2h0JztcbiAgQElucHV0KCkgd2lkdGg6IHN0cmluZyA9ICczNTAnO1xuICBASW5wdXQoKSBoZWlnaHQ6IHN0cmluZyA9ICc1MDAnO1xuICBASW5wdXQoKSBzaG93TWluaW1pemVCdXR0b246IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBzaG93VGltZXN0YW1wczogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIGVuYWJsZUZpbGVVcGxvYWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgZW5hYmxlU3BlZWNoOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNob3dQb3dlcmVkQnk6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIEBPdXRwdXQoKSBtZXNzYWdlU2VudCA9IG5ldyBFdmVudEVtaXR0ZXI8eyBtZXNzYWdlOiBzdHJpbmc7IHRpbWVzdGFtcDogRGF0ZSB9PigpO1xuICBAT3V0cHV0KCkgd2lkZ2V0T3BlbmVkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAT3V0cHV0KCkgd2lkZ2V0Q2xvc2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAvLyBTZXQgcHJvcGVydGllcyBkaXJlY3RseSBvbiB0aGUgd2ViIGNvbXBvbmVudCBlbGVtZW50XG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50IGFzIGFueTtcbiAgICBcbiAgICAvLyBTZXQgcHJvcGVydGllcyAobm90IGF0dHJpYnV0ZXMpIGZvciB0aGUgd2ViIGNvbXBvbmVudFxuICAgIGVsZW1lbnQuYXBpa2V5ID0gdGhpcy5hcGlrZXkgfHwgJyc7XG4gICAgZWxlbWVudC5hZ2VudElkID0gdGhpcy5hZ2VudElkIHx8ICcnO1xuICAgIGVsZW1lbnQuYWdlbnROYW1lID0gdGhpcy5hZ2VudE5hbWUgfHwgJyc7XG4gICAgZWxlbWVudC5hZ2VudFJvbGUgPSB0aGlzLmFnZW50Um9sZSB8fCAnJztcbiAgICBlbGVtZW50LnByaW1hcnlDb2xvciA9IHRoaXMucHJpbWFyeUNvbG9yIHx8ICcnO1xuICAgIGVsZW1lbnQuYWNjZW50Q29sb3IgPSB0aGlzLmFjY2VudENvbG9yIHx8ICcnO1xuICAgIGVsZW1lbnQud2VsY29tZU1lc3NhZ2UgPSB0aGlzLndlbGNvbWVNZXNzYWdlIHx8ICcnO1xuICAgIGVsZW1lbnQucGxhY2Vob2xkZXJUZXh0ID0gdGhpcy5wbGFjZWhvbGRlclRleHQgfHwgJyc7XG4gICAgZWxlbWVudC5wb3NpdGlvbiA9IHRoaXMucG9zaXRpb24gfHwgJyc7XG4gICAgZWxlbWVudC53aWR0aCA9IHRoaXMud2lkdGggfHwgJyc7XG4gICAgZWxlbWVudC5oZWlnaHQgPSB0aGlzLmhlaWdodCB8fCAnJztcbiAgICBlbGVtZW50LnNob3dNaW5pbWl6ZUJ1dHRvbiA9IHRoaXMuc2hvd01pbmltaXplQnV0dG9uO1xuICAgIGVsZW1lbnQuc2hvd1RpbWVzdGFtcHMgPSB0aGlzLnNob3dUaW1lc3RhbXBzO1xuICAgIGVsZW1lbnQuZW5hYmxlRmlsZVVwbG9hZCA9IHRoaXMuZW5hYmxlRmlsZVVwbG9hZDtcbiAgICBlbGVtZW50LmVuYWJsZVNwZWVjaCA9IHRoaXMuZW5hYmxlU3BlZWNoO1xuICAgIGVsZW1lbnQuc2hvd1Bvd2VyZWRCeSA9IHRoaXMuc2hvd1Bvd2VyZWRCeTtcbiAgICBcbiAgICBjb25zb2xlLmxvZygnW0FuZ3VsYXIgV3JhcHBlcl0gU2V0IHByb3BlcnRpZXMgb24gd2ViIGNvbXBvbmVudDonLCB7XG4gICAgICBhcGlrZXk6IGVsZW1lbnQuYXBpa2V5LFxuICAgICAgYWdlbnRJZDogZWxlbWVudC5hZ2VudElkXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -30,24 +30,29 @@ class ChatWidgetComponent {
30
30
  widgetOpened = new EventEmitter();
31
31
  widgetClosed = new EventEmitter();
32
32
  ngAfterViewInit() {
33
- // Set all attributes on the host element
33
+ // Set properties directly on the web component element
34
34
  const element = this.elementRef.nativeElement;
35
- this.renderer.setAttribute(element, 'apikey', this.apikey || '');
36
- this.renderer.setAttribute(element, 'agent-id', this.agentId || '');
37
- this.renderer.setAttribute(element, 'agent-name', this.agentName || '');
38
- this.renderer.setAttribute(element, 'agent-role', this.agentRole || '');
39
- this.renderer.setAttribute(element, 'primary-color', this.primaryColor || '');
40
- this.renderer.setAttribute(element, 'accent-color', this.accentColor || '');
41
- this.renderer.setAttribute(element, 'welcome-message', this.welcomeMessage || '');
42
- this.renderer.setAttribute(element, 'placeholder-text', this.placeholderText || '');
43
- this.renderer.setAttribute(element, 'position', this.position || '');
44
- this.renderer.setAttribute(element, 'width', this.width || '');
45
- this.renderer.setAttribute(element, 'height', this.height || '');
46
- this.renderer.setAttribute(element, 'show-minimize-button', this.showMinimizeButton?.toString() || 'false');
47
- this.renderer.setAttribute(element, 'show-timestamps', this.showTimestamps?.toString() || 'false');
48
- this.renderer.setAttribute(element, 'enable-file-upload', this.enableFileUpload?.toString() || 'false');
49
- this.renderer.setAttribute(element, 'enable-speech', this.enableSpeech?.toString() || 'false');
50
- this.renderer.setAttribute(element, 'show-powered-by', this.showPoweredBy?.toString() || 'false');
35
+ // Set properties (not attributes) for the web component
36
+ element.apikey = this.apikey || '';
37
+ element.agentId = this.agentId || '';
38
+ element.agentName = this.agentName || '';
39
+ element.agentRole = this.agentRole || '';
40
+ element.primaryColor = this.primaryColor || '';
41
+ element.accentColor = this.accentColor || '';
42
+ element.welcomeMessage = this.welcomeMessage || '';
43
+ element.placeholderText = this.placeholderText || '';
44
+ element.position = this.position || '';
45
+ element.width = this.width || '';
46
+ element.height = this.height || '';
47
+ element.showMinimizeButton = this.showMinimizeButton;
48
+ element.showTimestamps = this.showTimestamps;
49
+ element.enableFileUpload = this.enableFileUpload;
50
+ element.enableSpeech = this.enableSpeech;
51
+ element.showPoweredBy = this.showPoweredBy;
52
+ console.log('[Angular Wrapper] Set properties on web component:', {
53
+ apikey: element.apikey,
54
+ agentId: element.agentId
55
+ });
51
56
  }
52
57
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChatWidgetComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
53
58
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ChatWidgetComponent, selector: "nerd-chat-widget", inputs: { apikey: "apikey", agentId: "agentId", agentName: "agentName", agentRole: "agentRole", primaryColor: "primaryColor", accentColor: "accentColor", welcomeMessage: "welcomeMessage", placeholderText: "placeholderText", position: "position", width: "width", height: "height", showMinimizeButton: "showMinimizeButton", showTimestamps: "showTimestamps", enableFileUpload: "enableFileUpload", enableSpeech: "enableSpeech", showPoweredBy: "showPoweredBy" }, outputs: { messageSent: "messageSent", widgetOpened: "widgetOpened", widgetClosed: "widgetClosed" }, ngImport: i0, template: '', isInline: true });
@@ -1 +1 @@
1
- {"version":3,"file":"nerdagent-chat-widget-angular.mjs","sources":["../../src/lib/chat-widget.component.ts","../../src/lib/chat-widget.module.ts","../../src/nerdagent-chat-widget-angular.ts"],"sourcesContent":["import { Component, Input, Output, EventEmitter, ElementRef, AfterViewInit, Renderer2 } from '@angular/core';\nimport { WidgetPosition } from './chat-widget.types';\n\n@Component({\n selector: 'nerd-chat-widget',\n template: '',\n styles: []\n})\nexport class ChatWidgetComponent implements AfterViewInit {\n constructor(\n private elementRef: ElementRef,\n private renderer: Renderer2\n ) {}\n @Input() apikey: string = '';\n @Input() agentId: string = '';\n @Input() agentName: string = 'Support Agent';\n @Input() agentRole: string = 'Customer Support';\n @Input() primaryColor: string = '#2d3e50';\n @Input() accentColor: string = '#4e8cff';\n @Input() welcomeMessage: string = 'Hi! How can I help?';\n @Input() placeholderText: string = 'Type your message...';\n @Input() position: WidgetPosition = 'bottom-right';\n @Input() width: string = '350';\n @Input() height: string = '500';\n @Input() showMinimizeButton: boolean = true;\n @Input() showTimestamps: boolean = true;\n @Input() enableFileUpload: boolean = false;\n @Input() enableSpeech: boolean = false;\n @Input() showPoweredBy: boolean = true;\n\n @Output() messageSent = new EventEmitter<{ message: string; timestamp: Date }>();\n @Output() widgetOpened = new EventEmitter<void>();\n @Output() widgetClosed = new EventEmitter<void>();\n\n ngAfterViewInit() {\n // Set all attributes on the host element\n const element = this.elementRef.nativeElement;\n \n this.renderer.setAttribute(element, 'apikey', this.apikey || '');\n this.renderer.setAttribute(element, 'agent-id', this.agentId || '');\n this.renderer.setAttribute(element, 'agent-name', this.agentName || '');\n this.renderer.setAttribute(element, 'agent-role', this.agentRole || '');\n this.renderer.setAttribute(element, 'primary-color', this.primaryColor || '');\n this.renderer.setAttribute(element, 'accent-color', this.accentColor || '');\n this.renderer.setAttribute(element, 'welcome-message', this.welcomeMessage || '');\n this.renderer.setAttribute(element, 'placeholder-text', this.placeholderText || '');\n this.renderer.setAttribute(element, 'position', this.position || '');\n this.renderer.setAttribute(element, 'width', this.width || '');\n this.renderer.setAttribute(element, 'height', this.height || '');\n this.renderer.setAttribute(element, 'show-minimize-button', this.showMinimizeButton?.toString() || 'false');\n this.renderer.setAttribute(element, 'show-timestamps', this.showTimestamps?.toString() || 'false');\n this.renderer.setAttribute(element, 'enable-file-upload', this.enableFileUpload?.toString() || 'false');\n this.renderer.setAttribute(element, 'enable-speech', this.enableSpeech?.toString() || 'false');\n this.renderer.setAttribute(element, 'show-powered-by', this.showPoweredBy?.toString() || 'false');\n }\n}\n","import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ChatWidgetComponent } from './chat-widget.component';\n\n// Import and define custom elements\nimport { defineCustomElements } from 'nerdagent-chat-widget/loader';\n\n// Define custom elements when module is imported\ndefineCustomElements();\n\n@NgModule({\n declarations: [\n ChatWidgetComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n ChatWidgetComponent\n ],\n schemas: [CUSTOM_ELEMENTS_SCHEMA]\n})\nexport class NerdChatWidgetModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nerdagent-chat-widget-angular.mjs","sources":["../../src/lib/chat-widget.component.ts","../../src/lib/chat-widget.module.ts","../../src/nerdagent-chat-widget-angular.ts"],"sourcesContent":["import { Component, Input, Output, EventEmitter, ElementRef, AfterViewInit, Renderer2 } from '@angular/core';\nimport { WidgetPosition } from './chat-widget.types';\n\n@Component({\n selector: 'nerd-chat-widget',\n template: '',\n styles: []\n})\nexport class ChatWidgetComponent implements AfterViewInit {\n constructor(\n private elementRef: ElementRef,\n private renderer: Renderer2\n ) {}\n @Input() apikey: string = '';\n @Input() agentId: string = '';\n @Input() agentName: string = 'Support Agent';\n @Input() agentRole: string = 'Customer Support';\n @Input() primaryColor: string = '#2d3e50';\n @Input() accentColor: string = '#4e8cff';\n @Input() welcomeMessage: string = 'Hi! How can I help?';\n @Input() placeholderText: string = 'Type your message...';\n @Input() position: WidgetPosition = 'bottom-right';\n @Input() width: string = '350';\n @Input() height: string = '500';\n @Input() showMinimizeButton: boolean = true;\n @Input() showTimestamps: boolean = true;\n @Input() enableFileUpload: boolean = false;\n @Input() enableSpeech: boolean = false;\n @Input() showPoweredBy: boolean = true;\n\n @Output() messageSent = new EventEmitter<{ message: string; timestamp: Date }>();\n @Output() widgetOpened = new EventEmitter<void>();\n @Output() widgetClosed = new EventEmitter<void>();\n\n ngAfterViewInit() {\n // Set properties directly on the web component element\n const element = this.elementRef.nativeElement as any;\n \n // Set properties (not attributes) for the web component\n element.apikey = this.apikey || '';\n element.agentId = this.agentId || '';\n element.agentName = this.agentName || '';\n element.agentRole = this.agentRole || '';\n element.primaryColor = this.primaryColor || '';\n element.accentColor = this.accentColor || '';\n element.welcomeMessage = this.welcomeMessage || '';\n element.placeholderText = this.placeholderText || '';\n element.position = this.position || '';\n element.width = this.width || '';\n element.height = this.height || '';\n element.showMinimizeButton = this.showMinimizeButton;\n element.showTimestamps = this.showTimestamps;\n element.enableFileUpload = this.enableFileUpload;\n element.enableSpeech = this.enableSpeech;\n element.showPoweredBy = this.showPoweredBy;\n \n console.log('[Angular Wrapper] Set properties on web component:', {\n apikey: element.apikey,\n agentId: element.agentId\n });\n }\n}\n","import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ChatWidgetComponent } from './chat-widget.component';\n\n// Import and define custom elements\nimport { defineCustomElements } from 'nerdagent-chat-widget/loader';\n\n// Define custom elements when module is imported\ndefineCustomElements();\n\n@NgModule({\n declarations: [\n ChatWidgetComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n ChatWidgetComponent\n ],\n schemas: [CUSTOM_ELEMENTS_SCHEMA]\n})\nexport class NerdChatWidgetModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nerdagent-chat-widget-angular",
3
- "version": "1.0.16",
3
+ "version": "1.0.18",
4
4
  "description": "NerdAgent Chat Widget for Angular",
5
5
  "main": "dist/fesm2022/nerdagent-chat-widget-angular.mjs",
6
6
  "module": "dist/fesm2022/nerdagent-chat-widget-angular.mjs",
@@ -40,5 +40,5 @@
40
40
  "url": "https://github.com/nerdagent/chat-widget.git",
41
41
  "directory": "packages/angular"
42
42
  },
43
- "gitHead": "5a7ca6bcb233aeec42cf3d63503668784b4afaf7"
43
+ "gitHead": "f46abd47a7632d8fc690b202bfc7c202bcb8b18f"
44
44
  }