From f6d933ddd2f5f7c3ca91f9af0d280667684d5fcd Mon Sep 17 00:00:00 2001 From: Luciano Giacchetta Date: Wed, 20 Aug 2025 14:59:55 -0300 Subject: [PATCH] #11 - Update Courses with new Types --- src/components/course/course-hero.astro | 10 +++---- src/libs/courses.ts | 36 ++++++++++++++++++++----- 2 files changed, 34 insertions(+), 12 deletions(-) diff --git a/src/components/course/course-hero.astro b/src/components/course/course-hero.astro index 4cd5c17..046129d 100644 --- a/src/components/course/course-hero.astro +++ b/src/components/course/course-hero.astro @@ -46,11 +46,11 @@ const { course }: Props = Astro.props;

Incluido en Carreras:

- {course.codyops_careers.map((carrer: any) => ( - - {carrer.codyops_careers_id.name} + {course.codyops_careers.map((career: any) => ( + + {career.codyops_careers_id.name} - ))} + ))}
\ No newline at end of file + diff --git a/src/libs/courses.ts b/src/libs/courses.ts index 5110360..8875efb 100644 --- a/src/libs/courses.ts +++ b/src/libs/courses.ts @@ -1,14 +1,37 @@ import directus from "./directus"; -import { readItems } from "@directus/sdk"; +import { readItems, type Query } from "@directus/sdk"; +import type { CodyopsCourses, Courses } from "../types/codyops-courses"; export const courses = await directus.request( - readItems("codyops_courses", { + readItems>("codyops_courses", { fields: [ '*', - 'user_created.*', - 'modules.*', - 'codyops_careers.codyops_careers_id.name', - 'codyops_careers.codyops_careers_id.slug', + { + codyops_careers: [ + { + codyops_careers_id: [ + 'name', + 'slug' + ] + } + ] + }, + { + user_created: [ + 'first_name', + 'last_name', + 'avatar', + 'url' + ] + }, + { + modules: [ + 'duration', + 'title', + 'description', + 'video' + ] + } ]} ) ); @@ -30,4 +53,3 @@ export function filterCoursesByCategory(courses: any, category: any) { export function filterCoursesByCloud(courses: any, clouds: string[]) { return courses.filter((course: any) => course.cloud?.includes(clouds)); }; -