<?xml version='1.0' encoding='utf-8'?>
<plugin id="cordova-plugin-one" version="3.0.0" xmlns="http://apache.org/cordova/ns/plugins/1.0">
	<name>cordova-plugin-one</name>
	<description>One Cordova Plugin for the ONE SDK for iOS and Android</description>
	<license>Copyright © 2021 Thunderhead. All rights reserved.</license>
	
	<js-module 
		name="One" 
		src="www/one.js">
		<clobbers target="One" />
	</js-module>

    <!--Plugin hooks. One plugin needs to add additional configuration to the target app build.gradle-->
    <hook type="after_plugin_install" src="hooks/after_plugin_install.js" />
    <hook type="before_plugin_uninstall" src="hooks/before_plugin_uninstall.js" />

    <!--We need to update gradle version variable before each gradle task execution to prevent build errors-->
    <hook type="before_build" src="hooks/bump_gradle_version.js" />
    <hook type="before_clean" src="hooks/bump_gradle_version.js" />
    <hook type="before_compile" src="hooks/bump_gradle_version.js" />
    <hook type="before_docs" src="hooks/bump_gradle_version.js" />
    <hook type="before_emulate" src="hooks/bump_gradle_version.js" />
    <hook type="before_prepare" src="hooks/bump_gradle_version.js" />
    <hook type="before_run" src="hooks/bump_gradle_version.js" />
    <hook type="before_serve" src="hooks/bump_gradle_version.js" />

    <!-- iOS -->
    <platform name="ios">
        <config-file parent="/*" target="config.xml">
            <feature name="One">
                <param name="ios-package" value="OnePlugin" />
                <param name="onload" value="true" />
            </feature>
        </config-file>
        <header-file src="src/ios/OnePlugin.h" />
        <source-file src="src/ios/OnePlugin.m" />
        <config-file target="*-Info.plist" parent="Thunderhead Config">
            <dict>
                <key>Swizzling Options</key>
            <dict>
                <key>DisableWKWebViewTracking</key>
                <true/>
            </dict>
        </dict>
        </config-file>
        <podspec>
            <config>
                <source url="https://github.com/CocoaPods/Specs.git"/>
            </config>
            <pods use-frameworks="false">
                <pod name="Thunderhead" spec="~> 10.0.0" />
            </pods>
        </podspec>
    </platform>
    
    <!-- Android -->
    <platform name="android">
        <config-file parent="/manifest/application" target="AndroidManifest.xml">
            <provider android:authorities="com.thunderhead.provider" android:enabled="true" android:name="com.thunderhead.ThunderheadProvider" />
        </config-file>
        <config-file parent="/*" target="res/xml/config.xml">
            <feature name="One">
                <param name="android-package" value="com.thunderhead.plugin.one.OnePlugin" />
                <param name="onload" value="true" />
            </feature>
        </config-file>
        <config-file parent="/*" target="AndroidManifest.xml">
            <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
            <uses-permission android:name="android.permission.INTERNET"/>
        </config-file>
        <source-file src="src/android/OnePlugin.java" target-dir="src/com/thunderhead/plugin/one" />
        <source-file src="src/android/OneSdkVersion.java" target-dir="src/com/thunderhead/" />
        <source-file src="src/android/ThunderheadProvider.java" target-dir="src/com/thunderhead/provider" />
        <framework src="com.thunderhead.android:one-sdk:11.0.2" />
        <framework src="src/android/one.gradle" custom="true" type="gradleReference" />
    </platform>
</plugin>
