events-ex 2.1.0 → 2.2.0

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.
Files changed (99) hide show
  1. package/.npmrcx +5 -0
  2. package/CHANGELOG.md +14 -0
  3. package/README.cn.md +112 -180
  4. package/README.md +133 -151
  5. package/docs/README.md +136 -150
  6. package/docs/all-off/README.md +17 -0
  7. package/docs/all-off/functions/allOff.md +33 -0
  8. package/docs/consts/README.md +12 -0
  9. package/docs/consts/variables/RegExpEventSymbol.md +11 -0
  10. package/docs/consts/variables/states.md +29 -0
  11. package/docs/default-methods/README.md +17 -0
  12. package/docs/default-methods/functions/getEventableMethods.md +301 -0
  13. package/docs/event/README.md +17 -0
  14. package/docs/event/classes/Event.md +143 -0
  15. package/docs/event-emitter/README-1.md +17 -0
  16. package/docs/event-emitter/README.md +17 -0
  17. package/docs/event-emitter/classes/EventEmitter-1.md +29 -0
  18. package/docs/event-emitter/classes/EventEmitter.md +349 -0
  19. package/docs/eventable/README.md +17 -0
  20. package/docs/eventable/functions/eventable.md +82 -0
  21. package/docs/has-listeners/README.md +17 -0
  22. package/docs/has-listeners/functions/hasListeners.md +38 -0
  23. package/docs/index/README.md +85 -0
  24. package/docs/modules.md +24 -23
  25. package/docs/pipe/README.md +17 -0
  26. package/docs/pipe/functions/pipe.md +41 -0
  27. package/docs/pipe-async/README.md +17 -0
  28. package/docs/pipe-async/functions/pipeAsync.md +41 -0
  29. package/docs/unify/README.md +17 -0
  30. package/docs/unify/functions/unify.md +35 -0
  31. package/docs/util/array-remove/README.md +17 -0
  32. package/docs/util/array-remove/functions/remove.md +21 -0
  33. package/docs/util/object-for-each/README.md +17 -0
  34. package/docs/util/object-for-each/functions/forEach.md +29 -0
  35. package/docs/util/promise-any/README.md +11 -0
  36. package/docs/util/promise-any/variables/default.md +9 -0
  37. package/docs/util/string-pad/README.md +17 -0
  38. package/docs/util/string-pad/functions/pad.md +25 -0
  39. package/docs/util/to-int/README.md +17 -0
  40. package/docs/util/to-int/functions/toInt.md +21 -0
  41. package/docs/util/valid-callable/README.md +17 -0
  42. package/docs/util/valid-callable/functions/validCallable.md +21 -0
  43. package/docs/util/valid-object/README.md +17 -0
  44. package/docs/util/valid-object/functions/validObject.md +21 -0
  45. package/docs/wrap-event-emitter/README.md +21 -0
  46. package/docs/wrap-event-emitter/functions/wrapEventEmitter.md +33 -0
  47. package/docs/wrap-event-emitter/variables/methods.md +11 -0
  48. package/lib/all-off.d.ts +1 -1
  49. package/lib/all-off.js +1 -1
  50. package/lib/default-methods.d.ts +28 -5
  51. package/lib/default-methods.js +114 -22
  52. package/lib/event-emitter.d.ts +17 -0
  53. package/lib/event.d.ts +9 -3
  54. package/lib/event.js +6 -0
  55. package/lib/eventable.js +4 -1
  56. package/lib/pipe-async.d.ts +4 -1
  57. package/lib/pipe-async.js +39 -5
  58. package/lib/pipe.d.ts +1 -1
  59. package/lib/pipe.js +1 -1
  60. package/lib/unify.d.ts +1 -1
  61. package/lib/unify.js +1 -1
  62. package/lib/util/array-remove.js +1 -1
  63. package/lib/util/object-for-each.js +1 -1
  64. package/lib/util/promise-any.d.ts +1 -0
  65. package/lib/util/promise-any.js +44 -0
  66. package/lib/util/string-pad.js +1 -1
  67. package/lib/wrap-event-emitter.d.ts +2 -1
  68. package/lib/wrap-event-emitter.js +24 -3
  69. package/package.json +17 -17
  70. package/src/default-methods.js +112 -15
  71. package/src/event-emitter.d.ts +17 -0
  72. package/src/event.js +6 -0
  73. package/src/eventable.js +3 -0
  74. package/src/pipe-async.js +64 -30
  75. package/src/util/promise-any.js +45 -0
  76. package/src/wrap-event-emitter.js +23 -18
  77. package/docs/.nojekyll +0 -1
  78. package/docs/classes/event.Event.md +0 -141
  79. package/docs/classes/event_emitter-1.EventEmitter.md +0 -29
  80. package/docs/classes/event_emitter.EventEmitter.md +0 -306
  81. package/docs/modules/all_off.md +0 -44
  82. package/docs/modules/consts.md +0 -39
  83. package/docs/modules/default_methods.md +0 -51
  84. package/docs/modules/event.md +0 -19
  85. package/docs/modules/event_emitter-1.md +0 -19
  86. package/docs/modules/event_emitter.md +0 -19
  87. package/docs/modules/eventable.md +0 -92
  88. package/docs/modules/has_listeners.md +0 -49
  89. package/docs/modules/index.md +0 -99
  90. package/docs/modules/pipe.md +0 -49
  91. package/docs/modules/pipe_async.md +0 -49
  92. package/docs/modules/unify.md +0 -46
  93. package/docs/modules/util_array_remove.md +0 -39
  94. package/docs/modules/util_object_for_each.md +0 -41
  95. package/docs/modules/util_string_pad.md +0 -40
  96. package/docs/modules/util_to_int.md +0 -39
  97. package/docs/modules/util_valid_callable.md +0 -39
  98. package/docs/modules/util_valid_object.md +0 -39
  99. package/docs/modules/wrap_event_emitter.md +0 -57
