diff options
Diffstat (limited to 'StoneIsland/plugins/cordova-plugin-firebase/src')
60 files changed, 0 insertions, 4554 deletions
diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/android/FirebasePlugin.java b/StoneIsland/plugins/cordova-plugin-firebase/src/android/FirebasePlugin.java deleted file mode 100755 index 7e4431df..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/android/FirebasePlugin.java +++ /dev/null @@ -1,601 +0,0 @@ -package org.apache.cordova.firebase; - -import android.content.Context; -import android.content.Intent; -import android.content.SharedPreferences; -import android.os.Bundle; -import android.support.v4.app.NotificationManagerCompat; -import android.util.Base64; -import android.util.Log; -import com.google.android.gms.tasks.OnCompleteListener; -import com.google.android.gms.tasks.OnFailureListener; -import com.google.android.gms.tasks.Task; -import com.google.firebase.analytics.FirebaseAnalytics; -import com.google.firebase.iid.FirebaseInstanceId; -import com.google.firebase.messaging.FirebaseMessaging; -import com.google.firebase.remoteconfig.FirebaseRemoteConfig; -import com.google.firebase.remoteconfig.FirebaseRemoteConfigInfo; -import com.google.firebase.remoteconfig.FirebaseRemoteConfigSettings; -import com.google.firebase.remoteconfig.FirebaseRemoteConfigValue; -import com.google.firebase.crash.FirebaseCrash; -import me.leolin.shortcutbadger.ShortcutBadger; -import org.apache.cordova.CallbackContext; -import org.apache.cordova.CordovaPlugin; -import org.apache.cordova.PluginResult; -import org.json.JSONArray; -import org.json.JSONException; -import org.json.JSONObject; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; -import java.util.Set; - -public class FirebasePlugin extends CordovaPlugin { - - private FirebaseAnalytics mFirebaseAnalytics; - private final String TAG = "FirebasePlugin"; - protected static final String KEY = "badge"; - - private static boolean inBackground = true; - private static ArrayList<Bundle> notificationStack = null; - private static CallbackContext notificationCallbackContext; - private static CallbackContext tokenRefreshCallbackContext; - - @Override - protected void pluginInitialize() { - final Context context = this.cordova.getActivity().getApplicationContext(); - final Bundle extras = this.cordova.getActivity().getIntent().getExtras(); - this.cordova.getThreadPool().execute(new Runnable() { - public void run() { - Log.d(TAG, "Starting Firebase plugin"); - mFirebaseAnalytics = FirebaseAnalytics.getInstance(context); - mFirebaseAnalytics.setAnalyticsCollectionEnabled(true); - if (extras != null && extras.size() > 1) { - if (FirebasePlugin.notificationStack == null) { - FirebasePlugin.notificationStack = new ArrayList<Bundle>(); - } - if (extras.containsKey("google.message_id")) { - extras.putBoolean("tap", true); - notificationStack.add(extras); - } - } - } - }); - } - - @Override - public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException { - if (action.equals("getInstanceId")) { - this.getInstanceId(callbackContext); - return true; - } else if (action.equals("getToken")) { - this.getToken(callbackContext); - return true; - } else if (action.equals("hasPermission")) { - this.hasPermission(callbackContext); - return true; - } else if (action.equals("setBadgeNumber")) { - this.setBadgeNumber(callbackContext, args.getInt(0)); - return true; - } else if (action.equals("getBadgeNumber")) { - this.getBadgeNumber(callbackContext); - return true; - } else if (action.equals("subscribe")) { - this.subscribe(callbackContext, args.getString(0)); - return true; - } else if (action.equals("unsubscribe")) { - this.unsubscribe(callbackContext, args.getString(0)); - return true; - } else if (action.equals("unregister")) { - this.unregister(callbackContext); - return true; - } else if (action.equals("onNotificationOpen")) { - this.onNotificationOpen(callbackContext); - return true; - } else if (action.equals("onTokenRefresh")) { - this.onTokenRefresh(callbackContext); - return true; - } else if (action.equals("logEvent")) { - this.logEvent(callbackContext, args.getString(0), args.getJSONObject(1)); - return true; - } else if (action.equals("logError")) { - this.logError(callbackContext, args.getString(0)); - return true; - } else if (action.equals("setScreenName")) { - this.setScreenName(callbackContext, args.getString(0)); - return true; - } else if (action.equals("setUserId")) { - this.setUserId(callbackContext, args.getString(0)); - return true; - } else if (action.equals("setUserProperty")) { - this.setUserProperty(callbackContext, args.getString(0), args.getString(1)); - return true; - } else if (action.equals("activateFetched")) { - this.activateFetched(callbackContext); - return true; - } else if (action.equals("fetch")) { - if (args.length() > 0) this.fetch(callbackContext, args.getLong(0)); - else this.fetch(callbackContext); - return true; - } else if (action.equals("getByteArray")) { - if (args.length() > 1) this.getByteArray(callbackContext, args.getString(0), args.getString(1)); - else this.getByteArray(callbackContext, args.getString(0), null); - return true; - } else if (action.equals("getValue")) { - if (args.length() > 1) this.getValue(callbackContext, args.getString(0), args.getString(1)); - else this.getValue(callbackContext, args.getString(0), null); - return true; - } else if (action.equals("getInfo")) { - this.getInfo(callbackContext); - return true; - } else if (action.equals("setConfigSettings")) { - this.setConfigSettings(callbackContext, args.getJSONObject(0)); - return true; - } else if (action.equals("setDefaults")) { - if (args.length() > 1) this.setDefaults(callbackContext, args.getJSONObject(0), args.getString(1)); - else this.setDefaults(callbackContext, args.getJSONObject(0), null); - return true; - } - return false; - } - - @Override - public void onPause(boolean multitasking) { - FirebasePlugin.inBackground = true; - } - - @Override - public void onResume(boolean multitasking) { - FirebasePlugin.inBackground = false; - } - - @Override - public void onReset() { - FirebasePlugin.notificationCallbackContext = null; - FirebasePlugin.tokenRefreshCallbackContext = null; - } - - private void onNotificationOpen(final CallbackContext callbackContext) { - FirebasePlugin.notificationCallbackContext = callbackContext; - if (FirebasePlugin.notificationStack != null) { - for (Bundle bundle : FirebasePlugin.notificationStack) { - FirebasePlugin.sendNotification(bundle); - } - FirebasePlugin.notificationStack.clear(); - } - } - - private void onTokenRefresh(final CallbackContext callbackContext) { - FirebasePlugin.tokenRefreshCallbackContext = callbackContext; - - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - String currentToken = FirebaseInstanceId.getInstance().getToken(); - - if (currentToken != null) { - FirebasePlugin.sendToken(currentToken); - } - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - public static void sendNotification(Bundle bundle) { - if (!FirebasePlugin.hasNotificationsCallback()) { - if (FirebasePlugin.notificationStack == null) { - FirebasePlugin.notificationStack = new ArrayList<Bundle>(); - } - notificationStack.add(bundle); - return; - } - final CallbackContext callbackContext = FirebasePlugin.notificationCallbackContext; - if (callbackContext != null && bundle != null) { - JSONObject json = new JSONObject(); - Set<String> keys = bundle.keySet(); - for (String key : keys) { - try { - json.put(key, bundle.get(key)); - } catch (JSONException e) { - callbackContext.error(e.getMessage()); - return; - } - } - - PluginResult pluginresult = new PluginResult(PluginResult.Status.OK, json); - pluginresult.setKeepCallback(true); - callbackContext.sendPluginResult(pluginresult); - } - } - - public static void sendToken(String token) { - if (FirebasePlugin.tokenRefreshCallbackContext == null) { - return; - } - final CallbackContext callbackContext = FirebasePlugin.tokenRefreshCallbackContext; - if (callbackContext != null && token != null) { - PluginResult pluginresult = new PluginResult(PluginResult.Status.OK, token); - pluginresult.setKeepCallback(true); - callbackContext.sendPluginResult(pluginresult); - } - } - - public static boolean inBackground() { - return FirebasePlugin.inBackground; - } - - public static boolean hasNotificationsCallback() { - return FirebasePlugin.notificationCallbackContext != null; - } - - @Override - public void onNewIntent(Intent intent) { - super.onNewIntent(intent); - final Bundle data = intent.getExtras(); - if (data != null && data.containsKey("google.message_id")) { - data.putBoolean("tap", true); - FirebasePlugin.sendNotification(data); - } - } - - // DEPRECTED - alias of getToken - private void getInstanceId(final CallbackContext callbackContext) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - String token = FirebaseInstanceId.getInstance().getToken(); - callbackContext.success(token); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void getToken(final CallbackContext callbackContext) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - String token = FirebaseInstanceId.getInstance().getToken(); - callbackContext.success(token); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void hasPermission(final CallbackContext callbackContext) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - Context context = cordova.getActivity(); - NotificationManagerCompat notificationManagerCompat = NotificationManagerCompat.from(context); - boolean areNotificationsEnabled = notificationManagerCompat.areNotificationsEnabled(); - JSONObject object = new JSONObject(); - object.put("isEnabled", areNotificationsEnabled); - callbackContext.success(object); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void setBadgeNumber(final CallbackContext callbackContext, final int number) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - Context context = cordova.getActivity(); - SharedPreferences.Editor editor = context.getSharedPreferences(KEY, Context.MODE_PRIVATE).edit(); - editor.putInt(KEY, number); - editor.apply(); - ShortcutBadger.applyCount(context, number); - callbackContext.success(); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void getBadgeNumber(final CallbackContext callbackContext) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - Context context = cordova.getActivity(); - SharedPreferences settings = context.getSharedPreferences(KEY, Context.MODE_PRIVATE); - int number = settings.getInt(KEY, 0); - callbackContext.success(number); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void subscribe(final CallbackContext callbackContext, final String topic) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - FirebaseMessaging.getInstance().subscribeToTopic(topic); - callbackContext.success(); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void unsubscribe(final CallbackContext callbackContext, final String topic) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - FirebaseMessaging.getInstance().unsubscribeFromTopic(topic); - callbackContext.success(); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void unregister(final CallbackContext callbackContext) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - FirebaseInstanceId.getInstance().deleteInstanceId(); - String currentToken = FirebaseInstanceId.getInstance().getToken(); - if (currentToken != null) { - FirebasePlugin.sendToken(currentToken); - } - callbackContext.success(); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void logEvent(final CallbackContext callbackContext, final String name, final JSONObject params) throws JSONException { - final Bundle bundle = new Bundle(); - Iterator iter = params.keys(); - while (iter.hasNext()) { - String key = (String) iter.next(); - Object value = params.get(key); - - if (value instanceof Integer || value instanceof Double) { - bundle.putFloat(key, ((Number) value).floatValue()); - } else { - bundle.putString(key, value.toString()); - } - } - - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - mFirebaseAnalytics.logEvent(name, bundle); - callbackContext.success(); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void logError(final CallbackContext callbackContext, final String message) throws JSONException { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - FirebaseCrash.report(new Exception(message)); - callbackContext.success(1); - } catch (Exception e) { - FirebaseCrash.log(e.getMessage()); - e.printStackTrace(); - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void setScreenName(final CallbackContext callbackContext, final String name) { - // This must be called on the main thread - cordova.getActivity().runOnUiThread(new Runnable() { - public void run() { - try { - mFirebaseAnalytics.setCurrentScreen(cordova.getActivity(), name, null); - callbackContext.success(); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void setUserId(final CallbackContext callbackContext, final String id) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - mFirebaseAnalytics.setUserId(id); - callbackContext.success(); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void setUserProperty(final CallbackContext callbackContext, final String name, final String value) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - mFirebaseAnalytics.setUserProperty(name, value); - callbackContext.success(); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void activateFetched(final CallbackContext callbackContext) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - final boolean activated = FirebaseRemoteConfig.getInstance().activateFetched(); - callbackContext.success(String.valueOf(activated)); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void fetch(CallbackContext callbackContext) { - fetch(callbackContext, FirebaseRemoteConfig.getInstance().fetch()); - } - - private void fetch(CallbackContext callbackContext, long cacheExpirationSeconds) { - fetch(callbackContext, FirebaseRemoteConfig.getInstance().fetch(cacheExpirationSeconds)); - } - - private void fetch(final CallbackContext callbackContext, final Task<Void> task) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - task.addOnCompleteListener(new OnCompleteListener<Void>() { - @Override - public void onComplete(Task<Void> task) { - callbackContext.success(); - } - }).addOnFailureListener(new OnFailureListener() { - @Override - public void onFailure(Exception e) { - callbackContext.error(e.getMessage()); - } - }); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void getByteArray(final CallbackContext callbackContext, final String key, final String namespace) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - byte[] bytes = namespace == null ? FirebaseRemoteConfig.getInstance().getByteArray(key) - : FirebaseRemoteConfig.getInstance().getByteArray(key, namespace); - JSONObject object = new JSONObject(); - object.put("base64", Base64.encodeToString(bytes, Base64.DEFAULT)); - object.put("array", new JSONArray(bytes)); - callbackContext.success(object); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void getValue(final CallbackContext callbackContext, final String key, final String namespace) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - FirebaseRemoteConfigValue value = namespace == null ? FirebaseRemoteConfig.getInstance().getValue(key) - : FirebaseRemoteConfig.getInstance().getValue(key, namespace); - callbackContext.success(value.asString()); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void getInfo(final CallbackContext callbackContext) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - FirebaseRemoteConfigInfo remoteConfigInfo = FirebaseRemoteConfig.getInstance().getInfo(); - JSONObject info = new JSONObject(); - - JSONObject settings = new JSONObject(); - settings.put("developerModeEnabled", remoteConfigInfo.getConfigSettings().isDeveloperModeEnabled()); - info.put("configSettings", settings); - - info.put("fetchTimeMillis", remoteConfigInfo.getFetchTimeMillis()); - info.put("lastFetchStatus", remoteConfigInfo.getLastFetchStatus()); - - callbackContext.success(info); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void setConfigSettings(final CallbackContext callbackContext, final JSONObject config) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - boolean devMode = config.getBoolean("developerModeEnabled"); - FirebaseRemoteConfigSettings.Builder settings = new FirebaseRemoteConfigSettings.Builder() - .setDeveloperModeEnabled(devMode); - FirebaseRemoteConfig.getInstance().setConfigSettings(settings.build()); - callbackContext.success(); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private void setDefaults(final CallbackContext callbackContext, final JSONObject defaults, final String namespace) { - cordova.getThreadPool().execute(new Runnable() { - public void run() { - try { - if (namespace == null) - FirebaseRemoteConfig.getInstance().setDefaults(defaultsToMap(defaults)); - else - FirebaseRemoteConfig.getInstance().setDefaults(defaultsToMap(defaults), namespace); - callbackContext.success(); - } catch (Exception e) { - callbackContext.error(e.getMessage()); - } - } - }); - } - - private static Map<String, Object> defaultsToMap(JSONObject object) throws JSONException { - final Map<String, Object> map = new HashMap<String, Object>(); - - for (Iterator<String> keys = object.keys(); keys.hasNext(); ) { - String key = keys.next(); - Object value = object.get(key); - - if (value instanceof Integer) { - //setDefaults() should take Longs - value = new Long((Integer) value); - } else if (value instanceof JSONArray) { - JSONArray array = (JSONArray) value; - if (array.length() == 1 && array.get(0) instanceof String) { - //parse byte[] as Base64 String - value = Base64.decode(array.getString(0), Base64.DEFAULT); - } else { - //parse byte[] as numeric array - byte[] bytes = new byte[array.length()]; - for (int i = 0; i < array.length(); i++) - bytes[i] = (byte) array.getInt(i); - value = bytes; - } - } - - map.put(key, value); - } - return map; - } -} diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/android/FirebasePluginInstanceIDService.java b/StoneIsland/plugins/cordova-plugin-firebase/src/android/FirebasePluginInstanceIDService.java deleted file mode 100755 index 96140f02..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/android/FirebasePluginInstanceIDService.java +++ /dev/null @@ -1,26 +0,0 @@ -package org.apache.cordova.firebase; - -import android.util.Log; - -import com.google.firebase.iid.FirebaseInstanceId; -import com.google.firebase.iid.FirebaseInstanceIdService; - - -public class FirebasePluginInstanceIDService extends FirebaseInstanceIdService { - - private static final String TAG = "FirebasePlugin"; - - /** - * Called if InstanceID token is updated. This may occur if the security of - * the previous token had been compromised. Note that this is called when the InstanceID token - * is initially generated so this is where you would retrieve the token. - */ - @Override - public void onTokenRefresh() { - // Get updated InstanceID token. - String refreshedToken = FirebaseInstanceId.getInstance().getToken(); - Log.d(TAG, "Refreshed token: " + refreshedToken); - - FirebasePlugin.sendToken(refreshedToken); - } -} diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/android/FirebasePluginMessagingService.java b/StoneIsland/plugins/cordova-plugin-firebase/src/android/FirebasePluginMessagingService.java deleted file mode 100755 index a42ce60e..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/android/FirebasePluginMessagingService.java +++ /dev/null @@ -1,127 +0,0 @@ -package org.apache.cordova.firebase; - -import android.app.NotificationManager; -import android.app.PendingIntent; -import android.content.Context; -import android.content.Intent; -import android.media.RingtoneManager; -import android.net.Uri; -import android.os.Bundle; -import android.support.v4.app.NotificationCompat; -import android.util.Log; -import android.app.Notification; -import android.text.TextUtils; - -import com.google.firebase.messaging.FirebaseMessagingService; -import com.google.firebase.messaging.RemoteMessage; - -import java.util.Map; -import java.util.Random; - -public class FirebasePluginMessagingService extends FirebaseMessagingService { - - private static final String TAG = "FirebasePlugin"; - - /** - * Called when message is received. - * - * @param remoteMessage Object representing the message received from Firebase Cloud Messaging. - */ - @Override - public void onMessageReceived(RemoteMessage remoteMessage) { - // [START_EXCLUDE] - // There are two types of messages data messages and notification messages. Data messages are handled - // here in onMessageReceived whether the app is in the foreground or background. Data messages are the type - // traditionally used with GCM. Notification messages are only received here in onMessageReceived when the app - // is in the foreground. When the app is in the background an automatically generated notification is displayed. - // When the user taps on the notification they are returned to the app. Messages containing both notification - // and data payloads are treated as notification messages. The Firebase console always sends notification - // messages. For more see: https://firebase.google.com/docs/cloud-messaging/concept-options - // [END_EXCLUDE] - - // TODO(developer): Handle FCM messages here. - // Not getting messages here? See why this may be: https://goo.gl/39bRNJ - String title; - String text; - String id; - if (remoteMessage.getNotification() != null) { - title = remoteMessage.getNotification().getTitle(); - text = remoteMessage.getNotification().getBody(); - id = remoteMessage.getMessageId(); - } else { - title = remoteMessage.getData().get("title"); - text = remoteMessage.getData().get("text"); - id = remoteMessage.getData().get("id"); - } - - if(TextUtils.isEmpty(id)){ - Random rand = new Random(); - int n = rand.nextInt(50) + 1; - id = Integer.toString(n); - } - - Log.d(TAG, "From: " + remoteMessage.getFrom()); - Log.d(TAG, "Notification Message id: " + id); - Log.d(TAG, "Notification Message Title: " + title); - Log.d(TAG, "Notification Message Body/Text: " + text); - - // TODO: Add option to developer to configure if show notification when app on foreground - if (!TextUtils.isEmpty(text) || !TextUtils.isEmpty(title) || (!remoteMessage.getData().isEmpty())) { - boolean showNotification = (FirebasePlugin.inBackground() || !FirebasePlugin.hasNotificationsCallback()) && (!TextUtils.isEmpty(text) || !TextUtils.isEmpty(title)); - sendNotification(id, title, text, remoteMessage.getData(), showNotification); - } - } - - private void sendNotification(String id, String title, String messageBody, Map<String, String> data, boolean showNotification) { - Bundle bundle = new Bundle(); - for (String key : data.keySet()) { - bundle.putString(key, data.get(key)); - } - if (showNotification) { - Intent intent = new Intent(this, OnNotificationOpenReceiver.class); - intent.putExtras(bundle); - PendingIntent pendingIntent = PendingIntent.getBroadcast(this, id.hashCode(), intent, - PendingIntent.FLAG_UPDATE_CURRENT); - - Uri defaultSoundUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); - NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this) - .setContentTitle(title) - .setContentText(messageBody) - .setVisibility(NotificationCompat.VISIBILITY_PUBLIC) - .setStyle(new NotificationCompat.BigTextStyle().bigText(messageBody)) - .setAutoCancel(true) - .setSound(defaultSoundUri) - .setContentIntent(pendingIntent); - - int resID = getResources().getIdentifier("notification_icon", "drawable", getPackageName()); - if (resID != 0) { - notificationBuilder.setSmallIcon(resID); - } else { - notificationBuilder.setSmallIcon(getApplicationInfo().icon); - } - - if(android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) - { - int accentID = getResources().getIdentifier("accent", "color", getPackageName()); - notificationBuilder.setColor(getResources().getColor(accentID, null)); - } - - Notification notification = notificationBuilder.build(); - if(android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP){ - int iconID = android.R.id.icon; - int notiID = getResources().getIdentifier("notification_big", "drawable", getPackageName()); - if (notification.contentView != null) { - notification.contentView.setImageViewResource(iconID, notiID); - } - } - NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); - - notificationManager.notify(id.hashCode(), notification); - } else { - bundle.putBoolean("tap", false); - bundle.putString("title", title); - bundle.putString("body", messageBody); - FirebasePlugin.sendNotification(bundle); - } - } -} diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/android/OnNotificationOpenReceiver.java b/StoneIsland/plugins/cordova-plugin-firebase/src/android/OnNotificationOpenReceiver.java deleted file mode 100644 index a7f63757..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/android/OnNotificationOpenReceiver.java +++ /dev/null @@ -1,24 +0,0 @@ -package org.apache.cordova.firebase; - -import android.app.PendingIntent; -import android.content.BroadcastReceiver; -import android.content.Context; -import android.content.Intent; -import android.content.pm.PackageManager; -import android.os.Bundle; - -public class OnNotificationOpenReceiver extends BroadcastReceiver { - - @Override - public void onReceive(Context context, Intent intent) { - PackageManager pm = context.getPackageManager(); - Intent launchIntent = pm.getLaunchIntentForPackage(context.getPackageName()); - - launchIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); - Bundle data = intent.getExtras(); - data.putBoolean("tap", true); - FirebasePlugin.sendNotification(data); - launchIntent.putExtras(data); - context.startActivity(launchIntent); - } -} diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/android/build-extras.gradle b/StoneIsland/plugins/cordova-plugin-firebase/src/android/build-extras.gradle deleted file mode 100755 index 67b387f5..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/android/build-extras.gradle +++ /dev/null @@ -1 +0,0 @@ -apply plugin: 'com.google.gms.google-services'
\ No newline at end of file diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/android/build.gradle b/StoneIsland/plugins/cordova-plugin-firebase/src/android/build.gradle deleted file mode 100755 index d5cb4edd..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/android/build.gradle +++ /dev/null @@ -1,15 +0,0 @@ -buildscript {
- repositories {
- mavenCentral()
- }
- dependencies {
- classpath 'com.google.gms:google-services:3.0.0'
- }
-}
-repositories {
- mavenCentral()
-}
-dependencies {
- compile 'me.leolin:ShortcutBadger:1.1.4@aar'
- compile 'com.google.firebase:firebase-crash:+'
-}
diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/android/colors.xml b/StoneIsland/plugins/cordova-plugin-firebase/src/android/colors.xml deleted file mode 100644 index 6f1665a5..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/android/colors.xml +++ /dev/null @@ -1,6 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<resources> - <color name="primary">#FFFFFF00</color> - <color name="primary_dark">#FF220022</color> - <color name="accent">#FF00FFFF</color> -</resources>
\ No newline at end of file diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/android/google-services.json b/StoneIsland/plugins/cordova-plugin-firebase/src/android/google-services.json deleted file mode 100644 index e69de29b..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/android/google-services.json +++ /dev/null diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/AppDelegate+FirebasePlugin.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/AppDelegate+FirebasePlugin.h deleted file mode 100755 index 210cbb65..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/AppDelegate+FirebasePlugin.h +++ /dev/null @@ -1,5 +0,0 @@ -#import "AppDelegate.h"
-
-@interface AppDelegate (FirebasePlugin)
-@property (nonatomic, strong) NSNumber *applicationInBackground;
-@end
diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/AppDelegate+FirebasePlugin.m b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/AppDelegate+FirebasePlugin.m deleted file mode 100755 index c4c45778..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/AppDelegate+FirebasePlugin.m +++ /dev/null @@ -1,132 +0,0 @@ -#import "AppDelegate+FirebasePlugin.h"
-#import "FirebasePlugin.h"
-#import "Firebase.h"
-#import <objc/runtime.h>
-
-#if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
-@import UserNotifications;
-#endif
-
-// Implement UNUserNotificationCenterDelegate to receive display notification via APNS for devices
-// running iOS 10 and above. Implement FIRMessagingDelegate to receive data message via FCM for
-// devices running iOS 10 and above.
-#if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
-@interface AppDelegate () <UNUserNotificationCenterDelegate, FIRMessagingDelegate>
-@end
-#endif
-
-#define kApplicationInBackgroundKey @"applicationInBackground"
-
-@implementation AppDelegate (FirebasePlugin)
-
-+ (void)load {
- Method original = class_getInstanceMethod(self, @selector(application:didFinishLaunchingWithOptions:));
- Method swizzled = class_getInstanceMethod(self, @selector(application:swizzledDidFinishLaunchingWithOptions:));
- method_exchangeImplementations(original, swizzled);
-}
-
-- (void)setApplicationInBackground:(NSNumber *)applicationInBackground {
- objc_setAssociatedObject(self, kApplicationInBackgroundKey, applicationInBackground, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
-}
-
-- (NSNumber *)applicationInBackground {
- return objc_getAssociatedObject(self, kApplicationInBackgroundKey);
-}
-
-- (BOOL)application:(UIApplication *)application swizzledDidFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
- [self application:application swizzledDidFinishLaunchingWithOptions:launchOptions];
-
- if(![FIRApp defaultApp]) {
- [FIRApp configure];
- }
-
- [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(tokenRefreshNotification:)
- name:kFIRInstanceIDTokenRefreshNotification object:nil];
-
- self.applicationInBackground = @(YES);
-
- return YES;
-}
-
-- (void)applicationDidBecomeActive:(UIApplication *)application {
- [self connectToFcm];
- self.applicationInBackground = @(NO);
-}
-
-- (void)applicationDidEnterBackground:(UIApplication *)application {
- [[FIRMessaging messaging] disconnect];
- self.applicationInBackground = @(YES);
- NSLog(@"Disconnected from FCM");
-}
-
-- (void)tokenRefreshNotification:(NSNotification *)notification {
- // Note that this callback will be fired everytime a new token is generated, including the first
- // time. So if you need to retrieve the token as soon as it is available this is where that
- // should be done.
- NSString *refreshedToken = [[FIRInstanceID instanceID] token];
- NSLog(@"InstanceID token: %@", refreshedToken);
-
- // Connect to FCM since connection may have failed when attempted before having a token.
- [self connectToFcm];
-
- [FirebasePlugin.firebasePlugin sendToken:refreshedToken];
-}
-
-- (void)connectToFcm {
- [[FIRMessaging messaging] connectWithCompletion:^(NSError * _Nullable error) {
- if (error != nil) {
- NSLog(@"Unable to connect to FCM. %@", error);
- } else {
- NSLog(@"Connected to FCM.");
- NSString *refreshedToken = [[FIRInstanceID instanceID] token];
- NSLog(@"InstanceID token: %@", refreshedToken);
- }
- }];
-}
-
-- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
- NSDictionary *mutableUserInfo = [userInfo mutableCopy];
-
- [mutableUserInfo setValue:self.applicationInBackground forKey:@"tap"];
-
- // Pring full message.
- NSLog(@"%@", mutableUserInfo);
-
- [FirebasePlugin.firebasePlugin sendNotification:mutableUserInfo];
-}
-
-- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
- fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
-
- NSDictionary *mutableUserInfo = [userInfo mutableCopy];
-
- [mutableUserInfo setValue:self.applicationInBackground forKey:@"tap"];
-
- // Pring full message.
- NSLog(@"%@", mutableUserInfo);
-
- [FirebasePlugin.firebasePlugin sendNotification:mutableUserInfo];
-}
-
-#if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
-- (void)userNotificationCenter:(UNUserNotificationCenter *)center
- willPresentNotification:(UNNotification *)notification
- withCompletionHandler:(void (^)(UNNotificationPresentationOptions))completionHandler {
- NSDictionary *mutableUserInfo = [notification.request.content.userInfo mutableCopy];
-
- [mutableUserInfo setValue:self.applicationInBackground forKey:@"tap"];
-
- // Pring full message.
- NSLog(@"%@", mutableUserInfo);
-
- [FirebasePlugin.firebasePlugin sendNotification:mutableUserInfo];
-}
-
-// Receive data message on iOS 10 devices.
-- (void)applicationReceivedRemoteMessage:(FIRMessagingRemoteMessage *)remoteMessage {
- // Print full message
- NSLog(@"%@", [remoteMessage appData]);
-}
-#endif
-
-@end
diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/FirebaseAnalytics b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/FirebaseAnalytics Binary files differdeleted file mode 100755 index 61f61cd1..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/FirebaseAnalytics +++ /dev/null diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h deleted file mode 100755 index e3ff4c12..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h +++ /dev/null @@ -1,57 +0,0 @@ -#import <Foundation/Foundation.h> - -#import "FIRAnalytics.h" - -/** - * Provides App Delegate handlers to be used in your App Delegate. - * - * To save time integrating Firebase Analytics in an application, Firebase Analytics does not - * require delegation implementation from the AppDelegate. Instead this is automatically done by - * Firebase Analytics. Should you choose instead to delegate manually, you can turn off the App - * Delegate Proxy by adding FirebaseAppDelegateProxyEnabled into your app's Info.plist and setting - * it to NO, and adding the methods in this category to corresponding delegation handlers. - * - * To handle Universal Links, you must return YES in - * [UIApplicationDelegate application:didFinishLaunchingWithOptions:]. - */ -@interface FIRAnalytics (AppDelegate) - -/** - * Handles events related to a URL session that are waiting to be processed. - * - * For optimal use of Firebase Analytics, call this method from the - * [UIApplicationDelegate application:handleEventsForBackgroundURLSession:completionHandler] - * method of the app delegate in your app. - * - * @param identifier The identifier of the URL session requiring attention. - * @param completionHandler The completion handler to call when you finish processing the events. - * Calling this completion handler lets the system know that your app's user interface is - * updated and a new snapshot can be taken. - */ -+ (void)handleEventsForBackgroundURLSession:(NSString *)identifier - completionHandler:(void (^)(void))completionHandler; - -/** - * Handles the event when the app is launched by a URL. - * - * Call this method from [UIApplicationDelegate application:openURL:options:] (on iOS 9.0 and - * above), or [UIApplicationDelegate application:openURL:sourceApplication:annotation:] (on iOS 8.x - * and below) in your app. - * - * @param url The URL resource to open. This resource can be a network resource or a file. - */ -+ (void)handleOpenURL:(NSURL *)url; - -/** - * Handles the event when the app receives data associated with user activity that includes a - * Universal Link (on iOS 9.0 and above). - * - * Call this method from [UIApplication continueUserActivity:restorationHandler:] in your app - * delegate (on iOS 9.0 and above). - * - * @param userActivity The activity object containing the data associated with the task the user - * was performing. - */ -+ (void)handleUserActivity:(id)userActivity; - -@end diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRAnalytics.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRAnalytics.h deleted file mode 100755 index f5023f57..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRAnalytics.h +++ /dev/null @@ -1,102 +0,0 @@ -#import <Foundation/Foundation.h> - -#import "FIREventNames.h" -#import "FIRParameterNames.h" -#import "FIRUserPropertyNames.h" - -NS_ASSUME_NONNULL_BEGIN - -/// The top level Firebase Analytics singleton that provides methods for logging events and setting -/// user properties. See <a href="http://goo.gl/gz8SLz">the developer guides</a> for general -/// information on using Firebase Analytics in your apps. -@interface FIRAnalytics : NSObject - -/// Logs an app event. The event can have up to 25 parameters. Events with the same name must have -/// the same parameters. Up to 500 event names are supported. Using predefined events and/or -/// parameters is recommended for optimal reporting. -/// -/// The following event names are reserved and cannot be used: -/// <ul> -/// <li>app_clear_data</li> -/// <li>app_remove</li> -/// <li>app_update</li> -/// <li>error</li> -/// <li>first_open</li> -/// <li>in_app_purchase</li> -/// <li>notification_dismiss</li> -/// <li>notification_foreground</li> -/// <li>notification_open</li> -/// <li>notification_receive</li> -/// <li>os_update</li> -/// <li>session_start</li> -/// <li>user_engagement</li> -/// </ul> -/// -/// @param name The name of the event. Should contain 1 to 40 alphanumeric characters or -/// underscores. The name must start with an alphabetic character. Some event names are -/// reserved. See FIREventNames.h for the list of reserved event names. The "firebase_" prefix -/// is reserved and should not be used. Note that event names are case-sensitive and that -/// logging two events whose names differ only in case will result in two distinct events. -/// @param parameters The dictionary of event parameters. Passing nil indicates that the event has -/// no parameters. Parameter names can be up to 40 characters long and must start with an -/// alphabetic character and contain only alphanumeric characters and underscores. Only NSString -/// and NSNumber (signed 64-bit integer and 64-bit floating-point number) parameter types are -/// supported. NSString parameter values can be up to 100 characters long. The "firebase_" -/// prefix is reserved and should not be used for parameter names. -+ (void)logEventWithName:(NSString *)name - parameters:(nullable NSDictionary<NSString *, NSObject *> *)parameters; - -/// Sets a user property to a given value. Up to 25 user property names are supported. Once set, -/// user property values persist throughout the app lifecycle and across sessions. -/// -/// The following user property names are reserved and cannot be used: -/// <ul> -/// <li>first_open_time</li> -/// <li>last_deep_link_referrer</li> -/// <li>user_id</li> -/// </ul> -/// -/// @param value The value of the user property. Values can be up to 36 characters long. Setting the -/// value to nil removes the user property. -/// @param name The name of the user property to set. Should contain 1 to 24 alphanumeric characters -/// or underscores and must start with an alphabetic character. The "firebase_" prefix is -/// reserved and should not be used for user property names. -+ (void)setUserPropertyString:(nullable NSString *)value forName:(NSString *)name; - -/// Sets the user ID property. This feature must be used in accordance with -/// <a href="https://www.google.com/policies/privacy">Google's Privacy Policy</a> -/// -/// @param userID The user ID to ascribe to the user of this app on this device, which must be -/// non-empty and no more than 36 characters long. Setting userID to nil removes the user ID. -+ (void)setUserID:(nullable NSString *)userID; - -/// Sets the current screen name, which specifies the current visual context in your app. This helps -/// identify the areas in your app where users spend their time and how they interact with your app. -/// -/// Note that screen reporting is enabled automatically and records the class name of the current -/// UIViewController for you without requiring you to call this method. If you implement -/// viewDidAppear in your UIViewController but do not call [super viewDidAppear:], that screen class -/// will not be automatically tracked. The class name can optionally be overridden by calling this -/// method in the viewDidAppear callback of your UIViewController and specifying the -/// screenClassOverride parameter. -/// -/// If your app does not use a distinct UIViewController for each screen, you should call this -/// method and specify a distinct screenName each time a new screen is presented to the user. -/// -/// The screen name and screen class remain in effect until the current UIViewController changes or -/// a new call to setScreenName:screenClass: is made. -/// -/// @param screenName The name of the current screen. Should contain 1 to 100 characters. Set to nil -/// to clear the current screen name. -/// @param screenClassOverride The name of the screen class. Should contain 1 to 100 characters. By -/// default this is the class name of the current UIViewController. Set to nil to revert to the -/// default class name. -+ (void)setScreenName:(nullable NSString *)screenName - screenClass:(nullable NSString *)screenClassOverride; - -/// The unique ID for this instance of the application. -+ (NSString *)appInstanceID; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRAnalyticsConfiguration.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRAnalyticsConfiguration.h deleted file mode 100755 index dc227a4c..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRAnalyticsConfiguration.h +++ /dev/null @@ -1 +0,0 @@ -#import <FirebaseCore/FIRAnalyticsConfiguration.h> diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRApp.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRApp.h deleted file mode 100755 index de24da17..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRApp.h +++ /dev/null @@ -1 +0,0 @@ -#import <FirebaseCore/FIRApp.h> diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRConfiguration.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRConfiguration.h deleted file mode 100755 index be2ff7bf..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRConfiguration.h +++ /dev/null @@ -1 +0,0 @@ -#import <FirebaseCore/FIRConfiguration.h> diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIREventNames.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIREventNames.h deleted file mode 100755 index 3b40eecf..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIREventNames.h +++ /dev/null @@ -1,336 +0,0 @@ -/// @file FIREventNames.h -/// -/// Predefined event names. -/// -/// An Event is an important occurrence in your app that you want to measure. You can report up to -/// 500 different types of Events per app and you can associate up to 25 unique parameters with each -/// Event type. Some common events are suggested below, but you may also choose to specify custom -/// Event types that are associated with your specific app. Each event type is identified by a -/// unique name. Event names can be up to 40 characters long, may only contain alphanumeric -/// characters and underscores ("_"), and must start with an alphabetic character. The "firebase_" -/// prefix is reserved and should not be used. - -/// Add Payment Info event. This event signifies that a user has submitted their payment information -/// to your app. -static NSString *const kFIREventAddPaymentInfo = @"add_payment_info"; - -/// E-Commerce Add To Cart event. This event signifies that an item was added to a cart for -/// purchase. Add this event to a funnel with kFIREventEcommercePurchase to gauge the effectiveness -/// of your checkout process. Note: If you supply the @c kFIRParameterValue parameter, you must -/// also supply the @c kFIRParameterCurrency parameter so that revenue metrics can be computed -/// accurately. Params: -/// -/// <ul> -/// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber)</li> -/// <li>@c kFIRParameterItemID (NSString)</li> -/// <li>@c kFIRParameterItemName (NSString)</li> -/// <li>@c kFIRParameterItemCategory (NSString)</li> -/// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li> -/// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li> -/// <li>@c kFIRParameterCurrency (NSString) (optional)</li> -/// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li> -/// <li>@c kFIRParameterOrigin (NSString) (optional)</li> -/// <li>@c kFIRParameterDestination (NSString) (optional)</li> -/// <li>@c kFIRParameterStartDate (NSString) (optional)</li> -/// <li>@c kFIRParameterEndDate (NSString) (optional)</li> -/// </ul> -static NSString *const kFIREventAddToCart = @"add_to_cart"; - -/// E-Commerce Add To Wishlist event. This event signifies that an item was added to a wishlist. -/// Use this event to identify popular gift items in your app. Note: If you supply the -/// @c kFIRParameterValue parameter, you must also supply the @c kFIRParameterCurrency -/// parameter so that revenue metrics can be computed accurately. Params: -/// -/// <ul> -/// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber)</li> -/// <li>@c kFIRParameterItemID (NSString)</li> -/// <li>@c kFIRParameterItemName (NSString)</li> -/// <li>@c kFIRParameterItemCategory (NSString)</li> -/// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li> -/// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li> -/// <li>@c kFIRParameterCurrency (NSString) (optional)</li> -/// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li> -/// </ul> -static NSString *const kFIREventAddToWishlist = @"add_to_wishlist"; - -/// App Open event. By logging this event when an App is moved to the foreground, developers can -/// understand how often users leave and return during the course of a Session. Although Sessions -/// are automatically reported, this event can provide further clarification around the continuous -/// engagement of app-users. -static NSString *const kFIREventAppOpen = @"app_open"; - -/// E-Commerce Begin Checkout event. This event signifies that a user has begun the process of -/// checking out. Add this event to a funnel with your kFIREventEcommercePurchase event to gauge the -/// effectiveness of your checkout process. Note: If you supply the @c kFIRParameterValue -/// parameter, you must also supply the @c kFIRParameterCurrency parameter so that revenue -/// metrics can be computed accurately. Params: -/// -/// <ul> -/// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li> -/// <li>@c kFIRParameterCurrency (NSString) (optional)</li> -/// <li>@c kFIRParameterTransactionID (NSString) (optional)</li> -/// <li>@c kFIRParameterStartDate (NSString) (optional)</li> -/// <li>@c kFIRParameterEndDate (NSString) (optional)</li> -/// <li>@c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for -/// hotel bookings</li> -/// <li>@c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for -/// hotel bookings</li> -/// <li>@c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional) -/// for travel bookings</li> -/// <li>@c kFIRParameterOrigin (NSString) (optional)</li> -/// <li>@c kFIRParameterDestination (NSString) (optional)</li> -/// <li>@c kFIRParameterTravelClass (NSString) (optional) for travel bookings</li> -/// </ul> -static NSString *const kFIREventBeginCheckout = @"begin_checkout"; - -/// Campaign Detail event. Log this event to supply the referral details of a re-engagement -/// campaign. Note: you must supply at least one of the required parameters kFIRParameterSource, -/// kFIRParameterMedium or kFIRParameterCampaign. Params: -/// -/// <ul> -/// <li>@c kFIRParameterSource (NSString)</li> -/// <li>@c kFIRParameterMedium (NSString)</li> -/// <li>@c kFIRParameterCampaign (NSString)</li> -/// <li>@c kFIRParameterTerm (NSString) (optional)</li> -/// <li>@c kFIRParameterContent (NSString) (optional)</li> -/// <li>@c kFIRParameterAdNetworkClickID (NSString) (optional)</li> -/// <li>@c kFIRParameterCP1 (NSString) (optional)</li> -/// </ul> -static NSString *const kFIREventCampaignDetails = @"campaign_details"; - -/// Earn Virtual Currency event. This event tracks the awarding of virtual currency in your app. Log -/// this along with @c kFIREventSpendVirtualCurrency to better understand your virtual economy. -/// Params: -/// -/// <ul> -/// <li>@c kFIRParameterVirtualCurrencyName (NSString)</li> -/// <li>@c kFIRParameterValue (signed 64-bit integer or double as NSNumber)</li> -/// </ul> -static NSString *const kFIREventEarnVirtualCurrency = @"earn_virtual_currency"; - -/// E-Commerce Purchase event. This event signifies that an item was purchased by a user. Note: -/// This is different from the in-app purchase event, which is reported automatically for App -/// Store-based apps. Note: If you supply the @c kFIRParameterValue parameter, you must also -/// supply the @c kFIRParameterCurrency parameter so that revenue metrics can be computed -/// accurately. Params: -/// -/// <ul> -/// <li>@c kFIRParameterCurrency (NSString) (optional)</li> -/// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li> -/// <li>@c kFIRParameterTransactionID (NSString) (optional)</li> -/// <li>@c kFIRParameterTax (double as NSNumber) (optional)</li> -/// <li>@c kFIRParameterShipping (double as NSNumber) (optional)</li> -/// <li>@c kFIRParameterCoupon (NSString) (optional)</li> -/// <li>@c kFIRParameterLocation (NSString) (optional)</li> -/// <li>@c kFIRParameterStartDate (NSString) (optional)</li> -/// <li>@c kFIRParameterEndDate (NSString) (optional)</li> -/// <li>@c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for -/// hotel bookings</li> -/// <li>@c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for -/// hotel bookings</li> -/// <li>@c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional) -/// for travel bookings</li> -/// <li>@c kFIRParameterOrigin (NSString) (optional)</li> -/// <li>@c kFIRParameterDestination (NSString) (optional)</li> -/// <li>@c kFIRParameterTravelClass (NSString) (optional) for travel bookings</li> -/// </ul> -static NSString *const kFIREventEcommercePurchase = @"ecommerce_purchase"; - -/// Generate Lead event. Log this event when a lead has been generated in the app to understand the -/// efficacy of your install and re-engagement campaigns. Note: If you supply the -/// @c kFIRParameterValue parameter, you must also supply the @c kFIRParameterCurrency -/// parameter so that revenue metrics can be computed accurately. Params: -/// -/// <ul> -/// <li>@c kFIRParameterCurrency (NSString) (optional)</li> -/// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li> -/// </ul> -static NSString *const kFIREventGenerateLead = @"generate_lead"; - -/// Join Group event. Log this event when a user joins a group such as a guild, team or family. Use -/// this event to analyze how popular certain groups or social features are in your app. Params: -/// -/// <ul> -/// <li>@c kFIRParameterGroupID (NSString)</li> -/// </ul> -static NSString *const kFIREventJoinGroup = @"join_group"; - -/// Level Up event. This event signifies that a player has leveled up in your gaming app. It can -/// help you gauge the level distribution of your userbase and help you identify certain levels that -/// are difficult to pass. Params: -/// -/// <ul> -/// <li>@c kFIRParameterLevel (signed 64-bit integer as NSNumber)</li> -/// <li>@c kFIRParameterCharacter (NSString) (optional)</li> -/// </ul> -static NSString *const kFIREventLevelUp = @"level_up"; - -/// Login event. Apps with a login feature can report this event to signify that a user has logged -/// in. -static NSString *const kFIREventLogin = @"login"; - -/// Post Score event. Log this event when the user posts a score in your gaming app. This event can -/// help you understand how users are actually performing in your game and it can help you correlate -/// high scores with certain audiences or behaviors. Params: -/// -/// <ul> -/// <li>@c kFIRParameterScore (signed 64-bit integer as NSNumber)</li> -/// <li>@c kFIRParameterLevel (signed 64-bit integer as NSNumber) (optional)</li> -/// <li>@c kFIRParameterCharacter (NSString) (optional)</li> -/// </ul> -static NSString *const kFIREventPostScore = @"post_score"; - -/// Present Offer event. This event signifies that the app has presented a purchase offer to a user. -/// Add this event to a funnel with the kFIREventAddToCart and kFIREventEcommercePurchase to gauge -/// your conversion process. Note: If you supply the @c kFIRParameterValue parameter, you must -/// also supply the @c kFIRParameterCurrency parameter so that revenue metrics can be computed -/// accurately. Params: -/// -/// <ul> -/// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber)</li> -/// <li>@c kFIRParameterItemID (NSString)</li> -/// <li>@c kFIRParameterItemName (NSString)</li> -/// <li>@c kFIRParameterItemCategory (NSString)</li> -/// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li> -/// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li> -/// <li>@c kFIRParameterCurrency (NSString) (optional)</li> -/// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li> -/// </ul> -static NSString *const kFIREventPresentOffer = @"present_offer"; - -/// E-Commerce Purchase Refund event. This event signifies that an item purchase was refunded. -/// Note: If you supply the @c kFIRParameterValue parameter, you must also supply the -/// @c kFIRParameterCurrency parameter so that revenue metrics can be computed accurately. -/// Params: -/// -/// <ul> -/// <li>@c kFIRParameterCurrency (NSString) (optional)</li> -/// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li> -/// <li>@c kFIRParameterTransactionID (NSString) (optional)</li> -/// </ul> -static NSString *const kFIREventPurchaseRefund = @"purchase_refund"; - -/// Search event. Apps that support search features can use this event to contextualize search -/// operations by supplying the appropriate, corresponding parameters. This event can help you -/// identify the most popular content in your app. Params: -/// -/// <ul> -/// <li>@c kFIRParameterSearchTerm (NSString)</li> -/// <li>@c kFIRParameterStartDate (NSString) (optional)</li> -/// <li>@c kFIRParameterEndDate (NSString) (optional)</li> -/// <li>@c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for -/// hotel bookings</li> -/// <li>@c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for -/// hotel bookings</li> -/// <li>@c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional) -/// for travel bookings</li> -/// <li>@c kFIRParameterOrigin (NSString) (optional)</li> -/// <li>@c kFIRParameterDestination (NSString) (optional)</li> -/// <li>@c kFIRParameterTravelClass (NSString) (optional) for travel bookings</li> -/// </ul> -static NSString *const kFIREventSearch = @"search"; - -/// Select Content event. This general purpose event signifies that a user has selected some content -/// of a certain type in an app. The content can be any object in your app. This event can help you -/// identify popular content and categories of content in your app. Params: -/// -/// <ul> -/// <li>@c kFIRParameterContentType (NSString)</li> -/// <li>@c kFIRParameterItemID (NSString)</li> -/// </ul> -static NSString *const kFIREventSelectContent = @"select_content"; - -/// Share event. Apps with social features can log the Share event to identify the most viral -/// content. Params: -/// -/// <ul> -/// <li>@c kFIRParameterContentType (NSString)</li> -/// <li>@c kFIRParameterItemID (NSString)</li> -/// </ul> -static NSString *const kFIREventShare = @"share"; - -/// Sign Up event. This event indicates that a user has signed up for an account in your app. The -/// parameter signifies the method by which the user signed up. Use this event to understand the -/// different behaviors between logged in and logged out users. Params: -/// -/// <ul> -/// <li>@c kFIRParameterSignUpMethod (NSString)</li> -/// </ul> -static NSString *const kFIREventSignUp = @"sign_up"; - -/// Spend Virtual Currency event. This event tracks the sale of virtual goods in your app and can -/// help you identify which virtual goods are the most popular objects of purchase. Params: -/// -/// <ul> -/// <li>@c kFIRParameterItemName (NSString)</li> -/// <li>@c kFIRParameterVirtualCurrencyName (NSString)</li> -/// <li>@c kFIRParameterValue (signed 64-bit integer or double as NSNumber)</li> -/// </ul> -static NSString *const kFIREventSpendVirtualCurrency = @"spend_virtual_currency"; - -/// Tutorial Begin event. This event signifies the start of the on-boarding process in your app. Use -/// this in a funnel with kFIREventTutorialComplete to understand how many users complete this -/// process and move on to the full app experience. -static NSString *const kFIREventTutorialBegin = @"tutorial_begin"; - -/// Tutorial End event. Use this event to signify the user's completion of your app's on-boarding -/// process. Add this to a funnel with kFIREventTutorialBegin to gauge the completion rate of your -/// on-boarding process. -static NSString *const kFIREventTutorialComplete = @"tutorial_complete"; - -/// Unlock Achievement event. Log this event when the user has unlocked an achievement in your -/// game. Since achievements generally represent the breadth of a gaming experience, this event can -/// help you understand how many users are experiencing all that your game has to offer. Params: -/// -/// <ul> -/// <li>@c kFIRParameterAchievementID (NSString)</li> -/// </ul> -static NSString *const kFIREventUnlockAchievement = @"unlock_achievement"; - -/// View Item event. This event signifies that some content was shown to the user. This content may -/// be a product, a webpage or just a simple image or text. Use the appropriate parameters to -/// contextualize the event. Use this event to discover the most popular items viewed in your app. -/// Note: If you supply the @c kFIRParameterValue parameter, you must also supply the -/// @c kFIRParameterCurrency parameter so that revenue metrics can be computed accurately. -/// Params: -/// -/// <ul> -/// <li>@c kFIRParameterItemID (NSString)</li> -/// <li>@c kFIRParameterItemName (NSString)</li> -/// <li>@c kFIRParameterItemCategory (NSString)</li> -/// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li> -/// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li> -/// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber) (optional)</li> -/// <li>@c kFIRParameterCurrency (NSString) (optional)</li> -/// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li> -/// <li>@c kFIRParameterStartDate (NSString) (optional)</li> -/// <li>@c kFIRParameterEndDate (NSString) (optional)</li> -/// <li>@c kFIRParameterFlightNumber (NSString) (optional) for travel bookings</li> -/// <li>@c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional) -/// for travel bookings</li> -/// <li>@c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for -/// travel bookings</li> -/// <li>@c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for -/// travel bookings</li> -/// <li>@c kFIRParameterOrigin (NSString) (optional)</li> -/// <li>@c kFIRParameterDestination (NSString) (optional)</li> -/// <li>@c kFIRParameterSearchTerm (NSString) (optional) for travel bookings</li> -/// <li>@c kFIRParameterTravelClass (NSString) (optional) for travel bookings</li> -/// </ul> -static NSString *const kFIREventViewItem = @"view_item"; - -/// View Item List event. Log this event when the user has been presented with a list of items of a -/// certain category. Params: -/// -/// <ul> -/// <li>@c kFIRParameterItemCategory (NSString)</li> -/// </ul> -static NSString *const kFIREventViewItemList = @"view_item_list"; - -/// View Search Results event. Log this event when the user has been presented with the results of a -/// search. Params: -/// -/// <ul> -/// <li>@c kFIRParameterSearchTerm (NSString)</li> -/// </ul> -static NSString *const kFIREventViewSearchResults = @"view_search_results"; diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIROptions.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIROptions.h deleted file mode 100755 index 126824b0..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIROptions.h +++ /dev/null @@ -1 +0,0 @@ -#import <FirebaseCore/FIROptions.h> diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRParameterNames.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRParameterNames.h deleted file mode 100755 index a43e3473..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRParameterNames.h +++ /dev/null @@ -1,369 +0,0 @@ -/// @file FIRParameterNames.h -/// -/// Predefined event parameter names. -/// -/// Params supply information that contextualize Events. You can associate up to 25 unique Params -/// with each Event type. Some Params are suggested below for certain common Events, but you are -/// not limited to these. You may supply extra Params for suggested Events or custom Params for -/// Custom events. Param names can be up to 40 characters long, may only contain alphanumeric -/// characters and underscores ("_"), and must start with an alphabetic character. Param values can -/// be up to 100 characters long. The "firebase_" prefix is reserved and should not be used. - -/// Game achievement ID (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterAchievementID : @"10_matches_won", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterAchievementID = @"achievement_id"; - -/// Ad Network Click ID (NSString). Used for network-specific click IDs which vary in format. -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterAdNetworkClickID : @"1234567", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterAdNetworkClickID = @"aclid"; - -/// The individual campaign name, slogan, promo code, etc. Some networks have pre-defined macro to -/// capture campaign information, otherwise can be populated by developer. Highly Recommended -/// (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterCampaign : @"winter_promotion", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterCampaign = @"campaign"; - -/// Character used in game (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterCharacter : @"beat_boss", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterCharacter = @"character"; - -/// Campaign content (NSString). -static NSString *const kFIRParameterContent = @"content"; - -/// Type of content selected (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterContentType : @"news article", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterContentType = @"content_type"; - -/// Coupon code for a purchasable item (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterCoupon : @"zz123", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterCoupon = @"coupon"; - -/// Campaign custom parameter (NSString). Used as a method of capturing custom data in a campaign. -/// Use varies by network. -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterCP1 : @"custom_data", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterCP1 = @"cp1"; - -/// Purchase currency in 3-letter <a href="http://en.wikipedia.org/wiki/ISO_4217#Active_codes"> -/// ISO_4217</a> format (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterCurrency : @"USD", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterCurrency = @"currency"; - -/// Flight or Travel destination (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterDestination : @"Mountain View, CA", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterDestination = @"destination"; - -/// The arrival date, check-out date or rental end date for the item. This should be in -/// YYYY-MM-DD format (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterEndDate : @"2015-09-14", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterEndDate = @"end_date"; - -/// Flight number for travel events (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterFlightNumber : @"ZZ800", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterFlightNumber = @"flight_number"; - -/// Group/clan/guild ID (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterGroupID : @"g1", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterGroupID = @"group_id"; - -/// Item category (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterItemCategory : @"t-shirts", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterItemCategory = @"item_category"; - -/// Item ID (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterItemID : @"p7654", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterItemID = @"item_id"; - -/// The Google <a href="https://developers.google.com/places/place-id">Place ID</a> (NSString) that -/// corresponds to the associated item. Alternatively, you can supply your own custom Location ID. -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterItemLocationID : @"ChIJiyj437sx3YAR9kUWC8QkLzQ", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterItemLocationID = @"item_location_id"; - -/// Item name (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterItemName : @"abc", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterItemName = @"item_name"; - -/// Level in game (signed 64-bit integer as NSNumber). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterLevel : @(42), -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterLevel = @"level"; - -/// Location (NSString). The Google <a href="https://developers.google.com/places/place-id">Place ID -/// </a> that corresponds to the associated event. Alternatively, you can supply your own custom -/// Location ID. -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterLocation : @"ChIJiyj437sx3YAR9kUWC8QkLzQ", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterLocation = @"location"; - -/// The advertising or marketing medium, for example: cpc, banner, email, push. Highly recommended -/// (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterMedium : @"email", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterMedium = @"medium"; - -/// Number of nights staying at hotel (signed 64-bit integer as NSNumber). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterNumberOfNights : @(3), -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterNumberOfNights = @"number_of_nights"; - -/// Number of passengers traveling (signed 64-bit integer as NSNumber). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterNumberOfPassengers : @(11), -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterNumberOfPassengers = @"number_of_passengers"; - -/// Number of rooms for travel events (signed 64-bit integer as NSNumber). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterNumberOfRooms : @(2), -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterNumberOfRooms = @"number_of_rooms"; - -/// Flight or Travel origin (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterOrigin : @"Mountain View, CA", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterOrigin = @"origin"; - -/// Purchase price (double as NSNumber). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterPrice : @(1.0), -/// kFIRParameterCurrency : @"USD", // e.g. $1.00 USD -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterPrice = @"price"; - -/// Purchase quantity (signed 64-bit integer as NSNumber). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterQuantity : @(1), -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterQuantity = @"quantity"; - -/// Score in game (signed 64-bit integer as NSNumber). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterScore : @(4200), -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterScore = @"score"; - -/// The search string/keywords used (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterSearchTerm : @"periodic table", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterSearchTerm = @"search_term"; - -/// Shipping cost (double as NSNumber). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterShipping : @(9.50), -/// kFIRParameterCurrency : @"USD", // e.g. $9.50 USD -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterShipping = @"shipping"; - -/// Sign up method (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterSignUpMethod : @"google", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterSignUpMethod = @"sign_up_method"; - -/// The origin of your traffic, such as an Ad network (for example, google) or partner (urban -/// airship). Identify the advertiser, site, publication, etc. that is sending traffic to your -/// property. Highly recommended (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterSource : @"InMobi", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterSource = @"source"; - -/// The departure date, check-in date or rental start date for the item. This should be in -/// YYYY-MM-DD format (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterStartDate : @"2015-09-14", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterStartDate = @"start_date"; - -/// Tax amount (double as NSNumber). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterTax : @(1.0), -/// kFIRParameterCurrency : @"USD", // e.g. $1.00 USD -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterTax = @"tax"; - -/// If you're manually tagging keyword campaigns, you should use utm_term to specify the keyword -/// (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterTerm : @"game", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterTerm = @"term"; - -/// A single ID for a ecommerce group transaction (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterTransactionID : @"ab7236dd9823", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterTransactionID = @"transaction_id"; - -/// Travel class (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterTravelClass : @"business", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterTravelClass = @"travel_class"; - -/// A context-specific numeric value which is accumulated automatically for each event type. This is -/// a general purpose parameter that is useful for accumulating a key metric that pertains to an -/// event. Examples include revenue, distance, time and points. Value should be specified as signed -/// 64-bit integer or double as NSNumber. Notes: Values for pre-defined currency-related events -/// (such as @c kFIREventAddToCart) should be supplied using double as NSNumber and must be -/// accompanied by a @c kFIRParameterCurrency parameter. The valid range of accumulated values is -/// [-9,223,372,036,854.77, 9,223,372,036,854.77]. -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterValue : @(3.99), -/// kFIRParameterCurrency : @"USD", // e.g. $3.99 USD -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterValue = @"value"; - -/// Name of virtual currency type (NSString). -/// <pre> -/// NSDictionary *params = @{ -/// kFIRParameterVirtualCurrencyName : @"virtual_currency_name", -/// // ... -/// }; -/// </pre> -static NSString *const kFIRParameterVirtualCurrencyName = @"virtual_currency_name"; diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h deleted file mode 100755 index 54cf1c20..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h +++ /dev/null @@ -1,13 +0,0 @@ -/// @file FIRUserPropertyNames.h -/// -/// Predefined user property names. -/// -/// A UserProperty is an attribute that describes the app-user. By supplying UserProperties, you can -/// later analyze different behaviors of various segments of your userbase. You may supply up to 25 -/// unique UserProperties per app, and you can use the name and value of your choosing for each one. -/// UserProperty names can be up to 24 characters long, may only contain alphanumeric characters and -/// underscores ("_"), and must start with an alphabetic character. UserProperty values can be up to -/// 36 characters long. The "firebase_" prefix is reserved and should not be used. - -/// The method used to sign in. For example, "google", "facebook" or "twitter". -static NSString *const kFIRUserPropertySignUpMethod = @"sign_up_method"; diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h deleted file mode 100755 index 3142c97b..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h +++ /dev/null @@ -1,9 +0,0 @@ -#import "FIRAnalyticsConfiguration.h" -#import "FIRApp.h" -#import "FIRConfiguration.h" -#import "FIROptions.h" -#import "FIRAnalytics+AppDelegate.h" -#import "FIRAnalytics.h" -#import "FIREventNames.h" -#import "FIRParameterNames.h" -#import "FIRUserPropertyNames.h" diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Modules/module.modulemap b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Modules/module.modulemap deleted file mode 100755 index c9bd66bc..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Modules/module.modulemap +++ /dev/null @@ -1,10 +0,0 @@ -framework module FirebaseAnalytics { - umbrella header "FirebaseAnalytics.h" - export * - module * { export *} - link "sqlite3" - link "z" - link framework "CoreGraphics" - link framework "Foundation" - link framework "UIKit" -}
\ No newline at end of file diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/FirebaseCore b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/FirebaseCore Binary files differdeleted file mode 100755 index 364c6d67..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/FirebaseCore +++ /dev/null diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRAnalyticsConfiguration.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRAnalyticsConfiguration.h deleted file mode 100755 index 667d5a4b..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRAnalyticsConfiguration.h +++ /dev/null @@ -1,38 +0,0 @@ -#import <Foundation/Foundation.h> - -/** - * This class provides configuration fields for Firebase Analytics. - */ -@interface FIRAnalyticsConfiguration : NSObject - -/** - * Returns the shared instance of FIRAnalyticsConfiguration. - */ -+ (FIRAnalyticsConfiguration *)sharedInstance; - -/** - * Sets the minimum engagement time in seconds required to start a new session. The default value - * is 10 seconds. - */ -- (void)setMinimumSessionInterval:(NSTimeInterval)minimumSessionInterval; - -/** - * Sets the interval of inactivity in seconds that terminates the current session. The default - * value is 1800 seconds (30 minutes). - */ -- (void)setSessionTimeoutInterval:(NSTimeInterval)sessionTimeoutInterval; - -/** - * Sets whether analytics collection is enabled for this app on this device. This setting is - * persisted across app sessions. By default it is enabled. - */ -- (void)setAnalyticsCollectionEnabled:(BOOL)analyticsCollectionEnabled; - -/** - * Deprecated. Sets whether measurement and reporting are enabled for this app on this device. By - * default they are enabled. - */ -- (void)setIsEnabled:(BOOL)isEnabled - DEPRECATED_MSG_ATTRIBUTE("Use setAnalyticsCollectionEnabled: instead."); - -@end diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRApp.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRApp.h deleted file mode 100755 index 263c4bef..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRApp.h +++ /dev/null @@ -1,98 +0,0 @@ -#import <Foundation/Foundation.h> -#import <UIKit/UIKit.h> - -@class FIROptions; - -NS_ASSUME_NONNULL_BEGIN - -/** A block that takes a BOOL and has no return value. */ -typedef void (^FIRAppVoidBoolCallback)(BOOL success); - -/** - * The entry point of Firebase SDKs. - * - * Initialize and configure FIRApp using +[FIRApp configure] - * or other customized ways as shown below. - * - * The logging system has two modes: default mode and debug mode. In default mode, only logs with - * log level Notice, Warning and Error will be sent to device. In debug mode, all logs will be sent - * to device. The log levels that Firebase uses are consistent with the ASL log levels. - * - * Enable debug mode by passing the -FIRDebugEnabled argument to the application. You can add this - * argument in the application's Xcode scheme. When debug mode is enabled via -FIRDebugEnabled, - * further executions of the application will also be in debug mode. In order to return to default - * mode, you must explicitly disable the debug mode with the application argument -FIRDebugDisabled. - * - * It is also possible to change the default logging level in code by calling setLoggerLevel: on - * the FIRConfiguration interface. - */ -@interface FIRApp : NSObject - -/** - * Configures a default Firebase app. Raises an exception if any configuration step fails. The - * default app is named "__FIRAPP_DEFAULT". This method should be called after the app is launched - * and before using Firebase services. This method is thread safe. - */ -+ (void)configure; - -/** - * Configures the default Firebase app with the provided options. The default app is named - * "__FIRAPP_DEFAULT". Raises an exception if any configuration step fails. This method is thread - * safe. - * - * @param options The Firebase application options used to configure the service. - */ -+ (void)configureWithOptions:(FIROptions *)options; - -/** - * Configures a Firebase app with the given name and options. Raises an exception if any - * configuration step fails. This method is thread safe. - * - * @param name The application's name given by the developer. The name should should only contain - Letters, Numbers and Underscore. - * @param options The Firebase application options used to configure the services. - */ -+ (void)configureWithName:(NSString *)name options:(FIROptions *)options; - -/** - * Returns the default app, or nil if the default app does not exist. - */ -+ (nullable FIRApp *)defaultApp NS_SWIFT_NAME(defaultApp()); - -/** - * Returns a previously created FIRApp instance with the given name, or nil if no such app exists. - * This method is thread safe. - */ -+ (nullable FIRApp *)appNamed:(NSString *)name; - -/** - * Returns the set of all extant FIRApp instances, or nil if there are no FIRApp instances. This - * method is thread safe. - */ -+ (nullable NSDictionary *)allApps; - -/** - * Cleans up the current FIRApp, freeing associated data and returning its name to the pool for - * future use. This method is thread safe. - */ -- (void)deleteApp:(FIRAppVoidBoolCallback)completion; - -/** - * FIRApp instances should not be initialized directly. Call +[FIRApp configure], - * +[FIRApp configureWithOptions:], or +[FIRApp configureWithNames:options:] directly. - */ -- (instancetype)init NS_UNAVAILABLE; - -/** - * Gets the name of this app. - */ -@property(nonatomic, copy, readonly) NSString *name; - -/** - * Gets the options for this app. - */ -@property(nonatomic, readonly) FIROptions *options; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRConfiguration.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRConfiguration.h deleted file mode 100755 index a25647b4..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRConfiguration.h +++ /dev/null @@ -1,52 +0,0 @@ -#import <Foundation/Foundation.h> - -#import "FIRAnalyticsConfiguration.h" -#import "FIRLoggerLevel.h" - -/** - * The log levels used by FIRConfiguration. - */ -typedef NS_ENUM(NSInteger, FIRLogLevel) { - /** Error */ - kFIRLogLevelError __deprecated = 0, - /** Warning */ - kFIRLogLevelWarning __deprecated, - /** Info */ - kFIRLogLevelInfo __deprecated, - /** Debug */ - kFIRLogLevelDebug __deprecated, - /** Assert */ - kFIRLogLevelAssert __deprecated, - /** Max */ - kFIRLogLevelMax __deprecated = kFIRLogLevelAssert -} DEPRECATED_MSG_ATTRIBUTE( - "Use -FIRDebugEnabled and -FIRDebugDisabled or setLoggerLevel. See FIRApp.h for more details."); - -/** - * This interface provides global level properties that the developer can tweak, and the singleton - * of the Firebase Analytics configuration class. - */ -@interface FIRConfiguration : NSObject - -/** Returns the shared configuration object. */ -+ (FIRConfiguration *)sharedInstance; - -/** The configuration class for Firebase Analytics. */ -@property(nonatomic, readwrite) FIRAnalyticsConfiguration *analyticsConfiguration; - -/** Global log level. Defaults to kFIRLogLevelError. */ -@property(nonatomic, readwrite, assign) FIRLogLevel logLevel DEPRECATED_MSG_ATTRIBUTE( - "Use -FIRDebugEnabled and -FIRDebugDisabled or setLoggerLevel. See FIRApp.h for more details."); - -/** - * Sets the logging level for internal Firebase logging. Firebase will only log messages - * that are logged at or below loggerLevel. The messages are logged both to the Xcode - * console and to the device's log. Note that if an app is running from AppStore, it will - * never log above FIRLoggerLevelNotice even if loggerLevel is set to a higher (more verbose) - * setting. - * - * @param loggerLevel The maximum logging level. The default level is set to FIRLoggerLevelNotice. - */ -- (void)setLoggerLevel:(FIRLoggerLevel)loggerLevel; - -@end diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRLoggerLevel.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRLoggerLevel.h deleted file mode 100755 index ddf683f7..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRLoggerLevel.h +++ /dev/null @@ -1,12 +0,0 @@ -/** - * The log levels used by internal logging. - */ -typedef NS_ENUM(NSInteger, FIRLoggerLevel) { - FIRLoggerLevelError = 3 /*ASL_LEVEL_ERR*/, - FIRLoggerLevelWarning = 4 /*ASL_LEVEL_WARNING*/, - FIRLoggerLevelNotice = 5 /*ASL_LEVEL_NOTICE*/, - FIRLoggerLevelInfo = 6 /*ASL_LEVEL_INFO*/, - FIRLoggerLevelDebug = 7 /*ASL_LEVEL_DEBUG*/, - FIRLoggerLevelMin = FIRLoggerLevelError, - FIRLoggerLevelMax = FIRLoggerLevelDebug -}; diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIROptions.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIROptions.h deleted file mode 100755 index 083082ab..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIROptions.h +++ /dev/null @@ -1,93 +0,0 @@ -#import <Foundation/Foundation.h> - -/** - * This class provides constant fields of Google APIs. - */ -@interface FIROptions : NSObject<NSCopying> - -/** - * Returns the default options. - */ -+ (FIROptions *)defaultOptions; - -/** - * An iOS API key used for authenticating requests from your app, e.g. - * @"AIzaSyDdVgKwhZl0sTTTLZ7iTmt1r3N2cJLnaDk", used to identify your app to Google servers. - */ -@property(nonatomic, readonly, copy) NSString *APIKey; - -/** - * The OAuth2 client ID for iOS application used to authenticate Google users, for example - * @"12345.apps.googleusercontent.com", used for signing in with Google. - */ -@property(nonatomic, readonly, copy) NSString *clientID; - -/** - * The tracking ID for Google Analytics, e.g. @"UA-12345678-1", used to configure Google Analytics. - */ -@property(nonatomic, readonly, copy) NSString *trackingID; - -/** - * The Project Number from the Google Developer's console, for example @"012345678901", used to - * configure Google Cloud Messaging. - */ -@property(nonatomic, readonly, copy) NSString *GCMSenderID; - -/** - * The Project ID from the Firebase console, for example @"abc-xyz-123". Currently only populated - * when using [FIROptions defaultOptions]. - */ -@property(nonatomic, readonly, copy) NSString *projectID; - -/** - * The Android client ID used in Google AppInvite when an iOS app has its Android version, for - * example @"12345.apps.googleusercontent.com". - */ -@property(nonatomic, readonly, copy) NSString *androidClientID; - -/** - * The Google App ID that is used to uniquely identify an instance of an app. - */ -@property(nonatomic, readonly, copy) NSString *googleAppID; - -/** - * The database root URL, e.g. @"http://abc-xyz-123.firebaseio.com". - */ -@property(nonatomic, readonly, copy) NSString *databaseURL; - -/** - * The URL scheme used to set up Durable Deep Link service. - */ -@property(nonatomic, readwrite, copy) NSString *deepLinkURLScheme; - -/** - * The Google Cloud Storage bucket name, e.g. @"abc-xyz-123.storage.firebase.com". - */ -@property(nonatomic, readonly, copy) NSString *storageBucket; - -/** - * Initializes a customized instance of FIROptions with keys. googleAppID, bundleID and GCMSenderID - * are required. Other keys may required for configuring specific services. - */ -- (instancetype)initWithGoogleAppID:(NSString *)googleAppID - bundleID:(NSString *)bundleID - GCMSenderID:(NSString *)GCMSenderID - APIKey:(NSString *)APIKey - clientID:(NSString *)clientID - trackingID:(NSString *)trackingID - androidClientID:(NSString *)androidClientID - databaseURL:(NSString *)databaseURL - storageBucket:(NSString *)storageBucket - deepLinkURLScheme:(NSString *)deepLinkURLScheme; - -/** - * Initializes a customized instance of FIROptions from the file at the given plist file path. - * For example, - * NSString *filePath = - * [[NSBundle mainBundle] pathForResource:@"GoogleService-Info" ofType:@"plist"]; - * FIROptions *options = [[FIROptions alloc] initWithContentsOfFile:filePath]; - * Returns nil if the plist file does not exist or is invalid. - */ -- (instancetype)initWithContentsOfFile:(NSString *)plistPath; - -@end diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FirebaseCore.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FirebaseCore.h deleted file mode 100755 index 52a222f5..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FirebaseCore.h +++ /dev/null @@ -1,5 +0,0 @@ -#import "FIRAnalyticsConfiguration.h" -#import "FIRApp.h" -#import "FIRConfiguration.h" -#import "FIRLoggerLevel.h" -#import "FIROptions.h" diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Modules/module.modulemap b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Modules/module.modulemap deleted file mode 100755 index f3db90d8..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseCore.framework/Modules/module.modulemap +++ /dev/null @@ -1,8 +0,0 @@ -framework module FirebaseCore { - umbrella header "FirebaseCore.h" - export * - module * { export *} - link "z" - link framework "Foundation" - link framework "UIKit" -}
\ No newline at end of file diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/FirebaseInstanceID b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/FirebaseInstanceID Binary files differdeleted file mode 100755 index 2ebc6e68..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/FirebaseInstanceID +++ /dev/null diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Headers/FIRInstanceID.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Headers/FIRInstanceID.h deleted file mode 100755 index 5ff8372e..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Headers/FIRInstanceID.h +++ /dev/null @@ -1,245 +0,0 @@ -#import <Foundation/Foundation.h> - -/** - * @memberof FIRInstanceID - * - * The scope to be used when fetching/deleting a token for Firebase Messaging. - */ -FOUNDATION_EXPORT NSString * __nonnull const kFIRInstanceIDScopeFirebaseMessaging; - -/** - * Called when the system determines that tokens need to be refreshed. - * This method is also called if Instance ID has been reset in which - * case, tokens and FCM topic subscriptions also need to be refreshed. - * - * Instance ID service will throttle the refresh event across all devices - * to control the rate of token updates on application servers. - */ -FOUNDATION_EXPORT NSString * __nonnull const kFIRInstanceIDTokenRefreshNotification; - -/** - * @related FIRInstanceID - * - * The completion handler invoked when the InstanceID token returns. If - * the call fails we return the appropriate `error code` as described below. - * - * @param token The valid token as returned by InstanceID backend. - * - * @param error The error describing why generating a new token - * failed. See the error codes below for a more detailed - * description. - */ -typedef void(^FIRInstanceIDTokenHandler)( NSString * __nullable token, NSError * __nullable error); - - -/** - * @related FIRInstanceID - * - * The completion handler invoked when the InstanceID `deleteToken` returns. If - * the call fails we return the appropriate `error code` as described below - * - * @param error The error describing why deleting the token failed. - * See the error codes below for a more detailed description. - */ -typedef void(^FIRInstanceIDDeleteTokenHandler)(NSError * __nullable error); - -/** - * @related FIRInstanceID - * - * The completion handler invoked when the app identity is created. If the - * identity wasn't created for some reason we return the appropriate error code. - * - * @param identity A valid identity for the app instance, nil if there was an error - * while creating an identity. - * @param error The error if fetching the identity fails else nil. - */ -typedef void(^FIRInstanceIDHandler)(NSString * __nullable identity, NSError * __nullable error); - -/** - * @related FIRInstanceID - * - * The completion handler invoked when the app identity and all the tokens associated - * with it are deleted. Returns a valid error object in case of failure else nil. - * - * @param error The error if deleting the identity and all the tokens associated with - * it fails else nil. - */ -typedef void(^FIRInstanceIDDeleteHandler)(NSError * __nullable error); - -/** - * @enum FIRInstanceIDError - */ -typedef NS_ENUM(NSUInteger, FIRInstanceIDError) { - // Http related errors. - - /// Unknown error. - FIRInstanceIDErrorUnknown = 0, - - /// Auth Error -- GCM couldn't validate request from this client. - FIRInstanceIDErrorAuthentication = 1, - - /// NoAccess -- InstanceID service cannot be accessed. - FIRInstanceIDErrorNoAccess = 2, - - /// Timeout -- Request to InstanceID backend timed out. - FIRInstanceIDErrorTimeout = 3, - - /// Network -- No network available to reach the servers. - FIRInstanceIDErrorNetwork = 4, - - /// OperationInProgress -- Another similar operation in progress, - /// bailing this one. - FIRInstanceIDErrorOperationInProgress = 5, - - /// InvalidRequest -- Some parameters of the request were invalid. - FIRInstanceIDErrorInvalidRequest = 7, -}; - -/** - * The APNS token type for the app. If the token type is set to `UNKNOWN` - * InstanceID will implicitly try to figure out what the actual token type - * is from the provisioning profile. - */ -typedef NS_ENUM(NSInteger, FIRInstanceIDAPNSTokenType) { - /// Unknown token type. - FIRInstanceIDAPNSTokenTypeUnknown, - /// Sandbox token type. - FIRInstanceIDAPNSTokenTypeSandbox, - /// Production token type. - FIRInstanceIDAPNSTokenTypeProd, -}; - -/** - * Instance ID provides a unique identifier for each app instance and a mechanism - * to authenticate and authorize actions (for example, sending a GCM message). - * - * Instance ID is long lived but, may be reset if the device is not used for - * a long time or the Instance ID service detects a problem. - * If Instance ID is reset, the app will be notified via - * `kFIRInstanceIDTokenRefreshNotification`. - * - * If the Instance ID has become invalid, the app can request a new one and - * send it to the app server. - * To prove ownership of Instance ID and to allow servers to access data or - * services associated with the app, call - * `[FIRInstanceID tokenWithAuthorizedEntity:scope:options:handler]`. - */ -@interface FIRInstanceID : NSObject - -/** - * FIRInstanceID. - * - * @return A shared instance of FIRInstanceID. - */ -+ (nonnull instancetype)instanceID NS_SWIFT_NAME(instanceID()); - -/** - * Unavailable. Use +instanceID instead. - */ -- (nonnull instancetype)init __attribute__((unavailable("Use +instanceID instead."))); - -/** - * Set APNS token for the application. This APNS token will be used to register - * with Firebase Messaging using `token` or - * `tokenWithAuthorizedEntity:scope:options:handler`. If the token type is set to - * `FIRInstanceIDAPNSTokenTypeUnknown` InstanceID will read the provisioning profile - * to find out the token type. - * - * @param token The APNS token for the application. - * @param type The APNS token type for the above token. - */ -- (void)setAPNSToken:(nonnull NSData *)token - type:(FIRInstanceIDAPNSTokenType)type; - -#pragma mark - Tokens - -/** - * Returns a Firebase Messaging scoped token for the firebase app. - * - * @return Null Returns null if the device has not yet been registerd with - * Firebase Message else returns a valid token. - */ -- (nullable NSString *)token; - -/** - * Returns a token that authorizes an Entity (example: cloud service) to perform - * an action on behalf of the application identified by Instance ID. - * - * This is similar to an OAuth2 token except, it applies to the - * application instance instead of a user. - * - * This is an asynchronous call. If the token fetching fails for some reason - * we invoke the completion callback with nil `token` and the appropriate - * error. - * - * Note, you can only have one `token` or `deleteToken` call for a given - * authorizedEntity and scope at any point of time. Making another such call with the - * same authorizedEntity and scope before the last one finishes will result in an - * error with code `OperationInProgress`. - * - * @see FIRInstanceID deleteTokenWithAuthorizedEntity:scope:handler: - * - * @param authorizedEntity Entity authorized by the token. - * @param scope Action authorized for authorizedEntity. - * @param options The extra options to be sent with your token request. The - * value for the `apns_token` should be the NSData object - * passed to UIApplication's - * `didRegisterForRemoteNotificationsWithDeviceToken` method. - * All other keys and values in the options dict need to be - * instances of NSString or else they will be discarded. Bundle - * keys starting with 'GCM.' and 'GOOGLE.' are reserved. - * @param handler The callback handler which is invoked when the token is - * successfully fetched. In case of success a valid `token` and - * `nil` error are returned. In case of any error the `token` - * is nil and a valid `error` is returned. The valid error - * codes have been documented above. - */ -- (void)tokenWithAuthorizedEntity:(nonnull NSString *)authorizedEntity - scope:(nonnull NSString *)scope - options:(nullable NSDictionary *)options - handler:(nonnull FIRInstanceIDTokenHandler)handler; - -/** - * Revokes access to a scope (action) for an entity previously - * authorized by `[FIRInstanceID tokenWithAuthorizedEntity:scope:options:handler]`. - * - * This is an asynchronous call. Call this on the main thread since InstanceID lib - * is not thread safe. In case token deletion fails for some reason we invoke the - * `handler` callback passed in with the appropriate error code. - * - * Note, you can only have one `token` or `deleteToken` call for a given - * authorizedEntity and scope at a point of time. Making another such call with the - * same authorizedEntity and scope before the last one finishes will result in an error - * with code `OperationInProgress`. - * - * @param authorizedEntity Entity that must no longer have access. - * @param scope Action that entity is no longer authorized to perform. - * @param handler The handler that is invoked once the unsubscribe call ends. - * In case of error an appropriate error object is returned - * else error is nil. - */ -- (void)deleteTokenWithAuthorizedEntity:(nonnull NSString *)authorizedEntity - scope:(nonnull NSString *)scope - handler:(nonnull FIRInstanceIDDeleteTokenHandler)handler; - -#pragma mark - Identity - -/** - * Asynchronously fetch a stable identifier that uniquely identifies the app - * instance. If the identifier has been revoked or has expired, this method will - * return a new identifier. - * - * - * @param handler The handler to invoke once the identifier has been fetched. - * In case of error an appropriate error object is returned else - * a valid identifier is returned and a valid identifier for the - * application instance. - */ -- (void)getIDWithHandler:(nonnull FIRInstanceIDHandler)handler; - -/** - * Resets Instance ID and revokes all tokens. - */ -- (void)deleteIDWithHandler:(nonnull FIRInstanceIDDeleteHandler)handler; - -@end diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Headers/FirebaseInstanceID.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Headers/FirebaseInstanceID.h deleted file mode 100755 index 053ec2b1..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Headers/FirebaseInstanceID.h +++ /dev/null @@ -1 +0,0 @@ -#import "FIRInstanceID.h" diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Modules/module.modulemap b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Modules/module.modulemap deleted file mode 100755 index 267c0356..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Modules/module.modulemap +++ /dev/null @@ -1,7 +0,0 @@ -framework module FirebaseInstanceID { - umbrella header "FirebaseInstanceID.h" - export * - module * { export *} - link framework "Foundation" - link framework "UIKit" -}
\ No newline at end of file diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/GoogleToolboxForMac.framework/GoogleToolboxForMac b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/GoogleToolboxForMac.framework/GoogleToolboxForMac Binary files differdeleted file mode 100644 index 345b889c..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Analytics/GoogleToolboxForMac.framework/GoogleToolboxForMac +++ /dev/null diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/FirebaseCrash.framework/FirebaseCrash b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/FirebaseCrash.framework/FirebaseCrash Binary files differdeleted file mode 100755 index 7cf08c10..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/FirebaseCrash.framework/FirebaseCrash +++ /dev/null diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/FirebaseCrash.framework/Headers/FIRCrashLog.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/FirebaseCrash.framework/Headers/FIRCrashLog.h deleted file mode 100755 index ac446a62..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/FirebaseCrash.framework/Headers/FIRCrashLog.h +++ /dev/null @@ -1,164 +0,0 @@ -#import <Foundation/Foundation.h> - -NS_ASSUME_NONNULL_BEGIN - -/** - * @abstract Logs a message to the Firebase Crash Reporter system. - * - * @discussion This method adds a message to the crash reporter - * logging system. The recent logs will be sent with the crash - * report when the application exits abnormally. Note that the - * timestamp of this message and the timestamp of the console - * message may differ by a few milliseconds. - * - * Messages should be brief as the total size of the message payloads - * is limited by the uploader and may change between releases of the - * crash reporter. Excessively long messages will be truncated - * safely but that will introduce a delay in submitting the message. - * - * @warning Raises an NSInvalidArgumentException if @p format is nil. - * - * @param format A format string. - * - * @param ap A variable argument list. - */ -FOUNDATION_EXTERN NS_FORMAT_FUNCTION(1, 0) -void FIRCrashLogv(NSString *format, va_list ap); - -/** - * @abstract Logs a message to the Firebase Crash Reporter system. - * - * @discussion This method adds a message to the crash reporter - * logging system. The recent logs will be sent with the crash - * report when the application exits abnormally. Note that the - * timestamp of this message and the timestamp of the console - * message may differ by a few milliseconds. - * - * Messages should be brief as the total size of the message payloads - * is limited by the uploader and may change between releases of the - * crash reporter. Excessively long messages will be truncated - * safely but that will introduce a delay in submitting the message. - * - * @warning Raises an NSInvalidArgumentException if @p format is nil. - * - * @param format A format string. - * - * @param ... A comma-separated list of arguments to substitute into - * format. - * - * @see FIRCrashLogv(format, ap) - */ -FOUNDATION_STATIC_INLINE NS_FORMAT_FUNCTION(1, 2) -void FIRCrashLog(NSString *format, ...) { - va_list ap; - - va_start(ap, format); - FIRCrashLogv(format, ap); - va_end(ap); -} - -/** - * @abstract Logs a message to the Firebase Crash Reporter system as - * well as <code>NSLog()</code>. - * - * @discussion This method adds a message to the crash reporter - * logging system. The recent logs will be sent with the crash - * report when the application exits abnormally. Note that the - * timestamp of this message and the timestamp of the console - * message may differ by a few milliseconds. - * - * Messages should be brief as the total size of the message payloads - * is limited by the uploader and may change between releases of the - * crash reporter. Excessively long messages will be truncated - * safely but that will introduce a delay in submitting the message. - * - * @warning Raises an NSInvalidArgumentException if @p format is nil. - * - * @param format A format string. - * - * @param ap A variable argument list. - */ -FOUNDATION_STATIC_INLINE NS_FORMAT_FUNCTION(1, 0) -void FIRCrashNSLogv(NSString *format, va_list ap) { - va_list ap2; - - va_copy(ap2, ap); - NSLogv(format, ap); - FIRCrashLogv(format, ap2); - va_end(ap2); -} - -/** - * @abstract Logs a message to the Firebase Crash Reporter system as - * well as <code>NSLog()</code>. - * - * @discussion This method adds a message to the crash reporter - * logging system. The recent logs will be sent with the crash - * report when the application exits abnormally. Note that the - * timestamp of this message and the timestamp of the console - * message may differ by a few milliseconds. - * - * Messages should be brief as the total size of the message payloads - * is limited by the uploader and may change between releases of the - * crash reporter. Excessively long messages will be truncated - * safely but that will introduce a delay in submitting the message. - * - * @warning Raises an NSInvalidArgumentException if @p format is nil. - * - * @param format A format string. - * - * @param ... A comma-separated list of arguments to substitute into - * format. - * - * @see FIRCrashLogv(format, ap) - */ -FOUNDATION_STATIC_INLINE NS_FORMAT_FUNCTION(1, 2) -void FIRCrashNSLog(NSString *format, ...) { - va_list ap; - - va_start(ap, format); - FIRCrashNSLogv(format, ap); - va_end(ap); -} - -/** - * @abstract Logs a message to the Firebase Crash Reporter system in - * a way that is easily called from Swift code. - * - * @discussion This method adds a message to the crash reporter - * logging system. Similar to FIRCrashLog, but with a call signature - * that is more Swift friendly. Unlike FIRCrashLog, callers - * use string interpolation instead of formatting arguments. - * - * @code - * public func mySwiftFunction() { - * let unexpected_number = 10; - * FIRCrashMessage("This number doesn't seem right: \(unexpected_number)"); - * } - * @endcode - * - * Messages should be brief as the total size of the message payloads - * is limited by the uploader and may change between releases of the - * crash reporter. Excessively long messages will be truncated - * safely but that will introduce a delay in submitting the message. - * - * @param Message A log message - * - * @see FIRCrashLog(format, ...) - */ -FOUNDATION_STATIC_INLINE -void FIRCrashMessage(NSString *message) { - FIRCrashLog(@"%@", message); -} - -NS_ASSUME_NONNULL_END - -#ifdef FIRCRASH_REPLACE_NSLOG -#if defined(DEBUG) || defined(FIRCRASH_LOG_TO_CONSOLE) -#define NSLog(...) FIRCrashNSLog(__VA_ARGS__) -#define NSLogv(...) FIRCrashNSLogv(__VA_ARGS__) -#else -#define NSLog(...) FIRCrashLog(__VA_ARGS__) -#define NSLogv(...) FIRCrashLogv(__VA_ARGS__) -#endif -#endif diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/FirebaseCrash.framework/Headers/FirebaseCrash.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/FirebaseCrash.framework/Headers/FirebaseCrash.h deleted file mode 100755 index 18659214..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/FirebaseCrash.framework/Headers/FirebaseCrash.h +++ /dev/null @@ -1 +0,0 @@ -#import "FIRCrashLog.h" diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/FirebaseCrash.framework/Modules/module.modulemap b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/FirebaseCrash.framework/Modules/module.modulemap deleted file mode 100755 index 537a790a..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/FirebaseCrash.framework/Modules/module.modulemap +++ /dev/null @@ -1,12 +0,0 @@ -framework module FirebaseCrash { - umbrella header "FirebaseCrash.h" - export * - module * { export *} - link "sqlite3" - link "z" - link framework "CoreGraphics" - link framework "CoreTelephony" - link framework "Foundation" - link framework "SystemConfiguration" - link framework "UIKit" -}
\ No newline at end of file diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/Protobuf.framework/Protobuf b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/Protobuf.framework/Protobuf Binary files differdeleted file mode 100644 index 546e02ec..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/Protobuf.framework/Protobuf +++ /dev/null diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/batch-upload b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/batch-upload deleted file mode 100755 index 053a3ee7..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/batch-upload +++ /dev/null @@ -1,416 +0,0 @@ -#!/bin/bash - -usage () { - echo >&2 "usage: ${0##*/} [-hv] [-p google-service] [-i info] service-account-file {mach-o file|uuid} ..." -} - -help () { - usage - cat >&2 <<EOF - --h Show this help. --p Location of GoogleService-Info.plist. --i Location of Info.plist. --v Be verbose. - -account JSON file containing account information. -mach-o A path to an executable, dSYM file, library, - or other Mach-O object. -uuid A dSYM file's UUID (searches for the file). - -Processes one or more Mach-O files for use with the Firebase Crash -Reporter. dSYM bundles may be specified by full path to the dSYM -companion file (usually found under "DWARF") or by UUID. - -For applications and frameworks, please use the full path to the -Mach-O file. For frameworks, this will be "Blah.framework/Blah". -For applications, this will be "Blah.app/Blah". - -Useful environment variables: - - SERVICE_PLIST - path to GoogleService-Info.plist (-p command-line option) - INFO_PLIST - path to Info.plist (-i command-line option) - DUMP_SYMS - path to dump_syms executable - FCR_BUNDLE_ID - CFBundleIdentifier (build version) from Info.plist - FCR_PROD_VERS - CFBundleShortVersionString from Info.plist - FIREBASE_API_KEY - API key from GoogleService-Info.plist - FIREBASE_APP_ID - App ID from GoogleService-Info.plist - SWIFT_DEMANGLE - path to swift-demangle executable - -Setting any of the above prevents this script from searching for the -values. Specifically, the SERVICE_PLIST and INFO_PLIST files are not -required if FCR_* and FIREBASE_* environment variables are not empty. - -EOF -} - -KEEP_TEMPORARIES=false # mostly for debugging (not documented) - -while getopts hi:kp:v-: OPT; do - case ${OPT} in - h) help; exit 0;; - i) INFO_PLIST="${OPTARG}";; - k) KEEP_TEMPORARIES=true;; - p) SERVICE_PLIST="${OPTARG}";; - v) ((VERBOSE+=1));; - -) case "${OPTARG}" in - help) help; exit 0;; - info=*) INFO_PLIST="${OPTARG#info=}";; - service=*) SERVICE_PLIST="${OPTARG#service=}";; - verbose) ((VERBOSE+=1));; - *) usage; exit 2;; - esac;; - ?) usage; exit 2;; - esac -done - -shift $((OPTIND - 1)) - -. "$(dirname "$0")/upload-sym-util.bash" - -var_check () { - for VAR; do - if [[ "${!VAR}" =~ \$\(.*\) ]]; then - xcwarning "${VAR} (== \"${!VAR}\") appears to have unexpanded variables." - xcnote "Consider specifying it through an environment variable." - fi - done -} - -SERVICE_ACCOUNT_FILE="$1" - -if [[ ! -f "${SERVICE_ACCOUNT_FILE}" ]]; then - xcwarning "The first argument does not look like a service account file." - xcdebug "Will attempt to extract account file from legacy cache." - unset SERVICE_ACCOUNT_FILE -else - shift -fi - -if (( $# == 0 )); then - usage - exit 2 -fi - -if [[ "${INFO_PLIST}" && -f "${INFO_PLIST%/*}/GoogleService-Info.plist" ]]; then - : "${SERVICE_PLIST:="${INFO_PLIST%/*}/GoogleService-Info.plist"}" -fi - -if [[ "${SERVICE_PLIST}" && -f "${SERVICE_PLIST%/*}/Info.plist" ]]; then - : "${INFO_PLIST:="${SERVICE_PLIST%/*}/Info.plist"}" -fi - -xcdebug "SERVICE_PLIST = ${SERVICE_PLIST:="$(find . -name GoogleService-Info.plist | head -n1)"}" - -xcdebug "INFO_PLIST = ${INFO_PLIST:="$(find . -name Info.plist | head -n1)"}" - -if [[ -f "${SERVICE_PLIST}" ]]; then - xcdebug "FIREBASE_API_KEY = ${FIREBASE_API_KEY:="$(/usr/libexec/PlistBuddy -c 'print API_KEY' "${SERVICE_PLIST}")"}" - xcdebug "FIREBASE_APP_ID = ${FIREBASE_APP_ID:="$(/usr/libexec/PlistBuddy -c 'print GOOGLE_APP_ID' "${SERVICE_PLIST}")"}" - xcdebug "FCR_BUNDLE_ID = ${FCR_BUNDLE_ID:="$(/usr/libexec/PlistBuddy -c 'print BUNDLE_ID' "${SERVICE_PLIST}")"}" -fi - -if [[ -f "${INFO_PLIST}" ]]; then - xcdebug "FCR_PROD_VERS = ${FCR_PROD_VERS:="$(/usr/libexec/PlistBuddy -c 'print CFBundleShortVersionString' "${INFO_PLIST}" 2>/dev/null)"}" -fi - -var_check FCR_PROD_VERS FCR_BUNDLE_ID - -ERROR=$'environment variable empty or unset\n\nExplicitly add to environment or set GoogleService-Info.plist (-p)\nand Info.plist (-i) flags to extract values from the files.\n\nTry "'"$0"' -h" for details.' - -: "${FIREBASE_API_KEY:?"${ERROR}"}" "${FIREBASE_APP_ID:?"${ERROR}"}" -: "${FCR_PROD_VERS:?"${ERROR}"}" "${FCR_BUNDLE_ID:?"${ERROR}"}" - -# Extract key from legacy cache. - -if [[ ! "${SERVICE_ACCOUNT_FILE}" ]]; then - xcwarning "Running extract-keys on desktop." - EXTRACT_KEYS="$(script_dir)/extract-keys" - (cd "${HOME}/Desktop"; "${EXTRACT_KEYS}") || exit $? - SERVICE_ACCOUNT_FILE="${HOME}/Desktop/${FIREBASE_APP_ID}.json" - xcdebug "Using ${SERVICE_ACCOUNT_FILE} as account file. Please move this and all other extracted keys to a safe place." -fi - -if [[ ! -f "${SERVICE_ACCOUNT_FILE}" ]]; then - echo >&2 "Unable to find service account file." - echo >&2 - usage - exit 2 -fi - -# usage: extract_symbols_and_upload *dwarf-file* *arch* *exe-file* -# -# Do NOT use the dSYM bundle path. While it may work on occasion, it -# is not guaranteed to do so; the full path to the DWARF companion -# file will always work. (Discovered by Kerem Erkan.) -# -# If the executable is empty, use the DWARF companion file as a proxy -# for the executable. -extract_symbols_and_upload () { - local DWARF_COMPANION="$1" ARCH="$2" EXECUTABLE="$3" - - if [[ ! "${EXECUTABLE}" ]]; then - xcdebug "No executable; using ${DWARF_COMPANION} as symbol source." - - EXECUTABLE="${DWARF_COMPANION}" - unset DWARF_COMPANION - fi - - [[ "${EXECUTABLE}" ]] || return 1 - - if [[ -x "${SWIFT_DEMANGLE:=$(xcrun --find swift-demangle 2>/dev/null)}" ]]; - then - SWIFT_DEMANGLE_COMMAND="${SWIFT_DEMANGLE} -simplified" - else - SWIFT_DEMANGLE_COMMAND=/bin/cat - fi - fcr_mktemp SYMBOL_FILE - - "${DUMP_SYMS:="$(script_dir)/dump_syms"}" -a "${ARCH}" ${DWARF_COMPANION:+-g "${DWARF_COMPANION}"} "${EXECUTABLE}" | ${SWIFT_DEMANGLE_COMMAND} >|"${SYMBOL_FILE}" || return $? - - fcr_upload_files "${SYMBOL_FILE}" || return $? -} - -# usage: is_executable *path* -# -# Check to see if the file is an executable or a dSYM bundle -is_executable () { - [[ -f "$1" || ( -d "$1" && "${1%/}" == *.dSYM ) ]] -} - -# usage: is_uuid *string* -# -# Verify that the argument is a UUID. -is_uuid () { - [[ "$1" =~ ^[[:xdigit:]]{8}-[[:xdigit:]]{4}-[[:xdigit:]]{4}-[[:xdigit:]]{4}-[[:xdigit:]]{12}$ ]] -} - -# usage: set_uuids_archs *mach-o-file* -# -# side effect: appends to UUIDS, ARCHS -# -# Extract the uuid and architecture information from the given Mach-O -# file and append the information to the UUIDS and ARCHS arrays. -set_uuids_archs () { - eval "$(dwarfdump --uuid "$1" | awk '/^UUID:/ { print "UUIDS+=(" $2 "); ARCHS+=" $3 }')" -} - -# usage: mdls_to_bash -# -# Convert the output of mdls to a string consumable by bash. mdls -# outputs string arrays as quoted strings separated by commas, and -# Unicode characters as '\Uxxxx'. -# -# Note: this is sensitive to the current locale. If the locale is not -# UTF-8, then wide-character warnings will result if the strings -# contain non-ASCII characters. This is actually a desired behavior, -# because bash has issues with non-Unicode encodings for file names. -# (The macOS default is to have UTF-8 enabled, so this should not be a -# problem for the majority of use cases.) -mdls_to_bash () { - perl -C -ple 's/,$//; s/\\U(....)/chr hex $1/ge' -} - -for EXE; do - if is_executable "${EXE}"; then - xcdebug "Assuming ${EXE} is an executable or dSYM bundle." - - # Import architecture UUID information - UUIDS=() ARCHS=() - set_uuids_archs "${EXE}" - - for I in "${!UUIDS[@]}"; do - xcdebug "Found ${UUIDS[$I]} for ${ARCHS[$I]} in ${EXE}" - done - - if ((${#UUIDS[*]} == 0)); then - xcwarning "${EXE} exists, but has no architecture information." - continue - fi - - if [[ "${EXE}" = *.dSYM ]]; then - xcdebug "Removing dSYM bundle as executable target." - unset EXE - fi - - elif is_uuid "${EXE}"; then - xcdebug "${EXE} looks like a UUID to me." - UUIDS=("${EXE}"); unset EXE - - else - xcwarning "${EXE}: not an executable, bundle, or UUID." - continue - fi - - BUNDLES=() - - for UUID in "${UUIDS[@]}"; do - xcdebug "Searching for ${UUID} ..." - - QUERY_UUID="com_apple_xcode_dsym_uuids == '${UUID}'" - QUERY_TYPE="kMDItemContentType == 'com.apple.xcode.dsym' || kMDItemContentType == 'com.apple.xcode.archive'" - QUERY="(${QUERY_UUID}) && (${QUERY_TYPE})" - - if ((VERBOSE > 1)); then - xcnote "Passing query \"${QUERY}\" to mdfind." - fi - - MD_FIND_RESULT=() - - eval "$(mdfind "${QUERY}" -0 | xargs -0 perl -le 'print "MD_FIND_RESULT+=(\Q$_\E)" for @ARGV')" - - xcdebug "mdfind returned (${MD_FIND_RESULT[*]})" - - # BUNDLES should contain no duplicates. - for I in "${!MD_FIND_RESULT[@]}"; do - for BUNDLE in "${BUNDLES[@]}"; do - if [[ "${MD_FIND_RESULT[$I]}" == "$BUNDLE" ]]; then - unset "MD_FIND_RESULT[$I]" - fi - done - done - - BUNDLES+=("${MD_FIND_RESULT[@]}") - done - - if [[ ${#BUNDLES[@]} == 0 && ${#ARCHS[@]} == 0 ]]; then - xcwarning "No executable or bundle found for ${UUIDS[*]}." - xcnote "Try passing in the executable itself instead of a UUID." - continue - fi - - xcdebug "BUNDLES = (${BUNDLES[*]})" - - if [[ ${#BUNDLES[@]} == 0 ]]; then - xcdebug "No dSYM bundle found." - - # The dSYM has to be on a normal volume (not temporary). It - # can, however, be shared among multiple executables. - if [[ ! "${SCRATCH_BUNDLE}" ]]; then - SCRATCH_BUNDLE="${HOME}/com.google.BatchUploadScratchFile.dSYM" - FCR_TEMPORARY_FILES+=("${SCRATCH_BUNDLE}") - fi - - xcdebug "Creating one in ${SCRATCH_BUNDLE}" - - BUNDLES=("${SCRATCH_BUNDLE}") - - # Create the dSYM bundle. This may produce an empty dSYM - # bundle if the executable has no debugging information. - xcrun dsymutil -o "${BUNDLES[0]}" "${EXE}"; STATUS=$? - - if ((STATUS)); then - xcwarning "Command dsymutil failed with exit code ${STATUS}." - continue - fi - - # Import the dSYM bundle. There is a momentary delay between - # creating the bundle and having it indexed; explicitly - # importing guarantees the mds database is up-to-date when we - # ask it for information about UUIDs and paths. - mdimport "${SCRATCH_BUNDLE}"; STATUS=$? - - if ((STATUS)); then - xcwarning "Command mdimport failed with exit code ${STATUS}." - continue - fi - fi - - SEEN_ARCH=() SEEN_PATH=() - - for BUNDLE in "${BUNDLES[@]}"; do - typeset -a BNDL_UUIDS BNDL_PATHS # keeps ShellLint happy - - eval "BNDL_UUIDS=$(mdls -raw -name com_apple_xcode_dsym_uuids "${BUNDLE}" | mdls_to_bash)" - eval "BNDL_PATHS=$(mdls -raw -name com_apple_xcode_dsym_paths "${BUNDLE}" | mdls_to_bash)" - - # Neither of these SHOULD occur, but curious things happen out - # in the field. - if ((${#BNDL_UUIDS[@]} != ${#BNDL_PATHS[@]})); then - xcwarning "${BUNDLE}: Malformed dSYM bundle." - continue - elif ((${#BNDL_UUIDS[@]} == 0)); then - xcwarning "${BUNDLE}: No DWARF information." - continue - fi - - # If no executable was specified, then the UUIDS and ARCHS - # arrays are empty. Populate them with information from the - # bundle. - if [[ ! "${EXE}" ]]; then - # The final UUIDS setting will be the intersection of the - # discovered set and the originally specified UUIDS. This - # is to prevent uploading potentially private information. - SOUGHT_UUIDS=("${UUIDS[@]}") - - UUIDS=() ARCHS=() - for BNDL_PATH in "${BNDL_PATHS[@]}"; do - set_uuids_archs "${BUNDLE}/${BNDL_PATH}" - done - - if ((${#SOUGHT_UUIDS[@]})); then - for I in "${!UUIDS[@]}"; do - for UUID in "${SOUGHT_UUIDS[@]}"; do - if [[ "${UUIDS[$I]}" == "${UUID}" ]]; then - continue 2 - fi - done - - # This is not the DWARF you are looking for... - xcdebug "Rejecting ${UUIDS[$I]} (${ARCHS[$I]}) as candidate DWARF file." - unset "UUIDS[$I]" "ARCHS[$I]" - done - fi - - unset SOUGHT_UUIDS - fi - - for I in "${!BNDL_UUIDS[@]}"; do - # See comment on extract_symbols_and_upload for why the - # full path to the companion file is required. - - BNDL_UUID="${BNDL_UUIDS[$I]}" DWARF_COMPANION="${BUNDLE}/${BNDL_PATHS[$I]}" - - for J in "${!ARCHS[@]}"; do - # A dSYM bundle can contain multiple architectures for - # multiple applications. Make sure we get the right - # one. - if [[ "${BNDL_UUID}" == "${UUIDS[$J]}" ]]; then - ARCH="${ARCHS[$J]}" - break - fi - done - - if [[ ! "${ARCH}" ]]; then - # This is not an error: it is legal for a dSYM bundle - # to contain debugging information for multiple - # executables (such as a framework with multiple - # subframeworks). Just ignore it. - xcdebug "No matching information found in ${DWARF_COMPANION} with UUID ${BNDL_UUID}." - continue - fi - - xcdebug "Found ${UUID} for ${ARCH} in ${DWARF_COMPANION}" - - # Have we already uploaded this file? - for J in "${!SEEN_ARCH[@]}"; do - if [[ "${ARCH}" == "${SEEN_ARCH[$J]}" ]] && cmp -s "${DWARF_COMPANION}" "${SEEN_PATH[$J]}"; then - xcdebug "${DWARF_COMPANION}: copy of ${SEEN_PATH[$J]}; no need to upload." - continue 2 - fi - done - - if [[ -f "${DWARF_COMPANION}" ]]; then - extract_symbols_and_upload "${DWARF_COMPANION}" "${ARCH}" "${EXE}" || exit $? - SEEN_ARCH+=("${ARCH}") SEEN_PATH+=("${DWARF_COMPANION}") - fi - done - done -done - -# For debugging odd cases. -if "${KEEP_TEMPORARIES}"; then - FCR_TEMPORARY_FILES=() -fi - -echo "Done." diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/dump_syms b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/dump_syms Binary files differdeleted file mode 100755 index 8d0ef781..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/dump_syms +++ /dev/null diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/extract-keys b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/extract-keys deleted file mode 100755 index 0da57003..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/extract-keys +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -PLIST="${HOME}/Library/Preferences/com.google.SymbolUpload.plist" - -[[ -f $PLIST ]] || exit - -defaults read com.google.SymbolUpload | -perl -nle '/"(app_\d+_\d+_ios_.*)"/ and print $1' | -while read KEY; do - APP_ID="${KEY#app_}"; APP_ID="${APP_ID//_/:}" - plutil -extract "${KEY}" json -o "${APP_ID}.json" "${PLIST}" -done diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/upload-sym b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/upload-sym deleted file mode 100755 index 1f8327dc..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/upload-sym +++ /dev/null @@ -1,273 +0,0 @@ -#!/bin/bash - -usage () { - echo >&2 "usage: $0 [-h] [-v] [-w|-e] service-account-file" -} - -help () { - usage - - cat >&2 <<EOF - - -h This message. - -v Increase verbosity. Multiple -v options will provide - increasing details. Use at least '-vv' when reporting bugs. - -w Treat errors as warnings. Does not change the exit status. - -e Treat warnings as errors. Does not change the exit status. - -The service account private key file is downloaded from the Firebase -console. See - - https://firebase.google.com/docs/crash/ios#upload_symbol_files - -for details on retrieving this file. Older keys may still be in the -registry. Consider using extract-keys.pl to retrieve them. - -Execute this script in the final phase of your build. It will not -work outside of Xcode, and should warn you if you try. See the -batch-upload script included in this distribution to upload symbols -outside of an Xcode build. - -Here is an example Run Script Phase you can add to your project -to invoke this script: - - "\${PODS_ROOT}/FirebaseCrashReporting/upload-sym" \\ - "\${HOME}/Library/Developer/My Project-1fad0d0767b42e.json" - -To avoid stopping the build should the upload fail, - - "\${PODS_ROOT}/FirebaseCrashReporting/upload-sym" -w \\ - "\${HOME}/Library/Developer/My Project-1fad0d0767b42e.json" - exit 0 # claim success no matter what - -EOF -} - -# Parse optional command-line flags. - -VERBOSE=0 WARNINGS_ONLY=0 ERRORS_ONLY=0 - -while getopts ehvw OPT; do - case "${OPT}" in - h) help; exit 0;; - v) VERBOSE=$((VERBOSE + 1));; - w) WARNINGS_ONLY=1;; - e) ERRORS_ONLY=1;; - ?) usage; exit 2;; - esac -done - -shift $((OPTIND - 1)) - -if ((WARNINGS_ONLY && ERRORS_ONLY)); then - echo >&2 "Either -w or -e may be specified, but not both." - echo >&2 - usage - exit 2 -fi - -SERVICE_ACCOUNT_FILE="$1"; shift - -if (($#)); then - echo >&2 "Unexpected argument '$1'" - echo >&2 - usage - exit 2 -fi - -export PATH=/bin:/usr/bin # play it safe - -# Load common utility routines. - -. "$(dirname "$0")/upload-sym-util.bash" - -# Make the error output Xcode-friendly. - -# This is a bit of Bash voodoo that cries for an explanation and is -# horribly underdocumented on-line. The construct '>(...)' starts a -# subprocess with its stdin connected to a pipe. After starting the -# subprocess, the parser replaces the construct with the NAME of the -# writable end of the pipe as a named file descriptor '/dev/fd/XX', -# then reevaluates the line. So, after the subprocess is started -# (which filters stdin and outputs to stderr [not stdout]), the line -# "exec 2> /dev/fd/XX" is evaluated. This redirects the main -# process's stderr to the given file descriptor. -# -# The end result is that anything sent to stderr of the form: -# file.in: line 47: blah blah -# is replaced with -# file.in:47: error: blah blah -# which Xcode will detect and emphasize in the formatted output. - -exec 2> >(sed -e 's/: line \([0-9]*\):/:\1: error:/' >&2) - -# Be long-winded about problems. The user may not understand how this -# script works or what prerequisites it has. If the user sees this, -# it is likely that they are executing the script outside of an Xcode -# build. - -ERRMSG=$'Value missing\n\nThis script must be executed as part of an Xcode build stage to have the\nproper environment variables set.' - -# Locate Xcode-generated files. - -: "${TARGET_BUILD_DIR:?"${ERRMSG}"}" -: "${FULL_PRODUCT_NAME:?"${ERRMSG}"}" - -DSYM_BUNDLE="${DWARF_DSYM_FOLDER_PATH?"${ERRMSG}"}/${DWARF_DSYM_FILE_NAME?"${ERRMSG}"}" -[[ -e "${DSYM_BUNDLE}" ]] || unset DSYM_BUNDLE - -EXECUTABLE="${TARGET_BUILD_DIR?"${ERRMSG}"}/${EXECUTABLE_PATH?"${ERRMSG}"}" - -# Locate dump_syms utility. - -if ! [[ -f "${FCR_DUMP_SYMS:=$(script_dir)/dump_syms}" && -x "${FCR_DUMP_SYMS}" ]]; then - xcerror "Cannot find dump_syms." - xcnote "It should have been installed with the Cocoapod. The location of dump_syms can be explicitly set using the environment variable FCR_DUMP_SYMS if you are using a non-standard install." - - exit 2 -fi - -if [[ ! "${FIREBASE_API_KEY}" || ! "${FIREBASE_APP_ID}" ]]; then - : "${SERVICE_PLIST:="$(find "${TARGET_BUILD_DIR}/${FULL_PRODUCT_NAME}" -name GoogleService-Info.plist | head -n1)"}" - : "${SERVICE_PLIST:?"GoogleService-Info.plist could not be located"}" - : "${FIREBASE_API_KEY:="$(property API_KEY "${SERVICE_PLIST}")"}" - : "${FIREBASE_APP_ID:="$(property GOOGLE_APP_ID "${SERVICE_PLIST}")"}" -fi - -if ! [[ "${FIREBASE_API_KEY}" ]]; then - xcerror "Unable to get API_KEY from ${SERVICE_PLIST}." - xcnote "Specify FIREBASE_API_KEY in environment." - exit 2 -fi - -if ! [[ "${FIREBASE_APP_ID}" ]]; then - xcerror "Unable to get GOOGLE_APP_ID from ${SERVICE_PLIST}." - xcnote "Specify FIREBASE_APP_ID in environment." - exit 2 -fi - -# Load Info.plist values (Bundle ID & version) - -INFOPLIST="${TARGET_BUILD_DIR}/${INFOPLIST_PATH}" - -if [[ -f "${INFOPLIST}" ]]; then - : "${FCR_PROD_VERS:="$(property CFBundleShortVersionString "${INFOPLIST}")"}" - : "${FCR_BUNDLE_ID:="$(property CFBundleIdentifier "${INFOPLIST}")"}" -fi - -if ! [[ "${FCR_PROD_VERS}" ]]; then - xcerror "Unable to get CFBundleShortVersionString from Info.plist." - xcnote "Specify FCR_PROD_VERS in environment." - exit 2 -fi - -if ! [[ "${FCR_BUNDLE_ID}" ]]; then - xcerror "Unable to get CFBundleIdentifier from Info.plist." - xcnote "Specify FCR_BUNDLE_ID in environment." - exit 2 -fi - -# Support legacy account file cache before giving up - -if [[ ! -f "${SERVICE_ACCOUNT_FILE}" ]]; then - xcwarning "Unable to find service account JSON file: ${SERVICE_ACCOUNT_FILE}" - "Please ensure you've followed the steps at:" - "https://firebase.google.com/docs/crash/ios#upload_symbol_files" - - xcdebug "Trying to extract JSON file from cache." - - CACHE_PLIST="${HOME}/Library/Preferences/com.google.SymbolUpload.plist" - - if [[ -f "${CACHE_PLIST}" ]]; then - fcr_mktemp SERVICE_ACCOUNT_FILE - /usr/bin/plutil -extract "app_${FIREBASE_APP_ID//:/_}" \ - json -o "${SERVICE_ACCOUNT_FILE}" "${CACHE_PLIST}" >/dev/null 2>&1 - if [[ ! -s "${SERVICE_ACCOUNT_FILE}" ]]; then - xcwarning "${FIREBASE_APP_ID} not found in cache." - /bin/rm -f "${SERVICE_ACCOUNT_FILE}" - else - xcnote "${FIREBASE_APP_ID} found in cache. Consider using extract-keys.pl to reduce reliance on cache." - fi - else - xcnote "No cache file found." - fi -fi - -if [[ ! -f "${SERVICE_ACCOUNT_FILE}" ]]; then - xcerror "All attempts to find the service account JSON file have failed." - xcnote "You must supply it on the command line." - echo >&2 -n "$0:1: note: "; usage - exit 2 -fi - -# Dump collected information if requested - -if ((VERBOSE >= 2)); then - xcnote "FIREBASE_API_KEY = ${FIREBASE_API_KEY}" - xcnote "FIREBASE_APP_ID = ${FIREBASE_APP_ID}" - xcnote "DSYM_BUNDLE = ${DSYM_BUNDLE:-(unset, will use symbols in executable)}" - xcnote "EXECUTABLE = ${EXECUTABLE}" - xcnote "INFOPLIST = ${INFOPLIST}" - xcnote "FCR_PROD_VERS = ${FCR_PROD_VERS}" - xcnote "FCR_BUNDLE_ID = ${FCR_BUNDLE_ID}" -fi - -# Create and upload symbol files for each architecture -if [[ -x "${SWIFT_DEMANGLE:=$(xcrun --find swift-demangle 2>/dev/null)}" ]]; then - SWIFT_DEMANGLE_COMMAND="${SWIFT_DEMANGLE} -simplified" -else - SWIFT_DEMANGLE_COMMAND=/bin/cat -fi - -for ARCH in ${ARCHS?:}; do - SYMBOL_FILE="SYMBOL_FILE_${ARCH}" - fcr_mktemp "${SYMBOL_FILE}" SCRATCH - - # Just because there is a dSYM bundle at that path does not mean - # it is the RIGHT dSYM bundle... - - if [[ -d "${DSYM_BUNDLE}" ]]; then - DSYM_UUID="$(dwarfdump --arch "${ARCH}" --uuid "${DSYM_BUNDLE}" | awk '{print $2}')" - EXE_UUID="$(dwarfdump --arch "${ARCH}" --uuid "${EXECUTABLE}" | awk '{print $2}')" - if ((VERBOSE > 1)); then - xcnote "dSYM bundle UUID: ${DSYM_UUID}" - xcnote "Executable UUID: ${EXE_UUID}" - fi - if [[ "${DSYM_UUID}" != "${EXE_UUID}" ]]; then - xcdebug "Current dSYM bundle is not valid." - unset DSYM_BUNDLE - fi - fi - - if [[ ! -d "${DSYM_BUNDLE}" ]]; then - xcdebug "Extracting dSYM from executable." - fcr_mktempdir TMP_DSYM - DSYM_BUNDLE="${TMP_DSYM}/${EXECUTABLE##*/}.dSYM" - xcrun dsymutil -o "${DSYM_BUNDLE}" "${EXECUTABLE}" - STATUS=$? - if ((STATUS)); then - xcerror "Command dsymutil failed with exit code ${STATUS}." - exit ${STATUS} - fi - fi - - "${FCR_DUMP_SYMS}" -a "${ARCH}" -g "${DSYM_BUNDLE}" "${EXECUTABLE}" >"${SCRATCH}" 2> >(sed -e 's/^/warning: dump_syms: /' | grep -v 'failed to demangle' >&2) - - STATUS=$? - if ((STATUS)); then - xcerror "Command dump_syms failed with exit code ${STATUS}." - exit ${STATUS} - fi - - ${SWIFT_DEMANGLE_COMMAND} <"${SCRATCH}" >|"${!SYMBOL_FILE}" || exit 1 - - if ((VERBOSE >= 2)); then - xcnote "${EXECUTABLE##*/} (architecture ${ARCH}) symbol dump follows (first 20 lines):" - head >&2 -n20 "${!SYMBOL_FILE}" - elif ((VERBOSE >= 1)); then - xcnote "${EXECUTABLE##*/} (architecture ${ARCH}) symbol dump follows (first line only):" - head >&2 -n1 "${!SYMBOL_FILE}" - fi - - fcr_upload_files "${!SYMBOL_FILE}" || exit 1 -done diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/upload-sym-util.bash b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/upload-sym-util.bash deleted file mode 100644 index a8f8c655..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/upload-sym-util.bash +++ /dev/null @@ -1,382 +0,0 @@ -# Output a clickable message. This will not count as a warning or -# error. - -xcnote () { - echo >&2 "${BASH_SOURCE[1]}:${BASH_LINENO[0]}: note: $*" -} - -# Output a clickable message prefixed with a warning symbol (U+26A0) -# and highlighted yellow. This will increase the overall warning -# count. A non-zero value for the variable ERRORS_ONLY will force -# warnings to be treated as errors. - -if ((ERRORS_ONLY)); then - xcwarning () { - echo >&2 "${BASH_SOURCE[1]}:${BASH_LINENO[0]}: error: $*" - } -else - xcwarning () { - echo >&2 "${BASH_SOURCE[1]}:${BASH_LINENO[0]}: warning: $*" - } -fi - -# Output a clickable message prefixed with a halt symbol (U+1F6D1) and -# highlighted red. This will increase the overall error count. Xcode -# will flag the build as failed if the error count is non-zero at the -# end of the build, even if this script returns a successful exit -# code. Set WARNINGS_ONLY to non-zero to prevent this. - -if ((WARNINGS_ONLY)); then - xcerror () { - echo >&2 "${BASH_SOURCE[1]}:${BASH_LINENO[0]}: warning: $*" - } -else - xcerror () { - echo >&2 "${BASH_SOURCE[1]}:${BASH_LINENO[0]}: error: $*" - } -fi - -xcdebug () { - if ((VERBOSE)); then - echo >&2 "${BASH_SOURCE[1]}:${BASH_LINENO[0]}: note: $*" - fi -} - -# Locate the script directory. - -script_dir () { - local SCRIPT="$0" SCRIPT_DIR="$(dirname "$0")" - - while SCRIPT="$(readlink "${SCRIPT}")"; do - [[ "${SCRIPT}" != /* ]] && SCRIPT="${SCRIPT_DIR}/${SCRIPT}" - SCRIPT_DIR="$(dirname "${SCRIPT}")" - done - - ( cd "${SCRIPT_DIR}"; pwd -P ) -} - -# Timestamp needed for various operations. Does not need to be exact, -# but does need to be consistent across web service calls. - -readonly NOW="$(/bin/date +%s)" - -# All files created by fcr_mktemp will be listed in FCR_TEMPORARY_FILES. -# Delete these when the enclosing script exits. (You may manually -# add files to this array as well to have them cleaned up on exit.) - -typeset -a FCR_TEMPORARY_FILES -trap 'STATUS=$?; rm -rf "${FCR_TEMPORARY_FILES[@]}"; exit ${STATUS}' 0 1 2 15 - -# Create a temporary file and add it to the list of files to delete when the -# script finishes. -# -# usage: fcr_mktemp VARNAME... - -fcr_mktemp () { - for VAR; do - eval "${VAR}=\$(mktemp -t com.google.FIRCrash) || return 1" - FCR_TEMPORARY_FILES+=("${!VAR}") - done -} - -# Create a temporary directory and add it to the list of files to -# delete when the script finishes. -# -# usage: fcr_mktempdir VARNAME... - -fcr_mktempdir () { - for VAR; do - eval "${VAR}=\$(mktemp -d -t com.google.FIRCrash) || return 1" - FCR_TEMPORARY_FILES+=("${!VAR}") - done -} - -# The keys we care about in the JSON objects. There are others that -# we do not use. Note that 'expires_at' and 'app_id' are not part of -# the original payload, but are computed from the environment used to -# make the call. - -FCR_SVC_KEYS=(client_email private_key private_key_id token_uri type) -FCR_TOK_KEYS=(access_token expires_at token_type app_id) - -# Extract a value from the property list. -# -# usage: property *name* *file* - -property () { - [[ -f "$2" ]] || echo '{}' >|"$2" # keeps PlistBuddy quiet - /usr/libexec/PlistBuddy "$2" -c "Print :$1" 2>/dev/null -} - -# Retrieve the property from the service account property list. -# -# usage: svc_property *name* - -svc_property () { - property "$1" "${SVC_PLIST}" -} - -# Does the same as svc_property above but for the token cache -# property list. -# -# usage: tok_property *name* - -tok_property () { - property "$1" "${TOK_PLIST}" -} - -# Verify that the service account property list has values for the -# required keys. Does not check the values themselves. - -fcr_verify_svc_plist () { - for key in "${FCR_SVC_KEYS[@]}"; do - if ! svc_property "${key}" >/dev/null; then - xcdebug "${key} not found in ${SVC_PLIST}. Service account invalid." - return 1 - fi - done -} - -# Verify that the token cache property list has values for the -# required keys. If the token_type is incorrect, the expiration date -# has been passed, or the application id does not match, return -# failure. - -fcr_verify_tok_plist () { - for key in "${FCR_TOK_KEYS[@]}"; do - if ! tok_property "${key}" >/dev/null; then - xcdebug "${key} not found in ${TOK_PLIST}. Token invalid." - return 1 - fi - done - - if [[ "$(tok_property token_type)" != "Bearer" ]]; then - xcwarning "Invalid token type '$(tok_property token_type)'." - return 1 - fi - - if (($(tok_property expires_at) <= NOW)); then - xcdebug "Token well-formed but expired at $(date -jf %s "$(tok_property expires_at)")." - echo '{}' >|"${TOK_PLIST}" - return 1 - fi - - if [[ "$(tok_property app_id)" != "${FIREBASE_APP_ID}" ]]; then - xcdebug "Cached token is for a different application." - echo '{}' >|"${TOK_PLIST}" - return 1 - fi -} - -# Convert a JSON certificate file to a PList certificate file. -# -# usage: fcr_load_certificate VARNAME - -fcr_load_certificate () { - : "${SERVICE_ACCOUNT_FILE:?must be the path to the service account JSON file.}" - fcr_mktemp "$1" - - if ! /usr/bin/plutil -convert binary1 "${SERVICE_ACCOUNT_FILE}" -o "${!1}"; then - xcerror "Unable to read service account file ${SERVICE_ACCOUNT_FILE}." - return 2 - fi -} - -# BASE64URL uses a sligtly different character set than BASE64, and -# uses no padding characters. - -function base64url () { - /usr/bin/base64 | sed -e 's/=//g; s/+/-/g; s/\//_/g' -} - -# Assemble the JSON Web Token (RFC 1795) -# -# usage: fcr_create_jwt *client-email* *token-uri* - -fcr_create_jwt () { - local JWT_HEADER="$(base64url <<<'{"alg":"RS256","typ":"JWT"}')" - local JWT_CLAIM="$(base64url <<<'{'"\"iss\":\"${1:?}\",\"aud\":\"${2:?}\",\"exp\":\"$((NOW + 3600))\",\"iat\":\"${NOW}\",\"scope\":\"https://www.googleapis.com/auth/mobilecrashreporting\""'}')" - local JWT_BODY="${JWT_HEADER}.${JWT_CLAIM}" - local JWT_SIG="$(echo -n "${JWT_BODY}" | openssl dgst -sha256 -sign <(svc_property private_key) -binary | base64url)" - - echo "${JWT_BODY}.${JWT_SIG}" -} - -# Set the BEARER_TOKEN variable for authentication. -# -# usage: fcr_authenticate - -fcr_authenticate () { - : "${FIREBASE_APP_ID:?required to select authentication credentials}" - - local SVC_PLIST - - fcr_load_certificate SVC_PLIST || return 2 - - local TOK_PLIST="${HOME}/Library/Preferences/com.google.SymbolUploadToken.plist" - - if ((VERBOSE > 2)); then - CURLOPT='--trace-ascii /dev/fd/2' - elif ((VERBOSE > 1)); then - CURLOPT='--verbose' - else - CURLOPT='' - fi - - # If the token will expire in the next sixty seconds (or already - # has), reload it. - if ! fcr_verify_tok_plist; then - xcdebug "Token cannot be used. Requesting OAuth2 token using installed credentials." - - if ! fcr_verify_svc_plist; then - xcerror "Incorrect/incomplete service account file." - return 2 - else - xcdebug "Certificate information appears valid." - fi - - TOKEN_URI="$(svc_property token_uri)" - CLIENT_EMAIL="$(svc_property client_email)" - - # Assemble the JSON Web Token (RFC 1795) - local JWT="$(fcr_create_jwt "${CLIENT_EMAIL}" "${TOKEN_URI}")" - - fcr_mktemp TOKEN_JSON - - HTTP_STATUS="$(curl ${CURLOPT} -o "${TOKEN_JSON}" -s -d grant_type='urn:ietf:params:oauth:grant-type:jwt-bearer' -d assertion="${JWT}" -w '%{http_code}' "${TOKEN_URI}")" - - if [[ "${HTTP_STATUS}" == 403 ]]; then - xcerror "Invalid certificate. Unable to retrieve OAuth2 token." - return 2 - elif [[ "${HTTP_STATUS}" != 200 ]]; then - cat >&2 "${TOKEN_JSON}" - return 2 - fi - - # Store the token in the preferences directory for future use. - /usr/bin/plutil -convert binary1 "${TOKEN_JSON}" -o "${TOK_PLIST}" - - EXPIRES_IN="$(tok_property expires_in)" - EXPIRES_AT="$((EXPIRES_IN + NOW))" - - /usr/libexec/PlistBuddy \ - -c "Add :app_id string \"${FIREBASE_APP_ID}\"" \ - -c "Add :expires_at integer ${EXPIRES_AT}" \ - -c "Add :expiration_date date $(TZ=GMT date -jf %s ${EXPIRES_AT})" \ - "${TOK_PLIST}" - - if ! fcr_verify_tok_plist; then - ((VERBOSE)) && /usr/libexec/PlistBuddy -c 'Print' "${TOK_PLIST}" - - echo '{}' >|"${TOK_PLIST}" - xcwarning "Token returned is not valid." - xcnote "If this error persists, download a fresh certificate." - - return 2 - fi - else - xcdebug "Token still valid." - EXPIRES_AT="$(tok_property expires_at)" - fi - - xcdebug "Token will expire on $(date -jf %s "${EXPIRES_AT}")." - xcdebug "Using service account with key $(svc_property private_key_id)." - - BEARER_TOKEN="$(tok_property access_token)" - - if [[ ! "${BEARER_TOKEN}" ]]; then - if ((VERBOSE)); then - xcwarning "Current malformed token cache:" - tok_property | while read; do xcnote "${REPLY}"; done - fi - xcerror "Unable to retrieve authentication token from server." - return 2 - fi - - return 0 -} - -# Upload the files to the server. -# -# Arguments: Names of files to upload. - -fcr_upload_files() { - fcr_authenticate || return $? - - : "${FCR_PROD_VERS:?}" - : "${FCR_BUNDLE_ID:?}" - : "${FIREBASE_APP_ID:?}" - : "${FIREBASE_API_KEY:?}" - : "${FCR_BASE_URL:=https://mobilecrashreporting.googleapis.com}" - - fcr_mktemp FILE_UPLOAD_LOCATION_PLIST META_UPLOAD_RESULT_PLIST - - if ((VERBOSE > 2)); then - CURLOPT='--trace-ascii /dev/fd/2' - elif ((VERBOSE > 1)); then - CURLOPT='--verbose' - else - CURLOPT='' - fi - - for FILE; do - xcdebug "Get signed URL for uploading." - - URL="${FCR_BASE_URL}/v1/apps/${FIREBASE_APP_ID}" - - HTTP_STATUS="$(curl ${CURLOPT} -o "${FILE_UPLOAD_LOCATION_PLIST}" -sL -H "X-Ios-Bundle-Identifier: ${FCR_BUNDLE_ID}" -H "Authorization: Bearer ${BEARER_TOKEN}" -X POST -d '' -w '%{http_code}' "${URL}/symbolFileUploadLocation?key=${FIREBASE_API_KEY}")" - STATUS=$? - - if [[ "${STATUS}" == 22 && "${HTTP_STATUS}" == 403 ]]; then - xcerror "Unable to access resource. Token invalid." - xcnote "Please verify the service account file." - return 2 - elif [[ "${STATUS}" != 0 ]]; then - xcerror "curl exited with non-zero status ${STATUS}." - ((STATUS == 22)) && xcerror "HTTP response code is ${HTTP_STATUS}." - return 2 - fi - - /usr/bin/plutil -convert binary1 "${FILE_UPLOAD_LOCATION_PLIST}" || return 1 - - UPLOAD_KEY="$(property uploadKey "${FILE_UPLOAD_LOCATION_PLIST}")" - UPLOAD_URL="$(property uploadUrl "${FILE_UPLOAD_LOCATION_PLIST}")" - ERRMSG="$(property error:message "${FILE_UPLOAD_LOCATION_PLIST}")" - - if [[ "${ERRMSG}" ]]; then - if ((VERBOSE)); then - xcnote "Server response:" - /usr/bin/plutil -p "${FILE_UPLOAD_LOCATION_PLIST}" >&2 - fi - xcerror "symbolFileUploadLocation: ${ERRMSG}" - xcnote "symbolFileUploadLocation: Failed to get upload location." - return 1 - fi - - xcdebug "Upload symbol file." - - HTTP_STATUS=$(curl ${CURLOPT} -sfL -H 'Content-Type: text/plain' -H "Authorization: Bearer ${BEARER_TOKEN}" -w '%{http_code}' -T "${FILE}" "${UPLOAD_URL}") - STATUS=$? - - if ((STATUS == 22)); then # exit code 22 is a non-successful HTTP response - xcerror "upload: Unable to upload symbol file (HTTP Status ${HTTP_STATUS})." - return 1 - elif ((STATUS != 0)); then - xcerror "upload: Unable to upload symbol file (reason unknown)." - return 1 - fi - - xcdebug "Upload metadata information." - - curl ${CURLOPT} -sL -H 'Content-Type: application/json' -H "X-Ios-Bundle-Identifier: ${FCR_BUNDLE_ID}" -H "Authorization: Bearer ${BEARER_TOKEN}" -X POST -d '{"upload_key":"'"${UPLOAD_KEY}"'","symbol_file_mapping":{"symbol_type":2,"app_version":"'"${FCR_PROD_VERS}"'"}}' "${URL}/symbolFileMappings:upsert?key=${FIREBASE_API_KEY}" >|"${META_UPLOAD_RESULT_PLIST}" || return 1 - /usr/bin/plutil -convert binary1 "${META_UPLOAD_RESULT_PLIST}" || return 1 - - ERRMSG="$(property error:message "${META_UPLOAD_RESULT_PLIST}")" - - if [[ "${ERRMSG}" ]]; then - xcerror "symbolFileMappings:upsert: ${ERRMSG}" - xcnote "symbolFileMappings:upsert: The metadata for the symbol file failed to update." - return 1 - fi - done -} diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/upload-sym.sh b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/upload-sym.sh deleted file mode 100755 index c0a34e38..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Crash/upload-sym.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/bash - -echo "$0:0: error: $0 has been removed. Please use upload-sym instead." -exit 1 diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Firebase.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Firebase.h deleted file mode 100644 index 90798a6a..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Firebase.h +++ /dev/null @@ -1,52 +0,0 @@ -#import <FirebaseAnalytics/FirebaseAnalytics.h> -#import <FirebaseCore/FirebaseCore.h> - -#if !defined(__has_include) - #error "Firebase.h won't import anything if your compiler doesn't support __has_include. Please \ - import the headers individually." -#else - #if __has_include(<FirebaseAppIndexing/FirebaseAppIndexing.h>) - #import <FirebaseAppIndexing/FirebaseAppIndexing.h> - #endif - - #if __has_include(<FirebaseAuth/FirebaseAuth.h>) - #import <FirebaseAuth/FirebaseAuth.h> - #endif - - #if __has_include(<FirebaseCrash/FirebaseCrash.h>) - #import <FirebaseCrash/FirebaseCrash.h> - #endif - - #if __has_include(<FirebaseDatabase/FirebaseDatabase.h>) - #import <FirebaseDatabase/FirebaseDatabase.h> - #endif - - #if __has_include(<FirebaseDynamicLinks/FirebaseDynamicLinks.h>) - #import <FirebaseDynamicLinks/FirebaseDynamicLinks.h> - #endif - - #if __has_include(<FirebaseInstanceID/FirebaseInstanceID.h>) - #import <FirebaseInstanceID/FirebaseInstanceID.h> - #endif - - #if __has_include(<FirebaseInvites/FirebaseInvites.h>) - #import <FirebaseInvites/FirebaseInvites.h> - #endif - - #if __has_include(<FirebaseMessaging/FirebaseMessaging.h>) - #import <FirebaseMessaging/FirebaseMessaging.h> - #endif - - #if __has_include(<FirebaseRemoteConfig/FirebaseRemoteConfig.h>) - #import <FirebaseRemoteConfig/FirebaseRemoteConfig.h> - #endif - - #if __has_include(<FirebaseStorage/FirebaseStorage.h>) - #import <FirebaseStorage/FirebaseStorage.h> - #endif - - #if __has_include(<GoogleMobileAds/GoogleMobileAds.h>) - #import <GoogleMobileAds/GoogleMobileAds.h> - #endif - -#endif // defined(__has_include) diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Messaging/FirebaseMessaging.framework/FirebaseMessaging b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Messaging/FirebaseMessaging.framework/FirebaseMessaging Binary files differdeleted file mode 100755 index a0573d06..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Messaging/FirebaseMessaging.framework/FirebaseMessaging +++ /dev/null diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Headers/FIRMessaging.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Headers/FIRMessaging.h deleted file mode 100755 index a0ae2e90..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Headers/FIRMessaging.h +++ /dev/null @@ -1,227 +0,0 @@ -#import <Foundation/Foundation.h> - -/** - * The completion handler invoked once the data connection with FIRMessaging is - * established. The data connection is used to send a continous stream of - * data and all the FIRMessaging data notifications arrive through this connection. - * Once the connection is established we invoke the callback with `nil` error. - * Correspondingly if we get an error while trying to establish a connection - * we invoke the handler with an appropriate error object and do an - * exponential backoff to try and connect again unless successful. - * - * @param error The error object if any describing why the data connection - * to FIRMessaging failed. - */ -typedef void(^FIRMessagingConnectCompletion)(NSError * __nullable error); - -/** - * Notification sent when the upstream message has been delivered - * successfully to the server. The notification object will be the messageID - * of the successfully delivered message. - */ -FOUNDATION_EXPORT NSString * __nonnull const FIRMessagingSendSuccessNotification; - -/** - * Notification sent when the upstream message was failed to be sent to the - * server. The notification object will be the messageID of the failed - * message. The userInfo dictionary will contain the relevant error - * information for the failure. - */ -FOUNDATION_EXPORT NSString * __nonnull const FIRMessagingSendErrorNotification; - -/** - * Notification sent when the Firebase messaging server deletes pending - * messages due to exceeded storage limits. This may occur, for example, when - * the device cannot be reached for an extended period of time. - * - * It is recommended to retrieve any missing messages directly from the - * server. - */ -FOUNDATION_EXPORT NSString * __nonnull const FIRMessagingMessagesDeletedNotification; - -/** - * @enum FIRMessagingError - */ -typedef NS_ENUM(NSUInteger, FIRMessagingError) { - /// Unknown error. - FIRMessagingErrorUnknown = 0, - - /// FIRMessaging couldn't validate request from this client. - FIRMessagingErrorAuthentication = 1, - - /// InstanceID service cannot be accessed. - FIRMessagingErrorNoAccess = 2, - - /// Request to InstanceID backend timed out. - FIRMessagingErrorTimeout = 3, - - /// No network available to reach the servers. - FIRMessagingErrorNetwork = 4, - - /// Another similar operation in progress, bailing this one. - FIRMessagingErrorOperationInProgress = 5, - - /// Some parameters of the request were invalid. - FIRMessagingErrorInvalidRequest = 7, -}; - -/// Status for the downstream message received by the app. -typedef NS_ENUM(NSInteger, FIRMessagingMessageStatus) { - /// Unknown status. - FIRMessagingMessageStatusUnknown, - /// New downstream message received by the app. - FIRMessagingMessageStatusNew, -}; - -/// Information about a downstream message received by the app. -@interface FIRMessagingMessageInfo : NSObject - -/// The status of the downstream message -@property(nonatomic, readonly, assign) FIRMessagingMessageStatus status; - -@end - -/** - * A remote data message received by the app via FCM (not just the APNs interface). - * - * This is only for devices running iOS 10 or above. To support devices running iOS 9 or below, use - * the local and remote notifications handlers defined in UIApplicationDelegate protocol. - */ -@interface FIRMessagingRemoteMessage : NSObject - -/// The downstream message received by the application. -@property(nonatomic, readonly, strong, nonnull) NSDictionary *appData; - -@end - -/** - * A protocol to receive data message via FCM for devices running iOS 10 or above. - * - * To support devices running iOS 9 or below, use the local and remote notifications handlers - * defined in UIApplicationDelegate protocol. - */ -@protocol FIRMessagingDelegate <NSObject> - -/// The callback to handle data message received via FCM for devices running iOS 10 or above. -- (void)applicationReceivedRemoteMessage:(nonnull FIRMessagingRemoteMessage *)remoteMessage; - -@end - -/** - * Firebase Messaging lets you reliably deliver messages at no cost. - * - * To send or receive messages, the app must get a - * registration token from FIRInstanceID. This token authorizes an - * app server to send messages to an app instance. - * - * In order to receive FIRMessaging messages, declare `application:didReceiveRemoteNotification:`. - * - * - */ -@interface FIRMessaging : NSObject - -/** - * Delegate to handle remote data messages received via FCM for devices running iOS 10 or above. - */ -@property(nonatomic, weak, nullable) id<FIRMessagingDelegate> remoteMessageDelegate; - -/** - * FIRMessaging - * - * @return An instance of FIRMessaging. - */ -+ (nonnull instancetype)messaging NS_SWIFT_NAME(messaging()); - -/** - * Unavailable. Use +messaging instead. - */ -- (nonnull instancetype)init __attribute__((unavailable("Use +messaging instead."))); - -#pragma mark - Connect - -/** - * Create a FIRMessaging data connection which will be used to send the data notifications - * sent by your server. It will also be used to send ACKS and other messages based - * on the FIRMessaging ACKS and other messages based on the FIRMessaging protocol. - * - * - * @param handler The handler to be invoked once the connection is established. - * If the connection fails we invoke the handler with an - * appropriate error code letting you know why it failed. At - * the same time, FIRMessaging performs exponential backoff to retry - * establishing a connection and invoke the handler when successful. - */ -- (void)connectWithCompletion:(nonnull FIRMessagingConnectCompletion)handler; - -/** - * Disconnect the current FIRMessaging data connection. This stops any attempts to - * connect to FIRMessaging. Calling this on an already disconnected client is a no-op. - * - * Call this before `teardown` when your app is going to the background. - * Since the FIRMessaging connection won't be allowed to live when in background it is - * prudent to close the connection. - */ -- (void)disconnect; - -#pragma mark - Topics - -/** - * Asynchronously subscribes to a topic. - * - * @param topic The name of the topic, for example, @"sports". - */ -- (void)subscribeToTopic:(nonnull NSString *)topic; - -/** - * Asynchronously unsubscribe from a topic. - * - * @param topic The name of the topic, for example @"sports". - */ -- (void)unsubscribeFromTopic:(nonnull NSString *)topic; - -#pragma mark - Upstream - -/** - * Sends an upstream ("device to cloud") message. - * - * The message is queued if we don't have an active connection. - * You can only use the upstream feature if your FCM implementation - * uses the XMPP server protocol. - * - * @param message Key/Value pairs to be sent. Values must be String, any - * other type will be ignored. - * @param to A string identifying the receiver of the message. For FCM - * project IDs the value is `SENDER_ID@gcm.googleapis.com`. - * @param messageID The ID of the message. This is generated by the application. It - * must be unique for each message generated by this application. - * It allows error callbacks and debugging, to uniquely identify - * each message. - * @param ttl The time to live for the message. In case we aren't able to - * send the message before the TTL expires we will send you a - * callback. If 0, we'll attempt to send immediately and return - * an error if we're not connected. Otherwise, the message will - * be queued. As for server-side messages, we don't return an error - * if the message has been dropped because of TTL; this can happen - * on the server side, and it would require extra communication. - */ -- (void)sendMessage:(nonnull NSDictionary *)message - to:(nonnull NSString *)receiver - withMessageID:(nonnull NSString *)messageID - timeToLive:(int64_t)ttl; - -#pragma mark - Analytics - -/** - * Use this to track message delivery and analytics for messages, typically - * when you receive a notification in `application:didReceiveRemoteNotification:`. - * However, you only need to call this if you set the `FirebaseAppDelegateProxyEnabled` - * flag to NO in your Info.plist. If `FirebaseAppDelegateProxyEnabled` is either missing - * or set to YES in your Info.plist, the library will call this automatically. - * - * @param message The downstream message received by the application. - * - * @return Information about the downstream message. - */ -- (nonnull FIRMessagingMessageInfo *)appDidReceiveMessage:(nonnull NSDictionary *)message; - -@end diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Headers/FirebaseMessaging.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Headers/FirebaseMessaging.h deleted file mode 100755 index ef49e7ff..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Headers/FirebaseMessaging.h +++ /dev/null @@ -1 +0,0 @@ -#import "FIRMessaging.h" diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Modules/module.modulemap b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Modules/module.modulemap deleted file mode 100755 index 80bc59c1..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Modules/module.modulemap +++ /dev/null @@ -1,11 +0,0 @@ -framework module FirebaseMessaging { - umbrella header "FirebaseMessaging.h" - export * - module * { export *} - link "sqlite3" - link "z" - link framework "CoreGraphics" - link framework "Foundation" - link framework "SystemConfiguration" - link framework "UIKit" -}
\ No newline at end of file diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Messaging/Protobuf.framework/Protobuf b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Messaging/Protobuf.framework/Protobuf Binary files differdeleted file mode 100644 index 546e02ec..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/Messaging/Protobuf.framework/Protobuf +++ /dev/null diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/RemoteConfig/FirebaseRemoteConfig.framework/FirebaseRemoteConfig b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/RemoteConfig/FirebaseRemoteConfig.framework/FirebaseRemoteConfig Binary files differdeleted file mode 100755 index 45637862..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/RemoteConfig/FirebaseRemoteConfig.framework/FirebaseRemoteConfig +++ /dev/null diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/RemoteConfig/FirebaseRemoteConfig.framework/Headers/FIRRemoteConfig.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/RemoteConfig/FirebaseRemoteConfig.framework/Headers/FIRRemoteConfig.h deleted file mode 100755 index 395020ca..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/RemoteConfig/FirebaseRemoteConfig.framework/Headers/FIRRemoteConfig.h +++ /dev/null @@ -1,224 +0,0 @@ -// -// FIRRemoteConfig.h -// Firebase Remote Config service SDK -// Copyright 2016 Google Inc. All rights reserved. -// -#import <Foundation/Foundation.h> - -/// The Firebase Remote Config service default namespace, to be used if the API method does not -/// specify a different namespace. Use the default namespace if configuring from the Google Firebase -/// service. -extern NSString *const __nonnull FIRNamespaceGoogleMobilePlatform; - -/// Key used to manage throttling in NSError user info when the refreshing of Remote Config -/// parameter values (data) is throttled. The value of this key is the elapsed time since 1970, -/// measured in seconds. -extern NSString *const __nonnull FIRRemoteConfigThrottledEndTimeInSecondsKey; - -/// Indicates whether updated data was successfully fetched. -typedef NS_ENUM(NSInteger, FIRRemoteConfigFetchStatus) { - /// Config has never been fetched. - FIRRemoteConfigFetchStatusNoFetchYet, - /// Config fetch succeeded. - FIRRemoteConfigFetchStatusSuccess, - /// Config fetch failed. - FIRRemoteConfigFetchStatusFailure, - /// Config fetch was throttled. - FIRRemoteConfigFetchStatusThrottled, -}; - -/// Remote Config error domain that handles errors when fetching data from the service. -extern NSString *const __nonnull FIRRemoteConfigErrorDomain; -/// Firebase Remote Config service fetch error. -typedef NS_ENUM(NSInteger, FIRRemoteConfigError) { - /// Unknown or no error. - FIRRemoteConfigErrorUnknown = 8001, - /// Frequency of fetch requests exceeds throttled limit. - FIRRemoteConfigErrorThrottled = 8002, - /// Internal error that covers all internal HTTP errors. - FIRRemoteConfigErrorInternalError = 8003, -}; - -/// Enumerated value that indicates the source of Remote Config data. Data can come from -/// the Remote Config service, the DefaultConfig that is available when the app is first installed, -/// or a static initialized value if data is not available from the service or DefaultConfig. -typedef NS_ENUM(NSInteger, FIRRemoteConfigSource) { - FIRRemoteConfigSourceRemote, ///< The data source is the Remote Config service. - FIRRemoteConfigSourceDefault, ///< The data source is the DefaultConfig defined for this app. - FIRRemoteConfigSourceStatic, ///< The data doesn't exist, return a static initialized value. -}; - -/// Completion handler invoked by fetch methods when they get a response from the server. -/// -/// @param status Config fetching status. -/// @param error Error message on failure. -typedef void (^FIRRemoteConfigFetchCompletion)(FIRRemoteConfigFetchStatus status, - NSError *__nullable error); - -#pragma mark - FIRRemoteConfigValue -/// This class provides a wrapper for Remote Config parameter values, with methods to get parameter -/// values as different data types. -@interface FIRRemoteConfigValue : NSObject<NSCopying> -/// Gets the value as a string. -@property(nonatomic, readonly, nullable) NSString *stringValue; -/// Gets the value as a number value. -@property(nonatomic, readonly, nullable) NSNumber *numberValue; -/// Gets the value as a NSData object. -@property(nonatomic, readonly, nonnull) NSData *dataValue; -/// Gets the value as a boolean. -@property(nonatomic, readonly) BOOL boolValue; -/// Identifies the source of the fetched value. -@property(nonatomic, readonly) FIRRemoteConfigSource source; -@end - -#pragma mark - FIRRemoteConfigSettings -/// Firebase Remote Config settings. -@interface FIRRemoteConfigSettings : NSObject -/// Indicates whether Developer Mode is enabled. -@property(nonatomic, readonly) BOOL isDeveloperModeEnabled; -/// Initializes FIRRemoteConfigSettings, which is used to set properties for custom settings. To -/// make custom settings take effect, pass the FIRRemoteConfigSettings instance to the -/// configSettings property of FIRRemoteConfig. -- (nullable FIRRemoteConfigSettings *)initWithDeveloperModeEnabled:(BOOL)developerModeEnabled - NS_DESIGNATED_INITIALIZER; -@end - -#pragma mark - FIRRemoteConfig -/// Firebase Remote Config class. The shared instance method +remoteConfig can be created and used -/// to fetch, activate and read config results and set default config results. -@interface FIRRemoteConfig : NSObject<NSFastEnumeration> -/// Last successful fetch completion time. -@property(nonatomic, readonly, strong, nullable) NSDate *lastFetchTime; -/// Last fetch status. The status can be any enumerated value from FIRRemoteConfigFetchStatus. -@property(nonatomic, readonly, assign) FIRRemoteConfigFetchStatus lastFetchStatus; -/// Config settings are custom settings. -@property(nonatomic, readwrite, strong, nonnull) FIRRemoteConfigSettings *configSettings; - -/// Returns the FIRRemoteConfig instance shared throughout your app. This singleton object contains -/// the complete set of Remote Config parameter values available to the app, including the Active -/// Config and Default Config. This object also caches values fetched from the Remote Config Server -/// until they are copied to the Active Config by calling activateFetched. -/// When you fetch values from the Remote Config Server using the default Firebase namespace -/// service, you should use this class method to create a shared instance of the FIRRemoteConfig -/// object to ensure that your app will function properly with the Remote Config Server and the -/// Firebase service. -+ (nonnull FIRRemoteConfig *)remoteConfig NS_SWIFT_NAME(remoteConfig()); - -/// Unavailable. Use +remoteConfig instead. -- (nonnull instancetype)init __attribute__((unavailable("Use +remoteConfig instead."))); - -#pragma mark - Fetch -/// Fetches Remote Config data with a callback. Call activateFetched to make fetched data available -/// to your app. -/// @param completionHandler Fetch operation callback. -- (void)fetchWithCompletionHandler:(nullable FIRRemoteConfigFetchCompletion)completionHandler; - -/// Fetches Remote Config data and sets a duration that specifies how long config data lasts. -/// Call activateFetched to make fetched data available to your app. -/// @param expirationDuration Duration that defines how long fetched config data is available, in -/// seconds. When the config data expires, a new fetch is required. -/// @param completionHandler Fetch operation callback. -- (void)fetchWithExpirationDuration:(NSTimeInterval)expirationDuration - completionHandler:(nullable FIRRemoteConfigFetchCompletion)completionHandler; - -#pragma mark - Apply -/// Applies Fetched Config data to the Active Config, causing updates to the behavior and appearance -/// of the app to take effect (depending on how config data is used in the app). -/// Returns true if there was a Fetched Config, and it was activated. -/// Returns false if no Fetched Config was found, or the Fetched Config was already activated. -- (BOOL)activateFetched; - -#pragma mark - Get Config -/// Enables access to configuration values by using object subscripting syntax. -/// This is used to get the config value of the default namespace. -/// <pre> -/// // Example: -/// FIRRemoteConfig *config = [FIRRemoteConfig remoteConfig]; -/// FIRRemoteConfigValue *value = config[@"yourKey"]; -/// BOOL b = value.boolValue; -/// NSNumber *number = config[@"yourKey"].numberValue; -/// </pre> -- (nonnull FIRRemoteConfigValue *)objectForKeyedSubscript:(nonnull NSString *)key; - -/// Gets the config value of the default namespace. -/// @param key Config key. -- (nonnull FIRRemoteConfigValue *)configValueForKey:(nullable NSString *)key; - -/// Gets the config value of a given namespace. -/// @param key Config key. -/// @param aNamespace Config results under a given namespace. -- (nonnull FIRRemoteConfigValue *)configValueForKey:(nullable NSString *)key - namespace:(nullable NSString *)aNamespace; - -/// Gets the config value of a given namespace and a given source. -/// @param key Config key. -/// @param aNamespace Config results under a given namespace. -/// @param source Config value source. -- (nonnull FIRRemoteConfigValue *)configValueForKey:(nullable NSString *)key - namespace:(nullable NSString *)aNamespace - source:(FIRRemoteConfigSource)source; - -/// Gets all the parameter keys from a given source and a given namespace. -/// -/// @param source The config data source. -/// @param aNamespace The config data namespace. -/// @return An array of keys under the given source and namespace. -- (nonnull NSArray<NSString *> *)allKeysFromSource:(FIRRemoteConfigSource)source - namespace:(nullable NSString *)aNamespace; - -/// Returns the set of parameter keys that start with the given prefix, from the default namespace -/// in the active config. -/// -/// @param prefix The key prefix to look for. If prefix is nil or empty, returns all the -/// keys. -/// @return The set of parameter keys that start with the specified prefix. -- (nonnull NSSet<NSString *> *)keysWithPrefix:(nullable NSString *)prefix; - -/// Returns the set of parameter keys that start with the given prefix, from the given namespace in -/// the active config. -/// -/// @param prefix The key prefix to look for. If prefix is nil or empty, returns all the -/// keys in the given namespace. -/// @param aNamespace The namespace in which to look up the keys. If the namespace is invalid, -/// returns an empty set. -/// @return The set of parameter keys that start with the specified prefix. -- (nonnull NSSet<NSString *> *)keysWithPrefix:(nullable NSString *)prefix - namespace:(nullable NSString *)aNamespace; - -#pragma mark - Defaults -/// Sets config defaults for parameter keys and values in the default namespace config. -/// -/// @param defaultConfig A dictionary mapping a NSString * key to a NSObject * value. -- (void)setDefaults:(nullable NSDictionary<NSString *, NSObject *> *)defaults; - -/// Sets config defaults for parameter keys and values in the default namespace config. -/// -/// @param defaultConfig A dictionary mapping a NSString * key to a NSObject * value. -/// @param aNamespace Config under a given namespace. -- (void)setDefaults:(nullable NSDictionary<NSString *, NSObject *> *)defaultConfig - namespace:(nullable NSString *)aNamespace; - -/// Sets default configs from plist for default namespace; -/// @param fileName The plist file name, with no file name extension. For example, if the plist file -/// is defaultSamples.plist, call: -/// [[FIRRemoteConfig remoteConfig] setDefaultsFromPlistFileName:@"defaultSamples"]; -- (void)setDefaultsFromPlistFileName:(nullable NSString *)fileName; - -/// Sets default configs from plist for a given namespace; -/// @param fileName The plist file name, with no file name extension. For example, if the plist file -/// is defaultSamples.plist, call: -/// [[FIRRemoteConfig remoteConfig] setDefaultsFromPlistFileName:@"defaultSamples"]; -/// @param aNamespace The namespace where the default config is set. -- (void)setDefaultsFromPlistFileName:(nullable NSString *)fileName - namespace:(nullable NSString *)aNamespace; - -/// Returns the default value of a given key and a given namespace from the default config. -/// -/// @param key The parameter key of default config. -/// @param aNamespace The namespace of default config. -/// @return Returns the default value of the specified key and namespace. Returns -/// nil if the key or namespace doesn't exist in the default config. -- (nullable FIRRemoteConfigValue *)defaultValueForKey:(nullable NSString *)key - namespace:(nullable NSString *)aNamespace; - -@end diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/RemoteConfig/FirebaseRemoteConfig.framework/Headers/FirebaseRemoteConfig.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/RemoteConfig/FirebaseRemoteConfig.framework/Headers/FirebaseRemoteConfig.h deleted file mode 100755 index eedc4fce..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/RemoteConfig/FirebaseRemoteConfig.framework/Headers/FirebaseRemoteConfig.h +++ /dev/null @@ -1 +0,0 @@ -#import "FIRRemoteConfig.h" diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/RemoteConfig/FirebaseRemoteConfig.framework/Modules/module.modulemap b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/RemoteConfig/FirebaseRemoteConfig.framework/Modules/module.modulemap deleted file mode 100755 index a6627f5e..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/RemoteConfig/FirebaseRemoteConfig.framework/Modules/module.modulemap +++ /dev/null @@ -1,11 +0,0 @@ -framework module FirebaseRemoteConfig { - umbrella header "FirebaseRemoteConfig.h" - export * - module * { export *} - link "c++" - link "sqlite3" - link "z" - link framework "CoreGraphics" - link framework "Foundation" - link framework "UIKit" -}
\ No newline at end of file diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/RemoteConfig/Protobuf.framework/Protobuf b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/RemoteConfig/Protobuf.framework/Protobuf Binary files differdeleted file mode 100644 index 546e02ec..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/Firebase/RemoteConfig/Protobuf.framework/Protobuf +++ /dev/null diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/FirebasePlugin.h b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/FirebasePlugin.h deleted file mode 100755 index 93542737..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/FirebasePlugin.h +++ /dev/null @@ -1,30 +0,0 @@ -#import <Cordova/CDV.h>
-#import "AppDelegate.h"
-
-@interface FirebasePlugin : CDVPlugin
-+ (FirebasePlugin *) firebasePlugin;
-- (void)getInstanceId:(CDVInvokedUrlCommand*)command;
-- (void)getToken:(CDVInvokedUrlCommand*)command;
-- (void)grantPermission:(CDVInvokedUrlCommand*)command;
-- (void)hasPermission:(CDVInvokedUrlCommand*)command;
-- (void)setBadgeNumber:(CDVInvokedUrlCommand*)command;
-- (void)getBadgeNumber:(CDVInvokedUrlCommand*)command;
-- (void)subscribe:(CDVInvokedUrlCommand*)command;
-- (void)unsubscribe:(CDVInvokedUrlCommand*)command;
-- (void)unregister:(CDVInvokedUrlCommand*)command;
-- (void)onNotificationOpen:(CDVInvokedUrlCommand*)command;
-- (void)onTokenRefresh:(CDVInvokedUrlCommand*)command;
-- (void)sendNotification:(NSDictionary*)userInfo;
-- (void)sendToken:(NSString*)token;
-- (void)logEvent:(CDVInvokedUrlCommand*)command;
-- (void)setScreenName:(CDVInvokedUrlCommand*)command;
-- (void)setUserId:(CDVInvokedUrlCommand*)command;
-- (void)setUserProperty:(CDVInvokedUrlCommand*)command;
-- (void)fetch:(CDVInvokedUrlCommand*)command;
-- (void)activateFetched:(CDVInvokedUrlCommand*)command;
-- (void)getValue:(CDVInvokedUrlCommand*)command;
-@property (nonatomic, copy) NSString *notificationCallbackId;
-@property (nonatomic, copy) NSString *tokenRefreshCallbackId;
-@property (nonatomic, retain) NSMutableArray *notificationStack;
-
-@end
diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/FirebasePlugin.m b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/FirebasePlugin.m deleted file mode 100644 index 580fb760..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/FirebasePlugin.m +++ /dev/null @@ -1,331 +0,0 @@ -#import "FirebasePlugin.h" -#import <Cordova/CDV.h> -#import "AppDelegate.h" -#import "Firebase.h" -@import FirebaseInstanceID; -@import FirebaseMessaging; -@import FirebaseAnalytics; -@import FirebaseRemoteConfig; - -#if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0 -@import UserNotifications; -#endif - -#ifndef NSFoundationVersionNumber_iOS_9_x_Max -#define NSFoundationVersionNumber_iOS_9_x_Max 1299 -#endif - -@implementation FirebasePlugin - -@synthesize notificationCallbackId; -@synthesize tokenRefreshCallbackId; -@synthesize notificationStack; - -static NSInteger const kNotificationStackSize = 10; -static FirebasePlugin *firebasePlugin; - -+ (FirebasePlugin *) firebasePlugin { - return firebasePlugin; -} - -- (void)pluginInitialize { - NSLog(@"Starting Firebase plugin"); - firebasePlugin = self; -} - -// DEPRECATED - alias of getToken -- (void)getInstanceId:(CDVInvokedUrlCommand *)command { - CDVPluginResult *pluginResult; - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString: - [[FIRInstanceID instanceID] token]]; - - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; -} - -- (void)getToken:(CDVInvokedUrlCommand *)command { - CDVPluginResult *pluginResult; - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString: - [[FIRInstanceID instanceID] token]]; - - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; -} -- (void)hasPermission:(CDVInvokedUrlCommand *)command -{ - BOOL enabled = NO; - UIApplication *application = [UIApplication sharedApplication]; - if ([[UIApplication sharedApplication] respondsToSelector:@selector(registerUserNotificationSettings:)]) { - enabled = application.currentUserNotificationSettings.types != UIUserNotificationTypeNone; - } else { -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wdeprecated-declarations" - enabled = application.enabledRemoteNotificationTypes != UIRemoteNotificationTypeNone; -#pragma GCC diagnostic pop - } - - NSMutableDictionary* message = [NSMutableDictionary dictionaryWithCapacity:1]; - [message setObject:[NSNumber numberWithBool:enabled] forKey:@"isEnabled"]; - CDVPluginResult *commandResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsDictionary:message]; - [self.commandDelegate sendPluginResult:commandResult callbackId:command.callbackId]; -} -- (void)grantPermission:(CDVInvokedUrlCommand *)command { - if (floor(NSFoundationVersionNumber) <= NSFoundationVersionNumber_iOS_9_x_Max) { - if ([[UIApplication sharedApplication]respondsToSelector:@selector(registerUserNotificationSettings:)]) { - UIUserNotificationType notificationTypes = - (UIUserNotificationTypeSound | UIUserNotificationTypeAlert | UIUserNotificationTypeBadge); - UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:notificationTypes categories:nil]; - [[UIApplication sharedApplication] registerUserNotificationSettings:settings]; - [[UIApplication sharedApplication] registerForRemoteNotifications]; - } else { - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wdeprecated-declarations" - [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound)]; - #pragma GCC diagnostic pop - } - - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - - - #if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0 - BOOL isIOS10 = TRUE; - #else - BOOL isIOS10 = FALSE; - #endif - - - if ( !isIOS10 ) { - [[UIApplication sharedApplication] registerForRemoteNotifications]; - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - - - // IOS 10 - UNAuthorizationOptions authOptions = UNAuthorizationOptionAlert|UNAuthorizationOptionSound|UNAuthorizationOptionBadge; - [[UNUserNotificationCenter currentNotificationCenter] - requestAuthorizationWithOptions:authOptions - completionHandler:^(BOOL granted, NSError * _Nullable error) { - - if ( ![NSThread isMainThread] ) { - dispatch_sync(dispatch_get_main_queue(), ^{ - [[UNUserNotificationCenter currentNotificationCenter] setDelegate:self]; - [[FIRMessaging messaging] setRemoteMessageDelegate:self]; - [[UIApplication sharedApplication] registerForRemoteNotifications]; - - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus: granted ? CDVCommandStatus_OK : CDVCommandStatus_ERROR]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }); - } - else { - [[UNUserNotificationCenter currentNotificationCenter] setDelegate:self]; - [[FIRMessaging messaging] setRemoteMessageDelegate:self]; - [[UIApplication sharedApplication] registerForRemoteNotifications]; - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - } - } - ]; - - return; -} - -- (void)setBadgeNumber:(CDVInvokedUrlCommand *)command { - int number = [[command.arguments objectAtIndex:0] intValue]; - - [self.commandDelegate runInBackground:^{ - [[UIApplication sharedApplication] setApplicationIconBadgeNumber:number]; - - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }]; -} - -- (void)getBadgeNumber:(CDVInvokedUrlCommand *)command { - [self.commandDelegate runInBackground:^{ - long badge = [[UIApplication sharedApplication] applicationIconBadgeNumber]; - - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsDouble:badge]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }]; -} - -- (void)subscribe:(CDVInvokedUrlCommand *)command { - NSString* topic = [NSString stringWithFormat:@"/topics/%@", [command.arguments objectAtIndex:0]]; - - [[FIRMessaging messaging] subscribeToTopic: topic]; - - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; -} - -- (void)unsubscribe:(CDVInvokedUrlCommand *)command { - NSString* topic = [NSString stringWithFormat:@"/topics/%@", [command.arguments objectAtIndex:0]]; - - [[FIRMessaging messaging] unsubscribeFromTopic: topic]; - - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; -} - -- (void)unregister:(CDVInvokedUrlCommand *)command { - [[FIRInstanceID instanceID] deleteIDWithHandler:^void(NSError *_Nullable error){ - if (error) { - NSLog(@"Unable to delete instance"); - } else { - NSString* currentToken = [[FIRInstanceID instanceID] token]; - if (currentToken != nil) { - [self sendToken:currentToken]; - } - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - } - }]; -} - -- (void)onNotificationOpen:(CDVInvokedUrlCommand *)command { - self.notificationCallbackId = command.callbackId; - - if (self.notificationStack != nil && [self.notificationStack count]) { - for (NSDictionary *userInfo in self.notificationStack) { - [self sendNotification:userInfo]; - } - [self.notificationStack removeAllObjects]; - } -} - -- (void)onTokenRefresh:(CDVInvokedUrlCommand *)command { - self.tokenRefreshCallbackId = command.callbackId; - NSString* currentToken = [[FIRInstanceID instanceID] token]; - if (currentToken != nil) { - [self sendToken:currentToken]; - } -} - -- (void)sendNotification:(NSDictionary *)userInfo { - if (self.notificationCallbackId != nil) { - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsDictionary:userInfo]; - [pluginResult setKeepCallbackAsBool:YES]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:self.notificationCallbackId]; - } else { - if (!self.notificationStack) { - self.notificationStack = [[NSMutableArray alloc] init]; - } - - // stack notifications until a callback has been registered - [self.notificationStack addObject:userInfo]; - - if ([self.notificationStack count] >= kNotificationStackSize) { - [self.notificationStack removeLastObject]; - } - } -} - -- (void)sendToken:(NSString *)token { - if (self.tokenRefreshCallbackId != nil) { - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString:token]; - [pluginResult setKeepCallbackAsBool:YES]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:self.tokenRefreshCallbackId]; - } -} - -- (void)logEvent:(CDVInvokedUrlCommand *)command { - [self.commandDelegate runInBackground:^{ - NSString* name = [command.arguments objectAtIndex:0]; - NSDictionary* parameters = [command.arguments objectAtIndex:1]; - - [FIRAnalytics logEventWithName:name parameters:parameters]; - - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }]; -} - -- (void)setScreenName:(CDVInvokedUrlCommand *)command { - NSString* name = [command.arguments objectAtIndex:0]; - - [FIRAnalytics setScreenName:name screenClass:NULL]; - - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; -} - -- (void)setUserId:(CDVInvokedUrlCommand *)command { - [self.commandDelegate runInBackground:^{ - NSString* id = [command.arguments objectAtIndex:0]; - - [FIRAnalytics setUserID:id]; - - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }]; -} - -- (void)setUserProperty:(CDVInvokedUrlCommand *)command { - [self.commandDelegate runInBackground:^{ - NSString* name = [command.arguments objectAtIndex:0]; - NSString* value = [command.arguments objectAtIndex:1]; - - [FIRAnalytics setUserPropertyString:value forName:name]; - - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }]; -} - -- (void)fetch:(CDVInvokedUrlCommand *)command { - [self.commandDelegate runInBackground:^{ - FIRRemoteConfig* remoteConfig = [FIRRemoteConfig remoteConfig]; - - if ([command.arguments count] > 0){ - int expirationDuration = [[command.arguments objectAtIndex:0] intValue]; - - [remoteConfig fetchWithExpirationDuration:expirationDuration completionHandler:^(FIRRemoteConfigFetchStatus status, NSError * _Nullable error) { - if (status == FIRRemoteConfigFetchStatusSuccess) { - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - } - }]; - } else { - [remoteConfig fetchWithCompletionHandler:^(FIRRemoteConfigFetchStatus status, NSError * _Nullable error) { - if (status == FIRRemoteConfigFetchStatusSuccess) { - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - } - }]; - } - }]; -} - -- (void)activateFetched:(CDVInvokedUrlCommand *)command { - [self.commandDelegate runInBackground:^{ - FIRRemoteConfig* remoteConfig = [FIRRemoteConfig remoteConfig]; - BOOL activated = [remoteConfig activateFetched]; - CDVPluginResult *pluginResult; - if (activated) { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - } else { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR]; - } - - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }]; -} - -- (void)getValue:(CDVInvokedUrlCommand *)command { - [self.commandDelegate runInBackground:^{ - NSString* key = [command.arguments objectAtIndex:0]; - FIRRemoteConfig* remoteConfig = [FIRRemoteConfig remoteConfig]; - NSString* value = remoteConfig[key].stringValue; - CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString:value]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }]; -} - -@end diff --git a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/GoogleService-Info.plist b/StoneIsland/plugins/cordova-plugin-firebase/src/ios/GoogleService-Info.plist deleted file mode 100644 index 5516ebf3..00000000 --- a/StoneIsland/plugins/cordova-plugin-firebase/src/ios/GoogleService-Info.plist +++ /dev/null @@ -1,6 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> -<plist version="1.0"> -<dict> -</dict> -</plist>
\ No newline at end of file |
