Compare commits

..

1 Commits

Author SHA1 Message Date
Schneider Roland
56dda3233a [yoga-4] add new field: article 2025-05-20 07:46:17 +02:00
130 changed files with 174 additions and 2297 deletions

View File

@ -22,16 +22,3 @@ x
GET {{domain}}/api/yoga-blog-posts/wmhqy1n8japcfpy0of4hauwm GET {{domain}}/api/yoga-blog-posts/wmhqy1n8japcfpy0of4hauwm
Accept: application/json Accept: application/json
#Authorization: Bearer {{token}} #Authorization: Bearer {{token}}
### GET request with a header
GET {{domain}}/api/yoga-single-services?filters[name][$eq]=service4
Accept: application/json
### GET service page
GET {{domain}}/api/service-list-page?fields[0]=*&populate[services][fields][0]=*&populate[services][populate][image][fields][0]=name&populate[services][populate][image][fields][1]=mime&populate[services][populate][image][fields][2]=url&populate[common][fields][0]=*&populate[common][populate][logoImage][fields][0]=name&populate[common][populate][logoImage][fields][1]=mime&populate[common][populate][logoImage][fields][2]=url&populate[subscribeNow][fields][0]=*&populate[subscribeNow][populate][image][fields][0]=name&populate[subscribeNow][populate][image][fields][1]=mime&populate[subscribeNow][populate][image][fields][2]=url&populate[footer][fields][0]=*&populate[footer][populate][links][fields][0]=*&populate[footer][populate][contactUsEmail][fields][0]=*&populate[footer][populate][contactUsLocation][fields][0]=*&populate[footer][populate][contactUsPhoneNumber][fields][0]=*&populate[footer][populate][logo][fields][0]=name&populate[footer][populate][logo][fields][1]=mime&populate[footer][populate][logo][fields][2]=url
Accept: application/json

20
dev.sh
View File

@ -1,20 +0,0 @@
#!/usr/bin/env bash
PROJECT_ROOT=$(readlink -f $(dirname $0))
ENV_DIR=${PROJECT_ROOT}"/environment/dev/docker-compose/yogastic"
CMS_DIR=${PROJECT_ROOT}"/yoga-cms"
APP_DIR=${PROJECT_ROOT}"/yoga-app"
echo "PROJECT_ROOT $PROJECT_ROOT"
cd $ENV_DIR
docker compose up -d
cd $CMS_DIR
fuser -k 1337/tcp
npm run develop &
cd $APP_DIR
fuser -k 4081/tcp
npm run dev &

View File

@ -1 +1 @@
202509160924.c47ec66 202505181151.77363d0

View File

@ -9,4 +9,4 @@ echo "build image ${TAG} from folder ${PROJECT_ROOT}"
cd $PROJECT_ROOT cd $PROJECT_ROOT
docker build --build-arg NODE_ENV=production -t $TAG_INTERNAL -t $TAG_PUBLIC . docker build --build-arg NODE_ENV=production -t $TAG .

View File

@ -6,5 +6,4 @@ echo "Reading version file: ${VERSION_FILE}"
export VERSION=$(cat "${VERSION_FILE}") export VERSION=$(cat "${VERSION_FILE}")
export TAG_PUBLIC=docker.rschneider.hu/infra/yoga-cms:$VERSION export TAG=docker.rschneider.hu/infra/yoga-cms:$VERSION
export TAG_INTERNAL=internal-docker.rschneider.hu/infra/yoga-cms:$VERSION

View File

@ -3,7 +3,5 @@
CURRENT_DIR=$(dirname "$0") CURRENT_DIR=$(dirname "$0")
# push docker image # push docker image
source "${CURRENT_DIR}/build.docker.env.sh" source "${CURRENT_DIR}/build.docker.env.sh"
echo "push image ${TAG_INTERNAL}" echo "push image ${TAG}"
docker push $TAG_INTERNAL docker push $TAG
echo "push image ${TAG_PUBLIC}"
docker push $TAG_PUBLIC

View File

@ -1 +1 @@
202509161943.65409a9 202505180959.57552b3

View File

@ -21,7 +21,7 @@ services:
networks: networks:
- yogastic - yogastic
app: app:
image: docker.rschneider.hu/infra/yoga-app:202509160924.c47ec66 image: docker.rschneider.hu/infra/yoga-app:202505181151.77363d0
platform: linux/amd64 platform: linux/amd64
ports: ports:
- '4025:3000' - '4025:3000'
@ -47,7 +47,7 @@ services:
- proxy_shared - proxy_shared
- yogastic - yogastic
cms: cms:
image: docker.rschneider.hu/infra/yoga-cms:202509161943.65409a9 image: docker.rschneider.hu/infra/yoga-cms:202505180959.57552b3
ports: ports:
- '4026:1337' - '4026:1337'
environment: environment:
@ -71,6 +71,7 @@ services:
- yogastic - yogastic
volumes: volumes:
- strapi-uploads:/opt/app/public/uploads - strapi-uploads:/opt/app/public/uploads
volumes: volumes:
next-db: {} next-db: {}
strapi-db: {} strapi-db: {}

View File

@ -8,8 +8,7 @@
"build.docker.image.app": "cd environment/dev/docker/app/scripts && bash build.docker.build.sh ", "build.docker.image.app": "cd environment/dev/docker/app/scripts && bash build.docker.build.sh ",
"build.docker.image.cms": "cd environment/dev/docker/cms/scripts && bash build.docker.build.sh ", "build.docker.image.cms": "cd environment/dev/docker/cms/scripts && bash build.docker.build.sh ",
"push.docker.image.app": "cd environment/dev/docker/app/scripts && bash build.docker.push.sh ", "push.docker.image.app": "cd environment/dev/docker/app/scripts && bash build.docker.push.sh ",
"push.docker.image.cms": "cd environment/dev/docker/cms/scripts && bash build.docker.push.sh ", "push.docker.image.cms": "cd environment/dev/docker/cms/scripts && bash build.docker.push.sh "
"dev": "bash ./dev.sh"
}, },
"author": "", "author": "",
"license": "ISC", "license": "ISC",

View File

@ -16,9 +16,9 @@ const eslintConfig = [
"next/core-web-vitals", "next/core-web-vitals",
"next/typescript", "next/typescript",
], ],
rules: { // rules: {
"@typescript-eslint/no-explicit-any": "off" // "@typescript-eslint/no-explicit-any": "off"
}, // },
} }
), ),
@ -32,6 +32,6 @@ const eslintConfig = [
// } // }
]; ];
// console.info("eslint config",eslintConfig) console.info("eslint config",eslintConfig)
export default eslintConfig; export default eslintConfig;

View File

@ -9,7 +9,6 @@
"version": "0.1.0", "version": "0.1.0",
"dependencies": { "dependencies": {
"@fortawesome/fontawesome-free": "^6.7.2", "@fortawesome/fontawesome-free": "^6.7.2",
"@strapi/blocks-react-renderer": "^1.0.2",
"@strapi/database": "^5.10.3", "@strapi/database": "^5.10.3",
"@types/aos": "^3.0.7", "@types/aos": "^3.0.7",
"@types/bcrypt": "^5.0.2", "@types/bcrypt": "^5.0.2",
@ -1394,16 +1393,6 @@
"node": ">=8" "node": ">=8"
} }
}, },
"node_modules/@strapi/blocks-react-renderer": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/@strapi/blocks-react-renderer/-/blocks-react-renderer-1.0.2.tgz",
"integrity": "sha512-pRV/WMreo5wyrLg7J0pw1DM9lg8U8m+QA7Bd8CPN3beUBTdDhYrFTTNZh3XveEdnURZNJu1X0aWXAg4SzVg7QA==",
"hasInstallScript": true,
"peerDependencies": {
"react": "^18.0.0 || ^19.0.0",
"react-dom": "^18.0.0 || ^19.0.0"
}
},
"node_modules/@strapi/database": { "node_modules/@strapi/database": {
"version": "5.10.3", "version": "5.10.3",
"resolved": "https://registry.npmjs.org/@strapi/database/-/database-5.10.3.tgz", "resolved": "https://registry.npmjs.org/@strapi/database/-/database-5.10.3.tgz",

View File

@ -11,7 +11,6 @@
}, },
"dependencies": { "dependencies": {
"@fortawesome/fontawesome-free": "^6.7.2", "@fortawesome/fontawesome-free": "^6.7.2",
"@strapi/blocks-react-renderer": "^1.0.2",
"@strapi/database": "^5.10.3", "@strapi/database": "^5.10.3",
"@types/aos": "^3.0.7", "@types/aos": "^3.0.7",
"@types/bcrypt": "^5.0.2", "@types/bcrypt": "^5.0.2",

View File

@ -1,17 +1,8 @@
{ {
"populate": { "populate": {
"header": { "header": {
"fields": ["header1","description"] "fields": ["header1","description"]
}, },
"common": {
"fields": ["*"],
"populate": {
"logoImage": {
"fields": ["name","mime","url"]
}
}
},
"aboutUs": { "aboutUs": {
"fields": ["*"], "fields": ["*"],
"populate": { "populate": {
@ -72,16 +63,7 @@
} }
}, },
"subscribeNow": { "subscribeNow": {
"fields": ["*"], "fields": ["*"]
"populate": {
"image": {
"fields": [
"name",
"mime",
"url"
]
}
}
}, },
"footer": { "footer": {
"fields": ["*"], "fields": ["*"],
@ -97,9 +79,6 @@
}, },
"contactUsPhoneNumber": { "contactUsPhoneNumber": {
"fields": ["*"] "fields": ["*"]
},
"logo": {
"fields": ["name","mime","url"]
} }
} }
} }

View File

@ -1,14 +1,6 @@
{ {
"fields": ["*"], "fields": ["*"],
"populate": { "populate": {
"common": {
"fields": ["*"],
"populate": {
"logoImage": {
"fields": ["name","mime","url"]
}
}
},
"contactUs": { "contactUs": {
"fields": ["*"] "fields": ["*"]
}, },
@ -16,17 +8,8 @@
"fields": ["*"] "fields": ["*"]
}, },
"subscribe": { "subscribe": {
"fields": ["*"], "fields": ["*"]
"populate": { },
"image": {
"fields": [
"name",
"mime",
"url"
]
}
}
},
"footer": { "footer": {
"fields": ["*"], "fields": ["*"],
"populate": { "populate": {
@ -41,9 +24,6 @@
}, },
"contactUsPhoneNumber": { "contactUsPhoneNumber": {
"fields": ["*"] "fields": ["*"]
},
"logo": {
"fields": ["name","mime","url"]
} }
} }
} }

View File

@ -1,14 +1,6 @@
{ {
"fields": ["*"], "fields": ["*"],
"populate": { "populate": {
"common": {
"fields": ["*"],
"populate": {
"logoImage": {
"fields": ["name","mime","url"]
}
}
},
"questionsAndAnswers": { "questionsAndAnswers": {
"fields": ["*"], "fields": ["*"],
"populate": { "populate": {
@ -51,17 +43,8 @@
} }
}, },
"subscribe": { "subscribe": {
"fields": ["*"], "fields": ["*"]
"populate": { },
"image": {
"fields": [
"name",
"mime",
"url"
]
}
}
},
"footer": { "footer": {
"fields": ["*"], "fields": ["*"],
"populate": { "populate": {
@ -76,9 +59,6 @@
}, },
"contactUsPhoneNumber": { "contactUsPhoneNumber": {
"fields": ["*"] "fields": ["*"]
},
"logo": {
"fields": ["name","mime","url"]
} }
} }
} }

View File

@ -1,13 +1,5 @@
{ {
"populate": { "populate": {
"common": {
"fields": ["*"],
"populate": {
"logoImage": {
"fields": ["name","mime","url"]
}
}
},
"header": { "header": {
"fields": ["*"], "fields": ["*"],
"populate": { "populate": {
@ -15,12 +7,8 @@
"fields": [ "fields": [
"*" "*"
] ]
}, }
"image": {
"fields": ["name","mime","url"]
}
} }
}, },
"footer": { "footer": {
"fields": ["*"], "fields": ["*"],
@ -36,24 +24,12 @@
}, },
"contactUsPhoneNumber": { "contactUsPhoneNumber": {
"fields": ["*"] "fields": ["*"]
},
"logo": {
"fields": ["name","mime","url"]
} }
} }
}, },
"subscribeNow": { "subscribeNow": {
"fields": ["*"], "fields": ["*"]
"populate": { },
"image": {
"fields": [
"name",
"mime",
"url"
]
}
}
},
"blogs": { "blogs": {
"fields": ["*"], "fields": ["*"],
"populate": { "populate": {
@ -152,9 +128,6 @@
}, },
"right4": { "right4": {
"fields": ["*"] "fields": ["*"]
},
"image": {
"fields": ["name","mime","url"]
} }
} }
} }

View File

@ -1,14 +1,6 @@
{ {
"fields": ["*"], "fields": ["*"],
"populate": { "populate": {
"common": {
"fields": ["*"],
"populate": {
"logoImage": {
"fields": ["name","mime","url"]
}
}
},
"price": { "price": {
"fields": ["*"], "fields": ["*"],
"populate": { "populate": {
@ -48,16 +40,7 @@
} }
}, },
"subscribe": { "subscribe": {
"fields": ["*"], "fields": ["*"]
"populate": {
"image": {
"fields": [
"name",
"mime",
"url"
]
}
}
}, },
"footer": { "footer": {
"fields": ["*"], "fields": ["*"],
@ -73,9 +56,6 @@
}, },
"contactUsPhoneNumber": { "contactUsPhoneNumber": {
"fields": ["*"] "fields": ["*"]
},
"logo": {
"fields": ["name","mime","url"]
} }
} }
} }

View File

@ -1,56 +0,0 @@
{
"fields": ["*"],
"populate": {
"services": {
"fields": ["*"],
"populate": {
"image": {
"fields": ["name","mime","url" ]
},
"articleImage": {
"fields": ["name","mime","url" ]
}
}
},
"common": {
"fields": ["*"],
"populate": {
"logoImage": {
"fields": ["name","mime","url"]
}
}
},
"subscribeNow": {
"fields": ["*"],
"populate": {
"image": {
"fields": [
"name",
"mime",
"url"
]
}
}
},
"footer": {
"fields": ["*"],
"populate": {
"links": {
"fields": ["*"]
},
"contactUsEmail": {
"fields": ["*"]
},
"contactUsLocation": {
"fields": ["*"]
},
"contactUsPhoneNumber": {
"fields": ["*"]
},
"logo": {
"fields": ["name","mime","url"]
}
}
}
}
}

View File

@ -1,45 +0,0 @@
{
"fields": ["*"],
"populate": {
"common": {
"fields": ["*"],
"populate": {
"logoImage": {
"fields": ["name","mime","url"]
}
}
},
"subscribeNow": {
"fields": ["*"],
"populate": {
"image": {
"fields": [
"name",
"mime",
"url"
]
}
}
},
"footer": {
"fields": ["*"],
"populate": {
"links": {
"fields": ["*"]
},
"contactUsEmail": {
"fields": ["*"]
},
"contactUsLocation": {
"fields": ["*"]
},
"contactUsPhoneNumber": {
"fields": ["*"]
},
"logo": {
"fields": ["name","mime","url"]
}
}
}
}
}

View File

@ -1,14 +1,6 @@
{ {
"fields": ["*"], "fields": ["*"],
"populate": { "populate": {
"common": {
"fields": ["*"],
"populate": {
"logoImage": {
"fields": ["name","mime","url"]
}
}
},
"ourServices": { "ourServices": {
"fields": ["*"], "fields": ["*"],
"populate": { "populate": {
@ -51,9 +43,6 @@
}, },
"right4": { "right4": {
"fields": ["*"] "fields": ["*"]
},
"image": {
"fields": ["name","mime","url"]
} }
} }
}, },
@ -90,17 +79,8 @@
} }
}, },
"subscribe": { "subscribe": {
"fields": ["*"], "fields": ["*"]
"populate": { },
"image": {
"fields": [
"name",
"mime",
"url"
]
}
}
},
"footer": { "footer": {
"fields": ["*"], "fields": ["*"],
"populate": { "populate": {
@ -115,9 +95,6 @@
}, },
"contactUsPhoneNumber": { "contactUsPhoneNumber": {
"fields": ["*"] "fields": ["*"]
},
"logo": {
"fields": ["name","mime","url"]
} }
} }
} }

View File

