@dorydaniel/ai-banking-assistant-lib 0.0.5 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,11 +1,12 @@
1
1
  import { HttpClient } from '@angular/common/http';
2
- import { Component, inject, Input } from '@angular/core';
2
+ import { Component, inject, Input, ChangeDetectorRef } from '@angular/core';
3
3
  import * as i0 from "@angular/core";
4
4
  export class AiBankingAssistantLibComponent {
5
5
  username = '';
6
6
  transactionsUrl = '';
7
7
  transactionRequest = {};
8
8
  http = inject(HttpClient);
9
+ cd = inject(ChangeDetectorRef);
9
10
  conversation = [
10
11
  {
11
12
  from: 'bot',
@@ -48,6 +49,7 @@ export class AiBankingAssistantLibComponent {
48
49
  text: `- ${tx.description}: $${tx.amount.toFixed(2)}`,
49
50
  });
50
51
  });
52
+ this.cd.detectChanges();
51
53
  });
52
54
  }
53
55
  // Clear the textarea after submission
@@ -57,11 +59,11 @@ export class AiBankingAssistantLibComponent {
57
59
  }
58
60
  }
59
61
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
60
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: AiBankingAssistantLibComponent, isStandalone: true, selector: "lib-ai-banking-assistant-lib", inputs: { username: "username", transactionsUrl: "transactionsUrl", transactionRequest: "transactionRequest" }, ngImport: i0, template: "<div\n class=\"main-container text-white d-flex flex-column justify-content-between p-4\"\n>\n <h1 class=\"m-0\">Welcome {{ username }}!</h1>\n\n <div class=\"px-5 pt-5\">\n <div class=\"conversation-view p-3 mb-3\">\n @for (message of conversation; track $index) {\n <div\n class=\"p-2 {{\n message.from === 'user'\n ? 'float-end text-end user-message'\n : 'float-start text-start'\n }}\"\n >\n {{ message.text }}\n </div>\n }\n </div>\n <textarea\n class=\"rounded-4 w-100 p-3\"\n placeholder=\"Tell me what you need...\"\n (keydown)=\"textareaKeydown($event)\"\n ></textarea>\n </div>\n</div>\n", styles: [".main-container{min-height:400px;height:100%;background:linear-gradient(180deg,#6a2bd6,#2e0458)}.main-container .conversation-view{max-height:300px;overflow-y:auto}.main-container .conversation-view .user-message{width:75%}.main-container textarea{background-color:#290050;color:#fff;border:none;field-sizing:content;min-height:3lh;max-height:6lh;resize:none}.main-container textarea::placeholder{color:#d3d3d3}.main-container textarea:focus-visible{outline:none}\n"] });
62
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: AiBankingAssistantLibComponent, isStandalone: true, selector: "lib-ai-banking-assistant-lib", inputs: { username: "username", transactionsUrl: "transactionsUrl", transactionRequest: "transactionRequest" }, ngImport: i0, template: "<div\n class=\"main-container text-white d-flex flex-column justify-content-between p-4\"\n>\n <h1 class=\"m-0 text-white\">Welcome {{ username }}!</h1>\n\n <div class=\"px-5 pt-5\">\n <div class=\"conversation-view p-3 mb-3\">\n @for (message of conversation; track $index) {\n <div\n class=\"p-2 {{\n message.from === 'user'\n ? 'float-end text-end user-message'\n : 'float-start text-start'\n }}\"\n >\n {{ message.text }}\n </div>\n }\n </div>\n <textarea\n class=\"rounded-4 w-100 p-3\"\n placeholder=\"Tell me what you need...\"\n (keydown)=\"textareaKeydown($event)\"\n ></textarea>\n </div>\n</div>\n", styles: [".main-container{min-height:400px;height:100%;background:linear-gradient(180deg,#6a2bd6,#2e0458)}.main-container .conversation-view{max-height:300px;overflow-y:auto}.main-container .conversation-view .user-message{width:75%}.main-container textarea{background-color:#290050;color:#fff;border:none;field-sizing:content;min-height:3lh;max-height:6lh;resize:none}.main-container textarea::placeholder{color:#d3d3d3}.main-container textarea:focus-visible{outline:none}\n"] });
61
63
  }
