gitextract_tgy_emxc/ ├── .asf.yaml ├── .gitattributes ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── BUG_REPORT.md │ │ ├── FEATURE_REQUEST.md │ │ └── SUPPORT_QUESTION.md │ ├── ISSUE_TEMPLATE.md │ ├── PULL_REQUEST_TEMPLATE.md │ └── workflows/ │ ├── ci.yml │ └── release-audit.yml ├── .gitignore ├── .npmignore ├── .npmrc ├── .ratignore ├── CONTRIBUTING.md ├── LICENSE ├── NOTICE ├── README.md ├── RELEASENOTES.md ├── cordova-lib.js ├── eslint.config.js ├── integration-tests/ │ ├── HooksRunner.spec.js │ ├── fetch.spec.js │ ├── pkgJson.spec.js │ ├── platform.spec.js │ ├── plugin.spec.js │ ├── plugman_fetch.spec.js │ └── plugman_uninstall.spec.js ├── licence_checker.yml ├── package.json ├── spec/ │ ├── common.js │ ├── cordova/ │ │ ├── build.spec.js │ │ ├── compile.spec.js │ │ ├── cordova-lib.spec.js │ │ ├── emulate.spec.js │ │ ├── fixtures/ │ │ │ ├── basePkgJson/ │ │ │ │ ├── config.xml │ │ │ │ ├── package.json │ │ │ │ ├── plugins/ │ │ │ │ │ └── .svn │ │ │ │ └── www/ │ │ │ │ ├── css/ │ │ │ │ │ └── index.css │ │ │ │ ├── index.html │ │ │ │ ├── js/ │ │ │ │ │ └── index.js │ │ │ │ └── spec.html │ │ │ ├── plugins/ │ │ │ │ ├── @cordova/ │ │ │ │ │ └── plugin-test-dummy/ │ │ │ │ │ ├── package.json │ │ │ │ │ └── plugin.xml │ │ │ │ ├── com.plugin.withhooks/ │ │ │ │ │ ├── package.json │ │ │ │ │ ├── plugin.xml │ │ │ │ │ └── scripts/ │ │ │ │ │ ├── android/ │ │ │ │ │ │ └── androidBeforeBuild.js │ │ │ │ │ ├── beforeBuild.bat │ │ │ │ │ ├── beforeBuild.js │ │ │ │ │ ├── beforeBuild.sh │ │ │ │ │ └── windows/ │ │ │ │ │ └── windowsBeforeBuild.js │ │ │ │ ├── cordova-lib-test-plugin/ │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── NOTICE │ │ │ │ │ ├── package.json │ │ │ │ │ └── plugin.xml │ │ │ │ ├── fake1/ │ │ │ │ │ ├── package.json │ │ │ │ │ └── plugin.xml │ │ │ │ ├── org.test.defaultvariables/ │ │ │ │ │ ├── package.json │ │ │ │ │ └── plugin.xml │ │ │ │ └── test/ │ │ │ │ ├── package.json │ │ │ │ ├── plugin.xml │ │ │ │ └── www/ │ │ │ │ └── test.js │ │ │ ├── projectHooks/ │ │ │ │ ├── android/ │ │ │ │ │ ├── appAndroidBeforeBuild.bat │ │ │ │ │ ├── appAndroidBeforeBuild.js │ │ │ │ │ └── appAndroidBeforeBuild.sh │ │ │ │ ├── appBeforeBuild02.js │ │ │ │ ├── appBeforeBuild1.bat │ │ │ │ ├── appBeforeBuild1.sh │ │ │ │ ├── fail.js │ │ │ │ ├── orderLogger.js │ │ │ │ └── windows/ │ │ │ │ ├── appWindowsBeforeBuild.bat │ │ │ │ ├── appWindowsBeforeBuild.js │ │ │ │ └── appWindowsBeforeBuild.sh │ │ │ └── projects/ │ │ │ ├── ProjectMetadata/ │ │ │ │ └── config.xml │ │ │ └── platformApi/ │ │ │ └── platforms/ │ │ │ └── windows/ │ │ │ └── cordova/ │ │ │ └── Api.js │ │ ├── platform/ │ │ │ ├── addHelper.spec.js │ │ │ ├── getPlatformDetailsFromDir.spec.js │ │ │ ├── index.spec.js │ │ │ ├── list.spec.js │ │ │ ├── listDeprecated.spec.js │ │ │ └── remove.spec.js │ │ ├── platforms/ │ │ │ └── platforms.spec.js │ │ ├── plugin/ │ │ │ ├── add.getFetchVersion.spec.js │ │ │ ├── add.spec.js │ │ │ ├── index.spec.js │ │ │ ├── list.spec.js │ │ │ ├── plugin_spec_parser.spec.js │ │ │ ├── remove.spec.js │ │ │ └── util.spec.js │ │ ├── prepare/ │ │ │ └── platforms.spec.js │ │ ├── prepare.spec.js │ │ ├── project-metadata-apis.spec.js │ │ ├── requirements.spec.js │ │ ├── restore-util.spec.js │ │ ├── run.spec.js │ │ └── util.spec.js │ ├── fixture-helper.js │ ├── helper.js │ ├── helpers.js │ ├── hooks/ │ │ └── Context.spec.js │ ├── plugman/ │ │ ├── install.spec.js │ │ ├── plugins/ │ │ │ ├── com.adobe.vars/ │ │ │ │ └── plugin.xml │ │ │ ├── com.cordova.engine/ │ │ │ │ ├── megaBoringVersion │ │ │ │ ├── megaFunVersion │ │ │ │ └── plugin.xml │ │ │ ├── com.cordova.engine-android/ │ │ │ │ └── plugin.xml │ │ │ ├── dependencies/ │ │ │ │ ├── A/ │ │ │ │ │ ├── plugin.xml │ │ │ │ │ ├── src/ │ │ │ │ │ │ ├── android/ │ │ │ │ │ │ │ └── A.java │ │ │ │ │ │ └── ios/ │ │ │ │ │ │ ├── APluginCommand.h │ │ │ │ │ │ └── APluginCommand.m │ │ │ │ │ └── www/ │ │ │ │ │ └── plugin-a.js │ │ │ │ ├── B/ │ │ │ │ │ ├── plugin.xml │ │ │ │ │ ├── src/ │ │ │ │ │ │ ├── android/ │ │ │ │ │ │ │ └── B.java │ │ │ │ │ │ └── ios/ │ │ │ │ │ │ ├── BPluginCommand.h │ │ │ │ │ │ └── BPluginCommand.m │ │ │ │ │ └── www/ │ │ │ │ │ └── plugin-b.js │ │ │ │ ├── C/ │ │ │ │ │ ├── plugin.xml │ │ │ │ │ ├── src/ │ │ │ │ │ │ ├── android/ │ │ │ │ │ │ │ └── C.java │ │ │ │ │ │ └── ios/ │ │ │ │ │ │ ├── CPluginCommand.h │ │ │ │ │ │ └── CPluginCommand.m │ │ │ │ │ └── www/ │ │ │ │ │ └── plugin-c.js │ │ │ │ ├── C@1.0.0/ │ │ │ │ │ ├── package.json │ │ │ │ │ ├── plugin.xml │ │ │ │ │ ├── src/ │ │ │ │ │ │ ├── android/ │ │ │ │ │ │ │ └── C.java │ │ │ │ │ │ └── ios/ │ │ │ │ │ │ ├── CPluginCommand.h │ │ │ │ │ │ └── CPluginCommand.m │ │ │ │ │ └── www/ │ │ │ │ │ └── plugin-c.js │ │ │ │ ├── D/ │ │ │ │ │ ├── plugin.xml │ │ │ │ │ ├── src/ │ │ │ │ │ │ ├── android/ │ │ │ │ │ │ │ └── D.java │ │ │ │ │ │ └── ios/ │ │ │ │ │ │ ├── DPluginCommand.h │ │ │ │ │ │ └── DPluginCommand.m │ │ │ │ │ └── www/ │ │ │ │ │ └── plugin-d.js │ │ │ │ ├── E/ │ │ │ │ │ ├── plugin.xml │ │ │ │ │ ├── src/ │ │ │ │ │ │ ├── android/ │ │ │ │ │ │ │ └── E.java │ │ │ │ │ │ └── ios/ │ │ │ │ │ │ ├── EPluginCommand.h │ │ │ │ │ │ └── EPluginCommand.m │ │ │ │ │ └── www/ │ │ │ │ │ └── plugin-d.js │ │ │ │ ├── F/ │ │ │ │ │ ├── plugin.xml │ │ │ │ │ ├── src/ │ │ │ │ │ │ ├── android/ │ │ │ │ │ │ │ └── F.java │ │ │ │ │ │ └── ios/ │ │ │ │ │ │ ├── FPluginCommand.h │ │ │ │ │ │ └── FPluginCommand.m │ │ │ │ │ └── www/ │ │ │ │ │ └── plugin-f.js │ │ │ │ ├── G/ │ │ │ │ │ ├── plugin.xml │ │ │ │ │ ├── src/ │ │ │ │ │ │ ├── android/ │ │ │ │ │ │ │ └── G.java │ │ │ │ │ │ └── ios/ │ │ │ │ │ │ ├── EPluginCommand.m │ │ │ │ │ │ └── GPluginCommand.h │ │ │ │ │ └── www/ │ │ │ │ │ └── plugin-g.js │ │ │ │ ├── H/ │ │ │ │ │ ├── plugin.xml │ │ │ │ │ ├── src/ │ │ │ │ │ │ ├── android/ │ │ │ │ │ │ │ └── H.java │ │ │ │ │ │ └── ios/ │ │ │ │ │ │ ├── HPluginCommand.h │ │ │ │ │ │ └── HPluginCommand.m │ │ │ │ │ └── www/ │ │ │ │ │ └── plugin-h.js │ │ │ │ ├── I/ │ │ │ │ │ ├── plugin.xml │ │ │ │ │ ├── src/ │ │ │ │ │ │ ├── android/ │ │ │ │ │ │ │ └── I.java │ │ │ │ │ │ └── ios/ │ │ │ │ │ │ ├── IPluginCommand.h │ │ │ │ │ │ └── IPluginCommand.m │ │ │ │ │ └── www/ │ │ │ │ │ └── plugin-i.js │ │ │ │ ├── README.md │ │ │ │ ├── Test1/ │ │ │ │ │ ├── package.json │ │ │ │ │ ├── plugin.xml │ │ │ │ │ ├── src/ │ │ │ │ │ │ └── android/ │ │ │ │ │ │ └── Test1.java │ │ │ │ │ └── www/ │ │ │ │ │ └── plugin-test.js │ │ │ │ ├── Test2/ │ │ │ │ │ ├── package.json │ │ │ │ │ ├── plugin.xml │ │ │ │ │ ├── src/ │ │ │ │ │ │ └── android/ │ │ │ │ │ │ └── Test2.java │ │ │ │ │ └── www/ │ │ │ │ │ └── plugin-test.js │ │ │ │ ├── Test3/ │ │ │ │ │ ├── package.json │ │ │ │ │ ├── plugin.xml │ │ │ │ │ ├── src/ │ │ │ │ │ │ └── android/ │ │ │ │ │ │ └── Test3.java │ │ │ │ │ └── www/ │ │ │ │ │ └── plugin-test.js │ │ │ │ ├── Test4/ │ │ │ │ │ ├── package.json │ │ │ │ │ ├── plugin.xml │ │ │ │ │ ├── src/ │ │ │ │ │ │ └── android/ │ │ │ │ │ │ └── Test4.java │ │ │ │ │ └── www/ │ │ │ │ │ └── plugin-test.js │ │ │ │ ├── meta/ │ │ │ │ │ ├── D/ │ │ │ │ │ │ ├── plugin.xml │ │ │ │ │ │ ├── src/ │ │ │ │ │ │ │ ├── android/ │ │ │ │ │ │ │ │ └── D.java │ │ │ │ │ │ │ └── ios/ │ │ │ │ │ │ │ ├── DPluginCommand.h │ │ │ │ │ │ │ └── DPluginCommand.m │ │ │ │ │ │ └── www/ │ │ │ │ │ │ └── plugin-d.js │ │ │ │ │ └── subdir/ │ │ │ │ │ └── E/ │ │ │ │ │ ├── plugin.xml │ │ │ │ │ ├── src/ │ │ │ │ │ │ ├── android/ │ │ │ │ │ │ │ └── E.java │ │ │ │ │ │ └── ios/ │ │ │ │ │ │ ├── EPluginCommand.h │ │ │ │ │ │ └── EPluginCommand.m │ │ │ │ │ └── www/ │ │ │ │ │ └── plugin-e.js │ │ │ │ └── subdir/ │ │ │ │ └── E/ │ │ │ │ ├── plugin.xml │ │ │ │ ├── src/ │ │ │ │ │ ├── android/ │ │ │ │ │ │ └── E.java │ │ │ │ │ └── ios/ │ │ │ │ │ ├── EPluginCommand.h │ │ │ │ │ └── EPluginCommand.m │ │ │ │ └── www/ │ │ │ │ └── plugin-e.js │ │ │ ├── org.test.androidonly/ │ │ │ │ ├── plugin.xml │ │ │ │ └── www/ │ │ │ │ └── android.js │ │ │ ├── org.test.defaultvariables/ │ │ │ │ └── plugin.xml │ │ │ ├── org.test.invalid.engine.no.platform/ │ │ │ │ └── plugin.xml │ │ │ ├── org.test.invalid.engine.no.scriptSrc/ │ │ │ │ └── plugin.xml │ │ │ ├── org.test.invalid.engine.script/ │ │ │ │ └── plugin.xml │ │ │ ├── org.test.plugins.childbrowser/ │ │ │ │ ├── package.json │ │ │ │ ├── plugin.xml │ │ │ │ ├── src/ │ │ │ │ │ ├── android/ │ │ │ │ │ │ └── ChildBrowser.java │ │ │ │ │ └── ios/ │ │ │ │ │ ├── ChildBrowserCommand.h │ │ │ │ │ ├── ChildBrowserCommand.m │ │ │ │ │ ├── ChildBrowserViewController.h │ │ │ │ │ ├── ChildBrowserViewController.m │ │ │ │ │ ├── ChildBrowserViewController.xib │ │ │ │ │ ├── TargetDirTest.h │ │ │ │ │ ├── TargetDirTest.m │ │ │ │ │ └── preserveDirs/ │ │ │ │ │ ├── PreserveDirsTest.h │ │ │ │ │ └── PreserveDirsTest.m │ │ │ │ └── www/ │ │ │ │ ├── childbrowser.js │ │ │ │ └── childbrowser_file.html │ │ │ ├── org.test.plugins.dummyplugin/ │ │ │ │ ├── android-resource.xml │ │ │ │ ├── extra.gradle │ │ │ │ ├── plugin-lib/ │ │ │ │ │ ├── AndroidManifest.xml │ │ │ │ │ ├── libFile │ │ │ │ │ └── project.properties │ │ │ │ ├── plugin-lib2/ │ │ │ │ │ ├── AndroidManifest.xml │ │ │ │ │ ├── libFile │ │ │ │ │ └── project.properties │ │ │ │ ├── plugin.xml │ │ │ │ ├── src/ │ │ │ │ │ ├── android/ │ │ │ │ │ │ └── DummyPlugin.java │ │ │ │ │ └── ios/ │ │ │ │ │ ├── Custom.framework/ │ │ │ │ │ │ ├── someFheader.h │ │ │ │ │ │ └── somebinlib │ │ │ │ │ ├── DummyPlugin.bundle │ │ │ │ │ ├── DummyPluginCommand.h │ │ │ │ │ ├── DummyPluginCommand.m │ │ │ │ │ ├── SourceWithFramework.m │ │ │ │ │ ├── TargetDirTest.h │ │ │ │ │ └── TargetDirTest.m │ │ │ │ └── www/ │ │ │ │ └── dummyplugin.js │ │ │ ├── pkgjson-test-plugin/ │ │ │ │ ├── package.json │ │ │ │ └── plugin.xml │ │ │ └── recursivePlug/ │ │ │ ├── asset.txt │ │ │ ├── demo/ │ │ │ │ └── config.xml │ │ │ ├── package.json │ │ │ └── plugin.xml │ │ ├── util/ │ │ │ ├── dependencies.spec.js │ │ │ └── metadata.spec.js │ │ └── variable-merge.spec.js │ ├── project-test-helpers.js │ └── support/ │ └── jasmine.json └── src/ ├── cordova/ │ ├── build.js │ ├── clean.js │ ├── compile.js │ ├── cordova.js │ ├── emulate.js │ ├── platform/ │ │ ├── addHelper.js │ │ ├── getPlatformDetailsFromDir.js │ │ ├── index.js │ │ ├── list.js │ │ └── remove.js │ ├── plugin/ │ │ ├── add.js │ │ ├── index.js │ │ ├── list.js │ │ ├── plugin_spec_parser.js │ │ ├── remove.js │ │ └── util.js │ ├── prepare/ │ │ └── platforms.js │ ├── prepare.js │ ├── project_metadata.js │ ├── requirements.js │ ├── restore-util.js │ ├── run.js │ ├── targets.js │ └── util.js ├── hooks/ │ ├── Context.js │ ├── HooksRunner.js │ └── scriptsFinder.js ├── platforms/ │ ├── index.js │ ├── platforms.js │ └── platformsConfig.json ├── plugman/ │ ├── fetch.js │ ├── install.js │ ├── plugman.js │ ├── uninstall.js │ ├── util/ │ │ ├── default-engines.js │ │ ├── dep-graph.js │ │ ├── dependencies.js │ │ └── metadata.js │ └── variable-merge.js └── util/ └── promise-util.js