react-native-webview-bootpay 11.18.16 → 11.22.81

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (411) hide show
  1. package/android/.gradle/6.8/executionHistory/executionHistory.bin +0 -0
  2. package/android/.gradle/6.8/executionHistory/executionHistory.lock +0 -0
  3. package/android/.gradle/6.8/fileChanges/last-build.bin +0 -0
  4. package/android/.gradle/6.8/fileHashes/fileHashes.bin +0 -0
  5. package/android/.gradle/6.8/fileHashes/fileHashes.lock +0 -0
  6. package/android/.gradle/6.8/gc.properties +0 -0
  7. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  8. package/android/.gradle/buildOutputCleanup/cache.properties +2 -0
  9. package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  10. package/android/.gradle/checksums/checksums.lock +0 -0
  11. package/android/.gradle/checksums/md5-checksums.bin +0 -0
  12. package/android/.gradle/checksums/sha1-checksums.bin +0 -0
  13. package/android/.gradle/configuration-cache/gc.properties +0 -0
  14. package/android/.gradle/vcs-1/gc.properties +0 -0
  15. package/android/.idea/compiler.xml +6 -0
  16. package/android/.idea/gradle.xml +19 -0
  17. package/android/.idea/jarRepositories.xml +30 -0
  18. package/android/.idea/libraries/Gradle__androidx_annotation_annotation_1_1_0.xml +13 -0
  19. package/android/.idea/libraries/Gradle__androidx_appcompat_appcompat_1_0_2_aar.xml +16 -0
  20. package/android/.idea/libraries/Gradle__androidx_arch_core_core_common_2_0_0.xml +11 -0
  21. package/android/.idea/libraries/Gradle__androidx_arch_core_core_runtime_2_0_0_aar.xml +13 -0
  22. package/android/.idea/libraries/Gradle__androidx_asynclayoutinflater_asynclayoutinflater_1_0_0_aar.xml +13 -0
  23. package/android/.idea/libraries/Gradle__androidx_autofill_autofill_1_1_0_aar.xml +16 -0
  24. package/android/.idea/libraries/Gradle__androidx_collection_collection_1_0_0.xml +11 -0
  25. package/android/.idea/libraries/Gradle__androidx_coordinatorlayout_coordinatorlayout_1_0_0_aar.xml +16 -0
  26. package/android/.idea/libraries/Gradle__androidx_core_core_1_1_0_aar.xml +16 -0
  27. package/android/.idea/libraries/Gradle__androidx_cursoradapter_cursoradapter_1_0_0_aar.xml +13 -0
  28. package/android/.idea/libraries/Gradle__androidx_customview_customview_1_0_0_aar.xml +13 -0
  29. package/android/.idea/libraries/Gradle__androidx_documentfile_documentfile_1_0_0_aar.xml +13 -0
  30. package/android/.idea/libraries/Gradle__androidx_drawerlayout_drawerlayout_1_0_0_aar.xml +16 -0
  31. package/android/.idea/libraries/Gradle__androidx_fragment_fragment_1_0_0_aar.xml +16 -0
  32. package/android/.idea/libraries/Gradle__androidx_interpolator_interpolator_1_0_0_aar.xml +13 -0
  33. package/android/.idea/libraries/Gradle__androidx_legacy_legacy_support_core_ui_1_0_0_aar.xml +13 -0
  34. package/android/.idea/libraries/Gradle__androidx_legacy_legacy_support_core_utils_1_0_0_aar.xml +13 -0
  35. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_common_2_0_0.xml +11 -0
  36. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_livedata_2_0_0_aar.xml +13 -0
  37. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_livedata_core_2_0_0_aar.xml +13 -0
  38. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_runtime_2_0_0_aar.xml +13 -0
  39. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_viewmodel_2_0_0_aar.xml +13 -0
  40. package/android/.idea/libraries/Gradle__androidx_loader_loader_1_0_0_aar.xml +13 -0
  41. package/android/.idea/libraries/Gradle__androidx_localbroadcastmanager_localbroadcastmanager_1_0_0_aar.xml +13 -0
  42. package/android/.idea/libraries/Gradle__androidx_print_print_1_0_0_aar.xml +16 -0
  43. package/android/.idea/libraries/Gradle__androidx_slidingpanelayout_slidingpanelayout_1_0_0_aar.xml +13 -0
  44. package/android/.idea/libraries/Gradle__androidx_swiperefreshlayout_swiperefreshlayout_1_0_0_aar.xml +16 -0
  45. package/android/.idea/libraries/Gradle__androidx_vectordrawable_vectordrawable_1_0_1_aar.xml +13 -0
  46. package/android/.idea/libraries/Gradle__androidx_vectordrawable_vectordrawable_animated_1_0_0_aar.xml +13 -0
  47. package/android/.idea/libraries/Gradle__androidx_versionedparcelable_versionedparcelable_1_1_0_aar.xml +13 -0
  48. package/android/.idea/libraries/Gradle__androidx_viewpager_viewpager_1_0_0_aar.xml +13 -0
  49. package/android/.idea/libraries/Gradle__androidx_webkit_webkit_1_4_0_aar.xml +16 -0
  50. package/android/.idea/libraries/Gradle__com_facebook_fbjni_fbjni_java_only_0_2_2.xml +13 -0
  51. package/android/.idea/libraries/Gradle__com_facebook_fresco_drawee_2_5_0_aar.xml +15 -0
  52. package/android/.idea/libraries/Gradle__com_facebook_fresco_fbcore_2_5_0_aar.xml +18 -0
  53. package/android/.idea/libraries/Gradle__com_facebook_fresco_fresco_2_5_0_aar.xml +18 -0
  54. package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_2_5_0_aar.xml +18 -0
  55. package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_base_2_5_0_aar.xml +18 -0
  56. package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_native_2_5_0_aar.xml +15 -0
  57. package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_okhttp3_2_5_0_aar.xml +15 -0
  58. package/android/.idea/libraries/Gradle__com_facebook_fresco_memory_type_ashmem_2_5_0_aar.xml +15 -0
  59. package/android/.idea/libraries/Gradle__com_facebook_fresco_memory_type_java_2_5_0_aar.xml +15 -0
  60. package/android/.idea/libraries/Gradle__com_facebook_fresco_memory_type_native_2_5_0_aar.xml +15 -0
  61. package/android/.idea/libraries/Gradle__com_facebook_fresco_nativeimagefilters_2_5_0_aar.xml +15 -0
  62. package/android/.idea/libraries/Gradle__com_facebook_fresco_nativeimagetranscoder_2_5_0_aar.xml +15 -0
  63. package/android/.idea/libraries/Gradle__com_facebook_fresco_ui_common_2_5_0_aar.xml +15 -0
  64. package/android/.idea/libraries/Gradle__com_facebook_infer_annotation_infer_annotation_0_18_0.xml +13 -0
  65. package/android/.idea/libraries/Gradle__com_facebook_react_react_native_0_68_2_aar.xml +16 -0
  66. package/android/.idea/libraries/Gradle__com_facebook_soloader_annotation_0_10_3.xml +13 -0
  67. package/android/.idea/libraries/Gradle__com_facebook_soloader_nativeloader_0_10_3.xml +13 -0
  68. package/android/.idea/libraries/Gradle__com_facebook_soloader_soloader_0_10_3_aar.xml +15 -0
  69. package/android/.idea/libraries/Gradle__com_facebook_yoga_proguard_annotations_1_19_0.xml +13 -0
  70. package/android/.idea/libraries/Gradle__com_google_code_findbugs_jsr305_3_0_2.xml +13 -0
  71. package/android/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_4_9_2.xml +13 -0
  72. package/android/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_urlconnection_4_9_2.xml +13 -0
  73. package/android/.idea/libraries/Gradle__com_squareup_okio_okio_2_9_0.xml +13 -0
  74. package/android/.idea/libraries/Gradle__javax_inject_javax_inject_1.xml +13 -0
  75. package/android/.idea/libraries/Gradle__org_jetbrains_annotations_13_0.xml +13 -0
  76. package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_annotations_jvm_1_3_72.xml +13 -0
  77. package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_4_10.xml +13 -0
  78. package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_common_1_4_10.xml +13 -0
  79. package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jdk7_1_4_10.xml +13 -0
  80. package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jdk8_1_4_10.xml +13 -0
  81. package/android/.idea/misc.xml +9 -0
  82. package/android/.idea/modules/android.iml +133 -0
  83. package/android/.idea/modules.xml +8 -0
  84. package/android/.idea/vcs.xml +6 -0
  85. package/android/build/.transforms/28ceacf58c1f53104331b6d3900dca4f/results.bin +1 -0
  86. package/android/build/.transforms/28ceacf58c1f53104331b6d3900dca4f/transformed/classes/classes.dex +0 -0
  87. package/android/build/.transforms/51cb61441c00f43d07400187762c0edf/results.bin +1 -0
  88. package/android/build/.transforms/51cb61441c00f43d07400187762c0edf/transformed/classes/classes.dex +0 -0
  89. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/results.bin +1 -0
  90. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebChromeClient$1.dex +0 -0
  91. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebChromeClient.dex +0 -0
  92. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebView$1.dex +0 -0
  93. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebView$BPCWebViewBridge.dex +0 -0
  94. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebView$ProgressChangedFilter.dex +0 -0
  95. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebView.dex +0 -0
  96. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebViewClient.dex +0 -0
  97. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebViewFileProvider.dex +0 -0
  98. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebViewManager$1.dex +0 -0
  99. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebViewManager$2.dex +0 -0
  100. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebViewManager$3.dex +0 -0
  101. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebViewManager$4.dex +0 -0
  102. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebViewManager.dex +0 -0
  103. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebViewModule$1.dex +0 -0
  104. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebViewModule$2.dex +0 -0
  105. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebViewModule$MimeType.dex +0 -0
  106. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebViewModule$ShouldOverrideUrlLoadingLock$ShouldOverrideCallbackState.dex +0 -0
  107. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebViewModule$ShouldOverrideUrlLoadingLock.dex +0 -0
  108. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebViewModule.dex +0 -0
  109. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BPCWebViewPackage.dex +0 -0
  110. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BasicAuthCredential.dex +0 -0
  111. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/BuildConfig.dex +0 -0
  112. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/WebViewConfig.dex +0 -0
  113. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/events/TopHttpErrorEvent$Companion.dex +0 -0
  114. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/events/TopHttpErrorEvent.dex +0 -0
  115. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/events/TopLoadingErrorEvent$Companion.dex +0 -0
  116. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/events/TopLoadingErrorEvent.dex +0 -0
  117. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/events/TopLoadingFinishEvent$Companion.dex +0 -0
  118. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/events/TopLoadingFinishEvent.dex +0 -0
  119. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/events/TopLoadingProgressEvent$Companion.dex +0 -0
  120. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/events/TopLoadingProgressEvent.dex +0 -0
  121. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/events/TopLoadingStartEvent$Companion.dex +0 -0
  122. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/events/TopLoadingStartEvent.dex +0 -0
  123. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/events/TopMessageEvent$Companion.dex +0 -0
  124. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/events/TopMessageEvent.dex +0 -0
  125. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/events/TopRenderProcessGoneEvent$Companion.dex +0 -0
  126. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/events/TopRenderProcessGoneEvent.dex +0 -0
  127. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/events/TopShouldStartLoadWithRequestEvent$Companion.dex +0 -0
  128. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/debug/kr/co/bootpay/webview/events/TopShouldStartLoadWithRequestEvent.dex +0 -0
  129. package/android/build/.transforms/c0e3d8f6408bfb0237947517dbd71608/transformed/desugar_graph.bin +0 -0
  130. package/android/build/.transforms/fb29541d9d3f14fd2af0228851f54ad5/results.bin +1 -0
  131. package/android/build/generated/source/buildConfig/debug/kr/co/bootpay/webview/BuildConfig.java +10 -0
  132. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/AndroidManifest.xml +106 -0
  133. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/output-metadata.json +18 -0
  134. package/android/build/intermediates/aar_metadata/debug/aar-metadata.properties +4 -0
  135. package/android/build/intermediates/annotation_processor_list/debug/annotationProcessors.json +1 -0
  136. package/android/build/intermediates/compile_library_classes_jar/debug/classes.jar +0 -0
  137. package/android/build/intermediates/compile_r_class_jar/debug/R.jar +0 -0
  138. package/android/build/intermediates/compile_symbol_list/debug/R.txt +1861 -0
  139. package/android/build/intermediates/compiled_local_resources/debug/out/xml_file_provider_paths.xml.flat +0 -0
  140. package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +2 -0
  141. package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +2 -0
  142. package/android/build/intermediates/incremental/packageDebugAssets/merger.xml +2 -0
  143. package/android/build/intermediates/incremental/packageDebugResources/compile-file-map.properties +2 -0
  144. package/android/build/intermediates/incremental/packageDebugResources/merger.xml +2 -0
  145. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebChromeClient$1.class +0 -0
  146. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebChromeClient.class +0 -0
  147. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebView$1.class +0 -0
  148. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebView$BPCWebViewBridge.class +0 -0
  149. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebView$ProgressChangedFilter.class +0 -0
  150. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebView.class +0 -0
  151. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebViewClient.class +0 -0
  152. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebViewFileProvider.class +0 -0
  153. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebViewManager$1.class +0 -0
  154. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebViewManager$2.class +0 -0
  155. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebViewManager$3.class +0 -0
  156. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebViewManager$4.class +0 -0
  157. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebViewManager.class +0 -0
  158. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebViewModule$1.class +0 -0
  159. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebViewModule$2.class +0 -0
  160. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebViewModule$MimeType.class +0 -0
  161. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebViewModule$ShouldOverrideUrlLoadingLock$ShouldOverrideCallbackState.class +0 -0
  162. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebViewModule$ShouldOverrideUrlLoadingLock.class +0 -0
  163. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BPCWebViewModule.class +0 -0
  164. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BasicAuthCredential.class +0 -0
  165. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/BuildConfig.class +0 -0
  166. package/android/build/intermediates/javac/debug/classes/kr/co/bootpay/webview/WebViewConfig.class +0 -0
  167. package/android/build/intermediates/library_java_res/debug/res.jar +0 -0
  168. package/android/build/intermediates/local_only_symbol_list/debug/R-def.txt +3 -0
  169. package/android/build/intermediates/manifest_merge_blame_file/debug/manifest-merger-blame-debug-report.txt +210 -0
  170. package/android/build/intermediates/merged_manifest/debug/AndroidManifest.xml +106 -0
  171. package/android/build/intermediates/navigation_json/debug/navigation.json +1 -0
  172. package/android/build/intermediates/packaged_manifests/debug/output-metadata.json +18 -0
  173. package/android/build/intermediates/packaged_res/debug/xml/file_provider_paths.xml +6 -0
  174. package/android/build/intermediates/runtime_library_classes_dir/debug/META-INF/react-native-webview_debug.kotlin_module +0 -0
  175. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebChromeClient$1.class +0 -0
  176. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebChromeClient.class +0 -0
  177. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebView$1.class +0 -0
  178. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebView$BPCWebViewBridge.class +0 -0
  179. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebView$ProgressChangedFilter.class +0 -0
  180. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebView.class +0 -0
  181. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebViewClient.class +0 -0
  182. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebViewFileProvider.class +0 -0
  183. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebViewManager$1.class +0 -0
  184. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebViewManager$2.class +0 -0
  185. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebViewManager$3.class +0 -0
  186. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebViewManager$4.class +0 -0
  187. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebViewManager.class +0 -0
  188. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebViewModule$1.class +0 -0
  189. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebViewModule$2.class +0 -0
  190. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebViewModule$MimeType.class +0 -0
  191. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebViewModule$ShouldOverrideUrlLoadingLock$ShouldOverrideCallbackState.class +0 -0
  192. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebViewModule$ShouldOverrideUrlLoadingLock.class +0 -0
  193. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebViewModule.class +0 -0
  194. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BPCWebViewPackage.class +0 -0
  195. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BasicAuthCredential.class +0 -0
  196. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/BuildConfig.class +0 -0
  197. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/WebViewConfig.class +0 -0
  198. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/events/TopHttpErrorEvent$Companion.class +0 -0
  199. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/events/TopHttpErrorEvent.class +0 -0
  200. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/events/TopLoadingErrorEvent$Companion.class +0 -0
  201. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/events/TopLoadingErrorEvent.class +0 -0
  202. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/events/TopLoadingFinishEvent$Companion.class +0 -0
  203. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/events/TopLoadingFinishEvent.class +0 -0
  204. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/events/TopLoadingProgressEvent$Companion.class +0 -0
  205. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/events/TopLoadingProgressEvent.class +0 -0
  206. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/events/TopLoadingStartEvent$Companion.class +0 -0
  207. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/events/TopLoadingStartEvent.class +0 -0
  208. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/events/TopMessageEvent$Companion.class +0 -0
  209. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/events/TopMessageEvent.class +0 -0
  210. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/events/TopRenderProcessGoneEvent$Companion.class +0 -0
  211. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/events/TopRenderProcessGoneEvent.class +0 -0
  212. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/events/TopShouldStartLoadWithRequestEvent$Companion.class +0 -0
  213. package/android/build/intermediates/runtime_library_classes_dir/debug/kr/co/bootpay/webview/events/TopShouldStartLoadWithRequestEvent.class +0 -0
  214. package/android/build/intermediates/runtime_library_classes_jar/debug/classes.jar +0 -0
  215. package/android/build/intermediates/symbol_list_with_package_name/debug/package-aware-r.txt +1381 -0
  216. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab +0 -0
  217. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream +0 -0
  218. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len +0 -0
  219. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len +0 -0
  220. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at +0 -0
  221. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i +0 -0
  222. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len +0 -0
  223. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab +0 -0
  224. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream +0 -0
  225. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len +0 -0
  226. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len +0 -0
  227. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at +0 -0
  228. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i +0 -0
  229. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len +0 -0
  230. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab +0 -0
  231. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream +0 -0
  232. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len +0 -0
  233. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len +0 -0
  234. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at +0 -0
  235. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i +0 -0
  236. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len +0 -0
  237. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab +0 -0
  238. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream +0 -0
  239. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream.len +0 -0
  240. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.len +0 -0
  241. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.values.at +0 -0
  242. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i +0 -0
  243. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i.len +0 -0
  244. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab +0 -0
  245. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream +0 -0
  246. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len +0 -0
  247. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len +0 -0
  248. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at +0 -0
  249. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i +0 -0
  250. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len +0 -0
  251. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab +0 -0
  252. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream +0 -0
  253. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len +0 -0
  254. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.len +0 -0
  255. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at +0 -0
  256. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i +0 -0
  257. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i.len +0 -0
  258. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab +0 -0
  259. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream +0 -0
  260. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len +0 -0
  261. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.len +0 -0
  262. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at +0 -0
  263. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i +0 -0
  264. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len +0 -0
  265. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab +0 -0
  266. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream +0 -0
  267. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream.len +0 -0
  268. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.len +0 -0
  269. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.values.at +0 -0
  270. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i +0 -0
  271. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i.len +0 -0
  272. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab +0 -0
  273. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream +0 -0
  274. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream.len +0 -0
  275. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.len +0 -0
  276. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.values.at +0 -0
  277. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i +0 -0
  278. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i.len +0 -0
  279. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/counters.tab +2 -0
  280. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab +0 -0
  281. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream +0 -0
  282. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len +0 -0
  283. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.len +0 -0
  284. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at +0 -0
  285. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i +0 -0
  286. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i.len +0 -0
  287. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab +0 -0
  288. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream +0 -0
  289. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len +0 -0
  290. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len +0 -0
  291. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at +0 -0
  292. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i +0 -0
  293. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i.len +0 -0
  294. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab +0 -0
  295. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream +0 -0
  296. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len +0 -0
  297. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.len +0 -0
  298. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at +0 -0
  299. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i +0 -0
  300. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i.len +0 -0
  301. package/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
  302. package/android/build/kotlin/compileDebugKotlin/localstate/build-history.bin +0 -0
  303. package/android/build/outputs/logs/manifest-merger-debug-report.txt +229 -0
  304. package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  305. package/android/build/tmp/kotlin-classes/debug/META-INF/react-native-webview_debug.kotlin_module +0 -0
  306. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/BPCWebViewPackage.class +0 -0
  307. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/events/TopHttpErrorEvent$Companion.class +0 -0
  308. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/events/TopHttpErrorEvent.class +0 -0
  309. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/events/TopLoadingErrorEvent$Companion.class +0 -0
  310. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/events/TopLoadingErrorEvent.class +0 -0
  311. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/events/TopLoadingFinishEvent$Companion.class +0 -0
  312. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/events/TopLoadingFinishEvent.class +0 -0
  313. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/events/TopLoadingProgressEvent$Companion.class +0 -0
  314. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/events/TopLoadingProgressEvent.class +0 -0
  315. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/events/TopLoadingStartEvent$Companion.class +0 -0
  316. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/events/TopLoadingStartEvent.class +0 -0
  317. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/events/TopMessageEvent$Companion.class +0 -0
  318. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/events/TopMessageEvent.class +0 -0
  319. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/events/TopRenderProcessGoneEvent$Companion.class +0 -0
  320. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/events/TopRenderProcessGoneEvent.class +0 -0
  321. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/events/TopShouldStartLoadWithRequestEvent$Companion.class +0 -0
  322. package/android/build/tmp/kotlin-classes/debug/kr/co/bootpay/webview/events/TopShouldStartLoadWithRequestEvent.class +0 -0
  323. package/android/build.gradle +6 -6
  324. package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  325. package/android/gradle/wrapper/gradle-wrapper.properties +5 -0
  326. package/android/gradle.properties +6 -6
  327. package/android/gradlew +185 -0
  328. package/android/gradlew.bat +89 -0
  329. package/android/local.properties +8 -0
  330. package/android/src/main/AndroidManifest.xml +67 -62
  331. package/android/src/main/java/kr/co/bootpay/webview/BPCWebChromeClient.java +25 -17
  332. package/android/src/main/java/kr/co/bootpay/webview/BPCWebView.java +31 -14
  333. package/android/src/main/java/kr/co/bootpay/webview/BPCWebViewClient.java +142 -117
  334. package/android/src/main/java/kr/co/bootpay/webview/BPCWebViewManager.java +144 -89
  335. package/android/src/main/java/kr/co/bootpay/webview/BPCWebViewModule.java +27 -21
  336. package/android/src/main/java/kr/co/bootpay/webview/BasicAuthCredential.java +11 -0
  337. package/apple/BPCWKProcessPoolManager.m +11 -11
  338. package/apple/BPCWebView.h +22 -1
  339. package/apple/BPCWebView.m +700 -646
  340. package/apple/BPCWebViewManager.h +2 -0
  341. package/apple/BPCWebViewManager.m +45 -8
  342. package/index.d.ts +5 -5
  343. package/ios/BPCWebView.xcodeproj/project.pbxproj +310 -0
  344. package/ios/BPCWebView.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  345. package/ios/BPCWebView.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  346. package/ios/BPCWebView.xcodeproj/project.xcworkspace/xcuserdata/ehowlsla.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  347. package/ios/BPCWebView.xcodeproj/xcuserdata/ehowlsla.xcuserdatad/xcschemes/xcschememanagement.plist +29 -0
  348. package/lib/WebView.android.d.ts +4 -75
  349. package/lib/WebView.android.d.ts.map +1 -1
  350. package/lib/WebView.android.js +88 -270
  351. package/lib/WebView.d.ts +2 -2
  352. package/lib/WebView.d.ts.map +1 -1
  353. package/lib/WebView.ios.d.ts +4 -80
  354. package/lib/WebView.ios.d.ts.map +1 -1
  355. package/lib/WebView.ios.js +86 -223
  356. package/lib/WebView.js +7 -9
  357. package/lib/WebView.macos.d.ts +4 -80
  358. package/lib/WebView.macos.d.ts.map +1 -1
  359. package/lib/WebView.macos.js +83 -221
  360. package/lib/WebView.windows.d.ts +5 -27
  361. package/lib/WebView.windows.d.ts.map +1 -1
  362. package/lib/WebView.windows.js +114 -165
  363. package/lib/WebViewNativeComponent.android.d.ts +4 -0
  364. package/lib/WebViewNativeComponent.android.d.ts.map +1 -0
  365. package/lib/WebViewNativeComponent.android.js +3 -0
  366. package/lib/WebViewNativeComponent.ios.d.ts +4 -0
  367. package/lib/WebViewNativeComponent.ios.d.ts.map +1 -0
  368. package/lib/WebViewNativeComponent.ios.js +3 -0
  369. package/lib/WebViewNativeComponent.macos.d.ts +4 -0
  370. package/lib/WebViewNativeComponent.macos.d.ts.map +1 -0
  371. package/lib/WebViewNativeComponent.macos.js +3 -0
  372. package/lib/WebViewNativeComponent.windows.d.ts +4 -0
  373. package/lib/WebViewNativeComponent.windows.d.ts.map +1 -0
  374. package/lib/WebViewNativeComponent.windows.js +3 -0
  375. package/lib/WebViewShared.d.ts +33 -3
  376. package/lib/WebViewShared.d.ts.map +1 -1
  377. package/lib/WebViewShared.js +85 -2
  378. package/lib/WebViewTypes.d.ts +154 -14
  379. package/lib/WebViewTypes.d.ts.map +1 -1
  380. package/lib/index.d.ts +4 -0
  381. package/lib/index.d.ts.map +1 -0
  382. package/lib/index.js +3 -0
  383. package/package.json +19 -21
  384. package/react-native-webview-bootpay.podspec +1 -2
  385. package/react-native.config.js +47 -61
  386. package/windows/ExperimentalFeatures.props +11 -0
  387. package/windows/ReactNativeWebView/ReactNativeWebView.vcxproj +48 -23
  388. package/windows/ReactNativeWebView/ReactPackageProvider.cpp +6 -1
  389. package/windows/ReactNativeWebView/ReactWebView.cpp +17 -16
  390. package/windows/ReactNativeWebView/ReactWebView.h +5 -3
  391. package/windows/ReactNativeWebView/ReactWebView.idl +17 -3
  392. package/windows/ReactNativeWebView/ReactWebView2.cpp +185 -0
  393. package/windows/ReactNativeWebView/ReactWebView2.h +51 -0
  394. package/windows/ReactNativeWebView/ReactWebView2Manager.cpp +155 -0
  395. package/windows/ReactNativeWebView/ReactWebView2Manager.h +57 -0
  396. package/windows/ReactNativeWebView/ReactWebViewManager.cpp +37 -32
  397. package/windows/{WebViewBridgeComponent → ReactNativeWebView}/WebBridge.cpp +1 -1
  398. package/windows/{WebViewBridgeComponent → ReactNativeWebView}/WebBridge.h +2 -2
  399. package/windows/{WebViewBridgeComponent → ReactNativeWebView}/WebBridge.idl +1 -1
  400. package/windows/ReactNativeWebView/packages.config +1 -0
  401. package/windows/ReactNativeWebView/pch.h +17 -0
  402. package/windows/ReactNativeWebView.sln +80 -119
  403. package/ios/RNCWebView.xcodeproj/project.pbxproj +0 -271
  404. package/windows/WebViewBridgeComponent/PropertySheet.props +0 -16
  405. package/windows/WebViewBridgeComponent/WebViewBridgeComponent.def +0 -3
  406. package/windows/WebViewBridgeComponent/WebViewBridgeComponent.vcxproj +0 -160
  407. package/windows/WebViewBridgeComponent/WebViewBridgeComponent.vcxproj.filters +0 -33
  408. package/windows/WebViewBridgeComponent/packages.config +0 -4
  409. package/windows/WebViewBridgeComponent/pch.cpp +0 -1
  410. package/windows/WebViewBridgeComponent/pch.h +0 -4
  411. package/windows/WebViewBridgeComponent/readme.txt +0 -23
