├── .gitignore
├── astro-2-starter
├── src
│ ├── pages
│ │ ├── search.json.ts
│ │ ├── search.astro
│ │ └── index.astro
│ ├── env.d.ts
│ └── layouts
│ │ └── Layout.astro
├── .vscode
│ ├── extensions.json
│ └── launch.json
├── .gitignore
├── tailwind.config.cjs
├── astro.config.mjs
├── tsconfig.json
├── public
│ └── favicon.svg
├── package.json
├── README.md
├── scripts
│ └── updateVideos.mjs
└── .astro
│ └── types.d.ts
└── youtube-catalog
├── .vscode
├── extensions.json
└── launch.json
├── src
├── env.d.ts
├── lib
│ └── createSlug.ts
├── pages
│ ├── search.astro
│ ├── index.astro
│ ├── videos
│ │ └── [slug].astro
│ └── search.json.ts
├── content
│ ├── config.ts
│ └── videos
│ │ ├── PSzCtdM20Fc.mdx
│ │ ├── qCX8rw4qOSA.mdx
│ │ └── wtb1JRE-fgk.mdx
├── components
│ ├── VideoCard.tsx
│ ├── SearchPage.tsx
│ └── VideoGrid.tsx
└── layouts
│ └── Layout.astro
├── .gitignore
├── tailwind.config.cjs
├── astro.config.mjs
├── tsconfig.json
├── public
└── favicon.svg
├── package.json
├── README.md
├── scripts
└── updateVideos.mjs
└── .astro
└── types.d.ts
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | dist
3 |
--------------------------------------------------------------------------------
/astro-2-starter/src/pages/search.json.ts:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/astro-2-starter/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": ["astro-build.astro-vscode"],
3 | "unwantedRecommendations": []
4 | }
5 |
--------------------------------------------------------------------------------
/astro-2-starter/src/env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | // using a relative path `../` to the `.astro` directory
3 |
--------------------------------------------------------------------------------
/youtube-catalog/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": ["astro-build.astro-vscode"],
3 | "unwantedRecommendations": []
4 | }
5 |
--------------------------------------------------------------------------------
/youtube-catalog/src/env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | // using a relative path `../` to the `.astro` directory
3 |
--------------------------------------------------------------------------------
/astro-2-starter/src/pages/search.astro:
--------------------------------------------------------------------------------
1 | ---
2 | import Layout from "../layouts/Layout.astro";
3 | ---
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/astro-2-starter/src/pages/index.astro:
--------------------------------------------------------------------------------
1 | ---
2 | export const prerender = true;
3 |
4 | import Layout from "../layouts/Layout.astro";
5 | ---
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/youtube-catalog/src/lib/createSlug.ts:
--------------------------------------------------------------------------------
1 | export default function (title: string) {
2 | return title
3 | .replace(/[^A-Za-z0-9 ]/g, "")
4 | .trim()
5 | .replace(/\s+/g, "_");
6 | }
7 |
--------------------------------------------------------------------------------
/youtube-catalog/src/pages/search.astro:
--------------------------------------------------------------------------------
1 | ---
2 | import Layout from "../layouts/Layout.astro";
3 |
4 | import SearchPage from "../components/SearchPage";
5 | ---
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/astro-2-starter/.vscode/launch.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "0.2.0",
3 | "configurations": [
4 | {
5 | "command": "./node_modules/.bin/astro dev",
6 | "name": "Development server",
7 | "request": "launch",
8 | "type": "node-terminal"
9 | }
10 | ]
11 | }
12 |
--------------------------------------------------------------------------------
/youtube-catalog/.vscode/launch.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "0.2.0",
3 | "configurations": [
4 | {
5 | "command": "./node_modules/.bin/astro dev",
6 | "name": "Development server",
7 | "request": "launch",
8 | "type": "node-terminal"
9 | }
10 | ]
11 | }
12 |
--------------------------------------------------------------------------------
/astro-2-starter/.gitignore:
--------------------------------------------------------------------------------
1 | # build output
2 | dist/
3 |
4 | # dependencies
5 | node_modules/
6 |
7 | # logs
8 | npm-debug.log*
9 | yarn-debug.log*
10 | yarn-error.log*
11 | pnpm-debug.log*
12 |
13 |
14 | # environment variables
15 | .env
16 | .env.production
17 |
18 | # macOS-specific files
19 | .DS_Store
20 |
--------------------------------------------------------------------------------
/youtube-catalog/.gitignore:
--------------------------------------------------------------------------------
1 | # build output
2 | dist/
3 |
4 | # dependencies
5 | node_modules/
6 |
7 | # logs
8 | npm-debug.log*
9 | yarn-debug.log*
10 | yarn-error.log*
11 | pnpm-debug.log*
12 |
13 |
14 | # environment variables
15 | .env
16 | .env.production
17 |
18 | # macOS-specific files
19 | .DS_Store
20 |
--------------------------------------------------------------------------------
/astro-2-starter/tailwind.config.cjs:
--------------------------------------------------------------------------------
1 | /** @type {import('tailwindcss').Config} */
2 | module.exports = {
3 | content: ["./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}"],
4 | theme: {
5 | extend: {},
6 | },
7 | corePlugins: {
8 | aspectRatio: false,
9 | },
10 | plugins: [
11 | require("@tailwindcss/aspect-ratio"),
12 | require("@tailwindcss/typography"),
13 | require("@tailwindcss/line-clamp"),
14 | ],
15 | };
16 |
--------------------------------------------------------------------------------
/youtube-catalog/tailwind.config.cjs:
--------------------------------------------------------------------------------
1 | /** @type {import('tailwindcss').Config} */
2 | module.exports = {
3 | content: ["./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}"],
4 | theme: {
5 | extend: {},
6 | },
7 | corePlugins: {
8 | aspectRatio: false,
9 | },
10 | plugins: [
11 | require("@tailwindcss/aspect-ratio"),
12 | require("@tailwindcss/typography"),
13 | require("@tailwindcss/line-clamp"),
14 | ],
15 | };
16 |
--------------------------------------------------------------------------------
/youtube-catalog/astro.config.mjs:
--------------------------------------------------------------------------------
1 | import { defineConfig } from "astro/config";
2 | import mdx from "@astrojs/mdx";
3 | import tailwind from "@astrojs/tailwind";
4 | import node from "@astrojs/node";
5 | import preact from "@astrojs/preact";
6 |
7 | export default defineConfig({
8 | integrations: [
9 | mdx(),
10 | node({
11 | mode: "standalone",
12 | }),
13 | preact(),
14 | tailwind(),
15 | ],
16 | output: "server",
17 | });
18 |
--------------------------------------------------------------------------------
/astro-2-starter/astro.config.mjs:
--------------------------------------------------------------------------------
1 | import { defineConfig } from "astro/config";
2 | import mdx from "@astrojs/mdx";
3 | import tailwind from "@astrojs/tailwind";
4 | import node from "@astrojs/node";
5 | import preact from "@astrojs/preact";
6 |
7 | export default defineConfig({
8 | integrations: [
9 | mdx(),
10 | // node({
11 | // mode: "standalone",
12 | // }),
13 | preact(),
14 | tailwind(),
15 | ],
16 | // output: "server",
17 | });
18 |
--------------------------------------------------------------------------------
/youtube-catalog/src/pages/index.astro:
--------------------------------------------------------------------------------
1 | ---
2 | import { getCollection } from "astro:content";
3 |
4 | export const prerender = true;
5 |
6 | import VideoGrid from "../components/VideoGrid";
7 | import Layout from "../layouts/Layout.astro";
8 |
9 | const allVideos = await getCollection("videos");
10 | const recentVideos = [...allVideos]
11 | .sort((a, b) => b.data.publishedAt.getTime() - a.data.publishedAt.getTime())
12 | .slice(0, 10);
13 | ---
14 |
15 |
16 | Videos:
17 |
18 |
19 |
--------------------------------------------------------------------------------
/astro-2-starter/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | // Enable top-level await, and other modern ESM features.
4 | "target": "ESNext",
5 | "module": "ESNext",
6 | // Enable node-style module resolution, for things like npm package imports.
7 | "moduleResolution": "node",
8 | // Enable JSON imports.
9 | "resolveJsonModule": true,
10 | "allowSyntheticDefaultImports": true,
11 | // Enable stricter transpilation for better output.
12 | "isolatedModules": true,
13 | // Add type definitions for our Astro runtime.
14 | "types": ["node"],
15 | "strictNullChecks": true,
16 | "jsx": "react-jsx",
17 | "jsxImportSource": "preact",
18 | "noUncheckedIndexedAccess": true
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/youtube-catalog/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | // Enable top-level await, and other modern ESM features.
4 | "target": "ESNext",
5 | "module": "ESNext",
6 | // Enable node-style module resolution, for things like npm package imports.
7 | "moduleResolution": "node",
8 | // Enable JSON imports.
9 | "resolveJsonModule": true,
10 | "allowSyntheticDefaultImports": true,
11 | // Enable stricter transpilation for better output.
12 | "isolatedModules": true,
13 | // Add type definitions for our Astro runtime.
14 | "types": ["node"],
15 | "strictNullChecks": true,
16 | "jsx": "react-jsx",
17 | "jsxImportSource": "preact",
18 | "noUncheckedIndexedAccess": true
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/youtube-catalog/src/content/config.ts:
--------------------------------------------------------------------------------
1 | import { z, defineCollection } from "astro:content";
2 |
3 | // A Schema to be shared by all thumbnails
4 | const thumbnailSchema = z.object({
5 | url: z.string(),
6 | width: z.number(),
7 | height: z.number(),
8 | });
9 |
10 | const videoSchema = defineCollection({
11 | schema: z.object({
12 | title: z.string(),
13 | publishedAt: z.date(),
14 | tags: z.array(z.string()).optional(),
15 | privacyStatus: z.enum(["public"]),
16 | short: z.boolean(),
17 | thumbnails: z.object({
18 | default: thumbnailSchema,
19 | medium: thumbnailSchema,
20 | high: thumbnailSchema,
21 | standard: thumbnailSchema,
22 | maxres: thumbnailSchema.optional(),
23 | }),
24 | }),
25 | });
26 |
27 | export const collections = {
28 | videos: videoSchema,
29 | };
30 |
--------------------------------------------------------------------------------
/youtube-catalog/src/components/VideoCard.tsx:
--------------------------------------------------------------------------------
1 | import { ComponentChildren, JSX } from "preact";
2 |
3 | export default function ({
4 | thumbnails,
5 | title,
6 | }: {
7 | thumbnails: {
8 | high: {
9 | url: string;
10 | };
11 | };
12 | title: string;
13 | }) {
14 | return (
15 |
16 |
17 |
22 |
23 |
24 |
25 | {title}
26 |
27 |
28 |
29 | );
30 | }
31 |
--------------------------------------------------------------------------------
/astro-2-starter/public/favicon.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
13 |
14 |
--------------------------------------------------------------------------------
/youtube-catalog/public/favicon.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
13 |
14 |
--------------------------------------------------------------------------------
/astro-2-starter/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "youtube-catalog",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "dev": "astro dev",
7 | "start": "astro dev",
8 | "build": "astro build",
9 | "preview": "astro preview",
10 | "update-videos": "node --experimental-fetch scripts/updateVideos.mjs"
11 | },
12 | "devDependencies": {
13 | "@astrojs/mdx": "1.0.0-beta.2",
14 | "@astrojs/tailwind": "3.0.0-beta.1",
15 | "@tailwindcss/aspect-ratio": "^0.4.2",
16 | "@tailwindcss/line-clamp": "^0.4.2",
17 | "@tailwindcss/typography": "^0.5.8",
18 | "@types/lunr": "^2.3.4",
19 | "@types/node": "^18.11.18",
20 | "astro": "2.0.0-beta.2",
21 | "astro-icon": "^0.8.0",
22 | "date-fns": "^2.29.3",
23 | "tailwindcss": "^3.2.4",
24 | "yaml": "^2.2.1"
25 | },
26 | "dependencies": {
27 | "@astrojs/node": "^5.0.0-beta.1",
28 | "@astrojs/preact": "^1.2.0",
29 | "@tailwindcss/container-queries": "^0.1.0",
30 | "lunr": "^2.3.9",
31 | "preact": "^10.11.3",
32 | "zod": "^3.20.2"
33 | }
34 | }
--------------------------------------------------------------------------------
/youtube-catalog/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "youtube-catalog",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "dev": "astro dev",
7 | "start": "astro dev",
8 | "build": "astro build",
9 | "preview": "astro preview",
10 | "update-videos": "node --experimental-fetch scripts/updateVideos.mjs"
11 | },
12 | "devDependencies": {
13 | "@astrojs/mdx": "1.0.0-beta.2",
14 | "@astrojs/tailwind": "3.0.0-beta.1",
15 | "@tailwindcss/aspect-ratio": "^0.4.2",
16 | "@tailwindcss/line-clamp": "^0.4.2",
17 | "@tailwindcss/typography": "^0.5.8",
18 | "@types/lunr": "^2.3.4",
19 | "@types/node": "^18.11.18",
20 | "astro": "2.0.0-beta.2",
21 | "astro-icon": "^0.8.0",
22 | "date-fns": "^2.29.3",
23 | "tailwindcss": "^3.2.4",
24 | "yaml": "^2.2.1"
25 | },
26 | "dependencies": {
27 | "@astrojs/node": "^5.0.0-beta.1",
28 | "@astrojs/preact": "^1.2.0",
29 | "@tailwindcss/container-queries": "^0.1.0",
30 | "lunr": "^2.3.9",
31 | "preact": "^10.11.3",
32 | "zod": "^3.20.2"
33 | }
34 | }
--------------------------------------------------------------------------------
/youtube-catalog/src/pages/videos/[slug].astro:
--------------------------------------------------------------------------------
1 | ---
2 | import { getCollection } from "astro:content";
3 |
4 | export const prerender = true;
5 |
6 | import Layout from "../../layouts/Layout.astro";
7 | import createSlug from "../../lib/createSlug";
8 |
9 | export async function getStaticPaths() {
10 | const video = await getCollection("videos");
11 | return video.map((video) => ({
12 | params: { slug: createSlug(video.data.title) },
13 | props: video,
14 | }));
15 | }
16 |
17 | const { data, render, id } = Astro.props;
18 | const { Content } = await render();
19 | ---
20 |
21 |
22 | {data.title}
23 |
24 | VIDEO
29 |
30 |
31 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/youtube-catalog/src/content/videos/PSzCtdM20Fc.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: "NextJS to Astro: more control = faster sites"
3 | publishedAt: 2022-08-15T14:53:56Z
4 | thumbnails:
5 | default:
6 | url: https://i.ytimg.com/vi/PSzCtdM20Fc/default.jpg
7 | width: 120
8 | height: 90
9 | medium:
10 | url: https://i.ytimg.com/vi/PSzCtdM20Fc/mqdefault.jpg
11 | width: 320
12 | height: 180
13 | high:
14 | url: https://i.ytimg.com/vi/PSzCtdM20Fc/hqdefault.jpg
15 | width: 480
16 | height: 360
17 | standard:
18 | url: https://i.ytimg.com/vi/PSzCtdM20Fc/sddefault.jpg
19 | width: 640
20 | height: 480
21 | maxres:
22 | url: https://i.ytimg.com/vi/PSzCtdM20Fc/maxresdefault.jpg
23 | width: 1280
24 | height: 720
25 | tags:
26 | - Astro
27 | - NextJS
28 | privacyStatus: public
29 | short: false
30 | ---
31 |
32 | {" "}
33 |
34 | About
35 | August 15, 2022
36 |
37 | Astro
38 | NextJS
39 |
40 | {/* prettier-ignore */}
41 | How Astro makes site that are blazingly fast with ease.
42 |
--------------------------------------------------------------------------------
/youtube-catalog/src/pages/search.json.ts:
--------------------------------------------------------------------------------
1 | import { CollectionEntry, getCollection } from "astro:content";
2 | import lunr from "lunr";
3 | import { URL } from "node:url";
4 |
5 | type VideoId = Pick, "id">["id"];
6 |
7 | const videosPromise = getCollection("videos").then((videos) => ({
8 | videos,
9 | index: lunr(function () {
10 | this.ref("id");
11 | this.field("title");
12 | this.field("body");
13 | this.field("tags");
14 |
15 | videos.forEach((video) => {
16 | this.add({
17 | title: video.data.title,
18 | body: video.body,
19 | tags: video.data.tags,
20 | id: video.id,
21 | });
22 | });
23 | }),
24 | }));
25 |
26 | export async function get({ request }) {
27 | const videoIndex = await videosPromise;
28 |
29 | const q = new URL(request.url).searchParams.get("q")?.toLowerCase();
30 |
31 | const videos = videoIndex.index
32 | .search(q ?? "")
33 | .map((res) => {
34 | const id = res.ref as VideoId;
35 | return videoIndex.videos.find((video) => video.id === id);
36 | })
37 | .filter((a) => a)
38 | .sort(
39 | (a, b) => b!.data.publishedAt.getTime() - a!.data.publishedAt.getTime()
40 | );
41 |
42 | return new Response(JSON.stringify(videos.slice(0, 10)), {
43 | status: 200,
44 | headers: {
45 | "Content-Type": "application/json",
46 | },
47 | });
48 | }
49 |
--------------------------------------------------------------------------------
/astro-2-starter/src/layouts/Layout.astro:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Blue Collar Coder Videos{Astro.props.title ? `: ${Astro.props.title}` : ''}
8 |
9 |
10 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/youtube-catalog/src/content/videos/qCX8rw4qOSA.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Bun vs Node: Round 2 (feat. Astro, Deno, Fresh and more)"
3 | publishedAt: 2022-08-29T15:02:13Z
4 | thumbnails:
5 | default:
6 | url: https://i.ytimg.com/vi/qCX8rw4qOSA/default.jpg
7 | width: 120
8 | height: 90
9 | medium:
10 | url: https://i.ytimg.com/vi/qCX8rw4qOSA/mqdefault.jpg
11 | width: 320
12 | height: 180
13 | high:
14 | url: https://i.ytimg.com/vi/qCX8rw4qOSA/hqdefault.jpg
15 | width: 480
16 | height: 360
17 | standard:
18 | url: https://i.ytimg.com/vi/qCX8rw4qOSA/sddefault.jpg
19 | width: 640
20 | height: 480
21 | maxres:
22 | url: https://i.ytimg.com/vi/qCX8rw4qOSA/maxresdefault.jpg
23 | width: 1280
24 | height: 720
25 | tags:
26 | - Bun
27 | - Node
28 | - Fresh
29 | - Astro
30 | - Remix
31 | privacyStatus: public
32 | short: false
33 | ---
34 |
35 | {" "}
36 |
37 | About
38 | August 29, 2022
39 |
40 | Bun
41 | Node
42 | Fresh
43 | Astro
44 | Remix
45 |
46 | {/* prettier-ignore */}
47 | Let's compare Bun vs Node in a head-to-head speed test.
48 |
--------------------------------------------------------------------------------
/youtube-catalog/src/components/SearchPage.tsx:
--------------------------------------------------------------------------------
1 | import { useState, useEffect } from "preact/hooks";
2 |
3 | import { CollectionEntry } from "astro:content";
4 |
5 | import VideoGrid from "./VideoGrid";
6 |
7 | type VideoData = CollectionEntry<"videos">;
8 |
9 | export default function SearchPage() {
10 | const [search, setSearch] = useState("");
11 | const [videos, setVideos] = useState([]);
12 | const [isLoading, setIsLoading] = useState(true)
13 |
14 | useEffect(() => {
15 | fetch(`/search.json?q=${encodeURIComponent(search)}`)
16 | .then((res) => res.json())
17 | .then((data) => {
18 | setVideos(data);
19 | setIsLoading(false);
20 | });
21 | }, [search]);
22 |
23 | return (
24 |
25 |
26 |
27 |
28 |
29 |
30 |
setSearch(e.currentTarget.value)}
36 | />
37 |
38 |
Matched Videos:
39 |
40 |
41 | );
42 | }
43 |
--------------------------------------------------------------------------------
/youtube-catalog/README.md:
--------------------------------------------------------------------------------
1 | # Astro Starter Kit: Minimal
2 |
3 | ```
4 | npm create astro@latest -- --template minimal
5 | ```
6 |
7 | [](https://stackblitz.com/github/withastro/astro/tree/latest/examples/minimal)
8 | [](https://codesandbox.io/s/github/withastro/astro/tree/latest/examples/minimal)
9 |
10 | > 🧑🚀 **Seasoned astronaut?** Delete this file. Have fun!
11 |
12 | ## 🚀 Project Structure
13 |
14 | Inside of your Astro project, you'll see the following folders and files:
15 |
16 | ```
17 | /
18 | ├── public/
19 | ├── src/
20 | │ └── pages/
21 | │ └── index.astro
22 | └── package.json
23 | ```
24 |
25 | Astro looks for `.astro` or `.md` files in the `src/pages/` directory. Each page is exposed as a route based on its file name.
26 |
27 | There's nothing special about `src/components/`, but that's where we like to put any Astro/React/Vue/Svelte/Preact components.
28 |
29 | Any static assets, like images, can be placed in the `public/` directory.
30 |
31 | ## 🧞 Commands
32 |
33 | All commands are run from the root of the project, from a terminal:
34 |
35 | | Command | Action |
36 | | :--------------------- | :----------------------------------------------- |
37 | | `npm install` | Installs dependencies |
38 | | `npm run dev` | Starts local dev server at `localhost:3000` |
39 | | `npm run build` | Build your production site to `./dist/` |
40 | | `npm run preview` | Preview your build locally, before deploying |
41 | | `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |
42 | | `npm run astro --help` | Get help using the Astro CLI |
43 |
44 | ## 👀 Want to learn more?
45 |
46 | Feel free to check [our documentation](https://docs.astro.build) or jump into our [Discord server](https://astro.build/chat).
47 |
--------------------------------------------------------------------------------
/youtube-catalog/src/content/videos/wtb1JRE-fgk.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: Islands Architecture, Web Devs Next Big Thing
3 | publishedAt: 2023-01-20T15:17:22Z
4 | thumbnails:
5 | default:
6 | url: https://i.ytimg.com/vi/wtb1JRE-fgk/default.jpg
7 | width: 120
8 | height: 90
9 | medium:
10 | url: https://i.ytimg.com/vi/wtb1JRE-fgk/mqdefault.jpg
11 | width: 320
12 | height: 180
13 | high:
14 | url: https://i.ytimg.com/vi/wtb1JRE-fgk/hqdefault.jpg
15 | width: 480
16 | height: 360
17 | standard:
18 | url: https://i.ytimg.com/vi/wtb1JRE-fgk/sddefault.jpg
19 | width: 640
20 | height: 480
21 | maxres:
22 | url: https://i.ytimg.com/vi/wtb1JRE-fgk/maxresdefault.jpg
23 | width: 1280
24 | height: 720
25 | tags:
26 | - Astro
27 | - Deno
28 | - Fresh
29 | - Islands Architecture
30 | - React Hydration
31 | - NextJS
32 | privacyStatus: public
33 | short: true
34 | ---
35 |
36 | {" "}
37 |
38 | About
39 | January 20, 2023
40 |
41 | Astro
42 | Deno
43 | Fresh
44 | {/* prettier-ignore */}
45 | Islands Architecture
46 | {/* prettier-ignore */}
47 | React Hydration
48 | NextJS
49 |
50 | {/* prettier-ignore */}
51 | Bundle sizes and hydration problems are killing web applications. See how IslandsArchitecture flips all that on its head and allows you to still use JavaScript torender your page. While still having "islands" of dynamic behavior on the client.
52 |
53 | ```ts
54 | // You can embed code just like this
55 | const add = (a: number, b: number) => a + b;
56 | ```
57 |
--------------------------------------------------------------------------------
/astro-2-starter/README.md:
--------------------------------------------------------------------------------
1 | # Astro Starter Kit: Minimal
2 |
3 | ```
4 | npm create astro@latest -- --template minimal
5 | ```
6 |
7 | [](https://stackblitz.com/github/withastro/astro/tree/latest/examples/minimal)
8 | [](https://codesandbox.io/s/github/withastro/astro/tree/latest/examples/minimal)
9 |
10 | > 🧑🚀 **Seasoned astronaut?** Delete this file. Have fun!
11 |
12 | ## 🚀 Project Structure
13 |
14 | Inside of your Astro project, you'll see the following folders and files:
15 |
16 | ```
17 | /
18 | ├── public/
19 | ├── src/
20 | │ └── pages/
21 | │ └── index.astro
22 | └── package.json
23 | ```
24 |
25 | Astro looks for `.astro` or `.md` files in the `src/pages/` directory. Each page is exposed as a route based on its file name.
26 |
27 | There's nothing special about `src/components/`, but that's where we like to put any Astro/React/Vue/Svelte/Preact components.
28 |
29 | Any static assets, like images, can be placed in the `public/` directory.
30 |
31 | ## 🧞 Commands
32 |
33 | All commands are executed from the root of the project, from a terminal:
34 |
35 | | Command | Action |
36 | | :--------------------- | :----------------------------------------------- |
37 | | `npm install` | Installs dependencies |
38 | | `npm run dev` | Starts local dev server at `localhost:3000` |
39 | | `npm run build` | Build your production site to `./dist/` |
40 | | `npm run preview` | Preview your build locally, before deploying |
41 | | `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |
42 | | `npm run astro --help` | Get help using the Astro CLI |
43 |
44 | ## 👀 Want to learn more?
45 |
46 | Feel free to check [our documentation](https://docs.astro.build) or jump into our [Discord server](https://astro.build/chat).
47 |
--------------------------------------------------------------------------------
/youtube-catalog/src/components/VideoGrid.tsx:
--------------------------------------------------------------------------------
1 | import { CollectionEntry } from "astro:content";
2 |
3 | import VideoCard from "./VideoCard";
4 | import createSlug from "../lib/createSlug";
5 |
6 | export default function VideoGrid({
7 | videos,
8 | isLoading
9 | }: {
10 | videos: CollectionEntry<"videos">[];
11 | isLoading?: Boolean;
12 | }) {
13 |
14 | if(isLoading) return Loading videos...
15 |
16 | return (
17 | <>
18 |
22 | {videos.map(({ data }) => (
23 |
24 |
25 |
26 |
27 |
28 | ))}
29 |
30 | {videos.length < 1 &&
31 |
32 |
33 |
34 |
35 |
No video was found, try these queries:
36 |
37 | Bun
38 | Node
39 | Fresh
40 | Astro
41 | Remix
42 |
43 |
}
44 | >
45 | );
46 | }
47 |
--------------------------------------------------------------------------------
/astro-2-starter/scripts/updateVideos.mjs:
--------------------------------------------------------------------------------
1 | import fs from "node:fs";
2 | import { stringify } from "yaml";
3 |
4 | const YOUTUBE_API_KEY = process.env.YOUTUBE_API_KEY;
5 | const YOUTUBE_CHANNEL_ID =
6 | process.env.YOUTUBE_CHANNEL_ID || "UC6vRUjYqDuoUsYsku86Lrsw";
7 |
8 | const videoPath = (videoId) => `./src/content/videos/${videoId}.mdx`;
9 |
10 | const videos = [];
11 |
12 | let nextPageToken = null;
13 | do {
14 | const listUrl = `https://youtube.googleapis.com/youtube/v3/search?key=${YOUTUBE_API_KEY}&channelId=${YOUTUBE_CHANNEL_ID}&part=snippet,id&order=date&maxResults=500${
15 | nextPageToken ? `&pageToken=${nextPageToken}` : ""
16 | }`;
17 | const listRes = await (await fetch(listUrl)).json();
18 | for (const item of listRes.items ?? []) {
19 | if (!fs.existsSync(videoPath(item.id.videoId))) {
20 | videos.push(item.id.videoId);
21 | }
22 | }
23 | nextPageToken = listRes.nextPageToken;
24 | console.log(nextPageToken);
25 | } while (nextPageToken);
26 |
27 | videos
28 | .map((videoId) =>
29 | fetch(
30 | `https://youtube.googleapis.com/youtube/v3/videos?part=snippet,status&id=${videoId}&key=${YOUTUBE_API_KEY}`
31 | ).then((resp) => resp.json())
32 | )
33 | .reduce(async (acc, cur) => {
34 | const data = await cur;
35 | const firstItem = data.items[0];
36 | if (firstItem?.id) {
37 | const { id, snippet, status } = firstItem;
38 | fs.writeFileSync(
39 | videoPath(id),
40 | `---
41 | ${stringify({
42 | title: snippet.localized.title,
43 | publishedAt: snippet.publishedAt.toString(),
44 | thumbnails: snippet.thumbnails,
45 | tags: snippet.tags,
46 | privacyStatus: status.privacyStatus,
47 | short: snippet.localized.description.includes("#shorts"),
48 | })}---
49 |
50 | ${snippet.localized.description}
51 | `
52 | );
53 | }
54 | }, Promise.resolve());
55 |
56 | const videoFiles = fs.readdirSync("./src/content/videos");
57 | fs.writeFileSync(
58 | "./src/content/videos.ts",
59 | `export enum VideoIDsType { ${videoFiles
60 | .map((v) => `"${v}" = "${v}"`)
61 | .join(", ")} };`
62 | );
63 |
--------------------------------------------------------------------------------
/youtube-catalog/scripts/updateVideos.mjs:
--------------------------------------------------------------------------------
1 | import fs from "node:fs";
2 | import { stringify } from "yaml";
3 |
4 | const YOUTUBE_API_KEY = process.env.YOUTUBE_API_KEY;
5 | const YOUTUBE_CHANNEL_ID =
6 | process.env.YOUTUBE_CHANNEL_ID || "UC6vRUjYqDuoUsYsku86Lrsw";
7 |
8 | const videoPath = (videoId) => `./src/content/videos/${videoId}.mdx`;
9 |
10 | const videos = [];
11 |
12 | let nextPageToken = null;
13 | do {
14 | const listUrl = `https://youtube.googleapis.com/youtube/v3/search?key=${YOUTUBE_API_KEY}&channelId=${YOUTUBE_CHANNEL_ID}&part=snippet,id&order=date&maxResults=500${
15 | nextPageToken ? `&pageToken=${nextPageToken}` : ""
16 | }`;
17 | const listRes = await (await fetch(listUrl)).json();
18 | for (const item of listRes.items ?? []) {
19 | if (!fs.existsSync(videoPath(item.id.videoId))) {
20 | videos.push(item.id.videoId);
21 | }
22 | }
23 | nextPageToken = listRes.nextPageToken;
24 | console.log(nextPageToken);
25 | } while (nextPageToken);
26 |
27 | videos
28 | .map((videoId) =>
29 | fetch(
30 | `https://youtube.googleapis.com/youtube/v3/videos?part=snippet,status&id=${videoId}&key=${YOUTUBE_API_KEY}`
31 | ).then((resp) => resp.json())
32 | )
33 | .reduce(async (acc, cur) => {
34 | const data = await cur;
35 | const firstItem = data.items[0];
36 | if (firstItem?.id) {
37 | const { id, snippet, status } = firstItem;
38 | fs.writeFileSync(
39 | videoPath(id),
40 | `---
41 | ${stringify({
42 | title: snippet.localized.title,
43 | publishedAt: snippet.publishedAt.toString(),
44 | thumbnails: snippet.thumbnails,
45 | tags: snippet.tags,
46 | privacyStatus: status.privacyStatus,
47 | short: snippet.localized.description.includes("#shorts"),
48 | })}---
49 |
50 | ${snippet.localized.description}
51 | `
52 | );
53 | }
54 | }, Promise.resolve());
55 |
56 | const videoFiles = fs.readdirSync("./src/content/videos");
57 | fs.writeFileSync(
58 | "./src/content/videos.ts",
59 | `export enum VideoIDsType { ${videoFiles
60 | .map((v) => `"${v}" = "${v}"`)
61 | .join(", ")} };`
62 | );
63 |
--------------------------------------------------------------------------------
/youtube-catalog/src/layouts/Layout.astro:
--------------------------------------------------------------------------------
1 | ---
2 | const pathname = Astro.url.pathname;
3 | ---
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | Blue Collar Coder Videos{
13 | Astro.props.title ? `: ${Astro.props.title}` : ""
14 | }
15 |
16 |
17 |
18 |
63 |
64 |
65 |
66 |
67 |
--------------------------------------------------------------------------------
/youtube-catalog/.astro/types.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'astro:content' {
2 | export { z } from 'astro/zod';
3 | export type CollectionEntry =
4 | (typeof entryMap)[C][keyof (typeof entryMap)[C]] & Render;
5 |
6 | type BaseSchemaWithoutEffects =
7 | | import('astro/zod').AnyZodObject
8 | | import('astro/zod').ZodUnion
9 | | import('astro/zod').ZodDiscriminatedUnion
10 | | import('astro/zod').ZodIntersection<
11 | import('astro/zod').AnyZodObject,
12 | import('astro/zod').AnyZodObject
13 | >;
14 |
15 | type BaseSchema =
16 | | BaseSchemaWithoutEffects
17 | | import('astro/zod').ZodEffects;
18 |
19 | type BaseCollectionConfig = {
20 | schema?: S;
21 | slug?: (entry: {
22 | id: CollectionEntry['id'];
23 | defaultSlug: string;
24 | collection: string;
25 | body: string;
26 | data: import('astro/zod').infer;
27 | }) => string | Promise;
28 | };
29 | export function defineCollection(
30 | input: BaseCollectionConfig
31 | ): BaseCollectionConfig;
32 |
33 | export function getEntry(
34 | collection: C,
35 | entryKey: E
36 | ): Promise<(typeof entryMap)[C][E] & Render>;
37 | export function getCollection<
38 | C extends keyof typeof entryMap,
39 | E extends keyof (typeof entryMap)[C]
40 | >(
41 | collection: C,
42 | filter?: (data: (typeof entryMap)[C][E]) => boolean
43 | ): Promise<((typeof entryMap)[C][E] & Render)[]>;
44 |
45 | type InferEntrySchema = import('astro/zod').infer<
46 | Required['schema']
47 | >;
48 |
49 | type Render = {
50 | render(): Promise<{
51 | Content: import('astro').MarkdownInstance<{}>['Content'];
52 | headings: import('astro').MarkdownHeading[];
53 | remarkPluginFrontmatter: Record;
54 | }>;
55 | };
56 |
57 | const entryMap: {
58 | "videos": {
59 | "PSzCtdM20Fc.mdx": {
60 | id: "PSzCtdM20Fc.mdx",
61 | slug: "pszctdm20fc",
62 | body: string,
63 | collection: "videos",
64 | data: InferEntrySchema<"videos">
65 | },
66 | "qCX8rw4qOSA.mdx": {
67 | id: "qCX8rw4qOSA.mdx",
68 | slug: "qcx8rw4qosa",
69 | body: string,
70 | collection: "videos",
71 | data: InferEntrySchema<"videos">
72 | },
73 | "wtb1JRE-fgk.mdx": {
74 | id: "wtb1JRE-fgk.mdx",
75 | slug: "wtb1jre-fgk",
76 | body: string,
77 | collection: "videos",
78 | data: InferEntrySchema<"videos">
79 | },
80 | },
81 |
82 | };
83 |
84 | type ContentConfig = typeof import("../src/content/config");
85 | }
86 |
--------------------------------------------------------------------------------
/astro-2-starter/.astro/types.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'astro:content' {
2 | export { z } from 'astro/zod';
3 | export type CollectionEntry =
4 | (typeof entryMap)[C][keyof (typeof entryMap)[C]] & Render;
5 |
6 | type BaseSchemaWithoutEffects =
7 | | import('astro/zod').AnyZodObject
8 | | import('astro/zod').ZodUnion
9 | | import('astro/zod').ZodDiscriminatedUnion
10 | | import('astro/zod').ZodIntersection<
11 | import('astro/zod').AnyZodObject,
12 | import('astro/zod').AnyZodObject
13 | >;
14 |
15 | type BaseSchema =
16 | | BaseSchemaWithoutEffects
17 | | import('astro/zod').ZodEffects;
18 |
19 | type BaseCollectionConfig = {
20 | schema?: S;
21 | slug?: (entry: {
22 | id: CollectionEntry['id'];
23 | defaultSlug: string;
24 | collection: string;
25 | body: string;
26 | data: import('astro/zod').infer;
27 | }) => string | Promise;
28 | };
29 | export function defineCollection(
30 | input: BaseCollectionConfig
31 | ): BaseCollectionConfig;
32 |
33 | export function getEntry(
34 | collection: C,
35 | entryKey: E
36 | ): Promise<(typeof entryMap)[C][E] & Render>;
37 | export function getCollection<
38 | C extends keyof typeof entryMap,
39 | E extends keyof (typeof entryMap)[C]
40 | >(
41 | collection: C,
42 | filter?: (data: (typeof entryMap)[C][E]) => boolean
43 | ): Promise<((typeof entryMap)[C][E] & Render)[]>;
44 |
45 | type InferEntrySchema = import('astro/zod').infer<
46 | Required['schema']
47 | >;
48 |
49 | type Render = {
50 | render(): Promise<{
51 | Content: import('astro').MarkdownInstance<{}>['Content'];
52 | headings: import('astro').MarkdownHeading[];
53 | remarkPluginFrontmatter: Record;
54 | }>;
55 | };
56 |
57 | const entryMap: {
58 | "roadmaps": {
59 | "typescript.mdx": {
60 | id: "typescript.mdx",
61 | slug: string,
62 | body: string,
63 | collection: "roadmaps",
64 | data: InferEntrySchema<"roadmaps">
65 | },
66 | },
67 | "videos": {
68 | "-1YhP5IOBCI.mdx": {
69 | id: "-1YhP5IOBCI.mdx",
70 | slug: string,
71 | body: string,
72 | collection: "videos",
73 | data: InferEntrySchema<"videos">
74 | },
75 | "-TsIUuA3yyE.mdx": {
76 | id: "-TsIUuA3yyE.mdx",
77 | slug: string,
78 | body: string,
79 | collection: "videos",
80 | data: InferEntrySchema<"videos">
81 | },
82 | "-urz6Sh7RE8.mdx": {
83 | id: "-urz6Sh7RE8.mdx",
84 | slug: string,
85 | body: string,
86 | collection: "videos",
87 | data: InferEntrySchema<"videos">
88 | },
89 | "0-BsmzlMMIw.mdx": {
90 | id: "0-BsmzlMMIw.mdx",
91 | slug: string,
92 | body: string,
93 | collection: "videos",
94 | data: InferEntrySchema<"videos">
95 | },
96 | "0W4SdogReDg.mdx": {
97 | id: "0W4SdogReDg.mdx",
98 | slug: string,
99 | body: string,
100 | collection: "videos",
101 | data: InferEntrySchema<"videos">
102 | },
103 | "0WIFW3s2fDM.mdx": {
104 | id: "0WIFW3s2fDM.mdx",
105 | slug: string,
106 | body: string,
107 | collection: "videos",
108 | data: InferEntrySchema<"videos">
109 | },
110 | "0eoyWYP6I4Q.mdx": {
111 | id: "0eoyWYP6I4Q.mdx",
112 | slug: string,
113 | body: string,
114 | collection: "videos",
115 | data: InferEntrySchema<"videos">
116 | },
117 | "0nDGeQKLFjo.mdx": {
118 | id: "0nDGeQKLFjo.mdx",
119 | slug: string,
120 | body: string,
121 | collection: "videos",
122 | data: InferEntrySchema<"videos">
123 | },
124 | "0vumsisnqwM.mdx": {
125 | id: "0vumsisnqwM.mdx",
126 | slug: string,
127 | body: string,
128 | collection: "videos",
129 | data: InferEntrySchema<"videos">
130 | },
131 | "10HkuC8H9m8.mdx": {
132 | id: "10HkuC8H9m8.mdx",
133 | slug: string,
134 | body: string,
135 | collection: "videos",
136 | data: InferEntrySchema<"videos">
137 | },
138 | "1jlEEmiBSvI.mdx": {
139 | id: "1jlEEmiBSvI.mdx",
140 | slug: string,
141 | body: string,
142 | collection: "videos",
143 | data: InferEntrySchema<"videos">
144 | },
145 | "1kFX3B2IyH0.mdx": {
146 | id: "1kFX3B2IyH0.mdx",
147 | slug: string,
148 | body: string,
149 | collection: "videos",
150 | data: InferEntrySchema<"videos">
151 | },
152 | "1x7mI_xuVVo.mdx": {
153 | id: "1x7mI_xuVVo.mdx",
154 | slug: string,
155 | body: string,
156 | collection: "videos",
157 | data: InferEntrySchema<"videos">
158 | },
159 | "1zCUMlFTDg0.mdx": {
160 | id: "1zCUMlFTDg0.mdx",
161 | slug: string,
162 | body: string,
163 | collection: "videos",
164 | data: InferEntrySchema<"videos">
165 | },
166 | "2DbX0xFL0nk.mdx": {
167 | id: "2DbX0xFL0nk.mdx",
168 | slug: string,
169 | body: string,
170 | collection: "videos",
171 | data: InferEntrySchema<"videos">
172 | },
173 | "2rrwPm8fuis.mdx": {
174 | id: "2rrwPm8fuis.mdx",
175 | slug: string,
176 | body: string,
177 | collection: "videos",
178 | data: InferEntrySchema<"videos">
179 | },
180 | "2tJedF8I-8Q.mdx": {
181 | id: "2tJedF8I-8Q.mdx",
182 | slug: string,
183 | body: string,
184 | collection: "videos",
185 | data: InferEntrySchema<"videos">
186 | },
187 | "432thqUKs-Y.mdx": {
188 | id: "432thqUKs-Y.mdx",
189 | slug: string,
190 | body: string,
191 | collection: "videos",
192 | data: InferEntrySchema<"videos">
193 | },
194 | "47wDMcPONAw.mdx": {
195 | id: "47wDMcPONAw.mdx",
196 | slug: string,
197 | body: string,
198 | collection: "videos",
199 | data: InferEntrySchema<"videos">
200 | },
201 | "49IWKWOZthY.mdx": {
202 | id: "49IWKWOZthY.mdx",
203 | slug: string,
204 | body: string,
205 | collection: "videos",
206 | data: InferEntrySchema<"videos">
207 | },
208 | "4MmmlWwlST4.mdx": {
209 | id: "4MmmlWwlST4.mdx",
210 | slug: string,
211 | body: string,
212 | collection: "videos",
213 | data: InferEntrySchema<"videos">
214 | },
215 | "4PoNBZl4t0Y.mdx": {
216 | id: "4PoNBZl4t0Y.mdx",
217 | slug: string,
218 | body: string,
219 | collection: "videos",
220 | data: InferEntrySchema<"videos">
221 | },
222 | "4U067O3_fYk.mdx": {
223 | id: "4U067O3_fYk.mdx",
224 | slug: string,
225 | body: string,
226 | collection: "videos",
227 | data: InferEntrySchema<"videos">
228 | },
229 | "4XTj6sIGTdc.mdx": {
230 | id: "4XTj6sIGTdc.mdx",
231 | slug: string,
232 | body: string,
233 | collection: "videos",
234 | data: InferEntrySchema<"videos">
235 | },
236 | "4b9LSUZjtzE.mdx": {
237 | id: "4b9LSUZjtzE.mdx",
238 | slug: string,
239 | body: string,
240 | collection: "videos",
241 | data: InferEntrySchema<"videos">
242 | },
243 | "4cbP95OcfR0.mdx": {
244 | id: "4cbP95OcfR0.mdx",
245 | slug: string,
246 | body: string,
247 | collection: "videos",
248 | data: InferEntrySchema<"videos">
249 | },
250 | "4wfqc7roa0Q.mdx": {
251 | id: "4wfqc7roa0Q.mdx",
252 | slug: string,
253 | body: string,
254 | collection: "videos",
255 | data: InferEntrySchema<"videos">
256 | },
257 | "4zRhgxctUYQ.mdx": {
258 | id: "4zRhgxctUYQ.mdx",
259 | slug: string,
260 | body: string,
261 | collection: "videos",
262 | data: InferEntrySchema<"videos">
263 | },
264 | "56_OUG-0wgI.mdx": {
265 | id: "56_OUG-0wgI.mdx",
266 | slug: string,
267 | body: string,
268 | collection: "videos",
269 | data: InferEntrySchema<"videos">
270 | },
271 | "5WbpZlJCWNk.mdx": {
272 | id: "5WbpZlJCWNk.mdx",
273 | slug: string,
274 | body: string,
275 | collection: "videos",
276 | data: InferEntrySchema<"videos">
277 | },
278 | "5lm5xJVqfmA.mdx": {
279 | id: "5lm5xJVqfmA.mdx",
280 | slug: string,
281 | body: string,
282 | collection: "videos",
283 | data: InferEntrySchema<"videos">
284 | },
285 | "5m7Al81Um88.mdx": {
286 | id: "5m7Al81Um88.mdx",
287 | slug: string,
288 | body: string,
289 | collection: "videos",
290 | data: InferEntrySchema<"videos">
291 | },
292 | "5q0VtzJjvNc.mdx": {
293 | id: "5q0VtzJjvNc.mdx",
294 | slug: string,
295 | body: string,
296 | collection: "videos",
297 | data: InferEntrySchema<"videos">
298 | },
299 | "5zwzyHqBFnA.mdx": {
300 | id: "5zwzyHqBFnA.mdx",
301 | slug: string,
302 | body: string,
303 | collection: "videos",
304 | data: InferEntrySchema<"videos">
305 | },
306 | "6yBv-_COJkk.mdx": {
307 | id: "6yBv-_COJkk.mdx",
308 | slug: string,
309 | body: string,
310 | collection: "videos",
311 | data: InferEntrySchema<"videos">
312 | },
313 | "7I-CY1a-Jpk.mdx": {
314 | id: "7I-CY1a-Jpk.mdx",
315 | slug: string,
316 | body: string,
317 | collection: "videos",
318 | data: InferEntrySchema<"videos">
319 | },
320 | "7kNLXE0hixM.mdx": {
321 | id: "7kNLXE0hixM.mdx",
322 | slug: string,
323 | body: string,
324 | collection: "videos",
325 | data: InferEntrySchema<"videos">
326 | },
327 | "7ldI5jBsmlI.mdx": {
328 | id: "7ldI5jBsmlI.mdx",
329 | slug: string,
330 | body: string,
331 | collection: "videos",
332 | data: InferEntrySchema<"videos">
333 | },
334 | "7o1P-SB7yQw.mdx": {
335 | id: "7o1P-SB7yQw.mdx",
336 | slug: string,
337 | body: string,
338 | collection: "videos",
339 | data: InferEntrySchema<"videos">
340 | },
341 | "87hg99a9cjE.mdx": {
342 | id: "87hg99a9cjE.mdx",
343 | slug: string,
344 | body: string,
345 | collection: "videos",
346 | data: InferEntrySchema<"videos">
347 | },
348 | "8M5rpG9TD-c.mdx": {
349 | id: "8M5rpG9TD-c.mdx",
350 | slug: string,
351 | body: string,
352 | collection: "videos",
353 | data: InferEntrySchema<"videos">
354 | },
355 | "8QtiqXew2QQ.mdx": {
356 | id: "8QtiqXew2QQ.mdx",
357 | slug: string,
358 | body: string,
359 | collection: "videos",
360 | data: InferEntrySchema<"videos">
361 | },
362 | "9y0eY6hs1QM.mdx": {
363 | id: "9y0eY6hs1QM.mdx",
364 | slug: string,
365 | body: string,
366 | collection: "videos",
367 | data: InferEntrySchema<"videos">
368 | },
369 | "AU7dKWNfWiA.mdx": {
370 | id: "AU7dKWNfWiA.mdx",
371 | slug: string,
372 | body: string,
373 | collection: "videos",
374 | data: InferEntrySchema<"videos">
375 | },
376 | "AknVkHeYqqg.mdx": {
377 | id: "AknVkHeYqqg.mdx",
378 | slug: string,
379 | body: string,
380 | collection: "videos",
381 | data: InferEntrySchema<"videos">
382 | },
383 | "BdzFpyGVfVI.mdx": {
384 | id: "BdzFpyGVfVI.mdx",
385 | slug: string,
386 | body: string,
387 | collection: "videos",
388 | data: InferEntrySchema<"videos">
389 | },
390 | "BtIlaOuN18c.mdx": {
391 | id: "BtIlaOuN18c.mdx",
392 | slug: string,
393 | body: string,
394 | collection: "videos",
395 | data: InferEntrySchema<"videos">
396 | },
397 | "Bw_tmWEaaIU.mdx": {
398 | id: "Bw_tmWEaaIU.mdx",
399 | slug: string,
400 | body: string,
401 | collection: "videos",
402 | data: InferEntrySchema<"videos">
403 | },
404 | "CO7vEjsw3cc.mdx": {
405 | id: "CO7vEjsw3cc.mdx",
406 | slug: string,
407 | body: string,
408 | collection: "videos",
409 | data: InferEntrySchema<"videos">
410 | },
411 | "CZMXRMdHm34.mdx": {
412 | id: "CZMXRMdHm34.mdx",
413 | slug: string,
414 | body: string,
415 | collection: "videos",
416 | data: InferEntrySchema<"videos">
417 | },
418 | "CkHR0OXTYXI.mdx": {
419 | id: "CkHR0OXTYXI.mdx",
420 | slug: string,
421 | body: string,
422 | collection: "videos",
423 | data: InferEntrySchema<"videos">
424 | },
425 | "Cos-ctPX5hw.mdx": {
426 | id: "Cos-ctPX5hw.mdx",
427 | slug: string,
428 | body: string,
429 | collection: "videos",
430 | data: InferEntrySchema<"videos">
431 | },
432 | "D3PuSLokPZg.mdx": {
433 | id: "D3PuSLokPZg.mdx",
434 | slug: string,
435 | body: string,
436 | collection: "videos",
437 | data: InferEntrySchema<"videos">
438 | },
439 | "D3XYAx30CNc.mdx": {
440 | id: "D3XYAx30CNc.mdx",
441 | slug: string,
442 | body: string,
443 | collection: "videos",
444 | data: InferEntrySchema<"videos">
445 | },
446 | "DEPwA3mv_R8.mdx": {
447 | id: "DEPwA3mv_R8.mdx",
448 | slug: string,
449 | body: string,
450 | collection: "videos",
451 | data: InferEntrySchema<"videos">
452 | },
453 | "DHjZnJRK_S8.mdx": {
454 | id: "DHjZnJRK_S8.mdx",
455 | slug: string,
456 | body: string,
457 | collection: "videos",
458 | data: InferEntrySchema<"videos">
459 | },
460 | "DM6CgUFyXxw.mdx": {
461 | id: "DM6CgUFyXxw.mdx",
462 | slug: string,
463 | body: string,
464 | collection: "videos",
465 | data: InferEntrySchema<"videos">
466 | },
467 | "DjzlGfhUyAM.mdx": {
468 | id: "DjzlGfhUyAM.mdx",
469 | slug: string,
470 | body: string,
471 | collection: "videos",
472 | data: InferEntrySchema<"videos">
473 | },
474 | "DxG17pbgsZg.mdx": {
475 | id: "DxG17pbgsZg.mdx",
476 | slug: string,
477 | body: string,
478 | collection: "videos",
479 | data: InferEntrySchema<"videos">
480 | },
481 | "EFVCTzqRbqo.mdx": {
482 | id: "EFVCTzqRbqo.mdx",
483 | slug: string,
484 | body: string,
485 | collection: "videos",
486 | data: InferEntrySchema<"videos">
487 | },
488 | "EH9Suo_J4Ks.mdx": {
489 | id: "EH9Suo_J4Ks.mdx",
490 | slug: string,
491 | body: string,
492 | collection: "videos",
493 | data: InferEntrySchema<"videos">
494 | },
495 | "EXI9v6i7bAo.mdx": {
496 | id: "EXI9v6i7bAo.mdx",
497 | slug: string,
498 | body: string,
499 | collection: "videos",
500 | data: InferEntrySchema<"videos">
501 | },
502 | "EzJF0IUoYhQ.mdx": {
503 | id: "EzJF0IUoYhQ.mdx",
504 | slug: string,
505 | body: string,
506 | collection: "videos",
507 | data: InferEntrySchema<"videos">
508 | },
509 | "F-0SZ_TicXA.mdx": {
510 | id: "F-0SZ_TicXA.mdx",
511 | slug: string,
512 | body: string,
513 | collection: "videos",
514 | data: InferEntrySchema<"videos">
515 | },
516 | "FC5gM49xQPE.mdx": {
517 | id: "FC5gM49xQPE.mdx",
518 | slug: string,
519 | body: string,
520 | collection: "videos",
521 | data: InferEntrySchema<"videos">
522 | },
523 | "FFu0-9hGyX4.mdx": {
524 | id: "FFu0-9hGyX4.mdx",
525 | slug: string,
526 | body: string,
527 | collection: "videos",
528 | data: InferEntrySchema<"videos">
529 | },
530 | "FTGWIH4RlHg.mdx": {
531 | id: "FTGWIH4RlHg.mdx",
532 | slug: string,
533 | body: string,
534 | collection: "videos",
535 | data: InferEntrySchema<"videos">
536 | },
537 | "FmGYLJlhXco.mdx": {
538 | id: "FmGYLJlhXco.mdx",
539 | slug: string,
540 | body: string,
541 | collection: "videos",
542 | data: InferEntrySchema<"videos">
543 | },
544 | "FrLzKMWa3Gk.mdx": {
545 | id: "FrLzKMWa3Gk.mdx",
546 | slug: string,
547 | body: string,
548 | collection: "videos",
549 | data: InferEntrySchema<"videos">
550 | },
551 | "G1gyXbLdRzc.mdx": {
552 | id: "G1gyXbLdRzc.mdx",
553 | slug: string,
554 | body: string,
555 | collection: "videos",
556 | data: InferEntrySchema<"videos">
557 | },
558 | "GBAO3YKMonI.mdx": {
559 | id: "GBAO3YKMonI.mdx",
560 | slug: string,
561 | body: string,
562 | collection: "videos",
563 | data: InferEntrySchema<"videos">
564 | },
565 | "GMeQ51MCegI.mdx": {
566 | id: "GMeQ51MCegI.mdx",
567 | slug: string,
568 | body: string,
569 | collection: "videos",
570 | data: InferEntrySchema<"videos">
571 | },
572 | "GjkQS5J6K6k.mdx": {
573 | id: "GjkQS5J6K6k.mdx",
574 | slug: string,
575 | body: string,
576 | collection: "videos",
577 | data: InferEntrySchema<"videos">
578 | },
579 | "GkUFmlVs-No.mdx": {
580 | id: "GkUFmlVs-No.mdx",
581 | slug: string,
582 | body: string,
583 | collection: "videos",
584 | data: InferEntrySchema<"videos">
585 | },
586 | "GsRnExrC89A.mdx": {
587 | id: "GsRnExrC89A.mdx",
588 | slug: string,
589 | body: string,
590 | collection: "videos",
591 | data: InferEntrySchema<"videos">
592 | },
593 | "H2kxc_ZrSPI.mdx": {
594 | id: "H2kxc_ZrSPI.mdx",
595 | slug: string,
596 | body: string,
597 | collection: "videos",
598 | data: InferEntrySchema<"videos">
599 | },
600 | "HUVawJXeHfU.mdx": {
601 | id: "HUVawJXeHfU.mdx",
602 | slug: string,
603 | body: string,
604 | collection: "videos",
605 | data: InferEntrySchema<"videos">
606 | },
607 | "HbSvuxr2kzA.mdx": {
608 | id: "HbSvuxr2kzA.mdx",
609 | slug: string,
610 | body: string,
611 | collection: "videos",
612 | data: InferEntrySchema<"videos">
613 | },
614 | "Hsk5tM_N420.mdx": {
615 | id: "Hsk5tM_N420.mdx",
616 | slug: string,
617 | body: string,
618 | collection: "videos",
619 | data: InferEntrySchema<"videos">
620 | },
621 | "HwNArS3f1Ss.mdx": {
622 | id: "HwNArS3f1Ss.mdx",
623 | slug: string,
624 | body: string,
625 | collection: "videos",
626 | data: InferEntrySchema<"videos">
627 | },
628 | "HxyaftP6hJ8.mdx": {
629 | id: "HxyaftP6hJ8.mdx",
630 | slug: string,
631 | body: string,
632 | collection: "videos",
633 | data: InferEntrySchema<"videos">
634 | },
635 | "ICeH3uBGGeo.mdx": {
636 | id: "ICeH3uBGGeo.mdx",
637 | slug: string,
638 | body: string,
639 | collection: "videos",
640 | data: InferEntrySchema<"videos">
641 | },
642 | "ILbRI4m2D9Y.mdx": {
643 | id: "ILbRI4m2D9Y.mdx",
644 | slug: string,
645 | body: string,
646 | collection: "videos",
647 | data: InferEntrySchema<"videos">
648 | },
649 | "ITVS76JpNn8.mdx": {
650 | id: "ITVS76JpNn8.mdx",
651 | slug: string,
652 | body: string,
653 | collection: "videos",
654 | data: InferEntrySchema<"videos">
655 | },
656 | "J-M11cC_NL4.mdx": {
657 | id: "J-M11cC_NL4.mdx",
658 | slug: string,
659 | body: string,
660 | collection: "videos",
661 | data: InferEntrySchema<"videos">
662 | },
663 | "J81MS6H1NBQ.mdx": {
664 | id: "J81MS6H1NBQ.mdx",
665 | slug: string,
666 | body: string,
667 | collection: "videos",
668 | data: InferEntrySchema<"videos">
669 | },
670 | "JBu2ZTPgiKI.mdx": {
671 | id: "JBu2ZTPgiKI.mdx",
672 | slug: string,
673 | body: string,
674 | collection: "videos",
675 | data: InferEntrySchema<"videos">
676 | },
677 | "JKj-J83Qop0.mdx": {
678 | id: "JKj-J83Qop0.mdx",
679 | slug: string,
680 | body: string,
681 | collection: "videos",
682 | data: InferEntrySchema<"videos">
683 | },
684 | "JaM2rExmmqs.mdx": {
685 | id: "JaM2rExmmqs.mdx",
686 | slug: string,
687 | body: string,
688 | collection: "videos",
689 | data: InferEntrySchema<"videos">
690 | },
691 | "JauJhGTBFsc.mdx": {
692 | id: "JauJhGTBFsc.mdx",
693 | slug: string,
694 | body: string,
695 | collection: "videos",
696 | data: InferEntrySchema<"videos">
697 | },
698 | "K-yQB9YGmgE.mdx": {
699 | id: "K-yQB9YGmgE.mdx",
700 | slug: string,
701 | body: string,
702 | collection: "videos",
703 | data: InferEntrySchema<"videos">
704 | },
705 | "KBoNbQPQwwQ.mdx": {
706 | id: "KBoNbQPQwwQ.mdx",
707 | slug: string,
708 | body: string,
709 | collection: "videos",
710 | data: InferEntrySchema<"videos">
711 | },
712 | "KBwhyxWGFsE.mdx": {
713 | id: "KBwhyxWGFsE.mdx",
714 | slug: string,
715 | body: string,
716 | collection: "videos",
717 | data: InferEntrySchema<"videos">
718 | },
719 | "KEc0LLQjyfQ.mdx": {
720 | id: "KEc0LLQjyfQ.mdx",
721 | slug: string,
722 | body: string,
723 | collection: "videos",
724 | data: InferEntrySchema<"videos">
725 | },
726 | "Kn8TKLcd6d4.mdx": {
727 | id: "Kn8TKLcd6d4.mdx",
728 | slug: string,
729 | body: string,
730 | collection: "videos",
731 | data: InferEntrySchema<"videos">
732 | },
733 | "LAu1p6tmj_Y.mdx": {
734 | id: "LAu1p6tmj_Y.mdx",
735 | slug: string,
736 | body: string,
737 | collection: "videos",
738 | data: InferEntrySchema<"videos">
739 | },
740 | "LDS1ll93P-s.mdx": {
741 | id: "LDS1ll93P-s.mdx",
742 | slug: string,
743 | body: string,
744 | collection: "videos",
745 | data: InferEntrySchema<"videos">
746 | },
747 | "LKVHFHJsiO0.mdx": {
748 | id: "LKVHFHJsiO0.mdx",
749 | slug: string,
750 | body: string,
751 | collection: "videos",
752 | data: InferEntrySchema<"videos">
753 | },
754 | "LZc2hSghezM.mdx": {
755 | id: "LZc2hSghezM.mdx",
756 | slug: string,
757 | body: string,
758 | collection: "videos",
759 | data: InferEntrySchema<"videos">
760 | },
761 | "Lam0cYOEst8.mdx": {
762 | id: "Lam0cYOEst8.mdx",
763 | slug: string,
764 | body: string,
765 | collection: "videos",
766 | data: InferEntrySchema<"videos">
767 | },
768 | "LsvZM7ihXQI.mdx": {
769 | id: "LsvZM7ihXQI.mdx",
770 | slug: string,
771 | body: string,
772 | collection: "videos",
773 | data: InferEntrySchema<"videos">
774 | },
775 | "LyS1bB96FDg.mdx": {
776 | id: "LyS1bB96FDg.mdx",
777 | slug: string,
778 | body: string,
779 | collection: "videos",
780 | data: InferEntrySchema<"videos">
781 | },
782 | "MJaGti42c5c.mdx": {
783 | id: "MJaGti42c5c.mdx",
784 | slug: string,
785 | body: string,
786 | collection: "videos",
787 | data: InferEntrySchema<"videos">
788 | },
789 | "MLLALr3ctoE.mdx": {
790 | id: "MLLALr3ctoE.mdx",
791 | slug: string,
792 | body: string,
793 | collection: "videos",
794 | data: InferEntrySchema<"videos">
795 | },
796 | "MU8_LP8R_ZI.mdx": {
797 | id: "MU8_LP8R_ZI.mdx",
798 | slug: string,
799 | body: string,
800 | collection: "videos",
801 | data: InferEntrySchema<"videos">
802 | },
803 | "Mi6sosJuDDY.mdx": {
804 | id: "Mi6sosJuDDY.mdx",
805 | slug: string,
806 | body: string,
807 | collection: "videos",
808 | data: InferEntrySchema<"videos">
809 | },
810 | "MkNCkKomu_s.mdx": {
811 | id: "MkNCkKomu_s.mdx",
812 | slug: string,
813 | body: string,
814 | collection: "videos",
815 | data: InferEntrySchema<"videos">
816 | },
817 | "MlDTHzK1vKI.mdx": {
818 | id: "MlDTHzK1vKI.mdx",
819 | slug: string,
820 | body: string,
821 | collection: "videos",
822 | data: InferEntrySchema<"videos">
823 | },
824 | "MpdFj8MEuJA.mdx": {
825 | id: "MpdFj8MEuJA.mdx",
826 | slug: string,
827 | body: string,
828 | collection: "videos",
829 | data: InferEntrySchema<"videos">
830 | },
831 | "NCSkAUP3Nv0.mdx": {
832 | id: "NCSkAUP3Nv0.mdx",
833 | slug: string,
834 | body: string,
835 | collection: "videos",
836 | data: InferEntrySchema<"videos">
837 | },
838 | "NGqoq5D_rEE.mdx": {
839 | id: "NGqoq5D_rEE.mdx",
840 | slug: string,
841 | body: string,
842 | collection: "videos",
843 | data: InferEntrySchema<"videos">
844 | },
845 | "NJxagi7K-D8.mdx": {
846 | id: "NJxagi7K-D8.mdx",
847 | slug: string,
848 | body: string,
849 | collection: "videos",
850 | data: InferEntrySchema<"videos">
851 | },
852 | "NaJI7RkSPx8.mdx": {
853 | id: "NaJI7RkSPx8.mdx",
854 | slug: string,
855 | body: string,
856 | collection: "videos",
857 | data: InferEntrySchema<"videos">
858 | },
859 | "NgkYH97Z3nk.mdx": {
860 | id: "NgkYH97Z3nk.mdx",
861 | slug: string,
862 | body: string,
863 | collection: "videos",
864 | data: InferEntrySchema<"videos">
865 | },
866 | "OCg4DJyVGk0.mdx": {
867 | id: "OCg4DJyVGk0.mdx",
868 | slug: string,
869 | body: string,
870 | collection: "videos",
871 | data: InferEntrySchema<"videos">
872 | },
873 | "OpMAH2hzKi8.mdx": {
874 | id: "OpMAH2hzKi8.mdx",
875 | slug: string,
876 | body: string,
877 | collection: "videos",
878 | data: InferEntrySchema<"videos">
879 | },
880 | "OqcHoLWyyIw.mdx": {
881 | id: "OqcHoLWyyIw.mdx",
882 | slug: string,
883 | body: string,
884 | collection: "videos",
885 | data: InferEntrySchema<"videos">
886 | },
887 | "OseG8oQ2RDM.mdx": {
888 | id: "OseG8oQ2RDM.mdx",
889 | slug: string,
890 | body: string,
891 | collection: "videos",
892 | data: InferEntrySchema<"videos">
893 | },
894 | "P0GxuOPyLXo.mdx": {
895 | id: "P0GxuOPyLXo.mdx",
896 | slug: string,
897 | body: string,
898 | collection: "videos",
899 | data: InferEntrySchema<"videos">
900 | },
901 | "P95DuIBwnqw.mdx": {
902 | id: "P95DuIBwnqw.mdx",
903 | slug: string,
904 | body: string,
905 | collection: "videos",
906 | data: InferEntrySchema<"videos">
907 | },
908 | "PSzCtdM20Fc.mdx": {
909 | id: "PSzCtdM20Fc.mdx",
910 | slug: string,
911 | body: string,
912 | collection: "videos",
913 | data: InferEntrySchema<"videos">
914 | },
915 | "P_5Yxktq9Rs.mdx": {
916 | id: "P_5Yxktq9Rs.mdx",
917 | slug: string,
918 | body: string,
919 | collection: "videos",
920 | data: InferEntrySchema<"videos">
921 | },
922 | "PbswZshAKF8.mdx": {
923 | id: "PbswZshAKF8.mdx",
924 | slug: string,
925 | body: string,
926 | collection: "videos",
927 | data: InferEntrySchema<"videos">
928 | },
929 | "Q4QDyr0jLfo.mdx": {
930 | id: "Q4QDyr0jLfo.mdx",
931 | slug: string,
932 | body: string,
933 | collection: "videos",
934 | data: InferEntrySchema<"videos">
935 | },
936 | "Q4dos7-gX68.mdx": {
937 | id: "Q4dos7-gX68.mdx",
938 | slug: string,
939 | body: string,
940 | collection: "videos",
941 | data: InferEntrySchema<"videos">
942 | },
943 | "QChEaOHauZY.mdx": {
944 | id: "QChEaOHauZY.mdx",
945 | slug: string,
946 | body: string,
947 | collection: "videos",
948 | data: InferEntrySchema<"videos">
949 | },
950 | "Qs7NkP6TJn8.mdx": {
951 | id: "Qs7NkP6TJn8.mdx",
952 | slug: string,
953 | body: string,
954 | collection: "videos",
955 | data: InferEntrySchema<"videos">
956 | },
957 | "QuLfCUh-iwI.mdx": {
958 | id: "QuLfCUh-iwI.mdx",
959 | slug: string,
960 | body: string,
961 | collection: "videos",
962 | data: InferEntrySchema<"videos">
963 | },
964 | "QvcyL_ZGhf0.mdx": {
965 | id: "QvcyL_ZGhf0.mdx",
966 | slug: string,
967 | body: string,
968 | collection: "videos",
969 | data: InferEntrySchema<"videos">
970 | },
971 | "RAJD4KpX8LA.mdx": {
972 | id: "RAJD4KpX8LA.mdx",
973 | slug: string,
974 | body: string,
975 | collection: "videos",
976 | data: InferEntrySchema<"videos">
977 | },
978 | "RCgJQq_pDfg.mdx": {
979 | id: "RCgJQq_pDfg.mdx",
980 | slug: string,
981 | body: string,
982 | collection: "videos",
983 | data: InferEntrySchema<"videos">
984 | },
985 | "RonRwypIVaw.mdx": {
986 | id: "RonRwypIVaw.mdx",
987 | slug: string,
988 | body: string,
989 | collection: "videos",
990 | data: InferEntrySchema<"videos">
991 | },
992 | "S2L4fatK0Ek.mdx": {
993 | id: "S2L4fatK0Ek.mdx",
994 | slug: string,
995 | body: string,
996 | collection: "videos",
997 | data: InferEntrySchema<"videos">
998 | },
999 | "S6Tu8oXyoRk.mdx": {
1000 | id: "S6Tu8oXyoRk.mdx",
1001 | slug: string,
1002 | body: string,
1003 | collection: "videos",
1004 | data: InferEntrySchema<"videos">
1005 | },
1006 | "SBysJEnvvhQ.mdx": {
1007 | id: "SBysJEnvvhQ.mdx",
1008 | slug: string,
1009 | body: string,
1010 | collection: "videos",
1011 | data: InferEntrySchema<"videos">
1012 | },
1013 | "SZ2kAkMdAZE.mdx": {
1014 | id: "SZ2kAkMdAZE.mdx",
1015 | slug: string,
1016 | body: string,
1017 | collection: "videos",
1018 | data: InferEntrySchema<"videos">
1019 | },
1020 | "Sti_XBFn5Xw.mdx": {
1021 | id: "Sti_XBFn5Xw.mdx",
1022 | slug: string,
1023 | body: string,
1024 | collection: "videos",
1025 | data: InferEntrySchema<"videos">
1026 | },
1027 | "UbEx1v26kCs.mdx": {
1028 | id: "UbEx1v26kCs.mdx",
1029 | slug: string,
1030 | body: string,
1031 | collection: "videos",
1032 | data: InferEntrySchema<"videos">
1033 | },
1034 | "VAIR7cRBlFw.mdx": {
1035 | id: "VAIR7cRBlFw.mdx",
1036 | slug: string,
1037 | body: string,
1038 | collection: "videos",
1039 | data: InferEntrySchema<"videos">
1040 | },
1041 | "VBbkLd-_dPU.mdx": {
1042 | id: "VBbkLd-_dPU.mdx",
1043 | slug: string,
1044 | body: string,
1045 | collection: "videos",
1046 | data: InferEntrySchema<"videos">
1047 | },
1048 | "VcOMq3LQtBU.mdx": {
1049 | id: "VcOMq3LQtBU.mdx",
1050 | slug: string,
1051 | body: string,
1052 | collection: "videos",
1053 | data: InferEntrySchema<"videos">
1054 | },
1055 | "VrfJeXj7TiQ.mdx": {
1056 | id: "VrfJeXj7TiQ.mdx",
1057 | slug: string,
1058 | body: string,
1059 | collection: "videos",
1060 | data: InferEntrySchema<"videos">
1061 | },
1062 | "W0RbrAZtj7I.mdx": {
1063 | id: "W0RbrAZtj7I.mdx",
1064 | slug: string,
1065 | body: string,
1066 | collection: "videos",
1067 | data: InferEntrySchema<"videos">
1068 | },
1069 | "W5TXxJIyBP0.mdx": {
1070 | id: "W5TXxJIyBP0.mdx",
1071 | slug: string,
1072 | body: string,
1073 | collection: "videos",
1074 | data: InferEntrySchema<"videos">
1075 | },
1076 | "WOfL5q2HznI.mdx": {
1077 | id: "WOfL5q2HznI.mdx",
1078 | slug: string,
1079 | body: string,
1080 | collection: "videos",
1081 | data: InferEntrySchema<"videos">
1082 | },
1083 | "XYq9QpgAx8g.mdx": {
1084 | id: "XYq9QpgAx8g.mdx",
1085 | slug: string,
1086 | body: string,
1087 | collection: "videos",
1088 | data: InferEntrySchema<"videos">
1089 | },
1090 | "XnlECbwcJZ0.mdx": {
1091 | id: "XnlECbwcJZ0.mdx",
1092 | slug: string,
1093 | body: string,
1094 | collection: "videos",
1095 | data: InferEntrySchema<"videos">
1096 | },
1097 | "XnyZXNnWAOA.mdx": {
1098 | id: "XnyZXNnWAOA.mdx",
1099 | slug: string,
1100 | body: string,
1101 | collection: "videos",
1102 | data: InferEntrySchema<"videos">
1103 | },
1104 | "Xt1dNdJpgw4.mdx": {
1105 | id: "Xt1dNdJpgw4.mdx",
1106 | slug: string,
1107 | body: string,
1108 | collection: "videos",
1109 | data: InferEntrySchema<"videos">
1110 | },
1111 | "Xw9XMNn2k0o.mdx": {
1112 | id: "Xw9XMNn2k0o.mdx",
1113 | slug: string,
1114 | body: string,
1115 | collection: "videos",
1116 | data: InferEntrySchema<"videos">
1117 | },
1118 | "XzE-PzALyDc.mdx": {
1119 | id: "XzE-PzALyDc.mdx",
1120 | slug: string,
1121 | body: string,
1122 | collection: "videos",
1123 | data: InferEntrySchema<"videos">
1124 | },
1125 | "YQvQwTAqXE8.mdx": {
1126 | id: "YQvQwTAqXE8.mdx",
1127 | slug: string,
1128 | body: string,
1129 | collection: "videos",
1130 | data: InferEntrySchema<"videos">
1131 | },
1132 | "YzPDzWM_k_8.mdx": {
1133 | id: "YzPDzWM_k_8.mdx",
1134 | slug: string,
1135 | body: string,
1136 | collection: "videos",
1137 | data: InferEntrySchema<"videos">
1138 | },
1139 | "ZD7viwwRLAw.mdx": {
1140 | id: "ZD7viwwRLAw.mdx",
1141 | slug: string,
1142 | body: string,
1143 | collection: "videos",
1144 | data: InferEntrySchema<"videos">
1145 | },
1146 | "ZFNxTy3fOO0.mdx": {
1147 | id: "ZFNxTy3fOO0.mdx",
1148 | slug: string,
1149 | body: string,
1150 | collection: "videos",
1151 | data: InferEntrySchema<"videos">
1152 | },
1153 | "ZG3xZP0SXYs.mdx": {
1154 | id: "ZG3xZP0SXYs.mdx",
1155 | slug: string,
1156 | body: string,
1157 | collection: "videos",
1158 | data: InferEntrySchema<"videos">
1159 | },
1160 | "ZKlXqrcBx88.mdx": {
1161 | id: "ZKlXqrcBx88.mdx",
1162 | slug: string,
1163 | body: string,
1164 | collection: "videos",
1165 | data: InferEntrySchema<"videos">
1166 | },
1167 | "_Tr9ZcXcMjQ.mdx": {
1168 | id: "_Tr9ZcXcMjQ.mdx",
1169 | slug: string,
1170 | body: string,
1171 | collection: "videos",
1172 | data: InferEntrySchema<"videos">
1173 | },
1174 | "_VItRGUFyKU.mdx": {
1175 | id: "_VItRGUFyKU.mdx",
1176 | slug: string,
1177 | body: string,
1178 | collection: "videos",
1179 | data: InferEntrySchema<"videos">
1180 | },
1181 | "_WpzQTHBRLE.mdx": {
1182 | id: "_WpzQTHBRLE.mdx",
1183 | slug: string,
1184 | body: string,
1185 | collection: "videos",
1186 | data: InferEntrySchema<"videos">
1187 | },
1188 | "_ZQSPYDlk3U.mdx": {
1189 | id: "_ZQSPYDlk3U.mdx",
1190 | slug: string,
1191 | body: string,
1192 | collection: "videos",
1193 | data: InferEntrySchema<"videos">
1194 | },
1195 | "_ZnNZWlyw7M.mdx": {
1196 | id: "_ZnNZWlyw7M.mdx",
1197 | slug: string,
1198 | body: string,
1199 | collection: "videos",
1200 | data: InferEntrySchema<"videos">
1201 | },
1202 | "_cbJ2iN25_I.mdx": {
1203 | id: "_cbJ2iN25_I.mdx",
1204 | slug: string,
1205 | body: string,
1206 | collection: "videos",
1207 | data: InferEntrySchema<"videos">
1208 | },
1209 | "_gRxCvDjWjs.mdx": {
1210 | id: "_gRxCvDjWjs.mdx",
1211 | slug: string,
1212 | body: string,
1213 | collection: "videos",
1214 | data: InferEntrySchema<"videos">
1215 | },
1216 | "_m2XfYzBV2c.mdx": {
1217 | id: "_m2XfYzBV2c.mdx",
1218 | slug: string,
1219 | body: string,
1220 | collection: "videos",
1221 | data: InferEntrySchema<"videos">
1222 | },
1223 | "_qCRuFrdhYw.mdx": {
1224 | id: "_qCRuFrdhYw.mdx",
1225 | slug: string,
1226 | body: string,
1227 | collection: "videos",
1228 | data: InferEntrySchema<"videos">
1229 | },
1230 | "aDqGIhl7cdo.mdx": {
1231 | id: "aDqGIhl7cdo.mdx",
1232 | slug: string,
1233 | body: string,
1234 | collection: "videos",
1235 | data: InferEntrySchema<"videos">
1236 | },
1237 | "aHA581Mp2Mo.mdx": {
1238 | id: "aHA581Mp2Mo.mdx",
1239 | slug: string,
1240 | body: string,
1241 | collection: "videos",
1242 | data: InferEntrySchema<"videos">
1243 | },
1244 | "aM1bxz-82Qw.mdx": {
1245 | id: "aM1bxz-82Qw.mdx",
1246 | slug: string,
1247 | body: string,
1248 | collection: "videos",
1249 | data: InferEntrySchema<"videos">
1250 | },
1251 | "aOt4Hz3ze3Q.mdx": {
1252 | id: "aOt4Hz3ze3Q.mdx",
1253 | slug: string,
1254 | body: string,
1255 | collection: "videos",
1256 | data: InferEntrySchema<"videos">
1257 | },
1258 | "apg9XR35pAM.mdx": {
1259 | id: "apg9XR35pAM.mdx",
1260 | slug: string,
1261 | body: string,
1262 | collection: "videos",
1263 | data: InferEntrySchema<"videos">
1264 | },
1265 | "b-Eo2v0EzFw.mdx": {
1266 | id: "b-Eo2v0EzFw.mdx",
1267 | slug: string,
1268 | body: string,
1269 | collection: "videos",
1270 | data: InferEntrySchema<"videos">
1271 | },
1272 | "bCU9BUfwUJE.mdx": {
1273 | id: "bCU9BUfwUJE.mdx",
1274 | slug: string,
1275 | body: string,
1276 | collection: "videos",
1277 | data: InferEntrySchema<"videos">
1278 | },
1279 | "bLyl4VDNPyY.mdx": {
1280 | id: "bLyl4VDNPyY.mdx",
1281 | slug: string,
1282 | body: string,
1283 | collection: "videos",
1284 | data: InferEntrySchema<"videos">
1285 | },
1286 | "b_p3yP57A9w.mdx": {
1287 | id: "b_p3yP57A9w.mdx",
1288 | slug: string,
1289 | body: string,
1290 | collection: "videos",
1291 | data: InferEntrySchema<"videos">
1292 | },
1293 | "bk5JvHGFv3A.mdx": {
1294 | id: "bk5JvHGFv3A.mdx",
1295 | slug: string,
1296 | body: string,
1297 | collection: "videos",
1298 | data: InferEntrySchema<"videos">
1299 | },
1300 | "bmKDT-yG2eE.mdx": {
1301 | id: "bmKDT-yG2eE.mdx",
1302 | slug: string,
1303 | body: string,
1304 | collection: "videos",
1305 | data: InferEntrySchema<"videos">
1306 | },
1307 | "bvdHVxqjv80.mdx": {
1308 | id: "bvdHVxqjv80.mdx",
1309 | slug: string,
1310 | body: string,
1311 | collection: "videos",
1312 | data: InferEntrySchema<"videos">
1313 | },
1314 | "cHUAvVkOBvY.mdx": {
1315 | id: "cHUAvVkOBvY.mdx",
1316 | slug: string,
1317 | body: string,
1318 | collection: "videos",
1319 | data: InferEntrySchema<"videos">
1320 | },
1321 | "cpG5W4uyqz0.mdx": {
1322 | id: "cpG5W4uyqz0.mdx",
1323 | slug: string,
1324 | body: string,
1325 | collection: "videos",
1326 | data: InferEntrySchema<"videos">
1327 | },
1328 | "d58QLA2bnug.mdx": {
1329 | id: "d58QLA2bnug.mdx",
1330 | slug: string,
1331 | body: string,
1332 | collection: "videos",
1333 | data: InferEntrySchema<"videos">
1334 | },
1335 | "dH6i3GurZW8.mdx": {
1336 | id: "dH6i3GurZW8.mdx",
1337 | slug: string,
1338 | body: string,
1339 | collection: "videos",
1340 | data: InferEntrySchema<"videos">
1341 | },
1342 | "dMkYWwYmJB8.mdx": {
1343 | id: "dMkYWwYmJB8.mdx",
1344 | slug: string,
1345 | body: string,
1346 | collection: "videos",
1347 | data: InferEntrySchema<"videos">
1348 | },
1349 | "e8Aqtak8stI.mdx": {
1350 | id: "e8Aqtak8stI.mdx",
1351 | slug: string,
1352 | body: string,
1353 | collection: "videos",
1354 | data: InferEntrySchema<"videos">
1355 | },
1356 | "eAfUfKYcvBo.mdx": {
1357 | id: "eAfUfKYcvBo.mdx",
1358 | slug: string,
1359 | body: string,
1360 | collection: "videos",
1361 | data: InferEntrySchema<"videos">
1362 | },
1363 | "eFh2Kr9hfyo.mdx": {
1364 | id: "eFh2Kr9hfyo.mdx",
1365 | slug: string,
1366 | body: string,
1367 | collection: "videos",
1368 | data: InferEntrySchema<"videos">
1369 | },
1370 | "eQE9wp4PTY4.mdx": {
1371 | id: "eQE9wp4PTY4.mdx",
1372 | slug: string,
1373 | body: string,
1374 | collection: "videos",
1375 | data: InferEntrySchema<"videos">
1376 | },
1377 | "eVfw4pRDUIY.mdx": {
1378 | id: "eVfw4pRDUIY.mdx",
1379 | slug: string,
1380 | body: string,
1381 | collection: "videos",
1382 | data: InferEntrySchema<"videos">
1383 | },
1384 | "ekIDdZE7YjM.mdx": {
1385 | id: "ekIDdZE7YjM.mdx",
1386 | slug: string,
1387 | body: string,
1388 | collection: "videos",
1389 | data: InferEntrySchema<"videos">
1390 | },
1391 | "emhwHjAsyss.mdx": {
1392 | id: "emhwHjAsyss.mdx",
1393 | slug: string,
1394 | body: string,
1395 | collection: "videos",
1396 | data: InferEntrySchema<"videos">
1397 | },
1398 | "erfWjBNDdOE.mdx": {
1399 | id: "erfWjBNDdOE.mdx",
1400 | slug: string,
1401 | body: string,
1402 | collection: "videos",
1403 | data: InferEntrySchema<"videos">
1404 | },
1405 | "f3Cn0CGytSQ.mdx": {
1406 | id: "f3Cn0CGytSQ.mdx",
1407 | slug: string,
1408 | body: string,
1409 | collection: "videos",
1410 | data: InferEntrySchema<"videos">
1411 | },
1412 | "fu10QR3IU-k.mdx": {
1413 | id: "fu10QR3IU-k.mdx",
1414 | slug: string,
1415 | body: string,
1416 | collection: "videos",
1417 | data: InferEntrySchema<"videos">
1418 | },
1419 | "g1LtqLVKgIA.mdx": {
1420 | id: "g1LtqLVKgIA.mdx",
1421 | slug: string,
1422 | body: string,
1423 | collection: "videos",
1424 | data: InferEntrySchema<"videos">
1425 | },
1426 | "gChqkchbn9o.mdx": {
1427 | id: "gChqkchbn9o.mdx",
1428 | slug: string,
1429 | body: string,
1430 | collection: "videos",
1431 | data: InferEntrySchema<"videos">
1432 | },
1433 | "gED6KGBQgak.mdx": {
1434 | id: "gED6KGBQgak.mdx",
1435 | slug: string,
1436 | body: string,
1437 | collection: "videos",
1438 | data: InferEntrySchema<"videos">
1439 | },
1440 | "gtnDe_2YzFQ.mdx": {
1441 | id: "gtnDe_2YzFQ.mdx",
1442 | slug: string,
1443 | body: string,
1444 | collection: "videos",
1445 | data: InferEntrySchema<"videos">
1446 | },
1447 | "hHXzchWLoqw.mdx": {
1448 | id: "hHXzchWLoqw.mdx",
1449 | slug: string,
1450 | body: string,
1451 | collection: "videos",
1452 | data: InferEntrySchema<"videos">
1453 | },
1454 | "i8kner-Yrj0.mdx": {
1455 | id: "i8kner-Yrj0.mdx",
1456 | slug: string,
1457 | body: string,
1458 | collection: "videos",
1459 | data: InferEntrySchema<"videos">
1460 | },
1461 | "iFEOdoHp19U.mdx": {
1462 | id: "iFEOdoHp19U.mdx",
1463 | slug: string,
1464 | body: string,
1465 | collection: "videos",
1466 | data: InferEntrySchema<"videos">
1467 | },
1468 | "in80vPuCfro.mdx": {
1469 | id: "in80vPuCfro.mdx",
1470 | slug: string,
1471 | body: string,
1472 | collection: "videos",
1473 | data: InferEntrySchema<"videos">
1474 | },
1475 | "iwPGS-2kvSA.mdx": {
1476 | id: "iwPGS-2kvSA.mdx",
1477 | slug: string,
1478 | body: string,
1479 | collection: "videos",
1480 | data: InferEntrySchema<"videos">
1481 | },
1482 | "ixCxoFAoOps.mdx": {
1483 | id: "ixCxoFAoOps.mdx",
1484 | slug: string,
1485 | body: string,
1486 | collection: "videos",
1487 | data: InferEntrySchema<"videos">
1488 | },
1489 | "j8AVXNozac8.mdx": {
1490 | id: "j8AVXNozac8.mdx",
1491 | slug: string,
1492 | body: string,
1493 | collection: "videos",
1494 | data: InferEntrySchema<"videos">
1495 | },
1496 | "j8s01ThR7bQ.mdx": {
1497 | id: "j8s01ThR7bQ.mdx",
1498 | slug: string,
1499 | body: string,
1500 | collection: "videos",
1501 | data: InferEntrySchema<"videos">
1502 | },
1503 | "j92fxPpFaL8.mdx": {
1504 | id: "j92fxPpFaL8.mdx",
1505 | slug: string,
1506 | body: string,
1507 | collection: "videos",
1508 | data: InferEntrySchema<"videos">
1509 | },
1510 | "jdzLpEnRAqg.mdx": {
1511 | id: "jdzLpEnRAqg.mdx",
1512 | slug: string,
1513 | body: string,
1514 | collection: "videos",
1515 | data: InferEntrySchema<"videos">
1516 | },
1517 | "k42kEU2izKc.mdx": {
1518 | id: "k42kEU2izKc.mdx",
1519 | slug: string,
1520 | body: string,
1521 | collection: "videos",
1522 | data: InferEntrySchema<"videos">
1523 | },
1524 | "kSXpwOElFY0.mdx": {
1525 | id: "kSXpwOElFY0.mdx",
1526 | slug: string,
1527 | body: string,
1528 | collection: "videos",
1529 | data: InferEntrySchema<"videos">
1530 | },
1531 | "kdXKz1UWc3E.mdx": {
1532 | id: "kdXKz1UWc3E.mdx",
1533 | slug: string,
1534 | body: string,
1535 | collection: "videos",
1536 | data: InferEntrySchema<"videos">
1537 | },
1538 | "kh27J3nI_oY.mdx": {
1539 | id: "kh27J3nI_oY.mdx",
1540 | slug: string,
1541 | body: string,
1542 | collection: "videos",
1543 | data: InferEntrySchema<"videos">
1544 | },
1545 | "ki0Q9QeXH9Q.mdx": {
1546 | id: "ki0Q9QeXH9Q.mdx",
1547 | slug: string,
1548 | body: string,
1549 | collection: "videos",
1550 | data: InferEntrySchema<"videos">
1551 | },
1552 | "ks0Fsn6Csa4.mdx": {
1553 | id: "ks0Fsn6Csa4.mdx",
1554 | slug: string,
1555 | body: string,
1556 | collection: "videos",
1557 | data: InferEntrySchema<"videos">
1558 | },
1559 | "lGEgtSETz9Y.mdx": {
1560 | id: "lGEgtSETz9Y.mdx",
1561 | slug: string,
1562 | body: string,
1563 | collection: "videos",
1564 | data: InferEntrySchema<"videos">
1565 | },
1566 | "lStfMBiWROQ.mdx": {
1567 | id: "lStfMBiWROQ.mdx",
1568 | slug: string,
1569 | body: string,
1570 | collection: "videos",
1571 | data: InferEntrySchema<"videos">
1572 | },
1573 | "lgJmSQwQ-gk.mdx": {
1574 | id: "lgJmSQwQ-gk.mdx",
1575 | slug: string,
1576 | body: string,
1577 | collection: "videos",
1578 | data: InferEntrySchema<"videos">
1579 | },
1580 | "li15G-SNjls.mdx": {
1581 | id: "li15G-SNjls.mdx",
1582 | slug: string,
1583 | body: string,
1584 | collection: "videos",
1585 | data: InferEntrySchema<"videos">
1586 | },
1587 | "m3YrZav5-CU.mdx": {
1588 | id: "m3YrZav5-CU.mdx",
1589 | slug: string,
1590 | body: string,
1591 | collection: "videos",
1592 | data: InferEntrySchema<"videos">
1593 | },
1594 | "mOA1SA9sfcw.mdx": {
1595 | id: "mOA1SA9sfcw.mdx",
1596 | slug: string,
1597 | body: string,
1598 | collection: "videos",
1599 | data: InferEntrySchema<"videos">
1600 | },
1601 | "mPU9cFn7SmI.mdx": {
1602 | id: "mPU9cFn7SmI.mdx",
1603 | slug: string,
1604 | body: string,
1605 | collection: "videos",
1606 | data: InferEntrySchema<"videos">
1607 | },
1608 | "muCLu1-v_zA.mdx": {
1609 | id: "muCLu1-v_zA.mdx",
1610 | slug: string,
1611 | body: string,
1612 | collection: "videos",
1613 | data: InferEntrySchema<"videos">
1614 | },
1615 | "n6ZQSq3f14M.mdx": {
1616 | id: "n6ZQSq3f14M.mdx",
1617 | slug: string,
1618 | body: string,
1619 | collection: "videos",
1620 | data: InferEntrySchema<"videos">
1621 | },
1622 | "nGZCL6Wd_zQ.mdx": {
1623 | id: "nGZCL6Wd_zQ.mdx",
1624 | slug: string,
1625 | body: string,
1626 | collection: "videos",
1627 | data: InferEntrySchema<"videos">
1628 | },
1629 | "nImE4P8Wc_M.mdx": {
1630 | id: "nImE4P8Wc_M.mdx",
1631 | slug: string,
1632 | body: string,
1633 | collection: "videos",
1634 | data: InferEntrySchema<"videos">
1635 | },
1636 | "nMhD9IB9YJ8.mdx": {
1637 | id: "nMhD9IB9YJ8.mdx",
1638 | slug: string,
1639 | body: string,
1640 | collection: "videos",
1641 | data: InferEntrySchema<"videos">
1642 | },
1643 | "nOq1a6-8M-E.mdx": {
1644 | id: "nOq1a6-8M-E.mdx",
1645 | slug: string,
1646 | body: string,
1647 | collection: "videos",
1648 | data: InferEntrySchema<"videos">
1649 | },
1650 | "njXeMeAu4Sg.mdx": {
1651 | id: "njXeMeAu4Sg.mdx",
1652 | slug: string,
1653 | body: string,
1654 | collection: "videos",
1655 | data: InferEntrySchema<"videos">
1656 | },
1657 | "nkpPOVUHT1k.mdx": {
1658 | id: "nkpPOVUHT1k.mdx",
1659 | slug: string,
1660 | body: string,
1661 | collection: "videos",
1662 | data: InferEntrySchema<"videos">
1663 | },
1664 | "o3JWb04DRIs.mdx": {
1665 | id: "o3JWb04DRIs.mdx",
1666 | slug: string,
1667 | body: string,
1668 | collection: "videos",
1669 | data: InferEntrySchema<"videos">
1670 | },
1671 | "oAtlrDD7eFM.mdx": {
1672 | id: "oAtlrDD7eFM.mdx",
1673 | slug: string,
1674 | body: string,
1675 | collection: "videos",
1676 | data: InferEntrySchema<"videos">
1677 | },
1678 | "oQUpcAnN8v0.mdx": {
1679 | id: "oQUpcAnN8v0.mdx",
1680 | slug: string,
1681 | body: string,
1682 | collection: "videos",
1683 | data: InferEntrySchema<"videos">
1684 | },
1685 | "p4XQeUaskeQ.mdx": {
1686 | id: "p4XQeUaskeQ.mdx",
1687 | slug: string,
1688 | body: string,
1689 | collection: "videos",
1690 | data: InferEntrySchema<"videos">
1691 | },
1692 | "pGy5vrFJlH0.mdx": {
1693 | id: "pGy5vrFJlH0.mdx",
1694 | slug: string,
1695 | body: string,
1696 | collection: "videos",
1697 | data: InferEntrySchema<"videos">
1698 | },
1699 | "pM5I2h7qjow.mdx": {
1700 | id: "pM5I2h7qjow.mdx",
1701 | slug: string,
1702 | body: string,
1703 | collection: "videos",
1704 | data: InferEntrySchema<"videos">
1705 | },
1706 | "qACBGbBxVYY.mdx": {
1707 | id: "qACBGbBxVYY.mdx",
1708 | slug: string,
1709 | body: string,
1710 | collection: "videos",
1711 | data: InferEntrySchema<"videos">
1712 | },
1713 | "qCX8rw4qOSA.mdx": {
1714 | id: "qCX8rw4qOSA.mdx",
1715 | slug: string,
1716 | body: string,
1717 | collection: "videos",
1718 | data: InferEntrySchema<"videos">
1719 | },
1720 | "rWanEGMkXwc.mdx": {
1721 | id: "rWanEGMkXwc.mdx",
1722 | slug: string,
1723 | body: string,
1724 | collection: "videos",
1725 | data: InferEntrySchema<"videos">
1726 | },
1727 | "rY_XqfSHock.mdx": {
1728 | id: "rY_XqfSHock.mdx",
1729 | slug: string,
1730 | body: string,
1731 | collection: "videos",
1732 | data: InferEntrySchema<"videos">
1733 | },
1734 | "raTvJzKoZJo.mdx": {
1735 | id: "raTvJzKoZJo.mdx",
1736 | slug: string,
1737 | body: string,
1738 | collection: "videos",
1739 | data: InferEntrySchema<"videos">
1740 | },
1741 | "rgZkd-RAYfE.mdx": {
1742 | id: "rgZkd-RAYfE.mdx",
1743 | slug: string,
1744 | body: string,
1745 | collection: "videos",
1746 | data: InferEntrySchema<"videos">
1747 | },
1748 | "s6nG0byDI-o.mdx": {
1749 | id: "s6nG0byDI-o.mdx",
1750 | slug: string,
1751 | body: string,
1752 | collection: "videos",
1753 | data: InferEntrySchema<"videos">
1754 | },
1755 | "s_Fs4AXsTnA.mdx": {
1756 | id: "s_Fs4AXsTnA.mdx",
1757 | slug: string,
1758 | body: string,
1759 | collection: "videos",
1760 | data: InferEntrySchema<"videos">
1761 | },
1762 | "sf355K1iNjE.mdx": {
1763 | id: "sf355K1iNjE.mdx",
1764 | slug: string,
1765 | body: string,
1766 | collection: "videos",
1767 | data: InferEntrySchema<"videos">
1768 | },
1769 | "sndI4pxdB9U.mdx": {
1770 | id: "sndI4pxdB9U.mdx",
1771 | slug: string,
1772 | body: string,
1773 | collection: "videos",
1774 | data: InferEntrySchema<"videos">
1775 | },
1776 | "sqTPGMipjHk.mdx": {
1777 | id: "sqTPGMipjHk.mdx",
1778 | slug: string,
1779 | body: string,
1780 | collection: "videos",
1781 | data: InferEntrySchema<"videos">
1782 | },
1783 | "tD7DM99nH30.mdx": {
1784 | id: "tD7DM99nH30.mdx",
1785 | slug: string,
1786 | body: string,
1787 | collection: "videos",
1788 | data: InferEntrySchema<"videos">
1789 | },
1790 | "tFDvEITdJZ8.mdx": {
1791 | id: "tFDvEITdJZ8.mdx",
1792 | slug: string,
1793 | body: string,
1794 | collection: "videos",
1795 | data: InferEntrySchema<"videos">
1796 | },
1797 | "tGLwKqRCP_A.mdx": {
1798 | id: "tGLwKqRCP_A.mdx",
1799 | slug: string,
1800 | body: string,
1801 | collection: "videos",
1802 | data: InferEntrySchema<"videos">
1803 | },
1804 | "tcNRdIqDnjY.mdx": {
1805 | id: "tcNRdIqDnjY.mdx",
1806 | slug: string,
1807 | body: string,
1808 | collection: "videos",
1809 | data: InferEntrySchema<"videos">
1810 | },
1811 | "tcZbY-Q0TIE.mdx": {
1812 | id: "tcZbY-Q0TIE.mdx",
1813 | slug: string,
1814 | body: string,
1815 | collection: "videos",
1816 | data: InferEntrySchema<"videos">
1817 | },
1818 | "tfr7ZIqNhq4.mdx": {
1819 | id: "tfr7ZIqNhq4.mdx",
1820 | slug: string,
1821 | body: string,
1822 | collection: "videos",
1823 | data: InferEntrySchema<"videos">
1824 | },
1825 | "tigwyK5Khck.mdx": {
1826 | id: "tigwyK5Khck.mdx",
1827 | slug: string,
1828 | body: string,
1829 | collection: "videos",
1830 | data: InferEntrySchema<"videos">
1831 | },
1832 | "tmfvqLFeR10.mdx": {
1833 | id: "tmfvqLFeR10.mdx",
1834 | slug: string,
1835 | body: string,
1836 | collection: "videos",
1837 | data: InferEntrySchema<"videos">
1838 | },
1839 | "ufQcDD1kQCI.mdx": {
1840 | id: "ufQcDD1kQCI.mdx",
1841 | slug: string,
1842 | body: string,
1843 | collection: "videos",
1844 | data: InferEntrySchema<"videos">
1845 | },
1846 | "ukecIFE6Now.mdx": {
1847 | id: "ukecIFE6Now.mdx",
1848 | slug: string,
1849 | body: string,
1850 | collection: "videos",
1851 | data: InferEntrySchema<"videos">
1852 | },
1853 | "v6OR7C304h4.mdx": {
1854 | id: "v6OR7C304h4.mdx",
1855 | slug: string,
1856 | body: string,
1857 | collection: "videos",
1858 | data: InferEntrySchema<"videos">
1859 | },
1860 | "vX6EXi5I9LE.mdx": {
1861 | id: "vX6EXi5I9LE.mdx",
1862 | slug: string,
1863 | body: string,
1864 | collection: "videos",
1865 | data: InferEntrySchema<"videos">
1866 | },
1867 | "vrZpGsL1-Ws.mdx": {
1868 | id: "vrZpGsL1-Ws.mdx",
1869 | slug: string,
1870 | body: string,
1871 | collection: "videos",
1872 | data: InferEntrySchema<"videos">
1873 | },
1874 | "vtM0-uhYLxM.mdx": {
1875 | id: "vtM0-uhYLxM.mdx",
1876 | slug: string,
1877 | body: string,
1878 | collection: "videos",
1879 | data: InferEntrySchema<"videos">
1880 | },
1881 | "w58aZjACETQ.mdx": {
1882 | id: "w58aZjACETQ.mdx",
1883 | slug: string,
1884 | body: string,
1885 | collection: "videos",
1886 | data: InferEntrySchema<"videos">
1887 | },
1888 | "wU06eTMQ6yI.mdx": {
1889 | id: "wU06eTMQ6yI.mdx",
1890 | slug: string,
1891 | body: string,
1892 | collection: "videos",
1893 | data: InferEntrySchema<"videos">
1894 | },
1895 | "wYTL1uqLXho.mdx": {
1896 | id: "wYTL1uqLXho.mdx",
1897 | slug: string,
1898 | body: string,
1899 | collection: "videos",
1900 | data: InferEntrySchema<"videos">
1901 | },
1902 | "wg6iqAdBF9A.mdx": {
1903 | id: "wg6iqAdBF9A.mdx",
1904 | slug: string,
1905 | body: string,
1906 | collection: "videos",
1907 | data: InferEntrySchema<"videos">
1908 | },
1909 | "wtb1JRE-fgk.mdx": {
1910 | id: "wtb1JRE-fgk.mdx",
1911 | slug: string,
1912 | body: string,
1913 | collection: "videos",
1914 | data: InferEntrySchema<"videos">
1915 | },
1916 | "wxnwPLLIJCY.mdx": {
1917 | id: "wxnwPLLIJCY.mdx",
1918 | slug: string,
1919 | body: string,
1920 | collection: "videos",
1921 | data: InferEntrySchema<"videos">
1922 | },
1923 | "x22F4hSdZJM.mdx": {
1924 | id: "x22F4hSdZJM.mdx",
1925 | slug: string,
1926 | body: string,
1927 | collection: "videos",
1928 | data: InferEntrySchema<"videos">
1929 | },
1930 | "x9usS4l1VD0.mdx": {
1931 | id: "x9usS4l1VD0.mdx",
1932 | slug: string,
1933 | body: string,
1934 | collection: "videos",
1935 | data: InferEntrySchema<"videos">
1936 | },
1937 | "xdJQ1GtUQCg.mdx": {
1938 | id: "xdJQ1GtUQCg.mdx",
1939 | slug: string,
1940 | body: string,
1941 | collection: "videos",
1942 | data: InferEntrySchema<"videos">
1943 | },
1944 | "xrbuvD5HBq4.mdx": {
1945 | id: "xrbuvD5HBq4.mdx",
1946 | slug: string,
1947 | body: string,
1948 | collection: "videos",
1949 | data: InferEntrySchema<"videos">
1950 | },
1951 | "yZDvE0mP4Y4.mdx": {
1952 | id: "yZDvE0mP4Y4.mdx",
1953 | slug: string,
1954 | body: string,
1955 | collection: "videos",
1956 | data: InferEntrySchema<"videos">
1957 | },
1958 | "yZPGUHRUXVw.mdx": {
1959 | id: "yZPGUHRUXVw.mdx",
1960 | slug: string,
1961 | body: string,
1962 | collection: "videos",
1963 | data: InferEntrySchema<"videos">
1964 | },
1965 | "yo87SLp4jOo.mdx": {
1966 | id: "yo87SLp4jOo.mdx",
1967 | slug: string,
1968 | body: string,
1969 | collection: "videos",
1970 | data: InferEntrySchema<"videos">
1971 | },
1972 | "ypN-Uwshc5M.mdx": {
1973 | id: "ypN-Uwshc5M.mdx",
1974 | slug: string,
1975 | body: string,
1976 | collection: "videos",
1977 | data: InferEntrySchema<"videos">
1978 | },
1979 | "ytXM05PVcFU.mdx": {
1980 | id: "ytXM05PVcFU.mdx",
1981 | slug: string,
1982 | body: string,
1983 | collection: "videos",
1984 | data: InferEntrySchema<"videos">
1985 | },
1986 | "z8lDwLKthr8.mdx": {
1987 | id: "z8lDwLKthr8.mdx",
1988 | slug: string,
1989 | body: string,
1990 | collection: "videos",
1991 | data: InferEntrySchema<"videos">
1992 | },
1993 | "zA6EDTErWUg.mdx": {
1994 | id: "zA6EDTErWUg.mdx",
1995 | slug: string,
1996 | body: string,
1997 | collection: "videos",
1998 | data: InferEntrySchema<"videos">
1999 | },
2000 | "zJvB2hnsXr0.mdx": {
2001 | id: "zJvB2hnsXr0.mdx",
2002 | slug: string,
2003 | body: string,
2004 | collection: "videos",
2005 | data: InferEntrySchema<"videos">
2006 | },
2007 | "zM_ZiSl2n2E.mdx": {
2008 | id: "zM_ZiSl2n2E.mdx",
2009 | slug: string,
2010 | body: string,
2011 | collection: "videos",
2012 | data: InferEntrySchema<"videos">
2013 | },
2014 | "zYKsUJv4uiU.mdx": {
2015 | id: "zYKsUJv4uiU.mdx",
2016 | slug: string,
2017 | body: string,
2018 | collection: "videos",
2019 | data: InferEntrySchema<"videos">
2020 | },
2021 | "zwQs4wXr9Bg.mdx": {
2022 | id: "zwQs4wXr9Bg.mdx",
2023 | slug: string,
2024 | body: string,
2025 | collection: "videos",
2026 | data: InferEntrySchema<"videos">
2027 | },
2028 | },
2029 |
2030 | };
2031 |
2032 | type ContentConfig = typeof import("../src/content/config");
2033 | }
2034 |
--------------------------------------------------------------------------------