Graphql erabiltzen du (#5)

* feat: graphql erabiltzen du

* node bertsioa jeisten du

* feat: netlify deployments sartzen du

* feat: token-a sortzen du

* chore: Gatsbyren aldagaiak berreskuratzen ditu

* fix: query-a konpontzen du
This commit is contained in:
Aitor Urrutia
2023-06-26 19:28:03 +02:00
committed by GitHub
parent ea68d390bc
commit 41b8661a10
12 changed files with 3466 additions and 3246 deletions

View File

@@ -2,43 +2,6 @@ require('dotenv').config({
path: `.env.${process.env.NODE_ENV}`,
});
const qs = require('qs');
const query = qs.stringify(
{
populate: {
edariBeroak: {
populate: ['alergenoak'],
},
infusioEkologikoak: {
populate: ['alergenoak'],
},
edariHotzak: {
populate: ['alergenoak'],
},
pikatzekoak: {
populate: ['alergenoak'],
},
gozoak: {
populate: ['alergenoak'],
},
anizkoJogurta: {
populate: ['alergenoak'],
},
tostadak: {
populate: ['alergenoak'],
},
konboak: {
populate: ['alergenoak'],
},
},
},
{
encodeValuesOnly: true,
},
);
const apiUrl = process.env.API_URL || 'http://localhost:1337/api';
module.exports = {
plugins: [
'gatsby-plugin-react-helmet',
@@ -50,35 +13,28 @@ module.exports = {
},
},
{
resolve: 'gatsby-source-custom-api',
resolve: 'gatsby-source-strapi-graphql',
options: {
rootKey: 'kafetegia',
url: `${apiUrl}/kafetegia?${query}`,
},
},
{
resolve: 'gatsby-source-strapi',
options: {
apiURL: apiUrl,
apiURL: 'http://localhost:1337',
collectionTypes: [],
singleTypes: [
'hasiera',
{
name: 'kafetegia',
queryParams: {
populate: '*',
},
},
'kafetegia',
'lege-oharra',
'pribatutasun-politika',
],
queryLimit: 1000,
contentTypes: [],
// Enable/disable cache.
cache: false,
token:
'307442ef6911b9692d6946bf6aac5d910795b56d92063e8a58ace14e31c8ac6ad7b64480ba591689abbad02758da9562e423e1ef1af8b9f303612ffb63f94f567060ea9f690d9d14bce676bdcf985a2a8c95643963ffd6f593490bb4b4ccae51572cbf315e7c823d0f368de2fe113b113986e9943df1a81e6e4228b82cc7cead',
},
},
'gatsby-transformer-sharp',
'gatsby-plugin-sharp',
'gatsby-plugin-styled-components',
{
resolve: `gatsby-plugin-manifest`,
resolve: 'gatsby-plugin-manifest',
options: {
name: 'Laba',
short_name: 'Laba',
@@ -90,7 +46,6 @@ module.exports = {
},
},
'gatsby-plugin-offline',
// 'gatsby-plugin-sitemap',
{
resolve: 'gatsby-plugin-react-svg',
options: {
@@ -100,7 +55,7 @@ module.exports = {
},
},
{
resolve: `gatsby-plugin-webfonts`,
resolve: 'gatsby-plugin-webfonts',
options: {
fonts: {
google: [

View File

@@ -30,9 +30,8 @@
"gatsby-plugin-sitemap": "^5.5.0",
"gatsby-plugin-styled-components": "^5.5.0",
"gatsby-plugin-webfonts": "^2.2.1",
"gatsby-source-custom-api": "^2.3.5",
"gatsby-source-filesystem": "^4.5.1",
"gatsby-source-strapi": "^1.0.2",
"gatsby-source-strapi-graphql": "^4.6.2",
"gatsby-transformer-sharp": "^4.5.0",
"polished": "^4.1.3",
"raw-loader": "^4.0.2",

View File

@@ -14,13 +14,9 @@ import { Oina } from '../components/Oina';
interface DataProps {
strapiHasiera: {
data: {
attributes: {
deskribapena: string;
izenburua: string;
bazkidetza: string;
};
};
deskribapena: string;
izenburua: string;
bazkidetza: string;
};
}
@@ -28,13 +24,9 @@ const IndexPage: React.VFC<PageProps> = () => {
const { strapiHasiera } = useStaticQuery<DataProps>(graphql`
{
strapiHasiera {
data {
attributes {
deskribapena
izenburua
bazkidetza
}
}
deskribapena
izenburua
bazkidetza
}
}
`);
@@ -42,21 +34,18 @@ const IndexPage: React.VFC<PageProps> = () => {
return (
<>
<Helmet
title={`${strapiHasiera.data.attributes.izenburua} | Laba`}
title={`${strapiHasiera.izenburua} | Laba`}
htmlAttributes={{ lang: 'eu' }}
>
<meta
name="description"
content={strapiHasiera.data.attributes.deskribapena}
/>
<meta name="description" content={strapiHasiera.deskribapena} />
</Helmet>
<GlobalStyles />
<Gainburua
atala="hasiera"
izenburua={strapiHasiera.data.attributes.izenburua}
deskribapena={strapiHasiera.data.attributes.deskribapena}
izenburua={strapiHasiera.izenburua}
deskribapena={strapiHasiera.deskribapena}
onClick={() => {
window.location.replace('/#labazkidetza');
}}
@@ -64,9 +53,7 @@ const IndexPage: React.VFC<PageProps> = () => {
<ContentWrapper id="labazkidetza">
<Container>
<Deskribapena>
{strapiHasiera.data.attributes.bazkidetza}
</Deskribapena>
<Deskribapena>{strapiHasiera.bazkidetza}</Deskribapena>
<IzanLabaWrapper>
<Botoia href="https://forms.gle/wV41CVkRX1JtHsAu9">

View File

@@ -13,12 +13,8 @@ import { Oina } from '../components/Oina';
interface DataProps {
strapiLegeOharra: {
data: {
attributes: {
izenburua: string;
edukia: string;
};
};
izenburua: string;
edukia: string;
};
}
@@ -26,12 +22,8 @@ const LegeOharra: React.VFC<PageProps> = () => {
const { strapiLegeOharra } = useStaticQuery<DataProps>(graphql`
{
strapiLegeOharra {
data {
attributes {
izenburua
edukia
}
}
izenburua
edukia
}
}
`);
@@ -39,7 +31,7 @@ const LegeOharra: React.VFC<PageProps> = () => {
return (
<>
<Helmet
title={`${strapiLegeOharra.data.attributes.izenburua} | Laba`}
title={`${strapiLegeOharra.izenburua} | Laba`}
htmlAttributes={{ lang: 'eu' }}
/>
@@ -49,7 +41,7 @@ const LegeOharra: React.VFC<PageProps> = () => {
<Container>
<Atala>
<Edukia>{strapiLegeOharra.data.attributes.edukia}</Edukia>
<Edukia>{strapiLegeOharra.edukia}</Edukia>
</Atala>
</Container>

View File

@@ -14,12 +14,8 @@ import { Oina } from '../components/Oina';
interface DataProps {
strapiPribatutasunPolitika: {
data: {
attributes: {
izenburua: string;
edukia: string;
};
};
izenburua: string;
edukia: string;
};
}
@@ -27,12 +23,8 @@ const PribatutasunPolitika: React.VFC<PageProps> = () => {
const { strapiPribatutasunPolitika } = useStaticQuery<DataProps>(graphql`
{
strapiPribatutasunPolitika {
data {
attributes {
izenburua
edukia
}
}
izenburua
edukia
}
}
`);
@@ -40,7 +32,7 @@ const PribatutasunPolitika: React.VFC<PageProps> = () => {
return (
<>
<Helmet
title={`${strapiPribatutasunPolitika.data.attributes.izenburua} | Laba`}
title={`${strapiPribatutasunPolitika.izenburua} | Laba`}
htmlAttributes={{ lang: 'eu' }}
/>
@@ -50,7 +42,7 @@ const PribatutasunPolitika: React.VFC<PageProps> = () => {
<Container>
<Atala>
<Edukia>{strapiPribatutasunPolitika.data.attributes.edukia}</Edukia>
<Edukia>{strapiPribatutasunPolitika.edukia}</Edukia>
</Atala>
</Container>

View File

@@ -4,233 +4,220 @@ import { produktuaFactory } from '../domain/factories/produktuaFactory';
import { KafetegiaData } from './KafetegiaData';
interface DataProps {
kafetegia: {
data: {
attributes: {
deskribapena: string;
izenburua: string;
edariBeroak: ProduktuaDTO[];
infusioEkologikoak: ProduktuaDTO[];
edariHotzak: ProduktuaDTO[];
pikatzekoak: ProduktuaDTO[];
gozoak: ProduktuaDTO[];
anizkoJogurta: ProduktuaDTO;
tostadak: ProduktuaDTO[];
konboak: ProduktuaDTO[];
};
};
strapiKafetegia: {
deskribapena: string;
izenburua: string;
edariBeroak: ProduktuaDTO[];
infusioEkologikoak: ProduktuaDTO[];
edariHotzak: ProduktuaDTO[];
pikatzekoak: ProduktuaDTO[];
gozoak: ProduktuaDTO[];
anizkoJogurta: ProduktuaDTO;
tostadak: ProduktuaDTO[];
konboak: ProduktuaDTO[];
};
}
export function useKafetegiaData(): KafetegiaData {
const {
kafetegia: {
data: {
attributes: {
izenburua,
deskribapena,
anizkoJogurta,
edariBeroak,
edariHotzak,
infusioEkologikoak,
pikatzekoak,
gozoak,
tostadak,
konboak,
},
},
strapiKafetegia: {
izenburua,
deskribapena,
anizkoJogurta,
edariBeroak,
edariHotzak,
infusioEkologikoak,
pikatzekoak,
gozoak,
tostadak,
konboak,
},
} = useStaticQuery<DataProps>(graphql`
{
kafetegia {
data {
attributes {
izenburua
deskribapena
anizkoJogurta {
alergenoak {
apioa
arraina
arrautzak
esnekiak
fruituLehorrak
glutena
kakahueteak
krustazeoak
lupinuak
moluskuak
sesamoa
soja
sulfitoak
ziapea
}
beganoa
ekologikoa
izena
prezioa
id__normalized
}
edariBeroak {
id
ekologikoa
beganoa
izena
prezioa
alergenoak {
apioa
arraina
arrautzak
esnekiak
fruituLehorrak
glutena
kakahueteak
krustazeoak
lupinuak
moluskuak
sesamoa
soja
sulfitoak
ziapea
}
}
edariHotzak {
id
ekologikoa
beganoa
izena
prezioa
alergenoak {
apioa
arraina
arrautzak
esnekiak
fruituLehorrak
glutena
kakahueteak
krustazeoak
lupinuak
moluskuak
sesamoa
soja
sulfitoak
ziapea
}
}
infusioEkologikoak {
id
ekologikoa
beganoa
izena
prezioa
alergenoak {
apioa
arraina
arrautzak
esnekiak
fruituLehorrak
glutena
kakahueteak
krustazeoak
lupinuak
moluskuak
sesamoa
soja
sulfitoak
ziapea
}
}
pikatzekoak {
id
ekologikoa
beganoa
izena
prezioa
alergenoak {
apioa
arraina
arrautzak
esnekiak
fruituLehorrak
glutena
kakahueteak
krustazeoak
lupinuak
moluskuak
sesamoa
soja
sulfitoak
ziapea
}
}
gozoak {
id
ekologikoa
beganoa
izena
prezioa
alergenoak {
apioa
arraina
arrautzak
esnekiak
fruituLehorrak
glutena
kakahueteak
krustazeoak
lupinuak
moluskuak
sesamoa
soja
sulfitoak
ziapea
}
}
tostadak {
id
ekologikoa
beganoa
izena
prezioa
alergenoak {
apioa
arraina
arrautzak
esnekiak
fruituLehorrak
glutena
kakahueteak
krustazeoak
lupinuak
moluskuak
sesamoa
soja
sulfitoak
ziapea
}
}
konboak {
id
ekologikoa
beganoa
izena
prezioa
alergenoak {
apioa
arraina
arrautzak
esnekiak
fruituLehorrak
glutena
kakahueteak
krustazeoak
lupinuak
moluskuak
sesamoa
soja
sulfitoak
ziapea
}
}
strapiKafetegia {
izenburua
deskribapena
anizkoJogurta {
alergenoak {
apioa
arraina
arrautzak
esnekiak
fruituLehorrak
glutena
kakahueteak
krustazeoak
lupinuak
moluskuak
sesamoa
soja
sulfitoak
ziapea
}
beganoa
ekologikoa
izena
prezioa
}
edariBeroak {
id
ekologikoa
beganoa
izena
prezioa
alergenoak {
apioa
arraina
arrautzak
esnekiak
fruituLehorrak
glutena
kakahueteak
krustazeoak
lupinuak
moluskuak
sesamoa
soja
sulfitoak
ziapea
}
}
edariHotzak {
id
ekologikoa
beganoa
izena
prezioa
alergenoak {
apioa
arraina
arrautzak
esnekiak
fruituLehorrak
glutena
kakahueteak
krustazeoak
lupinuak
moluskuak
sesamoa
soja
sulfitoak
ziapea
}
}
infusioEkologikoak {
id
ekologikoa
beganoa
izena
prezioa
alergenoak {
apioa
arraina
arrautzak
esnekiak
fruituLehorrak
glutena
kakahueteak
krustazeoak
lupinuak
moluskuak
sesamoa
soja
sulfitoak
ziapea
}
}
pikatzekoak {
id
ekologikoa
beganoa
izena
prezioa
alergenoak {
apioa
arraina
arrautzak
esnekiak
fruituLehorrak
glutena
kakahueteak
krustazeoak
lupinuak
moluskuak
sesamoa
soja
sulfitoak
ziapea
}
}
gozoak {
id
ekologikoa
beganoa
izena
prezioa
alergenoak {
apioa
arraina
arrautzak
esnekiak
fruituLehorrak
glutena
kakahueteak
krustazeoak
lupinuak
moluskuak
sesamoa
soja
sulfitoak
ziapea
}
}
tostadak {
id
ekologikoa
beganoa
izena
prezioa
alergenoak {
apioa
arraina
arrautzak
esnekiak
fruituLehorrak
glutena
kakahueteak
krustazeoak
lupinuak
moluskuak
sesamoa
soja
sulfitoak
ziapea
}
}
konboak {
id
ekologikoa
beganoa
izena
prezioa
alergenoak {
apioa
arraina
arrautzak
esnekiak
fruituLehorrak
glutena
kakahueteak
krustazeoak
lupinuak
moluskuak
sesamoa
soja
sulfitoak
ziapea
}
}
}