@mirta/basics 0.1.1 → 0.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.
- package/dist/index.d.ts +11 -7
- package/dist/index.mjs +4 -2
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -29,6 +29,10 @@ declare const isBoolean: (value: unknown) => value is boolean;
|
|
|
29
29
|
declare const isFunction: (value: unknown) => value is ((...args: unknown[]) => unknown);
|
|
30
30
|
|
|
31
31
|
type EventHandler = (...args: unknown[]) => void;
|
|
32
|
+
type OnEvent<THandler extends EventHandler> = (handler: THandler) => {
|
|
33
|
+
off: () => void;
|
|
34
|
+
};
|
|
35
|
+
type OnceEvent<THandler extends EventHandler> = (handler: THandler) => void;
|
|
32
36
|
interface Event<THandler extends EventHandler> {
|
|
33
37
|
/**
|
|
34
38
|
* Подписывает на событие, есть возможность отписки.
|
|
@@ -42,9 +46,7 @@ interface Event<THandler extends EventHandler> {
|
|
|
42
46
|
* subscription.off()
|
|
43
47
|
* ```
|
|
44
48
|
**/
|
|
45
|
-
on:
|
|
46
|
-
off: () => void;
|
|
47
|
-
};
|
|
49
|
+
on: OnEvent<THandler>;
|
|
48
50
|
/**
|
|
49
51
|
* Подписывает на событие, однократное выполнение.
|
|
50
52
|
* @example
|
|
@@ -55,7 +57,7 @@ interface Event<THandler extends EventHandler> {
|
|
|
55
57
|
* stateChanged.once(() => { ... })
|
|
56
58
|
* ```
|
|
57
59
|
**/
|
|
58
|
-
once:
|
|
60
|
+
once: OnceEvent<THandler>;
|
|
59
61
|
/**
|
|
60
62
|
* Отписывает указанный обработчик от прослушивания события.
|
|
61
63
|
* @example
|
|
@@ -99,8 +101,10 @@ interface EventRaiser<THandler extends EventHandler> extends Event<THandler> {
|
|
|
99
101
|
* ```
|
|
100
102
|
* @example
|
|
101
103
|
* ```ts
|
|
102
|
-
* //
|
|
103
|
-
*
|
|
104
|
+
* // Тип обработчика события.
|
|
105
|
+
* type CountEventHandler = (value: number) => void
|
|
106
|
+
* // Событие с передачей типа обработчика.
|
|
107
|
+
* const countChanged = useEvent<CountEventHandler>()
|
|
104
108
|
* // Регистрация обработчика события.
|
|
105
109
|
* countChanged.on((value) => { ... })
|
|
106
110
|
* // Генерация события.
|
|
@@ -110,4 +114,4 @@ interface EventRaiser<THandler extends EventHandler> extends Event<THandler> {
|
|
|
110
114
|
declare function useEvent<THandler extends EventHandler>(): EventRaiser<THandler>;
|
|
111
115
|
|
|
112
116
|
export { debounce, isBoolean, isFunction, isNumber, isString, throttle, useEvent };
|
|
113
|
-
export type { Event, EventHandler, EventRaiser };
|
|
117
|
+
export type { Event, EventHandler, EventRaiser, OnEvent, OnceEvent };
|
package/dist/index.mjs
CHANGED
|
@@ -112,8 +112,10 @@ const isFunction = (value) => typeof value === 'function';
|
|
|
112
112
|
* ```
|
|
113
113
|
* @example
|
|
114
114
|
* ```ts
|
|
115
|
-
* //
|
|
116
|
-
*
|
|
115
|
+
* // Тип обработчика события.
|
|
116
|
+
* type CountEventHandler = (value: number) => void
|
|
117
|
+
* // Событие с передачей типа обработчика.
|
|
118
|
+
* const countChanged = useEvent<CountEventHandler>()
|
|
117
119
|
* // Регистрация обработчика события.
|
|
118
120
|
* countChanged.on((value) => { ... })
|
|
119
121
|
* // Генерация события.
|