@@ -1,78 +1,43 @@
1
1
  package kr.co.bootpay.webview;
2
2
 
3
- import android.annotation.SuppressLint;
4
3
  import android.annotation.TargetApi;
5
4
  import android.app.Activity;
6
5
  import android.app.DownloadManager;
7
6
  import android.content.Context;
8
7
  import android.content.pm.ActivityInfo;
9
- import android.content.pm.PackageManager;
10
8
  import android.graphics.Bitmap;
11
9
  import android.graphics.Color;
12
- import android.Manifest;
13
- import android.net.http.SslError;
14
10
  import android.net.Uri;
15
11
  import android.os.Build;
16
12
  import android.os.Environment;
17
- import android.os.Message;
18
- import android.os.SystemClock;
19
- import android.text.TextUtils;
20
13
  import android.util.Log;
21
- import android.view.Gravity;
22
14
  import android.view.View;
23
15
  import android.view.ViewGroup;
24
16
  import android.view.ViewGroup.LayoutParams;
25
17
  import android.view.WindowManager;
26
- import android.webkit.ConsoleMessage;
27
18
  import android.webkit.CookieManager;
28
19
  import android.webkit.DownloadListener;
29
- import android.webkit.GeolocationPermissions;
30
- import android.webkit.JavascriptInterface;
31
- import android.webkit.RenderProcessGoneDetail;
32
- import android.webkit.SslErrorHandler;
33
- import android.webkit.PermissionRequest;
34
20
  import android.webkit.URLUtil;
