<?xml version="1.0" encoding="UTF-8"?>

<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0"
    xmlns:android="http://schemas.android.com/apk/res/android" id="@iotize/device-com-wifi.cordova" version="0.0.1-alpha.1">

    <name>@iotize/device-com-wifi.cordova</name>
    <description>Cordova Wifi Manager for Android and iOS</description>
    <license>Apache 2.0</license>
    <keywords>cordova,network,wifi,phonegap</keywords>
    <repo>https://github.com/iotize-sas/device-com-wifi.cordova.git</repo>
    <issue>https://github.com/iotize-sas/device-com-wifi.cordova/issues</issue>

    <js-module src="www/WifiWizard2.js" name="WifiWizard2">
        <clobbers target="window.WifiWizard2" />
    </js-module>

    <!-- ES6 promise polyfill -->
    <dependency id="es6-promise-plugin" version="4.1.0" />
    <dependency id="cordova-plugin-zeroconf" version="1.4.2" />


    <!-- android -->
    <platform name="android">

        <config-file target="AndroidManifest.xml" parent="/*">
            <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
            <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
            <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
            <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
            <uses-permission android:name="android.permission.INTERNET" />
            <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" android:maxSdkVersion="32" />
        </config-file>

        <config-file target="res/xml/config.xml" parent="/*">
            <feature name="WifiWizard2">
                <param name="android-package" value="wifiwizard2.WifiWizard2" />
                <param name="onload" value="true" />
            </feature>
        </config-file>

        <source-file src="src/android/wifiwizard2/WifiWizard2.java" target-dir="src/android/wifiwizard2" />
    </platform>

    <platform name="ios">
        <config-file target="config.xml" parent="/*">
            <feature name="WifiWizard2">
                <param name="ios-package" value="WifiWizard2"/>
            </feature>
        </config-file>

        <!-- frameworks -->
        <framework src="NetworkExtension.framework" />

        <!-- Add HotspotConfiguration & NetworkExtension Capabilities  -->
        <config-file parent="com.apple.developer.networking.HotspotConfiguration" target="*/Entitlements-Debug.plist">
            <true/>
        </config-file>
        <config-file parent="com.apple.developer.networking.HotspotConfiguration" target="*/Entitlements-Release.plist">
            <true/>
        </config-file>
        <config-file parent="com.apple.developer.networking.networkextension" target="*/Entitlements-Debug.plist">
            <array/>
        </config-file>
        <config-file parent="com.apple.developer.networking.networkextension" target="*/Entitlements-Release.plist">
            <array/>
        </config-file>
        <config-file parent="com.apple.developer.networking.wifi-info" target="*/Entitlements-Debug.plist">
            <true/>
        </config-file>
        <config-file parent="com.apple.developer.networking.wifi-info" target="*/Entitlements-Release.plist">
            <true/>
        </config-file>

        <header-file src="src/ios/WifiWizard2.h" />
        <source-file src="src/ios/WifiWizard2.m" />
        <framework src="SystemConfiguration.framework" />

        <!-- Declare Bonjour services-->
        <config-file parent="NSBonjourServices" target="*-Info.plist">
            <array>
                <string>_tapm2m._tcp.</string>
            </array>
        </config-file>
        <!-- Needed network usage description-->
        <config-file parent="NSLocalNetworkUsageDescription" target="*-Info.plist">
            <string>Discover IoTize compatible devices over Bonjour service.</string>
        </config-file>

    </platform>

</plugin>
