react-native-gigya-sdk
Version:
SAP CDC/Gigya SDK for your React Native applications
34 lines (27 loc) • 873 B
text/typescript
import { NativeModules } from 'react-native'
const { GigyaSdk } = NativeModules
import type { GigyaSdkStateType } from '../types'
import { initialState, setState } from '../internals/state'
interface ConfigType {
dataCenter: string
lang?: GigyaSdkStateType['lang']
apiKey: GigyaSdkStateType['apiKey']
storageKey?: GigyaSdkStateType['storageKey']
storage: NonNullable<GigyaSdkStateType['storage']>
}
export default function (config: ConfigType): Promise<boolean> {
return new Promise(async (resolve, reject) => {
try {
const newState: Partial<GigyaSdkStateType> = {
apiKey: config.apiKey,
storage: config.storage,
lang: config.lang || initialState.lang,
storageKey: config.storageKey,
}
await setState(newState)
resolve(GigyaSdk.initialize(config))
} catch (e) {
reject(e)
}
})
}