UNPKG

@benshi.ai/js-sdk

Version:

Benshi SDK

25 lines (20 loc) 897 B
import isBrowser from "is-in-browser"; import { isDevEnvironment } from "../../../drivers/BsSystem"; import { NetworkProxy } from "../../../drivers/network/typings"; import FakeNudgeRepository from "./FakeNudgeRepository"; import DummyNudgeRepository from "./DummyNudgeRepository"; import NudgeRepository from "./NudgeRepository"; import { INudgesRepository } from "./typings"; import { IStorage } from "../../../drivers/storage/typings"; export default class NudgeRepositoryFactory { static getNudgeRepository(url: string, bsNetwork: NetworkProxy, storageDriver: IStorage): INudgesRepository { if (!isBrowser) { return new DummyNudgeRepository(url, bsNetwork) } if (isDevEnvironment()) { return new FakeNudgeRepository(url, bsNetwork) } else { return new NudgeRepository(url, bsNetwork, storageDriver) } } }