From 1ef2acba4b9efe0dd640bff711df9ba826c963e9 Mon Sep 17 00:00:00 2001 From: Bradley Shellnut Date: Sun, 9 Apr 2023 14:03:13 -0700 Subject: [PATCH] Fix bandcamp source and images on about. --- src/lib/util/fetchBandcampAlbums.ts | 49 ++++++++++++++--------------- src/routes/about/+page.svelte | 6 ++-- 2 files changed, 26 insertions(+), 29 deletions(-) diff --git a/src/lib/util/fetchBandcampAlbums.ts b/src/lib/util/fetchBandcampAlbums.ts index 0091b08..351757c 100644 --- a/src/lib/util/fetchBandcampAlbums.ts +++ b/src/lib/util/fetchBandcampAlbums.ts @@ -1,6 +1,6 @@ import { BANDCAMP_USERNAME, USE_REDIS_CACHE } from '$env/static/private'; import scrapeIt from 'scrape-it'; -import type { ScrapeResult, ScrapeOptions } from 'scrape-it'; +import type { ScrapeResult } from 'scrape-it'; import { redis } from '../server/redis'; import type { Album } from '../types/album'; @@ -14,36 +14,33 @@ export async function fetchBandcampAlbums() { console.log(`Cache hit!`); const ttl = await redis.ttl('bandcampAlbums'); - return { ttl, response }; + return response; } } - const scrapeItOptions: ScrapeOptions = { - collectionItems: { - listItem: '.collection-item-container', - data: { - url: { - selector: '.collection-title-details > a.item-link', - attr: 'href' - }, - artwork: { - selector: 'div.collection-item-art-container a img', - attr: 'src' - }, - title: { - selector: 'span.item-link-alt > div.collection-item-title' - }, - artist: { - selector: 'span.item-link-alt > div.collection-item-artist' + const { data }: ScrapeResult = await scrapeIt( + `https://bandcamp.com/${BANDCAMP_USERNAME}`, + { + collectionItems: { + listItem: '.collection-item-container', + data: { + url: { + selector: '.collection-title-details > a.item-link', + attr: 'href' + }, + artwork: { + selector: 'div.collection-item-art-container a img', + attr: 'src' + }, + title: { + selector: 'span.item-link-alt > div.collection-item-title' + }, + artist: { + selector: 'span.item-link-alt > div.collection-item-artist' + } } } } - }; - - // TODO: Add cache for results - const { data }: ScrapeResult = await scrapeIt( - `https://bandcamp.com/${BANDCAMP_USERNAME}`, - scrapeItOptions ); const albums: Album[] = data?.collectionItems || []; @@ -55,7 +52,7 @@ export async function fetchBandcampAlbums() { } return albums; } else { - return []; // TODO: Add ttl for cache + return []; } } catch (error) { console.error(error); diff --git a/src/routes/about/+page.svelte b/src/routes/about/+page.svelte index aff02af..dfa8c69 100644 --- a/src/routes/about/+page.svelte +++ b/src/routes/about/+page.svelte @@ -9,9 +9,9 @@ import Remix from '@iconify-icons/simple-icons/remix'; import Svelte from '@iconify-icons/simple-icons/svelte'; import TypeScript from '@iconify-icons/simple-icons/typescript'; - import space_needle from '$lib/assets/images/space-needle.png?format=webp;avif;png&metadata?run'; - import tortie_derp from '$lib/assets/images/tortie_derp.jpg?format=webp;avif;jpg&metadata?run'; - import orange_derp from '$lib/assets/images/orange_derp.jpg?format=webp;avif;jpg&metadata?run'; + import space_needle from '$lib/assets/images/space-needle.png?run'; + import tortie_derp from '$lib/assets/images/tortie_derp.jpg?run'; + import orange_derp from '$lib/assets/images/orange_derp.jpg?run'; import Tag from '$root/lib/components/Tag.svelte'; import ExternalLink from '$root/lib/components/ExternalLink.svelte';