18 lines
559 B
TypeScript
18 lines
559 B
TypeScript
import { createFallbackStorage } from './fallbackStorage.js'
|
|
import { macOsKeychainStorage } from './macOsKeychainStorage.js'
|
|
import { plainTextStorage } from './plainTextStorage.js'
|
|
import type { SecureStorage } from './types.js'
|
|
|
|
/**
|
|
* Get the appropriate secure storage implementation for the current platform
|
|
*/
|
|
export function getSecureStorage(): SecureStorage {
|
|
if (process.platform === 'darwin') {
|
|
return createFallbackStorage(macOsKeychainStorage, plainTextStorage)
|
|
}
|
|
|
|
// TODO: add libsecret support for Linux
|
|
|
|
return plainTextStorage
|
|
}
|