62
64
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibComponent, decorators: [{
63
65
  type: Component,
64
- args: [{ selector: 'lib-ai-banking-assistant-lib', standalone: true, imports: [], template: "<div\n class=\"main-container text-white d-flex flex-column justify-content-between p-4\"\n>\n <h1 class=\"m-0\">Welcome {{ username }}!</h1>\n\n <div class=\"px-5 pt-5\">\n <div class=\"conversation-view p-3 mb-3\">\n @for (message of conversation; track $index) {\n <div\n class=\"p-2 {{\n message.from === 'user'\n ? 'float-end text-end user-message'\n : 'float-start text-start'\n }}\"\n >\n {{ message.text }}\n </div>\n }\n </div>\n <textarea\n class=\"rounded-4 w-100 p-3\"\n placeholder=\"Tell me what you need...\"\n (keydown)=\"textareaKeydown($event)\"\n ></textarea>\n </div>\n</div>\n", styles: [".main-container{min-height:400px;height:100%;background:linear-gradient(180deg,#6a2bd6,#2e0458)}.main-container .conversation-view{max-height:300px;overflow-y:auto}.main-container .conversation-view .user-message{width:75%}.main-container textarea{background-color:#290050;color:#fff;border:none;field-sizing:content;min-height:3lh;max-height:6lh;resize:none}.main-container textarea::placeholder{color:#d3d3d3}.main-container textarea:focus-visible{outline:none}\n"] }]
66
+ args: [{ selector: 'lib-ai-banking-assistant-lib', standalone: true, imports: [], template: "<div\n class=\"main-container text-white d-flex flex-column justify-content-between p-4\"\n>\n <h1 class=\"m-0 text-white\">Welcome {{ username }}!</h1>\n\n <div class=\"px-5 pt-5\">\n <div class=\"conversation-view p-3 mb-3\">\n @for (message of conversation; track $index) {\n <div\n class=\"p-2 {{\n message.from === 'user'\n ? 'float-end text-end user-message'\n : 'float-start text-start'\n }}\"\n >\n {{ message.text }}\n </div>\n }\n </div>\n <textarea\n class=\"rounded-4 w-100 p-3\"\n placeholder=\"Tell me what you need...\"\n (keydown)=\"textareaKeydown($event)\"\n ></textarea>\n </div>\n</div>\n", styles: [".main-container{min-height:400px;height:100%;background:linear-gradient(180deg,#6a2bd6,#2e0458)}.main-container .conversation-view{max-height:300px;overflow-y:auto}.main-container .conversation-view .user-message{width:75%}.main-container textarea{background-color:#290050;color:#fff;border:none;field-sizing:content;min-height:3lh;max-height:6lh;resize:none}.main-container textarea::placeholder{color:#d3d3d3}.main-container textarea:focus-visible{outline:none}\n"] }]
65
67
  }], propDecorators: { username: [{
66
68
  type: Input
67
69
  }], transactionsUrl: [{
@@ -69,4 +71,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
69
71
  }], transactionRequest: [{
70
72
  type: Input
71
73
  }] } });
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWktYmFua2luZy1hc3Npc3RhbnQtbGliLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FpLWJhbmtpbmctYXNzaXN0YW50LWxpYi9zcmMvbGliL2FpLWJhbmtpbmctYXNzaXN0YW50LWxpYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9haS1iYW5raW5nLWFzc2lzdGFudC1saWIvc3JjL2xpYi9haS1iYW5raW5nLWFzc2lzdGFudC1saWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFTekQsTUFBTSxPQUFPLDhCQUE4QjtJQUNoQyxRQUFRLEdBQVcsRUFBRSxDQUFDO0lBQ3RCLGVBQWUsR0FBVyxFQUFFLENBQUM7SUFDN0Isa0JBQWtCLEdBQVEsRUFBRSxDQUFDO0lBRTlCLElBQUksR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFbEMsWUFBWSxHQUFHO1FBQ2I7WUFDRSxJQUFJLEVBQUUsS0FBSztZQUNYLElBQUksRUFBRSw0REFBNEQ7U0FDbkU7S0FDRixDQUFDO0lBRUYsZUFBZSxDQUFDLEtBQW9CO1FBQ2xDLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUMxQiw0Q0FBNEM7WUFDNUMsSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ25CLHFEQUFxRDtnQkFDckQsK0JBQStCO1lBQ2pDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixzREFBc0Q7Z0JBQ3RELEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDdkIsa0JBQWtCO2dCQUNsQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQztvQkFDckIsSUFBSSxFQUFFLE1BQU07b0JBQ1osSUFBSSxFQUFHLEtBQUssQ0FBQyxNQUE4QixDQUFDLEtBQUs7aUJBQ2xELENBQUMsQ0FBQztnQkFDSCx5Q0FBeUM7Z0JBQ3pDLG9EQUFvRDtnQkFDcEQsa0RBQWtEO2dCQUNsRCxPQUFPO2dCQUNQLHdEQUF3RDtnQkFDeEQsS0FBSztnQkFFTCxJQUNHLEtBQUssQ0FBQyxNQUE4QixDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUU7b0JBQ3pELGNBQWMsRUFDZCxDQUFDO29CQUNELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO3dCQUNyQixJQUFJLEVBQUUsS0FBSzt3QkFDWCxJQUFJLEVBQUUsb0NBQW9DO3FCQUMzQyxDQUFDLENBQUM7b0JBQ0gsSUFBSSxDQUFDLElBQUk7eUJBQ04sSUFBSSxDQUFNLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDO3lCQUN4RCxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTt3QkFDbEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFPLEVBQUUsRUFBRTs0QkFDcEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUM7Z0NBQ3JCLElBQUksRUFBRSxLQUFLO2dDQUNYLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxXQUFXLE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7NkJBQ3RELENBQUMsQ0FBQzt3QkFDTCxDQUFDLENBQUMsQ0FBQztvQkFDTCxDQUFDLENBQUMsQ0FBQztnQkFDUCxDQUFDO2dCQUVELHNDQUFzQztnQkFDckMsS0FBSyxDQUFDLE1BQThCLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztnQkFDaEQsS0FBSyxDQUFDLE1BQThCLENBQUMsUUFBUSxDQUM1QyxDQUFDLEVBQ0EsS0FBSyxDQUFDLE1BQThCLENBQUMsWUFBWSxDQUNuRCxDQUFDO1lBQ0osQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO3dHQS9EVSw4QkFBOEI7NEZBQTlCLDhCQUE4Qix3TUNWM0MscXRCQTBCQTs7NEZEaEJhLDhCQUE4QjtrQkFQMUMsU0FBUzsrQkFDRSw4QkFBOEIsY0FDNUIsSUFBSSxXQUNQLEVBQUU7OEJBS0YsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWFpLWJhbmtpbmctYXNzaXN0YW50LWxpYicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtdLFxuICB0ZW1wbGF0ZVVybDogJy4vYWktYmFua2luZy1hc3Npc3RhbnQtbGliLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4uL3N0eWxlcy5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEFpQmFua2luZ0Fzc2lzdGFudExpYkNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHVzZXJuYW1lOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgdHJhbnNhY3Rpb25zVXJsOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgdHJhbnNhY3Rpb25SZXF1ZXN0OiBhbnkgPSB7fTtcblxuICBwcml2YXRlIGh0dHAgPSBpbmplY3QoSHR0cENsaWVudCk7XG5cbiAgY29udmVyc2F0aW9uID0gW1xuICAgIHtcbiAgICAgIGZyb206ICdib3QnLFxuICAgICAgdGV4dDogJ0hlbGxvISBIb3cgY2FuIEkgYXNzaXN0IHlvdSB3aXRoIHlvdXIgYmFua2luZyBuZWVkcyB0b2RheT8nLFxuICAgIH0sXG4gIF07XG5cbiAgdGV4dGFyZWFLZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VudGVyJykge1xuICAgICAgLy8gQ2hlY2sgaWYgdGhlIFNoaWZ0IGtleSB3YXMgYWxzbyBoZWxkIGRvd25cbiAgICAgIGlmIChldmVudC5zaGlmdEtleSkge1xuICAgICAgICAvLyBTaGlmdCtFbnRlcjogQWxsb3cgdGhlIGRlZmF1bHQgYmVoYXZpb3IgKG5ldyBsaW5lKVxuICAgICAgICAvLyBObyBuZWVkIHRvIHByZXZlbnREZWZhdWx0KCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBFbnRlciBvbmx5OiBQcmV2ZW50IHRoZSBkZWZhdWx0IGJlaGF2aW9yIChuZXcgbGluZSlcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgLy8gU3VibWl0IHRoZSBmb3JtXG4gICAgICAgIHRoaXMuY29udmVyc2F0aW9uLnB1c2goe1xuICAgICAgICAgIGZyb206ICd1c2VyJyxcbiAgICAgICAgICB0ZXh0OiAoZXZlbnQudGFyZ2V0IGFzIEhUTUxUZXh0QXJlYUVsZW1lbnQpLnZhbHVlLFxuICAgICAgICB9KTtcbiAgICAgICAgLy8gLy8gQ2xlYXIgdGhlIHRleHRhcmVhIGFmdGVyIHN1Ym1pc3Npb25cbiAgICAgICAgLy8gKGV2ZW50LnRhcmdldCBhcyBIVE1MVGV4dEFyZWFFbGVtZW50KS52YWx1ZSA9ICcnO1xuICAgICAgICAvLyAoZXZlbnQudGFyZ2V0IGFzIEhUTUxUZXh0QXJlYUVsZW1lbnQpLnNjcm9sbFRvKFxuICAgICAgICAvLyAgIDAsXG4gICAgICAgIC8vICAgKGV2ZW50LnRhcmdldCBhcyBIVE1MVGV4dEFyZWFFbGVtZW50KS5zY3JvbGxIZWlnaHQsXG4gICAgICAgIC8vICk7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgIChldmVudC50YXJnZXQgYXMgSFRNTFRleHRBcmVhRWxlbWVudCkudmFsdWUudG9Mb3dlckNhc2UoKSA9PT1cbiAgICAgICAgICAndHJhbnNhY3Rpb25zJ1xuICAgICAgICApIHtcbiAgICAgICAgICB0aGlzLmNvbnZlcnNhdGlvbi5wdXNoKHtcbiAgICAgICAgICAgIGZyb206ICdib3QnLFxuICAgICAgICAgICAgdGV4dDogJ0hlcmUgYXJlIHlvdXIgcmVjZW50IHRyYW5zYWN0aW9uczonLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMuaHR0cFxuICAgICAgICAgICAgLnBvc3Q8YW55Pih0aGlzLnRyYW5zYWN0aW9uc1VybCwgdGhpcy50cmFuc2FjdGlvblJlcXVlc3QpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChkYXRhKSA9PiB7XG4gICAgICAgICAgICAgIGRhdGEuVHJhbnNhY3Rpb25zLmZvckVhY2goKHR4OiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbnZlcnNhdGlvbi5wdXNoKHtcbiAgICAgICAgICAgICAgICAgIGZyb206ICdib3QnLFxuICAgICAgICAgICAgICAgICAgdGV4dDogYC0gJHt0eC5kZXNjcmlwdGlvbn06ICQke3R4LmFtb3VudC50b0ZpeGVkKDIpfWAsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDbGVhciB0aGUgdGV4dGFyZWEgYWZ0ZXIgc3VibWlzc2lvblxuICAgICAgICAoZXZlbnQudGFyZ2V0IGFzIEhUTUxUZXh0QXJlYUVsZW1lbnQpLnZhbHVlID0gJyc7XG4gICAgICAgIChldmVudC50YXJnZXQgYXMgSFRNTFRleHRBcmVhRWxlbWVudCkuc2Nyb2xsVG8oXG4gICAgICAgICAgMCxcbiAgICAgICAgICAoZXZlbnQudGFyZ2V0IGFzIEhUTUxUZXh0QXJlYUVsZW1lbnQpLnNjcm9sbEhlaWdodCxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJtYWluLWNvbnRhaW5lciB0ZXh0LXdoaXRlIGQtZmxleCBmbGV4LWNvbHVtbiBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBwLTRcIlxuPlxuICA8aDEgY2xhc3M9XCJtLTBcIj5XZWxjb21lIHt7IHVzZXJuYW1lIH19ITwvaDE+XG5cbiAgPGRpdiBjbGFzcz1cInB4LTUgcHQtNVwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb252ZXJzYXRpb24tdmlldyBwLTMgbWItM1wiPlxuICAgICAgQGZvciAobWVzc2FnZSBvZiBjb252ZXJzYXRpb247IHRyYWNrICRpbmRleCkge1xuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJwLTIge3tcbiAgICAgICAgICAgIG1lc3NhZ2UuZnJvbSA9PT0gJ3VzZXInXG4gICAgICAgICAgICAgID8gJ2Zsb2F0LWVuZCB0ZXh0LWVuZCB1c2VyLW1lc3NhZ2UnXG4gICAgICAgICAgICAgIDogJ2Zsb2F0LXN0YXJ0IHRleHQtc3RhcnQnXG4gICAgICAgICAgfX1cIlxuICAgICAgICA+XG4gICAgICAgICAge3sgbWVzc2FnZS50ZXh0IH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuICAgIDx0ZXh0YXJlYVxuICAgICAgY2xhc3M9XCJyb3VuZGVkLTQgdy0xMDAgcC0zXCJcbiAgICAgIHBsYWNlaG9sZGVyPVwiVGVsbCBtZSB3aGF0IHlvdSBuZWVkLi4uXCJcbiAgICAgIChrZXlkb3duKT1cInRleHRhcmVhS2V5ZG93bigkZXZlbnQpXCJcbiAgICA+PC90ZXh0YXJlYT5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWktYmFua2luZy1hc3Npc3RhbnQtbGliLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FpLWJhbmtpbmctYXNzaXN0YW50LWxpYi9zcmMvbGliL2FpLWJhbmtpbmctYXNzaXN0YW50LWxpYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9haS1iYW5raW5nLWFzc2lzdGFudC1saWIvc3JjL2xpYi9haS1iYW5raW5nLWFzc2lzdGFudC1saWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFTNUUsTUFBTSxPQUFPLDhCQUE4QjtJQUNoQyxRQUFRLEdBQVcsRUFBRSxDQUFDO0lBQ3RCLGVBQWUsR0FBVyxFQUFFLENBQUM7SUFDN0Isa0JBQWtCLEdBQVEsRUFBRSxDQUFDO0lBRTlCLElBQUksR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDMUIsRUFBRSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBRXZDLFlBQVksR0FBRztRQUNiO1lBQ0UsSUFBSSxFQUFFLEtBQUs7WUFDWCxJQUFJLEVBQUUsNERBQTREO1NBQ25FO0tBQ0YsQ0FBQztJQUVGLGVBQWUsQ0FBQyxLQUFvQjtRQUNsQyxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDMUIsNENBQTRDO1lBQzVDLElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNuQixxREFBcUQ7Z0JBQ3JELCtCQUErQjtZQUNqQyxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sc0RBQXNEO2dCQUN0RCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3ZCLGtCQUFrQjtnQkFDbEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUM7b0JBQ3JCLElBQUksRUFBRSxNQUFNO29CQUNaLElBQUksRUFBRyxLQUFLLENBQUMsTUFBOEIsQ0FBQyxLQUFLO2lCQUNsRCxDQUFDLENBQUM7Z0JBQ0gseUNBQXlDO2dCQUN6QyxvREFBb0Q7Z0JBQ3BELGtEQUFrRDtnQkFDbEQsT0FBTztnQkFDUCx3REFBd0Q7Z0JBQ3hELEtBQUs7Z0JBRUwsSUFDRyxLQUFLLENBQUMsTUFBOEIsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFO29CQUN6RCxjQUFjLEVBQ2QsQ0FBQztvQkFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQzt3QkFDckIsSUFBSSxFQUFFLEtBQUs7d0JBQ1gsSUFBSSxFQUFFLG9DQUFvQztxQkFDM0MsQ0FBQyxDQUFDO29CQUNILElBQUksQ0FBQyxJQUFJO3lCQUNOLElBQUksQ0FBTSxJQUFJLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQzt5QkFDeEQsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7d0JBQ2xCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBTyxFQUFFLEVBQUU7NEJBQ3BDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO2dDQUNyQixJQUFJLEVBQUUsS0FBSztnQ0FDWCxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsV0FBVyxNQUFNLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFOzZCQUN0RCxDQUFDLENBQUM7d0JBQ0wsQ0FBQyxDQUFDLENBQUM7d0JBQ0gsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztvQkFDMUIsQ0FBQyxDQUFDLENBQUM7Z0JBQ1AsQ0FBQztnQkFFRCxzQ0FBc0M7Z0JBQ3JDLEtBQUssQ0FBQyxNQUE4QixDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7Z0JBQ2hELEtBQUssQ0FBQyxNQUE4QixDQUFDLFFBQVEsQ0FDNUMsQ0FBQyxFQUNBLEtBQUssQ0FBQyxNQUE4QixDQUFDLFlBQVksQ0FDbkQsQ0FBQztZQUNKLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQzt3R0FqRVUsOEJBQThCOzRGQUE5Qiw4QkFBOEIsd01DVjNDLGd1QkEwQkE7OzRGRGhCYSw4QkFBOEI7a0JBUDFDLFNBQVM7K0JBQ0UsOEJBQThCLGNBQzVCLElBQUksV0FDUCxFQUFFOzhCQUtGLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIElucHV0LCBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItYWktYmFua2luZy1hc3Npc3RhbnQtbGliJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW10sXG4gIHRlbXBsYXRlVXJsOiAnLi9haS1iYW5raW5nLWFzc2lzdGFudC1saWIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi4vc3R5bGVzLnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQWlCYW5raW5nQXNzaXN0YW50TGliQ29tcG9uZW50IHtcbiAgQElucHV0KCkgdXNlcm5hbWU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSB0cmFuc2FjdGlvbnNVcmw6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSB0cmFuc2FjdGlvblJlcXVlc3Q6IGFueSA9IHt9O1xuXG4gIHByaXZhdGUgaHR0cCA9IGluamVjdChIdHRwQ2xpZW50KTtcbiAgcHJpdmF0ZSBjZCA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgY29udmVyc2F0aW9uID0gW1xuICAgIHtcbiAgICAgIGZyb206ICdib3QnLFxuICAgICAgdGV4dDogJ0hlbGxvISBIb3cgY2FuIEkgYXNzaXN0IHlvdSB3aXRoIHlvdXIgYmFua2luZyBuZWVkcyB0b2RheT8nLFxuICAgIH0sXG4gIF07XG5cbiAgdGV4dGFyZWFLZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VudGVyJykge1xuICAgICAgLy8gQ2hlY2sgaWYgdGhlIFNoaWZ0IGtleSB3YXMgYWxzbyBoZWxkIGRvd25cbiAgICAgIGlmIChldmVudC5zaGlmdEtleSkge1xuICAgICAgICAvLyBTaGlmdCtFbnRlcjogQWxsb3cgdGhlIGRlZmF1bHQgYmVoYXZpb3IgKG5ldyBsaW5lKVxuICAgICAgICAvLyBObyBuZWVkIHRvIHByZXZlbnREZWZhdWx0KCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBFbnRlciBvbmx5OiBQcmV2ZW50IHRoZSBkZWZhdWx0IGJlaGF2aW9yIChuZXcgbGluZSlcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgLy8gU3VibWl0IHRoZSBmb3JtXG4gICAgICAgIHRoaXMuY29udmVyc2F0aW9uLnB1c2goe1xuICAgICAgICAgIGZyb206ICd1c2VyJyxcbiAgICAgICAgICB0ZXh0OiAoZXZlbnQudGFyZ2V0IGFzIEhUTUxUZXh0QXJlYUVsZW1lbnQpLnZhbHVlLFxuICAgICAgICB9KTtcbiAgICAgICAgLy8gLy8gQ2xlYXIgdGhlIHRleHRhcmVhIGFmdGVyIHN1Ym1pc3Npb25cbiAgICAgICAgLy8gKGV2ZW50LnRhcmdldCBhcyBIVE1MVGV4dEFyZWFFbGVtZW50KS52YWx1ZSA9ICcnO1xuICAgICAgICAvLyAoZXZlbnQudGFyZ2V0IGFzIEhUTUxUZXh0QXJlYUVsZW1lbnQpLnNjcm9sbFRvKFxuICAgICAgICAvLyAgIDAsXG4gICAgICAgIC8vICAgKGV2ZW50LnRhcmdldCBhcyBIVE1MVGV4dEFyZWFFbGVtZW50KS5zY3JvbGxIZWlnaHQsXG4gICAgICAgIC8vICk7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgIChldmVudC50YXJnZXQgYXMgSFRNTFRleHRBcmVhRWxlbWVudCkudmFsdWUudG9Mb3dlckNhc2UoKSA9PT1cbiAgICAgICAgICAndHJhbnNhY3Rpb25zJ1xuICAgICAgICApIHtcbiAgICAgICAgICB0aGlzLmNvbnZlcnNhdGlvbi5wdXNoKHtcbiAgICAgICAgICAgIGZyb206ICdib3QnLFxuICAgICAgICAgICAgdGV4dDogJ0hlcmUgYXJlIHlvdXIgcmVjZW50IHRyYW5zYWN0aW9uczonLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMuaHR0cFxuICAgICAgICAgICAgLnBvc3Q8YW55Pih0aGlzLnRyYW5zYWN0aW9uc1VybCwgdGhpcy50cmFuc2FjdGlvblJlcXVlc3QpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChkYXRhKSA9PiB7XG4gICAgICAgICAgICAgIGRhdGEuVHJhbnNhY3Rpb25zLmZvckVhY2goKHR4OiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbnZlcnNhdGlvbi5wdXNoKHtcbiAgICAgICAgICAgICAgICAgIGZyb206ICdib3QnLFxuICAgICAgICAgICAgICAgICAgdGV4dDogYC0gJHt0eC5kZXNjcmlwdGlvbn06ICQke3R4LmFtb3VudC50b0ZpeGVkKDIpfWAsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ2xlYXIgdGhlIHRleHRhcmVhIGFmdGVyIHN1Ym1pc3Npb25cbiAgICAgICAgKGV2ZW50LnRhcmdldCBhcyBIVE1MVGV4dEFyZWFFbGVtZW50KS52YWx1ZSA9ICcnO1xuICAgICAgICAoZXZlbnQudGFyZ2V0IGFzIEhUTUxUZXh0QXJlYUVsZW1lbnQpLnNjcm9sbFRvKFxuICAgICAgICAgIDAsXG4gICAgICAgICAgKGV2ZW50LnRhcmdldCBhcyBIVE1MVGV4dEFyZWFFbGVtZW50KS5zY3JvbGxIZWlnaHQsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwibWFpbi1jb250YWluZXIgdGV4dC13aGl0ZSBkLWZsZXggZmxleC1jb2x1bW4ganVzdGlmeS1jb250ZW50LWJldHdlZW4gcC00XCJcbj5cbiAgPGgxIGNsYXNzPVwibS0wIHRleHQtd2hpdGVcIj5XZWxjb21lIHt7IHVzZXJuYW1lIH19ITwvaDE+XG5cbiAgPGRpdiBjbGFzcz1cInB4LTUgcHQtNVwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb252ZXJzYXRpb24tdmlldyBwLTMgbWItM1wiPlxuICAgICAgQGZvciAobWVzc2FnZSBvZiBjb252ZXJzYXRpb247IHRyYWNrICRpbmRleCkge1xuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJwLTIge3tcbiAgICAgICAgICAgIG1lc3NhZ2UuZnJvbSA9PT0gJ3VzZXInXG4gICAgICAgICAgICAgID8gJ2Zsb2F0LWVuZCB0ZXh0LWVuZCB1c2VyLW1lc3NhZ2UnXG4gICAgICAgICAgICAgIDogJ2Zsb2F0LXN0YXJ0IHRleHQtc3RhcnQnXG4gICAgICAgICAgfX1cIlxuICAgICAgICA+XG4gICAgICAgICAge3sgbWVzc2FnZS50ZXh0IH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuICAgIDx0ZXh0YXJlYVxuICAgICAgY2xhc3M9XCJyb3VuZGVkLTQgdy0xMDAgcC0zXCJcbiAgICAgIHBsYWNlaG9sZGVyPVwiVGVsbCBtZSB3aGF0IHlvdSBuZWVkLi4uXCJcbiAgICAgIChrZXlkb3duKT1cInRleHRhcmVhS2V5ZG93bigkZXZlbnQpXCJcbiAgICA+PC90ZXh0YXJlYT5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -1,6 +1,19 @@
1
1
  /*
2
2
  * Public API Surface of ai-banking-assistant-lib
3
3
  */