35
- import android.webkit.ValueCallback;
36
- import android.webkit.WebChromeClient;
37
- import android.webkit.WebResourceRequest;
38
- import android.webkit.WebResourceResponse;
39
21
  import android.webkit.WebSettings;
40
22
  import android.webkit.WebView;
41
- import android.webkit.WebViewClient;
42
- import android.widget.FrameLayout;
43
23
 
24
+ import androidx.annotation.NonNull;
44
25
  import androidx.annotation.Nullable;
45
- import androidx.annotation.RequiresApi;
46
- import androidx.core.content.ContextCompat;
47
- import androidx.core.util.Pair;
48
-
49
- import com.facebook.common.logging.FLog;
50
- import com.facebook.react.modules.core.PermissionAwareActivity;
51
- import com.facebook.react.modules.core.PermissionListener;
52
- import com.facebook.react.views.scroll.ScrollEvent;
26
+ import androidx.webkit.WebSettingsCompat;
27
+ import androidx.webkit.WebViewFeature;
28
+
53
29
  import com.facebook.react.views.scroll.ScrollEventType;
54
- import com.facebook.react.views.scroll.OnScrollDispatchHelper;
55
- import com.facebook.react.bridge.Arguments;
56
- import com.facebook.react.bridge.CatalystInstance;
57
- import com.facebook.react.bridge.LifecycleEventListener;
58
30
  import com.facebook.react.bridge.ReactContext;
