@omniconvert/server-side-testing-sdk
Version:
TypeScript SDK for server-side A/B testing and experimentation
46 lines • 1.31 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SettingsStorage = void 0;
/**
* Settings storage implementation
* Handles persistence of application settings
*/
class SettingsStorage {
constructor(driver) {
this.driver = driver;
}
/**
* Get settings
*/
get() {
const settingsData = this.driver.get(SettingsStorage.SETTINGS_KEY);
if (!settingsData) {
return {};
}
try {
const settings = typeof settingsData === 'string'
? JSON.parse(settingsData)
: settingsData;
return typeof settings === 'object' && settings !== null ? settings : {};
}
catch (error) {
console.error('SettingsStorage::get - Failed to parse settings:', error);
return {};
}
}
/**
* Save settings
*/
save(settings) {
try {
return this.driver.save(SettingsStorage.SETTINGS_KEY, settings);
}
catch (error) {
console.error('SettingsStorage::save - Failed to save settings:', error);
return false;
}
}
}
exports.SettingsStorage = SettingsStorage;
SettingsStorage.SETTINGS_KEY = 'settings';
//# sourceMappingURL=SettingsStorage.js.map