chore: prepare GoodBuddy 0.8.2
Cross-platform packages / Validate source (push) Waiting to run
Cross-platform packages / ${{ matrix.platform }} ${{ matrix.arch }} (arm64, macos, macos-15) (push) Blocked by required conditions
Cross-platform packages / ${{ matrix.platform }} ${{ matrix.arch }} (arm64, windows, windows-2025) (push) Blocked by required conditions
Cross-platform packages / ${{ matrix.platform }} ${{ matrix.arch }} (x64, linux, ubuntu-24.04) (push) Blocked by required conditions
Cross-platform packages / ${{ matrix.platform }} ${{ matrix.arch }} (x64, macos, macos-15-intel) (push) Blocked by required conditions
Cross-platform packages / ${{ matrix.platform }} ${{ matrix.arch }} (x64, windows, windows-2025) (push) Blocked by required conditions
Cross-platform packages / Publish GitHub Release (push) Blocked by required conditions
Cross-platform packages / ${{ matrix.platform }} ${{ matrix.arch }} (arm64, linux, ubuntu-24.04-arm) (push) Blocked by required conditions

This commit is contained in:
lofyer
2026-08-06 22:47:13 +08:00
parent 8d00e6371d
commit b8fc7bc86e
114 changed files with 22916 additions and 1560 deletions
+14 -4
View File
@@ -4,32 +4,42 @@ import type { WeComSdkTransport } from './wecom-driver'
type MessageListener = (frame: unknown) => void
type ErrorListener = (error: Error) => void
type AuthenticatedListener = () => void
class FakeTransport implements WeComSdkTransport {
readonly connect = vi.fn()
readonly connect = vi.fn(() => {
this.authenticatedListener?.()
})
readonly disconnect = vi.fn()
readonly replyStream = vi.fn<WeComSdkTransport['replyStream']>(
async () => ({})
)
private messageListener?: MessageListener
private authenticatedListener?: AuthenticatedListener
on(event: 'message', listener: MessageListener): unknown
on(event: 'error', listener: ErrorListener): unknown
on(event: 'authenticated', listener: AuthenticatedListener): unknown
on(
event: 'message' | 'error',
listener: MessageListener | ErrorListener
event: 'message' | 'error' | 'authenticated',
listener: MessageListener | ErrorListener | AuthenticatedListener
): unknown {
if (event === 'message') {
this.messageListener = listener as MessageListener
} else if (event === 'authenticated') {
this.authenticatedListener = listener as AuthenticatedListener
}
return this
}
off(event: 'message', listener: MessageListener): unknown
off(event: 'error', listener: ErrorListener): unknown
off(event: 'message' | 'error'): unknown {
off(event: 'authenticated', listener: AuthenticatedListener): unknown
off(event: 'message' | 'error' | 'authenticated'): unknown {
if (event === 'message') {
this.messageListener = undefined
} else if (event === 'authenticated') {
this.authenticatedListener = undefined
}
return this
}