mirror of
https://github.com/flynx/types.js.git
synced 2025-10-29 02:20:07 +00:00
moved to new mixins...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
parent
98c0de1b4f
commit
032defb38b
16
event.js
16
event.js
@ -212,7 +212,7 @@ function(name, func, options={}){
|
||||
// XXX still not sure about the builtin-local event control flow...
|
||||
// XXX do we need to be able to force global handler???
|
||||
var EventHandlerMixin =
|
||||
module.EventHandlerMixin = {
|
||||
module.EventHandlerMixin = object.Mixin('EventHandlerMixin', {
|
||||
__event_handlers__: null,
|
||||
|
||||
on: function(evt, func){
|
||||
@ -260,13 +260,13 @@ module.EventHandlerMixin = {
|
||||
&& (this.__event_handlers__[evt] || [])
|
||||
.forEach(function(h){ h(evt, ...args) })
|
||||
return this },
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
// NOTE: this can't be added via Object.assign(..), use object.mixinFlat(..)
|
||||
// instead...
|
||||
var EventDocMixin =
|
||||
module.EventDocMixin = {
|
||||
module.EventDocMixin = object.Mixin('EventDocMixin', {
|
||||
get eventfull(){
|
||||
return object.deepKeys(this)
|
||||
.filter(function(n){
|
||||
@ -279,14 +279,14 @@ module.EventDocMixin = {
|
||||
// avoid triggering props...
|
||||
return !object.values(this, n, function(){ return object.STOP }, true)[0].get
|
||||
&& (this[n] || {}).__event__ == 'full' }.bind(this)) },
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
var EventMixin =
|
||||
module.EventMixin =
|
||||
object.mixinFlat({},
|
||||
EventHandlerMixin,
|
||||
EventDocMixin)
|
||||
module.EventMixin =
|
||||
object.Mixin('EventMixin',
|
||||
EventHandlerMixin,
|
||||
EventDocMixin)
|
||||
|
||||
|
||||
|
||||
|
||||
8
package-lock.json
generated
8
package-lock.json
generated
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "ig-types",
|
||||
"version": "3.6.0",
|
||||
"version": "3.7.11",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
@ -265,9 +265,9 @@
|
||||
}
|
||||
},
|
||||
"ig-object": {
|
||||
"version": "5.3.0",
|
||||
"resolved": "https://registry.npmjs.org/ig-object/-/ig-object-5.3.0.tgz",
|
||||
"integrity": "sha512-8I3w0Gqv96cx1Eirqrvtuh4Pq8X4U3tAexj4nMwceNu4jzZF1wg9FP3Im5ZZ99kQSk7CWl4tjSGe/aS5IXEoMw=="
|
||||
"version": "5.4.2",
|
||||
"resolved": "https://registry.npmjs.org/ig-object/-/ig-object-5.4.2.tgz",
|
||||
"integrity": "sha512-xRJRI7Y5Cw0u7FZL/Ln/noitjQ9HFVLwHbnVozCZ1/95p/F9h+kenOzagj/Cm0uBsEdTi3KJfGrdmsyH5AM7cg=="
|
||||
},
|
||||
"ig-test": {
|
||||
"version": "1.4.6",
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "ig-types",
|
||||
"version": "3.7.10",
|
||||
"version": "3.7.12",
|
||||
"description": "Generic JavaScript types and type extensions...",
|
||||
"main": "main.js",
|
||||
"scripts": {
|
||||
@ -23,7 +23,7 @@
|
||||
},
|
||||
"homepage": "https://github.com/flynx/types.js#readme",
|
||||
"dependencies": {
|
||||
"ig-object": "^5.3.0",
|
||||
"ig-object": "^5.4.2",
|
||||
"object-run": "^1.0.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
@ -34,7 +34,7 @@ module.Queue = object.Constructor('Queue', Array, {
|
||||
run: function(...tasks){
|
||||
return this({ state: 'running' }, ...tasks) },
|
||||
|
||||
}, object.mixinFlat({
|
||||
}, events.EventMixin('flat', {
|
||||
// config...
|
||||
//
|
||||
pool_size: 8,
|
||||
@ -188,9 +188,7 @@ module.Queue = object.Constructor('Queue', Array, {
|
||||
&& typeof(this[0].finally) != 'function'){
|
||||
Object.assign(this, this.shift()) }
|
||||
this._run() },
|
||||
},
|
||||
// the event API mixin...
|
||||
events.EventMixin))
|
||||
}))
|
||||
|
||||
|
||||
|
||||
|
||||
4
test.js
4
test.js
@ -371,7 +371,7 @@ Events.cases({
|
||||
// object with events...
|
||||
var ObjWithEvents =
|
||||
assert(
|
||||
object.mixinFlat({
|
||||
events.EventMixin('flat', {
|
||||
// NOTE: we will also use virtual events later -- 'moo'
|
||||
// and 'foo', these do not have to be defined to
|
||||
// be usable...
|
||||
@ -396,7 +396,7 @@ Events.cases({
|
||||
called['event-call'] = true
|
||||
assert(handle(), '.Event(..) -> handle(..)')
|
||||
}), '.Event(..)'),
|
||||
}, events.EventMixin),
|
||||
}),
|
||||
'object with event mixin created.')
|
||||
|
||||
// create an "instance"...
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user