i18n integration for showcase
Moved showcase carousel data source to respective i18n/ language files
This commit is contained in:
		@@ -8,6 +8,6 @@ const { title, description } = dictionary[Astro.currentLocale];
 | 
			
		||||
 | 
			
		||||
<SinglePage>
 | 
			
		||||
    <div class="flex flex-col h-screen">
 | 
			
		||||
        <ShowcaseTabs client:load />
 | 
			
		||||
        <ShowcaseTabs currentLocale={Astro.currentLocale} client:load />
 | 
			
		||||
    </div>
 | 
			
		||||
</SinglePage>
 | 
			
		||||
 
 | 
			
		||||
@@ -12,20 +12,22 @@ import {
 | 
			
		||||
  TabsTrigger,
 | 
			
		||||
} from "../components/ui/tabs";
 | 
			
		||||
 | 
			
		||||
import { data } from "../content/showcase";
 | 
			
		||||
import { dictionary } from "../i18n/dictionary";
 | 
			
		||||
 | 
			
		||||
export function ShowcaseTabs() {
 | 
			
		||||
 | 
			
		||||
export function ShowcaseTabs({ currentLocale }) {
 | 
			
		||||
  const { showcase } = dictionary[currentLocale];
 | 
			
		||||
  return (
 | 
			
		||||
    <Tabs
 | 
			
		||||
      defaultValue={data[0].value}
 | 
			
		||||
      defaultValue={showcase[0].value}
 | 
			
		||||
      className="bottom-0 flex flex-col h-full my-auto"
 | 
			
		||||
    >
 | 
			
		||||
      <TabsList className={`grid w-full mt-4 grid-cols-${data.length}`}>
 | 
			
		||||
        {data.map((item) => (
 | 
			
		||||
      <TabsList className={`grid w-full mt-4 grid-cols-${showcase.length}`}>
 | 
			
		||||
        {showcase.map((item) => (
 | 
			
		||||
          <TabsTrigger value={item.value} key={item.value}>{item.handle}</TabsTrigger>
 | 
			
		||||
        ))}
 | 
			
		||||
      </TabsList>
 | 
			
		||||
      {data.map((item) => (
 | 
			
		||||
      {showcase.map((item) => (
 | 
			
		||||
        <TabsContent value={item.value} className="h-full" key={item.value}>
 | 
			
		||||
          <Card className="h-[90%] my-auto">
 | 
			
		||||
            <CardHeader>
 | 
			
		||||
 
 | 
			
		||||
@@ -1,29 +0,0 @@
 | 
			
		||||
export const data = [
 | 
			
		||||
	{
 | 
			
		||||
	  value: "thisPage",
 | 
			
		||||
	  handle: "Projekt 1",
 | 
			
		||||
	  title: "This Page",
 | 
			
		||||
	  href: "/potato",
 | 
			
		||||
	  description: "random text os iuoiu fsd ufiodsu foid sufo dsufois dufoisd eee sfsdffsdfsd sd sd ds dsfsv sd dss ds ds ufiosdufi osdufsdfsd iofusdoifudu siofsdfids ofudsiouoi",
 | 
			
		||||
	  image: "/temp.jpg", 
 | 
			
		||||
	  imageAlt: "text" 
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
	  value: "thatPage",
 | 
			
		||||
	  title: "That Page",
 | 
			
		||||
	  handle: "Projekt 2",
 | 
			
		||||
	  href: "/potat2",
 | 
			
		||||
	  description: "random text",
 | 
			
		||||
	  image: "/temp.jpg", 
 | 
			
		||||
	  imageAlt: "text" 
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
	  value: "otherPage",
 | 
			
		||||
	  title: "Other Page",
 | 
			
		||||
	  handle: "Projekt 3",
 | 
			
		||||
	  href: "/kartoffeln",
 | 
			
		||||
	  description: "random text",
 | 
			
		||||
	  image: "/temp.jpg", 
 | 
			
		||||
	  imageAlt: "text" 
 | 
			
		||||
	},
 | 
			
		||||
  ];
 | 
			
		||||
@@ -1,3 +1,33 @@
 | 
			
		||||
export const cs = {
 | 
			
		||||
  title: "CS Test",
 | 
			
		||||
  showcase: [
 | 
			
		||||
    {
 | 
			
		||||
      value: "thisPage",
 | 
			
		||||
      handle: "Projekt 1",
 | 
			
		||||
      title: "This Page",
 | 
			
		||||
      href: "/potato",
 | 
			
		||||
      description:
 | 
			
		||||
        "random text os iuoiu fsd ufiodsu foid sufo dsufois dufoisd eee sfsdffsdfsd sd sd ds dsfsv sd dss ds ds ufiosdufi osdufsdfsd iofusdoifudu siofsdfids ofudsiouoi",
 | 
			
		||||
      image: "/temp.jpg",
 | 
			
		||||
      imageAlt: "text",
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      value: "thatPage",
 | 
			
		||||
      title: "That Page",
 | 
			
		||||
      handle: "Projekt 2",
 | 
			
		||||
      href: "/potat2",
 | 
			
		||||
      description: "random text",
 | 
			
		||||
      image: "/temp.jpg",
 | 
			
		||||
      imageAlt: "text",
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      value: "otherPage",
 | 
			
		||||
      title: "Other Page",
 | 
			
		||||
      handle: "Projekt 3",
 | 
			
		||||
      href: "/kartoffeln",
 | 
			
		||||
      description: "random text",
 | 
			
		||||
      image: "/temp.jpg",
 | 
			
		||||
      imageAlt: "text",
 | 
			
		||||
    },
 | 
			
		||||
  ],
 | 
			
		||||
};
 | 
			
		||||
@@ -1,3 +1,34 @@
 | 
			
		||||
export const de = {
 | 
			
		||||
	title: "DE Test",
 | 
			
		||||
};
 | 
			
		||||
	showcase: [
 | 
			
		||||
	  {
 | 
			
		||||
		value: "thisPage",
 | 
			
		||||
		handle: "Projekt 1 DE",
 | 
			
		||||
		title: "This Page",
 | 
			
		||||
		href: "/potato",
 | 
			
		||||
		description:
 | 
			
		||||
		  "random text os iuoiu fsd ufiodsu foid sufo dsufois dufoisd eee sfsdffsdfsd sd sd ds dsfsv sd dss ds ds ufiosdufi osdufsdfsd iofusdoifudu siofsdfids ofudsiouoi",
 | 
			
		||||
		image: "/temp.jpg",
 | 
			
		||||
		imageAlt: "text",
 | 
			
		||||
	  },
 | 
			
		||||
	  {
 | 
			
		||||
		value: "thatPage",
 | 
			
		||||
		title: "That Page",
 | 
			
		||||
		handle: "Projekt 2 DE",
 | 
			
		||||
		href: "/potat2",
 | 
			
		||||
		description: "random text",
 | 
			
		||||
		image: "/temp.jpg",
 | 
			
		||||
		imageAlt: "text",
 | 
			
		||||
	  },
 | 
			
		||||
	  {
 | 
			
		||||
		value: "otherPage",
 | 
			
		||||
		title: "Other Page",
 | 
			
		||||
		handle: "Projekt 3 DE",
 | 
			
		||||
		href: "/kartoffeln",
 | 
			
		||||
		description: "random text",
 | 
			
		||||
		image: "/temp.jpg",
 | 
			
		||||
		imageAlt: "text",
 | 
			
		||||
	  },
 | 
			
		||||
	],
 | 
			
		||||
  };
 | 
			
		||||
  
 | 
			
		||||
@@ -1,3 +1,34 @@
 | 
			
		||||
export const en = {
 | 
			
		||||
	title: "EN Test",
 | 
			
		||||
};
 | 
			
		||||
	showcase: [
 | 
			
		||||
	  {
 | 
			
		||||
		value: "thisPage",
 | 
			
		||||
		handle: "Projekt 1 EN",
 | 
			
		||||
		title: "This Page",
 | 
			
		||||
		href: "/potato",
 | 
			
		||||
		description:
 | 
			
		||||
		  "random text os iuoiu fsd ufiodsu foid sufo dsufois dufoisd eee sfsdffsdfsd sd sd ds dsfsv sd dss ds ds ufiosdufi osdufsdfsd iofusdoifudu siofsdfids ofudsiouoi",
 | 
			
		||||
		image: "/temp.jpg",
 | 
			
		||||
		imageAlt: "text",
 | 
			
		||||
	  },
 | 
			
		||||
	  {
 | 
			
		||||
		value: "thatPage",
 | 
			
		||||
		title: "That Page",
 | 
			
		||||
		handle: "Projekt 2 EN",
 | 
			
		||||
		href: "/potat2",
 | 
			
		||||
		description: "random text",
 | 
			
		||||
		image: "/temp.jpg",
 | 
			
		||||
		imageAlt: "text",
 | 
			
		||||
	  },
 | 
			
		||||
	  {
 | 
			
		||||
		value: "otherPage",
 | 
			
		||||
		title: "Other Page",
 | 
			
		||||
		handle: "Projekt 3 EN",
 | 
			
		||||
		href: "/kartoffeln",
 | 
			
		||||
		description: "random text",
 | 
			
		||||
		image: "/temp.jpg",
 | 
			
		||||
		imageAlt: "text",
 | 
			
		||||
	  },
 | 
			
		||||
	],
 | 
			
		||||
  };
 | 
			
		||||
  
 | 
			
		||||
@@ -1,3 +1,34 @@
 | 
			
		||||
export const fr = {
 | 
			
		||||
	title: "FR Test",
 | 
			
		||||
};
 | 
			
		||||
	showcase: [
 | 
			
		||||
	  {
 | 
			
		||||
		value: "thisPage",
 | 
			
		||||
		handle: "Projekt 1 FR",
 | 
			
		||||
		title: "This Page",
 | 
			
		||||
		href: "/potato",
 | 
			
		||||
		description:
 | 
			
		||||
		  "random text os iuoiu fsd ufiodsu foid sufo dsufois dufoisd eee sfsdffsdfsd sd sd ds dsfsv sd dss ds ds ufiosdufi osdufsdfsd iofusdoifudu siofsdfids ofudsiouoi",
 | 
			
		||||
		image: "/temp.jpg",
 | 
			
		||||
		imageAlt: "text",
 | 
			
		||||
	  },
 | 
			
		||||
	  {
 | 
			
		||||
		value: "thatPage",
 | 
			
		||||
		title: "That Page",
 | 
			
		||||
		handle: "Projekt 2 FR",
 | 
			
		||||
		href: "/potat2",
 | 
			
		||||
		description: "random text",
 | 
			
		||||
		image: "/temp.jpg",
 | 
			
		||||
		imageAlt: "text",
 | 
			
		||||
	  },
 | 
			
		||||
	  {
 | 
			
		||||
		value: "otherPage",
 | 
			
		||||
		title: "Other Page",
 | 
			
		||||
		handle: "Projekt 3 FR",
 | 
			
		||||
		href: "/kartoffeln",
 | 
			
		||||
		description: "random text",
 | 
			
		||||
		image: "/temp.jpg",
 | 
			
		||||
		imageAlt: "text",
 | 
			
		||||
	  },
 | 
			
		||||
	],
 | 
			
		||||
  };
 | 
			
		||||
  
 | 
			
		||||
		Reference in New Issue
	
	Block a user