oberknecht-emitters
Advanced tools
Comparing version 1.0.6 to 1.0.7
@@ -7,3 +7,4 @@ import { oberknechtActionEmitterOptions } from "../types/oberknecht.action.emitter.options"; | ||
timeout: number; | ||
_options: oberknechtActionEmitterOptions; | ||
get _options(): oberknechtActionEmitterOptions; | ||
set _options(options: oberknechtActionEmitterOptions); | ||
num: number; | ||
@@ -10,0 +11,0 @@ constructor(options: oberknechtActionEmitterOptions); |
@@ -6,7 +6,8 @@ "use strict"; | ||
const __1 = require(".."); | ||
let clientSymNum = 0; | ||
let symNum = 0; | ||
class oberknechtActionEmitter { | ||
#symbol = `oberknechtActionEmitter-${clientSymNum++}`; | ||
get symbol() { return this.#symbol; } | ||
; | ||
#symbol = `oberknechtActionEmitter-${symNum++}`; | ||
get symbol() { | ||
return this.#symbol; | ||
} | ||
defaultdelay = 300; | ||
@@ -16,3 +17,8 @@ timeout = 3000; | ||
#alwaysIgnore = ["PRIVMSG"]; | ||
_options; | ||
get _options() { | ||
return ((0, oberknecht_utils_1.getKeyFromObject)(__1.i.actionEmitterData, [this.symbol, "_options"]) ?? {}); | ||
} | ||
set _options(options) { | ||
(0, oberknecht_utils_1.addKeysToObject)(__1.i.actionEmitterData, [this.symbol, "_options"], options); | ||
} | ||
num = 0; | ||
@@ -23,6 +29,5 @@ constructor(options) { | ||
__1.i.actionEmitterData[this.symbol].isWorkingHard = false; | ||
let _options = (options ?? {}); | ||
let _options = options ?? {}; | ||
__1.i.actionEmitterData[this.symbol]._options = this._options = _options; | ||
} | ||
; | ||
emit = (eventName, args, returntype) => { | ||
@@ -34,3 +39,6 @@ if (__1.i.actionEmitterData[this.symbol].queue.length === 0) | ||
let events = __1.i.actionEmitterData[this.symbol].queue.filter((e) => { | ||
return (e.inQueue && !e.isDone && !e.timedOut && (e.expectedEventName ?? e.eventName).toUpperCase() === eventName); | ||
return (e.inQueue && | ||
!e.isDone && | ||
!e.timedOut && | ||
(e.expectedEventName ?? e.eventName).toUpperCase() === eventName); | ||
}); | ||
@@ -40,7 +48,6 @@ let event = events[0]; | ||
if (__1.i.actionEmitterData[this.symbol].queue.filter((e) => { | ||
return (!e.isDone && e.inQueue && !e.timedOut); | ||
return !e.isDone && e.inQueue && !e.timedOut; | ||
}).length === 0) { | ||
__1.i.actionEmitterData[this.symbol].queue = []; | ||
} | ||
; | ||
return; | ||
@@ -51,7 +58,9 @@ } | ||
clearTimeout(event.to); | ||
returntype = (!(returntype ?? undefined) ? 1 : returntype); | ||
returntype = !(returntype ?? undefined) ? 1 : returntype; | ||
switch (returntype) { | ||
case 1: | ||
default: return event.resolve(args); | ||
case 2: return event.reject(args); | ||
default: | ||
return event.resolve(args); | ||
case 2: | ||
return event.reject(args); | ||
} | ||
@@ -71,3 +80,2 @@ }; | ||
} | ||
; | ||
const itemsym = `${this.num++}`; | ||
@@ -77,3 +85,6 @@ const item = { | ||
eventName: eventName, | ||
expectedEventName: expectedEventName ?? (this._options.useExpectedEventNames ? (0, oberknecht_utils_1.expectedEventName)(eventName) : undefined), | ||
expectedEventName: expectedEventName ?? | ||
(this._options.useExpectedEventNames | ||
? (0, oberknecht_utils_1.expectedEventName)(eventName) | ||
: undefined), | ||
fn: fn, | ||
@@ -96,3 +107,3 @@ resolve: resolve, | ||
__1.i.actionEmitterData[this.symbol].isWorkingHard = true; | ||
let item = __1.i.actionEmitterData[this.symbol].queue.filter(v => { | ||
let item = __1.i.actionEmitterData[this.symbol].queue.filter((v) => { | ||
return v.sym === sym; | ||
@@ -109,3 +120,5 @@ })[0]; | ||
let queue = __1.i.actionEmitterData[this.symbol].queue; | ||
const next = queue.indexOf(item) > -1 && queue[queue.indexOf(item) + 1] ? queue[queue.indexOf(item) + 1] : undefined; | ||
const next = queue.indexOf(item) > -1 && queue[queue.indexOf(item) + 1] | ||
? queue[queue.indexOf(item) + 1] | ||
: undefined; | ||
if (!next) { | ||
@@ -115,9 +128,7 @@ __1.i.actionEmitterData[this.symbol].isWorkingHard = false; | ||
} | ||
; | ||
setTimeout(() => { | ||
this.next(next.sym); | ||
}, (next.delay ?? this.defaultdelay)); | ||
}, next.delay ?? this.defaultdelay); | ||
}; | ||
} | ||
exports.oberknechtActionEmitter = oberknechtActionEmitter; | ||
; |
@@ -6,2 +6,3 @@ import { oberknechtEmitterOptions } from "../types/oberknecht.emitter.options"; | ||
get _options(): oberknechtEmitterOptions; | ||
set _options(options: oberknechtEmitterOptions); | ||
constructor(options?: oberknechtEmitterOptions); | ||
@@ -8,0 +9,0 @@ on: (eventName: string | string[], callback: Function) => void; |
@@ -6,5 +6,5 @@ "use strict"; | ||
const __1 = require(".."); | ||
let clientSymNum = 0; | ||
let symNum = 0; | ||
class oberknechtEmitter { | ||
#symbol = `oberknechtEmitter-${clientSymNum++}`; | ||
#symbol = `oberknechtEmitter-${symNum++}`; | ||
get symbol() { | ||
@@ -14,4 +14,7 @@ return this.#symbol; | ||
get _options() { | ||
return __1.i.emitterData[this.symbol]._options; | ||
return (0, oberknecht_utils_1.getKeyFromObject)(__1.i.emitterData, [this.symbol, "_options"]) ?? {}; | ||
} | ||
set _options(options) { | ||
(0, oberknecht_utils_1.addKeysToObject)(__1.i.emitterData, [this.symbol, "_options"], options); | ||
} | ||
constructor(options) { | ||
@@ -18,0 +21,0 @@ let _options = options ?? {}; |
@@ -8,10 +8,11 @@ "use strict"; | ||
#symbol = `oberknechtQueueEmitter-${clientSymNum++}`; | ||
get symbol() { return this.#symbol; } | ||
; | ||
get events() { return __1.i.queueEmitterData[this.symbol]; } | ||
; | ||
get symbol() { | ||
return this.#symbol; | ||
} | ||
get events() { | ||
return __1.i.queueEmitterData[this.symbol]; | ||
} | ||
constructor() { | ||
__1.i.queueEmitterData[this.#symbol] = {}; | ||
__1.i.queueEmitterData[this.symbol] = {}; | ||
} | ||
; | ||
once = (eventName, arg) => { | ||
@@ -36,11 +37,10 @@ return new Promise((resolve, reject) => { | ||
emitResolve = (eventName, arg, resp) => { | ||
const o = (this.events[eventName] ?? {}); | ||
o[Object.keys(o).filter(a => (!(arg ?? undefined) || (o[a].arg && o[a].arg === arg)))[0]]?.resolve(resp); | ||
const o = this.events[eventName] ?? {}; | ||
o[Object.keys(o).filter((a) => !(arg ?? undefined) || (o[a].arg && o[a].arg === arg))[0]]?.resolve(resp); | ||
}; | ||
emitReject = async (eventName, arg, e) => { | ||
let o = (this.events[eventName] ?? {}); | ||
o[Object.keys(o).filter(a => (!(arg ?? undefined) || (o[a].arg && o[a].arg === arg)))[0]]?.reject(e); | ||
let o = this.events[eventName] ?? {}; | ||
o[Object.keys(o).filter((a) => !(arg ?? undefined) || (o[a].arg && o[a].arg === arg))[0]]?.reject(e); | ||
}; | ||
} | ||
exports.oberknechtQueueEmitter = oberknechtQueueEmitter; | ||
; |
@@ -1,9 +0,15 @@ | ||
import { expectedEventName as expectedEventName_ } from "oberknecht-utils"; | ||
import { | ||
addKeysToObject, | ||
expectedEventName as expectedEventName_, | ||
getKeyFromObject, | ||
} from "oberknecht-utils"; | ||
import { oberknechtActionEmitterOptions } from "../types/oberknecht.action.emitter.options"; | ||
import { i } from ".."; | ||
let clientSymNum = 0; | ||
let symNum = 0; | ||
export class oberknechtActionEmitter { | ||
readonly #symbol: string = `oberknechtActionEmitter-${clientSymNum++}`; | ||
get symbol() { return this.#symbol }; | ||
readonly #symbol: string = `oberknechtActionEmitter-${symNum++}`; | ||
get symbol() { | ||
return this.#symbol; | ||
} | ||
@@ -14,3 +20,12 @@ defaultdelay = 300; | ||
#alwaysIgnore = ["PRIVMSG"]; | ||
_options: oberknechtActionEmitterOptions; | ||
get _options(): oberknechtActionEmitterOptions { | ||
return ( | ||
getKeyFromObject(i.actionEmitterData, [this.symbol, "_options"]) ?? {} | ||
); | ||
} | ||
set _options(options) { | ||
addKeysToObject(i.actionEmitterData, [this.symbol, "_options"], options); | ||
} | ||
num = 0; | ||
@@ -22,6 +37,6 @@ | ||
i.actionEmitterData[this.symbol].isWorkingHard = false; | ||
let _options = (options ?? {}); | ||
let _options = options ?? {}; | ||
i.actionEmitterData[this.symbol]._options = this._options = _options; | ||
}; | ||
} | ||
@@ -33,3 +48,8 @@ emit = (eventName: string, args: any, returntype?: number) => { | ||
let events = i.actionEmitterData[this.symbol].queue.filter((e) => { | ||
return (e.inQueue && !e.isDone && !e.timedOut && (e.expectedEventName ?? e.eventName).toUpperCase() === eventName); | ||
return ( | ||
e.inQueue && | ||
!e.isDone && | ||
!e.timedOut && | ||
(e.expectedEventName ?? e.eventName).toUpperCase() === eventName | ||
); | ||
}); | ||
@@ -41,7 +61,7 @@ let event = events[0]; | ||
i.actionEmitterData[this.symbol].queue.filter((e) => { | ||
return (!e.isDone && e.inQueue && !e.timedOut); | ||
return !e.isDone && e.inQueue && !e.timedOut; | ||
}).length === 0 | ||
) { | ||
i.actionEmitterData[this.symbol].queue = []; | ||
}; | ||
} | ||
return; | ||
@@ -53,6 +73,9 @@ } | ||
clearTimeout(event.to); | ||
returntype = (!(returntype ?? undefined) ? 1 : returntype); | ||
returntype = !(returntype ?? undefined) ? 1 : returntype; | ||
switch (returntype) { | ||
case 1: default: return event.resolve(args); | ||
case 2: return event.reject(args); | ||
case 1: | ||
default: | ||
return event.resolve(args); | ||
case 2: | ||
return event.reject(args); | ||
} | ||
@@ -69,3 +92,10 @@ }; | ||
once = (eventName: string, fn: Function, args?: any, expectedEventName?: boolean, customDelay?: number, sendAsync?: boolean) => { | ||
once = ( | ||
eventName: string, | ||
fn: Function, | ||
args?: any, | ||
expectedEventName?: boolean, | ||
customDelay?: number, | ||
sendAsync?: boolean | ||
) => { | ||
return new Promise<void>((resolve, reject) => { | ||
@@ -75,3 +105,3 @@ if (this.#alwaysResolve.includes(eventName) || sendAsync) { | ||
return resolve(); | ||
}; | ||
} | ||
@@ -82,3 +112,7 @@ const itemsym = `${this.num++}`; | ||
eventName: eventName, | ||
expectedEventName: expectedEventName ?? (this._options.useExpectedEventNames ? expectedEventName_(eventName) : undefined), | ||
expectedEventName: | ||
expectedEventName ?? | ||
(this._options.useExpectedEventNames | ||
? expectedEventName_(eventName) | ||
: undefined), | ||
fn: fn, | ||
@@ -103,7 +137,10 @@ resolve: resolve, | ||
i.actionEmitterData[this.symbol].isWorkingHard = true; | ||
let item = i.actionEmitterData[this.symbol].queue.filter(v => { | ||
let item = i.actionEmitterData[this.symbol].queue.filter((v) => { | ||
return v.sym === sym; | ||
})[0]; | ||
if (!item) return console.error(Error("EROAIOAIOSDAOERRROR ITEM NOT FOUND BABYRAGE")); | ||
if (!item) | ||
return console.error( | ||
Error("EROAIOAIOSDAOERRROR ITEM NOT FOUND BABYRAGE") | ||
); | ||
@@ -118,3 +155,6 @@ item.inQueue = true; | ||
let queue = i.actionEmitterData[this.symbol].queue; | ||
const next = queue.indexOf(item) > -1 && queue[queue.indexOf(item) + 1] ? queue[queue.indexOf(item) + 1] : undefined; | ||
const next = | ||
queue.indexOf(item) > -1 && queue[queue.indexOf(item) + 1] | ||
? queue[queue.indexOf(item) + 1] | ||
: undefined; | ||
@@ -124,8 +164,8 @@ if (!next) { | ||
return; | ||
}; | ||
} | ||
setTimeout(() => { | ||
this.next(next.sym); | ||
}, (next.delay ?? this.defaultdelay)); | ||
}, next.delay ?? this.defaultdelay); | ||
}; | ||
}; | ||
} |
@@ -1,8 +0,14 @@ | ||
import { convertToArray, extendedTypeof, returnErr } from "oberknecht-utils"; | ||
import { | ||
addKeysToObject, | ||
convertToArray, | ||
extendedTypeof, | ||
getKeyFromObject, | ||
returnErr, | ||
} from "oberknecht-utils"; | ||
import { i } from ".."; | ||
import { oberknechtEmitterOptions } from "../types/oberknecht.emitter.options"; | ||
let clientSymNum = 0; | ||
let symNum = 0; | ||
export class oberknechtEmitter { | ||
readonly #symbol: string = `oberknechtEmitter-${clientSymNum++}`; | ||
readonly #symbol: string = `oberknechtEmitter-${symNum++}`; | ||
get symbol() { | ||
@@ -13,5 +19,9 @@ return this.#symbol; | ||
get _options(): oberknechtEmitterOptions { | ||
return i.emitterData[this.symbol]._options; | ||
return getKeyFromObject(i.emitterData, [this.symbol, "_options"]) ?? {}; | ||
} | ||
set _options(options) { | ||
addKeysToObject(i.emitterData, [this.symbol, "_options"], options); | ||
} | ||
constructor(options?: oberknechtEmitterOptions) { | ||
@@ -18,0 +28,0 @@ let _options = options ?? {}; |
@@ -5,39 +5,52 @@ import { i } from ".."; | ||
export class oberknechtQueueEmitter { | ||
readonly #symbol: string = `oberknechtQueueEmitter-${clientSymNum++}`; | ||
get symbol() { return this.#symbol }; | ||
get events() { return i.queueEmitterData[this.symbol] }; | ||
readonly #symbol: string = `oberknechtQueueEmitter-${clientSymNum++}`; | ||
get symbol() { | ||
return this.#symbol; | ||
} | ||
get events() { | ||
return i.queueEmitterData[this.symbol]; | ||
} | ||
constructor() { | ||
i.queueEmitterData[this.#symbol] = {}; | ||
}; | ||
constructor() { | ||
i.queueEmitterData[this.symbol] = {}; | ||
} | ||
once = (eventName: string, arg: any) => { | ||
return new Promise<any>((resolve, reject) => { | ||
if (!this.events[eventName]) this.events[eventName] = {}; | ||
once = (eventName: string, arg: any) => { | ||
return new Promise<any>((resolve, reject) => { | ||
if (!this.events[eventName]) this.events[eventName] = {}; | ||
const sym = String(Symbol()); | ||
const sym = String(Symbol()); | ||
this.events[eventName][sym] = { | ||
arg: arg ?? null, | ||
resolve: (args) => { | ||
delete this.events[eventName][sym]; | ||
resolve(args); | ||
}, | ||
reject: (args) => { | ||
delete this.events[eventName][sym]; | ||
reject(args); | ||
}, | ||
}; | ||
}); | ||
}; | ||
this.events[eventName][sym] = { | ||
arg: arg ?? null, | ||
resolve: (args) => { | ||
delete this.events[eventName][sym]; | ||
resolve(args); | ||
}, | ||
reject: (args) => { | ||
delete this.events[eventName][sym]; | ||
reject(args); | ||
}, | ||
}; | ||
}); | ||
}; | ||
emitResolve = (eventName: string, arg: any, resp?: any) => { | ||
const o = (this.events[eventName] ?? {}); | ||
o[Object.keys(o).filter(a => (!(arg ?? undefined) || (o[a].arg && o[a].arg === arg)))[0]]?.resolve(resp); | ||
}; | ||
emitResolve = (eventName: string, arg: any, resp?: any) => { | ||
const o = this.events[eventName] ?? {}; | ||
o[ | ||
Object.keys(o).filter( | ||
(a) => !(arg ?? undefined) || (o[a].arg && o[a].arg === arg) | ||
)[0] | ||
]?.resolve(resp); | ||
}; | ||
emitReject = async (eventName: string, arg: any, e: Error) => { | ||
let o = (this.events[eventName] ?? {}); | ||
o[Object.keys(o).filter(a => (!(arg ?? undefined) || (o[a].arg && o[a].arg === arg)))[0]]?.reject(e); | ||
}; | ||
}; | ||
emitReject = async (eventName: string, arg: any, e: Error) => { | ||
let o = this.events[eventName] ?? {}; | ||
o[ | ||
Object.keys(o).filter( | ||
(a) => !(arg ?? undefined) || (o[a].arg && o[a].arg === arg) | ||
)[0] | ||
]?.reject(e); | ||
}; | ||
} |
{ | ||
"name": "oberknecht-emitters", | ||
"version": "1.0.6", | ||
"version": "1.0.7", | ||
"description": "", | ||
@@ -5,0 +5,0 @@ "main": "export", |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
40693
658