From cf09fd3f131d08196693398c90a2563ebb6b927f Mon Sep 17 00:00:00 2001 From: lazos Date: Mon, 28 Jan 2019 12:00:39 +0100 Subject: [PATCH] bump --- dist/vue-wamp.cjs.js | 8 +++++++- dist/vue-wamp.esm.js | 8 +++++++- dist/vue-wamp.js | 4 ++-- dist/vue-wamp.js.map | 2 +- package.json | 2 +- 5 files changed, 18 insertions(+), 6 deletions(-) diff --git a/dist/vue-wamp.cjs.js b/dist/vue-wamp.cjs.js index e7c5979..9a84e4e 100644 --- a/dist/vue-wamp.cjs.js +++ b/dist/vue-wamp.cjs.js @@ -1,5 +1,5 @@ /*! - * vue-wamp v2.0.3 + * vue-wamp v2.0.5 * https://github.com/lajosbencz/vue-wamp#readme * Released under the MIT License. */ @@ -350,11 +350,17 @@ class Connection extends autobahn.Connection { } open() { + if(this.isConnected || this.isOpen) { + return; + } this.log.info('Connection open', {Connection: this}); super.open(); } close(reason, message) { + if(!this.isConnected && !this.isOpen && !this.isRetrying) { + return; + } this.log.info('Connection close', {Connection: this, reason, message}); super.close(reason, message); } diff --git a/dist/vue-wamp.esm.js b/dist/vue-wamp.esm.js index bdd240d..e53e358 100644 --- a/dist/vue-wamp.esm.js +++ b/dist/vue-wamp.esm.js @@ -1,5 +1,5 @@ /*! - * vue-wamp v2.0.3 + * vue-wamp v2.0.5 * https://github.com/lajosbencz/vue-wamp#readme * Released under the MIT License. */ @@ -346,11 +346,17 @@ class Connection extends autobahn.Connection { } open() { + if(this.isConnected || this.isOpen) { + return; + } this.log.info('Connection open', {Connection: this}); super.open(); } close(reason, message) { + if(!this.isConnected && !this.isOpen && !this.isRetrying) { + return; + } this.log.info('Connection close', {Connection: this, reason, message}); super.close(reason, message); } diff --git a/dist/vue-wamp.js b/dist/vue-wamp.js index bbcef01..b3544aa 100644 --- a/dist/vue-wamp.js +++ b/dist/vue-wamp.js @@ -1,6 +1,6 @@ /*! - * vue-wamp v2.0.3 + * vue-wamp v2.0.5 * https://github.com/lajosbencz/vue-wamp#readme * Released under the MIT License. - */(function(a,b){"object"==typeof exports&&"undefined"!=typeof module?module.exports=b(require("autobahn")):"function"==typeof define&&define.amd?define(["autobahn"],b):(a=a||self,a.VueWamp=b(a.autobahn))})(this,function(a){"use strict";function b(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")}function c(a,b){for(var c,d=0;d {\r\n this._con.subscribe(topic, handler, options)\r\n .then((subscription) => this._subscriptions.push(subscription))\r\n .catch(console.error)\r\n });\r\n }\r\n\r\n register(procedure, endpoint, options) {\r\n options = options || {};\r\n options.acknowledge = true;\r\n this._reconnectors.push(() => {\r\n this._con.register(procedure, endpoint, options)\r\n .then((registration) => this._registrations.push(registration))\r\n .catch(console.error)\r\n });\r\n }\r\n\r\n unsubscribe(subscription) {\r\n for(let i in this._subscriptions) {\r\n if(!this._subscriptions.hasOwnProperty(i)) {\r\n continue;\r\n }\r\n const s = this._subscriptions[i];\r\n if(s === subscription) {\r\n this._subscriptions = this._subscriptions.splice(i, 1);\r\n }\r\n }\r\n }\r\n\r\n unregister(registration) {\r\n for(let i in this._registrations) {\r\n if(!this._registrations.hasOwnProperty(i)) {\r\n continue;\r\n }\r\n const r = this._registrations[i];\r\n if(r === registration) {\r\n this._registrations = this._registrations.splice(i, 1);\r\n }\r\n }\r\n }\r\n\r\n clear() {\r\n this._reconnectors = [];\r\n }\r\n\r\n reconnected() {\r\n for(let i in this._reconnectors) {\r\n const r = this._reconnectors[i];\r\n r();\r\n }\r\n }\r\n\r\n closed() {\r\n while(this._subscriptions.length > 0) {\r\n const s = this._subscriptions.shift();\r\n this._con.unsubscribe(s).catch(() => {});\r\n }\r\n while(this._registrations.length >0) {\r\n const r = this._registrations.shift();\r\n this._con.unregister(r).catch(() => {});\r\n }\r\n }\r\n\r\n}\r\n\r\nexport default Persist\r\n","\r\nimport Persist from './Persist.js'\r\n\r\nclass ConnectionContext {\r\n\r\n constructor(connection, context, events) {\r\n this._con = connection;\r\n this._ctx = context;\r\n this._persist = new Persist(connection, events);\r\n events.$on('reconnected', () => {\r\n this._persist.reconnected();\r\n });\r\n events.$on('closed', () => {\r\n this.closed();\r\n this._persist.closed();\r\n });\r\n this._subscriptions = [];\r\n this._registrations = [];\r\n }\r\n\r\n get isConnected() {\r\n return this._con.isConnected;\r\n }\r\n\r\n get isOpen() {\r\n return this._con.isOpen;\r\n }\r\n\r\n get isRetrying() {\r\n return this._con.isRetrying;\r\n }\r\n\r\n open() {\r\n return this._con.open();\r\n }\r\n\r\n close(reason, message) {\r\n return this._con.close(reason, message);\r\n }\r\n\r\n call(procedure, args, kwargs, options) {\r\n return this._con.call(procedure, args, kwargs, options)\r\n }\r\n\r\n subscribe(topic, handler, options) {\r\n options = options || {};\r\n options.acknowledge = true;\r\n const d = this._con.defer();\r\n this._con.subscribe(topic, handler, options)\r\n .then(subscription => {\r\n this._subscriptions.push(subscription);\r\n d.resolve(subscription);\r\n }, d.reject)\r\n ;\r\n this._persist.subscribe(topic, handler, options);\r\n return d.promise;\r\n }\r\n\r\n register(procedure, endpoint, options) {\r\n options = options || {};\r\n options.acknowledge = true;\r\n const d = this._con.defer();\r\n this._con.register(procedure, endpoint, options)\r\n .then(registration => {\r\n this._registrations.push(registration);\r\n d.resolve(registration);\r\n }, d.reject)\r\n ;\r\n this._persist.register(procedure, endpoint, options);\r\n return d.promise;\r\n }\r\n\r\n publish(topic, args, kwargs, options) {\r\n return this._con.publish(topic, args, kwargs, options);\r\n }\r\n\r\n unsubscribe(subscription) {\r\n for(let i in this._subscriptions) {\r\n if(!this._subscriptions.hasOwnProperty(i)) {\r\n continue;\r\n }\r\n const s = this._subscriptions[i];\r\n if(s === subscription) {\r\n this._subscriptions = this._subscriptions.splice(i, 1);\r\n }\r\n }\r\n this._persist.unsubscribe(subscription);\r\n return this._con.unsubscribe(subscription);\r\n }\r\n\r\n unregister(registration) {\r\n for(let i in this._registrations) {\r\n if(!this._registrations.hasOwnProperty(i)) {\r\n continue;\r\n }\r\n const r = this._registrations[i];\r\n if(r === registration) {\r\n this._registrations = this._registrations.splice(i, 1);\r\n }\r\n }\r\n this._persist.unregister(registration);\r\n return this._con.unregister(registration);\r\n }\r\n\r\n closed() {\r\n while(this._subscriptions.length > 0) {\r\n const s = this._subscriptions.shift();\r\n this._con.unsubscribe(s).catch(() => {});\r\n }\r\n while(this._registrations.length >0) {\r\n const r = this._registrations.shift();\r\n this._con.unregister(r).catch(() => {});\r\n }\r\n }\r\n\r\n destroy() {\r\n this.closed();\r\n this._persist.closed();\r\n this._persist.clear();\r\n }\r\n\r\n}\r\n\r\nexport default ConnectionContext\r\n","import autobahn from 'autobahn'\r\n\r\nimport ConnectionContext from './ConnetionContext'\r\nimport pkg from \"../package\";\r\n\r\nconst logPrefix = '[vue-wamp]';\r\n\r\nconst dummyConsole = {\r\n log: () => {\r\n },\r\n info: () => {\r\n },\r\n warn: () => {\r\n },\r\n error: () => {\r\n },\r\n};\r\n\r\nconst debugConsole = {\r\n log: (...a) => {\r\n console.log(logPrefix, ...a)\r\n },\r\n info: (...a) => {\r\n console.info(logPrefix, ...a)\r\n },\r\n warn: (...a) => {\r\n console.warn(logPrefix, ...a)\r\n },\r\n error: (...a) => {\r\n console.error(logPrefix, ...a)\r\n },\r\n};\r\n\r\nconst defaultConfig = {\r\n debug: false,\r\n};\r\n\r\nclass Connection extends autobahn.Connection {\r\n\r\n constructor(config, events) {\r\n config = Object.assign({}, defaultConfig, config);\r\n super(config);\r\n\r\n // plugin events\r\n this._vueWampEvents = events;\r\n // plugin config\r\n this._vueWampCfg = config;\r\n // session promise resolve queue\r\n this._vueWampQRes = [];\r\n // session promise reject queue\r\n this._vueWampQRej = [];\r\n\r\n let _lastStatus = {\r\n isConnected: false,\r\n isOpen: false,\r\n isRetrying: false,\r\n };\r\n\r\n const _statusUpdate = (details) => {\r\n const status = {\r\n isConnected: this.isConnected,\r\n isOpen: this.isOpen,\r\n isRetrying: this.isRetrying,\r\n };\r\n const e = {status, lastStatus: _lastStatus, details};\r\n this.log.info('Status emit', e);\r\n events.$emit('status', e);\r\n if(status.isOpen && !_lastStatus.isOpen) {\r\n events.$emit('opened', e);\r\n if(!status.isRetrying && _lastStatus.isRetrying) {\r\n events.$emit('reconnected', e);\r\n }\r\n }\r\n else if(!status.isOpen && _lastStatus.isOpen) {\r\n events.$emit('closed', e);\r\n }\r\n if(status.isRetrying && !_lastStatus.isRetrying) {\r\n events.$emit('retrying', e);\r\n }\r\n _lastStatus = status;\r\n };\r\n\r\n this.onopen = (session, details) => {\r\n this.log.info('Connection opened', {session, details});\r\n _statusUpdate(details);\r\n const l = this._vueWampQRes.length;\r\n while (this._vueWampQRes.length > 0) {\r\n let resolve = this._vueWampQRes.shift();\r\n resolve(session);\r\n }\r\n this.log.info('Sessions resolved:', l);\r\n this._vueWampQRej = [];\r\n if(config.hasOwnProperty('onopen') && typeof config.onopen === \"function\") {\r\n config.onopen(session, details);\r\n }\r\n };\r\n\r\n this.onclose = (reason, details) => {\r\n this.log.info('Connection closed', {reason, details});\r\n let stop = false;\r\n if(!details.will_retry) {\r\n this._autoreconnect_reset();\r\n stop = true;\r\n }\r\n _statusUpdate(details);\r\n const l = this._vueWampQRej.length;\r\n while (this._vueWampQRej.length > 0) {\r\n let reject = this._vueWampQRej.shift();\r\n reject({reason, details});\r\n }\r\n this.log.info('Sessions rejected:', l);\r\n this._vueWampQRes = [];\r\n if(config.hasOwnProperty('onclose') && typeof config.onclose === \"function\") {\r\n config.onclose(session, details);\r\n }\r\n return stop;\r\n };\r\n\r\n this.log.info('Connection create', {Connection: this});\r\n _statusUpdate(null);\r\n }\r\n\r\n get log() {\r\n return this._vueWampCfg.debug ? debugConsole : dummyConsole\r\n }\r\n\r\n // get isClosed() {\r\n // return !(this.isConnected || this.isOpen || this.isRetrying)\r\n // }\r\n\r\n get sessionPromise() {\r\n const d = this.defer();\r\n if (this.isOpen && this.session) {\r\n d.resolve(this.session)\r\n }\r\n else {\r\n this.open();\r\n this._vueWampQRes.push(d.resolve);\r\n this._vueWampQRej.push(d.reject);\r\n }\r\n return d.promise;\r\n }\r\n\r\n withContext(context) {\r\n return new ConnectionContext(this, context, this._vueWampEvents)\r\n }\r\n\r\n open() {\r\n this.log.info('Connection open', {Connection: this});\r\n super.open();\r\n }\r\n\r\n close(reason, message) {\r\n this.log.info('Connection close', {Connection: this, reason, message});\r\n super.close(reason, message);\r\n }\r\n\r\n reconnect() {\r\n this.close('wamp.goodbye.reconnect');\r\n this.open();\r\n }\r\n\r\n call(procedure, args, kwargs, options) {\r\n args = args || [];\r\n kwargs = kwargs || {};\r\n options = options || {};\r\n this.log.info('CALL', {procedure, args, kwargs, options});\r\n const d = this.defer();\r\n this.sessionPromise\r\n .then(session => session.call(procedure, args, kwargs, options).then(d.resolve, d.reject, d.notify))\r\n .catch(d.reject);\r\n return d.promise;\r\n }\r\n\r\n publish(topic, args, kwargs, options) {\r\n args = args || [];\r\n kwargs = kwargs || {};\r\n options = options || {};\r\n options.acknowledge = true;\r\n this.log.info('PUBLISH', {topic, args, kwargs, options});\r\n const d = this.defer();\r\n this.sessionPromise\r\n .then(session => session.publish(topic, args, kwargs, options).then(d.resolve, d.reject))\r\n .catch(d.reject);\r\n return d.promise;\r\n }\r\n\r\n register(procedure, endpoint, options) {\r\n options = options || {};\r\n options.acknowledge = true;\r\n this.log.info('REGISTER', {procedure, endpoint, options});\r\n const d = this.defer();\r\n this.sessionPromise\r\n .then(session => session.register(procedure, endpoint, options).then(d.resolve, d.reject))\r\n .catch(d.reject)\r\n ;\r\n return d.promise;\r\n }\r\n\r\n subscribe(topic, handler, options) {\r\n options = options || {};\r\n this.log.info('SUBSCRIBE', {topic, handler, options});\r\n const d = this.defer();\r\n this.sessionPromise\r\n .then(session =>\r\n session.subscribe(topic, handler, options).then(d.resolve, d.reject)\r\n )\r\n .catch(d.reject);\r\n return d.promise;\r\n }\r\n\r\n unregister(registration) {\r\n this.log.info('UNREGISTER', registration);\r\n const d = this.defer();\r\n this.sessionPromise\r\n .then(session =>\r\n session.unregister(registration).then(d.resolve, d.reject)\r\n )\r\n .catch(d.reject);\r\n return d.promise;\r\n }\r\n\r\n unsubscribe(subscription) {\r\n this.log.info('UNSUBSCRIBE', subscription);\r\n const d = this.defer();\r\n this.sessionPromise\r\n .then(session =>\r\n session.unsubscribe(subscription).then(d.resolve, d.reject)\r\n )\r\n .catch(d.reject);\r\n return d.promise;\r\n }\r\n}\r\n\r\nexport default Connection\r\n","import Connection from './Connection'\r\n\r\nexport default (Vue, options) => {\r\n\r\n const events = new Vue();\r\n\r\n const C = new Connection(options, events);\r\n\r\n // Expose through global property\r\n Vue.Wamp = C;\r\n\r\n // Expose through vm property\r\n Object.defineProperties(Vue.prototype, {\r\n '$wamp': {\r\n get() {\r\n if(!this._vueWampWithContext) {\r\n this._vueWampWithContext = C.withContext(this);\r\n }\r\n return this._vueWampWithContext;\r\n }\r\n }\r\n });\r\n\r\n // Expose through vm options\r\n Vue.mixin({\r\n data() {\r\n return {\r\n wampIsConnected: false,\r\n wampIsOpen: false,\r\n wampIsRetrying: false,\r\n }\r\n },\r\n created() {\r\n\r\n if (this === this.$root) {\r\n events.$on('status', (e) => {\r\n this.wampIsConnected = e.status.isConnected;\r\n this.wampIsOpen = e.status.isOpen;\r\n this.wampIsRetrying = e.status.isRetrying;\r\n this.$emit('$wamp.status', e);\r\n });\r\n events.$on('opened', (e) => this.$emit('$wamp.opened', e));\r\n events.$on('closed', (e) => this.$emit('$wamp.closed', e));\r\n events.$on('retrying', (e) => this.$emit('$wamp.retrying', e));\r\n events.$on('reconnected', (e) => this.$emit('$wamp.reconnected', e));\r\n }\r\n\r\n if (!this.$options.wamp)\r\n return;\r\n\r\n // exposing only these two makes any sense\r\n const validKeys = ['subscribe', 'register'];\r\n\r\n const $o = this.$options.wamp;\r\n\r\n // loop topics/procedures\r\n for (let type in validKeys) {\r\n type = validKeys[type];\r\n const t = $o[type];\r\n\r\n // loop topic/procedure names\r\n for (let name in t) {\r\n if (!t.hasOwnProperty(name))\r\n continue;\r\n\r\n const o = t[name];\r\n let handler;\r\n let options = {\r\n acknowledge: true,\r\n };\r\n\r\n if (typeof o === 'function') {\r\n // no options\r\n handler = o;\r\n }\r\n else {\r\n // user options\r\n handler = o.handler;\r\n options = Object.assign(options, o);\r\n delete options.handler;\r\n }\r\n if (typeof o !== 'function') {\r\n throw 'vue-wamp handler must be callable'\r\n }\r\n\r\n // do it!\r\n this.$wamp[type](name, handler.bind(this), options)\r\n .then(r => C.log.info('Component option: ' + type + ' ' + name, r))\r\n .catch(C.log.error)\r\n ;\r\n }\r\n }\r\n },\r\n beforeDestroy() {\r\n this.$wamp.destroy();\r\n }\r\n })\r\n\r\n}\r\n"],"names":["$export","require","S","F","assign","dP","f","FProto","Function","prototype","nameRE","NAME","configurable","get","match","e","Persist","connection","_con","_reconnectors","_subscriptions","_registrations","topic","handler","options","acknowledge","push","_this","subscribe","then","subscription","catch","console","error","procedure","endpoint","_this2","register","registration","i","hasOwnProperty","s","splice","r","length","shift","unsubscribe","unregister","ConnectionContext","context","events","_ctx","_persist","$on","reconnected","closed","open","reason","message","close","args","kwargs","call","d","defer","resolve","reject","promise","_this3","publish","clear","isConnected","isOpen","isRetrying","logPrefix","dummyConsole","log","info","warn","debugConsole","a","defaultConfig","debug","Connection","config","Object","_vueWampEvents","_vueWampCfg","_vueWampQRes","_vueWampQRej","_lastStatus","_statusUpdate","details","status","lastStatus","$emit","onopen","session","l","onclose","stop","will_retry","_autoreconnect_reset","sessionPromise","notify","autobahn","Vue","C","Wamp","defineProperties","_vueWampWithContext","withContext","mixin","data","wampIsConnected","wampIsOpen","wampIsRetrying","created","$root","$options","wamp","validKeys","$o","type","t","name","o","$wamp","bind","beforeDestroy","destroy"],"mappings":";;;;;8gDACA,GAAIA,CAAAA,CAAO,CAAGC,OAAO,CAAC,WAAD,CAArB,CAEAD,CAAO,CAACA,CAAO,CAACE,CAAR,CAAYF,CAAO,CAACG,CAArB,CAAwB,QAAxB,CAAkC,CAAEC,MAAM,CAAEH,OAAO,CAAC,kBAAD,CAAjB,CAAlC,KCHHI,CAAAA,CAAE,CAAGJ,OAAO,CAAC,cAAD,CAAP,CAAwBK,EAC7BC,CAAM,CAAGC,QAAQ,CAACC,UAClBC,CAAM,CAAG,wBACTC,CAAI,CAAG,OAGXA,CAAI,GAAIJ,CAAAA,CAAR,EAAkBN,OAAO,CAAC,gBAAD,CAAP,EAA6BI,CAAE,CAACE,CAAD,CAASI,CAAT,CAAe,CAC9DC,YAAY,GADkD,CAE9DC,GAAG,CAAE,UAAY,CACf,GAAI,CACF,MAAO,CAAC,GAAK,IAAN,EAAYC,KAAZ,CAAkBJ,CAAlB,EAA0B,CAA1B,CACR,CAAC,MAAOK,CAAP,CAAU,CACV,MAAO,EACR,CACF,CAR6D,CAAf,KCL3CC,CAAAA,wBAEQC,EAAY,UAAA,MACjBC,KAAOD,CADU,MAEjBE,cAAgB,EAFC,MAGjBC,eAAiB,EAHA,MAIjBC,eAAiB,+CAGdC,EAAOC,EAASC,EAAS,YACjCA,CAAO,CAAGA,CAAO,EAAI,EADY,CAEjCA,CAAO,CAACC,WAARD,GAFiC,MAG5BL,cAAcO,KAAK,UAAM,CAC5BC,CAAI,CAACT,IAAL,CAAUU,SAAV,CAAoBN,CAApB,CAA2BC,CAA3B,CAAoCC,CAApC,EACGK,IADH,CACQ,SAACC,CAAD,QAAkBH,CAAAA,CAAI,CAACP,cAAL,CAAoBM,IAApB,CAAyBI,CAAzB,CAD1B,CAAA,EAEGC,KAFH,CAESC,OAAO,CAACC,KAFjB,CADF,oCAOOC,EAAWC,EAAUX,EAAS,YACrCA,CAAO,CAAGA,CAAO,EAAI,EADgB,CAErCA,CAAO,CAACC,WAARD,GAFqC,MAGhCL,cAAcO,KAAK,UAAM,CAC5BU,CAAI,CAAClB,IAAL,CAAUmB,QAAV,CAAmBH,CAAnB,CAA8BC,CAA9B,CAAwCX,CAAxC,EACGK,IADH,CACQ,SAACS,CAAD,QAAkBF,CAAAA,CAAI,CAACf,cAAL,CAAoBK,IAApB,CAAyBY,CAAzB,CAD1B,CAAA,EAEGP,KAFH,CAESC,OAAO,CAACC,KAFjB,CADF,uCAOUH,EAAc,KACpB,GAAIS,CAAAA,IAAK,MAAKnB,kBACZ,KAAKA,cAAL,CAAoBoB,cAApB,CAAmCD,CAAnC,MAGEE,CAAAA,CAAC,CAAG,KAAKrB,cAAL,CAAoBmB,CAApB,EACPE,CAAC,GAAKX,SACFV,eAAiB,KAAKA,cAAL,CAAoBsB,MAApB,CAA2BH,CAA3B,CAA8B,CAA9B,uCAKjBD,EAAc,KACnB,GAAIC,CAAAA,IAAK,MAAKlB,kBACZ,KAAKA,cAAL,CAAoBmB,cAApB,CAAmCD,CAAnC,MAGEI,CAAAA,CAAC,CAAG,KAAKtB,cAAL,CAAoBkB,CAApB,EACPI,CAAC,GAAKL,SACFjB,eAAiB,KAAKA,cAAL,CAAoBqB,MAApB,CAA2BH,CAA3B,CAA8B,CAA9B,mCAKpB,MACDpB,cAAgB,wCAGT,KACR,GAAIoB,CAAAA,IAAK,MAAKpB,cAAe,IACzBwB,CAAAA,CAAC,CAAG,KAAKxB,aAAL,CAAmBoB,CAAnB,EACVI,CAAC,oCAII,MAC4B,CAA7B,MAAKvB,cAAL,CAAoBwB,MADnB,EAC+B,IAC9BH,CAAAA,CAAC,CAAG,KAAKrB,cAAL,CAAoByB,KAApB,QACL3B,KAAK4B,YAAYL,GAAGV,MAAM,UAAM,CAArC,GAHK,KAK2B,CAA5B,MAAKV,cAAL,CAAoBuB,MALnB,EAK8B,IAC7BD,CAAAA,CAAC,CAAG,KAAKtB,cAAL,CAAoBwB,KAApB,QACL3B,KAAK6B,WAAWJ,GAAGZ,MAAM,UAAM,CAApC,aCrEAiB,wBAEQ/B,EAAYgC,EAASC,EAAQ,qBAAA,MAClChC,KAAOD,CAD2B,MAElCkC,KAAOF,CAF2B,MAGlCG,SAAW,GAAIpC,CAAAA,CAAJ,CAAYC,CAAZ,CAAwBiC,CAAxB,CAHuB,CAIvCA,CAAM,CAACG,GAAPH,CAAW,aAAXA,CAA0B,UAAM,CAC9BvB,CAAI,CAACyB,QAAL,CAAcE,WAAd,EADF,CAAAJ,CAJuC,CAOvCA,CAAM,CAACG,GAAPH,CAAW,QAAXA,CAAqB,UAAM,CACzBvB,CAAI,CAAC4B,MAAL,EADyB,CAEzB5B,CAAI,CAACyB,QAAL,CAAcG,MAAd,EAFF,CAAAL,CAPuC,MAWlC9B,eAAiB,EAXiB,MAYlCC,eAAiB,2CAejB,OACE,MAAKH,IAAL,CAAUsC,IAAV,iCAGHC,EAAQC,EAAS,OACd,MAAKxC,IAAL,CAAUyC,KAAV,CAAgBF,CAAhB,CAAwBC,CAAxB,+BAGJxB,EAAW0B,EAAMC,EAAQrC,EAAS,OAC9B,MAAKN,IAAL,CAAU4C,IAAV,CAAe5B,CAAf,CAA0B0B,CAA1B,CAAgCC,CAAhC,CAAwCrC,CAAxC,oCAGCF,EAAOC,EAASC,EAAS,YACjCA,CAAO,CAAGA,CAAO,EAAI,EADY,CAEjCA,CAAO,CAACC,WAARD,GAFiC,IAG3BuC,CAAAA,CAAC,CAAG,KAAK7C,IAAL,CAAU8C,KAAV,eACL9C,KAAKU,UAAUN,EAAOC,EAASC,GACjCK,KAAK,SAAAC,CAAA,CAAgB,CACpBM,CAAI,CAAChB,cAAL,CAAoBM,IAApB,CAAyBI,CAAzB,CADoB,CAEpBiC,CAAC,CAACE,OAAFF,CAAUjC,CAAViC,CAHJ,EAIKA,CAAC,CAACG,aAEFd,SAASxB,UAAUN,EAAOC,EAASC,GACjCuC,CAAC,CAACI,yCAGFjC,EAAWC,EAAUX,EAAS,YACrCA,CAAO,CAAGA,CAAO,EAAI,EADgB,CAErCA,CAAO,CAACC,WAARD,GAFqC,IAG/BuC,CAAAA,CAAC,CAAG,KAAK7C,IAAL,CAAU8C,KAAV,eACL9C,KAAKmB,SAASH,EAAWC,EAAUX,GACrCK,KAAK,SAAAS,CAAA,CAAgB,CACpB8B,CAAI,CAAC/C,cAAL,CAAoBK,IAApB,CAAyBY,CAAzB,CADoB,CAEpByB,CAAC,CAACE,OAAFF,CAAUzB,CAAVyB,CAHJ,EAIKA,CAAC,CAACG,aAEFd,SAASf,SAASH,EAAWC,EAAUX,GACrCuC,CAAC,CAACI,wCAGH7C,EAAOsC,EAAMC,EAAQrC,EAAS,OAC7B,MAAKN,IAAL,CAAUmD,OAAV,CAAkB/C,CAAlB,CAAyBsC,CAAzB,CAA+BC,CAA/B,CAAuCrC,CAAvC,sCAGGM,EAAc,KACpB,GAAIS,CAAAA,IAAK,MAAKnB,kBACZ,KAAKA,cAAL,CAAoBoB,cAApB,CAAmCD,CAAnC,MAGEE,CAAAA,CAAC,CAAG,KAAKrB,cAAL,CAAoBmB,CAApB,EACPE,CAAC,GAAKX,SACFV,eAAiB,KAAKA,cAAL,CAAoBsB,MAApB,CAA2BH,CAA3B,CAA8B,CAA9B,eAGrBa,SAASN,YAAYhB,GACnB,KAAKZ,IAAL,CAAU4B,WAAV,CAAsBhB,CAAtB,qCAGEQ,EAAc,KACnB,GAAIC,CAAAA,IAAK,MAAKlB,kBACZ,KAAKA,cAAL,CAAoBmB,cAApB,CAAmCD,CAAnC,MAGEI,CAAAA,CAAC,CAAG,KAAKtB,cAAL,CAAoBkB,CAApB,EACPI,CAAC,GAAKL,SACFjB,eAAiB,KAAKA,cAAL,CAAoBqB,MAApB,CAA2BH,CAA3B,CAA8B,CAA9B,eAGrBa,SAASL,WAAWT,GAClB,KAAKpB,IAAL,CAAU6B,UAAV,CAAqBT,CAArB,kCAGA,MAC4B,CAA7B,MAAKlB,cAAL,CAAoBwB,MADnB,EAC+B,IAC9BH,CAAAA,CAAC,CAAG,KAAKrB,cAAL,CAAoByB,KAApB,QACL3B,KAAK4B,YAAYL,GAAGV,MAAM,UAAM,CAArC,GAHK,KAK2B,CAA5B,MAAKV,cAAL,CAAoBuB,MALnB,EAK8B,IAC7BD,CAAAA,CAAC,CAAG,KAAKtB,cAAL,CAAoBwB,KAApB,QACL3B,KAAK6B,WAAWJ,GAAGZ,MAAM,UAAM,CAApC,qCAIM,MACHwB,QADG,MAEHH,SAASG,QAFN,MAGHH,SAASkB,2CAlGE,OACT,MAAKpD,IAAL,CAAUqD,0CAGN,OACJ,MAAKrD,IAAL,CAAUsD,yCAGF,OACR,MAAKtD,IAAL,CAAUuD,oBCxBfC,CAAS,CAAG,aAEZC,CAAY,CAAG,CACnBC,GAAG,CAAE,UAAM,CADQ,CAAA,CAGnBC,IAAI,CAAE,UAAM,CAHO,CAAA,CAKnBC,IAAI,CAAE,UAAM,CALO,CAAA,CAOnB7C,KAAK,CAAE,UAAM,EAPM,EAWf8C,CAAY,CAAG,CACnBH,GAAG,CAAE,UAAU,8BAANI,CAAM,MAAA,EAAA,cAANA,CAAM,EAAA,CAANA,aAAAA,IACPhD,SAAQ4C,aAAIF,UAAcM,GAFT,CAAA,CAInBH,IAAI,CAAE,UAAU,8BAANG,CAAM,MAAA,EAAA,cAANA,CAAM,EAAA,CAANA,aAAAA,IACRhD,SAAQ6C,cAAKH,UAAcM,GALV,CAAA,CAOnBF,IAAI,CAAE,UAAU,8BAANE,CAAM,MAAA,EAAA,cAANA,CAAM,EAAA,CAANA,aAAAA,IACRhD,SAAQ8C,cAAKJ,UAAcM,GARV,CAAA,CAUnB/C,KAAK,CAAE,UAAU,8BAAN+C,CAAM,MAAA,EAAA,cAANA,CAAM,EAAA,CAANA,aAAAA,IACThD,SAAQC,eAAMyC,UAAcM,IAXX,EAefC,CAAa,CAAG,CACpBC,KAAK,GADe,EAIhBC,yBAEQC,EAAQlC,EAAQ,gBAAA,CAC1BkC,CAAM,CAAGC,MAAM,CAACjF,MAAPiF,CAAc,EAAdA,CAAkBJ,CAAlBI,CAAiCD,CAAjCC,CADiB,yBAEpBD,GAFoB,GAKrBE,eAAiBpC,CALI,GAOrBqC,YAAcH,CAPO,GASrBI,aAAe,EATM,GAWrBC,aAAe,EAXM,IAatBC,CAAAA,CAAW,CAAG,CAChBnB,WAAW,GADK,CAEhBC,MAAM,GAFU,CAGhBC,UAAU,GAHM,CAbQ,CAmBpBkB,CAAa,CAAG,SAACC,CAAD,CAAa,IAC3BC,CAAAA,CAAM,CAAG,CACbtB,WAAW,CAAE5C,EAAK4C,WADL,CAEbC,MAAM,CAAE7C,EAAK6C,MAFA,CAGbC,UAAU,CAAE9C,EAAK8C,UAHJ,CADkB,CAM3B1D,CAAC,CAAG,CAAC8E,MAAM,CAANA,CAAD,CAASC,UAAU,CAAEJ,CAArB,CAAkCE,OAAO,CAAPA,CAAlC,CANuB,GAO5BhB,IAAIC,KAAK,cAAe9D,EAPI,CAQjCmC,CAAM,CAAC6C,KAAP7C,CAAa,QAAbA,CAAuBnC,CAAvBmC,CARiC,CAS9B2C,CAAM,CAACrB,MAAPqB,EAAiB,CAACH,CAAW,CAAClB,MATA,EAU/BtB,CAAM,CAAC6C,KAAP7C,CAAa,QAAbA,CAAuBnC,CAAvBmC,CAV+B,CAW5B,CAAC2C,CAAM,CAACpB,UAAR,EAAsBiB,CAAW,CAACjB,UAXN,EAY7BvB,CAAM,CAAC6C,KAAP7C,CAAa,aAAbA,CAA4BnC,CAA5BmC,CAZ6B,EAezB,CAAC2C,CAAM,CAACrB,MAAR,EAAkBkB,CAAW,CAAClB,MAfL,EAgB/BtB,CAAM,CAAC6C,KAAP7C,CAAa,QAAbA,CAAuBnC,CAAvBmC,CAhB+B,CAkB9B2C,CAAM,CAACpB,UAAPoB,EAAqB,CAACH,CAAW,CAACjB,UAlBJ,EAmB/BvB,CAAM,CAAC6C,KAAP7C,CAAa,UAAbA,CAAyBnC,CAAzBmC,CAnB+B,CAqBjCwC,CAAW,CAAGG,CArBhB,CAnB0B,UA2CrBG,OAAS,SAACC,CAAD,CAAUL,CAAV,CAAsB,GAC7BhB,IAAIC,KAAK,oBAAqB,CAACoB,OAAO,CAAPA,CAAD,CAAUL,OAAO,CAAPA,CAAV,EADD,CAElCD,CAAa,CAACC,CAAD,CAFqB,QAK5B3B,CAAAA,EAFAiC,CAAC,CAAGvE,EAAK6D,YAAL,CAAkB5C,MAHM,CAIA,CAA3B,CAAAjB,EAAK6D,YAAL,CAAkB5C,MAJS,EAK5BqB,CAL4B,CAKlBtC,EAAK6D,YAAL,CAAkB3C,KAAlB,EALkB,CAMhCoB,CAAO,CAACgC,CAAD,CANyB,GAQ7BrB,IAAIC,KAAK,qBAAsBqB,EARF,GAS7BT,aAAe,EATc,CAU/BL,CAAM,CAAC5C,cAAP4C,CAAsB,QAAtBA,GAA4D,UAAzB,QAAOA,CAAAA,CAAM,CAACY,MAVlB,EAWhCZ,CAAM,CAACY,MAAPZ,CAAca,CAAdb,CAAuBQ,CAAvBR,CAXJ,IAeKe,QAAU,SAAC1C,CAAD,CAASmC,CAAT,CAAqB,GAC7BhB,IAAIC,KAAK,oBAAqB,CAACpB,MAAM,CAANA,CAAD,CAASmC,OAAO,CAAPA,CAAT,EADD,IAE9BQ,CAAAA,CAAI,IACJR,CAAO,CAACS,UAHsB,KAI3BC,sBAJ2B,CAKhCF,CAAI,GAL4B,EAOlCT,CAAa,CAACC,CAAD,CAPqB,QAU5B1B,CAAAA,EAFAgC,CAAC,CAAGvE,EAAK8D,YAAL,CAAkB7C,MARM,CASA,CAA3B,CAAAjB,EAAK8D,YAAL,CAAkB7C,MATS,EAU5BsB,CAV4B,CAUnBvC,EAAK8D,YAAL,CAAkB5C,KAAlB,EAVmB,CAWhCqB,CAAM,CAAC,CAACT,MAAM,CAANA,CAAD,CAASmC,OAAO,CAAPA,CAAT,CAAD,CAX0B,UAa7BhB,IAAIC,KAAK,qBAAsBqB,KAC/BV,aAAe,GACjBJ,CAAM,CAAC5C,cAAP4C,CAAsB,SAAtBA,GAA8D,UAA1B,QAAOA,CAAAA,CAAM,CAACe,SACnDf,CAAM,CAACe,OAAPf,CAAea,OAAfb,CAAwBQ,CAAxBR,EAEKgB,CAlBT,IAqBKxB,IAAIC,KAAK,oBAAqB,CAACM,UAAU,QAAX,GACnCQ,CAAa,CAAC,IAAD,yDAwBH1C,EAAS,OACZ,IAAID,CAAAA,CAAJ,CAAsB,IAAtB,CAA4BC,CAA5B,CAAqC,KAAKqC,cAA1C,gCAGF,MACAV,IAAIC,KAAK,kBAAmB,CAACM,UAAU,CAAE,IAAb,EAD5B,wEAKD1B,EAAQC,EAAS,MAChBkB,IAAIC,KAAK,mBAAoB,CAACM,UAAU,CAAE,IAAb,CAAmB1B,MAAM,CAANA,CAAnB,CAA2BC,OAAO,CAAPA,CAA3B,EADb,0CAETD,EAAQC,sCAGV,MACLC,MAAM,yBADD,MAELH,oCAGFtB,EAAW0B,EAAMC,EAAQrC,EAAS,CACrCoC,CAAI,CAAGA,CAAI,EAAI,EADsB,CAErCC,CAAM,CAAGA,CAAM,EAAI,EAFkB,CAGrCrC,CAAO,CAAGA,CAAO,EAAI,EAHgB,MAIhCoD,IAAIC,KAAK,OAAQ,CAAC3C,SAAS,CAATA,CAAD,CAAY0B,IAAI,CAAJA,CAAZ,CAAkBC,MAAM,CAANA,CAAlB,CAA0BrC,OAAO,CAAPA,CAA1B,EAJe,IAK/BuC,CAAAA,CAAC,CAAG,KAAKC,KAAL,eACLuC,eACF1E,KAAK,SAAAoE,CAAA,QAAWA,CAAAA,CAAO,CAACnC,IAARmC,CAAa/D,CAAb+D,CAAwBrC,CAAxBqC,CAA8BpC,CAA9BoC,CAAsCzE,CAAtCyE,EAA+CpE,IAA/CoE,CAAoDlC,CAAC,CAACE,OAAtDgC,CAA+DlC,CAAC,CAACG,MAAjE+B,CAAyElC,CAAC,CAACyC,MAA3EP,CADnB,GAEGlE,MAAMgC,CAAC,CAACG,QACJH,CAAC,CAACI,wCAGH7C,EAAOsC,EAAMC,EAAQrC,EAAS,CACpCoC,CAAI,CAAGA,CAAI,EAAI,EADqB,CAEpCC,CAAM,CAAGA,CAAM,EAAI,EAFiB,CAGpCrC,CAAO,CAAGA,CAAO,EAAI,EAHe,CAIpCA,CAAO,CAACC,WAARD,GAJoC,MAK/BoD,IAAIC,KAAK,UAAW,CAACvD,KAAK,CAALA,CAAD,CAAQsC,IAAI,CAAJA,CAAR,CAAcC,MAAM,CAANA,CAAd,CAAsBrC,OAAO,CAAPA,CAAtB,EALW,IAM9BuC,CAAAA,CAAC,CAAG,KAAKC,KAAL,eACLuC,eACF1E,KAAK,SAAAoE,CAAA,QAAWA,CAAAA,CAAO,CAAC5B,OAAR4B,CAAgB3E,CAAhB2E,CAAuBrC,CAAvBqC,CAA6BpC,CAA7BoC,CAAqCzE,CAArCyE,EAA8CpE,IAA9CoE,CAAmDlC,CAAC,CAACE,OAArDgC,CAA8DlC,CAAC,CAACG,MAAhE+B,CADnB,GAEGlE,MAAMgC,CAAC,CAACG,QACJH,CAAC,CAACI,yCAGFjC,EAAWC,EAAUX,EAAS,CACrCA,CAAO,CAAGA,CAAO,EAAI,EADgB,CAErCA,CAAO,CAACC,WAARD,GAFqC,MAGhCoD,IAAIC,KAAK,WAAY,CAAC3C,SAAS,CAATA,CAAD,CAAYC,QAAQ,CAARA,CAAZ,CAAsBX,OAAO,CAAPA,CAAtB,EAHW,IAI/BuC,CAAAA,CAAC,CAAG,KAAKC,KAAL,eACLuC,eACF1E,KAAK,SAAAoE,CAAA,QAAWA,CAAAA,CAAO,CAAC5D,QAAR4D,CAAiB/D,CAAjB+D,CAA4B9D,CAA5B8D,CAAsCzE,CAAtCyE,EAA+CpE,IAA/CoE,CAAoDlC,CAAC,CAACE,OAAtDgC,CAA+DlC,CAAC,CAACG,MAAjE+B,CADnB,GAEGlE,MAAMgC,CAAC,CAACG,QAEJH,CAAC,CAACI,0CAGD7C,EAAOC,EAASC,EAAS,CACjCA,CAAO,CAAGA,CAAO,EAAI,EADY,MAE5BoD,IAAIC,KAAK,YAAa,CAACvD,KAAK,CAALA,CAAD,CAAQC,OAAO,CAAPA,CAAR,CAAiBC,OAAO,CAAPA,CAAjB,EAFM,IAG3BuC,CAAAA,CAAC,CAAG,KAAKC,KAAL,eACLuC,eACF1E,KAAK,SAAAoE,CAAA,QACJA,CAAAA,CAAO,CAACrE,SAARqE,CAAkB3E,CAAlB2E,CAAyB1E,CAAzB0E,CAAkCzE,CAAlCyE,EAA2CpE,IAA3CoE,CAAgDlC,CAAC,CAACE,OAAlDgC,CAA2DlC,CAAC,CAACG,MAA7D+B,CAFJ,GAIGlE,MAAMgC,CAAC,CAACG,QACJH,CAAC,CAACI,2CAGA7B,EAAc,MAClBsC,IAAIC,KAAK,aAAcvC,EADL,IAEjByB,CAAAA,CAAC,CAAG,KAAKC,KAAL,eACLuC,eACF1E,KAAK,SAAAoE,CAAA,QACJA,CAAAA,CAAO,CAAClD,UAARkD,CAAmB3D,CAAnB2D,EAAiCpE,IAAjCoE,CAAsClC,CAAC,CAACE,OAAxCgC,CAAiDlC,CAAC,CAACG,MAAnD+B,CAFJ,GAIGlE,MAAMgC,CAAC,CAACG,QACJH,CAAC,CAACI,4CAGCrC,EAAc,MACnB8C,IAAIC,KAAK,cAAe/C,EADL,IAElBiC,CAAAA,CAAC,CAAG,KAAKC,KAAL,eACLuC,eACF1E,KAAK,SAAAoE,CAAA,QACJA,CAAAA,CAAO,CAACnD,WAARmD,CAAoBnE,CAApBmE,EAAkCpE,IAAlCoE,CAAuClC,CAAC,CAACE,OAAzCgC,CAAkDlC,CAAC,CAACG,MAApD+B,CAFJ,GAIGlE,MAAMgC,CAAC,CAACG,QACJH,CAAC,CAACI,mCA5GD,OACD,MAAKoB,WAAL,CAAiBL,KAAjB,CAAyBH,CAAzB,CAAwCJ,wCAO5B,IACbZ,CAAAA,CAAC,CAAG,KAAKC,KAAL,SACN,MAAKQ,MAAL,EAAe,KAAKyB,QACtBlC,CAAC,CAACE,OAAFF,CAAU,KAAKkC,OAAflC,QAGKP,YACAgC,aAAa9D,KAAKqC,CAAC,CAACE,cACpBwB,aAAa/D,KAAKqC,CAAC,CAACG,SAEpBH,CAAC,CAACI,eAvGYsC,CAAQ,CAACtB,kBCnCnB,UAACuB,CAAD,CAAMlF,CAAN,CAAkB,IAEzB0B,CAAAA,CAAM,CAAG,GAAIwD,CAAAA,CAFY,CAIzBC,CAAC,CAAG,GAAIxB,CAAAA,CAAJ,CAAe3D,CAAf,CAAwB0B,CAAxB,CAJqB,CAO/BwD,CAAG,CAACE,IAAJF,CAAWC,CAPoB,CAU/BtB,MAAM,CAACwB,gBAAPxB,CAAwBqB,CAAG,CAACjG,SAA5B4E,CAAuC,OAC5B,CACPxE,GADO,WACD,OACA,MAAKiG,2BACFA,oBAAsBH,CAAC,CAACI,WAAFJ,CAAc,IAAdA,GAEtB,KAAKG,oBALP,CAD4B,CAAvCzB,CAV+B,CAsB/BqB,CAAG,CAACM,KAAJN,CAAU,CACRO,IADQ,WACD,OACE,CACLC,eAAe,GADV,CAELC,UAAU,GAFL,CAGLC,cAAc,GAHT,CAFD,CAAA,CAQRC,OARQ,WAQE,eAEJ,OAAS,KAAKC,QAChBpE,CAAM,CAACG,GAAPH,CAAW,QAAXA,CAAqB,SAACnC,CAAD,CAAO,CAC1BY,CAAI,CAACuF,eAAL,CAAuBnG,CAAC,CAAC8E,MAAF9E,CAASwD,WADN,CAE1B5C,CAAI,CAACwF,UAAL,CAAkBpG,CAAC,CAAC8E,MAAF9E,CAASyD,MAFD,CAG1B7C,CAAI,CAACyF,cAAL,CAAsBrG,CAAC,CAAC8E,MAAF9E,CAAS0D,UAHL,CAI1B9C,CAAI,CAACoE,KAAL,CAAW,cAAX,CAA2BhF,CAA3B,CAJF,CAAAmC,EAMAA,CAAM,CAACG,GAAPH,CAAW,QAAXA,CAAqB,SAACnC,CAAD,QAAOY,CAAAA,CAAI,CAACoE,KAAL,CAAW,cAAX,CAA2BhF,CAA3B,CAA5B,CAAAmC,EACAA,CAAM,CAACG,GAAPH,CAAW,QAAXA,CAAqB,SAACnC,CAAD,QAAOY,CAAAA,CAAI,CAACoE,KAAL,CAAW,cAAX,CAA2BhF,CAA3B,CAA5B,CAAAmC,EACAA,CAAM,CAACG,GAAPH,CAAW,UAAXA,CAAuB,SAACnC,CAAD,QAAOY,CAAAA,CAAI,CAACoE,KAAL,CAAW,gBAAX,CAA6BhF,CAA7B,CAA9B,CAAAmC,EACAA,CAAM,CAACG,GAAPH,CAAW,aAAXA,CAA0B,SAACnC,CAAD,QAAOY,CAAAA,CAAI,CAACoE,KAAL,CAAW,mBAAX,CAAgChF,CAAhC,CAAjC,CAAAmC,IAGE,CAAC,KAAKqE,QAAL,CAAcC,SAIbC,CAAAA,CAAS,CAAG,CAAC,WAAD,CAAc,UAAd,EAEZC,CAAE,CAAG,KAAKH,QAAL,CAAcC,mBAIvBG,CAAI,CAAGF,CAAS,CAACE,CAAD,KACVC,CAAAA,CAAC,CAAGF,CAAE,CAACC,CAAD,aAGHE,MACH,CAACD,CAAC,CAACpF,cAAFoF,CAAiBC,CAAjBD,EACH,gBAAA,IAEIE,CAAAA,CAAC,CAAGF,CAAC,CAACC,CAAD,EACPtG,CAAO,QACPC,CAAO,CAAG,CACZC,WAAW,GADC,KAIG,UAAb,QAAOqG,CAAAA,EAETvG,CAAO,CAAGuG,GAIVvG,CAAO,CAAGuG,CAAC,CAACvG,QACZC,CAAO,CAAG6D,MAAM,CAACjF,MAAPiF,CAAc7D,CAAd6D,CAAuByC,CAAvBzC,QACH7D,CAAAA,CAAO,CAACD,SAEA,UAAb,QAAOuG,CAAAA,OACH,oCAIRnG,CAAI,CAACoG,KAAL,CAAWJ,CAAX,EAAiBE,CAAjB,CAAuBtG,CAAO,CAACyG,IAARzG,CAAaI,CAAbJ,CAAvB,CAA2CC,CAA3C,EACGK,IADH,CACQ,SAAAc,CAAA,QAAKgE,CAAAA,CAAC,CAAC/B,GAAF+B,CAAM9B,IAAN8B,CAAW,qBAAuBgB,CAAvB,CAA8B,GAA9B,CAAoCE,CAA/ClB,CAAqDhE,CAArDgE,CADb,CAAA,EAEG5E,KAFH,CAES4E,CAAC,CAAC/B,GAAF+B,CAAM1E,KAFf,OAzBG,GAAI4F,CAAAA,IAAQD,CAAAA,EAAG,SAAXC,YALN,GAAIF,CAAAA,IAAQF,CAAAA,IAARE,GAhCH,CAAA,CAqERM,aArEQ,WAqEQ,MACTF,MAAMG,UAtEL,CAAVxB,CAtBF"} \ No newline at end of file +{"version":3,"file":"vue-wamp.js.map","sources":["../node_modules/core-js/modules/es6.object.assign.js","../node_modules/core-js/modules/es6.function.name.js","../src/Persist.js","../src/ConnetionContext.js","../src/Connection.js","../src/index.js"],"sourcesContent":["// 19.1.3.1 Object.assign(target, source)\nvar $export = require('./_export');\n\n$export($export.S + $export.F, 'Object', { assign: require('./_object-assign') });\n","var dP = require('./_object-dp').f;\nvar FProto = Function.prototype;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// 19.2.4.2 name\nNAME in FProto || require('./_descriptors') && dP(FProto, NAME, {\n configurable: true,\n get: function () {\n try {\n return ('' + this).match(nameRE)[1];\n } catch (e) {\n return '';\n }\n }\n});\n","\r\nclass Persist {\r\n\r\n constructor(connection) {\r\n this._con = connection;\r\n this._reconnectors = [];\r\n this._subscriptions = [];\r\n this._registrations = [];\r\n }\r\n\r\n subscribe(topic, handler, options) {\r\n options = options || {};\r\n options.acknowledge = true;\r\n this._reconnectors.push(() => {\r\n this._con.subscribe(topic, handler, options)\r\n .then((subscription) => this._subscriptions.push(subscription))\r\n .catch(console.error)\r\n });\r\n }\r\n\r\n register(procedure, endpoint, options) {\r\n options = options || {};\r\n options.acknowledge = true;\r\n this._reconnectors.push(() => {\r\n this._con.register(procedure, endpoint, options)\r\n .then((registration) => this._registrations.push(registration))\r\n .catch(console.error)\r\n });\r\n }\r\n\r\n unsubscribe(subscription) {\r\n for(let i in this._subscriptions) {\r\n if(!this._subscriptions.hasOwnProperty(i)) {\r\n continue;\r\n }\r\n const s = this._subscriptions[i];\r\n if(s === subscription) {\r\n this._subscriptions = this._subscriptions.splice(i, 1);\r\n }\r\n }\r\n }\r\n\r\n unregister(registration) {\r\n for(let i in this._registrations) {\r\n if(!this._registrations.hasOwnProperty(i)) {\r\n continue;\r\n }\r\n const r = this._registrations[i];\r\n if(r === registration) {\r\n this._registrations = this._registrations.splice(i, 1);\r\n }\r\n }\r\n }\r\n\r\n clear() {\r\n this._reconnectors = [];\r\n }\r\n\r\n reconnected() {\r\n for(let i in this._reconnectors) {\r\n const r = this._reconnectors[i];\r\n r();\r\n }\r\n }\r\n\r\n closed() {\r\n while(this._subscriptions.length > 0) {\r\n const s = this._subscriptions.shift();\r\n this._con.unsubscribe(s).catch(() => {});\r\n }\r\n while(this._registrations.length >0) {\r\n const r = this._registrations.shift();\r\n this._con.unregister(r).catch(() => {});\r\n }\r\n }\r\n\r\n}\r\n\r\nexport default Persist\r\n","\r\nimport Persist from './Persist.js'\r\n\r\nclass ConnectionContext {\r\n\r\n constructor(connection, context, events) {\r\n this._con = connection;\r\n this._ctx = context;\r\n this._persist = new Persist(connection, events);\r\n events.$on('reconnected', () => {\r\n this._persist.reconnected();\r\n });\r\n events.$on('closed', () => {\r\n this.closed();\r\n this._persist.closed();\r\n });\r\n this._subscriptions = [];\r\n this._registrations = [];\r\n }\r\n\r\n get isConnected() {\r\n return this._con.isConnected;\r\n }\r\n\r\n get isOpen() {\r\n return this._con.isOpen;\r\n }\r\n\r\n get isRetrying() {\r\n return this._con.isRetrying;\r\n }\r\n\r\n open() {\r\n return this._con.open();\r\n }\r\n\r\n close(reason, message) {\r\n return this._con.close(reason, message);\r\n }\r\n\r\n call(procedure, args, kwargs, options) {\r\n return this._con.call(procedure, args, kwargs, options)\r\n }\r\n\r\n subscribe(topic, handler, options) {\r\n options = options || {};\r\n options.acknowledge = true;\r\n const d = this._con.defer();\r\n this._con.subscribe(topic, handler, options)\r\n .then(subscription => {\r\n this._subscriptions.push(subscription);\r\n d.resolve(subscription);\r\n }, d.reject)\r\n ;\r\n this._persist.subscribe(topic, handler, options);\r\n return d.promise;\r\n }\r\n\r\n register(procedure, endpoint, options) {\r\n options = options || {};\r\n options.acknowledge = true;\r\n const d = this._con.defer();\r\n this._con.register(procedure, endpoint, options)\r\n .then(registration => {\r\n this._registrations.push(registration);\r\n d.resolve(registration);\r\n }, d.reject)\r\n ;\r\n this._persist.register(procedure, endpoint, options);\r\n return d.promise;\r\n }\r\n\r\n publish(topic, args, kwargs, options) {\r\n return this._con.publish(topic, args, kwargs, options);\r\n }\r\n\r\n unsubscribe(subscription) {\r\n for(let i in this._subscriptions) {\r\n if(!this._subscriptions.hasOwnProperty(i)) {\r\n continue;\r\n }\r\n const s = this._subscriptions[i];\r\n if(s === subscription) {\r\n this._subscriptions = this._subscriptions.splice(i, 1);\r\n }\r\n }\r\n this._persist.unsubscribe(subscription);\r\n return this._con.unsubscribe(subscription);\r\n }\r\n\r\n unregister(registration) {\r\n for(let i in this._registrations) {\r\n if(!this._registrations.hasOwnProperty(i)) {\r\n continue;\r\n }\r\n const r = this._registrations[i];\r\n if(r === registration) {\r\n this._registrations = this._registrations.splice(i, 1);\r\n }\r\n }\r\n this._persist.unregister(registration);\r\n return this._con.unregister(registration);\r\n }\r\n\r\n closed() {\r\n while(this._subscriptions.length > 0) {\r\n const s = this._subscriptions.shift();\r\n this._con.unsubscribe(s).catch(() => {});\r\n }\r\n while(this._registrations.length >0) {\r\n const r = this._registrations.shift();\r\n this._con.unregister(r).catch(() => {});\r\n }\r\n }\r\n\r\n destroy() {\r\n this.closed();\r\n this._persist.closed();\r\n this._persist.clear();\r\n }\r\n\r\n}\r\n\r\nexport default ConnectionContext\r\n","import autobahn from 'autobahn'\r\n\r\nimport ConnectionContext from './ConnetionContext'\r\nimport pkg from \"../package\";\r\n\r\nconst logPrefix = '[vue-wamp]';\r\n\r\nconst dummyConsole = {\r\n log: () => {\r\n },\r\n info: () => {\r\n },\r\n warn: () => {\r\n },\r\n error: () => {\r\n },\r\n};\r\n\r\nconst debugConsole = {\r\n log: (...a) => {\r\n console.log(logPrefix, ...a)\r\n },\r\n info: (...a) => {\r\n console.info(logPrefix, ...a)\r\n },\r\n warn: (...a) => {\r\n console.warn(logPrefix, ...a)\r\n },\r\n error: (...a) => {\r\n console.error(logPrefix, ...a)\r\n },\r\n};\r\n\r\nconst defaultConfig = {\r\n debug: false,\r\n};\r\n\r\nclass Connection extends autobahn.Connection {\r\n\r\n constructor(config, events) {\r\n config = Object.assign({}, defaultConfig, config);\r\n super(config);\r\n\r\n // plugin events\r\n this._vueWampEvents = events;\r\n // plugin config\r\n this._vueWampCfg = config;\r\n // session promise resolve queue\r\n this._vueWampQRes = [];\r\n // session promise reject queue\r\n this._vueWampQRej = [];\r\n\r\n let _lastStatus = {\r\n isConnected: false,\r\n isOpen: false,\r\n isRetrying: false,\r\n };\r\n\r\n const _statusUpdate = (details) => {\r\n const status = {\r\n isConnected: this.isConnected,\r\n isOpen: this.isOpen,\r\n isRetrying: this.isRetrying,\r\n };\r\n const e = {status, lastStatus: _lastStatus, details};\r\n this.log.info('Status emit', e);\r\n events.$emit('status', e);\r\n if(status.isOpen && !_lastStatus.isOpen) {\r\n events.$emit('opened', e);\r\n if(!status.isRetrying && _lastStatus.isRetrying) {\r\n events.$emit('reconnected', e);\r\n }\r\n }\r\n else if(!status.isOpen && _lastStatus.isOpen) {\r\n events.$emit('closed', e);\r\n }\r\n if(status.isRetrying && !_lastStatus.isRetrying) {\r\n events.$emit('retrying', e);\r\n }\r\n _lastStatus = status;\r\n };\r\n\r\n this.onopen = (session, details) => {\r\n this.log.info('Connection opened', {session, details});\r\n _statusUpdate(details);\r\n const l = this._vueWampQRes.length;\r\n while (this._vueWampQRes.length > 0) {\r\n let resolve = this._vueWampQRes.shift();\r\n resolve(session);\r\n }\r\n this.log.info('Sessions resolved:', l);\r\n this._vueWampQRej = [];\r\n if(config.hasOwnProperty('onopen') && typeof config.onopen === \"function\") {\r\n config.onopen(session, details);\r\n }\r\n };\r\n\r\n this.onclose = (reason, details) => {\r\n this.log.info('Connection closed', {reason, details});\r\n let stop = false;\r\n if(!details.will_retry) {\r\n this._autoreconnect_reset();\r\n stop = true;\r\n }\r\n _statusUpdate(details);\r\n const l = this._vueWampQRej.length;\r\n while (this._vueWampQRej.length > 0) {\r\n let reject = this._vueWampQRej.shift();\r\n reject({reason, details});\r\n }\r\n this.log.info('Sessions rejected:', l);\r\n this._vueWampQRes = [];\r\n if(config.hasOwnProperty('onclose') && typeof config.onclose === \"function\") {\r\n config.onclose(session, details);\r\n }\r\n return stop;\r\n };\r\n\r\n this.log.info('Connection create', {Connection: this});\r\n _statusUpdate(null);\r\n }\r\n\r\n get log() {\r\n return this._vueWampCfg.debug ? debugConsole : dummyConsole\r\n }\r\n\r\n // get isClosed() {\r\n // return !(this.isConnected || this.isOpen || this.isRetrying)\r\n // }\r\n\r\n get sessionPromise() {\r\n const d = this.defer();\r\n if (this.isOpen && this.session) {\r\n d.resolve(this.session)\r\n }\r\n else {\r\n this.open();\r\n this._vueWampQRes.push(d.resolve);\r\n this._vueWampQRej.push(d.reject);\r\n }\r\n return d.promise;\r\n }\r\n\r\n withContext(context) {\r\n return new ConnectionContext(this, context, this._vueWampEvents)\r\n }\r\n\r\n open() {\r\n if(this.isConnected || this.isOpen) {\r\n return;\r\n }\r\n this.log.info('Connection open', {Connection: this});\r\n super.open();\r\n }\r\n\r\n close(reason, message) {\r\n if(!this.isConnected && !this.isOpen && !this.isRetrying) {\r\n return;\r\n }\r\n this.log.info('Connection close', {Connection: this, reason, message});\r\n super.close(reason, message);\r\n }\r\n\r\n reconnect() {\r\n this.close('wamp.goodbye.reconnect');\r\n this.open();\r\n }\r\n\r\n call(procedure, args, kwargs, options) {\r\n args = args || [];\r\n kwargs = kwargs || {};\r\n options = options || {};\r\n this.log.info('CALL', {procedure, args, kwargs, options});\r\n const d = this.defer();\r\n this.sessionPromise\r\n .then(session => session.call(procedure, args, kwargs, options).then(d.resolve, d.reject, d.notify))\r\n .catch(d.reject);\r\n return d.promise;\r\n }\r\n\r\n publish(topic, args, kwargs, options) {\r\n args = args || [];\r\n kwargs = kwargs || {};\r\n options = options || {};\r\n options.acknowledge = true;\r\n this.log.info('PUBLISH', {topic, args, kwargs, options});\r\n const d = this.defer();\r\n this.sessionPromise\r\n .then(session => session.publish(topic, args, kwargs, options).then(d.resolve, d.reject))\r\n .catch(d.reject);\r\n return d.promise;\r\n }\r\n\r\n register(procedure, endpoint, options) {\r\n options = options || {};\r\n options.acknowledge = true;\r\n this.log.info('REGISTER', {procedure, endpoint, options});\r\n const d = this.defer();\r\n this.sessionPromise\r\n .then(session => session.register(procedure, endpoint, options).then(d.resolve, d.reject))\r\n .catch(d.reject)\r\n ;\r\n return d.promise;\r\n }\r\n\r\n subscribe(topic, handler, options) {\r\n options = options || {};\r\n this.log.info('SUBSCRIBE', {topic, handler, options});\r\n const d = this.defer();\r\n this.sessionPromise\r\n .then(session =>\r\n session.subscribe(topic, handler, options).then(d.resolve, d.reject)\r\n )\r\n .catch(d.reject);\r\n return d.promise;\r\n }\r\n\r\n unregister(registration) {\r\n this.log.info('UNREGISTER', registration);\r\n const d = this.defer();\r\n this.sessionPromise\r\n .then(session =>\r\n session.unregister(registration).then(d.resolve, d.reject)\r\n )\r\n .catch(d.reject);\r\n return d.promise;\r\n }\r\n\r\n unsubscribe(subscription) {\r\n this.log.info('UNSUBSCRIBE', subscription);\r\n const d = this.defer();\r\n this.sessionPromise\r\n .then(session =>\r\n session.unsubscribe(subscription).then(d.resolve, d.reject)\r\n )\r\n .catch(d.reject);\r\n return d.promise;\r\n }\r\n}\r\n\r\nexport default Connection\r\n","import Connection from './Connection'\r\n\r\nexport default (Vue, options) => {\r\n\r\n const events = new Vue();\r\n\r\n const C = new Connection(options, events);\r\n\r\n // Expose through global property\r\n Vue.Wamp = C;\r\n\r\n // Expose through vm property\r\n Object.defineProperties(Vue.prototype, {\r\n '$wamp': {\r\n get() {\r\n if(!this._vueWampWithContext) {\r\n this._vueWampWithContext = C.withContext(this);\r\n }\r\n return this._vueWampWithContext;\r\n }\r\n }\r\n });\r\n\r\n // Expose through vm options\r\n Vue.mixin({\r\n data() {\r\n return {\r\n wampIsConnected: false,\r\n wampIsOpen: false,\r\n wampIsRetrying: false,\r\n }\r\n },\r\n created() {\r\n\r\n if (this === this.$root) {\r\n events.$on('status', (e) => {\r\n this.wampIsConnected = e.status.isConnected;\r\n this.wampIsOpen = e.status.isOpen;\r\n this.wampIsRetrying = e.status.isRetrying;\r\n this.$emit('$wamp.status', e);\r\n });\r\n events.$on('opened', (e) => this.$emit('$wamp.opened', e));\r\n events.$on('closed', (e) => this.$emit('$wamp.closed', e));\r\n events.$on('retrying', (e) => this.$emit('$wamp.retrying', e));\r\n events.$on('reconnected', (e) => this.$emit('$wamp.reconnected', e));\r\n }\r\n\r\n if (!this.$options.wamp)\r\n return;\r\n\r\n // exposing only these two makes any sense\r\n const validKeys = ['subscribe', 'register'];\r\n\r\n const $o = this.$options.wamp;\r\n\r\n // loop topics/procedures\r\n for (let type in validKeys) {\r\n type = validKeys[type];\r\n const t = $o[type];\r\n\r\n // loop topic/procedure names\r\n for (let name in t) {\r\n if (!t.hasOwnProperty(name))\r\n continue;\r\n\r\n const o = t[name];\r\n let handler;\r\n let options = {\r\n acknowledge: true,\r\n };\r\n\r\n if (typeof o === 'function') {\r\n // no options\r\n handler = o;\r\n }\r\n else {\r\n // user options\r\n handler = o.handler;\r\n options = Object.assign(options, o);\r\n delete options.handler;\r\n }\r\n if (typeof o !== 'function') {\r\n throw 'vue-wamp handler must be callable'\r\n }\r\n\r\n // do it!\r\n this.$wamp[type](name, handler.bind(this), options)\r\n .then(r => C.log.info('Component option: ' + type + ' ' + name, r))\r\n .catch(C.log.error)\r\n ;\r\n }\r\n }\r\n },\r\n beforeDestroy() {\r\n this.$wamp.destroy();\r\n }\r\n })\r\n\r\n}\r\n"],"names":["$export","require","S","F","assign","dP","f","FProto","Function","prototype","nameRE","NAME","configurable","get","match","e","Persist","connection","_con","_reconnectors","_subscriptions","_registrations","topic","handler","options","acknowledge","push","_this","subscribe","then","subscription","catch","console","error","procedure","endpoint","_this2","register","registration","i","hasOwnProperty","s","splice","r","length","shift","unsubscribe","unregister","ConnectionContext","context","events","_ctx","_persist","$on","reconnected","closed","open","reason","message","close","args","kwargs","call","d","defer","resolve","reject","promise","_this3","publish","clear","isConnected","isOpen","isRetrying","logPrefix","dummyConsole","log","info","warn","debugConsole","a","defaultConfig","debug","Connection","config","Object","_vueWampEvents","_vueWampCfg","_vueWampQRes","_vueWampQRej","_lastStatus","_statusUpdate","details","status","lastStatus","$emit","onopen","session","l","onclose","stop","will_retry","_autoreconnect_reset","sessionPromise","notify","autobahn","Vue","C","Wamp","defineProperties","_vueWampWithContext","withContext","mixin","data","wampIsConnected","wampIsOpen","wampIsRetrying","created","$root","$options","wamp","validKeys","$o","type","t","name","o","$wamp","bind","beforeDestroy","destroy"],"mappings":"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"} \ No newline at end of file diff --git a/package.json b/package.json index 88b59f0..98c5948 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vue-wamp", - "version": "2.0.4", + "version": "2.0.5", "description": "WAMP protocol wrapper library for Vue", "private": false, "main": "dist/vue-wamp.cjs.js",