{"version":3,"sources":["jsdelivr-header.js","/npm/@globules-io/cordova-plugin-background-geolocation@3.1.4/www/BackgroundGeolocation.js"],"names":[],"mappings":"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","file":"/npm/@globules-io/cordova-plugin-background-geolocation@3.1.4/www/BackgroundGeolocation.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/@globules-io/cordova-plugin-background-geolocation@3.1.4/www/BackgroundGeolocation.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","/*\r\n According to apache license\r\n\r\n This is fork of christocracy cordova-plugin-background-geolocation plugin\r\n https://github.com/christocracy/cordova-plugin-background-geolocation\r\n\r\n Differences to original version:\r\n\r\n 1. new method isLocationEnabled\r\n */\r\n\r\nvar exec = require('cordova/exec');\r\nvar channel = require('cordova/channel');\r\nvar radio = require('./radio');\r\nvar TAG = 'CDVBackgroundGeolocation';\r\n\r\nvar emptyFnc = function () { };\r\n\r\nvar assert = function (condition, msgArray) {\r\n  if (!condition) {\r\n      throw new Error(msgArray.join('') || 'Assertion failed');\r\n  }\r\n}\r\n\r\nvar assertFnc = function(fnc, msgArray) {\r\n  assert(typeof (fnc) === 'function', msgArray);\r\n}\r\n\r\nvar eventHandler = function (event) {\r\n  radio(event.name).broadcast(event.payload);\r\n};\r\n\r\nvar errorHandler = function (error) {\r\n  radio('error').broadcast(error);\r\n};\r\n\r\nvar unsubscribeAll = function (channels) {\r\n  channels.forEach(function(channel) {\r\n    var topic = radio(channel);\r\n    var callbacks = [].concat.apply([], topic.channels[channel]); // flatten array\r\n    topic.unsubscribe.apply(topic, callbacks);\r\n  });\r\n}\r\n\r\nvar BackgroundGeolocation = {\r\n  events: [\r\n    'location',\r\n    'stationary',\r\n    'activity',\r\n    'start',\r\n    'stop',\r\n    'error',\r\n    'authorization',\r\n    'foreground',\r\n    'background',\r\n    'abort_requested',\r\n    'http_authorization'\r\n  ],\r\n\r\n  DISTANCE_FILTER_PROVIDER: 0,\r\n  ACTIVITY_PROVIDER: 1,\r\n  RAW_PROVIDER: 2,\r\n\r\n  BACKGROUND_MODE: 0,\r\n  FOREGROUND_MODE: 1,\r\n\r\n  NOT_AUTHORIZED: 0,\r\n  AUTHORIZED: 1,\r\n  AUTHORIZED_FOREGROUND: 2,\r\n\r\n  HIGH_ACCURACY: 0,\r\n  MEDIUM_ACCURACY: 100,\r\n  LOW_ACCURACY: 1000,\r\n  PASSIVE_ACCURACY: 10000,\r\n\r\n  LOG_ERROR: 'ERROR',\r\n  LOG_WARN: 'WARN',\r\n  LOG_INFO: 'INFO',\r\n  LOG_DEBUG: 'DEBUG',\r\n  LOG_TRACE: 'TRACE',\r\n\r\n  PERMISSION_DENIED: 1,\r\n  LOCATION_UNAVAILABLE: 2,\r\n  TIMEOUT: 3,\r\n\r\n  configure: function (config, success, failure) {\r\n    exec(success || emptyFnc,\r\n      failure || emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'configure',\r\n      [config]\r\n    );\r\n  },\r\n\r\n  start: function () {\r\n    exec(null, null, 'BackgroundGeolocation', 'start');\r\n  },\r\n\r\n  stop: function (success, failure) {\r\n    exec(null, null, 'BackgroundGeolocation', 'stop');\r\n  },\r\n\r\n  switchMode: function (mode, success, failure) {\r\n    exec(success || emptyFnc,\r\n      failure || emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'switchMode', [mode]);\r\n  },\r\n\r\n  getConfig: function (success, failure) {\r\n    assertFnc(success, [TAG, '#getConfig requires a success callback']);\r\n    exec(success,\r\n      failure || emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'getConfig', []);\r\n  },\r\n\r\n  /**\r\n   * Returns current stationaryLocation if available.  null if not\r\n   */\r\n  getStationaryLocation: function (success, failure) {\r\n    assertFnc(success, [TAG, '#getStationaryLocation requires a success callback']);\r\n    exec(success,\r\n      failure || emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'getStationaryLocation', []);\r\n  },\r\n\r\n  // @deprecated\r\n  isLocationEnabled: function (success, failure) {\r\n    console.log('[WARN]: ' + TAG + '#isLocationEnabled is deprecated! Use checkStatus instead.');\r\n    assertFnc(success, [TAG, '#isLocationEnabled requires a success callback']);\r\n    exec(success,\r\n      failure || emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'isLocationEnabled', []);\r\n  },\r\n\r\n  showAppSettings: function () {\r\n    exec(emptyFnc,\r\n      emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'showAppSettings', []);\r\n  },\r\n\r\n  showLocationSettings: function () {\r\n    exec(emptyFnc,\r\n      emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'showLocationSettings', []);\r\n  },\r\n\r\n  getLocations: function (success, failure) {\r\n    assertFnc(success, [TAG, '#getLocations requires a success callback']);\r\n    exec(success,\r\n      failure || emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'getLocations', []);\r\n  },\r\n\r\n  getValidLocations: function (success, failure) {\r\n    assertFnc(success, [TAG, '#getValidLocations requires a success callback']);\r\n    exec(success,\r\n      failure || emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'getValidLocations', []);\r\n  },\r\n\r\n  deleteLocation: function (locationId, success, failure) {\r\n    exec(success || emptyFnc,\r\n      failure || emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'deleteLocation', [locationId]);\r\n  },\r\n\r\n  deleteAllLocations: function (success, failure) {\r\n    exec(success || emptyFnc,\r\n      failure || emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'deleteAllLocations', []);\r\n  },\r\n\r\n  getCurrentLocation: function(success, failure, options) {\r\n    options = options || {};\r\n    exec(success || emptyFnc,\r\n      failure || emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'getCurrentLocation', [options.timeout, options.maximumAge, options.enableHighAccuracy]);\r\n  },\r\n\r\n  getLogEntries: function(limit /*, offset = 0, minLevel = \"DEBUG\", success = emptyFnc, failure = emptyFnc */) {\r\n    var acnt = arguments.length;\r\n    var offset, minLevel, success, error;\r\n\r\n    if (acnt > 1 && typeof arguments[1] == 'function') {\r\n      // backward compatibility\r\n      console.log('[WARN]: Calling deprecated variant of ' + TAG + '#getLogEntries method.');\r\n      offset = 0;\r\n      minLevel = BackgroundGeolocation.LOG_DEBUG;\r\n      success = arguments[1] || emptyFnc;\r\n      failure = arguments[2] || emptyFnc;\r\n    } else {\r\n      offset = acnt > 1 && arguments[1] !== undefined ? arguments[1] : 0;\r\n      minLevel = acnt > 2 && arguments[2] !== undefined ? arguments[2] : BackgroundGeolocation.LOG_DEBUG;\r\n      success = acnt > 3 && arguments[3] !== undefined ? arguments[3] : emptyFnc;\r\n      failure = acnt > 4 && arguments[4] !== undefined ? arguments[4] : emptyFnc;\r\n    }\r\n\r\n    exec(success,\r\n      failure,\r\n      'BackgroundGeolocation',\r\n      'getLogEntries', [limit, offset, minLevel]);\r\n  },\r\n\r\n  checkStatus: function (success, failure) {\r\n    exec(success || emptyFnc,\r\n      failure || emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'checkStatus')\r\n  },\r\n\r\n  startTask: function (success, failure) {\r\n    exec(success || emptyFnc,\r\n      failure || emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'startTask');\r\n  },\r\n\r\n  endTask: function (taskKey, success, failure) {\r\n    exec(success || emptyFnc,\r\n      failure || emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'endTask', [taskKey]);\r\n  },\r\n\r\n  headlessTask: function (func, success, failure) {\r\n    exec(success || emptyFnc,\r\n      failure || emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'registerHeadlessTask', [func.toString()]);\r\n  },\r\n\r\n  forceSync: function (success, failure) {\r\n    exec(success || emptyFnc,\r\n      failure || emptyFnc,\r\n      'BackgroundGeolocation',\r\n      'forceSync', []);\r\n  },\r\n\r\n  on: function (event, callbackFn) {\r\n    assertFnc(callbackFn, [TAG, '#on requires a callback function']);\r\n    assert(this.events.indexOf(event) > -1, [TAG, '#on unknown event \"' + event + '\"']);\r\n    radio(event).subscribe(callbackFn);\r\n    return {\r\n      remove: function () {\r\n        radio(event).unsubscribe(callbackFn);\r\n      }\r\n    };\r\n  },\r\n\r\n  removeAllListeners: function (event) {\r\n    if (!event) {\r\n      unsubscribeAll(this.events);\r\n      return void 0;\r\n    }\r\n    if (this.events.indexOf(event) < 0) {\r\n      console.log('[WARN] ' + TAG + '#removeAllListeners for unknown event \"' + event + '\"');\r\n      return void 0;\r\n    }\r\n    unsubscribeAll([event]);\r\n  }\r\n};\r\n\r\nchannel.deviceready.subscribe(function () {\r\n  // register app global listeners\r\n  exec(eventHandler,\r\n    errorHandler,\r\n    'BackgroundGeolocation',\r\n    'addEventListener'\r\n  );\r\n});\r\n\r\n\r\nmodule.exports = BackgroundGeolocation;\r\n"]}