Spaces:
Runtime error
Runtime error
Removed analytics and trending features, added test and verification result files, and updated existing feature components and tests.
980bfc2 | import type { FeaturedCreator } from '../../discovery/types/discovery.types'; | |
| import type { MarketplaceType, AvailabilityStatus } from '../types/vault.types'; | |
| // Simplified types for mock data to avoid dependency on deleted trending feature | |
| export interface MockVideo { | |
| id: string; | |
| videoId: string; | |
| title: string; | |
| description: string; | |
| thumbnailUrl: string; | |
| viewCount: number; | |
| publishedAt: Date; | |
| productCount: number; | |
| trendingScore: number; | |
| platform: 'youtube' | 'instagram' | 'tiktok' | 'facebook'; | |
| creator: { | |
| id: string; | |
| name: string; | |
| slug: string; | |
| channelName: string; | |
| thumbnailUrl: string; | |
| }; | |
| } | |
| export interface MockProduct { | |
| id: string; // Internal ID | |
| objectId: string; // Legacy ID used by VaultService | |
| marketplaceMatchId: string | null; | |
| objectName: string; | |
| name: string; // Legacy field used by VaultService | |
| category: string; | |
| frameTimestamp: number; | |
| videoId: string; | |
| videoTitle: string; | |
| marketplace: MarketplaceType | null; | |
| productName: string | null; | |
| price: number | null; | |
| availabilityStatus: AvailabilityStatus | null; | |
| thumbnailUrl: string; | |
| affiliateUrl: string | null; | |
| clickCount: number; | |
| viewCount: number; | |
| trendingScore: number; | |
| interestPledgeCount: number; | |
| video: { | |
| id: string; | |
| videoId: string; | |
| title: string; | |
| thumbnailUrl: string; | |
| }; | |
| creator: { | |
| id: string; | |
| name: string; | |
| slug: string; | |
| channelName: string; | |
| thumbnailUrl: string; | |
| }; | |
| } | |
| export const SAMPLE_TRENDING_VIDEOS: MockVideo[] = [ | |
| { | |
| id: 'vid_mkbhd_01', | |
| videoId: 'XaqOejIaFgM', | |
| title: 'Samsung Galaxy S24 Ultra Review: Why Buy Anything Else?', | |
| description: 'Samsung\'s latest flagship is here and it is packed with features. But is it enough?', | |
| thumbnailUrl: 'https://i.ytimg.com/vi/XaqOejIaFgM/maxresdefault.jpg', | |
| viewCount: 4200000, | |
| publishedAt: new Date(Date.now() - 1000 * 60 * 60 * 24 * 2), | |
| productCount: 4, | |
| trendingScore: 98, | |
| platform: 'youtube', | |
| creator: { | |
| id: 'creator_mkbhd', | |
| name: 'Marques Brownlee', | |
| slug: 'mkbhd', | |
| channelName: 'Marques Brownlee', | |
| thumbnailUrl: 'https://yt3.ggpht.com/qu4TmIaYUlS41-dJ9gZ7DUR3nilvmB5_11i6OKSdvNnBNiyOusZP1bMN6ICnuxtjFBb6ioKgRQ=s800-c-k-c0x00ffffff-no-rj', | |
| }, | |
| }, | |
| { | |
| id: 'vid_mrwho_01', | |
| videoId: 'Ay9RL5YQViA', | |
| title: '14 most AWKWARD Tech Fails of all time', | |
| description: 'From exploding phones to failed launches, here are the biggest tech fails.', | |
| thumbnailUrl: 'https://i.ytimg.com/vi/Ay9RL5YQViA/maxresdefault.jpg', | |
| viewCount: 3800000, | |
| publishedAt: new Date(Date.now() - 1000 * 60 * 60 * 24 * 1), | |
| productCount: 6, | |
| trendingScore: 95, | |
| platform: 'youtube', | |
| creator: { | |
| id: 'creator_mrwho', | |
| name: 'Mrwhosetheboss', | |
| slug: 'mrwhosetheboss', | |
| channelName: 'Mrwhosetheboss', | |
| thumbnailUrl: 'https://yt3.ggpht.com/a_1U9tYmozHPhZhsLiqqQ_XcYbhlmG_X1fsTdBWAHBjLmRN0haiv1xa_owiit7p8xyKDlMF1LXw=s800-c-k-c0x00ffffff-no-rj', | |
| }, | |
| }, | |
| { | |
| id: 'vid_jerry_01', | |
| videoId: 'dMH7zI48Wrg', | |
| title: 'Nothing Phone 2a Durability Test!', | |
| description: 'Does the transparent plastic back going to scratch instantly? Let\'s find out.', | |
| thumbnailUrl: 'https://i.ytimg.com/vi/dMH7zI48Wrg/maxresdefault.jpg', | |
| viewCount: 1500000, | |
| publishedAt: new Date(Date.now() - 1000 * 60 * 60 * 24 * 3), | |
| productCount: 3, | |
| trendingScore: 89, | |
| platform: 'youtube', | |
| creator: { | |
| id: 'creator_jerry', | |
| name: 'JerryRigEverything', | |
| slug: 'jerryrigeverything', | |
| channelName: 'JerryRigEverything', | |
| thumbnailUrl: 'https://yt3.ggpht.com/ebXyJhsgpfIHg4PXw3eSFTeSx6Ud1us26Gwgshe9jPBvSu82SpQkFmc1GK7q2Go2KJePYQ5Icg=s800-c-k-c0x00ffffff-no-rj', | |
| }, | |
| }, | |
| { | |
| id: 'vid_ijustine_01', | |
| videoId: 'KrvXY5JK3ro', | |
| title: 'Logitech MX Keys S Review', | |
| description: 'Is this the best keyboard for productivity? Let\'s find out.', | |
| thumbnailUrl: 'https://i.ytimg.com/vi/KrvXY5JK3ro/maxresdefault.jpg', | |
| viewCount: 950000, | |
| publishedAt: new Date(Date.now() - 1000 * 60 * 60 * 24 * 4), | |
| productCount: 5, | |
| trendingScore: 85, | |
| platform: 'youtube', | |
| creator: { | |
| id: 'creator_ijustine', | |
| name: 'iJustine', | |
| slug: 'ijustine', | |
| channelName: 'iJustine', | |
| thumbnailUrl: 'https://yt3.ggpht.com/TyFX--bFsY4XVipOdLiWA-NK8X0iwocs9ViPuoSMddCEgwSCrGCPQdRIe5KhEwwmRTvPv6vpnA=s800-c-k-c0x00ffffff-no-rj', | |
| }, | |
| } | |
| ]; | |
| export const SAMPLE_TRENDING_PRODUCTS: MockProduct[] = [ | |
| { | |
| id: 'prod_mkbhd_01', | |
| objectId: 'obj_mkbhd_01', | |
| marketplaceMatchId: 'match_mkbhd_01', | |
| objectName: 'Phone', | |
| name: 'Samsung Galaxy S24 Ultra', | |
| category: 'Tech', | |
| frameTimestamp: 120, | |
| videoId: 'vid_mkbhd_01', | |
| videoTitle: 'Samsung Galaxy S24 Ultra Review', | |
| marketplace: 'amazon', | |
| productName: 'Samsung Galaxy S24 Ultra', | |
| price: 1299.99, | |
| availabilityStatus: 'IN_STOCK', | |
| thumbnailUrl: 'https://images.unsplash.com/photo-1610945415295-d9bbf067e59c?w=400&q=80', | |
| affiliateUrl: 'https://www.amazon.com/s?k=Samsung+Galaxy+S24+Ultra', | |
| clickCount: 5200, | |
| viewCount: 4200000, | |
| trendingScore: 99, | |
| interestPledgeCount: 15, | |
| video: { | |
| id: 'vid_mkbhd_01', | |
| videoId: 'XaqOejIaFgM', | |
| title: 'Samsung Galaxy S24 Ultra Review', | |
| thumbnailUrl: 'https://i.ytimg.com/vi/XaqOejIaFgM/maxresdefault.jpg', | |
| }, | |
| creator: { | |
| id: 'creator_mkbhd', | |
| name: 'Marques Brownlee', | |
| slug: 'mkbhd', | |
| channelName: 'Marques Brownlee', | |
| thumbnailUrl: 'https://yt3.ggpht.com/qu4TmIaYUlS41-dJ9gZ7DUR3nilvmB5_11i6OKSdvNnBNiyOusZP1bMN6ICnuxtjFBb6ioKgRQ=s800-c-k-c0x00ffffff-no-rj', | |
| }, | |
| }, | |
| { | |
| id: 'prod_mrwho_01', | |
| objectId: 'obj_mrwho_01', | |
| marketplaceMatchId: 'match_mrwho_01', | |
| objectName: 'Phone', | |
| name: 'iPhone 15 Pro Max', | |
| category: 'Tech', | |
| frameTimestamp: 45, | |
| videoId: 'vid_mrwho_01', | |
| videoTitle: '14 most AWKWARD Tech Fails', | |
| marketplace: 'amazon', | |
| productName: 'iPhone 15 Pro Max', | |
| price: 1199.00, | |
| availabilityStatus: 'IN_STOCK', | |
| thumbnailUrl: 'https://images.unsplash.com/photo-1695048133142-1a20484d2569?w=400&q=80', | |
| affiliateUrl: 'https://www.amazon.com/s?k=iPhone+15+Pro+Max', | |
| clickCount: 4800, | |
| viewCount: 3800000, | |
| trendingScore: 96, | |
| interestPledgeCount: 22, | |
| video: { | |
| id: 'vid_mrwho_01', | |
| videoId: 'Ay9RL5YQViA', | |
| title: '14 most AWKWARD Tech Fails', | |
| thumbnailUrl: 'https://i.ytimg.com/vi/Ay9RL5YQViA/maxresdefault.jpg', | |
| }, | |
| creator: { | |
| id: 'creator_mrwho', | |
| name: 'Mrwhosetheboss', | |
| slug: 'mrwhosetheboss', | |
| channelName: 'Mrwhosetheboss', | |
| thumbnailUrl: 'https://yt3.ggpht.com/a_1U9tYmozHPhZhsLiqqQ_XcYbhlmG_X1fsTdBWAHBjLmRN0haiv1xa_owiit7p8xyKDlMF1LXw=s800-c-k-c0x00ffffff-no-rj', | |
| }, | |
| }, | |
| { | |
| id: 'prod_jerry_01', | |
| objectId: 'obj_jerry_01', | |
| marketplaceMatchId: 'match_jerry_01', | |
| objectName: 'Phone', | |
| name: 'Nothing Phone (2a)', | |
| category: 'Tech', | |
| frameTimestamp: 180, | |
| videoId: 'vid_jerry_01', | |
| videoTitle: 'Nothing Phone 2a Durability Test', | |
| marketplace: 'amazon', | |
| productName: 'Nothing Phone (2a)', | |
| price: 349.00, | |
| availabilityStatus: 'IN_STOCK', | |
| thumbnailUrl: 'https://i.ytimg.com/vi/dMH7zI48Wrg/maxresdefault.jpg', | |
| affiliateUrl: 'https://www.amazon.com/s?k=Nothing+Phone+2a', | |
| clickCount: 2100, | |
| viewCount: 1500000, | |
| trendingScore: 90, | |
| interestPledgeCount: 8, | |
| video: { | |
| id: 'vid_jerry_01', | |
| videoId: 'dMH7zI48Wrg', | |
| title: 'Nothing Phone 2a Durability Test', | |
| thumbnailUrl: 'https://i.ytimg.com/vi/dMH7zI48Wrg/maxresdefault.jpg', | |
| }, | |
| creator: { | |
| id: 'creator_jerry', | |
| name: 'JerryRigEverything', | |
| slug: 'jerryrigeverything', | |
| channelName: 'JerryRigEverything', | |
| thumbnailUrl: 'https://yt3.ggpht.com/ebXyJhsgpfIHg4PXw3eSFTeSx6Ud1us26Gwgshe9jPBvSu82SpQkFmc1GK7q2Go2KJePYQ5Icg=s800-c-k-c0x00ffffff-no-rj', | |
| }, | |
| }, | |
| { | |
| id: 'prod_keyboard', | |
| objectId: 'obj_keyboard_01', | |
| marketplaceMatchId: 'match_keyboard_01', | |
| objectName: 'Keyboard', | |
| name: 'Logitech MX Keys S', | |
| category: 'Tech', | |
| frameTimestamp: 60, | |
| videoId: 'vid_ijustine_01', | |
| videoTitle: 'Logitech MX Keys S Review', | |
| marketplace: 'amazon', | |
| productName: 'Logitech MX Keys S', | |
| price: 109.99, | |
| availabilityStatus: 'IN_STOCK', | |
| thumbnailUrl: 'https://i.ytimg.com/vi/KrvXY5JK3ro/maxresdefault.jpg', | |
| affiliateUrl: 'https://www.amazon.com/s?k=Logitech+MX+Keys+S', | |
| clickCount: 1800, | |
| viewCount: 950000, | |
| trendingScore: 88, | |
| interestPledgeCount: 5, | |
| video: { | |
| id: 'vid_ijustine_01', | |
| videoId: 'KrvXY5JK3ro', | |
| title: 'Logitech MX Keys S Review', | |
| thumbnailUrl: 'https://i.ytimg.com/vi/KrvXY5JK3ro/maxresdefault.jpg', | |
| }, | |
| creator: { | |
| id: 'creator_ijustine', | |
| name: 'iJustine', | |
| slug: 'ijustine', | |
| channelName: 'iJustine', | |
| thumbnailUrl: 'https://yt3.ggpht.com/TyFX--bFsY4XVipOdLiWA-NK8X0iwocs9ViPuoSMddCEgwSCrGCPQdRIe5KhEwwmRTvPv6vpnA=s800-c-k-c0x00ffffff-no-rj', | |
| }, | |
| } | |
| ]; | |
| export const SAMPLE_FEATURED_CREATORS: FeaturedCreator[] = [ | |
| { | |
| id: 'creator_mkbhd', | |
| name: 'Marques Brownlee', | |
| slug: 'mkbhd', | |
| avatar: 'https://yt3.ggpht.com/qu4TmIaYUlS41-dJ9gZ7DUR3nilvmB5_11i6OKSdvNnBNiyOusZP1bMN6ICnuxtjFBb6ioKgRQ=s800-c-k-c0x00ffffff-no-rj', | |
| subscriberCount: 18500000, | |
| totalProducts: 450, | |
| channelId: 'channel_mkbhd', | |
| vaultPreview: 'https://i.ytimg.com/vi/XaqOejIaFgM/maxresdefault.jpg', | |
| }, | |
| { | |
| id: 'creator_mrwho', | |
| name: 'Mrwhosetheboss', | |
| slug: 'mrwhosetheboss', | |
| avatar: 'https://yt3.ggpht.com/a_1U9tYmozHPhZhsLiqqQ_XcYbhlmG_X1fsTdBWAHBjLmRN0haiv1xa_owiit7p8xyKDlMF1LXw=s800-c-k-c0x00ffffff-no-rj', | |
| subscriberCount: 17200000, | |
| totalProducts: 380, | |
| channelId: 'channel_mrwho', | |
| vaultPreview: 'https://i.ytimg.com/vi/Ay9RL5YQViA/maxresdefault.jpg', | |
| }, | |
| { | |
| id: 'creator_jerry', | |
| name: 'JerryRigEverything', | |
| slug: 'jerryrigeverything', | |
| avatar: 'https://yt3.ggpht.com/ebXyJhsgpfIHg4PXw3eSFTeSx6Ud1us26Gwgshe9jPBvSu82SpQkFmc1GK7q2Go2KJePYQ5Icg=s800-c-k-c0x00ffffff-no-rj', | |
| subscriberCount: 8400000, | |
| totalProducts: 210, | |
| channelId: 'channel_jerry', | |
| vaultPreview: 'https://i.ytimg.com/vi/dMH7zI48Wrg/maxresdefault.jpg', | |
| }, | |
| { | |
| id: 'creator_ijustine', | |
| name: 'iJustine', | |
| slug: 'ijustine', | |
| avatar: 'https://yt3.ggpht.com/TyFX--bFsY4XVipOdLiWA-NK8X0iwocs9ViPuoSMddCEgwSCrGCPQdRIe5KhEwwmRTvPv6vpnA=s800-c-k-c0x00ffffff-no-rj', | |
| subscriberCount: 7100000, | |
| totalProducts: 195, | |
| channelId: 'channel_ijustine', | |
| vaultPreview: 'https://i.ytimg.com/vi/KrvXY5JK3ro/maxresdefault.jpg', | |
| } | |
| ]; | |