Comparing version 1.4.1 to 1.4.2
@@ -1,1 +0,1 @@ | ||
(()=>{"use strict";class EventStream extends EventTarget{constructor(){super(),this.stream={},this.gmcpBackLog=[],this.logging=!1}registerEvent(event,callback){let once=arguments.length>2&&void 0!==arguments[2]&&arguments[2],duration=arguments.length>3&&void 0!==arguments[3]&&arguments[3],id=arguments.length>4?arguments[4]:void 0;id||(id=callback.name?callback.name:crypto.randomUUID()),this.stream[event]||(this.stream[event]=new Map);const listeners=this.stream[event];listeners.has(id)&&this.removeListener(event,id);const listener={controller:new AbortController,callback,id};duration&&(listener.timer=setTimeout((()=>{this.removeListener(event,listener.id)}),duration),listener.controller.signal.onabort=()=>{clearTimeout(listener.timer)});const callbackBundle=_ref=>{let{detail}=_ref;try{listener.callback(detail)}catch(error){console.error("Evenstream raiseEvent error:\nevent: %s %o\ncallback %s: %o\ndata: %o\nerror: %o",event,this.stream[event],listener.id,{callback},detail,error)}finally{once&&this.removeListener(event,listener.id)}};listener.callbackBundle=callbackBundle,this.addEventListener(event,callbackBundle,{once,signal:listener.controller.signal}),listeners.set(id,listener)}raiseEvent(event,data){this.dispatchEvent(new CustomEvent(event,{detail:data})),this.logging&&(console.log("eventStream event: ".concat(event)),console.log("eventStream data: ".concat(JSON.stringify(data))))}removeListener(event,identifier){const listeners=this.stream[event];if(!listeners)return!1;let removed=!1;if("string"==typeof identifier){if(listeners.has(identifier)){const listener=listeners.get(identifier);listener.timer&&clearTimeout(listener.timer),listener.controller.abort(),listeners.delete(identifier),removed=!0,console.log("eventStream: Removed listener ".concat(identifier," from event ").concat(event,"."))}}else if("function"==typeof identifier)for(const[id,listener]of listeners)if(listener.callback===identifier){listener.timer&&clearTimeout(listener.timer),listener.controller.abort(),listeners.delete(id),removed=!0,console.log("eventStream: Removed listener ".concat(id," from event ").concat(event,"."));break}return removed}getListener(event,id){const listeners=this.stream[event];return listeners?listeners.get(id):void 0}purge(event){if(event){if("ALL"===event){for(const eventName in this.stream){const listeners=this.stream[eventName];for(const[id]of listeners)this.removeListener(eventName,id)}this.stream={}}else if(this.stream[event]){const listeners=this.stream[event];for(const[id]of listeners)this.removeListener(event,id)}}else console.warn("eventStream: Attempted to purge invalid event")}gmcpHandler(){for(;this.gmcpBackLog.length>0;){const currentArgs=this.gmcpBackLog.shift();currentArgs.gmcp_method&&(setAtString(globalThis.GMCP,currentArgs.gmcp_method.split("."),currentArgs.gmcp_args),this.raiseEvent(currentArgs.gmcp_method,currentArgs.gmcp_args))}}gmcpHandlerRaw(gmcp){gmcp.gmcp_method&&(setAtString(globalThis.GMCP,gmcp.gmcp_method.split("."),gmcp.gmcp_args),this.raiseEvent(gmcp.gmcp_method,gmcp.gmcp_args))}}const setAtString=(obj,dotarr,val)=>{let current=obj;for(let i=0;i<dotarr.length-1;i++){const key=dotarr[i];current[key]=current[key]||{},current=current[key]}const lastKey=dotarr[dotarr.length-1];"object"!=typeof val||Array.isArray(val)?current[lastKey]=val:current[lastKey]=Object.assign(current[lastKey]||{},val)};class Timer{constructor(id){let length=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this._id=id,this._enabled=!1,this._startTime=0,this._endTime=0,this._timerId=0,this._defaultLength=length,this.setLength(length),this._callbacks=[]}get length(){return this._length}get id(){return this._id}get enabled(){return this._enabled}setLength(length){if(length<0)throw new Error("Timer length cannot be negative");this._length=length}reset(){clearTimeout(this._timerId),this._enabled=!1,this.setLength(this._defaultLength),this._endTime=performance.now()/1e3,eventStream.raiseEvent("timerReset".concat(this._id))}start(){clearTimeout(this._timerId),this._startTimer(),eventStream.raiseEvent("timerStarted".concat(this._id))}_startTimer(){this._timerId=setTimeout(this.stop.bind(this),1e3*this._length),this._enabled=!0,this._startTime=performance.now()/1e3}stop(){this._enabled&&(clearTimeout(this._timerId),this._endTime=performance.now()/1e3,this._enabled=!1,eventStream.raiseEvent("timerStopped".concat(this._id)))}duration(){return this._enabled?this.elapsed():this._endTime-this._startTime}elapsed(){return this._enabled?performance.now()/1e3-this._startTime:0}remaining(){return this._enabled?this._length-this.elapsed():this._length}static createTimer(name){return new Timer(name,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0)}}const base_Timer=Timer.createTimer;globalThis.EventStream=EventStream,globalThis.eventStream=new EventStream,globalThis.eventStream.createTimer=base_Timer;const applyOverride=()=>{globalThis.nexusclient.process_lines=function(lines){if(this.gagged)return;if(!lines.length)return;this.current_block=lines;let reflexes=this.reflexes();for(var idx=0;idx<lines.length&&!(idx>=1e3);++idx)this.current_line=lines[idx],this.current_line.index=idx,lines[idx].line&&lines[idx].line.indexOf(String.fromCharCode(7))>=0&&this.platform().beep(),this.fullstop||(lines=reflexes.handle_triggers(lines,idx));reflexes.run_function("onBlock",lines,"ALL"),this.ui().buffer().add_block(lines),this.current_line=void 0,this.current_block=void 0},console.log("[eventStream]: Overrides applied")};"undefined"!=typeof nexusclient&&"khaseem"!==nexusclient.charname.toLowerCase()&&(fetch("https://unpkg.com/nexevent/eventStream3.nxs",{cache:"no-store"}).then((response=>response.json())).then((data=>{nexusclient.packages().get("eventStream3").apply(data,nexusclient.reflexes())})),applyOverride())})(); | ||
(()=>{"use strict";class EventStream extends EventTarget{constructor(){super(),this.stream={},this.gmcpBackLog=[],this.logging=!1}registerEvent(event,callback){let once=arguments.length>2&&void 0!==arguments[2]&&arguments[2],duration=arguments.length>3&&void 0!==arguments[3]&&arguments[3],id=arguments.length>4?arguments[4]:void 0;id||(id=callback.name?callback.name:crypto.randomUUID()),this.stream[event]||(this.stream[event]=new Map);const listeners=this.stream[event];listeners.has(id)&&this.removeListener(event,id);const listener={controller:new AbortController,callback,id,enabled:!0};duration&&(listener.timer=setTimeout((()=>{this.removeListener(event,listener.id)}),duration),listener.controller.signal.onabort=()=>{clearTimeout(listener.timer)});const callbackBundle=_ref=>{let{detail}=_ref;try{listener.enabled&&listener.callback(detail)}catch(error){console.error("Evenstream raiseEvent error:\nevent: %s %o\ncallback %s: %o\ndata: %o\nerror: %o",event,this.stream[event],listener.id,{callback},detail,error)}finally{once&&this.removeListener(event,listener.id)}};listener.callbackBundle=callbackBundle,this.addEventListener(event,callbackBundle,{once,signal:listener.controller.signal}),listeners.set(id,listener)}raiseEvent(event,data){this.dispatchEvent(new CustomEvent(event,{detail:data})),this.logging&&(console.log("eventStream event: ".concat(event)),console.log("eventStream data: ".concat(JSON.stringify(data))))}removeListener(event,identifier){const listeners=this.stream[event];if(!listeners)return!1;let removed=!1;if("string"==typeof identifier){if(listeners.has(identifier)){const listener=listeners.get(identifier);listener.timer&&clearTimeout(listener.timer),listener.controller.abort(),listeners.delete(identifier),removed=!0,console.log("eventStream: Removed listener ".concat(identifier," from event ").concat(event,"."))}}else if("function"==typeof identifier)for(const[id,listener]of listeners)if(listener.callback===identifier){listener.timer&&clearTimeout(listener.timer),listener.controller.abort(),listeners.delete(id),removed=!0,console.log("eventStream: Removed listener ".concat(id," from event ").concat(event,"."));break}return removed}getListener(event,id){const listeners=this.stream[event];return listeners?listeners.get(id):void 0}enableListener(event,id){const listener=this.getListener(event,id);listener?listener.enabled=!0:console.warn("eventStream: Attempted to enable invalid listener ".concat(id," for event ").concat(event))}disableListener(event,id){const listener=this.getListener(event,id);listener?listener.enabled=!1:console.warn("eventStream: Attempted to disable invalid listener ".concat(id," for event ").concat(event))}purge(event){if(event){if("ALL"===event){for(const eventName in this.stream){const listeners=this.stream[eventName];for(const[id]of listeners)this.removeListener(eventName,id)}this.stream={}}else if(this.stream[event]){const listeners=this.stream[event];for(const[id]of listeners)this.removeListener(event,id)}}else console.warn("eventStream: Attempted to purge invalid event")}gmcpHandler(){for(;this.gmcpBackLog.length>0;){const currentArgs=this.gmcpBackLog.shift();currentArgs.gmcp_method&&(setAtString(globalThis.GMCP,currentArgs.gmcp_method.split("."),currentArgs.gmcp_args),this.raiseEvent(currentArgs.gmcp_method,currentArgs.gmcp_args))}}gmcpHandlerRaw(gmcp){gmcp.gmcp_method&&(setAtString(globalThis.GMCP,gmcp.gmcp_method.split("."),gmcp.gmcp_args),this.raiseEvent(gmcp.gmcp_method,gmcp.gmcp_args))}}const setAtString=(obj,dotarr,val)=>{let current=obj;for(let i=0;i<dotarr.length-1;i++){const key=dotarr[i];current[key]=current[key]||{},current=current[key]}const lastKey=dotarr[dotarr.length-1];"object"!=typeof val||Array.isArray(val)?current[lastKey]=val:current[lastKey]=Object.assign(current[lastKey]||{},val)};class Timer{constructor(id){let length=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this._id=id,this._enabled=!1,this._startTime=0,this._endTime=0,this._timerId=0,this._defaultLength=length,this.setLength(length),this._callbacks=[]}get length(){return this._length}get id(){return this._id}get enabled(){return this._enabled}setLength(length){if(length<0)throw new Error("Timer length cannot be negative");this._length=length}reset(){clearTimeout(this._timerId),this._enabled=!1,this.setLength(this._defaultLength),this._endTime=performance.now()/1e3,eventStream.raiseEvent("timerReset".concat(this._id))}start(){clearTimeout(this._timerId),this._startTimer(),eventStream.raiseEvent("timerStarted".concat(this._id))}_startTimer(){this._timerId=setTimeout(this.stop.bind(this),1e3*this._length),this._enabled=!0,this._startTime=performance.now()/1e3}stop(){this._enabled&&(clearTimeout(this._timerId),this._endTime=performance.now()/1e3,this._enabled=!1,eventStream.raiseEvent("timerStopped".concat(this._id)))}duration(){return this._enabled?this.elapsed():this._endTime-this._startTime}elapsed(){return this._enabled?performance.now()/1e3-this._startTime:0}remaining(){return this._enabled?this._length-this.elapsed():this._length}static createTimer(name){return new Timer(name,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0)}}const base_Timer=Timer.createTimer;globalThis.EventStream=EventStream,globalThis.eventStream=new EventStream,globalThis.eventStream.createTimer=base_Timer;const applyOverride=()=>{globalThis.nexusclient.process_lines=function(lines){if(this.gagged)return;if(!lines.length)return;this.current_block=lines;let reflexes=this.reflexes();for(var idx=0;idx<lines.length&&!(idx>=1e3);++idx)this.current_line=lines[idx],this.current_line.index=idx,lines[idx].line&&lines[idx].line.indexOf(String.fromCharCode(7))>=0&&this.platform().beep(),this.fullstop||(lines=reflexes.handle_triggers(lines,idx));reflexes.run_function("onBlock",lines,"ALL"),this.ui().buffer().add_block(lines),this.current_line=void 0,this.current_block=void 0},console.log("[eventStream]: Overrides applied")};"undefined"!=typeof nexusclient&&"khaseem"!==nexusclient.charname.toLowerCase()&&(fetch("https://unpkg.com/nexevent/eventStream3.nxs",{cache:"no-store"}).then((response=>response.json())).then((data=>{nexusclient.packages().get("eventStream3").apply(data,nexusclient.reflexes())})),applyOverride())})(); |
{ | ||
"name": "nexevent", | ||
"version": "1.4.1", | ||
"version": "1.4.2", | ||
"description": "eventstream for the nexus client", | ||
@@ -5,0 +5,0 @@ "main": "bundle.min.js", |
Sorry, the diff of this file is not supported yet
13895