From 350a6e1a95406585bf8ae28d700e57fb536bfdc6 Mon Sep 17 00:00:00 2001 From: Sam Carlton Date: Tue, 2 Mar 2021 22:28:52 -0600 Subject: [PATCH] Add support for video data from eleventy-endpoints --- build-lists.js | 2 +- pages-eleventy/tv.11ty.js | 18 ++++++++++++------ 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/build-lists.js b/build-lists.js index 2b64a4a..160c3ef 100644 --- a/build-lists.js +++ b/build-lists.js @@ -226,7 +226,7 @@ class BuildLists { if ( isVideo ) { // this.endpointSets.eleventy.add({ // route: getVideoEndpoint(app), - // // payload: buildVideoPayload( app, this.allVideoAppsList, this.lists.video ) + // payload: buildVideoPayload( app, this.allVideoAppsList, this.lists.video ) // }) this.endpointSets.nuxt.add({ diff --git a/pages-eleventy/tv.11ty.js b/pages-eleventy/tv.11ty.js index 693dd74..a5d29f3 100644 --- a/pages-eleventy/tv.11ty.js +++ b/pages-eleventy/tv.11ty.js @@ -3,6 +3,7 @@ import dotenv from 'dotenv' import config from '../nuxt.config' import VideoRow from '../components-eleventy/video/row.js' +import { isVideo } from '../helpers/app-derived' // Setup dotenv dotenv.config() @@ -29,29 +30,34 @@ class TV { layout: 'default.11ty.js', pagination: { - data: 'video-list', + data: 'eleventy-endpoints', size: 1, - alias: 'video' + alias: 'payload', + before: function( data ) { + return data.filter( entry => { + return entry.payload.hasOwnProperty('video') && isVideo( entry.payload.video ) + }) + } }, eleventyComputed: { - title: ({ video }) => { + title: ({ payload: { video } }) => { // console.log('data', data) return makeTitle( video ) }, - description: ({ video }) => { + description: ({ payload: { video } }) => { return makeDescription( video ) }, }, - permalink: ({ video }) => { + permalink: ({ payload: { video } }) => { // console.log('data', data) return `tv/${ video.slug }/` } } } - render({ video }) { + render({ payload: { video } }) { // console.log('video.payload', Object.keys(video.payload))