import type { CardDefinition } from '../../types'; import CreateKickstarterCardModal from './CreateKickstarterCardModal.svelte'; import KickstarterCard from './KickstarterCard.svelte'; const cardType = 'kickstarter'; export const KickstarterCardDefinition = { type: cardType, contentComponent: KickstarterCard, creationModalComponent: CreateKickstarterCardModal, createNew: (item) => { item.cardType = cardType; item.cardData = { widgetType: 'card' }; item.w = 4; item.h = 4; item.mobileW = 8; item.mobileH = 8; }, onUrlHandler: (url, item) => { const match = url.match(/kickstarter\.com\/projects\/([^/]+\/[^/?#]+)/i); if (!match) return null; item.cardData.src = `https://www.kickstarter.com/projects/${match[1]}/widget/card.html?v=2`; item.cardData.widgetType = 'card'; item.w = 4; item.h = 4; item.mobileW = 8; item.mobileH = 8; return item; }, defaultColor: 'transparent', allowSetColor: false, urlHandlerPriority: 10, name: 'Kickstarter', keywords: ['kickstarter', 'crowdfunding', 'campaign', 'funding'], groups: ['Social'], icon: ` ` } as CardDefinition & { type: typeof cardType };