import {Component, CUSTOM_ELEMENTS_SCHEMA, inject} from '@angular/core'; import {AsyncPipe} from "@angular/common"; import {FormsModule} from "@angular/forms"; import {MatButton, MatMiniFabButton} from "@angular/material/button"; import { MatCard, MatCardActions, MatCardContent, MatCardHeader } from "@angular/material/card"; import {MatFormField, MatInput, MatLabel} from "@angular/material/input"; import {Image} from '../../../models/image'; import {ZhipuaiImageService} from '../zhipuai-image.service'; import {SpinnerService} from '../../../services/spinner.service'; import {MatProgressSpinner} from '@angular/material/progress-spinner'; import {MatToolbar, MatToolbarRow} from '@angular/material/toolbar'; import {MatIcon} from '@angular/material/icon'; import {MatTooltip} from '@angular/material/tooltip'; import {TokenStorageService} from '../../../services/token-storage.service'; import {UserApiService} from '../../user-module/user-api.service'; @Component({ selector: 'app-generate-image.component', imports: [ AsyncPipe, FormsModule, MatButton, MatCard, MatCardActions, MatCardContent, MatCardHeader, MatFormField, MatInput, MatLabel, MatProgressSpinner, MatToolbarRow, MatToolbar, MatIcon, MatMiniFabButton, MatTooltip, ], templateUrl: './generate-image.component.html', styleUrl: './generate-image.component.scss', schemas: [CUSTOM_ELEMENTS_SCHEMA] }) export class GenerateImageComponent { query : string = ''; images: Image[] = []; image: Image = { url: '' }; isLoggedIn = false; private storageService: TokenStorageService = inject(TokenStorageService); constructor( private zhipuaiImageService: ZhipuaiImageService, public spinnerService: SpinnerService, private userApiService:UserApiService ) { this.isLoggedIn = this.storageService.isLoggedIn(); } generateImage(){ this.zhipuaiImageService.generate(this.query).subscribe( data => { this.image = data; this.images.unshift(this.image); // this.output.file = data.; console.log(data); }, error => { console.log(error); } ) } save(url: string | undefined) { let requestUrl:string = url?url:""; console.log(requestUrl); this.userApiService.saveZhipuaiImage(requestUrl).subscribe(data =>{ console.log(data); },error =>{ console.log(error); }); } }