1"use strict"; 2 3Object.defineProperty(exports, "__esModule", { 4 value: true 5}); 6exports.getWindowSoftInputModeMode = getWindowSoftInputModeMode; 7exports.setWindowSoftInputModeMode = setWindowSoftInputModeMode; 8exports.withWindowSoftInputMode = void 0; 9 10function _androidPlugins() { 11 const data = require("../plugins/android-plugins"); 12 13 _androidPlugins = function () { 14 return data; 15 }; 16 17 return data; 18} 19 20function _Manifest() { 21 const data = require("./Manifest"); 22 23 _Manifest = function () { 24 return data; 25 }; 26 27 return data; 28} 29 30const ANDROID_WINDOW_SOFT_INPUT_MODE = 'android:windowSoftInputMode'; 31const MAPPING = { 32 pan: 'adjustPan', 33 resize: 'adjustResize' 34}; 35 36const withWindowSoftInputMode = config => { 37 return (0, _androidPlugins().withAndroidManifest)(config, async config => { 38 config.modResults = setWindowSoftInputModeMode(config, config.modResults); 39 return config; 40 }); 41}; 42 43exports.withWindowSoftInputMode = withWindowSoftInputMode; 44 45function setWindowSoftInputModeMode(config, androidManifest) { 46 const app = (0, _Manifest().getMainActivityOrThrow)(androidManifest); 47 app.$[ANDROID_WINDOW_SOFT_INPUT_MODE] = getWindowSoftInputModeMode(config); 48 return androidManifest; 49} 50 51function getWindowSoftInputModeMode(config) { 52 var _config$android, _MAPPING$value; 53 54 const value = (_config$android = config.android) === null || _config$android === void 0 ? void 0 : _config$android.softwareKeyboardLayoutMode; 55 56 if (!value) { 57 // Default to `adjustResize` or `resize`. 58 return 'adjustResize'; 59 } 60 61 return (_MAPPING$value = MAPPING[value]) !== null && _MAPPING$value !== void 0 ? _MAPPING$value : value; 62} 63//# sourceMappingURL=WindowSoftInputMode.js.map