4
+ import { createCustomElement } from '@angular/elements';
5
+ import { createApplication } from '@angular/platform-browser';
6
+ import { AiBankingAssistantLibComponent } from './lib/ai-banking-assistant-lib.component';
4
7
  export * from './lib/ai-banking-assistant-lib.service';
5
8
  export * from './lib/ai-banking-assistant-lib.component';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FpLWJhbmtpbmctYXNzaXN0YW50LWxpYi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYywwQ0FBMEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgYWktYmFua2luZy1hc3Npc3RhbnQtbGliXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvYWktYmFua2luZy1hc3Npc3RhbnQtbGliLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYWktYmFua2luZy1hc3Npc3RhbnQtbGliLmNvbXBvbmVudCc7XG4iXX0=
9
+ // Explicitly export the function so React can call it
10
+ export async function registerMyLibrary() {
11
+ const app = await createApplication();
12
+ const MyElement = createCustomElement(AiBankingAssistantLibComponent, {
13
+ injector: app.injector,
14
+ });
15
+ if (!customElements.get('my-lib-widget')) {
16
+ customElements.define('my-lib-widget', MyElement);
17
+ }
18
+ }
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FpLWJhbmtpbmctYXNzaXN0YW50LWxpYi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRTFGLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYywwQ0FBMEMsQ0FBQztBQUV6RCxzREFBc0Q7QUFDdEQsTUFBTSxDQUFDLEtBQUssVUFBVSxpQkFBaUI7SUFDckMsTUFBTSxHQUFHLEdBQUcsTUFBTSxpQkFBaUIsRUFBRSxDQUFDO0lBQ3RDLE1BQU0sU0FBUyxHQUFHLG1CQUFtQixDQUFDLDhCQUE4QixFQUFFO1FBQ3BFLFFBQVEsRUFBRSxHQUFHLENBQUMsUUFBUTtLQUN2QixDQUFDLENBQUM7SUFFSCxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO1FBQ3pDLGNBQWMsQ0FBQyxNQUFNLENBQUMsZUFBZSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBhaS1iYW5raW5nLWFzc2lzdGFudC1saWJcbiAqL1xuaW1wb3J0IHsgY3JlYXRlQ3VzdG9tRWxlbWVudCB9IGZyb20gJ0Bhbmd1bGFyL2VsZW1lbnRzJztcbmltcG9ydCB7IGNyZWF0ZUFwcGxpY2F0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBBaUJhbmtpbmdBc3Npc3RhbnRMaWJDb21wb25lbnQgfSBmcm9tICcuL2xpYi9haS1iYW5raW5nLWFzc2lzdGFudC1saWIuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvYWktYmFua2luZy1hc3Npc3RhbnQtbGliLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYWktYmFua2luZy1hc3Npc3RhbnQtbGliLmNvbXBvbmVudCc7XG5cbi8vIEV4cGxpY2l0bHkgZXhwb3J0IHRoZSBmdW5jdGlvbiBzbyBSZWFjdCBjYW4gY2FsbCBpdFxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlZ2lzdGVyTXlMaWJyYXJ5KCkge1xuICBjb25zdCBhcHAgPSBhd2FpdCBjcmVhdGVBcHBsaWNhdGlvbigpO1xuICBjb25zdCBNeUVsZW1lbnQgPSBjcmVhdGVDdXN0b21FbGVtZW50KEFpQmFua2luZ0Fzc2lzdGFudExpYkNvbXBvbmVudCwge1xuICAgIGluamVjdG9yOiBhcHAuaW5qZWN0b3IsXG4gIH0pO1xuXG4gIGlmICghY3VzdG9tRWxlbWVudHMuZ2V0KCdteS1saWItd2lkZ2V0JykpIHtcbiAgICBjdXN0b21FbGVtZW50cy5kZWZpbmUoJ215LWxpYi13aWRnZXQnLCBNeUVsZW1lbnQpO1xuICB9XG59XG4iXX0=
@@ -1,24 +1,15 @@
1
- import * as i0 from '@angular/core';
2
- import { Injectable, inject, Component, Input } from '@angular/core';
1
+ import { createCustomElement } from '@angular/elements';
2
+ import { createApplication } from '@angular/platform-browser';
3
3
  import { HttpClient } from '@angular/common/http';
