@zhin.js/core 1.0.15 → 1.0.17

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.
@@ -0,0 +1,173 @@
1
+ # 异步 JSX 组件支持
2
+
3
+ ## 概述
4
+
5
+ Zhin Core 现在原生支持异步 JSX 组件,允许你像使用普通组件一样使用异步组件,无需额外的类型断言或注释。
6
+
7
+ ## 核心改动
8
+
9
+ ### 1. 类型系统扩展
10
+
11
+ **`packages/core/src/jsx.ts`**:
12
+ - 修改 `JSX.Element` 类型为联合类型,支持 `Promise<SendContent>`
13
+ - `renderJSX` 函数自动检测并 await Promise 返回值
14
+ - 错误时自动捕获并返回错误信息
15
+
16
+ **`packages/core/src/message.ts`**:
17
+ - `MessageComponent` 类型支持异步组件函数
18
+
19
+ ### 2. 运行时支持
20
+
21
+ **自动 Promise 处理**:
22
+ ```typescript
23
+ export async function renderJSX(element: MessageComponent<any>, context?: ComponentContext): Promise<SendContent> {
24
+ try {
25
+ // ... 组件渲染逻辑
26
+ const result = await component(element.data, context || {} as ComponentContext);
27
+
28
+ // 如果组件返回 Promise,自动 await
29
+ if (result && typeof result === 'object' && 'then' in result) {
30
+ return await result;
31
+ }
32
+
33
+ return result;
34
+ } catch (error) {
35
+ // 渲染错误时返回错误信息
36
+ const errorMessage = error instanceof Error ? error.message : String(error);
37
+ return `❌ 组件渲染失败: ${errorMessage}`;
38
+ }
39
+ }
40
+ ```
41
+
42
+ **子组件 Promise 处理**:
43
+ ```typescript
44
+ async function renderChildren(children: JSXChildren, context?: ComponentContext): Promise<SendContent> {
45
+ // ...
46
+ // 如果子元素是 Promise,自动 await
47
+ if (children && typeof children === 'object' && 'then' in children) {
48
+ try {
49
+ return await children;
50
+ } catch (error) {
51
+ return `❌ 组件渲染失败: ${errorMessage}`;
52
+ }
53
+ }
54
+ }
55
+ ```
56
+
57
+ ## 使用方式
58
+
59
+ ### 定义异步组件
60
+
61
+ ```tsx
62
+ import { defineComponent, addComponent } from 'zhin.js';
63
+
64
+ const AsyncComponent = defineComponent(async function AsyncComponent({ userId }: { userId: string }) {
65
+ // 执行异步操作
66
+ const user = await fetchUserFromDatabase(userId);
67
+ const profile = await fetchUserProfile(userId);
68
+
69
+ return `👤 ${user.name}\n📧 ${profile.email}`;
70
+ }, 'AsyncComponent');
71
+
72
+ addComponent(AsyncComponent);
73
+ ```
74
+
75
+ ### 在 JSX 中使用(现在完全类型安全)
76
+
77
+ ```tsx
78
+ addCommand(
79
+ new MessageCommand('用户 <userId:text>')
80
+ .action(async (message, result) => {
81
+ // ✅ 直接使用 JSX 语法,无需 @ts-expect-error
82
+ return <AsyncComponent userId={result.params.userId} />
83
+ })
84
+ );
85
+ ```
86
+
87
+ ### 嵌套异步组件
88
+
89
+ ```tsx
90
+ const UserProfile = defineComponent(async function UserProfile({ userId }: { userId: string }) {
91
+ const user = await fetchUser(userId);
92
+
93
+ // 嵌套使用其他异步组件
94
+ return (
95
+ <div>
96
+ <h1>{user.name}</h1>
97
+ <AsyncComponent userId={userId} />
98
+ </div>
99
+ );
100
+ }, 'UserProfile');
101
+ ```
102
+
103
+ ## 错误处理
104
+
105
+ 异步组件中的错误会自动被捕获并返回友好的错误信息:
106
+
107
+ ```tsx
108
+ const FailingComponent = defineComponent(async function FailingComponent() {
109
+ throw new Error('数据加载失败');
110
+ }, 'FailingComponent');
111
+
112
+ // 使用时会自动返回: "❌ 组件渲染失败: 数据加载失败"
113
+ ```
114
+
115
+ ## 性能考虑
116
+
117
+ - **自动 await**:框架自动检测 Promise 并等待,无额外开销
118
+ - **并行渲染**:多个异步组件可以并行加载(使用 `Promise.all`)
119
+ - **错误隔离**:单个组件错误不会影响整体渲染
120
+
121
+ ## 迁移指南
122
+
123
+ 如果你之前使用了 `@ts-expect-error` 或直接函数调用:
124
+
125
+ ```tsx
126
+ // ❌ 旧方式(已废弃)
127
+ return await ShareMusic({ platform: 'qq', musicId: '123' });
128
+
129
+ // ✅ 新方式(推荐)
130
+ return <ShareMusic platform="qq" musicId="123" />
131
+ ```
132
+
133
+ ## TypeScript 类型
134
+
135
+ ```typescript
136
+ // JSX.Element 现在支持 Promise
137
+ declare global {
138
+ namespace JSX {
139
+ type Element = MessageComponent<any> | Promise<MessageComponent<any>> | Promise<SendContent>
140
+ }
141
+ }
142
+
143
+ // MessageComponent 支持异步函数
144
+ export type MessageComponent<T extends object> = {
145
+ type: Component<T & {children?: SendContent}> | ((props: T & {children?: SendContent}) => Promise<SendContent>)
146
+ data: T
147
+ }
148
+ ```
149
+
150
+ ## 测试
151
+
152
+ 确保你的异步组件正确工作:
153
+
154
+ ```typescript
155
+ import { describe, it, expect } from 'vitest';
156
+
157
+ describe('Async Components', () => {
158
+ it('should render async component', async () => {
159
+ const result = await renderJSX(<AsyncComponent userId="123" />);
160
+ expect(result).toBe('👤 User Name\n📧 user@example.com');
161
+ });
162
+
163
+ it('should handle errors gracefully', async () => {
164
+ const result = await renderJSX(<FailingComponent />);
165
+ expect(result).toMatch(/❌ 组件渲染失败/);
166
+ });
167
+ });
168
+ ```
169
+
170
+ ---
171
+
172
+ **版本**: 1.0.15+
173
+ **文档更新**: 2025-11-19
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # @zhin.js/core
2
2
 
