mirror of
https://github.com/zhw2590582/ArtPlayer.git
synced 2026-10-17 18:11:20 -08:00
30 lines
903 B
TypeScript
30 lines
903 B
TypeScript
import type { ResumePromptHost } from './auto-playback/prompt'
|
|
import type { PlaybackRecordHost } from './auto-playback/records'
|
|
import { installResumePrompt } from './auto-playback/prompt'
|
|
import { installPlaybackRecords, readTimes } from './auto-playback/records'
|
|
|
|
export type AutoPlaybackHost = ResumePromptHost & PlaybackRecordHost
|
|
|
|
export default function autoPlayback(art: AutoPlaybackHost) {
|
|
const { storage } = art
|
|
// Keep time recording before the prompt's first-update timer subscription.
|
|
const installPrompt = installResumePrompt(art)
|
|
installPlaybackRecords(art)
|
|
installPrompt()
|
|
return {
|
|
name: 'auto-playback',
|
|
get times() {
|
|
return readTimes(storage)
|
|
},
|
|
clear() {
|
|
return storage.del('times')
|
|
},
|
|
delete(id: string) {
|
|
const times = readTimes(storage)
|
|
delete times[id]
|
|
storage.set('times', times)
|
|
return times
|
|
},
|
|
}
|
|
}
|