@@ -0,0 +1,349 @@
1
+ [**events-ex**](../../README.md)
2
+
3
+ ***
4
+
5
+ [events-ex](../../modules.md) / [event-emitter](../README.md) / EventEmitter
6
+
7
+ # Class: EventEmitter
8
+
9
+ Defined in: [src/event-emitter.d.ts:6](https://github.com/snowyu/events-ex.js/blob/fb077063a0ea7231fa89bf74a09be2f52f8401e4/src/event-emitter.d.ts#L6)
10
+
11
+ Class that represents an event emitter.
12
+
13
+ ## Constructors
14
+
15
+ ### Constructor
16
+
17
+ > **new EventEmitter**(): `EventEmitter`
18
+
19
+ #### Returns
20
+
21
+ `EventEmitter`
22
+
23
+ ## Properties
24
+
25
+ ### defaultMaxListeners
26
+
27
+ > `static` **defaultMaxListeners**: `number`
28
+
29
+ Defined in: [src/event-emitter.d.ts:7](https://github.com/snowyu/events-ex.js/blob/fb077063a0ea7231fa89bf74a09be2f52f8401e4/src/event-emitter.d.ts#L7)
30
+
31
+ ## Methods
32
+
33
+ ### emit()
34
+
35
+ > **emit**(`eventName`, ...`args`): `any`
36
+
37
+ Defined in: [src/event-emitter.d.ts:48](https://github.com/snowyu/events-ex.js/blob/fb077063a0ea7231fa89bf74a09be2f52f8401e4/src/event-emitter.d.ts#L48)
38
+
39
+ Emits the specified event type with the given arguments.
40
+
41
+ #### Parameters
42
+
43
+ ##### eventName
44
+
45
+ `string`
46
+
47
+ ##### args
48
+
49
+ ...`any`[]
50
+
51
+ The event type followed by any number of arguments to be passed to the listener functions.
52
+
53
+ #### Returns
54
+
55
+ `any`
56
+
57
+ The result of the event.
58
+
59
+ ***
60
+
61
+ ### emitAsync()
62
+
63
+ > **emitAsync**(`eventName`, ...`args`): `Promise`\<`any`\>
64
+
65
+ Defined in: [src/event-emitter.d.ts:54](https://github.com/snowyu/events-ex.js/blob/fb077063a0ea7231fa89bf74a09be2f52f8401e4/src/event-emitter.d.ts#L54)
66
+
67
+ Asynchronously emits the specified event type with the given arguments.
68
+
69
+ #### Parameters
70
+
71
+ ##### eventName
72
+
73
+ `string`
74
+
75
+ ##### args
76
+
77
+ ...`any`[]
78
+
79
+ The event type followed by any number of arguments to be passed to the listener functions.
80
+
81
+ #### Returns
82
+
83
+ `Promise`\<`any`\>
84
+
85
+ A promise that resolves with the result of the event.
86
+
87
+ ***
88
+
89
+ ### listenerCount()
90
+
91
+ > **listenerCount**(`eventName`): `number`
92
+
93
+ Defined in: [src/event-emitter.d.ts:83](https://github.com/snowyu/events-ex.js/blob/fb077063a0ea7231fa89bf74a09be2f52f8401e4/src/event-emitter.d.ts#L83)
94
+
95
+ Returns the count of listeners that are registered to listen for the specified event.
96
+
97
+ #### Parameters
98
+
99
+ ##### eventName
100
+
101
+ The name of the event to get the listeners for.
102
+
103
+ `string` | `RegExp`
104
+
105
+ #### Returns
106
+
107
+ `number`
108
+
109
+ - the listeners count
110
+
111
+ ***
112
+
113
+ ### listeners()
114
+
115
+ > **listeners**(`eventName`): `Function`[]
116
+
117
+ Defined in: [src/event-emitter.d.ts:76](https://github.com/snowyu/events-ex.js/blob/fb077063a0ea7231fa89bf74a09be2f52f8401e4/src/event-emitter.d.ts#L76)
118
+
119
+ Returns an array of functions that are registered to listen for the specified event.
120
+
121
+ #### Parameters
122
+
123
+ ##### eventName
124
+
125
+ The name of the event to get the listeners for.
126
+
127
+ `string` | `RegExp`
128
+
129
+ #### Returns
130
+
131
+ `Function`[]
132
+
133
+ - An array of functions that are registered to listen for the specified event.
134
+
135
+ ***
136
+
137
+ ### off()
138
+
139
+ > **off**(`eventName`, `listener`): `EventEmitter`
140
+
141
+ Defined in: [src/event-emitter.d.ts:33](https://github.com/snowyu/events-ex.js/blob/fb077063a0ea7231fa89bf74a09be2f52f8401e4/src/event-emitter.d.ts#L33)
142
+
143
+ Removes a listener function from the specified event type.
144
+
145
+ #### Parameters
146
+
147
+ ##### eventName
148
+
149
+ `string` | `RegExp`
150
+
151
+ ##### listener
152
+
153
+ `Function`
154
+
155
+ The listener function to be removed.
156
+
157
+ #### Returns
158
+
159
+ `EventEmitter`
160
+
161
+ The EventEmitter instance to allow chaining.
162
+
163
+ #### Throws
164
+
165
+ If the listener is not a function.
166
+
167
+ #### See
168
+
169
+ [removeListener](#removelistener)
170
+
171
+ ***
172
+
173
+ ### on()
174
+
175
+ > **on**(`eventName`, `listener`): `EventEmitter`
176
+
177
+ Defined in: [src/event-emitter.d.ts:16](https://github.com/snowyu/events-ex.js/blob/fb077063a0ea7231fa89bf74a09be2f52f8401e4/src/event-emitter.d.ts#L16)
178
+
179
+ Adds a listener function to the specified event type.
180
+
181
+ #### Parameters
182
+
183
+ ##### eventName
184
+
185
+ `string` | `RegExp`
186
+
187
+ ##### listener
188
+
189
+ `Function`
190
+
191
+ The listener function to be called when the event is emitted.
192
+
193
+ #### Returns
194
+
195
+ `EventEmitter`
196
+
197
+ The EventEmitter instance to allow chaining.
198
+
199
+ #### Throws
200
+
201
+ If the listener is not a function.
202
+
203
+ ***
204
+
205
+ ### once()
206
+
207
+ > **once**(`eventName`, `listener`): `EventEmitter`
208
+
209
+ Defined in: [src/event-emitter.d.ts:24](https://github.com/snowyu/events-ex.js/blob/fb077063a0ea7231fa89bf74a09be2f52f8401e4/src/event-emitter.d.ts#L24)
210
+
211
+ Adds a one-time listener function to the specified event type.
212
+
213
+ #### Parameters
214
+
215
+ ##### eventName
216
+
217
+ `string` | `RegExp`
218
+
219
+ ##### listener
220
+
221
+ `Function`
222
+
223
+ The listener function to be called once when the event is emitted.
224
+
225
+ #### Returns
226
+
227
+ `EventEmitter`
228
+
229
+ The EventEmitter instance to allow chaining.
230
+
231
+ #### Throws
232
+
233
+ If the listener is not a function.
234
+
235
+ ***
236
+
237
+ ### removeAllListeners()
238
+
239
+ > **removeAllListeners**(`eventName?`): `EventEmitter`
240
+
241
+ Defined in: [src/event-emitter.d.ts:61](https://github.com/snowyu/events-ex.js/blob/fb077063a0ea7231fa89bf74a09be2f52f8401e4/src/event-emitter.d.ts#L61)
242
+
243
+ Removes all listeners for a specific event or all events from an event emitter.
244
+
245
+ #### Parameters
246
+
247
+ ##### eventName?
248
+
249
+ The event to remove listeners for. If not provided, all listeners for all events will be removed.
250
+
251
+ `string` | `RegExp`
252
+
253
+ #### Returns
254
+
255
+ `EventEmitter`
256
+
257
+ - The event emitter with all listeners removed.
258
+
259
+ ***
260
+
261
+ ### removeListener()
262
+
263
+ > **removeListener**(`eventName`, `listener`): `EventEmitter`
264
+
265
+ Defined in: [src/event-emitter.d.ts:42](https://github.com/snowyu/events-ex.js/blob/fb077063a0ea7231fa89bf74a09be2f52f8401e4/src/event-emitter.d.ts#L42)
266
+
267
+ Removes a listener function from the specified event type.
268
+
269
+ #### Parameters
270
+
271
+ ##### eventName
272
+
273
+ `string` | `RegExp`
274
+
275
+ ##### listener
276
+
277
+ `Function`
278
+
279
+ The listener function to be removed.
280
+
281
+ #### Returns
282
+
283
+ `EventEmitter`
284
+
285
+ The EventEmitter instance to allow chaining.
286
+
287
+ #### Throws
288
+
289
+ If the listener is not a function.
290
+
291
+ #### See
292
+
293
+ [off](#off)
294
+
295
+ ***
296
+
297
+ ### setMaxListeners()
298
+
299
+ > **setMaxListeners**(`n`): `EventEmitter`
300
+
301
+ Defined in: [src/event-emitter.d.ts:69](https://github.com/snowyu/events-ex.js/blob/fb077063a0ea7231fa89bf74a09be2f52f8401e4/src/event-emitter.d.ts#L69)
302
+
303
+ Sets the maximum number of listeners allowed for the event emitter.
304
+
305
+ #### Parameters
306
+
307
+ ##### n
308
+
309
+ `number`
310
+
311
+ The maximum number of listeners to set. Must be a positive integer.
312
+
313
+ #### Returns
314
+
315
+ `EventEmitter`
316
+
317
+ The EventEmitter instance for method chaining.
318
+
319
+ #### Throws
320
+
321
+ If `n` is not a positive integer.
322
+
323
+ ***
324
+
325
+ ### ~~listenerCount()~~
326
+
327
+ > `static` **listenerCount**(`emitter`, `eventName`): `number`
328
+
329
+ Defined in: [src/event-emitter.d.ts:91](https://github.com/snowyu/events-ex.js/blob/fb077063a0ea7231fa89bf74a09be2f52f8401e4/src/event-emitter.d.ts#L91)
330
+
331
+ Returns the count of listeners that are registered to listen for the specified event.
332
+
333
+ #### Parameters
334
+
335
+ ##### emitter
336
+
337
+ `EventEmitter`
338
+
339
+ ##### eventName
340
+
341
+ `string` | `RegExp`
342
+
343
+ #### Returns
344
+
345
+ `number`
346
+
347
+ #### Deprecated
348
+
349
+ use emitter.listenerCount instead
@@ -0,0 +1,17 @@
1
+ [**events-ex**](../README.md)
2
+
3
+ ***
4
+
5
+ [events-ex](../modules.md) / eventable
6
+
7
+ # eventable
8
+
9
+ ## Functions
10
+
11
+ - [eventable](functions/eventable.md)
12
+
13
+ ## References
14
+
15
+ ### default
16
+
17
+ Renames and re-exports [eventable](functions/eventable.md)
@@ -0,0 +1,82 @@
1
+ [**events-ex**](../../README.md)
2
+
3
+ ***
4
+
5
+ [events-ex](../../modules.md) / [eventable](../README.md) / eventable
6
+
7
+ # Function: eventable()
8
+
9
+ > **eventable**\<`T`\>(`targetClass?`, `options?`): `EnhancedClass`\<`T`, (`aClass?`) => `Function`\>
10
+
11
+ Defined in: [src/eventable.js:89](https://github.com/snowyu/events-ex.js/blob/fb077063a0ea7231fa89bf74a09be2f52f8401e4/src/eventable.js#L89)
12
+
13
+ Adds event-emitting capabilities to a class by injecting necessary methods and properties.
14
+
15
+ This function uses `createAbilityInjector` from `custom-ability` to inject event-related methods
16
+ into the target class. The injected methods include standard EventEmitter functionality such as
17
+ `on`, `off`, `emit`, `emitAsync`, `once`, `listeners`, `@listenerCount` and more. It also ensures compatibility with Node.js `EventEmitter`
18
+ by including methods like `listenerCount`, `setMaxListeners`, `addListener`, `removeListener`, and `removeAllListeners`.
19
+
20
+ eventable
21
+
22
+ ## Type Parameters
23
+
24
+ ### T
25
+
26
+ `T` *extends* `ClassEx`
27
+
28
+ ## Parameters
29
+
30
+ ### targetClass?
31
+
32
+ `T`
33
+
34
+ ### options?
35
+
36
+ `AbilityOptions`
37
+
38
+ Optional configuration for the injection process:
39
+ * `include` (string[]|string): Specifies which methods should be added.
40
+ Static methods should use the prefix '@'.
41
+ * `exclude` (string[]|string): Specifies which methods should not be added.
42
+ Static methods should use the prefix '@'.
43
+ * `methods` (Object): Custom methods to override or extend the default behavior.
44
+ Use `this.super()` to call the original method and `this.self` to access the original context.
45
+ * `classMethods` (Object): Custom static methods to be added to the class.
46
+
47
+ ## Returns
48
+
49
+ `EnhancedClass`\<`T`, (`aClass?`) => `Function`\>
50
+
51
+ The same `aClass` class with event capabilities injected. The return value is the modified `aClass` itself.
52
+
53
+ ## Examples
54
+
55
+ ```ts
56
+ import { eventable } from 'events-ex';
57
+
58
+ class MyClass {}
59
+
60
+ // Inject only specific methods: 'on', 'off', 'emit', 'emitAsync', and the static 'listenerCount'
61
+ eventable(MyClass, { include: ['on', 'off', 'emit', 'emitAsync', '@listenerCount'] });
62
+ ```
63
+
64
+ ```ts
65
+ import { eventable } from 'events-ex';
66
+
67
+ class OtherClass {
68
+ exec() {
69
+ console.log("Original exec");
70
+ }
71
+ }
72
+
73
+ // Inject event capabilities and override the `exec` method
74
+ eventable(OtherClass, {
75
+ methods: {
76
+ exec() {
77
+ console.log("New exec");
78
+ this.super(); // Calls the original `exec` method
79
+ }
80
+ }
81
+ });
82
+ ```
@@ -0,0 +1,17 @@
1
+ [**events-ex**](../README.md)
2
+
3
+ ***
4
+
5
+ [events-ex](../modules.md) / has-listeners
6
+
7
+ # has-listeners
8
+
9
+ ## Functions
10
+
11
+ - [hasListeners](functions/hasListeners.md)
12
+
13
+ ## References
14
+
15
+ ### default
16
+
17
+ Renames and re-exports [hasListeners](functions/hasListeners.md)
@@ -0,0 +1,38 @@
1
+ [**events-ex**](../../README.md)
2
+
3
+ ***
4
+
5
+ [events-ex](../../modules.md) / [has-listeners](../README.md) / hasListeners
6
+
7
+ # Function: hasListeners()
8
+
9
+ > **hasListeners**(`obj`, `type?`): `boolean`
10
+
11
+ Defined in: [src/has-listeners.js:20](https://github.com/snowyu/events-ex.js/blob/fb077063a0ea7231fa89bf74a09be2f52f8401e4/src/has-listeners.js#L20)
12
+
13
+ Checks if an object has event listeners.
14
+
15
+ ## Parameters
16
+
17
+ ### obj
18
+
19
+ `any`
20
+
21
+ The object to check. Must not be null or undefined.
22
+
23
+ ### type?
24
+
25
+ `string`
26
+
27
+ Optional parameter specifying the event type. If provided, checks for the existence of listeners for this specific type.
28
+
29
+ ## Returns
30
+
31
+ `boolean`
32
+
33
+ - If `type` is provided, returns whether listeners for the specified event type exist.
34
+ - If `type` is not provided, returns whether the object has any event listeners.
35
+
36
+ ## Throws
37
+
38
+ Throws a TypeError if `obj` is null or undefined.
@@ -0,0 +1,85 @@
1
+ [**events-ex**](../README.md)
2
+
3
+ ***
4
+
5
+ [events-ex](../modules.md) / index
6
+
7
+ # index
8
+
9
+ ## References
10
+
11
+ ### allOff
12
+
13
+ Re-exports [allOff](../all-off/functions/allOff.md)
14
+
15
+ ***
16
+
17
+ ### default
18
+
19
+ Renames and re-exports [EventEmitter](../event-emitter/classes/EventEmitter.md)
20
+
21
+ ***
22
+
23
+ ### Event
24
+
25
+ Re-exports [Event](../event/classes/Event.md)
26
+
27
+ ***
28
+
29
+ ### eventable
30
+
31
+ Re-exports [eventable](../eventable/functions/eventable.md)
32
+
33
+ ***
34
+
35
+ ### EventEmitter
36
+
37
+ Re-exports [EventEmitter](../event-emitter/classes/EventEmitter.md)
38
+
39
+ ***
40
+
41
+ ### hasListeners
42
+
43
+ Re-exports [hasListeners](../has-listeners/functions/hasListeners.md)
44
+
45
+ ***
46
+
47
+ ### methods
48
+
49
+ Re-exports [methods](../wrap-event-emitter/variables/methods.md)
50
+
51
+ ***
52
+
53
+ ### pipe
54
+
55
+ Re-exports [pipe](../pipe/functions/pipe.md)
56
+
57
+ ***
58
+
59
+ ### pipeAsync
60
+
61
+ Re-exports [pipeAsync](../pipe-async/functions/pipeAsync.md)
62
+
63
+ ***
64
+
65
+ ### RegExpEventSymbol
66
+
67
+ Re-exports [RegExpEventSymbol](../consts/variables/RegExpEventSymbol.md)
68
+
69
+ ***
70
+
71
+ ### states
72
+
73
+ Re-exports [states](../consts/variables/states.md)
74
+
75
+ ***
76
+
77
+ ### unify
78
+
79
+ Re-exports [unify](../unify/functions/unify.md)
80
+
81
+ ***
82
+
83
+ ### wrapEventEmitter
84
+
85
+ Re-exports [wrapEventEmitter](../wrap-event-emitter/functions/wrapEventEmitter.md)
package/docs/modules.md CHANGED
@@ -1,27 +1,28 @@
1
- [events-ex](README.md) / Exports
1
+ [**events-ex**](README.md)
2
2
 
3
- # events-ex
3
+ ***
4
4
 
5
- ## Table of contents
5
+ # events-ex
6
6
 
7
- ### Modules
7
+ ## Modules
8
8
 
9
- - [all-off](modules/all_off.md)
10
- - [consts](modules/consts.md)
11
- - [default-methods](modules/default_methods.md)
12
- - [event](modules/event.md)
13
- - [event-emitter](modules/event_emitter.md)
14
- - [event-emitter](modules/event_emitter-1.md)
15
- - [eventable](modules/eventable.md)
16
- - [has-listeners](modules/has_listeners.md)
17
- - [index](modules/index.md)
18
- - [pipe](modules/pipe.md)
19
- - [pipe-async](modules/pipe_async.md)
20
- - [unify](modules/unify.md)
21
- - [util/array-remove](modules/util_array_remove.md)
22
- - [util/object-for-each](modules/util_object_for_each.md)
23
- - [util/string-pad](modules/util_string_pad.md)
24
- - [util/to-int](modules/util_to_int.md)
25
- - [util/valid-callable](modules/util_valid_callable.md)
26
- - [util/valid-object](modules/util_valid_object.md)
27
- - [wrap-event-emitter](modules/wrap_event_emitter.md)
9
+ - [all-off](all-off/README.md)
10
+ - [consts](consts/README.md)
11
+ - [default-methods](default-methods/README.md)
12
+ - [event](event/README.md)
13
+ - [event-emitter](event-emitter/README.md)
14
+ - [event-emitter](event-emitter/README-1.md)
15
+ - [eventable](eventable/README.md)
16
+ - [has-listeners](has-listeners/README.md)
17
+ - [index](index/README.md)
18
+ - [pipe](pipe/README.md)
19
+ - [pipe-async](pipe-async/README.md)
20
+ - [unify](unify/README.md)
21
+ - [util/array-remove](util/array-remove/README.md)
22
+ - [util/object-for-each](util/object-for-each/README.md)
23
+ - [util/promise-any](util/promise-any/README.md)
24
+ - [util/string-pad](util/string-pad/README.md)
25
+ - [util/to-int](util/to-int/README.md)
26
+ - [util/valid-callable](util/valid-callable/README.md)
27
+ - [util/valid-object](util/valid-object/README.md)
28
+ - [wrap-event-emitter](wrap-event-emitter/README.md)
@@ -0,0 +1,17 @@
1
+ [**events-ex**](../README.md)
2
+
3
+ ***
4
+
5
+ [events-ex](../modules.md) / pipe
6
+
7
+ # pipe
8
+
9
+ ## Functions
10
+
11
+ - [pipe](functions/pipe.md)
12
+
13
+ ## References
14
+
15
+ ### default
16
+
17
+ Renames and re-exports [pipe](functions/pipe.md)
@@ -0,0 +1,41 @@
1
+ [**events-ex**](../../README.md)
2
+
3
+ ***
4
+
5
+ [events-ex](../../modules.md) / [pipe](../README.md) / pipe
6
+
7
+ # Function: pipe()
8
+
9
+ > **pipe**(`e1`, `e2`, ...`args`): `any`
10
+
11
+ Defined in: [src/pipe.js:21](https://github.com/snowyu/events-ex.js/blob/fb077063a0ea7231fa89bf74a09be2f52f8401e4/src/pipe.js#L21)
12
+
13
+ Creates a pipeline between two event emitters, so that any events emitted by the first emitter are also emitted by the second emitter.
14
+
15
+ ## Parameters
16
+
17
+ ### e1
18
+
19
+ [`EventEmitter`](../../event-emitter/classes/EventEmitter.md)
20
+
21
+ The first event emitter.
22
+
23
+ ### e2
24
+
25
+ [`EventEmitter`](../../event-emitter/classes/EventEmitter.md)
26
+
27
+ The second event emitter.
28
+
29
+ ### args
30
+
31
+ ...`any`[]
32
+
33
+ ## Returns
34
+
35
+ `any`
36
+
37
+ - An object with a `close` method that removes the pipeline between the two event emitters.
38
+
39
+ ## Throws
40
+
41
+ - If either of the arguments is not an event emitter object.