{"version":3,"sources":["jsdelivr-header.js","/npm/ng-stomp@0.5.0/src/ng-stomp.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACKE,QACG,OAAO,UAAW,IAClB,QAAQ,SAAU,CACjB,aAAc,KACd,SAAU,EAAY,GACpB,KAAK,KAAO,KACZ,KAAK,MAAQ,KACb,KAAK,MAAQ,KAEb,KAAK,SAAW,SAAU,GACxB,KAAK,MAAQ,CACvB,EAEQ,KAAK,QAAU,SAAU,EAAU,EAAS,EAAe,GACzD,EAAU,GAAW,GACrB,EAAa,GAAc,GAE3B,IAAI,EAAM,EAAG,QAoBb,OAlBA,KAAK,KAAO,IAAI,OAAO,EAAU,KAAM,GACvC,KAAK,KAAK,QAAU,WACd,QAAQ,WAAW,IACrB,EAAc,IAAI,MAAM,qBAEtC,EAEU,KAAK,MAAQ,MAAM,KAAK,KAAK,MAC7B,KAAK,MAAM,MAAQ,KAAK,MACxB,KAAK,MAAM,QAAQ,GAAS,SAAU,GACpC,EAAI,QAAQ,EACxB,IAAa,SAAU,GACX,EAAI,OAAO,GACP,QAAQ,WAAW,IACrB,EAAc,EAE5B,IAEiB,EAAI,OACrB,EAEQ,KAAK,WAAa,WAChB,IAAI,EAAM,EAAG,QAEb,OADA,KAAK,MAAM,WAAW,EAAI,SACnB,EAAI,OACrB,EAEQ,KAAK,UAAY,KAAK,GAAK,SAAU,EAAa,EAAU,GAE1D,OADA,EAAU,GAAW,GACd,KAAK,MAAM,UAAU,GAAa,SAAU,GACjD,IAAI,EAAU,KACd,IACE,EAAU,KAAK,MAAM,EAAI,KACvC,CAAa,QACK,GACF,EAAS,EAAS,EAAI,QAAS,EAE/C,CACA,GAAa,EACb,EAEQ,KAAK,YAAc,KAAK,IAAM,SAAU,GACtC,EAAa,aACvB,EAEQ,KAAK,KAAO,SAAU,EAAa,EAAM,GACvC,IAAI,EAAM,EAAG,QACb,IACE,IAAI,EAAc,KAAK,UAAU,GACjC,EAAU,GAAW,GACrB,KAAK,MAAM,KAAK,EAAa,EAAS,GACtC,EAAI,SAChB,CAAY,MAAO,GACP,EAAI,OAAO,EACvB,CACU,OAAO,EAAI,OACrB,CACA","file":"/npm/ng-stomp@0.5.0/src/ng-stomp.js/+esm","sourceRoot":"","sourcesContent":["/**\n * Bundled by jsDelivr using Rollup v2.79.2 and Terser v5.39.0.\n * Original file: /npm/ng-stomp@0.5.0/src/ng-stomp.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","/**\n * ngStomp\n *\n * @version 0.5.0\n * @author Maik Hummel <m@ikhummel.com>\n * @license MIT\n */\n\n/*global\n    angular, SockJS, Stomp */\n(function () {\n  angular\n    .module('ngStomp', [])\n    .service('$stomp', [\n      '$rootScope', '$q',\n      function ($rootScope, $q) {\n        this.sock = null\n        this.stomp = null\n        this.debug = null\n\n        this.setDebug = function (callback) {\n          this.debug = callback\n        }\n\n        this.connect = function (endpoint, headers, errorCallback, sockjsOpts) {\n          headers = headers || {}\n          sockjsOpts = sockjsOpts || {}\n\n          var dfd = $q.defer()\n\n          this.sock = new SockJS(endpoint, null, sockjsOpts)\n          this.sock.onclose = function () {\n            if (angular.isFunction(errorCallback)) {\n              errorCallback(new Error('Connection broken'))\n            }\n          }\n\n          this.stomp = Stomp.over(this.sock)\n          this.stomp.debug = this.debug\n          this.stomp.connect(headers, function (frame) {\n            dfd.resolve(frame)\n          }, function (err) {\n            dfd.reject(err)\n            if (angular.isFunction(errorCallback)) {\n              errorCallback(err)\n            }\n          })\n\n          return dfd.promise\n        }\n\n        this.disconnect = function () {\n          var dfd = $q.defer()\n          this.stomp.disconnect(dfd.resolve)\n          return dfd.promise\n        }\n\n        this.subscribe = this.on = function (destination, callback, headers) {\n          headers = headers || {}\n          return this.stomp.subscribe(destination, function (res) {\n            var payload = null\n            try {\n              payload = JSON.parse(res.body)\n            } finally {\n              if (callback) {\n                callback(payload, res.headers, res)\n              }\n            }\n          }, headers)\n        }\n\n        this.unsubscribe = this.off = function (subscription) {\n          subscription.unsubscribe()\n        }\n\n        this.send = function (destination, body, headers) {\n          var dfd = $q.defer()\n          try {\n            var payloadJson = JSON.stringify(body)\n            headers = headers || {}\n            this.stomp.send(destination, headers, payloadJson)\n            dfd.resolve()\n          } catch (e) {\n            dfd.reject(e)\n          }\n          return dfd.promise\n        }\n      }]\n  )\n})();\n"]}