rn-klarna-osm
Version:
Klarna osm for react native
52 lines (51 loc) • 2.06 kB
JavaScript
;
import { requireNativeComponent, UIManager, Platform } from 'react-native';
import React, { useState, useCallback } from 'react';
import { jsx as _jsx } from "react/jsx-runtime";
const LINKING_ERROR = `The package 'react-native-rn-klarna-osm' doesn't seem to be linked. Make sure: \n\n` + Platform.select({
ios: "- You have run 'pod install'\n",
default: ''
}) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
export let KlarnaOSMEnvironment = /*#__PURE__*/function (KlarnaOSMEnvironment) {
KlarnaOSMEnvironment[KlarnaOSMEnvironment["demo"] = 0] = "demo";
KlarnaOSMEnvironment[KlarnaOSMEnvironment["playground"] = 1] = "playground";
KlarnaOSMEnvironment[KlarnaOSMEnvironment["production"] = 2] = "production";
return KlarnaOSMEnvironment;
}({});
export let KlarnaOSMRegion = /*#__PURE__*/function (KlarnaOSMRegion) {
KlarnaOSMRegion[KlarnaOSMRegion["EU"] = 0] = "EU";
KlarnaOSMRegion[KlarnaOSMRegion["NA"] = 1] = "NA";
KlarnaOSMRegion[KlarnaOSMRegion["OC"] = 2] = "OC";
return KlarnaOSMRegion;
}({});
const ComponentName = 'RnKlarnaOsmView';
export const RnKlarnaOsmView = UIManager.getViewManagerConfig(ComponentName) != null ? requireNativeComponent(ComponentName) : () => {
throw new Error(LINKING_ERROR);
};
export const RnKlarnaOsmViewComponent = ({
style,
onOSMViewError,
...restProps
}) => {
const nativeHPlatform = Platform.OS === 'android' ? 70 : 0;
const [nativeHeight, setNativeHeight] = useState(nativeHPlatform);
const handleheightChange = useCallback(event => {
if (event.nativeEvent.height) {
setNativeHeight(event.nativeEvent.height);
}
}, []);
const handleNativeError = useCallback(event => {
onOSMViewError?.(event.nativeEvent);
setNativeHeight(0);
}, [onOSMViewError]);
return /*#__PURE__*/_jsx(RnKlarnaOsmView, {
...restProps,
style: {
height: nativeHeight,
...style
},
onHeightChange: handleheightChange,
onOSMViewError: handleNativeError
});
};
//# sourceMappingURL=index.js.map