import { CommonModule } from '@angular/common'; import { Component, OnInit } from '@angular/core'; import { ButtonModule } from 'primeng/button'; import { CarouselModule } from 'primeng/carousel'; import { GalleriaModule } from 'primeng/galleria'; import { ImageModule } from 'primeng/image'; import { TagModule } from 'primeng/tag'; import { Product, ProductService } from '../../service/demo/product.service'; import { PhotoService } from '../../service/demo/photo.service'; @Component({ standalone: true, imports: [CommonModule, CarouselModule, ButtonModule, GalleriaModule, ImageModule, TagModule], template: `
Carousel
{{ product.name }}
{{ '$' + product.price }}
Image
Galleria
`, providers: [ProductService, PhotoService] }) export class MediaDoc implements OnInit { products!: Product[]; images!: any[]; galleriaResponsiveOptions: any[] = [ { breakpoint: '1024px', numVisible: 5 }, { breakpoint: '960px', numVisible: 4 }, { breakpoint: '768px', numVisible: 3 }, { breakpoint: '560px', numVisible: 1 } ]; carouselResponsiveOptions: any[] = [ { breakpoint: '1024px', numVisible: 3, numScroll: 3 }, { breakpoint: '768px', numVisible: 2, numScroll: 2 }, { breakpoint: '560px', numVisible: 1, numScroll: 1 } ]; constructor( private productService: ProductService, private photoService: PhotoService ) {} ngOnInit() { this.productService.getProductsSmall().then((products) => { this.products = products; }); this.photoService.getImages().then((images) => { this.images = images; }); } getSeverity(status: string) { switch (status) { case 'INSTOCK': return 'success'; case 'LOWSTOCK': return 'warn'; case 'OUTOFSTOCK': return 'danger'; default: return 'success'; } } }