gitextract_psnkni0l/ ├── .eslintignore ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug-report.yml │ │ ├── config.yml │ │ └── feature-request.yml │ ├── bot.yml │ ├── ionic-issue-bot.yml │ └── workflows/ │ ├── capacitor-bot.yml │ ├── ci.yml │ ├── needs-reply.yml │ ├── publish-android.yml │ ├── publish-ios.yml │ ├── publish-latest.yml │ ├── publish-npm-alpha.yml │ ├── publish-npm-beta.yml │ ├── publish-npm-dev.yml │ ├── publish-npm-latest-from-pre.yml │ ├── publish-npm-latest.yml │ ├── publish-npm-nightly.yml │ ├── publish-npm-rc.yml │ └── publish-spm-release.yaml ├── .gitignore ├── .npmrc ├── .prettierignore ├── .vscode/ │ └── launch.json ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── android/ │ ├── .gitignore │ ├── CHANGELOG.md │ ├── LICENSE │ ├── capacitor/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── gradle.properties │ │ ├── lint-baseline.xml │ │ ├── lint.xml │ │ ├── proguard-rules.pro │ │ ├── settings.gradle │ │ └── src/ │ │ ├── androidTest/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── getcapacitor/ │ │ │ └── android/ │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main/ │ │ │ ├── AndroidManifest.xml │ │ │ ├── assets/ │ │ │ │ └── native-bridge.js │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── getcapacitor/ │ │ │ │ ├── AndroidProtocolHandler.java │ │ │ │ ├── App.java │ │ │ │ ├── AppUUID.java │ │ │ │ ├── Bridge.java │ │ │ │ ├── BridgeActivity.java │ │ │ │ ├── BridgeWebChromeClient.java │ │ │ │ ├── BridgeWebViewClient.java │ │ │ │ ├── CapConfig.java │ │ │ │ ├── CapacitorWebView.java │ │ │ │ ├── FileUtils.java │ │ │ │ ├── InvalidPluginException.java │ │ │ │ ├── InvalidPluginMethodException.java │ │ │ │ ├── JSArray.java │ │ │ │ ├── JSExport.java │ │ │ │ ├── JSExportException.java │ │ │ │ ├── JSInjector.java │ │ │ │ ├── JSObject.java │ │ │ │ ├── JSValue.java │ │ │ │ ├── Logger.java │ │ │ │ ├── MessageHandler.java │ │ │ │ ├── NativePlugin.java │ │ │ │ ├── PermissionState.java │ │ │ │ ├── Plugin.java │ │ │ │ ├── PluginCall.java │ │ │ │ ├── PluginConfig.java │ │ │ │ ├── PluginHandle.java │ │ │ │ ├── PluginInvocationException.java │ │ │ │ ├── PluginLoadException.java │ │ │ │ ├── PluginManager.java │ │ │ │ ├── PluginMethod.java │ │ │ │ ├── PluginMethodHandle.java │ │ │ │ ├── PluginResult.java │ │ │ │ ├── ProcessedRoute.java │ │ │ │ ├── RouteProcessor.java │ │ │ │ ├── ServerPath.java │ │ │ │ ├── UriMatcher.java │ │ │ │ ├── WebViewListener.java │ │ │ │ ├── WebViewLocalServer.java │ │ │ │ ├── annotation/ │ │ │ │ │ ├── ActivityCallback.java │ │ │ │ │ ├── CapacitorPlugin.java │ │ │ │ │ ├── Permission.java │ │ │ │ │ └── PermissionCallback.java │ │ │ │ ├── cordova/ │ │ │ │ │ ├── CapacitorCordovaCookieManager.java │ │ │ │ │ ├── MockCordovaInterfaceImpl.java │ │ │ │ │ └── MockCordovaWebViewImpl.java │ │ │ │ ├── plugin/ │ │ │ │ │ ├── CapacitorCookieManager.java │ │ │ │ │ ├── CapacitorCookies.java │ │ │ │ │ ├── CapacitorHttp.java │ │ │ │ │ ├── SystemBars.java │ │ │ │ │ ├── WebView.java │ │ │ │ │ └── util/ │ │ │ │ │ ├── AssetUtil.java │ │ │ │ │ ├── CapacitorHttpUrlConnection.java │ │ │ │ │ ├── HttpRequestHandler.java │ │ │ │ │ ├── ICapacitorHttpUrlConnection.java │ │ │ │ │ └── MimeType.java │ │ │ │ └── util/ │ │ │ │ ├── HostMask.java │ │ │ │ ├── InternalUtils.java │ │ │ │ ├── JSONUtils.java │ │ │ │ ├── PermissionHelper.java │ │ │ │ └── WebColor.java │ │ │ └── res/ │ │ │ ├── layout/ │ │ │ │ ├── capacitor_bridge_layout_main.xml │ │ │ │ └── no_webview.xml │ │ │ └── values/ │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test/ │ │ ├── java/ │ │ │ ├── android/ │ │ │ │ └── util/ │ │ │ │ └── Log.java │ │ │ └── com/ │ │ │ └── getcapacitor/ │ │ │ ├── ConfigBuildingTest.java │ │ │ ├── ConfigReadingTest.java │ │ │ ├── ExampleUnitTest.java │ │ │ ├── JSObjectTest.java │ │ │ ├── PluginMethodHandleTest.java │ │ │ ├── plugin/ │ │ │ │ └── util/ │ │ │ │ └── HttpRequestHandlerTest.java │ │ │ └── util/ │ │ │ └── HostMaskTest.java │ │ └── resources/ │ │ └── configs/ │ │ ├── bad.json │ │ ├── flat.json │ │ ├── hierarchy.json │ │ ├── nonjson.json │ │ └── server.json │ ├── gradle/ │ │ └── wrapper/ │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradle.properties │ ├── gradlew │ ├── gradlew.bat │ ├── package.json │ ├── scripts/ │ │ ├── publish-module.gradle │ │ └── publish-root.gradle │ └── settings.gradle ├── android-template/ │ ├── .gitignore │ ├── app/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src/ │ │ ├── androidTest/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── getcapacitor/ │ │ │ └── myapp/ │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main/ │ │ │ ├── AndroidManifest.xml │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── getcapacitor/ │ │ │ │ └── myapp/ │ │ │ │ └── MainActivity.java │ │ │ └── res/ │ │ │ ├── drawable/ │ │ │ │ └── ic_launcher_background.xml │ │ │ ├── drawable-v24/ │ │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── layout/ │ │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26/ │ │ │ │ ├── ic_launcher.xml │ │ │ │ └── ic_launcher_round.xml │ │ │ ├── values/ │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── xml/ │ │ │ └── file_paths.xml │ │ └── test/ │ │ └── java/ │ │ └── com/ │ │ └── getcapacitor/ │ │ └── myapp/ │ │ └── ExampleUnitTest.java │ ├── build.gradle │ ├── gradle/ │ │ └── wrapper/ │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradle.properties │ ├── gradlew │ ├── gradlew.bat │ ├── settings.gradle │ └── variables.gradle ├── capacitor-cordova-android-plugins/ │ ├── build.gradle │ └── src/ │ └── main/ │ ├── AndroidManifest.xml │ ├── java/ │ │ └── .gitkeep │ └── res/ │ └── .gitkeep ├── capacitor-cordova-ios-plugins/ │ ├── CordovaPluginsResources.podspec │ ├── resources/ │ │ └── .gitkeep │ └── sources/ │ └── .gitkeep ├── cli/ │ ├── .gitignore │ ├── .npmignore │ ├── .npmrc │ ├── CHANGELOG.md │ ├── LICENSE │ ├── README.md │ ├── bin/ │ │ └── capacitor │ ├── package.json │ ├── src/ │ │ ├── android/ │ │ │ ├── add.ts │ │ │ ├── build.ts │ │ │ ├── common.ts │ │ │ ├── doctor.ts │ │ │ ├── open.ts │ │ │ ├── run.ts │ │ │ └── update.ts │ │ ├── colors.ts │ │ ├── common.ts │ │ ├── config.ts │ │ ├── cordova.ts │ │ ├── declarations.ts │ │ ├── definitions.ts │ │ ├── errors.ts │ │ ├── framework-configs.ts │ │ ├── index.ts │ │ ├── ios/ │ │ │ ├── add.ts │ │ │ ├── build.ts │ │ │ ├── common.ts │ │ │ ├── doctor.ts │ │ │ ├── open.ts │ │ │ ├── run.ts │ │ │ └── update.ts │ │ ├── ipc.ts │ │ ├── log.ts │ │ ├── plugin.ts │ │ ├── sysconfig.ts │ │ ├── tasks/ │ │ │ ├── add.ts │ │ │ ├── build.ts │ │ │ ├── config.ts │ │ │ ├── copy.ts │ │ │ ├── create.ts │ │ │ ├── doctor.ts │ │ │ ├── init.ts │ │ │ ├── list.ts │ │ │ ├── migrate-spm.ts │ │ │ ├── migrate.ts │ │ │ ├── new-plugin.ts │ │ │ ├── open.ts │ │ │ ├── run.ts │ │ │ ├── serve.ts │ │ │ ├── sourcemaps.ts │ │ │ ├── sync.ts │ │ │ ├── telemetry.ts │ │ │ └── update.ts │ │ ├── telemetry.ts │ │ └── util/ │ │ ├── cli.ts │ │ ├── emoji.ts │ │ ├── fn.ts │ │ ├── fs.ts │ │ ├── iosplugin.ts │ │ ├── js.ts │ │ ├── livereload.ts │ │ ├── monorepotools.ts │ │ ├── native-run.ts │ │ ├── node.ts │ │ ├── promise.ts │ │ ├── spm.ts │ │ ├── subprocess.ts │ │ ├── template.ts │ │ ├── term.ts │ │ ├── uuid.ts │ │ └── xml.ts │ ├── test/ │ │ ├── add.android.spec.ts │ │ ├── add.ios.spec.ts │ │ ├── framework-detection.spec.ts │ │ ├── init.spec.ts │ │ ├── tsconfig.json │ │ ├── update.android.spec.ts │ │ ├── update.ios.spec.ts │ │ └── util.ts │ └── tsconfig.json ├── core/ │ ├── .npmrc │ ├── CHANGELOG.md │ ├── LICENSE │ ├── README.md │ ├── cookies.md │ ├── cordova.js │ ├── http.md │ ├── native-bridge.ts │ ├── package.json │ ├── rollup.bridge.config.js │ ├── rollup.config.js │ ├── src/ │ │ ├── core-plugins.ts │ │ ├── definitions-internal.ts │ │ ├── definitions.ts │ │ ├── global.ts │ │ ├── index.ts │ │ ├── runtime.ts │ │ ├── tests/ │ │ │ ├── bridge.spec.ts │ │ │ ├── build-treeshaking.js │ │ │ ├── convert-file-src.spec.ts │ │ │ ├── events.spec.ts │ │ │ ├── plugin.spec.ts │ │ │ ├── runtime.spec.ts │ │ │ └── web-plugin.spec.ts │ │ ├── util.ts │ │ └── web-plugin.ts │ ├── system-bars.md │ └── tsconfig.json ├── ios/ │ ├── CHANGELOG.md │ ├── Capacitor/ │ │ ├── Capacitor/ │ │ │ ├── AppUUID.swift │ │ │ ├── Array+Capacitor.swift │ │ │ ├── CAPApplicationDelegateProxy.swift │ │ │ ├── CAPBridge.swift │ │ │ ├── CAPBridgeDelegate.swift │ │ │ ├── CAPBridgeProtocol.swift │ │ │ ├── CAPBridgeViewController+CDVScreenOrientationDelegate.h │ │ │ ├── CAPBridgeViewController+CDVScreenOrientationDelegate.m │ │ │ ├── CAPBridgeViewController.swift │ │ │ ├── CAPBridgedJSTypes.h │ │ │ ├── CAPBridgedJSTypes.m │ │ │ ├── CAPBridgedPlugin+getMethod.swift │ │ │ ├── CAPBridgedPlugin.h │ │ │ ├── CAPFile.swift │ │ │ ├── CAPInstanceConfiguration.h │ │ │ ├── CAPInstanceConfiguration.m │ │ │ ├── CAPInstanceConfiguration.swift │ │ │ ├── CAPInstanceDescriptor.h │ │ │ ├── CAPInstanceDescriptor.m │ │ │ ├── CAPInstanceDescriptor.swift │ │ │ ├── CAPInstancePlugin.swift │ │ │ ├── CAPLog.swift │ │ │ ├── CAPNotifications.swift │ │ │ ├── CAPPlugin+LoadInstance.swift │ │ │ ├── CAPPlugin.h │ │ │ ├── CAPPlugin.m │ │ │ ├── CAPPluginCall.h │ │ │ ├── CAPPluginCall.m │ │ │ ├── CAPPluginCall.swift │ │ │ ├── CAPPluginMethod.h │ │ │ ├── CAPPluginMethod.m │ │ │ ├── CAPPluginMethod.swift │ │ │ ├── Capacitor.h │ │ │ ├── Capacitor.modulemap │ │ │ ├── CapacitorBridge.swift │ │ │ ├── CapacitorExtension.swift │ │ │ ├── Codable/ │ │ │ │ ├── JSValueDecoder.swift │ │ │ │ └── JSValueEncoder.swift │ │ │ ├── Data+Capacitor.swift │ │ │ ├── DocLinks.swift │ │ │ ├── Info.plist │ │ │ ├── JS.swift │ │ │ ├── JSExport.swift │ │ │ ├── JSTypes.swift │ │ │ ├── KeyPath.swift │ │ │ ├── KeyValueStore.swift │ │ │ ├── NotificationHandlerProtocol.swift │ │ │ ├── NotificationRouter.swift │ │ │ ├── PluginCallResult.swift │ │ │ ├── PluginConfig.swift │ │ │ ├── Plugins/ │ │ │ │ ├── CapacitorCookieManager.swift │ │ │ │ ├── CapacitorCookies.swift │ │ │ │ ├── CapacitorHttp.swift │ │ │ │ ├── CapacitorUrlRequest.swift │ │ │ │ ├── Console.swift │ │ │ │ ├── HttpRequestHandler.swift │ │ │ │ ├── SystemBars.swift │ │ │ │ └── WebView.swift │ │ │ ├── PrivacyInfo.xcprivacy │ │ │ ├── Router.swift │ │ │ ├── TmpViewController.swift │ │ │ ├── UIColor.swift │ │ │ ├── UIStatusBarManager+CAPHandleTapAction.m │ │ │ ├── WKWebView+Capacitor.m │ │ │ ├── WKWebView+Capacitor.swift │ │ │ ├── WebViewAssetHandler.swift │ │ │ ├── WebViewDelegationHandler.swift │ │ │ └── assets/ │ │ │ └── native-bridge.js │ │ ├── Capacitor.xcodeproj/ │ │ │ ├── project.pbxproj │ │ │ ├── project.xcworkspace/ │ │ │ │ └── xcshareddata/ │ │ │ │ └── IDEWorkspaceChecks.plist │ │ │ └── xcshareddata/ │ │ │ └── xcschemes/ │ │ │ └── Capacitor.xcscheme │ │ ├── Capacitor.xcworkspace/ │ │ │ └── xcshareddata/ │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── CapacitorTests/ │ │ │ ├── BridgedTypesHelper.swift │ │ │ ├── BridgedTypesTests.m │ │ │ ├── BridgedTypesTests.swift │ │ │ ├── CapacitorTests-Bridging-Header.h │ │ │ ├── CapacitorTests.swift │ │ │ ├── ConfigurationTests.swift │ │ │ ├── Info.plist │ │ │ ├── JSExportTests.swift │ │ │ ├── JSONSerializationWrapper.h │ │ │ ├── JSONSerializationWrapper.m │ │ │ ├── PluginCallAccessorTests.m │ │ │ └── RouterTests.swift │ │ ├── CodableTests/ │ │ │ ├── CodableTests.swift │ │ │ ├── DataCodableTests.swift │ │ │ ├── DateCodableTests.swift │ │ │ ├── NestedCodableTests.swift │ │ │ ├── NonconformingFloatCodableTests.swift │ │ │ ├── SuperCodableTests.swift │ │ │ └── URLCodableTests.swift │ │ └── TestsHostApp/ │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets/ │ │ │ ├── AccentColor.colorset/ │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset/ │ │ │ │ └── Contents.json │ │ │ └── Contents.json │ │ ├── Base.lproj/ │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Info.plist │ │ ├── ViewController.swift │ │ └── configurations/ │ │ ├── bad.json │ │ ├── flat.json │ │ ├── hidinglogs.json │ │ ├── hierarchy.json │ │ ├── nonjson.json │ │ └── server.json │ ├── Capacitor.podspec │ ├── CapacitorCordova/ │ │ ├── CapacitorCordova/ │ │ │ ├── CapacitorCordova.h │ │ │ ├── CapacitorCordova.modulemap │ │ │ ├── Classes/ │ │ │ │ └── Public/ │ │ │ │ ├── AppDelegate.h │ │ │ │ ├── AppDelegate.m │ │ │ │ ├── CDV.h │ │ │ │ ├── CDVAvailability.h │ │ │ │ ├── CDVAvailabilityDeprecated.h │ │ │ │ ├── CDVCommandDelegate.h │ │ │ │ ├── CDVCommandDelegateImpl.h │ │ │ │ ├── CDVCommandDelegateImpl.m │ │ │ │ ├── CDVConfigParser.h │ │ │ │ ├── CDVConfigParser.m │ │ │ │ ├── CDVInvokedUrlCommand.h │ │ │ │ ├── CDVInvokedUrlCommand.m │ │ │ │ ├── CDVPlugin+Resources.h │ │ │ │ ├── CDVPlugin+Resources.m │ │ │ │ ├── CDVPlugin.h │ │ │ │ ├── CDVPlugin.m │ │ │ │ ├── CDVPluginManager.h │ │ │ │ ├── CDVPluginManager.m │ │ │ │ ├── CDVPluginResult.h │ │ │ │ ├── CDVPluginResult.m │ │ │ │ ├── CDVScreenOrientationDelegate.h │ │ │ │ ├── CDVURLProtocol.h │ │ │ │ ├── CDVURLProtocol.m │ │ │ │ ├── CDVViewController.h │ │ │ │ ├── CDVViewController.m │ │ │ │ ├── CDVWebViewProcessPoolFactory.h │ │ │ │ ├── CDVWebViewProcessPoolFactory.m │ │ │ │ ├── NSDictionary+CordovaPreferences.h │ │ │ │ └── NSDictionary+CordovaPreferences.m │ │ │ ├── Info.plist │ │ │ └── PrivacyInfo.xcprivacy │ │ └── CapacitorCordova.xcodeproj/ │ │ ├── project.pbxproj │ │ └── project.xcworkspace/ │ │ └── xcshareddata/ │ │ └── IDEWorkspaceChecks.plist │ ├── CapacitorCordova.podspec │ ├── LICENSE │ ├── package.json │ └── scripts/ │ └── pods_helpers.rb ├── ios-pods-template/ │ ├── .gitignore │ └── App/ │ ├── App/ │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets/ │ │ │ ├── AppIcon.appiconset/ │ │ │ │ └── Contents.json │ │ │ ├── Contents.json │ │ │ └── Splash.imageset/ │ │ │ └── Contents.json │ │ ├── Base.lproj/ │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ └── Info.plist │ ├── App.xcodeproj/ │ │ └── project.pbxproj │ ├── App.xcworkspace/ │ │ └── xcshareddata/ │ │ └── IDEWorkspaceChecks.plist │ └── Podfile ├── ios-spm-template/ │ ├── .gitignore │ ├── App/ │ │ ├── App/ │ │ │ ├── AppDelegate.swift │ │ │ ├── Assets.xcassets/ │ │ │ │ ├── AppIcon.appiconset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Contents.json │ │ │ │ └── Splash.imageset/ │ │ │ │ └── Contents.json │ │ │ ├── Base.lproj/ │ │ │ │ ├── LaunchScreen.storyboard │ │ │ │ └── Main.storyboard │ │ │ └── Info.plist │ │ ├── App.xcodeproj/ │ │ │ ├── project.pbxproj │ │ │ └── project.xcworkspace/ │ │ │ └── xcshareddata/ │ │ │ └── IDEWorkspaceChecks.plist │ │ └── CapApp-SPM/ │ │ ├── .gitignore │ │ ├── Package.swift │ │ ├── README.md │ │ └── Sources/ │ │ └── CapApp-SPM/ │ │ └── CapApp-SPM.swift │ └── debug.xcconfig ├── lerna.json ├── nx.json ├── package.json ├── scripts/ │ ├── .gitignore │ ├── lib/ │ │ ├── cli.mjs │ │ ├── fn.mjs │ │ ├── fs.mjs │ │ ├── git.mjs │ │ ├── lerna.mjs │ │ ├── repo.mjs │ │ ├── subprocess.mjs │ │ └── version.mjs │ ├── native-podspec.sh │ ├── pack-cli-assets.mjs │ ├── publish-android.sh │ └── sync-peer-dependencies.mjs └── swiftlint.config.js