@dorydaniel/ai-banking-assistant-lib 0.0.2 → 0.0.3
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/ng-package.json +7 -0
- package/package.json +3 -16
- package/src/lib/ai-banking-assistant-lib.component.html +26 -0
- package/src/lib/ai-banking-assistant-lib.component.spec.ts +23 -0
- package/src/lib/ai-banking-assistant-lib.component.ts +77 -0
- package/src/lib/ai-banking-assistant-lib.service.spec.ts +16 -0
- package/src/lib/ai-banking-assistant-lib.service.ts +9 -0
- package/{public-api.d.ts → src/public-api.ts} +4 -0
- package/src/styles.scss +35 -0
- package/tsconfig.lib.json +15 -0
- package/tsconfig.lib.prod.json +11 -0
- package/tsconfig.spec.json +15 -0
- package/esm2022/dorydaniel-ai-banking-assistant-lib.mjs +0 -5
- package/esm2022/lib/ai-banking-assistant-lib.component.mjs +0 -24
- package/esm2022/lib/ai-banking-assistant-lib.service.mjs +0 -14
- package/esm2022/public-api.mjs +0 -6
- package/fesm2022/dorydaniel-ai-banking-assistant-lib.mjs +0 -47
- package/fesm2022/dorydaniel-ai-banking-assistant-lib.mjs.map +0 -1
- package/index.d.ts +0 -5
- package/lib/ai-banking-assistant-lib.component.d.ts +0 -10
- package/lib/ai-banking-assistant-lib.service.d.ts +0 -6
package/ng-package.json
ADDED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dorydaniel/ai-banking-assistant-lib",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@angular/common": "^18.2.0",
|
|
6
6
|
"@angular/core": "^18.2.0"
|
|
@@ -8,18 +8,5 @@
|
|
|
8
8
|
"dependencies": {
|
|
9
9
|
"tslib": "^2.3.0"
|
|
10
10
|
},
|
|
11
|
-
"sideEffects": false
|
|
12
|
-
|
|
13
|
-
"typings": "index.d.ts",
|
|
14
|
-
"exports": {
|
|
15
|
-
"./package.json": {
|
|
16
|
-
"default": "./package.json"
|
|
17
|
-
},
|
|
18
|
-
".": {
|
|
19
|
-
"types": "./index.d.ts",
|
|
20
|
-
"esm2022": "./esm2022/dorydaniel-ai-banking-assistant-lib.mjs",
|
|
21
|
-
"esm": "./esm2022/dorydaniel-ai-banking-assistant-lib.mjs",
|
|
22
|
-
"default": "./fesm2022/dorydaniel-ai-banking-assistant-lib.mjs"
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
}
|
|
11
|
+
"sideEffects": false
|
|
12
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
<div
|
|
2
|
+
class="main-container text-white d-flex flex-column justify-content-between p-4"
|
|
3
|
+
>
|
|
4
|
+
<h1 class="m-0">Welcome {{ username }}!</h1>
|
|
5
|
+
|
|
6
|
+
<div class="px-5 pt-5">
|
|
7
|
+
<div class="conversation-view p-3 mb-3">
|
|
8
|
+
@for (message of conversation; track $index) {
|
|
9
|
+
<div
|
|
10
|
+
class="p-2 {{
|
|
11
|
+
message.from === 'user'
|
|
12
|
+
? 'float-end text-end user-message'
|
|
13
|
+
: 'float-start text-start'
|
|
14
|
+
}}"
|
|
15
|
+
>
|
|
16
|
+
{{ message.text }}
|
|
17
|
+
</div>
|
|
18
|
+
}
|
|
19
|
+
</div>
|
|
20
|
+
<textarea
|
|
21
|
+
class="rounded-4 w-100 p-3"
|
|
22
|
+
placeholder="Tell me what you need..."
|
|
23
|
+
(keydown)="textareaKeydown($event)"
|
|
24
|
+
></textarea>
|
|
25
|
+
</div>
|
|
26
|
+
</div>
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
|
2
|
+
|
|
3
|
+
import { AiBankingAssistantLibComponent } from './ai-banking-assistant-lib.component';
|
|
4
|
+
|
|
5
|
+
describe('AiBankingAssistantLibComponent', () => {
|
|
6
|
+
let component: AiBankingAssistantLibComponent;
|
|
7
|
+
let fixture: ComponentFixture<AiBankingAssistantLibComponent>;
|
|
8
|
+
|
|
9
|
+
beforeEach(async () => {
|
|
10
|
+
await TestBed.configureTestingModule({
|
|
11
|
+
imports: [AiBankingAssistantLibComponent]
|
|
12
|
+
})
|
|
13
|
+
.compileComponents();
|
|
14
|
+
|
|
15
|
+
fixture = TestBed.createComponent(AiBankingAssistantLibComponent);
|
|
16
|
+
component = fixture.componentInstance;
|
|
17
|
+
fixture.detectChanges();
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
it('should create', () => {
|
|
21
|
+
expect(component).toBeTruthy();
|
|
22
|
+
});
|
|
23
|
+
});
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { HttpClient } from '@angular/common/http';
|
|
2
|
+
import { Component, inject, Input } from '@angular/core';
|
|
3
|
+
|
|
4
|
+
@Component({
|
|
5
|
+
selector: 'lib-ai-banking-assistant-lib',
|
|
6
|
+
standalone: true,
|
|
7
|
+
imports: [],
|
|
8
|
+
templateUrl: './ai-banking-assistant-lib.component.html',
|
|
9
|
+
styleUrls: ['../styles.scss'],
|
|
10
|
+
})
|
|
11
|
+
export class AiBankingAssistantLibComponent {
|
|
12
|
+
@Input() username: string = '';
|
|
13
|
+
@Input() transactionsUrl: string = '';
|
|
14
|
+
@Input() transactionRequest: any = {};
|
|
15
|
+
|
|
16
|
+
private http = inject(HttpClient);
|
|
17
|
+
|
|
18
|
+
conversation = [
|
|
19
|
+
{
|
|
20
|
+
from: 'bot',
|
|
21
|
+
text: 'Hello! How can I assist you with your banking needs today?',
|
|
22
|
+
},
|
|
23
|
+
];
|
|
24
|
+
|
|
25
|
+
textareaKeydown(event: KeyboardEvent) {
|
|
26
|
+
if (event.key === 'Enter') {
|
|
27
|
+
// Check if the Shift key was also held down
|
|
28
|
+
if (event.shiftKey) {
|
|
29
|
+
// Shift+Enter: Allow the default behavior (new line)
|
|
30
|
+
// No need to preventDefault();
|
|
31
|
+
} else {
|
|
32
|
+
// Enter only: Prevent the default behavior (new line)
|
|
33
|
+
event.preventDefault();
|
|
34
|
+
// Submit the form
|
|
35
|
+
this.conversation.push({
|
|
36
|
+
from: 'user',
|
|
37
|
+
text: (event.target as HTMLTextAreaElement).value,
|
|
38
|
+
});
|
|
39
|
+
// // Clear the textarea after submission
|
|
40
|
+
// (event.target as HTMLTextAreaElement).value = '';
|
|
41
|
+
// (event.target as HTMLTextAreaElement).scrollTo(
|
|
42
|
+
// 0,
|
|
43
|
+
// (event.target as HTMLTextAreaElement).scrollHeight,
|
|
44
|
+
// );
|
|
45
|
+
|
|
46
|
+
if (
|
|
47
|
+
(event.target as HTMLTextAreaElement).value.toLowerCase() ===
|
|
48
|
+
'transactions'
|
|
49
|
+
) {
|
|
50
|
+
this.conversation.push({
|
|
51
|
+
from: 'bot',
|
|
52
|
+
text: 'Here are your recent transactions:',
|
|
53
|
+
});
|
|
54
|
+
this.http
|
|
55
|
+
.post<
|
|
56
|
+
{ amount: number; description: string }[]
|
|
57
|
+
>(this.transactionsUrl, this.transactionRequest)
|
|
58
|
+
.subscribe((data) => {
|
|
59
|
+
data.forEach((tx) => {
|
|
60
|
+
this.conversation.push({
|
|
61
|
+
from: 'bot',
|
|
62
|
+
text: `- ${tx.description}: $${tx.amount.toFixed(2)}`,
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// Clear the textarea after submission
|
|
69
|
+
(event.target as HTMLTextAreaElement).value = '';
|
|
70
|
+
(event.target as HTMLTextAreaElement).scrollTo(
|
|
71
|
+
0,
|
|
72
|
+
(event.target as HTMLTextAreaElement).scrollHeight,
|
|
73
|
+
);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { TestBed } from '@angular/core/testing';
|
|
2
|
+
|
|
3
|
+
import { AiBankingAssistantLibService } from './ai-banking-assistant-lib.service';
|
|
4
|
+
|
|
5
|
+
describe('AiBankingAssistantLibService', () => {
|
|
6
|
+
let service: AiBankingAssistantLibService;
|
|
7
|
+
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
TestBed.configureTestingModule({});
|
|
10
|
+
service = TestBed.inject(AiBankingAssistantLibService);
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
it('should be created', () => {
|
|
14
|
+
expect(service).toBeTruthy();
|
|
15
|
+
});
|
|
16
|
+
});
|
package/src/styles.scss
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/* You can add global styles to this file, and also import other style files */
|
|
2
|
+
// @import "bootstrap/scss/bootstrap";
|
|
3
|
+
.main-container {
|
|
4
|
+
min-height: 400px;
|
|
5
|
+
height: 100%;
|
|
6
|
+
background: linear-gradient(180deg, #6a2bd6 0%, #2e0458 100%);
|
|
7
|
+
|
|
8
|
+
.conversation-view {
|
|
9
|
+
max-height: 300px;
|
|
10
|
+
overflow-y: auto;
|
|
11
|
+
.user-message {
|
|
12
|
+
width: calc(100% - 25%);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
textarea {
|
|
17
|
+
// resize: none;
|
|
18
|
+
background-color: #290050;
|
|
19
|
+
color: white;
|
|
20
|
+
border: none;
|
|
21
|
+
|
|
22
|
+
field-sizing: content;
|
|
23
|
+
min-height: 3lh; /* Set a minimum height (e.g., 2 lines high) */
|
|
24
|
+
max-height: 6lh; /* Optional: Set a maximum height before a scrollbar appears */
|
|
25
|
+
resize: none; /* Prevents the user from manually resizing with the handle */
|
|
26
|
+
// overflow: hidden; /* Hides the scrollbar initially */
|
|
27
|
+
|
|
28
|
+
&::placeholder {
|
|
29
|
+
color: #d3d3d3;
|
|
30
|
+
}
|
|
31
|
+
&:focus-visible {
|
|
32
|
+
outline: none;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */
|
|
2
|
+
/* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */
|
|
3
|
+
{
|
|
4
|
+
"extends": "../../tsconfig.json",
|
|
5
|
+
"compilerOptions": {
|
|
6
|
+
"outDir": "../../out-tsc/lib",
|
|
7
|
+
"declaration": true,
|
|
8
|
+
"declarationMap": true,
|
|
9
|
+
"inlineSources": true,
|
|
10
|
+
"types": []
|
|
11
|
+
},
|
|
12
|
+
"exclude": [
|
|
13
|
+
"**/*.spec.ts"
|
|
14
|
+
]
|
|
15
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */
|
|
2
|
+
/* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */
|
|
3
|
+
{
|
|
4
|
+
"extends": "./tsconfig.lib.json",
|
|
5
|
+
"compilerOptions": {
|
|
6
|
+
"declarationMap": false
|
|
7
|
+
},
|
|
8
|
+
"angularCompilerOptions": {
|
|
9
|
+
"compilationMode": "partial"
|
|
10
|
+
}
|
|
11
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */
|
|
2
|
+
/* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */
|
|
3
|
+
{
|
|
4
|
+
"extends": "../../tsconfig.json",
|
|
5
|
+
"compilerOptions": {
|
|
6
|
+
"outDir": "../../out-tsc/spec",
|
|
7
|
+
"types": [
|
|
8
|
+
"jasmine"
|
|
9
|
+
]
|
|
10
|
+
},
|
|
11
|
+
"include": [
|
|
12
|
+
"**/*.spec.ts",
|
|
13
|
+
"**/*.d.ts"
|
|
14
|
+
]
|
|
15
|
+
}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9yeWRhbmllbC1haS1iYW5raW5nLWFzc2lzdGFudC1saWIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9haS1iYW5raW5nLWFzc2lzdGFudC1saWIvc3JjL2RvcnlkYW5pZWwtYWktYmFua2luZy1hc3Npc3RhbnQtbGliLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class AiBankingAssistantLibComponent {
|
|
4
|
-
username = '';
|
|
5
|
-
conversation = [
|
|
6
|
-
{
|
|
7
|
-
from: 'bot',
|
|
8
|
-
text: 'Hello! How can I assist you with your banking needs today?',
|
|
9
|
-
},
|
|
10
|
-
{
|
|
11
|
-
from: 'user',
|
|
12
|
-
text: 'Hello! Please help?',
|
|
13
|
-
},
|
|
14
|
-
];
|
|
15
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
16
|
-
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" }, 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>\n <div class=\"conversation-view d-flex flex-column justify-content-end\">\n @for (message of conversation; track $index) {\n <div\n class=\"p-3 mb-3 {{\n message.from === 'user' ? 'align-self-end' : 'align-self-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 ></textarea>\n </div>\n</div>\n", styles: [".main-container{min-height:400px;height:100%;background:linear-gradient(180deg,#6a2bd6,#2e0458)}.main-container textarea{background-color:#290050;color:#fff;border:none}.main-container textarea::placeholder{color:#d3d3d3}.main-container textarea:focus-visible{outline:none}\n"] });
|
|
17
|
-
}
|
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibComponent, decorators: [{
|
|
19
|
-
type: Component,
|
|
20
|
-
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>\n <div class=\"conversation-view d-flex flex-column justify-content-end\">\n @for (message of conversation; track $index) {\n <div\n class=\"p-3 mb-3 {{\n message.from === 'user' ? 'align-self-end' : 'align-self-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 ></textarea>\n </div>\n</div>\n", styles: [".main-container{min-height:400px;height:100%;background:linear-gradient(180deg,#6a2bd6,#2e0458)}.main-container textarea{background-color:#290050;color:#fff;border:none}.main-container textarea::placeholder{color:#d3d3d3}.main-container textarea:focus-visible{outline:none}\n"] }]
|
|
21
|
-
}], propDecorators: { username: [{
|
|
22
|
-
type: Input
|
|
23
|
-
}] } });
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWktYmFua2luZy1hc3Npc3RhbnQtbGliLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FpLWJhbmtpbmctYXNzaXN0YW50LWxpYi9zcmMvbGliL2FpLWJhbmtpbmctYXNzaXN0YW50LWxpYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9haS1iYW5raW5nLWFzc2lzdGFudC1saWIvc3JjL2xpYi9haS1iYW5raW5nLWFzc2lzdGFudC1saWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBU2pELE1BQU0sT0FBTyw4QkFBOEI7SUFDaEMsUUFBUSxHQUFXLEVBQUUsQ0FBQztJQUMvQixZQUFZLEdBQUc7UUFDYjtZQUNFLElBQUksRUFBRSxLQUFLO1lBQ1gsSUFBSSxFQUFFLDREQUE0RDtTQUNuRTtRQUNEO1lBQ0UsSUFBSSxFQUFFLE1BQU07WUFDWixJQUFJLEVBQUUscUJBQXFCO1NBQzVCO0tBQ0YsQ0FBQzt3R0FYUyw4QkFBOEI7NEZBQTlCLDhCQUE4QiwwSENUM0Msa29CQXVCQTs7NEZEZGEsOEJBQThCO2tCQVAxQyxTQUFTOytCQUNFLDhCQUE4QixjQUM1QixJQUFJLFdBQ1AsRUFBRTs4QkFLRixRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItYWktYmFua2luZy1hc3Npc3RhbnQtbGliJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW10sXG4gIHRlbXBsYXRlVXJsOiAnLi9haS1iYW5raW5nLWFzc2lzdGFudC1saWIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi4vc3R5bGVzLnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQWlCYW5raW5nQXNzaXN0YW50TGliQ29tcG9uZW50IHtcbiAgQElucHV0KCkgdXNlcm5hbWU6IHN0cmluZyA9ICcnO1xuICBjb252ZXJzYXRpb24gPSBbXG4gICAge1xuICAgICAgZnJvbTogJ2JvdCcsXG4gICAgICB0ZXh0OiAnSGVsbG8hIEhvdyBjYW4gSSBhc3Npc3QgeW91IHdpdGggeW91ciBiYW5raW5nIG5lZWRzIHRvZGF5PycsXG4gICAgfSxcbiAgICB7XG4gICAgICBmcm9tOiAndXNlcicsXG4gICAgICB0ZXh0OiAnSGVsbG8hIFBsZWFzZSBoZWxwPycsXG4gICAgfSxcbiAgXTtcbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJtYWluLWNvbnRhaW5lciB0ZXh0LXdoaXRlIGQtZmxleCBmbGV4LWNvbHVtbiBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBwLTRcIlxuPlxuICA8aDEgY2xhc3M9XCJtLTBcIj5XZWxjb21lIHt7IHVzZXJuYW1lIH19ITwvaDE+XG5cbiAgPGRpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29udmVyc2F0aW9uLXZpZXcgZC1mbGV4IGZsZXgtY29sdW1uIGp1c3RpZnktY29udGVudC1lbmRcIj5cbiAgICAgIEBmb3IgKG1lc3NhZ2Ugb2YgY29udmVyc2F0aW9uOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwicC0zIG1iLTMge3tcbiAgICAgICAgICAgIG1lc3NhZ2UuZnJvbSA9PT0gJ3VzZXInID8gJ2FsaWduLXNlbGYtZW5kJyA6ICdhbGlnbi1zZWxmLXN0YXJ0J1xuICAgICAgICAgIH19XCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IG1lc3NhZ2UudGV4dCB9fVxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgICA8dGV4dGFyZWFcbiAgICAgIGNsYXNzPVwicm91bmRlZC00IHctMTAwIHAtM1wiXG4gICAgICBwbGFjZWhvbGRlcj1cIlRlbGwgbWUgd2hhdCB5b3UgbmVlZC4uLlwiXG4gICAgPjwvdGV4dGFyZWE+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class AiBankingAssistantLibService {
|
|
4
|
-
constructor() { }
|
|
5
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
6
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibService, providedIn: 'root' });
|
|
7
|
-
}
|
|
8
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibService, decorators: [{
|
|
9
|
-
type: Injectable,
|
|
10
|
-
args: [{
|
|
11
|
-
providedIn: 'root'
|
|
12
|
-
}]
|
|
13
|
-
}], ctorParameters: () => [] });
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWktYmFua2luZy1hc3Npc3RhbnQtbGliLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9haS1iYW5raW5nLWFzc2lzdGFudC1saWIvc3JjL2xpYi9haS1iYW5raW5nLWFzc2lzdGFudC1saWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sNEJBQTRCO0lBRXZDLGdCQUFnQixDQUFDO3dHQUZOLDRCQUE0Qjs0R0FBNUIsNEJBQTRCLGNBRjNCLE1BQU07OzRGQUVQLDRCQUE0QjtrQkFIeEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEFpQmFua2luZ0Fzc2lzdGFudExpYlNlcnZpY2Uge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG59XG4iXX0=
|
package/esm2022/public-api.mjs
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Public API Surface of ai-banking-assistant-lib
|
|
3
|
-
*/
|
|
4
|
-
export * from './lib/ai-banking-assistant-lib.service';
|
|
5
|
-
export * from './lib/ai-banking-assistant-lib.component';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FpLWJhbmtpbmctYXNzaXN0YW50LWxpYi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYywwQ0FBMEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgYWktYmFua2luZy1hc3Npc3RhbnQtbGliXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvYWktYmFua2luZy1hc3Npc3RhbnQtbGliLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYWktYmFua2luZy1hc3Npc3RhbnQtbGliLmNvbXBvbmVudCc7XG4iXX0=
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, Component, Input } from '@angular/core';
|
|
3
|
-
|
|
4
|
-
class AiBankingAssistantLibService {
|
|
5
|
-
constructor() { }
|
|
6
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
7
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibService, providedIn: 'root' });
|
|
8
|
-
}
|
|
9
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibService, decorators: [{
|
|
10
|
-
type: Injectable,
|
|
11
|
-
args: [{
|
|
12
|
-
providedIn: 'root'
|
|
13
|
-
}]
|
|
14
|
-
}], ctorParameters: () => [] });
|
|
15
|
-
|
|
16
|
-
class AiBankingAssistantLibComponent {
|
|
17
|
-
username = '';
|
|
18
|
-
conversation = [
|
|
19
|
-
{
|
|
20
|
-
from: 'bot',
|
|
21
|
-
text: 'Hello! How can I assist you with your banking needs today?',
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
from: 'user',
|
|
25
|
-
text: 'Hello! Please help?',
|
|
26
|
-
},
|
|
27
|
-
];
|
|
28
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
29
|
-
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" }, 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>\n <div class=\"conversation-view d-flex flex-column justify-content-end\">\n @for (message of conversation; track $index) {\n <div\n class=\"p-3 mb-3 {{\n message.from === 'user' ? 'align-self-end' : 'align-self-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 ></textarea>\n </div>\n</div>\n", styles: [".main-container{min-height:400px;height:100%;background:linear-gradient(180deg,#6a2bd6,#2e0458)}.main-container textarea{background-color:#290050;color:#fff;border:none}.main-container textarea::placeholder{color:#d3d3d3}.main-container textarea:focus-visible{outline:none}\n"] });
|
|
30
|
-
}
|
|
31
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AiBankingAssistantLibComponent, decorators: [{
|
|
32
|
-
type: Component,
|
|
33
|
-
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>\n <div class=\"conversation-view d-flex flex-column justify-content-end\">\n @for (message of conversation; track $index) {\n <div\n class=\"p-3 mb-3 {{\n message.from === 'user' ? 'align-self-end' : 'align-self-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 ></textarea>\n </div>\n</div>\n", styles: [".main-container{min-height:400px;height:100%;background:linear-gradient(180deg,#6a2bd6,#2e0458)}.main-container textarea{background-color:#290050;color:#fff;border:none}.main-container textarea::placeholder{color:#d3d3d3}.main-container textarea:focus-visible{outline:none}\n"] }]
|
|
34
|
-
}], propDecorators: { username: [{
|
|
35
|
-
type: Input
|
|
36
|
-
}] } });
|
|
37
|
-
|
|
38
|
-
/*
|
|
39
|
-
* Public API Surface of ai-banking-assistant-lib
|
|
40
|
-
*/
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
* Generated bundle index. Do not edit.
|
|
44
|
-
*/
|
|
45
|
-
|
|
46
|
-
export { AiBankingAssistantLibComponent, AiBankingAssistantLibService };
|
|
47
|
-
//# sourceMappingURL=dorydaniel-ai-banking-assistant-lib.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
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 { Component, 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 conversation = [\n {\n from: 'bot',\n text: 'Hello! How can I assist you with your banking needs today?',\n },\n {\n from: 'user',\n text: 'Hello! Please help?',\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>\n <div class=\"conversation-view d-flex flex-column justify-content-end\">\n @for (message of conversation; track $index) {\n <div\n class=\"p-3 mb-3 {{\n message.from === 'user' ? 'align-self-end' : 'align-self-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 ></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":";;;MAKa,4BAA4B,CAAA;AAEvC,IAAA,WAAA,GAAA,GAAiB;wGAFN,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAA5B,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,4BAA4B,cAF3B,MAAM,EAAA,CAAA,CAAA;;4FAEP,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAHxC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCKY,8BAA8B,CAAA;IAChC,QAAQ,GAAW,EAAE,CAAC;AAC/B,IAAA,YAAY,GAAG;AACb,QAAA;AACE,YAAA,IAAI,EAAE,KAAK;AACX,YAAA,IAAI,EAAE,4DAA4D;AACnE,SAAA;AACD,QAAA;AACE,YAAA,IAAI,EAAE,MAAM;AACZ,YAAA,IAAI,EAAE,qBAAqB;AAC5B,SAAA;KACF,CAAC;wGAXS,8BAA8B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA9B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,8BAA8B,0HCT3C,koBAuBA,EAAA,MAAA,EAAA,CAAA,qRAAA,CAAA,EAAA,CAAA,CAAA;;4FDda,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAP1C,SAAS;+BACE,8BAA8B,EAAA,UAAA,EAC5B,IAAI,EAAA,OAAA,EACP,EAAE,EAAA,QAAA,EAAA,koBAAA,EAAA,MAAA,EAAA,CAAA,qRAAA,CAAA,EAAA,CAAA;8BAKF,QAAQ,EAAA,CAAA;sBAAhB,KAAK;;;AEVR;;AAEG;;ACFH;;AAEG;;;;"}
|
package/index.d.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
export declare class AiBankingAssistantLibComponent {
|
|
3
|
-
username: string;
|
|
4
|
-
conversation: {
|
|
5
|
-
from: string;
|
|
6
|
-
text: string;
|
|
7
|
-
}[];
|
|
8
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AiBankingAssistantLibComponent, never>;
|
|
9
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AiBankingAssistantLibComponent, "lib-ai-banking-assistant-lib", never, { "username": { "alias": "username"; "required": false; }; }, {}, never, never, true, never>;
|
|
10
|
-
}
|