4
-
5
- class AiBankingAssistantLibService {
6
- constructor() { }
7
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
8
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibService, providedIn: 'root' });
9
- }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibService, decorators: [{
11
- type: Injectable,
12
- args: [{
13
- providedIn: 'root'
14
- }]
15
- }], ctorParameters: () => [] });
4
+ import * as i0 from '@angular/core';
5
+ import { inject, ChangeDetectorRef, Component, Input, Injectable } from '@angular/core';
16
6
 
17
7
  class AiBankingAssistantLibComponent {
18
8
  username = '';
19
9
  transactionsUrl = '';
20
10
  transactionRequest = {};
21
11
  http = inject(HttpClient);
12
+ cd = inject(ChangeDetectorRef);
22
13
  conversation = [
23
14
  {
24
15
  from: 'bot',
@@ -61,6 +52,7 @@ class AiBankingAssistantLibComponent {
61
52
  text: `- ${tx.description}: $${tx.amount.toFixed(2)}`,
62
53
  });
63
54
  });
55
+ this.cd.detectChanges();
64
56
  });
65
57
  }
66
58
  // Clear the textarea after submission
@@ -70,11 +62,11 @@ class AiBankingAssistantLibComponent {
70
62
  }
71
63
  }
72
64
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
73
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: AiBankingAssistantLibComponent, isStandalone: true, selector: "lib-ai-banking-assistant-lib", inputs: { username: "username", transactionsUrl: "transactionsUrl", transactionRequest: "transactionRequest" }, ngImport: i0, template: "<div\n class=\"main-container text-white d-flex flex-column justify-content-between p-4\"\n>\n <h1 class=\"m-0\">Welcome {{ username }}!</h1>\n\n <div class=\"px-5 pt-5\">\n <div class=\"conversation-view p-3 mb-3\">\n @for (message of conversation; track $index) {\n <div\n class=\"p-2 {{\n message.from === 'user'\n ? 'float-end text-end user-message'\n : 'float-start text-start'\n }}\"\n >\n {{ message.text }}\n </div>\n }\n </div>\n <textarea\n class=\"rounded-4 w-100 p-3\"\n placeholder=\"Tell me what you need...\"\n (keydown)=\"textareaKeydown($event)\"\n ></textarea>\n </div>\n</div>\n", styles: [".main-container{min-height:400px;height:100%;background:linear-gradient(180deg,#6a2bd6,#2e0458)}.main-container .conversation-view{max-height:300px;overflow-y:auto}.main-container .conversation-view .user-message{width:75%}.main-container textarea{background-color:#290050;color:#fff;border:none;field-sizing:content;min-height:3lh;max-height:6lh;resize:none}.main-container textarea::placeholder{color:#d3d3d3}.main-container textarea:focus-visible{outline:none}\n"] });
65
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: AiBankingAssistantLibComponent, isStandalone: true, selector: "lib-ai-banking-assistant-lib", inputs: { username: "username", transactionsUrl: "transactionsUrl", transactionRequest: "transactionRequest" }, ngImport: i0, template: "<div\n class=\"main-container text-white d-flex flex-column justify-content-between p-4\"\n>\n <h1 class=\"m-0 text-white\">Welcome {{ username }}!</h1>\n\n <div class=\"px-5 pt-5\">\n <div class=\"conversation-view p-3 mb-3\">\n @for (message of conversation; track $index) {\n <div\n class=\"p-2 {{\n message.from === 'user'\n ? 'float-end text-end user-message'\n : 'float-start text-start'\n }}\"\n >\n {{ message.text }}\n </div>\n }\n </div>\n <textarea\n class=\"rounded-4 w-100 p-3\"\n placeholder=\"Tell me what you need...\"\n (keydown)=\"textareaKeydown($event)\"\n ></textarea>\n </div>\n</div>\n", styles: [".main-container{min-height:400px;height:100%;background:linear-gradient(180deg,#6a2bd6,#2e0458)}.main-container .conversation-view{max-height:300px;overflow-y:auto}.main-container .conversation-view .user-message{width:75%}.main-container textarea{background-color:#290050;color:#fff;border:none;field-sizing:content;min-height:3lh;max-height:6lh;resize:none}.main-container textarea::placeholder{color:#d3d3d3}.main-container textarea:focus-visible{outline:none}\n"] });
74
66
  }
