2021-10-11 07:45:36 +00:00
|
|
|
import { ApiSkolplattformen } from './api'
|
2021-11-12 12:46:25 +00:00
|
|
|
import { Api, FetcherOptions, Fetch, RNCookieManager,
|
2021-03-11 08:58:55 +00:00
|
|
|
ToughCookieJar,
|
|
|
|
wrapReactNativeCookieManager,
|
2021-11-12 12:46:25 +00:00
|
|
|
wrapToughCookie } from '@skolplattformen/api'
|
2021-02-04 10:15:50 +00:00
|
|
|
|
2021-03-11 08:58:55 +00:00
|
|
|
const init = (
|
2021-10-15 20:36:48 +00:00
|
|
|
fetchImpl: Fetch,
|
2021-03-30 15:21:18 +00:00
|
|
|
cookieManagerImpl: RNCookieManager | ToughCookieJar,
|
|
|
|
options?: FetcherOptions
|
2021-03-11 08:58:55 +00:00
|
|
|
): Api => {
|
2021-03-30 15:21:18 +00:00
|
|
|
// prettier-ignore
|
2021-03-11 08:58:55 +00:00
|
|
|
const cookieManager = ((cookieManagerImpl as RNCookieManager).get)
|
|
|
|
? wrapReactNativeCookieManager(cookieManagerImpl as RNCookieManager)
|
|
|
|
: wrapToughCookie(cookieManagerImpl as ToughCookieJar)
|
2021-10-11 07:45:36 +00:00
|
|
|
return new ApiSkolplattformen(fetchImpl, cookieManager, options)
|
2020-12-20 22:02:05 +00:00
|
|
|
}
|
2021-03-11 08:58:55 +00:00
|
|
|
|
|
|
|
export default init
|