307 lines
18 KiB
JavaScript
307 lines
18 KiB
JavaScript
// ========== 模拟数据配置 ==========
|
||
|
||
// 是否使用模拟数据(开发调试时设为 true,上线后改为 false)
|
||
export const USE_MOCK_DATA = true
|
||
|
||
// 模拟图片列表
|
||
const MOCK_IMAGES = [
|
||
'/static/sucai/image-01.png',
|
||
'/static/sucai/image-02.png',
|
||
'/static/sucai/image-03.png',
|
||
'/static/sucai/image-04.png',
|
||
'/static/sucai/image-05.png',
|
||
'/static/sucai/image-06.png',
|
||
'/static/sucai/image-07.png',
|
||
'/static/sucai/image-08.png',
|
||
'/static/sucai/image-09.png',
|
||
'/static/sucai/image-10.png',
|
||
'/static/sucai/image-11.png',
|
||
'/static/sucai/image-12.png',
|
||
'/static/sucai/image-13.png',
|
||
'/static/sucai/image-14.png',
|
||
'/static/sucai/image-15.png',
|
||
'/static/sucai/image-16.png',
|
||
'/static/sucai/image-17.png',
|
||
'/static/sucai/image-18.png',
|
||
'/static/sucai/image-19.png',
|
||
'/static/sucai/image-20.png',
|
||
'/static/sucai/image-21.png',
|
||
'/static/sucai/image-22.png',
|
||
'/static/sucai/image-23.png',
|
||
'/static/sucai/image-24.png',
|
||
'/static/sucai/image-25.png',
|
||
'/static/sucai/image-26.png',
|
||
'/static/sucai/image-27.png',
|
||
'/static/sucai/image-28.png',
|
||
'/static/sucai/image-29.png',
|
||
'/static/sucai/image-30.png',
|
||
'/static/sucai/image-31.png',
|
||
'/static/sucai/image-32.png',
|
||
'/static/sucai/image-33.png',
|
||
'/static/sucai/image-34.png',
|
||
'/static/sucai/image-35.png',
|
||
'/static/sucai/image-36.png',
|
||
'/static/sucai/image-37.png',
|
||
'/static/sucai/image-38.png',
|
||
'/static/sucai/image-39.png',
|
||
'/static/sucai/image-40.png',
|
||
'/static/sucai/image-41.png',
|
||
'/static/sucai/image-42.png',
|
||
'/static/sucai/image-43.png',
|
||
'/static/sucai/image-44.png',
|
||
'/static/sucai/image-45.png',
|
||
'/static/sucai/image-46.png',
|
||
'/static/sucai/image-47.png',
|
||
'/static/sucai/image-48.png',
|
||
'/static/sucai/image-49.png',
|
||
'/static/sucai/image-50.png',
|
||
'/static/sucai/image-51.png',
|
||
'/static/sucai/image-52.png',
|
||
'/static/sucai/image-53.png',
|
||
]
|
||
|
||
// 模拟昵称列表
|
||
const NICKNAMES = [
|
||
'小明', '小红', '小刚', '小芳', '小强', '小美', '小华', '小丽',
|
||
'小杰', '小婷', '小宇', '小雪', '小晨', '小曦', '小雷', '小明',
|
||
'小风', '小月', '小星', '小云', '小河', '小涛', '小琳', '小瑶',
|
||
]
|
||
|
||
// ========== 分类 span 阈值配置 ==========
|
||
// 每个分类有不同的 span 计算规则
|
||
export const SPAN_CONFIG = {
|
||
// 统一 span 阈值
|
||
hot: {
|
||
thresholds: [
|
||
{ max: 30, span: 1 }, // 0-30 → span 1
|
||
{ max: 100, span: 2 }, // 31-100 → span 2
|
||
{ max: 200, span: 3 }, // 101-200 → span 3
|
||
{ max: Infinity, span: 4 }, // 200+ → span 4
|
||
]
|
||
},
|
||
new: {
|
||
thresholds: [
|
||
{ max: 30, span: 1 }, // 0-30 → span 1
|
||
{ max: 100, span: 2 }, // 31-100 → span 2
|
||
{ max: 200, span: 3 }, // 101-200 → span 3
|
||
{ max: Infinity, span: 4 }, // 200+ → span 4
|
||
]
|
||
},
|
||
potential: {
|
||
thresholds: [
|
||
{ max: 30, span: 1 }, // 0-30 → span 1
|
||
{ max: 100, span: 2 }, // 31-100 → span 2
|
||
{ max: 200, span: 3 }, // 101-200 → span 3
|
||
{ max: Infinity, span: 4 }, // 200+ → span 4
|
||
]
|
||
},
|
||
random: {
|
||
thresholds: [
|
||
{ max: 30, span: 1 }, // 0-30 → span 1
|
||
{ max: 100, span: 2 }, // 31-100 → span 2
|
||
{ max: 200, span: 3 }, // 101-200 → span 3
|
||
{ max: Infinity, span: 4 }, // 200+ → span 4
|
||
]
|
||
},
|
||
}
|
||
|
||
// 根据分类和点赞数计算 span
|
||
export function calcSpan(category, likes) {
|
||
const config = SPAN_CONFIG[category] || SPAN_CONFIG.hot
|
||
for (const t of config.thresholds) {
|
||
if (likes < t.max) return t.span
|
||
}
|
||
return 1
|
||
}
|
||
|
||
// ========== 人气王者 - 高点赞热门作品 ==========
|
||
// span 由 WaterfallGrid._span() 根据 like_count 计算
|
||
export const MOCK_RENQIWANG = {
|
||
items: [
|
||
{ asset_id: 10001, name: '星光璀璨', cover_url: MOCK_IMAGES[0], like_count: 250, owner_nickname: '小甜心' },
|
||
{ asset_id: 10002, name: '爱的绽放', cover_url: MOCK_IMAGES[1], like_count: 220, owner_nickname: '爱豆粉' },
|
||
{ asset_id: 10003, name: '温暖守护', cover_url: MOCK_IMAGES[2], like_count: 200, owner_nickname: '星星控' },
|
||
{ asset_id: 10004, name: '甜蜜暴击', cover_url: MOCK_IMAGES[3], like_count: 180, owner_nickname: '追星族' },
|
||
{ asset_id: 10005, name: '闪耀舞台', cover_url: MOCK_IMAGES[4], like_count: 150, owner_nickname: '小太阳' },
|
||
{ asset_id: 10006, name: '为你疯狂', cover_url: MOCK_IMAGES[5], like_count: 120, owner_nickname: '小可爱' },
|
||
{ asset_id: 10007, name: '心动时刻', cover_url: MOCK_IMAGES[6], like_count: 100, owner_nickname: '小天使' },
|
||
{ asset_id: 10008, name: '永相随', cover_url: MOCK_IMAGES[7], like_count: 80, owner_nickname: '小甜豆' },
|
||
{ asset_id: 10009, name: '粉红泡泡', cover_url: MOCK_IMAGES[8], like_count: 70, owner_nickname: '小迷糊' },
|
||
{ asset_id: 10010, name: '爱的力量', cover_url: MOCK_IMAGES[9], like_count: 60, owner_nickname: '小幸运' },
|
||
{ asset_id: 10011, name: '璀璨星河', cover_url: MOCK_IMAGES[10], like_count: 55, owner_nickname: '小浪漫' },
|
||
{ asset_id: 10012, name: '梦幻泡影', cover_url: MOCK_IMAGES[11], like_count: 50, owner_nickname: '小确幸' },
|
||
{ asset_id: 10013, name: '温柔以待', cover_url: MOCK_IMAGES[12], like_count: 45, owner_nickname: '小清新' },
|
||
{ asset_id: 10014, name: '心动信号', cover_url: MOCK_IMAGES[13], like_count: 40, owner_nickname: '小俏皮' },
|
||
{ asset_id: 10015, name: '甜蜜时光', cover_url: MOCK_IMAGES[14], like_count: 38, owner_nickname: '小温柔' },
|
||
{ asset_id: 10016, name: '爱在当下', cover_url: MOCK_IMAGES[15], like_count: 35, owner_nickname: '小热情' },
|
||
{ asset_id: 10017, name: '幸福味道', cover_url: MOCK_IMAGES[16], like_count: 32, owner_nickname: '小甜蜜' },
|
||
{ asset_id: 10018, name: '心动不已', cover_url: MOCK_IMAGES[17], like_count: 30, owner_nickname: '小心动' },
|
||
{ asset_id: 10019, name: '爱的告白', cover_url: MOCK_IMAGES[18], like_count: 28, owner_nickname: '小勇敢' },
|
||
{ asset_id: 10020, name: '粉色回忆', cover_url: MOCK_IMAGES[19], like_count: 25, owner_nickname: '小怀念' },
|
||
{ asset_id: 10021, name: '暖暖情谊', cover_url: MOCK_IMAGES[20], like_count: 23, owner_nickname: '小温情' },
|
||
{ asset_id: 10022, name: '心动瞬间', cover_url: MOCK_IMAGES[21], like_count: 22, owner_nickname: '小美好' },
|
||
],
|
||
cursor: 'renqiwang_cursor_001',
|
||
has_more: true,
|
||
session_id: 'renqiwang_session',
|
||
}
|
||
|
||
// ========== 新鲜上架 - 新发布作品,点赞较低 ==========
|
||
export const MOCK_XINXIANSHANG = {
|
||
items: [
|
||
{ asset_id: 30001, name: '刚刚发布', cover_url: MOCK_IMAGES[27], like_count: 28, owner_nickname: '新手小白' },
|
||
{ asset_id: 30002, name: '今日新鲜', cover_url: MOCK_IMAGES[28], like_count: 25, owner_nickname: '小萌新' },
|
||
{ asset_id: 30003, name: '刚出锅', cover_url: MOCK_IMAGES[29], like_count: 22, owner_nickname: '新来的' },
|
||
{ asset_id: 30004, name: '热乎的', cover_url: MOCK_IMAGES[30], like_count: 20, owner_nickname: '小试牛刀' },
|
||
{ asset_id: 30005, name: '新品上市', cover_url: MOCK_IMAGES[31], like_count: 18, owner_nickname: '初来乍到' },
|
||
{ asset_id: 30006, name: '今日首发', cover_url: MOCK_IMAGES[32], like_count: 15, owner_nickname: '小透明' },
|
||
{ asset_id: 30007, name: '刚出炉', cover_url: MOCK_IMAGES[33], like_count: 12, owner_nickname: '新手村' },
|
||
{ asset_id: 30008, name: '最新创作', cover_url: MOCK_IMAGES[34], like_count: 10, owner_nickname: '小画师' },
|
||
{ asset_id: 30009, name: '新鲜出炉', cover_url: MOCK_IMAGES[35], like_count: 8, owner_nickname: '小创作者' },
|
||
{ asset_id: 30010, name: '首发作品', cover_url: MOCK_IMAGES[36], like_count: 5, owner_nickname: '小练手' },
|
||
{ asset_id: 30011, name: '全新上线', cover_url: MOCK_IMAGES[37], like_count: 3, owner_nickname: '新起步' },
|
||
{ asset_id: 30012, name: '新星登场', cover_url: MOCK_IMAGES[38], like_count: 2, owner_nickname: '小新人' },
|
||
{ asset_id: 30013, name: '首发惊喜', cover_url: MOCK_IMAGES[39], like_count: 1, owner_nickname: '小惊喜' },
|
||
{ asset_id: 30014, name: '今日上新', cover_url: MOCK_IMAGES[40], like_count: 0, owner_nickname: '小上新' },
|
||
{ asset_id: 30015, name: '新作出炉', cover_url: MOCK_IMAGES[41], like_count: 0, owner_nickname: '小出炉' },
|
||
{ asset_id: 30016, name: '新鲜血液', cover_url: MOCK_IMAGES[42], like_count: 0, owner_nickname: '小新鲜' },
|
||
{ asset_id: 30017, name: '最新面世', cover_url: MOCK_IMAGES[43], like_count: 0, owner_nickname: '小面世' },
|
||
{ asset_id: 30018, name: '全新创作', cover_url: MOCK_IMAGES[44], like_count: 0, owner_nickname: '小全新' },
|
||
{ asset_id: 30019, name: '新晋发布', cover_url: MOCK_IMAGES[45], like_count: 0, owner_nickname: '小晋发布' },
|
||
{ asset_id: 30020, name: '新潮上线', cover_url: MOCK_IMAGES[46], like_count: 0, owner_nickname: '小潮人' },
|
||
{ asset_id: 30021, name: '新锐登场', cover_url: MOCK_IMAGES[47], like_count: 0, owner_nickname: '小锐气' },
|
||
{ asset_id: 30022, name: '新意满满', cover_url: MOCK_IMAGES[48], like_count: 0, owner_nickname: '小意新' },
|
||
{ asset_id: 30023, name: '新潮涌动', cover_url: MOCK_IMAGES[49], like_count: 0, owner_nickname: '小涌动' },
|
||
{ asset_id: 30024, name: '新鲜感', cover_url: MOCK_IMAGES[50], like_count: 0, owner_nickname: '小感新' },
|
||
{ asset_id: 30025, name: '新视角', cover_url: MOCK_IMAGES[51], like_count: 0, owner_nickname: '小视角' },
|
||
{ asset_id: 30026, name: '新派作品', cover_url: MOCK_IMAGES[52], like_count: 0, owner_nickname: '小派新' },
|
||
{ asset_id: 30027, name: '新星璀璨', cover_url: MOCK_IMAGES[0], like_count: 0, owner_nickname: '小璀璨' },
|
||
],
|
||
cursor: 'xinxianshang_cursor_001',
|
||
has_more: true,
|
||
session_id: 'xinxianshang_session',
|
||
}
|
||
|
||
// ========== 潜力之星 - 中等点赞有潜力的作品 ==========
|
||
export const MOCK_QIANLIXING = {
|
||
items: [
|
||
{ asset_id: 20001, name: '初露锋芒', cover_url: MOCK_IMAGES[0], like_count: 200, owner_nickname: '小新芽' },
|
||
{ asset_id: 20002, name: '蓄势待发', cover_url: MOCK_IMAGES[3], like_count: 180, owner_nickname: '小嫩草' },
|
||
{ asset_id: 20003, name: '冉冉升起', cover_url: MOCK_IMAGES[6], like_count: 150, owner_nickname: '小泡泡' },
|
||
{ asset_id: 20004, name: '明日之星', cover_url: MOCK_IMAGES[9], like_count: 120, owner_nickname: '小火苗' },
|
||
{ asset_id: 20005, name: '潜力无限', cover_url: MOCK_IMAGES[12], like_count: 100, owner_nickname: '小萌芽' },
|
||
{ asset_id: 20006, name: '闪耀新星', cover_url: MOCK_IMAGES[15], like_count: 80, owner_nickname: '小水滴' },
|
||
{ asset_id: 20007, name: '小荷才露', cover_url: MOCK_IMAGES[18], like_count: 65, owner_nickname: '小竹笋' },
|
||
{ asset_id: 20008, name: '锋芒初现', cover_url: MOCK_IMAGES[21], like_count: 55, owner_nickname: '小鸽子' },
|
||
{ asset_id: 20009, name: '闪闪发光', cover_url: MOCK_IMAGES[24], like_count: 45, owner_nickname: '小萤火' },
|
||
{ asset_id: 20010, name: '未来可期', cover_url: MOCK_IMAGES[27], like_count: 38, owner_nickname: '小芽芽' },
|
||
{ asset_id: 20011, name: '新秀登场', cover_url: MOCK_IMAGES[30], like_count: 32, owner_nickname: '小藤蔓' },
|
||
{ asset_id: 20012, name: '星火燎原', cover_url: MOCK_IMAGES[33], like_count: 28, owner_nickname: '小火种' },
|
||
{ asset_id: 20013, name: '曙光初现', cover_url: MOCK_IMAGES[36], like_count: 24, owner_nickname: '小曙光' },
|
||
{ asset_id: 20014, name: '新光乍现', cover_url: MOCK_IMAGES[39], like_count: 20, owner_nickname: '小新光' },
|
||
{ asset_id: 20015, name: '萌芽破土', cover_url: MOCK_IMAGES[42], like_count: 18, owner_nickname: '小破土' },
|
||
{ asset_id: 20016, name: '蓄力绽放', cover_url: MOCK_IMAGES[45], like_count: 16, owner_nickname: '小蓄力' },
|
||
{ asset_id: 20017, name: '初绽光芒', cover_url: MOCK_IMAGES[48], like_count: 14, owner_nickname: '小初绽' },
|
||
{ asset_id: 20018, name: '潜力萌发', cover_url: MOCK_IMAGES[51], like_count: 12, owner_nickname: '小萌发' },
|
||
{ asset_id: 20019, name: '新生力量', cover_url: MOCK_IMAGES[1], like_count: 11, owner_nickname: '小新力' },
|
||
],
|
||
cursor: 'qianlixing_cursor_001',
|
||
has_more: true,
|
||
session_id: 'qianlixing_session',
|
||
}
|
||
|
||
// ========== 随机寻宝 - 随机混合数据(全局打乱) ==========
|
||
export const MOCK_SUIJIXUNBAO = {
|
||
items: [
|
||
{ asset_id: 40018, name: '神秘宝藏18', cover_url: MOCK_IMAGES[17], like_count: 35, owner_nickname: '淘宝新手' },
|
||
{ asset_id: 40005, name: '神秘宝藏5', cover_url: MOCK_IMAGES[4], like_count: 140, owner_nickname: '挖宝专家' },
|
||
{ asset_id: 40031, name: '神秘宝藏31', cover_url: MOCK_IMAGES[30], like_count: 0, owner_nickname: '寻宝小兵' },
|
||
{ asset_id: 40012, name: '神秘宝藏12', cover_url: MOCK_IMAGES[11], like_count: 68, owner_nickname: '寻宝新手' },
|
||
{ asset_id: 40002, name: '神秘宝藏2', cover_url: MOCK_IMAGES[1], like_count: 210, owner_nickname: '探险家' },
|
||
{ asset_id: 40025, name: '神秘宝藏25', cover_url: MOCK_IMAGES[24], like_count: 12, owner_nickname: '捡漏小兵' },
|
||
{ asset_id: 40009, name: '神秘宝藏9', cover_url: MOCK_IMAGES[8], like_count: 95, owner_nickname: '寻宝奇兵' },
|
||
{ asset_id: 40036, name: '神秘宝藏36', cover_url: MOCK_IMAGES[35], like_count: 0, owner_nickname: '挖宝学徒' },
|
||
{ asset_id: 40020, name: '神秘宝藏20', cover_url: MOCK_IMAGES[19], like_count: 28, owner_nickname: '寻宝小白' },
|
||
{ asset_id: 40007, name: '神秘宝藏7', cover_url: MOCK_IMAGES[6], like_count: 110, owner_nickname: '淘宝达人' },
|
||
{ asset_id: 40033, name: '神秘宝藏33', cover_url: MOCK_IMAGES[32], like_count: 0, owner_nickname: '捡漏小兵' },
|
||
{ asset_id: 40014, name: '神秘宝藏14', cover_url: MOCK_IMAGES[13], like_count: 55, owner_nickname: '捡漏高手' },
|
||
{ asset_id: 40001, name: '神秘宝藏1', cover_url: MOCK_IMAGES[0], like_count: 230, owner_nickname: '寻宝达人' },
|
||
{ asset_id: 40028, name: '神秘宝藏28', cover_url: MOCK_IMAGES[27], like_count: 5, owner_nickname: '寻宝新手' },
|
||
{ asset_id: 40022, name: '神秘宝藏22', cover_url: MOCK_IMAGES[21], like_count: 22, owner_nickname: '挖宝新手' },
|
||
{ asset_id: 40010, name: '神秘宝藏10', cover_url: MOCK_IMAGES[9], like_count: 88, owner_nickname: '淘宝猎人' },
|
||
{ asset_id: 40035, name: '神秘宝藏35', cover_url: MOCK_IMAGES[34], like_count: 0, owner_nickname: '淘宝学徒' },
|
||
{ asset_id: 40016, name: '神秘宝藏16', cover_url: MOCK_IMAGES[15], like_count: 42, owner_nickname: '淘宝猎手' },
|
||
{ asset_id: 40003, name: '神秘宝藏3', cover_url: MOCK_IMAGES[2], like_count: 185, owner_nickname: '淘宝高手' },
|
||
{ asset_id: 40029, name: '神秘宝藏29', cover_url: MOCK_IMAGES[28], like_count: 3, owner_nickname: '淘宝新手' },
|
||
{ asset_id: 40008, name: '神秘宝藏8', cover_url: MOCK_IMAGES[7], like_count: 105, owner_nickname: '猎奇者' },
|
||
{ asset_id: 40024, name: '神秘宝藏24', cover_url: MOCK_IMAGES[23], like_count: 15, owner_nickname: '淘宝小兵' },
|
||
{ asset_id: 40011, name: '神秘宝藏11', cover_url: MOCK_IMAGES[10], like_count: 75, owner_nickname: '挖宝小分队' },
|
||
{ asset_id: 40034, name: '神秘宝藏34', cover_url: MOCK_IMAGES[33], like_count: 0, owner_nickname: '寻宝学徒' },
|
||
{ asset_id: 40019, name: '神秘宝藏19', cover_url: MOCK_IMAGES[18], like_count: 32, owner_nickname: '捡漏新手' },
|
||
{ asset_id: 40030, name: '神秘宝藏30', cover_url: MOCK_IMAGES[29], like_count: 2, owner_nickname: '挖宝新手' },
|
||
{ asset_id: 40006, name: '神秘宝藏6', cover_url: MOCK_IMAGES[5], like_count: 120, owner_nickname: '收藏家' },
|
||
{ asset_id: 40027, name: '神秘宝藏27', cover_url: MOCK_IMAGES[26], like_count: 8, owner_nickname: '淘宝学徒' },
|
||
{ asset_id: 40013, name: '神秘宝藏13', cover_url: MOCK_IMAGES[12], like_count: 62, owner_nickname: '淘宝收藏家' },
|
||
{ asset_id: 40032, name: '神秘宝藏32', cover_url: MOCK_IMAGES[31], like_count: 0, owner_nickname: '淘宝小兵' },
|
||
{ asset_id: 40004, name: '神秘宝藏4', cover_url: MOCK_IMAGES[3], like_count: 160, owner_nickname: '捡漏王' },
|
||
{ asset_id: 40021, name: '神秘宝藏21', cover_url: MOCK_IMAGES[20], like_count: 25, owner_nickname: '淘宝小白' },
|
||
{ asset_id: 40023, name: '神秘宝藏23', cover_url: MOCK_IMAGES[22], like_count: 18, owner_nickname: '寻宝小兵' },
|
||
{ asset_id: 40017, name: '神秘宝藏17', cover_url: MOCK_IMAGES[16], like_count: 38, owner_nickname: '寻宝菜鸟' },
|
||
{ asset_id: 40026, name: '神秘宝藏26', cover_url: MOCK_IMAGES[25], like_count: 10, owner_nickname: '寻宝学徒' },
|
||
{ asset_id: 40015, name: '神秘宝藏15', cover_url: MOCK_IMAGES[14], like_count: 48, owner_nickname: '寻宝老手' },
|
||
],
|
||
cursor: 'suijixunbao_cursor_001',
|
||
has_more: true,
|
||
session_id: 'suijixunbao_session',
|
||
}
|
||
|
||
// ========== 分类映射 ==========
|
||
export const MOCK_DATA_MAP = {
|
||
hot: MOCK_RENQIWANG,
|
||
new: MOCK_XINXIANSHANG,
|
||
potential: MOCK_QIANLIXING,
|
||
random: MOCK_SUIJIXUNBAO,
|
||
}
|
||
|
||
// 根据分类获取模拟数据
|
||
export function getMockDataByCategory(category) {
|
||
return MOCK_DATA_MAP[category] || MOCK_RENQIWANG
|
||
}
|
||
|
||
// 随机生成更多模拟数据(用于追加)
|
||
export function generateMockItems(category = 'hot', count = 20, startId = 50000) {
|
||
const items = []
|
||
|
||
for (let i = 0; i < count; i++) {
|
||
const id = startId + i
|
||
let like_count
|
||
|
||
// 根据分类生成不同的点赞数范围
|
||
switch (category) {
|
||
case 'hot':
|
||
like_count = 200 + Math.floor(Math.random() * 1000) // 200-1200
|
||
break
|
||
case 'new':
|
||
like_count = Math.floor(Math.random() * 5) // 0-5
|
||
break
|
||
case 'potential':
|
||
like_count = 30 + Math.floor(Math.random() * 150) // 30-180
|
||
break
|
||
case 'random':
|
||
like_count = Math.floor(Math.random() * 800) // 0-800
|
||
break
|
||
default:
|
||
like_count = Math.floor(Math.random() * 500)
|
||
}
|
||
|
||
items.push({
|
||
asset_id: id,
|
||
name: `${category}_作品${id}`,
|
||
cover_url: MOCK_IMAGES[i % MOCK_IMAGES.length],
|
||
like_count,
|
||
owner_nickname: NICKNAMES[i % NICKNAMES.length],
|
||
})
|
||
}
|
||
return items
|
||
}
|