diff --git a/src/app/notebook/assistant/assistant.component.css b/src/app/notebook/assistant/assistant.component.css new file mode 100644 index 0000000..d301c01 --- /dev/null +++ b/src/app/notebook/assistant/assistant.component.css @@ -0,0 +1,23 @@ +.chatbot-toggle { + position: fixed; + bottom: 1em; + right: 1.5em; + width: 4em; + height: 4em; + background-color: #f1f1f1; + border-radius: 20em; + box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); + overflow: hidden; + z-index: 3; + cursor: pointer; +} + +.chatbot { + border: 0; + position: fixed; + bottom: 4em; + right: 2em; + width: 30em; + height: 42em; + z-index: 2; +} diff --git a/src/app/notebook/assistant/assistant.component.html b/src/app/notebook/assistant/assistant.component.html new file mode 100644 index 0000000..c1b3e75 --- /dev/null +++ b/src/app/notebook/assistant/assistant.component.html @@ -0,0 +1,2 @@ +avatar.png + diff --git a/src/app/notebook/assistant/assistant.component.spec.ts b/src/app/notebook/assistant/assistant.component.spec.ts new file mode 100644 index 0000000..e052c39 --- /dev/null +++ b/src/app/notebook/assistant/assistant.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { AssistantComponent } from './assistant.component'; + +describe('AssistantComponent', () => { + let component: AssistantComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ AssistantComponent ] + }) + .compileComponents(); + + fixture = TestBed.createComponent(AssistantComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/notebook/assistant/assistant.component.ts b/src/app/notebook/assistant/assistant.component.ts new file mode 100644 index 0000000..e0254fb --- /dev/null +++ b/src/app/notebook/assistant/assistant.component.ts @@ -0,0 +1,13 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'app-assistant', + templateUrl: './assistant.component.html', + styleUrls: ['./assistant.component.css'] +}) +export class AssistantComponent { + showChatbot = false; + toggleChatbot() { + this.showChatbot = !this.showChatbot; + } +} diff --git a/src/app/notebook/notebook.component.html b/src/app/notebook/notebook.component.html index ea8f3f9..e10a280 100644 --- a/src/app/notebook/notebook.component.html +++ b/src/app/notebook/notebook.component.html @@ -43,3 +43,5 @@

Loading...

+ + diff --git a/src/app/notebook/notebook.module.ts b/src/app/notebook/notebook.module.ts index 4e5fd04..62c78f1 100644 --- a/src/app/notebook/notebook.module.ts +++ b/src/app/notebook/notebook.module.ts @@ -1,5 +1,5 @@ import {NgModule} from '@angular/core'; -import {CommonModule} from '@angular/common'; +import {CommonModule, NgOptimizedImage} from '@angular/common'; import {NotebookRoutingModule} from './notebook-routing.module'; import {NotebookComponent} from './notebook.component'; @@ -26,6 +26,7 @@ import { ShareDialogComponent } from './share-dialog.component'; import {MatDialogModule} from "@angular/material/dialog"; import { ClipboardModule } from '@angular/cdk/clipboard'; import {HistoryComponent} from "./history.component"; +import { AssistantComponent } from './assistant/assistant.component'; @NgModule({ declarations: [ @@ -35,30 +36,32 @@ import {HistoryComponent} from "./history.component"; TreeComponent, ShareDialogComponent, HistoryComponent, - CodeComponent + CodeComponent, + AssistantComponent ], - imports: [ - CommonModule, - NotebookRoutingModule, - JsonFormsModule, - JsonFormsAngularMaterialModule, - MatAutocompleteModule, - MatButtonModule, - MatToolbarModule, - MatMenuModule, - MatButtonModule, - MatSnackBarModule, - FormsModule, - MatDialogModule, - MatTableModule, - MatSortModule, - MatPaginatorModule, - MatTreeModule, - ClipboardModule, - MatCardModule, - MatRippleModule, - MatRadioModule - ] + imports: [ + CommonModule, + NotebookRoutingModule, + JsonFormsModule, + JsonFormsAngularMaterialModule, + MatAutocompleteModule, + MatButtonModule, + MatToolbarModule, + MatMenuModule, + MatButtonModule, + MatSnackBarModule, + FormsModule, + MatDialogModule, + MatTableModule, + MatSortModule, + MatPaginatorModule, + MatTreeModule, + ClipboardModule, + MatCardModule, + MatRippleModule, + MatRadioModule, + NgOptimizedImage + ] }) export class NotebookModule { } diff --git a/src/assets/avatar.png b/src/assets/avatar.png new file mode 100644 index 0000000..e349dff Binary files /dev/null and b/src/assets/avatar.png differ