Files
super-app/App/common/utilities/SharedPreferenceUtils.ts
2024-05-04 07:46:04 -07:00

75 lines
2.1 KiB
TypeScript

import { logToSentry } from "../hooks/useSentryLogging";
import { PreferenceManagerConnector } from "../native-module/NativeModules";
export const getStringPreference = async (
key: string,
type: string = "string"
) => {
try {
const data = await PreferenceManagerConnector.get(key, type);
return data;
} catch (error) {
logToSentry(
`Error getting data for key: ${key}, type: ${type} | Error: ${error} | MethodName: getStringPreference`
);
return null;
}
};
export const setStringPreference = (key: string, preferenceData: string) => {
if (!PreferenceManagerConnector.setString) {
return null;
}
try {
const data = PreferenceManagerConnector.setString(key, preferenceData);
return data;
} catch (error) {
logToSentry(
`Error setting data for key: ${key}, type: ${preferenceData} | Error: ${error} | MethodName: setStringPreference`
);
return null;
}
};
export const setIntPreference = (key: string, preferenceData: number) => {
if (!PreferenceManagerConnector.setInt) {
return null;
}
try {
const data = PreferenceManagerConnector.setInt(key, preferenceData);
return data;
} catch (error) {
logToSentry(
`Error setting data for key: ${key}, type: ${preferenceData} | Error: ${error} | MethodName: setStringPreference`
);
return null;
}
};
export const setBooleanPreference = (key: string, preferenceData: boolean) => {
if (!PreferenceManagerConnector.setBoolean) {
return null;
}
try {
const data = PreferenceManagerConnector.setBoolean(key, preferenceData);
return data;
} catch (error) {
logToSentry(
`Error setting data for key: ${key}, type: ${preferenceData} | Error: ${error} | MethodName: setStringPreference`
);
return null;
}
};
export const getIntPreference = async (key: string, type: string = "int") => {
try {
const data = await PreferenceManagerConnector.get(key, type);
return data;
} catch (error) {
logToSentry(
`Error getting data for key: ${key}, type: ${type} | Error: ${error} | MethodName: getIntPreference`
);
return null;
}
};