Buckets:
| import type { TimerHandle } from './timerHandle'; | |
| type SetIntervalFunction = (handler: () => void, timeout?: number, ...args: any[]) => TimerHandle; | |
| type ClearIntervalFunction = (handle: TimerHandle) => void; | |
| interface IntervalProvider { | |
| setInterval: SetIntervalFunction; | |
| clearInterval: ClearIntervalFunction; | |
| delegate: | |
| | { | |
| setInterval: SetIntervalFunction; | |
| clearInterval: ClearIntervalFunction; | |
| } | |
| | undefined; | |
| } | |
| export const intervalProvider: IntervalProvider = { | |
| // When accessing the delegate, use the variable rather than `this` so that | |
| // the functions can be called without being bound to the provider. | |
| setInterval(handler: () => void, timeout?: number, ...args) { | |
| const { delegate } = intervalProvider; | |
| if (delegate?.setInterval) { | |
| return delegate.setInterval(handler, timeout, ...args); | |
| } | |
| return setInterval(handler, timeout, ...args); | |
| }, | |
| clearInterval(handle) { | |
| const { delegate } = intervalProvider; | |
| return (delegate?.clearInterval || clearInterval)(handle as any); | |
| }, | |
| delegate: undefined, | |
| }; | |
Xet Storage Details
- Size:
- 1.09 kB
- Xet hash:
- bef6fbf6f5310c3535d686e18f9f154d9ad6ebfcf34c94f776e75553b278a34b
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.