75
67
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibComponent, decorators: [{
76
68
  type: Component,
77
- args: [{ selector: 'lib-ai-banking-assistant-lib', standalone: true, imports: [], template: "<div\n class=\"main-container text-white d-flex flex-column justify-content-between p-4\"\n>\n <h1 class=\"m-0\">Welcome {{ username }}!</h1>\n\n <div class=\"px-5 pt-5\">\n <div class=\"conversation-view p-3 mb-3\">\n @for (message of conversation; track $index) {\n <div\n class=\"p-2 {{\n message.from === 'user'\n ? 'float-end text-end user-message'\n : 'float-start text-start'\n }}\"\n >\n {{ message.text }}\n </div>\n }\n </div>\n <textarea\n class=\"rounded-4 w-100 p-3\"\n placeholder=\"Tell me what you need...\"\n (keydown)=\"textareaKeydown($event)\"\n ></textarea>\n </div>\n</div>\n", styles: [".main-container{min-height:400px;height:100%;background:linear-gradient(180deg,#6a2bd6,#2e0458)}.main-container .conversation-view{max-height:300px;overflow-y:auto}.main-container .conversation-view .user-message{width:75%}.main-container textarea{background-color:#290050;color:#fff;border:none;field-sizing:content;min-height:3lh;max-height:6lh;resize:none}.main-container textarea::placeholder{color:#d3d3d3}.main-container textarea:focus-visible{outline:none}\n"] }]
69
+ args: [{ selector: 'lib-ai-banking-assistant-lib', standalone: true, imports: [], template: "<div\n class=\"main-container text-white d-flex flex-column justify-content-between p-4\"\n>\n <h1 class=\"m-0 text-white\">Welcome {{ username }}!</h1>\n\n <div class=\"px-5 pt-5\">\n <div class=\"conversation-view p-3 mb-3\">\n @for (message of conversation; track $index) {\n <div\n class=\"p-2 {{\n message.from === 'user'\n ? 'float-end text-end user-message'\n : 'float-start text-start'\n }}\"\n >\n {{ message.text }}\n </div>\n }\n </div>\n <textarea\n class=\"rounded-4 w-100 p-3\"\n placeholder=\"Tell me what you need...\"\n (keydown)=\"textareaKeydown($event)\"\n ></textarea>\n </div>\n</div>\n", styles: [".main-container{min-height:400px;height:100%;background:linear-gradient(180deg,#6a2bd6,#2e0458)}.main-container .conversation-view{max-height:300px;overflow-y:auto}.main-container .conversation-view .user-message{width:75%}.main-container textarea{background-color:#290050;color:#fff;border:none;field-sizing:content;min-height:3lh;max-height:6lh;resize:none}.main-container textarea::placeholder{color:#d3d3d3}.main-container textarea:focus-visible{outline:none}\n"] }]
78
70
  }], propDecorators: { username: [{
79
71
  type: Input
80
72
  }], transactionsUrl: [{
@@ -83,13 +75,35 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
83
75
  type: Input
84
76
  }] } });
