2022-05-07 16:17:37 +02:00
|
|
|
import throttle from 'p-throttle'
|
|
|
|
import {defaultProfile} from './lib/default-profile.js'
|
2018-01-23 15:54:39 +01:00
|
|
|
|
2019-10-31 18:48:11 +01:00
|
|
|
const withThrottling = (profile, limit = 5, interval = 1000) => {
|
2020-01-14 23:56:03 +01:00
|
|
|
// https://github.com/public-transport/hafas-client/issues/76#issuecomment-574408717
|
|
|
|
const {request} = {...defaultProfile, ...profile}
|
2019-02-08 14:59:21 +01:00
|
|
|
|
2019-10-31 18:48:11 +01:00
|
|
|
return {
|
|
|
|
...profile,
|
2021-06-28 23:33:05 +02:00
|
|
|
request: throttle({limit, interval})(request)
|
2019-02-08 14:59:21 +01:00
|
|
|
}
|
2018-01-23 15:54:39 +01:00
|
|
|
}
|
|
|
|
|
2022-05-07 16:17:37 +02:00
|
|
|
export {
|
|
|
|
withThrottling,
|
|
|
|
}
|