59
31
  import com.facebook.react.bridge.ReadableArray;
60
32
  import com.facebook.react.bridge.ReadableMap;
61
33
  import com.facebook.react.bridge.ReadableMapKeySetIterator;
62
- import com.facebook.react.bridge.WritableMap;
63
- import com.facebook.react.bridge.WritableNativeArray;
64
- import com.facebook.react.bridge.WritableNativeMap;
65
34
  import com.facebook.react.common.MapBuilder;
66
35
  import com.facebook.react.common.build.ReactBuildConfig;
67
36
  import com.facebook.react.module.annotations.ReactModule;
68
37
  import com.facebook.react.uimanager.SimpleViewManager;
69
38
  import com.facebook.react.uimanager.ThemedReactContext;
70
- import com.facebook.react.uimanager.UIManagerModule;
71
39
  import com.facebook.react.uimanager.annotations.ReactProp;
72
- import com.facebook.react.uimanager.events.ContentSizeChangeEvent;
73
- import com.facebook.react.uimanager.events.Event;
74
- import com.facebook.react.uimanager.events.EventDispatcher;
75
- import kr.co.bootpay.webview.BPCWebViewModule.ShouldOverrideUrlLoadingLock.ShouldOverrideCallbackState;
40
+
76
41
  import kr.co.bootpay.webview.events.TopLoadingErrorEvent;
