fastevent 2.2.11 → 2.2.12
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/eventbus/index.d.mts +5 -4
- package/dist/eventbus/index.d.ts +5 -4
- package/dist/index.d.mts +5 -4
- package/dist/index.d.ts +5 -4
- package/package.json +1 -1
|
@@ -8,12 +8,12 @@ type MergeUnion<T> = (T extends any ? (x: T) => void : never) extends (x: infer
|
|
|
8
8
|
type Split$1<S extends string, Delimiter extends string = '/'> = S extends `${infer Head}${Delimiter}${infer Tail}` ? [Head, ...Split$1<Tail, Delimiter>] : [S];
|
|
9
9
|
type MatchSegment<Input extends string, Pattern extends string> = Pattern extends '*' ? true : Pattern extends '**' ? true : Input extends Pattern ? true : false;
|
|
10
10
|
type MatchPatternArray<InputArr extends string[], PatternArr extends string[]> = InputArr extends [infer InputHead extends string, ...infer InputTail extends string[]] ? PatternArr extends [infer PatternHead extends string, ...infer PatternTail extends string[]] ? PatternHead extends '**' ? MatchPatternArray<InputTail, PatternTail> extends true ? true : MatchPatternArray<InputTail, PatternArr> extends true ? true : MatchPatternArray<InputArr, PatternTail> extends true ? true : false : MatchSegment<InputHead, PatternHead> extends true ? MatchPatternArray<InputTail, PatternTail> : false : false : PatternArr extends [infer PatternHead extends string, ...infer PatternTail extends string[]] ? PatternHead extends '**' ? MatchPatternArray<InputArr, PatternTail> : false : true;
|
|
11
|
-
type MatchPattern
|
|
11
|
+
type MatchPattern<T extends string, Pattern extends string> = MatchPatternArray<Split$1<T>, Split$1<Pattern>> extends true ? {
|
|
12
12
|
[K in Pattern]: any;
|
|
13
13
|
} : never;
|
|
14
14
|
type Fallback$1<T, F> = [T] extends [never] ? F : T extends undefined ? F : T;
|
|
15
15
|
type MatchEventType<T extends string, Events extends Record<string, any>> = MergeUnion<Fallback$1<{
|
|
16
|
-
[K in keyof Events]: MatchPattern
|
|
16
|
+
[K in keyof Events]: MatchPattern<T, K & string> extends never ? never : {
|
|
17
17
|
[P in K]: Events[K];
|
|
18
18
|
};
|
|
19
19
|
}[keyof Events] extends infer Result ? Result extends Record<string, any> ? Result : any : any, {
|
|
@@ -21,11 +21,12 @@ type MatchEventType<T extends string, Events extends Record<string, any>> = Merg
|
|
|
21
21
|
}>>;
|
|
22
22
|
|
|
23
23
|
type Split<S extends string, Delimiter extends string> = S extends `${infer Head}${Delimiter}${infer Tail}` ? [Head, ...Split<Tail, Delimiter>] : [S];
|
|
24
|
-
type
|
|
24
|
+
type MatchPatternAndGetRemainder<KeyParts extends string[], PrefixParts extends string[], Result extends string[] = []> = PrefixParts['length'] extends 0 ? KeyParts['length'] extends 0 ? never : KeyParts : KeyParts['length'] extends 0 ? never : KeyParts[0] extends PrefixParts[0] | '*' ? MatchPatternAndGetRemainder<Slice<KeyParts, 1>, Slice<PrefixParts, 1>, Result> : never;
|
|
25
25
|
type Slice<T extends any[], Start extends number, Result extends any[] = []> = Start extends 0 ? T : T extends [infer First, ...infer Rest] ? Slice<Rest, Decrement<Start>, Result> : Result;
|
|
26
26
|
type Decrement<N extends number> = N extends 0 ? 0 : N extends 1 ? 0 : N extends 2 ? 1 : N extends 3 ? 2 : N extends 4 ? 3 : N extends 5 ? 4 : N extends 6 ? 5 : N extends 7 ? 6 : N extends 8 ? 7 : N extends 9 ? 8 : number;
|
|
27
|
+
type Join<T extends string[], Delimiter extends string = '/'> = T extends [infer First extends string, ...infer Rest extends string[]] ? Rest['length'] extends 0 ? First : `${First}${Delimiter}${Join<Rest, Delimiter>}` : '';
|
|
27
28
|
type ScopeEvents<Events extends Record<string, any>, Prefix extends string> = {
|
|
28
|
-
[K in keyof Events as K extends string ?
|
|
29
|
+
[K in keyof Events as K extends string ? MatchPatternAndGetRemainder<Split<K, '/'>, Split<Prefix, '/'>> extends infer Remainder ? Remainder extends string[] ? Join<Remainder, '/'> : never : never : never]: Events[K];
|
|
29
30
|
};
|
|
30
31
|
|
|
31
32
|
interface FastEventMeta {
|
package/dist/eventbus/index.d.ts
CHANGED
|
@@ -8,12 +8,12 @@ type MergeUnion<T> = (T extends any ? (x: T) => void : never) extends (x: infer
|
|
|
8
8
|
type Split$1<S extends string, Delimiter extends string = '/'> = S extends `${infer Head}${Delimiter}${infer Tail}` ? [Head, ...Split$1<Tail, Delimiter>] : [S];
|
|
9
9
|
type MatchSegment<Input extends string, Pattern extends string> = Pattern extends '*' ? true : Pattern extends '**' ? true : Input extends Pattern ? true : false;
|
|
10
10
|
type MatchPatternArray<InputArr extends string[], PatternArr extends string[]> = InputArr extends [infer InputHead extends string, ...infer InputTail extends string[]] ? PatternArr extends [infer PatternHead extends string, ...infer PatternTail extends string[]] ? PatternHead extends '**' ? MatchPatternArray<InputTail, PatternTail> extends true ? true : MatchPatternArray<InputTail, PatternArr> extends true ? true : MatchPatternArray<InputArr, PatternTail> extends true ? true : false : MatchSegment<InputHead, PatternHead> extends true ? MatchPatternArray<InputTail, PatternTail> : false : false : PatternArr extends [infer PatternHead extends string, ...infer PatternTail extends string[]] ? PatternHead extends '**' ? MatchPatternArray<InputArr, PatternTail> : false : true;
|
|
11
|
-
type MatchPattern
|
|
11
|
+
type MatchPattern<T extends string, Pattern extends string> = MatchPatternArray<Split$1<T>, Split$1<Pattern>> extends true ? {
|
|
12
12
|
[K in Pattern]: any;
|
|
13
13
|
} : never;
|
|
14
14
|
type Fallback$1<T, F> = [T] extends [never] ? F : T extends undefined ? F : T;
|
|
15
15
|
type MatchEventType<T extends string, Events extends Record<string, any>> = MergeUnion<Fallback$1<{
|
|
16
|
-
[K in keyof Events]: MatchPattern
|
|
16
|
+
[K in keyof Events]: MatchPattern<T, K & string> extends never ? never : {
|
|
17
17
|
[P in K]: Events[K];
|
|
18
18
|
};
|
|
19
19
|
}[keyof Events] extends infer Result ? Result extends Record<string, any> ? Result : any : any, {
|
|
@@ -21,11 +21,12 @@ type MatchEventType<T extends string, Events extends Record<string, any>> = Merg
|
|
|
21
21
|
}>>;
|
|
22
22
|
|
|
23
23
|
type Split<S extends string, Delimiter extends string> = S extends `${infer Head}${Delimiter}${infer Tail}` ? [Head, ...Split<Tail, Delimiter>] : [S];
|
|
24
|
-
type
|
|
24
|
+
type MatchPatternAndGetRemainder<KeyParts extends string[], PrefixParts extends string[], Result extends string[] = []> = PrefixParts['length'] extends 0 ? KeyParts['length'] extends 0 ? never : KeyParts : KeyParts['length'] extends 0 ? never : KeyParts[0] extends PrefixParts[0] | '*' ? MatchPatternAndGetRemainder<Slice<KeyParts, 1>, Slice<PrefixParts, 1>, Result> : never;
|
|
25
25
|
type Slice<T extends any[], Start extends number, Result extends any[] = []> = Start extends 0 ? T : T extends [infer First, ...infer Rest] ? Slice<Rest, Decrement<Start>, Result> : Result;
|
|
26
26
|
type Decrement<N extends number> = N extends 0 ? 0 : N extends 1 ? 0 : N extends 2 ? 1 : N extends 3 ? 2 : N extends 4 ? 3 : N extends 5 ? 4 : N extends 6 ? 5 : N extends 7 ? 6 : N extends 8 ? 7 : N extends 9 ? 8 : number;
|
|
27
|
+
type Join<T extends string[], Delimiter extends string = '/'> = T extends [infer First extends string, ...infer Rest extends string[]] ? Rest['length'] extends 0 ? First : `${First}${Delimiter}${Join<Rest, Delimiter>}` : '';
|
|
27
28
|
type ScopeEvents<Events extends Record<string, any>, Prefix extends string> = {
|
|
28
|
-
[K in keyof Events as K extends string ?
|
|
29
|
+
[K in keyof Events as K extends string ? MatchPatternAndGetRemainder<Split<K, '/'>, Split<Prefix, '/'>> extends infer Remainder ? Remainder extends string[] ? Join<Remainder, '/'> : never : never : never]: Events[K];
|
|
29
30
|
};
|
|
30
31
|
|
|
31
32
|
interface FastEventMeta {
|
package/dist/index.d.mts
CHANGED
|
@@ -6,12 +6,12 @@ type MergeUnion<T> = (T extends any ? (x: T) => void : never) extends (x: infer
|
|
|
6
6
|
type Split$1<S extends string, Delimiter extends string = '/'> = S extends `${infer Head}${Delimiter}${infer Tail}` ? [Head, ...Split$1<Tail, Delimiter>] : [S];
|
|
7
7
|
type MatchSegment<Input extends string, Pattern extends string> = Pattern extends '*' ? true : Pattern extends '**' ? true : Input extends Pattern ? true : false;
|
|
8
8
|
type MatchPatternArray<InputArr extends string[], PatternArr extends string[]> = InputArr extends [infer InputHead extends string, ...infer InputTail extends string[]] ? PatternArr extends [infer PatternHead extends string, ...infer PatternTail extends string[]] ? PatternHead extends '**' ? MatchPatternArray<InputTail, PatternTail> extends true ? true : MatchPatternArray<InputTail, PatternArr> extends true ? true : MatchPatternArray<InputArr, PatternTail> extends true ? true : false : MatchSegment<InputHead, PatternHead> extends true ? MatchPatternArray<InputTail, PatternTail> : false : false : PatternArr extends [infer PatternHead extends string, ...infer PatternTail extends string[]] ? PatternHead extends '**' ? MatchPatternArray<InputArr, PatternTail> : false : true;
|
|
9
|
-
type MatchPattern
|
|
9
|
+
type MatchPattern<T extends string, Pattern extends string> = MatchPatternArray<Split$1<T>, Split$1<Pattern>> extends true ? {
|
|
10
10
|
[K in Pattern]: any;
|
|
11
11
|
} : never;
|
|
12
12
|
type Fallback$1<T, F> = [T] extends [never] ? F : T extends undefined ? F : T;
|
|
13
13
|
type MatchEventType<T extends string, Events extends Record<string, any>> = MergeUnion<Fallback$1<{
|
|
14
|
-
[K in keyof Events]: MatchPattern
|
|
14
|
+
[K in keyof Events]: MatchPattern<T, K & string> extends never ? never : {
|
|
15
15
|
[P in K]: Events[K];
|
|
16
16
|
};
|
|
17
17
|
}[keyof Events] extends infer Result ? Result extends Record<string, any> ? Result : any : any, {
|
|
@@ -19,11 +19,12 @@ type MatchEventType<T extends string, Events extends Record<string, any>> = Merg
|
|
|
19
19
|
}>>;
|
|
20
20
|
|
|
21
21
|
type Split<S extends string, Delimiter extends string> = S extends `${infer Head}${Delimiter}${infer Tail}` ? [Head, ...Split<Tail, Delimiter>] : [S];
|
|
22
|
-
type
|
|
22
|
+
type MatchPatternAndGetRemainder<KeyParts extends string[], PrefixParts extends string[], Result extends string[] = []> = PrefixParts['length'] extends 0 ? KeyParts['length'] extends 0 ? never : KeyParts : KeyParts['length'] extends 0 ? never : KeyParts[0] extends PrefixParts[0] | '*' ? MatchPatternAndGetRemainder<Slice<KeyParts, 1>, Slice<PrefixParts, 1>, Result> : never;
|
|
23
23
|
type Slice<T extends any[], Start extends number, Result extends any[] = []> = Start extends 0 ? T : T extends [infer First, ...infer Rest] ? Slice<Rest, Decrement<Start>, Result> : Result;
|
|
24
24
|
type Decrement<N extends number> = N extends 0 ? 0 : N extends 1 ? 0 : N extends 2 ? 1 : N extends 3 ? 2 : N extends 4 ? 3 : N extends 5 ? 4 : N extends 6 ? 5 : N extends 7 ? 6 : N extends 8 ? 7 : N extends 9 ? 8 : number;
|
|
25
|
+
type Join<T extends string[], Delimiter extends string = '/'> = T extends [infer First extends string, ...infer Rest extends string[]] ? Rest['length'] extends 0 ? First : `${First}${Delimiter}${Join<Rest, Delimiter>}` : '';
|
|
25
26
|
type ScopeEvents<Events extends Record<string, any>, Prefix extends string> = {
|
|
26
|
-
[K in keyof Events as K extends string ?
|
|
27
|
+
[K in keyof Events as K extends string ? MatchPatternAndGetRemainder<Split<K, '/'>, Split<Prefix, '/'>> extends infer Remainder ? Remainder extends string[] ? Join<Remainder, '/'> : never : never : never]: Events[K];
|
|
27
28
|
};
|
|
28
29
|
|
|
29
30
|
interface FastEventMeta {
|
package/dist/index.d.ts
CHANGED
|
@@ -6,12 +6,12 @@ type MergeUnion<T> = (T extends any ? (x: T) => void : never) extends (x: infer
|
|
|
6
6
|
type Split$1<S extends string, Delimiter extends string = '/'> = S extends `${infer Head}${Delimiter}${infer Tail}` ? [Head, ...Split$1<Tail, Delimiter>] : [S];
|
|
7
7
|
type MatchSegment<Input extends string, Pattern extends string> = Pattern extends '*' ? true : Pattern extends '**' ? true : Input extends Pattern ? true : false;
|
|
8
8
|
type MatchPatternArray<InputArr extends string[], PatternArr extends string[]> = InputArr extends [infer InputHead extends string, ...infer InputTail extends string[]] ? PatternArr extends [infer PatternHead extends string, ...infer PatternTail extends string[]] ? PatternHead extends '**' ? MatchPatternArray<InputTail, PatternTail> extends true ? true : MatchPatternArray<InputTail, PatternArr> extends true ? true : MatchPatternArray<InputArr, PatternTail> extends true ? true : false : MatchSegment<InputHead, PatternHead> extends true ? MatchPatternArray<InputTail, PatternTail> : false : false : PatternArr extends [infer PatternHead extends string, ...infer PatternTail extends string[]] ? PatternHead extends '**' ? MatchPatternArray<InputArr, PatternTail> : false : true;
|
|
9
|
-
type MatchPattern
|
|
9
|
+
type MatchPattern<T extends string, Pattern extends string> = MatchPatternArray<Split$1<T>, Split$1<Pattern>> extends true ? {
|
|
10
10
|
[K in Pattern]: any;
|
|
11
11
|
} : never;
|
|
12
12
|
type Fallback$1<T, F> = [T] extends [never] ? F : T extends undefined ? F : T;
|
|
13
13
|
type MatchEventType<T extends string, Events extends Record<string, any>> = MergeUnion<Fallback$1<{
|
|
14
|
-
[K in keyof Events]: MatchPattern
|
|
14
|
+
[K in keyof Events]: MatchPattern<T, K & string> extends never ? never : {
|
|
15
15
|
[P in K]: Events[K];
|
|
16
16
|
};
|
|
17
17
|
}[keyof Events] extends infer Result ? Result extends Record<string, any> ? Result : any : any, {
|
|
@@ -19,11 +19,12 @@ type MatchEventType<T extends string, Events extends Record<string, any>> = Merg
|
|
|
19
19
|
}>>;
|
|
20
20
|
|
|
21
21
|
type Split<S extends string, Delimiter extends string> = S extends `${infer Head}${Delimiter}${infer Tail}` ? [Head, ...Split<Tail, Delimiter>] : [S];
|
|
22
|
-
type
|
|
22
|
+
type MatchPatternAndGetRemainder<KeyParts extends string[], PrefixParts extends string[], Result extends string[] = []> = PrefixParts['length'] extends 0 ? KeyParts['length'] extends 0 ? never : KeyParts : KeyParts['length'] extends 0 ? never : KeyParts[0] extends PrefixParts[0] | '*' ? MatchPatternAndGetRemainder<Slice<KeyParts, 1>, Slice<PrefixParts, 1>, Result> : never;
|
|
23
23
|
type Slice<T extends any[], Start extends number, Result extends any[] = []> = Start extends 0 ? T : T extends [infer First, ...infer Rest] ? Slice<Rest, Decrement<Start>, Result> : Result;
|
|
24
24
|
type Decrement<N extends number> = N extends 0 ? 0 : N extends 1 ? 0 : N extends 2 ? 1 : N extends 3 ? 2 : N extends 4 ? 3 : N extends 5 ? 4 : N extends 6 ? 5 : N extends 7 ? 6 : N extends 8 ? 7 : N extends 9 ? 8 : number;
|
|
25
|
+
type Join<T extends string[], Delimiter extends string = '/'> = T extends [infer First extends string, ...infer Rest extends string[]] ? Rest['length'] extends 0 ? First : `${First}${Delimiter}${Join<Rest, Delimiter>}` : '';
|
|
25
26
|
type ScopeEvents<Events extends Record<string, any>, Prefix extends string> = {
|
|
26
|
-
[K in keyof Events as K extends string ?
|
|
27
|
+
[K in keyof Events as K extends string ? MatchPatternAndGetRemainder<Split<K, '/'>, Split<Prefix, '/'>> extends infer Remainder ? Remainder extends string[] ? Join<Remainder, '/'> : never : never : never]: Events[K];
|
|
27
28
|
};
|
|
28
29
|
|
|
29
30
|
interface FastEventMeta {
|