rsshub
Version:
Make RSS Great Again!
66 lines (64 loc) • 2.03 kB
JavaScript
import { n as init_esm_shims, t as __dirname } from "./esm-shims-CzJ_djXG.mjs";
import "./config-C37vj7VH.mjs";
import "./dist-BInvbO1W.mjs";
import "./logger-Czu8UMNd.mjs";
import "./ofetch-BIyrKU3Y.mjs";
import "./helpers-DxBp0Pty.mjs";
import { t as art } from "./render-BQo6B4tL.mjs";
import { t as got_default } from "./got-KxxWdaxq.mjs";
import path from "node:path";
import { load } from "cheerio";
//#region lib/routes/snowpeak/us-new-arrivals.ts
init_esm_shims();
const host = "https://www.snowpeak.com";
const route = {
path: "/us/new-arrivals",
categories: ["shopping"],
example: "/snowpeak/us/new-arrivals",
parameters: {},
features: {
requireConfig: false,
requirePuppeteer: false,
antiCrawler: false,
supportBT: false,
supportPodcast: false,
supportScihub: false
},
radar: [{ source: ["snowpeak.com/collections/new-arrivals", "snowpeak.com/"] }],
name: "New Arrivals(USA)",
maintainers: ["EthanWng97"],
handler,
url: "snowpeak.com/collections/new-arrivals"
};
async function handler() {
const data = (await got_default({
method: "get",
url: `${host}/collections/new-arrivals`
})).data;
const $ = load(data);
const list = $(".element.product-tile").toArray().map((element) => {
const data$1 = {};
const product = $(element).find(".product-data").data("product");
data$1.title = product.title;
data$1.link = `${host}/products/${product.handle}`;
data$1.pubDate = new Date(product.published_at).toUTCString();
data$1.category = product.tags;
data$1.variants = product.variants.map((item) => item.name);
data$1.description = product.description + art(path.join(__dirname, "templates/new-arrivals-76d1b570.art"), { product });
return data$1;
});
return {
title: "Snow Peak - New Arrivals",
link: `${host}/new-arrivals`,
description: "Snow Peak - New Arrivals",
item: list.map((item) => ({
title: item.title,
category: item.category,
description: item.description,
pubDate: item.pubDate,
link: item.link
}))
};
}
//#endregion
export { route };