77
42
  import kr.co.bootpay.webview.events.TopHttpErrorEvent;
78
43
  import kr.co.bootpay.webview.events.TopLoadingFinishEvent;
@@ -86,16 +51,12 @@ import org.json.JSONException;
86
51
  import org.json.JSONObject;
87
52
 
88
53
  import java.io.UnsupportedEncodingException;
54
+ import java.lang.IllegalArgumentException;
89
55
  import java.net.MalformedURLException;
90
56
  import java.net.URL;
91
- import java.net.URLEncoder;
92
- import java.util.ArrayList;
93
- import java.util.Collections;
94
57
  import java.util.HashMap;
95
- import java.util.List;
96
58
  import java.util.Locale;
97
59
  import java.util.Map;
98
- import java.util.concurrent.atomic.AtomicReference;
99
60
 
100
61
  /**
101
62
  * Manages instances of {@link WebView}
@@ -123,6 +84,7 @@ import java.util.concurrent.atomic.AtomicReference;
123
84
  */
124
85
  @ReactModule(name = BPCWebViewManager.REACT_CLASS)
125
86
  public class BPCWebViewManager extends SimpleViewManager<WebView> {
87
+ private static final String TAG = "BPCWebViewManager";
126
88
 
127
89
  public static final int COMMAND_GO_BACK = 1;
128
90
  public static final int COMMAND_GO_FORWARD = 2;
@@ -141,17 +103,23 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
141
103
  protected static final String REACT_CLASS = "BPCWebView";
142
104
  protected static final String HTML_ENCODING = "UTF-8";
143
105
  protected static final String HTML_MIME_TYPE = "text/html";
144
- // protected static final String JAVASCRIPT_INTERFACE = "ReactNativeWebView";
106
+ // protected static final String JAVASCRIPT_INTERFACE = "ReactNativeWebView";
145
107
  protected static final String HTTP_METHOD_POST = "POST";
146
108
  // Use `webView.loadUrl("about:blank")` to reliably reset the view
147
109
  // state and release page resources (including any running JavaScript).
148
110
  protected static final String BLANK_URL = "about:blank";
111
+ protected static final int SHOULD_OVERRIDE_URL_LOADING_TIMEOUT = 250;
112
+ protected static final String DEFAULT_DOWNLOADING_MESSAGE = "Downloading";
113
+ protected static final String DEFAULT_LACK_PERMISSION_TO_DOWNLOAD_MESSAGE =
114
+ "Cannot download files as permission was denied. Please provide permission to write to storage, in order to download files.";
149
115
  protected WebViewConfig mWebViewConfig;
150
116
 
151
117
  protected BPCWebChromeClient mWebChromeClient = null;
152
118
  protected boolean mAllowsFullscreenVideo = false;
153
119
  protected @Nullable String mUserAgent = null;
154
120
  protected @Nullable String mUserAgentWithApplicationName = null;
121
+ protected @Nullable String mDownloadingMessage = null;
122
+ protected @Nullable String mLackPermissionToDownloadMessage = null;
155
123
 
156
124
  public BPCWebViewManager() {
157
125
  mWebViewConfig = new WebViewConfig() {
@@ -209,7 +177,13 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
209
177
 
210
178
  BPCWebViewModule module = getModule(reactContext);
211
179
 
212
- DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
180
+ DownloadManager.Request request;
181
+ try {
182
+ request = new DownloadManager.Request(Uri.parse(url));
183
+ } catch (IllegalArgumentException e) {
184
+ Log.w(TAG, "Unsupported URI, aborting download", e);
185
+ return;
186
+ }
213
187
 
214
188
  String fileName = URLUtil.guessFileName(url, contentDisposition, mimetype);
215
189
  String downloadMessage = "Downloading " + fileName;
@@ -222,8 +196,7 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
222
196
  String cookie = CookieManager.getInstance().getCookie(baseUrl);
223
197
  request.addRequestHeader("Cookie", cookie);
224
198
  } catch (MalformedURLException e) {
225
- System.out.println("Error getting cookie for DownloadManager: " + e.toString());
226
- e.printStackTrace();
199
+ Log.w(TAG, "Error getting cookie for DownloadManager", e);
227
200
  }
228
201
 
229
202
  //Finish setting up request
@@ -236,8 +209,8 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
236
209
 
237
210
  module.setDownloadRequest(request);
238
211
 
239
- if (module.grantFileDownloaderPermissions()) {
240
- module.downloadFile();
212
+ if (module.grantFileDownloaderPermissions(getDownloadingMessage(), getLackPermissionToDownloadMessage())) {
213
+ module.downloadFile(getDownloadingMessage());
241
214
  }
242
215
  }
243
216
  });