@ -4,20 +4,15 @@ import qs from "qs";
import aboutQuery from "@/api/strapi/query/about.json"; import aboutQuery from "@/api/strapi/query/about.json";
import homeQuery from "@/api/strapi/query/home.json"; import homeQuery from "@/api/strapi/query/home.json";
import servicesQuery from "@/api/strapi/query/services.json"; import servicesQuery from "@/api/strapi/query/services.json";
import serviceListPageQuery from "@/api/strapi/query/service-list.json";
import serviceQuery from "@/api/strapi/query/service.json";
import pricesQuery from "@/api/strapi/query/prices.json"; import pricesQuery from "@/api/strapi/query/prices.json";
import faqQuery from "@/api/strapi/query/faq.json"; import faqQuery from "@/api/strapi/query/faq.json";
import contactQuery from "@/api/strapi/query/contact.json"; import contactQuery from "@/api/strapi/query/contact.json";
import {YogaBlogPost_Plain} from "@/types/generated-strapi-interfaces/api/yoga-blog-post"; import {YogaBlogPost_Plain} from "@/types/generated-strapi-interfaces/api/yoga-blog-post";
import {Home_Plain} from "@/types/generated-strapi-interfaces/api/home"; import {Home_Plain} from "@/types/generated-strapi-interfaces/api/home";
import {ServicesPage_Plain} from "@/types/generated-strapi-interfaces/api/services-page"; import {ServicesPage_Plain} from "@/types/generated-strapi-interfaces/api/services-page";
import {ServiceListPage_Plain} from "@/types/generated-strapi-interfaces/api/service-list-page";
import {PricesPage_Plain} from "@/types/generated-strapi-interfaces/api/prices-page"; import {PricesPage_Plain} from "@/types/generated-strapi-interfaces/api/prices-page";
import {FaqPage_Plain} from "@/types/generated-strapi-interfaces/api/faq-page"; import {FaqPage_Plain} from "@/types/generated-strapi-interfaces/api/faq-page";
import {ContactPage_Plain} from "@/types/generated-strapi-interfaces/api/contact-page"; import {ContactPage_Plain} from "@/types/generated-strapi-interfaces/api/contact-page";
import {YogaSingleService_Plain} from "@/types/generated-strapi-interfaces/api/yoga-single-service";
import {ServicePage_Plain} from "@/types/generated-strapi-interfaces/api/service-page";
class StrapiApi{ class StrapiApi{
@ -47,24 +42,6 @@ class StrapiApi{
return this.getJson("/api/services-page?",servicesQuery); return this.getJson("/api/services-page?",servicesQuery);
} }
public getServicePage(): Promise<ServicePage_Plain>{
return this.getJson("/api/service-page?",serviceQuery);
}
public getServiceListPage(): Promise<ServiceListPage_Plain>{
return this.getJson("/api/service-list-page?",serviceListPageQuery);
}
public getService(name: string): Promise<YogaSingleService_Plain[]>{
return this.getJson("/api/yoga-single-services?", {
filters: {
name: {
$eq: name,
},
},
});
}
public getPricesPage(): Promise<PricesPage_Plain>{ public getPricesPage(): Promise<PricesPage_Plain>{
return this.getJson("/api/prices-page?",pricesQuery); return this.getJson("/api/prices-page?",pricesQuery);
} }

View File

@ -1,58 +1,43 @@
import httpClient from "@/api/http-client"; import httpClient from "@/api/http-client";
import {Payload} from "@/types/generated-strapi-interfaces/common/Payload"; import {Payload} from "@/types/generated-strapi-interfaces/common/Payload";
const STRAPI_URL = process.env.STRAPI_URL; const STRAPI_URL = process.env.STRAPI_URL;
class StrapiClient { class StrapiClient{
constructor(private strapiUrl: string = "http://localhost:1337") { constructor(private strapiUrl: string = "http://localhost:1337") {
} }
public getImageUrl(imagePath: string){
public getImageUrl(imagePath: string) { if ( !imagePath ){
if (!imagePath) {
return "dummy.png" return "dummy.png"
} }
return '/image/' + imagePath; return '/image/'+ imagePath;
} }
public async httpGet(path: string){
public async httpGet(path: string) { return await httpClient.httpGet(this.strapiUrl + path);
let result = undefined;
try {
const absoluteUrl = this.strapiUrl + path;
console.info("httpGet", {path,absoluteUrl});
result = await httpClient.httpGet(this.strapiUrl + path);
} catch (e) {
console.log("httpGet error", e);
throw e;
}
if (!result.ok) {
console.info("httpGet not ok", result);
throw new Error(result.statusText);
}
return result;
} }
public async httpGetJson<T>(url: string): Promise<Payload<T>>{
public async httpGetJson<T>(url: string): Promise<Payload<T>> { const response = await this.httpGet(url);
const response = await this.httpGet(url);
return await response.json(); return await response.json();
} }
public async findContentType<T>(contentType: string, options?: FindContentOptions): Promise<Payload<T>> { public async findContentType<T>(contentType: string,options?: FindContentOptions): Promise<Payload<T>>{
const searchParams = new URLSearchParams(); const searchParams = new URLSearchParams();
if (options?.populateAll) { if ( options?.populateAll ){
searchParams.append("populate", "*"); searchParams.append("populate","*");
} }
if (options?.localeAll) { if (options?.localeAll){
searchParams.append("_locale", "all"); searchParams.append("_locale","all");
} }
const response = await this.httpGet("/api/" + contentType + "?" + searchParams.toString());
const response = await this.httpGet("/api/"+contentType+"?"+searchParams.toString());
return await response.json(); return await response.json();
} }
} }
export interface FindContentOptions { export interface FindContentOptions{
populateAll?: boolean; populateAll?: boolean;
localeAll?: boolean; localeAll?: boolean;
} }

View File

@ -24,16 +24,13 @@ export default async function About() {
blogs, blogs,
subscribeNow, subscribeNow,
footer, footer,
common
} = pageData; } = pageData;
console.info("about us", JSON.stringify(aboutUs))
return ( return (
<> <>
{ header && <SubHeaderComponent header={header} common={common}/> } { header && <SubHeaderComponent header1={header?.header1} header2={header?.header2} description={header?.description}/> }
{ aboutUs && <AboutUsWithBoxesComponent config={aboutUs}/>} { aboutUs && <AboutUsWithBoxesComponent config={aboutUs}/>}
{ discount && <YogaDiscountComponent config={discount}/>} { discount && <YogaDiscountComponent config={discount}/>}

View File

@ -16,12 +16,11 @@ export default async function ContactPage(){
contactUs, contactUs,
google_maps, google_maps,
subscribe, subscribe,
footer, footer
common
} = await strapiApi.getContactPage(); } = await strapiApi.getContactPage();
return ( return (
<> <>
{ <SubHeaderComponent header={{header1:header,description}} common={common}/> } { <SubHeaderComponent header1={header} description={description} /> }
{ contactUs && <ContactUsComponent contactUs={contactUs} /> } { contactUs && <ContactUsComponent contactUs={contactUs} /> }
{ google_maps && <GoogleMapsComponent config={google_maps} /> } { google_maps && <GoogleMapsComponent config={google_maps} /> }
{ subscribe && <SubscribeComponent config={subscribe} styleClass={"contact_subscribe_section"} /> } { subscribe && <SubscribeComponent config={subscribe} styleClass={"contact_subscribe_section"} /> }

View File

@ -1,5 +1,6 @@
import React from "react"; import React from "react";
import AosComponent from "@/components/aos.component"; import AosComponent from "@/components/aos.component";
import BlogPostsComponent from "@/components/blog.posts.component";
import FooterComponent from "@/components/footer.component"; import FooterComponent from "@/components/footer.component";
import SubscribeComponent from "@/components/subscribe.component"; import SubscribeComponent from "@/components/subscribe.component";
import strapiApi from "@/api/strapi/strapi-api"; import strapiApi from "@/api/strapi/strapi-api";
@ -12,14 +13,15 @@ export default async function About() {
header, header,
description, description,
questionsAndAnswers, questionsAndAnswers,
blogs,
subscribe, subscribe,
footer, footer
common
} = await strapiApi.getFaqPage(); } = await strapiApi.getFaqPage();
return ( return (
<> <>xxxxx
{ <SubHeaderComponent header={{header1:header,description}} common={common}/> } { <SubHeaderComponent header1={header} description={description} /> }
{ questionsAndAnswers && <FaqComponent config={questionsAndAnswers} /> } { questionsAndAnswers && <FaqComponent config={questionsAndAnswers} /> }
{ blogs && <BlogPostsComponent config={blogs} /> }
{ subscribe && <SubscribeComponent config={subscribe} /> } { subscribe && <SubscribeComponent config={subscribe} /> }
{ footer && <FooterComponent config={footer} /> } { footer && <FooterComponent config={footer} /> }
<AosComponent /> <AosComponent />

View File

@ -12,9 +12,6 @@
@import '../styles/custom-style'; @import '../styles/custom-style';
@import '../styles/special-classes'; @import '../styles/special-classes';
@import 'node_modules/aos/src/sass/aos.scss'; @import 'node_modules/aos/src/sass/aos.scss';
@import '../styles/block-with-image';
@import '../styles/block-with-left-image';
@import '../styles/block-with-right-image';
//<!-- Latest compiled and minified CSS --> //<!-- Latest compiled and minified CSS -->
//<link //<link

View File

@ -73,8 +73,8 @@ const generateIcons = ( ): IconDescriptor[] => {
export const metadata: Metadata = { export const metadata: Metadata = {
title: "Reverseyoga", title: "Yoga App",
description: "Reverseyoga - Yoga mindenkinek", description: "Yoga App",
icons: generateIcons(), icons: generateIcons(),
manifest: "./assets/images/favicon/manifest.json", manifest: "./assets/images/favicon/manifest.json",
other: { other: {

View File

@ -5,6 +5,7 @@ import AboutUsComponent from "@/components/about.us.component";
import OurSpecialitiesComponent from "@/components/our.specialities.component"; import OurSpecialitiesComponent from "@/components/our.specialities.component";
import ContactUsComponent from "@/components/contact.us.component"; import ContactUsComponent from "@/components/contact.us.component";
import PricingComponent from "@/components/pricing.component"; import PricingComponent from "@/components/pricing.component";
import FeedbackComponent from "@/components/feedbackComponent";
import BlogPostsComponent from "@/components/blog.posts.component"; import BlogPostsComponent from "@/components/blog.posts.component";
import FooterComponent from "@/components/footer.component"; import FooterComponent from "@/components/footer.component";
import SubscribeComponent from "@/components/subscribe.component"; import SubscribeComponent from "@/components/subscribe.component";
@ -15,8 +16,9 @@ import webApi from "@/api/web-client/web-api";
export default async function Home() { export default async function Home() {
const pageData = await webApi.getHomePage(); const pageData = await webApi.getHomePage();
console.info(JSON.stringify(pageData))
const { const {
common,
header, header,
ourServices, ourServices,
aboutUs, aboutUs,
@ -26,18 +28,18 @@ export default async function Home() {
blogs, blogs,
subscribeNow, subscribeNow,
footer, footer,
feedbacks
} = pageData; } = pageData;
return ( return (
<> <>
{ header && <MainHeaderComponent config={header} common={common} /> } { header && <MainHeaderComponent config={header}/> }
{ aboutUs && <AboutUsComponent data={aboutUs} /> } { aboutUs && <AboutUsComponent data={aboutUs} /> }
{ ourServices && <OurServicesComponent config={ourServices}/> } { ourServices && <OurServicesComponent config={ourServices}/> }
{ ourSpecialities && <OurSpecialitiesComponent config={ourSpecialities} /> } { ourSpecialities && <OurSpecialitiesComponent config={ourSpecialities} /> }
{ contactUs && <ContactUsComponent contactUs={contactUs} /> } { contactUs && <ContactUsComponent contactUs={contactUs} /> }
{ prices && <PricingComponent config={prices}/> } { prices && <PricingComponent config={prices}/> }
{/*{ feedbacks && <FeedbackComponent config={feedbacks} /> }*/} { feedbacks && <FeedbackComponent config={feedbacks} /> }
{ blogs && blogs.posts?.length && <BlogPostsComponent config={blogs} /> } { blogs && <BlogPostsComponent config={blogs} /> }
{ subscribeNow && <SubscribeComponent config={subscribeNow} /> } { subscribeNow && <SubscribeComponent config={subscribeNow} /> }
{ footer && <FooterComponent config={footer} /> } { footer && <FooterComponent config={footer} /> }
<AosComponent /> <AosComponent />

View File

@ -1,6 +1,7 @@
import React from "react"; import React from "react";
import AosComponent from "@/components/aos.component"; import AosComponent from "@/components/aos.component";
import PricingComponent from "@/components/pricing.component"; import PricingComponent from "@/components/pricing.component";
import BlogPostsComponent from "@/components/blog.posts.component";
import SubscribeComponent from "@/components/subscribe.component"; import SubscribeComponent from "@/components/subscribe.component";
import SubHeaderComponent from "@/components/subHeader.component"; import SubHeaderComponent from "@/components/subHeader.component";
import YogaDiscountComponent from "@/components/yogaDiscountComponent"; import YogaDiscountComponent from "@/components/yogaDiscountComponent";
@ -18,15 +19,16 @@ export default async function PricesPage( ) {
description, description,
price, price,
discount, discount,
blogs,
subscribe, subscribe,
footer, footer
common
} = await strapiApi.getPricesPage(); } = await strapiApi.getPricesPage();
return ( return (
<> <>
<SubHeaderComponent header={{header1:header,description}} common={common}/> <SubHeaderComponent header1={header} description={description}/>
{ price && <PricingComponent config={price}/> } { price && <PricingComponent config={price}/> }
{ discount && <YogaDiscountComponent config={discount} /> } { discount && <YogaDiscountComponent config={discount} /> }
{ blogs && <BlogPostsComponent config={blogs} /> }
{ subscribe && <SubscribeComponent config={subscribe} /> } { subscribe && <SubscribeComponent config={subscribe} /> }
{ footer && <FooterComponent config={footer} /> } { footer && <FooterComponent config={footer} /> }
<AosComponent /> <AosComponent />

View File

@ -110,8 +110,10 @@ export async function GET() {
// 'Uncomment this file and remove this line. You can delete this file when you are finished.', // 'Uncomment this file and remove this line. You can delete this file when you are finished.',
// }); // });
try { try {
console.info("get request")
strapiApi.getHomePage(); strapiApi.getHomePage();
console.info("begin")
await connectionPool.query(`BEGIN`); await connectionPool.query(`BEGIN`);
await seedUsers(); await seedUsers();
await seedCustomers(); await seedCustomers();

View File

@ -1,39 +0,0 @@
import React from "react";
import AosComponent from "@/components/aos.component";
import FooterComponent from "@/components/footer.component";
import SubscribeComponent from "@/components/subscribe.component";
import strapiApi from "@/api/strapi/strapi-api";
import SubHeaderComponent from "@/components/subHeader.component";
import SingleServiceComponent from "@/components/single.service.component";
import {sortServicesByPriority} from "@/util/sorting";
export default async function Services() {
const {
header,
description,
footer,
subscribeNow,
common,
services
} = await strapiApi.getServiceListPage();
const sortedServices = services ? [...services] : [];
sortedServices.sort( sortServicesByPriority )
return (
<>
<SubHeaderComponent header={{header1:header,description}} common={common}/>
{
sortedServices.map( (singleService,index) => {
return (
<SingleServiceComponent key={singleService.id} config={singleService} index={index}/>
)
})
}
{ subscribeNow && <SubscribeComponent config={subscribeNow} /> }
{ footer && <FooterComponent config={footer} /> }
<AosComponent />
</>
);
}
export const dynamic = 'force-dynamic'

View File

@ -1,11 +0,0 @@
import Link from 'next/link'
export default function NotFound() {
return (
<div>
<h2>Nem található</h2>
<p>Could not find requested resource</p>
<Link href="/">Vissza a kezdőoldalra</Link>
</div>
)
}

View File

@ -1,3 +0,0 @@
.article h1{
color: black;
}

View File

@ -1,74 +1,6 @@
import React from "react";
import strapiApi from "@/api/strapi/strapi-api";
import {BlocksContent} from "@strapi/blocks-react-renderer";
import SubscribeComponent from "@/components/subscribe.component";
import FooterComponent from "@/components/footer.component";
import SubHeaderComponent from "@/components/subHeader.component";
import AosComponent from "@/components/aos.component";
import styles from './page.module.css'
import NextBlocksRenderer from "@/components/next.blocks.renderer";
import clsx from "clsx";
import {notFound} from "next/navigation";
const rewriteStrapiImageUrlToNextImageUrl = (content: BlocksContent) =>{
console.info("content", content);
for(const item of content){
if ( item.type == 'image'){
const imageData = item.image;
const url = new URL(imageData.url);
imageData.url = strapiApi.getImageUrl(url.pathname);
}
}
return content;
}
export default async function ServiceArticlePage({params}: {
params: Promise<{ slug: string }>
}) {
const {slug} = await params
console.info("service slug",slug);
const servicePage = await strapiApi.getServicePage();
if (!servicePage) {
return notFound()
}
console.info("Servicepage found");
const {subscribeNow, footer, common} = servicePage;
const servicesByName = await strapiApi.getService(slug);
console.info("servicesByName",servicesByName);
if (!servicesByName || servicesByName.length === 0) {
return notFound();
}
const selectedService = servicesByName[0];
console.info("selected service",selectedService)
if ( !selectedService?.article?.length ) {
return notFound();
}
const article: BlocksContent = rewriteStrapiImageUrlToNextImageUrl( selectedService.article);
export default async function ServiceDetails() {
return ( return (
<> <h1>hello </h1>
{selectedService && selectedService.header && selectedService.description && )
<SubHeaderComponent header={{header1:selectedService.header, description: selectedService.description}} common={common}/>}
<section className={clsx( styles.article, 'mb-3')}>
<div className="container">
<div className={"row"}>
<div className={"col-lg-12 col-md-12 col-sm-12 col-xs-12"}>
<NextBlocksRenderer
content={article as BlocksContent}
/>
</div>
</div>
</div>
</section>
{subscribeNow && <SubscribeComponent config={subscribeNow}/>}
{footer && <FooterComponent config={footer}/>}
<AosComponent/>
</>
);
} }
export const dynamic = 'force-dynamic'

View File

@ -12,7 +12,7 @@ import SubHeaderComponent from "@/components/subHeader.component";
export default async function Services() { export default async function Services() {
const { const {
header = undefined, header,
description, description,
ourServices, ourServices,
contactUs, contactUs,
@ -20,12 +20,11 @@ export default async function Services() {
feedbacks, feedbacks,
blogs, blogs,
footer, footer,
subscribe, subscribe
common } = await strapiApi.getServicesPage();
} = await strapiApi.getServicesPage()
return ( return (
<> <>
<SubHeaderComponent header={{header1:header,description}} common={common}/> {header && description && <SubHeaderComponent header1={header} description={description} />}
{ ourServices && <OurServicesComponent config={ourServices} /> } { ourServices && <OurServicesComponent config={ourServices} /> }
{ contactUs && <ContactUsComponent contactUs={contactUs} />} { contactUs && <ContactUsComponent contactUs={contactUs} />}
{ ourSpecialities && <OurSpecialitiesComponent config={ourSpecialities} /> } { ourSpecialities && <OurSpecialitiesComponent config={ourSpecialities} /> }

View File

@ -2,17 +2,13 @@ import YogaImageComponent from "@/components/yoga.image.component";
import { import {
YogaAboutUsWithBoxesComponent_Plain YogaAboutUsWithBoxesComponent_Plain
} from "@/types/generated-strapi-interfaces/api/yoga-about-us-with-boxes-component"; } from "@/types/generated-strapi-interfaces/api/yoga-about-us-with-boxes-component";
import {StrapiFile} from "@/types/types";
import strapiApi from "@/api/strapi/strapi-api";
export interface Props{ export interface Props{
config: YogaAboutUsWithBoxesComponent_Plain config: YogaAboutUsWithBoxesComponent_Plain
} }
export default function AboutUsWithBoxesComponent({ config: {title,header,description, image, box1,box2,box3,box4}}: Props){ export default function AboutUsWithBoxesComponent({ config: {title,header,description, box1,box2,box3,box4}}: Props){
const imageFile: StrapiFile = image as StrapiFile;
const imageUrl = strapiApi.getImageUrl(imageFile?.url)
return ( return (
<section className="aboutpage_aboutus_section"> <section className="aboutpage_aboutus_section">
@ -20,7 +16,7 @@ export default function AboutUsWithBoxesComponent({ config: {title,header,descri
<div className="row"> <div className="row">
<div className="col-lg-7 col-md-6 col-sm-12 col-xs-12"> <div className="col-lg-7 col-md-6 col-sm-12 col-xs-12">
<div className="aboutpage_aboutus_image"> <div className="aboutpage_aboutus_image">
<figure className="mb-0"><YogaImageComponent src={imageUrl} alt="" className="img-fluid" /></figure> <figure className="mb-0"><YogaImageComponent src="./assets/images/about_page_aboutus_image.png" alt="" className="img-fluid" /></figure>
</div> </div>
<figure className="aboutus_top_shape left_shape mb-0"> <figure className="aboutus_top_shape left_shape mb-0">
<YogaImageComponent src="./assets/images/aboutus_top_shape.png" alt="" className="img-fluid" /> <YogaImageComponent src="./assets/images/aboutus_top_shape.png" alt="" className="img-fluid" />

View File

@ -10,6 +10,7 @@ export default function AchievementsComponent({
title,header,description title,header,description
} }
}: Props){ }: Props){
console.info("achievements",achievements)
return ( return (
<section className="achievement_section"> <section className="achievement_section">
<div className="container"> <div className="container">

View File

@ -1,4 +0,0 @@
.textCenter{
text-align: center;
}

View File

@ -3,10 +3,6 @@ import {YogaAchivement_Plain} from "@/types/generated-strapi-interfaces/api/yoga
import {StrapiFile} from "@/types/types"; import {StrapiFile} from "@/types/types";
import strapiApi from "@/api/strapi/strapi-api"; import strapiApi from "@/api/strapi/strapi-api";
import styles from './achievements.item.component.module.css';
import clsx from "clsx";
export interface Props{ export interface Props{
achievement: YogaAchivement_Plain achievement: YogaAchivement_Plain
@ -19,7 +15,7 @@ const imageFile: StrapiFile = image as StrapiFile;
return ( return (
<div className="col-lg-2 col-md-4 col-sm-6 col-xs-12"> <div className="col-lg-2 col-md-4 col-sm-6 col-xs-12">
<div className="logo_wrapper"> <div className="logo_wrapper">
<figure className="mb-0"><YogaImageComponent src={strapiApi.getImageUrl(imageFile?.url)} alt="" className={clsx(styles.textCenter, "img-fluid")}/></figure> <figure className="mb-0"><YogaImageComponent src={strapiApi.getImageUrl(imageFile?.url)} alt="" className="img-fluid"/></figure>
<div className="logo_content"> <div className="logo_content">
{description} {description}
</div> </div>

View File

@ -1,35 +0,0 @@
import {ButtonConfig, ImageConfig} from "@/types/types";
import {BlocksContent} from "@strapi/blocks-react-renderer";
import BlockWithRightImage from "@/components/block.with.right.image.component";
import BlockWithLeftImage from "@/components/block.with.left.image.component";
export interface BlockWithImageComponentProps {
id?: string;
title?: string;
header?: string;
block: BlocksContent;
image: ImageConfig;
button?: ButtonConfig;
}
export default function BlockWithImageComponent({
block,
image,
id,
title,
header,
button
}: BlockWithImageComponentProps) {
return (
<>
{image?.position == 'Right' && <BlockWithRightImage
block={block} image={image} id={id} title={title}
header={header}
button={button}/>}
{image?.position == 'Left' && <BlockWithLeftImage block={block} image={image} id={id} title={title}
header={header}
button={button}/>}
</>
);
}

View File

@ -1,6 +0,0 @@
.leftImage {
/*border-top-left-radius: 200px;*/
/*border-bottom-right-radius: 200px;*/
/*margin: -150px 12px 12px 0;*/
}

View File

@ -1,50 +0,0 @@
import YogaImageComponent from "@/components/yoga.image.component";
import NextBlocksRenderer from "@/components/next.blocks.renderer";
import {BlockWithImageComponentProps} from "@/components/block.with.image.component";
import styles from './block.with.left.image.component.module.css';
import clsx from "clsx";
export default function BlockWithLeftImage ( {
id,title,header, image: {
url,
},block,button
} : BlockWithImageComponentProps){
return (
<section className={clsx("block_with_left_image_section","block_with_image","block_with_left_image",styles.blockWithLeftImage)} id={id}>
<div className="container">
<div className="block_with_left_image_box">
<div className="row">
{ url && <div className="block_with_left_image_image d-lg-none d-md-none col-sm-12 col-xs-12">
<figure className="mb-0">
<YogaImageComponent src={url} alt=""
className={clsx("img-fluid", styles.leftImage)}/>
</figure>
</div>
}
<div className="col-lg-12 col-md-12 col-sm-12 col-xs-12" data-aos="fade-up">
<div className={ clsx("block_with_image_content","block_with_image_content","block_with_left_image_content",styles.blockLeftblock_with_imageContent)}>
{url && <div className="block_with_left_image_image d-lg-block d-md-block d-sm-none d-xs-none d-none">
<figure className="mb-0"><YogaImageComponent src={url} alt="" className={clsx("img-fluid", "float-left", styles.leftImage)}/></figure>
</div>
}
{title && <h5>{title}</h5> }
{header && <h2>{header}</h2> }
<NextBlocksRenderer content={ block } />
<div className="btn_wrapper">
{button && <a href={button.link} className="text-decoration-none read_more_btn">{button.label}</a>}
</div>
</div>
</div>
</div>
</div>
<figure className="block_with_image_left_shape left_shape mb-0">
<YogaImageComponent src="./assets/images/our_block_with_image_shape.png" alt="" className="img-fluid" />
</figure>
</div>
</section>
)
}

View File

@ -1,4 +0,0 @@
.rightImage {
}

View File

@ -1,53 +0,0 @@
import YogaImageComponent from "@/components/yoga.image.component";
import {BlockWithImageComponentProps} from "@/components/block.with.image.component";
import NextBlocksRenderer from "@/components/next.blocks.renderer";
import styles from './block.with.right.image.component.module.css';
import clsx from "clsx";
export default function BlockWithRightImage({
id, title, header, block, button, image: {
url,
},
}: BlockWithImageComponentProps) {
return (
<section className={clsx("block_with_right_image_section","block_with_image","block_with_right_image")} id={id}>
<div className="container">
<div className="block_with_image_box">
<div className="row">
<div className="col-lg-12 col-md-12 col-sm-12 col-xs-12" data-aos="fade-up">
<div className={ clsx("block_with_right_image_content","block-with-image-content","block-with-right-image-content")}>
{
url && <div className="block_with_right_image_image d-lg-block d-md-block d-sm-none d-xs-none d-none">
<figure className="mb-0">
<YogaImageComponent src={url} alt=""
className={clsx("img-fluid", "float-right", styles.rightImage)}/>
</figure>
</div>
}
{title && <h5>{title}</h5>}
{header && <h2>{header}</h2>}
<NextBlocksRenderer content={block}/>
<div className="btn_wrapper">
{button && <a href={button.link}
className="text-decoration-none read_more_btn">{button.label}</a>}
</div>
</div>
</div>
{ url && <div className="block_with_right_image_image d-lg-none d-md-none col-sm-12 col-xs-12">
<figure className="mb-0">
<YogaImageComponent src={url} alt=""
className={clsx("img-fluid", "float-right", styles.rightImage)}/>
</figure>
</div>
}
</div>
</div>
<figure className="block_with_right_image_right_shape right_shape mb-0">
<YogaImageComponent src="./assets/images/our_block_with_image_shape.png" alt="" className="img-fluid"/>
</figure>
</div>
</section>
)
}

View File

@ -12,7 +12,6 @@ const pathToBreadCrumbs = (path: string) => {
'services' : 'Szolgáltatásaim', 'services' : 'Szolgáltatásaim',
'prices' : 'Áraim', 'prices' : 'Áraim',
'faq' : 'GYIK', 'faq' : 'GYIK',
'serviceList' : 'Szolgáltatások',
} }
if ( mapping.hasOwnProperty(path)){ if ( mapping.hasOwnProperty(path)){
return mapping[path]; return mapping[path];
@ -25,6 +24,9 @@ const NextBreadcrumb = () => {
const paths = usePathname() const paths = usePathname()
const pathNames = paths.split('/').filter( path => path ) const pathNames = paths.split('/').filter( path => path )
return ( return (
<div className="btn_wrapper"> <div className="btn_wrapper">
<span className="sub_home_span">{pathToBreadCrumbs( "/" )} </span> <span className="sub_home_span">{pathToBreadCrumbs( "/" )} </span>

View File

@ -1,8 +1,6 @@
import Link from "next/link"; import Link from "next/link";
import YogaImageComponent from "@/components/yoga.image.component"; import YogaImageComponent from "@/components/yoga.image.component";
import {YogaFooter_Plain} from "@/types/generated-strapi-interfaces/api/yoga-footer"; import {YogaFooter_Plain} from "@/types/generated-strapi-interfaces/api/yoga-footer";
import {StrapiFile} from "@/types/types";
import strapiApi from "@/api/strapi/strapi-api";
export interface Props{ export interface Props{
config: YogaFooter_Plain config: YogaFooter_Plain
@ -16,13 +14,10 @@ const FooterComponent = ({ config: {
contactUsEmail, contactUsEmail,
contactUsLocation, contactUsLocation,
contactUsPhoneNumber, contactUsPhoneNumber,
copyRight, copyRight
logo = undefined
} }: Props) => { } }: Props) => {
const imageFile: StrapiFile = logo as StrapiFile;
const imageUrl = strapiApi.getImageUrl(imageFile?.url)
console.info("imageUrl", imageUrl);
return (<section className="footer-section" id="footer_section"> return (<section className="footer-section" id="footer_section">
<div className="container"> <div className="container">
@ -31,7 +26,7 @@ const FooterComponent = ({ config: {
<div className="col-lg-3 col-md-4 col-sm-6 col-xs-12 d-lg-block d-none"> <div className="col-lg-3 col-md-4 col-sm-6 col-xs-12 d-lg-block d-none">
<div className="footer_logo"> <div className="footer_logo">
<Link href="/index.html" className="text-decoration-none"> <Link href="/index.html" className="text-decoration-none">
<figure className="mb-0"><YogaImageComponent src={imageUrl} alt="" <figure className="mb-0"><YogaImageComponent src="/assets/images/footer_logo.png" alt=""
className="img-fluid"/></figure> className="img-fluid"/></figure>
</Link> </Link>
</div> </div>

View File

@ -1,69 +0,0 @@
import React from 'react';
interface ListingComponentProps {
text?: string;
}
const ListingComponent: React.FC<ListingComponentProps> = ({ text }) => {
if (!text) {
return null;
}
const lines = text.split('\n');
const elements: React.ReactNode[] = [];
let currentParagraph: string[] = [];
let currentList: React.ReactNode[] = [];
const flushParagraph = () => {
if (currentParagraph.length > 0) {
elements.push(<p key={elements.length}>{currentParagraph.join('\n')}</p>);
currentParagraph = [];
}
};
const flushList = () => {
if (currentList.length > 0) {
elements.push(<ul key={elements.length}>{currentList}</ul>);
currentList = [];
}
};
let currentListItemContent: string[] = [];
const flushListItem = () => {
if(currentListItemContent.length > 0) {
currentList.push(<li key={currentList.length}>{currentListItemContent.join('\n')}</li>);
currentListItemContent = [];
}
}
for (const line of lines) {
const trimmedLine = line.trim();
if (trimmedLine.startsWith('- ') || trimmedLine.startsWith('* ')) {
flushParagraph(); // End any ongoing paragraph
flushListItem(); // End previous list item
currentListItemContent.push(trimmedLine.substring(2));
} else if (trimmedLine === '') {
flushListItem();
flushList(); // An empty line ends the list
} else {
if (currentList.length > 0 || currentListItemContent.length > 0) {
// This line belongs to the current list item
currentListItemContent.push(line);
} else {
// This is a paragraph line
flushList();
currentParagraph.push(line);
}
}
}
flushListItem();
flushList();
flushParagraph();
return <>{elements}</>;
};
export default ListingComponent;

View File

@ -2,32 +2,22 @@ import YogaImageComponent from "@/components/yoga.image.component";
import {YogaMainHeaderComponent_Plain} from "@/types/generated-strapi-interfaces/api/yoga-main-header-component"; import {YogaMainHeaderComponent_Plain} from "@/types/generated-strapi-interfaces/api/yoga-main-header-component";
import {MAIN_MENU} from "@/util/const"; import {MAIN_MENU} from "@/util/const";
import Nav from "@/components/nav.component"; import Nav from "@/components/nav.component";
import {StrapiFile} from "@/types/types";
import strapiApi from "@/api/strapi/strapi-api";
import { YogaCommon_Plain } from "@/types/generated-strapi-interfaces/api/yoga-common";
export interface Props{ export interface Props{
config: YogaMainHeaderComponent_Plain, config: YogaMainHeaderComponent_Plain
common?: YogaCommon_Plain
} }
const MainHeaderComponent = ({ config: { const MainHeaderComponent = ({ config: {
title, title,
header, header,
description, description,
button, button,
headerIType, headerIType
image
},common}: Props) => { }}: Props) => {
const imageFile: StrapiFile = image as StrapiFile;
const imageSrc = imageFile ? strapiApi.getImageUrl(imageFile?.url): undefined;
const logoImageFile: StrapiFile = (common?.logoImage) as StrapiFile;
const logoImageSrc = logoImageFile ? strapiApi.getImageUrl(logoImageFile.url) : undefined;
return ( return (
<div className="banner-section-outer"> <div className="banner-section-outer">
<header> <header>
<Nav menuItems={MAIN_MENU} imageSrc={logoImageSrc} /> <Nav menuItems={MAIN_MENU} />
</header> </header>
{/*<!-- SOCIAL ICONS -->*/} {/*<!-- SOCIAL ICONS -->*/}
<div className="social-icons left_icons float-left d-table" data-aos="fade-down"> <div className="social-icons left_icons float-left d-table" data-aos="fade-down">
@ -64,7 +54,7 @@ const MainHeaderComponent = ({ config: {
<div className="col-lg-6 col-md-6 col-sm-12 col-xs-12"> <div className="col-lg-6 col-md-6 col-sm-12 col-xs-12">
<div className="banner-section-image"> <div className="banner-section-image">
<figure className="mb-0"> <figure className="mb-0">
<YogaImageComponent src={imageSrc!} alt="" /> <YogaImageComponent src="/assets/images/banner_right_image.png" alt="" />
</figure> </figure>
</div> </div>
</div> </div>

View File

@ -1,22 +1,23 @@
"use client" "use client"
import {FC} from "react";
import YogaImageComponent from "@/components/yoga.image.component"; import YogaImageComponent from "@/components/yoga.image.component";
import clsx from "clsx"; import clsx from "clsx";
import Link from "next/link"; import Link from "next/link";
export interface MenuItem { export interface MenuItem{
href?: string; href?: string;
label: string; label: string;
children?: MenuItem[]; children?: MenuItem[];
active?: boolean, active?: boolean,
styleClass?: string; styleClass?: string;
} }
export interface Props{
export interface Props {
menuItems: MenuItem[]; menuItems: MenuItem[];
imageSrc?: string;
} }
const Nav = ({menuItems, imageSrc}: Props) => { const Nav: FC<Props> = ({menuItems}:Props) => {
return ( return (
<header> <header>
@ -24,7 +25,7 @@ const Nav = ({menuItems, imageSrc}: Props) => {
<div className="container-fluid"> <div className="container-fluid">
<nav className="navbar navbar-expand-lg navbar-light p-0"> <nav className="navbar navbar-expand-lg navbar-light p-0">
<Link className="navbar-brand" href="/"> <Link className="navbar-brand" href="/">
<figure className="mb-0"> {imageSrc && <YogaImageComponent src={imageSrc} alt=""/>} <figure className="mb-0"><YogaImageComponent src="/assets/images/yogastic_logo.png" alt=""/>
</figure> </figure>
</Link> </Link>
<button className="navbar-toggler collapsed" type="button" data-toggle="collapse" <button className="navbar-toggler collapsed" type="button" data-toggle="collapse"
@ -36,8 +37,7 @@ const Nav = ({menuItems, imageSrc}: Props) => {
</button> </button>
<div className="collapse navbar-collapse" id="navbarSupportedContent"> <div className="collapse navbar-collapse" id="navbarSupportedContent">
<ul className="navbar-nav"> <ul className="navbar-nav">
{menuItems.map((menuItem, index) => <MenuItemComponent {menuItems.map( (menuItem,index) => <MenuItemComponent key={"nav"+menuItem.href+"_"+index} menuItem={menuItem} />)}
key={"nav" + menuItem.href + "_" + index} menuItem={menuItem}/>)}
</ul> </ul>
</div> </div>
</nav> </nav>
@ -47,35 +47,32 @@ const Nav = ({menuItems, imageSrc}: Props) => {
); );
} }
interface MenuItemProps { interface MenuItemProps{
menuItem: MenuItem, menuItem: MenuItem,
dropdownItem?: boolean, dropdownItem?: boolean,
} }
const MenuItemComponent: FC<MenuItemProps> = ({menuItem, dropdownItem}: MenuItemProps) => {
const MenuItemComponent = ({menuItem, dropdownItem}: MenuItemProps) => { if ( !menuItem ){
if (!menuItem) {
return (<></>); return (<></>);
} }
if (!menuItem.children || menuItem.children.length == 0) { if ( !menuItem.children || menuItem.children.length == 0 ){
return ( return (
// <li className="nav-item active"> // <li className="nav-item active">
<li className={clsx("nav-item", {"active": menuItem.active})}> <li className={clsx("nav-item", {"active": menuItem.active})}>
<a className={clsx("nav-link", {"dropdown-item": dropdownItem}, menuItem.styleClass)} <a className={clsx("nav-link", {"dropdown-item":dropdownItem},menuItem.styleClass)} href={menuItem.href}>{menuItem.label}</a>
href={menuItem.href!}>{menuItem.label}</a>
</li> </li>
); );
} }
return ( return (
<li className={clsx("nav-item", "dropdown", {"active": menuItem.active})}> <li className={clsx("nav-item", "dropdown",{"active": menuItem.active})}>
<a className="nav-link dropdown-toggle dropdown-color navbar-text-color" href="#" <a className="nav-link dropdown-toggle dropdown-color navbar-text-color" href="#"
role="button" data-toggle="dropdown" aria-haspopup="true" role="button" data-toggle="dropdown" aria-haspopup="true"
aria-expanded="false">{menuItem.label}</a> aria-expanded="false">{menuItem.label}</a>
<div className="dropdown-menu drop-down-content"> <div className="dropdown-menu drop-down-content">
<ul className="list-unstyled drop-down-pages"> <ul className="list-unstyled drop-down-pages">
{ {
menuItem.children.map((item, index) => <MenuItemComponent menuItem.children.map((item,index) => <MenuItemComponent key={"child_"+item.href+"_"+index} menuItem={item} dropdownItem={true}/>)
key={"child_" + item.href + "_" + index} menuItem={item} dropdownItem={true}/>)
} }
</ul> </ul>
</div> </div>

View File

@ -1,28 +0,0 @@
'use client';
import {BlocksContent, BlocksRenderer} from "@strapi/blocks-react-renderer";
import React from "react";
import YogaImageComponent from "@/components/yoga.image.component";
export interface Props{
content: BlocksContent;
}
const NextBlocksRenderer = ({ content }: Props) => {
return (
<BlocksRenderer
content={content}
blocks={{
image: ({image}) => {
return (
<YogaImageComponent
src={image.url}
// width={image.width}
// height={image.height}
alt={image.alternativeText || ""}
/>
);
}
}}
/>);
}
export default NextBlocksRenderer;

View File

@ -6,7 +6,6 @@ import "slick-carousel/slick/slick.css";
import "slick-carousel/slick/slick-theme.css"; import "slick-carousel/slick/slick-theme.css";
import Slider ,{Settings} from "react-slick"; import Slider ,{Settings} from "react-slick";
import OurServiceItemComponent from "@/components/our.services.item.component"; import OurServiceItemComponent from "@/components/our.services.item.component";
import {sortServicesByPriority} from "@/util/sorting";
export interface Props{ export interface Props{
@ -68,8 +67,7 @@ const OurServiceComponent = ({config: {title,header,description,services}}: Prop
} }
] ]
}; };
const sortedServices = services ? [...services] : []; console.info(settings)
sortedServices.sort( sortServicesByPriority )
return ( return (
<section className="services_section"> <section className="services_section">
<div className="container"> <div className="container">
@ -91,7 +89,7 @@ const OurServiceComponent = ({config: {title,header,description,services}}: Prop
{/*</div>*/} {/*</div>*/}
<Slider {...settings}> <Slider {...settings}>
{sortedServices.map( {services.map(
itemConfig => itemConfig =>
<OurServiceItemComponent config={itemConfig} key={itemConfig.id} /> <OurServiceItemComponent config={itemConfig} key={itemConfig.id} />
)} )}

View File

@ -31,11 +31,6 @@
padding-right: 0; padding-right: 0;
} }
.roundedImage{
border-top-left-radius: 60px;
border-bottom-right-radius: 60px;
}
/*:global(div.slick-active):nth-last-child(n!*){*/ /*:global(div.slick-active):nth-last-child(n!*){*/
/* padding-left: 6px;*/ /* padding-left: 6px;*/
/* padding-right: 0;*!*/ /* padding-right: 0;*!*/

View File

@ -3,19 +3,13 @@ import {YogaSingleService_Plain} from "@/types/generated-strapi-interfaces/api/y
import {StrapiFile} from "@/types/types"; import {StrapiFile} from "@/types/types";
import strapiApi from "@/api/strapi/strapi-api"; import strapiApi from "@/api/strapi/strapi-api";
import styles from './our.services.item.component.module.css' import styles from './our.services.item.component.module.css'
import Link from "next/link";
import classNames from "classnames";
export interface Props { export interface Props {
config: YogaSingleService_Plain config: YogaSingleService_Plain
} }
const OurServiceItemComponent = ({config: {header,description,image,name}}: Props) => { const OurServiceItemComponent = ({config: {header,description,image}}: Props) => {
const imageFile: StrapiFile = image as StrapiFile; const imageFile: StrapiFile = image as StrapiFile;
if (!imageFile || !imageFile.url) {
return null
}
const path = '/serviceList#' + name;
return ( return (
<div className={styles.serviceSlide}> <div className={styles.serviceSlide}>
@ -23,15 +17,15 @@ const OurServiceItemComponent = ({config: {header,description,image,name}}: Prop
<div className="services_box_content"> <div className="services_box_content">
<div className="services_box_upper_portion"> <div className="services_box_upper_portion">
<figure className="mb-0"> <figure className="mb-0">
<YogaImageComponent src={strapiApi.getImageUrl(imageFile.url)} alt="" className={classNames(styles.roundedImage,"img-fluid" )}/> <YogaImageComponent src={strapiApi.getImageUrl(imageFile?.url)} alt="" className="img-fluid"/>
</figure> </figure>
</div> </div>
<div className="services_box_lower_portion"> <div className="services_box_lower_portion">
<h3>{header}</h3> <h3>{header}</h3>
<p>{description}</p> <p>{description}</p>
<div className="btn_wrapper"> <div className="btn_wrapper">
<Link href={path} className="text-decoration-none"><i <a href="/services" className="text-decoration-none"><i
className="fa-solid fa-arrow-right" aria-hidden="true"></i></Link> className="fa-solid fa-arrow-right" aria-hidden="true"></i></a>
</div> </div>
</div> </div>
</div> </div>

View File

@ -1,8 +1,6 @@
import YogaImageComponent from "@/components/yoga.image.component"; import YogaImageComponent from "@/components/yoga.image.component";
import OurSpecialitiesItemComponent from "@/components/our.specialities.item.component"; import OurSpecialitiesItemComponent from "@/components/our.specialities.item.component";
import {YogaSpecialitiesComponent_Plain} from "@/types/generated-strapi-interfaces/api/yoga-specialities-component"; import {YogaSpecialitiesComponent_Plain} from "@/types/generated-strapi-interfaces/api/yoga-specialities-component";
import {StrapiFile} from "@/types/types";
import strapiApi from "@/api/strapi/strapi-api";
export interface Props{ export interface Props{
config: YogaSpecialitiesComponent_Plain config: YogaSpecialitiesComponent_Plain
@ -16,14 +14,8 @@ const OurSpecialitiesComponent = ({ config: { title,header,description,
right1, right1,
right2, right2,
right3, right3,
right4, right4
image
} }: Props) => { } }: Props) => {
const imageFile: StrapiFile = image as StrapiFile;
const imageUrl = strapiApi.getImageUrl(imageFile?.url)
return ( return (
<section className="our_specialties_section"> <section className="our_specialties_section">
@ -51,7 +43,7 @@ const OurSpecialitiesComponent = ({ config: { title,header,description,
</div> </div>
<div className="col-lg-6 col-md-4 col-sm-6 col-xs-12 d-md-block d-none"> <div className="col-lg-6 col-md-4 col-sm-6 col-xs-12 d-md-block d-none">
<figure className="specialties_image mb-0"> <figure className="specialties_image mb-0">
<YogaImageComponent src={imageUrl} alt="" className="img-fluid" /> <YogaImageComponent src="/assets/images/specialties_image.png" alt="" className="img-fluid" />
</figure> </figure>
</div> </div>
<div className="col-lg-3 col-md-4 col-sm-6 col-xs-12" data-aos="fade-right"> <div className="col-lg-3 col-md-4 col-sm-6 col-xs-12" data-aos="fade-right">

View File

@ -7,10 +7,11 @@ export interface Props{
config: YogaPrice_Plain config: YogaPrice_Plain
} }
export function PriceItemComponent({config: {header, description, option1,option2,price,pricePostfix, icon, image,buttonText}} : Props){ export function PriceItemComponent({config: {header,option1,option2,price,icon, image,buttonText}} : Props){
// there are some issues with the strapi generated types // there are some issues with the strapi generated types
const iconFile: StrapiFile = icon as StrapiFile; const iconFile: StrapiFile = icon as StrapiFile;
const imageFile: StrapiFile = image as StrapiFile; const imageFile: StrapiFile = image as StrapiFile;
console.info("image:",strapiApi.getImageUrl(imageFile?.url));
return ( return (
<div className="col-lg-4 col-md-4 col-sm-6 col-xs-12"> <div className="col-lg-4 col-md-4 col-sm-6 col-xs-12">
<div className="pricing_plans_box_content"> <div className="pricing_plans_box_content">
@ -27,7 +28,6 @@ export function PriceItemComponent({config: {header, description, option1,option
</div> </div>
<div className="pricing_plans_box_lower_portion"> <div className="pricing_plans_box_lower_portion">
<h3>{header}</h3> <h3>{header}</h3>
<p className={'text-center'}>{description}</p>
<ul className="list-unstyled"> <ul className="list-unstyled">
<li> <li>
<i className="fa-solid fa-check" aria-hidden="true"></i>{option1} <i className="fa-solid fa-check" aria-hidden="true"></i>{option1}
@ -38,7 +38,7 @@ export function PriceItemComponent({config: {header, description, option1,option
</ul> </ul>
<div className="pricing_plans_span_wrapper"> <div className="pricing_plans_span_wrapper">
<span className="price">{price} FT</span> <span className="price">{price} FT</span>
{ pricePostfix && <span className="per_month">{pricePostfix}</span> } <span className="per_month">/per month</span>
</div> </div>
<div className="btn_wrapper"> <div className="btn_wrapper">
<a className="enroll_now_btn text-decoration-none" href="/pricing.html">{buttonText}</a> <a className="enroll_now_btn text-decoration-none" href="/pricing.html">{buttonText}</a>

View File

@ -1,30 +0,0 @@
import {YogaSingleService_Plain} from "@/types/generated-strapi-interfaces/api/yoga-single-service";
import React from "react";
import BlockWithImageComponent from "@/components/block.with.image.component";
import {ImagePosition, StrapiFile} from "@/types/types";
import strapiApi from "@/api/strapi/strapi-api";
export interface Props {
config: YogaSingleService_Plain,
index: number
}
const SingleService = ({config, index}: Props) => {
if (!config || !config.article) {
return null; // or some fallback UI
}
const {article, articleImage, name, header} = config;
let imageUrl: string | undefined = undefined;
const strapiFile = articleImage as StrapiFile;
imageUrl = strapiApi.getImageUrl(strapiFile?.url);
return (
<BlockWithImageComponent id={name} block={article}
image={{position: index % 2 ? ImagePosition.Left : ImagePosition.Right, url: imageUrl}}
header={header}/>
);
}
export default SingleService;

View File

@ -3,31 +3,14 @@ import Nav from "@/components/nav.component";
import {MAIN_MENU} from "@/util/const"; import {MAIN_MENU} from "@/util/const";
import {HeaderB} from "@/types/generated-strapi-interfaces/components/yoga-site/HeaderB"; import {HeaderB} from "@/types/generated-strapi-interfaces/components/yoga-site/HeaderB";
import NextBreadcrumb from "@/components/breadcrumbs.component"; import NextBreadcrumb from "@/components/breadcrumbs.component";
import {YogaCommon_Plain} from "@/types/generated-strapi-interfaces/api/yoga-common";
import strapiApi from "@/api/strapi/strapi-api";
import {StrapiFile} from "@/types/types";
export type Props = { export type Props = HeaderB ;
header: HeaderB,
common?: YogaCommon_Plain
} ;
const SubHeaderComponent = ( {
header:{ header1,description},common }: Props) =>{
let logoImageSrc: string|undefined = undefined;
const logoImage = common && common.logoImage;
if ( logoImage ){
const logoImageFile: StrapiFile = logoImage as StrapiFile;
logoImageSrc = strapiApi.getImageUrl(logoImageFile?.url) ;
}
const SubHeaderComponent = ({header1,description}: Props) =>{
return ( return (
<div className="sub-banner-section"> <div className="sub-banner-section">
<Nav menuItems={MAIN_MENU} imageSrc={logoImageSrc} /> <Nav menuItems={MAIN_MENU} />
<section className="banner-section"> <section className="banner-section">
<div className="container"> <div className="container">
<div className="row"> <div className="row">
@ -59,6 +42,3 @@ const SubHeaderComponent = ( {
} }
export default SubHeaderComponent; export default SubHeaderComponent;
export const dynamic = 'force-dynamic'

View File

@ -1,4 +0,0 @@
.roundedImage img{
border-bottom-right-radius: 60px;
}

View File

@ -3,22 +3,14 @@ import {
YogaSubscribeNowComponent_Plain YogaSubscribeNowComponent_Plain
} from "@/types/generated-strapi-interfaces/api/yoga-subscribe-now-component"; } from "@/types/generated-strapi-interfaces/api/yoga-subscribe-now-component";
import clsx from "clsx"; import clsx from "clsx";
import {StrapiFile} from "@/types/types";
import strapiApi from "@/api/strapi/strapi-api";
import styles from './subscribe.component.module.css'
export interface Props{ export interface Props{
config: YogaSubscribeNowComponent_Plain, config: YogaSubscribeNowComponent_Plain,
styleClass?: string, styleClass?: string
} }
const SubscribeComponent = ({ const SubscribeComponent = ({
config: {title,header,placeHolderEmail,buttonSubscribeLabel, image = undefined}, config: {title,header,placeHolderEmail,buttonSubscribeLabel},
styleClass styleClass
}: Props) => { }: Props) => {
const imageFile: StrapiFile = image as StrapiFile;
if (!imageFile || !imageFile.url) {
return null
}
return ( return (
<section className={clsx("subscribe_section",styleClass)}> <section className={clsx("subscribe_section",styleClass)}>
<div className="container"> <div className="container">
@ -40,8 +32,8 @@ const SubscribeComponent = ({
</div> </div>
</div> </div>
<div className="col-lg-5 col-md-5 col-sm-6 col-xs-12"> <div className="col-lg-5 col-md-5 col-sm-6 col-xs-12">
<figure className={clsx(styles.roundedImage,"subscribe_image","mb-0",)}> <figure className="subscribe_image mb-0">
<YogaImageComponent src={strapiApi.getImageUrl(imageFile.url)} alt=""/> <YogaImageComponent src="/assets/images/subscribe_image.png" alt=""/>
</figure> </figure>
</div> </div>
</div> </div>

View File

@ -1,5 +1,5 @@
import TextWithRightImage from "@/components/text.with.right.image.component"; import TextWithRightImage from "@/components/text.with.right.image.component";
import TextWithLeftImage from "@/components/text.with.left.image.component"; import TextWithLeftImage from "@/components/text.with.right.left.component";
import {YogaTextWithImageComponent_Plain} from "@/types/generated-strapi-interfaces/api/yoga-text-with-image-component"; import {YogaTextWithImageComponent_Plain} from "@/types/generated-strapi-interfaces/api/yoga-text-with-image-component";
export interface Props{ export interface Props{

View File

@ -2,7 +2,6 @@ import YogaImageComponent from "@/components/yoga.image.component";
import {YogaTextWithImageComponent_Plain} from "@/types/generated-strapi-interfaces/api/yoga-text-with-image-component"; import {YogaTextWithImageComponent_Plain} from "@/types/generated-strapi-interfaces/api/yoga-text-with-image-component";
import {StrapiFile} from "@/types/types"; import {StrapiFile} from "@/types/types";
import strapiApi from "@/api/strapi/strapi-api"; import strapiApi from "@/api/strapi/strapi-api";
import ListingComponent from "./listing.component";
export interface Props{ export interface Props{
config: YogaTextWithImageComponent_Plain config: YogaTextWithImageComponent_Plain
@ -23,7 +22,7 @@ export default function TextWithRightImage ({config: {
<div className="mission_content"> <div className="mission_content">
<h5>{title}</h5> <h5>{title}</h5>
<h2>{header}</h2> <h2>{header}</h2>
<ListingComponent text={description} /> <p>{description}</p>
<div className="btn_wrapper"> <div className="btn_wrapper">
{button && <a href={button.link} className="text-decoration-none read_more_btn">{button.label}</a>} {button && <a href={button.link} className="text-decoration-none read_more_btn">{button.label}</a>}
</div> </div>

View File

@ -2,7 +2,6 @@ import YogaImageComponent from "@/components/yoga.image.component";
import {YogaTextWithImageComponent_Plain} from "@/types/generated-strapi-interfaces/api/yoga-text-with-image-component"; import {YogaTextWithImageComponent_Plain} from "@/types/generated-strapi-interfaces/api/yoga-text-with-image-component";
import {StrapiFile} from "@/types/types"; import {StrapiFile} from "@/types/types";
import strapiApi from "@/api/strapi/strapi-api"; import strapiApi from "@/api/strapi/strapi-api";
import ListingComponent from "@/components/listing.component";
export interface Props{ export interface Props{
config: YogaTextWithImageComponent_Plain config: YogaTextWithImageComponent_Plain
@ -30,7 +29,7 @@ export default function TextWithLeftImage ({config: {
<div className="vision_content"> <div className="vision_content">
<h5>{title}</h5> <h5>{title}</h5>
<h2>{header}</h2> <h2>{header}</h2>
<ListingComponent text={description} /> <p>{description}</p>
<div className="btn_wrapper"> <div className="btn_wrapper">
{button && <a href={button.link} className="text-decoration-none read_more_btn">{button.label}</a>} {button && <a href={button.link} className="text-decoration-none read_more_btn">{button.label}</a>}
</div> </div>

View File

@ -1 +0,0 @@

View File

@ -1,209 +0,0 @@
.block_with_left_image {
--y-padding: 45px 0 130px;
--y-box-border-radius: 200px;
--y-content-padding-top: 150px;
--y-btn-font-size: 22px;
--y-btn-padding: 24px 44px;
--y-image-margin-top: -150px;
--y-block-with-right-image-spacing-image: 96px;
--y-block-with-image-spacing-main: 66px;
padding: var(--y-padding);
position: relative;
&_box {
width: 100%;
background-color: var(--e-global-color-white);
border-radius: var(--y-box-border-radius) 0 var(--y-box-border-radius) 0;
box-shadow: 1px 1px 50px rgb(0 0 0 / 7%);
}
&_content {
padding-top: var(--y-content-padding-top);
padding-left: 40px;
h5 {
text-transform: uppercase;
color: var(--e-global-color-secondary);
letter-spacing: 3.1px;
margin-bottom: 12px;
}
h2 {
margin-bottom: 16px;
color: var(--e-global-color-primary);
}
p {
margin-bottom: 32px;
color: var(--e-global-color-text);
padding-right: 60px;
}
.btn_wrapper .read_more_btn {
font-size: var(--y-btn-font-size);
line-height: var(--y-btn-font-size);
font-weight: 500;
padding: var(--y-btn-padding);
text-align: center;
color: var(--e-global-color-white);
display: inline-block;
background-color: var(--e-global-color-secondary);
border-radius: 35px 0px 35px 0px;
transition: all 0.3s ease-in-out;
position: relative;
overflow: hidden;
&:hover {
color: var(--e-global-color-accent);
background-color: var(--e-global-color-soft-orange);
transform: translateY(-10px);
&::before {
left: 0%;
right: auto;
width: 100%;
}
}
&::before {
display: block;
position: absolute;
top: 0px;
right: 0px;
height: 100%;
width: 0px;
z-index: -1;
content: '';
color: var(--e-global-color-accent);
background-color: var(--e-global-color-soft-orange);
transition: all 0.4s cubic-bezier(0.12, 0, 0.38, 1) 0s;
}
}
p, h1, h2, h3, h4, h5 {
padding-right: var(--y-block-with-right-image-spacing-image);
padding-left: var(--y-block-with-image-spacing-main);
}
}
&_image img {
border-top-left-radius: var(--y-box-border-radius);
border-bottom-right-radius: var(--y-box-border-radius);
margin: var(--y-image-margin-top) 12px 12px -40px;
max-width: 50%;
}
&_left_shape {
position: absolute;
top: 140px;
left: 0;
}
@media screen and (max-width: 1440px) {
&_left_shape {
top: unset;
bottom: 15px;
img {
width: 95px;
}
}
}
@media screen and (max-width: 1199px) {
--y-padding: 50px 0 100px;
--y-content-padding-top: 80px;
--y-btn-font-size: 20px;
--y-btn-padding: 22px 40px;
--y-image-margin-top: -80px;
&_content {
padding-left: 15px;
p, h2, h3, h4, h5, h6{
padding-left: 55px;
padding-right: 70px;
}
h5 { margin-bottom: 8px; }
h2 { margin-bottom: 12px; }
p {
margin-bottom: 28px;
}
}
&_left_shape {
display: none;
}
.block_with_left_image_image img{
margin-left: -15px;
}
}
@media screen and (max-width: 991px) {
--y-padding: 35px 0 70px;
--y-box-border-radius: 120px;
--y-content-padding-top: 40px;
--y-btn-font-size: 18px;
--y-btn-padding: 20px 35px;
--y-image-margin-top: -40px;
&_content {
padding-left: 0;
p, h2, h3, h4, h5, h6{
padding-right: 45px;
padding-left: 45px;
}
h5 { margin-bottom: 5px; }
h2 { margin-bottom: 10px; }
p {
margin-bottom: 22px;
}
}
.block_with_left_image_image img{
margin-left: 0;
}
}
@media screen and (max-width: 767px) {
--y-padding: 30px 0 60px;
--y-box-border-radius: 185px;
--y-btn-font-size: 16px;
--y-btn-padding: 18px 32px;
--y-image-margin-top: 0;
&_image {
margin-bottom: 30px;
img {
max-width: 100%;
}
}
&_content {
padding-top: 0;
text-align: center;
padding-left: 0px;
margin-bottom: 30px;
h2 { margin-bottom: 8px; }
p {
margin-bottom: 18px;
padding: 0 50px;
}
}
}
@media screen and (max-width: 575px) {
--y-box-border-radius: 118px;
--y-btn-font-size: 14px;
--y-btn-padding: 16px 30px;
&_content p {
margin-bottom: 15px;
padding: 0 10px;
}
&_image img {
max-width: 100%;
}
}
}

View File

@ -1,221 +0,0 @@
/* About Page Our block_with_image Section Style */
.block_with_right_image {
--y-block-with-right-image-spacing-image: 96px;
--y-block-with-image-spacing-main: 66px;
--y-block-with-right-image-top-spacing: 150px;
--y-box-border-radius: 200px;
--y-btn-font-size: 22px;
--y-btn-padding: 24px 44px;
padding: 130px 0 45px;
position: relative;
&_image img {
max-width: 50%;
border-top-left-radius: var(--y-box-border-radius);
border-bottom-right-radius: var(--y-box-border-radius);
margin: calc(-1 * var(--y-block-with-right-image-top-spacing)) 0 12px 12px;
}
.block_with_image_box {
width: 100%;
background-color: var(--e-global-color-white);
border-radius: var(--y-box-border-radius) 0 var(--y-box-border-radius) 0;
box-shadow: 1px 1px 50px rgb(0 0 0 / 7%);
}
&_content {
padding-top: var(--y-block-with-right-image-top-spacing);
padding-left: 96px;
h5 {
text-transform: uppercase;
color: var(--e-global-color-secondary);
letter-spacing: 3.1px;
margin-bottom: 12px;
}
h2 {
margin-bottom: 16px;
color: var(--e-global-color-primary);
}
p {
margin-bottom: 32px;
color: var(--e-global-color-text);
padding-right: 25px;
}
.btn_wrapper .read_more_btn {
font-size: var(--y-btn-font-size);
line-height: var(--y-btn-font-size);
font-weight: 500;
padding: var(--y-btn-padding);
text-align: center;
color: var(--e-global-color-white);
display: inline-block;
background-color: var(--e-global-color-secondary);
border-radius: 35px 0px 35px 0px;
transition: all 0.3s ease-in-out;
position: relative;
overflow: hidden;
&:hover {
color: var(--e-global-color-accent);
background-color: var(--e-global-color-soft-orange);
transform: translateY(-10px);
&::before {
left: 0%;
right: auto;
width: 100%;
}
}
&::before {
display: block;
position: absolute;
top: 0px;
right: 0px;
height: 100%;
width: 0px;
z-index: -1;
content: '';
color: var(--e-global-color-accent);
background-color: var(--e-global-color-soft-orange);
transition: all 0.4s cubic-bezier(0.12, 0, 0.38, 1) 0s;
}
}
p, h1, h2, h3, h4, h5 {
padding-right: var(--y-block-with-right-image-spacing-image);
padding-left: 0;
}
}
&_right_shape {
position: absolute;
top: 210px;
right: 0;
}
@media screen and (max-width: 1440px) {
&_right_shape {
top: 15px;
img {
width: 90px;
}
}
&_image img {
margin-top: calc(-1 * var(--y-block-with-right-image-top-spacing));
}
}
@media screen and (max-width: 1199px) {
--y-block-with-right-image-top-spacing: 135px;
--y-btn-font-size: 20px;
--y-btn-padding: 22px 40px;
padding: 100px 0 50px;
&_content {
padding-left: 70px;
p, h2, h3, h4, h5, h6{
padding-right: 70px;
}
h5 {
margin-bottom: 8px;
}
h2 {
margin-bottom: 12px;
}
p {
margin-bottom: 28px;
}
}
&_right_shape {
display: none;
}
&_image img {
margin-top: calc(-1 * var(--y-block-with-right-image-top-spacing));
}
}
@media screen and (max-width: 991px) {
--y-block-with-right-image-top-spacing: 70px;
--y-box-border-radius: 140px;
--y-btn-font-size: 18px;
--y-btn-padding: 20px 35px;
padding: 70px 0 35px;
&_content {
p, h2, h3, h4, h5, h6{
padding-right: 45px;
}
padding-left: 45px;
h5 {
margin-bottom: 5px;
}
h2 {
margin-bottom: 10px;
}
p {
margin-bottom: 22px;
}
}
&_image img {
margin-top: calc(-1 * var(--y-block-with-right-image-top-spacing));
}
}
@media screen and (max-width: 767px) {
--y-block-with-right-image-top-spacing: 60px;
--y-box-border-radius: 185px;
--y-btn-font-size: 16px;
--y-btn-padding: 18px 32px;
padding: 60px 0 30px;
&_content {
padding-left: 0;
text-align: center;
margin-bottom: 30px;
h2,h3,h4,h5,h6 {
padding-right: 0;
margin-bottom: 8px;
}
p {
margin-bottom: 18px;
padding: 0 50px;
}
}
&_image img {
margin-top: 0;
margin-bottom: 0;
max-width: 100%;
}
}
@media screen and (max-width: 575px) {
--y-block-with-right-image-top-spacing: 50px;
--y-box-border-radius: 118px;
--y-btn-font-size: 14px;
--y-btn-padding: 16px 30px;
&_content {
h2,h3,h4,h5,h6{
padding-right: 0;
}
p {
margin-bottom: 15px;
padding: 0 10px;
}
}
&_image img {
margin-top: 0;
margin-bottom: 0;
max-width: 100%;
}
}
}

View File

@ -299,7 +299,7 @@
width: 115px; width: 115px;
} }
.aboutus_content { .aboutus_content {
padding-top: 0; padding-top: 130px;
padding-left: 10px; padding-left: 10px;
} }
.aboutus_content h5 { .aboutus_content h5 {
@ -1263,7 +1263,7 @@
width: 110px; width: 110px;
} }
.aboutus_content { .aboutus_content {
padding-top: 0; padding-top: 60px;
padding-left: 0; padding-left: 0;
} }
.aboutus_content h2 { .aboutus_content h2 {

View File

@ -1,21 +0,0 @@
## MediaQueries brakepoints
```css
/* Media Queries */
@media screen and (max-width: 1440px){
}
@media screen and (max-width: 1199px){
}
@media screen and (max-width: 991px){}
@media screen and (max-width: 767px){}
@media screen and (max-width: 575px) {
}
```

View File

@ -501,7 +501,7 @@ p{
left: -65px; left: -65px;
} }
.aboutus_content{ .aboutus_content{
padding-top: 0; padding-top: 145px;
padding-left: 16px; padding-left: 16px;
} }
.aboutus_content h5{ .aboutus_content h5{

View File

@ -8,7 +8,6 @@ import { YogaAboutUsWithBoxesComponent } from './yoga-about-us-with-boxes-compon
import { YogaDiscountComponent } from './yoga-discount-component'; import { YogaDiscountComponent } from './yoga-discount-component';
import { YogaTextWithImageComponent } from './yoga-text-with-image-component'; import { YogaTextWithImageComponent } from './yoga-text-with-image-component';
import { YogaAchivementsComponent } from './yoga-achivements-component'; import { YogaAchivementsComponent } from './yoga-achivements-component';
import { YogaCommon } from './yoga-common';
import { HeaderB_Plain } from '../components/yoga-site/HeaderB'; import { HeaderB_Plain } from '../components/yoga-site/HeaderB';
import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component'; import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component';
@ -17,7 +16,6 @@ import { YogaAboutUsWithBoxesComponent_Plain } from './yoga-about-us-with-boxes-
import { YogaDiscountComponent_Plain } from './yoga-discount-component'; import { YogaDiscountComponent_Plain } from './yoga-discount-component';
import { YogaTextWithImageComponent_Plain } from './yoga-text-with-image-component'; import { YogaTextWithImageComponent_Plain } from './yoga-text-with-image-component';
import { YogaAchivementsComponent_Plain } from './yoga-achivements-component'; import { YogaAchivementsComponent_Plain } from './yoga-achivements-component';
import { YogaCommon_Plain } from './yoga-common';
import { HeaderB_NoRelations } from '../components/yoga-site/HeaderB'; import { HeaderB_NoRelations } from '../components/yoga-site/HeaderB';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification'; import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
@ -33,7 +31,6 @@ export interface About {
ourMission?: { data: YogaTextWithImageComponent }; ourMission?: { data: YogaTextWithImageComponent };
ourVision?: { data: YogaTextWithImageComponent }; ourVision?: { data: YogaTextWithImageComponent };
achievements?: { data: YogaAchivementsComponent }; achievements?: { data: YogaAchivementsComponent };
common?: { data: YogaCommon };
locale: string; locale: string;
localizations?: { data: About[] }; localizations?: { data: About[] };
}; };
@ -49,7 +46,6 @@ export interface About_Plain {
ourMission?: YogaTextWithImageComponent_Plain; ourMission?: YogaTextWithImageComponent_Plain;
ourVision?: YogaTextWithImageComponent_Plain; ourVision?: YogaTextWithImageComponent_Plain;
achievements?: YogaAchivementsComponent_Plain; achievements?: YogaAchivementsComponent_Plain;
common?: YogaCommon_Plain;
locale: string; locale: string;
localizations?: About_Plain[]; localizations?: About_Plain[];
} }
@ -65,7 +61,6 @@ export interface About_NoRelations {
ourMission?: number; ourMission?: number;
ourVision?: number; ourVision?: number;
achievements?: number; achievements?: number;
common?: number;
locale: string; locale: string;
localizations?: About[]; localizations?: About[];
} }
@ -81,7 +76,6 @@ export interface About_AdminPanelLifeCycle {
ourMission?: AdminPanelRelationPropertyModification<YogaTextWithImageComponent_Plain>; ourMission?: AdminPanelRelationPropertyModification<YogaTextWithImageComponent_Plain>;
ourVision?: AdminPanelRelationPropertyModification<YogaTextWithImageComponent_Plain>; ourVision?: AdminPanelRelationPropertyModification<YogaTextWithImageComponent_Plain>;
achievements?: AdminPanelRelationPropertyModification<YogaAchivementsComponent_Plain>; achievements?: AdminPanelRelationPropertyModification<YogaAchivementsComponent_Plain>;
common?: AdminPanelRelationPropertyModification<YogaCommon_Plain>;
locale: string; locale: string;
localizations?: About[]; localizations?: About[];
} }

View File

@ -17,7 +17,7 @@ export interface Article {
cover?: { data: Media }; cover?: { data: Media };
author?: { data: Author }; author?: { data: Author };
category?: { data: Category }; category?: { data: Category };
blocks?: any; blocks?: object;
}; };
} }
export interface Article_Plain { export interface Article_Plain {
@ -28,7 +28,7 @@ export interface Article_Plain {
cover?: Media_Plain; cover?: Media_Plain;
author?: Author_Plain; author?: Author_Plain;
category?: Category_Plain; category?: Category_Plain;
blocks?: any; blocks?: object;
} }
export interface Article_NoRelations { export interface Article_NoRelations {
@ -39,7 +39,7 @@ export interface Article_NoRelations {
cover?: number; cover?: number;
author?: number; author?: number;
category?: number; category?: number;
blocks?: any; blocks?: object;
} }
export interface Article_AdminPanelLifeCycle { export interface Article_AdminPanelLifeCycle {
@ -50,5 +50,5 @@ export interface Article_AdminPanelLifeCycle {
cover?: AdminPanelRelationPropertyModification<Media_Plain>; cover?: AdminPanelRelationPropertyModification<Media_Plain>;
author?: AdminPanelRelationPropertyModification<Author_Plain>; author?: AdminPanelRelationPropertyModification<Author_Plain>;
category?: AdminPanelRelationPropertyModification<Category_Plain>; category?: AdminPanelRelationPropertyModification<Category_Plain>;
blocks?: any; blocks?: object;
} }

View File

@ -4,12 +4,10 @@ import { YogaContactUs } from './yoga-contact-us';
import { YogaGoogleMapsComponent } from './yoga-google-maps-component'; import { YogaGoogleMapsComponent } from './yoga-google-maps-component';
import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component';
import { YogaFooter } from './yoga-footer'; import { YogaFooter } from './yoga-footer';
import { YogaCommon } from './yoga-common';
import { YogaContactUs_Plain } from './yoga-contact-us'; import { YogaContactUs_Plain } from './yoga-contact-us';
import { YogaGoogleMapsComponent_Plain } from './yoga-google-maps-component'; import { YogaGoogleMapsComponent_Plain } from './yoga-google-maps-component';
import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component';
import { YogaFooter_Plain } from './yoga-footer'; import { YogaFooter_Plain } from './yoga-footer';
import { YogaCommon_Plain } from './yoga-common';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification'; import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface ContactPage { export interface ContactPage {
@ -21,7 +19,6 @@ export interface ContactPage {
google_maps?: { data: YogaGoogleMapsComponent }; google_maps?: { data: YogaGoogleMapsComponent };
subscribe?: { data: YogaSubscribeNowComponent }; subscribe?: { data: YogaSubscribeNowComponent };
footer?: { data: YogaFooter }; footer?: { data: YogaFooter };
common?: { data: YogaCommon };
}; };
} }
export interface ContactPage_Plain { export interface ContactPage_Plain {
@ -32,7 +29,6 @@ export interface ContactPage_Plain {
google_maps?: YogaGoogleMapsComponent_Plain; google_maps?: YogaGoogleMapsComponent_Plain;
subscribe?: YogaSubscribeNowComponent_Plain; subscribe?: YogaSubscribeNowComponent_Plain;
footer?: YogaFooter_Plain; footer?: YogaFooter_Plain;
common?: YogaCommon_Plain;
} }
export interface ContactPage_NoRelations { export interface ContactPage_NoRelations {
@ -43,7 +39,6 @@ export interface ContactPage_NoRelations {
google_maps?: number; google_maps?: number;
subscribe?: number; subscribe?: number;
footer?: number; footer?: number;
common?: number;
} }
export interface ContactPage_AdminPanelLifeCycle { export interface ContactPage_AdminPanelLifeCycle {
@ -54,5 +49,4 @@ export interface ContactPage_AdminPanelLifeCycle {
google_maps?: AdminPanelRelationPropertyModification<YogaGoogleMapsComponent_Plain>; google_maps?: AdminPanelRelationPropertyModification<YogaGoogleMapsComponent_Plain>;
subscribe?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>; subscribe?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>;
footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>; footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>;
common?: AdminPanelRelationPropertyModification<YogaCommon_Plain>;
} }

View File

@ -5,13 +5,11 @@ import { YogaAchivementsComponent } from './yoga-achivements-component';
import { YogaBlogPostsComponent } from './yoga-blog-posts-component'; import { YogaBlogPostsComponent } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component';
import { YogaFooter } from './yoga-footer'; import { YogaFooter } from './yoga-footer';
import { YogaCommon } from './yoga-common';
import { YogaFaqComponent_Plain } from './yoga-faq-component'; import { YogaFaqComponent_Plain } from './yoga-faq-component';
import { YogaAchivementsComponent_Plain } from './yoga-achivements-component'; import { YogaAchivementsComponent_Plain } from './yoga-achivements-component';
import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component'; import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component';
import { YogaFooter_Plain } from './yoga-footer'; import { YogaFooter_Plain } from './yoga-footer';
import { YogaCommon_Plain } from './yoga-common';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification'; import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface FaqPage { export interface FaqPage {
@ -24,7 +22,6 @@ export interface FaqPage {
blogs?: { data: YogaBlogPostsComponent }; blogs?: { data: YogaBlogPostsComponent };
subscribe?: { data: YogaSubscribeNowComponent }; subscribe?: { data: YogaSubscribeNowComponent };
footer?: { data: YogaFooter }; footer?: { data: YogaFooter };
common?: { data: YogaCommon };
}; };
} }
export interface FaqPage_Plain { export interface FaqPage_Plain {
@ -36,7 +33,6 @@ export interface FaqPage_Plain {
blogs?: YogaBlogPostsComponent_Plain; blogs?: YogaBlogPostsComponent_Plain;
subscribe?: YogaSubscribeNowComponent_Plain; subscribe?: YogaSubscribeNowComponent_Plain;
footer?: YogaFooter_Plain; footer?: YogaFooter_Plain;
common?: YogaCommon_Plain;
} }
export interface FaqPage_NoRelations { export interface FaqPage_NoRelations {
@ -48,7 +44,6 @@ export interface FaqPage_NoRelations {
blogs?: number; blogs?: number;
subscribe?: number; subscribe?: number;
footer?: number; footer?: number;
common?: number;
} }
export interface FaqPage_AdminPanelLifeCycle { export interface FaqPage_AdminPanelLifeCycle {
@ -60,5 +55,4 @@ export interface FaqPage_AdminPanelLifeCycle {
blogs?: AdminPanelRelationPropertyModification<YogaBlogPostsComponent_Plain>; blogs?: AdminPanelRelationPropertyModification<YogaBlogPostsComponent_Plain>;
subscribe?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>; subscribe?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>;
footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>; footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>;
common?: AdminPanelRelationPropertyModification<YogaCommon_Plain>;
} }

View File

@ -14,7 +14,6 @@ export interface Global {
favicon?: { data: Media }; favicon?: { data: Media };
siteDescription: string; siteDescription: string;
defaultSeo?: Seo; defaultSeo?: Seo;
logoImage?: { data: Media };
}; };
} }
export interface Global_Plain { export interface Global_Plain {
@ -23,7 +22,6 @@ export interface Global_Plain {
favicon?: Media_Plain; favicon?: Media_Plain;
siteDescription: string; siteDescription: string;
defaultSeo?: Seo_Plain; defaultSeo?: Seo_Plain;
logoImage?: Media_Plain;
} }
export interface Global_NoRelations { export interface Global_NoRelations {
@ -32,7 +30,6 @@ export interface Global_NoRelations {
favicon?: number; favicon?: number;
siteDescription: string; siteDescription: string;
defaultSeo?: Seo_NoRelations; defaultSeo?: Seo_NoRelations;
logoImage?: number;
} }
export interface Global_AdminPanelLifeCycle { export interface Global_AdminPanelLifeCycle {
@ -41,5 +38,4 @@ export interface Global_AdminPanelLifeCycle {
favicon?: AdminPanelRelationPropertyModification<Media_Plain>; favicon?: AdminPanelRelationPropertyModification<Media_Plain>;
siteDescription: string; siteDescription: string;
defaultSeo?: Seo_Plain; defaultSeo?: Seo_Plain;
logoImage?: AdminPanelRelationPropertyModification<Media_Plain>;
} }

View File

@ -10,7 +10,6 @@ import { YogaBlogPostsComponent } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component';
import { YogaFooter } from './yoga-footer'; import { YogaFooter } from './yoga-footer';
import { YogaMainHeaderComponent } from './yoga-main-header-component'; import { YogaMainHeaderComponent } from './yoga-main-header-component';
import { YogaCommon } from './yoga-common';
import { YogaOurServicesComponent_Plain } from './yoga-our-services-component'; import { YogaOurServicesComponent_Plain } from './yoga-our-services-component';
import { YogaAboutUsComponent_Plain } from './yoga-about-us-component'; import { YogaAboutUsComponent_Plain } from './yoga-about-us-component';
import { YogaSpecialitiesComponent_Plain } from './yoga-specialities-component'; import { YogaSpecialitiesComponent_Plain } from './yoga-specialities-component';
@ -21,7 +20,6 @@ import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component';
import { YogaFooter_Plain } from './yoga-footer'; import { YogaFooter_Plain } from './yoga-footer';
import { YogaMainHeaderComponent_Plain } from './yoga-main-header-component'; import { YogaMainHeaderComponent_Plain } from './yoga-main-header-component';
import { YogaCommon_Plain } from './yoga-common';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification'; import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface Home { export interface Home {
@ -37,7 +35,6 @@ export interface Home {
subscribeNow?: { data: YogaSubscribeNowComponent }; subscribeNow?: { data: YogaSubscribeNowComponent };
footer?: { data: YogaFooter }; footer?: { data: YogaFooter };
header?: { data: YogaMainHeaderComponent }; header?: { data: YogaMainHeaderComponent };
common?: { data: YogaCommon };
locale: string; locale: string;
localizations?: { data: Home[] }; localizations?: { data: Home[] };
}; };
@ -54,7 +51,6 @@ export interface Home_Plain {
subscribeNow?: YogaSubscribeNowComponent_Plain; subscribeNow?: YogaSubscribeNowComponent_Plain;
footer?: YogaFooter_Plain; footer?: YogaFooter_Plain;
header?: YogaMainHeaderComponent_Plain; header?: YogaMainHeaderComponent_Plain;
common?: YogaCommon_Plain;
locale: string; locale: string;
localizations?: Home_Plain[]; localizations?: Home_Plain[];
} }
@ -71,7 +67,6 @@ export interface Home_NoRelations {
subscribeNow?: number; subscribeNow?: number;
footer?: number; footer?: number;
header?: number; header?: number;
common?: number;
locale: string; locale: string;
localizations?: Home[]; localizations?: Home[];
} }
@ -88,7 +83,6 @@ export interface Home_AdminPanelLifeCycle {
subscribeNow?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>; subscribeNow?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>;
footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>; footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>;
header?: AdminPanelRelationPropertyModification<YogaMainHeaderComponent_Plain>; header?: AdminPanelRelationPropertyModification<YogaMainHeaderComponent_Plain>;
common?: AdminPanelRelationPropertyModification<YogaCommon_Plain>;
locale: string; locale: string;
localizations?: Home[]; localizations?: Home[];
} }

View File

@ -5,13 +5,11 @@ import { YogaDiscountComponent } from './yoga-discount-component';
import { YogaBlogPostsComponent } from './yoga-blog-posts-component'; import { YogaBlogPostsComponent } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component';
import { YogaFooter } from './yoga-footer'; import { YogaFooter } from './yoga-footer';
import { YogaCommon } from './yoga-common';
import { YogaPriceComponent_Plain } from './yoga-price-component'; import { YogaPriceComponent_Plain } from './yoga-price-component';
import { YogaDiscountComponent_Plain } from './yoga-discount-component'; import { YogaDiscountComponent_Plain } from './yoga-discount-component';
import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component'; import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component';
import { YogaFooter_Plain } from './yoga-footer'; import { YogaFooter_Plain } from './yoga-footer';
import { YogaCommon_Plain } from './yoga-common';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification'; import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface PricesPage { export interface PricesPage {
@ -24,7 +22,6 @@ export interface PricesPage {
blogs?: { data: YogaBlogPostsComponent }; blogs?: { data: YogaBlogPostsComponent };
subscribe?: { data: YogaSubscribeNowComponent }; subscribe?: { data: YogaSubscribeNowComponent };
footer?: { data: YogaFooter }; footer?: { data: YogaFooter };
common?: { data: YogaCommon };
}; };
} }
export interface PricesPage_Plain { export interface PricesPage_Plain {
@ -36,7 +33,6 @@ export interface PricesPage_Plain {
blogs?: YogaBlogPostsComponent_Plain; blogs?: YogaBlogPostsComponent_Plain;
subscribe?: YogaSubscribeNowComponent_Plain; subscribe?: YogaSubscribeNowComponent_Plain;
footer?: YogaFooter_Plain; footer?: YogaFooter_Plain;
common?: YogaCommon_Plain;
} }
export interface PricesPage_NoRelations { export interface PricesPage_NoRelations {
@ -48,7 +44,6 @@ export interface PricesPage_NoRelations {
blogs?: number; blogs?: number;
subscribe?: number; subscribe?: number;
footer?: number; footer?: number;
common?: number;
} }
export interface PricesPage_AdminPanelLifeCycle { export interface PricesPage_AdminPanelLifeCycle {
@ -60,5 +55,4 @@ export interface PricesPage_AdminPanelLifeCycle {
blogs?: AdminPanelRelationPropertyModification<YogaBlogPostsComponent_Plain>; blogs?: AdminPanelRelationPropertyModification<YogaBlogPostsComponent_Plain>;
subscribe?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>; subscribe?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>;
footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>; footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>;
common?: AdminPanelRelationPropertyModification<YogaCommon_Plain>;
} }

View File

@ -1,52 +0,0 @@
// Interface automatically generated by schemas-to-ts
import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component';
import { YogaFooter } from './yoga-footer';
import { YogaCommon } from './yoga-common';
import { YogaSingleService } from './yoga-single-service';
import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component';
import { YogaFooter_Plain } from './yoga-footer';
import { YogaCommon_Plain } from './yoga-common';
import { YogaSingleService_Plain } from './yoga-single-service';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface ServiceListPage {
id: number;
attributes: {
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
subscribeNow?: { data: YogaSubscribeNowComponent };
footer?: { data: YogaFooter };
common?: { data: YogaCommon };
services: { data: YogaSingleService[] };
};
}
export interface ServiceListPage_Plain {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
subscribeNow?: YogaSubscribeNowComponent_Plain;
footer?: YogaFooter_Plain;
common?: YogaCommon_Plain;
services: YogaSingleService_Plain[];
}
export interface ServiceListPage_NoRelations {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
subscribeNow?: number;
footer?: number;
common?: number;
services: number[];
}
export interface ServiceListPage_AdminPanelLifeCycle {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
subscribeNow?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>;
footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>;
common?: AdminPanelRelationPropertyModification<YogaCommon_Plain>;
services: AdminPanelRelationPropertyModification<YogaSingleService_Plain>;
}

View File

@ -1,46 +0,0 @@
// Interface automatically generated by schemas-to-ts
import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component';
import { YogaFooter } from './yoga-footer';
import { YogaCommon } from './yoga-common';
import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component';
import { YogaFooter_Plain } from './yoga-footer';
import { YogaCommon_Plain } from './yoga-common';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface ServicePage {
id: number;
attributes: {
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
subscribeNow?: { data: YogaSubscribeNowComponent };
footer?: { data: YogaFooter };
common?: { data: YogaCommon };
};
}
export interface ServicePage_Plain {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
subscribeNow?: YogaSubscribeNowComponent_Plain;
footer?: YogaFooter_Plain;
common?: YogaCommon_Plain;
}
export interface ServicePage_NoRelations {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
subscribeNow?: number;
footer?: number;
common?: number;
}
export interface ServicePage_AdminPanelLifeCycle {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
subscribeNow?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>;
footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>;
common?: AdminPanelRelationPropertyModification<YogaCommon_Plain>;
}

View File

@ -7,7 +7,6 @@ import { YogaCustomerFeedbackComponent } from './yoga-customer-feedback-componen
import { YogaBlogPostsComponent } from './yoga-blog-posts-component'; import { YogaBlogPostsComponent } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component';
import { YogaFooter } from './yoga-footer'; import { YogaFooter } from './yoga-footer';
import { YogaCommon } from './yoga-common';
import { YogaOurServicesComponent_Plain } from './yoga-our-services-component'; import { YogaOurServicesComponent_Plain } from './yoga-our-services-component';
import { YogaContactUs_Plain } from './yoga-contact-us'; import { YogaContactUs_Plain } from './yoga-contact-us';
import { YogaSpecialitiesComponent_Plain } from './yoga-specialities-component'; import { YogaSpecialitiesComponent_Plain } from './yoga-specialities-component';
@ -15,7 +14,6 @@ import { YogaCustomerFeedbackComponent_Plain } from './yoga-customer-feedback-co
import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component'; import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component';
import { YogaFooter_Plain } from './yoga-footer'; import { YogaFooter_Plain } from './yoga-footer';
import { YogaCommon_Plain } from './yoga-common';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification'; import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface ServicesPage { export interface ServicesPage {
@ -31,7 +29,6 @@ export interface ServicesPage {
subscribe?: { data: YogaSubscribeNowComponent }; subscribe?: { data: YogaSubscribeNowComponent };
footer?: { data: YogaFooter }; footer?: { data: YogaFooter };
title?: string; title?: string;
common?: { data: YogaCommon };
}; };
} }
export interface ServicesPage_Plain { export interface ServicesPage_Plain {
@ -46,7 +43,6 @@ export interface ServicesPage_Plain {
subscribe?: YogaSubscribeNowComponent_Plain; subscribe?: YogaSubscribeNowComponent_Plain;
footer?: YogaFooter_Plain; footer?: YogaFooter_Plain;
title?: string; title?: string;
common?: YogaCommon_Plain;
} }
export interface ServicesPage_NoRelations { export interface ServicesPage_NoRelations {
@ -61,7 +57,6 @@ export interface ServicesPage_NoRelations {
subscribe?: number; subscribe?: number;
footer?: number; footer?: number;
title?: string; title?: string;
common?: number;
} }
export interface ServicesPage_AdminPanelLifeCycle { export interface ServicesPage_AdminPanelLifeCycle {
@ -76,5 +71,4 @@ export interface ServicesPage_AdminPanelLifeCycle {
subscribe?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>; subscribe?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>;
footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>; footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>;
title?: string; title?: string;
common?: AdminPanelRelationPropertyModification<YogaCommon_Plain>;
} }

View File

@ -1,30 +0,0 @@
// 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 YogaCommon {
id: number;
attributes: {
createdAt: Date; updatedAt: Date; publishedAt?: Date; logoImage?: { data: Media };
name: string;
};
}
export interface YogaCommon_Plain {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; logoImage?: Media_Plain;
name: string;
}
export interface YogaCommon_NoRelations {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; logoImage?: number;
name: string;
}
export interface YogaCommon_AdminPanelLifeCycle {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; logoImage?: AdminPanelRelationPropertyModification<Media_Plain>;
name: string;
}

View File

@ -1,11 +1,8 @@
// Interface automatically generated by schemas-to-ts // Interface automatically generated by schemas-to-ts
import { Link } from '../components/yoga-site/Link'; import { Link } from '../components/yoga-site/Link';
import { Media } from '../components/shared/Media';
import { Link_Plain } from '../components/yoga-site/Link'; import { Link_Plain } from '../components/yoga-site/Link';
import { Media_Plain } from '../components/shared/Media';
import { Link_NoRelations } from '../components/yoga-site/Link'; import { Link_NoRelations } from '../components/yoga-site/Link';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface YogaFooter { export interface YogaFooter {
id: number; id: number;
@ -20,7 +17,6 @@ export interface YogaFooter {
contactUsLocation?: Link; contactUsLocation?: Link;
copyRight?: string; copyRight?: string;
name?: string; name?: string;
logo?: { data: Media };
}; };
} }
export interface YogaFooter_Plain { export interface YogaFooter_Plain {
@ -35,7 +31,6 @@ export interface YogaFooter_Plain {
contactUsLocation?: Link_Plain; contactUsLocation?: Link_Plain;
copyRight?: string; copyRight?: string;
name?: string; name?: string;
logo?: Media_Plain;
} }
export interface YogaFooter_NoRelations { export interface YogaFooter_NoRelations {
@ -50,7 +45,6 @@ export interface YogaFooter_NoRelations {
contactUsLocation?: Link_NoRelations; contactUsLocation?: Link_NoRelations;
copyRight?: string; copyRight?: string;
name?: string; name?: string;
logo?: number;
} }
export interface YogaFooter_AdminPanelLifeCycle { export interface YogaFooter_AdminPanelLifeCycle {
@ -65,5 +59,4 @@ export interface YogaFooter_AdminPanelLifeCycle {
contactUsLocation?: Link_Plain; contactUsLocation?: Link_Plain;
copyRight?: string; copyRight?: string;
name?: string; name?: string;
logo?: AdminPanelRelationPropertyModification<Media_Plain>;
} }

View File

@ -14,8 +14,6 @@ export interface YogaPrice {
price?: number; price?: number;
icon?: { data: Media }; icon?: { data: Media };
image?: { data: Media }; image?: { data: Media };
pricePostfix?: string;
description?: string;
}; };
} }
export interface YogaPrice_Plain { export interface YogaPrice_Plain {
@ -27,8 +25,6 @@ export interface YogaPrice_Plain {
price?: number; price?: number;
icon?: Media_Plain; icon?: Media_Plain;
image?: Media_Plain; image?: Media_Plain;
pricePostfix?: string;
description?: string;
} }
export interface YogaPrice_NoRelations { export interface YogaPrice_NoRelations {
@ -40,8 +36,6 @@ export interface YogaPrice_NoRelations {
price?: number; price?: number;
icon?: number; icon?: number;
image?: number; image?: number;
pricePostfix?: string;
description?: string;
} }
export interface YogaPrice_AdminPanelLifeCycle { export interface YogaPrice_AdminPanelLifeCycle {
@ -53,6 +47,4 @@ export interface YogaPrice_AdminPanelLifeCycle {
price?: number; price?: number;
icon?: AdminPanelRelationPropertyModification<Media_Plain>; icon?: AdminPanelRelationPropertyModification<Media_Plain>;
image?: AdminPanelRelationPropertyModification<Media_Plain>; image?: AdminPanelRelationPropertyModification<Media_Plain>;
pricePostfix?: string;
description?: string;
} }

View File

@ -13,9 +13,6 @@ export interface YogaSingleService {
image?: { data: Media }; image?: { data: Media };
imageAlt?: string; imageAlt?: string;
name?: string; name?: string;
article?: any;
articleImage?: { data: Media };
priority?: number;
locale: string; locale: string;
localizations?: { data: YogaSingleService[] }; localizations?: { data: YogaSingleService[] };
}; };
@ -28,9 +25,6 @@ export interface YogaSingleService_Plain {
image?: Media_Plain; image?: Media_Plain;
imageAlt?: string; imageAlt?: string;
name?: string; name?: string;
article?: any;
articleImage?: Media_Plain;
priority?: number;
locale: string; locale: string;
localizations?: YogaSingleService_Plain[]; localizations?: YogaSingleService_Plain[];
} }
@ -43,9 +37,6 @@ export interface YogaSingleService_NoRelations {
image?: number; image?: number;
imageAlt?: string; imageAlt?: string;
name?: string; name?: string;
article?: any;
articleImage?: number;
priority?: number;
locale: string; locale: string;
localizations?: YogaSingleService[]; localizations?: YogaSingleService[];
} }
@ -58,9 +49,6 @@ export interface YogaSingleService_AdminPanelLifeCycle {
image?: AdminPanelRelationPropertyModification<Media_Plain>; image?: AdminPanelRelationPropertyModification<Media_Plain>;
imageAlt?: string; imageAlt?: string;
name?: string; name?: string;
article?: any;
articleImage?: AdminPanelRelationPropertyModification<Media_Plain>;
priority?: number;
locale: string; locale: string;
localizations?: YogaSingleService[]; localizations?: YogaSingleService[];
} }

View File

@ -1,9 +1,7 @@
// Interface automatically generated by schemas-to-ts // Interface automatically generated by schemas-to-ts
import { YogaSingleSpeciality } from './yoga-single-speciality'; import { YogaSingleSpeciality } from './yoga-single-speciality';
import { Media } from '../components/shared/Media';
import { YogaSingleSpeciality_Plain } from './yoga-single-speciality'; import { YogaSingleSpeciality_Plain } from './yoga-single-speciality';
import { Media_Plain } from '../components/shared/Media';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification'; import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface YogaSpecialitiesComponent { export interface YogaSpecialitiesComponent {
@ -21,7 +19,6 @@ export interface YogaSpecialitiesComponent {
right2?: { data: YogaSingleSpeciality }; right2?: { data: YogaSingleSpeciality };
right3?: { data: YogaSingleSpeciality }; right3?: { data: YogaSingleSpeciality };
right4?: { data: YogaSingleSpeciality }; right4?: { data: YogaSingleSpeciality };
image?: { data: Media };
locale: string; locale: string;
localizations?: { data: YogaSpecialitiesComponent[] }; localizations?: { data: YogaSpecialitiesComponent[] };
}; };
@ -40,7 +37,6 @@ export interface YogaSpecialitiesComponent_Plain {
right2?: YogaSingleSpeciality_Plain; right2?: YogaSingleSpeciality_Plain;
right3?: YogaSingleSpeciality_Plain; right3?: YogaSingleSpeciality_Plain;
right4?: YogaSingleSpeciality_Plain; right4?: YogaSingleSpeciality_Plain;
image?: Media_Plain;
locale: string; locale: string;
localizations?: YogaSpecialitiesComponent_Plain[]; localizations?: YogaSpecialitiesComponent_Plain[];
} }
@ -59,7 +55,6 @@ export interface YogaSpecialitiesComponent_NoRelations {
right2?: number; right2?: number;
right3?: number; right3?: number;
right4?: number; right4?: number;
image?: number;
locale: string; locale: string;
localizations?: YogaSpecialitiesComponent[]; localizations?: YogaSpecialitiesComponent[];
} }
@ -78,7 +73,6 @@ export interface YogaSpecialitiesComponent_AdminPanelLifeCycle {
right2?: AdminPanelRelationPropertyModification<YogaSingleSpeciality_Plain>; right2?: AdminPanelRelationPropertyModification<YogaSingleSpeciality_Plain>;
right3?: AdminPanelRelationPropertyModification<YogaSingleSpeciality_Plain>; right3?: AdminPanelRelationPropertyModification<YogaSingleSpeciality_Plain>;
right4?: AdminPanelRelationPropertyModification<YogaSingleSpeciality_Plain>; right4?: AdminPanelRelationPropertyModification<YogaSingleSpeciality_Plain>;
image?: AdminPanelRelationPropertyModification<Media_Plain>;
locale: string; locale: string;
localizations?: YogaSpecialitiesComponent[]; localizations?: YogaSpecialitiesComponent[];
} }

View File

@ -1,9 +1,5 @@
// Interface automatically generated by schemas-to-ts // 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 YogaSubscribeNowComponent { export interface YogaSubscribeNowComponent {
id: number; id: number;
attributes: { attributes: {
@ -11,7 +7,6 @@ export interface YogaSubscribeNowComponent {
header?: string; header?: string;
placeHolderEmail?: string; placeHolderEmail?: string;
buttonSubscribeLabel?: string; buttonSubscribeLabel?: string;
image?: { data: Media };
}; };
} }
export interface YogaSubscribeNowComponent_Plain { export interface YogaSubscribeNowComponent_Plain {
@ -20,7 +15,6 @@ export interface YogaSubscribeNowComponent_Plain {
header?: string; header?: string;
placeHolderEmail?: string; placeHolderEmail?: string;
buttonSubscribeLabel?: string; buttonSubscribeLabel?: string;
image?: Media_Plain;
} }
export interface YogaSubscribeNowComponent_NoRelations { export interface YogaSubscribeNowComponent_NoRelations {
@ -29,7 +23,6 @@ export interface YogaSubscribeNowComponent_NoRelations {
header?: string; header?: string;
placeHolderEmail?: string; placeHolderEmail?: string;
buttonSubscribeLabel?: string; buttonSubscribeLabel?: string;
image?: number;
} }
export interface YogaSubscribeNowComponent_AdminPanelLifeCycle { export interface YogaSubscribeNowComponent_AdminPanelLifeCycle {
@ -38,5 +31,4 @@ export interface YogaSubscribeNowComponent_AdminPanelLifeCycle {
header?: string; header?: string;
placeHolderEmail?: string; placeHolderEmail?: string;
buttonSubscribeLabel?: string; buttonSubscribeLabel?: string;
image?: AdminPanelRelationPropertyModification<Media_Plain>;
} }

View File

@ -1,4 +1,3 @@
export interface StrapiFile{ export interface StrapiFile{
"id": string, "id": string,
"documentId": string, "documentId": string,
@ -6,23 +5,3 @@ export interface StrapiFile{
"mime": string, "mime": string,
"url": string "url": string
} }
export enum ImagePosition {
Left = 'Left',
Right = 'Right',}
export interface ButtonConfig{
label?: string,
link?: string,
style?: 'Primary' | 'Secondary' | 'Outline' | 'Text',
size?: 'Small' | 'Medium' | 'Large',
openInNewTab?: boolean,
}
export interface ImageConfig{
position: ImagePosition,
url?: string,
alt?: string,
width?: number,
height?: number,
}

View File

@ -11,42 +11,29 @@ export const MAIN_MENU:MenuItem[] = [
}, },
{ {
label: 'Szolgáltatásaink', label: 'Szolgáltatásaink',
href: '/serviceList' href: '/services'
},
// {
// label: 'Oldalak',
// children: [
// {
// label: 'Áraink',
// href: '/prices'
// },
// {
// label: 'FAQ',
// href: '/faq'
// },
// ]
// },
{
label: 'Áraink',
href: '/prices'
}, },
{ {
label: 'GY.I.K', label: 'Oldalak',
href: '/faq' children: [
{
label: 'Áraink',
href: '/prices'
},
{
label: 'FAQ',
href: '/faq'
},
]
}, },
{ {
label: 'Szolgáltatásaink', label: 'Rólam',
href: '/serviceList' href: '/team'
}, },
// {
// label: 'Rólam',
// href: '/team'
// },
// {
// label: 'Blog',
// href: '/blog'
// },
{ {
label: 'Blog',
href: '/blog'
}, {
label: 'Kapcsolat', label: 'Kapcsolat',
href: '/contact', href: '/contact',
styleClass: "contact_us" styleClass: "contact_us"

View File

@ -1,7 +0,0 @@
import {YogaSingleService_Plain} from "@/types/generated-strapi-interfaces/api/yoga-single-service";
export function sortServicesByPriority(a: YogaSingleService_Plain, b: YogaSingleService_Plain) {
const priorityA = a.priority ?? 0;
const priorityB = b.priority ?? 0;
return priorityB - priorityA;
}

View File

@ -39,9 +39,6 @@
specialityRight4: { specialityRight4: {
fields: ['*'] , fields: ['*'] ,
}, },
"image": {
"fields": ["name","mime","url"]
}
} }
} }
}, },

View File

@ -8,7 +8,6 @@ import { YogaAboutUsWithBoxesComponent } from './yoga-about-us-with-boxes-compon
import { YogaDiscountComponent } from './yoga-discount-component'; import { YogaDiscountComponent } from './yoga-discount-component';
import { YogaTextWithImageComponent } from './yoga-text-with-image-component'; import { YogaTextWithImageComponent } from './yoga-text-with-image-component';
import { YogaAchivementsComponent } from './yoga-achivements-component'; import { YogaAchivementsComponent } from './yoga-achivements-component';
import { YogaCommon } from './yoga-common';
import { HeaderB_Plain } from '../components/yoga-site/HeaderB'; import { HeaderB_Plain } from '../components/yoga-site/HeaderB';
import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component'; import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component';
@ -17,7 +16,6 @@ import { YogaAboutUsWithBoxesComponent_Plain } from './yoga-about-us-with-boxes-
import { YogaDiscountComponent_Plain } from './yoga-discount-component'; import { YogaDiscountComponent_Plain } from './yoga-discount-component';
import { YogaTextWithImageComponent_Plain } from './yoga-text-with-image-component'; import { YogaTextWithImageComponent_Plain } from './yoga-text-with-image-component';
import { YogaAchivementsComponent_Plain } from './yoga-achivements-component'; import { YogaAchivementsComponent_Plain } from './yoga-achivements-component';
import { YogaCommon_Plain } from './yoga-common';
import { HeaderB_NoRelations } from '../components/yoga-site/HeaderB'; import { HeaderB_NoRelations } from '../components/yoga-site/HeaderB';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification'; import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
@ -33,7 +31,6 @@ export interface About {
ourMission?: { data: YogaTextWithImageComponent }; ourMission?: { data: YogaTextWithImageComponent };
ourVision?: { data: YogaTextWithImageComponent }; ourVision?: { data: YogaTextWithImageComponent };
achievements?: { data: YogaAchivementsComponent }; achievements?: { data: YogaAchivementsComponent };
common?: { data: YogaCommon };
locale: string; locale: string;
localizations?: { data: About[] }; localizations?: { data: About[] };
}; };
@ -49,7 +46,6 @@ export interface About_Plain {
ourMission?: YogaTextWithImageComponent_Plain; ourMission?: YogaTextWithImageComponent_Plain;
ourVision?: YogaTextWithImageComponent_Plain; ourVision?: YogaTextWithImageComponent_Plain;
achievements?: YogaAchivementsComponent_Plain; achievements?: YogaAchivementsComponent_Plain;
common?: YogaCommon_Plain;
locale: string; locale: string;
localizations?: About_Plain[]; localizations?: About_Plain[];
} }
@ -65,7 +61,6 @@ export interface About_NoRelations {
ourMission?: number; ourMission?: number;
ourVision?: number; ourVision?: number;
achievements?: number; achievements?: number;
common?: number;
locale: string; locale: string;
localizations?: About[]; localizations?: About[];
} }
@ -81,7 +76,6 @@ export interface About_AdminPanelLifeCycle {
ourMission?: AdminPanelRelationPropertyModification<YogaTextWithImageComponent_Plain>; ourMission?: AdminPanelRelationPropertyModification<YogaTextWithImageComponent_Plain>;
ourVision?: AdminPanelRelationPropertyModification<YogaTextWithImageComponent_Plain>; ourVision?: AdminPanelRelationPropertyModification<YogaTextWithImageComponent_Plain>;
achievements?: AdminPanelRelationPropertyModification<YogaAchivementsComponent_Plain>; achievements?: AdminPanelRelationPropertyModification<YogaAchivementsComponent_Plain>;
common?: AdminPanelRelationPropertyModification<YogaCommon_Plain>;
locale: string; locale: string;
localizations?: About[]; localizations?: About[];
} }

View File

@ -4,12 +4,10 @@ import { YogaContactUs } from './yoga-contact-us';
import { YogaGoogleMapsComponent } from './yoga-google-maps-component'; import { YogaGoogleMapsComponent } from './yoga-google-maps-component';
import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component';
import { YogaFooter } from './yoga-footer'; import { YogaFooter } from './yoga-footer';
import { YogaCommon } from './yoga-common';
import { YogaContactUs_Plain } from './yoga-contact-us'; import { YogaContactUs_Plain } from './yoga-contact-us';
import { YogaGoogleMapsComponent_Plain } from './yoga-google-maps-component'; import { YogaGoogleMapsComponent_Plain } from './yoga-google-maps-component';
import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component';
import { YogaFooter_Plain } from './yoga-footer'; import { YogaFooter_Plain } from './yoga-footer';
import { YogaCommon_Plain } from './yoga-common';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification'; import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface ContactPage { export interface ContactPage {
@ -21,7 +19,6 @@ export interface ContactPage {
google_maps?: { data: YogaGoogleMapsComponent }; google_maps?: { data: YogaGoogleMapsComponent };
subscribe?: { data: YogaSubscribeNowComponent }; subscribe?: { data: YogaSubscribeNowComponent };
footer?: { data: YogaFooter }; footer?: { data: YogaFooter };
common?: { data: YogaCommon };
}; };
} }
export interface ContactPage_Plain { export interface ContactPage_Plain {
@ -32,7 +29,6 @@ export interface ContactPage_Plain {
google_maps?: YogaGoogleMapsComponent_Plain; google_maps?: YogaGoogleMapsComponent_Plain;
subscribe?: YogaSubscribeNowComponent_Plain; subscribe?: YogaSubscribeNowComponent_Plain;
footer?: YogaFooter_Plain; footer?: YogaFooter_Plain;
common?: YogaCommon_Plain;
} }
export interface ContactPage_NoRelations { export interface ContactPage_NoRelations {
@ -43,7 +39,6 @@ export interface ContactPage_NoRelations {
google_maps?: number; google_maps?: number;
subscribe?: number; subscribe?: number;
footer?: number; footer?: number;
common?: number;
} }
export interface ContactPage_AdminPanelLifeCycle { export interface ContactPage_AdminPanelLifeCycle {
@ -54,5 +49,4 @@ export interface ContactPage_AdminPanelLifeCycle {
google_maps?: AdminPanelRelationPropertyModification<YogaGoogleMapsComponent_Plain>; google_maps?: AdminPanelRelationPropertyModification<YogaGoogleMapsComponent_Plain>;
subscribe?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>; subscribe?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>;
footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>; footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>;
common?: AdminPanelRelationPropertyModification<YogaCommon_Plain>;
} }

View File

@ -5,13 +5,11 @@ import { YogaAchivementsComponent } from './yoga-achivements-component';
import { YogaBlogPostsComponent } from './yoga-blog-posts-component'; import { YogaBlogPostsComponent } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component';
import { YogaFooter } from './yoga-footer'; import { YogaFooter } from './yoga-footer';
import { YogaCommon } from './yoga-common';
import { YogaFaqComponent_Plain } from './yoga-faq-component'; import { YogaFaqComponent_Plain } from './yoga-faq-component';
import { YogaAchivementsComponent_Plain } from './yoga-achivements-component'; import { YogaAchivementsComponent_Plain } from './yoga-achivements-component';
import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component'; import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component';
import { YogaFooter_Plain } from './yoga-footer'; import { YogaFooter_Plain } from './yoga-footer';
import { YogaCommon_Plain } from './yoga-common';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification'; import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface FaqPage { export interface FaqPage {
@ -24,7 +22,6 @@ export interface FaqPage {
blogs?: { data: YogaBlogPostsComponent }; blogs?: { data: YogaBlogPostsComponent };
subscribe?: { data: YogaSubscribeNowComponent }; subscribe?: { data: YogaSubscribeNowComponent };
footer?: { data: YogaFooter }; footer?: { data: YogaFooter };
common?: { data: YogaCommon };
}; };
} }
export interface FaqPage_Plain { export interface FaqPage_Plain {
@ -36,7 +33,6 @@ export interface FaqPage_Plain {
blogs?: YogaBlogPostsComponent_Plain; blogs?: YogaBlogPostsComponent_Plain;
subscribe?: YogaSubscribeNowComponent_Plain; subscribe?: YogaSubscribeNowComponent_Plain;
footer?: YogaFooter_Plain; footer?: YogaFooter_Plain;
common?: YogaCommon_Plain;
} }
export interface FaqPage_NoRelations { export interface FaqPage_NoRelations {
@ -48,7 +44,6 @@ export interface FaqPage_NoRelations {
blogs?: number; blogs?: number;
subscribe?: number; subscribe?: number;
footer?: number; footer?: number;
common?: number;
} }
export interface FaqPage_AdminPanelLifeCycle { export interface FaqPage_AdminPanelLifeCycle {
@ -60,5 +55,4 @@ export interface FaqPage_AdminPanelLifeCycle {
blogs?: AdminPanelRelationPropertyModification<YogaBlogPostsComponent_Plain>; blogs?: AdminPanelRelationPropertyModification<YogaBlogPostsComponent_Plain>;
subscribe?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>; subscribe?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>;
footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>; footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>;
common?: AdminPanelRelationPropertyModification<YogaCommon_Plain>;
} }

View File

@ -14,7 +14,6 @@ export interface Global {
favicon?: { data: Media }; favicon?: { data: Media };
siteDescription: string; siteDescription: string;
defaultSeo?: Seo; defaultSeo?: Seo;
logoImage?: { data: Media };
}; };
} }
export interface Global_Plain { export interface Global_Plain {
@ -23,7 +22,6 @@ export interface Global_Plain {
favicon?: Media_Plain; favicon?: Media_Plain;
siteDescription: string; siteDescription: string;
defaultSeo?: Seo_Plain; defaultSeo?: Seo_Plain;
logoImage?: Media_Plain;
} }
export interface Global_NoRelations { export interface Global_NoRelations {
@ -32,7 +30,6 @@ export interface Global_NoRelations {
favicon?: number; favicon?: number;
siteDescription: string; siteDescription: string;
defaultSeo?: Seo_NoRelations; defaultSeo?: Seo_NoRelations;
logoImage?: number;
} }
export interface Global_AdminPanelLifeCycle { export interface Global_AdminPanelLifeCycle {
@ -41,5 +38,4 @@ export interface Global_AdminPanelLifeCycle {
favicon?: AdminPanelRelationPropertyModification<Media_Plain>; favicon?: AdminPanelRelationPropertyModification<Media_Plain>;
siteDescription: string; siteDescription: string;
defaultSeo?: Seo_Plain; defaultSeo?: Seo_Plain;
logoImage?: AdminPanelRelationPropertyModification<Media_Plain>;
} }

View File

@ -10,7 +10,6 @@ import { YogaBlogPostsComponent } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component';
import { YogaFooter } from './yoga-footer'; import { YogaFooter } from './yoga-footer';
import { YogaMainHeaderComponent } from './yoga-main-header-component'; import { YogaMainHeaderComponent } from './yoga-main-header-component';
import { YogaCommon } from './yoga-common';
import { YogaOurServicesComponent_Plain } from './yoga-our-services-component'; import { YogaOurServicesComponent_Plain } from './yoga-our-services-component';
import { YogaAboutUsComponent_Plain } from './yoga-about-us-component'; import { YogaAboutUsComponent_Plain } from './yoga-about-us-component';
import { YogaSpecialitiesComponent_Plain } from './yoga-specialities-component'; import { YogaSpecialitiesComponent_Plain } from './yoga-specialities-component';
@ -21,7 +20,6 @@ import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component';
import { YogaFooter_Plain } from './yoga-footer'; import { YogaFooter_Plain } from './yoga-footer';
import { YogaMainHeaderComponent_Plain } from './yoga-main-header-component'; import { YogaMainHeaderComponent_Plain } from './yoga-main-header-component';
import { YogaCommon_Plain } from './yoga-common';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification'; import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface Home { export interface Home {
@ -37,7 +35,6 @@ export interface Home {
subscribeNow?: { data: YogaSubscribeNowComponent }; subscribeNow?: { data: YogaSubscribeNowComponent };
footer?: { data: YogaFooter }; footer?: { data: YogaFooter };
header?: { data: YogaMainHeaderComponent }; header?: { data: YogaMainHeaderComponent };
common?: { data: YogaCommon };
locale: string; locale: string;
localizations?: { data: Home[] }; localizations?: { data: Home[] };
}; };
@ -54,7 +51,6 @@ export interface Home_Plain {
subscribeNow?: YogaSubscribeNowComponent_Plain; subscribeNow?: YogaSubscribeNowComponent_Plain;
footer?: YogaFooter_Plain; footer?: YogaFooter_Plain;
header?: YogaMainHeaderComponent_Plain; header?: YogaMainHeaderComponent_Plain;
common?: YogaCommon_Plain;
locale: string; locale: string;
localizations?: Home_Plain[]; localizations?: Home_Plain[];
} }
@ -71,7 +67,6 @@ export interface Home_NoRelations {
subscribeNow?: number; subscribeNow?: number;
footer?: number; footer?: number;
header?: number; header?: number;
common?: number;
locale: string; locale: string;
localizations?: Home[]; localizations?: Home[];
} }
@ -88,7 +83,6 @@ export interface Home_AdminPanelLifeCycle {
subscribeNow?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>; subscribeNow?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>;
footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>; footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>;
header?: AdminPanelRelationPropertyModification<YogaMainHeaderComponent_Plain>; header?: AdminPanelRelationPropertyModification<YogaMainHeaderComponent_Plain>;
common?: AdminPanelRelationPropertyModification<YogaCommon_Plain>;
locale: string; locale: string;
localizations?: Home[]; localizations?: Home[];
} }

View File

@ -5,13 +5,11 @@ import { YogaDiscountComponent } from './yoga-discount-component';
import { YogaBlogPostsComponent } from './yoga-blog-posts-component'; import { YogaBlogPostsComponent } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component';
import { YogaFooter } from './yoga-footer'; import { YogaFooter } from './yoga-footer';
import { YogaCommon } from './yoga-common';
import { YogaPriceComponent_Plain } from './yoga-price-component'; import { YogaPriceComponent_Plain } from './yoga-price-component';
import { YogaDiscountComponent_Plain } from './yoga-discount-component'; import { YogaDiscountComponent_Plain } from './yoga-discount-component';
import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component'; import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component';
import { YogaFooter_Plain } from './yoga-footer'; import { YogaFooter_Plain } from './yoga-footer';
import { YogaCommon_Plain } from './yoga-common';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification'; import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface PricesPage { export interface PricesPage {
@ -24,7 +22,6 @@ export interface PricesPage {
blogs?: { data: YogaBlogPostsComponent }; blogs?: { data: YogaBlogPostsComponent };
subscribe?: { data: YogaSubscribeNowComponent }; subscribe?: { data: YogaSubscribeNowComponent };
footer?: { data: YogaFooter }; footer?: { data: YogaFooter };
common?: { data: YogaCommon };
}; };
} }
export interface PricesPage_Plain { export interface PricesPage_Plain {
@ -36,7 +33,6 @@ export interface PricesPage_Plain {
blogs?: YogaBlogPostsComponent_Plain; blogs?: YogaBlogPostsComponent_Plain;
subscribe?: YogaSubscribeNowComponent_Plain; subscribe?: YogaSubscribeNowComponent_Plain;
footer?: YogaFooter_Plain; footer?: YogaFooter_Plain;
common?: YogaCommon_Plain;
} }
export interface PricesPage_NoRelations { export interface PricesPage_NoRelations {
@ -48,7 +44,6 @@ export interface PricesPage_NoRelations {
blogs?: number; blogs?: number;
subscribe?: number; subscribe?: number;
footer?: number; footer?: number;
common?: number;
} }
export interface PricesPage_AdminPanelLifeCycle { export interface PricesPage_AdminPanelLifeCycle {
@ -60,5 +55,4 @@ export interface PricesPage_AdminPanelLifeCycle {
blogs?: AdminPanelRelationPropertyModification<YogaBlogPostsComponent_Plain>; blogs?: AdminPanelRelationPropertyModification<YogaBlogPostsComponent_Plain>;
subscribe?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>; subscribe?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>;
footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>; footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>;
common?: AdminPanelRelationPropertyModification<YogaCommon_Plain>;
} }

View File

@ -1,52 +0,0 @@
// Interface automatically generated by schemas-to-ts
import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component';
import { YogaFooter } from './yoga-footer';
import { YogaCommon } from './yoga-common';
import { YogaSingleService } from './yoga-single-service';
import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component';
import { YogaFooter_Plain } from './yoga-footer';
import { YogaCommon_Plain } from './yoga-common';
import { YogaSingleService_Plain } from './yoga-single-service';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface ServiceListPage {
id: number;
attributes: {
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
subscribeNow?: { data: YogaSubscribeNowComponent };
footer?: { data: YogaFooter };
common?: { data: YogaCommon };
services: { data: YogaSingleService[] };
};
}
export interface ServiceListPage_Plain {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
subscribeNow?: YogaSubscribeNowComponent_Plain;
footer?: YogaFooter_Plain;
common?: YogaCommon_Plain;
services: YogaSingleService_Plain[];
}
export interface ServiceListPage_NoRelations {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
subscribeNow?: number;
footer?: number;
common?: number;
services: number[];
}
export interface ServiceListPage_AdminPanelLifeCycle {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
subscribeNow?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>;
footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>;
common?: AdminPanelRelationPropertyModification<YogaCommon_Plain>;
services: AdminPanelRelationPropertyModification<YogaSingleService_Plain>;
}

View File

@ -1,46 +0,0 @@
// Interface automatically generated by schemas-to-ts
import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component';
import { YogaFooter } from './yoga-footer';
import { YogaCommon } from './yoga-common';
import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component';
import { YogaFooter_Plain } from './yoga-footer';
import { YogaCommon_Plain } from './yoga-common';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface ServicePage {
id: number;
attributes: {
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
subscribeNow?: { data: YogaSubscribeNowComponent };
footer?: { data: YogaFooter };
common?: { data: YogaCommon };
};
}
export interface ServicePage_Plain {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
subscribeNow?: YogaSubscribeNowComponent_Plain;
footer?: YogaFooter_Plain;
common?: YogaCommon_Plain;
}
export interface ServicePage_NoRelations {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
subscribeNow?: number;
footer?: number;
common?: number;
}
export interface ServicePage_AdminPanelLifeCycle {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; header?: string;
description?: string;
subscribeNow?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>;
footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>;
common?: AdminPanelRelationPropertyModification<YogaCommon_Plain>;
}

View File

@ -7,7 +7,6 @@ import { YogaCustomerFeedbackComponent } from './yoga-customer-feedback-componen
import { YogaBlogPostsComponent } from './yoga-blog-posts-component'; import { YogaBlogPostsComponent } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent } from './yoga-subscribe-now-component';
import { YogaFooter } from './yoga-footer'; import { YogaFooter } from './yoga-footer';
import { YogaCommon } from './yoga-common';
import { YogaOurServicesComponent_Plain } from './yoga-our-services-component'; import { YogaOurServicesComponent_Plain } from './yoga-our-services-component';
import { YogaContactUs_Plain } from './yoga-contact-us'; import { YogaContactUs_Plain } from './yoga-contact-us';
import { YogaSpecialitiesComponent_Plain } from './yoga-specialities-component'; import { YogaSpecialitiesComponent_Plain } from './yoga-specialities-component';
@ -15,7 +14,6 @@ import { YogaCustomerFeedbackComponent_Plain } from './yoga-customer-feedback-co
import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component'; import { YogaBlogPostsComponent_Plain } from './yoga-blog-posts-component';
import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component'; import { YogaSubscribeNowComponent_Plain } from './yoga-subscribe-now-component';
import { YogaFooter_Plain } from './yoga-footer'; import { YogaFooter_Plain } from './yoga-footer';
import { YogaCommon_Plain } from './yoga-common';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification'; import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface ServicesPage { export interface ServicesPage {
@ -31,7 +29,6 @@ export interface ServicesPage {
subscribe?: { data: YogaSubscribeNowComponent }; subscribe?: { data: YogaSubscribeNowComponent };
footer?: { data: YogaFooter }; footer?: { data: YogaFooter };
title?: string; title?: string;
common?: { data: YogaCommon };
}; };
} }
export interface ServicesPage_Plain { export interface ServicesPage_Plain {
@ -46,7 +43,6 @@ export interface ServicesPage_Plain {
subscribe?: YogaSubscribeNowComponent_Plain; subscribe?: YogaSubscribeNowComponent_Plain;
footer?: YogaFooter_Plain; footer?: YogaFooter_Plain;
title?: string; title?: string;
common?: YogaCommon_Plain;
} }
export interface ServicesPage_NoRelations { export interface ServicesPage_NoRelations {
@ -61,7 +57,6 @@ export interface ServicesPage_NoRelations {
subscribe?: number; subscribe?: number;
footer?: number; footer?: number;
title?: string; title?: string;
common?: number;
} }
export interface ServicesPage_AdminPanelLifeCycle { export interface ServicesPage_AdminPanelLifeCycle {
@ -76,5 +71,4 @@ export interface ServicesPage_AdminPanelLifeCycle {
subscribe?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>; subscribe?: AdminPanelRelationPropertyModification<YogaSubscribeNowComponent_Plain>;
footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>; footer?: AdminPanelRelationPropertyModification<YogaFooter_Plain>;
title?: string; title?: string;
common?: AdminPanelRelationPropertyModification<YogaCommon_Plain>;
} }

View File

@ -1,30 +0,0 @@
// 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 YogaCommon {
id: number;
attributes: {
createdAt: Date; updatedAt: Date; publishedAt?: Date; logoImage?: { data: Media };
name: string;
};
}
export interface YogaCommon_Plain {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; logoImage?: Media_Plain;
name: string;
}
export interface YogaCommon_NoRelations {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; logoImage?: number;
name: string;
}
export interface YogaCommon_AdminPanelLifeCycle {
id: number;
createdAt: Date; updatedAt: Date; publishedAt?: Date; logoImage?: AdminPanelRelationPropertyModification<Media_Plain>;
name: string;
}

View File

@ -1,11 +1,8 @@
// Interface automatically generated by schemas-to-ts // Interface automatically generated by schemas-to-ts
import { Link } from '../components/yoga-site/Link'; import { Link } from '../components/yoga-site/Link';
import { Media } from '../components/shared/Media';
import { Link_Plain } from '../components/yoga-site/Link'; import { Link_Plain } from '../components/yoga-site/Link';
import { Media_Plain } from '../components/shared/Media';
import { Link_NoRelations } from '../components/yoga-site/Link'; import { Link_NoRelations } from '../components/yoga-site/Link';
import { AdminPanelRelationPropertyModification } from '../common/AdminPanelRelationPropertyModification';
export interface YogaFooter { export interface YogaFooter {
id: number; id: number;
@ -20,7 +17,6 @@ export interface YogaFooter {
contactUsLocation?: Link; contactUsLocation?: Link;
copyRight?: string; copyRight?: string;
name?: string; name?: string;
logo?: { data: Media };
}; };
} }
export interface YogaFooter_Plain { export interface YogaFooter_Plain {
@ -35,7 +31,6 @@ export interface YogaFooter_Plain {
contactUsLocation?: Link_Plain; contactUsLocation?: Link_Plain;
copyRight?: string; copyRight?: string;
name?: string; name?: string;
logo?: Media_Plain;
} }
export interface YogaFooter_NoRelations { export interface YogaFooter_NoRelations {
@ -50,7 +45,6 @@ export interface YogaFooter_NoRelations {
contactUsLocation?: Link_NoRelations; contactUsLocation?: Link_NoRelations;
copyRight?: string; copyRight?: string;
name?: string; name?: string;
logo?: number;
} }
export interface YogaFooter_AdminPanelLifeCycle { export interface YogaFooter_AdminPanelLifeCycle {
@ -65,5 +59,4 @@ export interface YogaFooter_AdminPanelLifeCycle {
contactUsLocation?: Link_Plain; contactUsLocation?: Link_Plain;
copyRight?: string; copyRight?: string;
name?: string; name?: string;
logo?: AdminPanelRelationPropertyModification<Media_Plain>;
} }

View File

@ -14,8 +14,6 @@ export interface YogaPrice {
price?: number; price?: number;
icon?: { data: Media }; icon?: { data: Media };
image?: { data: Media }; image?: { data: Media };
pricePostfix?: string;
description?: string;
}; };
} }
export interface YogaPrice_Plain { export interface YogaPrice_Plain {
@ -27,8 +25,6 @@ export interface YogaPrice_Plain {
price?: number; price?: number;
icon?: Media_Plain; icon?: Media_Plain;
image?: Media_Plain; image?: Media_Plain;
pricePostfix?: string;
description?: string;
} }
export interface YogaPrice_NoRelations { export interface YogaPrice_NoRelations {
@ -40,8 +36,6 @@ export interface YogaPrice_NoRelations {
price?: number; price?: number;
icon?: number; icon?: number;
image?: number; image?: number;
pricePostfix?: string;
description?: string;
} }
export interface YogaPrice_AdminPanelLifeCycle { export interface YogaPrice_AdminPanelLifeCycle {
@ -53,6 +47,4 @@ export interface YogaPrice_AdminPanelLifeCycle {
price?: number; price?: number;
icon?: AdminPanelRelationPropertyModification<Media_Plain>; icon?: AdminPanelRelationPropertyModification<Media_Plain>;
image?: AdminPanelRelationPropertyModification<Media_Plain>; image?: AdminPanelRelationPropertyModification<Media_Plain>;
pricePostfix?: string;
description?: string;
} }

Some files were not shown because too many files have changed in this diff Show More