diff --git a/cloudbaserc.json b/cloudbaserc.json index 3b92539..c533c49 100644 --- a/cloudbaserc.json +++ b/cloudbaserc.json @@ -8,8 +8,9 @@ { "name": "userPosts", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, { "name": "postDetail", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, { "name": "postCreate", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, + { "name": "postUpdate", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, + { "name": "postDelete", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, { "name": "postLike", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, - { "name": "postFavorite", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, { "name": "commentCreate", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, { "name": "draftSave", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, { "name": "draftGet", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, @@ -17,7 +18,7 @@ { "name": "locationUpdate", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, { "name": "matchLike", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, { "name": "messageList", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, - { "name": "messageSend", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, + { "name": "messageSend", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128, "envVariables": { "WQ_MESSAGE_TEMPLATE_ID": "xirZ0SkI9s_CCYAioAzz3U-qBg4ZEmR1avQTrM-0DrE" } }, { "name": "messageThread", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, { "name": "conversationRead", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, { "name": "followToggle", "runtime": "Nodejs16.13", "handler": "index.main", "timeout": 10, "memorySize": 128 }, diff --git a/cloudfunctions/feedList/index.js b/cloudfunctions/feedList/index.js index ec59cbb..37b3f0d 100644 --- a/cloudfunctions/feedList/index.js +++ b/cloudfunctions/feedList/index.js @@ -28,9 +28,104 @@ function formatTimeText(ts) { return `${d.getMonth() + 1}月${d.getDate()}日` } +function normalizeKeyword(keyword) { + return String(keyword || '').trim().toLowerCase() +} + +function postMatchesKeyword(post, keyword) { + if (!keyword) return true + + return [ + post.content, + post.locationText, + post.authorSnapshot && post.authorSnapshot.name, + post.petSnapshot && post.petSnapshot.name, + post.petSnapshot && post.petSnapshot.breed, + ...(Array.isArray(post.topics) ? post.topics : []) + ] + .filter(Boolean) + .join(' ') + .toLowerCase() + .includes(keyword) +} + +function isCloudFileId(value) { + return typeof value === 'string' && value.startsWith('cloud://') +} + +function extractMediaUrl(media) { + if (!media) return '' + if (typeof media === 'string') return media + return media.url || media.fileId || media.fileID || '' +} + +async function resolveTempUrlMap(urls) { + const fileIds = [...new Set(urls.filter(isCloudFileId))] + if (!fileIds.length) return new Map() + + try { + const result = await cloud.getTempFileURL({ fileList: fileIds }) + const fileList = Array.isArray(result.fileList) ? result.fileList : [] + return new Map(fileList.map(file => [ + file.fileID || file.fileId, + file.tempFileURL || file.tempFileUrl || '' + ]).filter(([fileId, tempUrl]) => fileId && tempUrl)) + } catch (e) { + return new Map() + } +} + +function readableUrl(url, tempUrlMap) { + if (!url) return '' + if (!isCloudFileId(url)) return url + return tempUrlMap.get(url) || '' +} + +async function queryPosts(query, limit, cursor) { + const nextQuery = { ...query } + if (cursor) nextQuery.createdAt = _.lt(Number(cursor)) + + return db.collection('posts') + .where(nextQuery) + .orderBy('createdAt', 'desc') + .limit(limit) + .get() +} + +async function loadTopicOptions(query) { + try { + const topicQuery = { ...query } + delete topicQuery.topics + delete topicQuery.createdAt + + const res = await db.collection('posts') + .where(topicQuery) + .orderBy('createdAt', 'desc') + .limit(100) + .get() + + const counts = new Map() + res.data.forEach(post => { + const postTopics = post.topics || [] + postTopics.forEach(topic => { + if (!topic) return + counts.set(topic, (counts.get(topic) || 0) + 1) + }) + }) + + return [...counts.entries()] + .sort((a, b) => b[1] - a[1]) + .slice(0, 12) + .map(([topic]) => topic) + } catch (e) { + return [] + } +} + exports.main = async event => { const { OPENID } = cloud.getWXContext() const pageSize = Math.min(event.pageSize || 20, 50) + const keyword = normalizeKeyword(event.keyword) const query = { visibility: 'public' } if (event.topic) query.topics = event.topic @@ -48,35 +143,45 @@ exports.main = async event => { query.visibility = _.in(['public', 'friends']) } - if (event.cursor) { - query.createdAt = _.lt(Number(event.cursor)) + const topics = event.cursor ? [] : await loadTopicOptions(query) + const fetchLimit = keyword ? 50 : pageSize + const matchedPosts = [] + let scanCursor = event.cursor || '' + let nextCursor = '' + + while (matchedPosts.length < pageSize) { + const res = await queryPosts(query, fetchLimit, scanCursor) + if (!res.data.length) break + + for (const post of res.data) { + scanCursor = String(post.createdAt || '') + if (!postMatchesKeyword(post, keyword)) continue + + matchedPosts.push(post) + if (matchedPosts.length >= pageSize) { + nextCursor = scanCursor + break + } + } + + if (matchedPosts.length >= pageSize || res.data.length < fetchLimit) break + scanCursor = String(res.data[res.data.length - 1].createdAt || '') } - const res = await db.collection('posts') - .where(query) - .orderBy('createdAt', 'desc') - .limit(pageSize) - .get() + if (!matchedPosts.length) return { list: [], nextCursor: '', topics } - if (!res.data.length) return { list: [], nextCursor: '' } + const postIds = matchedPosts.map(p => p._id) - const postIds = res.data.map(p => p._id) - - // Batch-check liked/favorited status — skip if no valid OPENID (non-WeChat context) + // Batch-check liked status, skip if no valid OPENID (non-WeChat context). let likedSet = new Set() - let favSet = new Set() if (OPENID) { - const [likedRes, favRes] = await Promise.all([ - safeGet('postLikes', { openid: OPENID, postId: _.in(postIds) }), - safeGet('postFavorites', { openid: OPENID, postId: _.in(postIds) }) - ]) + const likedRes = await safeGet('postLikes', { openid: OPENID, postId: _.in(postIds) }) likedSet = new Set(likedRes.data.map(l => l.postId)) - favSet = new Set(favRes.data.map(f => f.postId)) } // Resolve authors' current profile (real avatar image) so feed avatars load // and stay fresh, even for posts whose snapshot predates avatar upload. - const authorIds = [...new Set(res.data.map(p => p.authorId).filter(Boolean))] + const authorIds = [...new Set(matchedPosts.map(p => p.authorId).filter(Boolean))] const authorMap = new Map() for (let i = 0; i < authorIds.length; i += 100) { const chunk = authorIds.slice(i, i + 100) @@ -84,36 +189,70 @@ exports.main = async event => { usersRes.data.forEach(u => authorMap.set(u._id, u)) } - const list = res.data.map(post => { - const author = authorMap.get(post.authorId) + const authorOpenids = [...new Set(matchedPosts.map(p => p.authorOpenid).filter(Boolean))] + const authorOpenidMap = new Map() + for (let i = 0; i < authorOpenids.length; i += 100) { + const chunk = authorOpenids.slice(i, i + 100) + const usersRes = await safeGet('users', { openid: _.in(chunk) }, 100) + usersRes.data.forEach(u => authorOpenidMap.set(u.openid, u)) + } + const findAuthor = post => authorMap.get(post.authorId) || authorOpenidMap.get(post.authorOpenid) + + // Real presence per author: a recent, visible location (same signal as 附近). + const ONLINE_WINDOW_MS = 5 * 60 * 1000 + const onlineNow = Date.now() + const onlineSet = new Set() + for (let i = 0; i < authorOpenids.length; i += 100) { + const chunk = authorOpenids.slice(i, i + 100) + const locRes = await safeGet('locations', { openid: _.in(chunk) }, 100) + locRes.data.forEach(loc => { + if (loc.visible && loc.updatedAt && onlineNow - loc.updatedAt < ONLINE_WINDOW_MS) onlineSet.add(loc.openid) + }) + } + + const assetUrls = [] + matchedPosts.forEach(post => { + const author = findAuthor(post) + assetUrls.push((author && author.avatarUrl) || post.authorSnapshot?.avatarUrl || '') + if (Array.isArray(post.media)) { + post.media.forEach(media => assetUrls.push(extractMediaUrl(media))) + } + }) + const tempUrlMap = await resolveTempUrlMap(assetUrls) + + const list = matchedPosts.map(post => { + const author = findAuthor(post) + const media = Array.isArray(post.media) + ? post.media + .map(extractMediaUrl) + .map(url => readableUrl(url, tempUrlMap)) + .filter(Boolean) + : [] + return { _id: post._id, author: { - id: post.authorId || '', + id: (author && author._id) || post.authorId || '', name: (author && author.nickname) || post.authorSnapshot?.name || '用户', avatarKey: (author && author.avatarKey) || post.authorSnapshot?.avatarKey || 'gradient-avatar-1', - avatarUrl: (author && author.avatarUrl) || post.authorSnapshot?.avatarUrl || '' + avatarUrl: readableUrl((author && author.avatarUrl) || post.authorSnapshot?.avatarUrl || '', tempUrlMap), + online: onlineSet.has(post.authorOpenid) }, pet: post.petSnapshot || { name: '', breed: '' }, body: post.content || '', topics: post.topics || [], - media: Array.isArray(post.media) - ? post.media.map(m => (typeof m === 'string' ? m : m && (m.url || m.fileId))).filter(Boolean) - : [], + media, mediaTone: post.mediaTone || 'pet-1', sticker: post.sticker || undefined, locationText: post.locationText || '', timeText: formatTimeText(post.createdAt || Date.now()), counts: { likes: post.counts?.likes || 0, - comments: post.counts?.comments || 0, - favorites: post.counts?.favorites || 0 + comments: post.counts?.comments || 0 }, - likedByMe: likedSet.has(post._id), - favoritedByMe: favSet.has(post._id) + likedByMe: likedSet.has(post._id) } }) - const last = res.data[res.data.length - 1] - return { list, nextCursor: last ? String(last.createdAt) : '' } + return { list, nextCursor, topics } } diff --git a/cloudfunctions/followToggle/index.js b/cloudfunctions/followToggle/index.js index f824fb0..ae43f0b 100644 --- a/cloudfunctions/followToggle/index.js +++ b/cloudfunctions/followToggle/index.js @@ -3,12 +3,25 @@ const cloud = require('wx-server-sdk') cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) const db = cloud.database() +// Reading a collection that was never created throws in WeChat 云开发, and this +// function reads `follows` before it ever adds to it — so on a fresh database the +// first follow would always fail. Create it up-front (no-op if it already exists). +async function ensureCollection(name) { + try { + await db.createCollection(name) + } catch (e) { + // Already-exists error is expected on every call after the first. + } +} + exports.main = async event => { const { OPENID } = cloud.getWXContext() if (!OPENID) throw new Error('no openid in wx context') const { targetUserId, follow } = event if (!targetUserId) throw new Error('targetUserId is required') + await ensureCollection('follows') + const meRes = await db.collection('users').where({ openid: OPENID }).limit(1).get() if (!meRes.data.length) throw new Error('user not found') const meId = meRes.data[0]._id diff --git a/cloudfunctions/locationUpdate/index.js b/cloudfunctions/locationUpdate/index.js index faa9707..8ce69ff 100644 --- a/cloudfunctions/locationUpdate/index.js +++ b/cloudfunctions/locationUpdate/index.js @@ -5,17 +5,36 @@ const db = cloud.database() exports.main = async event => { const { OPENID } = cloud.getWXContext() + + // Reading a non-existent collection throws in WeChat 云开发, and this function + // starts with a read — so the collection would never get created by the later + // add(). Create it up-front (no-op if it already exists) to break that deadlock. + try { + await db.createCollection('locations') + } catch (e) { + // -501001 / "already exists" is expected on every call after the first. + } + const now = Date.now() + const loc = event.location || null + const visible = Boolean(event.visible) + const hasCoord = loc && typeof loc.latitude === 'number' && typeof loc.longitude === 'number' + const data = { openid: OPENID, - location: event.location || null, - visible: Boolean(event.visible), + location: hasCoord ? { latitude: loc.latitude, longitude: loc.longitude } : null, + // `nearbyPets` currently filters by distance in memory off `location`, so the + // `visible` flag below is what gates discovery. `geo` is kept (Point form) only + // to enable a future geoNear migration if the user base outgrows the in-memory + // scan — it needs a manually-created geo index to be queried. + geo: hasCoord && visible ? db.Geo.Point(loc.longitude, loc.latitude) : null, + visible, updatedAt: now } + const existed = await db.collection('locations').where({ openid: OPENID }).limit(1).get() if (existed.data.length) await db.collection('locations').doc(existed.data[0]._id).update({ data }) else await db.collection('locations').add({ data }) return { ok: true } } - diff --git a/cloudfunctions/login/index.js b/cloudfunctions/login/index.js index ac959d9..b722aea 100644 --- a/cloudfunctions/login/index.js +++ b/cloudfunctions/login/index.js @@ -9,11 +9,16 @@ function makeHandle(openid) { return `@user_${suffix}` } -// Default avatar pool to randomise new user avatars -const AVATAR_KEYS = [ - 'gradient-avatar-1', 'gradient-avatar-2', 'gradient-avatar-3', - 'gradient-avatar-4', 'gradient-avatar-5', 'gradient-avatar-6' -] +// Deterministic gradient swatch (.gradient-avatar-1..6) from the user's openid, so +// a user who hasn't set a real avatar always gets the same stable colour. +function gradientAvatarKey(seed) { + let h = 5381 + for (let i = 0; i < seed.length; i++) { + h = ((h << 5) + h) ^ seed.charCodeAt(i) + h >>>= 0 + } + return `gradient-avatar-${(h % 6) + 1}` +} exports.main = async event => { const { OPENID } = cloud.getWXContext() @@ -35,7 +40,7 @@ exports.main = async event => { } // New user — create with sensible defaults - const avatarKey = AVATAR_KEYS[Math.floor(Math.random() * AVATAR_KEYS.length)] + const avatarKey = gradientAvatarKey(OPENID) const user = { openid: OPENID, nickname: event.userInfo?.nickname || '宠物达人', @@ -48,7 +53,7 @@ exports.main = async event => { level: 1, bio: '', verified: false, - stats: { posts: 0, following: 0, followers: 0, favorites: 0 }, + stats: { posts: 0, following: 0, followers: 0 }, preferences: { notifications: true, nearbyVisible: true }, createdAt: now, lastLoginAt: now diff --git a/cloudfunctions/matchLike/index.js b/cloudfunctions/matchLike/index.js index fde42e7..0e09fc5 100644 --- a/cloudfunctions/matchLike/index.js +++ b/cloudfunctions/matchLike/index.js @@ -4,11 +4,25 @@ cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) const db = cloud.database() const _ = db.command +// Reading a collection that was never created throws in WeChat 云开发, and this +// function reads `matches` before it ever adds to it — so the collection would +// never get created and every "like" would fail. Create it up-front (no-op if it +// already exists) to break that deadlock. +async function ensureCollection(name) { + try { + await db.createCollection(name) + } catch (e) { + // Already-exists error is expected on every call after the first. + } +} + exports.main = async event => { const { OPENID } = cloud.getWXContext() const { petId } = event if (!petId) throw new Error('petId is required') + await ensureCollection('matches') + // Get current user and their pets const userRes = await db.collection('users').where({ openid: OPENID }).limit(1).get() if (!userRes.data.length) throw new Error('user not found') diff --git a/cloudfunctions/messageList/index.js b/cloudfunctions/messageList/index.js index 86ae7bd..cb56b2b 100644 --- a/cloudfunctions/messageList/index.js +++ b/cloudfunctions/messageList/index.js @@ -40,6 +40,17 @@ async function fetchUsers(ids) { return out } +async function fetchUsersByOpenids(openids) { + if (!openids.length) return [] + const out = [] + for (let i = 0; i < openids.length; i += 100) { + const chunk = openids.slice(i, i + 100) + const res = await db.collection('users').where({ openid: _.in(chunk) }).limit(100).get() + out.push(...res.data) + } + return out +} + exports.main = async event => { const { OPENID } = cloud.getWXContext() if (!OPENID) throw new Error('no openid in wx context') @@ -70,22 +81,46 @@ exports.main = async event => { convRes = { data: [] } } + const peerOpenids = [ + ...new Set( + convRes.data + .filter(c => (c.type || 'single') === 'single') + .map(c => (c.memberOpenids || []).find(memberOpenid => memberOpenid !== OPENID)) + .filter(Boolean) + ) + ] + const peerUsers = await fetchUsersByOpenids(peerOpenids) + const peerUserByOpenid = new Map(peerUsers.map(user => [user.openid, user])) + const conversations = convRes.data.map(c => { const unreadOpenids = c.unreadOpenids || [] const unreadCounts = c.unreadCounts || {} const unreadCount = unreadCounts[OPENID] || (unreadOpenids.includes(OPENID) ? 1 : 0) + const type = c.type || 'single' + const peerOpenid = type === 'single' + ? (c.memberOpenids || []).find(memberOpenid => memberOpenid !== OPENID) + : '' + const peer = peerOpenid ? peerUserByOpenid.get(peerOpenid) : null + return { _id: c._id, - type: c.type || 'single', - title: c.title || '未知用户', + type, + title: type === 'single' + ? peer?.nickname || c.title || '未知用户' + : c.title || '系统消息', petName: c.petName || undefined, - avatarKey: c.avatarKey || 'gradient-avatar-1', + avatarKey: type === 'single' + ? peer?.avatarKey || c.avatarKey || 'gradient-avatar-1' + : c.avatarKey || 'gradient-avatar-1', + avatarUrl: type === 'single' + ? peer?.avatarUrl || c.avatarUrl || '' + : c.avatarUrl || '', preview: c.lastMessage?.content || c.preview || '', timeText: formatTimeText(c.updatedAt || c.createdAt), unreadCount, pinned: Boolean(c.pinned), muted: Boolean(c.muted), - online: Boolean(c.online) + online: type === 'single' ? Boolean(peer?.online || c.online) : Boolean(c.online) } }) diff --git a/cloudfunctions/messageSend/index.js b/cloudfunctions/messageSend/index.js index ef49074..eb26561 100644 --- a/cloudfunctions/messageSend/index.js +++ b/cloudfunctions/messageSend/index.js @@ -3,14 +3,148 @@ const cloud = require('wx-server-sdk') cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) const db = cloud.database() const _ = db.command +const SERVER_MESSAGE_LIMIT = 500 +const CONVERSATIONS_COLLECTION = 'conversations' +const MESSAGES_COLLECTION = 'messages' +const CHAT_MESSAGE_TEMPLATE_ID = process.env.WQ_MESSAGE_TEMPLATE_ID || process.env.TARO_APP_MESSAGE_TEMPLATE_ID || '' + +function isCollectionMissing(error) { + const text = String(error?.errMsg || error?.message || error || '') + return ( + text.includes('collection not exist') || + text.includes('collection not exists') || + text.includes('collection is not exists') || + text.includes('DATABASE_COLLECTION_NOT_EXIST') || + text.includes('-502005') + ) +} + +function isCollectionAlreadyExists(error) { + const text = String(error?.errMsg || error?.message || error || '') + return text.includes('collection already exists') || text.includes('DATABASE_COLLECTION_ALREADY_EXIST') +} + +async function ensureCollection(name) { + if (typeof db.createCollection !== 'function') { + throw new Error(`${name} collection does not exist`) + } + + try { + await db.createCollection(name) + } catch (error) { + if (!isCollectionAlreadyExists(error)) throw error + } +} + +async function getExistingConversation(openid, toOpenid) { + try { + return await db.collection(CONVERSATIONS_COLLECTION) + .where({ type: 'single', memberOpenids: _.all([openid, toOpenid]) }) + .limit(1) + .get() + } catch (error) { + if (!isCollectionMissing(error)) throw error + await ensureCollection(CONVERSATIONS_COLLECTION) + return { data: [] } + } +} + +async function getConversationById(conversationId) { + try { + return await db.collection(CONVERSATIONS_COLLECTION).doc(conversationId).get() + } catch (error) { + if (!isCollectionMissing(error)) throw error + return { data: null } + } +} + +async function addConversation(data) { + try { + return await db.collection(CONVERSATIONS_COLLECTION).add({ data }) + } catch (error) { + if (!isCollectionMissing(error)) throw error + await ensureCollection(CONVERSATIONS_COLLECTION) + return db.collection(CONVERSATIONS_COLLECTION).add({ data }) + } +} + +async function addMessage(data) { + try { + return await db.collection(MESSAGES_COLLECTION).add({ data }) + } catch (error) { + if (!isCollectionMissing(error)) throw error + await ensureCollection(MESSAGES_COLLECTION) + return db.collection(MESSAGES_COLLECTION).add({ data }) + } +} + +async function trimConversationMessages(conversationId) { + for (;;) { + const oldMessages = await db.collection(MESSAGES_COLLECTION) + .where({ conversationId }) + .orderBy('createdAt', 'desc') + .skip(SERVER_MESSAGE_LIMIT) + .limit(100) + .get() + .catch(() => ({ data: [] })) + + if (!oldMessages.data.length) return + + await Promise.all( + oldMessages.data.map(item => + db.collection(MESSAGES_COLLECTION).doc(item._id).remove().catch(() => null) + ) + ) + + if (oldMessages.data.length < 100) return + } +} + +function pad(value) { + return String(value).padStart(2, '0') +} + +function formatDateTime(ts) { + const d = new Date(ts) + return `${d.getFullYear()}-${pad(d.getMonth() + 1)}-${pad(d.getDate())} ${pad(d.getHours())}:${pad(d.getMinutes())}` +} + +function templateValue(value, max = 20) { + const text = String(value || '').trim() + return text.length > max ? `${text.slice(0, max - 1)}…` : text +} + +async function sendChatNotifications({ recipients, conversationId, senderName, content, type, createdAt }) { + if (!CHAT_MESSAGE_TEMPLATE_ID || !recipients.length || !cloud.openapi?.subscribeMessage?.send) return + + const preview = type === 'image' ? '[图片]' : content + await Promise.all( + recipients.map(touser => + cloud.openapi.subscribeMessage.send({ + touser, + templateId: CHAT_MESSAGE_TEMPLATE_ID, + page: `pages/chat/index?conversationId=${conversationId}`, + data: { + thing31: { value: templateValue(senderName || '汪友') }, + thing2: { value: templateValue(preview || '你收到一条新消息') }, + time3: { value: formatDateTime(createdAt) } + } + }).catch(error => { + console.log('[messageSend] subscribe message skipped', error?.errMsg || error?.message || error) + }) + ) + ) +} exports.main = async event => { const { OPENID } = cloud.getWXContext() const content = String(event.content || '').trim() if (!content) throw new Error('content is required') + if (!OPENID) throw new Error('no openid in wx context') const now = Date.now() let convId = event.conversationId + let conversation = null // Create a 1:1 conversation if not provided if (!convId) { @@ -19,53 +153,64 @@ exports.main = async event => { if (!toOpenid && event.toUserId) { const toUserById = await db.collection('users').doc(event.toUserId).get().catch(() => null) if (toUserById && toUserById.data) toOpenid = toUserById.data.openid + if (!toOpenid) { + const toUserByOpenid = await db.collection('users') + .where({ openid: event.toUserId }) + .limit(1) + .get() + .catch(() => ({ data: [] })) + if (toUserByOpenid.data[0]) toOpenid = toUserByOpenid.data[0].openid + } } - if (!toOpenid) throw new Error('conversationId or toOpenid/toUserId is required') + if (!toOpenid) throw new Error('target user not found') // Look for existing conversation between these two users - const existing = await db.collection('conversations') - .where({ type: 'single', memberOpenids: _.all([OPENID, toOpenid]) }) - .limit(1) - .get() + const existing = await getExistingConversation(OPENID, toOpenid) if (existing.data.length) { - convId = existing.data[0]._id + conversation = existing.data[0] + convId = conversation._id } else { const toUserRes = await db.collection('users').where({ openid: toOpenid }).limit(1).get() const toUser = toUserRes.data[0] || { nickname: '用户', avatarKey: 'gradient-avatar-1' } - const newConv = await db.collection('conversations').add({ - data: { - type: 'single', - memberOpenids: [OPENID, toOpenid], - unreadOpenids: [toOpenid], - unreadCounts: { [toOpenid]: 1 }, - title: toUser.nickname, - avatarKey: toUser.avatarKey, - lastMessage: { content: content.slice(0, 50), createdAt: now }, - pinned: false, - muted: false, - createdAt: now, - updatedAt: now - } - }) + conversation = { + type: 'single', + memberOpenids: [OPENID, toOpenid], + unreadOpenids: [], + unreadCounts: {}, + title: toUser.nickname, + avatarKey: toUser.avatarKey, + lastMessage: { content: content.slice(0, 50), createdAt: now }, + pinned: false, + muted: false, + createdAt: now, + updatedAt: now + } + const newConv = await addConversation(conversation) convId = newConv._id } } + if (!conversation) { + const convRes = await getConversationById(convId) + conversation = convRes.data + } + if (!conversation) throw new Error('conversation not found') + + const members = conversation.memberOpenids || [] + if (!members.includes(OPENID)) throw new Error('permission denied') + if ((conversation.type || 'single') !== 'single') throw new Error('unsupported conversation type') + // Add message to messages collection - const msgResult = await db.collection('messages').add({ - data: { - conversationId: convId, - fromOpenid: OPENID, - content: content.slice(0, 1000), - type: event.msgType || 'text', - createdAt: now - } + const msgResult = await addMessage({ + conversationId: convId, + fromOpenid: OPENID, + content: content.slice(0, 1000), + type: event.msgType || 'text', + createdAt: now }) // Update conversation: last message + unread counts for all recipients - const convRes = await db.collection('conversations').doc(convId).get() - const members = convRes.data.memberOpenids || [] const recipients = members.filter(id => id !== OPENID) const updateData = { @@ -78,11 +223,21 @@ exports.main = async event => { }) // Rebuild unreadOpenids to include all recipients (remove duplicates) - const existingUnread = convRes.data.unreadOpenids || [] + const existingUnread = conversation.unreadOpenids || [] const newUnread = [...new Set([...existingUnread, ...recipients])] updateData.unreadOpenids = newUnread - await db.collection('conversations').doc(convId).update({ data: updateData }) + await db.collection(CONVERSATIONS_COLLECTION).doc(convId).update({ data: updateData }) + await trimConversationMessages(convId) + const senderRes = await db.collection('users').where({ openid: OPENID }).limit(1).get().catch(() => ({ data: [] })) + await sendChatNotifications({ + recipients, + conversationId: convId, + senderName: senderRes.data[0]?.nickname || conversation.title || '汪友', + content, + type: event.msgType || 'text', + createdAt: now + }) return { messageId: msgResult._id, conversationId: convId } } diff --git a/cloudfunctions/messageThread/index.js b/cloudfunctions/messageThread/index.js index 533ba1e..a7601e0 100644 --- a/cloudfunctions/messageThread/index.js +++ b/cloudfunctions/messageThread/index.js @@ -3,6 +3,7 @@ const cloud = require('wx-server-sdk') cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) const db = cloud.database() const _ = db.command +const SERVER_MESSAGE_LIMIT = 50 function timeText(ts) { if (!ts) return '' @@ -18,12 +19,30 @@ async function userToPeer(u) { return { id: u._id, name: u.nickname || '用户', avatarKey: u.avatarKey || 'gradient-avatar-1', avatarUrl: u.avatarUrl || '' } } +function normalizeLimit(value) { + const limit = Number(value || SERVER_MESSAGE_LIMIT) + if (!Number.isFinite(limit)) return SERVER_MESSAGE_LIMIT + return Math.max(1, Math.min(Math.floor(limit), SERVER_MESSAGE_LIMIT)) +} + +function messageToClient(m, openid) { + return { + _id: m._id, + fromMe: m.fromOpenid === openid, + content: m.content, + type: m.type || 'text', + createdAt: m.createdAt, + timeText: timeText(m.createdAt) + } +} + exports.main = async event => { const { OPENID } = cloud.getWXContext() if (!OPENID) throw new Error('no openid in wx context') let convId = event.conversationId || '' let peer = null + const pageSize = normalizeLimit(event.pageSize || event.limit) // Open by target user — resolve peer and find an existing conversation. if (!convId && event.targetUserId) { @@ -56,27 +75,32 @@ exports.main = async event => { } let messages = [] + let nextCursor = '' if (convId) { + const query = { conversationId: convId } + const cursor = Number(event.cursor || 0) + if (Number.isFinite(cursor) && cursor > 0) query.createdAt = _.lt(cursor) + const res = await db.collection('messages') - .where({ conversationId: convId }) + .where(query) .orderBy('createdAt', 'desc') - .limit(50) + .limit(pageSize + 1) .get() .catch(() => ({ data: [] })) - messages = res.data.reverse().map(m => ({ - _id: m._id, - fromMe: m.fromOpenid === OPENID, - content: m.content, - type: m.type || 'text', - createdAt: m.createdAt, - timeText: timeText(m.createdAt) - })) + const page = res.data.slice(0, pageSize) + messages = page.reverse().map(m => messageToClient(m, OPENID)) + if (res.data.length > pageSize && messages[0]) { + nextCursor = String(messages[0].createdAt || '') + } - // Mark this conversation read for me. - await db.collection('conversations').doc(convId).update({ - data: { unreadOpenids: _.pull(OPENID), [`unreadCounts.${OPENID}`]: 0 } - }).catch(() => {}) + // Mark this conversation read for me only when the client asks for it. + // Silent polling and loading older history should not write the conversation. + if (event.markRead !== false) { + await db.collection('conversations').doc(convId).update({ + data: { unreadOpenids: _.pull(OPENID), [`unreadCounts.${OPENID}`]: 0 } + }).catch(() => {}) + } } - return { conversationId: convId, peer, messages } + return { conversationId: convId, peer, messages, nextCursor } } diff --git a/cloudfunctions/nearbyPets/index.js b/cloudfunctions/nearbyPets/index.js index c2352e2..0e81780 100644 --- a/cloudfunctions/nearbyPets/index.js +++ b/cloudfunctions/nearbyPets/index.js @@ -4,108 +4,172 @@ cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) const db = cloud.database() const _ = db.command -async function fetchUsers(ids) { - if (!ids.length) return [] +// Only people within this radius are "nearby". Online = location reported recently. +const RADIUS_METERS = 5000 +const ONLINE_WINDOW_MS = 5 * 60 * 1000 +// How many visible locations to scan in memory. No geo index is required this way +// (geoNear would need a manually-created index in the cloud console); fine for an +// early-stage user base. Switch to geoNear on `locations.geo` if this grows large. +const MAX_SCAN = 500 +const MAX_RESULTS = 50 + +// In WeChat 云开发, querying a collection that was never created throws +// ("collection not exists"). Treat that as an empty result so an unused +// collection (e.g. follows/matches before anyone follows/likes) can't break +// the whole nearby query. +function isMissingCollection(e) { + if (!e) return false + const msg = String(e.errMsg || e.message || '') + return e.errCode === -502005 || /not exist/i.test(msg) || /CollectionNotExists/i.test(msg) +} + +async function safeGet(query) { + try { + return await query.get() + } catch (e) { + if (isMissingCollection(e)) return { data: [] } + throw e + } +} + +async function fetchByChunks(collection, field, values) { const out = [] - for (let i = 0; i < ids.length; i += 100) { - const chunk = ids.slice(i, i + 100) - const res = await db.collection('users').where({ _id: _.in(chunk) }).limit(100).get() + for (let i = 0; i < values.length; i += 100) { + const chunk = values.slice(i, i + 100) + const res = await safeGet(db.collection(collection).where({ [field]: _.in(chunk) }).limit(100)) out.push(...res.data) } return out } -function hashId(id) { - let h = 5381 - for (let i = 0; i < id.length; i++) { - h = ((h << 5) + h) ^ id.charCodeAt(i) - h = h >>> 0 // keep as unsigned 32-bit - } - return h -} - -// Generate a stable map pin position from pet id (fallback abstract layer) -function stablePin(id) { - const h = hashId(id) - const left = 10 + (h % 70) - const top = 15 + ((h >> 8) % 55) - return { left, top } -} - -// Scatter a pet deterministically within roughly ±0.9km of the user, so on a -// real map markers cluster nearby (stable per pet id across requests). -function syntheticCoord(id, userLoc) { - const h = hashId(id) - const dLat = ((h % 1600) - 800) / 100000 // ±0.008° ≈ ±0.9km - const dLng = (((h >> 8) % 1600) - 800) / 100000 - return { latitude: userLoc.latitude + dLat, longitude: userLoc.longitude + dLng } -} - -// Rough distance text from coordinate delta (fallback when no real distance) -function distanceText(petLoc, userLoc) { - if (!petLoc || !userLoc) return null +// Great-circle distance in metres between two {latitude, longitude} points. +function distanceMeters(a, b) { + if (!a || !b || typeof a.latitude !== 'number' || typeof b.latitude !== 'number') return Infinity const R = 6371000 - const dLat = ((petLoc.latitude - userLoc.latitude) * Math.PI) / 180 - const dLon = ((petLoc.longitude - userLoc.longitude) * Math.PI) / 180 - const a = + const dLat = ((b.latitude - a.latitude) * Math.PI) / 180 + const dLon = ((b.longitude - a.longitude) * Math.PI) / 180 + const s = Math.sin(dLat / 2) ** 2 + - Math.cos((userLoc.latitude * Math.PI) / 180) * - Math.cos((petLoc.latitude * Math.PI) / 180) * + Math.cos((a.latitude * Math.PI) / 180) * + Math.cos((b.latitude * Math.PI) / 180) * Math.sin(dLon / 2) ** 2 - const meters = Math.round(R * 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a))) - if (meters < 1000) return `${meters}m` - return `${(meters / 1000).toFixed(1)}km` + return R * 2 * Math.atan2(Math.sqrt(s), Math.sqrt(1 - s)) +} + +function distanceText(meters) { + if (!isFinite(meters)) return null + const m = Math.round(meters) + if (m < 1000) return `${m}m` + return `${(m / 1000).toFixed(1)}km` } exports.main = async event => { const { OPENID } = cloud.getWXContext() const filter = event.filters?.type || 'all' const userLoc = event.location || null - const query = {} - if (filter === 'dog' || filter === 'cat') query.species = filter - if (filter === 'online') query.online = true + // No usable origin → nothing to anchor "nearby" to. + if (!userLoc || typeof userLoc.latitude !== 'number' || typeof userLoc.longitude !== 'number') { + return { list: [] } + } + + // Identify the caller and their follow graph (for friend/following badges). let meId = '' let followingSet = new Set() let followerSet = new Set() - if (OPENID) { - const meRes = await db.collection('users').where({ openid: OPENID }).limit(1).get() + const meRes = await safeGet(db.collection('users').where({ openid: OPENID }).limit(1)) const me = meRes.data[0] if (me) { meId = me._id const [followingRes, followerRes] = await Promise.all([ - db.collection('follows').where({ followerId: meId }).limit(500).get(), - db.collection('follows').where({ followeeId: meId }).limit(500).get() + safeGet(db.collection('follows').where({ followerId: meId }).limit(500)), + safeGet(db.collection('follows').where({ followeeId: meId }).limit(500)) ]) followingSet = new Set(followingRes.data.map(f => f.followeeId)) followerSet = new Set(followerRes.data.map(f => f.followerId)) } } - const res = await db.collection('pets').where(query).limit(50).get() - const ownerIds = [...new Set(res.data.map(pet => pet.ownerId).filter(Boolean))] - const owners = await fetchUsers(ownerIds) - const ownerMap = new Map(owners.map(owner => [owner._id, owner])) - - const list = res.data.map(pet => { - const realCoord = pet.location && typeof pet.location.latitude === 'number' ? pet.location : null - const coord = realCoord || (userLoc ? syntheticCoord(pet._id, userLoc) : null) - const owner = ownerMap.get(pet.ownerId) - const isFollowing = followingSet.has(pet.ownerId) - const isFollowedBy = followerSet.has(pet.ownerId) - return { - ...pet, - ownerName: owner?.nickname || '', - isMine: Boolean(meId && pet.ownerId === meId), - isFollowing, - isFriend: isFollowing && isFollowedBy, - latitude: coord ? coord.latitude : undefined, - longitude: coord ? coord.longitude : undefined, - distanceText: distanceText(coord, userLoc) || pet.distanceText || null, - pin: stablePin(pet._id) + // 1) Scan visible locations (paginated) and keep those inside the radius. + const near = [] + let scanned = 0 + for (let skip = 0; skip < MAX_SCAN; skip += 100) { + const res = await safeGet(db.collection('locations').where({ visible: true }).skip(skip).limit(100)) + scanned += res.data.length + if (!res.data.length) break + for (const rec of res.data) { + if (!rec.openid || !rec.location) continue + const dist = distanceMeters(userLoc, rec.location) + if (dist <= RADIUS_METERS) near.push({ rec, dist }) } + if (res.data.length < 100) break + } + near.sort((a, b) => a.dist - b.dist) + const top = near.slice(0, MAX_RESULTS) + console.log('[nearbyPets] origin=', userLoc, 'visibleScanned=', scanned, 'inRadius=', near.length, 'nearestKm=', near[0] ? (near[0].dist / 1000).toFixed(2) : 'n/a') + if (!top.length) return { list: [] } + + const distByOpenid = new Map() + const recByOpenid = new Map() + const openids = [] + top.forEach(({ rec, dist }) => { + if (recByOpenid.has(rec.openid)) return + distByOpenid.set(rec.openid, dist) + recByOpenid.set(rec.openid, rec) + openids.push(rec.openid) }) - return { list } + // 2) Resolve those openids to user records. + const users = await fetchByChunks('users', 'openid', openids) + const userByOpenid = new Map(users.map(u => [u.openid, u])) + const openidByUserId = new Map(users.map(u => [u._id, u.openid])) + const ownerIds = users.map(u => u._id) + if (!ownerIds.length) return { list: [] } + + // 3) Their pets (optionally narrowed by species). + let pets = await fetchByChunks('pets', 'ownerId', ownerIds) + if (filter === 'dog' || filter === 'cat') pets = pets.filter(p => p.species === filter) + + // 4) Which of these pets the caller already liked. + const likedSet = new Set() + const petIds = pets.map(p => p._id).filter(Boolean) + if (OPENID && petIds.length) { + const liked = await fetchByChunks('matches', 'petId', petIds).then(rows => + rows.filter(m => m.fromOpenid === OPENID) + ) + liked.forEach(m => likedSet.add(m.petId)) + } + + const now = Date.now() + const list = pets + .map(pet => { + const ownerOpenid = openidByUserId.get(pet.ownerId) + const rec = ownerOpenid ? recByOpenid.get(ownerOpenid) : null + const coord = rec && rec.location ? rec.location : null + const dist = ownerOpenid != null && distByOpenid.has(ownerOpenid) ? distByOpenid.get(ownerOpenid) : Infinity + const owner = userByOpenid.get(ownerOpenid) + const isFollowing = followingSet.has(pet.ownerId) + const isFollowedBy = followerSet.has(pet.ownerId) + return { + ...pet, + ownerName: owner?.nickname || '', + isMine: Boolean(meId && pet.ownerId === meId), + isFollowing, + isFriend: isFollowing && isFollowedBy, + likedByMe: likedSet.has(pet._id), + latitude: coord ? coord.latitude : undefined, + longitude: coord ? coord.longitude : undefined, + distanceText: distanceText(dist), + online: rec ? now - (rec.updatedAt || 0) < ONLINE_WINDOW_MS : false, + _dist: dist + } + }) + .sort((a, b) => a._dist - b._dist) + + list.forEach(p => delete p._dist) + + const finalList = filter === 'online' ? list.filter(p => p.online) : list + console.log('[nearbyPets] nearbyUsers=', openids.length, 'matchedUsers=', users.length, 'pets=', pets.length, 'returned=', finalList.length) + return { list: finalList } } diff --git a/cloudfunctions/petSave/index.js b/cloudfunctions/petSave/index.js index 8f90d6d..81df8ea 100644 --- a/cloudfunctions/petSave/index.js +++ b/cloudfunctions/petSave/index.js @@ -2,6 +2,7 @@ const cloud = require('wx-server-sdk') cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) const db = cloud.database() +const MAX_PETS_PER_USER = 10 exports.main = async event => { const { OPENID } = cloud.getWXContext() @@ -20,8 +21,12 @@ exports.main = async event => { return { petId: event.pet._id } } + const countRes = await db.collection('pets').where({ ownerId: users.data[0]._id }).count() + if ((countRes.total || 0) >= MAX_PETS_PER_USER) { + throw new Error(`最多只能添加 ${MAX_PETS_PER_USER} 只宠物`) + } + pet.createdAt = Date.now() const result = await db.collection('pets').add({ data: pet }) return { petId: result._id } } - diff --git a/cloudfunctions/postCreate/index.js b/cloudfunctions/postCreate/index.js index 1dab4c3..218c518 100644 --- a/cloudfunctions/postCreate/index.js +++ b/cloudfunctions/postCreate/index.js @@ -37,7 +37,7 @@ exports.main = async event => { const post = { authorOpenid: OPENID, authorId: user._id, - authorSnapshot: { name: user.nickname, avatarKey: user.avatarKey }, + authorSnapshot: { name: user.nickname, avatarKey: user.avatarKey, avatarUrl: user.avatarUrl || '' }, petId: event.petId || '', petSnapshot, content: content.slice(0, 2000), @@ -50,7 +50,7 @@ exports.main = async event => { ? { latitude: event.latitude, longitude: event.longitude } : null, visibility: event.visibility || 'public', - counts: { likes: 0, comments: 0, shares: 0, favorites: 0 }, + counts: { likes: 0, comments: 0, shares: 0 }, createdAt: now, updatedAt: now } diff --git a/cloudfunctions/postDelete/index.js b/cloudfunctions/postDelete/index.js new file mode 100644 index 0000000..2c7a802 --- /dev/null +++ b/cloudfunctions/postDelete/index.js @@ -0,0 +1,66 @@ +const cloud = require('wx-server-sdk') + +cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) +const db = cloud.database() +const _ = db.command + +function isCloudFileId(v) { + return typeof v === 'string' && v.startsWith('cloud://') +} + +function extractMediaId(m) { + if (!m) return '' + if (typeof m === 'string') return m + return m.fileId || m.fileID || m.url || '' +} + +// Remove all docs matching `where`, tolerating a collection that was never created. +async function safeRemoveWhere(collection, where) { + try { + await db.collection(collection).where(where).remove() + } catch (e) { + /* collection missing or nothing to remove */ + } +} + +exports.main = async event => { + const { OPENID } = cloud.getWXContext() + if (!OPENID) throw new Error('no openid in wx context') + if (!event.postId) throw new Error('postId is required') + + let postRes + try { + postRes = await db.collection('posts').doc(event.postId).get() + } catch (_) { + return { ok: true } // already gone + } + const post = postRes.data + if (!post) return { ok: true } + if (post.authorOpenid !== OPENID) throw new Error('not allowed') + + await db.collection('posts').doc(event.postId).remove() + + // Decrement the author's post count (never below 0 in practice). + if (post.authorId) { + await db.collection('users').doc(post.authorId).update({ + data: { 'stats.posts': _.inc(-1) } + }).catch(() => {}) + } + + // Best-effort cleanup of derived data so no orphans linger. + await Promise.all([ + safeRemoveWhere('postLikes', { postId: event.postId }), + safeRemoveWhere('postFavorites', { postId: event.postId }), + safeRemoveWhere('comments', { postId: event.postId }) + ]) + + // Best-effort removal of the post's uploaded media from storage. + const fileList = (Array.isArray(post.media) ? post.media : []) + .map(extractMediaId) + .filter(isCloudFileId) + if (fileList.length) { + await cloud.deleteCloudFile({ fileList }).catch(() => {}) + } + + return { ok: true } +} diff --git a/cloudfunctions/postFavorite/package.json b/cloudfunctions/postDelete/package.json similarity index 79% rename from cloudfunctions/postFavorite/package.json rename to cloudfunctions/postDelete/package.json index 0b6a291..5fe2f98 100644 --- a/cloudfunctions/postFavorite/package.json +++ b/cloudfunctions/postDelete/package.json @@ -1,9 +1,8 @@ { - "name": "postFavorite", + "name": "postDelete", "version": "1.0.0", "main": "index.js", "dependencies": { "wx-server-sdk": "latest" } } - diff --git a/cloudfunctions/postDetail/index.js b/cloudfunctions/postDetail/index.js index 85c724e..0c1441e 100644 --- a/cloudfunctions/postDetail/index.js +++ b/cloudfunctions/postDetail/index.js @@ -29,63 +29,116 @@ function formatTimeText(ts) { return `${d.getMonth() + 1}月${d.getDate()}日` } +function isCloudFileId(value) { + return typeof value === 'string' && value.startsWith('cloud://') +} + +function extractMediaUrl(media) { + if (!media) return '' + if (typeof media === 'string') return media + return media.url || media.fileId || media.fileID || '' +} + +async function resolveTempUrlMap(urls) { + const fileIds = [...new Set(urls.filter(isCloudFileId))] + if (!fileIds.length) return new Map() + + try { + const result = await cloud.getTempFileURL({ fileList: fileIds }) + const fileList = Array.isArray(result.fileList) ? result.fileList : [] + return new Map(fileList.map(file => [ + file.fileID || file.fileId, + file.tempFileURL || file.tempFileUrl || '' + ]).filter(([fileId, tempUrl]) => fileId && tempUrl)) + } catch (e) { + return new Map() + } +} + +function readableUrl(url, tempUrlMap) { + if (!url) return '' + if (!isCloudFileId(url)) return url + return tempUrlMap.get(url) || '' +} + exports.main = async event => { const { OPENID } = cloud.getWXContext() const postId = String(event.postId || '').trim() if (!postId) throw new Error('postId is required') + const commentPageSize = Math.max(1, Math.min(Number(event.commentPageSize || 50), 100)) const postRes = await db.collection('posts').doc(postId).get().catch(() => null) if (!postRes || !postRes.data) return { post: null, comments: [] } const post = postRes.data - // Resolve the author's current profile (fresh avatar), liked/favorited state. + // Resolve the author's current profile (fresh avatar) and liked state. let author = null if (post.authorId) { const authorRes = await safeGet('users', { _id: post.authorId }, 1) author = authorRes.data[0] || null } + if (!author && post.authorOpenid) { + const authorRes = await safeGet('users', { openid: post.authorOpenid }, 1) + author = authorRes.data[0] || null + } let likedByMe = false - let favoritedByMe = false if (OPENID) { - const [likedRes, favRes] = await Promise.all([ - safeGet('postLikes', { openid: OPENID, postId }, 1), - safeGet('postFavorites', { openid: OPENID, postId }, 1) - ]) + const likedRes = await safeGet('postLikes', { openid: OPENID, postId }, 1) likedByMe = likedRes.data.length > 0 - favoritedByMe = favRes.data.length > 0 } + const postAssetUrls = [ + (author && author.avatarUrl) || post.authorSnapshot?.avatarUrl || '', + ...(Array.isArray(post.media) ? post.media.map(extractMediaUrl) : []) + ] + const postTempUrlMap = await resolveTempUrlMap(postAssetUrls) + const postMedia = Array.isArray(post.media) + ? post.media + .map(extractMediaUrl) + .map(url => readableUrl(url, postTempUrlMap)) + .filter(Boolean) + : [] + const mappedPost = { _id: post._id, author: { - id: post.authorId || '', + id: (author && author._id) || post.authorId || '', name: (author && author.nickname) || post.authorSnapshot?.name || '用户', avatarKey: (author && author.avatarKey) || post.authorSnapshot?.avatarKey || 'gradient-avatar-1', - avatarUrl: (author && author.avatarUrl) || post.authorSnapshot?.avatarUrl || '' + avatarUrl: readableUrl((author && author.avatarUrl) || post.authorSnapshot?.avatarUrl || '', postTempUrlMap) }, pet: post.petSnapshot || { name: '', breed: '' }, body: post.content || '', topics: post.topics || [], - media: Array.isArray(post.media) - ? post.media.map(m => (typeof m === 'string' ? m : m && (m.url || m.fileId))).filter(Boolean) - : [], + media: postMedia, mediaTone: post.mediaTone || 'pet-1', sticker: post.sticker || undefined, locationText: post.locationText || '', timeText: formatTimeText(post.createdAt || Date.now()), counts: { likes: post.counts?.likes || 0, - comments: post.counts?.comments || 0, - favorites: post.counts?.favorites || 0 + comments: post.counts?.comments || 0 }, - likedByMe, - favoritedByMe + likedByMe } // Comments, oldest first. Resolve each author's current profile for avatars. - const commentsRes = await safeGet('comments', { postId }, 200, { field: 'createdAt', direction: 'asc' }) - const commentAuthorIds = [...new Set(commentsRes.data.map(c => c.authorId).filter(Boolean))] + const commentWhere = { postId } + const commentCursor = Number(event.commentCursor || 0) + if (Number.isFinite(commentCursor) && commentCursor > 0) commentWhere.createdAt = _.gt(commentCursor) + const commentsRes = await safeGet( + 'comments', + commentWhere, + commentPageSize + 1, + { field: 'createdAt', direction: 'asc' } + ) + const commentPage = commentsRes.data.slice(0, commentPageSize) + const commentsNextCursor = commentsRes.data.length > commentPageSize && commentPage[commentPage.length - 1] + ? String(commentPage[commentPage.length - 1].createdAt || '') + : '' + + const commentAuthorIds = [...new Set(commentPage.map(c => c.authorId).filter(Boolean))] const authorMap = new Map() for (let i = 0; i < commentAuthorIds.length; i += 100) { const chunk = commentAuthorIds.slice(i, i + 100) @@ -93,20 +146,34 @@ exports.main = async event => { usersRes.data.forEach(u => authorMap.set(u._id, u)) } - const comments = commentsRes.data.map(c => { - const u = authorMap.get(c.authorId) + const commentAuthorOpenids = [...new Set(commentPage.map(c => c.openid).filter(Boolean))] + const authorOpenidMap = new Map() + for (let i = 0; i < commentAuthorOpenids.length; i += 100) { + const chunk = commentAuthorOpenids.slice(i, i + 100) + const usersRes = await safeGet('users', { openid: _.in(chunk) }, 100) + usersRes.data.forEach(u => authorOpenidMap.set(u.openid, u)) + } + const findCommentAuthor = comment => authorMap.get(comment.authorId) || authorOpenidMap.get(comment.openid) + + const commentTempUrlMap = await resolveTempUrlMap(commentPage.map(c => { + const u = findCommentAuthor(c) + return (u && u.avatarUrl) || c.authorSnapshot?.avatarUrl || '' + })) + + const comments = commentPage.map(c => { + const u = findCommentAuthor(c) return { _id: c._id, author: { - id: c.authorId || '', + id: (u && u._id) || c.authorId || '', name: (u && u.nickname) || c.authorSnapshot?.name || '用户', avatarKey: (u && u.avatarKey) || c.authorSnapshot?.avatarKey || 'gradient-avatar-1', - avatarUrl: (u && u.avatarUrl) || c.authorSnapshot?.avatarUrl || '' + avatarUrl: readableUrl((u && u.avatarUrl) || c.authorSnapshot?.avatarUrl || '', commentTempUrlMap) }, content: c.content || '', timeText: formatTimeText(c.createdAt || Date.now()) } }) - return { post: mappedPost, comments } + return { post: mappedPost, comments, commentsNextCursor } } diff --git a/cloudfunctions/postFavorite/index.js b/cloudfunctions/postFavorite/index.js deleted file mode 100644 index 7da53d0..0000000 --- a/cloudfunctions/postFavorite/index.js +++ /dev/null @@ -1,32 +0,0 @@ -const cloud = require('wx-server-sdk') - -cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) -const db = cloud.database() -const _ = db.command - -exports.main = async event => { - const { OPENID } = cloud.getWXContext() - const { postId, favorited } = event - if (!postId) throw new Error('postId is required') - - const existed = await db.collection('postFavorites').where({ postId, openid: OPENID }).limit(1).get() - let delta = 0 - - if (favorited && !existed.data.length) { - await db.collection('postFavorites').add({ data: { postId, openid: OPENID, createdAt: Date.now() } }) - delta = 1 - } - - if (!favorited && existed.data.length) { - await db.collection('postFavorites').doc(existed.data[0]._id).remove() - delta = -1 - } - - if (delta) { - await db.collection('posts').doc(postId).update({ data: { 'counts.favorites': _.inc(delta) } }) - } - - const post = await db.collection('posts').doc(postId).get() - return { favorited: Boolean(favorited), favorites: post.data.counts?.favorites || 0 } -} - diff --git a/cloudfunctions/postUpdate/index.js b/cloudfunctions/postUpdate/index.js new file mode 100644 index 0000000..f6e79b4 --- /dev/null +++ b/cloudfunctions/postUpdate/index.js @@ -0,0 +1,36 @@ +const cloud = require('wx-server-sdk') + +cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) +const db = cloud.database() + +const ALLOWED_VISIBILITY = ['public', 'friends', 'private'] + +// Lightweight edit: only the post's text content and visibility can change here. +exports.main = async event => { + const { OPENID } = cloud.getWXContext() + if (!OPENID) throw new Error('no openid in wx context') + if (!event.postId) throw new Error('postId is required') + + let postRes + try { + postRes = await db.collection('posts').doc(event.postId).get() + } catch (_) { + throw new Error('post not found') + } + const post = postRes.data + if (!post) throw new Error('post not found') + if (post.authorOpenid !== OPENID) throw new Error('not allowed') + + const data = { updatedAt: Date.now() } + if (typeof event.content === 'string') { + const content = event.content.trim() + if (!content) throw new Error('content is required') + data.content = content.slice(0, 2000) + } + if (typeof event.visibility === 'string' && ALLOWED_VISIBILITY.includes(event.visibility)) { + data.visibility = event.visibility + } + + await db.collection('posts').doc(event.postId).update({ data }) + return { ok: true } +} diff --git a/cloudfunctions/postUpdate/package.json b/cloudfunctions/postUpdate/package.json new file mode 100644 index 0000000..8ad56b1 --- /dev/null +++ b/cloudfunctions/postUpdate/package.json @@ -0,0 +1,8 @@ +{ + "name": "postUpdate", + "version": "1.0.0", + "main": "index.js", + "dependencies": { + "wx-server-sdk": "latest" + } +} diff --git a/cloudfunctions/profileGet/index.js b/cloudfunctions/profileGet/index.js index 73271ed..90cab8a 100644 --- a/cloudfunctions/profileGet/index.js +++ b/cloudfunctions/profileGet/index.js @@ -16,13 +16,12 @@ async function safeCount(collection, where) { // Derive live stats from the source collections so the displayed numbers are // always accurate instead of relying on a stored field that can drift. async function computeStats(user) { - const [posts, favorites, following, followers] = await Promise.all([ + const [posts, following, followers] = await Promise.all([ safeCount('posts', { authorId: user._id }), - safeCount('postFavorites', { openid: user.openid }), safeCount('follows', { followerId: user._id }), safeCount('follows', { followeeId: user._id }) ]) - return { posts, following, followers, favorites } + return { posts, following, followers } } exports.main = async event => { diff --git a/cloudfunctions/userPosts/index.js b/cloudfunctions/userPosts/index.js index f3648ed..e907569 100644 --- a/cloudfunctions/userPosts/index.js +++ b/cloudfunctions/userPosts/index.js @@ -26,11 +26,44 @@ function formatTimeText(ts) { return `${d.getMonth() + 1}月${d.getDate()}日` } +function isCloudFileId(value) { + return typeof value === 'string' && value.startsWith('cloud://') +} + +function extractMediaUrl(media) { + if (!media) return '' + if (typeof media === 'string') return media + return media.url || media.fileId || media.fileID || '' +} + +async function resolveTempUrlMap(urls) { + const fileIds = [...new Set(urls.filter(isCloudFileId))] + if (!fileIds.length) return new Map() + + try { + const result = await cloud.getTempFileURL({ fileList: fileIds }) + const fileList = Array.isArray(result.fileList) ? result.fileList : [] + return new Map(fileList.map(file => [ + file.fileID || file.fileId, + file.tempFileURL || file.tempFileUrl || '' + ]).filter(([fileId, tempUrl]) => fileId && tempUrl)) + } catch (e) { + return new Map() + } +} + +function readableUrl(url, tempUrlMap) { + if (!url) return '' + if (!isCloudFileId(url)) return url + return tempUrlMap.get(url) || '' +} + // List a user's own posts. Defaults to the caller; pass authorId to view // another user (only public posts are returned for others). exports.main = async event => { const { OPENID } = cloud.getWXContext() if (!OPENID) throw new Error('no openid in wx context') + const pageSize = Math.max(1, Math.min(Number(event.pageSize || 20), 50)) let authorOpenid = OPENID let viewingSelf = true @@ -43,35 +76,59 @@ exports.main = async event => { const where = { authorOpenid } if (!viewingSelf) where.visibility = 'public' + const cursor = Number(event.cursor || 0) + if (Number.isFinite(cursor) && cursor > 0) where.createdAt = _.lt(cursor) const res = await db.collection('posts') .where(where) .orderBy('createdAt', 'desc') - .limit(50) + .limit(pageSize + 1) .get() - if (!res.data.length) return { list: [] } + if (!res.data.length) return { list: [], nextCursor: '' } - const postIds = res.data.map(p => p._id) - const [likedRes, favRes] = await Promise.all([ - safeGet('postLikes', { openid: OPENID, postId: _.in(postIds) }), - safeGet('postFavorites', { openid: OPENID, postId: _.in(postIds) }) - ]) + const page = res.data.slice(0, pageSize) + const nextCursor = res.data.length > pageSize && page[page.length - 1] + ? String(page[page.length - 1].createdAt || '') + : '' + + const authorRes = await db.collection('users').where({ openid: authorOpenid }).limit(1).get().catch(() => null) + const authorUser = authorRes && authorRes.data ? authorRes.data[0] : null + + // Real presence: author has a recent, visible location (same signal as 附近). + const ONLINE_WINDOW_MS = 5 * 60 * 1000 + const locRes = await safeGet('locations', { openid: authorOpenid }, 1) + const authorLoc = locRes.data[0] + const authorOnline = Boolean( + authorLoc && authorLoc.visible && authorLoc.updatedAt && Date.now() - authorLoc.updatedAt < ONLINE_WINDOW_MS + ) + const postIds = page.map(p => p._id) + const likedRes = await safeGet('postLikes', { openid: OPENID, postId: _.in(postIds) }) const likedSet = new Set(likedRes.data.map(l => l.postId)) - const favSet = new Set(favRes.data.map(f => f.postId)) + const assetUrls = [ + authorUser?.avatarUrl || '', + ...page.flatMap(post => Array.isArray(post.media) ? post.media.map(extractMediaUrl) : []) + ] + const tempUrlMap = await resolveTempUrlMap(assetUrls) - const list = res.data.map(post => ({ + const list = page.map(post => ({ _id: post._id, author: { id: post.authorId || '', name: post.authorSnapshot?.name || '用户', - avatarKey: post.authorSnapshot?.avatarKey || 'gradient-avatar-1' + avatarKey: authorUser?.avatarKey || post.authorSnapshot?.avatarKey || 'gradient-avatar-1', + avatarUrl: readableUrl(authorUser?.avatarUrl || post.authorSnapshot?.avatarUrl || '', tempUrlMap), + online: authorOnline }, pet: post.petSnapshot || { name: '', breed: '' }, body: post.content || '', topics: post.topics || [], + visibility: post.visibility || 'public', media: Array.isArray(post.media) - ? post.media.map(m => (typeof m === 'string' ? m : m && (m.url || m.fileId))).filter(Boolean) + ? post.media + .map(extractMediaUrl) + .map(url => readableUrl(url, tempUrlMap)) + .filter(Boolean) : [], mediaTone: post.mediaTone || 'pet-1', sticker: post.sticker || undefined, @@ -79,12 +136,10 @@ exports.main = async event => { timeText: formatTimeText(post.createdAt || Date.now()), counts: { likes: post.counts?.likes || 0, - comments: post.counts?.comments || 0, - favorites: post.counts?.favorites || 0 + comments: post.counts?.comments || 0 }, - likedByMe: likedSet.has(post._id), - favoritedByMe: favSet.has(post._id) + likedByMe: likedSet.has(post._id) })) - return { list } + return { list, nextCursor } } diff --git a/config/dev.ts b/config/dev.ts index c4e6f57..f43c4c4 100644 --- a/config/dev.ts +++ b/config/dev.ts @@ -1,7 +1,7 @@ export default { env: { - TARO_APP_CLOUD_ENV: JSON.stringify(process.env.TARO_APP_CLOUD_ENV || 'cloud1-d4g697lte499543d8') + TARO_APP_CLOUD_ENV: JSON.stringify(process.env.TARO_APP_CLOUD_ENV || 'cloud1-d4g697lte499543d8'), + TARO_APP_MESSAGE_TEMPLATE_ID: JSON.stringify(process.env.TARO_APP_MESSAGE_TEMPLATE_ID || 'xirZ0SkI9s_CCYAioAzz3U-qBg4ZEmR1avQTrM-0DrE') }, defineConstants: {} } - diff --git a/config/prod.ts b/config/prod.ts index c4e6f57..f43c4c4 100644 --- a/config/prod.ts +++ b/config/prod.ts @@ -1,7 +1,7 @@ export default { env: { - TARO_APP_CLOUD_ENV: JSON.stringify(process.env.TARO_APP_CLOUD_ENV || 'cloud1-d4g697lte499543d8') + TARO_APP_CLOUD_ENV: JSON.stringify(process.env.TARO_APP_CLOUD_ENV || 'cloud1-d4g697lte499543d8'), + TARO_APP_MESSAGE_TEMPLATE_ID: JSON.stringify(process.env.TARO_APP_MESSAGE_TEMPLATE_ID || 'xirZ0SkI9s_CCYAioAzz3U-qBg4ZEmR1avQTrM-0DrE') }, defineConstants: {} } - diff --git a/dist/app-origin.wxss b/dist/app-origin.wxss index 4fb9772..fa6f48a 100644 --- a/dist/app-origin.wxss +++ b/dist/app-origin.wxss @@ -1 +1 @@ -@-webkit-keyframes slideUp{from{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slideUp{from{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes pulse{0%{opacity:.9;-webkit-transform:scale(.2);transform:scale(.2)}80%{opacity:0;-webkit-transform:scale(2.2);transform:scale(2.2)}100%{opacity:0;-webkit-transform:scale(2.2);transform:scale(2.2)}}@keyframes pulse{0%{opacity:.9;-webkit-transform:scale(.2);transform:scale(.2)}80%{opacity:0;-webkit-transform:scale(2.2);transform:scale(2.2)}100%{opacity:0;-webkit-transform:scale(2.2);transform:scale(2.2)}}@-webkit-keyframes softAppear{from{opacity:0;-webkit-transform:translateY(16rpx);transform:translateY(16rpx)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes softAppear{from{opacity:0;-webkit-transform:translateY(16rpx);transform:translateY(16rpx)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}.wx-icon-text{font-family:Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;line-height:1}.no-scrollbar{scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}.gradient-avatar-1{background:linear-gradient(135deg,#ffb3c8,#ffd9a8)}.gradient-avatar-2{background:linear-gradient(135deg,#d8b4ff,#a4d4ff)}.gradient-avatar-3{background:linear-gradient(135deg,#8fe5b5,#d8b4ff)}.gradient-avatar-4{background:linear-gradient(135deg,#ffd9a8,#ffb3c8)}.gradient-avatar-5{background:linear-gradient(135deg,#a4d4ff,#ffd9a8)}.gradient-avatar-6{background:linear-gradient(135deg,#ffb3c8,#d8b4ff)}page{background:#14102b;color:#f0e9ff;font-family:Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;min-height:100%}button{background:transparent;border:0;color:inherit;line-height:inherit;padding:0}button::after{border:0}scroll-view{-webkit-box-sizing:border-box;box-sizing:border-box} \ No newline at end of file +@-webkit-keyframes slideUp{from{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slideUp{from{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes pulse{0%{opacity:.9;-webkit-transform:scale(.2);transform:scale(.2)}80%{opacity:0;-webkit-transform:scale(2.2);transform:scale(2.2)}100%{opacity:0;-webkit-transform:scale(2.2);transform:scale(2.2)}}@keyframes pulse{0%{opacity:.9;-webkit-transform:scale(.2);transform:scale(.2)}80%{opacity:0;-webkit-transform:scale(2.2);transform:scale(2.2)}100%{opacity:0;-webkit-transform:scale(2.2);transform:scale(2.2)}}@-webkit-keyframes softAppear{from{opacity:0;-webkit-transform:translateY(16rpx);transform:translateY(16rpx)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes softAppear{from{opacity:0;-webkit-transform:translateY(16rpx);transform:translateY(16rpx)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}.wx-icon-text{font-family:Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;line-height:1}.no-scrollbar{scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}.gradient-avatar-1{background:linear-gradient(135deg,#ffb3c8,#ffd9a8)}.gradient-avatar-2{background:linear-gradient(135deg,#d8b4ff,#a4d4ff)}.gradient-avatar-3{background:linear-gradient(135deg,#8fe5b5,#d8b4ff)}.gradient-avatar-4{background:linear-gradient(135deg,#ffd9a8,#ffb3c8)}.gradient-avatar-5{background:linear-gradient(135deg,#a4d4ff,#ffd9a8)}.gradient-avatar-6{background:linear-gradient(135deg,#ffb3c8,#d8b4ff)}page{--app-bg:radial-gradient(ellipse 70% 50% at 25% 0%,rgba(216,180,255,.1),transparent 60%),radial-gradient(ellipse 60% 50% at 75% 100%,rgba(255,179,200,.08),transparent 60%),linear-gradient(180deg,#1c1442,#14102b 60%,#0f0a23);background:#14102b;color:#f0e9ff;font-family:Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;min-height:100%}button{background:transparent;border:0;color:inherit;line-height:inherit;padding:0}button::after{border:0}scroll-view{-webkit-box-sizing:border-box;box-sizing:border-box} \ No newline at end of file diff --git a/dist/app.js b/dist/app.js index 51df3e1..d81b27e 100644 --- a/dist/app.js +++ b/dist/app.js @@ -1,2 +1,2 @@ /*! For license information please see app.js.LICENSE.txt */ -require("./common"),require("./vendors"),require("./taro"),require("./runtime"),(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[524],{2951:function(e,n,t){"use strict";t(2457);var r=t(7860),l=t(1291),a=t(758),u=t.n(a);function i(e){var n=e.children;return(0,a.useLaunch)(function(){var e="cloud1-d4g697lte499543d8";e&&u().cloud&&u().cloud.init({env:e,traceUser:!0})}),n}var o=i,s=t(6540),c=t.t(s,2),f=t(7260),d={pages:["pages/plaza/index","pages/nearby/index","pages/publish/index","pages/messages/index","pages/profile/index","pages/profile-edit/index","pages/pet-edit/index","pages/chat/index","pages/contacts/index","pages/my-posts/index","pages/post-detail/index"],window:{navigationStyle:"custom",backgroundColor:"#14102b",backgroundTextStyle:"dark"},tabBar:{custom:!0,color:"#8a7aab",selectedColor:"#d8b4ff",backgroundColor:"#14102b",borderStyle:"black",list:[{pagePath:"pages/plaza/index",text:"\u5e7f\u573a"},{pagePath:"pages/nearby/index",text:"\u9644\u8fd1"},{pagePath:"pages/messages/index",text:"\u6c6a\u53cb"},{pagePath:"pages/profile/index",text:"\u6211\u7684"}]},permission:{"scope.userLocation":{desc:"\u7528\u4e8e\u53d1\u73b0\u9644\u8fd1\u7684\u6bdb\u5b69\u5b50\uff0c\u4ee5\u53ca\u5728\u53d1\u5e03\u52a8\u6001\u65f6\u6807\u8bb0\u4f4d\u7f6e"}},requiredPrivateInfos:["chooseLocation","getLocation"],lazyCodeLoading:"requiredComponents"};r.mw.__taroAppConfig=d;App((0,l.ND)(o,c,f.Ay,d));(0,a.initPxTransform)({designWidth:390,deviceRatio:{390:2,640:2.34,750:1,828:1.81},baseFontSize:20,unitPrecision:void 0,targetUnit:void 0})},735:function(e,n){"use strict";n.DefaultEventPriority=16},2935:function(e,n,t){e.exports=function(e){var n={},r=t(6540),l=t(9982),a=Object.assign;function u(e){for(var n="https://reactjs.org/docs/error-decoder.html?invariant="+e,t=1;ti||l[u]!==a[i]){var o="\n"+l[u].replace(" at new "," at ");return e.displayName&&o.includes("")&&(o=o.replace("",e.displayName)),o}}while(1<=u&&0<=i);break}}}finally{tn=!1,Error.prepareStackTrace=t}return(e=e?e.displayName||e.name:"")?nn(e):""}var ln=Object.prototype.hasOwnProperty,an=[],un=-1;function on(e){return{current:e}}function sn(e){0>un||(e.current=an[un],an[un]=null,un--)}function cn(e,n){un++,an[un]=e.current,e.current=n}var fn={},dn=on(fn),pn=on(!1),hn=fn;function mn(e,n){var t=e.type.contextTypes;if(!t)return fn;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===n)return r.__reactInternalMemoizedMaskedChildContext;var l,a={};for(l in t)a[l]=n[l];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=n,e.__reactInternalMemoizedMaskedChildContext=a),a}function gn(e){return e=e.childContextTypes,null!==e&&void 0!==e}function vn(){sn(pn),sn(dn)}function bn(e,n,t){if(dn.current!==fn)throw Error(u(168));cn(dn,n),cn(pn,t)}function yn(e,n,t){var r=e.stateNode;if(n=n.childContextTypes,"function"!==typeof r.getChildContext)return t;for(var l in r=r.getChildContext(),r)if(!(l in n))throw Error(u(108,z(e)||"Unknown",l));return a({},t,r)}function Sn(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||fn,hn=dn.current,cn(dn,e),cn(pn,pn.current),!0}function kn(e,n,t){var r=e.stateNode;if(!r)throw Error(u(169));t?(e=yn(e,n,hn),r.__reactInternalMemoizedMergedChildContext=e,sn(pn),sn(dn),cn(dn,e)):sn(pn),cn(pn,t)}var xn=Math.clz32?Math.clz32:Nn,wn=Math.log,zn=Math.LN2;function Nn(e){return e>>>=0,0===e?32:31-(wn(e)/zn|0)|0}var En=64,Pn=4194304;function Cn(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function _n(e,n){var t=e.pendingLanes;if(0===t)return 0;var r=0,l=e.suspendedLanes,a=e.pingedLanes,u=268435455&t;if(0!==u){var i=u&~l;0!==i?r=Cn(i):(a&=u,0!==a&&(r=Cn(a)))}else u=t&~l,0!==u?r=Cn(u):0!==a&&(r=Cn(a));if(0===r)return 0;if(0!==n&&n!==r&&0===(n&l)&&(l=r&-r,a=n&-n,l>=a||16===l&&0!==(4194240&a)))return n;if(0!==(4&r)&&(r|=16&t),n=e.entangledLanes,0!==n)for(e=e.entanglements,n&=r;0t;t++)n.push(e);return n}function Un(e,n,t){e.pendingLanes|=n,536870912!==n&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,n=31-xn(n),e[n]=t}function Mn(e,n){var t=e.pendingLanes&~n;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=n,e.mutableReadLanes&=n,e.entangledLanes&=n,n=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0>=u,l-=u,pt=1<<32-xn(n)+l|t<d?(p=f,f=null):p=f.sibling;var h=g(l,f,i[d],o);if(null===h){null===f&&(f=p);break}e&&f&&null===h.alternate&&n(l,f),u=a(h,u,d),null===c?s=h:c.sibling=h,c=h,f=p}if(d===i.length)return t(l,f),kt&&mt(l,d),s;if(null===f){for(;dp?(h=d,d=null):h=d.sibling;var y=g(l,d,b.value,s);if(null===y){null===d&&(d=h);break}e&&d&&null===y.alternate&&n(l,d),i=a(y,i,p),null===f?c=y:f.sibling=y,f=y,d=h}if(b.done)return t(l,d),kt&&mt(l,p),c;if(null===d){for(;!b.done;p++,b=o.next())b=m(l,b.value,s),null!==b&&(i=a(b,i,p),null===f?c=b:f.sibling=b,f=b);return kt&&mt(l,p),c}for(d=r(l,d);!b.done;p++,b=o.next())b=v(d,l,p,b.value,s),null!==b&&(e&&null!==b.alternate&&d.delete(null===b.key?p:b.key),i=a(b,i,p),null===f?c=b:f.sibling=b,f=b);return e&&d.forEach(function(e){return n(l,e)}),kt&&mt(l,p),c}function k(e,r,a,u){if("object"===typeof a&&null!==a&&a.type===c&&null===a.key&&(a=a.props.children),"object"===typeof a&&null!==a){switch(a.$$typeof){case o:e:{for(var f=a.key,d=r;null!==d;){if(d.key===f){if(f=a.type,f===c){if(7===d.tag){t(e,d.sibling),r=l(d,a.props.children),r.return=e,e=r;break e}}else if(d.elementType===f||"object"===typeof f&&null!==f&&f.$$typeof===y&&mr(f)===d.type){t(e,d.sibling),r=l(d,a.props),r.ref=pr(e,d,a),r.return=e,e=r;break e}t(e,d);break}n(e,d),d=d.sibling}a.type===c?(r=xi(a.props.children,e.mode,u,a.key),r.return=e,e=r):(u=ki(a.type,a.key,a.props,null,e.mode,u),u.ref=pr(e,r,a),u.return=e,e=u)}return i(e);case s:e:{for(d=a.key;null!==r;){if(r.key===d){if(4===r.tag&&r.stateNode.containerInfo===a.containerInfo&&r.stateNode.implementation===a.implementation){t(e,r.sibling),r=l(r,a.children||[]),r.return=e,e=r;break e}t(e,r);break}n(e,r),r=r.sibling}r=Ni(a,e.mode,u),r.return=e,e=r}return i(e);case y:return d=a._init,k(e,r,d(a._payload),u)}if(T(a))return b(e,r,a,u);if(x(a))return S(e,r,a,u);hr(e,a)}return"string"===typeof a&&""!==a||"number"===typeof a?(a=""+a,null!==r&&6===r.tag?(t(e,r.sibling),r=l(r,a),r.return=e,e=r):(t(e,r),r=zi(a,e.mode,u),r.return=e,e=r),i(e)):t(e,r)}return k}var vr=gr(!0),br=gr(!1),yr={},Sr=on(yr),kr=on(yr),xr=on(yr);function wr(e){if(e===yr)throw Error(u(174));return e}function zr(e,n){cn(xr,n),cn(kr,e),cn(Sr,yr),e=F(n),sn(Sr),cn(Sr,e)}function Nr(){sn(Sr),sn(kr),sn(xr)}function Er(e){var n=wr(xr.current),t=wr(Sr.current);n=U(t,e.type,n),t!==n&&(cn(kr,e),cn(Sr,n))}function Pr(e){kr.current===e&&(sn(Sr),sn(kr))}var Cr=on(0);function _r(e){for(var n=e;null!==n;){if(13===n.tag){var t=n.memoizedState;if(null!==t&&(t=t.dehydrated,null===t||Me(t)||De(t)))return n}else if(19===n.tag&&void 0!==n.memoizedProps.revealOrder){if(0!==(128&n.flags))return n}else if(null!==n.child){n.child.return=n,n=n.child;continue}if(n===e)break;for(;null===n.sibling;){if(null===n.return||n.return===e)return null;n=n.return}n.sibling.return=n.return,n=n.sibling}return null}var Ir=[];function Lr(){for(var e=0;et?t:4,e(!0);var r=Rr.transition;Rr.transition={};try{e(!1),n()}finally{Qn=t,Rr.transition=r}}function Sl(){return qr().memoizedState}function kl(e,n,t){var r=Bu(e);if(t={lane:r,action:t,hasEagerState:!1,eagerState:null,next:null},wl(e))zl(n,t);else if(t=Gt(e,n,t,r),null!==t){var l=Hu();Wu(t,e,r,l),Nl(t,n,r)}}function xl(e,n,t){var r=Bu(e),l={lane:r,action:t,hasEagerState:!1,eagerState:null,next:null};if(wl(e))zl(n,l);else{var a=e.alternate;if(0===e.lanes&&(null===a||0===a.lanes)&&(a=n.lastRenderedReducer,null!==a))try{var u=n.lastRenderedState,i=a(u,t);if(l.hasEagerState=!0,l.eagerState=i,Zn(i,u)){var o=n.interleaved;return null===o?(l.next=l,Yt(n)):(l.next=o.next,o.next=l),void(n.interleaved=l)}}catch(e){}t=Gt(e,n,l,r),null!==t&&(l=Hu(),Wu(t,e,r,l),Nl(t,n,r))}}function wl(e){var n=e.alternate;return e===Ur||null!==n&&n===Ur}function zl(e,n){Hr=Qr=!0;var t=e.pending;null===t?n.next=n:(n.next=t.next,t.next=n),e.pending=n}function Nl(e,n,t){if(0!==(4194240&t)){var r=n.lanes;r&=e.pendingLanes,t|=r,n.lanes=t,Dn(e,t)}}var El={readContext:Vt,useCallback:jr,useContext:jr,useEffect:jr,useImperativeHandle:jr,useInsertionEffect:jr,useLayoutEffect:jr,useMemo:jr,useReducer:jr,useRef:jr,useState:jr,useDebugValue:jr,useDeferredValue:jr,useTransition:jr,useMutableSource:jr,useSyncExternalStore:jr,useId:jr,unstable_isNewReconciler:!1},Pl={readContext:Vt,useCallback:function(e,n){return Vr().memoizedState=[e,void 0===n?null:n],e},useContext:Vt,useEffect:sl,useImperativeHandle:function(e,n,t){return t=null!==t&&void 0!==t?t.concat([e]):null,il(4194308,4,pl.bind(null,n,e),t)},useLayoutEffect:function(e,n){return il(4194308,4,e,n)},useInsertionEffect:function(e,n){return il(4,2,e,n)},useMemo:function(e,n){var t=Vr();return n=void 0===n?null:n,e=e(),t.memoizedState=[e,n],e},useReducer:function(e,n,t){var r=Vr();return n=void 0!==t?t(n):n,r.memoizedState=r.baseState=n,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:n},r.queue=e,e=e.dispatch=kl.bind(null,Ur,e),[r.memoizedState,e]},useRef:function(e){var n=Vr();return e={current:e},n.memoizedState=e},useState:ll,useDebugValue:ml,useDeferredValue:function(e){return Vr().memoizedState=e},useTransition:function(){var e=ll(!1),n=e[0];return e=yl.bind(null,e[1]),Vr().memoizedState=e,[n,e]},useMutableSource:function(){},useSyncExternalStore:function(e,n,t){var r=Ur,l=Vr();if(kt){if(void 0===t)throw Error(u(407));t=t()}else{if(t=n(),null===du)throw Error(u(349));0!==(30&Fr)||Zr(r,n,t)}l.memoizedState=t;var a={value:t,getSnapshot:n};return l.queue=a,sl(nl.bind(null,r,a,e),[e]),r.flags|=2048,al(9,el.bind(null,r,a,t,n),void 0,null),t},useId:function(){var e=Vr(),n=du.identifierPrefix;if(kt){var t=ht,r=pt;t=(r&~(1<<32-xn(r)-1)).toString(32)+t,n=":"+n+"R"+t,t=Br++,0Nu&&(n.flags|=128,r=!0,va(l,!1),n.lanes=4194304)}else{if(!r)if(e=_r(a),null!==e){if(n.flags|=128,r=!0,e=e.updateQueue,null!==e&&(n.updateQueue=e,n.flags|=4),va(l,!0),null===l.tail&&"hidden"===l.tailMode&&!a.alternate&&!kt)return ba(n),null}else 2*On()-l.renderingStartTime>Nu&&1073741824!==t&&(n.flags|=128,r=!0,va(l,!1),n.lanes=4194304);l.isBackwards?(a.sibling=n.child,n.child=a):(e=l.last,null!==e?e.sibling=a:n.child=a,l.last=a)}return null!==l.tail?(n=l.tail,l.rendering=n,l.tail=n.sibling,l.renderingStartTime=On(),n.sibling=null,e=Cr.current,cn(Cr,r?1&e|2:1&e),n):(ba(n),null);case 22:case 23:return Ju(),t=null!==n.memoizedState,null!==e&&null!==e.memoizedState!==t&&(n.flags|=8192),t&&0!==(1&n.mode)?0!==(1073741824&mu)&&(ba(n),Y&&6&n.subtreeFlags&&(n.flags|=8192)):ba(n),null;case 24:return null;case 25:return null}throw Error(u(156,n.tag))}function Sa(e,n){switch(bt(n),n.tag){case 1:return gn(n.type)&&vn(),e=n.flags,65536&e?(n.flags=-65537&e|128,n):null;case 3:return Nr(),sn(pn),sn(dn),Lr(),e=n.flags,0!==(65536&e)&&0===(128&e)?(n.flags=-65537&e|128,n):null;case 5:return Pr(n),null;case 13:if(sn(Cr),e=n.memoizedState,null!==e&&null!==e.dehydrated){if(null===n.alternate)throw Error(u(340));Lt()}return e=n.flags,65536&e?(n.flags=-65537&e|128,n):null;case 19:return sn(Cr),null;case 4:return Nr(),null;case 10:return $t(n.type._context),null;case 22:case 23:return Ju(),null;case 24:return null;default:return null}}var ka=!1,xa=!1,wa="function"===typeof WeakSet?WeakSet:Set,za=null;function Na(e,n){var t=e.ref;if(null!==t)if("function"===typeof t)try{t(null)}catch(t){ci(e,n,t)}else t.current=null}function Ea(e,n,t){try{t()}catch(t){ci(e,n,t)}}var Pa=!1;function Ca(e,n){for(M(e.containerInfo),za=n;null!==za;)if(e=za,n=e.child,0!==(1028&e.subtreeFlags)&&null!==n)n.return=e,za=n;else for(;null!==za;){e=za;try{var t=e.alternate;if(0!==(1024&e.flags))switch(e.tag){case 0:case 11:case 15:break;case 1:if(null!==t){var r=t.memoizedProps,l=t.memoizedState,a=e.stateNode,i=a.getSnapshotBeforeUpdate(e.elementType===e.type?r:Mt(e.type,r),l);a.__reactInternalSnapshotBeforeUpdate=i}break;case 3:Y&&Ne(e.stateNode.containerInfo);break;case 5:case 6:case 4:case 17:break;default:throw Error(u(163))}}catch(n){ci(e,e.return,n)}if(n=e.sibling,null!==n){n.return=e.return,za=n;break}za=e.return}return t=Pa,Pa=!1,t}function _a(e,n,t){var r=n.updateQueue;if(r=null!==r?r.lastEffect:null,null!==r){var l=r=r.next;do{if((l.tag&e)===e){var a=l.destroy;l.destroy=void 0,void 0!==a&&Ea(n,t,a)}l=l.next}while(l!==r)}}function Ia(e,n){if(n=n.updateQueue,n=null!==n?n.lastEffect:null,null!==n){var t=n=n.next;do{if((t.tag&e)===e){var r=t.create;t.destroy=r()}t=t.next}while(t!==n)}}function La(e){var n=e.ref;if(null!==n){var t=e.stateNode;switch(e.tag){case 5:e=R(t);break;default:e=t}"function"===typeof n?n(e):n.current=e}}function Ta(e){var n=e.alternate;null!==n&&(e.alternate=null,Ta(n)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&(n=e.stateNode,null!==n&&ee(n)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function Ra(e){return 5===e.tag||3===e.tag||4===e.tag}function Fa(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||Ra(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function Ua(e,n,t){var r=e.tag;if(5===r||6===r)e=e.stateNode,n?ve(t,e,n):de(t,e);else if(4!==r&&(e=e.child,null!==e))for(Ua(e,n,t),e=e.sibling;null!==e;)Ua(e,n,t),e=e.sibling}function Ma(e,n,t){var r=e.tag;if(5===r||6===r)e=e.stateNode,n?ge(t,e,n):fe(t,e);else if(4!==r&&(e=e.child,null!==e))for(Ma(e,n,t),e=e.sibling;null!==e;)Ma(e,n,t),e=e.sibling}var Da=null,Qa=!1;function Ha(e,n,t){for(t=t.child;null!==t;)Ba(e,n,t),t=t.sibling}function Ba(e,n,t){if(Jn&&"function"===typeof Jn.onCommitFiberUnmount)try{Jn.onCommitFiberUnmount(Gn,t)}catch(e){}switch(t.tag){case 5:xa||Na(t,n);case 6:if(Y){var r=Da,l=Qa;Da=null,Ha(e,n,t),Da=r,Qa=l,null!==Da&&(Qa?ye(Da,t.stateNode):be(Da,t.stateNode))}else Ha(e,n,t);break;case 18:Y&&null!==Da&&(Qa?Ke(Da,t.stateNode):Je(Da,t.stateNode));break;case 4:Y?(r=Da,l=Qa,Da=t.stateNode.containerInfo,Qa=!0,Ha(e,n,t),Da=r,Qa=l):(G&&(r=t.stateNode.containerInfo,l=Pe(r),Ie(r,l)),Ha(e,n,t));break;case 0:case 11:case 14:case 15:if(!xa&&(r=t.updateQueue,null!==r&&(r=r.lastEffect,null!==r))){l=r=r.next;do{var a=l,u=a.destroy;a=a.tag,void 0!==u&&(0!==(2&a)||0!==(4&a))&&Ea(t,n,u),l=l.next}while(l!==r)}Ha(e,n,t);break;case 1:if(!xa&&(Na(t,n),r=t.stateNode,"function"===typeof r.componentWillUnmount))try{r.props=t.memoizedProps,r.state=t.memoizedState,r.componentWillUnmount()}catch(e){ci(t,n,e)}Ha(e,n,t);break;case 21:Ha(e,n,t);break;case 22:1&t.mode?(xa=(r=xa)||null!==t.memoizedState,Ha(e,n,t),xa=r):Ha(e,n,t);break;default:Ha(e,n,t)}}function Wa(e){var n=e.updateQueue;if(null!==n){e.updateQueue=null;var t=e.stateNode;null===t&&(t=e.stateNode=new wa),n.forEach(function(n){var r=hi.bind(null,e,n);t.has(n)||(t.add(n),n.then(r,r))})}}function ja(e,n){var t=n.deletions;if(null!==t)for(var r=0;r";case Ka:return":has("+(lu(e)||"")+")";case Xa:return'[role="'+e.value+'"]';case eu:return'"'+e.value+'"';case Za:return'[data-testname="'+e.value+'"]';default:throw Error(u(365))}}function au(e,n){var t=[];e=[e,0];for(var r=0;rl&&(l=i),r&=~a}if(r=l,r=On()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*iu(r/1960))-r,10e?16:e,null===Ru)var r=!1;else{if(e=Ru,Ru=null,Fu=0,0!==(6&fu))throw Error(u(331));var l=fu;for(fu|=4,za=e.current;null!==za;){var a=za,i=a.child;if(0!==(16&za.flags)){var o=a.deletions;if(null!==o){for(var s=0;sOn()-zu?Ku(e,0):ku|=t),ju(e,n)}function di(e,n){0===n&&(0===(1&e.mode)?n=1:(n=Pn,Pn<<=1,0===(130023424&Pn)&&(Pn=4194304)));var t=Hu();e=Jt(e,n),null!==e&&(Un(e,n,t),ju(e,t))}function pi(e){var n=e.memoizedState,t=0;null!==n&&(t=n.retryLane),di(e,t)}function hi(e,n){var t=0;switch(e.tag){case 13:var r=e.stateNode,l=e.memoizedState;null!==l&&(t=l.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(u(314))}null!==r&&r.delete(n),di(e,t)}function mi(e,n){return Bn(e,n)}function gi(e,n,t,r){this.tag=e,this.key=t,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=n,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function vi(e,n,t,r){return new gi(e,n,t,r)}function bi(e){return e=e.prototype,!(!e||!e.isReactComponent)}function yi(e){if("function"===typeof e)return bi(e)?1:0;if(void 0!==e&&null!==e){if(e=e.$$typeof,e===m)return 11;if(e===b)return 14}return 2}function Si(e,n){var t=e.alternate;return null===t?(t=vi(e.tag,n,e.key,e.mode),t.elementType=e.elementType,t.type=e.type,t.stateNode=e.stateNode,t.alternate=e,e.alternate=t):(t.pendingProps=n,t.type=e.type,t.flags=0,t.subtreeFlags=0,t.deletions=null),t.flags=14680064&e.flags,t.childLanes=e.childLanes,t.lanes=e.lanes,t.child=e.child,t.memoizedProps=e.memoizedProps,t.memoizedState=e.memoizedState,t.updateQueue=e.updateQueue,n=e.dependencies,t.dependencies=null===n?null:{lanes:n.lanes,firstContext:n.firstContext},t.sibling=e.sibling,t.index=e.index,t.ref=e.ref,t}function ki(e,n,t,r,l,a){var i=2;if(r=e,"function"===typeof e)bi(e)&&(i=1);else if("string"===typeof e)i=5;else e:switch(e){case c:return xi(t.children,l,a,n);case f:i=8,l|=8;break;case d:return e=vi(12,t,n,2|l),e.elementType=d,e.lanes=a,e;case g:return e=vi(13,t,n,l),e.elementType=g,e.lanes=a,e;case v:return e=vi(19,t,n,l),e.elementType=v,e.lanes=a,e;case S:return wi(t,l,a,n);default:if("object"===typeof e&&null!==e)switch(e.$$typeof){case p:i=10;break e;case h:i=9;break e;case m:i=11;break e;case b:i=14;break e;case y:i=16,r=null;break e}throw Error(u(130,null==e?e:typeof e,""))}return n=vi(i,t,n,l),n.elementType=e,n.type=r,n.lanes=a,n}function xi(e,n,t,r){return e=vi(7,e,r,n),e.lanes=t,e}function wi(e,n,t,r){return e=vi(22,e,r,n),e.elementType=S,e.lanes=t,e.stateNode={isHidden:!1},e}function zi(e,n,t){return e=vi(6,e,null,n),e.lanes=t,e}function Ni(e,n,t){return n=vi(4,null!==e.children?e.children:[],e.key,n),n.lanes=t,n.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},n}function Ei(e,n,t,r,l){this.tag=n,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=V,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Fn(0),this.expirationTimes=Fn(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Fn(0),this.identifierPrefix=r,this.onRecoverableError=l,J&&(this.mutableSourceEagerHydrationData=null)}function Pi(e,n,t,r,l,a,u,i,o){return e=new Ei(e,n,t,i,o),1===n?(n=1,!0===a&&(n|=8)):n=0,a=vi(3,null,null,n),e.current=a,a.stateNode=e,a.memoizedState={element:r,isDehydrated:t,cache:null,transitions:null,pendingSuspenseBoundaries:null},Xt(a),e}function Ci(e){if(!e)return fn;e=e._reactInternals;e:{if(N(e)!==e||1!==e.tag)throw Error(u(170));var n=e;do{switch(n.tag){case 3:n=n.stateNode.context;break e;case 1:if(gn(n.type)){n=n.stateNode.__reactInternalMemoizedMergedChildContext;break e}}n=n.return}while(null!==n);throw Error(u(171))}if(1===e.tag){var t=e.type;if(gn(t))return yn(e,t,n)}return n}function _i(e){var n=e._reactInternals;if(void 0===n){if("function"===typeof e.render)throw Error(u(188));throw e=Object.keys(e).join(","),Error(u(268,e))}return e=C(n),null===e?null:e.stateNode}function Ii(e,n){if(e=e.memoizedState,null!==e&&null!==e.dehydrated){var t=e.retryLane;e.retryLane=0!==t&&t=c&&a>=d&&l<=f&&i<=p){e.splice(n,1);break}if(!(r!==c||t.width!==s.width||pi)){d>a&&(s.height+=d-a,s.y=a),pl)){c>r&&(s.width+=c-r,s.x=r),ft&&(t=i)),i ")+"\n\nNo matching component was found for:\n "+e.join(" > ")}return null},n.getPublicRootInstance=function(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return R(e.child.stateNode);default:return e.child.stateNode}},n.injectIntoDevTools=function(e){if(e={bundleType:e.bundleType,version:e.version,rendererPackageName:e.rendererPackageName,rendererConfig:e.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:i.ReactCurrentDispatcher,findHostInstanceByFiber:Ti,findFiberByHostInstance:e.findFiberByHostInstance||Ri,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.2.0"},"undefined"===typeof __REACT_DEVTOOLS_GLOBAL_HOOK__)e=!1;else{var n=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(n.isDisabled||!n.supportsFiber)e=!0;else{try{Gn=n.inject(e),Jn=n}catch(e){}e=!!n.checkDCE}}return e},n.isAlreadyRendering=function(){return!1},n.observeVisibleRects=function(e,n,t,r){if(!re)throw Error(u(363));e=uu(e,n);var l=ce(e,t,r).disconnect;return{disconnect:function(){l()}}},n.registerMutableSourceForHydration=function(e,n){var t=n._getVersion;t=t(n._source),null==e.mutableSourceEagerHydrationData?e.mutableSourceEagerHydrationData=[n,t]:e.mutableSourceEagerHydrationData.push(n,t)},n.runWithPriority=function(e,n){var t=Qn;try{return Qn=e,n()}finally{Qn=t}},n.shouldError=function(){return null},n.shouldSuspend=function(){return!1},n.updateContainer=function(e,n,t,r){var l=n.current,a=Hu(),u=Bu(l);return t=Ci(t),null===n.context?n.context=t:n.pendingContext=t,n=er(a,u),n.payload={element:e},r=void 0===r?null:r,null!==r&&(n.callback=r),e=nr(l,n,u),null!==e&&(Wu(e,l,u,a),tr(e,l,u)),u},n}},772:function(e,n,t){"use strict";e.exports=t(735)},4845:function(e,n,t){"use strict";e.exports=t(2935)},7463:function(e,n,t){"use strict";var r=t(4490)["navigator"];function l(e,n){var t=e.length;e.push(n);e:for(;0>>1,l=e[r];if(!(0>>1;ri(o,t))si(c,o)?(e[r]=c,e[s]=t,r=s):(e[r]=o,e[u]=t,r=u);else{if(!(si(c,t)))break e;e[r]=c,e[s]=t,r=s}}}return n}function i(e,n){var t=e.sortIndex-n.sortIndex;return 0!==t?t:e.id-n.id}if("object"===typeof performance&&"function"===typeof performance.now){var o=performance;n.unstable_now=function(){return o.now()}}else{var s=Date,c=s.now();n.unstable_now=function(){return s.now()-c}}var f=[],d=[],p=1,h=null,m=3,g=!1,v=!1,b=!1,y="function"===typeof setTimeout?setTimeout:null,S="function"===typeof clearTimeout?clearTimeout:null,k="undefined"!==typeof setImmediate?setImmediate:null;function x(e){for(var n=a(d);null!==n;){if(null===n.callback)u(d);else{if(!(n.startTime<=e))break;u(d),n.sortIndex=n.expirationTime,l(f,n)}n=a(d)}}function w(e){if(b=!1,x(e),!v)if(null!==a(f))v=!0,U(z);else{var n=a(d);null!==n&&M(w,n.startTime-e)}}function z(e,t){v=!1,b&&(b=!1,S(C),C=-1),g=!0;var r=m;try{for(x(t),h=a(f);null!==h&&(!(h.expirationTime>t)||e&&!L());){var l=h.callback;if("function"===typeof l){h.callback=null,m=h.priorityLevel;var i=l(h.expirationTime<=t);t=n.unstable_now(),"function"===typeof i?h.callback=i:h===a(f)&&u(f),x(t)}else u(f);h=a(f)}if(null!==h)var o=!0;else{var s=a(d);null!==s&&M(w,s.startTime-t),o=!1}return o}finally{h=null,m=r,g=!1}}"undefined"!==typeof r&&void 0!==r.scheduling&&void 0!==r.scheduling.isInputPending&&r.scheduling.isInputPending.bind(r.scheduling);var N,E=!1,P=null,C=-1,_=5,I=-1;function L(){return!(n.unstable_now()-I<_)}function T(){if(null!==P){var e=n.unstable_now();I=e;var t=!0;try{t=P(!0,e)}finally{t?N():(E=!1,P=null)}}else E=!1}if("function"===typeof k)N=function(){k(T)};else if("undefined"!==typeof MessageChannel){var R=new MessageChannel,F=R.port2;R.port1.onmessage=T,N=function(){F.postMessage(null)}}else N=function(){y(T,0)};function U(e){P=e,E||(E=!0,N())}function M(e,t){C=y(function(){e(n.unstable_now())},t)}n.unstable_IdlePriority=5,n.unstable_ImmediatePriority=1,n.unstable_LowPriority=4,n.unstable_NormalPriority=3,n.unstable_Profiling=null,n.unstable_UserBlockingPriority=2,n.unstable_cancelCallback=function(e){e.callback=null},n.unstable_continueExecution=function(){v||g||(v=!0,U(z))},n.unstable_forceFrameRate=function(e){0>e||125u?(e.sortIndex=r,l(d,e),null===a(f)&&e===a(d)&&(b?(S(C),C=-1):b=!0,M(w,r-u))):(e.sortIndex=i,l(f,e),v||g||(v=!0,U(z))),e},n.unstable_shouldYield=L,n.unstable_wrapCallback=function(e){var n=m;return function(){var t=m;m=n;try{return e.apply(this,arguments)}finally{m=t}}}},9982:function(e,n,t){"use strict";e.exports=t(7463)}},function(e){var n=function(n){return e(e.s=n)};e.O(0,[907,96],function(){return n(2951)});e.O()}]); \ No newline at end of file +require("./common"),require("./vendors"),require("./taro"),require("./runtime"),(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[524],{2951:function(e,n,t){"use strict";t(2457);var r=t(7860),l=t(1291),a=t(758),u=t.n(a),i=t(5596);function o(e){var n=e.children;return(0,a.useLaunch)(function(){var e="cloud1-d4g697lte499543d8";e&&u().cloud&&u().cloud.init({env:e,traceUser:!0}),(0,i.oH)()}),n}var s=o,c=t(6540),f=t.t(c,2),d=t(7260),p={pages:["pages/home/index","pages/publish/index","pages/profile-edit/index","pages/pet-edit/index","pages/chat/index","pages/contacts/index","pages/my-posts/index","pages/user-profile/index","pages/post-detail/index","pages/post-edit/index"],window:{navigationStyle:"custom",backgroundColor:"#14102b",backgroundTextStyle:"dark"},permission:{"scope.userLocation":{desc:"\u7528\u4e8e\u53d1\u73b0\u9644\u8fd1\u7684\u6bdb\u5b69\u5b50\uff0c\u4ee5\u53ca\u5728\u53d1\u5e03\u52a8\u6001\u65f6\u6807\u8bb0\u4f4d\u7f6e"}},requiredPrivateInfos:["chooseLocation","getLocation"],lazyCodeLoading:"requiredComponents"};r.mw.__taroAppConfig=p;App((0,l.ND)(s,f,d.Ay,p));(0,a.initPxTransform)({designWidth:390,deviceRatio:{390:2,640:2.34,750:1,828:1.81},baseFontSize:20,unitPrecision:void 0,targetUnit:void 0})},735:function(e,n){"use strict";n.DefaultEventPriority=16},2935:function(e,n,t){e.exports=function(e){var n={},r=t(6540),l=t(9982),a=Object.assign;function u(e){for(var n="https://reactjs.org/docs/error-decoder.html?invariant="+e,t=1;ti||l[u]!==a[i]){var o="\n"+l[u].replace(" at new "," at ");return e.displayName&&o.includes("")&&(o=o.replace("",e.displayName)),o}}while(1<=u&&0<=i);break}}}finally{tn=!1,Error.prepareStackTrace=t}return(e=e?e.displayName||e.name:"")?nn(e):""}var ln=Object.prototype.hasOwnProperty,an=[],un=-1;function on(e){return{current:e}}function sn(e){0>un||(e.current=an[un],an[un]=null,un--)}function cn(e,n){un++,an[un]=e.current,e.current=n}var fn={},dn=on(fn),pn=on(!1),hn=fn;function mn(e,n){var t=e.type.contextTypes;if(!t)return fn;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===n)return r.__reactInternalMemoizedMaskedChildContext;var l,a={};for(l in t)a[l]=n[l];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=n,e.__reactInternalMemoizedMaskedChildContext=a),a}function gn(e){return e=e.childContextTypes,null!==e&&void 0!==e}function vn(){sn(pn),sn(dn)}function bn(e,n,t){if(dn.current!==fn)throw Error(u(168));cn(dn,n),cn(pn,t)}function yn(e,n,t){var r=e.stateNode;if(n=n.childContextTypes,"function"!==typeof r.getChildContext)return t;for(var l in r=r.getChildContext(),r)if(!(l in n))throw Error(u(108,z(e)||"Unknown",l));return a({},t,r)}function Sn(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||fn,hn=dn.current,cn(dn,e),cn(pn,pn.current),!0}function kn(e,n,t){var r=e.stateNode;if(!r)throw Error(u(169));t?(e=yn(e,n,hn),r.__reactInternalMemoizedMergedChildContext=e,sn(pn),sn(dn),cn(dn,e)):sn(pn),cn(pn,t)}var xn=Math.clz32?Math.clz32:Nn,wn=Math.log,zn=Math.LN2;function Nn(e){return e>>>=0,0===e?32:31-(wn(e)/zn|0)|0}var En=64,Pn=4194304;function Cn(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function _n(e,n){var t=e.pendingLanes;if(0===t)return 0;var r=0,l=e.suspendedLanes,a=e.pingedLanes,u=268435455&t;if(0!==u){var i=u&~l;0!==i?r=Cn(i):(a&=u,0!==a&&(r=Cn(a)))}else u=t&~l,0!==u?r=Cn(u):0!==a&&(r=Cn(a));if(0===r)return 0;if(0!==n&&n!==r&&0===(n&l)&&(l=r&-r,a=n&-n,l>=a||16===l&&0!==(4194240&a)))return n;if(0!==(4&r)&&(r|=16&t),n=e.entangledLanes,0!==n)for(e=e.entanglements,n&=r;0t;t++)n.push(e);return n}function Un(e,n,t){e.pendingLanes|=n,536870912!==n&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,n=31-xn(n),e[n]=t}function Mn(e,n){var t=e.pendingLanes&~n;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=n,e.mutableReadLanes&=n,e.entangledLanes&=n,n=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0>=u,l-=u,pt=1<<32-xn(n)+l|t<d?(p=f,f=null):p=f.sibling;var h=g(l,f,i[d],o);if(null===h){null===f&&(f=p);break}e&&f&&null===h.alternate&&n(l,f),u=a(h,u,d),null===c?s=h:c.sibling=h,c=h,f=p}if(d===i.length)return t(l,f),kt&&mt(l,d),s;if(null===f){for(;dp?(h=d,d=null):h=d.sibling;var y=g(l,d,b.value,s);if(null===y){null===d&&(d=h);break}e&&d&&null===y.alternate&&n(l,d),i=a(y,i,p),null===f?c=y:f.sibling=y,f=y,d=h}if(b.done)return t(l,d),kt&&mt(l,p),c;if(null===d){for(;!b.done;p++,b=o.next())b=m(l,b.value,s),null!==b&&(i=a(b,i,p),null===f?c=b:f.sibling=b,f=b);return kt&&mt(l,p),c}for(d=r(l,d);!b.done;p++,b=o.next())b=v(d,l,p,b.value,s),null!==b&&(e&&null!==b.alternate&&d.delete(null===b.key?p:b.key),i=a(b,i,p),null===f?c=b:f.sibling=b,f=b);return e&&d.forEach(function(e){return n(l,e)}),kt&&mt(l,p),c}function k(e,r,a,u){if("object"===typeof a&&null!==a&&a.type===c&&null===a.key&&(a=a.props.children),"object"===typeof a&&null!==a){switch(a.$$typeof){case o:e:{for(var f=a.key,d=r;null!==d;){if(d.key===f){if(f=a.type,f===c){if(7===d.tag){t(e,d.sibling),r=l(d,a.props.children),r.return=e,e=r;break e}}else if(d.elementType===f||"object"===typeof f&&null!==f&&f.$$typeof===y&&mr(f)===d.type){t(e,d.sibling),r=l(d,a.props),r.ref=pr(e,d,a),r.return=e,e=r;break e}t(e,d);break}n(e,d),d=d.sibling}a.type===c?(r=xi(a.props.children,e.mode,u,a.key),r.return=e,e=r):(u=ki(a.type,a.key,a.props,null,e.mode,u),u.ref=pr(e,r,a),u.return=e,e=u)}return i(e);case s:e:{for(d=a.key;null!==r;){if(r.key===d){if(4===r.tag&&r.stateNode.containerInfo===a.containerInfo&&r.stateNode.implementation===a.implementation){t(e,r.sibling),r=l(r,a.children||[]),r.return=e,e=r;break e}t(e,r);break}n(e,r),r=r.sibling}r=Ni(a,e.mode,u),r.return=e,e=r}return i(e);case y:return d=a._init,k(e,r,d(a._payload),u)}if(T(a))return b(e,r,a,u);if(x(a))return S(e,r,a,u);hr(e,a)}return"string"===typeof a&&""!==a||"number"===typeof a?(a=""+a,null!==r&&6===r.tag?(t(e,r.sibling),r=l(r,a),r.return=e,e=r):(t(e,r),r=zi(a,e.mode,u),r.return=e,e=r),i(e)):t(e,r)}return k}var vr=gr(!0),br=gr(!1),yr={},Sr=on(yr),kr=on(yr),xr=on(yr);function wr(e){if(e===yr)throw Error(u(174));return e}function zr(e,n){cn(xr,n),cn(kr,e),cn(Sr,yr),e=F(n),sn(Sr),cn(Sr,e)}function Nr(){sn(Sr),sn(kr),sn(xr)}function Er(e){var n=wr(xr.current),t=wr(Sr.current);n=U(t,e.type,n),t!==n&&(cn(kr,e),cn(Sr,n))}function Pr(e){kr.current===e&&(sn(Sr),sn(kr))}var Cr=on(0);function _r(e){for(var n=e;null!==n;){if(13===n.tag){var t=n.memoizedState;if(null!==t&&(t=t.dehydrated,null===t||Me(t)||De(t)))return n}else if(19===n.tag&&void 0!==n.memoizedProps.revealOrder){if(0!==(128&n.flags))return n}else if(null!==n.child){n.child.return=n,n=n.child;continue}if(n===e)break;for(;null===n.sibling;){if(null===n.return||n.return===e)return null;n=n.return}n.sibling.return=n.return,n=n.sibling}return null}var Ir=[];function Lr(){for(var e=0;et?t:4,e(!0);var r=Rr.transition;Rr.transition={};try{e(!1),n()}finally{Qn=t,Rr.transition=r}}function Sl(){return qr().memoizedState}function kl(e,n,t){var r=Bu(e);if(t={lane:r,action:t,hasEagerState:!1,eagerState:null,next:null},wl(e))zl(n,t);else if(t=Gt(e,n,t,r),null!==t){var l=Hu();Wu(t,e,r,l),Nl(t,n,r)}}function xl(e,n,t){var r=Bu(e),l={lane:r,action:t,hasEagerState:!1,eagerState:null,next:null};if(wl(e))zl(n,l);else{var a=e.alternate;if(0===e.lanes&&(null===a||0===a.lanes)&&(a=n.lastRenderedReducer,null!==a))try{var u=n.lastRenderedState,i=a(u,t);if(l.hasEagerState=!0,l.eagerState=i,Zn(i,u)){var o=n.interleaved;return null===o?(l.next=l,Yt(n)):(l.next=o.next,o.next=l),void(n.interleaved=l)}}catch(e){}t=Gt(e,n,l,r),null!==t&&(l=Hu(),Wu(t,e,r,l),Nl(t,n,r))}}function wl(e){var n=e.alternate;return e===Ur||null!==n&&n===Ur}function zl(e,n){Hr=Qr=!0;var t=e.pending;null===t?n.next=n:(n.next=t.next,t.next=n),e.pending=n}function Nl(e,n,t){if(0!==(4194240&t)){var r=n.lanes;r&=e.pendingLanes,t|=r,n.lanes=t,Dn(e,t)}}var El={readContext:Vt,useCallback:jr,useContext:jr,useEffect:jr,useImperativeHandle:jr,useInsertionEffect:jr,useLayoutEffect:jr,useMemo:jr,useReducer:jr,useRef:jr,useState:jr,useDebugValue:jr,useDeferredValue:jr,useTransition:jr,useMutableSource:jr,useSyncExternalStore:jr,useId:jr,unstable_isNewReconciler:!1},Pl={readContext:Vt,useCallback:function(e,n){return Vr().memoizedState=[e,void 0===n?null:n],e},useContext:Vt,useEffect:sl,useImperativeHandle:function(e,n,t){return t=null!==t&&void 0!==t?t.concat([e]):null,il(4194308,4,pl.bind(null,n,e),t)},useLayoutEffect:function(e,n){return il(4194308,4,e,n)},useInsertionEffect:function(e,n){return il(4,2,e,n)},useMemo:function(e,n){var t=Vr();return n=void 0===n?null:n,e=e(),t.memoizedState=[e,n],e},useReducer:function(e,n,t){var r=Vr();return n=void 0!==t?t(n):n,r.memoizedState=r.baseState=n,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:n},r.queue=e,e=e.dispatch=kl.bind(null,Ur,e),[r.memoizedState,e]},useRef:function(e){var n=Vr();return e={current:e},n.memoizedState=e},useState:ll,useDebugValue:ml,useDeferredValue:function(e){return Vr().memoizedState=e},useTransition:function(){var e=ll(!1),n=e[0];return e=yl.bind(null,e[1]),Vr().memoizedState=e,[n,e]},useMutableSource:function(){},useSyncExternalStore:function(e,n,t){var r=Ur,l=Vr();if(kt){if(void 0===t)throw Error(u(407));t=t()}else{if(t=n(),null===du)throw Error(u(349));0!==(30&Fr)||Zr(r,n,t)}l.memoizedState=t;var a={value:t,getSnapshot:n};return l.queue=a,sl(nl.bind(null,r,a,e),[e]),r.flags|=2048,al(9,el.bind(null,r,a,t,n),void 0,null),t},useId:function(){var e=Vr(),n=du.identifierPrefix;if(kt){var t=ht,r=pt;t=(r&~(1<<32-xn(r)-1)).toString(32)+t,n=":"+n+"R"+t,t=Br++,0Nu&&(n.flags|=128,r=!0,va(l,!1),n.lanes=4194304)}else{if(!r)if(e=_r(a),null!==e){if(n.flags|=128,r=!0,e=e.updateQueue,null!==e&&(n.updateQueue=e,n.flags|=4),va(l,!0),null===l.tail&&"hidden"===l.tailMode&&!a.alternate&&!kt)return ba(n),null}else 2*On()-l.renderingStartTime>Nu&&1073741824!==t&&(n.flags|=128,r=!0,va(l,!1),n.lanes=4194304);l.isBackwards?(a.sibling=n.child,n.child=a):(e=l.last,null!==e?e.sibling=a:n.child=a,l.last=a)}return null!==l.tail?(n=l.tail,l.rendering=n,l.tail=n.sibling,l.renderingStartTime=On(),n.sibling=null,e=Cr.current,cn(Cr,r?1&e|2:1&e),n):(ba(n),null);case 22:case 23:return Ju(),t=null!==n.memoizedState,null!==e&&null!==e.memoizedState!==t&&(n.flags|=8192),t&&0!==(1&n.mode)?0!==(1073741824&mu)&&(ba(n),Y&&6&n.subtreeFlags&&(n.flags|=8192)):ba(n),null;case 24:return null;case 25:return null}throw Error(u(156,n.tag))}function Sa(e,n){switch(bt(n),n.tag){case 1:return gn(n.type)&&vn(),e=n.flags,65536&e?(n.flags=-65537&e|128,n):null;case 3:return Nr(),sn(pn),sn(dn),Lr(),e=n.flags,0!==(65536&e)&&0===(128&e)?(n.flags=-65537&e|128,n):null;case 5:return Pr(n),null;case 13:if(sn(Cr),e=n.memoizedState,null!==e&&null!==e.dehydrated){if(null===n.alternate)throw Error(u(340));Lt()}return e=n.flags,65536&e?(n.flags=-65537&e|128,n):null;case 19:return sn(Cr),null;case 4:return Nr(),null;case 10:return $t(n.type._context),null;case 22:case 23:return Ju(),null;case 24:return null;default:return null}}var ka=!1,xa=!1,wa="function"===typeof WeakSet?WeakSet:Set,za=null;function Na(e,n){var t=e.ref;if(null!==t)if("function"===typeof t)try{t(null)}catch(t){ci(e,n,t)}else t.current=null}function Ea(e,n,t){try{t()}catch(t){ci(e,n,t)}}var Pa=!1;function Ca(e,n){for(M(e.containerInfo),za=n;null!==za;)if(e=za,n=e.child,0!==(1028&e.subtreeFlags)&&null!==n)n.return=e,za=n;else for(;null!==za;){e=za;try{var t=e.alternate;if(0!==(1024&e.flags))switch(e.tag){case 0:case 11:case 15:break;case 1:if(null!==t){var r=t.memoizedProps,l=t.memoizedState,a=e.stateNode,i=a.getSnapshotBeforeUpdate(e.elementType===e.type?r:Mt(e.type,r),l);a.__reactInternalSnapshotBeforeUpdate=i}break;case 3:Y&&Ne(e.stateNode.containerInfo);break;case 5:case 6:case 4:case 17:break;default:throw Error(u(163))}}catch(n){ci(e,e.return,n)}if(n=e.sibling,null!==n){n.return=e.return,za=n;break}za=e.return}return t=Pa,Pa=!1,t}function _a(e,n,t){var r=n.updateQueue;if(r=null!==r?r.lastEffect:null,null!==r){var l=r=r.next;do{if((l.tag&e)===e){var a=l.destroy;l.destroy=void 0,void 0!==a&&Ea(n,t,a)}l=l.next}while(l!==r)}}function Ia(e,n){if(n=n.updateQueue,n=null!==n?n.lastEffect:null,null!==n){var t=n=n.next;do{if((t.tag&e)===e){var r=t.create;t.destroy=r()}t=t.next}while(t!==n)}}function La(e){var n=e.ref;if(null!==n){var t=e.stateNode;switch(e.tag){case 5:e=R(t);break;default:e=t}"function"===typeof n?n(e):n.current=e}}function Ta(e){var n=e.alternate;null!==n&&(e.alternate=null,Ta(n)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&(n=e.stateNode,null!==n&&ee(n)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function Ra(e){return 5===e.tag||3===e.tag||4===e.tag}function Fa(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||Ra(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function Ua(e,n,t){var r=e.tag;if(5===r||6===r)e=e.stateNode,n?ve(t,e,n):de(t,e);else if(4!==r&&(e=e.child,null!==e))for(Ua(e,n,t),e=e.sibling;null!==e;)Ua(e,n,t),e=e.sibling}function Ma(e,n,t){var r=e.tag;if(5===r||6===r)e=e.stateNode,n?ge(t,e,n):fe(t,e);else if(4!==r&&(e=e.child,null!==e))for(Ma(e,n,t),e=e.sibling;null!==e;)Ma(e,n,t),e=e.sibling}var Da=null,Qa=!1;function Ha(e,n,t){for(t=t.child;null!==t;)Ba(e,n,t),t=t.sibling}function Ba(e,n,t){if(Jn&&"function"===typeof Jn.onCommitFiberUnmount)try{Jn.onCommitFiberUnmount(Gn,t)}catch(e){}switch(t.tag){case 5:xa||Na(t,n);case 6:if(Y){var r=Da,l=Qa;Da=null,Ha(e,n,t),Da=r,Qa=l,null!==Da&&(Qa?ye(Da,t.stateNode):be(Da,t.stateNode))}else Ha(e,n,t);break;case 18:Y&&null!==Da&&(Qa?Ke(Da,t.stateNode):Je(Da,t.stateNode));break;case 4:Y?(r=Da,l=Qa,Da=t.stateNode.containerInfo,Qa=!0,Ha(e,n,t),Da=r,Qa=l):(G&&(r=t.stateNode.containerInfo,l=Pe(r),Ie(r,l)),Ha(e,n,t));break;case 0:case 11:case 14:case 15:if(!xa&&(r=t.updateQueue,null!==r&&(r=r.lastEffect,null!==r))){l=r=r.next;do{var a=l,u=a.destroy;a=a.tag,void 0!==u&&(0!==(2&a)||0!==(4&a))&&Ea(t,n,u),l=l.next}while(l!==r)}Ha(e,n,t);break;case 1:if(!xa&&(Na(t,n),r=t.stateNode,"function"===typeof r.componentWillUnmount))try{r.props=t.memoizedProps,r.state=t.memoizedState,r.componentWillUnmount()}catch(e){ci(t,n,e)}Ha(e,n,t);break;case 21:Ha(e,n,t);break;case 22:1&t.mode?(xa=(r=xa)||null!==t.memoizedState,Ha(e,n,t),xa=r):Ha(e,n,t);break;default:Ha(e,n,t)}}function Wa(e){var n=e.updateQueue;if(null!==n){e.updateQueue=null;var t=e.stateNode;null===t&&(t=e.stateNode=new wa),n.forEach(function(n){var r=hi.bind(null,e,n);t.has(n)||(t.add(n),n.then(r,r))})}}function ja(e,n){var t=n.deletions;if(null!==t)for(var r=0;r";case Ka:return":has("+(lu(e)||"")+")";case Xa:return'[role="'+e.value+'"]';case eu:return'"'+e.value+'"';case Za:return'[data-testname="'+e.value+'"]';default:throw Error(u(365))}}function au(e,n){var t=[];e=[e,0];for(var r=0;rl&&(l=i),r&=~a}if(r=l,r=On()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*iu(r/1960))-r,10e?16:e,null===Ru)var r=!1;else{if(e=Ru,Ru=null,Fu=0,0!==(6&fu))throw Error(u(331));var l=fu;for(fu|=4,za=e.current;null!==za;){var a=za,i=a.child;if(0!==(16&za.flags)){var o=a.deletions;if(null!==o){for(var s=0;sOn()-zu?Ku(e,0):ku|=t),ju(e,n)}function di(e,n){0===n&&(0===(1&e.mode)?n=1:(n=Pn,Pn<<=1,0===(130023424&Pn)&&(Pn=4194304)));var t=Hu();e=Jt(e,n),null!==e&&(Un(e,n,t),ju(e,t))}function pi(e){var n=e.memoizedState,t=0;null!==n&&(t=n.retryLane),di(e,t)}function hi(e,n){var t=0;switch(e.tag){case 13:var r=e.stateNode,l=e.memoizedState;null!==l&&(t=l.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(u(314))}null!==r&&r.delete(n),di(e,t)}function mi(e,n){return Bn(e,n)}function gi(e,n,t,r){this.tag=e,this.key=t,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=n,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function vi(e,n,t,r){return new gi(e,n,t,r)}function bi(e){return e=e.prototype,!(!e||!e.isReactComponent)}function yi(e){if("function"===typeof e)return bi(e)?1:0;if(void 0!==e&&null!==e){if(e=e.$$typeof,e===m)return 11;if(e===b)return 14}return 2}function Si(e,n){var t=e.alternate;return null===t?(t=vi(e.tag,n,e.key,e.mode),t.elementType=e.elementType,t.type=e.type,t.stateNode=e.stateNode,t.alternate=e,e.alternate=t):(t.pendingProps=n,t.type=e.type,t.flags=0,t.subtreeFlags=0,t.deletions=null),t.flags=14680064&e.flags,t.childLanes=e.childLanes,t.lanes=e.lanes,t.child=e.child,t.memoizedProps=e.memoizedProps,t.memoizedState=e.memoizedState,t.updateQueue=e.updateQueue,n=e.dependencies,t.dependencies=null===n?null:{lanes:n.lanes,firstContext:n.firstContext},t.sibling=e.sibling,t.index=e.index,t.ref=e.ref,t}function ki(e,n,t,r,l,a){var i=2;if(r=e,"function"===typeof e)bi(e)&&(i=1);else if("string"===typeof e)i=5;else e:switch(e){case c:return xi(t.children,l,a,n);case f:i=8,l|=8;break;case d:return e=vi(12,t,n,2|l),e.elementType=d,e.lanes=a,e;case g:return e=vi(13,t,n,l),e.elementType=g,e.lanes=a,e;case v:return e=vi(19,t,n,l),e.elementType=v,e.lanes=a,e;case S:return wi(t,l,a,n);default:if("object"===typeof e&&null!==e)switch(e.$$typeof){case p:i=10;break e;case h:i=9;break e;case m:i=11;break e;case b:i=14;break e;case y:i=16,r=null;break e}throw Error(u(130,null==e?e:typeof e,""))}return n=vi(i,t,n,l),n.elementType=e,n.type=r,n.lanes=a,n}function xi(e,n,t,r){return e=vi(7,e,r,n),e.lanes=t,e}function wi(e,n,t,r){return e=vi(22,e,r,n),e.elementType=S,e.lanes=t,e.stateNode={isHidden:!1},e}function zi(e,n,t){return e=vi(6,e,null,n),e.lanes=t,e}function Ni(e,n,t){return n=vi(4,null!==e.children?e.children:[],e.key,n),n.lanes=t,n.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},n}function Ei(e,n,t,r,l){this.tag=n,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=V,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Fn(0),this.expirationTimes=Fn(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Fn(0),this.identifierPrefix=r,this.onRecoverableError=l,J&&(this.mutableSourceEagerHydrationData=null)}function Pi(e,n,t,r,l,a,u,i,o){return e=new Ei(e,n,t,i,o),1===n?(n=1,!0===a&&(n|=8)):n=0,a=vi(3,null,null,n),e.current=a,a.stateNode=e,a.memoizedState={element:r,isDehydrated:t,cache:null,transitions:null,pendingSuspenseBoundaries:null},Xt(a),e}function Ci(e){if(!e)return fn;e=e._reactInternals;e:{if(N(e)!==e||1!==e.tag)throw Error(u(170));var n=e;do{switch(n.tag){case 3:n=n.stateNode.context;break e;case 1:if(gn(n.type)){n=n.stateNode.__reactInternalMemoizedMergedChildContext;break e}}n=n.return}while(null!==n);throw Error(u(171))}if(1===e.tag){var t=e.type;if(gn(t))return yn(e,t,n)}return n}function _i(e){var n=e._reactInternals;if(void 0===n){if("function"===typeof e.render)throw Error(u(188));throw e=Object.keys(e).join(","),Error(u(268,e))}return e=C(n),null===e?null:e.stateNode}function Ii(e,n){if(e=e.memoizedState,null!==e&&null!==e.dehydrated){var t=e.retryLane;e.retryLane=0!==t&&t=c&&a>=d&&l<=f&&i<=p){e.splice(n,1);break}if(!(r!==c||t.width!==s.width||pi)){d>a&&(s.height+=d-a,s.y=a),pl)){c>r&&(s.width+=c-r,s.x=r),ft&&(t=i)),i ")+"\n\nNo matching component was found for:\n "+e.join(" > ")}return null},n.getPublicRootInstance=function(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return R(e.child.stateNode);default:return e.child.stateNode}},n.injectIntoDevTools=function(e){if(e={bundleType:e.bundleType,version:e.version,rendererPackageName:e.rendererPackageName,rendererConfig:e.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:i.ReactCurrentDispatcher,findHostInstanceByFiber:Ti,findFiberByHostInstance:e.findFiberByHostInstance||Ri,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.2.0"},"undefined"===typeof __REACT_DEVTOOLS_GLOBAL_HOOK__)e=!1;else{var n=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(n.isDisabled||!n.supportsFiber)e=!0;else{try{Gn=n.inject(e),Jn=n}catch(e){}e=!!n.checkDCE}}return e},n.isAlreadyRendering=function(){return!1},n.observeVisibleRects=function(e,n,t,r){if(!re)throw Error(u(363));e=uu(e,n);var l=ce(e,t,r).disconnect;return{disconnect:function(){l()}}},n.registerMutableSourceForHydration=function(e,n){var t=n._getVersion;t=t(n._source),null==e.mutableSourceEagerHydrationData?e.mutableSourceEagerHydrationData=[n,t]:e.mutableSourceEagerHydrationData.push(n,t)},n.runWithPriority=function(e,n){var t=Qn;try{return Qn=e,n()}finally{Qn=t}},n.shouldError=function(){return null},n.shouldSuspend=function(){return!1},n.updateContainer=function(e,n,t,r){var l=n.current,a=Hu(),u=Bu(l);return t=Ci(t),null===n.context?n.context=t:n.pendingContext=t,n=er(a,u),n.payload={element:e},r=void 0===r?null:r,null!==r&&(n.callback=r),e=nr(l,n,u),null!==e&&(Wu(e,l,u,a),tr(e,l,u)),u},n}},772:function(e,n,t){"use strict";e.exports=t(735)},4845:function(e,n,t){"use strict";e.exports=t(2935)},7463:function(e,n,t){"use strict";var r=t(4490)["navigator"];function l(e,n){var t=e.length;e.push(n);e:for(;0>>1,l=e[r];if(!(0>>1;ri(o,t))si(c,o)?(e[r]=c,e[s]=t,r=s):(e[r]=o,e[u]=t,r=u);else{if(!(si(c,t)))break e;e[r]=c,e[s]=t,r=s}}}return n}function i(e,n){var t=e.sortIndex-n.sortIndex;return 0!==t?t:e.id-n.id}if("object"===typeof performance&&"function"===typeof performance.now){var o=performance;n.unstable_now=function(){return o.now()}}else{var s=Date,c=s.now();n.unstable_now=function(){return s.now()-c}}var f=[],d=[],p=1,h=null,m=3,g=!1,v=!1,b=!1,y="function"===typeof setTimeout?setTimeout:null,S="function"===typeof clearTimeout?clearTimeout:null,k="undefined"!==typeof setImmediate?setImmediate:null;function x(e){for(var n=a(d);null!==n;){if(null===n.callback)u(d);else{if(!(n.startTime<=e))break;u(d),n.sortIndex=n.expirationTime,l(f,n)}n=a(d)}}function w(e){if(b=!1,x(e),!v)if(null!==a(f))v=!0,U(z);else{var n=a(d);null!==n&&M(w,n.startTime-e)}}function z(e,t){v=!1,b&&(b=!1,S(C),C=-1),g=!0;var r=m;try{for(x(t),h=a(f);null!==h&&(!(h.expirationTime>t)||e&&!L());){var l=h.callback;if("function"===typeof l){h.callback=null,m=h.priorityLevel;var i=l(h.expirationTime<=t);t=n.unstable_now(),"function"===typeof i?h.callback=i:h===a(f)&&u(f),x(t)}else u(f);h=a(f)}if(null!==h)var o=!0;else{var s=a(d);null!==s&&M(w,s.startTime-t),o=!1}return o}finally{h=null,m=r,g=!1}}"undefined"!==typeof r&&void 0!==r.scheduling&&void 0!==r.scheduling.isInputPending&&r.scheduling.isInputPending.bind(r.scheduling);var N,E=!1,P=null,C=-1,_=5,I=-1;function L(){return!(n.unstable_now()-I<_)}function T(){if(null!==P){var e=n.unstable_now();I=e;var t=!0;try{t=P(!0,e)}finally{t?N():(E=!1,P=null)}}else E=!1}if("function"===typeof k)N=function(){k(T)};else if("undefined"!==typeof MessageChannel){var R=new MessageChannel,F=R.port2;R.port1.onmessage=T,N=function(){F.postMessage(null)}}else N=function(){y(T,0)};function U(e){P=e,E||(E=!0,N())}function M(e,t){C=y(function(){e(n.unstable_now())},t)}n.unstable_IdlePriority=5,n.unstable_ImmediatePriority=1,n.unstable_LowPriority=4,n.unstable_NormalPriority=3,n.unstable_Profiling=null,n.unstable_UserBlockingPriority=2,n.unstable_cancelCallback=function(e){e.callback=null},n.unstable_continueExecution=function(){v||g||(v=!0,U(z))},n.unstable_forceFrameRate=function(e){0>e||125u?(e.sortIndex=r,l(d,e),null===a(f)&&e===a(d)&&(b?(S(C),C=-1):b=!0,M(w,r-u))):(e.sortIndex=i,l(f,e),v||g||(v=!0,U(z))),e},n.unstable_shouldYield=L,n.unstable_wrapCallback=function(e){var n=m;return function(){var t=m;m=n;try{return e.apply(this,arguments)}finally{m=t}}}},9982:function(e,n,t){"use strict";e.exports=t(7463)}},function(e){var n=function(n){return e(e.s=n)};e.O(0,[907,96,76],function(){return n(2951)});e.O()}]); \ No newline at end of file diff --git a/dist/app.json b/dist/app.json index 2307ffb..f5ff893 100644 --- a/dist/app.json +++ b/dist/app.json @@ -1 +1 @@ -{"pages":["pages/plaza/index","pages/nearby/index","pages/publish/index","pages/messages/index","pages/profile/index","pages/profile-edit/index","pages/pet-edit/index","pages/chat/index","pages/contacts/index","pages/my-posts/index","pages/post-detail/index"],"window":{"navigationStyle":"custom","backgroundColor":"#14102b","backgroundTextStyle":"dark"},"tabBar":{"custom":true,"color":"#8a7aab","selectedColor":"#d8b4ff","backgroundColor":"#14102b","borderStyle":"black","list":[{"pagePath":"pages/plaza/index","text":"广场"},{"pagePath":"pages/nearby/index","text":"附近"},{"pagePath":"pages/messages/index","text":"汪友"},{"pagePath":"pages/profile/index","text":"我的"}]},"permission":{"scope.userLocation":{"desc":"用于发现附近的毛孩子,以及在发布动态时标记位置"}},"requiredPrivateInfos":["chooseLocation","getLocation"],"lazyCodeLoading":"requiredComponents"} \ No newline at end of file +{"pages":["pages/home/index","pages/publish/index","pages/profile-edit/index","pages/pet-edit/index","pages/chat/index","pages/contacts/index","pages/my-posts/index","pages/user-profile/index","pages/post-detail/index","pages/post-edit/index"],"window":{"navigationStyle":"custom","backgroundColor":"#14102b","backgroundTextStyle":"dark"},"permission":{"scope.userLocation":{"desc":"用于发现附近的毛孩子,以及在发布动态时标记位置"}},"requiredPrivateInfos":["chooseLocation","getLocation"],"lazyCodeLoading":"requiredComponents"} \ No newline at end of file diff --git a/dist/common.js b/dist/common.js index c508208..ce63043 100644 --- a/dist/common.js +++ b/dist/common.js @@ -1 +1 @@ -"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[76],{7896:function(e,n,t){var a=t(118),r=t(3401),i=t(4848);function o(e){var n=e.visible,t=e.icon,o=void 0===t?"heart-fill":t,s=e.className,c=void 0===s?"":s,u=e.children;return(0,i.jsxs)(a.Ss,{className:"toast-overlay ".concat(n?"toast-overlay--show":""," ").concat(c),children:[(0,i.jsx)(r.A,{name:o,size:82}),u]})}n.A=o},7797:function(e,n,t){var a=t(118),r=t(374),i=t(4848);function o(e){var n=e.title,t=e.compactTitle,o=void 0!==t&&t,s=e.left,c=e.leading,u=(0,r.v)(),l=u.statusBarHeight,d=u.menuRight,p=c||s;return(0,i.jsx)(a.Ss,{className:"custom-nav",style:{paddingTop:"".concat(l,"px"),paddingRight:"".concat(d,"px")},children:(0,i.jsxs)(a.Ss,{className:"custom-nav__row",children:[p?(0,i.jsx)(a.Ss,{className:"custom-nav__leading",children:p}):(0,i.jsx)(a.Ss,{className:"custom-nav__left"}),n?(0,i.jsx)(a.EY,{className:"custom-nav__title ".concat(o?"custom-nav__title--compact":""),children:n}):null]})})}n.A=o},8324:function(e,n,t){var a=t(118),r=t(374),i=t(4848);function o(e){var n=e.children,t=e.className,o=void 0===t?"":t,s=e.scroll,c=void 0===s||s,u=e.withTabBar,l=void 0===u||u,d=(0,r.v)(),p=d.safeBottom,f=(0,i.jsx)(a.Ss,{className:"page-shell__inner ".concat(o),style:{paddingBottom:"".concat(l?108+p:24+p,"px")},children:n});return(0,i.jsx)(a.Ss,{className:"page-shell",children:c?(0,i.jsx)(a.BM,{scrollY:!0,className:"page-shell__scroll",enhanced:!0,showScrollbar:!1,children:f}):f})}n.A=o},6503:function(e,n,t){t.d(n,{A:function(){return l}});var a=t(758),r=t.n(a),i=t(118),o=t(374),s=[{key:"plaza",label:"\u5e7f\u573a",path:"/pages/plaza/index"},{key:"nearby",label:"\u9644\u8fd1",path:"/pages/nearby/index"},{key:"messages",label:"\u6c6a\u53cb",path:"/pages/messages/index",dot:!0},{key:"profile",label:"\u6211\u7684",path:"/pages/profile/index"}],c=t(4848);function u(e){var n=e.active,t=(0,o.v)(),a=t.safeBottom,u=function(e,t){e!==n&&r().switchTab({url:t})},l=function(e){var t=s[e],a=n===t.key?"bottom-tabbar__item--active":"";return(0,c.jsxs)(i.Ss,{className:"bottom-tabbar__item ".concat(a),onClick:function(){return u(t.key,t.path)},children:[(0,c.jsxs)(i.Ss,{className:"bottom-tabbar__icon-wrap",children:[(0,c.jsx)(i.Ss,{className:"bottom-tabbar__icon bottom-tabbar__icon--".concat(t.key)}),t.dot?(0,c.jsx)(i.Ss,{className:"bottom-tabbar__dot"}):null]}),(0,c.jsx)(i.EY,{className:"bottom-tabbar__label ".concat(n===t.key?"bottom-tabbar__label--active":""),children:t.label})]})};return(0,c.jsxs)(i.Ss,{className:"bottom-tabbar",style:{paddingBottom:"".concat(Math.max(22,a),"px")},children:[l(0),l(1),(0,c.jsx)(i.Ss,{className:"bottom-tabbar__fab",onClick:function(){return r().navigateTo({url:"/pages/publish/index"})},children:(0,c.jsx)(i.Ss,{className:"bottom-tabbar__fab-inner",children:(0,c.jsx)(i.Ss,{className:"bottom-tabbar__fab-icon"})})}),l(2),l(3)]})}var l=u},7745:function(e,n,t){var a=t(118),r=t(4848);function i(e){var n=e.avatarKey,t=void 0===n?"gradient-avatar-1":n,i=e.avatarUrl,o=e.label,s=e.size,c=void 0===s?"md":s,u=e.online,l=void 0!==u&&u,d=e.petTag,p=e.children,f=Boolean(i);return(0,r.jsxs)(a.Ss,{className:"avatar avatar--".concat(c," ").concat(f?"avatar--image":t),children:[f?(0,r.jsx)(a._V,{className:"avatar__image",src:i,mode:"aspectFill"}):p||(o?(0,r.jsx)(a.EY,{className:"avatar__label",children:o.slice(0,1)}):null),l?(0,r.jsx)(a.Ss,{className:"avatar__online"}):null,d?(0,r.jsx)(a.EY,{className:"avatar__pet-tag",children:d}):null]})}n.A=i},7032:function(e,n,t){var a=t(118),r=t(4848);function i(e){var n=e.active,t=void 0!==n&&n,i=e.prefix,o=e.className,s=void 0===o?"":o,c=e.onClick,u=e.children;return(0,r.jsxs)(a.Ss,{className:"chip ".concat(t?"chip--active":""," ").concat(s),onClick:c,children:[i?(0,r.jsx)(a.EY,{className:"chip__prefix",children:i}):null,(0,r.jsx)(a.EY,{children:u})]})}n.A=i},3401:function(e,n,t){var a=t(118),r=t(4848),i={compass:"\u25c7",pin:"\u2316",plus:"+",message:"\u25cc",user:"\u2659",search:"\u2315",bell:"\u25d4",heart:"\u2661","heart-fill":"\u2665",bookmark:"\u2311",more:"\u2022\u2022\u2022",close:"\xd7","close-dot":"\u25cb",image:"\u25a7",video:"\u25b7",hash:"#",smile:"\u263a",eye:"\u25c9",paw:"\u2724",save:"\u25a3",check:"\u2713",settings:"\u2699",chev:"\u203a",refresh:"\u21bb",filter:"\u25bd",minus:"\u2212",target:"\u2299",lock:"\u25a4",globe:"\u25cd",users:"\u265f",info:"i"};function o(e){var n=e.name,t=e.size,o=void 0===t?18:t,s=e.className,c=void 0===s?"":s;return(0,r.jsx)(a.EY,{className:"icon icon--".concat(n," ").concat(c),style:{fontSize:"".concat(o,"px"),width:"".concat(o,"px"),height:"".concat(o,"px")},children:i[n]})}n.A=o},7377:function(e,n,t){var a=t(118),r=t(3401),i=t(4848);function o(e){var n=e.placeholder,t=e.value,o=void 0===t?"":t,s=e.onInput;return(0,i.jsxs)(a.Ss,{className:"search-bar",children:[(0,i.jsx)(r.A,{name:"search",size:14}),(0,i.jsx)(a.pd,{className:"search-bar__input",value:o,placeholder:n,placeholderClass:"search-bar__placeholder",onInput:function(e){return null===s||void 0===s?void 0:s(String(e.detail.value))}})]})}n.A=o},326:function(e,n,t){var a=t(118),r=t(4848);function i(e){var n=e.items,t=e.value,i=e.onChange,o=e.className,s=void 0===o?"":o;return(0,r.jsx)(a.Ss,{className:"seg-tabs ".concat(s),children:n.map(function(e){return(0,r.jsxs)(a.Ss,{className:"seg-tabs__item ".concat(t===e.key?"seg-tabs__item--active":""),onClick:function(){return i(e.key)},children:[(0,r.jsx)(a.EY,{children:e.label}),e.badge?(0,r.jsx)(a.EY,{className:"seg-tabs__badge",children:e.badge}):null]},e.key)})})}n.A=i},3972:function(e,n,t){var a=t(758),r=t.n(a),i=t(118),o=t(7745),s=t(3401),c=t(4848);function u(e){var n=e.type,t=e.onClick;return(0,c.jsx)(i.Ss,{className:"icon icon--".concat(n),onClick:t})}function l(e){var n=e.post,t=e.onLike,a=e.onComment,l=e.onOpen,d=e.enableImagePreview,p=l?function(){return l(n._id)}:void 0,f=l?p:a?function(){return a(n._id)}:void 0,v=n.media||[],m=function(e){return r().previewImage({current:e,urls:v})};return(0,c.jsxs)(i.Ss,{className:"post-card",children:[(0,c.jsxs)(i.Ss,{className:"post-card__head",children:[(0,c.jsx)(o.A,{avatarKey:n.author.avatarKey,avatarUrl:n.author.avatarUrl,size:"md",online:!0}),(0,c.jsxs)(i.Ss,{className:"post-card__meta",children:[(0,c.jsxs)(i.Ss,{className:"post-card__name-row",children:[(0,c.jsx)(i.EY,{className:"post-card__name",children:n.author.name}),(0,c.jsxs)(i.EY,{className:"post-card__pet post-card__pet--".concat(n.pet.tone||"purple"),children:[n.pet.name," \xb7 ",n.pet.breed]})]}),(0,c.jsxs)(i.Ss,{className:"post-card__sub",children:[(0,c.jsx)(i.EY,{children:n.locationText}),(0,c.jsx)(i.Ss,{className:"post-card__dot"}),(0,c.jsx)(i.EY,{children:n.timeText})]})]}),(0,c.jsx)(i.Ss,{className:"post-card__more",children:(0,c.jsx)(s.A,{name:"more",size:16})})]}),(0,c.jsx)(i.EY,{className:"post-card__body",onClick:p,children:n.body}),n.media&&n.media.length?(0,c.jsx)(i.Ss,{className:"post-card__photos post-card__photos--".concat(Math.min(n.media.length,3)),children:n.media.slice(0,9).map(function(e,n){return(0,c.jsx)(i._V,{className:"post-card__photo",src:e,mode:"aspectFill",onClick:d?function(){return m(e)}:p},n)})}):(0,c.jsxs)(i.Ss,{className:"post-card__media post-card__media--".concat(n.mediaTone),onClick:p,children:[(0,c.jsx)(i.Ss,{className:"post-card__silhouette"}),n.sticker?(0,c.jsx)(i.EY,{className:"post-card__sticker",children:n.sticker}):null]}),(0,c.jsxs)(i.Ss,{className:"post-card__actions ".concat(n.likedByMe?"post-card__actions--liked":""),children:[(0,c.jsx)(u,{type:"heart",onClick:function(){return t(n._id)}}),(0,c.jsx)(i.EY,{onClick:function(){return t(n._id)},children:n.counts.likes}),(0,c.jsx)(u,{type:"comment",onClick:f}),(0,c.jsx)(i.EY,{onClick:f,children:n.counts.comments})]})]})}n.A=l},374:function(e,n,t){t.d(n,{v:function(){return s}});var a=t(6540),r=t(758),i=t.n(r);function o(){var e=i();return"function"===typeof e.getWindowInfo?e.getWindowInfo():i().getSystemInfoSync()}function s(){return(0,a.useMemo)(function(){try{var e,n=o(),t=i().getMenuButtonBoundingClientRect(),a=n.statusBarHeight||0,r=Math.max(54,t.bottom+8),s=n.screenHeight||n.windowHeight||0,c=Math.max(0,s-((null===(e=n.safeArea)||void 0===e?void 0:e.bottom)||s));return{statusBarHeight:a,navHeight:r,menuRight:Math.max(16,(n.windowWidth||390)-t.left+8),safeBottom:c}}catch(e){return{statusBarHeight:24,navHeight:54,menuRight:96,safeBottom:20}}},[])}},994:function(e,n,t){t.d(n,{d:function(){return i}});var a=t(5544),r=t(6540);function i(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:480,n=(0,r.useState)(!1),t=(0,a.A)(n,2),i=t[0],o=t[1],s=(0,r.useRef)(null),c=(0,r.useCallback)(function(){s.current&&clearTimeout(s.current),o(!0),s.current=setTimeout(function(){return o(!1)},e)},[e]),u=(0,r.useCallback)(function(){s.current&&clearTimeout(s.current),o(!1)},[]);return{visible:i,show:c,hide:u}}},3427:function(e,n,t){t.d(n,{F4:function(){return _},R$:function(){return b},iD:function(){return h},nB:function(){return p},ri:function(){return v}});var a=t(9379),r=t(1212),i=t(467),o=t(758),s=t.n(o),c=t(9251),u=t(5366),l=t(7012),d="wq:loggedOut";function p(){try{return Boolean(s().getStorageSync(d))}catch(e){return!1}}function f(e){try{e?s().setStorageSync(d,!0):s().removeStorageSync(d)}catch(e){}}function v(){return m.apply(this,arguments)}function m(){return m=(0,i.A)((0,r.A)().m(function e(){return(0,r.A)().w(function(e){while(1)switch(e.n){case 0:f(!0);case 1:return e.a(2)}},e)})),m.apply(this,arguments)}function h(){return y.apply(this,arguments)}function y(){return y=(0,i.A)((0,r.A)().m(function e(){var n;return(0,r.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if((0,c.n)()){e.n=1;break}return e.a(2,{user:u.SW,isNew:!1});case 1:return e.p=1,e.n=2,(0,c.k)("login",{});case 2:return n=e.v,e.a(2,{user:(0,l.h)(n.user),isNew:Boolean(n.isNew)});case 3:return e.p=3,e.v,e.a(2,{user:u.SW,isNew:!1})}},e,null,[[1,3]])})),y.apply(this,arguments)}function _(e){return g.apply(this,arguments)}function g(){return g=(0,i.A)((0,r.A)().m(function e(n){var t,a,i,o;return(0,r.A)().w(function(e){while(1)switch(e.n){case 0:if(n&&(0,c.n)()&&s().cloud){e.n=1;break}return e.a(2,"");case 1:return a=(null===(t=n.split(".").pop())||void 0===t?void 0:t.split("?")[0])||"png",i="avatars/".concat(Date.now(),"-").concat(Math.floor(1e6*Math.random()),".").concat(a),e.n=2,s().cloud.uploadFile({cloudPath:i,filePath:n});case 2:return o=e.v,e.a(2,o.fileID)}},e)})),g.apply(this,arguments)}function b(e,n){return w.apply(this,arguments)}function w(){return w=(0,i.A)((0,r.A)().m(function e(n,t){var i,o,d;return(0,r.A)().w(function(e){while(1)switch(e.n){case 0:if(i=t.trim(),f(!1),(0,c.n)()&&s().cloud){e.n=1;break}return e.a(2,(0,a.A)((0,a.A)({},u.SW),{},{nickname:i,profileCompleted:!0}));case 1:return e.n=2,_(n);case 2:return o=e.v,e.n=3,(0,c.k)("profileUpdate",{patch:{nickname:i,avatarUrl:o}});case 3:return d=e.v,e.a(2,(0,l.h)(d.user))}},e)})),w.apply(this,arguments)}},9251:function(e,n,t){t.d(n,{k:function(){return s},n:function(){return u}});var a=t(1212),r=t(467),i=t(758),o=t.n(i);function s(e,n){return c.apply(this,arguments)}function c(){return c=(0,r.A)((0,a.A)().m(function e(n,t){var r;return(0,a.A)().w(function(e){while(1)switch(e.n){case 0:if(o().cloud){e.n=1;break}throw new Error("\u5f53\u524d\u73af\u5883\u672a\u542f\u7528 Taro.cloud");case 1:return e.n=2,o().cloud.callFunction({name:n,data:t});case 2:return r=e.v,e.a(2,r.result)}},e)})),c.apply(this,arguments)}function u(){return Boolean(o().cloud)}},4149:function(e,n,t){t.d(n,{O$:function(){return f},SI:function(){return m},aC:function(){return u},hv:function(){return s},lr:function(){return d}});var a=t(1212),r=t(467),i=t(9251),o=t(5366);function s(e){return c.apply(this,arguments)}function c(){return c=(0,r.A)((0,a.A)().m(function e(n){var t;return(0,a.A)().w(function(e){while(1)switch(e.n){case 0:if((0,i.n)()){e.n=1;break}return e.a(2,o.sk);case 1:return e.n=2,(0,i.k)("userPosts",n?{authorId:n}:{});case 2:return t=e.v,e.a(2,t.list||[])}},e)})),c.apply(this,arguments)}function u(e){return l.apply(this,arguments)}function l(){return l=(0,r.A)((0,a.A)().m(function e(n){var t;return(0,a.A)().w(function(e){while(1)switch(e.n){case 0:if((0,i.n)()){e.n=1;break}return e.a(2,{post:o.sk.find(function(e){return e._id===n})||null,comments:[]});case 1:return e.n=2,(0,i.k)("postDetail",{postId:n});case 2:return t=e.v,e.a(2,{post:t.post||null,comments:t.comments||[]})}},e)})),l.apply(this,arguments)}function d(e,n){return p.apply(this,arguments)}function p(){return p=(0,r.A)((0,a.A)().m(function e(n,t){var r;return(0,a.A)().w(function(e){while(1)switch(e.n){case 0:if((0,i.n)()){e.n=1;break}return e.a(2,o.sk);case 1:return e.n=2,(0,i.k)("feedList",{channel:n,topic:t});case 2:return r=e.v,e.a(2,r.list||[])}},e)})),p.apply(this,arguments)}function f(e,n){return v.apply(this,arguments)}function v(){return v=(0,r.A)((0,a.A)().m(function e(n,t){var r;return(0,a.A)().w(function(e){while(1)switch(e.n){case 0:if((0,i.n)()){e.n=1;break}return r=o.sk.find(function(e){return e._id===n}),e.a(2,{liked:t,likes:Math.max(0,((null===r||void 0===r?void 0:r.counts.likes)||0)+(t?1:-1))});case 1:return e.a(2,(0,i.k)("postLike",{postId:n,liked:t}))}},e)})),v.apply(this,arguments)}function m(e,n){return h.apply(this,arguments)}function h(){return h=(0,r.A)((0,a.A)().m(function e(n,t){var r;return(0,a.A)().w(function(e){while(1)switch(e.n){case 0:if((0,i.n)()){e.n=1;break}return r=o.sk.find(function(e){return e._id===n}),e.a(2,{commentId:"local_comment_".concat(Date.now()),comments:((null===r||void 0===r?void 0:r.counts.comments)||0)+1});case 1:return e.a(2,(0,i.k)("commentCreate",{postId:n,content:t}))}},e)})),h.apply(this,arguments)}},9672:function(e,n,t){t.d(n,{VL:function(){return c},_z:function(){return p},fG:function(){return v},vs:function(){return l}});var a=t(9379),r=t(1212),i=t(467),o=t(9251),s=t(5366);function c(e){return u.apply(this,arguments)}function u(){return u=(0,i.A)((0,r.A)().m(function e(n){var t;return(0,r.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if((0,o.n)()){e.n=1;break}return t="unread"===n?s.TZ.filter(function(e){return e.unreadCount>0}):s.TZ,e.a(2,{activeUsers:s.jO,conversations:t});case 1:return e.p=1,e.n=2,(0,o.k)("messageList",{tab:n});case 2:return e.a(2,e.v);case 3:return e.p=3,e.v,e.a(2,{activeUsers:[],conversations:[]})}},e,null,[[1,3]])})),u.apply(this,arguments)}function l(e){return d.apply(this,arguments)}function d(){return d=(0,i.A)((0,r.A)().m(function e(n){var t;return(0,r.A)().w(function(e){while(1)switch(e.n){case 0:if((0,o.n)()){e.n=1;break}return e.a(2,0);case 1:return e.n=2,(0,o.k)("conversationRead",{conversationId:n});case 2:return t=e.v,e.a(2,t.unreadCount)}},e)})),d.apply(this,arguments)}function p(e,n){return f.apply(this,arguments)}function f(){return f=(0,i.A)((0,r.A)().m(function e(n,t){return(0,r.A)().w(function(e){while(1)switch(e.n){case 0:if((0,o.n)()){e.n=1;break}return e.a(2,{messageId:"local_".concat(Date.now()),conversationId:t.conversationId||"local"});case 1:return e.a(2,(0,o.k)("messageSend",(0,a.A)({content:n},t)))}},e)})),f.apply(this,arguments)}function v(e){return m.apply(this,arguments)}function m(){return m=(0,i.A)((0,r.A)().m(function e(n){return(0,r.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if((0,o.n)()){e.n=1;break}return e.a(2,{conversationId:n.conversationId||"",peer:null,messages:[]});case 1:return e.p=1,e.n=2,(0,o.k)("messageThread",n);case 2:return e.a(2,e.v);case 3:return e.p=3,e.v,e.a(2,{conversationId:n.conversationId||"",peer:null,messages:[]})}},e,null,[[1,3]])})),m.apply(this,arguments)}},5366:function(e,n,t){t.d(n,{KB:function(){return s},LT:function(){return i},SW:function(){return r},TZ:function(){return u},jO:function(){return c},sk:function(){return o}});var a=t(9379),r={_id:"u_ab",nickname:"\u963f\u5e03\u7684\u5bb6\u957f",handle:"@abudejiazhang",avatarKey:"gradient-avatar-2",profileCompleted:!0,location:"\u4e0a\u6d77 \xb7 \u6d66\u4e1c\u65b0\u533a",yearsWithPets:6,level:6,bio:"\u559c\u6b22\u5e26\u5976\u6614\u53bb\u6c5f\u8fb9,\u4e5f\u5728\u8ba4\u771f\u5b66\u4e60\u548c\u732b\u54aa\u548c\u5e73\u76f8\u5904\u3002",verified:!0,stats:{posts:128,following:342,followers:1200,favorites:56},preferences:{notifications:!0,nearbyVisible:!0}},i=[{_id:"pet_milkshake",ownerId:"u_ab",name:"\u5976\u6614",species:"dog",breed:"\u91d1\u6bdb",ageText:"3 \u5c81",avatarKey:"gradient-avatar-4",photoKey:"photo-gold",tags:["\u4eb2\u4eba","\u7231\u73a9\u6c34","\u53ef\u7ea6\u905b"],mood:"\u4eca\u5929\u60f3\u53bb\u6c5f\u8fb9"},{_id:"pet_ricecake",ownerId:"u_ab",name:"\u5e74\u7cd5",species:"cat",breed:"\u5e03\u5076",ageText:"2 \u5c81",avatarKey:"gradient-avatar-2",photoKey:"photo-purple",tags:["\u5b89\u9759","\u4f1a\u5f00\u62bd\u5c49"],mood:"\u4e0b\u5348\u6652\u592a\u9633"}],o=[{_id:"p1",author:{id:"u1",name:"\u5976\u6cb9",avatarKey:"gradient-avatar-1"},pet:{name:"\u5976\u6614",breed:"\u91d1\u6bdb",tone:"purple"},body:"\u4eca\u5929\u5e26 #\u5976\u6614 \u53bb\u4e86\u6ee8\u6c5f\u516c\u56ed,\u5979\u7b2c\u4e00\u6b21\u89c1\u5230\u6c5f\u9762\u4e0a\u7684\u8f6e\u8239,\u6574\u4e2a\u72d7\u90fd\u6123\u4f4f\u4e86\u3002\u8def\u4e0a\u8fd8\u9047\u5230\u4e00\u53ea\u8d85\u51f6\u7684\u67f4\u72ac\u59b9\u59b9,\u4e24\u4e2a\u5c0f\u5bb6\u4f19\u6253\u95f9\u4e86\u534a\u5c0f\u65f6\u624d\u80af\u56de\u5bb6\u3002",topics:["\u5976\u6614","\u6ee8\u6c5f\u516c\u56ed","\u91d1\u6bdb\u65e5\u5e38"],mediaTone:"pet-1",sticker:"\u6ee8\u6c5f\u516c\u56ed",locationText:"\u4e0a\u6d77 \xb7 \u6ee8\u6c5f\u516c\u56ed",timeText:"2 \u5206\u949f\u524d",counts:{likes:128,comments:24,favorites:18},likedByMe:!1},{_id:"p2",author:{id:"u2",name:"\u4e50\u4e50\u5bb6",avatarKey:"gradient-avatar-2"},pet:{name:"\u5e74\u7cd5",breed:"\u5e03\u5076",tone:"green"},body:"\u5e74\u7cd5\u6700\u8fd1\u5b66\u4f1a\u4e86\u4e00\u4e2a\u65b0\u6280\u80fd \u2014\u2014 #\u5f00\u62bd\u5c49\u3002\u6211\u4eec\u5bb6\u6240\u6709\u62bd\u5c49\u73b0\u5728\u90fd\u5f97\u52a0\u513f\u7ae5\u9501\u3002\u6c42\u95ee\u5404\u4f4d\u94f2\u5c4e\u5b98,\u732b\u54aa\u6210\u7cbe\u4e86\u600e\u4e48\u529e?",topics:["\u5f00\u62bd\u5c49","\u732b\u54aa"],mediaTone:"pet-2",locationText:"\u4e0a\u6d77 \xb7 \u9759\u5b89\u533a",timeText:"15 \u5206\u949f\u524d",counts:{likes:87,comments:12,favorites:9},likedByMe:!1},{_id:"p3",author:{id:"u3",name:"Lucky \u4e4b\u5bb6",avatarKey:"gradient-avatar-3"},pet:{name:"Lucky",breed:"\u67ef\u57fa",tone:"gold"},body:"\u7b2c\u4e00\u6b21\u5e26 Lucky \u53c2\u52a0\u5ba0\u7269\u751f\u65e5\u4f1a,\u8ba4\u8bc6\u4e86 4 \u4e2a\u65b0\u670b\u53cb,\u56de\u5bb6\u7d2f\u762b\u4e86 #\u793e\u4ea4\u725b\u903c\u8bc1",topics:["\u5ba0\u7269\u751f\u65e5\u4f1a","\u793e\u4ea4\u725b\u903c\u8bc1"],mediaTone:"pet-3",sticker:"3 \u5c81\u751f\u65e5\u4f1a",locationText:"\u4e0a\u6d77 \xb7 \u5f90\u6c47\u533a",timeText:"1 \u5c0f\u65f6\u524d",counts:{likes:256,comments:42,favorites:31},likedByMe:!0}],s=[(0,a.A)((0,a.A)({},i[0]),{},{ownerName:"\u963f\u5e03\u7684\u5bb6\u957f",isMine:!0,isFollowing:!1,isFriend:!1,distanceText:"260m",online:!0,pin:{left:24,top:28}}),{_id:"pet_corgi",ownerId:"u3",name:"Lucky",species:"dog",breed:"\u67ef\u57fa",ageText:"3 \u5c81",distanceText:"420m",avatarKey:"gradient-avatar-3",photoKey:"photo-green",ownerName:"Lucky \u4e4b\u5bb6",isFollowing:!0,isFriend:!0,tags:["\u7cbe\u529b\u65fa\u76db","\u4f1a\u63a5\u98de\u76d8"],mood:"\u627e\u73a9\u4f34",online:!0,pin:{left:63,top:35}},{_id:"pet_shiba",ownerId:"u4",name:"\u8c46\u5305",species:"dog",breed:"\u67f4\u72ac",ageText:"1 \u5c81\u534a",distanceText:"530m",avatarKey:"gradient-avatar-6",photoKey:"photo-pink",ownerName:"\u8c46\u5305\u5988",isFollowing:!1,isFriend:!1,tags:["\u6162\u70ed","\u7231\u8ffd\u7403"],mood:"\u60f3\u95fb\u65b0\u670b\u53cb",pin:{left:42,top:56}},{_id:"pet_samoyed",ownerId:"u5",name:"\u767d\u6843",species:"dog",breed:"\u8428\u6469\u8036",ageText:"4 \u5c81",distanceText:"780m",avatarKey:"gradient-avatar-2",photoKey:"photo-blue",ownerName:"\u767d\u6843\u5bb6",isFollowing:!0,isFriend:!1,tags:["\u6e29\u67d4","\u9002\u5408\u65b0\u624b"],mood:"\u516c\u56ed\u6563\u6b65\u4e2d",pin:{left:76,top:62}},{_id:"pet_mocha",ownerId:"u6",name:"\u6469\u5361",species:"cat",breed:"\u82f1\u77ed",ageText:"5 \u5c81",distanceText:"960m",avatarKey:"gradient-avatar-5",photoKey:"photo-gold",ownerName:"\u6469\u5361\u5bb6",isFollowing:!1,isFriend:!1,tags:["\u5b89\u9759\u56f4\u89c2","\u4eb2\u4eba"],mood:"\u6b63\u5728\u8f66\u91cc\u770b\u70ed\u95f9",pin:{left:18,top:70}}],c=[{id:"a1",name:"\u5976\u6cb9",avatarKey:"gradient-avatar-1",live:!0},{id:"a2",name:"\u4e50\u4e50\u5bb6",avatarKey:"gradient-avatar-2"},{id:"a3",name:"Lucky",avatarKey:"gradient-avatar-3",live:!0},{id:"a4",name:"\u8c46\u5305\u5988",avatarKey:"gradient-avatar-4"},{id:"a5",name:"\u5c0f\u4e03",avatarKey:"gradient-avatar-5"}],u=[{_id:"c1",type:"single",title:"\u4e50\u4e50\u5bb6",petName:"\u5e74\u7cd5",avatarKey:"gradient-avatar-2",preview:"\u521a\u770b\u5230\u4f60\u53d1\u7684\u6ee8\u6c5f\u516c\u56ed,\u5468\u672b\u8fd8\u53bb\u5417?",timeText:"\u73b0\u5728",unreadCount:3,online:!0},{_id:"c3",type:"single",title:"Lucky \u4e4b\u5bb6",petName:"Lucky",avatarKey:"gradient-avatar-3",preview:"Lucky \u770b\u5230\u5976\u6614\u7684\u89c6\u9891\u4e4b\u540e\u4e00\u76f4\u76ef\u7740\u624b\u673a\u3002",timeText:"\u6628\u5929",unreadCount:0},{_id:"c4",type:"system",title:"\u6c6a\u5708\u5c0f\u52a9\u624b",avatarKey:"gradient-avatar-4",preview:"\u4f60\u7684\u52a8\u6001\u83b7\u5f97\u4e86 24 \u4e2a\u65b0\u7684\u559c\u6b22\u3002",timeText:"\u5468\u4e00",unreadCount:1,muted:!0}]},1926:function(e,n,t){t.d(n,{E$:function(){return u},SO:function(){return f},r7:function(){return d}});var a=t(9379),r=t(1212),i=t(467),o=t(9251),s=t(5366),c=t(7012);function u(){return l.apply(this,arguments)}function l(){return l=(0,i.A)((0,r.A)().m(function e(){var n;return(0,r.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if((0,o.n)()){e.n=1;break}return e.a(2,{user:s.SW,pets:s.LT});case 1:return e.p=1,e.n=2,(0,o.k)("profileGet",{});case 2:return n=e.v,e.a(2,{user:(0,c.h)(n.user),pets:n.pets||[]});case 3:return e.p=3,e.v,e.a(2,{user:s.SW,pets:s.LT})}},e,null,[[1,3]])})),l.apply(this,arguments)}function d(e){return p.apply(this,arguments)}function p(){return p=(0,i.A)((0,r.A)().m(function e(n){var t;return(0,r.A)().w(function(e){while(1)switch(e.n){case 0:if((0,o.n)()){e.n=1;break}return e.a(2,(0,a.A)((0,a.A)({},s.SW),n));case 1:return e.n=2,(0,o.k)("profileUpdate",{patch:n});case 2:return t=e.v,e.a(2,(0,c.h)(t.user))}},e)})),p.apply(this,arguments)}function f(){return v.apply(this,arguments)}function v(){return v=(0,i.A)((0,r.A)().m(function e(){var n;return(0,r.A)().w(function(e){while(1)switch(e.n){case 0:if((0,o.n)()){e.n=1;break}return e.a(2,s.LT);case 1:return e.n=2,(0,o.k)("petList",{});case 2:return n=e.v,e.a(2,n.list)}},e)})),v.apply(this,arguments)}},3810:function(e,n,t){t.d(n,{Cr:function(){return u},So:function(){return d},wA:function(){return s}});var a=t(1212),r=t(467),i=t(9251),o={following:0,followers:0,friends:0};function s(e){return c.apply(this,arguments)}function c(){return c=(0,r.A)((0,a.A)().m(function e(n){return(0,a.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if((0,i.n)()){e.n=1;break}return e.a(2,{list:[],counts:o});case 1:return e.p=1,e.n=2,(0,i.k)("followList",{type:n});case 2:return e.a(2,e.v);case 3:return e.p=3,e.v,e.a(2,{list:[],counts:o})}},e,null,[[1,3]])})),c.apply(this,arguments)}function u(e){return l.apply(this,arguments)}function l(){return l=(0,r.A)((0,a.A)().m(function e(n){var t;return(0,a.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if((0,i.n)()){e.n=1;break}return e.a(2,[]);case 1:return e.p=1,e.n=2,(0,i.k)("userList",{keyword:n||""});case 2:return t=e.v,e.a(2,t.list);case 3:return e.p=3,e.v,e.a(2,[])}},e,null,[[1,3]])})),l.apply(this,arguments)}function d(e,n){return p.apply(this,arguments)}function p(){return p=(0,r.A)((0,a.A)().m(function e(n,t){return(0,a.A)().w(function(e){while(1)switch(e.n){case 0:if((0,i.n)()){e.n=1;break}return e.a(2,{following:t,mutual:!1});case 1:return e.a(2,(0,i.k)("followToggle",{targetUserId:n,follow:t}))}},e)})),p.apply(this,arguments)}},7012:function(e,n,t){function a(e){var n,t,a,r,i,o,s,c;return{_id:(null===e||void 0===e?void 0:e._id)||"",openid:null===e||void 0===e?void 0:e.openid,nickname:(null===e||void 0===e?void 0:e.nickname)||"\u5ba0\u7269\u8fbe\u4eba",handle:(null===e||void 0===e?void 0:e.handle)||"",avatarKey:(null===e||void 0===e?void 0:e.avatarKey)||"gradient-avatar-1",avatarUrl:(null===e||void 0===e?void 0:e.avatarUrl)||"",profileCompleted:Boolean(null===e||void 0===e?void 0:e.profileCompleted),location:(null===e||void 0===e?void 0:e.location)||"",yearsWithPets:(null===e||void 0===e?void 0:e.yearsWithPets)||0,level:(null===e||void 0===e?void 0:e.level)||1,bio:(null===e||void 0===e?void 0:e.bio)||"",verified:Boolean(null===e||void 0===e?void 0:e.verified),stats:{posts:(null===e||void 0===e||null===(n=e.stats)||void 0===n?void 0:n.posts)||0,following:(null===e||void 0===e||null===(t=e.stats)||void 0===t?void 0:t.following)||0,followers:(null===e||void 0===e||null===(a=e.stats)||void 0===a?void 0:a.followers)||0,favorites:(null===e||void 0===e||null===(r=e.stats)||void 0===r?void 0:r.favorites)||0},preferences:{notifications:null===(i=null===e||void 0===e||null===(o=e.preferences)||void 0===o?void 0:o.notifications)||void 0===i||i,nearbyVisible:null===(s=null===e||void 0===e||null===(c=e.preferences)||void 0===c?void 0:c.nearbyVisible)||void 0===s||s}}}t.d(n,{h:function(){return a}})}}]); \ No newline at end of file +"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[76],{7896:function(n,e,t){var r=t(118),a=t(3401),i=t(4848);function o(n){var e=n.visible,t=n.icon,o=void 0===t?"heart-fill":t,s=n.className,c=void 0===s?"":s,u=n.children;return(0,i.jsxs)(r.Ss,{className:"toast-overlay ".concat(e?"toast-overlay--show":""," ").concat(c),children:[(0,i.jsx)(a.A,{name:o,size:82}),u]})}e.A=o},7745:function(n,e,t){var r=t(5544),a=t(6540),i=t(118),o=t(4848);function s(n){var e=n.avatarKey,t=void 0===e?"gradient-avatar-1":e,s=n.avatarUrl,c=n.label,u=n.size,l=void 0===u?"md":u,f=n.online,d=void 0!==f&&f,p=n.petTag,v=n.children,h=(0,a.useState)(!1),m=(0,r.A)(h,2),w=m[0],y=m[1];(0,a.useEffect)(function(){return y(!1)},[s]);var A=Boolean(s&&!s.startsWith("cloud://"))&&!w;return(0,o.jsxs)(i.Ss,{className:"avatar avatar--".concat(l," ").concat(A?"avatar--image":t),children:[A?(0,o.jsx)(i._V,{className:"avatar__image",src:s,mode:"aspectFill",onError:function(){return y(!0)}}):v||(c?(0,o.jsx)(i.EY,{className:"avatar__label",children:c.slice(0,1)}):null),d?(0,o.jsx)(i.Ss,{className:"avatar__online"}):null,p?(0,o.jsx)(i.EY,{className:"avatar__pet-tag",children:p}):null]})}e.A=s},3401:function(n,e,t){var r=t(118),a=t(4848),i={compass:"\u25c7",pin:"\u2316",plus:"+",message:"\u25cc",user:"\u2659",search:"\u2315",bell:"\u25d4",heart:"\u2661","heart-fill":"\u2665",bookmark:"\u2311",close:"\xd7","close-dot":"\u25cb",image:"\u25a7",video:"\u25b7",hash:"#",smile:"\u263a",eye:"\u25c9",paw:"\u2724",save:"\u25a3",check:"\u2713",settings:"\u2699",chev:"\u203a",refresh:"\u21bb",filter:"\u25bd",minus:"\u2212",target:"\u2299",lock:"\u25a4",globe:"\u25cd",users:"\u265f",info:"i"};function o(n){var e=n.name,t=n.size,o=void 0===t?18:t,s=n.className,c=void 0===s?"":s;return(0,a.jsx)(r.EY,{className:"icon icon--".concat(e," ").concat(c),style:{fontSize:"".concat(o,"px"),width:"".concat(o,"px"),height:"".concat(o,"px")},children:i[e]})}e.A=o},326:function(n,e,t){var r=t(118),a=t(4848);function i(n){var e=n.items,t=n.value,i=n.onChange,o=n.className,s=void 0===o?"":o;return(0,a.jsx)(r.Ss,{className:"seg-tabs ".concat(s),children:e.map(function(n){return(0,a.jsxs)(r.Ss,{className:"seg-tabs__item ".concat(t===n.key?"seg-tabs__item--active":""),onClick:function(){return i(n.key)},children:[(0,a.jsx)(r.EY,{children:n.label}),n.badge?(0,a.jsx)(r.EY,{className:"seg-tabs__badge",children:n.badge}):null]},n.key)})})}e.A=i},3972:function(n,e,t){var r=t(758),a=t.n(r),i=t(118),o=t(7745),s=t(4848);function c(n){var e=n.type,t=n.onClick;return(0,s.jsx)(i.Ss,{className:"icon icon--".concat(e),onClick:t})}function u(n){var e=n.post,t=n.onLike,r=n.onComment,u=n.onOpen,l=n.enableImagePreview,f=n.onMore,d=u?function(){return u(e._id)}:void 0,p=u?d:r?function(){return r(e._id)}:void 0,v=(e.media||[]).filter(function(n){return!n.startsWith("cloud://")}),h=function(n){return a().previewImage({current:n,urls:v})};return(0,s.jsxs)(i.Ss,{className:"post-card",children:[(0,s.jsxs)(i.Ss,{className:"post-card__head",children:[(0,s.jsx)(o.A,{avatarKey:e.author.avatarKey,avatarUrl:e.author.avatarUrl,size:"md",online:e.author.online}),(0,s.jsxs)(i.Ss,{className:"post-card__meta",children:[(0,s.jsxs)(i.Ss,{className:"post-card__name-row",children:[(0,s.jsx)(i.EY,{className:"post-card__name",children:e.author.name}),(0,s.jsxs)(i.EY,{className:"post-card__pet post-card__pet--".concat(e.pet.tone||"purple"),children:[e.pet.name," \xb7 ",e.pet.breed]})]}),(0,s.jsxs)(i.Ss,{className:"post-card__sub",children:[(0,s.jsx)(i.EY,{children:e.locationText}),(0,s.jsx)(i.Ss,{className:"post-card__dot"}),(0,s.jsx)(i.EY,{children:e.timeText})]})]}),f?(0,s.jsx)(i.Ss,{className:"post-card__more",onClick:function(n){n.stopPropagation(),f(e._id)},children:(0,s.jsx)(i.EY,{className:"post-card__more-dots",children:"\xb7\xb7\xb7"})}):null]}),(0,s.jsx)(i.EY,{className:"post-card__body",onClick:d,children:e.body}),v.length?(0,s.jsx)(i.Ss,{className:"post-card__photos post-card__photos--".concat(Math.min(v.length,3)),children:v.slice(0,9).map(function(n,e){return(0,s.jsx)(i._V,{className:"post-card__photo",src:n,mode:"aspectFill",onClick:l?function(){return h(n)}:d},e)})}):null,(0,s.jsxs)(i.Ss,{className:"post-card__actions ".concat(e.likedByMe?"post-card__actions--liked":""),children:[(0,s.jsx)(c,{type:"heart",onClick:function(){return t(e._id)}}),(0,s.jsx)(i.EY,{onClick:function(){return t(e._id)},children:e.counts.likes}),(0,s.jsx)(c,{type:"comment",onClick:p}),(0,s.jsx)(i.EY,{onClick:p,children:e.counts.comments})]})]})}e.A=u},2538:function(n,e,t){var r=t(118),a=t(7745),i=t(3401),o=t(4848);function s(n){var e=n.user;return(0,o.jsxs)(r.Ss,{className:"profile-hero",children:[(0,o.jsx)(a.A,{avatarKey:e.avatarKey,avatarUrl:e.avatarUrl,size:"xl",label:e.nickname}),(0,o.jsxs)(r.Ss,{className:"profile-hero__info",children:[(0,o.jsxs)(r.Ss,{className:"profile-hero__name-row",children:[(0,o.jsx)(r.EY,{className:"profile-hero__name",children:e.nickname}),(0,o.jsxs)(r.EY,{className:"profile-hero__level",children:["Lv.",e.level]})]}),(0,o.jsxs)(r.EY,{className:"profile-hero__sub",children:[e.location," \xb7 ",e.yearsWithPets," \u5e74\u517b\u5ba0\u7ecf\u9a8c"]}),(0,o.jsxs)(r.Ss,{className:"profile-hero__badges",children:[e.verified?(0,o.jsxs)(r.Ss,{className:"profile-hero__badge",children:[(0,o.jsx)(i.A,{name:"check",size:10}),(0,o.jsx)(r.EY,{children:"\u5b9e\u540d\u8ba4\u8bc1"})]}):null,e.location?(0,o.jsxs)(r.Ss,{className:"profile-hero__badge",children:[(0,o.jsx)(i.A,{name:"pin",size:10}),(0,o.jsx)(r.EY,{children:e.location})]}):null]})]})]})}e.A=s},1798:function(n,e,t){t.d(e,{A:function(){return u}});var r=t(5544),a=t(118);function i(n){return n>=1e4?"".concat((n/1e4).toFixed(1),"w"):n>=1e3?"".concat((n/1e3).toFixed(1),"k"):String(n)}var o=t(4848),s=[["posts","\u52a8\u6001"],["following","\u5173\u6ce8"],["followers","\u7c89\u4e1d"]];function c(n){var e=n.stats,t=n.onSelect,c=e||{posts:0,following:0,followers:0};return(0,o.jsx)(a.Ss,{className:"stats-row",children:s.map(function(n){var e=(0,r.A)(n,2),s=e[0],u=e[1];return(0,o.jsxs)(a.Ss,{className:"stats-row__item",onClick:function(){return null===t||void 0===t?void 0:t(s)},children:[(0,o.jsx)(a.EY,{className:"stats-row__num",children:i(c[s])}),(0,o.jsx)(a.EY,{className:"stats-row__label",children:u})]},s)})})}var u=c},924:function(n,e,t){t.d(e,{A7:function(){return c},Cv:function(){return l},VQ:function(){return o},gW:function(){return u},nb:function(){return s}});var r=t(118),a=t(4848),i={plus:"+",pin:"\u2316",close:"x",image:"\u25a7",video:"\u25b7",hash:"#",smile:"\u263a",paw:"\u2724",save:"\u25a3",check:"\u2713",chev:"\u203a",eye:"\u25c9",lock:"\u25a4",globe:"\u25cd",users:"\u265f",info:"i"};function o(n){var e=n.name,t=n.size,o=void 0===t?18:t,s=n.className,c=void 0===s?"":s;return(0,a.jsx)(r.EY,{className:"publish-icon publish-icon--".concat(e," ").concat(c),style:{fontSize:"".concat(o,"px"),width:"".concat(o,"px"),height:"".concat(o,"px")},children:i[e]})}function s(n){var e=n.avatarKey,t=void 0===e?"gradient-avatar-1":e,i=n.avatarUrl,o=n.label,s=n.size,c=void 0===s?"md":s,u=n.children,l=i&&!i.startsWith("cloud://")?i:"";return(0,a.jsx)(r.Ss,{className:"publish-avatar publish-avatar--".concat(c," publish-avatar--").concat(t),children:l?(0,a.jsx)(r._V,{className:"publish-avatar__img",src:l,mode:"aspectFill"}):u||(o?(0,a.jsx)(r.EY,{className:"publish-avatar__label",children:o.slice(0,1)}):null)})}function c(n){var e=n.checked,t=n.onChange;return(0,a.jsx)(r.Ss,{className:"publish-switch ".concat(e?"publish-switch--checked":""),onClick:function(){return null===t||void 0===t?void 0:t(!e)}})}function u(n){var e=n.active,t=void 0!==e&&e,i=n.prefix,o=n.onClick,s=n.children;return(0,a.jsxs)(r.Ss,{className:"publish-chip ".concat(t?"publish-chip--active":""),onClick:o,children:[i?(0,a.jsx)(r.EY,{className:"publish-chip__prefix",children:i}):null,(0,a.jsx)(r.EY,{children:s})]})}function l(n){var e=n.visible,t=n.onClose,i=n.centered,o=void 0!==i&&i,s=n.className,c=void 0===s?"":s,u=n.children;return e?(0,a.jsx)(r.Ss,{className:"publish-bottom-sheet-bg ".concat(o?"publish-bottom-sheet-bg--centered":""),onClick:t,children:(0,a.jsx)(r.Ss,{className:"publish-bottom-sheet ".concat(c),onClick:function(n){return n.stopPropagation()},children:u})}):null}},2978:function(n,e,t){var r=t(118),a=t(924),i=t(4848),o=[{key:"public",icon:"globe",title:"\u516c\u5f00",desc:"\u6240\u6709\u6c6a\u5708\u7528\u6237\u53ef\u89c1,\u4f1a\u51fa\u73b0\u5728\u5e7f\u573a\u63a8\u8350\u4e2d",tone:"public"},{key:"friends",icon:"users",title:"\u6c6a\u53cb",desc:"\u4ec5\u4f60\u5173\u6ce8\u7684\u4eba\u53ef\u89c1,\u4f1a\u51fa\u73b0\u5728\u5173\u6ce8\u4fe1\u606f\u6d41",tone:"friends"},{key:"private",icon:"lock",title:"\u4ec5\u81ea\u5df1",desc:"\u4ec5\u81ea\u5df1\u53ef\u89c1,\u4f5c\u4e3a\u79c1\u4eba\u8bb0\u5f55\u4fdd\u5b58",tone:"private"}];function s(n){var e=n.visible,t=n.value,s=n.onChange,c=n.onClose;return(0,i.jsxs)(a.Cv,{visible:e,onClose:c,children:[(0,i.jsx)(r.Ss,{className:"publish-visibility-sheet__grabber"}),(0,i.jsx)(r.EY,{className:"publish-visibility-sheet__title",children:"\u9009\u62e9\u53ef\u89c1\u8303\u56f4"}),(0,i.jsx)(r.EY,{className:"publish-visibility-sheet__desc",children:"\u4e0d\u540c\u8303\u56f4\u7684\u52a8\u6001\u4f1a\u51fa\u73b0\u5728\u4e0d\u540c\u7684\u4fe1\u606f\u6d41\u4e2d"}),(0,i.jsx)(r.Ss,{className:"publish-visibility-sheet__options",children:o.map(function(n){var e=n.key===t;return(0,i.jsxs)(r.Ss,{className:"publish-visibility-sheet__option ".concat(e?"publish-visibility-sheet__option--checked":""),onClick:function(){s(n.key),setTimeout(c,220)},children:[(0,i.jsx)(r.Ss,{className:"publish-visibility-sheet__icon publish-visibility-sheet__icon--".concat(n.tone),children:(0,i.jsx)(a.VQ,{name:n.icon,size:18})}),(0,i.jsxs)(r.Ss,{className:"publish-visibility-sheet__text",children:[(0,i.jsx)(r.EY,{className:"publish-visibility-sheet__name",children:n.title}),(0,i.jsx)(r.EY,{className:"publish-visibility-sheet__sub",children:n.desc})]}),(0,i.jsx)(r.Ss,{className:"publish-visibility-sheet__check",children:e?(0,i.jsx)(a.VQ,{name:"check",size:12}):null})]},n.key)})})]})}e.A=s},374:function(n,e,t){t.d(e,{v:function(){return s}});var r=t(6540),a=t(758),i=t.n(a);function o(){var n=i();return"function"===typeof n.getWindowInfo?n.getWindowInfo():i().getSystemInfoSync()}function s(){return(0,r.useMemo)(function(){try{var n,e=o(),t=i().getMenuButtonBoundingClientRect(),r=e.statusBarHeight||0,a=Math.max(54,t.bottom+8),s=e.screenHeight||e.windowHeight||0,c=Math.max(0,s-((null===(n=e.safeArea)||void 0===n?void 0:n.bottom)||s));return{statusBarHeight:r,navHeight:a,menuRight:Math.max(16,(e.windowWidth||390)-t.left+8),safeBottom:c}}catch(n){return{statusBarHeight:24,navHeight:54,menuRight:96,safeBottom:20}}},[])}},994:function(n,e,t){t.d(e,{d:function(){return i}});var r=t(5544),a=t(6540);function i(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:480,e=(0,a.useState)(!1),t=(0,r.A)(e,2),i=t[0],o=t[1],s=(0,a.useRef)(null),c=(0,a.useCallback)(function(){s.current&&clearTimeout(s.current),o(!0),s.current=setTimeout(function(){return o(!1)},n)},[n]),u=(0,a.useCallback)(function(){s.current&&clearTimeout(s.current),o(!1)},[]);return(0,a.useEffect)(function(){return function(){s.current&&clearTimeout(s.current)}},[]),{visible:i,show:c,hide:u}}},3427:function(n,e,t){t.d(e,{F4:function(){return A},R$:function(){return b},iD:function(){return w},nB:function(){return p},ri:function(){return h}});var r=t(9379),a=t(1212),i=t(467),o=t(758),s=t.n(o),c=t(9251),u=t(4282),l=t(5366),f=t(4177),d="wq:loggedOut";function p(){try{return Boolean(s().getStorageSync(d))}catch(n){return!1}}function v(n){try{n?s().setStorageSync(d,!0):s().removeStorageSync(d)}catch(n){}}function h(){return m.apply(this,arguments)}function m(){return m=(0,i.A)((0,a.A)().m(function n(){return(0,a.A)().w(function(n){while(1)switch(n.n){case 0:v(!0);case 1:return n.a(2)}},n)})),m.apply(this,arguments)}function w(){return y.apply(this,arguments)}function y(){return y=(0,i.A)((0,a.A)().m(function n(){var e,t,i,o,s,d,p,v;return(0,a.A)().w(function(n){while(1)switch(n.p=n.n){case 0:if((0,c.n)()){n.n=1;break}return n.a(2,{user:l.SW,isNew:!1});case 1:return n.p=1,n.n=2,(0,c.k)("login",{});case 2:return e=n.v,t=(0,f.h)(e.user),i=r.A,o=(0,r.A)({},t),s={},n.n=3,(0,u.Po)(t.avatarUrl);case 3:return d=n.v,p=i(o,s,{avatarUrl:d}),v=Boolean(e.isNew),n.a(2,{user:p,isNew:v});case 4:return n.p=4,n.v,n.a(2,{user:l.SW,isNew:!1})}},n,null,[[1,4]])})),y.apply(this,arguments)}function A(n){return g.apply(this,arguments)}function g(){return g=(0,i.A)((0,a.A)().m(function n(e){var t,r,i,o;return(0,a.A)().w(function(n){while(1)switch(n.n){case 0:if(e&&(0,c.n)()&&s().cloud){n.n=1;break}return n.a(2,"");case 1:return r=(null===(t=e.split(".").pop())||void 0===t?void 0:t.split("?")[0])||"png",i="avatars/".concat(Date.now(),"-").concat(Math.floor(1e6*Math.random()),".").concat(r),n.n=2,s().cloud.uploadFile({cloudPath:i,filePath:e});case 2:return o=n.v,n.a(2,o.fileID)}},n)})),g.apply(this,arguments)}function b(n,e){return k.apply(this,arguments)}function k(){return k=(0,i.A)((0,a.A)().m(function n(e,t){var i,o,d,p,h,m,w,y;return(0,a.A)().w(function(n){while(1)switch(n.n){case 0:if(i=t.trim(),v(!1),(0,c.n)()&&s().cloud){n.n=1;break}return n.a(2,(0,r.A)((0,r.A)({},l.SW),{},{nickname:i,profileCompleted:!0}));case 1:return n.n=2,A(e);case 2:return o=n.v,n.n=3,(0,c.k)("profileUpdate",{patch:{nickname:i,avatarUrl:o}});case 3:return d=n.v,p=(0,f.h)(d.user),h=r.A,m=(0,r.A)({},p),w={},n.n=4,(0,u.Po)(p.avatarUrl);case 4:return y=n.v,n.a(2,h(m,w,{avatarUrl:y}))}},n)})),k.apply(this,arguments)}},4282:function(n,e,t){t.d(e,{L3:function(){return h},Po:function(){return y},f0:function(){return g}});var r=t(1212),a=t(467),i=t(5544),o=t(436),s=t(758),c=t.n(s),u=3e6,l=500,f=new Map;function d(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Date.now();if(f.forEach(function(e,t){e.expiresAt<=n&&f.delete(t)}),!(f.size<=l)){var e=f.size-l;(0,o.A)(f.entries()).sort(function(n,e){return n[1].lastAccess-e[1].lastAccess}).slice(0,e).forEach(function(n){var e=(0,i.A)(n,1),t=e[0];return f.delete(t)})}}function p(n){var e=f.get(n);if(!e)return"";var t=Date.now();return e.expiresAt<=t?(f.delete(n),""):(e.lastAccess=t,e.url)}function v(n,e){var t=Date.now();f.set(n,{url:e,expiresAt:t+u,lastAccess:t}),d(t)}function h(n){return Boolean(n&&n.startsWith("cloud://"))}function m(n){return w.apply(this,arguments)}function w(){return w=(0,a.A)((0,r.A)().m(function n(e){var t,a,i,s;return(0,r.A)().w(function(n){while(1)switch(n.p=n.n){case 0:if(d(),t=c().cloud,a=(0,o.A)(new Set(e.filter(h).filter(function(n){return!p(n)}))),!a.length||!t||"function"!==typeof t.getTempFileURL){n.n=4;break}return n.p=1,n.n=2,t.getTempFileURL({fileList:a});case 2:i=n.v,s=Array.isArray(null===i||void 0===i?void 0:i.fileList)?i.fileList:[],s.forEach(function(n){var e=n.fileID||n.fileId,t=n.tempFileURL||n.tempFileUrl;e&&t&&v(e,t)}),n.n=4;break;case 3:n.p=3,n.v;case 4:return n.a(2,e.map(function(n){return h(n)?p(n)||"":n}))}},n,null,[[1,3]])})),w.apply(this,arguments)}function y(n){return A.apply(this,arguments)}function A(){return A=(0,a.A)((0,r.A)().m(function n(e){var t,a,o;return(0,r.A)().w(function(n){while(1)switch(n.n){case 0:if(e){n.n=1;break}return n.a(2,"");case 1:return n.n=2,m([e]);case 2:return t=n.v,a=(0,i.A)(t,1),o=a[0],n.a(2,o||"")}},n)})),A.apply(this,arguments)}function g(n){return b.apply(this,arguments)}function b(){return b=(0,a.A)((0,r.A)().m(function n(e){var t,a;return(0,r.A)().w(function(n){while(1)switch(n.n){case 0:return t=(0,o.A)(new Set(e.filter(Boolean))),n.n=1,m(t);case 1:return a=n.v,n.a(2,new Map(t.map(function(n,e){return[n,a[e]||""]})))}},n)})),b.apply(this,arguments)}},9251:function(n,e,t){t.d(e,{k:function(){return s},n:function(){return u}});var r=t(1212),a=t(467),i=t(758),o=t.n(i);function s(n,e){return c.apply(this,arguments)}function c(){return c=(0,a.A)((0,r.A)().m(function n(e,t){var a;return(0,r.A)().w(function(n){while(1)switch(n.n){case 0:if(o().cloud){n.n=1;break}throw new Error("\u5f53\u524d\u73af\u5883\u672a\u542f\u7528 Taro.cloud");case 1:return n.n=2,o().cloud.callFunction({name:e,data:t});case 2:return a=n.v,n.a(2,a.result)}},n)})),c.apply(this,arguments)}function u(){return Boolean(o().cloud)}},4149:function(n,e,t){t.d(e,{O$:function(){return x},SI:function(){return I},aC:function(){return g},gg:function(){return U},hv:function(){return y},lr:function(){return k},ys:function(){return j}});var r=t(1212),a=t(9379),i=t(467),o=t(5544),s=t(436),c=t(9251),u=t(4282),l=t(5366),f=t(5313);function d(n,e){var t=null===e||void 0===e?void 0:e.trim().toLowerCase();return!t||[n.body,n.locationText,n.author.name,n.pet.name,n.pet.breed].concat((0,s.A)(n.topics||[])).filter(Boolean).join(" ").toLowerCase().includes(t)}function p(n){var e=new Map;return n.forEach(function(n){n.topics.forEach(function(n){return e.set(n,(e.get(n)||0)+1)})}),(0,s.A)(e.entries()).sort(function(n,e){return e[1]-n[1]}).map(function(n){var e=(0,o.A)(n,1),t=e[0];return t})}function v(n){return h.apply(this,arguments)}function h(){return h=(0,i.A)((0,r.A)().m(function n(e){var t,i,o;return(0,r.A)().w(function(n){while(1)switch(n.n){case 0:return t=e.flatMap(function(n){return[n.author.avatarUrl||""].concat((0,s.A)(n.media||[]))}),n.n=1,(0,u.f0)(t);case 1:return i=n.v,o=function(n){return n&&i.has(n)?i.get(n)||"":n},n.a(2,e.map(function(n){return(0,a.A)((0,a.A)({},n),{},{author:(0,a.A)((0,a.A)({},n.author),{},{avatarUrl:o(n.author.avatarUrl)}),media:n.media?n.media.map(function(n){return o(n)||""}).filter(Boolean):n.media})}))}},n)})),h.apply(this,arguments)}function m(n){return w.apply(this,arguments)}function w(){return w=(0,i.A)((0,r.A)().m(function n(e){var t,i;return(0,r.A)().w(function(n){while(1)switch(n.n){case 0:return n.n=1,(0,u.f0)(e.map(function(n){return n.author.avatarUrl||""}));case 1:return t=n.v,i=function(n){return n&&t.has(n)?t.get(n)||"":n},n.a(2,e.map(function(n){return(0,a.A)((0,a.A)({},n),{},{author:(0,a.A)((0,a.A)({},n.author),{},{avatarUrl:i(n.author.avatarUrl)})})}))}},n)})),w.apply(this,arguments)}function y(){return A.apply(this,arguments)}function A(){return A=(0,i.A)((0,r.A)().m(function n(){var e,t,a,i,o,s,u,f,d,p=arguments;return(0,r.A)().w(function(n){while(1)switch(n.n){case 0:if(e=p.length>0&&void 0!==p[0]?p[0]:{},t="string"===typeof e?{authorId:e}:e,a=t.pageSize||20,(0,c.n)()){n.n=1;break}return i=Math.max(0,Number(t.cursor||0)),o=l.sk.slice(i,i+a),s=i+a0}):f.TZ,n.a(2,{activeUsers:f.jO,conversations:t});case 1:return n.p=1,n.n=2,(0,u.k)("messageList",{tab:e});case 2:return a=n.v,n.a(2,p({activeUsers:a.activeUsers||[],conversations:a.conversations||[]}));case 3:return n.p=3,n.v,n.a(2,{activeUsers:[],conversations:[]})}},n,null,[[1,3]])})),y.apply(this,arguments)}function A(n){return g.apply(this,arguments)}function g(){return g=(0,o.A)((0,r.A)().m(function n(e){var t;return(0,r.A)().w(function(n){while(1)switch(n.n){case 0:if((0,d.ZU)("messages"),(0,u.n)()){n.n=1;break}return n.a(2,0);case 1:return n.n=2,(0,u.k)("conversationRead",{conversationId:e});case 2:return t=n.v,n.a(2,t.unreadCount)}},n)})),g.apply(this,arguments)}function b(n,e){return k.apply(this,arguments)}function k(){return k=(0,o.A)((0,r.A)().m(function n(e,t){var i;return(0,r.A)().w(function(n){while(1)switch(n.n){case 0:if((0,u.n)()){n.n=1;break}return n.a(2,{messageId:"local_".concat(Date.now()),conversationId:t.conversationId||(t.toUserId?"local_".concat(t.toUserId):"local")});case 1:return n.n=2,(0,u.k)("messageSend",(0,a.A)({content:e},t));case 2:if(i=n.v,null!==i&&void 0!==i&&i.messageId&&null!==i&&void 0!==i&&i.conversationId){n.n=3;break}throw new Error("messageSend returned invalid result: ".concat(JSON.stringify(i)));case 3:return(0,d.ZU)("messages"),n.a(2,{messageId:i.messageId,conversationId:i.conversationId})}},n)})),k.apply(this,arguments)}function _(n){return x.apply(this,arguments)}function x(){return x=(0,o.A)((0,r.A)().m(function n(e){var t,a,i;return(0,r.A)().w(function(n){while(1)switch(n.n){case 0:if((0,u.n)()&&!e.startsWith("cloud://")){n.n=1;break}return n.a(2,e);case 1:return t=(e.split("?")[0].split(".").pop()||"jpg").slice(0,5),a="messages/".concat(Date.now(),"_").concat(Math.random().toString(36).slice(2,8),".").concat(t),n.n=2,c().cloud.uploadFile({cloudPath:a,filePath:e});case 2:return i=n.v,n.a(2,i.fileID)}},n)})),x.apply(this,arguments)}function S(n,e){return j.apply(this,arguments)}function j(){return j=(0,o.A)((0,r.A)().m(function n(e,t){var i,o,s;return(0,r.A)().w(function(n){while(1)switch(n.n){case 0:return n.n=1,_(e);case 1:return i=n.v,n.n=2,b(i,(0,a.A)((0,a.A)({},t),{},{msgType:"image"}));case 2:return o=n.v,n.n=3,(0,l.Po)(i);case 3:return s=n.v,n.a(2,(0,a.A)((0,a.A)({},o),{},{fileId:(0,l.L3)(i)?i:void 0,content:s||e,assetState:s||e?"ready":"unresolved"}))}},n)})),j.apply(this,arguments)}function N(n){return U.apply(this,arguments)}function U(){return U=(0,o.A)((0,r.A)().m(function n(e){var t;return(0,r.A)().w(function(n){while(1)switch(n.p=n.n){case 0:if((0,u.n)()){n.n=1;break}return n.a(2,{conversationId:e.conversationId||"",peer:null,messages:[],nextCursor:""});case 1:return n.p=1,n.n=2,(0,u.k)("messageThread",e);case 2:return t=n.v,n.a(2,h({conversationId:t.conversationId||e.conversationId||"",peer:t.peer||null,messages:t.messages||[],nextCursor:t.nextCursor||""}));case 3:return n.p=3,n.v,n.a(2,{conversationId:e.conversationId||"",peer:null,messages:[],nextCursor:""})}},n,null,[[1,3]])})),U.apply(this,arguments)}},5366:function(n,e,t){t.d(e,{KB:function(){return s},LT:function(){return i},SW:function(){return a},TZ:function(){return u},jO:function(){return c},sk:function(){return o}});var r=t(9379),a={_id:"u_ab",nickname:"\u963f\u5e03\u7684\u5bb6\u957f",handle:"@abudejiazhang",avatarKey:"gradient-avatar-2",profileCompleted:!0,location:"\u4e0a\u6d77 \xb7 \u6d66\u4e1c\u65b0\u533a",yearsWithPets:6,level:6,bio:"\u559c\u6b22\u5e26\u5976\u6614\u53bb\u6c5f\u8fb9,\u4e5f\u5728\u8ba4\u771f\u5b66\u4e60\u548c\u732b\u54aa\u548c\u5e73\u76f8\u5904\u3002",verified:!0,stats:{posts:128,following:342,followers:1200},preferences:{notifications:!0,nearbyVisible:!0}},i=[{_id:"pet_milkshake",ownerId:"u_ab",name:"\u5976\u6614",species:"dog",breed:"\u91d1\u6bdb",ageText:"3 \u5c81",avatarKey:"gradient-avatar-4",photoKey:"photo-gold",tags:["\u4eb2\u4eba","\u7231\u73a9\u6c34","\u53ef\u7ea6\u905b"],mood:"\u4eca\u5929\u60f3\u53bb\u6c5f\u8fb9"},{_id:"pet_ricecake",ownerId:"u_ab",name:"\u5e74\u7cd5",species:"cat",breed:"\u5e03\u5076",ageText:"2 \u5c81",avatarKey:"gradient-avatar-2",photoKey:"photo-purple",tags:["\u5b89\u9759","\u4f1a\u5f00\u62bd\u5c49"],mood:"\u4e0b\u5348\u6652\u592a\u9633"}],o=[{_id:"p1",author:{id:"u1",name:"\u5976\u6cb9",avatarKey:"gradient-avatar-1"},pet:{name:"\u5976\u6614",breed:"\u91d1\u6bdb",tone:"purple"},body:"\u4eca\u5929\u5e26 #\u5976\u6614 \u53bb\u4e86\u6ee8\u6c5f\u516c\u56ed,\u5979\u7b2c\u4e00\u6b21\u89c1\u5230\u6c5f\u9762\u4e0a\u7684\u8f6e\u8239,\u6574\u4e2a\u72d7\u90fd\u6123\u4f4f\u4e86\u3002\u8def\u4e0a\u8fd8\u9047\u5230\u4e00\u53ea\u8d85\u51f6\u7684\u67f4\u72ac\u59b9\u59b9,\u4e24\u4e2a\u5c0f\u5bb6\u4f19\u6253\u95f9\u4e86\u534a\u5c0f\u65f6\u624d\u80af\u56de\u5bb6\u3002",topics:["\u5976\u6614","\u6ee8\u6c5f\u516c\u56ed","\u91d1\u6bdb\u65e5\u5e38"],mediaTone:"pet-1",sticker:"\u6ee8\u6c5f\u516c\u56ed",locationText:"\u4e0a\u6d77 \xb7 \u6ee8\u6c5f\u516c\u56ed",timeText:"2 \u5206\u949f\u524d",counts:{likes:128,comments:24},likedByMe:!1},{_id:"p2",author:{id:"u2",name:"\u4e50\u4e50\u5bb6",avatarKey:"gradient-avatar-2"},pet:{name:"\u5e74\u7cd5",breed:"\u5e03\u5076",tone:"green"},body:"\u5e74\u7cd5\u6700\u8fd1\u5b66\u4f1a\u4e86\u4e00\u4e2a\u65b0\u6280\u80fd \u2014\u2014 #\u5f00\u62bd\u5c49\u3002\u6211\u4eec\u5bb6\u6240\u6709\u62bd\u5c49\u73b0\u5728\u90fd\u5f97\u52a0\u513f\u7ae5\u9501\u3002\u6c42\u95ee\u5404\u4f4d\u94f2\u5c4e\u5b98,\u732b\u54aa\u6210\u7cbe\u4e86\u600e\u4e48\u529e?",topics:["\u5f00\u62bd\u5c49","\u732b\u54aa"],mediaTone:"pet-2",locationText:"\u4e0a\u6d77 \xb7 \u9759\u5b89\u533a",timeText:"15 \u5206\u949f\u524d",counts:{likes:87,comments:12},likedByMe:!1},{_id:"p3",author:{id:"u3",name:"Lucky \u4e4b\u5bb6",avatarKey:"gradient-avatar-3"},pet:{name:"Lucky",breed:"\u67ef\u57fa",tone:"gold"},body:"\u7b2c\u4e00\u6b21\u5e26 Lucky \u53c2\u52a0\u5ba0\u7269\u751f\u65e5\u4f1a,\u8ba4\u8bc6\u4e86 4 \u4e2a\u65b0\u670b\u53cb,\u56de\u5bb6\u7d2f\u762b\u4e86 #\u793e\u4ea4\u725b\u903c\u8bc1",topics:["\u5ba0\u7269\u751f\u65e5\u4f1a","\u793e\u4ea4\u725b\u903c\u8bc1"],mediaTone:"pet-3",sticker:"3 \u5c81\u751f\u65e5\u4f1a",locationText:"\u4e0a\u6d77 \xb7 \u5f90\u6c47\u533a",timeText:"1 \u5c0f\u65f6\u524d",counts:{likes:256,comments:42},likedByMe:!0}],s=[(0,r.A)((0,r.A)({},i[0]),{},{ownerName:"\u963f\u5e03\u7684\u5bb6\u957f",isMine:!0,isFollowing:!1,isFriend:!1,distanceText:"260m",online:!0}),{_id:"pet_corgi",ownerId:"u3",name:"Lucky",species:"dog",breed:"\u67ef\u57fa",ageText:"3 \u5c81",distanceText:"420m",avatarKey:"gradient-avatar-3",photoKey:"photo-green",ownerName:"Lucky \u4e4b\u5bb6",isFollowing:!0,isFriend:!0,tags:["\u7cbe\u529b\u65fa\u76db","\u4f1a\u63a5\u98de\u76d8"],mood:"\u627e\u73a9\u4f34",online:!0},{_id:"pet_shiba",ownerId:"u4",name:"\u8c46\u5305",species:"dog",breed:"\u67f4\u72ac",ageText:"1 \u5c81\u534a",distanceText:"530m",avatarKey:"gradient-avatar-6",photoKey:"photo-pink",ownerName:"\u8c46\u5305\u5988",isFollowing:!1,isFriend:!1,tags:["\u6162\u70ed","\u7231\u8ffd\u7403"],mood:"\u60f3\u95fb\u65b0\u670b\u53cb"},{_id:"pet_samoyed",ownerId:"u5",name:"\u767d\u6843",species:"dog",breed:"\u8428\u6469\u8036",ageText:"4 \u5c81",distanceText:"780m",avatarKey:"gradient-avatar-2",photoKey:"photo-blue",ownerName:"\u767d\u6843\u5bb6",isFollowing:!0,isFriend:!1,tags:["\u6e29\u67d4","\u9002\u5408\u65b0\u624b"],mood:"\u516c\u56ed\u6563\u6b65\u4e2d"},{_id:"pet_mocha",ownerId:"u6",name:"\u6469\u5361",species:"cat",breed:"\u82f1\u77ed",ageText:"5 \u5c81",distanceText:"960m",avatarKey:"gradient-avatar-5",photoKey:"photo-gold",ownerName:"\u6469\u5361\u5bb6",isFollowing:!1,isFriend:!1,tags:["\u5b89\u9759\u56f4\u89c2","\u4eb2\u4eba"],mood:"\u6b63\u5728\u8f66\u91cc\u770b\u70ed\u95f9"}],c=[{id:"a1",name:"\u5976\u6cb9",avatarKey:"gradient-avatar-1",live:!0},{id:"a2",name:"\u4e50\u4e50\u5bb6",avatarKey:"gradient-avatar-2"},{id:"a3",name:"Lucky",avatarKey:"gradient-avatar-3",live:!0},{id:"a4",name:"\u8c46\u5305\u5988",avatarKey:"gradient-avatar-4"},{id:"a5",name:"\u5c0f\u4e03",avatarKey:"gradient-avatar-5"}],u=[{_id:"c1",type:"single",title:"\u4e50\u4e50\u5bb6",petName:"\u5e74\u7cd5",avatarKey:"gradient-avatar-2",preview:"\u521a\u770b\u5230\u4f60\u53d1\u7684\u6ee8\u6c5f\u516c\u56ed,\u5468\u672b\u8fd8\u53bb\u5417?",timeText:"\u73b0\u5728",unreadCount:3,online:!0},{_id:"c3",type:"single",title:"Lucky \u4e4b\u5bb6",petName:"Lucky",avatarKey:"gradient-avatar-3",preview:"Lucky \u770b\u5230\u5976\u6614\u7684\u89c6\u9891\u4e4b\u540e\u4e00\u76f4\u76ef\u7740\u624b\u673a\u3002",timeText:"\u6628\u5929",unreadCount:0},{_id:"c4",type:"system",title:"\u6c6a\u5708\u5c0f\u52a9\u624b",avatarKey:"gradient-avatar-4",preview:"\u4f60\u7684\u52a8\u6001\u83b7\u5f97\u4e86 24 \u4e2a\u65b0\u7684\u559c\u6b22\u3002",timeText:"\u5468\u4e00",unreadCount:1,muted:!0}]},1926:function(n,e,t){t.d(e,{E$:function(){return v},SO:function(){return y},r7:function(){return m}});var r=t(1212),a=t(9379),i=t(436),o=t(467),s=t(9251),c=t(4282),u=t(5366),l=t(5313),f=t(4177);function d(n,e){return p.apply(this,arguments)}function p(){return p=(0,o.A)((0,r.A)().m(function n(e,t){var o,s,u;return(0,r.A)().w(function(n){while(1)switch(n.n){case 0:return o=[e.avatarUrl||""].concat((0,i.A)(t.map(function(n){return n.photoUrl||""}))),n.n=1,(0,c.f0)(o);case 1:return s=n.v,u=function(n){return n&&s.has(n)?s.get(n)||"":n},n.a(2,{user:(0,a.A)((0,a.A)({},e),{},{avatarUrl:u(e.avatarUrl)}),pets:t.map(function(n){return(0,a.A)((0,a.A)({},n),{},{photoUrl:u(n.photoUrl)})})})}},n)})),p.apply(this,arguments)}function v(n){return h.apply(this,arguments)}function h(){return h=(0,o.A)((0,r.A)().m(function n(e){var t;return(0,r.A)().w(function(n){while(1)switch(n.p=n.n){case 0:if((0,s.n)()){n.n=1;break}return n.a(2,{user:u.SW,pets:u.LT});case 1:return n.p=1,n.n=2,(0,s.k)("profileGet",e?{userId:e}:{});case 2:if(t=n.v,t.user){n.n=3;break}return n.a(2,{user:(0,f.h)(null),pets:[]});case 3:return n.a(2,d((0,f.h)(t.user),t.pets||[]));case 4:return n.p=4,n.v,n.a(2,{user:u.SW,pets:u.LT})}},n,null,[[1,4]])})),h.apply(this,arguments)}function m(n){return w.apply(this,arguments)}function w(){return w=(0,o.A)((0,r.A)().m(function n(e){var t,i,o;return(0,r.A)().w(function(n){while(1)switch(n.n){case 0:if((0,s.n)()){n.n=1;break}return t=(0,a.A)((0,a.A)({},u.SW),e),(0,l.ZU)("profile"),n.a(2,t);case 1:return n.n=2,(0,s.k)("profileUpdate",{patch:e});case 2:return i=n.v,n.n=3,d((0,f.h)(i.user),[]);case 3:return o=n.v.user,(0,l.ZU)("profile"),n.a(2,o)}},n)})),w.apply(this,arguments)}function y(){return A.apply(this,arguments)}function A(){return A=(0,o.A)((0,r.A)().m(function n(){var e;return(0,r.A)().w(function(n){while(1)switch(n.n){case 0:if((0,s.n)()){n.n=1;break}return n.a(2,u.LT);case 1:return n.n=2,(0,s.k)("petList",{});case 2:return e=n.v,n.n=3,d(u.SW,e.list||[]);case 3:return n.a(2,n.v.pets)}},n)})),A.apply(this,arguments)}},3810:function(n,e,t){t.d(e,{Cr:function(){return v},So:function(){return m},wA:function(){return d}});var r=t(1212),a=t(9379),i=t(467),o=t(9251),s=t(4282),c=t(5313),u={following:0,followers:0,friends:0};function l(n){return f.apply(this,arguments)}function f(){return f=(0,i.A)((0,r.A)().m(function n(e){var t,i;return(0,r.A)().w(function(n){while(1)switch(n.n){case 0:return n.n=1,(0,s.f0)(e.map(function(n){return n.avatarUrl||""}));case 1:return t=n.v,i=function(n){return n&&t.has(n)?t.get(n)||"":n},n.a(2,e.map(function(n){return(0,a.A)((0,a.A)({},n),{},{avatarUrl:i(n.avatarUrl)})}))}},n)})),f.apply(this,arguments)}function d(n){return p.apply(this,arguments)}function p(){return p=(0,i.A)((0,r.A)().m(function n(e){var t,a,i;return(0,r.A)().w(function(n){while(1)switch(n.p=n.n){case 0:if((0,o.n)()){n.n=1;break}return n.a(2,{list:[],counts:u});case 1:return n.p=1,n.n=2,(0,o.k)("followList",{type:e});case 2:return t=n.v,n.n=3,l(t.list||[]);case 3:return a=n.v,i=t.counts||u,n.a(2,{list:a,counts:i});case 4:return n.p=4,n.v,n.a(2,{list:[],counts:u})}},n,null,[[1,4]])})),p.apply(this,arguments)}function v(n){return h.apply(this,arguments)}function h(){return h=(0,i.A)((0,r.A)().m(function n(e){var t;return(0,r.A)().w(function(n){while(1)switch(n.p=n.n){case 0:if((0,o.n)()){n.n=1;break}return n.a(2,[]);case 1:return n.p=1,n.n=2,(0,o.k)("userList",{keyword:e||""});case 2:return t=n.v,n.a(2,l(t.list||[]));case 3:return n.p=3,n.v,n.a(2,[])}},n,null,[[1,3]])})),h.apply(this,arguments)}function m(n,e){return w.apply(this,arguments)}function w(){return w=(0,i.A)((0,r.A)().m(function n(e,t){var a,i;return(0,r.A)().w(function(n){while(1)switch(n.n){case 0:if(!(0,o.n)()){n.n=2;break}return n.n=1,(0,o.k)("followToggle",{targetUserId:e,follow:t});case 1:i=n.v,n.n=3;break;case 2:i={following:t,mutual:!1};case 3:return a=i,(0,c.ZU)("profile"),n.a(2,a)}},n)})),w.apply(this,arguments)}},5313:function(n,e,t){t.d(e,{Fo:function(){return h},Xl:function(){return d},ZU:function(){return f},aQ:function(){return l},bE:function(){return g},bI:function(){return b},dp:function(){return v}});var r=t(5544),a=t(436),i=t(758),o=t.n(i),s=3e4,c=new Map,u=new Set;function l(n){c.set(n,Date.now()),u.delete(n)}function f(){for(var n=arguments.length,e=new Array(n),t=0;t1&&void 0!==arguments[1]?arguments[1]:s;if(u.has(n))return!0;var t=c.get(n);return void 0===t||Date.now()-t>e}var p="wq:postLike";function v(n){o().eventCenter.trigger(p,n)}function h(n){return o().eventCenter.on(p,n),function(){return o().eventCenter.off(p,n)}}var m=6e5,w=100,y=new Map;function A(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Date.now();if(y.forEach(function(e,t){e.expiresAt<=n&&y.delete(t)}),!(y.size<=w)){var e=y.size-w;(0,a.A)(y.entries()).sort(function(n,e){return n[1].lastAccess-e[1].lastAccess}).slice(0,e).forEach(function(n){var e=(0,r.A)(n,1),t=e[0];return y.delete(t)})}}function g(n){if(null!==n&&void 0!==n&&n._id){var e=Date.now();y.set(n._id,{post:n,expiresAt:e+m,lastAccess:e}),A(e)}}function b(n){if(n){var e=y.get(n);if(e){var t=Date.now();if(!(e.expiresAt<=t))return e.lastAccess=t,e.post;y.delete(n)}}}},9545:function(n,e,t){t.d(e,{OZ:function(){return c},Vw:function(){return s},X_:function(){return u}});var r=t(758),a=t.n(r),i=null,o="wq:homeTabRequest";function s(n){i=n,a().eventCenter.trigger(o,n)}function c(){var n=i;return i=null,n}function u(n){return a().eventCenter.on(o,n),function(){return a().eventCenter.off(o,n)}}},5596:function(n,e,t){t.d(e,{HQ:function(){return x},oH:function(){return b},q7:function(){return _},wV:function(){return j}});var r=t(1212),a=t(5544),i=t(467),o=t(2284),s=t(6540),c=t(758),u=t.n(c),l=t(3427),f=t(5366),d=t(9545),p="wq:session",v=null,h=null,m=new Set;function w(){try{var n=u().getStorageSync(p);return n&&"object"===(0,o.A)(n)?n:null}catch(n){return null}}function y(n){try{u().setStorageSync(p,n)}catch(n){}}function A(){if(v)return v;var n=w();return n?(v=n,n):f.SW}function g(n){v=n,y(n),m.forEach(function(e){return e(n)})}function b(){var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return!n&&v?Promise.resolve(v):(!n&&h||(h=(0,l.iD)().then(function(n){var e=n.user;return g(e),e}).catch(function(){return A()}).finally(function(){h=null})),h)}function k(n){g(n)}function _(){v=null;try{u().removeStorageSync(p)}catch(n){}m.forEach(function(n){return n(f.SW)})}function x(){return S.apply(this,arguments)}function S(){return S=(0,i.A)((0,r.A)().m(function n(){var e,t,a=arguments;return(0,r.A)().w(function(n){while(1)switch(n.n){case 0:return e=a.length>0&&void 0!==a[0]?a[0]:"\u8bf7\u5148\u5b8c\u6210\u767b\u5f55\u8d44\u6599",n.n=1,b();case 1:if(t=n.v,(0,l.nB)()||!t.profileCompleted){n.n=2;break}return n.a(2,!0);case 2:return(0,d.Vw)("profile"),u().showToast({title:e,icon:"none"}),n.a(2,!1)}},n)})),S.apply(this,arguments)}function j(){var n=(0,s.useState)(A),e=(0,a.A)(n,2),t=e[0],r=e[1];return(0,s.useEffect)(function(){return m.add(r),b().then(r),function(){m.delete(r)}},[]),{user:t,setUser:k}}},4177:function(n,e,t){t.d(e,{h:function(){return i}});var r=6;function a(n){for(var e=n||"",t=5381,a=0;a>>=0;return"gradient-avatar-".concat(t%r+1)}function i(n){var e,t,r,i,o,s,c;return{_id:(null===n||void 0===n?void 0:n._id)||"",openid:null===n||void 0===n?void 0:n.openid,nickname:(null===n||void 0===n?void 0:n.nickname)||"\u5ba0\u7269\u8fbe\u4eba",handle:(null===n||void 0===n?void 0:n.handle)||"",avatarKey:(null===n||void 0===n?void 0:n.avatarKey)||a((null===n||void 0===n?void 0:n._id)||(null===n||void 0===n?void 0:n.openid)||(null===n||void 0===n?void 0:n.nickname)),avatarUrl:(null===n||void 0===n?void 0:n.avatarUrl)||"",profileCompleted:Boolean(null===n||void 0===n?void 0:n.profileCompleted),location:(null===n||void 0===n?void 0:n.location)||"",yearsWithPets:(null===n||void 0===n?void 0:n.yearsWithPets)||0,level:(null===n||void 0===n?void 0:n.level)||1,bio:(null===n||void 0===n?void 0:n.bio)||"",verified:Boolean(null===n||void 0===n?void 0:n.verified),stats:{posts:(null===n||void 0===n||null===(e=n.stats)||void 0===e?void 0:e.posts)||0,following:(null===n||void 0===n||null===(t=n.stats)||void 0===t?void 0:t.following)||0,followers:(null===n||void 0===n||null===(r=n.stats)||void 0===r?void 0:r.followers)||0},preferences:{notifications:null===(i=null===n||void 0===n||null===(o=n.preferences)||void 0===o?void 0:o.notifications)||void 0===i||i,nearbyVisible:null===(s=null===n||void 0===n||null===(c=n.preferences)||void 0===c?void 0:c.nearbyVisible)||void 0===s||s}}}}}]); \ No newline at end of file diff --git a/dist/common.wxss b/dist/common.wxss index 3453c28..a7d69bf 100644 --- a/dist/common.wxss +++ b/dist/common.wxss @@ -1 +1 @@ -.custom-nav{-webkit-box-sizing:border-box;box-sizing:border-box;min-height:108rpx;padding-left:40rpx;position:relative;z-index:20}.custom-nav__row{display:-ms-flexbox;display:flex;height:108rpx;-ms-flex-align:end;align-items:flex-end;-webkit-box-sizing:border-box;box-sizing:border-box;gap:24rpx;padding-bottom:16rpx}.custom-nav__left{-ms-flex:0 0 0px;flex:0 0 0;height:0;min-width:0;overflow:hidden;pointer-events:none;visibility:hidden;width:0}.custom-nav__leading{display:-ms-flexbox;display:flex;min-width:76rpx;-ms-flex-align:center;align-items:center}.custom-nav__title{color:#f0e9ff;-ms-flex:1;flex:1;font-family:Space Grotesk,Inter,system-ui,sans-serif;font-size:60rpx;font-weight:700;letter-spacing:0;line-height:1}.custom-nav__title--compact{font-size:36rpx;font-weight:600;text-align:center}.page-shell{background:radial-gradient(ellipse 70% 50% at 25% 0,rgba(216,180,255,.1),transparent 60%),radial-gradient(ellipse 60% 50% at 75% 100%,rgba(255,179,200,.08),transparent 60%),-webkit-gradient(linear,left top,left bottom,from(#1c1442),color-stop(60%,#14102b),to(#0f0a23));background:radial-gradient(ellipse 70% 50% at 25% 0,rgba(216,180,255,.1),transparent 60%),radial-gradient(ellipse 60% 50% at 75% 100%,rgba(255,179,200,.08),transparent 60%),linear-gradient(180deg,#1c1442,#14102b 60%,#0f0a23);color:#f0e9ff;min-height:100vh;overflow:hidden}.page-shell__scroll{height:100vh}.page-shell__inner{-webkit-box-sizing:border-box;box-sizing:border-box;min-height:100vh}.bottom-tabbar{background:rgba(20,16,43,.88);border-top:2rpx solid rgba(216,180,255,.06);bottom:0;display:-ms-flexbox;display:flex;height:176rpx;left:0;position:fixed;right:0;z-index:60;-ms-flex-align:center;align-items:center;-ms-flex-pack:distribute;-webkit-box-sizing:border-box;box-sizing:border-box;justify-content:space-around}.bottom-tabbar__item{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-direction:column;flex-direction:column;position:relative;-ms-flex-align:center;align-items:center;color:#8a7aab;gap:8rpx}.bottom-tabbar__fab:active .bottom-tabbar__fab-inner,.bottom-tabbar__item:active .bottom-tabbar__icon{-webkit-transform:scale(.96);-ms-transform:scale(.96);transform:scale(.96)}.bottom-tabbar__label{color:#8a7aab;font:500 20rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;letter-spacing:0}.bottom-tabbar__label--active{color:#d8b4ff}.bottom-tabbar__fab{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-pack:center;justify-content:center;margin-top:-36rpx}.bottom-tabbar__fab-inner{background:linear-gradient(135deg,#d8b4ff,#ffb3c8);border-radius:32rpx;display:-ms-flexbox;display:flex;height:104rpx;width:104rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;-webkit-box-shadow:0 20rpx 48rpx rgba(216,180,255,.3);box-shadow:0 20rpx 48rpx rgba(216,180,255,.3);color:#2a1d10;justify-content:center;-webkit-transition:-webkit-transform .2s;transition:-webkit-transform .2s;transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.bottom-tabbar__icon-wrap{position:relative}.bottom-tabbar__fab-icon,.bottom-tabbar__icon{background-position:50%;background-repeat:no-repeat;background-size:48rpx 48rpx;height:48rpx;-webkit-transition:-webkit-transform .2s;transition:-webkit-transform .2s;transition:transform .2s;transition:transform .2s,-webkit-transform .2s;width:48rpx}.bottom-tabbar__icon--plaza{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%238a7aab' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='m16.24 7.76-2.12 6.36-6.36 2.12 2.12-6.36z'/%3E%3C/svg%3E")}.bottom-tabbar__item--active .bottom-tabbar__icon--plaza{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23d8b4ff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='m16.24 7.76-2.12 6.36-6.36 2.12 2.12-6.36z'/%3E%3C/svg%3E")}.bottom-tabbar__icon--nearby{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%238a7aab' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")}.bottom-tabbar__item--active .bottom-tabbar__icon--nearby{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23d8b4ff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")}.bottom-tabbar__icon--messages{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%238a7aab' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3C/svg%3E")}.bottom-tabbar__item--active .bottom-tabbar__icon--messages{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23d8b4ff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3C/svg%3E")}.bottom-tabbar__icon--profile{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%238a7aab' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E")}.bottom-tabbar__item--active .bottom-tabbar__icon--profile{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23d8b4ff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E")}.bottom-tabbar__fab-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%232a1d10' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.4' viewBox='0 0 24 24'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E")}.bottom-tabbar__dot{background:#ffb3c8;border:3rpx solid #14102b;border-radius:50%;height:16rpx;position:absolute;right:-2rpx;top:0;width:16rpx}.icon{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:inherit;font-family:Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;font-weight:700;justify-content:center;line-height:1;text-align:center}.icon--more{font-size:24rpx!important;letter-spacing:2rpx}.icon--info{border:2rpx solid;border-radius:50%;font-size:20rpx!important}.search-bar{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;background:rgba(45,34,85,.4);border:2rpx solid rgba(216,180,255,.06);border-radius:24rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#8a7aab;gap:20rpx;margin:0 40rpx 24rpx;padding:20rpx 28rpx}.search-bar__input{color:#f0e9ff;-ms-flex:1;flex:1;font:400 26rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.search-bar__placeholder{color:#8a7aab}.seg-tabs{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:44rpx;overflow-x:auto;padding:0 40rpx 24rpx}.seg-tabs__item{color:#8a7aab;font:500 28rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:12rpx 0;position:relative;-webkit-transition:color .2s;transition:color .2s}.seg-tabs__item--active{color:#f0e9ff;font-weight:600}.seg-tabs__item--active::after{background:-webkit-gradient(linear,left top,right top,from(#d8b4ff),to(#ffb3c8));background:linear-gradient(90deg,#d8b4ff,#ffb3c8);border-radius:4rpx;bottom:-16rpx;content:"";height:6rpx;left:50%;position:absolute;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);width:44rpx}.seg-tabs__badge{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;background:#ffb3c8;border-radius:18rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#2a1d10;font:700 20rpx/36rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:36rpx;justify-content:center;margin-left:8rpx;min-width:36rpx;padding:0 10rpx}.chip{-ms-flex-negative:0;display:-ms-flexbox;display:flex;flex-shrink:0;-ms-flex-align:center;align-items:center;background:rgba(45,34,85,.4);border:2rpx solid rgba(216,180,255,.1);border-radius:19998rpx;color:#c7b9e0;font:500 24rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;gap:8rpx;padding:14rpx 24rpx;-webkit-transition:all .2s;transition:all .2s}.chip--active{background:-webkit-gradient(linear,left top,right top,from(#d8b4ff),to(#ffb3c8));background:linear-gradient(90deg,#d8b4ff,#ffb3c8);border-color:transparent;color:#2a1d10}.chip__prefix{font-weight:700}.avatar{position:relative;-ms-flex-negative:0;display:-ms-flexbox;display:flex;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;border-radius:50%;color:#2a1d10;justify-content:center;overflow:visible}.avatar--image{background:#251c4a}.avatar__image{border-radius:50%;height:100%;width:100%}.avatar--sm{height:60rpx;width:60rpx}.avatar--md{height:80rpx;width:80rpx}.avatar--lg{height:100rpx;width:100rpx}.avatar--xl{-webkit-box-shadow:0 16rpx 40rpx rgba(216,180,255,.3);box-shadow:0 16rpx 40rpx rgba(216,180,255,.3);height:128rpx;width:128rpx}.avatar__label{font-family:Space Grotesk,Inter,system-ui,sans-serif;font-size:32rpx;font-weight:700}.avatar--xl .avatar__label{font-size:48rpx}.avatar__online{background:#8fe5b5;border:4rpx solid #14102b;border-radius:50%;bottom:0;height:28rpx;position:absolute;right:0;width:28rpx}.avatar__pet-tag{background:#14102b;border-radius:50%;bottom:-4rpx;display:-ms-flexbox;display:flex;height:44rpx;position:absolute;right:-4rpx;width:44rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;border:4rpx solid #14102b;font-size:24rpx;justify-content:center}.toast-overlay{color:#ffb3c8;-webkit-filter:drop-shadow(0 8rpx 40rpx rgba(255,138,171,.6));filter:drop-shadow(0 8rpx 40rpx rgba(255,138,171,.6));left:50%;pointer-events:none;position:fixed;top:50%;-webkit-transform:translate(-50%,-50%) scale(0);-ms-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);-webkit-transition:-webkit-transform .28s cubic-bezier(.34,1.56,.64,1);transition:-webkit-transform .28s cubic-bezier(.34,1.56,.64,1);transition:transform .28s cubic-bezier(.34,1.56,.64,1);transition:transform .28s cubic-bezier(.34,1.56,.64,1),-webkit-transform .28s cubic-bezier(.34,1.56,.64,1);z-index:80}.toast-overlay--show{-webkit-transform:translate(-50%,-50%) scale(1);-ms-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1)}.post-card{-webkit-animation:softAppear .26s ease-out both;animation:softAppear .26s ease-out both;background:rgba(31,23,66,.78);border:2rpx solid rgba(216,180,255,.08);border-radius:36rpx;-webkit-box-shadow:0 28rpx 64rpx rgba(0,0,0,.16);box-shadow:0 28rpx 64rpx rgba(0,0,0,.16);margin:0 32rpx 28rpx;padding:32rpx}.post-card__head{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:20rpx}.post-card__meta{-ms-flex:1;flex:1;min-width:0}.post-card__name-row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:12rpx}.post-card__name{color:#f0e9ff;font:600 28rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.post-card__pet{background:rgba(216,180,255,.12);border-radius:12rpx;color:#d8b4ff;font:500 20rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:4rpx 12rpx}.post-card__pet--green{background:rgba(143,229,181,.12);color:#8fe5b5}.post-card__pet--gold{background:rgba(255,217,168,.15);color:#ffd9a8}.post-card__sub{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;color:#8a7aab;font:400 22rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;gap:16rpx;margin-top:12rpx}.post-card__dot{background:#8a7aab;border-radius:50%;height:8rpx;width:8rpx}.post-card__more{display:-ms-flexbox;display:flex;height:56rpx;width:56rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#8a7aab;justify-content:center}.post-card__body{color:#f0e9ff;display:block;font:400 28rpx/1.55 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:24rpx}.post-card__media{border-radius:24rpx;height:356rpx;margin-top:24rpx;overflow:hidden;position:relative}.post-card__photos{display:grid;gap:12rpx;grid-template-columns:repeat(3,1fr);margin-top:24rpx}.post-card__photos--1{grid-template-columns:1fr}.post-card__photos--2{grid-template-columns:repeat(2,1fr)}.post-card__photo{aspect-ratio:1;background:rgba(45,34,85,.4);border-radius:24rpx;width:100%}.post-card__photos--1 .post-card__photo{aspect-ratio:4/3}.post-card__media--pet-1{background:radial-gradient(circle at 30% 40%,rgba(255,217,168,.6),transparent 50%),linear-gradient(135deg,#6b4f9a,#3a2a6a)}.post-card__media--pet-2{background:radial-gradient(circle at 70% 50%,rgba(255,179,200,.5),transparent 60%),linear-gradient(135deg,#4a3a7a,#251c4a)}.post-card__media--pet-3{background:radial-gradient(circle at 50% 30%,rgba(143,229,181,.4),transparent 60%),linear-gradient(135deg,#5a4a8a,#2a1f4a)}.post-card__silhouette{background:radial-gradient(ellipse at 50% 30%,hsla(0,0%,100%,.18) 0,transparent 60%);border-radius:55% 55% 45% 45%;bottom:20%;height:180rpx;left:50%;position:absolute;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);width:240rpx}.post-card__sticker{background:rgba(0,0,0,.4);border-radius:19998rpx;bottom:24rpx;color:#f0e9ff;font:500 20rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;left:24rpx;padding:8rpx 20rpx;position:absolute}.post-card__actions{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;color:#8a7aab;font:500 24rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;gap:10rpx;margin-top:24rpx;-webkit-transition:color .2s;transition:color .2s}.post-card__actions .icon--comment{margin-left:30rpx}.post-card__actions--liked .icon--heart,.post-card__actions--liked .icon--heart + text{color:#ffb3c8}.post-card__actions .icon{height:36rpx;width:36rpx;-ms-flex-negative:0;background-position:50%;background-repeat:no-repeat;background-size:36rpx 36rpx;flex-shrink:0}.post-card__actions .icon--heart{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%238a7aab' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78'/%3E%3C/svg%3E")}.post-card__actions--liked .icon--heart{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23ffb3c8' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78'/%3E%3C/svg%3E")}.post-card__actions .icon--comment{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%238a7aab' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3C/svg%3E")} \ No newline at end of file +.icon{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:inherit;font-family:Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;font-weight:700;justify-content:center;line-height:1;text-align:center}.icon--info{border:2rpx solid;border-radius:50%;font-size:20rpx!important}.publish-icon{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:inherit;font-family:Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;font-weight:700;justify-content:center;line-height:1;text-align:center}.publish-icon--info{border:2rpx solid;border-radius:50%;font-size:20rpx!important}.publish-avatar{position:relative;-ms-flex-negative:0;display:-ms-flexbox;display:flex;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;border-radius:50%;color:#2a1d10;justify-content:center;overflow:visible}.publish-avatar--sm{height:60rpx;width:60rpx}.publish-avatar--md{height:80rpx;width:80rpx}.publish-avatar__img{border-radius:50%;height:100%;width:100%}.publish-avatar__label{font-family:Space Grotesk,Inter,system-ui,sans-serif;font-size:32rpx;font-weight:700}.publish-avatar--gradient-avatar-1{background:linear-gradient(135deg,#ffb3c8,#ffd9a8)}.publish-avatar--gradient-avatar-2{background:linear-gradient(135deg,#d8b4ff,#a4d4ff)}.publish-avatar--gradient-avatar-3{background:linear-gradient(135deg,#8fe5b5,#d8b4ff)}.publish-avatar--gradient-avatar-4{background:linear-gradient(135deg,#ffd9a8,#ffb3c8)}.publish-avatar--gradient-avatar-5{background:linear-gradient(135deg,#a4d4ff,#ffd9a8)}.publish-avatar--gradient-avatar-6{background:linear-gradient(135deg,#ffb3c8,#d8b4ff)}.publish-switch{background:#8a7aab;border-radius:22rpx;height:44rpx;position:relative;-webkit-transition:background .2s;transition:background .2s;width:72rpx;-ms-flex-negative:0;flex-shrink:0}.publish-switch::after{background:#f0e9ff;border-radius:50%;content:"";height:36rpx;left:4rpx;position:absolute;top:4rpx;-webkit-transition:-webkit-transform .2s cubic-bezier(.2,0,0,1);transition:-webkit-transform .2s cubic-bezier(.2,0,0,1);transition:transform .2s cubic-bezier(.2,0,0,1);transition:transform .2s cubic-bezier(.2,0,0,1),-webkit-transform .2s cubic-bezier(.2,0,0,1);width:36rpx}.publish-switch--checked{background:#d8b4ff}.publish-switch--checked::after{-webkit-transform:translateX(28rpx);-ms-transform:translateX(28rpx);transform:translateX(28rpx)}.publish-chip{-ms-flex-negative:0;display:-ms-flexbox;display:flex;flex-shrink:0;-ms-flex-align:center;align-items:center;background:rgba(45,34,85,.4);border:2rpx solid rgba(216,180,255,.1);border-radius:19998rpx;color:#c7b9e0;font:500 24rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;gap:8rpx;padding:14rpx 24rpx;-webkit-transition:all .2s;transition:all .2s}.publish-chip--active{background:-webkit-gradient(linear,left top,right top,from(#d8b4ff),to(#ffb3c8));background:linear-gradient(90deg,#d8b4ff,#ffb3c8);border-color:transparent;color:#2a1d10}.publish-chip__prefix{font-weight:700}.publish-bottom-sheet-bg{display:-ms-flexbox;display:flex;inset:0;position:fixed;z-index:90;-ms-flex-align:end;align-items:flex-end;background:rgba(10,7,25,.6)}.publish-bottom-sheet-bg--centered{-ms-flex-align:center;align-items:center;-ms-flex-pack:center;-webkit-box-sizing:border-box;box-sizing:border-box;justify-content:center;padding:48rpx}.publish-bottom-sheet{-webkit-animation:slideUp .28s cubic-bezier(.2,0,0,1);animation:slideUp .28s cubic-bezier(.2,0,0,1);background:#251c4a;border-radius:48rpx 48rpx 0 0;border-top:2rpx solid rgba(216,180,255,.1);-webkit-box-sizing:border-box;box-sizing:border-box;padding:32rpx 32rpx 64rpx;width:100%}.publish-bottom-sheet-bg--centered .publish-bottom-sheet{border-radius:48rpx;max-width:640rpx;padding:64rpx 48rpx}.publish-visibility-sheet__grabber{background:#8a7aab;border-radius:4rpx;height:8rpx;margin:0 auto 32rpx;opacity:.4;width:72rpx}.publish-visibility-sheet__desc,.publish-visibility-sheet__title{display:block;padding:0 8rpx}.publish-visibility-sheet__title{color:#f0e9ff;font:600 32rpx/1 Space Grotesk,Inter,system-ui,sans-serif}.publish-visibility-sheet__desc{color:#8a7aab;font:400 22rpx/1.4 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-bottom:20rpx;margin-top:12rpx}.publish-visibility-sheet__option{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;border-radius:24rpx;gap:24rpx;padding:24rpx 16rpx}.publish-visibility-sheet__option--checked{background:rgba(216,180,255,.08)}.publish-visibility-sheet__icon{border-radius:50%;display:-ms-flexbox;display:flex;height:72rpx;width:72rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#2a1d10;justify-content:center}.publish-visibility-sheet__icon--public{background:linear-gradient(135deg,#d8b4ff,#a4d4ff)}.publish-visibility-sheet__icon--friends{background:linear-gradient(135deg,#8fe5b5,#d8b4ff)}.publish-visibility-sheet__icon--private{background:linear-gradient(135deg,#ffb3c8,#ffd9a8)}.publish-visibility-sheet__text{-ms-flex:1;flex:1}.publish-visibility-sheet__name,.publish-visibility-sheet__sub{display:block}.publish-visibility-sheet__name{color:#f0e9ff;font:500 28rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.publish-visibility-sheet__sub{color:#8a7aab;font:400 22rpx/1.4 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:6rpx}.publish-visibility-sheet__check{border:4rpx solid #8a7aab;border-radius:50%;display:-ms-flexbox;display:flex;height:40rpx;width:40rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;-webkit-box-sizing:border-box;box-sizing:border-box;color:#2a1d10;justify-content:center}.publish-visibility-sheet__option--checked .publish-visibility-sheet__check{background:#d8b4ff;border-color:#d8b4ff}.seg-tabs{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:44rpx;overflow-x:auto;padding:0 40rpx 24rpx}.seg-tabs__item{color:#8a7aab;font:500 28rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:12rpx 0;position:relative;-webkit-transition:color .2s;transition:color .2s}.seg-tabs__item--active{color:#f0e9ff;font-weight:600}.seg-tabs__item--active::after{background:-webkit-gradient(linear,left top,right top,from(#d8b4ff),to(#ffb3c8));background:linear-gradient(90deg,#d8b4ff,#ffb3c8);border-radius:4rpx;bottom:-16rpx;content:"";height:6rpx;left:50%;position:absolute;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);width:44rpx}.seg-tabs__badge{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;background:#ffb3c8;border-radius:18rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#2a1d10;font:700 20rpx/36rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:36rpx;justify-content:center;margin-left:8rpx;min-width:36rpx;padding:0 10rpx}.avatar{position:relative;-ms-flex-negative:0;display:-ms-flexbox;display:flex;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;border-radius:50%;color:#2a1d10;justify-content:center;overflow:visible}.avatar--image{background:#251c4a}.avatar__image{border-radius:50%;height:100%;width:100%}.avatar--sm{height:60rpx;width:60rpx}.avatar--md{height:80rpx;width:80rpx}.avatar--lg{height:100rpx;width:100rpx}.avatar--xl{-webkit-box-shadow:0 16rpx 40rpx rgba(216,180,255,.3);box-shadow:0 16rpx 40rpx rgba(216,180,255,.3);height:128rpx;width:128rpx}.avatar__label{font-family:Space Grotesk,Inter,system-ui,sans-serif;font-size:32rpx;font-weight:700}.avatar--xl .avatar__label{font-size:48rpx}.avatar__online{background:#8fe5b5;border:4rpx solid #14102b;border-radius:50%;bottom:0;height:28rpx;position:absolute;right:0;width:28rpx}.avatar__pet-tag{background:#14102b;border-radius:50%;bottom:-4rpx;display:-ms-flexbox;display:flex;height:44rpx;position:absolute;right:-4rpx;width:44rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;border:4rpx solid #14102b;font-size:24rpx;justify-content:center}.profile-hero{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:28rpx;padding:40rpx 40rpx 32rpx}.profile-hero__info{-ms-flex:1;flex:1;min-width:0}.profile-hero__name-row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:12rpx}.profile-hero__name{color:#f0e9ff;font-family:Space Grotesk,Inter,system-ui,sans-serif;font-size:44rpx;font-weight:700;letter-spacing:0;line-height:1}.profile-hero__level{background:-webkit-gradient(linear,left top,right top,from(#d8b4ff),to(#ffb3c8));background:linear-gradient(90deg,#d8b4ff,#ffb3c8);border-radius:12rpx;color:#2a1d10;font:700 20rpx/1.2 Space Grotesk,Inter,system-ui,sans-serif;padding:4rpx 16rpx}.profile-hero__sub{color:#c7b9e0;display:block;font:400 24rpx/1.4 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:12rpx}.profile-hero__badges{display:-ms-flexbox;display:flex;gap:16rpx;margin-top:20rpx}.profile-hero__badge{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;background:rgba(45,34,85,.4);border:2rpx solid rgba(216,180,255,.08);border-radius:19998rpx;color:#c7b9e0;font:500 20rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;gap:8rpx;padding:8rpx 16rpx}.profile-hero__badge .icon{color:#d8b4ff}.toast-overlay{color:#ffb3c8;-webkit-filter:drop-shadow(0 8rpx 40rpx rgba(255,138,171,.6));filter:drop-shadow(0 8rpx 40rpx rgba(255,138,171,.6));left:50%;pointer-events:none;position:fixed;top:50%;-webkit-transform:translate(-50%,-50%) scale(0);-ms-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);-webkit-transition:-webkit-transform .28s cubic-bezier(.34,1.56,.64,1);transition:-webkit-transform .28s cubic-bezier(.34,1.56,.64,1);transition:transform .28s cubic-bezier(.34,1.56,.64,1);transition:transform .28s cubic-bezier(.34,1.56,.64,1),-webkit-transform .28s cubic-bezier(.34,1.56,.64,1);z-index:80}.toast-overlay--show{-webkit-transform:translate(-50%,-50%) scale(1);-ms-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1)}.post-card{-webkit-animation:softAppear .26s ease-out both;animation:softAppear .26s ease-out both;background:rgba(31,23,66,.78);border:2rpx solid rgba(216,180,255,.08);border-radius:36rpx;-webkit-box-shadow:0 28rpx 64rpx rgba(0,0,0,.16);box-shadow:0 28rpx 64rpx rgba(0,0,0,.16);margin:0 32rpx 28rpx;padding:32rpx}.post-card__head{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:20rpx}.post-card__meta{-ms-flex:1;flex:1;min-width:0}.post-card__more{-ms-flex-negative:0;flex-shrink:0;-ms-flex-item-align:start;align-self:flex-start;display:-ms-flexbox;display:flex;height:56rpx;width:64rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;border-radius:16rpx;color:#8a7aab;justify-content:center}.post-card__more-dots{font:700 32rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;letter-spacing:2rpx}.post-card__more:active{background:rgba(216,180,255,.1)}.post-card__name-row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:12rpx}.post-card__name{color:#f0e9ff;font:600 28rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.post-card__pet{background:rgba(216,180,255,.12);border-radius:12rpx;color:#d8b4ff;font:500 20rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:4rpx 12rpx}.post-card__pet--green{background:rgba(143,229,181,.12);color:#8fe5b5}.post-card__pet--gold{background:rgba(255,217,168,.15);color:#ffd9a8}.post-card__sub{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;color:#8a7aab;font:400 22rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;gap:16rpx;margin-top:12rpx}.post-card__dot{background:#8a7aab;border-radius:50%;height:8rpx;width:8rpx}.post-card__body{color:#f0e9ff;display:block;font:400 28rpx/1.55 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:24rpx}.post-card__photos{display:grid;gap:12rpx;grid-template-columns:repeat(3,1fr);margin-top:24rpx}.post-card__photos--1{grid-template-columns:1fr}.post-card__photos--2{grid-template-columns:repeat(2,1fr)}.post-card__photo{aspect-ratio:1;background:rgba(45,34,85,.4);border-radius:24rpx;width:100%}.post-card__photos--1 .post-card__photo{aspect-ratio:4/3}.post-card__actions{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;color:#8a7aab;font:500 24rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;gap:10rpx;margin-top:24rpx;-webkit-transition:color .2s;transition:color .2s}.post-card__actions .icon--comment{margin-left:30rpx}.post-card__actions--liked .icon--heart,.post-card__actions--liked .icon--heart + text{color:#ffb3c8}.post-card__actions .icon{height:36rpx;width:36rpx;-ms-flex-negative:0;background-position:50%;background-repeat:no-repeat;background-size:36rpx 36rpx;flex-shrink:0}.post-card__actions .icon--heart{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%238a7aab' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78'/%3E%3C/svg%3E")}.post-card__actions--liked .icon--heart{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23ffb3c8' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78'/%3E%3C/svg%3E")}.post-card__actions .icon--comment{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%238a7aab' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3C/svg%3E")}.stats-row{display:-ms-flexbox;display:flex;padding:0 40rpx 36rpx}.stats-row__item{-ms-flex:1;flex:1;text-align:center}.stats-row__label,.stats-row__num{display:block}.stats-row__num{color:#f0e9ff;font-family:Space Grotesk,Inter,system-ui,sans-serif;font-size:36rpx;font-weight:700;letter-spacing:0;line-height:1}.stats-row__label{color:#8a7aab;font:400 22rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:8rpx} \ No newline at end of file diff --git a/dist/custom-tab-bar/index.js b/dist/custom-tab-bar/index.js index e1b202f..df2bc90 100644 --- a/dist/custom-tab-bar/index.js +++ b/dist/custom-tab-bar/index.js @@ -1 +1 @@ -(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[777],{3241:function(){Component({})}},function(n){var o=function(o){return n(n.s=o)};o(3241)}]); \ No newline at end of file +Component({}); \ No newline at end of file diff --git a/dist/custom-tab-bar/index.json b/dist/custom-tab-bar/index.json index a8456c1..467ce29 100644 --- a/dist/custom-tab-bar/index.json +++ b/dist/custom-tab-bar/index.json @@ -1 +1,3 @@ -{"component":true} \ No newline at end of file +{ + "component": true +} diff --git a/dist/pages/chat/index.js b/dist/pages/chat/index.js index 5c51d9f..8af8c96 100644 --- a/dist/pages/chat/index.js +++ b/dist/pages/chat/index.js @@ -1 +1 @@ -"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[947],{5053:function(e,a,n){var t=n(8870),s=n(1212),c=n(467),r=n(5544),o=n(6540),i=n(758),l=n.n(i),u=n(118),h=n(374),d=n(3401),v=n(7745),m=n(9672),_=n(4848);function p(){var e=(0,h.v)(),a=e.statusBarHeight,n=e.safeBottom,t=(0,i.useRouter)(),p=t.params.conversationId||"",f=t.params.targetUserId||"",x=decodeURIComponent(t.params.title||"\u804a\u5929"),b=(0,o.useState)(p),S=(0,r.A)(b,2),j=S[0],w=S[1],N=(0,o.useState)(null),I=(0,r.A)(N,2),A=I[0],g=I[1],k=(0,o.useState)([]),y=(0,r.A)(k,2),U=y[0],B=y[1],C=(0,o.useState)(""),E=(0,r.A)(C,2),M=E[0],T=E[1],Y=(0,o.useState)(!1),z=(0,r.A)(Y,2),R=z[0],D=z[1],H=(0,o.useState)(0),J=(0,r.A)(H,2),K=J[0],O=J[1],G=(0,o.useRef)(null),P=function(){var e=(0,c.A)((0,s.A)().m(function e(){var a;return(0,s.A)().w(function(e){while(1)switch(e.n){case 0:return e.n=1,(0,m.fG)({conversationId:j||void 0,targetUserId:j?void 0:f||void 0});case 1:a=e.v,a.conversationId&&a.conversationId!==j&&w(a.conversationId),a.peer&&g(a.peer),B(a.messages),O(function(e){return e+1e5});case 2:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}();(0,o.useEffect)(function(){P()},[]),(0,i.useDidShow)(function(){G.current=setInterval(P,5e3)}),(0,i.useDidHide)(function(){G.current&&clearInterval(G.current)}),(0,o.useEffect)(function(){return function(){G.current&&clearInterval(G.current)}},[]);var W=function(){var e=(0,c.A)((0,s.A)().m(function e(){var a,n;return(0,s.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(a=M.trim(),a&&!R){e.n=1;break}return e.a(2);case 1:return D(!0),T(""),e.p=2,e.n=3,(0,m._z)(a,{conversationId:j||void 0,toUserId:j?void 0:f||void 0});case 3:return n=e.v,n.conversationId&&w(n.conversationId),e.n=4,P();case 4:e.n=6;break;case 5:e.p=5,e.v,l().showToast({title:"\u53d1\u9001\u5931\u8d25",icon:"none"}),T(a);case 6:return e.p=6,D(!1),e.f(6);case 7:return e.a(2)}},e,null,[[2,5,6,7]])}));return function(){return e.apply(this,arguments)}}(),q=(null===A||void 0===A?void 0:A.name)||x;return(0,_.jsxs)(u.Ss,{className:"chat",children:[(0,_.jsx)(u.Ss,{className:"chat__nav",style:{paddingTop:"".concat(a,"px")},children:(0,_.jsxs)(u.Ss,{className:"chat__nav-row",children:[(0,_.jsx)(u.Ss,{className:"chat__back",onClick:function(){return l().navigateBack()},children:(0,_.jsx)(d.A,{name:"chev",size:22,className:"chat__back-icon"})}),(0,_.jsx)(u.EY,{className:"chat__title",children:q}),(0,_.jsx)(u.Ss,{className:"chat__nav-spacer"})]})}),(0,_.jsx)(u.BM,{scrollY:!0,className:"chat__scroll",scrollTop:K,scrollWithAnimation:!0,enhanced:!0,showScrollbar:!1,children:(0,_.jsx)(u.Ss,{className:"chat__list",children:0===U.length?(0,_.jsx)(u.EY,{className:"chat__empty",children:"\u8fd8\u6ca1\u6709\u6d88\u606f\uff0c\u6253\u4e2a\u62db\u547c\u5427 \ud83d\udc4b"}):U.map(function(e){return(0,_.jsxs)(u.Ss,{className:"chat__row ".concat(e.fromMe?"chat__row--me":""),children:[e.fromMe?null:(0,_.jsx)(v.A,{avatarKey:null===A||void 0===A?void 0:A.avatarKey,avatarUrl:null===A||void 0===A?void 0:A.avatarUrl,size:"sm"}),(0,_.jsxs)(u.Ss,{className:"chat__bubble-wrap",children:[(0,_.jsx)(u.Ss,{className:"chat__bubble ".concat(e.fromMe?"chat__bubble--me":""),children:e.content}),(0,_.jsx)(u.EY,{className:"chat__time",children:e.timeText})]})]},e._id)})})}),(0,_.jsxs)(u.Ss,{className:"chat__input-bar",style:{paddingBottom:"".concat(Math.max(12,n),"px")},children:[(0,_.jsx)(u.pd,{className:"chat__input",value:M,placeholder:"\u53d1\u6d88\u606f\u2026",placeholderClass:"chat__input-ph",confirmType:"send",onInput:function(e){return T(e.detail.value)},onConfirm:W}),(0,_.jsx)(u.Ss,{className:"chat__send ".concat(M.trim()?"":"chat__send--disabled"),onClick:W,children:"\u53d1\u9001"})]})]})}var f={},x=(0,t.eU)(p,"pages/chat/index",{root:{cn:[]}},f||{});p&&p.behaviors&&(x.behaviors=(x.behaviors||[]).concat(p.behaviors));Page(x)}},function(e){var a=function(a){return e(e.s=a)};e.O(0,[907,96,76],function(){return a(5053)});e.O()}]); \ No newline at end of file +"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[947],{5053:function(e,n,t){var r=t(8870),a=t(9379),c=t(4765),s=t(1212),o=t(467),i=t(5544),u=t(436),l=t(2284),d=t(6540),f=t(758),h=t.n(f),m=t(118),v=t(374),p=t(3401),_=t(7745),g=t(9672),b=t(4282),A=t(5596),w=t(4848),S="wangquan_chat_messages:",k=300,x=30,I=3e3,j=12e3,y=6e4,T=12e3,N="chat-bottom",C=["\ud83d\udc36","\ud83d\udc31","\ud83e\udd70","\ud83d\ude02","\ud83d\udc4d","\u2764\ufe0f"];function E(e){var n=new Date(e),t=String(n.getHours()).padStart(2,"0"),r=String(n.getMinutes()).padStart(2,"0");return"".concat(t,":").concat(r)}function U(e,n){var t=new Map;e.forEach(function(e){var n=e._id||"".concat(e.fromMe?"me":"peer",":").concat(e.createdAt,":").concat(e.content);t.set(n,e)});var r=Array.from(t.values()).sort(function(e,n){var t=e.createdAt-n.createdAt;return t||e._id.localeCompare(n._id)});return"number"===typeof n?r.slice(-n):r}function R(e){var n=e.replace(/[^A-Za-z0-9_-]/g,"-");return"msg-".concat(n||"empty")}function M(e){var n="object"===(0,l.A)(e)&&e?String(e.errMsg||e.message||""):String(e||"");return n.toLowerCase().includes("cancel")}function z(e,n){console.error("[chat] ".concat(e),n)}function B(e,n,t){return new Promise(function(r,a){var c=setTimeout(function(){return a(new Error(t))},n);e.then(function(e){return r(e)}).catch(function(e){return a(e)}).finally(function(){return clearTimeout(c)})})}function D(e){return[e.conversationId?"".concat(S,"conv:").concat(e.conversationId):"",e.targetUserId?"".concat(S,"user:").concat(e.targetUserId):""].filter(Boolean)}function Y(e){var n=[];return e.forEach(function(e){try{var t=h().getStorageSync(e);Array.isArray(t)&&n.push.apply(n,(0,u.A)(t))}catch(e){}}),U(n,k)}function H(e,n){var t=U(n,k);e.forEach(function(e){try{h().setStorageSync(e,t)}catch(e){}})}function P(){var e=(0,v.v)(),n=e.statusBarHeight,t=e.safeBottom,r=(0,f.useRouter)(),l=r.params.conversationId||"",S=r.params.targetUserId||"",k=decodeURIComponent(r.params.title||"\u804a\u5929"),P=(0,d.useState)(l),F=(0,i.A)(P,2),G=(F[0],F[1]),J=(0,d.useState)(null),K=(0,i.A)(J,2),O=K[0],Q=K[1],V=(0,d.useState)([]),q=(0,i.A)(V,2),L=q[0],W=q[1],Z=(0,d.useState)(""),X=(0,i.A)(Z,2),$=X[0],ee=X[1],ne=(0,d.useState)(null),te=(0,i.A)(ne,2),re=te[0],ae=te[1],ce=(0,d.useState)(!0),se=(0,i.A)(ce,2),oe=se[0],ie=se[1],ue=(0,d.useState)(!1),le=(0,i.A)(ue,2),de=le[0],fe=le[1],he=(0,d.useState)(""),me=(0,i.A)(he,2),ve=me[0],pe=me[1],_e=(0,d.useState)(!1),ge=(0,i.A)(_e,2),be=ge[0],Ae=ge[1],we=(0,d.useState)("".concat(N,"-0")),Se=(0,i.A)(we,2),ke=Se[0],xe=Se[1],Ie=(0,d.useState)(""),je=(0,i.A)(Ie,2),ye=je[0],Te=je[1],Ne=(0,d.useRef)(l),Ce=(0,d.useRef)(""),Ee=(0,d.useRef)(0),Ue=(0,d.useRef)(Date.now()),Re=(0,d.useRef)([]),Me=(0,d.useRef)(null),ze=(0,d.useRef)(!1),Be=(0,d.useRef)(0),De=(0,d.useRef)(function(){}),Ye=Boolean(re),He=(0,d.useCallback)(function(e){e&&e!==Ne.current&&(Ne.current=e,G(e))},[]),Pe=(0,d.useCallback)(function(e,n){var t,r=U(e);Re.current=r;var a=(null===(t=r[r.length-1])||void 0===t?void 0:t._id)||"";return a!==Ce.current&&(a&&(Ue.current=Date.now()),Ce.current=a),W(r),n&&H(D(n),r),r},[]),Fe=(0,d.useCallback)(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Ne.current;return{conversationId:e||void 0,toUserId:e?void 0:S||void 0}},[S]),Ge=(0,d.useCallback)(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.conversationId||Ne.current;return{conversationId:n||void 0,targetUserId:n?void 0:e.targetUserId||S||void 0,cursor:e.cursor,pageSize:e.pageSize,markRead:e.markRead}},[S]),Je=(0,d.useCallback)(function(){Be.current+=1;var e="".concat(N,"-").concat(Be.current);xe(e),Te(e)},[]),Ke=(0,d.useCallback)((0,o.A)((0,s.A)().m(function e(){var n,t,r,a,c,o,i,l,d,f,m,v,p,_=arguments;return(0,s.A)().w(function(e){while(1)switch(e.p=e.n){case 0:return n=_.length>0&&void 0!==_[0]?_[0]:{},t=n.silent,r=void 0!==t&&t,a=n.scrollToEnd,c=void 0!==a&&a,o=Ee.current+1,Ee.current=o,r||ie(!0),i=Ge({pageSize:x,markRead:!r}),0===Re.current.length&&(l=Y(D(i)),l.length&&(Pe(l),c&&Je())),e.p=1,e.n=2,(0,g.fG)(i);case 2:if(d=e.v,o===Ee.current){e.n=3;break}return e.a(2,Re.current);case 3:return f=d.conversationId||i.conversationId||"",m={conversationId:f||void 0,targetUserId:S||i.targetUserId},f&&He(f),d.peer&&Q(d.peer),v=Pe([].concat((0,u.A)(Re.current),(0,u.A)(d.messages)),m),pe(function(e){return e||d.nextCursor||""}),c&&Je(),e.a(2,v);case 4:return e.p=4,p=e.v,z("load latest failed",p),r||h().showToast({title:"\u6d88\u606f\u52a0\u8f7d\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"}),e.a(2,Re.current);case 5:return e.p=5,r||ie(!1),e.f(5);case 6:return e.a(2)}},e,null,[[1,4,5,6]])})),[He,Pe,Ge,Je,S]),Oe=(0,d.useRef)(Ke);(0,d.useEffect)(function(){Oe.current=Ke},[Ke]);var Qe=(0,d.useCallback)((0,o.A)((0,s.A)().m(function e(){var n,t,r,a,c,o,i;return(0,s.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(ve&&!oe&&!de){e.n=1;break}return e.a(2);case 1:return t=null===(n=Re.current[0])||void 0===n?void 0:n._id,fe(!0),e.p=2,r=Ge({cursor:ve,pageSize:x,markRead:!1}),e.n=3,(0,g.fG)(r);case 3:a=e.v,c=a.conversationId||r.conversationId||"",o={conversationId:c||void 0,targetUserId:S||r.targetUserId},c&&He(c),a.peer&&Q(a.peer),Pe([].concat((0,u.A)(a.messages),(0,u.A)(Re.current)),o),pe(a.nextCursor||""),t&&Te(R(t)),e.n=5;break;case 4:e.p=4,i=e.v,z("load older failed",i),h().showToast({title:"\u5386\u53f2\u6d88\u606f\u52a0\u8f7d\u5931\u8d25",icon:"none"});case 5:return e.p=5,fe(!1),e.f(5);case 6:return e.a(2)}},e,null,[[2,4,5,6]])})),[He,Pe,Ge,oe,de,ve,S]);(0,d.useEffect)(function(){Ke({scrollToEnd:!0})},[Ke]);var Ve=(0,d.useCallback)(function(){Me.current&&(clearTimeout(Me.current),Me.current=null)},[]),qe=(0,d.useCallback)(function(){if(Ve(),ze.current){var e=Date.now()-Ue.current1&&void 0!==r[1]?r[1]:"",B(!0),n.p=1,"discover"!==s){n.n=3;break}return c=Y,n.n=2,(0,v.Cr)(e);case 2:c(n.v),n.n=5;break;case 3:return n.n=4,(0,v.wA)(s);case 4:a=n.v,Y(a.list);case 5:return n.p=5,B(!1),n.f(5);case 6:return n.a(2)}},n,null,[[1,,5,6]])}));return function(s){return n.apply(this,arguments)}}();(0,l.useEffect)(function(){I(g,k)},[g]);var J=function(){var n=(0,r.A)((0,t.A)().m(function n(s){var e;return(0,t.A)().w(function(n){while(1)switch(n.p=n.n){case 0:return e=!s.isFollowing,Y(function(n){return n.map(function(n){return n.id===s.id?(0,c.A)((0,c.A)({},n),{},{isFollowing:e}):n})}),n.p=1,n.n=2,(0,v.So)(s.id,e);case 2:n.n=4;break;case 3:n.p=3,n.v,Y(function(n){return n.map(function(n){return n.id===s.id?(0,c.A)((0,c.A)({},n),{},{isFollowing:!e}):n})}),u().showToast({title:"\u64cd\u4f5c\u5931\u8d25",icon:"none"});case 4:return n.a(2)}},n,null,[[1,3]])}));return function(s){return n.apply(this,arguments)}}(),K=function(n){u().navigateTo({url:"/pages/chat/index?targetUserId=".concat(n.id,"&title=").concat(encodeURIComponent(n.name))})},O="friends"===g?"\u8fd8\u6ca1\u6709\u6c6a\u53cb\u3002\u4e92\u76f8\u5173\u6ce8\u5373\u6210\u4e3a\u6c6a\u53cb":"following"===g?"\u8fd8\u6ca1\u6709\u5173\u6ce8\u4efb\u4f55\u4eba\uff0c\u53bb\u300c\u53d1\u73b0\u300d\u770b\u770b\u5427":"followers"===g?"\u8fd8\u6ca1\u6709\u7c89\u4e1d":"\u6ca1\u6709\u627e\u5230\u7528\u6237";return(0,p.jsxs)(d.Ss,{className:"contacts",children:[(0,p.jsx)(d.Ss,{className:"contacts__nav",style:{paddingTop:"".concat(s,"px")},children:(0,p.jsxs)(d.Ss,{className:"contacts__nav-row",children:[(0,p.jsx)(d.Ss,{className:"contacts__back",onClick:function(){return u().navigateBack()},children:(0,p.jsx)(f.A,{name:"chev",size:22,className:"contacts__back-icon"})}),(0,p.jsx)(d.EY,{className:"contacts__title",children:"\u6c6a\u53cb"}),(0,p.jsx)(d.Ss,{className:"contacts__nav-spacer"})]})}),(0,p.jsx)(m.A,{items:x,value:g,onChange:function(n){return N(n)}}),"discover"===g?(0,p.jsxs)(d.Ss,{className:"contacts__search",children:[(0,p.jsx)(f.A,{name:"search",size:16,className:"contacts__search-icon"}),(0,p.jsx)(d.pd,{className:"contacts__search-input",value:k,placeholder:"\u641c\u7d22\u6635\u79f0",placeholderClass:"contacts__search-ph",confirmType:"search",onInput:function(n){return y(n.detail.value)},onConfirm:function(){return I("discover",k)}})]}):null,(0,p.jsx)(d.BM,{scrollY:!0,className:"contacts__scroll",enhanced:!0,showScrollbar:!1,children:(0,p.jsxs)(d.Ss,{className:"contacts__list",children:[F.map(function(n){return(0,p.jsxs)(d.Ss,{className:"contacts__item",children:[(0,p.jsxs)(d.Ss,{className:"contacts__left",onClick:function(){return K(n)},children:[(0,p.jsx)(_.A,{avatarKey:n.avatarKey,avatarUrl:n.avatarUrl,size:"lg",label:n.name}),(0,p.jsxs)(d.Ss,{className:"contacts__meta",children:[(0,p.jsx)(d.EY,{className:"contacts__name",children:n.name}),(0,p.jsx)(d.EY,{className:"contacts__bio",children:n.bio||n.handle||"\u8fd9\u4f4d\u6c6a\u53cb\u5f88\u795e\u79d8"})]})]}),(0,p.jsxs)(d.Ss,{className:"contacts__actions",children:[n.isFriend?(0,p.jsx)(d.EY,{className:"contacts__friend-tag",children:"\u6c6a\u53cb"}):null,(0,p.jsx)(d.Ss,{className:"contacts__follow ".concat(n.isFollowing?"contacts__follow--on":""),onClick:function(){return J(n)},children:n.isFollowing?"\u5df2\u5173\u6ce8":"\u5173\u6ce8"})]})]},n.id)}),z||0!==F.length?null:(0,p.jsx)(d.EY,{className:"contacts__empty",children:O})]})})]})}var b={},g=(0,a.eU)(j,"pages/contacts/index",{root:{cn:[]}},b||{});j&&j.behaviors&&(g.behaviors=(g.behaviors||[]).concat(j.behaviors));Page(g)}},function(n){var s=function(s){return n(n.s=s)};n.O(0,[907,96,76],function(){return s(6925)});n.O()}]); \ No newline at end of file +"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[158],{6925:function(n,e,s){var a=s(8870),c=s(9379),t=s(1212),r=s(467),i=s(5544),o=s(6540),l=s(758),u=s.n(l),d=s(118),f=s(374),h=s(3401),m=s(7745),_=s(326),v=s(3810),p=s(5596),x=s(4848),w=[{key:"friends",label:"\u6c6a\u53cb"},{key:"following",label:"\u5173\u6ce8"},{key:"followers",label:"\u7c89\u4e1d"},{key:"discover",label:"\u53d1\u73b0"}],g=["friends","following","followers","discover"];function j(){var n=(0,f.v)(),e=n.statusBarHeight,s=(0,l.useRouter)(),a=g.includes(s.params.tab)?s.params.tab:"friends",j=(0,o.useState)(a),b=(0,i.A)(j,2),N=b[0],A=b[1],S=(0,o.useState)(""),k=(0,i.A)(S,2),y=k[0],F=k[1],C=(0,o.useState)([]),E=(0,i.A)(C,2),T=E[0],Y=E[1],U=(0,o.useState)(!1),I=(0,i.A)(U,2),z=I[0],B=I[1],H=function(){var n=(0,r.A)((0,t.A)().m(function n(e){var s,a,c,r=arguments;return(0,t.A)().w(function(n){while(1)switch(n.p=n.n){case 0:if(s=r.length>1&&void 0!==r[1]?r[1]:"",B(!0),n.p=1,"discover"!==e){n.n=3;break}return c=Y,n.n=2,(0,v.Cr)(s);case 2:c(n.v),n.n=5;break;case 3:return n.n=4,(0,v.wA)(e);case 4:a=n.v,Y(a.list);case 5:return n.p=5,B(!1),n.f(5);case 6:return n.a(2)}},n,null,[[1,,5,6]])}));return function(e){return n.apply(this,arguments)}}();(0,o.useEffect)(function(){H(N,y)},[N]),(0,o.useEffect)(function(){if("discover"===N){var n=setTimeout(function(){return H("discover",y)},300);return function(){return clearTimeout(n)}}},[y,N]);var J=function(){var n=(0,r.A)((0,t.A)().m(function n(e){var s,a,r;return(0,t.A)().w(function(n){while(1)switch(n.p=n.n){case 0:return n.n=1,(0,p.HQ)();case 1:if(n.v){n.n=2;break}return n.a(2);case 2:return s=!e.isFollowing,a=e,Y(function(n){return n.map(function(n){return n.id===e.id?(0,c.A)((0,c.A)({},n),{},{isFollowing:s,isFriend:!!s&&n.isFriend}):n})}),n.p=3,n.n=4,(0,v.So)(e.id,s);case 4:r=n.v,Y(function(n){return n.map(function(n){return n.id===e.id?(0,c.A)((0,c.A)({},n),{},{isFollowing:r.following,isFriend:r.mutual}):n})}),n.n=6;break;case 5:n.p=5,n.v,Y(function(n){return n.map(function(n){return n.id===e.id?a:n})}),u().showToast({title:"\u64cd\u4f5c\u5931\u8d25",icon:"none"});case 6:return n.a(2)}},n,null,[[3,5]])}));return function(e){return n.apply(this,arguments)}}(),K=function(n){u().navigateTo({url:"/pages/user-profile/index?userId=".concat(n.id)})},O=function(n){(0,p.HQ)().then(function(e){e&&u().navigateTo({url:"/pages/chat/index?targetUserId=".concat(n.id,"&title=").concat(encodeURIComponent(n.name))})})},Q="friends"===N?"\u8fd8\u6ca1\u6709\u6c6a\u53cb\u3002\u4e92\u76f8\u5173\u6ce8\u5373\u6210\u4e3a\u6c6a\u53cb":"following"===N?"\u8fd8\u6ca1\u6709\u5173\u6ce8\u4efb\u4f55\u4eba\uff0c\u53bb\u300c\u53d1\u73b0\u300d\u770b\u770b\u5427":"followers"===N?"\u8fd8\u6ca1\u6709\u7c89\u4e1d":"\u6ca1\u6709\u627e\u5230\u7528\u6237";return(0,x.jsxs)(d.Ss,{className:"contacts",children:[(0,x.jsx)(d.Ss,{className:"contacts__nav",style:{paddingTop:"".concat(e,"px")},children:(0,x.jsxs)(d.Ss,{className:"contacts__nav-row",children:[(0,x.jsx)(d.Ss,{className:"contacts__back",onClick:function(){return u().navigateBack()},children:(0,x.jsx)(h.A,{name:"chev",size:22,className:"contacts__back-icon"})}),(0,x.jsx)(d.EY,{className:"contacts__title",children:"\u6c6a\u53cb"}),(0,x.jsx)(d.Ss,{className:"contacts__nav-spacer"})]})}),(0,x.jsx)(_.A,{items:w,value:N,onChange:function(n){return A(n)}}),"discover"===N?(0,x.jsxs)(d.Ss,{className:"contacts__search",children:[(0,x.jsx)(h.A,{name:"search",size:16,className:"contacts__search-icon"}),(0,x.jsx)(d.pd,{className:"contacts__search-input",value:y,placeholder:"\u641c\u7d22\u6635\u79f0",placeholderClass:"contacts__search-ph",confirmType:"search",onInput:function(n){return F(n.detail.value)},onConfirm:function(){return H("discover",y)}})]}):null,(0,x.jsx)(d.BM,{scrollY:!0,className:"contacts__scroll",enhanced:!0,showScrollbar:!1,children:(0,x.jsxs)(d.Ss,{className:"contacts__list",children:[T.map(function(n){return(0,x.jsxs)(d.Ss,{className:"contacts__item",children:[(0,x.jsxs)(d.Ss,{className:"contacts__left",onClick:function(){return K(n)},children:[(0,x.jsx)(m.A,{avatarKey:n.avatarKey,avatarUrl:n.avatarUrl,size:"lg",label:n.name}),(0,x.jsxs)(d.Ss,{className:"contacts__meta",children:[(0,x.jsx)(d.EY,{className:"contacts__name",children:n.name}),(0,x.jsx)(d.EY,{className:"contacts__bio",children:n.bio||n.handle||"\u8fd9\u4f4d\u6c6a\u53cb\u5f88\u795e\u79d8"})]})]}),(0,x.jsxs)(d.Ss,{className:"contacts__actions",children:[n.isFriend?(0,x.jsx)(d.EY,{className:"contacts__friend-tag",children:"\u6c6a\u53cb"}):null,(0,x.jsx)(d.Ss,{className:"contacts__follow ".concat(n.isFollowing?"contacts__follow--on":""),onClick:function(){return J(n)},children:n.isFollowing?"\u5df2\u5173\u6ce8":"\u5173\u6ce8"}),n.isFriend?(0,x.jsx)(d.Ss,{className:"contacts__follow",onClick:function(){return O(n)},children:"\u804a\u5929"}):null]})]},n.id)}),z||0!==T.length?null:(0,x.jsx)(d.EY,{className:"contacts__empty",children:Q})]})})]})}var b={},N=(0,a.eU)(j,"pages/contacts/index",{root:{cn:[]}},b||{});j&&j.behaviors&&(N.behaviors=(N.behaviors||[]).concat(j.behaviors));Page(N)}},function(n){var e=function(e){return n(n.s=e)};n.O(0,[907,96,76],function(){return e(6925)});n.O()}]); \ No newline at end of file diff --git a/dist/pages/contacts/index.wxss b/dist/pages/contacts/index.wxss index 7afe281..3c553b7 100644 --- a/dist/pages/contacts/index.wxss +++ b/dist/pages/contacts/index.wxss @@ -1 +1 @@ -.contacts{background:#14102b;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100vh}.contacts__nav{-ms-flex-negative:0;background:#14102b;flex-shrink:0}.contacts__nav-row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:100rpx;padding:0 24rpx}.contacts__back{display:-ms-flexbox;display:flex;height:72rpx;width:72rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#f0e9ff;justify-content:center}.contacts__back-icon{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.contacts__title{color:#f0e9ff;-ms-flex:1;flex:1;font:700 32rpx/1 Space Grotesk,Inter,system-ui,sans-serif;text-align:center}.contacts__nav-spacer{width:72rpx}.contacts__search{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;background:rgba(31,23,66,.68);border:2rpx solid rgba(216,180,255,.1);border-radius:19998rpx;gap:16rpx;height:80rpx;margin:24rpx 40rpx 8rpx;padding:0 28rpx}.contacts__search-icon{color:#8a7aab}.contacts__search-input{color:#f0e9ff;-ms-flex:1;flex:1;font:400 28rpx/80rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:80rpx}.contacts__search-ph{color:#8a7aab}.contacts__scroll{-ms-flex:1;flex:1;min-height:0}.contacts__list{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding:16rpx 40rpx 48rpx}.contacts__item{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;border-bottom:2rpx solid rgba(216,180,255,.05);gap:24rpx;padding:24rpx 0}.contacts__left{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;min-width:0;-ms-flex-align:center;align-items:center;gap:24rpx}.contacts__meta{-ms-flex:1;flex:1;min-width:0}.contacts__name{color:#f0e9ff;display:block;font:600 30rpx/1.3 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.contacts__bio{color:#8a7aab;display:block;font:400 24rpx/1.3 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:4rpx;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contacts__actions{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:16rpx;-ms-flex-negative:0;flex-shrink:0}.contacts__friend-tag{background:rgba(216,180,255,.14);border-radius:19998rpx;color:#d8b4ff;font:600 20rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:6rpx 16rpx}.contacts__follow{background:linear-gradient(135deg,#d8b4ff,#ffb3c8);border-radius:19998rpx;color:#2a1d10;font:600 24rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:14rpx 32rpx}.contacts__follow--on{background:transparent;border:2rpx solid rgba(216,180,255,.3);color:#8a7aab}.contacts__empty{color:#8a7aab;font:400 26rpx/1.6 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:96rpx 40rpx;text-align:center} \ No newline at end of file +.contacts{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100vh}.contacts__nav{-ms-flex-negative:0;background:#14102b;flex-shrink:0}.contacts__nav-row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:100rpx;padding:0 24rpx}.contacts__back{display:-ms-flexbox;display:flex;height:72rpx;width:72rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#f0e9ff;justify-content:center}.contacts__back-icon{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.contacts__title{color:#f0e9ff;-ms-flex:1;flex:1;font:700 32rpx/1 Space Grotesk,Inter,system-ui,sans-serif;text-align:center}.contacts__nav-spacer{width:72rpx}.contacts__search{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;background:rgba(31,23,66,.68);border:2rpx solid rgba(216,180,255,.1);border-radius:19998rpx;gap:16rpx;height:80rpx;margin:24rpx 40rpx 8rpx;padding:0 28rpx}.contacts__search-icon{color:#8a7aab}.contacts__search-input{color:#f0e9ff;-ms-flex:1;flex:1;font:400 28rpx/80rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:80rpx}.contacts__search-ph{color:#8a7aab}.contacts__scroll{-ms-flex:1;flex:1;min-height:0}.contacts__list{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding:16rpx 40rpx 48rpx}.contacts__item{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;border-bottom:2rpx solid rgba(216,180,255,.05);gap:24rpx;padding:24rpx 0}.contacts__left{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;min-width:0;-ms-flex-align:center;align-items:center;gap:24rpx}.contacts__meta{-ms-flex:1;flex:1;min-width:0}.contacts__name{color:#f0e9ff;display:block;font:600 30rpx/1.3 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.contacts__bio{color:#8a7aab;display:block;font:400 24rpx/1.3 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:4rpx;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contacts__actions{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:16rpx;-ms-flex-negative:0;flex-shrink:0}.contacts__friend-tag{background:rgba(216,180,255,.14);border-radius:19998rpx;color:#d8b4ff;font:600 20rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:6rpx 16rpx}.contacts__follow{background:linear-gradient(135deg,#d8b4ff,#ffb3c8);border-radius:19998rpx;color:#2a1d10;font:600 24rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:14rpx 32rpx}.contacts__follow--on{background:transparent;border:2rpx solid rgba(216,180,255,.3);color:#8a7aab}.contacts__empty{color:#8a7aab;font:400 26rpx/1.6 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:96rpx 40rpx;text-align:center} \ No newline at end of file diff --git a/dist/pages/home/index.js b/dist/pages/home/index.js new file mode 100644 index 0000000..0c22ae0 --- /dev/null +++ b/dist/pages/home/index.js @@ -0,0 +1 @@ +"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[404],{1991:function(e,n,t){var a=t(8870),s=t(4467),r=t(9379),c=t(5544),i=t(6540),o=t(758),l=t.n(o),u=t(118),d=t(1212),h=t(467),f=t(374),p=t(5596),m=[{key:"plaza",label:"\u5e7f\u573a",path:"/pages/plaza/index"},{key:"nearby",label:"\u9644\u8fd1",path:"/pages/nearby/index"},{key:"messages",label:"\u6c6a\u53cb",path:"/pages/messages/index",dot:!0},{key:"profile",label:"\u6211\u7684",path:"/pages/profile/index"}],v=t(4848);function _(e){var n=e.active,t=e.onSwitch,a=(0,f.v)(),s=a.safeBottom,r=function(e,a){e!==n&&(t?t(e):l().switchTab({url:a}))},c=function(e){var t=m[e],a=n===t.key?"bottom-tabbar__item--active":"";return(0,v.jsxs)(u.Ss,{className:"bottom-tabbar__item ".concat(a),onClick:function(){return r(t.key,t.path)},children:[(0,v.jsxs)(u.Ss,{className:"bottom-tabbar__icon-wrap",children:[(0,v.jsx)(u.Ss,{className:"bottom-tabbar__icon bottom-tabbar__icon--".concat(t.key)}),t.dot?(0,v.jsx)(u.Ss,{className:"bottom-tabbar__dot"}):null]}),(0,v.jsx)(u.EY,{className:"bottom-tabbar__label ".concat(n===t.key?"bottom-tabbar__label--active":""),children:t.label})]})},i=function(){var e=(0,h.A)((0,d.A)().m(function e(){return(0,d.A)().w(function(e){while(1)switch(e.n){case 0:return e.n=1,(0,p.HQ)();case 1:if(e.v){e.n=2;break}return e.a(2);case 2:l().navigateTo({url:"/pages/publish/index"});case 3:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}();return(0,v.jsxs)(u.Ss,{className:"bottom-tabbar",style:{paddingBottom:"".concat(Math.max(22,s),"px")},children:[c(0),c(1),(0,v.jsx)(u.Ss,{className:"bottom-tabbar__fab",onClick:i,children:(0,v.jsx)(u.Ss,{className:"bottom-tabbar__fab-inner",children:(0,v.jsx)(u.Ss,{className:"bottom-tabbar__fab-icon"})})}),c(2),c(3)]})}var x=_,b=t(436);function g(e){var n=e.title,t=e.compactTitle,a=void 0!==t&&t,s=e.left,r=e.leading,c=(0,f.v)(),i=c.statusBarHeight,o=c.menuRight,l=r||s;return(0,v.jsx)(u.Ss,{className:"custom-nav",style:{paddingTop:"".concat(i,"px"),paddingRight:"".concat(o,"px")},children:(0,v.jsxs)(u.Ss,{className:"custom-nav__row",children:[l?(0,v.jsx)(u.Ss,{className:"custom-nav__leading",children:l}):(0,v.jsx)(u.Ss,{className:"custom-nav__left"}),n?(0,v.jsx)(u.EY,{className:"custom-nav__title ".concat(a?"custom-nav__title--compact":""),children:n}):null]})})}var j=g;function y(e){var n=e.children,t=e.className,a=void 0===t?"":t,s=e.scroll,r=void 0===s||s,c=e.withTabBar,i=void 0===c||c,o=e.lowerThreshold,l=void 0===o?80:o,d=e.onScrollToLower,h=(0,f.v)(),p=h.safeBottom,m=(0,v.jsx)(u.Ss,{className:"page-shell__inner ".concat(a),style:{paddingBottom:"".concat(i?108+p:24+p,"px")},children:n});return(0,v.jsx)(u.Ss,{className:"page-shell",children:r?(0,v.jsx)(u.BM,{scrollY:!0,className:"page-shell__scroll",enhanced:!0,showScrollbar:!1,lowerThreshold:l,onScrollToLower:d,children:m}):m})}var k=y,S=t(3401);function w(e){var n=e.placeholder,t=e.value,a=void 0===t?"":t,s=e.onInput,r=e.onConfirm;return(0,v.jsxs)(u.Ss,{className:"search-bar",children:[(0,v.jsx)(S.A,{name:"search",size:14}),(0,v.jsx)(u.pd,{className:"search-bar__input",value:a,placeholder:n,placeholderClass:"search-bar__placeholder",confirmType:"search",onInput:function(e){return null===s||void 0===s?void 0:s(String(e.detail.value))},onConfirm:r})]})}var A=w,N=t(326);function T(e){var n=e.active,t=void 0!==n&&n,a=e.prefix,s=e.className,r=void 0===s?"":s,c=e.onClick,i=e.children;return(0,v.jsxs)(u.Ss,{className:"chip ".concat(t?"chip--active":""," ").concat(r),onClick:c,children:[a?(0,v.jsx)(u.EY,{className:"chip__prefix",children:a}):null,(0,v.jsx)(u.EY,{children:i})]})}var E=T,C=t(7896);function Y(){return(0,v.jsxs)(u.Ss,{className:"feed-ad-card",children:[(0,v.jsx)(u.Ss,{className:"feed-ad-card__mark",children:"\u6c6a"}),(0,v.jsxs)(u.Ss,{className:"feed-ad-card__text",children:[(0,v.jsx)(u.EY,{className:"feed-ad-card__title",children:"\u5468\u672b\u5ba0\u7269\u6d3e\u5bf9 \xb7 \u6ee8\u6c5f\u7eff\u5730"}),(0,v.jsx)(u.EY,{className:"feed-ad-card__sub",children:"\u672c\u5468\u516d 14:00 \xb7 \u540d\u989d\u5269 12 \u4e2a"})]}),(0,v.jsx)(u.Ss,{className:"feed-ad-card__cta",children:"\u62a5\u540d"})]})}var M=Y,z=t(3972),B=t(4149),I=t(994),L=t(5313);function R(e,n,t,a){var s=(0,i.useRef)(a);s.current=a;var r=(0,i.useRef)(n),c=(0,i.useRef)(t);(0,i.useEffect)(function(){var a=n&&!r.current,i=n&&t!==c.current;r.current=n,c.current=t,(a||i)&&(0,L.Xl)(e)&&s.current()},[n,t,e])}var U=[{key:"feed",label:"\u63a8\u8350"},{key:"nearby",label:"\u9644\u8fd1"},{key:"follow",label:"\u5173\u6ce8"}],F="\u5168\u90e8",Q=20,H=6,V=[F];function D(){return 1+Math.floor(3*Math.random())}function O(e,n){var t=new Set(e.map(function(e){return e._id}));return[].concat((0,b.A)(e),(0,b.A)(n.filter(function(e){return!t.has(e._id)})))}function Z(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:F,t=[].concat(V),a=new Set(t);return n!==F&&(t.push(n),a.add(n)),e.forEach(function(e){e&&!a.has(e)&&(t.push(e),a.add(e))}),t}function K(e,n){return e.map(function(e){var t=n.get(e._id);return t?(0,r.A)((0,r.A)({},e),{},{likedByMe:t.likedByMe,counts:(0,r.A)((0,r.A)({},e.counts),{},{likes:t.likes})}):e})}function P(e){var n=e.active,t=void 0!==n&&n,a=e.showTick,s=void 0===a?0:a,o=(0,i.useState)("feed"),f=(0,c.A)(o,2),m=f[0],_=f[1],x=(0,i.useState)(F),b=(0,c.A)(x,2),g=b[0],y=b[1],S=(0,i.useState)(V),w=(0,c.A)(S,2),T=w[0],Y=w[1],P=(0,i.useState)(""),$=(0,c.A)(P,2),q=$[0],X=$[1],J=(0,i.useState)(""),W=(0,c.A)(J,2),G=W[0],ee=W[1],ne=(0,i.useState)([]),te=(0,c.A)(ne,2),ae=te[0],se=te[1],re=(0,i.useState)(""),ce=(0,c.A)(re,2),ie=ce[0],oe=ce[1],le=(0,i.useState)(!0),ue=(0,c.A)(le,2),de=ue[0],he=ue[1],fe=(0,i.useState)(!1),pe=(0,c.A)(fe,2),me=pe[0],ve=pe[1],_e=(0,i.useState)(D),xe=(0,c.A)(_e,2),be=xe[0],ge=xe[1],je=(0,I.d)(480),ye=(0,i.useRef)([]),ke=(0,i.useRef)(0),Se=(0,i.useRef)(new Set),we=(0,i.useRef)(new Map),Ae=function(){ke.current+=1},Ne=(0,i.useCallback)((0,h.A)((0,d.A)().m(function e(){var n,t,a,s,r,c,i,o,u,h=arguments;return(0,d.A)().w(function(e){while(1)switch(e.p=e.n){case 0:return n=h.length>0&&void 0!==h[0]?h[0]:{},t=n.append,a=void 0!==t&&t,s=n.cursor,r=n.silent,c=void 0!==r&&r,i=ke.current+1,ke.current=i,a?ve(!0):c||(he(!0),oe("")),e.p=1,e.n=2,(0,B.lr)({channel:m,topic:g===F?void 0:g,cursor:s,pageSize:Q,keyword:G||void 0});case 2:if(o=e.v,i===ke.current){e.n=3;break}return e.a(2);case 3:u=K(o.list,we.current),se(function(e){return a?O(e,u):u}),oe(o.nextCursor||""),a||(Y(Z(o.topics,g)),ge(D()),(0,L.aQ)("feed")),e.n=5;break;case 4:e.p=4,e.v,i===ke.current&&l().showToast({title:"\u52a8\u6001\u52a0\u8f7d\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 5:return e.p=5,a?ve(!1):he(!1),e.f(5);case 6:return e.a(2)}},e,null,[[1,4,5,6]])})),[m,G,g]);(0,i.useEffect)(function(){Ne()},[Ne]),(0,i.useEffect)(function(){ye.current=ae},[ae]),(0,i.useEffect)(function(){var e=setTimeout(function(){return ee(q.trim())},300);return function(){return clearTimeout(e)}},[q]);var Te=function(){ee(q.trim())},Ee=function(){X(""),ee("")};R("feed",t,s,function(){return Ne({silent:!0})}),(0,i.useEffect)(function(){return(0,L.Fo)(function(e){var n=e.postId,t=e.liked,a=e.likes;se(function(e){return e.map(function(e){return e._id===n?e.likedByMe===t&&e.counts.likes===a?e:(0,r.A)((0,r.A)({},e),{},{likedByMe:t,counts:(0,r.A)((0,r.A)({},e.counts),{},{likes:a})}):e})})})},[]);var Ce=function(){de||me||!ie||Ne({append:!0,cursor:ie})},Ye=function(){var e=(0,h.A)((0,d.A)().m(function e(n){var t,a,s,c;return(0,d.A)().w(function(e){while(1)switch(e.p=e.n){case 0:return e.n=1,(0,p.HQ)();case 1:if(e.v){e.n=2;break}return e.a(2);case 2:if(!Se.current.has(n)){e.n=3;break}return e.a(2);case 3:if(t=ye.current.find(function(e){return e._id===n}),t){e.n=4;break}return e.a(2);case 4:return a=!t.likedByMe,s=Math.max(0,t.counts.likes+(a?1:-1)),Se.current.add(n),we.current.set(n,{likedByMe:a,likes:s}),Ae(),a&&je.show(),se(function(e){return e.map(function(e){return e._id!==n?e:(0,r.A)((0,r.A)({},e),{},{likedByMe:a,counts:(0,r.A)((0,r.A)({},e.counts),{},{likes:s})})})}),e.p=5,e.n=6,(0,B.O$)(n,a);case 6:c=e.v,we.current.delete(n),Ae(),se(function(e){return e.map(function(e){return e._id===n?(0,r.A)((0,r.A)({},e),{},{likedByMe:c.liked,counts:(0,r.A)((0,r.A)({},e.counts),{},{likes:c.likes})}):e})}),e.n=8;break;case 7:e.p=7,e.v,we.current.delete(n),Ae(),se(function(e){return e.map(function(e){return e._id===n?(0,r.A)((0,r.A)({},e),{},{likedByMe:t.likedByMe,counts:(0,r.A)((0,r.A)({},e.counts),{},{likes:t.counts.likes})}):e})}),l().showToast({title:"\u70b9\u8d5e\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 8:return e.p=8,Se.current.delete(n),e.f(8);case 9:return e.a(2)}},e,null,[[5,7,8,9]])}));return function(n){return e.apply(this,arguments)}}(),Me=function(e){var n=ye.current.find(function(n){return n._id===e});n&&(0,L.bE)(n),l().navigateTo({url:"/pages/post-detail/index?postId=".concat(e)})},ze=function(e){return e>=be&&(e-be)%H===0},Be=ie?"".concat(ae.length,"+"):String(ae.length),Ie=G?"\u6ca1\u6709\u627e\u5230\u76f8\u5173\u52a8\u6001\uff0c\u6362\u4e2a\u5173\u952e\u8bcd\u8bd5\u8bd5\u5427":"follow"===m?"\u5173\u6ce8\u7684\u4eba\u8fd8\u6ca1\u6709\u53d1\u5e03\u52a8\u6001\uff0c\u53bb\u53d1\u73b0\u66f4\u591a\u6c6a\u53cb\u5427":"\u8fd8\u6ca1\u6709\u52a8\u6001\uff0c\u70b9\u51fb + \u53d1\u5e03\u7b2c\u4e00\u6761\u5427";return(0,v.jsxs)(k,{className:"plaza-page",lowerThreshold:160,onScrollToLower:Ce,children:[(0,v.jsx)(j,{title:"\u5e7f\u573a"}),(0,v.jsx)(A,{placeholder:"\u641c\u7d22\u8bdd\u9898\u3001\u5ba0\u7269\u3001\u9644\u8fd1\u6d3b\u52a8",value:q,onInput:X,onConfirm:Te}),(0,v.jsx)(N.A,{items:U,value:m,onChange:_}),(0,v.jsx)(u.BM,{scrollX:!0,className:"plaza-page__chips",showScrollbar:!1,children:(0,v.jsx)(u.Ss,{className:"plaza-page__chips-inner",children:T.map(function(e){return(0,v.jsx)(E,{active:g===e,onClick:function(){return y(e)},children:e},e)})})}),G?(0,v.jsxs)(u.Ss,{className:"plaza-page__search-result",children:[(0,v.jsxs)(u.Ss,{className:"plaza-page__search-copy",children:[(0,v.jsx)(u.EY,{className:"plaza-page__search-title",children:g===F?"\u641c\u7d22\u201c".concat(G,"\u201d"):"\u5728 #".concat(g," \u4e2d\u641c\u7d22\u201c").concat(G,"\u201d")}),(0,v.jsx)(u.EY,{className:"plaza-page__search-count",children:de?"\u6b63\u5728\u641c\u7d22\u2026":"\u5df2\u5c55\u793a ".concat(Be," \u6761\u7ed3\u679c")})]}),(0,v.jsx)(u.EY,{className:"plaza-page__search-clear",onClick:Ee,children:"\u6e05\u9664"})]}):null,(0,v.jsxs)(u.Ss,{className:"plaza-page__feed",children:[ae.map(function(e,n){return(0,v.jsxs)(u.Ss,{children:[(0,v.jsx)(z.A,{post:e,onLike:Ye,onOpen:Me}),ze(n)?(0,v.jsx)(M,{}):null]},e._id)}),de&&0===ae.length?(0,v.jsx)(u.EY,{className:"plaza-page__empty",children:"\u52a0\u8f7d\u4e2d\u2026"}):de||0!==ae.length?me?(0,v.jsx)(u.EY,{className:"plaza-page__empty",children:"\u52a0\u8f7d\u66f4\u591a\u4e2d\u2026"}):ie?(0,v.jsx)(u.EY,{className:"plaza-page__empty",children:"\u4e0a\u6ed1\u52a0\u8f7d\u66f4\u591a"}):(0,v.jsx)(u.EY,{className:"plaza-page__empty",children:"\u6682\u65f6\u6ca1\u6709\u66f4\u591a\u4e86\uff0c\u7a0d\u540e\u518d\u6765\u770b\u770b\u5427"}):(0,v.jsx)(u.EY,{className:"plaza-page__empty",children:Ie})]}),(0,v.jsx)(C.A,{visible:je.visible})]})}var $="",q=1,X="nearbyMap",J="#d8b4ff",W="#2a1d4a",G="rgba(31,23,66,0.92)",ee="#ffffff";function ne(e){var n=e.pets,t=e.center,a=e.scale,s=e.activeId,r=e.onSelect,c=e.onRegionChange,o=n.map(function(e,n){return{pet:e,index:n}}).filter(function(e){var n=e.pet;return"number"===typeof n.latitude&&"number"===typeof n.longitude}).map(function(e){var n=e.pet,t=e.index,a=n._id===s;return{id:t,latitude:n.latitude,longitude:n.longitude,width:a?32:24,height:a?32:24,callout:{content:n.name,color:a?W:ee,bgColor:a?J:G,fontSize:12,padding:6,borderRadius:10,display:"ALWAYS"}}}),l=function(e){var t=n[e.detail.markerId];t&&r(t._id)},d=(0,i.useMemo)(function(){var e=n.filter(function(e){return"number"===typeof e.latitude&&"number"===typeof e.longitude}).map(function(e){return{latitude:e.latitude,longitude:e.longitude}});if(e.length)return[{latitude:t.latitude,longitude:t.longitude}].concat((0,b.A)(e));var a=.02;return[{latitude:t.latitude-a,longitude:t.longitude-a},{latitude:t.latitude+a,longitude:t.longitude+a}]},[n,t.latitude,t.longitude]);return(0,v.jsx)(u.T5,{id:X,className:"nearby-map",latitude:t.latitude,longitude:t.longitude,scale:a,showLocation:!0,enableZoom:!0,enableScroll:!0,enableRotate:!1,subkey:$||void 0,layerStyle:$?q:void 0,markers:o,includePoints:d,onMarkerTap:l,onRegionChange:function(e){"end"===(null===e||void 0===e?void 0:e.type)&&(null===c||void 0===c||c(e.causedBy||""))},onError:function(){}})}var te=ne;function ae(e){var n=e.onRefresh,t=e.onZoomIn,a=e.onZoomOut,s=e.onLocate;return(0,v.jsxs)(u.Ss,{className:"map-controls",children:[(0,v.jsx)(u.Ss,{className:"map-controls__btn",onClick:n,children:(0,v.jsx)(S.A,{name:"refresh",size:18})}),(0,v.jsxs)(u.Ss,{className:"map-controls__stack",children:[(0,v.jsx)(u.Ss,{className:"map-controls__btn",onClick:t,children:(0,v.jsx)(S.A,{name:"plus",size:18})}),(0,v.jsx)(u.Ss,{className:"map-controls__btn",onClick:a,children:(0,v.jsx)(S.A,{name:"minus",size:18})}),(0,v.jsx)(u.Ss,{className:"map-controls__btn",onClick:s,children:(0,v.jsx)(S.A,{name:"target",size:18})})]})]})}var se=ae;function re(e){var n=e.pet,t=e.active,a=e.onSelect,s=e.onFriendAction,r=e.onLike,o=(0,i.useState)(!1),l=(0,c.A)(o,2),d=l[0],h=l[1];(0,i.useEffect)(function(){return h(!1)},[n.photoUrl]);var f=d||!n.photoUrl||n.photoUrl.startsWith("cloud://")?"":n.photoUrl,p=n.isMine?{key:"mine",label:"\u6211\u7684",icon:"user"}:n.isFriend?{key:"friend",label:"\u804a\u5929",icon:"message"}:n.isFollowing?{key:"pending",label:"\u5f85\u56de\u5173",icon:"check"}:{key:"add",label:"\u52a0\u6c6a\u53cb",icon:"plus"};return(0,v.jsxs)(u.Ss,{className:"nearby-pet-card ".concat(t?"nearby-pet-card--active":""),onClick:a,children:[(0,v.jsxs)(u.Ss,{className:"nearby-pet-card__photo ".concat(f?"":n.photoKey||""),children:[f?(0,v.jsx)(u._V,{className:"nearby-pet-card__photo-img",src:f,mode:"aspectFill",onError:function(){return h(!0)}}):null,(0,v.jsx)(u.EY,{className:"nearby-pet-card__distance",children:n.distanceText})]}),(0,v.jsxs)(u.Ss,{className:"nearby-pet-card__info",children:[(0,v.jsxs)(u.Ss,{className:"nearby-pet-card__title",children:[(0,v.jsx)(u.EY,{className:"nearby-pet-card__name",children:n.name}),n.online?(0,v.jsx)(u.Ss,{className:"nearby-pet-card__online"}):null]}),(0,v.jsxs)(u.EY,{className:"nearby-pet-card__meta",children:[n.breed," \xb7 ",n.ageText]}),(0,v.jsx)(u.EY,{className:"nearby-pet-card__mood",children:n.mood}),(0,v.jsx)(u.Ss,{className:"nearby-pet-card__tags",children:n.tags.slice(0,2).map(function(e){return(0,v.jsx)(u.EY,{className:"nearby-pet-card__tag",children:e},e)})})]}),(0,v.jsxs)(u.Ss,{className:"nearby-pet-card__actions",children:[(0,v.jsxs)(u.Ss,{className:"nearby-pet-card__friend nearby-pet-card__friend--".concat(p.key),onClick:function(e){e.stopPropagation(),s()},children:[(0,v.jsx)(S.A,{name:p.icon,size:13}),(0,v.jsx)(u.EY,{className:"nearby-pet-card__friend-text",children:p.label})]}),(0,v.jsx)(u.Ss,{className:"nearby-pet-card__btn nearby-pet-card__btn--like ".concat(n.likedByMe?"nearby-pet-card__btn--liked":""),onClick:function(e){e.stopPropagation(),r()},children:(0,v.jsx)(S.A,{name:n.likedByMe?"heart-fill":"heart",size:16})})]})]})}var ce=re;function ie(e,n,t){return Math.max(n,Math.min(t,e))}var oe=[64,220,400,520];function le(e){return oe.reduce(function(n,t){return Math.abs(t-e)0&&void 0!==arguments[0]?arguments[0]:220,n=(0,i.useState)(e),t=(0,c.A)(n,2),a=t[0],s=t[1],r=(0,i.useState)(!1),o=(0,c.A)(r,2),l=o[0],u=o[1],d=(0,i.useRef)(0),h=(0,i.useRef)(e),f=function(e){var n=e.touches[0];d.current=n.clientY,h.current=a,u(!0)},p=function(e){if(l){var n=e.touches[0],t=h.current+d.current-n.clientY;s(ie(t,oe[0],oe[oe.length-1]))}},m=function(){u(!1),s(le(a))};return{height:a,dragging:l,isMin:a<=oe[0]+8,onTouchStart:f,onTouchMove:p,onTouchEnd:m}}var de=[{key:"all",label:"\u5168\u90e8"},{key:"dog",label:"\u72d7\u72d7"},{key:"cat",label:"\u732b\u54aa"},{key:"online",label:"\u5728\u7ebf"}];function he(e){var n=e.pets,t=e.activeId,a=e.filter,s=e.state,r=void 0===s?"ready":s,c=e.onFilterChange,i=e.onSelect,o=e.onFriendAction,l=e.onLike,d=ue(220),h="loading"===r?"\u6b63\u5728\u8bfb\u53d6\u9644\u8fd1\u8bbe\u7f6e\u2026":"disabled"===r?"\u9644\u8fd1\u53ef\u89c1\u5df2\u5173\u95ed\uff0c\u53ef\u5728\u300c\u6211\u7684\u300d\u91cc\u91cd\u65b0\u5f00\u542f":"\u9644\u8fd1\u6682\u65f6\u6ca1\u6709\u6c6a\u53cb\uff0c\u6362\u4e2a\u65f6\u95f4\u6216\u632a\u4e2a\u4f4d\u7f6e\u518d\u770b\u770b\uff5e";return(0,v.jsxs)(u.Ss,{className:"nearby-sheet ".concat(d.isMin?"nearby-sheet--min":""," ").concat(d.dragging?"nearby-sheet--dragging":""),style:{height:"".concat(d.height,"px")},catchMove:!0,children:[(0,v.jsx)(u.Ss,{className:"nearby-sheet__handle",onTouchStart:d.onTouchStart,onTouchMove:d.onTouchMove,onTouchEnd:d.onTouchEnd,onTouchCancel:d.onTouchEnd,children:(0,v.jsx)(u.Ss,{className:"nearby-sheet__bar"})}),(0,v.jsx)(u.Ss,{className:"nearby-sheet__header",children:(0,v.jsxs)(u.Ss,{children:[(0,v.jsx)(u.EY,{className:"nearby-sheet__title",children:"\u9644\u8fd1\u7684\u6bdb\u5b69\u5b50"}),(0,v.jsxs)(u.EY,{className:"nearby-sheet__count",children:[n.length," \u4f4d\u6b63\u5728\u9644\u8fd1\u6d3b\u52a8"]})]})}),(0,v.jsx)(u.Ss,{className:"nearby-sheet__chips",children:de.map(function(e){return(0,v.jsx)(E,{active:a===e.key,onClick:function(){return c(e.key)},children:e.label},e.key)})}),(0,v.jsx)(u.Ss,{className:"nearby-sheet__list",children:0===n.length?(0,v.jsx)(u.EY,{className:"nearby-sheet__empty",children:h}):n.map(function(e){return(0,v.jsx)(ce,{pet:e,active:e._id===t,onSelect:function(){return i(e._id)},onFriendAction:function(){return o(e)},onLike:function(){return l(e._id)}},e._id)})})]})}var fe=he,pe=t(9251),me=t(4282),ve=t(5366);function _e(e,n){return"dog"===n||"cat"===n?e.filter(function(e){return e.species===n}):"online"===n?e.filter(function(e){return e.online}):e}function xe(e){return be.apply(this,arguments)}function be(){return be=(0,h.A)((0,d.A)().m(function e(n){var t,a;return(0,d.A)().w(function(e){while(1)switch(e.n){case 0:return e.n=1,(0,me.f0)(n.map(function(e){return e.photoUrl||""}));case 1:return t=e.v,a=function(e){return e&&t.has(e)?t.get(e)||"":e},e.a(2,n.map(function(e){return(0,r.A)((0,r.A)({},e),{},{photoUrl:a(e.photoUrl)})}))}},e)})),be.apply(this,arguments)}function ge(e){return je.apply(this,arguments)}function je(){return je=(0,h.A)((0,d.A)().m(function e(n){var t,a,s=arguments;return(0,d.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(t=s.length>1&&void 0!==s[1]?s[1]:"all",(0,pe.n)()){e.n=1;break}return e.a(2,_e(ve.KB,t));case 1:return e.p=1,e.n=2,(0,pe.k)("nearbyPets",{location:n,filters:{type:t}});case 2:return a=e.v,e.a(2,xe(_e(a.list||[],t)));case 3:return e.p=3,e.v,e.a(2,[])}},e,null,[[1,3]])})),je.apply(this,arguments)}function ye(e,n){return ke.apply(this,arguments)}function ke(){return ke=(0,h.A)((0,d.A)().m(function e(n,t){var a;return(0,d.A)().w(function(e){while(1)switch(e.n){case 0:if((0,pe.n)()){e.n=1;break}return e.a(2,!0);case 1:return e.n=2,(0,pe.k)("locationUpdate",{location:n,visible:t});case 2:return a=e.v,e.a(2,a.ok)}},e)})),ke.apply(this,arguments)}function Se(e){return we.apply(this,arguments)}function we(){return we=(0,h.A)((0,d.A)().m(function e(n){return(0,d.A)().w(function(e){while(1)switch(e.n){case 0:if((0,pe.n)()){e.n=1;break}return e.a(2,{matched:n.length%2===0});case 1:return e.a(2,(0,pe.k)("matchLike",{petId:n}))}},e)})),we.apply(this,arguments)}var Ae=t(1926),Ne=t(3810),Te={latitude:31.2304,longitude:121.4737},Ee=4,Ce=20;function Ye(e){var n=(0,f.v)(),t=n.navHeight,a=(0,i.useState)([]),s=(0,c.A)(a,2),o=s[0],m=s[1],_=(0,i.useState)(),x=(0,c.A)(_,2),b=x[0],g=x[1],y=(0,i.useState)("all"),k=(0,c.A)(y,2),w=k[0],A=k[1],N=(0,i.useState)(null),T=(0,c.A)(N,2),E=T[0],Y=T[1],M=(0,i.useState)(15),z=(0,c.A)(M,2),B=z[0],L=z[1],R=(0,i.useState)(""),U=(0,c.A)(R,2),F=U[0],Q=U[1],H=(0,i.useState)(null),V=(0,c.A)(H,2),D=V[0],O=V[1],Z=(0,i.useRef)(new Set),K=(0,I.d)(480),P=function(e){m(e),g(function(n){var t;return n&&e.some(function(e){return e._id===n})?n:null===(t=e[0])||void 0===t?void 0:t._id})};(0,i.useEffect)(function(){var e=!1;return(0,Ae.E$)().then(function(n){var t=n.user;e||O(t.preferences.nearbyVisible)}).catch(function(){e||O(!0)}),function(){e=!0}},[]),(0,i.useEffect)(function(){if(null!==D){var e=!1;return D?(l().getLocation({type:"gcj02"}).then(function(n){if(!e){var t={latitude:n.latitude,longitude:n.longitude};Y(t),ye(t,!0).catch(function(){})}}).catch(function(){e||Y(Te)}),function(){e=!0}):(m([]),g(void 0),Y(Te),void ye(null,!1).catch(function(){}))}},[D]);var $=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:w;ge(e,n).then(P)};(0,i.useEffect)(function(){if(E&&!0===D){var e=!1;return ge(E,w).then(function(n){e||P(n)}),function(){e=!0}}},[E,w,D]);var q=function(){null!==D?!1!==D?l().getLocation({type:"gcj02"}).then(function(e){var n={latitude:e.latitude,longitude:e.longitude};Y(n),ye(n,!0).catch(function(){})}).catch(function(){l().showModal({title:"\u9700\u8981\u4f4d\u7f6e\u6743\u9650",content:"\u8bf7\u5728\u53f3\u4e0a\u89d2\u300c\xb7\xb7\xb7\u300d\u2192 \u8bbe\u7f6e\u4e2d\u5141\u8bb8\u83b7\u53d6\u4f4d\u7f6e\u540e\u91cd\u8bd5",showCancel:!1})}):l().showToast({title:"\u9644\u8fd1\u53ef\u89c1\u5df2\u5173\u95ed",icon:"none"}):l().showToast({title:"\u6b63\u5728\u8bfb\u53d6\u8bbe\u7f6e",icon:"none"})},J=function(e){if("scale"===e)try{l().createMapContext(X).getScale({success:function(e){null!==e&&void 0!==e&&e.scale&&L(Math.round(e.scale))}})}catch(e){}},W=function(){return L(function(e){return Math.min(Ce,e+1)})},G=function(){return L(function(e){return Math.max(Ee,e-1)})},ee=function(){null!==D?!1!==D?(E&&$(E),l().showToast({title:"\u5df2\u5237\u65b0\u9644\u8fd1",icon:"none"})):l().showToast({title:"\u9644\u8fd1\u53ef\u89c1\u5df2\u5173\u95ed",icon:"none"}):l().showToast({title:"\u6b63\u5728\u8bfb\u53d6\u8bbe\u7f6e",icon:"none"})},ne=function(){var e=(0,h.A)((0,d.A)().m(function e(n){var t,a,s;return(0,d.A)().w(function(e){while(1)switch(e.p=e.n){case 0:return e.n=1,(0,p.HQ)();case 1:if(e.v){e.n=2;break}return e.a(2);case 2:if(t=o.find(function(e){return e._id===n}),null===t||void 0===t||!t.likedByMe){e.n=3;break}return l().showToast({title:"\u5df2\u7ecf\u559c\u6b22\u8fc7\u5566",icon:"none"}),e.a(2);case 3:if(!Z.current.has(n)){e.n=4;break}return e.a(2);case 4:return Z.current.add(n),a=Boolean(null===t||void 0===t?void 0:t.likedByMe),m(function(e){return e.map(function(e){return e._id===n?(0,r.A)((0,r.A)({},e),{},{likedByMe:!0}):e})}),K.show(),e.p=5,e.n=6,Se(n);case 6:s=e.v,s.matched&&l().showToast({title:"\u4e92\u76f8\u559c\u6b22\u5566",icon:"none"}),e.n=8;break;case 7:e.p=7,e.v,m(function(e){return e.map(function(e){return e._id===n?(0,r.A)((0,r.A)({},e),{},{likedByMe:a}):e})}),l().showToast({title:"\u559c\u6b22\u5931\u8d25\uff0c\u8bf7\u7a0d\u540e\u518d\u8bd5",icon:"none"});case 8:return e.p=8,Z.current.delete(n),e.f(8);case 9:return e.a(2)}},e,null,[[5,7,8,9]])}));return function(n){return e.apply(this,arguments)}}(),ae=function(e,n){m(function(t){return t.map(function(t){return t.ownerId===e?(0,r.A)((0,r.A)({},t),n):t})})},re=function(e){e.ownerId&&(0,p.HQ)().then(function(n){if(n){var t=e.ownerName||e.name;l().navigateTo({url:"/pages/chat/index?targetUserId=".concat(e.ownerId,"&title=").concat(encodeURIComponent(t))})}})},ce=function(){var e=(0,h.A)((0,d.A)().m(function e(n){var t;return(0,d.A)().w(function(e){while(1)switch(e.p=e.n){case 0:return e.n=1,(0,p.HQ)();case 1:if(e.v){e.n=2;break}return e.a(2);case 2:if(!n.isMine){e.n=3;break}return l().showToast({title:"\u8fd9\u662f\u4f60\u81ea\u5df1\u7684\u6bdb\u5b69\u5b50",icon:"none"}),e.a(2);case 3:if(!n.isFriend){e.n=4;break}return re(n),e.a(2);case 4:if(!n.isFollowing){e.n=5;break}return l().showToast({title:"\u5df2\u5173\u6ce8\uff0c\u7b49\u5bf9\u65b9\u56de\u5173",icon:"none"}),e.a(2);case 5:return ae(n.ownerId,{isFollowing:!0,isFriend:!1}),e.p=6,e.n=7,(0,Ne.So)(n.ownerId,!0);case 7:t=e.v,ae(n.ownerId,{isFollowing:!0,isFriend:t.mutual}),l().showToast({title:t.mutual?"\u5df2\u6210\u4e3a\u6c6a\u53cb":"\u5df2\u5173\u6ce8\uff0c\u7b49\u5bf9\u65b9\u56de\u5173",icon:"none"}),e.n=9;break;case 8:e.p=8,e.v,ae(n.ownerId,{isFollowing:!1,isFriend:!1}),l().showToast({title:"\u6dfb\u52a0\u5931\u8d25\uff0c\u8bf7\u7a0d\u540e\u518d\u8bd5",icon:"none"});case 9:return e.a(2)}},e,null,[[6,8]])}));return function(n){return e.apply(this,arguments)}}(),ie=F.trim().toLowerCase(),oe=ie?o.filter(function(e){return e.name.toLowerCase().includes(ie)||(e.breed||"").toLowerCase().includes(ie)}):o;return(0,v.jsxs)(u.Ss,{className:"nearby-page",children:[(0,v.jsx)(te,{pets:oe,center:E||Te,scale:B,activeId:b,onSelect:g,onRegionChange:J}),(0,v.jsx)(j,{}),(0,v.jsxs)(u.Ss,{className:"nearby-page__search",style:{top:"".concat(t+6,"px")},children:[(0,v.jsx)(S.A,{name:"search",size:14}),(0,v.jsx)(u.pd,{className:"nearby-page__search-input",value:F,placeholder:"\u641c\u7d22\u540d\u5b57 / \u54c1\u79cd",placeholderClass:"nearby-page__search-ph",confirmType:"search",onInput:function(e){return Q(e.detail.value)}}),F?(0,v.jsx)(u.Ss,{className:"nearby-page__search-clear",onClick:function(){return Q("")},children:(0,v.jsx)(S.A,{name:"close",size:14})}):null]}),(0,v.jsx)(se,{onRefresh:ee,onZoomIn:W,onZoomOut:G,onLocate:q}),(0,v.jsx)(fe,{pets:oe,activeId:b,filter:w,state:null===D?"loading":!1===D?"disabled":"ready",onFilterChange:A,onSelect:g,onFriendAction:ce,onLike:ne}),(0,v.jsx)(C.A,{visible:K.visible})]})}var Me=t(7745);function ze(e){var n=e.users,t=e.onSelect,a=e.onDiscover,s=e.showDiscover,r=void 0===s||s;return r||0!==n.length?(0,v.jsx)(u.BM,{scrollX:!0,className:"active-user-row",showScrollbar:!1,children:(0,v.jsxs)(u.Ss,{className:"active-user-row__inner",children:[r?(0,v.jsxs)(u.Ss,{className:"active-user-row__item",onClick:a,children:[(0,v.jsx)(u.Ss,{className:"active-user-row__avatar-wrap active-user-row__add",children:(0,v.jsx)(S.A,{name:"plus",size:22})}),(0,v.jsx)(u.EY,{className:"active-user-row__name",children:"\u627e\u6c6a\u53cb"})]}):null,n.map(function(e){return(0,v.jsxs)(u.Ss,{className:"active-user-row__item",onClick:function(){return null===t||void 0===t?void 0:t(e)},children:[(0,v.jsxs)(u.Ss,{className:"active-user-row__avatar-wrap",children:[(0,v.jsx)(Me.A,{avatarKey:e.avatarKey,avatarUrl:e.avatarUrl,size:"lg",label:e.name}),e.live?(0,v.jsx)(u.EY,{className:"active-user-row__live",children:"LIVE"}):null]}),(0,v.jsx)(u.EY,{className:"active-user-row__name",children:e.name})]},e.id)})]})}):null}var Be=ze;function Ie(e){var n=e.conversation,t=e.onClick;return(0,v.jsxs)(u.Ss,{className:"conversation-item",onClick:t,children:[(0,v.jsx)(Me.A,{avatarKey:n.avatarKey,avatarUrl:n.avatarUrl,label:n.title,size:"lg",online:n.online,petTag:"single"===n.type?"\ud83d\udc3e":void 0}),(0,v.jsxs)(u.Ss,{className:"conversation-item__main",children:[(0,v.jsxs)(u.Ss,{className:"conversation-item__top",children:[(0,v.jsxs)(u.Ss,{className:"conversation-item__name-row",children:[(0,v.jsx)(u.EY,{className:"conversation-item__name",children:n.title}),n.petName?(0,v.jsx)(u.EY,{className:"conversation-item__pet",children:n.petName}):null]}),(0,v.jsx)(u.EY,{className:"conversation-item__time",children:n.timeText})]}),(0,v.jsxs)(u.Ss,{className:"conversation-item__bottom",children:[(0,v.jsx)(u.EY,{className:"conversation-item__preview",children:n.preview}),n.pinned?(0,v.jsx)(u.Ss,{className:"conversation-item__pin",children:(0,v.jsx)(S.A,{name:"bookmark",size:12})}):n.unreadCount>0?(0,v.jsx)(u.EY,{className:"conversation-item__badge",children:n.unreadCount}):n.muted?(0,v.jsx)(u.Ss,{className:"conversation-item__muted"}):null]})]})]})}var Le=Ie,Re=t(9672),Ue=[{key:"all",label:"\u5168\u90e8"},{key:"unread",label:"\u672a\u8bfb"}];function Fe(e){var n=e.active,t=void 0!==n&&n,a=e.showTick,s=void 0===a?0:a,o=(0,i.useState)("all"),f=(0,c.A)(o,2),m=f[0],_=f[1],x=(0,i.useState)([]),b=(0,c.A)(x,2),g=b[0],y=b[1],S=(0,i.useState)([]),w=(0,c.A)(S,2),T=w[0],E=w[1],C=(0,i.useState)(""),Y=(0,c.A)(C,2),M=Y[0],z=Y[1],B=function(){(0,Re.VL)(m).then(function(e){y(e.activeUsers),E(e.conversations),(0,L.aQ)("messages")})};(0,i.useEffect)(function(){B()},[m]),R("messages",t,s,B);var I=function(e,n){E(function(t){return t.map(function(t){return t._id===e?(0,r.A)((0,r.A)({},t),{},{unreadCount:n}):t})})},U=function(){var e=(0,h.A)((0,d.A)().m(function e(n){var t;return(0,d.A)().w(function(e){while(1)switch(e.p=e.n){case 0:return e.n=1,(0,p.HQ)();case 1:if(e.v){e.n=2;break}return e.a(2);case 2:if(t=n.unreadCount,"system"!==n.type){e.n=8;break}if(!(t<=0)){e.n=3;break}return l().showToast({title:"\u7cfb\u7edf\u6d88\u606f\u6682\u4e0d\u652f\u6301\u804a\u5929",icon:"none"}),e.a(2);case 3:return I(n._id,0),e.p=4,e.n=5,(0,Re.vs)(n._id);case 5:l().showToast({title:"\u7cfb\u7edf\u6d88\u606f\u5df2\u8bfb",icon:"success"}),e.n=7;break;case 6:e.p=6,e.v,I(n._id,t),l().showToast({title:"\u64cd\u4f5c\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 7:return e.a(2);case 8:return t>0&&I(n._id,0),e.p=9,e.n=10,l().navigateTo({url:"/pages/chat/index?conversationId=".concat(n._id,"&title=").concat(encodeURIComponent(n.title))});case 10:e.n=12;break;case 11:return e.p=11,e.v,t>0&&I(n._id,t),l().showToast({title:"\u6253\u5f00\u804a\u5929\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"}),e.a(2);case 12:if(!(t<=0)){e.n=13;break}return e.a(2);case 13:return e.p=13,e.n=14,(0,Re.vs)(n._id);case 14:e.n=16;break;case 15:e.p=15,e.v,I(n._id,t);case 16:return e.a(2)}},e,null,[[13,15],[9,11],[4,6]])}));return function(n){return e.apply(this,arguments)}}(),F=function(){var e=(0,h.A)((0,d.A)().m(function e(n){return(0,d.A)().w(function(e){while(1)switch(e.p=e.n){case 0:return e.n=1,(0,p.HQ)();case 1:if(e.v){e.n=2;break}return e.a(2);case 2:return e.p=2,e.n=3,l().navigateTo({url:"/pages/chat/index?targetUserId=".concat(n.id,"&title=").concat(encodeURIComponent(n.name))});case 3:e.n=5;break;case 4:e.p=4,e.v,l().showToast({title:"\u6253\u5f00\u804a\u5929\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 5:return e.a(2)}},e,null,[[2,4]])}));return function(n){return e.apply(this,arguments)}}(),Q=function(){return l().navigateTo({url:"/pages/contacts/index?tab=discover"})},H=M.trim().toLowerCase(),V=H?g.filter(function(e){return e.name.toLowerCase().includes(H)}):g,D=H?T.filter(function(e){return e.title.toLowerCase().includes(H)||(e.preview||"").toLowerCase().includes(H)}):T;return(0,v.jsxs)(k,{className:"messages-page",children:[(0,v.jsx)(j,{title:"\u6c6a\u53cb"}),(0,v.jsx)(A,{placeholder:"\u641c\u7d22\u6c6a\u53cb\u6216\u804a\u5929",value:M,onInput:z}),(0,v.jsx)(N.A,{items:Ue,value:m,onChange:_}),H?V.length>0?(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)(u.Ss,{className:"messages-page__divider",children:(0,v.jsx)(u.EY,{children:"\u5728\u7ebf\u6c6a\u53cb"})}),(0,v.jsx)(Be,{users:V,onSelect:F,showDiscover:!1})]}):null:(0,v.jsx)(Be,{users:g,onSelect:F,onDiscover:Q}),(0,v.jsx)(u.Ss,{className:"messages-page__divider",children:(0,v.jsx)(u.EY,{children:H&&V.length>0?"\u5339\u914d\u804a\u5929":H?"\u641c\u7d22\u7ed3\u679c":"\u6700\u8fd1\u804a\u5929"})}),(0,v.jsxs)(u.Ss,{className:"messages-page__list",children:[D.map(function(e){return(0,v.jsx)(Le,{conversation:e,onClick:function(){return U(e)}},e._id)}),0===D.length?(0,v.jsx)(u.EY,{className:"messages-page__empty",children:H?V.length>0?"\u6ca1\u6709\u5339\u914d\u7684\u804a\u5929":"\u6ca1\u6709\u5339\u914d\u7684\u6c6a\u53cb\u6216\u804a\u5929":"unread"===m?"\u6ca1\u6709\u672a\u8bfb\u6d88\u606f":"\u8fd8\u6ca1\u6709\u804a\u5929\uff0c\u53bb\u300c\u9644\u8fd1\u300d\u52a0\u6c6a\u53cb\u5427"}):null]})]})}var Qe=t(2538),He=t(1798),Ve=10;function De(e){var n=e?"?petId=".concat(e):"";l().navigateTo({url:"/pages/pet-edit/index".concat(n)})}function Oe(e){var n=e.pets,t=n.length>=Ve;return(0,v.jsxs)(u.Ss,{className:"pet-shelf",children:[(0,v.jsx)(u.Ss,{className:"pet-shelf__head",children:(0,v.jsxs)(u.EY,{className:"pet-shelf__title",children:["\u6211\u7684\u6bdb\u5b69\u5b50 \xb7 ",n.length,"/",Ve]})}),(0,v.jsxs)(u.Ss,{className:"pet-shelf__list",children:[n.map(function(e){return(0,v.jsxs)(u.Ss,{className:"pet-shelf__card",onClick:function(){return De(e._id)},children:[(0,v.jsxs)(u.Ss,{className:"pet-shelf__photo ".concat(e.photoUrl?"":e.photoKey),children:[e.photoUrl?(0,v.jsx)(u._V,{className:"pet-shelf__photo-img",src:e.photoUrl,mode:"aspectFill"}):null,(0,v.jsx)(u.EY,{className:"pet-shelf__label",children:"cat"===e.species?"CAT":"DOG"})]}),(0,v.jsxs)(u.EY,{className:"pet-shelf__name",children:[e.name," \xb7 ",e.breed]}),(0,v.jsxs)(u.EY,{className:"pet-shelf__meta",children:[e.ageText||"\u5f85\u5b8c\u5584"," \xb7 ",e.tags[0]||"\u5f85\u5b8c\u5584"]})]},e._id)}),t?(0,v.jsx)(u.Ss,{className:"pet-shelf__card pet-shelf__card--add pet-shelf__card--limit",children:(0,v.jsx)(u.EY,{className:"pet-shelf__add-label",children:"\u5df2\u8fbe\u4e0a\u9650"})}):(0,v.jsxs)(u.Ss,{className:"pet-shelf__card pet-shelf__card--add",onClick:function(){return De()},children:[(0,v.jsx)(u.Ss,{className:"pet-shelf__add-icon",children:(0,v.jsx)(S.A,{name:"plus",size:18})}),(0,v.jsx)(u.EY,{className:"pet-shelf__add-label",children:"\u6dfb\u52a0\u5ba0\u7269"})]})]})]})}var Ze=Oe;function Ke(e){var n=e.checked,t=e.onChange;return(0,v.jsx)(u.Ss,{className:"switch ".concat(n?"switch--checked":""),onClick:function(){return null===t||void 0===t?void 0:t(!n)}})}var Pe=Ke,$e=[{key:"nearbyVisible",icon:"heart",label:"\u9644\u8fd1\u53ef\u89c1"},{key:"notifications",icon:"bell",label:"\u6d88\u606f\u901a\u77e5"},{key:"help",icon:"info",label:"\u5e2e\u52a9\u4e0e\u53cd\u9988",value:"\u203a"},{key:"about",icon:"settings",label:"\u8bbe\u7f6e",value:"\u203a"}];function qe(e){return"notifications"===e||"nearbyVisible"===e}function Xe(e){var n=e.preferences,t=e.onChange,a=e.onAction,s=e.onLogout,r=n||{notifications:!0,nearbyVisible:!0};return(0,v.jsxs)(u.Ss,{className:"preference-list",children:[(0,v.jsx)(u.EY,{className:"preference-list__title",children:"\u504f\u597d\u8bbe\u7f6e"}),(0,v.jsx)(u.Ss,{className:"preference-list__panel",children:$e.map(function(e){var n=!qe(e.key);return(0,v.jsxs)(u.Ss,{className:"preference-list__row",onClick:n?function(){return null===a||void 0===a?void 0:a(e.key)}:void 0,children:[(0,v.jsx)(u.Ss,{className:"preference-list__icon preference-list__icon--".concat(e.key),children:(0,v.jsx)(S.A,{name:e.icon,size:16})}),(0,v.jsx)(u.EY,{className:"preference-list__label",children:e.label}),qe(e.key)?(0,v.jsx)(Pe,{checked:r[e.key],onChange:function(n){return t(e.key,n)}}):(0,v.jsx)(u.EY,{className:"preference-list__value",children:e.value})]},e.key)})}),s?(0,v.jsx)(u.Ss,{className:"preference-list__logout",onClick:s,children:"\u9000\u51fa\u767b\u5f55"}):null]})}var Je=Xe;function We(e){var n=e.onSubmit,t=(0,i.useState)(""),a=(0,c.A)(t,2),s=a[0],r=a[1],o=(0,i.useState)(""),l=(0,c.A)(o,2),f=l[0],p=l[1],m=(0,i.useState)(!1),_=(0,c.A)(m,2),x=_[0],b=_[1],g=function(e){var n,t=null===e||void 0===e||null===(n=e.detail)||void 0===n?void 0:n.avatarUrl;t&&r(t)},j=Boolean(s&&f.trim()),y=function(){var e=(0,h.A)((0,d.A)().m(function e(){return(0,d.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(j&&!x){e.n=1;break}return e.a(2);case 1:return b(!0),e.p=2,e.n=3,n(s,f.trim());case 3:return e.p=3,b(!1),e.f(3);case 4:return e.a(2)}},e,null,[[2,,3,4]])}));return function(){return e.apply(this,arguments)}}();return(0,v.jsxs)(u.Ss,{className:"login-card",children:[(0,v.jsx)(u.EY,{className:"login-card__title",children:"\u767b\u5f55\u6c6a\u5708"}),(0,v.jsx)(u.EY,{className:"login-card__sub",children:"\u6388\u6743\u5934\u50cf\u6635\u79f0\uff0c\u8bb0\u5f55\u4f60\u548c\u6bdb\u5b69\u5b50\u7684\u65e5\u5e38"}),(0,v.jsx)(u.$n,{className:"login-card__avatar-btn",openType:"chooseAvatar",onChooseAvatar:g,children:s?(0,v.jsx)(u._V,{className:"login-card__avatar-img",src:s,mode:"aspectFill"}):(0,v.jsxs)(u.Ss,{className:"login-card__avatar-empty",children:[(0,v.jsx)(u.EY,{className:"login-card__avatar-plus",children:"\uff0b"}),(0,v.jsx)(u.EY,{className:"login-card__avatar-hint",children:"\u9009\u62e9\u5934\u50cf"})]})}),(0,v.jsx)(u.Ss,{className:"login-card__field",children:(0,v.jsx)(u.pd,{className:"login-card__input",type:"nickname",placeholder:"\u70b9\u6b64\u586b\u5199\u6635\u79f0",placeholderClass:"login-card__placeholder",value:f,onInput:function(e){return p(e.detail.value)},onBlur:function(e){return p(e.detail.value)}})}),(0,v.jsx)(u.Ss,{className:"login-card__submit ".concat(j?"":"login-card__submit--disabled"),onClick:y,children:x?"\u767b\u5f55\u4e2d\u2026":"\u5b8c\u6210\u767b\u5f55"}),(0,v.jsx)(u.EY,{className:"login-card__tip",children:"\u4ec5\u7528\u4e8e\u5c55\u793a\u4f60\u7684\u5934\u50cf\u548c\u6635\u79f0\uff0c\u4e0d\u4f1a\u83b7\u53d6\u5176\u4ed6\u4fe1\u606f"})]})}var Ge=We,en=t(3427),nn="xirZ0SkI9s_CCYAioAzz3U-qBg4ZEmR1avQTrM-0DrE";function tn(){return Boolean(nn)}function an(){return sn.apply(this,arguments)}function sn(){return sn=(0,h.A)((0,d.A)().m(function e(){var n,t;return(0,d.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(nn&&"function"===typeof l().requestSubscribeMessage){e.n=1;break}return e.a(2,!1);case 1:return e.p=1,n=l().requestSubscribeMessage,e.n=2,n({tmplIds:[nn]});case 2:return t=e.v,e.a(2,"accept"===t[nn]);case 3:return e.p=3,e.v,e.a(2,!1)}},e,null,[[1,3]])})),sn.apply(this,arguments)}function rn(e){var n=e.active,t=void 0!==n&&n,a=e.showTick,o=void 0===a?0:a,f=(0,p.wV)(),m=f.user,_=f.setUser,x=(0,i.useState)(ve.LT),b=(0,c.A)(x,2),g=b[0],y=b[1],S=(0,i.useState)(!1),w=(0,c.A)(S,2),A=w[0],N=w[1],T=(0,i.useState)(!0),E=(0,c.A)(T,2),C=E[0],Y=E[1],M=function(){(0,en.nB)()||(0,Ae.E$)().then(function(e){var n=e.user,t=e.pets;_(n),y(t),N((0,en.nB)()||!n.profileCompleted),(0,L.aQ)("profile")})};(0,i.useEffect)(function(){(0,p.oH)().then(function(e){N((0,en.nB)()||!e.profileCompleted),Y(!1),M()})},[]),R("profile",t,o,M);var z=function(){var e=(0,h.A)((0,d.A)().m(function e(n,t){var a;return(0,d.A)().w(function(e){while(1)switch(e.p=e.n){case 0:return e.p=0,e.n=1,(0,en.R$)(n,t);case 1:a=e.v,_(a),N(!1),l().showToast({title:"\u767b\u5f55\u6210\u529f",icon:"success"}),e.n=3;break;case 2:e.p=2,e.v,l().showToast({title:"\u767b\u5f55\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 3:return e.a(2)}},e,null,[[0,2]])}));return function(n,t){return e.apply(this,arguments)}}(),B=function(){l().showModal({title:"\u9000\u51fa\u767b\u5f55",content:"\u786e\u5b9a\u8981\u9000\u51fa\u5f53\u524d\u8d26\u53f7\u5417\uff1f",confirmText:"\u9000\u51fa",confirmColor:"#ff8a9b",success:function(){var e=(0,h.A)((0,d.A)().m(function e(n){return(0,d.A)().w(function(e){while(1)switch(e.n){case 0:if(n.confirm){e.n=1;break}return e.a(2);case 1:return e.n=2,(0,en.ri)();case 2:(0,p.q7)(),y([]),N(!0),l().showToast({title:"\u5df2\u9000\u51fa\u767b\u5f55",icon:"none"});case 3:return e.a(2)}},e)}));function n(n){return e.apply(this,arguments)}return n}()})},I=function(e){"help"===e?l().showModal({title:"\u5e2e\u52a9\u4e0e\u53cd\u9988",content:"\u9047\u5230\u95ee\u9898\u6216\u6709\u5efa\u8bae\uff1f\n\u8bf7\u53d1\u9001\u90ae\u4ef6\u81f3 chenwuzhu975@gmail.com\n\u6211\u4eec\u4f1a\u5c3d\u5feb\u56de\u590d\u4f60 \u2728",confirmText:"\u590d\u5236\u90ae\u7bb1",cancelText:"\u5173\u95ed",success:function(e){e.confirm&&l().setClipboardData({data:"chenwuzhu975@gmail.com"})}}):l().showToast({title:"\u656c\u8bf7\u671f\u5f85\u65b0\u529f\u80fd",icon:"none"})},U=function(){var e=(0,h.A)((0,d.A)().m(function e(n,t){var a,c,i,o;return(0,d.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(a=m,"notifications"!==n||!t||!tn()){e.n=2;break}return e.n=1,an();case 1:c=e.v,c||l().showToast({title:"\u672a\u5f00\u542f\u5fae\u4fe1\u8ba2\u9605\u901a\u77e5",icon:"none"});case 2:return i=(0,r.A)((0,r.A)({},m),{},{preferences:(0,r.A)((0,r.A)({},m.preferences),{},(0,s.A)({},n,t))}),_(i),e.p=3,e.n=4,(0,Ae.r7)({preferences:i.preferences});case 4:o=e.v,_(o),e.n=6;break;case 5:e.p=5,e.v,_(a),l().showToast({title:"\u8bbe\u7f6e\u4fdd\u5b58\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 6:return e.a(2)}},e,null,[[3,5]])}));return function(n,t){return e.apply(this,arguments)}}();return A&&!C?(0,v.jsxs)(k,{className:"profile-page",children:[(0,v.jsx)(j,{title:"\u6211\u7684"}),(0,v.jsx)(Ge,{onSubmit:z})]}):(0,v.jsxs)(k,{className:"profile-page",children:[(0,v.jsx)(j,{title:"\u6211\u7684"}),(0,v.jsx)(Qe.A,{user:m}),(0,v.jsx)(He.A,{stats:m.stats,onSelect:function(e){"posts"===e?l().navigateTo({url:"/pages/my-posts/index"}):"following"===e?l().navigateTo({url:"/pages/contacts/index?tab=following"}):"followers"===e&&l().navigateTo({url:"/pages/contacts/index?tab=followers"})}}),(0,v.jsx)(u.Ss,{className:"profile-page__actions",children:(0,v.jsx)(u.Ss,{className:"profile-page__primary",onClick:function(){return l().navigateTo({url:"/pages/profile-edit/index"})},children:"\u7f16\u8f91\u8d44\u6599"})}),(0,v.jsx)(Ze,{pets:g}),(0,v.jsx)(Je,{preferences:m.preferences,onChange:U,onAction:I,onLogout:B})]})}var cn=t(9545);function on(){var e=(0,i.useState)("plaza"),n=(0,c.A)(e,2),t=n[0],a=n[1],l=(0,i.useState)({plaza:!0,nearby:!1,messages:!1,profile:!1}),d=(0,c.A)(l,2),h=d[0],f=d[1],p=(0,i.useState)(0),m=(0,c.A)(p,2),_=m[0],b=m[1],g=(0,i.useRef)(!0),j=function(e){f(function(n){return n[e]?n:(0,r.A)((0,r.A)({},n),{},(0,s.A)({},e,!0))}),a(e)};(0,o.useDidShow)(function(){if(g.current)g.current=!1;else{var e=(0,cn.OZ)();e&&j(e),b(function(e){return e+1})}}),(0,i.useEffect)(function(){return(0,cn.X_)(j)},[]);var y=function(e){return{display:t===e?"block":"none"}};return(0,v.jsxs)(u.Ss,{className:"home",children:[h.plaza?(0,v.jsx)(u.Ss,{className:"home__tab",style:y("plaza"),children:(0,v.jsx)(P,{active:"plaza"===t,showTick:_})}):null,h.nearby?(0,v.jsx)(u.Ss,{className:"home__tab",style:y("nearby"),children:(0,v.jsx)(Ye,{active:"nearby"===t,showTick:_})}):null,h.messages?(0,v.jsx)(u.Ss,{className:"home__tab",style:y("messages"),children:(0,v.jsx)(Fe,{active:"messages"===t,showTick:_})}):null,h.profile?(0,v.jsx)(u.Ss,{className:"home__tab",style:y("profile"),children:(0,v.jsx)(rn,{active:"profile"===t,showTick:_})}):null,(0,v.jsx)(x,{active:t,onSwitch:j})]})}var ln={navigationStyle:"custom",disableScroll:!0},un=(0,a.eU)(on,"pages/home/index",{root:{cn:[]}},ln||{});on&&on.behaviors&&(un.behaviors=(un.behaviors||[]).concat(on.behaviors));Page(un)}},function(e){var n=function(n){return e(e.s=n)};e.O(0,[907,96,76],function(){return n(1991)});e.O()}]); \ No newline at end of file diff --git a/dist/pages/home/index.json b/dist/pages/home/index.json new file mode 100644 index 0000000..081e71f --- /dev/null +++ b/dist/pages/home/index.json @@ -0,0 +1 @@ +{"navigationStyle":"custom","disableScroll":true,"usingComponents":{"comp":"../../comp"}} \ No newline at end of file diff --git a/dist/pages/messages/index.wxml b/dist/pages/home/index.wxml similarity index 100% rename from dist/pages/messages/index.wxml rename to dist/pages/home/index.wxml diff --git a/dist/pages/home/index.wxss b/dist/pages/home/index.wxss new file mode 100644 index 0000000..d68be93 --- /dev/null +++ b/dist/pages/home/index.wxss @@ -0,0 +1 @@ +.bottom-tabbar{background:rgba(20,16,43,.88);border-top:2rpx solid rgba(216,180,255,.06);bottom:0;display:-ms-flexbox;display:flex;height:176rpx;left:0;position:fixed;right:0;z-index:60;-ms-flex-align:center;align-items:center;-ms-flex-pack:distribute;-webkit-box-sizing:border-box;box-sizing:border-box;justify-content:space-around}.bottom-tabbar__item{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-direction:column;flex-direction:column;position:relative;-ms-flex-align:center;align-items:center;color:#8a7aab;gap:8rpx}.bottom-tabbar__fab:active .bottom-tabbar__fab-inner,.bottom-tabbar__item:active .bottom-tabbar__icon{-webkit-transform:scale(.96);-ms-transform:scale(.96);transform:scale(.96)}.bottom-tabbar__label{color:#8a7aab;font:500 20rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;letter-spacing:0}.bottom-tabbar__label--active{color:#d8b4ff}.bottom-tabbar__fab{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-pack:center;justify-content:center;margin-top:-36rpx}.bottom-tabbar__fab-inner{background:linear-gradient(135deg,#d8b4ff,#ffb3c8);border-radius:32rpx;display:-ms-flexbox;display:flex;height:104rpx;width:104rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;-webkit-box-shadow:0 20rpx 48rpx rgba(216,180,255,.3);box-shadow:0 20rpx 48rpx rgba(216,180,255,.3);color:#2a1d10;justify-content:center;-webkit-transition:-webkit-transform .2s;transition:-webkit-transform .2s;transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.bottom-tabbar__icon-wrap{position:relative}.bottom-tabbar__fab-icon,.bottom-tabbar__icon{background-position:50%;background-repeat:no-repeat;background-size:48rpx 48rpx;height:48rpx;-webkit-transition:-webkit-transform .2s;transition:-webkit-transform .2s;transition:transform .2s;transition:transform .2s,-webkit-transform .2s;width:48rpx}.bottom-tabbar__icon--plaza{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%238a7aab' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='m16.24 7.76-2.12 6.36-6.36 2.12 2.12-6.36z'/%3E%3C/svg%3E")}.bottom-tabbar__item--active .bottom-tabbar__icon--plaza{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23d8b4ff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='m16.24 7.76-2.12 6.36-6.36 2.12 2.12-6.36z'/%3E%3C/svg%3E")}.bottom-tabbar__icon--nearby{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%238a7aab' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")}.bottom-tabbar__item--active .bottom-tabbar__icon--nearby{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23d8b4ff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")}.bottom-tabbar__icon--messages{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%238a7aab' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3C/svg%3E")}.bottom-tabbar__item--active .bottom-tabbar__icon--messages{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23d8b4ff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3C/svg%3E")}.bottom-tabbar__icon--profile{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%238a7aab' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E")}.bottom-tabbar__item--active .bottom-tabbar__icon--profile{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23d8b4ff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E")}.bottom-tabbar__fab-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%232a1d10' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.4' viewBox='0 0 24 24'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E")}.bottom-tabbar__dot{background:#ffb3c8;border:3rpx solid #14102b;border-radius:50%;height:16rpx;position:absolute;right:-2rpx;top:0;width:16rpx}.custom-nav{-webkit-box-sizing:border-box;box-sizing:border-box;min-height:108rpx;padding-left:40rpx;position:relative;z-index:20}.custom-nav__row{display:-ms-flexbox;display:flex;height:108rpx;-ms-flex-align:end;align-items:flex-end;-webkit-box-sizing:border-box;box-sizing:border-box;gap:24rpx;padding-bottom:16rpx}.custom-nav__left{-ms-flex:0 0 0px;flex:0 0 0;height:0;min-width:0;overflow:hidden;pointer-events:none;visibility:hidden;width:0}.custom-nav__leading{display:-ms-flexbox;display:flex;min-width:76rpx;-ms-flex-align:center;align-items:center}.custom-nav__title{color:#f0e9ff;-ms-flex:1;flex:1;font-family:Space Grotesk,Inter,system-ui,sans-serif;font-size:60rpx;font-weight:700;letter-spacing:0;line-height:1}.custom-nav__title--compact{font-size:36rpx;font-weight:600;text-align:center}.page-shell{color:#f0e9ff;min-height:100vh;overflow:hidden}.page-shell__scroll{height:100vh}.page-shell__inner{-webkit-box-sizing:border-box;box-sizing:border-box;min-height:100vh}.search-bar{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;background:rgba(45,34,85,.4);border:2rpx solid rgba(216,180,255,.06);border-radius:24rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#8a7aab;gap:20rpx;margin:0 40rpx 24rpx;padding:20rpx 28rpx}.search-bar__input{color:#f0e9ff;-ms-flex:1;flex:1;font:400 26rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.search-bar__placeholder{color:#8a7aab}.chip{-ms-flex-negative:0;display:-ms-flexbox;display:flex;flex-shrink:0;-ms-flex-align:center;align-items:center;background:rgba(45,34,85,.4);border:2rpx solid rgba(216,180,255,.1);border-radius:19998rpx;color:#c7b9e0;font:500 24rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;gap:8rpx;padding:14rpx 24rpx;-webkit-transition:all .2s;transition:all .2s}.chip--active{background:-webkit-gradient(linear,left top,right top,from(#d8b4ff),to(#ffb3c8));background:linear-gradient(90deg,#d8b4ff,#ffb3c8);border-color:transparent;color:#2a1d10}.chip__prefix{font-weight:700}.feed-ad-card{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;background:linear-gradient(135deg,rgba(255,179,200,.12),rgba(255,217,168,.08));border:2rpx solid rgba(255,217,168,.12);border-radius:32rpx;gap:24rpx;margin:0 32rpx 28rpx;padding:28rpx}.feed-ad-card__mark{background:linear-gradient(135deg,#ffb3c8,#ffd9a8);border-radius:28rpx;display:-ms-flexbox;display:flex;height:100rpx;width:100rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#2a1d10;font:700 36rpx/1 Space Grotesk,Inter,system-ui,sans-serif;justify-content:center}.feed-ad-card__text{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-direction:column;flex-direction:column;gap:8rpx}.feed-ad-card__title{color:#f0e9ff;font:600 26rpx/1.3 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.feed-ad-card__sub{color:#c7b9e0;font:400 22rpx/1.4 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.feed-ad-card__cta{background:#ffd9a8;border-radius:19998rpx;color:#2a1d10;font:600 22rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:12rpx 24rpx}.plaza-page__chips{padding-bottom:24rpx;width:100%}.plaza-page__chips-inner{display:-ms-flexbox;display:flex;gap:16rpx;padding:0 40rpx}.plaza-page__feed{padding-top:4rpx}.plaza-page__search-result{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;background:rgba(45,34,85,.35);border:2rpx solid rgba(216,180,255,.08);border-radius:20rpx;-webkit-box-sizing:border-box;box-sizing:border-box;gap:24rpx;justify-content:space-between;margin:0 40rpx 24rpx;padding:20rpx 24rpx}.plaza-page__search-copy{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-direction:column;flex-direction:column;gap:10rpx;min-width:0}.plaza-page__search-title{color:#f0e9ff;font:600 26rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.plaza-page__search-count{color:#8a7aab;font:400 22rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.plaza-page__search-clear{-ms-flex-negative:0;color:#d8b4ff;flex-shrink:0;font:600 24rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.plaza-page__empty{color:#8a7aab;display:block;font:400 24rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:16rpx 0 40rpx;text-align:center}.nearby-map{height:100%;inset:0;position:absolute;width:100%}.map-controls{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:24rpx;position:absolute;right:32rpx;top:424rpx;z-index:12}.map-controls__btn:active{background:rgba(45,34,85,.9)}.map-controls__stack{border:2rpx solid rgba(216,180,255,.08);border-radius:28rpx;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;overflow:hidden}.map-controls__btn{background:rgba(20,16,43,.72);display:-ms-flexbox;display:flex;height:88rpx;width:88rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;-webkit-box-shadow:0 16rpx 40rpx rgba(0,0,0,.3);box-shadow:0 16rpx 40rpx rgba(0,0,0,.3);color:#f0e9ff;justify-content:center}.map-controls__stack .map-controls__btn + .map-controls__btn{border-top:2rpx solid rgba(216,180,255,.08)}.nearby-pet-card{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;background:rgba(45,34,85,.4);border:2rpx solid rgba(216,180,255,.06);border-radius:32rpx;gap:24rpx;padding:24rpx;-webkit-transition:background .2s,border-color .2s;transition:background .2s,border-color .2s}.nearby-pet-card--active{background:rgba(216,180,255,.12);border-color:#d8b4ff}.nearby-pet-card__photo{position:relative;-ms-flex-negative:0;border-radius:24rpx;flex-shrink:0;height:144rpx;overflow:hidden;width:144rpx}.nearby-pet-card__photo-img{height:100%;inset:0;position:absolute;width:100%;z-index:1}.photo-gold{background:radial-gradient(circle at 50% 30%,rgba(255,217,168,.5) 0,transparent 50%),linear-gradient(160deg,#6b4f9a,#2a1f4a)}.photo-green{background:radial-gradient(circle at 50% 30%,rgba(143,229,181,.5) 0,transparent 50%),linear-gradient(160deg,#4a7a6a,#1a3a2a)}.photo-pink{background:radial-gradient(circle at 50% 30%,rgba(255,179,200,.5) 0,transparent 50%),linear-gradient(160deg,#7a4a6a,#3a1a2a)}.photo-blue{background:radial-gradient(circle at 50% 30%,rgba(216,180,255,.5) 0,transparent 50%),linear-gradient(160deg,#4a4a8a,#1a1a3a)}.nearby-pet-card__photo::after{background:radial-gradient(ellipse at 50% 35%,hsla(0,0%,100%,.18) 0,transparent 60%);content:"";inset:0;position:absolute}.nearby-pet-card__distance{background:rgba(0,0,0,.55);border-radius:12rpx;bottom:12rpx;color:#f0e9ff;font:600 18rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;left:12rpx;padding:4rpx 12rpx;position:absolute;z-index:2}.nearby-pet-card__info{-ms-flex:1;flex:1;min-width:0}.nearby-pet-card__title{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:12rpx}.nearby-pet-card__name{font:700 28rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.nearby-pet-card__online{background:#8fe5b5;border-radius:50%;-webkit-box-shadow:0 0 8rpx #8fe5b5;box-shadow:0 0 8rpx #8fe5b5;height:12rpx;width:12rpx}.nearby-pet-card__meta,.nearby-pet-card__mood{color:#c7b9e0;display:block;font:400 22rpx/1.3 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:8rpx}.nearby-pet-card__tags{display:-ms-flexbox;display:flex;gap:12rpx;margin-top:16rpx}.nearby-pet-card__tag{background:rgba(255,217,168,.14);border:2rpx solid rgba(255,217,168,.18);border-radius:19998rpx;color:#ffd9a8;font:500 18rpx/1.4 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:4rpx 16rpx}.nearby-pet-card__actions{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:16rpx;-ms-flex-align:center;align-items:center;-ms-flex-negative:0;flex-shrink:0;width:156rpx}.nearby-pet-card__friend{border-radius:19998rpx;display:-ms-flexbox;display:flex;height:60rpx;width:152rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;background:linear-gradient(135deg,#d8b4ff,#ffb3c8);-webkit-box-shadow:0 12rpx 32rpx rgba(216,180,255,.22);box-shadow:0 12rpx 32rpx rgba(216,180,255,.22);-webkit-box-sizing:border-box;box-sizing:border-box;color:#2a1d10;gap:8rpx;justify-content:center;-webkit-transition:opacity .18s,background .18s,-webkit-transform .18s;transition:opacity .18s,background .18s,-webkit-transform .18s;transition:transform .18s,opacity .18s,background .18s;transition:transform .18s,opacity .18s,background .18s,-webkit-transform .18s}.nearby-pet-card__friend:active{-webkit-transform:scale(.98);-ms-transform:scale(.98);transform:scale(.98)}.nearby-pet-card__friend--friend{background:rgba(143,229,181,.16);border:2rpx solid rgba(143,229,181,.32);-webkit-box-shadow:none;box-shadow:none;color:#8fe5b5}.nearby-pet-card__friend--mine,.nearby-pet-card__friend--pending{background:rgba(216,180,255,.08);border:2rpx solid rgba(216,180,255,.18);-webkit-box-shadow:none;box-shadow:none;color:#8a7aab}.nearby-pet-card__friend-text{font:600 20rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;white-space:nowrap}.nearby-pet-card__btn{background:rgba(20,16,43,.5);border:2rpx solid rgba(216,180,255,.08);border-radius:50%;display:-ms-flexbox;display:flex;height:68rpx;width:68rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#c7b9e0;justify-content:center}.nearby-pet-card__btn--like{background:rgba(20,16,43,.5);border:2rpx solid rgba(216,180,255,.08);-webkit-box-shadow:none;box-shadow:none;color:#c7b9e0}.nearby-pet-card__btn--liked{background:linear-gradient(135deg,#ffb3c8,#ff8aab);border:0;-webkit-box-shadow:0 12rpx 32rpx rgba(255,138,171,.35);box-shadow:0 12rpx 32rpx rgba(255,138,171,.35);color:#fff}.nearby-sheet{background:rgba(31,23,66,.9);border-radius:48rpx 48rpx 0 0;border-top:2rpx solid rgba(216,180,255,.1);bottom:176rpx;-webkit-box-shadow:0 -40rpx 80rpx rgba(0,0,0,.3);box-shadow:0 -40rpx 80rpx rgba(0,0,0,.3);-webkit-box-sizing:border-box;box-sizing:border-box;left:0;overflow:hidden;position:fixed;right:0;-webkit-transition:height .28s cubic-bezier(.2,0,0,1);transition:height .28s cubic-bezier(.2,0,0,1);z-index:50}.nearby-sheet--dragging{-webkit-transition:none;transition:none}.nearby-sheet__handle{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:24rpx 0 20rpx}.nearby-sheet__bar{background:rgba(216,180,255,.3);border-radius:4rpx;height:8rpx;-webkit-transition:background .2s,width .2s;transition:background .2s,width .2s;width:80rpx}.nearby-sheet--min .nearby-sheet__bar{background:rgba(216,180,255,.5);height:10rpx;width:96rpx}.nearby-sheet--min .nearby-sheet__chips,.nearby-sheet--min .nearby-sheet__header,.nearby-sheet--min .nearby-sheet__list{display:none}.nearby-sheet__header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;padding:0 40rpx 24rpx}.nearby-sheet__count,.nearby-sheet__title{display:block}.nearby-sheet__title{color:#f0e9ff;font:700 40rpx/1.2 Space Grotesk,Inter,system-ui,sans-serif}.nearby-sheet__count{color:#8a7aab;font:500 24rpx/1.4 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:4rpx}.nearby-sheet__chips{display:-ms-flexbox;display:flex;gap:16rpx;overflow-x:auto;padding:0 40rpx 24rpx}.nearby-sheet__list{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:20rpx;padding:0 32rpx 56rpx}.nearby-sheet__empty{color:#8a7aab;font:500 26rpx/1.6 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:64rpx 48rpx;text-align:center}.nearby-page{color:#f0e9ff;min-height:100vh;overflow:hidden;position:relative}.nearby-page__search{display:-ms-flexbox;display:flex;left:40rpx;position:absolute;right:40rpx;z-index:12;-ms-flex-align:center;align-items:center;background:rgba(20,16,43,.82);border:2rpx solid rgba(216,180,255,.14);border-radius:19998rpx;-webkit-box-shadow:0 16rpx 40rpx rgba(0,0,0,.3);box-shadow:0 16rpx 40rpx rgba(0,0,0,.3);-webkit-box-sizing:border-box;box-sizing:border-box;gap:16rpx;height:80rpx;padding:0 28rpx}.nearby-page__search .icon{color:#d8b4ff}.nearby-page__search-input{color:#f0e9ff;-ms-flex:1;flex:1;font:500 26rpx/80rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:80rpx;min-width:0}.nearby-page__search-ph{color:#8a7aab}.nearby-page__search-clear{-ms-flex-negative:0;display:-ms-flexbox;display:flex;flex-shrink:0;height:44rpx;width:44rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;background:rgba(216,180,255,.12);border-radius:50%;color:#c7b9e0;justify-content:center}.active-user-row{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%}.active-user-row__inner{display:-ms-flexbox;display:flex;gap:24rpx;padding:24rpx 40rpx 16rpx}.active-user-row__item{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;gap:12rpx}.active-user-row__avatar-wrap{position:relative}.active-user-row__add{border-radius:50%;display:-ms-flexbox;display:flex;height:108rpx;width:108rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;background:rgba(216,180,255,.08);border:2rpx dashed rgba(216,180,255,.35);color:#d8b4ff;justify-content:center}.active-user-row__live{background:-webkit-gradient(linear,left top,right top,from(#d8b4ff),to(#ffb3c8));background:linear-gradient(90deg,#d8b4ff,#ffb3c8);border:3rpx solid #14102b;border-radius:12rpx;bottom:-4rpx;color:#2a1d10;font:700 18rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:4rpx 12rpx;position:absolute;right:-8rpx}.active-user-row__name{color:#c7b9e0;font:500 22rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;max-width:120rpx;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-item{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:24rpx;padding:24rpx 40rpx;-webkit-transition:background .2s;transition:background .2s}.conversation-item:active{background:rgba(216,180,255,.06)}.conversation-item__main{-ms-flex:1;flex:1;min-width:0}.conversation-item__bottom,.conversation-item__name-row,.conversation-item__top{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.conversation-item__top{-ms-flex-pack:justify;justify-content:space-between}.conversation-item__name-row{gap:8rpx;min-width:0}.conversation-item__name{color:#f0e9ff;font:600 28rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-item__pet{color:#d8b4ff;font:500 22rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.conversation-item__time{color:#8a7aab;font:400 22rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.conversation-item__bottom{-ms-flex-pack:justify;gap:16rpx;justify-content:space-between;margin-top:12rpx}.conversation-item__preview{color:#c7b9e0;-ms-flex:1;flex:1;font:400 24rpx/1.3 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-item__badge{background:#ffb3c8;border-radius:18rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#2a1d10;font:700 20rpx/36rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:36rpx;min-width:36rpx;padding:0 12rpx;text-align:center}.conversation-item__muted{background:#8a7aab;border-radius:50%;height:16rpx;opacity:.4;width:16rpx}.conversation-item__pin{color:#ffd9a8}.messages-page__divider{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;color:#8a7aab;font:500 20rpx/1 Space Grotesk,Inter,system-ui,sans-serif;gap:20rpx;letter-spacing:.18em;padding:24rpx 40rpx 12rpx}.messages-page__divider::after{background:rgba(216,180,255,.08);content:"";-ms-flex:1;flex:1;height:2rpx}.messages-page__list{padding-bottom:24rpx}.messages-page__empty{color:#8a7aab;display:block;font:400 26rpx/1.6 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:80rpx 48rpx;text-align:center}.pet-shelf{padding:0 40rpx 44rpx}.pet-shelf__head{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:20rpx}.pet-shelf__title{color:#c7b9e0;font:600 26rpx/1 Space Grotesk,Inter,system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase}.pet-shelf__more{color:#d8b4ff;font:500 22rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.pet-shelf__list{display:-ms-flexbox;display:flex;gap:20rpx}.pet-shelf__card{background:rgba(45,34,85,.4);border:2rpx solid rgba(216,180,255,.08);border-radius:32rpx;-ms-flex:1;flex:1;min-width:0;padding:24rpx}.pet-shelf__photo{border-radius:20rpx;height:156rpx;overflow:hidden;position:relative}.pet-shelf__photo-img{border-radius:20rpx;height:156rpx;width:100%}.pet-shelf__label{background:rgba(0,0,0,.4);border-radius:19998rpx;bottom:16rpx;color:#f0e9ff;font:500 18rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;left:16rpx;padding:6rpx 16rpx;position:absolute}.pet-shelf__name{color:#f0e9ff;display:block;font:600 26rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:20rpx;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pet-shelf__meta{color:#8a7aab;display:block;font:400 20rpx/1.3 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:6rpx}.pet-shelf__card--add{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;background:rgba(45,34,85,.22);color:#8a7aab;justify-content:center}.pet-shelf__card--limit{min-height:260rpx}.pet-shelf__add-icon{border:2rpx solid rgba(216,180,255,.12);border-radius:50%;display:-ms-flexbox;display:flex;height:80rpx;width:80rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.pet-shelf__add-label{font:500 22rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:16rpx}.switch{background:#8a7aab;border-radius:22rpx;height:44rpx;position:relative;-webkit-transition:background .2s;transition:background .2s;width:72rpx;-ms-flex-negative:0;flex-shrink:0}.switch::after{background:#f0e9ff;border-radius:50%;content:"";height:36rpx;left:4rpx;position:absolute;top:4rpx;-webkit-transition:-webkit-transform .2s cubic-bezier(.2,0,0,1);transition:-webkit-transform .2s cubic-bezier(.2,0,0,1);transition:transform .2s cubic-bezier(.2,0,0,1);transition:transform .2s cubic-bezier(.2,0,0,1),-webkit-transform .2s cubic-bezier(.2,0,0,1);width:36rpx}.switch--checked{background:#d8b4ff}.switch--checked::after{-webkit-transform:translateX(28rpx);-ms-transform:translateX(28rpx);transform:translateX(28rpx)}.preference-list{padding:0 40rpx}.preference-list__title{color:#c7b9e0;display:block;font:600 26rpx/1 Space Grotesk,Inter,system-ui,sans-serif;letter-spacing:.08em;margin-bottom:20rpx;text-transform:uppercase}.preference-list__panel{background:rgba(31,23,66,.68);border:2rpx solid rgba(216,180,255,.08);border-radius:32rpx;overflow:hidden}.preference-list__row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;border-bottom:2rpx solid rgba(216,180,255,.04);gap:24rpx;padding:28rpx 32rpx}.preference-list__row:last-child{border-bottom:0}.preference-list__row:active{background:rgba(216,180,255,.05)}.preference-list__icon{border-radius:20rpx;display:-ms-flexbox;display:flex;height:64rpx;width:64rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;background:linear-gradient(135deg,#d8b4ff,#ffb3c8);color:#2a1d10;justify-content:center}.preference-list__icon--notifications{background:linear-gradient(135deg,#ffd9a8,#ffb3c8)}.preference-list__icon--help{background:linear-gradient(135deg,#8fe5b5,#d8b4ff)}.preference-list__label{color:#f0e9ff;-ms-flex:1;flex:1;font:500 28rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.preference-list__value{color:#8a7aab;font:400 36rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.preference-list__logout{background:rgba(255,138,155,.1);border:2rpx solid rgba(255,138,155,.2);border-radius:32rpx;color:#ff8a9b;font:600 28rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:28rpx;padding:26rpx;text-align:center}.preference-list__logout:active{background:rgba(255,138,155,.16)}.login-card{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;background:linear-gradient(160deg,rgba(45,34,85,.7),rgba(31,23,66,.7));border:2rpx solid rgba(216,180,255,.12);border-radius:48rpx;margin:48rpx 40rpx;padding:64rpx 48rpx 48rpx}.login-card__title{color:#f0e9ff;font:700 44rpx/1.1 Space Grotesk,Inter,system-ui,sans-serif}.login-card__sub{color:#c7b9e0;font:400 26rpx/1.5 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:16rpx;text-align:center}.login-card__avatar-btn{background:#251c4a;border:2rpx dashed rgba(216,180,255,.3);border-radius:50%;display:-ms-flexbox;display:flex;height:176rpx;margin:48rpx 0 40rpx;overflow:hidden;padding:0;width:176rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;line-height:normal}.login-card__avatar-btn::after{border:none}.login-card__avatar-img{border-radius:50%;height:176rpx;width:176rpx}.login-card__avatar-empty{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;gap:8rpx}.login-card__avatar-plus{color:#d8b4ff;font:300 52rpx/1 Space Grotesk,Inter,system-ui,sans-serif}.login-card__avatar-hint{color:#8a7aab;font:400 22rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.login-card__field{background:rgba(20,16,43,.6);border:2rpx solid rgba(216,180,255,.1);border-radius:24rpx;-webkit-box-sizing:border-box;box-sizing:border-box;margin-bottom:32rpx;padding:0 32rpx;width:100%}.login-card__input{color:#f0e9ff;font:400 28rpx/92rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:92rpx}.login-card__placeholder{color:#8a7aab}.login-card__submit{background:-webkit-gradient(linear,left top,right top,from(#d8b4ff),to(#ffb3c8));background:linear-gradient(90deg,#d8b4ff,#ffb3c8);border-radius:24rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#2a1d10;font:700 28rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:26rpx;text-align:center;width:100%}.login-card__submit--disabled{opacity:.45}.login-card__tip{color:#8a7aab;font:400 22rpx/1.4 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:28rpx;text-align:center}.profile-page__actions{display:-ms-flexbox;display:flex;gap:20rpx;padding:0 40rpx 48rpx}.profile-page__primary,.profile-page__secondary{border-radius:24rpx;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex:1;flex:1;font:600 26rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:22rpx;text-align:center}.profile-page__primary{background:-webkit-gradient(linear,left top,right top,from(#d8b4ff),to(#ffb3c8));background:linear-gradient(90deg,#d8b4ff,#ffb3c8);color:#2a1d10}.profile-page__secondary{background:rgba(45,34,85,.4);border:2rpx solid rgba(216,180,255,.1);color:#f0e9ff;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;gap:12rpx;justify-content:center}.home{background:var(--app-bg);min-height:100vh}.home__tab{min-height:100vh} \ No newline at end of file diff --git a/dist/pages/messages/index.js b/dist/pages/messages/index.js deleted file mode 100644 index 543819a..0000000 --- a/dist/pages/messages/index.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[781],{6430:function(e,s,a){var n=a(8870),t=a(1212),r=a(9379),i=a(467),c=a(5544),o=a(6540),l=a(758),u=a.n(l),m=a(118),v=a(7797),d=a(8324),_=a(6503),x=a(7377),h=a(326),p=a(7745),j=a(3401),f=a(4848);function g(e){var s=e.users,a=e.onSelect,n=e.onDiscover;return(0,f.jsx)(m.BM,{scrollX:!0,className:"active-user-row",showScrollbar:!1,children:(0,f.jsxs)(m.Ss,{className:"active-user-row__inner",children:[(0,f.jsxs)(m.Ss,{className:"active-user-row__item",onClick:n,children:[(0,f.jsx)(m.Ss,{className:"active-user-row__avatar-wrap active-user-row__add",children:(0,f.jsx)(j.A,{name:"plus",size:22})}),(0,f.jsx)(m.EY,{className:"active-user-row__name",children:"\u627e\u6c6a\u53cb"})]}),s.map(function(e){return(0,f.jsxs)(m.Ss,{className:"active-user-row__item",onClick:function(){return null===a||void 0===a?void 0:a(e)},children:[(0,f.jsxs)(m.Ss,{className:"active-user-row__avatar-wrap",children:[(0,f.jsx)(p.A,{avatarKey:e.avatarKey,avatarUrl:e.avatarUrl,size:"lg",label:e.name}),e.live?(0,f.jsx)(m.EY,{className:"active-user-row__live",children:"LIVE"}):null]}),(0,f.jsx)(m.EY,{className:"active-user-row__name",children:e.name})]},e.id)})]})})}var w=g;function N(e){var s=e.conversation,a=e.onClick;return(0,f.jsxs)(m.Ss,{className:"conversation-item",onClick:a,children:[(0,f.jsx)(p.A,{avatarKey:s.avatarKey,avatarUrl:s.avatarUrl,size:"lg",online:s.online,petTag:"single"===s.type?"\ud83d\udc3e":void 0}),(0,f.jsxs)(m.Ss,{className:"conversation-item__main",children:[(0,f.jsxs)(m.Ss,{className:"conversation-item__top",children:[(0,f.jsxs)(m.Ss,{className:"conversation-item__name-row",children:[(0,f.jsx)(m.EY,{className:"conversation-item__name",children:s.title}),s.petName?(0,f.jsx)(m.EY,{className:"conversation-item__pet",children:s.petName}):null]}),(0,f.jsx)(m.EY,{className:"conversation-item__time",children:s.timeText})]}),(0,f.jsxs)(m.Ss,{className:"conversation-item__bottom",children:[(0,f.jsx)(m.EY,{className:"conversation-item__preview",children:s.preview}),s.pinned?(0,f.jsx)(m.Ss,{className:"conversation-item__pin",children:(0,f.jsx)(j.A,{name:"bookmark",size:12})}):s.unreadCount>0?(0,f.jsx)(m.EY,{className:"conversation-item__badge",children:s.unreadCount}):s.muted?(0,f.jsx)(m.Ss,{className:"conversation-item__muted"}):null]})]})]})}var S=N,A=a(9672),b=[{key:"all",label:"\u5168\u90e8"},{key:"unread",label:"\u672a\u8bfb"}];function C(){var e=(0,o.useState)("all"),s=(0,c.A)(e,2),a=s[0],n=s[1],p=(0,o.useState)([]),j=(0,c.A)(p,2),g=j[0],N=j[1],C=(0,o.useState)([]),E=(0,c.A)(C,2),k=E[0],y=E[1],Y=(0,o.useState)(""),U=(0,c.A)(Y,2),T=U[0],I=U[1],L=(0,o.useRef)(!0),z=function(){(0,A.VL)(a).then(function(e){N(e.activeUsers),y(e.conversations)})};(0,o.useEffect)(function(){z()},[a]),(0,l.useDidShow)(function(){L.current?L.current=!1:z()});var K=function(){var e=(0,i.A)((0,t.A)().m(function e(s){return(0,t.A)().w(function(e){while(1)switch(e.n){case 0:y(function(e){return e.map(function(e){return e._id===s._id?(0,r.A)((0,r.A)({},e),{},{unreadCount:0}):e})}),(0,A.vs)(s._id),u().navigateTo({url:"/pages/chat/index?conversationId=".concat(s._id,"&title=").concat(encodeURIComponent(s.title))});case 1:return e.a(2)}},e)}));return function(s){return e.apply(this,arguments)}}(),D=function(e){u().navigateTo({url:"/pages/chat/index?targetUserId=".concat(e.id,"&title=").concat(encodeURIComponent(e.name))})},R=function(){return u().navigateTo({url:"/pages/contacts/index?tab=discover"})},B=T.trim().toLowerCase(),J=B?k.filter(function(e){return e.title.toLowerCase().includes(B)||(e.preview||"").toLowerCase().includes(B)}):k;return(0,f.jsxs)(d.A,{className:"messages-page",children:[(0,f.jsx)(v.A,{title:"\u6c6a\u53cb"}),(0,f.jsx)(x.A,{placeholder:"\u641c\u7d22\u6c6a\u53cb\u6216\u804a\u5929",value:T,onInput:I}),(0,f.jsx)(h.A,{items:b,value:a,onChange:n}),B?null:(0,f.jsx)(w,{users:g,onSelect:D,onDiscover:R}),(0,f.jsx)(m.Ss,{className:"messages-page__divider",children:(0,f.jsx)(m.EY,{children:B?"\u641c\u7d22\u7ed3\u679c":"\u6700\u8fd1\u804a\u5929"})}),(0,f.jsxs)(m.Ss,{className:"messages-page__list",children:[J.map(function(e){return(0,f.jsx)(S,{conversation:e,onClick:function(){return K(e)}},e._id)}),0===J.length?(0,f.jsx)(m.EY,{className:"messages-page__empty",children:B?"\u6ca1\u6709\u5339\u914d\u7684\u804a\u5929":"unread"===a?"\u6ca1\u6709\u672a\u8bfb\u6d88\u606f":"\u8fd8\u6ca1\u6709\u804a\u5929\uff0c\u53bb\u300c\u9644\u8fd1\u300d\u52a0\u6c6a\u53cb\u5427"}):null]}),(0,f.jsx)(_.A,{active:"messages"})]})}var E={navigationBarTitleText:"\u6c6a\u53cb",navigationStyle:"custom",disableScroll:!0},k=(0,n.eU)(C,"pages/messages/index",{root:{cn:[]}},E||{});C&&C.behaviors&&(k.behaviors=(k.behaviors||[]).concat(C.behaviors));Page(k)}},function(e){var s=function(s){return e(e.s=s)};e.O(0,[907,96,76],function(){return s(6430)});e.O()}]); \ No newline at end of file diff --git a/dist/pages/messages/index.json b/dist/pages/messages/index.json deleted file mode 100644 index 87e0654..0000000 --- a/dist/pages/messages/index.json +++ /dev/null @@ -1 +0,0 @@ -{"navigationBarTitleText":"汪友","navigationStyle":"custom","disableScroll":true,"usingComponents":{"comp":"../../comp"}} \ No newline at end of file diff --git a/dist/pages/messages/index.wxss b/dist/pages/messages/index.wxss deleted file mode 100644 index 94c3bf6..0000000 --- a/dist/pages/messages/index.wxss +++ /dev/null @@ -1 +0,0 @@ -.active-user-row{-webkit-box-sizing:border-box;box-sizing:border-box;padding:24rpx 0 16rpx;width:100%}.active-user-row__inner{display:-ms-flexbox;display:flex;gap:24rpx;padding:0 40rpx}.active-user-row__item{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;gap:12rpx}.active-user-row__avatar-wrap{position:relative}.active-user-row__add{border-radius:50%;display:-ms-flexbox;display:flex;height:108rpx;width:108rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;background:rgba(216,180,255,.08);border:2rpx dashed rgba(216,180,255,.35);color:#d8b4ff;justify-content:center}.active-user-row__live{background:-webkit-gradient(linear,left top,right top,from(#d8b4ff),to(#ffb3c8));background:linear-gradient(90deg,#d8b4ff,#ffb3c8);border:3rpx solid #14102b;border-radius:12rpx;bottom:-4rpx;color:#2a1d10;font:700 18rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:4rpx 12rpx;position:absolute;right:-8rpx}.active-user-row__name{color:#c7b9e0;font:500 22rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;max-width:120rpx;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-item{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:24rpx;padding:24rpx 40rpx;-webkit-transition:background .2s;transition:background .2s}.conversation-item:active{background:rgba(216,180,255,.06)}.conversation-item__main{-ms-flex:1;flex:1;min-width:0}.conversation-item__bottom,.conversation-item__name-row,.conversation-item__top{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.conversation-item__top{-ms-flex-pack:justify;justify-content:space-between}.conversation-item__name-row{gap:8rpx;min-width:0}.conversation-item__name{color:#f0e9ff;font:600 28rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-item__pet{color:#d8b4ff;font:500 22rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.conversation-item__time{color:#8a7aab;font:400 22rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.conversation-item__bottom{-ms-flex-pack:justify;gap:16rpx;justify-content:space-between;margin-top:12rpx}.conversation-item__preview{color:#c7b9e0;-ms-flex:1;flex:1;font:400 24rpx/1.3 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-item__badge{background:#ffb3c8;border-radius:18rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#2a1d10;font:700 20rpx/36rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:36rpx;min-width:36rpx;padding:0 12rpx;text-align:center}.conversation-item__muted{background:#8a7aab;border-radius:50%;height:16rpx;opacity:.4;width:16rpx}.conversation-item__pin{color:#ffd9a8}.messages-page__divider{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;color:#8a7aab;font:500 20rpx/1 Space Grotesk,Inter,system-ui,sans-serif;gap:20rpx;letter-spacing:.18em;padding:24rpx 40rpx 12rpx}.messages-page__divider::after{background:rgba(216,180,255,.08);content:"";-ms-flex:1;flex:1;height:2rpx}.messages-page__list{padding-bottom:24rpx}.messages-page__empty{color:#8a7aab;display:block;font:400 26rpx/1.6 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:80rpx 48rpx;text-align:center} \ No newline at end of file diff --git a/dist/pages/my-posts/index.js b/dist/pages/my-posts/index.js index 86ccc71..bcc1eb0 100644 --- a/dist/pages/my-posts/index.js +++ b/dist/pages/my-posts/index.js @@ -1 +1 @@ -"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[493],{8868:function(s,n,e){var t=e(8870),a=e(1212),c=e(9379),i=e(467),r=e(5544),o=e(6540),l=e(758),u=e.n(l),p=e(118),m=e(374),h=e(3401),d=e(3972),f=e(7896),_=e(4149),v=e(994),y=e(4848);function x(){var s=(0,m.v)(),n=s.statusBarHeight,e=(0,o.useState)([]),t=(0,r.A)(e,2),x=t[0],j=t[1],k=(0,o.useState)(!0),b=(0,r.A)(k,2),A=b[0],w=b[1],N=(0,v.d)(480),S=function(){w(!0),(0,_.hv)().then(j).finally(function(){return w(!1)})};(0,o.useEffect)(function(){S()},[]),(0,l.useDidShow)(S);var g=function(){var s=(0,i.A)((0,a.A)().m(function s(n){var e,t;return(0,a.A)().w(function(s){while(1)switch(s.n){case 0:if(e=x.map(function(s){if(s._id!==n)return s;var e=!s.likedByMe;return e&&N.show(),(0,c.A)((0,c.A)({},s),{},{likedByMe:e,counts:(0,c.A)((0,c.A)({},s.counts),{},{likes:Math.max(0,s.counts.likes+(e?1:-1))})})}),j(e),t=e.find(function(s){return s._id===n}),!t){s.n=1;break}return s.n=1,(0,_.O$)(n,t.likedByMe);case 1:return s.a(2)}},s)}));return function(n){return s.apply(this,arguments)}}();return(0,y.jsxs)(p.Ss,{className:"my-posts",children:[(0,y.jsx)(p.Ss,{className:"my-posts__nav",style:{paddingTop:"".concat(n,"px")},children:(0,y.jsxs)(p.Ss,{className:"my-posts__nav-row",children:[(0,y.jsx)(p.Ss,{className:"my-posts__back",onClick:function(){return u().navigateBack()},children:(0,y.jsx)(h.A,{name:"chev",size:22,className:"my-posts__back-icon"})}),(0,y.jsx)(p.EY,{className:"my-posts__title",children:"\u6211\u7684\u52a8\u6001"}),(0,y.jsx)(p.Ss,{className:"my-posts__nav-spacer"})]})}),(0,y.jsx)(p.BM,{scrollY:!0,className:"my-posts__scroll",enhanced:!0,showScrollbar:!1,children:(0,y.jsxs)(p.Ss,{className:"my-posts__feed",children:[x.map(function(s){return(0,y.jsx)(d.A,{post:s,onLike:g,onOpen:function(s){return u().navigateTo({url:"/pages/post-detail/index?postId=".concat(s)})}},s._id)}),A&&0===x.length?(0,y.jsx)(p.EY,{className:"my-posts__empty",children:"\u52a0\u8f7d\u4e2d\u2026"}):A||0!==x.length?null:(0,y.jsx)(p.EY,{className:"my-posts__empty",children:"\u8fd8\u6ca1\u6709\u53d1\u5e03\u8fc7\u52a8\u6001\uff0c\u53bb\u5e7f\u573a\u70b9 + \u53d1\u5e03\u7b2c\u4e00\u6761\u5427"})]})}),(0,y.jsx)(f.A,{visible:N.visible})]})}var j={},k=(0,t.eU)(x,"pages/my-posts/index",{root:{cn:[]}},j||{});x&&x.behaviors&&(k.behaviors=(k.behaviors||[]).concat(x.behaviors));Page(k)}},function(s){var n=function(n){return s(s.s=n)};s.O(0,[907,96,76],function(){return n(8868)});s.O()}]); \ No newline at end of file +"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[493],{9416:function(n,e,t){var s=t(8870),r=t(1212),c=t(467),i=t(9379),o=t(5544),a=t(436),u=t(6540),l=t(758),f=t.n(l),d=t(118),p=t(374),h=t(3401),m=t(3972),v=t(7896),_=t(4149),y=t(994),A=t(5313);function k(n,e,t){var s=(0,u.useRef)(!0);(0,l.useDidShow)(function(){s.current?s.current=!1:(0,A.Xl)(n,t)&&e()})}var x=t(5596),w=t(4848),b=20;function S(n,e){var t=new Set(n.map(function(n){return n._id}));return[].concat((0,a.A)(n),(0,a.A)(e.filter(function(n){return!t.has(n._id)})))}function g(){var n=(0,p.v)(),e=n.statusBarHeight,t=(0,u.useState)([]),s=(0,o.A)(t,2),a=s[0],l=s[1],g=(0,u.useState)(""),j=(0,o.A)(g,2),N=j[0],M=j[1],B=(0,u.useState)(!0),E=(0,o.A)(B,2),T=E[0],Y=E[1],I=(0,u.useState)(!1),O=(0,o.A)(I,2),C=O[0],L=O[1],P=(0,y.d)(480),R=(0,u.useRef)([]),z=(0,u.useRef)(new Set),H=function(){var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";e?L(!0):n||Y(!0),(0,_.hv)({cursor:t,pageSize:b}).then(function(n){l(function(t){return e?S(t,n.list):n.list}),M(n.nextCursor||""),e||(0,A.aQ)("myPosts")}).finally(function(){e?L(!1):n||Y(!1)})};(0,u.useEffect)(function(){H()},[]),(0,u.useEffect)(function(){R.current=a},[a]),k("myPosts",function(){return H(!0)}),(0,u.useEffect)(function(){return(0,A.Fo)(function(n){var e=n.postId,t=n.liked,s=n.likes;l(function(n){return n.map(function(n){return n._id===e?n.likedByMe===t&&n.counts.likes===s?n:(0,i.A)((0,i.A)({},n),{},{likedByMe:t,counts:(0,i.A)((0,i.A)({},n.counts),{},{likes:s})}):n})})})},[]);var J=function(){T||C||!N||H(!0,!0,N)},Q=function(n){f().showModal({title:"\u5220\u9664\u52a8\u6001",content:"\u786e\u5b9a\u5220\u9664\u8fd9\u6761\u52a8\u6001\u5417\uff1f\u6b64\u64cd\u4f5c\u4e0d\u53ef\u6062\u590d\u3002",confirmText:"\u5220\u9664",confirmColor:"#ff8a9b",success:function(){var e=(0,c.A)((0,r.A)().m(function e(t){var s;return(0,r.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(t.confirm){e.n=1;break}return e.a(2);case 1:return s=R.current,l(function(e){return e.filter(function(e){return e._id!==n._id})}),e.p=2,e.n=3,(0,_.ys)(n._id);case 3:f().showToast({title:"\u5df2\u5220\u9664",icon:"none"}),e.n=5;break;case 4:e.p=4,e.v,l(s),f().showToast({title:"\u5220\u9664\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 5:return e.a(2)}},e,null,[[2,4]])}));function t(n){return e.apply(this,arguments)}return t}()})},D=function(n){var e=R.current.find(function(e){return e._id===n});e&&f().showActionSheet({itemList:["\u7f16\u8f91","\u5220\u9664"]}).then(function(t){0===t.tapIndex?((0,A.bE)(e),f().navigateTo({url:"/pages/post-edit/index?postId=".concat(n)})):1===t.tapIndex&&Q(e)}).catch(function(){})},F=function(){var n=(0,c.A)((0,r.A)().m(function n(e){var t,s,c,o;return(0,r.A)().w(function(n){while(1)switch(n.p=n.n){case 0:return n.n=1,(0,x.HQ)();case 1:if(n.v){n.n=2;break}return n.a(2);case 2:if(!z.current.has(e)){n.n=3;break}return n.a(2);case 3:if(t=R.current.find(function(n){return n._id===e}),t){n.n=4;break}return n.a(2);case 4:return s=!t.likedByMe,c=Math.max(0,t.counts.likes+(s?1:-1)),z.current.add(e),s&&P.show(),l(function(n){return n.map(function(n){return n._id===e?(0,i.A)((0,i.A)({},n),{},{likedByMe:s,counts:(0,i.A)((0,i.A)({},n.counts),{},{likes:c})}):n})}),n.p=5,n.n=6,(0,_.O$)(e,s);case 6:o=n.v,l(function(n){return n.map(function(n){return n._id===e?(0,i.A)((0,i.A)({},n),{},{likedByMe:o.liked,counts:(0,i.A)((0,i.A)({},n.counts),{},{likes:o.likes})}):n})}),n.n=8;break;case 7:n.p=7,n.v,l(function(n){return n.map(function(n){return n._id===e?(0,i.A)((0,i.A)({},n),{},{likedByMe:t.likedByMe,counts:(0,i.A)((0,i.A)({},n.counts),{},{likes:t.counts.likes})}):n})}),f().showToast({title:"\u70b9\u8d5e\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 8:return n.p=8,z.current.delete(e),n.f(8);case 9:return n.a(2)}},n,null,[[5,7,8,9]])}));return function(e){return n.apply(this,arguments)}}();return(0,w.jsxs)(d.Ss,{className:"my-posts",children:[(0,w.jsx)(d.Ss,{className:"my-posts__nav",style:{paddingTop:"".concat(e,"px")},children:(0,w.jsxs)(d.Ss,{className:"my-posts__nav-row",children:[(0,w.jsx)(d.Ss,{className:"my-posts__back",onClick:function(){return f().navigateBack()},children:(0,w.jsx)(h.A,{name:"chev",size:22,className:"my-posts__back-icon"})}),(0,w.jsx)(d.EY,{className:"my-posts__title",children:"\u6211\u7684\u52a8\u6001"}),(0,w.jsx)(d.Ss,{className:"my-posts__nav-spacer"})]})}),(0,w.jsx)(d.BM,{scrollY:!0,className:"my-posts__scroll",enhanced:!0,showScrollbar:!1,lowerThreshold:120,onScrollToLower:J,children:(0,w.jsxs)(d.Ss,{className:"my-posts__feed",children:[a.map(function(n){return(0,w.jsx)(m.A,{post:n,onLike:F,onOpen:function(e){(0,A.bE)(n),f().navigateTo({url:"/pages/post-detail/index?postId=".concat(e)})},onMore:D},n._id)}),T&&0===a.length?(0,w.jsx)(d.EY,{className:"my-posts__empty",children:"\u52a0\u8f7d\u4e2d\u2026"}):T||0!==a.length?C?(0,w.jsx)(d.EY,{className:"my-posts__empty",children:"\u52a0\u8f7d\u66f4\u591a\u4e2d\u2026"}):a.length>0&&!N?(0,w.jsx)(d.EY,{className:"my-posts__empty",children:"\u6682\u65f6\u6ca1\u6709\u66f4\u591a\u4e86"}):null:(0,w.jsx)(d.EY,{className:"my-posts__empty",children:"\u8fd8\u6ca1\u6709\u53d1\u5e03\u8fc7\u52a8\u6001\uff0c\u53bb\u5e7f\u573a\u70b9 + \u53d1\u5e03\u7b2c\u4e00\u6761\u5427"})]})}),(0,w.jsx)(v.A,{visible:P.visible})]})}var j={},N=(0,s.eU)(g,"pages/my-posts/index",{root:{cn:[]}},j||{});g&&g.behaviors&&(N.behaviors=(N.behaviors||[]).concat(g.behaviors));Page(N)}},function(n){var e=function(e){return n(n.s=e)};n.O(0,[907,96,76],function(){return e(9416)});n.O()}]); \ No newline at end of file diff --git a/dist/pages/my-posts/index.wxss b/dist/pages/my-posts/index.wxss index beefede..ca70f91 100644 --- a/dist/pages/my-posts/index.wxss +++ b/dist/pages/my-posts/index.wxss @@ -1 +1 @@ -.my-posts{background:#14102b;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100vh}.my-posts__nav{-ms-flex-negative:0;background:#14102b;flex-shrink:0}.my-posts__nav-row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:100rpx;padding:0 24rpx}.my-posts__back{display:-ms-flexbox;display:flex;height:72rpx;width:72rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#f0e9ff;justify-content:center}.my-posts__back-icon{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.my-posts__title{color:#f0e9ff;-ms-flex:1;flex:1;font:700 32rpx/1 Space Grotesk,Inter,system-ui,sans-serif;text-align:center}.my-posts__nav-spacer{width:72rpx}.my-posts__scroll{-ms-flex:1;flex:1;min-height:0}.my-posts__feed{padding:16rpx 32rpx 64rpx}.my-posts__empty{color:#8a7aab;display:block;font:400 26rpx/1.6 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:96rpx 48rpx;text-align:center} \ No newline at end of file +.my-posts{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100vh}.my-posts__nav{-ms-flex-negative:0;background:#14102b;flex-shrink:0}.my-posts__nav-row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:100rpx;padding:0 24rpx}.my-posts__back{display:-ms-flexbox;display:flex;height:72rpx;width:72rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#f0e9ff;justify-content:center}.my-posts__back-icon{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.my-posts__title{color:#f0e9ff;-ms-flex:1;flex:1;font:700 32rpx/1 Space Grotesk,Inter,system-ui,sans-serif;text-align:center}.my-posts__nav-spacer{width:72rpx}.my-posts__scroll{-ms-flex:1;flex:1;min-height:0}.my-posts__feed{padding:16rpx 32rpx 64rpx}.my-posts__empty{color:#8a7aab;display:block;font:400 26rpx/1.6 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:96rpx 48rpx;text-align:center} \ No newline at end of file diff --git a/dist/pages/nearby/index.js b/dist/pages/nearby/index.js deleted file mode 100644 index e98a7a5..0000000 --- a/dist/pages/nearby/index.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[160],{5775:function(e,n,t){var a=t(8870),r=t(9379),i=t(1212),c=t(467),s=t(5544),o=t(6540),l=t(758),u=t.n(l),d=t(118),h=t(7797),f=t(6503),p=t(3401),m=t(7896),b=t(4848),y="",g=1,_="nearbyMap",v="#d8b4ff",x="#2a1d4a",j="rgba(31,23,66,0.92)",S="#ffffff";function k(e){var n=e.pets,t=e.center,a=e.scale,r=e.activeId,i=e.onSelect,c=e.onRegionChange,s=n.map(function(e,n){return{pet:e,index:n}}).filter(function(e){var n=e.pet;return"number"===typeof n.latitude&&"number"===typeof n.longitude}).map(function(e){var n=e.pet,t=e.index,a=n._id===r;return{id:t,latitude:n.latitude,longitude:n.longitude,width:a?32:24,height:a?32:24,callout:{content:n.name,color:a?x:S,bgColor:a?v:j,fontSize:12,padding:6,borderRadius:10,display:"ALWAYS"}}}),o=function(e){var t=n[e.detail.markerId];t&&i(t._id)};return(0,b.jsx)(d.T5,{id:_,className:"nearby-map",latitude:t.latitude,longitude:t.longitude,scale:a,showLocation:!0,enableZoom:!0,enableScroll:!0,enableRotate:!1,subkey:y||void 0,layerStyle:y?g:void 0,markers:s,onMarkerTap:o,onRegionChange:function(e){"end"===(null===e||void 0===e?void 0:e.type)&&(null===c||void 0===c||c(e.causedBy||""))},onError:function(){}})}var w=k;function A(e){var n=e.onRefresh,t=e.onZoomIn,a=e.onZoomOut,r=e.onLocate;return(0,b.jsxs)(d.Ss,{className:"map-controls",children:[(0,b.jsx)(d.Ss,{className:"map-controls__btn",onClick:n,children:(0,b.jsx)(p.A,{name:"refresh",size:18})}),(0,b.jsxs)(d.Ss,{className:"map-controls__stack",children:[(0,b.jsx)(d.Ss,{className:"map-controls__btn",onClick:t,children:(0,b.jsx)(p.A,{name:"plus",size:18})}),(0,b.jsx)(d.Ss,{className:"map-controls__btn",onClick:a,children:(0,b.jsx)(p.A,{name:"minus",size:18})}),(0,b.jsx)(d.Ss,{className:"map-controls__btn",onClick:r,children:(0,b.jsx)(p.A,{name:"target",size:18})})]})]})}var N=A,T=t(7032);function C(e){var n=e.pet,t=e.active,a=e.onSelect,r=e.onFriendAction,i=e.onLike,c=n.isMine?{key:"mine",label:"\u6211\u7684",icon:"user"}:n.isFriend?{key:"friend",label:"\u804a\u5929",icon:"message"}:n.isFollowing?{key:"pending",label:"\u5f85\u56de\u5173",icon:"check"}:{key:"add",label:"\u52a0\u6c6a\u53cb",icon:"plus"};return(0,b.jsxs)(d.Ss,{className:"nearby-pet-card ".concat(t?"nearby-pet-card--active":""),onClick:a,children:[(0,b.jsx)(d.Ss,{className:"nearby-pet-card__photo ".concat(n.photoKey),children:(0,b.jsx)(d.EY,{className:"nearby-pet-card__distance",children:n.distanceText})}),(0,b.jsxs)(d.Ss,{className:"nearby-pet-card__info",children:[(0,b.jsxs)(d.Ss,{className:"nearby-pet-card__title",children:[(0,b.jsx)(d.EY,{className:"nearby-pet-card__name",children:n.name}),n.online?(0,b.jsx)(d.Ss,{className:"nearby-pet-card__online"}):null]}),(0,b.jsxs)(d.EY,{className:"nearby-pet-card__meta",children:[n.breed," \xb7 ",n.ageText]}),(0,b.jsx)(d.EY,{className:"nearby-pet-card__mood",children:n.mood}),(0,b.jsx)(d.Ss,{className:"nearby-pet-card__tags",children:n.tags.slice(0,2).map(function(e){return(0,b.jsx)(d.EY,{className:"nearby-pet-card__tag",children:e},e)})})]}),(0,b.jsxs)(d.Ss,{className:"nearby-pet-card__actions",children:[(0,b.jsxs)(d.Ss,{className:"nearby-pet-card__friend nearby-pet-card__friend--".concat(c.key),onClick:function(e){e.stopPropagation(),r()},children:[(0,b.jsx)(p.A,{name:c.icon,size:13}),(0,b.jsx)(d.EY,{className:"nearby-pet-card__friend-text",children:c.label})]}),(0,b.jsx)(d.Ss,{className:"nearby-pet-card__btn nearby-pet-card__btn--like",onClick:function(e){e.stopPropagation(),i()},children:(0,b.jsx)(p.A,{name:"heart-fill",size:16})})]})]})}var M=C;function I(e,n,t){return Math.max(n,Math.min(t,e))}var F=[64,220,400,520];function E(e){return F.reduce(function(n,t){return Math.abs(t-e)0&&void 0!==arguments[0]?arguments[0]:220,n=(0,o.useState)(e),t=(0,s.A)(n,2),a=t[0],r=t[1],i=(0,o.useState)(!1),c=(0,s.A)(i,2),l=c[0],u=c[1],d=(0,o.useRef)(0),h=(0,o.useRef)(e),f=function(e){var n=e.touches[0];d.current=n.clientY,h.current=a,u(!0)},p=function(e){if(l){var n=e.touches[0],t=h.current+d.current-n.clientY;r(I(t,F[0],F[F.length-1]))}},m=function(){u(!1),r(E(a))};return{height:a,dragging:l,isMin:a<=F[0]+8,onTouchStart:f,onTouchMove:p,onTouchEnd:m}}var Y=[{key:"all",label:"\u5168\u90e8"},{key:"dog",label:"\u72d7\u72d7"},{key:"cat",label:"\u732b\u54aa"},{key:"online",label:"\u5728\u7ebf"}];function R(e){var n=e.pets,t=e.activeId,a=e.filter,r=e.onFilterChange,i=e.onSelect,c=e.onFriendAction,s=e.onLike,o=L(220);return(0,b.jsxs)(d.Ss,{className:"nearby-sheet ".concat(o.isMin?"nearby-sheet--min":""," ").concat(o.dragging?"nearby-sheet--dragging":""),style:{height:"".concat(o.height,"px")},catchMove:!0,children:[(0,b.jsx)(d.Ss,{className:"nearby-sheet__handle",onTouchStart:o.onTouchStart,onTouchMove:o.onTouchMove,onTouchEnd:o.onTouchEnd,onTouchCancel:o.onTouchEnd,children:(0,b.jsx)(d.Ss,{className:"nearby-sheet__bar"})}),(0,b.jsx)(d.Ss,{className:"nearby-sheet__header",children:(0,b.jsxs)(d.Ss,{children:[(0,b.jsx)(d.EY,{className:"nearby-sheet__title",children:"\u9644\u8fd1\u7684\u6bdb\u5b69\u5b50"}),(0,b.jsxs)(d.EY,{className:"nearby-sheet__count",children:[n.length," \u4f4d\u6b63\u5728\u9644\u8fd1\u6d3b\u52a8"]})]})}),(0,b.jsx)(d.Ss,{className:"nearby-sheet__chips",children:Y.map(function(e){return(0,b.jsx)(T.A,{active:a===e.key,onClick:function(){return r(e.key)},children:e.label},e.key)})}),(0,b.jsx)(d.Ss,{className:"nearby-sheet__list",children:n.map(function(e){return(0,b.jsx)(M,{pet:e,active:e._id===t,onSelect:function(){return i(e._id)},onFriendAction:function(){return c(e)},onLike:function(){return s(e._id)}},e._id)})})]})}var z=R,B=t(374),K=t(9251),Z=t(5366);function O(e){return P.apply(this,arguments)}function P(){return P=(0,c.A)((0,i.A)().m(function e(n){var t,a,r=arguments;return(0,i.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(t=r.length>1&&void 0!==r[1]?r[1]:"all",(0,K.n)()){e.n=1;break}return e.a(2,Z.KB);case 1:return e.p=1,e.n=2,(0,K.k)("nearbyPets",{location:n,filters:{type:t}});case 2:return a=e.v,e.a(2,a.list);case 3:return e.p=3,e.v,e.a(2,Z.KB)}},e,null,[[1,3]])})),P.apply(this,arguments)}function U(e){return J.apply(this,arguments)}function J(){return J=(0,c.A)((0,i.A)().m(function e(n){return(0,i.A)().w(function(e){while(1)switch(e.n){case 0:if((0,K.n)()){e.n=1;break}return e.a(2,{matched:n.length%2===0});case 1:return e.a(2,(0,K.k)("matchLike",{petId:n}))}},e)})),J.apply(this,arguments)}var H=t(3810),W=t(994),q={latitude:31.2304,longitude:121.4737},D=4,G=20;function Q(){var e,n=(0,B.v)(),t=n.navHeight,a=(0,o.useState)(Z.KB),l=(0,s.A)(a,2),y=l[0],g=l[1],v=(0,o.useState)(null===(e=Z.KB[0])||void 0===e?void 0:e._id),x=(0,s.A)(v,2),j=x[0],S=x[1],k=(0,o.useState)("all"),A=(0,s.A)(k,2),T=A[0],C=A[1],M=(0,o.useState)(null),I=(0,s.A)(M,2),F=I[0],E=I[1],L=(0,o.useState)(15),Y=(0,s.A)(L,2),R=Y[0],K=Y[1],P=(0,o.useState)(""),J=(0,s.A)(P,2),Q=J[0],V=J[1],X=(0,W.d)(480);(0,o.useEffect)(function(){u().getLocation({type:"gcj02"}).then(function(e){return E({latitude:e.latitude,longitude:e.longitude})}).catch(function(){return E(q)})},[]);var $=function(e){O(e,T).then(function(e){g(e),S(function(n){var t;return n||(null===(t=e[0])||void 0===t?void 0:t._id)})})};(0,o.useEffect)(function(){F&&$(F)},[F,T]);var ee=function(){u().getLocation({type:"gcj02"}).then(function(e){return E({latitude:e.latitude,longitude:e.longitude})}).catch(function(){u().showModal({title:"\u9700\u8981\u4f4d\u7f6e\u6743\u9650",content:"\u8bf7\u5728\u53f3\u4e0a\u89d2\u300c\xb7\xb7\xb7\u300d\u2192 \u8bbe\u7f6e\u4e2d\u5141\u8bb8\u83b7\u53d6\u4f4d\u7f6e\u540e\u91cd\u8bd5",showCancel:!1})})},ne=function(e){if("scale"===e)try{u().createMapContext(_).getScale({success:function(e){null!==e&&void 0!==e&&e.scale&&K(Math.round(e.scale))}})}catch(e){}},te=function(){return K(function(e){return Math.min(G,e+1)})},ae=function(){return K(function(e){return Math.max(D,e-1)})},re=function(){F&&$(F),u().showToast({title:"\u5df2\u5237\u65b0\u9644\u8fd1",icon:"none"})},ie=function(){var e=(0,c.A)((0,i.A)().m(function e(n){return(0,i.A)().w(function(e){while(1)switch(e.n){case 0:return X.show(),e.n=1,U(n);case 1:return e.a(2)}},e)}));return function(n){return e.apply(this,arguments)}}(),ce=function(e,n){g(function(t){return t.map(function(t){return t.ownerId===e?(0,r.A)((0,r.A)({},t),n):t})})},se=function(e){if(e.ownerId){var n=e.ownerName||e.name;u().navigateTo({url:"/pages/chat/index?targetUserId=".concat(e.ownerId,"&title=").concat(encodeURIComponent(n))})}},oe=function(){var e=(0,c.A)((0,i.A)().m(function e(n){var t;return(0,i.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(!n.isMine){e.n=1;break}return u().showToast({title:"\u8fd9\u662f\u4f60\u81ea\u5df1\u7684\u6bdb\u5b69\u5b50",icon:"none"}),e.a(2);case 1:if(!n.isFriend){e.n=2;break}return se(n),e.a(2);case 2:if(!n.isFollowing){e.n=3;break}return u().showToast({title:"\u5df2\u5173\u6ce8\uff0c\u7b49\u5bf9\u65b9\u56de\u5173",icon:"none"}),e.a(2);case 3:return ce(n.ownerId,{isFollowing:!0,isFriend:!1}),e.p=4,e.n=5,(0,H.So)(n.ownerId,!0);case 5:t=e.v,ce(n.ownerId,{isFollowing:!0,isFriend:t.mutual}),u().showToast({title:t.mutual?"\u5df2\u6210\u4e3a\u6c6a\u53cb":"\u5df2\u5173\u6ce8\uff0c\u7b49\u5bf9\u65b9\u56de\u5173",icon:"none"}),e.n=7;break;case 6:e.p=6,e.v,ce(n.ownerId,{isFollowing:!1,isFriend:!1}),u().showToast({title:"\u6dfb\u52a0\u5931\u8d25\uff0c\u8bf7\u7a0d\u540e\u518d\u8bd5",icon:"none"});case 7:return e.a(2)}},e,null,[[4,6]])}));return function(n){return e.apply(this,arguments)}}(),le=Q.trim().toLowerCase(),ue=le?y.filter(function(e){return e.name.toLowerCase().includes(le)||(e.breed||"").toLowerCase().includes(le)}):y;return(0,b.jsxs)(d.Ss,{className:"nearby-page",children:[(0,b.jsx)(w,{pets:ue,center:F||q,scale:R,activeId:j,onSelect:S,onRegionChange:ne}),(0,b.jsx)(h.A,{}),(0,b.jsxs)(d.Ss,{className:"nearby-page__search",style:{top:"".concat(t+6,"px")},children:[(0,b.jsx)(p.A,{name:"search",size:14}),(0,b.jsx)(d.pd,{className:"nearby-page__search-input",value:Q,placeholder:"\u641c\u7d22\u540d\u5b57 / \u54c1\u79cd",placeholderClass:"nearby-page__search-ph",confirmType:"search",onInput:function(e){return V(e.detail.value)}}),Q?(0,b.jsx)(d.Ss,{className:"nearby-page__search-clear",onClick:function(){return V("")},children:(0,b.jsx)(p.A,{name:"close",size:14})}):null]}),(0,b.jsx)(N,{onRefresh:re,onZoomIn:te,onZoomOut:ae,onLocate:ee}),(0,b.jsx)(z,{pets:ue,activeId:j,filter:T,onFilterChange:C,onSelect:S,onFriendAction:oe,onLike:ie}),(0,b.jsx)(m.A,{visible:X.visible}),(0,b.jsx)(f.A,{active:"nearby"})]})}var V={navigationBarTitleText:"\u9644\u8fd1",navigationStyle:"custom",disableScroll:!0},X=(0,a.eU)(Q,"pages/nearby/index",{root:{cn:[]}},V||{});Q&&Q.behaviors&&(X.behaviors=(X.behaviors||[]).concat(Q.behaviors));Page(X)}},function(e){var n=function(n){return e(e.s=n)};e.O(0,[907,96,76],function(){return n(5775)});e.O()}]); \ No newline at end of file diff --git a/dist/pages/nearby/index.json b/dist/pages/nearby/index.json deleted file mode 100644 index 23f12eb..0000000 --- a/dist/pages/nearby/index.json +++ /dev/null @@ -1 +0,0 @@ -{"navigationBarTitleText":"附近","navigationStyle":"custom","disableScroll":true,"usingComponents":{"comp":"../../comp"}} \ No newline at end of file diff --git a/dist/pages/nearby/index.wxss b/dist/pages/nearby/index.wxss deleted file mode 100644 index d4aeca9..0000000 --- a/dist/pages/nearby/index.wxss +++ /dev/null @@ -1 +0,0 @@ -.nearby-map{height:100%;inset:0;position:absolute;width:100%}.map-controls{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:24rpx;position:absolute;right:32rpx;top:424rpx;z-index:12}.map-controls__btn:active{background:rgba(45,34,85,.9)}.map-controls__stack{border:2rpx solid rgba(216,180,255,.08);border-radius:28rpx;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;overflow:hidden}.map-controls__btn{background:rgba(20,16,43,.72);display:-ms-flexbox;display:flex;height:88rpx;width:88rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;-webkit-box-shadow:0 16rpx 40rpx rgba(0,0,0,.3);box-shadow:0 16rpx 40rpx rgba(0,0,0,.3);color:#f0e9ff;justify-content:center}.map-controls__stack .map-controls__btn + .map-controls__btn{border-top:2rpx solid rgba(216,180,255,.08)}.nearby-pet-card{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;background:rgba(45,34,85,.4);border:2rpx solid rgba(216,180,255,.06);border-radius:32rpx;gap:24rpx;padding:24rpx;-webkit-transition:background .2s,border-color .2s;transition:background .2s,border-color .2s}.nearby-pet-card--active{background:rgba(216,180,255,.12);border-color:#d8b4ff}.nearby-pet-card__photo{position:relative;-ms-flex-negative:0;border-radius:24rpx;flex-shrink:0;height:144rpx;overflow:hidden;width:144rpx}.photo-gold{background:radial-gradient(circle at 50% 30%,rgba(255,217,168,.5) 0,transparent 50%),linear-gradient(160deg,#6b4f9a,#2a1f4a)}.photo-green{background:radial-gradient(circle at 50% 30%,rgba(143,229,181,.5) 0,transparent 50%),linear-gradient(160deg,#4a7a6a,#1a3a2a)}.photo-pink{background:radial-gradient(circle at 50% 30%,rgba(255,179,200,.5) 0,transparent 50%),linear-gradient(160deg,#7a4a6a,#3a1a2a)}.photo-blue{background:radial-gradient(circle at 50% 30%,rgba(216,180,255,.5) 0,transparent 50%),linear-gradient(160deg,#4a4a8a,#1a1a3a)}.nearby-pet-card__photo::after{background:radial-gradient(ellipse at 50% 35%,hsla(0,0%,100%,.18) 0,transparent 60%);content:"";inset:0;position:absolute}.nearby-pet-card__distance{background:rgba(0,0,0,.55);border-radius:12rpx;bottom:12rpx;color:#f0e9ff;font:600 18rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;left:12rpx;padding:4rpx 12rpx;position:absolute;z-index:2}.nearby-pet-card__info{-ms-flex:1;flex:1;min-width:0}.nearby-pet-card__title{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:12rpx}.nearby-pet-card__name{font:700 28rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.nearby-pet-card__online{background:#8fe5b5;border-radius:50%;-webkit-box-shadow:0 0 8rpx #8fe5b5;box-shadow:0 0 8rpx #8fe5b5;height:12rpx;width:12rpx}.nearby-pet-card__meta,.nearby-pet-card__mood{color:#c7b9e0;display:block;font:400 22rpx/1.3 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:8rpx}.nearby-pet-card__tags{display:-ms-flexbox;display:flex;gap:12rpx;margin-top:16rpx}.nearby-pet-card__tag{background:rgba(255,217,168,.14);border:2rpx solid rgba(255,217,168,.18);border-radius:19998rpx;color:#ffd9a8;font:500 18rpx/1.4 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:4rpx 16rpx}.nearby-pet-card__actions{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:16rpx;-ms-flex-align:center;align-items:center;-ms-flex-negative:0;flex-shrink:0;width:156rpx}.nearby-pet-card__friend{border-radius:19998rpx;display:-ms-flexbox;display:flex;height:60rpx;width:152rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;background:linear-gradient(135deg,#d8b4ff,#ffb3c8);-webkit-box-shadow:0 12rpx 32rpx rgba(216,180,255,.22);box-shadow:0 12rpx 32rpx rgba(216,180,255,.22);-webkit-box-sizing:border-box;box-sizing:border-box;color:#2a1d10;gap:8rpx;justify-content:center;-webkit-transition:opacity .18s,background .18s,-webkit-transform .18s;transition:opacity .18s,background .18s,-webkit-transform .18s;transition:transform .18s,opacity .18s,background .18s;transition:transform .18s,opacity .18s,background .18s,-webkit-transform .18s}.nearby-pet-card__friend:active{-webkit-transform:scale(.98);-ms-transform:scale(.98);transform:scale(.98)}.nearby-pet-card__friend--friend{background:rgba(143,229,181,.16);border:2rpx solid rgba(143,229,181,.32);-webkit-box-shadow:none;box-shadow:none;color:#8fe5b5}.nearby-pet-card__friend--mine,.nearby-pet-card__friend--pending{background:rgba(216,180,255,.08);border:2rpx solid rgba(216,180,255,.18);-webkit-box-shadow:none;box-shadow:none;color:#8a7aab}.nearby-pet-card__friend-text{font:600 20rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;white-space:nowrap}.nearby-pet-card__btn{background:rgba(20,16,43,.5);border:2rpx solid rgba(216,180,255,.08);border-radius:50%;display:-ms-flexbox;display:flex;height:68rpx;width:68rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#c7b9e0;justify-content:center}.nearby-pet-card__btn--like{background:linear-gradient(135deg,#ffb3c8,#ff8aab);border:0;-webkit-box-shadow:0 12rpx 32rpx rgba(255,138,171,.35);box-shadow:0 12rpx 32rpx rgba(255,138,171,.35);color:#fff}.nearby-sheet{background:rgba(31,23,66,.9);border-radius:48rpx 48rpx 0 0;border-top:2rpx solid rgba(216,180,255,.1);bottom:176rpx;-webkit-box-shadow:0 -40rpx 80rpx rgba(0,0,0,.3);box-shadow:0 -40rpx 80rpx rgba(0,0,0,.3);-webkit-box-sizing:border-box;box-sizing:border-box;left:0;overflow:hidden;position:fixed;right:0;-webkit-transition:height .28s cubic-bezier(.2,0,0,1);transition:height .28s cubic-bezier(.2,0,0,1);z-index:50}.nearby-sheet--dragging{-webkit-transition:none;transition:none}.nearby-sheet__handle{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:24rpx 0 20rpx}.nearby-sheet__bar{background:rgba(216,180,255,.3);border-radius:4rpx;height:8rpx;-webkit-transition:background .2s,width .2s;transition:background .2s,width .2s;width:80rpx}.nearby-sheet--min .nearby-sheet__bar{background:rgba(216,180,255,.5);height:10rpx;width:96rpx}.nearby-sheet--min .nearby-sheet__chips,.nearby-sheet--min .nearby-sheet__header,.nearby-sheet--min .nearby-sheet__list{display:none}.nearby-sheet__header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;padding:0 40rpx 24rpx}.nearby-sheet__count,.nearby-sheet__title{display:block}.nearby-sheet__title{color:#f0e9ff;font:700 40rpx/1.2 Space Grotesk,Inter,system-ui,sans-serif}.nearby-sheet__count{color:#8a7aab;font:500 24rpx/1.4 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:4rpx}.nearby-sheet__chips{display:-ms-flexbox;display:flex;gap:16rpx;overflow-x:auto;padding:0 40rpx 24rpx}.nearby-sheet__list{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:20rpx;padding:0 32rpx 56rpx}.nearby-page{background:#0e0a22;color:#f0e9ff;min-height:100vh;overflow:hidden;position:relative}.nearby-page__search{display:-ms-flexbox;display:flex;left:40rpx;position:absolute;right:40rpx;z-index:12;-ms-flex-align:center;align-items:center;background:rgba(20,16,43,.82);border:2rpx solid rgba(216,180,255,.14);border-radius:19998rpx;-webkit-box-shadow:0 16rpx 40rpx rgba(0,0,0,.3);box-shadow:0 16rpx 40rpx rgba(0,0,0,.3);-webkit-box-sizing:border-box;box-sizing:border-box;gap:16rpx;height:80rpx;padding:0 28rpx}.nearby-page__search .icon{color:#d8b4ff}.nearby-page__search-input{color:#f0e9ff;-ms-flex:1;flex:1;font:500 26rpx/80rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:80rpx;min-width:0}.nearby-page__search-ph{color:#8a7aab}.nearby-page__search-clear{-ms-flex-negative:0;display:-ms-flexbox;display:flex;flex-shrink:0;height:44rpx;width:44rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;background:rgba(216,180,255,.12);border-radius:50%;color:#c7b9e0;justify-content:center} \ No newline at end of file diff --git a/dist/pages/pet-edit/index.js b/dist/pages/pet-edit/index.js index 2bb8e38..0dedd2e 100644 --- a/dist/pages/pet-edit/index.js +++ b/dist/pages/pet-edit/index.js @@ -1 +1 @@ -"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[873],{4462:function(e,t,n){var a=n(8870),s=n(1212),i=n(467),c=n(436),r=n(5544),l=n(6540),o=n(758),u=n.n(o),d=n(118),p=n(374),h=n(3401),f=n(326),_=n(9251),m=n(5366);function v(e){return x.apply(this,arguments)}function x(){return x=(0,i.A)((0,s.A)().m(function e(t){var n,a,i,c;return(0,s.A)().w(function(e){while(1)switch(e.n){case 0:if(t&&(0,_.n)()&&u().cloud){e.n=1;break}return e.a(2,"");case 1:return a=(null===(n=t.split(".").pop())||void 0===n?void 0:n.split("?")[0])||"png",i="pets/".concat(Date.now(),"-").concat(Math.floor(1e6*Math.random()),".").concat(a),e.n=2,u().cloud.uploadFile({cloudPath:i,filePath:t});case 2:return c=e.v,e.a(2,c.fileID)}},e)})),x.apply(this,arguments)}function g(e){return b.apply(this,arguments)}function b(){return b=(0,i.A)((0,s.A)().m(function e(t){var n;return(0,s.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(t){e.n=1;break}return e.a(2,null);case 1:if((0,_.n)()){e.n=2;break}return e.a(2,m.LT.find(function(e){return e._id===t})||null);case 2:return e.p=2,e.n=3,(0,_.k)("petList",{});case 3:return n=e.v,e.a(2,n.list.find(function(e){return e._id===t})||null);case 4:return e.p=4,e.v,e.a(2,null)}},e,null,[[2,4]])})),b.apply(this,arguments)}function j(e){return w.apply(this,arguments)}function w(){return w=(0,i.A)((0,s.A)().m(function e(t){var n;return(0,s.A)().w(function(e){while(1)switch(e.n){case 0:if((0,_.n)()){e.n=1;break}return e.a(2,t._id||"local_".concat(Date.now()));case 1:return e.n=2,(0,_.k)("petSave",{pet:t});case 2:return n=e.v,e.a(2,n.petId)}},e)})),w.apply(this,arguments)}function k(e){return A.apply(this,arguments)}function A(){return A=(0,i.A)((0,s.A)().m(function e(t){var n;return(0,s.A)().w(function(e){while(1)switch(e.n){case 0:if((0,_.n)()){e.n=1;break}return e.a(2,!0);case 1:return e.n=2,(0,_.k)("petDelete",{petId:t});case 2:return n=e.v,e.a(2,n.ok)}},e)})),A.apply(this,arguments)}var N=n(4848),S=[{key:"dog",label:"\u72d7\u72d7"},{key:"cat",label:"\u732b\u54aa"},{key:"other",label:"\u5176\u5b83"}],y="\u81ea\u5b9a\u4e49",T={dog:["\u91d1\u6bdb","\u62c9\u5e03\u62c9\u591a","\u67ef\u57fa","\u67f4\u72ac","\u8428\u6469\u8036","\u54c8\u58eb\u5947","\u8fb9\u5883\u7267\u7f8a\u72ac","\u6cf0\u8fea/\u8d35\u5bbe","\u6bd4\u718a","\u535a\u7f8e","\u4e2d\u534e\u7530\u56ed\u72ac"],cat:["\u5e03\u5076","\u82f1\u56fd\u77ed\u6bdb","\u7f8e\u56fd\u77ed\u6bdb","\u6a58\u732b","\u4e09\u82b1\u732b","\u72f8\u82b1\u732b","\u66b9\u7f57","\u52a0\u83f2","\u7f05\u56e0","\u4e2d\u534e\u7530\u56ed\u732b"],other:["\u4ed3\u9f20","\u5154\u5b50","\u9f99\u732b","\u9e66\u9e49","\u4e4c\u9f9f","\u8725\u8734"]},C=["\u4eb2\u4eba","\u7231\u73a9\u6c34","\u53ef\u7ea6\u905b","\u5b89\u9759","\u7cbe\u529b\u65fa\u76db","\u6162\u70ed","\u4f1a\u63a5\u98de\u76d8","\u9002\u5408\u65b0\u624b"];function Y(){var e=new Date;return"".concat(e.getFullYear(),"-").concat(String(e.getMonth()+1).padStart(2,"0"))}function M(e){if(!e)return"";var t=e.split("-").map(Number),n=(0,r.A)(t,2),a=n[0],s=n[1],i=new Date,c=12*(i.getFullYear()-a)+(i.getMonth()+1-s);return c<0&&(c=0),c<12?"".concat(c," \u4e2a\u6708"):"".concat(Math.floor(c/12)," \u5c81")}function B(){var e=(0,p.v)(),t=e.statusBarHeight,n=e.safeBottom,a=(0,o.useRouter)(),_=a.params.petId||"",m=Boolean(_),x=Y(),b=(0,l.useState)(""),w=(0,r.A)(b,2),A=w[0],B=w[1],E=(0,l.useState)("dog"),D=(0,r.A)(E,2),F=D[0],I=D[1],z=(0,l.useState)(""),K=(0,r.A)(z,2),L=K[0],P=K[1],O=(0,l.useState)(!1),U=(0,r.A)(O,2),J=U[0],H=U[1],R=(0,l.useState)(""),V=(0,r.A)(R,2),q=V[0],G=V[1],Q=(0,l.useState)([]),W=(0,r.A)(Q,2),X=W[0],Z=W[1],$=(0,l.useState)(""),ee=(0,r.A)($,2),te=ee[0],ne=ee[1],ae=(0,l.useState)(""),se=(0,r.A)(ae,2),ie=se[0],ce=se[1],re=(0,l.useState)("photo-gold"),le=(0,r.A)(re,2),oe=le[0],ue=le[1],de=(0,l.useState)("gradient-avatar-4"),pe=(0,r.A)(de,2),he=pe[0],fe=pe[1],_e=(0,l.useState)(!1),me=(0,r.A)(_e,2),ve=me[0],xe=me[1];(0,l.useEffect)(function(){m&&g(_).then(function(e){e&&(B(e.name||""),I(e.species||"dog"),P(e.breed||""),H(Boolean(e.breed)&&!T[e.species||"dog"].includes(e.breed)),G(e.birthDate||""),Z(e.tags||[]),ne(e.photoUrl||""),ue(e.photoKey||"photo-gold"),fe(e.avatarKey||"gradient-avatar-4"))})},[_,m]);var ge=[].concat((0,c.A)(T[F]),[y]),be=J?ge.length-1:Math.max(0,ge.indexOf(L)),je=ie||te,we=function(e){I(e),P(""),H(!1)},ke=function(e){var t=Number(e.detail.value);t===ge.length-1?(H(!0),P("")):(H(!1),P(ge[t]))},Ae=function(){var e=(0,i.A)((0,s.A)().m(function e(){var t,n,a;return(0,s.A)().w(function(e){while(1)switch(e.p=e.n){case 0:return e.p=0,e.n=1,u().chooseMedia({count:1,mediaType:["image"],sourceType:["album","camera"],sizeType:["compressed"]});case 1:n=e.v,a=null===(t=n.tempFiles)||void 0===t||null===(t=t[0])||void 0===t?void 0:t.tempFilePath,a&&ce(a),e.n=3;break;case 2:e.p=2,e.v;case 3:return e.a(2)}},e,null,[[0,2]])}));return function(){return e.apply(this,arguments)}}(),Ne=function(e){Z(function(t){return t.includes(e)?t.filter(function(t){return t!==e}):[].concat((0,c.A)(t),[e])})},Se=function(){u().showModal({title:"\u81ea\u5b9a\u4e49\u6807\u7b7e",editable:!0,placeholderText:"\u5982 \u4f1a\u63e1\u624b",success:function(e){if(e.confirm){var t=(e.content||"").trim().slice(0,8);t&&!X.includes(t)&&Z(function(e){return[].concat((0,c.A)(e),[t])})}}})},ye=function(){var e=(0,i.A)((0,s.A)().m(function e(){var t,n,a;return(0,s.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(!ve){e.n=1;break}return e.a(2);case 1:if(A.trim()){e.n=2;break}return u().showToast({title:"\u8bf7\u586b\u5199\u540d\u5b57",icon:"none"}),e.a(2);case 2:if(L.trim()){e.n=3;break}return u().showToast({title:"\u8bf7\u9009\u62e9\u6216\u586b\u5199\u54c1\u79cd",icon:"none"}),e.a(2);case 3:if(xe(!0),e.p=4,t=te,!ie){e.n=7;break}return e.n=5,v(ie);case 5:if(a=e.v,a){e.n=6;break}a=te;case 6:t=a;case 7:return n={name:A.trim(),species:F,breed:L.trim(),birthDate:q,ageText:M(q),tags:X,photoUrl:t,photoKey:oe,avatarKey:he},m&&(n._id=_),e.n=8,j(n);case 8:u().showToast({title:m?"\u5df2\u4fdd\u5b58":"\u6dfb\u52a0\u6210\u529f",icon:"success"}),setTimeout(function(){return u().navigateBack()},600),e.n=10;break;case 9:e.p=9,e.v,u().showToast({title:"\u4fdd\u5b58\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 10:return e.p=10,xe(!1),e.f(10);case 11:return e.a(2)}},e,null,[[4,9,10,11]])}));return function(){return e.apply(this,arguments)}}(),Te=function(){u().showModal({title:"\u5220\u9664\u6bdb\u5b69\u5b50",content:"\u786e\u5b9a\u5220\u9664\u300c".concat(A||"\u8be5\u5ba0\u7269","\u300d\u5417\uff1f\u6b64\u64cd\u4f5c\u4e0d\u53ef\u6062\u590d\u3002"),confirmText:"\u5220\u9664",confirmColor:"#ff8a9b",success:function(){var e=(0,i.A)((0,s.A)().m(function e(t){return(0,s.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(t.confirm){e.n=1;break}return e.a(2);case 1:return e.p=1,e.n=2,k(_);case 2:u().showToast({title:"\u5df2\u5220\u9664",icon:"none"}),setTimeout(function(){return u().navigateBack()},500),e.n=4;break;case 3:e.p=3,e.v,u().showToast({title:"\u5220\u9664\u5931\u8d25",icon:"none"});case 4:return e.a(2)}},e,null,[[1,3]])}));function t(t){return e.apply(this,arguments)}return t}()})},Ce=X.filter(function(e){return!C.includes(e)});return(0,N.jsxs)(d.Ss,{className:"pet-edit",children:[(0,N.jsx)(d.Ss,{className:"pet-edit__nav",style:{paddingTop:"".concat(t,"px")},children:(0,N.jsxs)(d.Ss,{className:"pet-edit__nav-row",children:[(0,N.jsx)(d.Ss,{className:"pet-edit__close",onClick:function(){return u().navigateBack()},children:(0,N.jsx)(h.A,{name:"close",size:22})}),(0,N.jsx)(d.EY,{className:"pet-edit__nav-title",children:m?"\u7f16\u8f91\u6bdb\u5b69\u5b50":"\u6dfb\u52a0\u6bdb\u5b69\u5b50"}),(0,N.jsx)(d.Ss,{className:"pet-edit__nav-spacer"})]})}),(0,N.jsxs)(d.BM,{scrollY:!0,className:"pet-edit__scroll",enhanced:!0,showScrollbar:!1,children:[(0,N.jsx)(d.Ss,{className:"pet-edit__photo-row",children:(0,N.jsx)(d.Ss,{className:"pet-edit__photo ".concat(je?"":oe),onClick:Ae,children:je?(0,N.jsx)(d._V,{className:"pet-edit__photo-img",src:je,mode:"aspectFill"}):(0,N.jsxs)(d.Ss,{className:"pet-edit__photo-empty",children:[(0,N.jsx)(h.A,{name:"image",size:24}),(0,N.jsx)(d.EY,{className:"pet-edit__photo-hint",children:"\u6dfb\u52a0\u7167\u7247"})]})})}),(0,N.jsxs)(d.Ss,{className:"pet-edit__field",children:[(0,N.jsx)(d.EY,{className:"pet-edit__label",children:"\u540d\u5b57"}),(0,N.jsx)(d.pd,{className:"pet-edit__input",placeholder:"\u7ed9\u6bdb\u5b69\u5b50\u8d77\u4e2a\u540d\u5b57",placeholderClass:"pet-edit__placeholder",value:A,maxlength:12,onInput:function(e){return B(e.detail.value)}})]}),(0,N.jsxs)(d.Ss,{className:"pet-edit__field",children:[(0,N.jsx)(d.EY,{className:"pet-edit__label",children:"\u7269\u79cd"}),(0,N.jsx)(f.A,{items:S,value:F,onChange:we})]}),(0,N.jsxs)(d.Ss,{className:"pet-edit__field",children:[(0,N.jsx)(d.EY,{className:"pet-edit__label",children:"\u54c1\u79cd"}),(0,N.jsx)(d.LC,{mode:"selector",range:ge,value:be,onChange:ke,children:(0,N.jsxs)(d.Ss,{className:"pet-edit__picker",children:[(0,N.jsx)(d.EY,{className:L||J?"pet-edit__picker-value":"pet-edit__picker-ph",children:J?"\u81ea\u5b9a\u4e49":L||"\u8bf7\u9009\u62e9\u54c1\u79cd"}),(0,N.jsx)(h.A,{name:"chev",size:16,className:"pet-edit__picker-arrow"})]})}),J?(0,N.jsx)(d.pd,{className:"pet-edit__input pet-edit__input--mt",placeholder:"\u586b\u5199\u54c1\u79cd",placeholderClass:"pet-edit__placeholder",value:L,maxlength:20,onInput:function(e){return P(e.detail.value)}}):null]}),(0,N.jsxs)(d.Ss,{className:"pet-edit__field",children:[(0,N.jsx)(d.EY,{className:"pet-edit__label",children:"\u51fa\u751f\u5e74\u6708"}),(0,N.jsx)(d.LC,{mode:"date",fields:"month",start:"2000-01",end:x,value:q||x,onChange:function(e){return G(e.detail.value)},children:(0,N.jsxs)(d.Ss,{className:"pet-edit__picker",children:[(0,N.jsx)(d.EY,{className:q?"pet-edit__picker-value":"pet-edit__picker-ph",children:q?"".concat(q," \xb7 ").concat(M(q)):"\u8bf7\u9009\u62e9\u51fa\u751f\u5e74\u6708"}),(0,N.jsx)(h.A,{name:"chev",size:16,className:"pet-edit__picker-arrow"})]})})]}),(0,N.jsxs)(d.Ss,{className:"pet-edit__field",children:[(0,N.jsx)(d.EY,{className:"pet-edit__label",children:"\u6027\u683c\u6807\u7b7e"}),(0,N.jsxs)(d.Ss,{className:"pet-edit__tags",children:[C.map(function(e){return(0,N.jsxs)(d.Ss,{className:"pet-edit__tag ".concat(X.includes(e)?"pet-edit__tag--active":""),onClick:function(){return Ne(e)},children:[X.includes(e)?"\xd7 ":"+ ",e]},e)}),Ce.map(function(e){return(0,N.jsxs)(d.Ss,{className:"pet-edit__tag pet-edit__tag--active",onClick:function(){return Ne(e)},children:["\xd7 ",e]},e)}),(0,N.jsx)(d.Ss,{className:"pet-edit__tag pet-edit__tag--add",onClick:Se,children:"+ \u81ea\u5b9a\u4e49"})]})]}),m?(0,N.jsx)(d.Ss,{className:"pet-edit__delete",onClick:Te,children:"\u5220\u9664\u8fd9\u53ea\u6bdb\u5b69\u5b50"}):null]}),(0,N.jsx)(d.Ss,{className:"pet-edit__footer",style:{paddingBottom:"".concat(Math.max(16,n),"px")},children:(0,N.jsx)(d.Ss,{className:"pet-edit__submit",onClick:ye,children:ve?"\u4fdd\u5b58\u4e2d\u2026":"\u4fdd\u5b58"})})]})}var E={navigationBarTitleText:"\u7f16\u8f91\u6bdb\u5b69\u5b50",navigationStyle:"custom",disableScroll:!0},D=(0,a.eU)(B,"pages/pet-edit/index",{root:{cn:[]}},E||{});B&&B.behaviors&&(D.behaviors=(D.behaviors||[]).concat(B.behaviors));Page(D)}},function(e){var t=function(t){return e(e.s=t)};e.O(0,[907,96,76],function(){return t(4462)});e.O()}]); \ No newline at end of file +"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[873],{4462:function(e,t,n){var a=n(8870),s=n(1212),i=n(467),c=n(436),r=n(5544),l=n(6540),o=n(758),u=n.n(o),p=n(118),d=n(374),h=n(3401),f=n(326),_=n(9379),m=n(9251),v=n(4282),x=n(5366),g=n(5313);function b(e){return k.apply(this,arguments)}function k(){return k=(0,i.A)((0,s.A)().m(function e(t){var n,a,i,c;return(0,s.A)().w(function(e){while(1)switch(e.n){case 0:if(t&&(0,m.n)()&&u().cloud){e.n=1;break}return e.a(2,"");case 1:return a=(null===(n=t.split(".").pop())||void 0===n?void 0:n.split("?")[0])||"png",i="pets/".concat(Date.now(),"-").concat(Math.floor(1e6*Math.random()),".").concat(a),e.n=2,u().cloud.uploadFile({cloudPath:i,filePath:t});case 2:return c=e.v,e.a(2,c.fileID)}},e)})),k.apply(this,arguments)}function A(e){return j.apply(this,arguments)}function j(){return j=(0,i.A)((0,s.A)().m(function e(t){var n,a,i,c,r,l,o;return(0,s.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(t){e.n=1;break}return e.a(2,null);case 1:if((0,m.n)()){e.n=2;break}return e.a(2,x.LT.find(function(e){return e._id===t})||null);case 2:return e.p=2,e.n=3,(0,m.k)("petList",{});case 3:if(n=e.v,a=n.list.find(function(e){return e._id===t})||null,!a){e.n=5;break}return c=_.A,r=(0,_.A)({},a),l={},e.n=4,(0,v.Po)(a.photoUrl);case 4:o=e.v,i=c(r,l,{photoUrl:o}),e.n=6;break;case 5:i=null;case 6:return e.a(2,i);case 7:return e.p=7,e.v,e.a(2,null)}},e,null,[[2,7]])})),j.apply(this,arguments)}function w(e){return N.apply(this,arguments)}function N(){return N=(0,i.A)((0,s.A)().m(function e(t){var n;return(0,s.A)().w(function(e){while(1)switch(e.n){case 0:if((0,m.n)()){e.n=1;break}return(0,g.ZU)("profile"),e.a(2,t._id||"local_".concat(Date.now()));case 1:return e.n=2,(0,m.k)("petSave",{pet:t});case 2:return n=e.v,(0,g.ZU)("profile"),e.a(2,n.petId)}},e)})),N.apply(this,arguments)}function S(e){return y.apply(this,arguments)}function y(){return y=(0,i.A)((0,s.A)().m(function e(t){var n;return(0,s.A)().w(function(e){while(1)switch(e.n){case 0:if((0,m.n)()){e.n=1;break}return(0,g.ZU)("profile"),e.a(2,!0);case 1:return e.n=2,(0,m.k)("petDelete",{petId:t});case 2:return n=e.v,n.ok&&(0,g.ZU)("profile"),e.a(2,n.ok)}},e)})),y.apply(this,arguments)}var T=n(4848),C=[{key:"dog",label:"\u72d7\u72d7"},{key:"cat",label:"\u732b\u54aa"},{key:"other",label:"\u5176\u5b83"}],Y="\u81ea\u5b9a\u4e49",M={dog:["\u91d1\u6bdb","\u62c9\u5e03\u62c9\u591a","\u67ef\u57fa","\u67f4\u72ac","\u8428\u6469\u8036","\u54c8\u58eb\u5947","\u8fb9\u5883\u7267\u7f8a\u72ac","\u6cf0\u8fea/\u8d35\u5bbe","\u6bd4\u718a","\u535a\u7f8e","\u4e2d\u534e\u7530\u56ed\u72ac"],cat:["\u5e03\u5076","\u82f1\u56fd\u77ed\u6bdb","\u7f8e\u56fd\u77ed\u6bdb","\u6a58\u732b","\u4e09\u82b1\u732b","\u72f8\u82b1\u732b","\u66b9\u7f57","\u52a0\u83f2","\u7f05\u56e0","\u4e2d\u534e\u7530\u56ed\u732b"],other:["\u4ed3\u9f20","\u5154\u5b50","\u9f99\u732b","\u9e66\u9e49","\u4e4c\u9f9f","\u8725\u8734"]},B=["\u4eb2\u4eba","\u7231\u73a9\u6c34","\u53ef\u7ea6\u905b","\u5b89\u9759","\u7cbe\u529b\u65fa\u76db","\u6162\u70ed","\u4f1a\u63a5\u98de\u76d8","\u9002\u5408\u65b0\u624b"];function E(){var e=new Date;return"".concat(e.getFullYear(),"-").concat(String(e.getMonth()+1).padStart(2,"0"))}function U(e){if(!e)return"";var t=e.split("-").map(Number),n=(0,r.A)(t,2),a=n[0],s=n[1],i=new Date,c=12*(i.getFullYear()-a)+(i.getMonth()+1-s);return c<0&&(c=0),c<12?"".concat(c," \u4e2a\u6708"):"".concat(Math.floor(c/12)," \u5c81")}function D(){var e=(0,d.v)(),t=e.statusBarHeight,n=e.safeBottom,a=(0,o.useRouter)(),_=a.params.petId||"",m=Boolean(_),v=E(),x=(0,l.useState)(""),g=(0,r.A)(x,2),k=g[0],j=g[1],N=(0,l.useState)("dog"),y=(0,r.A)(N,2),D=y[0],F=y[1],I=(0,l.useState)(""),z=(0,r.A)(I,2),P=z[0],K=z[1],L=(0,l.useState)(!1),Z=(0,r.A)(L,2),O=Z[0],J=Z[1],H=(0,l.useState)(""),R=(0,r.A)(H,2),V=R[0],W=R[1],q=(0,l.useState)([]),G=(0,r.A)(q,2),Q=G[0],X=G[1],$=(0,l.useState)(""),ee=(0,r.A)($,2),te=ee[0],ne=ee[1],ae=(0,l.useState)(""),se=(0,r.A)(ae,2),ie=se[0],ce=se[1],re=(0,l.useState)("photo-gold"),le=(0,r.A)(re,2),oe=le[0],ue=le[1],pe=(0,l.useState)("gradient-avatar-4"),de=(0,r.A)(pe,2),he=de[0],fe=de[1],_e=(0,l.useState)(!1),me=(0,r.A)(_e,2),ve=me[0],xe=me[1];(0,l.useEffect)(function(){m&&A(_).then(function(e){e&&(j(e.name||""),F(e.species||"dog"),K(e.breed||""),J(Boolean(e.breed)&&!M[e.species||"dog"].includes(e.breed)),W(e.birthDate||""),X(e.tags||[]),ne(e.photoUrl||""),ue(e.photoKey||"photo-gold"),fe(e.avatarKey||"gradient-avatar-4"))})},[_,m]);var ge=[].concat((0,c.A)(M[D]),[Y]),be=O?ge.length-1:Math.max(0,ge.indexOf(P)),ke=ie||te,Ae=ke&&!ke.startsWith("cloud://")?ke:"",je=function(e){F(e),K(""),J(!1)},we=function(e){var t=Number(e.detail.value);t===ge.length-1?(J(!0),K("")):(J(!1),K(ge[t]))},Ne=function(){var e=(0,i.A)((0,s.A)().m(function e(){var t,n,a;return(0,s.A)().w(function(e){while(1)switch(e.p=e.n){case 0:return e.p=0,e.n=1,u().chooseMedia({count:1,mediaType:["image"],sourceType:["album","camera"],sizeType:["compressed"]});case 1:n=e.v,a=null===(t=n.tempFiles)||void 0===t||null===(t=t[0])||void 0===t?void 0:t.tempFilePath,a&&ce(a),e.n=3;break;case 2:e.p=2,e.v;case 3:return e.a(2)}},e,null,[[0,2]])}));return function(){return e.apply(this,arguments)}}(),Se=function(e){X(function(t){return t.includes(e)?t.filter(function(t){return t!==e}):[].concat((0,c.A)(t),[e])})},ye=function(){u().showModal({title:"\u81ea\u5b9a\u4e49\u6807\u7b7e",editable:!0,placeholderText:"\u5982 \u4f1a\u63e1\u624b",success:function(e){if(e.confirm){var t=(e.content||"").trim().slice(0,8);t&&!Q.includes(t)&&X(function(e){return[].concat((0,c.A)(e),[t])})}}})},Te=function(){var e=(0,i.A)((0,s.A)().m(function e(){var t,n,a;return(0,s.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(!ve){e.n=1;break}return e.a(2);case 1:if(k.trim()){e.n=2;break}return u().showToast({title:"\u8bf7\u586b\u5199\u540d\u5b57",icon:"none"}),e.a(2);case 2:if(P.trim()){e.n=3;break}return u().showToast({title:"\u8bf7\u9009\u62e9\u6216\u586b\u5199\u54c1\u79cd",icon:"none"}),e.a(2);case 3:if(xe(!0),e.p=4,t=te,!ie){e.n=7;break}return e.n=5,b(ie);case 5:if(a=e.v,a){e.n=6;break}a=te;case 6:t=a;case 7:return n={name:k.trim(),species:D,breed:P.trim(),birthDate:V,ageText:U(V),tags:Q,photoUrl:t,photoKey:oe,avatarKey:he},m&&(n._id=_),e.n=8,w(n);case 8:u().showToast({title:m?"\u5df2\u4fdd\u5b58":"\u6dfb\u52a0\u6210\u529f",icon:"success"}),setTimeout(function(){return u().navigateBack()},600),e.n=10;break;case 9:e.p=9,e.v,u().showToast({title:"\u4fdd\u5b58\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 10:return e.p=10,xe(!1),e.f(10);case 11:return e.a(2)}},e,null,[[4,9,10,11]])}));return function(){return e.apply(this,arguments)}}(),Ce=function(){u().showModal({title:"\u5220\u9664\u6bdb\u5b69\u5b50",content:"\u786e\u5b9a\u5220\u9664\u300c".concat(k||"\u8be5\u5ba0\u7269","\u300d\u5417\uff1f\u6b64\u64cd\u4f5c\u4e0d\u53ef\u6062\u590d\u3002"),confirmText:"\u5220\u9664",confirmColor:"#ff8a9b",success:function(){var e=(0,i.A)((0,s.A)().m(function e(t){return(0,s.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(t.confirm){e.n=1;break}return e.a(2);case 1:return e.p=1,e.n=2,S(_);case 2:u().showToast({title:"\u5df2\u5220\u9664",icon:"none"}),setTimeout(function(){return u().navigateBack()},500),e.n=4;break;case 3:e.p=3,e.v,u().showToast({title:"\u5220\u9664\u5931\u8d25",icon:"none"});case 4:return e.a(2)}},e,null,[[1,3]])}));function t(t){return e.apply(this,arguments)}return t}()})},Ye=Q.filter(function(e){return!B.includes(e)});return(0,T.jsxs)(p.Ss,{className:"pet-edit",children:[(0,T.jsx)(p.Ss,{className:"pet-edit__nav",style:{paddingTop:"".concat(t,"px")},children:(0,T.jsxs)(p.Ss,{className:"pet-edit__nav-row",children:[(0,T.jsx)(p.Ss,{className:"pet-edit__close",onClick:function(){return u().navigateBack()},children:(0,T.jsx)(h.A,{name:"close",size:22})}),(0,T.jsx)(p.EY,{className:"pet-edit__nav-title",children:m?"\u7f16\u8f91\u6bdb\u5b69\u5b50":"\u6dfb\u52a0\u6bdb\u5b69\u5b50"}),(0,T.jsx)(p.Ss,{className:"pet-edit__nav-spacer"})]})}),(0,T.jsxs)(p.BM,{scrollY:!0,className:"pet-edit__scroll",enhanced:!0,showScrollbar:!1,children:[(0,T.jsx)(p.Ss,{className:"pet-edit__photo-row",children:(0,T.jsx)(p.Ss,{className:"pet-edit__photo ".concat(Ae?"":oe),onClick:Ne,children:Ae?(0,T.jsx)(p._V,{className:"pet-edit__photo-img",src:Ae,mode:"aspectFill"}):(0,T.jsxs)(p.Ss,{className:"pet-edit__photo-empty",children:[(0,T.jsx)(h.A,{name:"image",size:24}),(0,T.jsx)(p.EY,{className:"pet-edit__photo-hint",children:"\u6dfb\u52a0\u7167\u7247"})]})})}),(0,T.jsxs)(p.Ss,{className:"pet-edit__field",children:[(0,T.jsx)(p.EY,{className:"pet-edit__label",children:"\u540d\u5b57"}),(0,T.jsx)(p.pd,{className:"pet-edit__input",placeholder:"\u7ed9\u6bdb\u5b69\u5b50\u8d77\u4e2a\u540d\u5b57",placeholderClass:"pet-edit__placeholder",value:k,maxlength:12,onInput:function(e){return j(e.detail.value)}})]}),(0,T.jsxs)(p.Ss,{className:"pet-edit__field",children:[(0,T.jsx)(p.EY,{className:"pet-edit__label",children:"\u7269\u79cd"}),(0,T.jsx)(f.A,{items:C,value:D,onChange:je})]}),(0,T.jsxs)(p.Ss,{className:"pet-edit__field",children:[(0,T.jsx)(p.EY,{className:"pet-edit__label",children:"\u54c1\u79cd"}),(0,T.jsx)(p.LC,{mode:"selector",range:ge,value:be,onChange:we,children:(0,T.jsxs)(p.Ss,{className:"pet-edit__picker",children:[(0,T.jsx)(p.EY,{className:P||O?"pet-edit__picker-value":"pet-edit__picker-ph",children:O?"\u81ea\u5b9a\u4e49":P||"\u8bf7\u9009\u62e9\u54c1\u79cd"}),(0,T.jsx)(h.A,{name:"chev",size:16,className:"pet-edit__picker-arrow"})]})}),O?(0,T.jsx)(p.pd,{className:"pet-edit__input pet-edit__input--mt",placeholder:"\u586b\u5199\u54c1\u79cd",placeholderClass:"pet-edit__placeholder",value:P,maxlength:20,onInput:function(e){return K(e.detail.value)}}):null]}),(0,T.jsxs)(p.Ss,{className:"pet-edit__field",children:[(0,T.jsx)(p.EY,{className:"pet-edit__label",children:"\u51fa\u751f\u5e74\u6708"}),(0,T.jsx)(p.LC,{mode:"date",fields:"month",start:"2000-01",end:v,value:V||v,onChange:function(e){return W(e.detail.value)},children:(0,T.jsxs)(p.Ss,{className:"pet-edit__picker",children:[(0,T.jsx)(p.EY,{className:V?"pet-edit__picker-value":"pet-edit__picker-ph",children:V?"".concat(V," \xb7 ").concat(U(V)):"\u8bf7\u9009\u62e9\u51fa\u751f\u5e74\u6708"}),(0,T.jsx)(h.A,{name:"chev",size:16,className:"pet-edit__picker-arrow"})]})})]}),(0,T.jsxs)(p.Ss,{className:"pet-edit__field",children:[(0,T.jsx)(p.EY,{className:"pet-edit__label",children:"\u6027\u683c\u6807\u7b7e"}),(0,T.jsxs)(p.Ss,{className:"pet-edit__tags",children:[B.map(function(e){return(0,T.jsxs)(p.Ss,{className:"pet-edit__tag ".concat(Q.includes(e)?"pet-edit__tag--active":""),onClick:function(){return Se(e)},children:[Q.includes(e)?"\xd7 ":"+ ",e]},e)}),Ye.map(function(e){return(0,T.jsxs)(p.Ss,{className:"pet-edit__tag pet-edit__tag--active",onClick:function(){return Se(e)},children:["\xd7 ",e]},e)}),(0,T.jsx)(p.Ss,{className:"pet-edit__tag pet-edit__tag--add",onClick:ye,children:"+ \u81ea\u5b9a\u4e49"})]})]}),m?(0,T.jsx)(p.Ss,{className:"pet-edit__delete",onClick:Ce,children:"\u5220\u9664\u8fd9\u53ea\u6bdb\u5b69\u5b50"}):null]}),(0,T.jsx)(p.Ss,{className:"pet-edit__footer",style:{paddingBottom:"".concat(Math.max(16,n),"px")},children:(0,T.jsx)(p.Ss,{className:"pet-edit__submit",onClick:Te,children:ve?"\u4fdd\u5b58\u4e2d\u2026":"\u4fdd\u5b58"})})]})}var F={navigationBarTitleText:"\u7f16\u8f91\u6bdb\u5b69\u5b50",navigationStyle:"custom",disableScroll:!0},I=(0,a.eU)(D,"pages/pet-edit/index",{root:{cn:[]}},F||{});D&&D.behaviors&&(I.behaviors=(I.behaviors||[]).concat(D.behaviors));Page(I)}},function(e){var t=function(t){return e(e.s=t)};e.O(0,[907,96,76],function(){return t(4462)});e.O()}]); \ No newline at end of file diff --git a/dist/pages/pet-edit/index.wxss b/dist/pages/pet-edit/index.wxss index 2222318..be51219 100644 --- a/dist/pages/pet-edit/index.wxss +++ b/dist/pages/pet-edit/index.wxss @@ -1 +1 @@ -.pet-edit{background:#14102b;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100vh}.pet-edit__nav{-ms-flex-negative:0;background:#14102b;flex-shrink:0}.pet-edit__nav-row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:108rpx;padding:0 32rpx}.pet-edit__close{display:-ms-flexbox;display:flex;height:72rpx;width:72rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#f0e9ff;justify-content:center}.pet-edit__nav-title{color:#f0e9ff;-ms-flex:1;flex:1;font:700 34rpx/1 Space Grotesk,Inter,system-ui,sans-serif;text-align:center}.pet-edit__nav-spacer{width:72rpx}.pet-edit__scroll{-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex:1;flex:1;min-height:0;padding:16rpx 40rpx 24rpx}.pet-edit__photo-row{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;margin:16rpx 0 48rpx}.pet-edit__photo{border-radius:40rpx;display:-ms-flexbox;display:flex;height:240rpx;overflow:hidden;width:240rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;border:2rpx dashed rgba(216,180,255,.3);justify-content:center}.pet-edit__photo-img{border-radius:40rpx;height:240rpx;width:240rpx}.pet-edit__photo-empty{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;color:#8a7aab;gap:12rpx}.pet-edit__photo-hint{font:500 24rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.pet-edit__picker{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;background:rgba(31,23,66,.68);border:2rpx solid rgba(216,180,255,.1);border-radius:24rpx;-webkit-box-sizing:border-box;box-sizing:border-box;height:92rpx;justify-content:space-between;padding:0 28rpx}.pet-edit__picker-value{color:#f0e9ff;font:400 28rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.pet-edit__picker-ph{color:#8a7aab;font:400 28rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.pet-edit__picker-arrow{color:#8a7aab;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.pet-edit__field{margin-bottom:36rpx}.pet-edit__label{color:#c7b9e0;display:block;font:600 26rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-bottom:16rpx}.pet-edit__input{background:rgba(31,23,66,.68);border:2rpx solid rgba(216,180,255,.1);border-radius:24rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#f0e9ff;font:400 28rpx/92rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:92rpx;padding:0 28rpx;width:100%}.pet-edit__placeholder{color:#8a7aab}.pet-edit__input--mt{margin-top:20rpx}.pet-edit__tags{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:16rpx}.pet-edit__tag{background:rgba(45,34,85,.4);border:2rpx solid rgba(216,180,255,.1);border-radius:19998rpx;color:#c7b9e0;font:500 24rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:16rpx 24rpx}.pet-edit__tag--active{background:-webkit-gradient(linear,left top,right top,from(rgba(216,180,255,.22)),to(rgba(255,179,200,.22)));background:linear-gradient(90deg,rgba(216,180,255,.22),rgba(255,179,200,.22));border-color:rgba(216,180,255,.4);color:#f0e9ff}.pet-edit__tag--add{border-color:rgba(216,180,255,.4);border-style:dashed;color:#d8b4ff}.pet-edit__delete{background:rgba(255,138,155,.1);border:2rpx solid rgba(255,138,155,.2);border-radius:24rpx;color:#ff8a9b;font:600 28rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:24rpx;padding:26rpx;text-align:center}.pet-edit__footer{-ms-flex-negative:0;background:#14102b;border-top:2rpx solid rgba(216,180,255,.06);flex-shrink:0;padding:24rpx 40rpx 32rpx}.pet-edit__submit{background:-webkit-gradient(linear,left top,right top,from(#d8b4ff),to(#ffb3c8));background:linear-gradient(90deg,#d8b4ff,#ffb3c8);border-radius:19998rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#2a1d10;font:700 30rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:30rpx;text-align:center;width:100%}.pet-edit__submit:active{opacity:.9} \ No newline at end of file +.pet-edit{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100vh}.pet-edit__nav{-ms-flex-negative:0;background:#14102b;flex-shrink:0}.pet-edit__nav-row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:108rpx;padding:0 32rpx}.pet-edit__close{display:-ms-flexbox;display:flex;height:72rpx;width:72rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#f0e9ff;justify-content:center}.pet-edit__nav-title{color:#f0e9ff;-ms-flex:1;flex:1;font:700 34rpx/1 Space Grotesk,Inter,system-ui,sans-serif;text-align:center}.pet-edit__nav-spacer{width:72rpx}.pet-edit__scroll{-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex:1;flex:1;min-height:0;padding:16rpx 40rpx 24rpx}.pet-edit__photo-row{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;margin:16rpx 0 48rpx}.pet-edit__photo{border-radius:40rpx;display:-ms-flexbox;display:flex;height:240rpx;overflow:hidden;width:240rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;border:2rpx dashed rgba(216,180,255,.3);justify-content:center}.pet-edit__photo-img{border-radius:40rpx;height:240rpx;width:240rpx}.pet-edit__photo-empty{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;color:#8a7aab;gap:12rpx}.pet-edit__photo-hint{font:500 24rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.pet-edit__picker{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;background:rgba(31,23,66,.68);border:2rpx solid rgba(216,180,255,.1);border-radius:24rpx;-webkit-box-sizing:border-box;box-sizing:border-box;height:92rpx;justify-content:space-between;padding:0 28rpx}.pet-edit__picker-value{color:#f0e9ff;font:400 28rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.pet-edit__picker-ph{color:#8a7aab;font:400 28rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.pet-edit__picker-arrow{color:#8a7aab;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.pet-edit__field{margin-bottom:36rpx}.pet-edit__label{color:#c7b9e0;display:block;font:600 26rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-bottom:16rpx}.pet-edit__input{background:rgba(31,23,66,.68);border:2rpx solid rgba(216,180,255,.1);border-radius:24rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#f0e9ff;font:400 28rpx/92rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:92rpx;padding:0 28rpx;width:100%}.pet-edit__placeholder{color:#8a7aab}.pet-edit__input--mt{margin-top:20rpx}.pet-edit__tags{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:16rpx}.pet-edit__tag{background:rgba(45,34,85,.4);border:2rpx solid rgba(216,180,255,.1);border-radius:19998rpx;color:#c7b9e0;font:500 24rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:16rpx 24rpx}.pet-edit__tag--active{background:-webkit-gradient(linear,left top,right top,from(rgba(216,180,255,.22)),to(rgba(255,179,200,.22)));background:linear-gradient(90deg,rgba(216,180,255,.22),rgba(255,179,200,.22));border-color:rgba(216,180,255,.4);color:#f0e9ff}.pet-edit__tag--add{border-color:rgba(216,180,255,.4);border-style:dashed;color:#d8b4ff}.pet-edit__delete{background:rgba(255,138,155,.1);border:2rpx solid rgba(255,138,155,.2);border-radius:24rpx;color:#ff8a9b;font:600 28rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:24rpx;padding:26rpx;text-align:center}.pet-edit__footer{-ms-flex-negative:0;background:#14102b;border-top:2rpx solid rgba(216,180,255,.06);flex-shrink:0;padding:24rpx 40rpx 32rpx}.pet-edit__submit{background:-webkit-gradient(linear,left top,right top,from(#d8b4ff),to(#ffb3c8));background:linear-gradient(90deg,#d8b4ff,#ffb3c8);border-radius:19998rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#2a1d10;font:700 30rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:30rpx;text-align:center;width:100%}.pet-edit__submit:active{opacity:.9} \ No newline at end of file diff --git a/dist/pages/plaza/index.js b/dist/pages/plaza/index.js deleted file mode 100644 index 5f6aa2d..0000000 --- a/dist/pages/plaza/index.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[407],{4761:function(e,a,n){var s=n(8870),t=n(1212),r=n(9379),c=n(467),i=n(5544),l=n(6540),o=n(758),u=n.n(o),d=n(118),p=n(7797),f=n(8324),h=n(6503),x=n(7377),_=n(326),m=n(7032),v=n(7896),A=n(4848);function j(){return(0,A.jsxs)(d.Ss,{className:"feed-ad-card",children:[(0,A.jsx)(d.Ss,{className:"feed-ad-card__mark",children:"\u6c6a"}),(0,A.jsxs)(d.Ss,{className:"feed-ad-card__text",children:[(0,A.jsx)(d.EY,{className:"feed-ad-card__title",children:"\u5468\u672b\u5ba0\u7269\u6d3e\u5bf9 \xb7 \u6ee8\u6c5f\u7eff\u5730"}),(0,A.jsx)(d.EY,{className:"feed-ad-card__sub",children:"\u672c\u5468\u516d 14:00 \xb7 \u540d\u989d\u5269 12 \u4e2a"})]}),(0,A.jsx)(d.Ss,{className:"feed-ad-card__cta",children:"\u62a5\u540d"})]})}var k=j,b=n(3972),g=n(4149),S=n(994),y=[{key:"feed",label:"\u63a8\u8350"},{key:"nearby",label:"\u9644\u8fd1"},{key:"follow",label:"\u5173\u6ce8"}],w=["\u5168\u90e8","\u6ee8\u6c5f\u516c\u56ed","\u91d1\u6bdb\u65e5\u5e38","\u732b\u54aa","\u5468\u672b\u805a\u4f1a","\u65b0\u624b\u517b\u5ba0"];function N(){var e=(0,l.useState)("feed"),a=(0,i.A)(e,2),n=a[0],s=a[1],j=(0,l.useState)("\u5168\u90e8"),N=(0,i.A)(j,2),z=N[0],B=N[1],E=(0,l.useState)([]),M=(0,i.A)(E,2),Y=M[0],O=M[1],T=(0,l.useState)(!0),C=(0,i.A)(T,2),J=C[0],D=C[1],I=(0,S.d)(480),L=(0,l.useRef)(!0),P=function(){D(!0),(0,g.lr)(n,"\u5168\u90e8"===z?void 0:z).then(O).finally(function(){return D(!1)})};(0,l.useEffect)(function(){P()},[n,z]),(0,o.useDidShow)(function(){L.current?L.current=!1:P()});var R=function(){var e=(0,c.A)((0,t.A)().m(function e(a){var n,s,c,i;return(0,t.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(n=Y,s=Y.map(function(e){if(e._id!==a)return e;var n=!e.likedByMe;return n&&I.show(),(0,r.A)((0,r.A)({},e),{},{likedByMe:n,counts:(0,r.A)((0,r.A)({},e.counts),{},{likes:Math.max(0,e.counts.likes+(n?1:-1))})})}),O(s),c=s.find(function(e){return e._id===a}),c){e.n=1;break}return e.a(2);case 1:return e.p=1,e.n=2,(0,g.O$)(a,c.likedByMe);case 2:i=e.v,O(function(e){return e.map(function(e){return e._id===a?(0,r.A)((0,r.A)({},e),{},{likedByMe:i.liked,counts:(0,r.A)((0,r.A)({},e.counts),{},{likes:i.likes})}):e})}),e.n=4;break;case 3:e.p=3,e.v,O(n),u().showToast({title:"\u70b9\u8d5e\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 4:return e.a(2)}},e,null,[[1,3]])}));return function(a){return e.apply(this,arguments)}}(),U=function(e){u().navigateTo({url:"/pages/post-detail/index?postId=".concat(e)})};return(0,A.jsxs)(f.A,{className:"plaza-page",children:[(0,A.jsx)(p.A,{title:"\u5e7f\u573a"}),(0,A.jsx)(x.A,{placeholder:"\u641c\u7d22\u8bdd\u9898\u3001\u5ba0\u7269\u3001\u9644\u8fd1\u6d3b\u52a8"}),(0,A.jsx)(_.A,{items:y,value:n,onChange:s}),(0,A.jsx)(d.BM,{scrollX:!0,className:"plaza-page__chips",showScrollbar:!1,children:(0,A.jsx)(d.Ss,{className:"plaza-page__chips-inner",children:w.map(function(e){return(0,A.jsx)(m.A,{active:z===e,onClick:function(){return B(e)},children:e},e)})})}),(0,A.jsxs)(d.Ss,{className:"plaza-page__feed",children:[Y.map(function(e,a){return(0,A.jsxs)(d.Ss,{children:[(0,A.jsx)(b.A,{post:e,onLike:R,onOpen:U}),0===a?(0,A.jsx)(k,{}):null]},e._id)}),J&&0===Y.length?(0,A.jsx)(d.EY,{className:"plaza-page__empty",children:"\u52a0\u8f7d\u4e2d\u2026"}):J||0!==Y.length?(0,A.jsx)(d.EY,{className:"plaza-page__empty",children:"\u6682\u65f6\u6ca1\u6709\u66f4\u591a\u4e86\uff0c\u7a0d\u540e\u518d\u6765\u770b\u770b\u5427"}):(0,A.jsx)(d.EY,{className:"plaza-page__empty",children:"follow"===n?"\u5173\u6ce8\u7684\u4eba\u8fd8\u6ca1\u6709\u53d1\u5e03\u52a8\u6001\uff0c\u53bb\u53d1\u73b0\u66f4\u591a\u6c6a\u53cb\u5427":"\u8fd8\u6ca1\u6709\u52a8\u6001\uff0c\u70b9\u51fb + \u53d1\u5e03\u7b2c\u4e00\u6761\u5427"})]}),(0,A.jsx)(v.A,{visible:I.visible}),(0,A.jsx)(h.A,{active:"plaza"})]})}var z={navigationBarTitleText:"\u5e7f\u573a",navigationStyle:"custom",disableScroll:!0},B=(0,s.eU)(N,"pages/plaza/index",{root:{cn:[]}},z||{});N&&N.behaviors&&(B.behaviors=(B.behaviors||[]).concat(N.behaviors));Page(B)}},function(e){var a=function(a){return e(e.s=a)};e.O(0,[907,96,76],function(){return a(4761)});e.O()}]); \ No newline at end of file diff --git a/dist/pages/plaza/index.json b/dist/pages/plaza/index.json deleted file mode 100644 index dca08f1..0000000 --- a/dist/pages/plaza/index.json +++ /dev/null @@ -1 +0,0 @@ -{"navigationBarTitleText":"广场","navigationStyle":"custom","disableScroll":true,"usingComponents":{"comp":"../../comp"}} \ No newline at end of file diff --git a/dist/pages/plaza/index.wxss b/dist/pages/plaza/index.wxss deleted file mode 100644 index 8aa9ecc..0000000 --- a/dist/pages/plaza/index.wxss +++ /dev/null @@ -1 +0,0 @@ -.feed-ad-card{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;background:linear-gradient(135deg,rgba(255,179,200,.12),rgba(255,217,168,.08));border:2rpx solid rgba(255,217,168,.12);border-radius:32rpx;gap:24rpx;margin:0 32rpx 28rpx;padding:28rpx}.feed-ad-card__mark{background:linear-gradient(135deg,#ffb3c8,#ffd9a8);border-radius:28rpx;display:-ms-flexbox;display:flex;height:100rpx;width:100rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#2a1d10;font:700 36rpx/1 Space Grotesk,Inter,system-ui,sans-serif;justify-content:center}.feed-ad-card__text{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-direction:column;flex-direction:column;gap:8rpx}.feed-ad-card__title{color:#f0e9ff;font:600 26rpx/1.3 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.feed-ad-card__sub{color:#c7b9e0;font:400 22rpx/1.4 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.feed-ad-card__cta{background:#ffd9a8;border-radius:19998rpx;color:#2a1d10;font:600 22rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:12rpx 24rpx}.plaza-page__chips{padding-bottom:24rpx;width:100%}.plaza-page__chips-inner{display:-ms-flexbox;display:flex;gap:16rpx;padding:0 40rpx}.plaza-page__feed{padding-top:4rpx}.plaza-page__empty{color:#8a7aab;display:block;font:400 24rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:16rpx 0 40rpx;text-align:center} \ No newline at end of file diff --git a/dist/pages/post-detail/index.js b/dist/pages/post-detail/index.js index 04d1c57..ec10b0d 100644 --- a/dist/pages/post-detail/index.js +++ b/dist/pages/post-detail/index.js @@ -1 +1 @@ -"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[741],{8680:function(e,t,s){var a=s(8870),n=s(436),c=s(1212),i=s(9379),o=s(467),l=s(5544),r=s(6540),u=s(758),d=s.n(u),m=s(118),p=s(374),h=s(3401),_=s(7745),x=s(3972),v=s(7896),f=s(4149),A=s(994),j=s(4848);function N(){var e=(0,p.v)(),t=e.statusBarHeight,s=e.safeBottom,a=(0,u.useRouter)(),N=a.params.postId||"",k=(0,r.useState)(null),b=(0,l.A)(k,2),S=b[0],w=b[1],y=(0,r.useState)([]),g=(0,l.A)(y,2),B=g[0],E=g[1],Y=(0,r.useState)(!0),M=(0,l.A)(Y,2),T=M[0],C=M[1],I=(0,r.useState)(""),K=(0,l.A)(I,2),O=K[0],U=K[1],z=(0,r.useState)(!1),J=(0,l.A)(z,2),P=J[0],H=J[1],L=(0,A.d)(480),R=function(){N?(C(!0),(0,f.aC)(N).then(function(e){w(e.post),E(e.comments)}).finally(function(){return C(!1)})):C(!1)};(0,r.useEffect)(function(){R()},[N]);var $=function(){var e=(0,o.A)((0,c.A)().m(function e(t){var s,a,n;return(0,c.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(S){e.n=1;break}return e.a(2);case 1:return s=!S.likedByMe,s&&L.show(),a=(0,i.A)((0,i.A)({},S),{},{likedByMe:s,counts:(0,i.A)((0,i.A)({},S.counts),{},{likes:Math.max(0,S.counts.likes+(s?1:-1))})}),w(a),e.p=2,e.n=3,(0,f.O$)(t,s);case 3:n=e.v,w(function(e){return e?(0,i.A)((0,i.A)({},e),{},{likedByMe:n.liked,counts:(0,i.A)((0,i.A)({},e.counts),{},{likes:n.likes})}):e}),e.n=5;break;case 4:e.p=4,e.v,w(S),d().showToast({title:"\u70b9\u8d5e\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 5:return e.a(2)}},e,null,[[2,4]])}));return function(t){return e.apply(this,arguments)}}(),q=function(){var e=(0,o.A)((0,c.A)().m(function e(){var t,s;return(0,c.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(t=O.trim(),t&&!P&&S){e.n=1;break}return e.a(2);case 1:return H(!0),U(""),e.p=2,e.n=3,(0,f.SI)(S._id,t);case 3:s=e.v,E(function(e){return[].concat((0,n.A)(e),[{_id:s.commentId,author:{id:"me",name:"\u6211",avatarKey:"gradient-avatar-1"},content:t,timeText:"\u521a\u521a"}])}),w(function(e){return e?(0,i.A)((0,i.A)({},e),{},{counts:(0,i.A)((0,i.A)({},e.counts),{},{comments:s.comments})}):e}),e.n=5;break;case 4:e.p=4,e.v,d().showToast({title:"\u8bc4\u8bba\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"}),U(t);case 5:return e.p=5,H(!1),e.f(5);case 6:return e.a(2)}},e,null,[[2,4,5,6]])}));return function(){return e.apply(this,arguments)}}();return(0,j.jsxs)(m.Ss,{className:"post-detail",children:[(0,j.jsx)(m.Ss,{className:"post-detail__nav",style:{paddingTop:"".concat(t,"px")},children:(0,j.jsxs)(m.Ss,{className:"post-detail__nav-row",children:[(0,j.jsx)(m.Ss,{className:"post-detail__back",onClick:function(){return d().navigateBack()},children:(0,j.jsx)(h.A,{name:"chev",size:22,className:"post-detail__back-icon"})}),(0,j.jsx)(m.EY,{className:"post-detail__title",children:"\u52a8\u6001\u8be6\u60c5"}),(0,j.jsx)(m.Ss,{className:"post-detail__nav-spacer"})]})}),(0,j.jsxs)(m.BM,{scrollY:!0,className:"post-detail__scroll",enhanced:!0,showScrollbar:!1,children:[S?(0,j.jsx)(m.Ss,{className:"post-detail__post",children:(0,j.jsx)(x.A,{post:S,onLike:$,enableImagePreview:!0})}):null,(0,j.jsxs)(m.Ss,{className:"post-detail__comments",children:[(0,j.jsxs)(m.EY,{className:"post-detail__comments-title",children:["\u8bc4\u8bba",S?" ".concat(S.counts.comments):""]}),T&&!S?(0,j.jsx)(m.EY,{className:"post-detail__empty",children:"\u52a0\u8f7d\u4e2d\u2026"}):0===B.length?(0,j.jsx)(m.EY,{className:"post-detail__empty",children:"\u8fd8\u6ca1\u6709\u8bc4\u8bba\uff0c\u6765\u62a2\u6c99\u53d1\u5427"}):B.map(function(e){return(0,j.jsxs)(m.Ss,{className:"post-detail__comment",children:[(0,j.jsx)(_.A,{avatarKey:e.author.avatarKey,avatarUrl:e.author.avatarUrl,size:"sm"}),(0,j.jsxs)(m.Ss,{className:"post-detail__comment-body",children:[(0,j.jsxs)(m.Ss,{className:"post-detail__comment-head",children:[(0,j.jsx)(m.EY,{className:"post-detail__comment-name",children:e.author.name}),(0,j.jsx)(m.EY,{className:"post-detail__comment-time",children:e.timeText})]}),(0,j.jsx)(m.EY,{className:"post-detail__comment-text",children:e.content})]})]},e._id)})]})]}),(0,j.jsxs)(m.Ss,{className:"post-detail__input-bar",style:{paddingBottom:"".concat(Math.max(12,s),"px")},children:[(0,j.jsx)(m.pd,{className:"post-detail__input",value:O,placeholder:"\u5199\u8bc4\u8bba\u2026",placeholderClass:"post-detail__input-ph",confirmType:"send",onInput:function(e){return U(e.detail.value)},onConfirm:q}),(0,j.jsx)(m.Ss,{className:"post-detail__send ".concat(O.trim()?"":"post-detail__send--disabled"),onClick:q,children:"\u53d1\u9001"})]}),(0,j.jsx)(v.A,{visible:L.visible})]})}var k={},b=(0,a.eU)(N,"pages/post-detail/index",{root:{cn:[]}},k||{});N&&N.behaviors&&(b.behaviors=(b.behaviors||[]).concat(N.behaviors));Page(b)}},function(e){var t=function(t){return e(e.s=t)};e.O(0,[907,96,76],function(){return t(8680)});e.O()}]); \ No newline at end of file +"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[741],{8680:function(e,t,n){var s=n(8870),a=n(1212),c=n(467),r=n(9379),i=n(5544),o=n(436),l=n(6540),u=n(758),d=n.n(u),m=n(118),p=n(374),h=n(3401),_=n(7745),f=n(3972),v=n(7896),x=n(4149),A=n(994),k=n(5313),j=n(5596),N=n(4848),S=50;function b(e,t){var n=new Set(e.map(function(e){return e._id}));return[].concat((0,o.A)(e),(0,o.A)(t.filter(function(e){return!n.has(e._id)})))}function y(){var e=(0,p.v)(),t=e.statusBarHeight,n=e.safeBottom,s=(0,u.useRouter)(),y=s.params.postId||"",w=(0,j.wV)(),g=w.user,E=(0,k.bI)(y),B=(0,l.useState)(E||null),Y=(0,i.A)(B,2),M=Y[0],C=Y[1],I=(0,l.useState)([]),T=(0,i.A)(I,2),U=T[0],K=T[1],z=(0,l.useState)(!1),H=(0,i.A)(z,2),O=H[0],P=H[1],R=(0,l.useState)(!1),J=(0,i.A)(R,2),Q=J[0],F=J[1],L=(0,l.useState)(""),V=(0,i.A)(L,2),$=V[0],q=V[1],D=(0,l.useState)(!1),G=(0,i.A)(D,2),W=G[0],X=G[1],Z=(0,l.useState)(""),ee=(0,i.A)(Z,2),te=ee[0],ne=ee[1],se=(0,l.useState)(!1),ae=(0,i.A)(se,2),ce=ae[0],re=ae[1],ie=(0,A.d)(480),oe=(0,l.useRef)(E||null),le=(0,l.useRef)(new Set);(0,l.useEffect)(function(){oe.current=M},[M]);var ue=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";y?(e?X(!0):(F(!1),P(!1)),(0,x.aC)({postId:y,commentCursor:t,commentPageSize:S}).then(function(t){var n=t.post;n&&((0,k.bE)(n),C(function(e){return e?e.likedByMe===n.likedByMe&&e.counts.likes===n.counts.likes&&e.counts.comments===n.counts.comments?e:(0,r.A)((0,r.A)({},e),{},{likedByMe:n.likedByMe,counts:n.counts}):n})),K(function(n){return e?b(n,t.comments):t.comments}),q(t.commentsNextCursor||"")}).catch(function(){e?d().showToast({title:"\u8bc4\u8bba\u52a0\u8f7d\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"}):F(!0)}).finally(function(){e?X(!1):P(!0)})):P(!0)};(0,l.useEffect)(function(){ue()},[y]);var de=function(){var e=(0,c.A)((0,a.A)().m(function e(t){var n,s,c,i;return(0,a.A)().w(function(e){while(1)switch(e.p=e.n){case 0:return e.n=1,(0,j.HQ)();case 1:if(e.v){e.n=2;break}return e.a(2);case 2:if(!le.current.has(t)){e.n=3;break}return e.a(2);case 3:if(n=oe.current,n){e.n=4;break}return e.a(2);case 4:return s=!n.likedByMe,s&&ie.show(),c=(0,r.A)((0,r.A)({},n),{},{likedByMe:s,counts:(0,r.A)((0,r.A)({},n.counts),{},{likes:Math.max(0,n.counts.likes+(s?1:-1))})}),le.current.add(t),C(c),e.p=5,e.n=6,(0,x.O$)(t,s);case 6:i=e.v,C(function(e){return e?(0,r.A)((0,r.A)({},e),{},{likedByMe:i.liked,counts:(0,r.A)((0,r.A)({},e.counts),{},{likes:i.likes})}):e}),e.n=8;break;case 7:e.p=7,e.v,C(n),d().showToast({title:"\u70b9\u8d5e\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 8:return e.p=8,le.current.delete(t),e.f(8);case 9:return e.a(2)}},e,null,[[5,7,8,9]])}));return function(t){return e.apply(this,arguments)}}(),me=function(){var e=(0,c.A)((0,a.A)().m(function e(){var t,n;return(0,a.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(t=te.trim(),t&&!ce&&M){e.n=1;break}return e.a(2);case 1:return e.n=2,(0,j.HQ)();case 2:if(e.v){e.n=3;break}return e.a(2);case 3:return re(!0),ne(""),e.p=4,e.n=5,(0,x.SI)(M._id,t);case 5:n=e.v,K(function(e){return[].concat((0,o.A)(e),[{_id:n.commentId,author:{id:g._id,name:g.nickname||"\u6211",avatarKey:g.avatarKey||"gradient-avatar-1",avatarUrl:g.avatarUrl},content:t,timeText:"\u521a\u521a"}])}),C(function(e){return e?(0,r.A)((0,r.A)({},e),{},{counts:(0,r.A)((0,r.A)({},e.counts),{},{comments:n.comments})}):e}),e.n=7;break;case 6:e.p=6,e.v,d().showToast({title:"\u8bc4\u8bba\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"}),ne(t);case 7:return e.p=7,re(!1),e.f(7);case 8:return e.a(2)}},e,null,[[4,6,7,8]])}));return function(){return e.apply(this,arguments)}}();return(0,N.jsxs)(m.Ss,{className:"post-detail",children:[(0,N.jsx)(m.Ss,{className:"post-detail__nav",style:{paddingTop:"".concat(t,"px")},children:(0,N.jsxs)(m.Ss,{className:"post-detail__nav-row",children:[(0,N.jsx)(m.Ss,{className:"post-detail__back",onClick:function(){return d().navigateBack()},children:(0,N.jsx)(h.A,{name:"chev",size:22,className:"post-detail__back-icon"})}),(0,N.jsx)(m.EY,{className:"post-detail__title",children:"\u52a8\u6001\u8be6\u60c5"}),(0,N.jsx)(m.Ss,{className:"post-detail__nav-spacer"})]})}),(0,N.jsxs)(m.BM,{scrollY:!0,className:"post-detail__scroll",enhanced:!0,showScrollbar:!1,children:[M?(0,N.jsx)(m.Ss,{className:"post-detail__post",children:(0,N.jsx)(f.A,{post:M,onLike:de,enableImagePreview:!0})}):null,(0,N.jsxs)(m.Ss,{className:"post-detail__comments",children:[(0,N.jsxs)(m.EY,{className:"post-detail__comments-title",children:["\u8bc4\u8bba",M?" ".concat(M.counts.comments):""]}),O?Q?(0,N.jsx)(m.EY,{className:"post-detail__empty",onClick:function(){return ue()},children:"\u8bc4\u8bba\u52a0\u8f7d\u5931\u8d25\uff0c\u70b9\u51fb\u91cd\u8bd5"}):0===U.length?(0,N.jsx)(m.EY,{className:"post-detail__empty",children:"\u8fd8\u6ca1\u6709\u8bc4\u8bba\uff0c\u6765\u62a2\u6c99\u53d1\u5427"}):(0,N.jsxs)(N.Fragment,{children:[U.map(function(e){return(0,N.jsxs)(m.Ss,{className:"post-detail__comment",children:[(0,N.jsx)(_.A,{avatarKey:e.author.avatarKey,avatarUrl:e.author.avatarUrl,size:"sm"}),(0,N.jsxs)(m.Ss,{className:"post-detail__comment-body",children:[(0,N.jsxs)(m.Ss,{className:"post-detail__comment-head",children:[(0,N.jsx)(m.EY,{className:"post-detail__comment-name",children:e.author.name}),(0,N.jsx)(m.EY,{className:"post-detail__comment-time",children:e.timeText})]}),(0,N.jsx)(m.EY,{className:"post-detail__comment-text",children:e.content})]})]},e._id)}),W?(0,N.jsx)(m.EY,{className:"post-detail__empty",children:"\u52a0\u8f7d\u66f4\u591a\u8bc4\u8bba\u4e2d\u2026"}):$?(0,N.jsx)(m.EY,{className:"post-detail__empty",onClick:function(){return ue(!0,$)},children:"\u52a0\u8f7d\u66f4\u591a\u8bc4\u8bba"}):null]}):(0,N.jsx)(m.EY,{className:"post-detail__empty",children:M?"\u8bc4\u8bba\u52a0\u8f7d\u4e2d\u2026":"\u52a0\u8f7d\u4e2d\u2026"})]})]}),(0,N.jsxs)(m.Ss,{className:"post-detail__input-bar",style:{paddingBottom:"".concat(Math.max(12,n),"px")},children:[(0,N.jsx)(m.pd,{className:"post-detail__input",value:te,placeholder:"\u5199\u8bc4\u8bba\u2026",placeholderClass:"post-detail__input-ph",confirmType:"send",onInput:function(e){return ne(e.detail.value)},onConfirm:me}),(0,N.jsx)(m.Ss,{className:"post-detail__send ".concat(te.trim()?"":"post-detail__send--disabled"),onClick:me,children:"\u53d1\u9001"})]}),(0,N.jsx)(v.A,{visible:ie.visible})]})}var w={},g=(0,s.eU)(y,"pages/post-detail/index",{root:{cn:[]}},w||{});y&&y.behaviors&&(g.behaviors=(g.behaviors||[]).concat(y.behaviors));Page(g)}},function(e){var t=function(t){return e(e.s=t)};e.O(0,[907,96,76],function(){return t(8680)});e.O()}]); \ No newline at end of file diff --git a/dist/pages/post-detail/index.wxss b/dist/pages/post-detail/index.wxss index 3f88c5c..d65ea7b 100644 --- a/dist/pages/post-detail/index.wxss +++ b/dist/pages/post-detail/index.wxss @@ -1 +1 @@ -.post-detail{background:#14102b;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100vh}.post-detail__nav{-ms-flex-negative:0;background:#14102b;border-bottom:2rpx solid rgba(216,180,255,.06);flex-shrink:0}.post-detail__nav-row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:100rpx;padding:0 24rpx}.post-detail__back{display:-ms-flexbox;display:flex;height:72rpx;width:72rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#f0e9ff;justify-content:center}.post-detail__back-icon{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.post-detail__title{color:#f0e9ff;-ms-flex:1;flex:1;font:700 32rpx/1 Space Grotesk,Inter,system-ui,sans-serif;text-align:center}.post-detail__nav-spacer{width:72rpx}.post-detail__scroll{-ms-flex:1;flex:1;min-height:0}.post-detail__post{padding-top:24rpx}.post-detail__comments{padding:8rpx 32rpx 48rpx}.post-detail__comments-title{color:#f0e9ff;display:block;font:700 28rpx/1 Space Grotesk,Inter,system-ui,sans-serif;margin:16rpx 0 24rpx}.post-detail__empty{color:#8a7aab;display:block;font:400 26rpx/1.6 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:72rpx 48rpx;text-align:center}.post-detail__comment{border-top:2rpx solid rgba(216,180,255,.06);display:-ms-flexbox;display:flex;gap:20rpx;padding:24rpx 0}.post-detail__comment-body{-ms-flex:1;flex:1;min-width:0}.post-detail__comment-head{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:16rpx}.post-detail__comment-name{color:#f0e9ff;font:600 26rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.post-detail__comment-time{color:#8a7aab;font:400 22rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.post-detail__comment-text{color:#f0e9ff;display:block;font:400 28rpx/1.55 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:12rpx;word-break:break-word}.post-detail__input-bar{-ms-flex-negative:0;display:-ms-flexbox;display:flex;flex-shrink:0;-ms-flex-align:center;align-items:center;background:#14102b;border-top:2rpx solid rgba(216,180,255,.08);gap:20rpx;padding:20rpx 32rpx 24rpx}.post-detail__input{background:rgba(31,23,66,.68);border:2rpx solid rgba(216,180,255,.1);border-radius:19998rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#f0e9ff;-ms-flex:1;flex:1;font:400 28rpx/80rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:80rpx;padding:0 28rpx}.post-detail__input-ph{color:#8a7aab}.post-detail__send{-ms-flex-negative:0;background:linear-gradient(135deg,#d8b4ff,#ffb3c8);border-radius:19998rpx;color:#2a1d10;flex-shrink:0;font:700 28rpx/80rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:80rpx;padding:0 36rpx}.post-detail__send--disabled{opacity:.5} \ No newline at end of file +.post-detail{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100vh}.post-detail__nav{-ms-flex-negative:0;background:#14102b;border-bottom:2rpx solid rgba(216,180,255,.06);flex-shrink:0}.post-detail__nav-row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:100rpx;padding:0 24rpx}.post-detail__back{display:-ms-flexbox;display:flex;height:72rpx;width:72rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#f0e9ff;justify-content:center}.post-detail__back-icon{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.post-detail__title{color:#f0e9ff;-ms-flex:1;flex:1;font:700 32rpx/1 Space Grotesk,Inter,system-ui,sans-serif;text-align:center}.post-detail__nav-spacer{width:72rpx}.post-detail__scroll{-ms-flex:1;flex:1;min-height:0}.post-detail__post{padding-top:24rpx}.post-detail__comments{padding:8rpx 32rpx 48rpx}.post-detail__comments-title{color:#f0e9ff;display:block;font:700 28rpx/1 Space Grotesk,Inter,system-ui,sans-serif;margin:16rpx 0 24rpx}.post-detail__empty{color:#8a7aab;display:block;font:400 26rpx/1.6 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:72rpx 48rpx;text-align:center}.post-detail__comment{border-top:2rpx solid rgba(216,180,255,.06);display:-ms-flexbox;display:flex;gap:20rpx;padding:24rpx 0}.post-detail__comment-body{-ms-flex:1;flex:1;min-width:0}.post-detail__comment-head{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:16rpx}.post-detail__comment-name{color:#f0e9ff;font:600 26rpx/1.2 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.post-detail__comment-time{color:#8a7aab;font:400 22rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.post-detail__comment-text{color:#f0e9ff;display:block;font:400 28rpx/1.55 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:12rpx;word-break:break-word}.post-detail__input-bar{-ms-flex-negative:0;display:-ms-flexbox;display:flex;flex-shrink:0;-ms-flex-align:center;align-items:center;background:#14102b;border-top:2rpx solid rgba(216,180,255,.08);gap:20rpx;padding:20rpx 32rpx 24rpx}.post-detail__input{background:rgba(31,23,66,.68);border:2rpx solid rgba(216,180,255,.1);border-radius:19998rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#f0e9ff;-ms-flex:1;flex:1;font:400 28rpx/80rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:80rpx;padding:0 28rpx}.post-detail__input-ph{color:#8a7aab}.post-detail__send{-ms-flex-negative:0;background:linear-gradient(135deg,#d8b4ff,#ffb3c8);border-radius:19998rpx;color:#2a1d10;flex-shrink:0;font:700 28rpx/80rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:80rpx;padding:0 36rpx}.post-detail__send--disabled{opacity:.5} \ No newline at end of file diff --git a/dist/pages/post-edit/index.js b/dist/pages/post-edit/index.js new file mode 100644 index 0000000..d751c56 --- /dev/null +++ b/dist/pages/post-edit/index.js @@ -0,0 +1 @@ +"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[986],{4924:function(e,s,t){var n=t(8870),a=t(1212),i=t(467),o=t(5544),c=t(6540),r=t(758),l=t.n(r),u=t(118),d=t(374),p=t(3401),h=t(2978),v=t(4149),_=t(5313),m=t(4848),x={public:"\u516c\u5f00",friends:"\u6c6a\u53cb\u53ef\u89c1",private:"\u4ec5\u81ea\u5df1"};function b(){var e=(0,d.v)(),s=e.statusBarHeight,t=e.safeBottom,n=(0,r.useRouter)(),b=n.params.postId||"",f=(0,_.bI)(b),j=(0,c.useState)((null===f||void 0===f?void 0:f.body)||""),w=(0,o.A)(j,2),N=w[0],S=w[1],g=(0,c.useState)((null===f||void 0===f?void 0:f.visibility)||"public"),k=(0,o.A)(g,2),A=k[0],y=k[1],C=(0,c.useState)(!1),B=(0,o.A)(C,2),E=B[0],T=B[1],Y=(0,c.useState)(!1),I=(0,o.A)(Y,2),M=I[0],z=I[1];(0,c.useEffect)(function(){!f&&b&&(0,v.aC)(b).then(function(e){var s=e.post;s&&(S(s.body||""),y(s.visibility||"public"))}).catch(function(){})},[]);var H=N.trim().length,J=H>0&&H<=2e3,O=function(){var e=(0,i.A)((0,a.A)().m(function e(){return(0,a.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(!M){e.n=1;break}return e.a(2);case 1:if(J){e.n=2;break}return l().showToast({title:H?"\u6b63\u6587\u6700\u591a 2000 \u5b57":"\u5199\u70b9\u4ec0\u4e48\u5427",icon:"none"}),e.a(2);case 2:return z(!0),e.p=3,e.n=4,(0,v.gg)(b,{content:N.trim(),visibility:A});case 4:l().showToast({title:"\u5df2\u4fdd\u5b58",icon:"success"}),setTimeout(function(){return l().navigateBack()},500),e.n=6;break;case 5:e.p=5,e.v,l().showToast({title:"\u4fdd\u5b58\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 6:return e.p=6,z(!1),e.f(6);case 7:return e.a(2)}},e,null,[[3,5,6,7]])}));return function(){return e.apply(this,arguments)}}();return(0,m.jsxs)(u.Ss,{className:"post-edit",children:[(0,m.jsx)(u.Ss,{className:"post-edit__nav",style:{paddingTop:"".concat(s,"px")},children:(0,m.jsxs)(u.Ss,{className:"post-edit__nav-row",children:[(0,m.jsx)(u.Ss,{className:"post-edit__close",onClick:function(){return l().navigateBack()},children:(0,m.jsx)(p.A,{name:"close",size:22})}),(0,m.jsx)(u.EY,{className:"post-edit__nav-title",children:"\u7f16\u8f91\u52a8\u6001"}),(0,m.jsx)(u.Ss,{className:"post-edit__nav-spacer"})]})}),(0,m.jsxs)(u.BM,{scrollY:!0,className:"post-edit__body",enhanced:!0,showScrollbar:!1,children:[(0,m.jsx)(u.TM,{className:"post-edit__textarea",value:N,placeholder:"\u8bf4\u70b9\u4ec0\u4e48\u2026",placeholderClass:"post-edit__placeholder",maxlength:2e3,autoHeight:!0,onInput:function(e){return S(e.detail.value)}}),(0,m.jsxs)(u.EY,{className:"post-edit__count",children:[H,"/2000"]}),(0,m.jsxs)(u.Ss,{className:"post-edit__row",onClick:function(){return T(!0)},children:[(0,m.jsx)(u.EY,{className:"post-edit__row-label",children:"\u53ef\u89c1\u8303\u56f4"}),(0,m.jsxs)(u.Ss,{className:"post-edit__row-value",children:[(0,m.jsx)(u.EY,{children:x[A]}),(0,m.jsx)(p.A,{name:"chev",size:16})]})]}),(0,m.jsx)(u.EY,{className:"post-edit__hint",children:"\u6b64\u5904\u4ec5\u7f16\u8f91\u6587\u5b57\u4e0e\u53ef\u89c1\u8303\u56f4\uff1b\u5982\u9700\u4fee\u6539\u56fe\u7247\u6216\u8bdd\u9898\uff0c\u8bf7\u5220\u9664\u540e\u91cd\u65b0\u53d1\u5e03\u3002"})]}),(0,m.jsx)(u.Ss,{className:"post-edit__footer",style:{paddingBottom:"".concat(Math.max(16,t),"px")},children:(0,m.jsx)(u.Ss,{className:"post-edit__submit ".concat(J&&!M?"":"post-edit__submit--disabled"),onClick:O,children:M?"\u4fdd\u5b58\u4e2d\u2026":"\u4fdd\u5b58"})}),(0,m.jsx)(h.A,{visible:E,value:A,onChange:y,onClose:function(){return T(!1)}})]})}var f={},j=(0,n.eU)(b,"pages/post-edit/index",{root:{cn:[]}},f||{});b&&b.behaviors&&(j.behaviors=(j.behaviors||[]).concat(b.behaviors));Page(j)}},function(e){var s=function(s){return e(e.s=s)};e.O(0,[907,96,76],function(){return s(4924)});e.O()}]); \ No newline at end of file diff --git a/dist/pages/post-edit/index.json b/dist/pages/post-edit/index.json new file mode 100644 index 0000000..c63841a --- /dev/null +++ b/dist/pages/post-edit/index.json @@ -0,0 +1 @@ +{"usingComponents":{"comp":"../../comp"}} \ No newline at end of file diff --git a/dist/pages/nearby/index.wxml b/dist/pages/post-edit/index.wxml similarity index 100% rename from dist/pages/nearby/index.wxml rename to dist/pages/post-edit/index.wxml diff --git a/dist/pages/post-edit/index.wxss b/dist/pages/post-edit/index.wxss new file mode 100644 index 0000000..882629f --- /dev/null +++ b/dist/pages/post-edit/index.wxss @@ -0,0 +1 @@ +.post-edit{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100vh}.post-edit__nav{-ms-flex-negative:0;-webkit-box-sizing:border-box;box-sizing:border-box;flex-shrink:0;position:relative;z-index:10}.post-edit__nav-row{display:-ms-flexbox;display:flex;height:96rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;padding:0 32rpx}.post-edit__close{display:-ms-flexbox;display:flex;height:76rpx;width:76rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#f0e9ff;justify-content:center}.post-edit__nav-title{color:#f0e9ff;font:600 34rpx/1 Space Grotesk,Inter,system-ui,sans-serif}.post-edit__nav-spacer{height:76rpx;width:76rpx}.post-edit__body{-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex:1;flex:1;padding:16rpx 32rpx 48rpx}.post-edit__footer{-ms-flex-negative:0;background:#14102b;border-top:2rpx solid rgba(216,180,255,.06);flex-shrink:0;padding:24rpx 40rpx 32rpx}.post-edit__submit{background:-webkit-gradient(linear,left top,right top,from(#d8b4ff),to(#ffb3c8));background:linear-gradient(90deg,#d8b4ff,#ffb3c8);border-radius:19998rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#2a1d10;font:700 30rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:30rpx;text-align:center;width:100%}.post-edit__submit:active{opacity:.9}.post-edit__submit--disabled{opacity:.45}.post-edit__textarea{background:rgba(31,23,66,.6);border:2rpx solid rgba(216,180,255,.1);border-radius:28rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#f0e9ff;font:400 30rpx/1.6 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;min-height:320rpx;padding:28rpx;width:100%}.post-edit__placeholder{color:#8a7aab}.post-edit__count{color:#8a7aab;display:block;font:400 22rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:16rpx;text-align:right}.post-edit__row{background:rgba(31,23,66,.6);border:2rpx solid rgba(216,180,255,.1);border-radius:28rpx;display:-ms-flexbox;display:flex;height:100rpx;margin-top:36rpx;padding:0 28rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.post-edit__row-label{color:#f0e9ff;font:500 28rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.post-edit__row-value{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;color:#8a7aab;font:400 26rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;gap:8rpx}.post-edit__hint{color:#8a7aab;display:block;font:400 24rpx/1.6 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:32rpx} \ No newline at end of file diff --git a/dist/pages/profile-edit/index.js b/dist/pages/profile-edit/index.js index a62adb9..483945e 100644 --- a/dist/pages/profile-edit/index.js +++ b/dist/pages/profile-edit/index.js @@ -1 +1 @@ -"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[261],{508:function(e,a,i){var s=i(8870),r=i(1212),t=i(467),l=i(5544),n=i(6540),c=i(758),o=i.n(c),d=i(118),u=i(374),p=i(3401),f=i(7745),_=i(3427),h=i(1926),m=i(4848),v=Array.from({length:101},function(e,a){return"".concat(a)});function x(){var e=(0,u.v)(),a=e.statusBarHeight,i=e.safeBottom,s=(0,n.useState)(""),c=(0,l.A)(s,2),x=c[0],j=c[1],N=(0,n.useState)("gradient-avatar-2"),S=(0,l.A)(N,2),b=S[0],g=S[1],k=(0,n.useState)(""),A=(0,l.A)(k,2),w=A[0],y=A[1],E=(0,n.useState)(""),C=(0,l.A)(E,2),T=C[0],Y=C[1],B=(0,n.useState)(""),M=(0,l.A)(B,2),z=M[0],U=M[1],P=(0,n.useState)(""),F=(0,l.A)(P,2),I=F[0],J=F[1],K=(0,n.useState)(""),L=(0,l.A)(K,2),O=L[0],W=L[1],$=(0,n.useState)(!1),H=(0,l.A)($,2),V=H[0],q=H[1];(0,n.useEffect)(function(){(0,h.E$)().then(function(e){var a=e.user;j(a.avatarUrl||""),g(a.avatarKey||"gradient-avatar-2"),Y(a.nickname||""),U(a.bio||""),J(a.location||""),W(String(a.yearsWithPets||0))})},[]);var D=function(e){var a,i=null===e||void 0===e||null===(a=e.detail)||void 0===a?void 0:a.avatarUrl;i&&(y(i),j(i))},G=function(e){var a=e.detail.value||[],i=a.filter(function(e,i){return 0===i||e!==a[i-1]});J(i.join(" "))},Q=function(e){W(v[Number(e.detail.value)]||"0")},R=function(){var e=(0,t.A)((0,r.A)().m(function e(){var a,i;return(0,r.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(!V){e.n=1;break}return e.a(2);case 1:if(T.trim()){e.n=2;break}return o().showToast({title:"\u8bf7\u586b\u5199\u6635\u79f0",icon:"none"}),e.a(2);case 2:if(q(!0),e.p=3,a={nickname:T.trim(),bio:z.trim(),location:I.trim(),yearsWithPets:Math.max(0,Number(O)||0)},!w){e.n=5;break}return e.n=4,(0,_.F4)(w);case 4:i=e.v,i&&(a.avatarUrl=i);case 5:return e.n=6,(0,h.r7)(a);case 6:o().showToast({title:"\u5df2\u4fdd\u5b58",icon:"success"}),setTimeout(function(){return o().navigateBack()},600),e.n=8;break;case 7:e.p=7,e.v,o().showToast({title:"\u4fdd\u5b58\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 8:return e.p=8,q(!1),e.f(8);case 9:return e.a(2)}},e,null,[[3,7,8,9]])}));return function(){return e.apply(this,arguments)}}();return(0,m.jsxs)(d.Ss,{className:"profile-edit",children:[(0,m.jsx)(d.Ss,{className:"profile-edit__nav",style:{paddingTop:"".concat(a,"px")},children:(0,m.jsxs)(d.Ss,{className:"profile-edit__nav-row",children:[(0,m.jsx)(d.Ss,{className:"profile-edit__close",onClick:function(){return o().navigateBack()},children:(0,m.jsx)(p.A,{name:"close",size:22})}),(0,m.jsx)(d.EY,{className:"profile-edit__nav-title",children:"\u7f16\u8f91\u8d44\u6599"}),(0,m.jsx)(d.Ss,{className:"profile-edit__nav-spacer"})]})}),(0,m.jsxs)(d.BM,{scrollY:!0,className:"profile-edit__scroll",enhanced:!0,showScrollbar:!1,children:[(0,m.jsxs)(d.Ss,{className:"profile-edit__avatar-row",children:[(0,m.jsxs)(d.$n,{className:"profile-edit__avatar-btn",openType:"chooseAvatar",onChooseAvatar:D,children:[x?(0,m.jsx)(d._V,{className:"profile-edit__avatar-img",src:x,mode:"aspectFill"}):(0,m.jsx)(f.A,{avatarKey:b,size:"xl",label:T}),(0,m.jsx)(d.Ss,{className:"profile-edit__avatar-edit",children:(0,m.jsx)(p.A,{name:"image",size:12})})]}),(0,m.jsx)(d.EY,{className:"profile-edit__avatar-hint",children:"\u70b9\u51fb\u66f4\u6362\u5934\u50cf"})]}),(0,m.jsxs)(d.Ss,{className:"profile-edit__field",children:[(0,m.jsx)(d.EY,{className:"profile-edit__label",children:"\u6635\u79f0"}),(0,m.jsx)(d.pd,{className:"profile-edit__input",type:"nickname",placeholder:"\u586b\u5199\u6635\u79f0",placeholderClass:"profile-edit__placeholder",value:T,maxlength:16,onInput:function(e){return Y(e.detail.value)},onBlur:function(e){return Y(e.detail.value)}})]}),(0,m.jsxs)(d.Ss,{className:"profile-edit__field",children:[(0,m.jsx)(d.EY,{className:"profile-edit__label",children:"\u4e2a\u4eba\u7b80\u4ecb"}),(0,m.jsx)(d.TM,{className:"profile-edit__textarea",placeholder:"\u4ecb\u7ecd\u4e00\u4e0b\u4f60\u548c\u6bdb\u5b69\u5b50\u7684\u6545\u4e8b",placeholderClass:"profile-edit__placeholder",value:z,maxlength:80,onInput:function(e){return U(e.detail.value)}})]}),(0,m.jsxs)(d.Ss,{className:"profile-edit__field",children:[(0,m.jsx)(d.EY,{className:"profile-edit__label",children:"\u6240\u5728\u5730\u533a"}),(0,m.jsx)(d.LC,{mode:"region",onChange:G,children:(0,m.jsxs)(d.Ss,{className:"profile-edit__picker",children:[(0,m.jsx)(d.EY,{className:I?"profile-edit__picker-value":"profile-edit__picker-ph",children:I||"\u8bf7\u9009\u62e9\u7701 / \u5e02 / \u533a"}),(0,m.jsx)(p.A,{name:"chev",size:16,className:"profile-edit__picker-arrow"})]})})]}),(0,m.jsxs)(d.Ss,{className:"profile-edit__field",children:[(0,m.jsx)(d.EY,{className:"profile-edit__label",children:"\u517b\u5ba0\u5e74\u6570"}),(0,m.jsx)(d.LC,{mode:"selector",range:v,value:Math.min(100,Math.max(0,Number(O)||0)),onChange:Q,children:(0,m.jsxs)(d.Ss,{className:"profile-edit__picker",children:[(0,m.jsxs)(d.EY,{className:"profile-edit__picker-value",children:[O||"0"," \u5e74"]}),(0,m.jsx)(p.A,{name:"chev",size:16,className:"profile-edit__picker-arrow"})]})})]})]}),(0,m.jsx)(d.Ss,{className:"profile-edit__footer",style:{paddingBottom:"".concat(Math.max(16,i),"px")},children:(0,m.jsx)(d.Ss,{className:"profile-edit__submit",onClick:R,children:V?"\u4fdd\u5b58\u4e2d\u2026":"\u4fdd\u5b58"})})]})}var j={navigationBarTitleText:"\u7f16\u8f91\u8d44\u6599",navigationStyle:"custom",disableScroll:!0},N=(0,s.eU)(x,"pages/profile-edit/index",{root:{cn:[]}},j||{});x&&x.behaviors&&(N.behaviors=(N.behaviors||[]).concat(x.behaviors));Page(N)}},function(e){var a=function(a){return e(e.s=a)};e.O(0,[907,96,76],function(){return a(508)});e.O()}]); \ No newline at end of file +"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[261],{508:function(e,a,r){var i=r(8870),t=r(1212),s=r(467),n=r(5544),l=r(6540),c=r(758),o=r.n(c),d=r(118),u=r(374),f=r(3401),p=r(7745),h=r(3427),m=r(1926),v=r(4848),_=Array.from({length:101},function(e,a){return"".concat(a)});function x(){var e=(0,u.v)(),a=e.statusBarHeight,r=e.safeBottom,i=(0,l.useState)(""),c=(0,n.A)(i,2),x=c[0],j=c[1],N=(0,l.useState)("gradient-avatar-2"),b=(0,n.A)(N,2),S=b[0],k=b[1],g=(0,l.useState)(""),A=(0,n.A)(g,2),w=A[0],y=A[1],B=(0,l.useState)(""),T=(0,n.A)(B,2),E=T[0],C=T[1],Y=(0,l.useState)(""),M=(0,n.A)(Y,2),U=M[0],z=M[1],K=(0,l.useState)(""),P=(0,n.A)(K,2),W=P[0],F=P[1],I=(0,l.useState)(""),J=(0,n.A)(I,2),L=J[0],O=J[1],$=(0,l.useState)(!1),H=(0,n.A)($,2),R=H[0],V=H[1],q=(0,l.useRef)(null),D=x&&!x.startsWith("cloud://")?x:"";(0,l.useEffect)(function(){(0,m.E$)().then(function(e){var a=e.user,r={avatarUrl:a.avatarUrl||"",avatarKey:a.avatarKey||"gradient-avatar-2",nickname:a.nickname||"",bio:a.bio||"",location:a.location||"",years:String(a.yearsWithPets||0)};q.current=r,j(r.avatarUrl),k(r.avatarKey),C(r.nickname),z(r.bio),F(r.location),O(r.years)})},[]);var G=function(){var e=q.current;return e?Boolean(w||e.avatarUrl!==x||e.avatarKey!==S||e.nickname!==E||e.bio!==U||e.location!==W||e.years!==L):Boolean(w||E||U||W||L)},Q=function(){var e=(0,s.A)((0,t.A)().m(function e(){var a;return(0,t.A)().w(function(e){while(1)switch(e.n){case 0:if(!R){e.n=1;break}return e.a(2);case 1:if(G()){e.n=2;break}return o().navigateBack(),e.a(2);case 2:return e.n=3,o().showModal({title:"\u653e\u5f03\u4fee\u6539\uff1f",content:"\u5f53\u524d\u8d44\u6599\u5c1a\u672a\u4fdd\u5b58\uff0c\u79bb\u5f00\u540e\u4fee\u6539\u4f1a\u4e22\u5931\u3002",cancelText:"\u7ee7\u7eed\u7f16\u8f91",confirmText:"\u653e\u5f03"});case 3:a=e.v,a.confirm&&o().navigateBack();case 4:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}(),X=function(e){var a,r=null===e||void 0===e||null===(a=e.detail)||void 0===a?void 0:a.avatarUrl;r&&(y(r),j(r))},Z=function(e){var a=e.detail.value||[],r=a.filter(function(e,r){return 0===r||e!==a[r-1]});F(r.join(" "))},ee=function(e){O(_[Number(e.detail.value)]||"0")},ae=function(){var e=(0,s.A)((0,t.A)().m(function e(){var a,r;return(0,t.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(!R){e.n=1;break}return e.a(2);case 1:if(E.trim()){e.n=2;break}return o().showToast({title:"\u8bf7\u586b\u5199\u6635\u79f0",icon:"none"}),e.a(2);case 2:if(V(!0),e.p=3,a={nickname:E.trim(),bio:U.trim(),location:W.trim(),yearsWithPets:Math.max(0,Number(L)||0)},!w){e.n=5;break}return e.n=4,(0,h.F4)(w);case 4:r=e.v,r&&(a.avatarUrl=r);case 5:return e.n=6,(0,m.r7)(a);case 6:o().showToast({title:"\u5df2\u4fdd\u5b58",icon:"success"}),setTimeout(function(){return o().navigateBack()},600),e.n=8;break;case 7:e.p=7,e.v,o().showToast({title:"\u4fdd\u5b58\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 8:return e.p=8,V(!1),e.f(8);case 9:return e.a(2)}},e,null,[[3,7,8,9]])}));return function(){return e.apply(this,arguments)}}();return(0,v.jsxs)(d.Ss,{className:"profile-edit",children:[(0,v.jsx)(d.Ss,{className:"profile-edit__nav",style:{paddingTop:"".concat(a,"px")},children:(0,v.jsxs)(d.Ss,{className:"profile-edit__nav-row",children:[(0,v.jsx)(d.Ss,{className:"profile-edit__close",onClick:Q,children:(0,v.jsx)(f.A,{name:"close",size:22})}),(0,v.jsx)(d.EY,{className:"profile-edit__nav-title",children:"\u7f16\u8f91\u8d44\u6599"}),(0,v.jsx)(d.Ss,{className:"profile-edit__nav-spacer"})]})}),(0,v.jsxs)(d.BM,{scrollY:!0,className:"profile-edit__scroll",enhanced:!0,showScrollbar:!1,children:[(0,v.jsxs)(d.Ss,{className:"profile-edit__avatar-row",children:[(0,v.jsxs)(d.$n,{className:"profile-edit__avatar-btn",openType:"chooseAvatar",onChooseAvatar:X,children:[D?(0,v.jsx)(d._V,{className:"profile-edit__avatar-img",src:D,mode:"aspectFill"}):(0,v.jsx)(p.A,{avatarKey:S,size:"xl",label:E}),(0,v.jsx)(d.Ss,{className:"profile-edit__avatar-edit",children:(0,v.jsx)(f.A,{name:"image",size:12})})]}),(0,v.jsx)(d.EY,{className:"profile-edit__avatar-hint",children:"\u70b9\u51fb\u66f4\u6362\u5934\u50cf"})]}),(0,v.jsxs)(d.Ss,{className:"profile-edit__field",children:[(0,v.jsx)(d.EY,{className:"profile-edit__label",children:"\u6635\u79f0"}),(0,v.jsx)(d.pd,{className:"profile-edit__input",type:"nickname",placeholder:"\u586b\u5199\u6635\u79f0",placeholderClass:"profile-edit__placeholder",value:E,maxlength:16,onInput:function(e){return C(e.detail.value)},onBlur:function(e){return C(e.detail.value)}})]}),(0,v.jsxs)(d.Ss,{className:"profile-edit__field",children:[(0,v.jsx)(d.EY,{className:"profile-edit__label",children:"\u4e2a\u4eba\u7b80\u4ecb"}),(0,v.jsx)(d.TM,{className:"profile-edit__textarea",placeholder:"\u4ecb\u7ecd\u4e00\u4e0b\u4f60\u548c\u6bdb\u5b69\u5b50\u7684\u6545\u4e8b",placeholderClass:"profile-edit__placeholder",value:U,maxlength:80,onInput:function(e){return z(e.detail.value)}})]}),(0,v.jsxs)(d.Ss,{className:"profile-edit__field",children:[(0,v.jsx)(d.EY,{className:"profile-edit__label",children:"\u6240\u5728\u5730\u533a"}),(0,v.jsx)(d.LC,{mode:"region",onChange:Z,children:(0,v.jsxs)(d.Ss,{className:"profile-edit__picker",children:[(0,v.jsx)(d.EY,{className:W?"profile-edit__picker-value":"profile-edit__picker-ph",children:W||"\u8bf7\u9009\u62e9\u7701 / \u5e02 / \u533a"}),(0,v.jsx)(f.A,{name:"chev",size:16,className:"profile-edit__picker-arrow"})]})})]}),(0,v.jsxs)(d.Ss,{className:"profile-edit__field",children:[(0,v.jsx)(d.EY,{className:"profile-edit__label",children:"\u517b\u5ba0\u5e74\u6570"}),(0,v.jsx)(d.LC,{mode:"selector",range:_,value:Math.min(100,Math.max(0,Number(L)||0)),onChange:ee,children:(0,v.jsxs)(d.Ss,{className:"profile-edit__picker",children:[(0,v.jsxs)(d.EY,{className:"profile-edit__picker-value",children:[L||"0"," \u5e74"]}),(0,v.jsx)(f.A,{name:"chev",size:16,className:"profile-edit__picker-arrow"})]})})]})]}),(0,v.jsx)(d.Ss,{className:"profile-edit__footer",style:{paddingBottom:"".concat(Math.max(16,r),"px")},children:(0,v.jsx)(d.Ss,{className:"profile-edit__submit",onClick:ae,children:R?"\u4fdd\u5b58\u4e2d\u2026":"\u4fdd\u5b58"})})]})}var j={navigationBarTitleText:"\u7f16\u8f91\u8d44\u6599",navigationStyle:"custom",disableScroll:!0},N=(0,i.eU)(x,"pages/profile-edit/index",{root:{cn:[]}},j||{});x&&x.behaviors&&(N.behaviors=(N.behaviors||[]).concat(x.behaviors));Page(N)}},function(e){var a=function(a){return e(e.s=a)};e.O(0,[907,96,76],function(){return a(508)});e.O()}]); \ No newline at end of file diff --git a/dist/pages/profile-edit/index.wxss b/dist/pages/profile-edit/index.wxss index 5de7c51..c709772 100644 --- a/dist/pages/profile-edit/index.wxss +++ b/dist/pages/profile-edit/index.wxss @@ -1 +1 @@ -.profile-edit{background:#14102b;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100vh}.profile-edit__nav{-ms-flex-negative:0;background:#14102b;flex-shrink:0}.profile-edit__nav-row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:108rpx;padding:0 32rpx}.profile-edit__close{display:-ms-flexbox;display:flex;height:72rpx;width:72rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#f0e9ff;justify-content:center}.profile-edit__nav-title{color:#f0e9ff;-ms-flex:1;flex:1;font:700 34rpx/1 Space Grotesk,Inter,system-ui,sans-serif;text-align:center}.profile-edit__nav-spacer{width:72rpx}.profile-edit__scroll{-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex:1;flex:1;min-height:0;padding:16rpx 40rpx 80rpx}.profile-edit__avatar-row{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;margin:16rpx 0 48rpx}.profile-edit__avatar-btn{background:transparent;border-radius:50%;height:128rpx;line-height:normal;margin:0;padding:0;position:relative;width:128rpx}.profile-edit__avatar-btn::after{border:none}.profile-edit__avatar-img{border-radius:50%;height:128rpx;width:128rpx}.profile-edit__avatar-edit{background:#d8b4ff;border-radius:50%;bottom:-4rpx;color:#2a1d10;display:-ms-flexbox;display:flex;height:44rpx;position:absolute;right:-4rpx;width:44rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;border:4rpx solid #14102b;justify-content:center}.profile-edit__avatar-hint{color:#8a7aab;font:400 24rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:20rpx}.profile-edit__field{margin-bottom:36rpx}.profile-edit__label{color:#c7b9e0;display:block;font:600 26rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-bottom:16rpx}.profile-edit__input{background:rgba(31,23,66,.68);border:2rpx solid rgba(216,180,255,.1);border-radius:24rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#f0e9ff;font:400 28rpx/92rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:92rpx;padding:0 28rpx;width:100%}.profile-edit__textarea{background:rgba(31,23,66,.68);border:2rpx solid rgba(216,180,255,.1);border-radius:24rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#f0e9ff;font:400 28rpx/1.5 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:168rpx;padding:24rpx 28rpx;width:100%}.profile-edit__placeholder{color:#8a7aab}.profile-edit__picker{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;background:rgba(31,23,66,.68);border:2rpx solid rgba(216,180,255,.1);border-radius:24rpx;-webkit-box-sizing:border-box;box-sizing:border-box;height:92rpx;justify-content:space-between;padding:0 28rpx}.profile-edit__picker-value{color:#f0e9ff;font:400 28rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.profile-edit__picker-ph{color:#8a7aab;font:400 28rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.profile-edit__picker-arrow{color:#8a7aab;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.profile-edit__footer{-ms-flex-negative:0;background:#14102b;border-top:2rpx solid rgba(216,180,255,.06);flex-shrink:0;padding:24rpx 40rpx 32rpx}.profile-edit__submit{background:-webkit-gradient(linear,left top,right top,from(#d8b4ff),to(#ffb3c8));background:linear-gradient(90deg,#d8b4ff,#ffb3c8);border-radius:19998rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#2a1d10;font:700 30rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:30rpx;text-align:center;width:100%}.profile-edit__submit:active{opacity:.9} \ No newline at end of file +.profile-edit{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100vh}.profile-edit__nav{-ms-flex-negative:0;background:#14102b;flex-shrink:0}.profile-edit__nav-row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:108rpx;padding:0 32rpx}.profile-edit__close{display:-ms-flexbox;display:flex;height:72rpx;width:72rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;color:#f0e9ff;justify-content:center}.profile-edit__nav-title{color:#f0e9ff;-ms-flex:1;flex:1;font:700 34rpx/1 Space Grotesk,Inter,system-ui,sans-serif;text-align:center}.profile-edit__nav-spacer{width:72rpx}.profile-edit__scroll{-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex:1;flex:1;min-height:0;padding:16rpx 40rpx 80rpx}.profile-edit__avatar-row{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;margin:16rpx 0 48rpx}.profile-edit__avatar-btn{background:transparent;border-radius:50%;height:128rpx;line-height:normal;margin:0;padding:0;position:relative;width:128rpx}.profile-edit__avatar-btn::after{border:none}.profile-edit__avatar-img{border-radius:50%;height:128rpx;width:128rpx}.profile-edit__avatar-edit{background:#d8b4ff;border-radius:50%;bottom:-4rpx;color:#2a1d10;display:-ms-flexbox;display:flex;height:44rpx;position:absolute;right:-4rpx;width:44rpx;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;border:4rpx solid #14102b;justify-content:center}.profile-edit__avatar-hint{color:#8a7aab;font:400 24rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-top:20rpx}.profile-edit__field{margin-bottom:36rpx}.profile-edit__label{color:#c7b9e0;display:block;font:600 26rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;margin-bottom:16rpx}.profile-edit__input{background:rgba(31,23,66,.68);border:2rpx solid rgba(216,180,255,.1);border-radius:24rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#f0e9ff;font:400 28rpx/92rpx Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:92rpx;padding:0 28rpx;width:100%}.profile-edit__textarea{background:rgba(31,23,66,.68);border:2rpx solid rgba(216,180,255,.1);border-radius:24rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#f0e9ff;font:400 28rpx/1.5 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;height:168rpx;padding:24rpx 28rpx;width:100%}.profile-edit__placeholder{color:#8a7aab}.profile-edit__picker{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;background:rgba(31,23,66,.68);border:2rpx solid rgba(216,180,255,.1);border-radius:24rpx;-webkit-box-sizing:border-box;box-sizing:border-box;height:92rpx;justify-content:space-between;padding:0 28rpx}.profile-edit__picker-value{color:#f0e9ff;font:400 28rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.profile-edit__picker-ph{color:#8a7aab;font:400 28rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.profile-edit__picker-arrow{color:#8a7aab;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.profile-edit__footer{-ms-flex-negative:0;background:#14102b;border-top:2rpx solid rgba(216,180,255,.06);flex-shrink:0;padding:24rpx 40rpx 32rpx}.profile-edit__submit{background:-webkit-gradient(linear,left top,right top,from(#d8b4ff),to(#ffb3c8));background:linear-gradient(90deg,#d8b4ff,#ffb3c8);border-radius:19998rpx;-webkit-box-sizing:border-box;box-sizing:border-box;color:#2a1d10;font:700 30rpx/1 Inter,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;padding:30rpx;text-align:center;width:100%}.profile-edit__submit:active{opacity:.9} \ No newline at end of file diff --git a/dist/pages/profile/index.js b/dist/pages/profile/index.js deleted file mode 100644 index 2d83a0e..0000000 --- a/dist/pages/profile/index.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[481],{8060:function(e,n,s){var a=s(8870),r=s(4467),t=s(9379),l=s(1212),c=s(467),i=s(5544),o=s(6540),u=s(758),h=s.n(u),f=s(118),d=s(7797),p=s(8324),_=s(6503),m=s(7745),x=s(3401),v=s(4848);function j(e){var n=e.user;return(0,v.jsxs)(f.Ss,{className:"profile-hero",children:[(0,v.jsx)(m.A,{avatarKey:n.avatarKey,avatarUrl:n.avatarUrl,size:"xl",label:n.nickname}),(0,v.jsxs)(f.Ss,{className:"profile-hero__info",children:[(0,v.jsxs)(f.Ss,{className:"profile-hero__name-row",children:[(0,v.jsx)(f.EY,{className:"profile-hero__name",children:n.nickname}),(0,v.jsxs)(f.EY,{className:"profile-hero__level",children:["Lv.",n.level]})]}),(0,v.jsxs)(f.EY,{className:"profile-hero__sub",children:[n.location," \xb7 ",n.yearsWithPets," \u5e74\u517b\u5ba0\u7ecf\u9a8c"]}),(0,v.jsxs)(f.Ss,{className:"profile-hero__badges",children:[n.verified?(0,v.jsxs)(f.Ss,{className:"profile-hero__badge",children:[(0,v.jsx)(x.A,{name:"check",size:10}),(0,v.jsx)(f.EY,{children:"\u5b9e\u540d\u8ba4\u8bc1"})]}):null,n.location?(0,v.jsxs)(f.Ss,{className:"profile-hero__badge",children:[(0,v.jsx)(x.A,{name:"pin",size:10}),(0,v.jsx)(f.EY,{children:n.location})]}):null]})]})]})}var g=j;function N(e){return e>=1e4?"".concat((e/1e4).toFixed(1),"w"):e>=1e3?"".concat((e/1e3).toFixed(1),"k"):String(e)}var b=[["posts","\u52a8\u6001"],["following","\u5173\u6ce8"],["followers","\u7c89\u4e1d"]];function S(e){var n=e.stats,s=e.onSelect,a=n||{posts:0,following:0,followers:0,favorites:0};return(0,v.jsx)(f.Ss,{className:"stats-row",children:b.map(function(e){var n=(0,i.A)(e,2),r=n[0],t=n[1];return(0,v.jsxs)(f.Ss,{className:"stats-row__item",onClick:function(){return null===s||void 0===s?void 0:s(r)},children:[(0,v.jsx)(f.EY,{className:"stats-row__num",children:N(a[r])}),(0,v.jsx)(f.EY,{className:"stats-row__label",children:t})]},r)})})}var w=S;function A(e){var n=e?"?petId=".concat(e):"";h().navigateTo({url:"/pages/pet-edit/index".concat(n)})}function k(e){var n=e.pets;return(0,v.jsxs)(f.Ss,{className:"pet-shelf",children:[(0,v.jsx)(f.Ss,{className:"pet-shelf__head",children:(0,v.jsxs)(f.EY,{className:"pet-shelf__title",children:["\u6211\u7684\u6bdb\u5b69\u5b50 \xb7 ",n.length]})}),(0,v.jsxs)(f.Ss,{className:"pet-shelf__list",children:[n.map(function(e){return(0,v.jsxs)(f.Ss,{className:"pet-shelf__card",onClick:function(){return A(e._id)},children:[(0,v.jsxs)(f.Ss,{className:"pet-shelf__photo ".concat(e.photoUrl?"":e.photoKey),children:[e.photoUrl?(0,v.jsx)(f._V,{className:"pet-shelf__photo-img",src:e.photoUrl,mode:"aspectFill"}):null,(0,v.jsx)(f.EY,{className:"pet-shelf__label",children:"cat"===e.species?"CAT":"DOG"})]}),(0,v.jsxs)(f.EY,{className:"pet-shelf__name",children:[e.name," \xb7 ",e.breed]}),(0,v.jsxs)(f.EY,{className:"pet-shelf__meta",children:[e.ageText||"\u5f85\u5b8c\u5584"," \xb7 ",e.tags[0]||"\u5f85\u5b8c\u5584"]})]},e._id)}),(0,v.jsxs)(f.Ss,{className:"pet-shelf__card pet-shelf__card--add",onClick:function(){return A()},children:[(0,v.jsx)(f.Ss,{className:"pet-shelf__add-icon",children:(0,v.jsx)(x.A,{name:"plus",size:18})}),(0,v.jsx)(f.EY,{className:"pet-shelf__add-label",children:"\u6dfb\u52a0\u5ba0\u7269"})]})]})]})}var y=k;function E(e){var n=e.checked,s=e.onChange;return(0,v.jsx)(f.Ss,{className:"switch ".concat(n?"switch--checked":""),onClick:function(){return null===s||void 0===s?void 0:s(!n)}})}var Y=E,C=[{key:"nearbyVisible",icon:"heart",label:"\u9644\u8fd1\u53ef\u89c1"},{key:"notifications",icon:"bell",label:"\u6d88\u606f\u901a\u77e5"},{key:"help",icon:"info",label:"\u5e2e\u52a9\u4e0e\u53cd\u9988",value:"\u203a"},{key:"about",icon:"settings",label:"\u8bbe\u7f6e",value:"\u203a"}];function T(e){return"notifications"===e||"nearbyVisible"===e}function z(e){var n=e.preferences,s=e.onChange,a=e.onAction,r=e.onLogout,t=n||{notifications:!0,nearbyVisible:!0};return(0,v.jsxs)(f.Ss,{className:"preference-list",children:[(0,v.jsx)(f.EY,{className:"preference-list__title",children:"\u504f\u597d\u8bbe\u7f6e"}),(0,v.jsx)(f.Ss,{className:"preference-list__panel",children:C.map(function(e){var n=!T(e.key);return(0,v.jsxs)(f.Ss,{className:"preference-list__row",onClick:n?function(){return null===a||void 0===a?void 0:a(e.key)}:void 0,children:[(0,v.jsx)(f.Ss,{className:"preference-list__icon preference-list__icon--".concat(e.key),children:(0,v.jsx)(x.A,{name:e.icon,size:16})}),(0,v.jsx)(f.EY,{className:"preference-list__label",children:e.label}),T(e.key)?(0,v.jsx)(Y,{checked:t[e.key],onChange:function(n){return s(e.key,n)}}):(0,v.jsx)(f.EY,{className:"preference-list__value",children:e.value})]},e.key)})}),r?(0,v.jsx)(f.Ss,{className:"preference-list__logout",onClick:r,children:"\u9000\u51fa\u767b\u5f55"}):null]})}var U=z;function B(e){var n=e.onSubmit,s=(0,o.useState)(""),a=(0,i.A)(s,2),r=a[0],t=a[1],u=(0,o.useState)(""),h=(0,i.A)(u,2),d=h[0],p=h[1],_=(0,o.useState)(!1),m=(0,i.A)(_,2),x=m[0],j=m[1],g=function(e){var n,s=null===e||void 0===e||null===(n=e.detail)||void 0===n?void 0:n.avatarUrl;s&&t(s)},N=Boolean(r&&d.trim()),b=function(){var e=(0,c.A)((0,l.A)().m(function e(){return(0,l.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(N&&!x){e.n=1;break}return e.a(2);case 1:return j(!0),e.p=2,e.n=3,n(r,d.trim());case 3:return e.p=3,j(!1),e.f(3);case 4:return e.a(2)}},e,null,[[2,,3,4]])}));return function(){return e.apply(this,arguments)}}();return(0,v.jsxs)(f.Ss,{className:"login-card",children:[(0,v.jsx)(f.EY,{className:"login-card__title",children:"\u767b\u5f55\u6c6a\u5708"}),(0,v.jsx)(f.EY,{className:"login-card__sub",children:"\u6388\u6743\u5934\u50cf\u6635\u79f0\uff0c\u8bb0\u5f55\u4f60\u548c\u6bdb\u5b69\u5b50\u7684\u65e5\u5e38"}),(0,v.jsx)(f.$n,{className:"login-card__avatar-btn",openType:"chooseAvatar",onChooseAvatar:g,children:r?(0,v.jsx)(f._V,{className:"login-card__avatar-img",src:r,mode:"aspectFill"}):(0,v.jsxs)(f.Ss,{className:"login-card__avatar-empty",children:[(0,v.jsx)(f.EY,{className:"login-card__avatar-plus",children:"\uff0b"}),(0,v.jsx)(f.EY,{className:"login-card__avatar-hint",children:"\u9009\u62e9\u5934\u50cf"})]})}),(0,v.jsx)(f.Ss,{className:"login-card__field",children:(0,v.jsx)(f.pd,{className:"login-card__input",type:"nickname",placeholder:"\u70b9\u6b64\u586b\u5199\u6635\u79f0",placeholderClass:"login-card__placeholder",value:d,onInput:function(e){return p(e.detail.value)},onBlur:function(e){return p(e.detail.value)}})}),(0,v.jsx)(f.Ss,{className:"login-card__submit ".concat(N?"":"login-card__submit--disabled"),onClick:b,children:x?"\u767b\u5f55\u4e2d\u2026":"\u5b8c\u6210\u767b\u5f55"}),(0,v.jsx)(f.EY,{className:"login-card__tip",children:"\u4ec5\u7528\u4e8e\u5c55\u793a\u4f60\u7684\u5934\u50cf\u548c\u6635\u79f0\uff0c\u4e0d\u4f1a\u83b7\u53d6\u5176\u4ed6\u4fe1\u606f"})]})}var V=B,D=s(3427),F=s(1926),L=s(5366);function $(){var e=(0,o.useState)(L.SW),n=(0,i.A)(e,2),s=n[0],a=n[1],m=(0,o.useState)(L.LT),x=(0,i.A)(m,2),j=x[0],N=x[1],b=(0,o.useState)(!1),S=(0,i.A)(b,2),A=S[0],k=S[1],E=(0,o.useState)(!0),Y=(0,i.A)(E,2),C=Y[0],T=Y[1],z=(0,o.useRef)(!0);(0,o.useEffect)(function(){(0,D.iD)().then(function(e){var n=e.user;a(n),k((0,D.nB)()||!n.profileCompleted),T(!1),(0,F.E$)().then(function(e){var n=e.pets;return N(n)})})},[]),(0,u.useDidShow)(function(){z.current?z.current=!1:(0,D.nB)()||(0,F.E$)().then(function(e){var n=e.user,s=e.pets;a(n),N(s)})});var B=function(){var e=(0,c.A)((0,l.A)().m(function e(n,s){var r;return(0,l.A)().w(function(e){while(1)switch(e.p=e.n){case 0:return e.p=0,e.n=1,(0,D.R$)(n,s);case 1:r=e.v,a(r),k(!1),h().showToast({title:"\u767b\u5f55\u6210\u529f",icon:"success"}),e.n=3;break;case 2:e.p=2,e.v,h().showToast({title:"\u767b\u5f55\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 3:return e.a(2)}},e,null,[[0,2]])}));return function(n,s){return e.apply(this,arguments)}}(),$=function(){h().showModal({title:"\u9000\u51fa\u767b\u5f55",content:"\u786e\u5b9a\u8981\u9000\u51fa\u5f53\u524d\u8d26\u53f7\u5417\uff1f",confirmText:"\u9000\u51fa",confirmColor:"#ff8a9b",success:function(){var e=(0,c.A)((0,l.A)().m(function e(n){return(0,l.A)().w(function(e){while(1)switch(e.n){case 0:if(n.confirm){e.n=1;break}return e.a(2);case 1:return e.n=2,(0,D.ri)();case 2:a(L.SW),N([]),k(!0),h().showToast({title:"\u5df2\u9000\u51fa\u767b\u5f55",icon:"none"});case 3:return e.a(2)}},e)}));function n(n){return e.apply(this,arguments)}return n}()})},K=function(e){"help"===e?h().showModal({title:"\u5e2e\u52a9\u4e0e\u53cd\u9988",content:"\u9047\u5230\u95ee\u9898\u6216\u6709\u5efa\u8bae\uff1f\n\u8bf7\u53d1\u9001\u90ae\u4ef6\u81f3 chenwuzhu975@gmail.com\n\u6211\u4eec\u4f1a\u5c3d\u5feb\u56de\u590d\u4f60 \u2728",confirmText:"\u590d\u5236\u90ae\u7bb1",cancelText:"\u5173\u95ed",success:function(e){e.confirm&&h().setClipboardData({data:"chenwuzhu975@gmail.com"})}}):h().showToast({title:"\u656c\u8bf7\u671f\u5f85\u65b0\u529f\u80fd",icon:"none"})},O=function(){var e=(0,c.A)((0,l.A)().m(function e(n,c){var i;return(0,l.A)().w(function(e){while(1)switch(e.n){case 0:return i=(0,t.A)((0,t.A)({},s),{},{preferences:(0,t.A)((0,t.A)({},s.preferences),{},(0,r.A)({},n,c))}),a(i),e.n=1,(0,F.r7)({preferences:i.preferences});case 1:return e.a(2)}},e)}));return function(n,s){return e.apply(this,arguments)}}();return A&&!C?(0,v.jsxs)(p.A,{className:"profile-page",children:[(0,v.jsx)(d.A,{title:"\u6211\u7684"}),(0,v.jsx)(V,{onSubmit:B}),(0,v.jsx)(_.A,{active:"profile"})]}):(0,v.jsxs)(p.A,{className:"profile-page",children:[(0,v.jsx)(d.A,{title:"\u6211\u7684"}),(0,v.jsx)(g,{user:s}),(0,v.jsx)(w,{stats:s.stats,onSelect:function(e){"posts"===e?h().navigateTo({url:"/pages/my-posts/index"}):"following"===e?h().navigateTo({url:"/pages/contacts/index?tab=following"}):"followers"===e&&h().navigateTo({url:"/pages/contacts/index?tab=followers"})}}),(0,v.jsx)(f.Ss,{className:"profile-page__actions",children:(0,v.jsx)(f.Ss,{className:"profile-page__primary",onClick:function(){return h().navigateTo({url:"/pages/profile-edit/index"})},children:"\u7f16\u8f91\u8d44\u6599"})}),(0,v.jsx)(y,{pets:j}),(0,v.jsx)(U,{preferences:s.preferences,onChange:O,onAction:K,onLogout:$}),(0,v.jsx)(_.A,{active:"profile"})]})}var K={navigationBarTitleText:"\u6211\u7684",navigationStyle:"custom",disableScroll:!0},O=(0,a.eU)($,"pages/profile/index",{root:{cn:[]}},K||{});$&&$.behaviors&&(O.behaviors=(O.behaviors||[]).concat($.behaviors));Page(O)}},function(e){var n=function(n){return e(e.s=n)};e.O(0,[907,96,76],function(){return n(8060)});e.O()}]); \ No newline at end of file diff --git a/dist/pages/profile/index.json b/dist/pages/profile/index.json deleted file mode 100644 index fac244b..0000000 --- a/dist/pages/profile/index.json +++ /dev/null @@ -1 +0,0 @@ -{"navigationBarTitleText":"我的","navigationStyle":"custom","disableScroll":true,"usingComponents":{"comp":"../../comp"}} \ No newline at end of file diff --git a/dist/pages/profile/index.wxml b/dist/pages/profile/index.wxml deleted file mode 100644 index 181a491..0000000 --- a/dist/pages/profile/index.wxml +++ /dev/null @@ -1,2 +0,0 @@ - -