<?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="pushwoosh-cordova-plugin" version="7.4.1">

	<name>Pushwoosh</name>

	<description>
		This plugin allows you to send and receive push notifications. Powered by Pushwoosh (www.pushwoosh.com).
	</description>

	<!-- <engines>
			<engine name="cordova" version=">=3.1.0" />
	</engines> -->

	<license>MIT</license>

	<repo>https://github.com/Pushwoosh/pushwoosh-phonegap-plugin</repo>
	<issue>https://github.com/Pushwoosh/pushwoosh-phonegap-plugin/issues</issue>

	<preference name="LOG_LEVEL" default="DEBUG" />
	<preference name="IOS_FOREGROUND_ALERT_TYPE" default="NONE" />
	<preference name="ANDROID_FOREGROUND_PUSH" default="false" />

	<js-module src="www/PushNotification.js" name="PushNotification">
		<clobbers target="plugins.pushNotification" />
	</js-module>

	<!-- android -->
	<platform name="android">
		<config-file>
			<access origin="*.pushwoosh.com" />
		</config-file>

		<config-file target="AndroidManifest.xml" parent="/manifest">
			<!--BEACON-->
			<!--<uses-permission android:name="android.permission.BLUETOOTH" />-->
			<!--<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />-->

			<!--LOCATION-->

			<!--<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />-->
			<!--<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />-->
			<!---->
			<!--<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />-->
		</config-file>

		<config-file target="AndroidManifest.xml" parent="/manifest/application">
			<meta-data android:name="com.pushwoosh.log_level" android:value="$LOG_LEVEL" />
			<meta-data android:name="com.pushwoosh.foreground_push" android:value="$ANDROID_FOREGROUND_PUSH" />

			<meta-data android:name="com.pushwoosh.notification_service_extension" android:value="com.pushwoosh.plugin.pushnotifications.PushwooshNotificationServiceExtension" />

			<meta-data android:name="com.pushwoosh.internal.plugin_provider"	android:value="com.pushwoosh.plugin.internal.PhonegapPluginProvider" />

			<!-- Beacons -->
			<service
				android:name="com.pushwoosh.thirdparty.radiusnetworks.ibeacon.service.IBeaconService"
				android:enabled="true"
				android:exported="true"
				android:isolatedProcess="false"
				android:label="iBeacon" />
			<service
				android:name="com.pushwoosh.thirdparty.radiusnetworks.ibeacon.IBeaconIntentProcessor"
				android:enabled="true" />
			<service android:name="com.pushwoosh.beacon.PushBeaconService" />

			<!-- Location -->
			<meta-data android:name="com.pushwoosh.plugin.location"	android:value="com.pushwoosh.location.LocationPlugin" />

			<service android:name="com.pushwoosh.location.network.GeoLocationServiceApi16" />

			<activity
				android:name="com.pushwoosh.location.internal.utils.ResolutionActivity"
				android:theme="@android:style/Theme.Translucent.NoTitleBar" />

			<service
				android:name="com.pushwoosh.location.network.GeoLocationServiceApi21"
				android:exported="true"
				android:permission="android.permission.BIND_JOB_SERVICE" />

			<receiver android:name="com.pushwoosh.location.geofencer.GeofenceReceiver">
				<intent-filter>
					<action android:name="$PACKAGE_NAME.action.GEOFENCE" />
				</intent-filter>
			</receiver>
		</config-file>

		<config-file target="res/xml/config.xml" parent="/*">
			<feature name="PushNotification">
				<param name="android-package" value="com.pushwoosh.plugin.pushnotifications.PushNotifications" onload="true" />
			</feature>
		</config-file>

		<source-file src="src/android/src/com/pushwoosh/plugin/pushnotifications/PushNotifications.java"
			target-dir="src/com/pushwoosh/plugin/pushnotifications" />

		<source-file src="src/android/src/com/pushwoosh/plugin/pushnotifications/PushwooshNotificationServiceExtension.java"
			target-dir="src/com/pushwoosh/plugin/pushnotifications" />

		<source-file src="src/android/src/com/pushwoosh/plugin/internal/PhonegapPluginProvider.java"
			target-dir="src/com/pushwoosh/plugin/internal" />


		<framework src="com.google.android.gms:play-services-gcm:+" />
		<framework src="com.google.android.gms:play-services-location:+" />

		<framework src="com.google.firebase:firebase-core:+" />
		<framework src="com.google.firebase:firebase-messaging:+" />

		<framework src="com.android.support:support-v4:26.+" />
        <framework src="com.android.support:appcompat-v7:26.+" />
        <framework src="com.android.support:recyclerview-v7:26.+" />
        <framework src="com.android.support:design:26.+" />
        <framework src="com.android.support.constraint:constraint-layout:1.0.2" />
        <framework src="com.github.bumptech.glide:glide:4.3.1" />
        <framework src="org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.60" />
        <framework src="com.pushwoosh:pushwoosh:5.7.2"/>
		<framework src="com.pushwoosh:pushwoosh-amazon:5.7.2"/>
		<framework src="com.pushwoosh:pushwoosh-badge:5.7.2"/>
		<framework src="com.pushwoosh:pushwoosh-gcm:5.7.2"/>
        <framework src="com.pushwoosh:pushwoosh-inbox:5.7.2"/>
        <framework src="com.pushwoosh:pushwoosh-inbox-ui:5.7.2"/>
		<lib-file src="src/android/libs/pushwoosh-beacon_v5.7.2.jar"/>
		<lib-file src="src/android/libs/pushwoosh-location_v5.7.2.jar"/>
	</platform>

	<!-- ios -->
	<platform name="ios">
		<framework src="Security.framework" />
		<framework src="Storekit.framework" />
		<framework src="CoreLocation.framework" />
		<framework src="libstdc++.dylib"/>
		<framework src="libz.dylib"/>
		<config-file target="config.xml" parent="/*">
			<feature name="PushNotification">
				<param name="ios-package" value="PushNotification"/>
			</feature>
		</config-file>

		<config-file>
			<access origin="*.pushwoosh.com" />
		</config-file>

		<config-file target="*-Info.plist" parent="Pushwoosh_LOG_LEVEL">
			<string>$LOG_LEVEL</string>
		</config-file>

		<config-file target="*-Info.plist" parent="Pushwoosh_ALERT_TYPE">
			<string>$IOS_FOREGROUND_ALERT_TYPE</string>
		</config-file>

		<config-file parent="aps-environment" target="*/Entitlements-Debug.plist">
			<string>development</string>
		</config-file>
		<config-file parent="aps-environment" target="*/Entitlements-Release.plist">
			<string>production</string>
		</config-file>

		<header-file src="src/ios/PushNotification.h" target-dir="ios"/>
		<source-file src="src/ios/PushNotification.m" target-dir="ios"/>
		<header-file src="src/ios/Pushwoosh.framework/Versions/A/Headers/PushNotificationManager.h" target-dir="ios"/>
		<header-file src="src/ios/Pushwoosh.framework/Versions/A/Headers/PWGDPRManager.h" target-dir="ios"/>
		<header-file src="src/ios/PWLog.h" target-dir="ios"/>
        <header-file src="src/ios/PushwooshInboxUI.framework/Versions/A/Headers/PushwooshInboxUI.h" target-dir="ios"/>
        <header-file src="src/ios/PushwooshInboxUI.framework/Versions/A/Headers/PWIInboxStyle.h" target-dir="ios"/>
        <header-file src="src/ios/PushwooshInboxUI.framework/Versions/A/Headers/PWIInboxUI.h" target-dir="ios"/>
		<source-file src="src/ios/Pushwoosh.framework/Versions/A/Pushwoosh" framework="true"/>
        <source-file src="src/ios/PushwooshInboxUI.framework/Versions/A/PushwooshInboxUI" framework="true"/>
        <resource-file src="src/ios/PushwooshInboxBundle.bundle" />
	</platform>

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

		<config-file target="config.xml" parent="/*">
			<feature name="PushNotification">
				<param name="wp-package" value="PushNotification"/>
			</feature>
		</config-file>

		<config-file>
			<access origin="*.pushwoosh.com" />
		</config-file>

		<config-file target="Properties/WMAppManifest.xml" parent="/Deployment/App/Capabilities">
			<Capability Name="ID_CAP_PUSH_NOTIFICATION"/>
			<Capability Name="ID_CAP_IDENTITY_DEVICE"/>
		</config-file>

		<source-file src="src/wp8/PushNotification.cs" />

		<framework src="src/wp8/PushSDK/Newtonsoft.Json.dll" custom="true" />
		<framework src="src/wp8/PushSDK/PushSDK.dll" custom="true" />
	</platform>

	<!-- windows -->
	<platform name="windows">
		<js-module src="src/windows/PushwooshPluginProxy.js" name="PushwooshPluginProxy">
			<merges target="" />
		</js-module>
		<framework src="src/windows/PushSDK/Newtonsoft.Json.dll" custom="true" />
		<framework src="src/windows/PushSDK/PushSDK.winmd" custom="true" />
	</platform>
</plugin>
