mirror of
https://wget.la/https://github.com/Wxw-Gu/WechatExplorer
synced 2026-08-17 03:27:00 +08:00
Merge remote-tracking branch 'origin/nanin/develop' into develop
This commit is contained in:
@@ -802,8 +802,8 @@ body {
|
||||
overscroll-behavior-x: none;
|
||||
touch-action: pan-y;
|
||||
}
|
||||
.message:not(.system) .bubble { max-width: calc(100% - 50px); }
|
||||
.message:not(.system) .row.has-locate .bubble { max-width: calc(100% - 90px); }
|
||||
.message:not(.system) .message-stack { max-width: calc(100% - 50px); }
|
||||
.message:not(.system) .row.has-locate .message-stack { max-width: calc(100% - 90px); }
|
||||
.audio-wrap { width: min(260px, 100%); }
|
||||
}
|
||||
`
|
||||
@@ -1396,12 +1396,10 @@ const renderExportScript = (name: string): string => `
|
||||
})
|
||||
}
|
||||
const updateCount = () => {
|
||||
const shown = Math.max(0, windowEnd - windowStart)
|
||||
const scopeTotal = activeConversation === 'all'
|
||||
? allMessages.length
|
||||
: allMessages.filter((message) => message.exportConversationId === activeConversation).length
|
||||
const scopeLabel = activeConversation === 'all' ? '全部' : '当前聊天'
|
||||
count.textContent = '已显示 ' + shown + ' / 筛选 ' + filtered.length + ' / ' + scopeLabel + ' ' + scopeTotal
|
||||
count.textContent = '筛选 ' + filtered.length + ' / 全部 ' + scopeTotal
|
||||
}
|
||||
const setScrollTop = (value) => {
|
||||
scrollLoadSuppressed = true
|
||||
|
||||
@@ -256,6 +256,21 @@ test('EXPORT-ARCHIVE-01 merged v2 archive is usable offline on desktop and mobil
|
||||
).toBeLessThanOrEqual(1)
|
||||
expect(compactControlBounds.searchWidth).toBeGreaterThan(compactControlBounds.conversationWidth)
|
||||
expect(compactControlBounds.searchFontSize).toBe('16px')
|
||||
const personalMessageContent = page
|
||||
.locator('.message')
|
||||
.filter({ hasText: '个人聊天消息' })
|
||||
.locator('.content')
|
||||
const expectPersonalMessageOnOneLine = async (): Promise<void> => {
|
||||
const metrics = await personalMessageContent.evaluate((element) => {
|
||||
const styles = getComputedStyle(element)
|
||||
return {
|
||||
height: element.getBoundingClientRect().height,
|
||||
lineHeight: Number.parseFloat(styles.lineHeight)
|
||||
}
|
||||
})
|
||||
expect(metrics.height).toBeLessThanOrEqual(metrics.lineHeight + 1)
|
||||
}
|
||||
await expectPersonalMessageOnOneLine()
|
||||
await expect(conversationTrigger.locator('.conversation-switch-icon')).toHaveCSS(
|
||||
'width',
|
||||
'13px'
|
||||
@@ -276,6 +291,7 @@ test('EXPORT-ARCHIVE-01 merged v2 archive is usable offline on desktop and mobil
|
||||
await expect(searchInput).toBeVisible()
|
||||
await searchInput.fill('个人聊天消息')
|
||||
await expect(page.locator('.search-highlight')).toHaveText('个人聊天消息')
|
||||
await expectPersonalMessageOnOneLine()
|
||||
const mobileSearchResult = page.locator('.message')
|
||||
const mobileLocateButton = mobileSearchResult.getByRole('button', {
|
||||
name: '定位到聊天位置'
|
||||
|
||||
@@ -73,9 +73,7 @@ describe('export media', () => {
|
||||
dom.window.eval(inlineScriptOf(html))
|
||||
|
||||
expect(dom.window.document.querySelectorAll('.message')).toHaveLength(EXPORT_PAGE_SIZE)
|
||||
expect(dom.window.document.querySelector('#count')?.textContent).toBe(
|
||||
'已显示 240 / 筛选 500 / 全部 500'
|
||||
)
|
||||
expect(dom.window.document.querySelector('#count')?.textContent).toBe('筛选 500 / 全部 500')
|
||||
const list = dom.window.document.querySelector('#messages')!
|
||||
expect(list.querySelector('.message')?.getAttribute('data-index')).toBe('260')
|
||||
|
||||
@@ -154,9 +152,7 @@ describe('export media', () => {
|
||||
'https://example.com/xi'
|
||||
)
|
||||
expect(dom.window.document.querySelectorAll('.search-highlight')).toHaveLength(1)
|
||||
expect(dom.window.document.querySelector('#count')?.textContent).toBe(
|
||||
'已显示 1 / 筛选 1 / 全部 2'
|
||||
)
|
||||
expect(dom.window.document.querySelector('#count')?.textContent).toBe('筛选 1 / 全部 2')
|
||||
dom.window.close()
|
||||
})
|
||||
|
||||
@@ -191,25 +187,19 @@ describe('export media', () => {
|
||||
expect(trigger.textContent).toContain('全部聊天')
|
||||
expect(menu.querySelectorAll('[data-conversation-id]')).toHaveLength(3)
|
||||
expect(dom.window.document.querySelectorAll('.conversation-source')).toHaveLength(3)
|
||||
expect(dom.window.document.querySelector('#count')?.textContent).toBe(
|
||||
'已显示 3 / 筛选 3 / 全部 3'
|
||||
)
|
||||
expect(dom.window.document.querySelector('#count')?.textContent).toBe('筛选 3 / 全部 3')
|
||||
trigger.click()
|
||||
;(menu.querySelector('[data-conversation-id="alpha"]') as HTMLButtonElement).click()
|
||||
expect(dom.window.document.querySelectorAll('.message')).toHaveLength(2)
|
||||
expect(dom.window.document.querySelectorAll('.conversation-source')).toHaveLength(0)
|
||||
expect(dom.window.document.querySelector('#count')?.textContent).toBe(
|
||||
'已显示 2 / 筛选 2 / 当前聊天 2'
|
||||
)
|
||||
expect(dom.window.document.querySelector('#count')?.textContent).toBe('筛选 2 / 全部 2')
|
||||
expect(dom.window.document.querySelectorAll('.timeline-month')).toHaveLength(2)
|
||||
|
||||
const search = dom.window.document.querySelector('#query') as HTMLInputElement
|
||||
search.value = '共同关键词'
|
||||
search.dispatchEvent(new dom.window.Event('input'))
|
||||
expect(dom.window.document.querySelectorAll('.message')).toHaveLength(1)
|
||||
expect(dom.window.document.querySelector('#count')?.textContent).toBe(
|
||||
'已显示 1 / 筛选 1 / 当前聊天 2'
|
||||
)
|
||||
expect(dom.window.document.querySelector('#count')?.textContent).toBe('筛选 1 / 全部 2')
|
||||
dom.window.close()
|
||||
})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user