diff --git a/src/views/carousel/CarouselDemo.vue b/src/views/carousel/CarouselDemo.vue
index 8c9ff6af1..3bf54e146 100755
--- a/src/views/carousel/CarouselDemo.vue
+++ b/src/views/carousel/CarouselDemo.vue
@@ -11,7 +11,7 @@
- Basic
+ Basic
@@ -23,10 +23,10 @@
{{slotProps.data.name}}
${{slotProps.data.price}}
{{slotProps.data.inventoryStatus}}
-
@@ -50,10 +50,10 @@
{{slotProps.data.name}}
${{slotProps.data.price}}
{{slotProps.data.inventoryStatus}}
-
@@ -78,10 +78,10 @@
{{slotProps.data.name}}
${{slotProps.data.price}}
{{slotProps.data.inventoryStatus}}
-
@@ -96,7 +96,6 @@
@@ -151,16 +146,8 @@ export default {
}
.product-image {
- width: 150px;
+ width: 50%;
box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23)
}
}
-
-.p-carousel {
- margin-bottom: 1rem;
-
- &:last-child {
- margin-bottom: 0rem;
- }
-}
\ No newline at end of file
diff --git a/src/views/carousel/CarouselDoc.vue b/src/views/carousel/CarouselDoc.vue
index 50c7640a6..f4ec98ae8 100755
--- a/src/views/carousel/CarouselDoc.vue
+++ b/src/views/carousel/CarouselDoc.vue
@@ -265,90 +265,96 @@ data() {
-<Carousel :value="cars" :numVisible="4" :numScroll="3" :responsiveOptions="responsiveOptions">
- <template #header>
- <h2>Basic</h2>
- </template>
- <template #item="slotProps">
- <div class="car-item">
- <div class="car-content">
- <div>
- <img :src="'demo/images/car/' + slotProps.data.brand + '.png'" :alt="slotProps.data.brand" />
+<div class="card">
+<Carousel :value="products" :numVisible="3" :numScroll="3" :responsiveOptions="responsiveOptions">
+ <template #header>
+ <h5>Basic</h5>
+ </template>
+ <template #item="slotProps">
+ <div class="product-item">
+ <div class="product-item-content">
+ <div class="p-mb-3">
+ <img :src="'demo/images/product/' + slotProps.data.image" :alt="slotProps.data.name" class="product-image" />
</div>
<div>
- <div class="car-title">{{slotProps.data.brand}}</div>
- <div class="car-subtitle">{{slotProps.data.year}} | {{slotProps.data.color}}</div>
-
- <div class="car-buttons">
- <Button icon="pi pi-search" class="p-button-secondary" />
- <Button icon="pi pi-star" class="p-button-secondary" />
- <Button icon="pi pi-cog" class="p-button-secondary" />
+ <h4 class="p-mb-1">{{slotProps.data.name}}</h4>
+ <h6 class="p-mt-0 p-mb-3">${{slotProps.data.price}}</h6>
+ <span :class="'product-badge status-'+slotProps.data.inventoryStatus.toLowerCase()">{{slotProps.data.inventoryStatus}}</span>
+ <div class="car-buttons p-mt-5">
+ <Button icon="pi pi-search" class="p-button p-button-rounded p-mr-2" />
+ <Button icon="pi pi-star" class="p-button-success p-button-rounded p-mr-2" />
+ <Button icon="pi pi-cog" class="p-button-help p-button-rounded" />
</div>
</div>
</div>
</div>
- </template>
+ </template>
</Carousel>
+</div>
-<Carousel :value="cars" :numVisible="3" :numScroll="1" :responsiveOptions="responsiveOptions" class="custom-carousel" :circular="true" :autoplayInterval="3000">
- <template #header>
- <h2>Circular, AutoPlay, 3 Items per Page and Scroll by 1</h2>
- </template>
- <template #item="slotProps">
- <div class="car-item">
- <div class="car-content">
- <div>
- <img :src="'demo/images/car/' + slotProps.data.brand + '.png'" :alt="slotProps.data.brand" />
+<div class="card">
+<Carousel :value="products" :numVisible="3" :numScroll="1" :responsiveOptions="responsiveOptions" class="custom-carousel" :circular="true" :autoplayInterval="3000">
+ <template #header>
+ <h5>Circular, AutoPlay, 3 Items per Page and Scroll by 1</h5>
+ </template>
+ <template #item="slotProps">
+ <div class="product-item">
+ <div class="product-item-content">
+ <div class="p-mb-3">
+ <img :src="'demo/images/product/' + slotProps.data.image" :alt="slotProps.data.name" class="product-image" />
</div>
<div>
- <div class="car-title">{{slotProps.data.brand}}</div>
- <div class="car-subtitle">{{slotProps.data.year}} | {{slotProps.data.color}}</div>
-
- <div class="car-buttons">
- <Button icon="pi pi-search" class="p-button-secondary" />
- <Button icon="pi pi-star" class="p-button-secondary" />
- <Button icon="pi pi-cog" class="p-button-secondary" />
+ <h4 class="p-mb-1">{{slotProps.data.name}}</h4>
+ <h6 class="p-mt-0 p-mb-3">${{slotProps.data.price}}</h6>
+ <span :class="'product-badge status-'+slotProps.data.inventoryStatus.toLowerCase()">{{slotProps.data.inventoryStatus}}</span>
+ <div class="car-buttons p-mt-5">
+ <Button icon="pi pi-search" class="p-button p-button-rounded p-mr-2" />
+ <Button icon="pi pi-star" class="p-button-success p-button-rounded p-mr-2" />
+ <Button icon="pi pi-cog" class="p-button-help p-button-rounded" />
</div>
</div>
</div>
</div>
- </template>
+ </template>
</Carousel>
+</div>
-<Carousel :value="cars" :numVisible="1" :numScroll="1" orientation="vertical" :responsiveOptions="responsiveOptions" verticalViewPortHeight="330px"
- style="max-width: 400px; margin-top: 2em">
- <template #header>
- <h2>Vertical</h2>
- </template>
- <template #item="slotProps">
- <div class="car-item">
- <div class="car-content">
- <div>
- <img :src="'demo/images/car/' + slotProps.data.brand + '.png'" :alt="slotProps.data.brand" />
+<div class="card">
+<Carousel :value="products" :numVisible="1" :numScroll="1" orientation="vertical" verticalViewPortHeight="325px"
+ style="max-width: 400px; margin-top: 2em">
+ <template #header>
+ <h5>Vertical</h5>
+ </template>
+ <template #item="slotProps">
+ <div class="product-item">
+ <div class="product-item-content">
+ <div class="p-mb-3">
+ <img :src="'demo/images/product/' + slotProps.data.image" :alt="slotProps.data.name" class="product-image" />
</div>
<div>
- <div class="car-title">{{slotProps.data.brand}}</div>
- <div class="car-subtitle">{{slotProps.data.year}} | {{slotProps.data.color}}</div>
-
- <div class="car-buttons">
- <Button icon="pi pi-search" class="p-button-secondary" />
- <Button icon="pi pi-star" class="p-button-secondary" />
- <Button icon="pi pi-cog" class="p-button-secondary" />
+ <h4 class="p-mb-1">{{slotProps.data.name}}</h4>
+ <h6 class="p-mt-0 p-mb-3">${{slotProps.data.price}}</h6>
+ <span :class="'product-badge status-'+slotProps.data.inventoryStatus.toLowerCase()">{{slotProps.data.inventoryStatus}}</span>
+ <div class="car-buttons p-mt-5">
+ <Button icon="pi pi-search" class="p-button p-button-rounded p-mr-2" />
+ <Button icon="pi pi-star" class="p-button-success p-button-rounded p-mr-2" />
+ <Button icon="pi pi-cog" class="p-button-help p-button-rounded" />
</div>
</div>
</div>
</div>
- </template>
+ </template>
</Carousel>
+
-import CarService from "../../service/CarService";
+import ProductService from '../../service/ProductService';
export default {
data() {
return {
- cars: null,
+ products: null,
responsiveOptions: [
{
breakpoint: '1024px',
@@ -368,42 +374,29 @@ export default {
]
}
},
- carService: null,
+ productService: null,
created() {
- this.carService = new CarService();
+ this.productService = new ProductService();
},
mounted() {
- this.carService.getCarsSmall().then(data => this.cars = data);
- },
+ this.productService.getProductsSmall().then(data => this.products = data.slice(0,9));
+ }
}
-.car-item {
- .car-content {
- border: 1px solid var(--layer-2);
+.product-item {
+ .product-item-content {
+ border: 1px solid var(--surface-d);
border-radius: 3px;
margin: .3rem;
text-align: center;
- padding: 2em 0 2.25em 0;
+ padding: 2rem 0;
}
- .car-title {
- font-weight: 600;
- font-size: 20px;
- margin-top: 24px;
- }
-
- .car-subtitle {
- margin: .25em 0 2em 0;
- }
-
- button {
- margin-left: .5rem;
-
- &:first-child {
- margin-left: 0;
- }
+ .product-image {
+ width: 50%;
+ box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23)
}
}