mirror of
https://github.com/claude-code-best/claude-code.git
synced 2026-06-23 08:45:50 +00:00
Fix type (#1242)
* 完善所有用到的type对象,并添加中文注释 * 补充遗失的type * 修复claude-for-chrome-mcp中的type和interface类型缺失 * 完善注释
This commit is contained in:
@@ -20,7 +20,10 @@ import {
|
||||
type TextNode,
|
||||
} from './dom.js'
|
||||
import { Dispatcher } from './events/dispatcher.js'
|
||||
import { EVENT_HANDLER_PROPS } from './events/event-handlers.js'
|
||||
import {
|
||||
EVENT_HANDLER_PROPS,
|
||||
type EventHandlerProps,
|
||||
} from './events/event-handlers.js'
|
||||
import { getFocusManager, getRootNode } from './focus.js'
|
||||
import { LayoutDisplay } from './layout/node.js'
|
||||
import applyStyles, { type Styles, type TextStyles } from './styles.js'
|
||||
@@ -111,7 +114,11 @@ type HostContext = {
|
||||
isInsideText: boolean
|
||||
}
|
||||
|
||||
function setEventHandler(node: DOMElement, key: string, value: unknown): void {
|
||||
function setEventHandler<K extends keyof EventHandlerProps>(
|
||||
node: DOMElement,
|
||||
key: K,
|
||||
value: EventHandlerProps[K],
|
||||
): void {
|
||||
if (!node._eventHandlers) {
|
||||
node._eventHandlers = {}
|
||||
}
|
||||
@@ -135,7 +142,11 @@ function applyProp(node: DOMElement, key: string, value: unknown): void {
|
||||
}
|
||||
|
||||
if (EVENT_HANDLER_PROPS.has(key)) {
|
||||
setEventHandler(node, key, value)
|
||||
setEventHandler(
|
||||
node,
|
||||
key as keyof EventHandlerProps,
|
||||
value as EventHandlerProps[keyof EventHandlerProps],
|
||||
)
|
||||
return
|
||||
}
|
||||
|
||||
@@ -441,7 +452,11 @@ const reconciler = createReconciler<
|
||||
}
|
||||
|
||||
if (EVENT_HANDLER_PROPS.has(key)) {
|
||||
setEventHandler(node, key, value)
|
||||
setEventHandler(
|
||||
node,
|
||||
key as keyof EventHandlerProps,
|
||||
value as EventHandlerProps[keyof EventHandlerProps],
|
||||
)
|
||||
continue
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user