@corvesta/chat-widget 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,24 @@
1
+ # ChatWidget
2
+
3
+ This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 16.2.0.
4
+
5
+ ## Code scaffolding
6
+
7
+ Run `ng generate component component-name --project chat-widget` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project chat-widget`.
8
+ > Note: Don't forget to add `--project chat-widget` or else it will be added to the default project in your `angular.json` file.
9
+
10
+ ## Build
11
+
12
+ Run `ng build chat-widget` to build the project. The build artifacts will be stored in the `dist/` directory.
13
+
14
+ ## Publishing
15
+
16
+ After building your library with `ng build chat-widget`, go to the dist folder `cd dist/chat-widget` and run `npm publish`.
17
+
18
+ ## Running unit tests
19
+
20
+ Run `ng test chat-widget` to execute the unit tests via [Karma](https://karma-runner.github.io).
21
+
22
+ ## Further help
23
+
24
+ To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ydmVzdGEtY2hhdC13aWRnZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3J2ZXN0YS9jaGF0LXdpZGdldC9zcmMvY29ydmVzdGEtY2hhdC13aWRnZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -0,0 +1,31 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { ChatWidgetComponent } from './components/chat-widget/chat-widget.component';
3
+ import { TalkdeskChatComponent } from './components/talkdesk-chat/talkdesk-chat.component';
4
+ import { NgSwitch, NgSwitchCase, NgSwitchDefault } from '@angular/common';
5
+ import * as i0 from "@angular/core";
6
+ export class ChatWidgetModule {
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ChatWidgetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: ChatWidgetModule, declarations: [ChatWidgetComponent,
9
+ TalkdeskChatComponent], imports: [NgSwitch,
10
+ NgSwitchCase,
11
+ NgSwitchDefault], exports: [ChatWidgetComponent] }); }
12
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ChatWidgetModule }); }
13
+ }
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ChatWidgetModule, decorators: [{
15
+ type: NgModule,
16
+ args: [{
17
+ declarations: [
18
+ ChatWidgetComponent,
19
+ TalkdeskChatComponent
20
+ ],
21
+ imports: [
22
+ NgSwitch,
23
+ NgSwitchCase,
24
+ NgSwitchDefault
25
+ ],
26
+ exports: [
27
+ ChatWidgetComponent
28
+ ]
29
+ }]
30
+ }] });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC13aWRnZXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ydmVzdGEvY2hhdC13aWRnZXQvc3JjL2xpYi9jaGF0LXdpZGdldC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNyRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMzRixPQUFPLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFrQjFFLE1BQU0sT0FBTyxnQkFBZ0I7OEdBQWhCLGdCQUFnQjsrR0FBaEIsZ0JBQWdCLGlCQVp6QixtQkFBbUI7WUFDbkIscUJBQXFCLGFBR2pCLFFBQVE7WUFDUixZQUFZO1lBQ1osZUFBZSxhQUduQixtQkFBbUI7K0dBR1YsZ0JBQWdCOzsyRkFBaEIsZ0JBQWdCO2tCQWQ1QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixtQkFBbUI7d0JBQ25CLHFCQUFxQjtxQkFDdEI7b0JBQ0MsT0FBTyxFQUFFO3dCQUNMLFFBQVE7d0JBQ1IsWUFBWTt3QkFDWixlQUFlO3FCQUNsQjtvQkFDSCxPQUFPLEVBQUU7d0JBQ1AsbUJBQW1CO3FCQUNwQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENoYXRXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2hhdC13aWRnZXQvY2hhdC13aWRnZXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGFsa2Rlc2tDaGF0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhbGtkZXNrLWNoYXQvdGFsa2Rlc2stY2hhdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOZ1N3aXRjaCwgTmdTd2l0Y2hDYXNlLCBOZ1N3aXRjaERlZmF1bHQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgQ2hhdFdpZGdldENvbXBvbmVudCxcclxuICAgIFRhbGtkZXNrQ2hhdENvbXBvbmVudFxyXG4gIF0sXHJcbiAgICBpbXBvcnRzOiBbXHJcbiAgICAgICAgTmdTd2l0Y2gsXHJcbiAgICAgICAgTmdTd2l0Y2hDYXNlLFxyXG4gICAgICAgIE5nU3dpdGNoRGVmYXVsdFxyXG4gICAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBDaGF0V2lkZ2V0Q29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hhdFdpZGdldE1vZHVsZSB7IH1cclxuIl19
@@ -0,0 +1,39 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { ChatWidgetType } from '../../models/chat-widget-type';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "../talkdesk-chat/talkdesk-chat.component";
6
+ export class ChatWidgetComponent {
7
+ constructor() {
8
+ this.ChatWidgetType = ChatWidgetType;
9
+ }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ChatWidgetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: ChatWidgetComponent, selector: "lib-chat-widget", inputs: { chatType: "chatType", chatConfig: "chatConfig" }, ngImport: i0, template: `
12
+ <ng-container [ngSwitch]="chatType">
13
+ <lib-talkdesk-chat *ngSwitchCase="ChatWidgetType.TALKDESK"
14
+ [chatBranding]="chatConfig.chatBranding"
15
+ [chatClientId]="chatConfig.chatClientId"
16
+ [chatClientRegion]="chatConfig.chatClientRegion"></lib-talkdesk-chat>
17
+ <ng-container *ngSwitchCase="ChatWidgetType.OFF"></ng-container>
18
+ <ng-container *ngSwitchDefault></ng-container>
19
+ </ng-container>
20
+ `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i2.TalkdeskChatComponent, selector: "lib-talkdesk-chat", inputs: ["chatClientId", "chatClientRegion", "chatBranding"] }] }); }
21
+ }
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ChatWidgetComponent, decorators: [{
23
+ type: Component,
24
+ args: [{ selector: 'lib-chat-widget', template: `
25
+ <ng-container [ngSwitch]="chatType">
26
+ <lib-talkdesk-chat *ngSwitchCase="ChatWidgetType.TALKDESK"
27
+ [chatBranding]="chatConfig.chatBranding"
28
+ [chatClientId]="chatConfig.chatClientId"
29
+ [chatClientRegion]="chatConfig.chatClientRegion"></lib-talkdesk-chat>
30
+ <ng-container *ngSwitchCase="ChatWidgetType.OFF"></ng-container>
31
+ <ng-container *ngSwitchDefault></ng-container>
32
+ </ng-container>
33
+ ` }]
34
+ }], propDecorators: { chatType: [{
35
+ type: Input
36
+ }], chatConfig: [{
37
+ type: Input
38
+ }] } });
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC13aWRnZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ydmVzdGEvY2hhdC13aWRnZXQvc3JjL2xpYi9jb21wb25lbnRzL2NoYXQtd2lkZ2V0L2NoYXQtd2lkZ2V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7QUFpQi9ELE1BQU0sT0FBTyxtQkFBbUI7SUFkaEM7UUFrQnFCLG1CQUFjLEdBQUcsY0FBYyxDQUFDO0tBQ3BEOzhHQUxZLG1CQUFtQjtrR0FBbkIsbUJBQW1CLG1IQVpwQjs7Ozs7Ozs7O0dBU1Q7OzJGQUdVLG1CQUFtQjtrQkFkL0IsU0FBUzsrQkFDRSxpQkFBaUIsWUFDakI7Ozs7Ozs7OztHQVNUOzhCQUlRLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ2hhdFdpZGdldFR5cGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvY2hhdC13aWRnZXQtdHlwZSc7XHJcbmltcG9ydCB7IENoYXRDb25maWcgfSBmcm9tICcuLi8uLi9tb2RlbHMvY2hhdC1jb25maWcnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItY2hhdC13aWRnZXQnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJjaGF0VHlwZVwiPlxyXG4gICAgICA8bGliLXRhbGtkZXNrLWNoYXQgKm5nU3dpdGNoQ2FzZT1cIkNoYXRXaWRnZXRUeXBlLlRBTEtERVNLXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtjaGF0QnJhbmRpbmddPVwiY2hhdENvbmZpZy5jaGF0QnJhbmRpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2NoYXRDbGllbnRJZF09XCJjaGF0Q29uZmlnLmNoYXRDbGllbnRJZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbY2hhdENsaWVudFJlZ2lvbl09XCJjaGF0Q29uZmlnLmNoYXRDbGllbnRSZWdpb25cIj48L2xpYi10YWxrZGVzay1jaGF0PlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJDaGF0V2lkZ2V0VHlwZS5PRkZcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hEZWZhdWx0PjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgYCxcclxuICBzdHlsZXM6IFtdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDaGF0V2lkZ2V0Q29tcG9uZW50IHtcclxuICBASW5wdXQoKSBjaGF0VHlwZSE6IENoYXRXaWRnZXRUeXBlO1xyXG4gIEBJbnB1dCgpIGNoYXRDb25maWchOiBDaGF0Q29uZmlnO1xyXG5cclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgQ2hhdFdpZGdldFR5cGUgPSBDaGF0V2lkZ2V0VHlwZTtcclxufVxyXG4iXX0=
@@ -0,0 +1,62 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class TalkdeskChatComponent {
4
+ constructor() { }
5
+ ngOnInit() {
6
+ this.createTalkDeskWidget();
7
+ }
8
+ createTalkDeskWidget() {
9
+ let webchat;
10
+ ((window, document, node, props, configs) => {
11
+ if (window.TalkdeskChatSDK) {
12
+ console.error('TalkdeskChatSDK already included');
13
+ return;
14
+ }
15
+ const divContainer = document.createElement('div');
16
+ divContainer.id = node;
17
+ document.body.appendChild(divContainer);
18
+ const src = `https://talkdeskchatsdk.talkdeskapp.com/talkdeskchatsdk.js`;
19
+ const script = document.createElement('script');
20
+ const firstScriptTag = document.getElementsByTagName('script')[0];
21
+ script.type = 'text/javascript';
22
+ script.charset = 'UTF-8';
23
+ script.id = 'tdwebchatscript';
24
+ script.src = src;
25
+ script.async = true;
26
+ firstScriptTag.parentNode?.insertBefore(script, firstScriptTag);
27
+ script.onload = () => {
28
+ webchat = TalkdeskChatSDK(node, props);
29
+ webchat.init(configs);
30
+ /*
31
+ * Send custom data from your website to TalkDesk!
32
+ * If you would like to do it, you need to remove the following commented code and
33
+ * modify the webchat.setContextParam parameters to pass in the data you need.
34
+ */
35
+ /*function setContext() {
36
+ webchat.setContextParam({ "var1": "value1", "var2": "value2", "var3": 100 })
37
+ }
38
+ // Send data when the chat conversation is initiated
39
+ webchat.onConversationStart = function() {
40
+ setContext()
41
+ }
42
+ // Send data when the chat widget is open
43
+ webchat.onOpenWebchat = function() {
44
+ setContext()
45
+ }*/
46
+ };
47
+ })(window, document, 'tdWebchat', { touchpointId: this.chatClientId, accountId: '', region: this.chatClientRegion }, { ...this.chatBranding });
48
+ }
49
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: TalkdeskChatComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
50
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: TalkdeskChatComponent, selector: "lib-talkdesk-chat", inputs: { chatClientId: "chatClientId", chatClientRegion: "chatClientRegion", chatBranding: "chatBranding" }, ngImport: i0, template: '', isInline: true, styles: [""] }); }
51
+ }
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: TalkdeskChatComponent, decorators: [{
53
+ type: Component,
54
+ args: [{ selector: 'lib-talkdesk-chat', template: '' }]
55
+ }], ctorParameters: function () { return []; }, propDecorators: { chatClientId: [{
56
+ type: Input
57
+ }], chatClientRegion: [{
58
+ type: Input
59
+ }], chatBranding: [{
60
+ type: Input
61
+ }] } });
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFsa2Rlc2stY2hhdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3J2ZXN0YS9jaGF0LXdpZGdldC9zcmMvbGliL2NvbXBvbmVudHMvdGFsa2Rlc2stY2hhdC90YWxrZGVzay1jaGF0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQzs7QUFTekQsTUFBTSxPQUFPLHFCQUFxQjtJQUtoQyxnQkFBZ0IsQ0FBQztJQUVWLFFBQVE7UUFDYixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRU8sb0JBQW9CO1FBRTFCLElBQUksT0FBTyxDQUFDO1FBQ1osQ0FBQyxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsRUFBRTtZQUMxQyxJQUFLLE1BQWMsQ0FBQyxlQUFlLEVBQUU7Z0JBQ25DLE9BQU8sQ0FBQyxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQztnQkFDbEQsT0FBTzthQUNSO1lBQ0QsTUFBTSxZQUFZLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBRSxLQUFLLENBQUMsQ0FBQztZQUNwRCxZQUFZLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQztZQUN2QixRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUN4QyxNQUFNLEdBQUcsR0FBRyw0REFBNEQsQ0FBQztZQUN6RSxNQUFNLE1BQU0sR0FBc0IsUUFBUSxDQUFDLGFBQWEsQ0FBRSxRQUFRLENBQUMsQ0FBQztZQUNwRSxNQUFNLGNBQWMsR0FBc0IsUUFBUSxDQUFDLG9CQUFvQixDQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3RGLE1BQU0sQ0FBQyxJQUFJLEdBQUcsaUJBQWlCLENBQUM7WUFDaEMsTUFBTSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7WUFDekIsTUFBTSxDQUFDLEVBQUUsR0FBRyxpQkFBaUIsQ0FBQztZQUM5QixNQUFNLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztZQUNqQixNQUFNLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztZQUNwQixjQUFjLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxNQUFNLEVBQUUsY0FBYyxDQUFDLENBQUM7WUFDaEUsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUU7Z0JBQ25CLE9BQU8sR0FBRyxlQUFlLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUN2QyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUN0Qjs7OzttQkFJRztnQkFDSDs7Ozs7Ozs7OzttQkFVRztZQUNMLENBQUMsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUNBLE1BQU0sRUFDTixRQUFRLEVBQ1IsV0FBVyxFQUNYLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEVBQ2pGLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxFQUFDLENBQ3hCLENBQUM7SUFDSixDQUFDOzhHQTFEVSxxQkFBcUI7a0dBQXJCLHFCQUFxQix1S0FIdEIsRUFBRTs7MkZBR0QscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLG1CQUFtQixZQUNuQixFQUFFOzBFQUlILFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmRlY2xhcmUgdmFyIFRhbGtkZXNrQ2hhdFNESzogYW55O1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItdGFsa2Rlc2stY2hhdCcsXHJcbiAgdGVtcGxhdGU6ICcnLFxyXG4gIHN0eWxlczogWycnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFsa2Rlc2tDaGF0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0e1xyXG4gIEBJbnB1dCgpIGNoYXRDbGllbnRJZCE6IHN0cmluZztcclxuICBASW5wdXQoKSBjaGF0Q2xpZW50UmVnaW9uITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGNoYXRCcmFuZGluZyE6IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0ICgpOiB2b2lkIHtcclxuICAgIHRoaXMuY3JlYXRlVGFsa0Rlc2tXaWRnZXQoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlVGFsa0Rlc2tXaWRnZXQoKTogdm9pZCB7XHJcblxyXG4gICAgbGV0IHdlYmNoYXQ7XHJcbiAgICAoKHdpbmRvdywgZG9jdW1lbnQsIG5vZGUsIHByb3BzLCBjb25maWdzKSA9PiB7XHJcbiAgICAgIGlmICgod2luZG93IGFzIGFueSkuVGFsa2Rlc2tDaGF0U0RLKSB7XHJcbiAgICAgICAgY29uc29sZS5lcnJvcignVGFsa2Rlc2tDaGF0U0RLIGFscmVhZHkgaW5jbHVkZWQnKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgZGl2Q29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCAoJ2RpdicpO1xyXG4gICAgICBkaXZDb250YWluZXIuaWQgPSBub2RlO1xyXG4gICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGRpdkNvbnRhaW5lcik7XHJcbiAgICAgIGNvbnN0IHNyYyA9IGBodHRwczovL3RhbGtkZXNrY2hhdHNkay50YWxrZGVza2FwcC5jb20vdGFsa2Rlc2tjaGF0c2RrLmpzYDtcclxuICAgICAgY29uc3Qgc2NyaXB0OiBIVE1MU2NyaXB0RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQgKCdzY3JpcHQnKTtcclxuICAgICAgY29uc3QgZmlyc3RTY3JpcHRUYWc6IEhUTUxTY3JpcHRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUgKCdzY3JpcHQnKVswXTtcclxuICAgICAgc2NyaXB0LnR5cGUgPSAndGV4dC9qYXZhc2NyaXB0JztcclxuICAgICAgc2NyaXB0LmNoYXJzZXQgPSAnVVRGLTgnO1xyXG4gICAgICBzY3JpcHQuaWQgPSAndGR3ZWJjaGF0c2NyaXB0JztcclxuICAgICAgc2NyaXB0LnNyYyA9IHNyYztcclxuICAgICAgc2NyaXB0LmFzeW5jID0gdHJ1ZTtcclxuICAgICAgZmlyc3RTY3JpcHRUYWcucGFyZW50Tm9kZT8uaW5zZXJ0QmVmb3JlKHNjcmlwdCwgZmlyc3RTY3JpcHRUYWcpO1xyXG4gICAgICBzY3JpcHQub25sb2FkID0gKCkgPT4ge1xyXG4gICAgICAgIHdlYmNoYXQgPSBUYWxrZGVza0NoYXRTREsobm9kZSwgcHJvcHMpO1xyXG4gICAgICAgIHdlYmNoYXQuaW5pdChjb25maWdzKTtcclxuICAgICAgICAvKlxyXG4gICAgICAgICAqIFNlbmQgY3VzdG9tIGRhdGEgZnJvbSB5b3VyIHdlYnNpdGUgdG8gVGFsa0Rlc2shXHJcbiAgICAgICAgICogSWYgeW91IHdvdWxkIGxpa2UgdG8gZG8gaXQsIHlvdSBuZWVkIHRvIHJlbW92ZSB0aGUgZm9sbG93aW5nIGNvbW1lbnRlZCBjb2RlIGFuZFxyXG4gICAgICAgICAqIG1vZGlmeSB0aGUgd2ViY2hhdC5zZXRDb250ZXh0UGFyYW0gcGFyYW1ldGVycyB0byBwYXNzIGluIHRoZSBkYXRhIHlvdSBuZWVkLlxyXG4gICAgICAgICAqL1xyXG4gICAgICAgIC8qZnVuY3Rpb24gc2V0Q29udGV4dCgpIHtcclxuICAgICAgICAgIHdlYmNoYXQuc2V0Q29udGV4dFBhcmFtKHsgXCJ2YXIxXCI6IFwidmFsdWUxXCIsIFwidmFyMlwiOiBcInZhbHVlMlwiLCBcInZhcjNcIjogMTAwIH0pXHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIFNlbmQgZGF0YSB3aGVuIHRoZSBjaGF0IGNvbnZlcnNhdGlvbiBpcyBpbml0aWF0ZWRcclxuICAgICAgICB3ZWJjaGF0Lm9uQ29udmVyc2F0aW9uU3RhcnQgPSBmdW5jdGlvbigpIHtcclxuICAgICAgICAgIHNldENvbnRleHQoKVxyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBTZW5kIGRhdGEgd2hlbiB0aGUgY2hhdCB3aWRnZXQgaXMgb3BlblxyXG4gICAgICAgIHdlYmNoYXQub25PcGVuV2ViY2hhdCA9IGZ1bmN0aW9uKCkge1xyXG4gICAgICAgICAgc2V0Q29udGV4dCgpXHJcbiAgICAgICAgfSovXHJcbiAgICAgIH07XHJcbiAgICB9KShcclxuICAgICAgd2luZG93LFxyXG4gICAgICBkb2N1bWVudCxcclxuICAgICAgJ3RkV2ViY2hhdCcsXHJcbiAgICAgIHsgdG91Y2hwb2ludElkOiB0aGlzLmNoYXRDbGllbnRJZCwgYWNjb3VudElkOiAnJywgcmVnaW9uOiB0aGlzLmNoYXRDbGllbnRSZWdpb24gfSxcclxuICAgICAgeyAuLi50aGlzLmNoYXRCcmFuZGluZ31cclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3J2ZXN0YS9jaGF0LXdpZGdldC9zcmMvbGliL21vZGVscy9jaGF0LWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBDaGF0Q29uZmlnIHtcclxuICBjaGF0Q2xpZW50SWQ6IHN0cmluZztcclxuICBjaGF0Q2xpZW50UmVnaW9uOiBzdHJpbmc7XHJcbiAgY2hhdEJyYW5kaW5nOiBhbnk7XHJcbn1cclxuIl19
@@ -0,0 +1,7 @@
1
+ export var ChatWidgetType;
2
+ (function (ChatWidgetType) {
3
+ ChatWidgetType["OFF"] = "OFF";
4
+ // GENESYS = 'GENESYS',
5
+ ChatWidgetType["TALKDESK"] = "TALKDESK";
6
+ })(ChatWidgetType || (ChatWidgetType = {}));
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC13aWRnZXQtdHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcnZlc3RhL2NoYXQtd2lkZ2V0L3NyYy9saWIvbW9kZWxzL2NoYXQtd2lkZ2V0LXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksY0FJWDtBQUpELFdBQVksY0FBYztJQUN4Qiw2QkFBVyxDQUFBO0lBQ1gsdUJBQXVCO0lBQ3ZCLHVDQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUFKVyxjQUFjLEtBQWQsY0FBYyxRQUl6QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIENoYXRXaWRnZXRUeXBlIHtcclxuICBPRkYgPSAnT0ZGJyxcclxuICAvLyBHRU5FU1lTID0gJ0dFTkVTWVMnLFxyXG4gIFRBTEtERVNLID0gJ1RBTEtERVNLJ1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,8 @@
1
+ /*
2
+ * Public API Surface of chat-widget
3
+ */
4
+ export * from './lib/components/chat-widget/chat-widget.component';
5
+ export * from './lib/chat-widget.module';
6
+ export * from './lib/models/chat-config';
7
+ export * from './lib/models/chat-widget-type';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcnZlc3RhL2NoYXQtd2lkZ2V0L3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYywrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBjaGF0LXdpZGdldFxyXG4gKi9cclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY2hhdC13aWRnZXQvY2hhdC13aWRnZXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hhdC13aWRnZXQubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NoYXQtY29uZmlnJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NoYXQtd2lkZ2V0LXR5cGUnO1xyXG4iXX0=
@@ -0,0 +1,142 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Component, Input, NgModule } from '@angular/core';
3
+ import * as i1 from '@angular/common';
4
+ import { NgSwitch, NgSwitchCase, NgSwitchDefault } from '@angular/common';
5
+
6
+ var ChatWidgetType;
7
+ (function (ChatWidgetType) {
8
+ ChatWidgetType["OFF"] = "OFF";
9
+ // GENESYS = 'GENESYS',
10
+ ChatWidgetType["TALKDESK"] = "TALKDESK";
11
+ })(ChatWidgetType || (ChatWidgetType = {}));
12
+
13
+ class TalkdeskChatComponent {
14
+ constructor() { }
15
+ ngOnInit() {
16
+ this.createTalkDeskWidget();
17
+ }
18
+ createTalkDeskWidget() {
19
+ let webchat;
20
+ ((window, document, node, props, configs) => {
21
+ if (window.TalkdeskChatSDK) {
22
+ console.error('TalkdeskChatSDK already included');
23
+ return;
24
+ }
25
+ const divContainer = document.createElement('div');
26
+ divContainer.id = node;
27
+ document.body.appendChild(divContainer);
28
+ const src = `https://talkdeskchatsdk.talkdeskapp.com/talkdeskchatsdk.js`;
29
+ const script = document.createElement('script');
30
+ const firstScriptTag = document.getElementsByTagName('script')[0];
31
+ script.type = 'text/javascript';
32
+ script.charset = 'UTF-8';
33
+ script.id = 'tdwebchatscript';
34
+ script.src = src;
35
+ script.async = true;
36
+ firstScriptTag.parentNode?.insertBefore(script, firstScriptTag);
37
+ script.onload = () => {
38
+ webchat = TalkdeskChatSDK(node, props);
39
+ webchat.init(configs);
40
+ /*
41
+ * Send custom data from your website to TalkDesk!
42
+ * If you would like to do it, you need to remove the following commented code and
43
+ * modify the webchat.setContextParam parameters to pass in the data you need.
44
+ */
45
+ /*function setContext() {
46
+ webchat.setContextParam({ "var1": "value1", "var2": "value2", "var3": 100 })
47
+ }
48
+ // Send data when the chat conversation is initiated
49
+ webchat.onConversationStart = function() {
50
+ setContext()
51
+ }
52
+ // Send data when the chat widget is open
53
+ webchat.onOpenWebchat = function() {
54
+ setContext()
55
+ }*/
56
+ };
57
+ })(window, document, 'tdWebchat', { touchpointId: this.chatClientId, accountId: '', region: this.chatClientRegion }, { ...this.chatBranding });
58
+ }
59
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: TalkdeskChatComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
60
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: TalkdeskChatComponent, selector: "lib-talkdesk-chat", inputs: { chatClientId: "chatClientId", chatClientRegion: "chatClientRegion", chatBranding: "chatBranding" }, ngImport: i0, template: '', isInline: true, styles: [""] }); }
61
+ }
62
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: TalkdeskChatComponent, decorators: [{
63
+ type: Component,
64
+ args: [{ selector: 'lib-talkdesk-chat', template: '' }]
65
+ }], ctorParameters: function () { return []; }, propDecorators: { chatClientId: [{
66
+ type: Input
67
+ }], chatClientRegion: [{
68
+ type: Input
69
+ }], chatBranding: [{
70
+ type: Input
71
+ }] } });
72
+
73
+ class ChatWidgetComponent {
74
+ constructor() {
75
+ this.ChatWidgetType = ChatWidgetType;
76
+ }
77
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ChatWidgetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
78
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: ChatWidgetComponent, selector: "lib-chat-widget", inputs: { chatType: "chatType", chatConfig: "chatConfig" }, ngImport: i0, template: `
79
+ <ng-container [ngSwitch]="chatType">
80
+ <lib-talkdesk-chat *ngSwitchCase="ChatWidgetType.TALKDESK"
81
+ [chatBranding]="chatConfig.chatBranding"
82
+ [chatClientId]="chatConfig.chatClientId"
83
+ [chatClientRegion]="chatConfig.chatClientRegion"></lib-talkdesk-chat>
84
+ <ng-container *ngSwitchCase="ChatWidgetType.OFF"></ng-container>
85
+ <ng-container *ngSwitchDefault></ng-container>
86
+ </ng-container>
87
+ `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: TalkdeskChatComponent, selector: "lib-talkdesk-chat", inputs: ["chatClientId", "chatClientRegion", "chatBranding"] }] }); }
88
+ }
89
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ChatWidgetComponent, decorators: [{
90
+ type: Component,
91
+ args: [{ selector: 'lib-chat-widget', template: `
92
+ <ng-container [ngSwitch]="chatType">
93
+ <lib-talkdesk-chat *ngSwitchCase="ChatWidgetType.TALKDESK"
94
+ [chatBranding]="chatConfig.chatBranding"
95
+ [chatClientId]="chatConfig.chatClientId"
96
+ [chatClientRegion]="chatConfig.chatClientRegion"></lib-talkdesk-chat>
97
+ <ng-container *ngSwitchCase="ChatWidgetType.OFF"></ng-container>
98
+ <ng-container *ngSwitchDefault></ng-container>
99
+ </ng-container>
100
+ ` }]
101
+ }], propDecorators: { chatType: [{
102
+ type: Input
103
+ }], chatConfig: [{
104
+ type: Input
105
+ }] } });
106
+
107
+ class ChatWidgetModule {
108
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ChatWidgetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
109
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: ChatWidgetModule, declarations: [ChatWidgetComponent,
110
+ TalkdeskChatComponent], imports: [NgSwitch,
111
+ NgSwitchCase,
112
+ NgSwitchDefault], exports: [ChatWidgetComponent] }); }
113
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ChatWidgetModule }); }
114
+ }
115
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: ChatWidgetModule, decorators: [{
116
+ type: NgModule,
117
+ args: [{
118
+ declarations: [
119
+ ChatWidgetComponent,
120
+ TalkdeskChatComponent
121
+ ],
122
+ imports: [
123
+ NgSwitch,
124
+ NgSwitchCase,
125
+ NgSwitchDefault
126
+ ],
127
+ exports: [
128
+ ChatWidgetComponent
129
+ ]
130
+ }]
131
+ }] });
132
+
133
+ /*
134
+ * Public API Surface of chat-widget
135
+ */
136
+
137
+ /**
138
+ * Generated bundle index. Do not edit.
139
+ */
140
+
141
+ export { ChatWidgetComponent, ChatWidgetModule, ChatWidgetType };
142
+ //# sourceMappingURL=corvesta-chat-widget.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"corvesta-chat-widget.mjs","sources":["../../../../projects/corvesta/chat-widget/src/lib/models/chat-widget-type.ts","../../../../projects/corvesta/chat-widget/src/lib/components/talkdesk-chat/talkdesk-chat.component.ts","../../../../projects/corvesta/chat-widget/src/lib/components/chat-widget/chat-widget.component.ts","../../../../projects/corvesta/chat-widget/src/lib/chat-widget.module.ts","../../../../projects/corvesta/chat-widget/src/public-api.ts","../../../../projects/corvesta/chat-widget/src/corvesta-chat-widget.ts"],"sourcesContent":["export enum ChatWidgetType {\r\n OFF = 'OFF',\r\n // GENESYS = 'GENESYS',\r\n TALKDESK = 'TALKDESK'\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\ndeclare var TalkdeskChatSDK: any;\r\n\r\n@Component({\r\n selector: 'lib-talkdesk-chat',\r\n template: '',\r\n styles: ['']\r\n})\r\nexport class TalkdeskChatComponent implements OnInit{\r\n @Input() chatClientId!: string;\r\n @Input() chatClientRegion!: string;\r\n @Input() chatBranding!: any;\r\n\r\n constructor() { }\r\n\r\n public ngOnInit (): void {\r\n this.createTalkDeskWidget();\r\n }\r\n\r\n private createTalkDeskWidget(): void {\r\n\r\n let webchat;\r\n ((window, document, node, props, configs) => {\r\n if ((window as any).TalkdeskChatSDK) {\r\n console.error('TalkdeskChatSDK already included');\r\n return;\r\n }\r\n const divContainer = document.createElement ('div');\r\n divContainer.id = node;\r\n document.body.appendChild(divContainer);\r\n const src = `https://talkdeskchatsdk.talkdeskapp.com/talkdeskchatsdk.js`;\r\n const script: HTMLScriptElement = document.createElement ('script');\r\n const firstScriptTag: HTMLScriptElement = document.getElementsByTagName ('script')[0];\r\n script.type = 'text/javascript';\r\n script.charset = 'UTF-8';\r\n script.id = 'tdwebchatscript';\r\n script.src = src;\r\n script.async = true;\r\n firstScriptTag.parentNode?.insertBefore(script, firstScriptTag);\r\n script.onload = () => {\r\n webchat = TalkdeskChatSDK(node, props);\r\n webchat.init(configs);\r\n /*\r\n * Send custom data from your website to TalkDesk!\r\n * If you would like to do it, you need to remove the following commented code and\r\n * modify the webchat.setContextParam parameters to pass in the data you need.\r\n */\r\n /*function setContext() {\r\n webchat.setContextParam({ \"var1\": \"value1\", \"var2\": \"value2\", \"var3\": 100 })\r\n }\r\n // Send data when the chat conversation is initiated\r\n webchat.onConversationStart = function() {\r\n setContext()\r\n }\r\n // Send data when the chat widget is open\r\n webchat.onOpenWebchat = function() {\r\n setContext()\r\n }*/\r\n };\r\n })(\r\n window,\r\n document,\r\n 'tdWebchat',\r\n { touchpointId: this.chatClientId, accountId: '', region: this.chatClientRegion },\r\n { ...this.chatBranding}\r\n );\r\n }\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { ChatWidgetType } from '../../models/chat-widget-type';\r\nimport { ChatConfig } from '../../models/chat-config';\r\n\r\n@Component({\r\n selector: 'lib-chat-widget',\r\n template: `\r\n <ng-container [ngSwitch]=\"chatType\">\r\n <lib-talkdesk-chat *ngSwitchCase=\"ChatWidgetType.TALKDESK\"\r\n [chatBranding]=\"chatConfig.chatBranding\"\r\n [chatClientId]=\"chatConfig.chatClientId\"\r\n [chatClientRegion]=\"chatConfig.chatClientRegion\"></lib-talkdesk-chat>\r\n <ng-container *ngSwitchCase=\"ChatWidgetType.OFF\"></ng-container>\r\n <ng-container *ngSwitchDefault></ng-container>\r\n </ng-container>\r\n `,\r\n styles: []\r\n})\r\nexport class ChatWidgetComponent {\r\n @Input() chatType!: ChatWidgetType;\r\n @Input() chatConfig!: ChatConfig;\r\n\r\n protected readonly ChatWidgetType = ChatWidgetType;\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { ChatWidgetComponent } from './components/chat-widget/chat-widget.component';\r\nimport { TalkdeskChatComponent } from './components/talkdesk-chat/talkdesk-chat.component';\r\nimport { NgSwitch, NgSwitchCase, NgSwitchDefault } from '@angular/common';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n ChatWidgetComponent,\r\n TalkdeskChatComponent\r\n ],\r\n imports: [\r\n NgSwitch,\r\n NgSwitchCase,\r\n NgSwitchDefault\r\n ],\r\n exports: [\r\n ChatWidgetComponent\r\n ]\r\n})\r\nexport class ChatWidgetModule { }\r\n","/*\r\n * Public API Surface of chat-widget\r\n */\r\n\r\nexport * from './lib/components/chat-widget/chat-widget.component';\r\nexport * from './lib/chat-widget.module';\r\nexport * from './lib/models/chat-config';\r\nexport * from './lib/models/chat-widget-type';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.TalkdeskChatComponent"],"mappings":"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"}
package/index.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="@corvesta/chat-widget" />
5
+ export * from './public-api';
@@ -0,0 +1,9 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./components/chat-widget/chat-widget.component";
3
+ import * as i2 from "./components/talkdesk-chat/talkdesk-chat.component";
4
+ import * as i3 from "@angular/common";
5
+ export declare class ChatWidgetModule {
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<ChatWidgetModule, never>;
7
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ChatWidgetModule, [typeof i1.ChatWidgetComponent, typeof i2.TalkdeskChatComponent], [typeof i3.NgSwitch, typeof i3.NgSwitchCase, typeof i3.NgSwitchDefault], [typeof i1.ChatWidgetComponent]>;
8
+ static ɵinj: i0.ɵɵInjectorDeclaration<ChatWidgetModule>;
9
+ }
@@ -0,0 +1,10 @@
1
+ import { ChatWidgetType } from '../../models/chat-widget-type';
2
+ import { ChatConfig } from '../../models/chat-config';
3
+ import * as i0 from "@angular/core";
4
+ export declare class ChatWidgetComponent {
5
+ chatType: ChatWidgetType;
6
+ chatConfig: ChatConfig;
7
+ protected readonly ChatWidgetType: typeof ChatWidgetType;
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<ChatWidgetComponent, never>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<ChatWidgetComponent, "lib-chat-widget", never, { "chatType": { "alias": "chatType"; "required": false; }; "chatConfig": { "alias": "chatConfig"; "required": false; }; }, {}, never, never, false, never>;
10
+ }
@@ -0,0 +1,12 @@
1
+ import { OnInit } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class TalkdeskChatComponent implements OnInit {
4
+ chatClientId: string;
5
+ chatClientRegion: string;
6
+ chatBranding: any;
7
+ constructor();
8
+ ngOnInit(): void;
9
+ private createTalkDeskWidget;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<TalkdeskChatComponent, never>;
11
+ static ɵcmp: i0.ɵɵComponentDeclaration<TalkdeskChatComponent, "lib-talkdesk-chat", never, { "chatClientId": { "alias": "chatClientId"; "required": false; }; "chatClientRegion": { "alias": "chatClientRegion"; "required": false; }; "chatBranding": { "alias": "chatBranding"; "required": false; }; }, {}, never, never, false, never>;
12
+ }
@@ -0,0 +1,5 @@
1
+ export interface ChatConfig {
2
+ chatClientId: string;
3
+ chatClientRegion: string;
4
+ chatBranding: any;
5
+ }
@@ -0,0 +1,4 @@
1
+ export declare enum ChatWidgetType {
2
+ OFF = "OFF",
3
+ TALKDESK = "TALKDESK"
4
+ }
package/package.json ADDED
@@ -0,0 +1,25 @@
1
+ {
2
+ "name": "@corvesta/chat-widget",
3
+ "version": "0.0.1",
4
+ "peerDependencies": {
5
+ "@angular/common": "^16.2.0",
6
+ "@angular/core": "^16.2.0"
7
+ },
8
+ "dependencies": {
9
+ "tslib": "^2.3.0"
10
+ },
11
+ "sideEffects": false,
12
+ "module": "fesm2022/corvesta-chat-widget.mjs",
13
+ "typings": "index.d.ts",
14
+ "exports": {
15
+ "./package.json": {
16
+ "default": "./package.json"
17
+ },
18
+ ".": {
19
+ "types": "./index.d.ts",
20
+ "esm2022": "./esm2022/corvesta-chat-widget.mjs",
21
+ "esm": "./esm2022/corvesta-chat-widget.mjs",
22
+ "default": "./fesm2022/corvesta-chat-widget.mjs"
23
+ }
24
+ }
25
+ }
@@ -0,0 +1,4 @@
1
+ export * from './lib/components/chat-widget/chat-widget.component';
2
+ export * from './lib/chat-widget.module';
3
+ export * from './lib/models/chat-config';
4
+ export * from './lib/models/chat-widget-type';