3
+ ## 1.0.17
4
+
5
+ ### Patch Changes
6
+
7
+ - 3bc5d56: fix: 内存优化
8
+ - Updated dependencies [3bc5d56]
9
+ - @zhin.js/hmr@1.0.8
10
+
11
+ ## 1.0.16
12
+
13
+ ### Patch Changes
14
+
15
+ - e733fab: fix: 异步组件优化
16
+
3
17
  ## 1.0.15
4
18
 
5
19
  ### Patch Changes
package/lib/command.d.ts CHANGED
@@ -10,6 +10,11 @@ import { App } from "./app.js";
10
10
  */
11
11
  export declare class MessageCommand<T extends keyof RegisteredAdapters = keyof RegisteredAdapters> extends SegmentMatcher {
12
12
  #private;
13
+ get helpInfo(): MessageCommand.HelpInfo;
14
+ get help(): string;
15
+ desc(...desc: string[]): MessageCommand<T>;
16
+ usage(...usage: string[]): MessageCommand<T>;
17
+ examples(...examples: string[]): MessageCommand<T>;
13
18
  /**
14
19
  * 注册命令回调
15
20
  * @param callback 命令处理函数
@@ -25,7 +30,13 @@ export declare class MessageCommand<T extends keyof RegisteredAdapters = keyof R
25
30
  handle(message: Message<AdapterMessage<T>>, app: App): Promise<SendContent | undefined>;
26
31
  }
27
32
  export declare namespace MessageCommand {
28
- type Callback<T extends keyof RegisteredAdapters> = (message: Message<AdapterMessage<T>>, result: MatchResult) => MaybePromise<SendContent | void>;
33
+ type Callback<T extends keyof RegisteredAdapters> = (message: Message<AdapterMessage<T>>, result: MatchResult) => SendContent | undefined | Promise<SendContent | undefined>;
29
34
  type Checker<T extends keyof RegisteredAdapters> = (message: Message<AdapterMessage<T>>) => MaybePromise<boolean>;
35
+ type HelpInfo = {
36
+ pattern: string;
37
+ desc: string[];
38
+ usage: string[];
39
+ examples: string[];
40
+ };
30
41
  }
31
42
  //# sourceMappingURL=command.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAE,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAC,cAAc,EAAE,WAAW,EAAC,MAAM,YAAY,CAAC;AACvD,OAAO,EAAC,kBAAkB,EAAC,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B;;;GAGG;AACH,qBAAa,cAAc,CAAC,CAAC,SAAS,MAAM,kBAAkB,GAAC,MAAM,kBAAkB,CAAE,SAAQ,cAAc;;IAI3G;;;OAGG;IACH,MAAM,CAAC,QAAQ,EAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,GAEvB,cAAc,CAAC,CAAC,CAAC;IAEpC,MAAM,CAAC,GAAG,WAAW,EAAC,MAAM,EAAE,GAEX,cAAc,CAAC,CAAC,CAAC;IAEpC;;;;;OAKG;IACG,MAAM,CAAC,OAAO,EAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAC,GAAG,EAAC,GAAG,GAAE,OAAO,CAAC,WAAW,GAAC,SAAS,CAAC;CAoB1F;AACD,yBAAiB,cAAc,CAAA;IAC3B,KAAY,QAAQ,CAAC,CAAC,SAAS,MAAM,kBAAkB,IAAE,CAAC,OAAO,EAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAC,MAAM,EAAC,WAAW,KAAG,YAAY,CAAC,WAAW,GAAC,IAAI,CAAC,CAAC;IACjJ,KAAY,OAAO,CAAC,CAAC,SAAS,MAAM,kBAAkB,IAAE,CAAC,OAAO,EAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,KAAG,YAAY,CAAC,OAAO,CAAC,CAAA;CACtH"}
1
+ {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAE,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAC,cAAc,EAAE,WAAW,EAAC,MAAM,YAAY,CAAC;AACvD,OAAO,EAAC,kBAAkB,EAAC,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B;;;GAGG;AACH,qBAAa,cAAc,CAAC,CAAC,SAAS,MAAM,kBAAkB,GAAC,MAAM,kBAAkB,CAAE,SAAQ,cAAc;;IAO3G,IAAI,QAAQ,IAAG,cAAc,CAAC,QAAQ,CAOrC;IACD,IAAI,IAAI,WAOP;IACD,IAAI,CAAC,GAAG,IAAI,EAAC,MAAM,EAAE,GAEF,cAAc,CAAC,CAAC,CAAC;IAEpC,KAAK,CAAC,GAAG,KAAK,EAAC,MAAM,EAAE,GAEJ,cAAc,CAAC,CAAC,CAAC;IAEpC,QAAQ,CAAC,GAAG,QAAQ,EAAC,MAAM,EAAE,GAEV,cAAc,CAAC,CAAC,CAAC;IAEpC;;;OAGG;IACH,MAAM,CAAC,QAAQ,EAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,GAEvB,cAAc,CAAC,CAAC,CAAC;IAEpC,MAAM,CAAC,GAAG,WAAW,EAAC,MAAM,EAAE,GAEX,cAAc,CAAC,CAAC,CAAC;IAEpC;;;;;OAKG;IACG,MAAM,CAAC,OAAO,EAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAC,GAAG,EAAC,GAAG,GAAE,OAAO,CAAC,WAAW,GAAC,SAAS,CAAC;CAoB1F;AACD,yBAAiB,cAAc,CAAA;IAC3B,KAAY,QAAQ,CAAC,CAAC,SAAS,MAAM,kBAAkB,IAAE,CAAC,OAAO,EAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAC,MAAM,EAAC,WAAW,KAAG,WAAW,GAAC,SAAS,GAAC,OAAO,CAAC,WAAW,GAAC,SAAS,CAAC,CAAC;IACvK,KAAY,OAAO,CAAC,CAAC,SAAS,MAAM,kBAAkB,IAAE,CAAC,OAAO,EAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,KAAG,YAAY,CAAC,OAAO,CAAC,CAAA;IACnH,KAAY,QAAQ,GAAC;QACjB,OAAO,EAAC,MAAM,CAAC;QACf,IAAI,EAAC,MAAM,EAAE,CAAC;QACd,KAAK,EAAC,MAAM,EAAE,CAAC;QACf,QAAQ,EAAC,MAAM,EAAE,CAAC;KACrB,CAAA;CACJ"}
package/lib/command.js CHANGED
@@ -6,8 +6,39 @@ import { ZhinError } from "./errors.js";
6
6
  */
7
7
  export class MessageCommand extends SegmentMatcher {
8
8
  #callbacks = [];
9
+ #desc = [];
10
+ #usage = [];
11
+ #examples = [];
9
12
  #permissions = [];
10
13
  #checkers = [];
14
+ get helpInfo() {
15
+ return {
16
+ pattern: this.pattern,
17
+ desc: this.#desc,
18
+ usage: this.#usage,
19
+ examples: this.#examples
20
+ };
21
+ }
22
+ get help() {
23
+ return [
24
+ this.pattern,
25
+ ...this.#desc,
26
+ ...this.#usage,
27
+ ...this.#examples
28
+ ].join("\n");
29
+ }
30
+ desc(...desc) {
31
+ this.#desc.push(...desc);
32
+ return this;
33
+ }
34
+ usage(...usage) {
35
+ this.#usage.push(...usage);
36
+ return this;
37
+ }
38
+ examples(...examples) {
39
+ this.#examples.push(...examples);
40
+ return this;
41
+ }
11
42
  /**
12
43
  * 注册命令回调
13
44
  * @param callback 命令处理函数
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAK5D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC;;;GAGG;AACH,MAAM,OAAO,cAA4E,SAAQ,cAAc;IAC3G,UAAU,GAA8B,EAAE,CAAC;IAC3C,YAAY,GAAU,EAAE,CAAC;IACzB,SAAS,GAA6B,EAAE,CAAA;IACxC;;;OAGG;IACH,MAAM,CAAC,QAAmC;QACtC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC9B,OAAO,IAAyB,CAAC;IACrC,CAAC;IACD,MAAM,CAAC,GAAG,WAAoB;QAC1B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAA;QACtC,OAAO,IAAyB,CAAC;IACrC,CAAC;IACD;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CAAC,OAAkC,EAAC,GAAO;QACnD,KAAI,MAAM,UAAU,IAAI,IAAI,CAAC,YAAY,EAAC,CAAC;YACvC,MAAM,MAAM,GAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;YAC5C,IAAG,CAAC,MAAM,EAAE,CAAC;gBACT,MAAM,IAAI,SAAS,CAAC,MAAM,UAAU,MAAM,CAAC,CAAA;YAC/C,CAAC;YACD,MAAM,MAAM,GAAC,MAAM,MAAM,CAAC,KAAK,CAAC,UAAU,EAAC,OAAO,CAAC,CAAA;YACnD,IAAG,CAAC,MAAM;gBAAE,OAAO;QACvB,CAAC;QACD,KAAI,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,EAAC,CAAC;YAC/B,MAAM,MAAM,GAAC,MAAM,KAAK,CAAC,OAAO,CAAC,CAAA;YACjC,IAAG,CAAC,MAAM;gBAAE,OAAO;QACvB,CAAC;QACD,MAAM,OAAO,GAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC3C,IAAG,CAAC,OAAO;YAAE,OAAM;QACnB,KAAI,MAAM,OAAO,IAAI,IAAI,CAAC,UAAU,EAAC,CAAC;YAClC,MAAM,MAAM,GAAC,MAAM,OAAO,CAAC,OAAO,EAAC,OAAO,CAAC,CAAA;YAC3C,IAAG,MAAM;gBAAE,OAAO,MAAM,CAAA;QAC5B,CAAC;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAK5D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC;;;GAGG;AACH,MAAM,OAAO,cAA4E,SAAQ,cAAc;IAC3G,UAAU,GAA8B,EAAE,CAAC;IAC3C,KAAK,GAAU,EAAE,CAAC;IAClB,MAAM,GAAU,EAAE,CAAC;IACnB,SAAS,GAAU,EAAE,CAAC;IACtB,YAAY,GAAU,EAAE,CAAC;IACzB,SAAS,GAA6B,EAAE,CAAA;IACxC,IAAI,QAAQ;QACR,OAAO;YACH,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,QAAQ,EAAE,IAAI,CAAC,SAAS;SAC3B,CAAA;IACL,CAAC;IACD,IAAI,IAAI;QACJ,OAAO;YACH,IAAI,CAAC,OAAO;YACZ,GAAG,IAAI,CAAC,KAAK;YACb,GAAG,IAAI,CAAC,MAAM;YACd,GAAG,IAAI,CAAC,SAAS;SACpB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC;IACD,IAAI,CAAC,GAAG,IAAa;QACjB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAA;QACxB,OAAO,IAAyB,CAAC;IACrC,CAAC;IACD,KAAK,CAAC,GAAG,KAAc;QACnB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAA;QAC1B,OAAO,IAAyB,CAAC;IACrC,CAAC;IACD,QAAQ,CAAC,GAAG,QAAiB;QACzB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAA;QAChC,OAAO,IAAyB,CAAC;IACrC,CAAC;IACD;;;OAGG;IACH,MAAM,CAAC,QAAmC;QACtC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC9B,OAAO,IAAyB,CAAC;IACrC,CAAC;IACD,MAAM,CAAC,GAAG,WAAoB;QAC1B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAA;QACtC,OAAO,IAAyB,CAAC;IACrC,CAAC;IACD;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CAAC,OAAkC,EAAC,GAAO;QACnD,KAAI,MAAM,UAAU,IAAI,IAAI,CAAC,YAAY,EAAC,CAAC;YACvC,MAAM,MAAM,GAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;YAC5C,IAAG,CAAC,MAAM,EAAE,CAAC;gBACT,MAAM,IAAI,SAAS,CAAC,MAAM,UAAU,MAAM,CAAC,CAAA;YAC/C,CAAC;YACD,MAAM,MAAM,GAAC,MAAM,MAAM,CAAC,KAAK,CAAC,UAAU,EAAC,OAAO,CAAC,CAAA;YACnD,IAAG,CAAC,MAAM;gBAAE,OAAO;QACvB,CAAC;QACD,KAAI,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,EAAC,CAAC;YAC/B,MAAM,MAAM,GAAC,MAAM,KAAK,CAAC,OAAO,CAAC,CAAA;YACjC,IAAG,CAAC,MAAM;gBAAE,OAAO;QACvB,CAAC;QACD,MAAM,OAAO,GAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC3C,IAAG,CAAC,OAAO;YAAE,OAAM;QACnB,KAAI,MAAM,OAAO,IAAI,IAAI,CAAC,UAAU,EAAC,CAAC;YAClC,MAAM,MAAM,GAAC,MAAM,OAAO,CAAC,OAAO,EAAC,OAAO,CAAC,CAAA;YAC3C,IAAG,MAAM;gBAAE,OAAO,MAAM,CAAA;QAC5B,CAAC;IACL,CAAC;CACJ"}
@@ -2,7 +2,7 @@ import { Dict, SendContent, SendOptions } from './types.js';
2
2
  export declare const CapWithChild: unique symbol;
3
3
  export declare const CapWithClose: unique symbol;
4
4
  export type Component<P = any> = {
5
- (props: P, context: ComponentContext): Promise<SendContent>;
5
+ (props: P, context: ComponentContext): SendContent | Promise<SendContent>;
6
6
  name: string;
7
7
  };
8
8
  export interface ComponentContext {
@@ -1 +1 @@
1
- {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../src/component.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAkB,MAAM,YAAY,CAAC;AAI5E,eAAO,MAAM,YAAY,eAAyB,CAAC;AACnD,eAAO,MAAM,YAAY,eAAyB,CAAC;AAGnD,MAAM,MAAM,SAAS,CAAC,CAAC,GAAG,GAAG,IAAI;IAC7B,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC5D,IAAI,EAAE,MAAM,CAAC;CAChB,CAAA;AAID,MAAM,WAAW,gBAAgB;IAE7B,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IAGxF,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAGtB,MAAM,CAAC,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAGpC,IAAI,EAAE,MAAM,CAAC;IAGb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG,CAAC;IACpC,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC;CACzC;AAGD,wBAAgB,eAAe,CAAC,CAAC,GAAG,GAAG,EACnC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,EACvB,IAAI,GAAE,MAAuB,GAC9B,SAAS,CAAC,CAAC,CAAC,CAad;AAGD,wBAAgB,cAAc,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAWpF;AAGD,wBAAgB,QAAQ,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,CAAC,CA6FrG;AAuRD,wBAAgB,sBAAsB,CAClC,KAAK,GAAE,IAAS,EAChB,MAAM,CAAC,EAAE,gBAAgB,EACzB,IAAI,GAAE,MAAW,GAClB,gBAAgB,CAuBlB;AACD,wBAAsB,eAAe,CAAC,CAAC,GAAG,GAAG,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC,CAGzI;AAED,wBAAsB,gBAAgB,CAClC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,EACpC,OAAO,EAAE,WAAW,EACpB,aAAa,CAAC,EAAE,gBAAgB,GACjC,OAAO,CAAC,WAAW,CAAC,CA8DlB;AAGL,eAAO,MAAM,QAAQ;eAA8C,WAAW;EAchE,CAAC;AACf,eAAO,MAAM,KAAK,gBAEP,CAAC"}
1
+ {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../src/component.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAkB,MAAM,YAAY,CAAC;AAI5E,eAAO,MAAM,YAAY,eAAyB,CAAC;AACnD,eAAO,MAAM,YAAY,eAAyB,CAAC;AAGnD,MAAM,MAAM,SAAS,CAAC,CAAC,GAAG,GAAG,IAAI;IAC7B,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,GAAG,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC1E,IAAI,EAAE,MAAM,CAAC;CAChB,CAAA;AAID,MAAM,WAAW,gBAAgB;IAE7B,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IAGxF,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAGtB,MAAM,CAAC,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAGpC,IAAI,EAAE,MAAM,CAAC;IAGb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG,CAAC;IACpC,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC;CACzC;AAGD,wBAAgB,eAAe,CAAC,CAAC,GAAG,GAAG,EACnC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,EACvB,IAAI,GAAE,MAAuB,GAC9B,SAAS,CAAC,CAAC,CAAC,CAad;AAGD,wBAAgB,cAAc,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAWpF;AAGD,wBAAgB,QAAQ,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,CAAC,CA6FrG;AAuRD,wBAAgB,sBAAsB,CAClC,KAAK,GAAE,IAAS,EAChB,MAAM,CAAC,EAAE,gBAAgB,EACzB,IAAI,GAAE,MAAW,GAClB,gBAAgB,CAuBlB;AACD,wBAAsB,eAAe,CAAC,CAAC,GAAG,GAAG,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC,CAGzI;AAED,wBAAsB,gBAAgB,CAClC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,EACpC,OAAO,EAAE,WAAW,EACpB,aAAa,CAAC,EAAE,gBAAgB,GACjC,OAAO,CAAC,WAAW,CAAC,CAkElB;AAGL,eAAO,MAAM,QAAQ;eAA8C,WAAW;EAchE,CAAC;AACf,eAAO,MAAM,KAAK,gBAEP,CAAC"}
package/lib/component.js CHANGED
@@ -424,8 +424,14 @@ export async function renderComponents(componentMap, options, customContext) {
424
424
  if (match) {
425
425
  // 创建组件特定的上下文
426
426
  const componentContext = createComponentContext(context.props, context, result);
427
- const rendered = await renderComponent(comp, match, componentContext);
428
- const renderedString = typeof rendered === 'string' ? rendered : segment.toString(rendered);
427
+ let SendContent;
428
+ try {
429
+ SendContent = await renderComponent(comp, match, componentContext);
430
+ }
431
+ catch (error) {
432
+ SendContent = `[${comp.name} Error: ${error?.message || String(error)}]`;
433
+ }
434
+ const renderedString = typeof SendContent === 'string' ? SendContent : segment.toString(SendContent);
429
435
  result = result.replace(match, renderedString);
430
436
  hasChanges = true;
431
437
  break; // 处理一个组件后重新开始循环
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../src/component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../src/component.ts"],"names":[],"mappings":"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"}
package/lib/cron.d.ts CHANGED
@@ -1,13 +1,12 @@
1
1
  /**
2
2
  * Cron 定时任务类
3
- * 基于 cron-parser 实现的定时任务调度器
3
+ * 基于 croner 实现的定时任务调度器 (无需 Luxon,内存占用更小)
4
4
  */
5
5
  export declare class Cron {
6
- private expression;
6
+ private job;
7
7
  private callback;
8
- private timeoutId?;
9
- private isRunning;
10
8
  private isDisposed;
9
+ private _cronExpression;
11
10
  /**
12
11
  * 创建一个新的 Cron 实例
13
12
  * @param cronExpression - Cron 表达式 (例如: '0 0 * * *' 表示每天午夜执行)
@@ -42,14 +41,6 @@ export declare class Cron {
42
41
  * 获取原始的 cron 表达式字符串
43
42
  */
44
43
  get cronExpression(): string;
45
- /**
46
- * 调度下一次执行
47
- */
48
- private scheduleNext;
49
- /**
50
- * 执行回调函数并调度下一次执行
51
- */
52
- private executeCallback;
53
44
  }
54
45
  /**
55
46
  * Cron 表达式格式说明:
package/lib/cron.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cron.d.ts","sourceRoot":"","sources":["../src/cron.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,qBAAa,IAAI;IACf,OAAO,CAAC,UAAU,CAAiB;IACnC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,SAAS,CAAC,CAAiB;IACnC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,UAAU,CAAS;IAE3B;;;;OAIG;gBACS,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IASxE;;OAEG;IACH,GAAG,IAAI,IAAI;IAaX;;OAEG;IACH,IAAI,IAAI,IAAI;IAQZ;;OAEG;IACH,OAAO,IAAI,IAAI;IAKf;;OAEG;IACH,oBAAoB,IAAI,IAAI;IAU5B;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;OAEG;IACH,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED;;OAEG;IACH,OAAO,CAAC,YAAY;IA8BpB;;OAEG;YACW,eAAe;CAe9B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG"}
1
+ {"version":3,"file":"cron.d.ts","sourceRoot":"","sources":["../src/cron.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,qBAAa,IAAI;IACf,OAAO,CAAC,GAAG,CAAuB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,eAAe,CAAS;IAEhC;;;;OAIG;gBACS,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAaxE;;OAEG;IACH,GAAG,IAAI,IAAI;IAmBX;;OAEG;IACH,IAAI,IAAI,IAAI;IAOZ;;OAEG;IACH,OAAO,IAAI,IAAI;IAKf;;OAEG;IACH,oBAAoB,IAAI,IAAI;IAiB5B;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;OAEG;IACH,IAAI,cAAc,IAAI,MAAM,CAE3B;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG"}
package/lib/cron.js CHANGED
@@ -1,14 +1,13 @@
1
- import { CronExpressionParser } from 'cron-parser';
1
+ import { Cron as Croner } from 'croner';
2
2
  /**
3
3
  * Cron 定时任务类
4
- * 基于 cron-parser 实现的定时任务调度器
4
+ * 基于 croner 实现的定时任务调度器 (无需 Luxon,内存占用更小)
5
5
  */
6
6
  export class Cron {
7
- expression;
7
+ job = null;
8
8
  callback;
9
- timeoutId;
10
- isRunning = false;
11
9
  isDisposed = false;
10
+ _cronExpression;
12
11
  /**
13
12
  * 创建一个新的 Cron 实例
14
13
  * @param cronExpression - Cron 表达式 (例如: '0 0 * * *' 表示每天午夜执行)
@@ -16,8 +15,11 @@ export class Cron {
16
15
  */
17
16
  constructor(cronExpression, callback) {
18
17
  try {
19
- this.expression = CronExpressionParser.parse(cronExpression);
18
+ this._cronExpression = cronExpression;
20
19
  this.callback = callback;
20
+ // 验证 cron 表达式是否有效 (不启动)
21
+ const testJob = new Croner(cronExpression, { paused: true });
22
+ testJob.stop();
21
23
  }
22
24
  catch (error) {
23
25
  throw new Error(`Invalid cron expression "${cronExpression}": ${error.message}`);
@@ -30,21 +32,27 @@ export class Cron {
30
32
  if (this.isDisposed) {
31
33
  throw new Error('Cannot run a disposed cron job');
32
34
  }
33
- if (this.isRunning) {
35
+ if (this.job) {
34
36
  return; // 已经在运行中
35
37
  }
36
- this.isRunning = true;
37
- this.scheduleNext();
38
+ // 创建并启动任务
39
+ this.job = new Croner(this._cronExpression, async () => {
40
+ try {
41
+ await this.callback();
42
+ }
43
+ catch (error) {
44
+ console.error(`Error executing cron callback: ${error.message}`);
45
+ }
46
+ });
38
47
  }
39
48
  /**
40
49
  * 停止定时任务
41
50
  */
42
51
  stop() {
43
- if (this.timeoutId) {
44
- clearTimeout(this.timeoutId);
45
- this.timeoutId = undefined;
52
+ if (this.job) {
53
+ this.job.stop();
54
+ this.job = null;
46
55
  }
47
- this.isRunning = false;
48
56
  }
49
57
  /**
50
58
  * 销毁定时任务,释放资源
@@ -60,15 +68,20 @@ export class Cron {
60
68
  if (this.isDisposed) {
61
69
  throw new Error('Cannot get next execution time for a disposed cron job');
62
70
  }
63
- // 重置表达式到当前时间
64
- this.expression.reset();
65
- return this.expression.next().toDate();
71
+ // 创建临时任务来获取下次执行时间
72
+ const tempJob = new Croner(this._cronExpression, { paused: true });
73
+ const nextRun = tempJob.nextRun();
74
+ tempJob.stop();
75
+ if (!nextRun) {
76
+ throw new Error('Cannot determine next execution time');
77
+ }
78
+ return nextRun;
66
79
  }
67
80
  /**
68
81
  * 检查任务是否正在运行
69
82
  */
70
83
  get running() {
71
- return this.isRunning;
84
+ return this.job !== null;
72
85
  }
73
86
  /**
74
87
  * 检查任务是否已被销毁
@@ -80,53 +93,7 @@ export class Cron {
80
93
  * 获取原始的 cron 表达式字符串
81
94
  */
82
95
  get cronExpression() {
83
- return this.expression.stringify();
84
- }
85
- /**
86
- * 调度下一次执行
87
- */
88
- scheduleNext() {
89
- if (!this.isRunning || this.isDisposed) {
90
- return;
91
- }
92
- try {
93
- // 重置到当前时间并获取下一次执行时间
94
- this.expression.reset();
95
- const nextDate = this.expression.next().toDate();
96
- const now = new Date();
97
- const delay = nextDate.getTime() - now.getTime();
98
- // 如果延迟时间为负数或0,说明应该立即执行
99
- if (delay <= 0) {
100
- this.executeCallback();
101
- return;
102
- }
103
- // 设置定时器
104
- this.timeoutId = setTimeout(() => {
105
- this.executeCallback();
106
- }, delay);
107
- }
108
- catch (error) {
109
- console.error(`Error scheduling next cron execution: ${error.message}`);
110
- // 如果出错,停止任务
111
- this.stop();
112
- }
113
- }
114
- /**
115
- * 执行回调函数并调度下一次执行
116
- */
117
- async executeCallback() {
118
- if (!this.isRunning || this.isDisposed) {
119
- return;
120
- }
121
- try {
122
- // 执行回调函数
123
- await this.callback();
124
- }
125
- catch (error) {
126
- console.error(`Error executing cron callback: ${error.message}`);
127
- }
128
- // 调度下一次执行
129
- this.scheduleNext();
96
+ return this._cronExpression;
130
97
  }
131
98
  }
132
99
  /**
package/lib/cron.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cron.js","sourceRoot":"","sources":["../src/cron.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cron.js","sourceRoot":"","sources":["../src/cron.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,IAAI,MAAM,EAAE,MAAM,QAAQ,CAAC;AAExC;;;GAGG;AACH,MAAM,OAAO,IAAI;IACP,GAAG,GAAkB,IAAI,CAAC;IAC1B,QAAQ,CAA6B;IACrC,UAAU,GAAG,KAAK,CAAC;IACnB,eAAe,CAAS;IAEhC;;;;OAIG;IACH,YAAY,cAAsB,EAAE,QAAoC;QACtE,IAAI,CAAC;YACH,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;YACtC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAEzB,wBAAwB;YACxB,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7D,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,4BAA4B,cAAc,MAAO,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC;IAED;;OAEG;IACH,GAAG;QACD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,SAAS;QACnB,CAAC;QAED,UAAU;QACV,IAAI,CAAC,GAAG,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;YACrD,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YACxB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,kCAAmC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9E,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,IAAI;QACF,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YAChB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;QAClB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,oBAAoB;QAClB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC5E,CAAC;QAED,kBAAkB;QAClB,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACnE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QAClC,OAAO,CAAC,IAAI,EAAE,CAAC;QAEf,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC1D,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG"}
package/lib/index.d.ts CHANGED
@@ -12,5 +12,5 @@ export * from './errors.js';
12
12
  export * from './cron.js';
13
13
  export * from '@zhin.js/database';
14
14
  export * from '@zhin.js/logger';
15
- export { Dependency, Schema } from '@zhin.js/hmr';
15
+ export { Dependency, Schema, usePerformanceMonitor } from '@zhin.js/hmr';
16
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAE5B,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAE5B,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA"}
package/lib/index.js CHANGED
@@ -14,5 +14,5 @@ export * from './errors.js'; // 导出错误处理系统
14
14
  export * from './cron.js';
15
15
  export * from '@zhin.js/database';
16
16
  export * from '@zhin.js/logger';
17
- export { Dependency, Schema } from '@zhin.js/hmr';
17
+ export { Dependency, Schema, usePerformanceMonitor } from '@zhin.js/hmr';
18
18
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,0CAA0C;AAC1C,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA,CAAE,WAAW;AACxC,cAAc,WAAW,CAAA;AACzB,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,0CAA0C;AAC1C,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA,CAAE,WAAW;AACxC,cAAc,WAAW,CAAA;AACzB,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA"}
package/lib/jsx.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- import { MaybePromise } from '@zhin.js/types';
2
1
  import { SendContent, MessageElement } from './types.js';
3
2
  import { MessageComponent } from './message.js';
4
3
  import { Component, ComponentContext } from './component.js';
@@ -10,10 +9,9 @@ export type JSXProps = Record<string, any> & {
10
9
  export { Fragment } from './component.js';
11
10
  declare global {
12
11
  namespace JSX {
13
- interface Element extends MessageComponent<any> {
14
- }
12
+ type Element = SendContent | Promise<SendContent>;
15
13
  interface ElementClass {
16
- render(props: any, context?: ComponentContext): MaybePromise<SendContent>;
14
+ render(props: any, context?: ComponentContext): Element;
17
15
  }
18
16
  interface ElementAttributesProperty {
19
17
  data: {};
@@ -24,9 +22,12 @@ declare global {
24
22
  interface IntrinsicElements {
25
23
  [elemName: string]: any;
26
24
  }
25
+ interface IntrinsicAttributes {
26
+ key?: string | number;
27
+ }
27
28
  }
28
29
  }
29
- export declare function jsx(type: JSXElementType, data: JSXProps): MessageElement;
30
+ export declare function jsx(type: JSXElementType, data: JSXProps): MessageComponent<any>;
30
31
  export declare function jsxs(type: JSXElementType, props: JSXProps): MessageElement;
31
32
  export declare function renderJSX(element: MessageComponent<any>, context?: ComponentContext): Promise<SendContent>;
32
33
  //# sourceMappingURL=jsx.d.ts.map