@@ -245,11 +218,29 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
245
218
  return webView;
246
219
  }
247
220
 
221
+ private String getDownloadingMessage() {
222
+ return mDownloadingMessage == null ? DEFAULT_DOWNLOADING_MESSAGE : mDownloadingMessage;
223
+ }
224
+
225
+ private String getLackPermissionToDownloadMessage() {
226
+ return mDownloadingMessage == null ? DEFAULT_LACK_PERMISSION_TO_DOWNLOAD_MESSAGE : mLackPermissionToDownloadMessage;
227
+ }
228
+
248
229
  @ReactProp(name = "javaScriptEnabled")
249
230
  public void setJavaScriptEnabled(WebView view, boolean enabled) {
250
231
  view.getSettings().setJavaScriptEnabled(enabled);
251
232
  }
252
233
 
234
+ @ReactProp(name = "setBuiltInZoomControls")
235
+ public void setBuiltInZoomControls(WebView view, boolean enabled) {
236
+ view.getSettings().setBuiltInZoomControls(enabled);
237
+ }
238
+
239
+ @ReactProp(name = "setDisplayZoomControls")
240
+ public void setDisplayZoomControls(WebView view, boolean enabled) {
241
+ view.getSettings().setDisplayZoomControls(enabled);
242
+ }
243
+
253
244
  @ReactProp(name = "setSupportMultipleWindows")
254
245
  public void setSupportMultipleWindows(WebView view, boolean enabled){
255
246
  view.getSettings().setSupportMultipleWindows(enabled);
@@ -265,18 +256,25 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
265
256
  view.setVerticalScrollBarEnabled(enabled);
266
257
  }
267
258
 
259
+ @ReactProp(name = "downloadingMessage")
260
+ public void setDownloadingMessage(WebView view, String message) {
261
+ mDownloadingMessage = message;
262
+ }
263
+
264
+ @ReactProp(name = "lackPermissionToDownloadMessage")
265
+ public void setLackPermissionToDownlaodMessage(WebView view, String message) {
266
+ mLackPermissionToDownloadMessage = message;
267
+ }
268
+
268
269
  @ReactProp(name = "cacheEnabled")
269
270
  public void setCacheEnabled(WebView view, boolean enabled) {
270
271
  if (enabled) {
271
272
  Context ctx = view.getContext();
272
273
  if (ctx != null) {
273
- view.getSettings().setAppCachePath(ctx.getCacheDir().getAbsolutePath());
274
274
  view.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);
275
- view.getSettings().setAppCacheEnabled(true);
276
275
  }
277
276
  } else {
278
277
  view.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
279
- view.getSettings().setAppCacheEnabled(false);
280
278
  }
281
279
  }
282
280
 
@@ -341,6 +339,11 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
341
339
  view.setOverScrollMode(overScrollMode);
342
340
  }
343
341
 
342
+ @ReactProp(name = "nestedScrollEnabled")
343
+ public void setNestedScrollEnabled(WebView view, boolean enabled) {
344
+ ((BPCWebView) view).setNestedScrollEnabled(enabled);
345
+ }
346
+
344
347
  @ReactProp(name = "thirdPartyCookiesEnabled")
345
348
  public void setThirdPartyCookiesEnabled(WebView view, boolean enabled) {
346
349
  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
@@ -470,7 +473,6 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
470
473
 
471
474
  // Disable caching
472
475
  view.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
473
- view.getSettings().setAppCacheEnabled(false);
474
476
  view.clearHistory();
475
477
  view.clearCache(true);
476
478
 
@@ -536,6 +538,19 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
536
538
  view.loadUrl(BLANK_URL);
537
539
  }
538
540
 
541
+ @ReactProp(name = "basicAuthCredential")
542
+ public void setBasicAuthCredential(WebView view, @Nullable ReadableMap credential) {
543
+ @Nullable BasicAuthCredential basicAuthCredential = null;
544
+ if (credential != null) {
545
+ if (credential.hasKey("username") && credential.hasKey("password")) {
546
+ String username = credential.getString("username");
547
+ String password = credential.getString("password");
548
+ basicAuthCredential = new BasicAuthCredential(username, password);
549
+ }
550
+ }
551
+ ((BPCWebView) view).setBasicAuthCredential(basicAuthCredential);
552
+ }
553
+
539
554
  @ReactProp(name = "onContentSizeChange")
540
555
  public void setOnContentSizeChange(WebView view, boolean sendContentSizeChangeEvents) {
541
556
  ((BPCWebView) view).setSendContentSizeChangeEvents(sendContentSizeChangeEvents);
@@ -591,6 +606,32 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
591
606
  ((BPCWebView) view).setHasScrollEvent(hasScrollEvent);
592
607
  }
593
608
 
609
+ @ReactProp(name = "forceDarkOn")
610
+ public void setForceDarkOn(WebView view, boolean enabled) {
611
+ // Only Android 10+ support dark mode
612
+ if (Build.VERSION.SDK_INT > Build.VERSION_CODES.P) {
613
+ // Switch WebView dark mode
614
+ if (WebViewFeature.isFeatureSupported(WebViewFeature.FORCE_DARK)) {
615
+ int forceDarkMode = enabled ? WebSettingsCompat.FORCE_DARK_ON : WebSettingsCompat.FORCE_DARK_OFF;
616
+ WebSettingsCompat.setForceDark(view.getSettings(), forceDarkMode);
617
+ }
618
+
619
+ // Set how WebView content should be darkened.
620
+ // PREFER_WEB_THEME_OVER_USER_AGENT_DARKENING: checks for the "color-scheme" <meta> tag.
621
+ // If present, it uses media queries. If absent, it applies user-agent (automatic)
622
+ // More information about Force Dark Strategy can be found here:
623
+ // https://developer.android.com/reference/androidx/webkit/WebSettingsCompat#setForceDarkStrategy(android.webkit.WebSettings)
624
+ if (enabled && WebViewFeature.isFeatureSupported(WebViewFeature.FORCE_DARK_STRATEGY)) {
625
+ WebSettingsCompat.setForceDarkStrategy(view.getSettings(), WebSettingsCompat.DARK_STRATEGY_PREFER_WEB_THEME_OVER_USER_AGENT_DARKENING);
626
+ }
627
+ }
628
+ }
629
+
630
+ @ReactProp(name = "minimumFontSize")
631
+ public void setMinimumFontSize(WebView view, int fontSize) {
632
+ view.getSettings().setMinimumFontSize(fontSize);
633
+ }
634
+
594
635
  @Override
