@event-chat/core 0.2.3 → 0.2.4
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/hooks.d.ts +1 -1
- package/dist/hooks.d.ts.map +1 -1
- package/dist/hooks.js +6 -4
- package/dist/utils.d.ts +3 -4
- package/dist/utils.d.ts.map +1 -1
- package/dist/validate.d.ts +3 -2
- package/dist/validate.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/hooks.d.ts
CHANGED
|
@@ -3,6 +3,6 @@ import { EventChatOptions, EventDetailType, NamepathType } from './utils';
|
|
|
3
3
|
export declare const useMemoFn: <T>(fn: T) => import("react").MutableRefObject<T>;
|
|
4
4
|
export declare function useEventChat<Name extends NamepathType, Schema extends ZodType | undefined = undefined, Group extends string | undefined = undefined, Type extends string | undefined = undefined, Token extends boolean | undefined = undefined>(name: Name, ops?: EventChatOptions<Name, Schema, Group, Type, Token>): Readonly<{
|
|
5
5
|
token: string;
|
|
6
|
-
emit: <Detail, CustomName extends NamepathType>(detail: Omit<EventDetailType<Detail, CustomName>, "group" | "id" | "origin" | "type">) => void;
|
|
6
|
+
emit: <Detail, CustomName extends NamepathType>(detail: Omit<EventDetailType<Detail, CustomName>, "group" | "id" | "origin" | "time" | "type">) => void;
|
|
7
7
|
}>;
|
|
8
8
|
//# sourceMappingURL=hooks.d.ts.map
|
package/dist/hooks.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAE9B,OAAO,EACL,gBAAgB,EAChB,eAAe,EAEf,YAAY,EAQb,MAAM,SAAS,CAAC;AAGjB,eAAO,MAAM,SAAS,GAAI,CAAC,EAAE,IAAI,CAAC,wCAOjC,CAAC;AAEF,wBAAgB,YAAY,CAC1B,IAAI,SAAS,YAAY,EACzB,MAAM,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAC9C,KAAK,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAC5C,IAAI,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAC3C,KAAK,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAC7C,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;;
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAE9B,OAAO,EACL,gBAAgB,EAChB,eAAe,EAEf,YAAY,EAQb,MAAM,SAAS,CAAC;AAGjB,eAAO,MAAM,SAAS,GAAI,CAAC,EAAE,IAAI,CAAC,wCAOjC,CAAC;AAEF,wBAAgB,YAAY,CAC1B,IAAI,SAAS,YAAY,EACzB,MAAM,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAC9C,KAAK,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAC5C,IAAI,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAC3C,KAAK,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAC7C,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;;WA8CjE,MAAM,EAAE,UAAU,SAAS,YAAY,UAC9B,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;GA+BnG"}
|
package/dist/hooks.js
CHANGED
|
@@ -24,10 +24,11 @@ function useEventChat(name, ops) {
|
|
|
24
24
|
const nameRc = useMemoFn(name);
|
|
25
25
|
const options = useMemoFn(ops);
|
|
26
26
|
const tokenRc = useMemoFn(token);
|
|
27
|
-
const errorHandle = useCallback((error, data)=>{
|
|
27
|
+
const errorHandle = useCallback((error, data, time)=>{
|
|
28
28
|
if (error instanceof Error && options.current?.debug) options.current.debug(isResultType(error.cause) ? {
|
|
29
29
|
...error.cause,
|
|
30
|
-
data
|
|
30
|
+
data,
|
|
31
|
+
time
|
|
31
32
|
} : void 0);
|
|
32
33
|
}, [
|
|
33
34
|
options
|
|
@@ -43,11 +44,11 @@ function useEventChat(name, ops) {
|
|
|
43
44
|
if (void 0 !== opitem.schema) validate(upRecord, {
|
|
44
45
|
...opitem,
|
|
45
46
|
schema: opitem.schema
|
|
46
|
-
}, tokenRc.current).then(opitem.callback).catch((error)=>errorHandle(error, data.detail));
|
|
47
|
+
}, tokenRc.current).then(opitem.callback).catch((error)=>errorHandle(error, data.detail, data.time));
|
|
47
48
|
else checkLiteral(upRecord, {
|
|
48
49
|
...opitem,
|
|
49
50
|
schema: void 0
|
|
50
|
-
}, tokenRc.current).then(opitem.callback).catch((error)=>errorHandle(error, data.detail));
|
|
51
|
+
}, tokenRc.current).then(opitem.callback).catch((error)=>errorHandle(error, data.detail, data.time));
|
|
51
52
|
}, [
|
|
52
53
|
nameRc,
|
|
53
54
|
options,
|
|
@@ -59,6 +60,7 @@ function useEventChat(name, ops) {
|
|
|
59
60
|
...detail,
|
|
60
61
|
group: ops?.group,
|
|
61
62
|
origin: nameRc.current,
|
|
63
|
+
time: new Date(),
|
|
62
64
|
type: ops?.type,
|
|
63
65
|
id
|
|
64
66
|
});
|
package/dist/utils.d.ts
CHANGED
|
@@ -16,20 +16,18 @@ export interface EventChatOptions<Name extends NamepathType, Schema extends ZodT
|
|
|
16
16
|
callback?: (target: DetailType<Name, Schema, Group, Type, Token>) => void;
|
|
17
17
|
debug?: (result?: ResultType) => void;
|
|
18
18
|
}
|
|
19
|
-
export type DetailType<Name extends NamepathType, Schema extends ZodType | undefined = undefined, Group extends string | undefined = undefined, Type extends string | undefined = undefined, Token extends boolean | undefined = undefined> = {
|
|
20
|
-
id: string;
|
|
21
|
-
name: Name;
|
|
19
|
+
export type DetailType<Name extends NamepathType, Schema extends ZodType | undefined = undefined, Group extends string | undefined = undefined, Type extends string | undefined = undefined, Token extends boolean | undefined = undefined> = Pick<EventDetailType<unknown, Name>, 'global' | 'id' | 'name' | 'time'> & {
|
|
22
20
|
detail: WasProvided<Schema> extends true ? z.output<Exclude<Schema, undefined>> : unknown;
|
|
23
21
|
group: WasProvided<Group> extends true ? Exclude<Group, undefined> : undefined;
|
|
24
22
|
origin: string;
|
|
25
23
|
type: WasProvided<Type> extends true ? Exclude<Type, undefined> : undefined;
|
|
26
24
|
token: Token extends true ? string : undefined;
|
|
27
|
-
global?: boolean;
|
|
28
25
|
};
|
|
29
26
|
export type EventDetailType<Detail = unknown, Name extends NamepathType = NamepathType> = {
|
|
30
27
|
id: string;
|
|
31
28
|
name: Name;
|
|
32
29
|
origin: NamepathType;
|
|
30
|
+
time: Date;
|
|
33
31
|
detail?: Detail;
|
|
34
32
|
global?: boolean;
|
|
35
33
|
group?: string;
|
|
@@ -39,6 +37,7 @@ export type EventDetailType<Detail = unknown, Name extends NamepathType = Namepa
|
|
|
39
37
|
export type NamepathType = number | string | Array<string | number> | Readonly<Array<string | number>>;
|
|
40
38
|
export type ResultType<Schema = unknown> = Omit<z.ZodSafeParseError<Schema>, 'data'> & {
|
|
41
39
|
data: unknown;
|
|
40
|
+
time: Date;
|
|
42
41
|
};
|
|
43
42
|
export type WasProvided<T, Default = undefined> = [
|
|
44
43
|
T
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGjC,eAAO,MAAM,SAAS,4BAA4B,CAAC;AACnD,eAAO,MAAM,WAAW,GAAI,MAAM,EAAE,IAAI,SAAS,YAAY,GAAG,MAAM,EACpE,QAAQ,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,+CAMnC,CAAC;AAEL,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,KAAG,MACY,CAAC;AAEvD,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,EAAE,IAAI,MAAM,EAAE,OAAO,MAAM,WAC3B,CAAC;AAG7C,eAAO,MAAM,YAAY,GAAI,MAAM,YAAY,WAQ9C,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,MAAM,OAAO,KAAG,IAAI,IAAI,UAC4B,CAAC;AAElF,eAAO,MAAM,YAAY,GAAI,CAAC,EAAE,QAAQ,OAAO,EAAE,QAAQ,CAAC,KAAG,MAAM,IAAI,CAStE,CAAC;AAEF,wBAAgB,UAAU,CAAC,KAAK,EAAE,iBAAiB,QAMlD;AAED,MAAM,WAAW,gBAAgB,CAC/B,IAAI,SAAS,YAAY,EACzB,MAAM,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAC9C,KAAK,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAC5C,IAAI,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAC3C,KAAK,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS;IAE7C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,IAAI,CAAC;IAC1E,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;CACvC;AAED,MAAM,MAAM,UAAU,CACpB,IAAI,SAAS,YAAY,EACzB,MAAM,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAC9C,KAAK,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAC5C,IAAI,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAC3C,KAAK,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,IAC3C
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/validate.d.ts
CHANGED
|
@@ -3,12 +3,13 @@ import { EventChatOptions, EventDetailType, NamepathType } from './utils';
|
|
|
3
3
|
export declare const checkLiteral: <Name extends NamepathType, Schema extends ZodType, Group extends string | undefined = undefined, Type extends string | undefined = undefined, Token extends boolean | undefined = undefined>(data: EventDetailType, { group, token }: EventChatOptions<Name, Schema, Group, Type, Token>, currentToken?: string) => Promise<import("./utils").DetailType<Name, Schema, Group, Type, Token>>;
|
|
4
4
|
export declare const validate: <Name extends NamepathType, Schema extends ZodType, Group extends string | undefined = undefined, Type extends string | undefined = undefined, Token extends boolean | undefined = undefined>(data: EventDetailType, record: EventChatOptions<Name, Schema, Group, Type, Token>, currentToken?: string) => Promise<{
|
|
5
5
|
detail: z.core.output<Schema>;
|
|
6
|
-
id: string;
|
|
7
6
|
name: Name;
|
|
7
|
+
global?: boolean | undefined;
|
|
8
|
+
id: string;
|
|
9
|
+
time: Date;
|
|
8
10
|
group: import("./utils").WasProvided<Group, undefined> extends true ? Exclude<Group, undefined> : undefined;
|
|
9
11
|
origin: string;
|
|
10
12
|
type: import("./utils").WasProvided<Type, undefined> extends true ? Exclude<Type, undefined> : undefined;
|
|
11
13
|
token: Token extends true ? string : undefined;
|
|
12
|
-
global?: boolean;
|
|
13
14
|
}>;
|
|
14
15
|
//# sourceMappingURL=validate.d.ts.map
|
package/dist/validate.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAgC1E,eAAO,MAAM,YAAY,GACvB,IAAI,SAAS,YAAY,EACzB,MAAM,SAAS,OAAO,EACtB,KAAK,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAC5C,IAAI,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAC3C,KAAK,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAE7C,MAAM,eAAe,EACrB,kBAAkB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,EACpE,eAAe,MAAM,4EA2BtB,CAAC;AAEF,eAAO,MAAM,QAAQ,GACnB,IAAI,SAAS,YAAY,EACzB,MAAM,SAAS,OAAO,EACtB,KAAK,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAC5C,IAAI,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAC3C,KAAK,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAE7C,MAAM,eAAe,EACrB,QAAQ,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,EAC1D,eAAe,MAAM
|
|
1
|
+
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAgC1E,eAAO,MAAM,YAAY,GACvB,IAAI,SAAS,YAAY,EACzB,MAAM,SAAS,OAAO,EACtB,KAAK,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAC5C,IAAI,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAC3C,KAAK,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAE7C,MAAM,eAAe,EACrB,kBAAkB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,EACpE,eAAe,MAAM,4EA2BtB,CAAC;AAEF,eAAO,MAAM,QAAQ,GACnB,IAAI,SAAS,YAAY,EACzB,MAAM,SAAS,OAAO,EACtB,KAAK,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAC5C,IAAI,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAC3C,KAAK,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAE7C,MAAM,eAAe,EACrB,QAAQ,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,EAC1D,eAAe,MAAM;;;;;;;;;;EAOpB,CAAC"}
|