ig-types 6.16.0 → 6.16.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +18 -0
- package/event.js +21 -8
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -80,6 +80,7 @@ Library of JavaScript type extensions, types and utilities.
|
|
|
80
80
|
- [`<promise-iter>.concat(..)`](#promise-iterconcat)
|
|
81
81
|
- [`<promise-iter>.push(..)` / `<promise-iter>.unshift(..)`](#promise-iterpush--promise-iterunshift)
|
|
82
82
|
- [`<promise-iter>.at(..)` / `<promise-iter>.first()` / `<promise-iter>.last()`](#promise-iterat--promise-iterfirst--promise-iterlast)
|
|
83
|
+
- [`<promise-iter>.join(..)`](#promise-iterjoin)
|
|
83
84
|
- [`<promise-iter>.some(..)` / `<promise-iter>.find(..)`](#promise-itersome--promise-iterfind)
|
|
84
85
|
- [Array proxy methods returning `<promise-iter>`](#array-proxy-methods-returning-promise-iter)
|
|
85
86
|
- [Array proxy methods returning a `<promise>`](#array-proxy-methods-returning-a-promise)
|
|
@@ -104,6 +105,7 @@ Library of JavaScript type extensions, types and utilities.
|
|
|
104
105
|
- [`<generator>.flat(..)`](#generatorflat)
|
|
105
106
|
- [`<generator>.shift()` / `<generator>.pop()` / `<generator>.gshift()` / `<generator>.gpop()`](#generatorshift--generatorpop--generatorgshift--generatorgpop)
|
|
106
107
|
- [`<generator>.unshift(..)` / `<generator>.push(..)`](#generatorunshift--generatorpush)
|
|
108
|
+
- [`<generator>.join(..)`](#generatorjoin)
|
|
107
109
|
- [`<generator>.then(..)` / `<generator>.catch(..)` / `<generator>.finally(..)`](#generatorthen--generatorcatch--generatorfinally)
|
|
108
110
|
- [`<generator>.toArray()`](#generatortoarray)
|
|
109
111
|
- [Treating iterators the same as generators](#treating-iterators-the-same-as-generators)
|
|
@@ -115,6 +117,7 @@ Library of JavaScript type extensions, types and utilities.
|
|
|
115
117
|
- [`<Generator>.slice(..)`](#generatorslice-1)
|
|
116
118
|
- [`<Generator>.map(..)` / `<Generator>.filter(..)` / `<Generator>.reduce(..)` / `<Generator>.flat()`](#generatormap--generatorfilter--generatorreduce--generatorflat)
|
|
117
119
|
- [`<Generator>.toArray()`](#generatortoarray-1)
|
|
120
|
+
- [`<Generator>.join(..)`](#generatorjoin-1)
|
|
118
121
|
- [`<Generator>.then(..)` / `<Generator>.catch(..)` / `<Generator>.finally(..)`](#generatorthen--generatorcatch--generatorfinally-1)
|
|
119
122
|
- [Generator combinators](#generator-combinators)
|
|
120
123
|
- [`<Generator>.chain(..)` / `<generator>.chain(..)`](#generatorchain--generatorchain)
|
|
@@ -1711,6 +1714,12 @@ parent `<promise-iter>`.
|
|
|
1711
1714
|
|
|
1712
1715
|
XXX
|
|
1713
1716
|
|
|
1717
|
+
|
|
1718
|
+
#### `<promise-iter>.join(..)`
|
|
1719
|
+
|
|
1720
|
+
XXX
|
|
1721
|
+
|
|
1722
|
+
|
|
1714
1723
|
#### `<promise-iter>.some(..)` / `<promise-iter>.find(..)`
|
|
1715
1724
|
|
|
1716
1725
|
```bnf
|
|
@@ -2207,6 +2216,11 @@ Value added by `.unshift(..)` will be yielded by `<generator>` "first", i.e. on
|
|
|
2207
2216
|
_next_ call to `.next()`, regardless of the current generator state.
|
|
2208
2217
|
|
|
2209
2218
|
|
|
2219
|
+
#### `<generator>.join(..)`
|
|
2220
|
+
|
|
2221
|
+
XXX
|
|
2222
|
+
|
|
2223
|
+
|
|
2210
2224
|
#### `<generator>.then(..)` / `<generator>.catch(..)` / `<generator>.finally(..)`
|
|
2211
2225
|
|
|
2212
2226
|
Return a promise and resolve it with the generator value.
|
|
@@ -2410,6 +2424,10 @@ Return a function that will return a `<generator>` output as an `Array`.
|
|
|
2410
2424
|
-> <function>
|
|
2411
2425
|
```
|
|
2412
2426
|
|
|
2427
|
+
#### `<Generator>.join(..)`
|
|
2428
|
+
|
|
2429
|
+
XXX
|
|
2430
|
+
|
|
2413
2431
|
|
|
2414
2432
|
#### `<Generator>.then(..)` / `<Generator>.catch(..)` / `<Generator>.finally(..)`
|
|
2415
2433
|
|
package/event.js
CHANGED
|
@@ -116,22 +116,28 @@ object.Constructor('Eventful', {
|
|
|
116
116
|
this.handlerLocation == 'method' ?
|
|
117
117
|
(this.__event_handlers__ = this.__event_handlers__ || [])
|
|
118
118
|
// context (default)...
|
|
119
|
-
|
|
119
|
+
//: (context.__event_handlers__ == null ?
|
|
120
|
+
: !context.hasOwnProperty('__event_handlers__') ?
|
|
120
121
|
Object.defineProperty(context, '__event_handlers__', {
|
|
121
122
|
value: {[this.name]: (handlers = [])},
|
|
122
123
|
enumerable: false,
|
|
124
|
+
configurable: true,
|
|
125
|
+
writable: true,
|
|
123
126
|
})
|
|
124
127
|
&& handlers
|
|
125
|
-
|
|
126
|
-
|
|
128
|
+
: (context.__event_handlers__[this.name] =
|
|
129
|
+
context.__event_handlers__[this.name] || [])
|
|
127
130
|
// add handler...
|
|
128
131
|
handlers.push(handler)
|
|
129
132
|
return this },
|
|
130
133
|
unbind: function(context, handler){
|
|
131
134
|
var handlers =
|
|
132
|
-
|
|
135
|
+
this.handlerLocation == 'method' ?
|
|
133
136
|
method.__event_handlers__
|
|
134
|
-
|
|
137
|
+
//: (context.__event_handlers__ || {})[this.name]) || []
|
|
138
|
+
: context.hasOwnProperty('__event_handlers__') ?
|
|
139
|
+
(context.__event_handlers__ || {})[this.name] || []
|
|
140
|
+
: []
|
|
135
141
|
handlers.splice(0, handlers.length,
|
|
136
142
|
...handlers.filter(function(h){
|
|
137
143
|
return h !== handler
|
|
@@ -147,7 +153,10 @@ object.Constructor('Eventful', {
|
|
|
147
153
|
// context (default)...
|
|
148
154
|
// NOTE: these are allways called...
|
|
149
155
|
handlers = handlers
|
|
150
|
-
|
|
156
|
+
//.concat((context.__event_handlers__ || {})[this.name] || [])
|
|
157
|
+
.concat(context.hasOwnProperty('__event_handlers__') ?
|
|
158
|
+
(context.__event_handlers__ || {})[this.name] || []
|
|
159
|
+
: [])
|
|
151
160
|
|
|
152
161
|
// NOTE: this will stop event handling if one of the handlers
|
|
153
162
|
// explicitly returns false...
|
|
@@ -289,10 +298,13 @@ module.EventHandlerMixin = object.Mixin('EventHandlerMixin', {
|
|
|
289
298
|
this[evt].bind(this, func)
|
|
290
299
|
// non-event...
|
|
291
300
|
} else {
|
|
292
|
-
this.__event_handlers__ == null
|
|
301
|
+
//this.__event_handlers__ == null
|
|
302
|
+
!this.hasOwnProperty('__event_handlers__')
|
|
293
303
|
&& Object.defineProperty(this, '__event_handlers__', {
|
|
294
304
|
value: {},
|
|
295
305
|
enumerable: false,
|
|
306
|
+
configurable: true,
|
|
307
|
+
writable: true,
|
|
296
308
|
})
|
|
297
309
|
;(this.__event_handlers__[evt] =
|
|
298
310
|
this.__event_handlers__[evt] || [])
|
|
@@ -328,7 +340,8 @@ module.EventHandlerMixin = object.Mixin('EventHandlerMixin', {
|
|
|
328
340
|
evt in this ?
|
|
329
341
|
// XXX add a better check...
|
|
330
342
|
this[evt](module.TRIGGER, ...args)
|
|
331
|
-
|
|
343
|
+
//: this.__event_handlers__
|
|
344
|
+
: this.hasOwnProperty('__event_handlers__')
|
|
332
345
|
&& (this.__event_handlers__[evt] || [])
|
|
333
346
|
.forEach(function(h){ h(evt, ...args) })
|
|
334
347
|
return this },
|