595
636
  protected void addEventEmitters(ThemedReactContext reactContext, WebView view) {
596
637
  // Do not register default touch emitter and let WebView implementation handle touches
@@ -603,6 +644,13 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
603
644
  if (export == null) {
604
645
  export = MapBuilder.newHashMap();
605
646
  }
647
+ // Default events but adding them here explicitly for clarity
648
+ export.put(TopLoadingStartEvent.EVENT_NAME, MapBuilder.of("registrationName", "onLoadingStart"));
649
+ export.put(TopLoadingFinishEvent.EVENT_NAME, MapBuilder.of("registrationName", "onLoadingFinish"));
650
+ export.put(TopLoadingErrorEvent.EVENT_NAME, MapBuilder.of("registrationName", "onLoadingError"));
651
+ export.put(TopMessageEvent.EVENT_NAME, MapBuilder.of("registrationName", "onMessage"));
652
+ // !Default events but adding them here explicitly for clarity
653
+
606
654
  export.put(TopLoadingProgressEvent.EVENT_NAME, MapBuilder.of("registrationName", "onLoadingProgress"));
607
655
  export.put(TopShouldStartLoadWithRequestEvent.EVENT_NAME, MapBuilder.of("registrationName", "onShouldStartLoadWithRequest"));
608
656
  export.put(ScrollEventType.getJSEventName(ScrollEventType.SCROLL), MapBuilder.of("registrationName", "onScroll"));
@@ -630,21 +678,21 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
630
678
  }
631
679
 
632
680
  @Override
633
- public void receiveCommand(WebView root, int commandId, @Nullable ReadableArray args) {
681
+ public void receiveCommand(@NonNull WebView root, String commandId, @Nullable ReadableArray args) {
634
682
  switch (commandId) {
635
- case COMMAND_GO_BACK:
683
+ case "goBack":
636
684
  root.goBack();
637
685
  break;
638
- case COMMAND_GO_FORWARD:
686
+ case "goForward":
639
687
  root.goForward();
640
688
  break;
641
- case COMMAND_RELOAD:
689
+ case "reload":
642
690
  root.reload();
643
691
  break;
644
- case COMMAND_STOP_LOADING:
692
+ case "stopLoading":
645
693
  root.stopLoading();
646
694
  break;
647
- case COMMAND_POST_MESSAGE:
695
+ case "postMessage":
648
696
  try {
649
697
  BPCWebView reactWebView = (BPCWebView) root;
650
698
  JSONObject eventInitDict = new JSONObject();
@@ -664,31 +712,32 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
664
712
  throw new RuntimeException(e);
665
713
  }
666
714
  break;
667
- case COMMAND_INJECT_JAVASCRIPT:
715
+ case "injectJavaScript":
668
716
  BPCWebView reactWebView = (BPCWebView) root;
669
717
  reactWebView.evaluateJavascriptWithFallback(args.getString(0));
670
718
  break;
671
- case COMMAND_LOAD_URL:
719
+ case "loadUrl":
672
720
  if (args == null) {
673
721
  throw new RuntimeException("Arguments for loading an url are null!");
674
722
  }
675
723
  ((BPCWebView) root).progressChangedFilter.setWaitingForCommandLoadUrl(false);
676
724
  root.loadUrl(args.getString(0));
677
725
  break;
678
- case COMMAND_FOCUS:
726
+ case "requestFocus":
679
727
  root.requestFocus();
680
728
  break;
681
- case COMMAND_CLEAR_FORM_DATA:
729
+ case "clearFormData":
682
730
  root.clearFormData();
683
731
  break;
684
- case COMMAND_CLEAR_CACHE:
732
+ case "clearCache":
685
733
  boolean includeDiskFiles = args != null && args.getBoolean(0);
686
734
  root.clearCache(includeDiskFiles);
687
735
  break;
688
- case COMMAND_CLEAR_HISTORY:
736
+ case "clearHistory":
689
737
  root.clearHistory();
690
738
  break;
691
739
  }
740
+ super.receiveCommand(root, commandId, args);
692
741
  }
693
742
 
694
743
  @Override
@@ -704,8 +753,11 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
704
753
  }
705
754
 
706
755
  protected void setupWebChromeClient(ReactContext reactContext, WebView webView) {
707
- if (mAllowsFullscreenVideo) {
708
- int initialRequestedOrientation = reactContext.getCurrentActivity().getRequestedOrientation();
756
+ Activity activity = reactContext.getCurrentActivity();
757
+
758
+ if (mAllowsFullscreenVideo && activity != null) {
759
+ int initialRequestedOrientation = activity.getRequestedOrientation();
760
+
709
761
  mWebChromeClient = new BPCWebChromeClient(reactContext, webView) {
710
762
  @Override
711
763
  public Bitmap getDefaultVideoPoster() {
@@ -722,31 +774,32 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
722
774
  mVideoView = view;
723
775
  mCustomViewCallback = callback;
724
776
 
725
- mReactContext.getCurrentActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);
777
+ activity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);
726
778
 
727
779
  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
728
780
  mVideoView.setSystemUiVisibility(FULLSCREEN_SYSTEM_UI_VISIBILITY);
729
- mReactContext.getCurrentActivity().getWindow().setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
781
+ activity.getWindow().setFlags(
782
+ WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS,
783
+ WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS
784
+ );
730
785
  }
731
786
 
732
787
  mVideoView.setBackgroundColor(Color.BLACK);
733
788
 
734
- // since RN's Modals interfere with the View hierarchy
735
- // we will decide which View to Hide if the hierarchy
736
- // does not match (i.e., the webview is within a Modal)
737
- // NOTE: We could use mWebView.getRootView() instead of getRootView()
789
+ // Since RN's Modals interfere with the View hierarchy
790
+ // we will decide which View to hide if the hierarchy
791
+ // does not match (i.e., the WebView is within a Modal)
792
+ // NOTE: We could use `mWebView.getRootView()` instead of `getRootView()`
738
793
  // but that breaks the Modal's styles and layout, so we need this to render
739
- // in the main View hierarchy regardless.
794
+ // in the main View hierarchy regardless
740
795
  ViewGroup rootView = getRootView();
741
796
  rootView.addView(mVideoView, FULLSCREEN_LAYOUT_PARAMS);
742
797
 
743
798
  // Different root views, we are in a Modal
744
- if(rootView.getRootView() != mWebView.getRootView()){
799
+ if (rootView.getRootView() != mWebView.getRootView()) {
745
800
  mWebView.getRootView().setVisibility(View.GONE);
746
- }
747
-
748
- // Same view hierarchy (no Modal), just hide the webview then
749
- else{
801
+ } else {
802
+ // Same view hierarchy (no Modal), just hide the WebView then
750
803
  mWebView.setVisibility(View.GONE);
751
804
  }
752
805
 
@@ -759,20 +812,18 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
759
812
  return;
760
813
  }
761
814
 
762
- // same logic as above
815
+ // Same logic as above
763
816
  ViewGroup rootView = getRootView();
764
817
 
765
- if(rootView.getRootView() != mWebView.getRootView()){
818
+ if (rootView.getRootView() != mWebView.getRootView()) {
766
819
  mWebView.getRootView().setVisibility(View.VISIBLE);
767
- }
768
-
769
- // Same view hierarchy (no Modal)
770
- else{
820
+ } else {
821
+ // Same view hierarchy (no Modal)
771
822
  mWebView.setVisibility(View.VISIBLE);
772
823
  }
773
824
 
774
825
  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
775
- mReactContext.getCurrentActivity().getWindow().clearFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
826
+ activity.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
776
827
  }
777
828
 
778
829
  rootView.removeView(mVideoView);
@@ -781,23 +832,27 @@ public class BPCWebViewManager extends SimpleViewManager<WebView> {
781
832
  mVideoView = null;
782
833
  mCustomViewCallback = null;
783
834
 
784
- mReactContext.getCurrentActivity().setRequestedOrientation(initialRequestedOrientation);
835
+ activity.setRequestedOrientation(initialRequestedOrientation);
785
836
 
786
837
  mReactContext.removeLifecycleEventListener(this);
787
838
  }
788
839
  };
840
+
789
841
  webView.setWebChromeClient(mWebChromeClient);
790
842
  } else {
791
843
  if (mWebChromeClient != null) {
792
844
  mWebChromeClient.onHideCustomView();
793
845
  }
846
+
794
847
  mWebChromeClient = new BPCWebChromeClient(reactContext, webView) {
795
848
  @Override
796
849
  public Bitmap getDefaultVideoPoster() {
797
850
  return Bitmap.createBitmap(50, 50, Bitmap.Config.ARGB_8888);
798
851
  }
799
852
  };
853
+
800
854
  webView.setWebChromeClient(mWebChromeClient);
801
855
  }
