react-native-reanimated
Version:
More powerful alternative to Animated library for React Native.
43 lines (37 loc) • 1.47 kB
text/typescript
;
import { runOnUISync } from 'react-native-worklets';
import type { LoggerConfig } from './common';
import {
getLoggerConfig,
SHOULD_BE_USE_WEB,
updateLoggerConfig,
} from './common';
/** @deprecated This function is a no-op in Reanimated 4. */
export function addWhitelistedNativeProps(
_props: Record<string, boolean>
): void {
// Do nothing. This is just for backward compatibility.
}
/** @deprecated This function is a no-op in Reanimated 4. */
export function addWhitelistedUIProps(_props: Record<string, boolean>): void {
// Do nothing. This is just for backward compatibility.
}
/**
* Updates Reanimated logger config with the user-provided configuration. Will
* affect Reanimated code executed after call to this function so it should be
* called before any Reanimated code is executed to take effect. Each call to
* this function will override the previous configuration (it's recommended to
* call it only once).
*
* @param config - The new logger configuration to apply.
*/
export function configureReanimatedLogger(config: LoggerConfig) {
// Get the current config from the React runtime (to have a single source of truth)
const currentConfig = getLoggerConfig();
// Update the configuration object in the React runtime
updateLoggerConfig(currentConfig, config);
// Register the updated configuration in the UI runtime
if (!SHOULD_BE_USE_WEB) {
runOnUISync(updateLoggerConfig, currentConfig, config);
}
}