85
77
 
78
+ class AiBankingAssistantLibService {
79
+ constructor() { }
80
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
81
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibService, providedIn: 'root' });
82
+ }
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibService, decorators: [{
84
+ type: Injectable,
85
+ args: [{
86
+ providedIn: 'root'
87
+ }]
88
+ }], ctorParameters: () => [] });
89
+
86
90
  /*
87
91
  * Public API Surface of ai-banking-assistant-lib
88
92
  */
93
+ // Explicitly export the function so React can call it
94
+ async function registerMyLibrary() {
95
+ const app = await createApplication();
96
+ const MyElement = createCustomElement(AiBankingAssistantLibComponent, {
97
+ injector: app.injector,
98
+ });
99
+ if (!customElements.get('my-lib-widget')) {
100
+ customElements.define('my-lib-widget', MyElement);
101
+ }
102
+ }
89
103
 
90
104
  /**
91
105
  * Generated bundle index. Do not edit.
92
106
  */
93
107
 
94
- export { AiBankingAssistantLibComponent, AiBankingAssistantLibService };
108
+ export { AiBankingAssistantLibComponent, AiBankingAssistantLibService, registerMyLibrary };
95
109
  //# sourceMappingURL=dorydaniel-ai-banking-assistant-lib.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"dorydaniel-ai-banking-assistant-lib.mjs","sources":["../../../projects/ai-banking-assistant-lib/src/lib/ai-banking-assistant-lib.service.ts","../../../projects/ai-banking-assistant-lib/src/lib/ai-banking-assistant-lib.component.ts","../../../projects/ai-banking-assistant-lib/src/lib/ai-banking-assistant-lib.component.html","../../../projects/ai-banking-assistant-lib/src/public-api.ts","../../../projects/ai-banking-assistant-lib/src/dorydaniel-ai-banking-assistant-lib.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AiBankingAssistantLibService {\n\n constructor() { }\n}\n","import { HttpClient } from '@angular/common/http';\nimport { Component, inject, Input } from '@angular/core';\n\n@Component({\n selector: 'lib-ai-banking-assistant-lib',\n standalone: true,\n imports: [],\n templateUrl: './ai-banking-assistant-lib.component.html',\n styleUrls: ['../styles.scss'],\n})\nexport class AiBankingAssistantLibComponent {\n @Input() username: string = '';\n @Input() transactionsUrl: string = '';\n @Input() transactionRequest: any = {};\n\n private http = inject(HttpClient);\n\n conversation = [\n {\n from: 'bot',\n text: 'Hello! How can I assist you with your banking needs today?',\n },\n ];\n\n textareaKeydown(event: KeyboardEvent) {\n if (event.key === 'Enter') {\n // Check if the Shift key was also held down\n if (event.shiftKey) {\n // Shift+Enter: Allow the default behavior (new line)\n // No need to preventDefault();\n } else {\n // Enter only: Prevent the default behavior (new line)\n event.preventDefault();\n // Submit the form\n this.conversation.push({\n from: 'user',\n text: (event.target as HTMLTextAreaElement).value,\n });\n // // Clear the textarea after submission\n // (event.target as HTMLTextAreaElement).value = '';\n // (event.target as HTMLTextAreaElement).scrollTo(\n // 0,\n // (event.target as HTMLTextAreaElement).scrollHeight,\n // );\n\n if (\n (event.target as HTMLTextAreaElement).value.toLowerCase() ===\n 'transactions'\n ) {\n this.conversation.push({\n from: 'bot',\n text: 'Here are your recent transactions:',\n });\n this.http\n .post<any>(this.transactionsUrl, this.transactionRequest)\n .subscribe((data) => {\n data.Transactions.forEach((tx: any) => {\n this.conversation.push({\n from: 'bot',\n text: `- ${tx.description}: $${tx.amount.toFixed(2)}`,\n });\n });\n });\n }\n\n // Clear the textarea after submission\n (event.target as HTMLTextAreaElement).value = '';\n (event.target as HTMLTextAreaElement).scrollTo(\n 0,\n (event.target as HTMLTextAreaElement).scrollHeight,\n );\n }\n }\n }\n}\n","<div\n class=\"main-container text-white d-flex flex-column justify-content-between p-4\"\n>\n <h1 class=\"m-0\">Welcome {{ username }}!</h1>\n\n <div class=\"px-5 pt-5\">\n <div class=\"conversation-view p-3 mb-3\">\n @for (message of conversation; track $index) {\n <div\n class=\"p-2 {{\n message.from === 'user'\n ? 'float-end text-end user-message'\n : 'float-start text-start'\n }}\"\n >\n {{ message.text }}\n </div>\n }\n </div>\n <textarea\n class=\"rounded-4 w-100 p-3\"\n placeholder=\"Tell me what you need...\"\n (keydown)=\"textareaKeydown($event)\"\n ></textarea>\n </div>\n</div>\n","/*\n * Public API Surface of ai-banking-assistant-lib\n */\n\nexport * from './lib/ai-banking-assistant-lib.service';\nexport * from './lib/ai-banking-assistant-lib.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dorydaniel-ai-banking-assistant-lib.mjs","sources":["../../../projects/ai-banking-assistant-lib/src/lib/ai-banking-assistant-lib.component.ts","../../../projects/ai-banking-assistant-lib/src/lib/ai-banking-assistant-lib.component.html","../../../projects/ai-banking-assistant-lib/src/lib/ai-banking-assistant-lib.service.ts","../../../projects/ai-banking-assistant-lib/src/public-api.ts","../../../projects/ai-banking-assistant-lib/src/dorydaniel-ai-banking-assistant-lib.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { Component, inject, Input, ChangeDetectorRef } from '@angular/core';\n\n@Component({\n selector: 'lib-ai-banking-assistant-lib',\n standalone: true,\n imports: [],\n templateUrl: './ai-banking-assistant-lib.component.html',\n styleUrls: ['../styles.scss'],\n})\nexport class AiBankingAssistantLibComponent {\n @Input() username: string = '';\n @Input() transactionsUrl: string = '';\n @Input() transactionRequest: any = {};\n\n private http = inject(HttpClient);\n private cd = inject(ChangeDetectorRef);\n\n conversation = [\n {\n from: 'bot',\n text: 'Hello! How can I assist you with your banking needs today?',\n },\n ];\n\n textareaKeydown(event: KeyboardEvent) {\n if (event.key === 'Enter') {\n // Check if the Shift key was also held down\n if (event.shiftKey) {\n // Shift+Enter: Allow the default behavior (new line)\n // No need to preventDefault();\n } else {\n // Enter only: Prevent the default behavior (new line)\n event.preventDefault();\n // Submit the form\n this.conversation.push({\n from: 'user',\n text: (event.target as HTMLTextAreaElement).value,\n });\n // // Clear the textarea after submission\n // (event.target as HTMLTextAreaElement).value = '';\n // (event.target as HTMLTextAreaElement).scrollTo(\n // 0,\n // (event.target as HTMLTextAreaElement).scrollHeight,\n // );\n\n if (\n (event.target as HTMLTextAreaElement).value.toLowerCase() ===\n 'transactions'\n ) {\n this.conversation.push({\n from: 'bot',\n text: 'Here are your recent transactions:',\n });\n this.http\n .post<any>(this.transactionsUrl, this.transactionRequest)\n .subscribe((data) => {\n data.Transactions.forEach((tx: any) => {\n this.conversation.push({\n from: 'bot',\n text: `- ${tx.description}: $${tx.amount.toFixed(2)}`,\n });\n });\n this.cd.detectChanges();\n });\n }\n\n // Clear the textarea after submission\n (event.target as HTMLTextAreaElement).value = '';\n (event.target as HTMLTextAreaElement).scrollTo(\n 0,\n (event.target as HTMLTextAreaElement).scrollHeight,\n );\n }\n }\n }\n}\n","<div\n class=\"main-container text-white d-flex flex-column justify-content-between p-4\"\n>\n <h1 class=\"m-0 text-white\">Welcome {{ username }}!</h1>\n\n <div class=\"px-5 pt-5\">\n <div class=\"conversation-view p-3 mb-3\">\n @for (message of conversation; track $index) {\n <div\n class=\"p-2 {{\n message.from === 'user'\n ? 'float-end text-end user-message'\n : 'float-start text-start'\n }}\"\n >\n {{ message.text }}\n </div>\n }\n </div>\n <textarea\n class=\"rounded-4 w-100 p-3\"\n placeholder=\"Tell me what you need...\"\n (keydown)=\"textareaKeydown($event)\"\n ></textarea>\n </div>\n</div>\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AiBankingAssistantLibService {\n\n constructor() { }\n}\n","/*\n * Public API Surface of ai-banking-assistant-lib\n */\nimport { createCustomElement } from '@angular/elements';\nimport { createApplication } from '@angular/platform-browser';\nimport { AiBankingAssistantLibComponent } from './lib/ai-banking-assistant-lib.component';\n\nexport * from './lib/ai-banking-assistant-lib.service';\nexport * from './lib/ai-banking-assistant-lib.component';\n\n// Explicitly export the function so React can call it\nexport async function registerMyLibrary() {\n const app = await createApplication();\n const MyElement = createCustomElement(AiBankingAssistantLibComponent, {\n injector: app.injector,\n });\n\n if (!customElements.get('my-lib-widget')) {\n customElements.define('my-lib-widget', MyElement);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export declare class AiBankingAssistantLibComponent {
4
4
  transactionsUrl: string;
5
5
  transactionRequest: any;
6
6
  private http;
7
+ private cd;
7
8
  conversation: {
8
9
  from: string;
9
10
  text: string;
package/package.json CHANGED
@@ -1,9 +1,10 @@
1
1
  {
2
2
  "name": "@dorydaniel/ai-banking-assistant-lib",
3
- "version": "0.0.5",
3
+ "version": "0.0.7",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^18.2.0",
6
- "@angular/core": "^18.2.0"
6
+ "@angular/core": "^18.2.0",
7
+ "@angular/elements": "^18.2.14"
7
8
  },
8
9
  "dependencies": {
9
10
  "tslib": "^2.3.0"
package/public-api.d.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from './lib/ai-banking-assistant-lib.service';
2
2
  export * from './lib/ai-banking-assistant-lib.component';
3
+ export declare function registerMyLibrary(): Promise<void>;