blog component

This commit is contained in:
Schneider Roland
2025-01-20 22:21:03 +01:00
parent 1437ba2fe3
commit a068aeb375
38 changed files with 1679 additions and 44 deletions

View File

@@ -23,7 +23,8 @@ export default async function About() {
aboutUs,
contactUs,
ourSpecialities,
prices
prices,
blogs
} = pageData;
@@ -36,7 +37,7 @@ export default async function About() {
{ contactUs && <ContactUsComponent contactUs={contactUs}/>}
{ prices && <PricingComponent config={prices} /> }
<QuotesComponent />
<BlogPostsComponent />
{ blogs && <BlogPostsComponent config={blogs} />}
<SubscribeComponent />
<FooterComponent />
<AosComponent />

View File

@@ -3,6 +3,22 @@
"header": {
"fields": ["header1","description"]
},
"blogs": {
"fields": ["*"],
"populate": {
"posts": {
"fields": ["name", "id", "header" ],
"populate": {
"tags": {
"fields": ["*" ]
},
"teaserImage": {
"fields": ["name","mime","url"]
}
}
}
}
},
"feedbacks": {
"fields": ["*"],
"populate": {

View File

@@ -1,16 +1,19 @@
import YogaImageComponent from "@/components/yoga.image.component";
import {YogaBlogPostsComponent_Plain} from "@/types/generated-strapi-interfaces/api/yoga-blog-posts-component";
export interface Props {
const BlogPostsComponent = () => {
config: YogaBlogPostsComponent_Plain
}
const BlogPostsComponent = ( {config: { title,header,description,posts} }: Props) => {
return (<section className="blog_posts_section">
<div className="container">
<div className="row">
<div className="col-lg-12 col-md-12 col-sm-12 col-xs-12">
<div className="blog_posts_content">
<h5>Blog Posts</h5>
<h2>Our News Feed</h2>
<p>Autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae
consequatur vel illum qui dolorem eum fugiat</p>
<h5>{title}</h5>
<h2>{header}</h2>
<p>{description}</p>
</div>
</div>
</div>

View File

@@ -1,30 +1,35 @@
// Interface automatically generated by schemas-to-ts
import { HeaderB } from '../components/yoga-site/HeaderB';
import { OurServicesComponent } from '../components/yoga-site/OurServicesComponent';
import { YogaContactUs } from './yoga-contact-us';
import { YogaPriceComponent } from './yoga-price-component';
import { YogaSpecialitiesComponent } from './yoga-specialities-component';
import { YogaAboutUsComponent } from './yoga-about-us-component';
import { YogaCustomerFeedbackComponent } from './yoga-customer-feedback-component';
import { YogaOurServicesComponent } from './yoga-our-services-component';
import { YogaBlogPostsComponent } from './yoga-blog-posts-component';
import { HeaderB_Plain } from '../components/yoga-site/HeaderB';
import { OurServicesComponent_Plain } from '../components/yoga-site/OurServicesComponent';
import { YogaContactUs_Plain } from './yoga-contact-us';
import { YogaPriceComponent_Plain } from './yoga-price-component';
import { YogaSpecialitiesComponent_Plain } from './yoga-specialities-component';
import { YogaAboutUsComponent_Plain } from './yoga-about-us-component';
import { YogaCustomerFeedbackComponent_Plain } from './yoga-customer-feedback-component';
import { YogaOurServicesComponent_Plain } from './yoga-our-services-component';
import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component';
import { HeaderB_NoRelations } from '../components/yoga-site/HeaderB';
import { OurServicesComponent_NoRelations } from '../components/yoga-site/OurServicesComponent';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface About {
id: number;
attributes: {
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: HeaderB;
ourServices: OurServicesComponent;
contactUs?: { data: YogaContactUs };
prices?: { data: YogaPriceComponent };
ourSpecialities?: { data: YogaSpecialitiesComponent };
aboutUs?: { data: YogaAboutUsComponent };
feedbacks?: { data: YogaCustomerFeedbackComponent };
ourServices?: { data: YogaOurServicesComponent };
blogs?: { data: YogaBlogPostsComponent };
locale: string;
localizations?: { data: About[] };
};
@@ -32,11 +37,13 @@ export interface About {
export interface About_Plain {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: HeaderB_Plain;
ourServices: OurServicesComponent_Plain;
contactUs?: YogaContactUs_Plain;
prices?: YogaPriceComponent_Plain;
ourSpecialities?: YogaSpecialitiesComponent_Plain;
aboutUs?: YogaAboutUsComponent_Plain;
feedbacks?: YogaCustomerFeedbackComponent_Plain;
ourServices?: YogaOurServicesComponent_Plain;
blogs?: YogaBlogPostsComponent_Plain;
locale: string;
localizations?: About_Plain[];
}
@@ -44,11 +51,13 @@ export interface About_Plain {
export interface About_NoRelations {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: HeaderB_NoRelations;
ourServices: OurServicesComponent_NoRelations;
contactUs?: number;
prices?: number;
ourSpecialities?: number;
aboutUs?: number;
feedbacks?: number;
ourServices?: number;
blogs?: number;
locale: string;
localizations?: About[];
}
@@ -56,11 +65,13 @@ export interface About_NoRelations {
export interface About_AdminPanelLifeCycle {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: HeaderB_Plain;
ourServices: OurServicesComponent_Plain;
contactUs?: AdminPanelRelationPropertyModification<YogaContactUs_Plain>;
prices?: AdminPanelRelationPropertyModification<YogaPriceComponent_Plain>;
ourSpecialities?: AdminPanelRelationPropertyModification<YogaSpecialitiesComponent_Plain>;
aboutUs?: AdminPanelRelationPropertyModification<YogaAboutUsComponent_Plain>;
feedbacks?: AdminPanelRelationPropertyModification<YogaCustomerFeedbackComponent_Plain>;
ourServices?: AdminPanelRelationPropertyModification<YogaOurServicesComponent_Plain>;
blogs?: AdminPanelRelationPropertyModification<YogaBlogPostsComponent_Plain>;
locale: string;
localizations?: About[];
}

View File

@@ -0,0 +1,44 @@
// Interface automatically generated by schemas-to-ts
import { Media } from '../components/shared/Media';
import { YogaTag } from './yoga-tag';
import { Media_Plain } from '../components/shared/Media';
import { YogaTag_Plain } from './yoga-tag';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface YogaBlogPost {
id: number;
attributes: {
createdAt: Date; updatedAt: Date; publishedAt?: Date; name?: string;
header?: string;
teaserImage?: { data: Media };
article?: string;
tags: { data: YogaTag[] };
};
}
export interface YogaBlogPost_Plain {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; name?: string;
header?: string;
teaserImage?: Media_Plain;
article?: string;
tags: YogaTag_Plain[];
}
export interface YogaBlogPost_NoRelations {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; name?: string;
header?: string;
teaserImage?: number;
article?: string;
tags: number[];
}
export interface YogaBlogPost_AdminPanelLifeCycle {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; name?: string;
header?: string;
teaserImage?: AdminPanelRelationPropertyModification<Media_Plain>;
article?: string;
tags: AdminPanelRelationPropertyModification<YogaTag_Plain>;
}

View File

@@ -0,0 +1,42 @@
// Interface automatically generated by schemas-to-ts
import { YogaBlogPost } from './yoga-blog-post';
import { YogaBlogPost_Plain } from './yoga-blog-post';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface YogaBlogPostsComponent {
id: number;
attributes: {
createdAt: Date; updatedAt: Date; publishedAt?: Date; name?: string;
title?: string;
header?: string;
description?: string;
posts: { data: YogaBlogPost[] };
};
}
export interface YogaBlogPostsComponent_Plain {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; name?: string;
title?: string;
header?: string;
description?: string;
posts: YogaBlogPost_Plain[];
}
export interface YogaBlogPostsComponent_NoRelations {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; name?: string;
title?: string;
header?: string;
description?: string;
posts: number[];
}
export interface YogaBlogPostsComponent_AdminPanelLifeCycle {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; name?: string;
title?: string;
header?: string;
description?: string;
posts: AdminPanelRelationPropertyModification<YogaBlogPost_Plain>;
}

View File

@@ -0,0 +1,30 @@
// Interface automatically generated by schemas-to-ts
import { YogaCustomerFeedback } from './yoga-customer-feedback';
import { YogaCustomerFeedback_Plain } from './yoga-customer-feedback';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface YogaCustomerFeedbackComponent {
id: number;
attributes: {
createdAt: Date; updatedAt: Date; publishedAt?: Date; name?: string;
feedbacks: { data: YogaCustomerFeedback[] };
};
}
export interface YogaCustomerFeedbackComponent_Plain {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; name?: string;
feedbacks: YogaCustomerFeedback_Plain[];
}
export interface YogaCustomerFeedbackComponent_NoRelations {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; name?: string;
feedbacks: number[];
}
export interface YogaCustomerFeedbackComponent_AdminPanelLifeCycle {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; name?: string;
feedbacks: AdminPanelRelationPropertyModification<YogaCustomerFeedback_Plain>;
}

View File

@@ -0,0 +1,42 @@
// Interface automatically generated by schemas-to-ts
import { Media } from '../components/shared/Media';
import { Media_Plain } from '../components/shared/Media';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface YogaCustomerFeedback {
id: number;
attributes: {
createdAt: Date; updatedAt: Date; publishedAt?: Date; name?: string;
customerName?: string;
feedback?: string;
customerImage?: { data: Media };
customerDescription?: string;
};
}
export interface YogaCustomerFeedback_Plain {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; name?: string;
customerName?: string;
feedback?: string;
customerImage?: Media_Plain;
customerDescription?: string;
}
export interface YogaCustomerFeedback_NoRelations {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; name?: string;
customerName?: string;
feedback?: string;
customerImage?: number;
customerDescription?: string;
}
export interface YogaCustomerFeedback_AdminPanelLifeCycle {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; name?: string;
customerName?: string;
feedback?: string;
customerImage?: AdminPanelRelationPropertyModification<Media_Plain>;
customerDescription?: string;
}

View File

@@ -0,0 +1,50 @@
// Interface automatically generated by schemas-to-ts
import { YogaSingleService } from './yoga-single-service';
import { YogaSingleService_Plain } from './yoga-single-service';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface YogaOurServicesComponent {
id: number;
attributes: {
createdAt: Date; updatedAt: Date; publishedAt?: Date; title?: string;
header?: string;
description?: string;
services: { data: YogaSingleService[] };
name?: string;
locale: string;
localizations?: { data: YogaOurServicesComponent[] };
};
}
export interface YogaOurServicesComponent_Plain {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; title?: string;
header?: string;
description?: string;
services: YogaSingleService_Plain[];
name?: string;
locale: string;
localizations?: YogaOurServicesComponent_Plain[];
}
export interface YogaOurServicesComponent_NoRelations {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; title?: string;
header?: string;
description?: string;
services: number[];
name?: string;
locale: string;
localizations?: YogaOurServicesComponent[];
}
export interface YogaOurServicesComponent_AdminPanelLifeCycle {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; title?: string;
header?: string;
description?: string;
services: AdminPanelRelationPropertyModification<YogaSingleService_Plain>;
name?: string;
locale: string;
localizations?: YogaOurServicesComponent[];
}

View File

@@ -0,0 +1,54 @@
// Interface automatically generated by schemas-to-ts
import { Media } from '../components/shared/Media';
import { Media_Plain } from '../components/shared/Media';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface YogaSingleService {
id: number;
attributes: {
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
buttonLink?: string;
image?: { data: Media };
imageAlt?: string;
name?: string;
locale: string;
localizations?: { data: YogaSingleService[] };
};
}
export interface YogaSingleService_Plain {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
buttonLink?: string;
image?: Media_Plain;
imageAlt?: string;
name?: string;
locale: string;
localizations?: YogaSingleService_Plain[];
}
export interface YogaSingleService_NoRelations {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
buttonLink?: string;
image?: number;
imageAlt?: string;
name?: string;
locale: string;
localizations?: YogaSingleService[];
}
export interface YogaSingleService_AdminPanelLifeCycle {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
buttonLink?: string;
image?: AdminPanelRelationPropertyModification<Media_Plain>;
imageAlt?: string;
name?: string;
locale: string;
localizations?: YogaSingleService[];
}

View File

@@ -0,0 +1,22 @@
// Interface automatically generated by schemas-to-ts
export interface YogaTag {
id: number;
attributes: {
createdAt: Date; updatedAt: Date; publishedAt?: Date; tag?: string;
};
}
export interface YogaTag_Plain {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; tag?: string;
}
export interface YogaTag_NoRelations {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; tag?: string;
}
export interface YogaTag_AdminPanelLifeCycle {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; tag?: string;
}

View File

@@ -1,28 +0,0 @@
// Interface automatically generated by schemas-to-ts
export interface AboutUs {
title?: string;
header?: string;
description?: string;
content?: string;
buttonLabel?: string;
buttonLink?: string;
}
export interface AboutUs_Plain {
title?: string;
header?: string;
description?: string;
content?: string;
buttonLabel?: string;
buttonLink?: string;
}
export interface AboutUs_NoRelations {
title?: string;
header?: string;
description?: string;
content?: string;
buttonLabel?: string;
buttonLink?: string;
}

View File

@@ -0,0 +1,13 @@
// Interface automatically generated by schemas-to-ts
export interface Tag {
tag?: string;
}
export interface Tag_Plain {
tag?: string;
}
export interface Tag_NoRelations {
tag?: string;
}