deno.land / x / hono@v4.2.5 / jsx / dom / index.ts

نووسراو ببینە
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
import type { Props, Child, JSXNode } from '../base.ts'import { memo, isValidElement } from '../base.ts'import { useContext } from '../context.ts'import { useState, useEffect, useRef, useCallback, use, startTransition, useTransition, useDeferredValue, startViewTransition, useViewTransition, useMemo, useLayoutEffect, useReducer, useId, useDebugValue,} from '../hooks/index.ts'import { Suspense, ErrorBoundary } from './components.ts'import { createContext } from './context.ts'import { jsx } from './jsx-runtime.ts'
export { render } from './render.ts'
const createElement = ( tag: string | ((props: Props) => JSXNode), props: Props, ...children: Child[]): JSXNode => { const jsxProps: Props = { ...props, children } let key = undefined if ('key' in jsxProps) { key = jsxProps.key delete jsxProps.key } // eslint-disable-next-line @typescript-eslint/no-explicit-any return jsx(tag, jsxProps, key) as any}
const cloneElement = <T extends JSXNode | JSX.Element>( element: T, props: Props, ...children: Child[]): T => { return jsx( (element as JSXNode).tag, { ...(element as JSXNode).props, ...props, children: children.length ? children : (element as JSXNode).children, }, (element as JSXNode).key ) as T}
export { createElement as jsx, useState, useEffect, useRef, useCallback, use, startTransition, useTransition, useDeferredValue, startViewTransition, useViewTransition, useMemo, useLayoutEffect, useReducer, useId, useDebugValue, Suspense, ErrorBoundary, createContext, useContext, memo, isValidElement, createElement, cloneElement,}
export default { useState, useEffect, useRef, useCallback, use, startTransition, useTransition, useDeferredValue, startViewTransition, useViewTransition, useMemo, useLayoutEffect, useReducer, useId, useDebugValue, Suspense, ErrorBoundary, createContext, useContext, memo, isValidElement, createElement, cloneElement,}
export type { Context } from '../context.ts'
hono

Version Info

Tagged at
a month ago