802
856
  }
857
+
803
858
  }
@@ -95,25 +95,27 @@ public class BPCWebViewModule extends ReactContextBaseJavaModule implements Acti
95
95
  }
96
96
  }
97
97
 
98
- private PermissionListener webviewFileDownloaderPermissionListener = new PermissionListener() {
99
- @Override
100
- public boolean onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
101
- switch (requestCode) {
102
- case FILE_DOWNLOAD_PERMISSION_REQUEST: {
103
- // If request is cancelled, the result arrays are empty.
104
- if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
105
- if (downloadRequest != null) {
106
- downloadFile();
98
+ private PermissionListener getWebviewFileDownloaderPermissionListener(String downloadingMessage, String lackPermissionToDownloadMessage) {
99
+ return new PermissionListener() {
100
+ @Override
101
+ public boolean onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
102
+ switch (requestCode) {
103
+ case FILE_DOWNLOAD_PERMISSION_REQUEST: {
104
+ // If request is cancelled, the result arrays are empty.
105
+ if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
106
+ if (downloadRequest != null) {
107
+ downloadFile(downloadingMessage);
108
+ }
109
+ } else {
110
+ Toast.makeText(getCurrentActivity().getApplicationContext(), lackPermissionToDownloadMessage, Toast.LENGTH_LONG).show();
107
111
  }
108
- } else {
109
- Toast.makeText(getCurrentActivity().getApplicationContext(), "Cannot download files as permission was denied. Please provide permission to write to storage, in order to download files.", Toast.LENGTH_LONG).show();
112
+ return true;
110
113
  }
111
- return true;
112
114
  }
115
+ return false;
113
116
  }
114
- return false;
115
- }
116
- };
117
+ };
118
+ }
117
119
 
118
120
  public BPCWebViewModule(ReactApplicationContext reactContext) {
119
121
  super(reactContext);
@@ -306,16 +308,20 @@ public class BPCWebViewModule extends ReactContextBaseJavaModule implements Acti
306
308
  this.downloadRequest = request;
307
309
  }
308
310
 
309
- public void downloadFile() {
311
+ public void downloadFile(String downloadingMessage) {
310
312
  DownloadManager dm = (DownloadManager) getCurrentActivity().getBaseContext().getSystemService(Context.DOWNLOAD_SERVICE);
311
- String downloadMessage = "Downloading";
312
313
 
313
- dm.enqueue(this.downloadRequest);
314
+ try {
315
+ dm.enqueue(this.downloadRequest);
316
+ } catch (IllegalArgumentException e) {
317
+ Log.w("BPCWebViewModule", "Unsupported URI, aborting download", e);
318
+ return;
319
+ }
314
320
 
315
- Toast.makeText(getCurrentActivity().getApplicationContext(), downloadMessage, Toast.LENGTH_LONG).show();
321
+ Toast.makeText(getCurrentActivity().getApplicationContext(), downloadingMessage, Toast.LENGTH_LONG).show();
316
322
  }
317
323
 
318
- public boolean grantFileDownloaderPermissions() {
324
+ public boolean grantFileDownloaderPermissions(String downloadingMessage, String lackPermissionToDownloadMessage) {
319
325
  // Permission not required for Android Q and above
320
326
  if (Build.VERSION.SDK_INT > Build.VERSION_CODES.P) {
321
327
  return true;
@@ -324,7 +330,7 @@ public class BPCWebViewModule extends ReactContextBaseJavaModule implements Acti
324
330
  boolean result = ContextCompat.checkSelfPermission(getCurrentActivity(), Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED;
325
331
  if (!result && Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
326
332
  PermissionAwareActivity activity = getPermissionAwareActivity();
327
- activity.requestPermissions(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, FILE_DOWNLOAD_PERMISSION_REQUEST, webviewFileDownloaderPermissionListener);
333
+ activity.requestPermissions(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, FILE_DOWNLOAD_PERMISSION_REQUEST, getWebviewFileDownloaderPermissionListener(downloadingMessage, lackPermissionToDownloadMessage));
328
334
  }
329
335
 
330
336
  return result;
@@ -0,0 +1,11 @@
1
+ package kr.co.bootpay.webview;
2
+
3
+ class BasicAuthCredential {
4
+ String username;
5
+ String password;
6
+
7
+ BasicAuthCredential(String username, String password) {
8
+ this.username = username;
9
+ this.password = password;
10
+ }
11
+ }
@@ -9,27 +9,27 @@
9
9
  #import "BPCWKProcessPoolManager.h"
10
10
 
11
11
  @interface BPCWKProcessPoolManager() {
12
- WKProcessPool *_sharedProcessPool;
12
+ WKProcessPool *_sharedProcessPool;
13
13
  }
14
14
  @end
15
15
 
16
16
  @implementation BPCWKProcessPoolManager
17
17
 
18
18
  + (id) sharedManager {
19
- static BPCWKProcessPoolManager *_sharedManager = nil;
20
- @synchronized(self) {
21
- if(_sharedManager == nil) {
22
- _sharedManager = [[super alloc] init];
23
- }
24
- return _sharedManager;
19
+ static BPCWKProcessPoolManager *_sharedManager = nil;
20
+ @synchronized(self) {
21
+ if(_sharedManager == nil) {
22
+ _sharedManager = [[super alloc] init];
25
23
  }
24
+ return _sharedManager;
25
+ }
26
26
  }
27
27
 
28
28
  - (WKProcessPool *)sharedProcessPool {
29
- if (!_sharedProcessPool) {
30
- _sharedProcessPool = [[WKProcessPool alloc] init];
31
- }
32
- return _sharedProcessPool;
29
+ if (!_sharedProcessPool) {
30
+ _sharedProcessPool = [[WKProcessPool alloc] init];
31
+ }
32
+ return _sharedProcessPool;
33
33
  }
34
34
 
35
35
  @end