weifuwu 0.94.0 → 0.95.0

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.
Files changed (1429) hide show
  1. package/README.md +40 -30
  2. package/dist/client/components/index.js +36 -36
  3. package/dist/client/layout/index.js +5 -5
  4. package/dist/client/vdom/index.js +3 -3
  5. package/dist/client/vdom/jsx-runtime.js +1 -1
  6. package/dist/client/vdom/testing.js +2 -2
  7. package/dist/dev/index.js +1 -1
  8. package/dist/level0/ai/types.d.ts +156 -0
  9. package/dist/level0/ai/types.ts +164 -0
  10. package/dist/level0/db/contracts.d.ts +98 -0
  11. package/dist/level0/db/contracts.ts +113 -0
  12. package/dist/level0/db/errors.d.ts +51 -0
  13. package/dist/level0/db/errors.ts +89 -0
  14. package/dist/level0/db/filter.ts +65 -0
  15. package/dist/level0/db/generator-contracts.d.ts +56 -0
  16. package/dist/level0/db/generator-contracts.ts +58 -0
  17. package/dist/level0/db/ops.ts +153 -0
  18. package/dist/level0/db/query.ts +560 -0
  19. package/dist/level0/db/shape.d.ts +131 -0
  20. package/dist/level0/db/shape.ts +210 -0
  21. package/dist/level0/router/chain.ts +30 -0
  22. package/dist/level0/router/context.ts +67 -0
  23. package/dist/level0/router/ctx-fields.ts +42 -0
  24. package/dist/level0/router/index.d.ts +17 -0
  25. package/dist/level0/router/index.js +2 -0
  26. package/dist/level0/router/index.ts +17 -0
  27. package/dist/level0/router/pipeline.ts +130 -0
  28. package/dist/level0/router/trie.d.ts +69 -0
  29. package/dist/level0/router/trie.ts +202 -0
  30. package/dist/level0/router/types.ts +34 -0
  31. package/dist/level0/types.d.ts +112 -0
  32. package/dist/level0/types.ts +153 -0
  33. package/dist/level0/vdom/command/create.ts +28 -0
  34. package/dist/level0/vdom/command/index.ts +39 -0
  35. package/dist/level0/vdom/command/insert.ts +35 -0
  36. package/dist/level0/vdom/command/lifecycle.ts +53 -0
  37. package/dist/level0/vdom/command/props.ts +24 -0
  38. package/dist/level0/vdom/field/key.ts +35 -0
  39. package/dist/level0/vdom/node/hole.ts +58 -0
  40. package/dist/level0/vdom/vnode.d.ts +54 -0
  41. package/dist/level0/vdom/vnode.ts +102 -0
  42. package/dist/level0/zod.ts +370 -0
  43. package/dist/level1/vdom/async-guard.ts +33 -0
  44. package/dist/level1/vdom/dev/effect-guard.ts +65 -0
  45. package/dist/level1/vdom/dev/error-counter.ts +62 -0
  46. package/dist/level1/vdom/hooks/ai-stream.d.ts +46 -0
  47. package/dist/level1/vdom/hooks/ai-stream.ts +179 -0
  48. package/dist/level1/vdom/node/children.d.ts +20 -0
  49. package/dist/level1/vdom/node/children.ts +36 -0
  50. package/dist/level1/vdom/node/fragment.d.ts +14 -0
  51. package/dist/level1/vdom/node/fragment.ts +19 -0
  52. package/dist/level1/vdom/node/index.d.ts +35 -0
  53. package/dist/level1/vdom/node/index.ts +62 -0
  54. package/dist/level1/vdom/node/keyed.d.ts +64 -0
  55. package/dist/level1/vdom/node/keyed.ts +167 -0
  56. package/dist/level1/vdom/node/portal.ts +15 -0
  57. package/dist/level1/vdom/observable/index.ts +13 -0
  58. package/dist/level1/vdom/observable/observable.ts +89 -0
  59. package/dist/level1/vdom/observable/operators.ts +399 -0
  60. package/dist/level1/vdom/observable/sources.ts +131 -0
  61. package/dist/level1/vdom/observable/types.ts +48 -0
  62. package/dist/level1/vdom/patch/state-machine.d.ts +38 -0
  63. package/dist/level1/vdom/patch/state-machine.ts +142 -0
  64. package/dist/level1/vdom/ports.d.ts +87 -0
  65. package/dist/level1/vdom/ports.ts +100 -0
  66. package/dist/level1/vdom/store.ts +136 -0
  67. package/dist/level1/vdom/v2/schedule.d.ts +33 -0
  68. package/dist/level1/vdom/v2/schedule.ts +91 -0
  69. package/dist/level1/vdom/v2/spy.ts +26 -0
  70. package/dist/level2/collect.d.ts +31 -0
  71. package/dist/level2/collect.ts +89 -0
  72. package/dist/level2/db/consistency.ts +79 -0
  73. package/dist/level2/db/memory-sql.d.ts +104 -0
  74. package/dist/level2/db/memory-sql.ts +948 -0
  75. package/dist/level2/db/orm.d.ts +117 -0
  76. package/dist/level2/db/orm.ts +387 -0
  77. package/dist/level2/db/query-builder.d.ts +19 -0
  78. package/dist/level2/db/query-builder.ts +244 -0
  79. package/dist/level2/db/schema.d.ts +78 -0
  80. package/dist/level2/db/schema.ts +374 -0
  81. package/dist/level2/db/typed-query.d.ts +113 -0
  82. package/dist/level2/db/typed-query.ts +153 -0
  83. package/dist/level2/error-counter.ts +53 -0
  84. package/dist/level2/hub.d.ts +9 -0
  85. package/dist/level2/hub.ts +44 -0
  86. package/dist/level2/response.d.ts +63 -0
  87. package/dist/level2/response.ts +117 -0
  88. package/dist/level2/router.d.ts +79 -0
  89. package/dist/level2/router.ts +365 -0
  90. package/dist/level2/serve.d.ts +39 -0
  91. package/dist/level2/serve.ts +349 -0
  92. package/dist/level2/ws.d.ts +44 -0
  93. package/dist/level2/ws.ts +148 -0
  94. package/dist/level3/vdom/browser/Browser.ts +78 -0
  95. package/dist/level3/vdom/browser/create-client-browser.ts +103 -0
  96. package/dist/level3/vdom/context/UIContext.d.ts +70 -0
  97. package/dist/level3/vdom/context/UIContext.ts +69 -0
  98. package/dist/level3/vdom/context/data.ts +69 -0
  99. package/dist/level3/vdom/dev/render-health.d.ts +60 -0
  100. package/dist/level3/vdom/dev/render-health.ts +178 -0
  101. package/dist/level3/vdom/diff/attrs.d.ts +18 -0
  102. package/dist/level3/vdom/diff/attrs.ts +54 -0
  103. package/dist/level3/vdom/diff/cleanup.d.ts +44 -0
  104. package/dist/level3/vdom/diff/cleanup.ts +154 -0
  105. package/dist/level3/vdom/field/attributes.ts +74 -0
  106. package/dist/level3/vdom/field/events.ts +170 -0
  107. package/dist/level3/vdom/field/input-sync.ts +38 -0
  108. package/dist/level3/vdom/field/props.ts +59 -0
  109. package/dist/level3/vdom/field/ref.ts +102 -0
  110. package/dist/level3/vdom/field/style.ts +63 -0
  111. package/dist/level3/vdom/hooks/basic.ts +112 -0
  112. package/dist/level3/vdom/hooks/chat.d.ts +118 -0
  113. package/dist/level3/vdom/hooks/chat.ts +399 -0
  114. package/dist/level3/vdom/hooks/controlled.ts +58 -0
  115. package/dist/level3/vdom/hooks/drag-media.ts +132 -0
  116. package/dist/level3/vdom/hooks/env.d.ts +183 -0
  117. package/dist/level3/vdom/hooks/env.ts +330 -0
  118. package/dist/level3/vdom/hooks/field.d.ts +54 -0
  119. package/dist/level3/vdom/hooks/field.ts +97 -0
  120. package/dist/level3/vdom/hooks/input.ts +92 -0
  121. package/dist/level3/vdom/hooks/observe.ts +257 -0
  122. package/dist/level3/vdom/hooks/overlay.d.ts +60 -0
  123. package/dist/level3/vdom/hooks/overlay.ts +105 -0
  124. package/dist/level3/vdom/hooks/popup-manager.d.ts +113 -0
  125. package/dist/level3/vdom/hooks/popup-manager.ts +562 -0
  126. package/dist/level3/vdom/hooks/popup.ts +147 -0
  127. package/dist/level3/vdom/hooks/signal.ts +41 -0
  128. package/dist/level3/vdom/hooks/stable.ts +259 -0
  129. package/dist/level3/vdom/hooks/use-observable.d.ts +13 -0
  130. package/dist/level3/vdom/hooks/use-observable.ts +53 -0
  131. package/dist/level3/vdom/node/component.d.ts +92 -0
  132. package/dist/level3/vdom/node/component.ts +268 -0
  133. package/dist/level3/vdom/node/native.d.ts +28 -0
  134. package/dist/level3/vdom/node/native.ts +84 -0
  135. package/dist/level3/vdom/patch/fields.ts +58 -0
  136. package/dist/level3/vdom/patch/index.d.ts +74 -0
  137. package/dist/level3/vdom/patch/index.ts +225 -0
  138. package/dist/level3/vdom/patch/processors.d.ts +82 -0
  139. package/dist/level3/vdom/patch/processors.ts +363 -0
  140. package/dist/level3/vdom/patch/verify.d.ts +17 -0
  141. package/dist/level3/vdom/patch/verify.ts +47 -0
  142. package/dist/level3/vdom/protocol.d.ts +98 -0
  143. package/dist/level3/vdom/protocol.ts +152 -0
  144. package/dist/level3/vdom/router.d.ts +38 -0
  145. package/dist/level3/vdom/router.ts +101 -0
  146. package/dist/level3/vdom/ssr/absorb.d.ts +80 -0
  147. package/dist/level3/vdom/ssr/absorb.ts +149 -0
  148. package/dist/level3/vdom/ssr/html.d.ts +32 -0
  149. package/dist/level3/vdom/ssr/html.ts +116 -0
  150. package/dist/level3/vdom/transform/component.ts +56 -0
  151. package/dist/level3/vdom/transform/element.ts +27 -0
  152. package/dist/level3/vdom/transform/fragment.ts +37 -0
  153. package/dist/level3/vdom/transform/hole.ts +18 -0
  154. package/dist/level3/vdom/transform/index.d.ts +46 -0
  155. package/dist/level3/vdom/transform/index.ts +54 -0
  156. package/dist/level3/vdom/transform/states.d.ts +22 -0
  157. package/dist/level3/vdom/transform/states.ts +36 -0
  158. package/dist/level3/vdom/transform/table.d.ts +28 -0
  159. package/dist/level3/vdom/transform/table.ts +56 -0
  160. package/dist/level3/vdom/transform/text.ts +15 -0
  161. package/dist/level3/vdom/v2/cycle.d.ts +56 -0
  162. package/dist/level3/vdom/v2/cycle.ts +140 -0
  163. package/dist/level3/vdom/v2/diff.d.ts +89 -0
  164. package/dist/level3/vdom/v2/diff.ts +978 -0
  165. package/dist/level3/vdom/v2/integrate.d.ts +24 -0
  166. package/dist/level3/vdom/v2/integrate.ts +85 -0
  167. package/dist/level3/vdom/v2/render.d.ts +28 -0
  168. package/dist/level3/vdom/v2/render.ts +268 -0
  169. package/dist/level3/vdom/v2/serve.ts +363 -0
  170. package/dist/level3/vdom/v2/ssr.d.ts +14 -0
  171. package/dist/level3/vdom/v2/ssr.ts +105 -0
  172. package/dist/level4/client/layout/decl.ts +61 -0
  173. package/dist/level4/client/layout/define.ts +96 -0
  174. package/dist/level4/client/vdom/create-component.d.ts +42 -0
  175. package/dist/level4/client/vdom/create-component.ts +77 -0
  176. package/dist/level4/client/vdom/create-item.d.ts +114 -0
  177. package/dist/level4/client/vdom/create-item.ts +180 -0
  178. package/dist/level4/client/vdom/semantic.d.ts +51 -0
  179. package/dist/level4/client/vdom/semantic.ts +113 -0
  180. package/dist/level4/server/db/body.d.ts +31 -0
  181. package/dist/level4/server/db/body.ts +74 -0
  182. package/dist/level4/server/db/http.d.ts +38 -0
  183. package/dist/level4/server/db/http.ts +85 -0
  184. package/dist/level5/client/components/Accordion/Accordion.css +66 -0
  185. package/dist/level5/client/components/Accordion/Accordion.d.ts +21 -0
  186. package/dist/level5/client/components/Accordion/Accordion.ts +103 -0
  187. package/dist/level5/client/components/ActionSheet/ActionSheet.css +152 -0
  188. package/dist/level5/client/components/ActionSheet/ActionSheet.d.ts +38 -0
  189. package/dist/level5/client/components/ActionSheet/ActionSheet.ts +150 -0
  190. package/dist/level5/client/components/Affix/Affix.css +16 -0
  191. package/dist/level5/client/components/Affix/Affix.d.ts +17 -0
  192. package/dist/level5/client/components/Affix/Affix.ts +110 -0
  193. package/dist/level5/client/components/AiChat/AiChat.css +88 -0
  194. package/dist/level5/client/components/AiChat/AiChat.d.ts +53 -0
  195. package/dist/level5/client/components/AiChat/AiChat.ts +235 -0
  196. package/dist/level5/client/components/Alert/Alert.css +42 -0
  197. package/dist/level5/client/components/Alert/Alert.d.ts +10 -0
  198. package/dist/level5/client/components/Alert/Alert.ts +40 -0
  199. package/dist/level5/client/components/AlertGroup/AlertGroup.css +75 -0
  200. package/dist/level5/client/components/AlertGroup/AlertGroup.d.ts +24 -0
  201. package/dist/level5/client/components/AlertGroup/AlertGroup.ts +67 -0
  202. package/dist/level5/client/components/Anchor/Anchor.css +39 -0
  203. package/dist/level5/client/components/Anchor/Anchor.d.ts +28 -0
  204. package/dist/level5/client/components/Anchor/Anchor.ts +123 -0
  205. package/dist/level5/client/components/AppShell/AppShell.css +126 -0
  206. package/dist/level5/client/components/AppShell/AppShell.d.ts +73 -0
  207. package/dist/level5/client/components/AppShell/AppShell.ts +162 -0
  208. package/dist/level5/client/components/ApprovalCard/ApprovalCard.css +111 -0
  209. package/dist/level5/client/components/ApprovalCard/ApprovalCard.d.ts +36 -0
  210. package/dist/level5/client/components/ApprovalCard/ApprovalCard.ts +143 -0
  211. package/dist/level5/client/components/AspectRatio/AspectRatio.css +16 -0
  212. package/dist/level5/client/components/AspectRatio/AspectRatio.d.ts +11 -0
  213. package/dist/level5/client/components/AspectRatio/AspectRatio.ts +22 -0
  214. package/dist/level5/client/components/AuthPage/AuthPage.d.ts +37 -0
  215. package/dist/level5/client/components/AuthPage/AuthPage.ts +61 -0
  216. package/dist/level5/client/components/AutoComplete/AutoComplete.css +55 -0
  217. package/dist/level5/client/components/AutoComplete/AutoComplete.d.ts +40 -0
  218. package/dist/level5/client/components/AutoComplete/AutoComplete.ts +221 -0
  219. package/dist/level5/client/components/Avatar/Avatar.css +18 -0
  220. package/dist/level5/client/components/Avatar/Avatar.d.ts +10 -0
  221. package/dist/level5/client/components/Avatar/Avatar.ts +42 -0
  222. package/dist/level5/client/components/AvatarGroup/AvatarGroup.css +29 -0
  223. package/dist/level5/client/components/AvatarGroup/AvatarGroup.d.ts +22 -0
  224. package/dist/level5/client/components/AvatarGroup/AvatarGroup.ts +46 -0
  225. package/dist/level5/client/components/BackTop/BackTop.css +47 -0
  226. package/dist/level5/client/components/BackTop/BackTop.d.ts +24 -0
  227. package/dist/level5/client/components/BackTop/BackTop.ts +100 -0
  228. package/dist/level5/client/components/Badge/Badge.css +49 -0
  229. package/dist/level5/client/components/Badge/Badge.d.ts +15 -0
  230. package/dist/level5/client/components/Badge/Badge.ts +41 -0
  231. package/dist/level5/client/components/Breadcrumb/Breadcrumb.css +39 -0
  232. package/dist/level5/client/components/Breadcrumb/Breadcrumb.d.ts +10 -0
  233. package/dist/level5/client/components/Breadcrumb/Breadcrumb.ts +33 -0
  234. package/dist/level5/client/components/Button/Button.css +65 -0
  235. package/dist/level5/client/components/Button/Button.d.ts +26 -0
  236. package/dist/level5/client/components/Button/Button.ts +49 -0
  237. package/dist/level5/client/components/Calendar/Calendar.css +144 -0
  238. package/dist/level5/client/components/Calendar/Calendar.d.ts +22 -0
  239. package/dist/level5/client/components/Calendar/Calendar.ts +123 -0
  240. package/dist/level5/client/components/Card/Card.css +40 -0
  241. package/dist/level5/client/components/Card/Card.d.ts +20 -0
  242. package/dist/level5/client/components/Card/Card.ts +54 -0
  243. package/dist/level5/client/components/Carousel/Carousel.css +122 -0
  244. package/dist/level5/client/components/Carousel/Carousel.d.ts +18 -0
  245. package/dist/level5/client/components/Carousel/Carousel.ts +130 -0
  246. package/dist/level5/client/components/Cascader/Cascader.css +198 -0
  247. package/dist/level5/client/components/Cascader/Cascader.d.ts +26 -0
  248. package/dist/level5/client/components/Cascader/Cascader.ts +308 -0
  249. package/dist/level5/client/components/Chart/Chart.css +84 -0
  250. package/dist/level5/client/components/Chart/Chart.d.ts +16 -0
  251. package/dist/level5/client/components/Chart/Chart.ts +331 -0
  252. package/dist/level5/client/components/Chart/chart-utils.ts +178 -0
  253. package/dist/level5/client/components/ChatInput/ChatInput.css +36 -0
  254. package/dist/level5/client/components/ChatInput/ChatInput.d.ts +69 -0
  255. package/dist/level5/client/components/ChatInput/ChatInput.ts +174 -0
  256. package/dist/level5/client/components/Checkbox/Checkbox.css +58 -0
  257. package/dist/level5/client/components/Checkbox/Checkbox.d.ts +9 -0
  258. package/dist/level5/client/components/Checkbox/Checkbox.ts +34 -0
  259. package/dist/level5/client/components/CheckboxGroup/CheckboxGroup.css +29 -0
  260. package/dist/level5/client/components/CheckboxGroup/CheckboxGroup.d.ts +24 -0
  261. package/dist/level5/client/components/CheckboxGroup/CheckboxGroup.ts +73 -0
  262. package/dist/level5/client/components/CitationCard/CitationCard.css +146 -0
  263. package/dist/level5/client/components/CitationCard/CitationCard.d.ts +39 -0
  264. package/dist/level5/client/components/CitationCard/CitationCard.ts +112 -0
  265. package/dist/level5/client/components/CodeBlock/CodeBlock.css +83 -0
  266. package/dist/level5/client/components/CodeBlock/CodeBlock.d.ts +15 -0
  267. package/dist/level5/client/components/CodeBlock/CodeBlock.ts +72 -0
  268. package/dist/level5/client/components/CodeBlock/highlight.ts +82 -0
  269. package/dist/level5/client/components/CodeEditor/CodeEditor.css +17 -0
  270. package/dist/level5/client/components/CodeEditor/CodeEditor.d.ts +19 -0
  271. package/dist/level5/client/components/CodeEditor/CodeEditor.ts +78 -0
  272. package/dist/level5/client/components/Collapse/Collapse.css +82 -0
  273. package/dist/level5/client/components/Collapse/Collapse.d.ts +29 -0
  274. package/dist/level5/client/components/Collapse/Collapse.ts +121 -0
  275. package/dist/level5/client/components/ColorPicker/ColorPicker.css +131 -0
  276. package/dist/level5/client/components/ColorPicker/ColorPicker.d.ts +17 -0
  277. package/dist/level5/client/components/ColorPicker/ColorPicker.ts +100 -0
  278. package/dist/level5/client/components/Command/Command.css +93 -0
  279. package/dist/level5/client/components/Command/Command.d.ts +23 -0
  280. package/dist/level5/client/components/Command/Command.ts +143 -0
  281. package/dist/level5/client/components/Confirm/Confirm.d.ts +40 -0
  282. package/dist/level5/client/components/Confirm/Confirm.ts +131 -0
  283. package/dist/level5/client/components/ContextMenu/ContextMenu.css +71 -0
  284. package/dist/level5/client/components/ContextMenu/ContextMenu.d.ts +20 -0
  285. package/dist/level5/client/components/ContextMenu/ContextMenu.ts +126 -0
  286. package/dist/level5/client/components/CopyButton/CopyButton.css +44 -0
  287. package/dist/level5/client/components/CopyButton/CopyButton.d.ts +19 -0
  288. package/dist/level5/client/components/CopyButton/CopyButton.ts +72 -0
  289. package/dist/level5/client/components/CronPicker/CronPicker.css +1 -0
  290. package/dist/level5/client/components/CronPicker/CronPicker.d.ts +31 -0
  291. package/dist/level5/client/components/CronPicker/CronPicker.ts +66 -0
  292. package/dist/level5/client/components/DatePicker/DatePicker.css +303 -0
  293. package/dist/level5/client/components/DatePicker/DatePicker.d.ts +21 -0
  294. package/dist/level5/client/components/DatePicker/DatePicker.ts +343 -0
  295. package/dist/level5/client/components/DatePicker/calendar-utils.ts +122 -0
  296. package/dist/level5/client/components/Descriptions/Descriptions.css +53 -0
  297. package/dist/level5/client/components/Descriptions/Descriptions.d.ts +22 -0
  298. package/dist/level5/client/components/Descriptions/Descriptions.ts +45 -0
  299. package/dist/level5/client/components/DiffView/DiffView.css +99 -0
  300. package/dist/level5/client/components/DiffView/DiffView.d.ts +25 -0
  301. package/dist/level5/client/components/DiffView/DiffView.ts +120 -0
  302. package/dist/level5/client/components/DiffView/diff-utils.ts +89 -0
  303. package/dist/level5/client/components/Divider/Divider.css +41 -0
  304. package/dist/level5/client/components/Divider/Divider.d.ts +7 -0
  305. package/dist/level5/client/components/Divider/Divider.ts +24 -0
  306. package/dist/level5/client/components/Drawer/Drawer.css +150 -0
  307. package/dist/level5/client/components/Drawer/Drawer.d.ts +20 -0
  308. package/dist/level5/client/components/Drawer/Drawer.ts +77 -0
  309. package/dist/level5/client/components/DropZone/DropZone.css +9 -0
  310. package/dist/level5/client/components/DropZone/DropZone.d.ts +28 -0
  311. package/dist/level5/client/components/DropZone/DropZone.ts +73 -0
  312. package/dist/level5/client/components/Dropdown/Dropdown.css +70 -0
  313. package/dist/level5/client/components/Dropdown/Dropdown.d.ts +23 -0
  314. package/dist/level5/client/components/Dropdown/Dropdown.ts +120 -0
  315. package/dist/level5/client/components/Editor/Editor.css +489 -0
  316. package/dist/level5/client/components/Editor/Editor.d.ts +15 -0
  317. package/dist/level5/client/components/Editor/Editor.ts +1053 -0
  318. package/dist/level5/client/components/Editor/edit-events.ts +86 -0
  319. package/dist/level5/client/components/Editor/model/apply.ts +269 -0
  320. package/dist/level5/client/components/Editor/model/diff.ts +102 -0
  321. package/dist/level5/client/components/Editor/model/dom.ts +197 -0
  322. package/dist/level5/client/components/Editor/model/history.ts +53 -0
  323. package/dist/level5/client/components/Editor/model/html.ts +282 -0
  324. package/dist/level5/client/components/Editor/model/inverse.ts +150 -0
  325. package/dist/level5/client/components/Editor/model/types.ts +89 -0
  326. package/dist/level5/client/components/Editor/tools/table.ts +66 -0
  327. package/dist/level5/client/components/Editor/tools/toolbar.d.ts +10 -0
  328. package/dist/level5/client/components/Editor/tools/toolbar.ts +112 -0
  329. package/dist/level5/client/components/Editor/tools/types.ts +54 -0
  330. package/dist/level5/client/components/EmptyState/EmptyState.css +36 -0
  331. package/dist/level5/client/components/EmptyState/EmptyState.d.ts +10 -0
  332. package/dist/level5/client/components/EmptyState/EmptyState.ts +27 -0
  333. package/dist/level5/client/components/ExportCSV/ExportCSV.css +1 -0
  334. package/dist/level5/client/components/ExportCSV/ExportCSV.d.ts +31 -0
  335. package/dist/level5/client/components/ExportCSV/ExportCSV.ts +60 -0
  336. package/dist/level5/client/components/Field/Field.css +44 -0
  337. package/dist/level5/client/components/Field/Field.d.ts +10 -0
  338. package/dist/level5/client/components/Field/Field.ts +35 -0
  339. package/dist/level5/client/components/FilePreview/FilePreview.css +77 -0
  340. package/dist/level5/client/components/FilePreview/FilePreview.d.ts +43 -0
  341. package/dist/level5/client/components/FilePreview/FilePreview.ts +413 -0
  342. package/dist/level5/client/components/FilePreview/markdown.ts +0 -0
  343. package/dist/level5/client/components/FileTree/FileTree.css +154 -0
  344. package/dist/level5/client/components/FileTree/FileTree.d.ts +58 -0
  345. package/dist/level5/client/components/FileTree/FileTree.ts +161 -0
  346. package/dist/level5/client/components/FileUpload/FileUpload.css +170 -0
  347. package/dist/level5/client/components/FileUpload/FileUpload.d.ts +21 -0
  348. package/dist/level5/client/components/FileUpload/FileUpload.ts +169 -0
  349. package/dist/level5/client/components/FloatButton/FloatButton.css +121 -0
  350. package/dist/level5/client/components/FloatButton/FloatButton.d.ts +35 -0
  351. package/dist/level5/client/components/FloatButton/FloatButton.ts +80 -0
  352. package/dist/level5/client/components/Form/Form.css +7 -0
  353. package/dist/level5/client/components/Form/Form.d.ts +23 -0
  354. package/dist/level5/client/components/Form/Form.ts +105 -0
  355. package/dist/level5/client/components/Grid/Grid.css +22 -0
  356. package/dist/level5/client/components/Grid/Grid.d.ts +35 -0
  357. package/dist/level5/client/components/Grid/Grid.ts +80 -0
  358. package/dist/level5/client/components/Highlight/Highlight.css +9 -0
  359. package/dist/level5/client/components/Highlight/Highlight.d.ts +14 -0
  360. package/dist/level5/client/components/Highlight/Highlight.ts +47 -0
  361. package/dist/level5/client/components/HoverCard/HoverCard.css +43 -0
  362. package/dist/level5/client/components/HoverCard/HoverCard.d.ts +24 -0
  363. package/dist/level5/client/components/HoverCard/HoverCard.ts +102 -0
  364. package/dist/level5/client/components/Icon/Icon.css +7 -0
  365. package/dist/level5/client/components/Icon/Icon.d.ts +20 -0
  366. package/dist/level5/client/components/Icon/Icon.ts +154 -0
  367. package/dist/level5/client/components/ImageCropper/ImageCropper.css +3 -0
  368. package/dist/level5/client/components/ImageCropper/ImageCropper.d.ts +22 -0
  369. package/dist/level5/client/components/ImageCropper/ImageCropper.ts +156 -0
  370. package/dist/level5/client/components/Img/Img.css +42 -0
  371. package/dist/level5/client/components/Img/Img.d.ts +27 -0
  372. package/dist/level5/client/components/Img/Img.ts +143 -0
  373. package/dist/level5/client/components/InView/InView.css +28 -0
  374. package/dist/level5/client/components/InView/InView.d.ts +17 -0
  375. package/dist/level5/client/components/InView/InView.ts +65 -0
  376. package/dist/level5/client/components/InfiniteScroll/InfiniteScroll.css +17 -0
  377. package/dist/level5/client/components/InfiniteScroll/InfiniteScroll.d.ts +18 -0
  378. package/dist/level5/client/components/InfiniteScroll/InfiniteScroll.ts +61 -0
  379. package/dist/level5/client/components/Input/Input.css +82 -0
  380. package/dist/level5/client/components/Input/Input.d.ts +31 -0
  381. package/dist/level5/client/components/Input/Input.ts +78 -0
  382. package/dist/level5/client/components/InputNumber/InputNumber.css +74 -0
  383. package/dist/level5/client/components/InputNumber/InputNumber.d.ts +26 -0
  384. package/dist/level5/client/components/InputNumber/InputNumber.ts +140 -0
  385. package/dist/level5/client/components/JSONViewer/JSONViewer.css +147 -0
  386. package/dist/level5/client/components/JSONViewer/JSONViewer.d.ts +22 -0
  387. package/dist/level5/client/components/JSONViewer/JSONViewer.ts +253 -0
  388. package/dist/level5/client/components/JsonSchemaForm/JsonSchemaForm.css +88 -0
  389. package/dist/level5/client/components/JsonSchemaForm/JsonSchemaForm.d.ts +49 -0
  390. package/dist/level5/client/components/JsonSchemaForm/JsonSchemaForm.ts +288 -0
  391. package/dist/level5/client/components/Kanban/Kanban.css +86 -0
  392. package/dist/level5/client/components/Kanban/Kanban.d.ts +29 -0
  393. package/dist/level5/client/components/Kanban/Kanban.ts +120 -0
  394. package/dist/level5/client/components/Label/Label.css +16 -0
  395. package/dist/level5/client/components/Label/Label.d.ts +12 -0
  396. package/dist/level5/client/components/Label/Label.ts +26 -0
  397. package/dist/level5/client/components/Layout/Layout.css +103 -0
  398. package/dist/level5/client/components/Layout/Layout.d.ts +61 -0
  399. package/dist/level5/client/components/Layout/Layout.ts +120 -0
  400. package/dist/level5/client/components/Link/Link.css +51 -0
  401. package/dist/level5/client/components/Link/Link.d.ts +23 -0
  402. package/dist/level5/client/components/Link/Link.ts +47 -0
  403. package/dist/level5/client/components/List/List.css +45 -0
  404. package/dist/level5/client/components/List/List.d.ts +22 -0
  405. package/dist/level5/client/components/List/List.ts +40 -0
  406. package/dist/level5/client/components/ListScaffold/ListScaffold.css +1 -0
  407. package/dist/level5/client/components/ListScaffold/ListScaffold.d.ts +40 -0
  408. package/dist/level5/client/components/ListScaffold/ListScaffold.ts +56 -0
  409. package/dist/level5/client/components/Loading/Loading.css +29 -0
  410. package/dist/level5/client/components/Loading/Loading.d.ts +6 -0
  411. package/dist/level5/client/components/Loading/Loading.ts +18 -0
  412. package/dist/level5/client/components/LogViewer/LogViewer.css +99 -0
  413. package/dist/level5/client/components/LogViewer/LogViewer.d.ts +30 -0
  414. package/dist/level5/client/components/LogViewer/LogViewer.ts +161 -0
  415. package/dist/level5/client/components/Markdown/Markdown.css +105 -0
  416. package/dist/level5/client/components/Markdown/Markdown.d.ts +15 -0
  417. package/dist/level5/client/components/Markdown/Markdown.ts +89 -0
  418. package/dist/level5/client/components/Markdown/parser.ts +276 -0
  419. package/dist/level5/client/components/MarkdownEditor/MarkdownEditor.css +8 -0
  420. package/dist/level5/client/components/MarkdownEditor/MarkdownEditor.d.ts +19 -0
  421. package/dist/level5/client/components/MarkdownEditor/MarkdownEditor.ts +60 -0
  422. package/dist/level5/client/components/Math/Math.css +18 -0
  423. package/dist/level5/client/components/Math/Math.d.ts +16 -0
  424. package/dist/level5/client/components/Math/Math.ts +126 -0
  425. package/dist/level5/client/components/Mentions/Mentions.css +76 -0
  426. package/dist/level5/client/components/Mentions/Mentions.d.ts +20 -0
  427. package/dist/level5/client/components/Mentions/Mentions.ts +166 -0
  428. package/dist/level5/client/components/Menu/Menu.css +190 -0
  429. package/dist/level5/client/components/Menu/Menu.d.ts +37 -0
  430. package/dist/level5/client/components/Menu/Menu.ts +272 -0
  431. package/dist/level5/client/components/Menubar/Menubar.css +104 -0
  432. package/dist/level5/client/components/Menubar/Menubar.d.ts +23 -0
  433. package/dist/level5/client/components/Menubar/Menubar.ts +164 -0
  434. package/dist/level5/client/components/MessageBubble/MessageBubble.css +33 -0
  435. package/dist/level5/client/components/MessageBubble/MessageBubble.d.ts +21 -0
  436. package/dist/level5/client/components/MessageBubble/MessageBubble.ts +49 -0
  437. package/dist/level5/client/components/Modal/Modal.css +121 -0
  438. package/dist/level5/client/components/Modal/Modal.d.ts +23 -0
  439. package/dist/level5/client/components/Modal/Modal.ts +80 -0
  440. package/dist/level5/client/components/NavBar/NavBar.css +43 -0
  441. package/dist/level5/client/components/NavBar/NavBar.d.ts +33 -0
  442. package/dist/level5/client/components/NavBar/NavBar.ts +47 -0
  443. package/dist/level5/client/components/NavMenu/NavMenu.css +109 -0
  444. package/dist/level5/client/components/NavMenu/NavMenu.d.ts +28 -0
  445. package/dist/level5/client/components/NavMenu/NavMenu.ts +291 -0
  446. package/dist/level5/client/components/Notification/Notification.css +102 -0
  447. package/dist/level5/client/components/Notification/Notification.d.ts +74 -0
  448. package/dist/level5/client/components/Notification/Notification.ts +252 -0
  449. package/dist/level5/client/components/OfficeEditor/ai/ai-bridge.ts +104 -0
  450. package/dist/level5/client/components/OfficeEditor/model/apply.ts +274 -0
  451. package/dist/level5/client/components/OfficeEditor/model/types.ts +184 -0
  452. package/dist/level5/client/components/PageHeader/PageHeader.css +44 -0
  453. package/dist/level5/client/components/PageHeader/PageHeader.d.ts +10 -0
  454. package/dist/level5/client/components/PageHeader/PageHeader.ts +24 -0
  455. package/dist/level5/client/components/Pagination/Pagination.css +69 -0
  456. package/dist/level5/client/components/Pagination/Pagination.d.ts +9 -0
  457. package/dist/level5/client/components/Pagination/Pagination.ts +84 -0
  458. package/dist/level5/client/components/PasswordInput/PasswordInput.css +26 -0
  459. package/dist/level5/client/components/PasswordInput/PasswordInput.d.ts +22 -0
  460. package/dist/level5/client/components/PasswordInput/PasswordInput.ts +84 -0
  461. package/dist/level5/client/components/PinInput/PinInput.css +35 -0
  462. package/dist/level5/client/components/PinInput/PinInput.d.ts +19 -0
  463. package/dist/level5/client/components/PinInput/PinInput.ts +133 -0
  464. package/dist/level5/client/components/Pipeline/Pipeline.css +70 -0
  465. package/dist/level5/client/components/Pipeline/Pipeline.d.ts +28 -0
  466. package/dist/level5/client/components/Pipeline/Pipeline.ts +83 -0
  467. package/dist/level5/client/components/Pipeline/dag-utils.ts +151 -0
  468. package/dist/level5/client/components/Popconfirm/Popconfirm.css +73 -0
  469. package/dist/level5/client/components/Popconfirm/Popconfirm.d.ts +35 -0
  470. package/dist/level5/client/components/Popconfirm/Popconfirm.ts +119 -0
  471. package/dist/level5/client/components/Popover/Popover.css +56 -0
  472. package/dist/level5/client/components/Popover/Popover.d.ts +21 -0
  473. package/dist/level5/client/components/Popover/Popover.ts +105 -0
  474. package/dist/level5/client/components/ProgressBar/ProgressBar.css +59 -0
  475. package/dist/level5/client/components/ProgressBar/ProgressBar.d.ts +14 -0
  476. package/dist/level5/client/components/ProgressBar/ProgressBar.ts +49 -0
  477. package/dist/level5/client/components/PromptTemplate/PromptTemplate.css +95 -0
  478. package/dist/level5/client/components/PromptTemplate/PromptTemplate.d.ts +38 -0
  479. package/dist/level5/client/components/PromptTemplate/PromptTemplate.ts +118 -0
  480. package/dist/level5/client/components/QRCode/QRCode.css +4 -0
  481. package/dist/level5/client/components/QRCode/QRCode.d.ts +21 -0
  482. package/dist/level5/client/components/QRCode/QRCode.ts +66 -0
  483. package/dist/level5/client/components/QRCode/qr.ts +331 -0
  484. package/dist/level5/client/components/RadioGroup/RadioGroup.css +61 -0
  485. package/dist/level5/client/components/RadioGroup/RadioGroup.d.ts +15 -0
  486. package/dist/level5/client/components/RadioGroup/RadioGroup.ts +56 -0
  487. package/dist/level5/client/components/Rate/Rate.css +98 -0
  488. package/dist/level5/client/components/Rate/Rate.d.ts +19 -0
  489. package/dist/level5/client/components/Rate/Rate.ts +124 -0
  490. package/dist/level5/client/components/ReasoningBlock/ReasoningBlock.css +68 -0
  491. package/dist/level5/client/components/ReasoningBlock/ReasoningBlock.d.ts +26 -0
  492. package/dist/level5/client/components/ReasoningBlock/ReasoningBlock.ts +59 -0
  493. package/dist/level5/client/components/RelationGraph/RelationGraph.css +67 -0
  494. package/dist/level5/client/components/RelationGraph/RelationGraph.d.ts +60 -0
  495. package/dist/level5/client/components/RelationGraph/RelationGraph.ts +222 -0
  496. package/dist/level5/client/components/Resizable/Resizable.css +51 -0
  497. package/dist/level5/client/components/Resizable/Resizable.d.ts +21 -0
  498. package/dist/level5/client/components/Resizable/Resizable.ts +87 -0
  499. package/dist/level5/client/components/Result/Result.css +44 -0
  500. package/dist/level5/client/components/Result/Result.d.ts +18 -0
  501. package/dist/level5/client/components/Result/Result.ts +43 -0
  502. package/dist/level5/client/components/Scrollbar/Scrollbar.css +27 -0
  503. package/dist/level5/client/components/Scrollbar/Scrollbar.d.ts +22 -0
  504. package/dist/level5/client/components/Scrollbar/Scrollbar.ts +41 -0
  505. package/dist/level5/client/components/SearchInput/SearchInput.css +72 -0
  506. package/dist/level5/client/components/SearchInput/SearchInput.d.ts +19 -0
  507. package/dist/level5/client/components/SearchInput/SearchInput.ts +69 -0
  508. package/dist/level5/client/components/SegmentedControl/SegmentedControl.css +76 -0
  509. package/dist/level5/client/components/SegmentedControl/SegmentedControl.d.ts +23 -0
  510. package/dist/level5/client/components/SegmentedControl/SegmentedControl.ts +57 -0
  511. package/dist/level5/client/components/Select/Select.css +202 -0
  512. package/dist/level5/client/components/Select/Select.d.ts +35 -0
  513. package/dist/level5/client/components/Select/Select.ts +318 -0
  514. package/dist/level5/client/components/SessionList/SessionList.css +152 -0
  515. package/dist/level5/client/components/SessionList/SessionList.d.ts +43 -0
  516. package/dist/level5/client/components/SessionList/SessionList.ts +196 -0
  517. package/dist/level5/client/components/SheetGrid/SheetGrid.css +174 -0
  518. package/dist/level5/client/components/SheetGrid/SheetGrid.d.ts +31 -0
  519. package/dist/level5/client/components/SheetGrid/SheetGrid.ts +373 -0
  520. package/dist/level5/client/components/Skeleton/Skeleton.css +79 -0
  521. package/dist/level5/client/components/Skeleton/Skeleton.d.ts +15 -0
  522. package/dist/level5/client/components/Skeleton/Skeleton.ts +62 -0
  523. package/dist/level5/client/components/SlideCanvas/SlideCanvas.css +172 -0
  524. package/dist/level5/client/components/SlideCanvas/SlideCanvas.d.ts +29 -0
  525. package/dist/level5/client/components/SlideCanvas/SlideCanvas.ts +426 -0
  526. package/dist/level5/client/components/Slider/Slider.css +233 -0
  527. package/dist/level5/client/components/Slider/Slider.d.ts +28 -0
  528. package/dist/level5/client/components/Slider/Slider.ts +291 -0
  529. package/dist/level5/client/components/SortableList/SortableList.css +27 -0
  530. package/dist/level5/client/components/SortableList/SortableList.d.ts +24 -0
  531. package/dist/level5/client/components/SortableList/SortableList.ts +84 -0
  532. package/dist/level5/client/components/Space/Space.css +15 -0
  533. package/dist/level5/client/components/Space/Space.d.ts +17 -0
  534. package/dist/level5/client/components/Space/Space.ts +55 -0
  535. package/dist/level5/client/components/Sparkline/Sparkline.css +5 -0
  536. package/dist/level5/client/components/Sparkline/Sparkline.d.ts +24 -0
  537. package/dist/level5/client/components/Sparkline/Sparkline.ts +77 -0
  538. package/dist/level5/client/components/Sparkline/sparkline-utils.ts +58 -0
  539. package/dist/level5/client/components/StatCard/StatCard.css +62 -0
  540. package/dist/level5/client/components/StatCard/StatCard.d.ts +20 -0
  541. package/dist/level5/client/components/StatCard/StatCard.ts +127 -0
  542. package/dist/level5/client/components/StatusDot/StatusDot.css +1 -0
  543. package/dist/level5/client/components/StatusDot/StatusDot.d.ts +25 -0
  544. package/dist/level5/client/components/StatusDot/StatusDot.ts +43 -0
  545. package/dist/level5/client/components/Steps/Steps.css +72 -0
  546. package/dist/level5/client/components/Steps/Steps.d.ts +13 -0
  547. package/dist/level5/client/components/Steps/Steps.ts +63 -0
  548. package/dist/level5/client/components/Switch/Switch.css +63 -0
  549. package/dist/level5/client/components/Switch/Switch.d.ts +9 -0
  550. package/dist/level5/client/components/Switch/Switch.ts +37 -0
  551. package/dist/level5/client/components/TabBar/TabBar.css +101 -0
  552. package/dist/level5/client/components/TabBar/TabBar.d.ts +36 -0
  553. package/dist/level5/client/components/TabBar/TabBar.ts +112 -0
  554. package/dist/level5/client/components/Table/Table.css +141 -0
  555. package/dist/level5/client/components/Table/Table.d.ts +49 -0
  556. package/dist/level5/client/components/Table/Table.ts +288 -0
  557. package/dist/level5/client/components/Tabs/Tabs.css +115 -0
  558. package/dist/level5/client/components/Tabs/Tabs.d.ts +23 -0
  559. package/dist/level5/client/components/Tabs/Tabs.ts +149 -0
  560. package/dist/level5/client/components/Tag/Tag.css +46 -0
  561. package/dist/level5/client/components/Tag/Tag.d.ts +9 -0
  562. package/dist/level5/client/components/Tag/Tag.ts +25 -0
  563. package/dist/level5/client/components/TagsInput/TagsInput.css +72 -0
  564. package/dist/level5/client/components/TagsInput/TagsInput.d.ts +22 -0
  565. package/dist/level5/client/components/TagsInput/TagsInput.ts +109 -0
  566. package/dist/level5/client/components/Textarea/Textarea.css +55 -0
  567. package/dist/level5/client/components/Textarea/Textarea.d.ts +24 -0
  568. package/dist/level5/client/components/Textarea/Textarea.ts +71 -0
  569. package/dist/level5/client/components/ThemeSwitch/ThemeSwitch.css +72 -0
  570. package/dist/level5/client/components/ThemeSwitch/ThemeSwitch.d.ts +35 -0
  571. package/dist/level5/client/components/ThemeSwitch/ThemeSwitch.ts +148 -0
  572. package/dist/level5/client/components/Timeline/Timeline.css +132 -0
  573. package/dist/level5/client/components/Timeline/Timeline.d.ts +27 -0
  574. package/dist/level5/client/components/Timeline/Timeline.ts +87 -0
  575. package/dist/level5/client/components/Toast/Toast.css +96 -0
  576. package/dist/level5/client/components/Toast/Toast.d.ts +42 -0
  577. package/dist/level5/client/components/Toast/Toast.ts +127 -0
  578. package/dist/level5/client/components/ToggleGroup/ToggleGroup.css +70 -0
  579. package/dist/level5/client/components/ToggleGroup/ToggleGroup.d.ts +34 -0
  580. package/dist/level5/client/components/ToggleGroup/ToggleGroup.ts +121 -0
  581. package/dist/level5/client/components/ToolCallCard/ToolCallCard.css +57 -0
  582. package/dist/level5/client/components/ToolCallCard/ToolCallCard.d.ts +24 -0
  583. package/dist/level5/client/components/ToolCallCard/ToolCallCard.ts +71 -0
  584. package/dist/level5/client/components/Tooltip/Tooltip.css +91 -0
  585. package/dist/level5/client/components/Tooltip/Tooltip.d.ts +18 -0
  586. package/dist/level5/client/components/Tooltip/Tooltip.ts +84 -0
  587. package/dist/level5/client/components/Tour/Tour.css +99 -0
  588. package/dist/level5/client/components/Tour/Tour.d.ts +35 -0
  589. package/dist/level5/client/components/Tour/Tour.ts +232 -0
  590. package/dist/level5/client/components/Transfer/Transfer.css +144 -0
  591. package/dist/level5/client/components/Transfer/Transfer.d.ts +23 -0
  592. package/dist/level5/client/components/Transfer/Transfer.ts +132 -0
  593. package/dist/level5/client/components/Tree/Tree.css +166 -0
  594. package/dist/level5/client/components/Tree/Tree.d.ts +36 -0
  595. package/dist/level5/client/components/Tree/Tree.ts +340 -0
  596. package/dist/level5/client/components/TreeSelect/TreeSelect.css +69 -0
  597. package/dist/level5/client/components/TreeSelect/TreeSelect.d.ts +32 -0
  598. package/dist/level5/client/components/TreeSelect/TreeSelect.ts +176 -0
  599. package/dist/level5/client/components/Typography/Typography.css +68 -0
  600. package/dist/level5/client/components/Typography/Typography.d.ts +40 -0
  601. package/dist/level5/client/components/Typography/Typography.ts +80 -0
  602. package/dist/level5/client/components/VideoPlayer/VideoPlayer.css +3 -0
  603. package/dist/level5/client/components/VideoPlayer/VideoPlayer.d.ts +26 -0
  604. package/dist/level5/client/components/VideoPlayer/VideoPlayer.ts +74 -0
  605. package/dist/level5/client/components/VirtualList/VirtualList.css +29 -0
  606. package/dist/level5/client/components/VirtualList/VirtualList.d.ts +24 -0
  607. package/dist/level5/client/components/VirtualList/VirtualList.ts +103 -0
  608. package/dist/level5/client/components/VirtualTable/VirtualTable.css +164 -0
  609. package/dist/level5/client/components/VirtualTable/VirtualTable.d.ts +41 -0
  610. package/dist/level5/client/components/VirtualTable/VirtualTable.ts +239 -0
  611. package/dist/level5/client/components/Watermark/Watermark.css +13 -0
  612. package/dist/level5/client/components/Watermark/Watermark.d.ts +20 -0
  613. package/dist/level5/client/components/Watermark/Watermark.ts +79 -0
  614. package/dist/level5/client/components/Wave/Wave.css +23 -0
  615. package/dist/level5/client/components/Wave/Wave.d.ts +16 -0
  616. package/dist/level5/client/components/Wave/Wave.ts +51 -0
  617. package/dist/level5/client/components/WordCloud/WordCloud.css +68 -0
  618. package/dist/level5/client/components/WordCloud/WordCloud.d.ts +80 -0
  619. package/dist/level5/client/components/WordCloud/WordCloud.ts +261 -0
  620. package/dist/level5/client/layout/_align-self.css +5 -0
  621. package/dist/level5/client/layout/_app-shell.css +171 -0
  622. package/dist/level5/client/layout/_base.css +275 -0
  623. package/dist/level5/client/layout/_block.css +6 -0
  624. package/dist/level5/client/layout/_border.css +7 -0
  625. package/dist/level5/client/layout/_cluster.css +11 -0
  626. package/dist/level5/client/layout/_container.css +9 -0
  627. package/dist/level5/client/layout/_dark.css +123 -0
  628. package/dist/level5/client/layout/_flex.css +15 -0
  629. package/dist/level5/client/layout/_hidden.css +27 -0
  630. package/dist/level5/client/layout/_layer.css +5 -0
  631. package/dist/level5/client/layout/_nowrap.css +10 -0
  632. package/dist/level5/client/layout/_overflow.css +4 -0
  633. package/dist/level5/client/layout/_popup.css +18 -0
  634. package/dist/level5/client/layout/_position.css +5 -0
  635. package/dist/level5/client/layout/_presets.css +48 -0
  636. package/dist/level5/client/layout/_props.css +26 -0
  637. package/dist/level5/client/layout/_safe-area.css +7 -0
  638. package/dist/level5/client/layout/_shrink.css +11 -0
  639. package/dist/level5/client/layout/_spacing.css +79 -0
  640. package/dist/level5/client/layout/_split.css +12 -0
  641. package/dist/level5/client/layout/_sticky.css +5 -0
  642. package/dist/level5/client/layout/_surface.css +94 -0
  643. package/dist/level5/client/layout/_text.css +75 -0
  644. package/dist/level5/client/layout/_tokens.css +312 -0
  645. package/dist/level5/client/layout/bundle.d.ts +42 -0
  646. package/dist/level5/client/layout/bundle.ts +190 -0
  647. package/dist/level5/client/layout/weifuwu-layout.css +1 -0
  648. package/dist/level5/client/office/docx.ts +509 -0
  649. package/dist/level5/client/office/pptx.ts +255 -0
  650. package/dist/level5/client/office/xlsx.ts +270 -0
  651. package/dist/level5/client/office/xml-serialize.d.ts +18 -0
  652. package/dist/level5/client/office/xml-serialize.ts +79 -0
  653. package/dist/level5/client/office/xml.ts +131 -0
  654. package/dist/level5/client/office/zip.ts +145 -0
  655. package/dist/level5/client/vdom/commands.ts +55 -0
  656. package/dist/level5/client/vdom/middlewares/api.d.ts +39 -0
  657. package/dist/level5/client/vdom/middlewares/api.ts +142 -0
  658. package/dist/level5/client/vdom/middlewares/auth-i18n.d.ts +41 -0
  659. package/dist/level5/client/vdom/middlewares/auth-i18n.ts +145 -0
  660. package/dist/level5/client/vdom/middlewares/ws.d.ts +50 -0
  661. package/dist/level5/client/vdom/middlewares/ws.ts +199 -0
  662. package/dist/level5/sandbox/agent.go +129 -0
  663. package/dist/level5/sandbox/bash.go +116 -0
  664. package/dist/level5/sandbox/go.mod +3 -0
  665. package/dist/level5/sandbox/main.go +141 -0
  666. package/dist/level5/sandbox/tools.go +264 -0
  667. package/dist/level5/sandbox/util.go +11 -0
  668. package/dist/level5/server/ai/agent.ts +330 -0
  669. package/dist/level5/server/ai/approvals.ts +73 -0
  670. package/dist/level5/server/ai/assemble.d.ts +19 -0
  671. package/dist/level5/server/ai/assemble.ts +46 -0
  672. package/dist/level5/server/ai/client.ts +565 -0
  673. package/dist/level5/server/ai/contracts.d.ts +121 -0
  674. package/dist/level5/server/ai/contracts.ts +107 -0
  675. package/dist/level5/server/ai/memory-server.ts +226 -0
  676. package/dist/level5/server/ai/memory.ts +241 -0
  677. package/dist/level5/server/ai/multimodal.ts +184 -0
  678. package/dist/level5/server/ai/openai.ts +41 -0
  679. package/dist/level5/server/ai/sse.ts +99 -0
  680. package/dist/level5/server/ai/types.d.ts +5 -0
  681. package/dist/level5/server/ai/types.ts +5 -0
  682. package/dist/level5/server/db/gql-from-shape.d.ts +23 -0
  683. package/dist/level5/server/db/gql-from-shape.ts +285 -0
  684. package/dist/level5/server/db/memory-redis.d.ts +103 -0
  685. package/dist/level5/server/db/memory-redis.ts +657 -0
  686. package/dist/level5/server/db/postgres/connection.d.ts +90 -0
  687. package/dist/level5/server/db/postgres/connection.ts +704 -0
  688. package/dist/level5/server/db/postgres/pool.ts +421 -0
  689. package/dist/level5/server/db/postgres/protocol.ts +398 -0
  690. package/dist/level5/server/db/postgres/schema.ts +70 -0
  691. package/dist/level5/server/db/redis/ast.ts +53 -0
  692. package/dist/level5/server/db/redis/client.d.ts +93 -0
  693. package/dist/level5/server/db/redis/client.ts +250 -0
  694. package/dist/level5/server/db/redis/commands.ts +184 -0
  695. package/dist/level5/server/db/redis/connection.ts +424 -0
  696. package/dist/level5/server/db/redis/pipeline.ts +71 -0
  697. package/dist/level5/server/db/redis/pool.d.ts +85 -0
  698. package/dist/level5/server/db/redis/pool.ts +361 -0
  699. package/dist/level5/server/db/redis/resp.d.ts +47 -0
  700. package/dist/level5/server/db/redis/resp.ts +246 -0
  701. package/dist/level5/server/db/redis/subscriber.d.ts +18 -0
  702. package/dist/level5/server/db/redis/subscriber.ts +35 -0
  703. package/dist/level5/server/db/redis-server.ts +347 -0
  704. package/dist/level5/server/db/rest-from-shape.d.ts +32 -0
  705. package/dist/level5/server/db/rest-from-shape.ts +138 -0
  706. package/dist/level5/server/db/server.ts +29 -0
  707. package/dist/level5/server/email/api.ts +77 -0
  708. package/dist/level5/server/email/contracts.ts +49 -0
  709. package/dist/level5/server/email/memory-email-server.ts +129 -0
  710. package/dist/level5/server/email/memory-email.d.ts +30 -0
  711. package/dist/level5/server/email/memory-email.ts +53 -0
  712. package/dist/level5/server/make-executable-schema.ts +40 -0
  713. package/dist/level5/server/middleware/compress.d.ts +25 -0
  714. package/dist/level5/server/middleware/compress.ts +91 -0
  715. package/dist/level5/server/middleware/cors.d.ts +25 -0
  716. package/dist/level5/server/middleware/cors.ts +81 -0
  717. package/dist/level5/server/middleware/graphql.d.ts +29 -0
  718. package/dist/level5/server/middleware/graphql.ts +429 -0
  719. package/dist/level5/server/middleware/rate-limit.d.ts +72 -0
  720. package/dist/level5/server/middleware/rate-limit.ts +222 -0
  721. package/dist/level5/server/middleware/static.d.ts +28 -0
  722. package/dist/level5/server/middleware/static.ts +205 -0
  723. package/dist/level5/server/postgres/client.ts +218 -0
  724. package/dist/level5/server/postgres/types.d.ts +80 -0
  725. package/dist/level5/server/postgres/types.ts +70 -0
  726. package/dist/level5/server/redis/client.ts +70 -0
  727. package/dist/level5/server/redis/types.d.ts +34 -0
  728. package/dist/level5/server/redis/types.ts +39 -0
  729. package/dist/level5/server/request.d.ts +23 -0
  730. package/dist/level5/server/request.ts +37 -0
  731. package/dist/level5/server/scheduler/cron.ts +182 -0
  732. package/dist/level5/server/ui/html-safe.ts +14 -0
  733. package/dist/level5/server/user/app-auth.d.ts +74 -0
  734. package/dist/level5/server/user/app-auth.ts +148 -0
  735. package/dist/level5/server/user/password.ts +38 -0
  736. package/dist/level5/server/user/token.ts +52 -0
  737. package/dist/level5/server/workflow/contracts.ts +202 -0
  738. package/dist/level5/server/workflow/expression.ts +489 -0
  739. package/dist/level5/server/workflow/runner.ts +350 -0
  740. package/dist/level5/server/workflow/std.ts +110 -0
  741. package/dist/level5/server/workflow/steps.ts +191 -0
  742. package/dist/level5/server/workflow/store.d.ts +19 -0
  743. package/dist/level5/server/workflow/store.ts +30 -0
  744. package/dist/level5/server/workflow/tojs.ts +248 -0
  745. package/dist/level5/server/workflow/validate.ts +245 -0
  746. package/dist/level5/server/workflow/views.ts +238 -0
  747. package/dist/level5/server/workflow/wfjs.ts +1015 -0
  748. package/dist/level5/server/workflows/cron.ts +80 -0
  749. package/dist/level5/server/ws/native/connection.d.ts +62 -0
  750. package/dist/level5/server/ws/native/connection.ts +287 -0
  751. package/dist/level5/server/ws/native/frame.d.ts +42 -0
  752. package/dist/level5/server/ws/native/frame.ts +120 -0
  753. package/dist/level5/server/ws/native/index.d.ts +5 -0
  754. package/dist/level5/server/ws/native/index.ts +5 -0
  755. package/dist/level5/server/ws/native/server.d.ts +8 -0
  756. package/dist/level5/server/ws/native/server.ts +92 -0
  757. package/dist/level6/apps/agent-platform/.env.example +32 -0
  758. package/dist/level6/apps/agent-platform/AI-EXPERIENCE-PLAN.md +124 -0
  759. package/dist/level6/apps/agent-platform/Dockerfile +37 -0
  760. package/dist/level6/apps/agent-platform/Dockerfile.sandbox +47 -0
  761. package/dist/level6/apps/agent-platform/IDEA.md +28 -0
  762. package/dist/level6/apps/agent-platform/OPTIMIZE-PLAN-2.md +66 -0
  763. package/dist/level6/apps/agent-platform/OPTIMIZE-PLAN-3.md +51 -0
  764. package/dist/level6/apps/agent-platform/ORCHESTRATION-PLAN.md +163 -0
  765. package/dist/level6/apps/agent-platform/README.md +213 -0
  766. package/dist/level6/apps/agent-platform/ROADMAP.md +59 -0
  767. package/dist/level6/apps/agent-platform/SANDBOX-AGENT-PLAN.md +125 -0
  768. package/dist/level6/apps/agent-platform/SANDBOX-TEST-PLAN.md +107 -0
  769. package/dist/level6/apps/agent-platform/UI-ROLE-TEST-PLAN.md +189 -0
  770. package/dist/level6/apps/agent-platform/cli.js +3 -0
  771. package/dist/level6/apps/agent-platform/design/AGENT-PLATFORM-UX-PLAN-2.md +122 -0
  772. package/dist/level6/apps/agent-platform/design/AGENT-PLATFORM-UX-PLAN.md +106 -0
  773. package/dist/level6/apps/agent-platform/design/AGENT-TYPES-OPTIMIZE-PLAN.md +94 -0
  774. package/dist/level6/apps/agent-platform/design/BUSINESS-SCENARIO-PLAN.md +114 -0
  775. package/dist/level6/apps/agent-platform/design/CHAT-INTERACTION-PLAN.md +125 -0
  776. package/dist/level6/apps/agent-platform/design/CHAT-UX-PLAN.md +137 -0
  777. package/dist/level6/apps/agent-platform/design/DELIVERABLES-UX-PLAN.md +53 -0
  778. package/dist/level6/apps/agent-platform/design/OPTIMIZE-PLAN-4.md +22 -0
  779. package/dist/level6/apps/agent-platform/design/ROLES-OPTIMIZATION-PLAN.md +141 -0
  780. package/dist/level6/apps/agent-platform/design/ROLES.md +170 -0
  781. package/dist/level6/apps/agent-platform/design/SURVEY-BOTS-PLAN.md +149 -0
  782. package/dist/level6/apps/agent-platform/docs/archive/AGENT-PERSONA-PLAN.md +164 -0
  783. package/dist/level6/apps/agent-platform/docs/archive/AGENT-TYPES-PLAN.md +75 -0
  784. package/dist/level6/apps/agent-platform/docs/archive/AGENT-TYPES-RESULTS.md +36 -0
  785. package/dist/level6/apps/agent-platform/docs/archive/COMMERCIAL-PLAN.md +202 -0
  786. package/dist/level6/apps/agent-platform/docs/archive/COMMERCIAL-RISKS.md +231 -0
  787. package/dist/level6/apps/agent-platform/docs/archive/COMPETITIVE-PLAN.md +197 -0
  788. package/dist/level6/apps/agent-platform/docs/archive/MULTI-AGENT-PLAN.md +177 -0
  789. package/dist/level6/apps/agent-platform/docs/archive/MULTI-ROLE-PLAN.md +185 -0
  790. package/dist/level6/apps/agent-platform/docs/archive/OPTIMIZE-PLAN.md +50 -0
  791. package/dist/level6/apps/agent-platform/docs/archive/PLAN.md +215 -0
  792. package/dist/level6/apps/agent-platform/docs/archive/PM-OPTIMIZE-PLAN.md +44 -0
  793. package/dist/level6/apps/agent-platform/docs/archive/README.md +12 -0
  794. package/dist/level6/apps/agent-platform/docs/archive/SANDBOX-LIFECYCLE-PLAN.md +260 -0
  795. package/dist/level6/apps/agent-platform/docs/archive/SANDBOX-PLAN.md +207 -0
  796. package/dist/level6/apps/agent-platform/docs/archive/SANDBOX-TASKS.md +165 -0
  797. package/dist/level6/apps/agent-platform/docs/archive/STREAM-TRANSPORT.md +81 -0
  798. package/dist/level6/apps/agent-platform/docs/archive/SURVEY-DEMO-ENHANCE-PLAN.md +145 -0
  799. package/dist/level6/apps/agent-platform/docs/archive/TEST-PLAN.md +428 -0
  800. package/dist/level6/apps/agent-platform/docs/archive/THREE-LAYER-REFACTOR-PLAN.md +197 -0
  801. package/dist/level6/apps/agent-platform/docs/archive/UI-REFACTOR-PLAN.md +44 -0
  802. package/dist/level6/apps/agent-platform/docs/archive/VERIFY-RESULTS.md +91 -0
  803. package/dist/level6/apps/agent-platform/docs/archive/WEBHOOK-OPTIMIZE-PLAN.md +61 -0
  804. package/dist/level6/apps/agent-platform/docs/archive/WEBHOOK-OPTIMIZE-RESULTS.md +34 -0
  805. package/dist/level6/apps/agent-platform/docs/blind-test.md +46 -0
  806. package/dist/level6/apps/agent-platform/docs/compliance.md +42 -0
  807. package/dist/level6/apps/agent-platform/docs/demo-script.md +75 -0
  808. package/dist/level6/apps/agent-platform/docs/deployment.md +109 -0
  809. package/dist/level6/apps/agent-platform/docs/permissions.md +49 -0
  810. package/dist/level6/apps/agent-platform/docs/positioning.md +59 -0
  811. package/dist/level6/apps/agent-platform/docs/pricing.md +60 -0
  812. package/dist/level6/apps/agent-platform/docs/sales-playbook.md +104 -0
  813. package/dist/level6/apps/agent-platform/docs/sandbox-threat-model.md +71 -0
  814. package/dist/level6/apps/agent-platform/docs/survey-guide.md +96 -0
  815. package/dist/level6/apps/agent-platform/public/index.html +13 -0
  816. package/dist/level6/apps/agent-platform/public/survey-campaigns.html +73 -0
  817. package/dist/level6/apps/agent-platform/public/survey-form.html +273 -0
  818. package/dist/level6/apps/agent-platform/public/survey-stats.html +264 -0
  819. package/dist/level6/apps/agent-platform/scripts/audit-any.mjs +29 -0
  820. package/dist/level6/apps/agent-platform/scripts/audit-page-generations.mjs +38 -0
  821. package/dist/level6/apps/agent-platform/scripts/audit-route-coverage.mjs +46 -0
  822. package/dist/level6/apps/agent-platform/scripts/backup.sh +50 -0
  823. package/dist/level6/apps/agent-platform/scripts/build.mjs +51 -0
  824. package/dist/level6/apps/agent-platform/scripts/ddl-parse.ts +88 -0
  825. package/dist/level6/apps/agent-platform/scripts/eval.mjs +91 -0
  826. package/dist/level6/apps/agent-platform/scripts/orchestration-demo.mjs +97 -0
  827. package/dist/level6/apps/agent-platform/scripts/persona-eval.mjs +144 -0
  828. package/dist/level6/apps/agent-platform/scripts/restore.sh +49 -0
  829. package/dist/level6/apps/agent-platform/scripts/seed-survey-agents.mjs +282 -0
  830. package/dist/level6/apps/agent-platform/scripts/seed.mjs +624 -0
  831. package/dist/level6/apps/agent-platform/scripts/shape-check.mjs +79 -0
  832. package/dist/level6/apps/agent-platform/scripts/survey-acceptance.mjs +98 -0
  833. package/dist/level6/apps/agent-platform/scripts/survey-demo.mjs +94 -0
  834. package/dist/level6/apps/agent-platform/scripts/survey-launch.mjs +103 -0
  835. package/dist/level6/apps/agent-platform/scripts/survey-summary.mjs +80 -0
  836. package/dist/level6/apps/agent-platform/scripts/upgrade.mjs +109 -0
  837. package/dist/level6/apps/agent-platform/server.js +586 -0
  838. package/dist/level6/apps/agent-platform/server.ts +48 -0
  839. package/dist/level6/apps/agent-platform/skills/builtin/fetch-url/SKILL.md +11 -0
  840. package/dist/level6/apps/agent-platform/skills/builtin/fetch-url/tools.ts +56 -0
  841. package/dist/level6/apps/agent-platform/skills/builtin/get-current-time/SKILL.md +11 -0
  842. package/dist/level6/apps/agent-platform/skills/builtin/get-current-time/tools.ts +38 -0
  843. package/dist/level6/apps/agent-platform/skills/builtin/process-csv/SKILL.md +11 -0
  844. package/dist/level6/apps/agent-platform/skills/builtin/process-csv/tools.ts +104 -0
  845. package/dist/level6/apps/agent-platform/skills/builtin/search-knowledge-base/SKILL.md +15 -0
  846. package/dist/level6/apps/agent-platform/skills/builtin/search-knowledge-base/tools.ts +51 -0
  847. package/dist/level6/apps/agent-platform/src/ai/types.ts +5 -0
  848. package/dist/level6/apps/agent-platform/src/bootstrap/deps.ts +425 -0
  849. package/dist/level6/apps/agent-platform/src/bootstrap/env.ts +21 -0
  850. package/dist/level6/apps/agent-platform/src/bootstrap/routes-protected.ts +932 -0
  851. package/dist/level6/apps/agent-platform/src/bootstrap/routes-public.ts +280 -0
  852. package/dist/level6/apps/agent-platform/src/db/orm.ts +28 -0
  853. package/dist/level6/apps/agent-platform/src/db/schema.sql +439 -0
  854. package/dist/level6/apps/agent-platform/src/db/shapes.ts +414 -0
  855. package/dist/level6/apps/agent-platform/src/db/tables.ts +540 -0
  856. package/dist/level6/apps/agent-platform/src/middleware/auth-payload.ts +13 -0
  857. package/dist/level6/apps/agent-platform/src/middleware/ctx.ts +39 -0
  858. package/dist/level6/apps/agent-platform/src/middleware/workspace.ts +82 -0
  859. package/dist/level6/apps/agent-platform/src/routes/admin.ts +259 -0
  860. package/dist/level6/apps/agent-platform/src/routes/agents.ts +394 -0
  861. package/dist/level6/apps/agent-platform/src/routes/ai-events.ts +52 -0
  862. package/dist/level6/apps/agent-platform/src/routes/deliverables.ts +86 -0
  863. package/dist/level6/apps/agent-platform/src/routes/demo.ts +68 -0
  864. package/dist/level6/apps/agent-platform/src/routes/departments.ts +618 -0
  865. package/dist/level6/apps/agent-platform/src/routes/knowledge.ts +405 -0
  866. package/dist/level6/apps/agent-platform/src/routes/messages.ts +557 -0
  867. package/dist/level6/apps/agent-platform/src/routes/role-templates.ts +246 -0
  868. package/dist/level6/apps/agent-platform/src/routes/sandboxes.ts +264 -0
  869. package/dist/level6/apps/agent-platform/src/routes/skills.ts +102 -0
  870. package/dist/level6/apps/agent-platform/src/routes/stats.ts +397 -0
  871. package/dist/level6/apps/agent-platform/src/routes/survey.ts +96 -0
  872. package/dist/level6/apps/agent-platform/src/routes/workspace.ts +240 -0
  873. package/dist/level6/apps/agent-platform/src/sandbox/capabilities.json +9 -0
  874. package/dist/level6/apps/agent-platform/src/sandbox/docker.ts +665 -0
  875. package/dist/level6/apps/agent-platform/src/sandbox/events.ts +107 -0
  876. package/dist/level6/apps/agent-platform/src/sandbox/host-client.ts +43 -0
  877. package/dist/level6/apps/agent-platform/src/sandbox/host-health.ts +67 -0
  878. package/dist/level6/apps/agent-platform/src/sandbox/host.ts +40 -0
  879. package/dist/level6/apps/agent-platform/src/sandbox/manager.ts +604 -0
  880. package/dist/level6/apps/agent-platform/src/sandbox/scheduler.ts +85 -0
  881. package/dist/level6/apps/agent-platform/src/services/agent-runner.ts +620 -0
  882. package/dist/level6/apps/agent-platform/src/services/ai-events.ts +114 -0
  883. package/dist/level6/apps/agent-platform/src/services/answer-cache.ts +94 -0
  884. package/dist/level6/apps/agent-platform/src/services/artifact-review.ts +130 -0
  885. package/dist/level6/apps/agent-platform/src/services/artifact-verify.ts +77 -0
  886. package/dist/level6/apps/agent-platform/src/services/audit.ts +55 -0
  887. package/dist/level6/apps/agent-platform/src/services/byok.ts +33 -0
  888. package/dist/level6/apps/agent-platform/src/services/chat.ts +1107 -0
  889. package/dist/level6/apps/agent-platform/src/services/embedding.ts +107 -0
  890. package/dist/level6/apps/agent-platform/src/services/event-contracts.ts +95 -0
  891. package/dist/level6/apps/agent-platform/src/services/group-memory.ts +91 -0
  892. package/dist/level6/apps/agent-platform/src/services/im-inbound.ts +48 -0
  893. package/dist/level6/apps/agent-platform/src/services/intent-route.ts +73 -0
  894. package/dist/level6/apps/agent-platform/src/services/kb-search.ts +146 -0
  895. package/dist/level6/apps/agent-platform/src/services/license.ts +44 -0
  896. package/dist/level6/apps/agent-platform/src/services/orchestration.ts +73 -0
  897. package/dist/level6/apps/agent-platform/src/services/org-manager.ts +62 -0
  898. package/dist/level6/apps/agent-platform/src/services/permissions.ts +58 -0
  899. package/dist/level6/apps/agent-platform/src/services/persona.ts +123 -0
  900. package/dist/level6/apps/agent-platform/src/services/plan.ts +89 -0
  901. package/dist/level6/apps/agent-platform/src/services/quota-alert.ts +40 -0
  902. package/dist/level6/apps/agent-platform/src/services/risk-policy.ts +59 -0
  903. package/dist/level6/apps/agent-platform/src/services/skill-watcher.ts +108 -0
  904. package/dist/level6/apps/agent-platform/src/services/skills.ts +274 -0
  905. package/dist/level6/apps/agent-platform/src/services/survey-campaign.ts +475 -0
  906. package/dist/level6/apps/agent-platform/src/services/survey-setup.ts +67 -0
  907. package/dist/level6/apps/agent-platform/src/services/task-decisions.ts +39 -0
  908. package/dist/level6/apps/agent-platform/src/services/task-markers.ts +38 -0
  909. package/dist/level6/apps/agent-platform/src/services/upload.ts +92 -0
  910. package/dist/level6/apps/agent-platform/src/services/versions.ts +94 -0
  911. package/dist/level6/apps/agent-platform/src/services/webhook-platform.ts +34 -0
  912. package/dist/level6/apps/agent-platform/src/services/webhook.ts +368 -0
  913. package/dist/level6/apps/agent-platform/src/shape-derived.tsd.ts +24 -0
  914. package/dist/level6/apps/agent-platform/src/shared/roles.ts +38 -0
  915. package/dist/level6/apps/agent-platform/src/tools/builtin.ts +563 -0
  916. package/dist/level6/apps/agent-platform/src/tools/image-gen.ts +51 -0
  917. package/dist/level6/apps/agent-platform/src/tools/registry.ts +23 -0
  918. package/dist/level6/apps/agent-platform/src/tools/video-gen.ts +241 -0
  919. package/dist/level6/apps/agent-platform/src/tools/workspace.ts +167 -0
  920. package/dist/level6/apps/agent-platform/src/ui/routes.ts +192 -0
  921. package/dist/level6/apps/agent-platform/tsconfig.json +35 -0
  922. package/dist/level6/apps/agent-platform/ui/app.css +88 -0
  923. package/dist/level6/apps/agent-platform/ui/blocks/FilesSection.tsx +321 -0
  924. package/dist/level6/apps/agent-platform/ui/blocks/KnowledgeSection.tsx +233 -0
  925. package/dist/level6/apps/agent-platform/ui/blocks/LogsSection.tsx +44 -0
  926. package/dist/level6/apps/agent-platform/ui/blocks/MessageItem.tsx +332 -0
  927. package/dist/level6/apps/agent-platform/ui/blocks/PreviewSection.tsx +64 -0
  928. package/dist/level6/apps/agent-platform/ui/blocks/SkillsSection.tsx +126 -0
  929. package/dist/level6/apps/agent-platform/ui/blocks/VersionsSection.tsx +67 -0
  930. package/dist/level6/apps/agent-platform/ui/blocks/app-chrome.tsx +100 -0
  931. package/dist/level6/apps/agent-platform/ui/blocks/ux.tsx +46 -0
  932. package/dist/level6/apps/agent-platform/ui/lib/api.ts +82 -0
  933. package/dist/level6/apps/agent-platform/ui/lib/ctx.d.ts +27 -0
  934. package/dist/level6/apps/agent-platform/ui/lib/download.ts +84 -0
  935. package/dist/level6/apps/agent-platform/ui/lib/i18n.ts +31 -0
  936. package/dist/level6/apps/agent-platform/ui/lib/nav.ts +32 -0
  937. package/dist/level6/apps/agent-platform/ui/lib/project-store.ts +42 -0
  938. package/dist/level6/apps/agent-platform/ui/lib/roles.ts +54 -0
  939. package/dist/level6/apps/agent-platform/ui/lib/track.ts +25 -0
  940. package/dist/level6/apps/agent-platform/ui/lib/types.ts +374 -0
  941. package/dist/level6/apps/agent-platform/ui/lib/video-popup.ts +27 -0
  942. package/dist/level6/apps/agent-platform/ui/lib/wf-events.ts +150 -0
  943. package/dist/level6/apps/agent-platform/ui/pages/Admin.tsx +289 -0
  944. package/dist/level6/apps/agent-platform/ui/pages/AgentDetail.tsx +672 -0
  945. package/dist/level6/apps/agent-platform/ui/pages/Agents.tsx +135 -0
  946. package/dist/level6/apps/agent-platform/ui/pages/Approvals.tsx +168 -0
  947. package/dist/level6/apps/agent-platform/ui/pages/Chat.tsx +1147 -0
  948. package/dist/level6/apps/agent-platform/ui/pages/Dashboard.tsx +228 -0
  949. package/dist/level6/apps/agent-platform/ui/pages/Deliverables.tsx +180 -0
  950. package/dist/level6/apps/agent-platform/ui/pages/DepartmentDetail.tsx +375 -0
  951. package/dist/level6/apps/agent-platform/ui/pages/Departments.tsx +89 -0
  952. package/dist/level6/apps/agent-platform/ui/pages/Login.tsx +95 -0
  953. package/dist/level6/apps/agent-platform/ui/pages/NewAgent.tsx +353 -0
  954. package/dist/level6/apps/agent-platform/ui/pages/NewChat.tsx +96 -0
  955. package/dist/level6/apps/agent-platform/ui/pages/NewDepartment.tsx +80 -0
  956. package/dist/level6/apps/agent-platform/ui/pages/Register.tsx +77 -0
  957. package/dist/level6/apps/agent-platform/ui/pages/Reports.tsx +241 -0
  958. package/dist/level6/apps/agent-platform/ui/pages/Sandboxes.tsx +206 -0
  959. package/dist/level6/apps/agent-platform/ui/pages/Settings.tsx +385 -0
  960. package/dist/level6/apps/agent-platform/ui/pages/Surveys.tsx +139 -0
  961. package/dist/level6/apps/agent-platform/ui/pages/Templates.tsx +150 -0
  962. package/dist/level6/apps/agent-platform/ui/pages/WorkflowDetail.tsx +507 -0
  963. package/dist/level6/apps/agent-platform/ui/pages/Workflows.tsx +207 -0
  964. package/dist/level6/apps/agent-platform/ui/pages/Workspace.tsx +270 -0
  965. package/dist/level6/apps/agent-platform/ui/router.ts +58 -0
  966. package/dist/level6/apps/agent-platform/ui/ssr-entry.ts +14 -0
  967. package/dist/level6/apps/agent-platform/ui/ssr.ts +81 -0
  968. package/dist/level6/apps/agent-platform/ui/v3-main.tsx +82 -0
  969. package/dist/level6/apps/showcase/cli.js +3 -0
  970. package/dist/level6/apps/showcase/server.js +166 -0
  971. package/dist/level6/apps/showcase/server.ts +267 -0
  972. package/dist/level6/apps/showcase/src/app-router.ts +59 -0
  973. package/dist/level6/apps/showcase/src/data.ts +53 -0
  974. package/dist/level6/apps/showcase/src/demo-backend.ts +110 -0
  975. package/dist/level6/apps/showcase/src/demos/ai-chat.tsx +353 -0
  976. package/dist/level6/apps/showcase/src/demos/code.ts +570 -0
  977. package/dist/level6/apps/showcase/src/demos/data-display.tsx +1133 -0
  978. package/dist/level6/apps/showcase/src/demos/data-feedback.tsx +260 -0
  979. package/dist/level6/apps/showcase/src/demos/form-advanced.tsx +245 -0
  980. package/dist/level6/apps/showcase/src/demos/form-core.tsx +100 -0
  981. package/dist/level6/apps/showcase/src/demos/form-select.tsx +135 -0
  982. package/dist/level6/apps/showcase/src/demos/index.ts +30 -0
  983. package/dist/level6/apps/showcase/src/demos/navigation.tsx +232 -0
  984. package/dist/level6/apps/showcase/src/demos/new-batch.tsx +1323 -0
  985. package/dist/level6/apps/showcase/src/demos/others.tsx +240 -0
  986. package/dist/level6/apps/showcase/src/demos/overlay-custom.tsx +42 -0
  987. package/dist/level6/apps/showcase/src/demos/platform-migrate.tsx +75 -0
  988. package/dist/level6/apps/showcase/src/main.tsx +26 -0
  989. package/dist/level6/apps/showcase/src/pages/components.tsx +183 -0
  990. package/dist/level6/apps/showcase/src/pages/not-found.tsx +18 -0
  991. package/dist/level6/apps/showcase/src/registry/components.ts +1144 -0
  992. package/dist/level6/apps/showcase/src/registry/index-json.ts +63 -0
  993. package/dist/level6/apps/showcase/src/registry/tags.ts +20 -0
  994. package/dist/level6/apps/showcase/src/registry/types.ts +24 -0
  995. package/dist/level6/apps/showcase/src/shell.tsx +53 -0
  996. package/dist/level6/apps/showcase/src/ssr.ts +13 -0
  997. package/dist/level6/apps/showcase/tsconfig.json +32 -0
  998. package/dist/level6/client/components/index.d.ts +298 -0
  999. package/dist/level6/client/components/index.js +57 -0
  1000. package/dist/level6/client/components/index.ts +408 -0
  1001. package/dist/level6/client/components/style.css +1 -0
  1002. package/dist/level6/client/layout/index.d.ts +20 -0
  1003. package/dist/level6/client/layout/index.js +17 -0
  1004. package/dist/level6/client/layout/index.ts +20 -0
  1005. package/dist/level6/client/vdom/index.d.ts +83 -0
  1006. package/dist/level6/client/vdom/index.js +5 -0
  1007. package/dist/level6/client/vdom/index.ts +104 -0
  1008. package/dist/level6/client/vdom/jsx-runtime.d.ts +28 -0
  1009. package/dist/level6/client/vdom/jsx-runtime.js +1 -0
  1010. package/dist/level6/client/vdom/jsx-runtime.ts +34 -0
  1011. package/dist/level6/client/vdom/testing.d.ts +46 -0
  1012. package/dist/level6/client/vdom/testing.js +2 -0
  1013. package/dist/level6/client/vdom/testing.ts +188 -0
  1014. package/dist/level6/dev/index.js +46 -0
  1015. package/dist/level6/dev/index.ts +57 -0
  1016. package/dist/level6/index.d.ts +80 -0
  1017. package/dist/level6/index.js +19624 -0
  1018. package/dist/level6/index.ts +125 -0
  1019. package/dist/level6/server/ai/index.d.ts +27 -0
  1020. package/dist/level6/server/ai/index.js +7 -0
  1021. package/dist/level6/server/ai/index.ts +58 -0
  1022. package/dist/level6/server/email/index.d.ts +54 -0
  1023. package/dist/level6/server/email/index.js +1 -0
  1024. package/dist/level6/server/email/index.ts +83 -0
  1025. package/dist/level6/server/messager/index.d.ts +250 -0
  1026. package/dist/level6/server/messager/index.js +1 -0
  1027. package/dist/level6/server/messager/index.ts +712 -0
  1028. package/dist/level6/server/postgres/index.d.ts +2 -0
  1029. package/dist/level6/server/postgres/index.js +17 -0
  1030. package/dist/level6/server/postgres/index.ts +2 -0
  1031. package/dist/level6/server/queue/index.d.ts +98 -0
  1032. package/dist/level6/server/queue/index.js +1 -0
  1033. package/dist/level6/server/queue/index.ts +478 -0
  1034. package/dist/level6/server/redis/index.d.ts +2 -0
  1035. package/dist/level6/server/redis/index.js +3 -0
  1036. package/dist/level6/server/redis/index.ts +2 -0
  1037. package/dist/level6/server/scheduler/index.d.ts +74 -0
  1038. package/dist/level6/server/scheduler/index.js +1 -0
  1039. package/dist/level6/server/scheduler/index.ts +282 -0
  1040. package/dist/level6/server/ui/index.d.ts +64 -0
  1041. package/dist/level6/server/ui/index.js +15 -0
  1042. package/dist/level6/server/ui/index.ts +417 -0
  1043. package/dist/level6/server/user/index.d.ts +461 -0
  1044. package/dist/level6/server/user/index.js +1 -0
  1045. package/dist/level6/server/user/index.ts +1218 -0
  1046. package/dist/level6/server/workflow/index.d.ts +70 -0
  1047. package/dist/level6/server/workflow/index.js +2476 -0
  1048. package/dist/level6/server/workflow/index.ts +103 -0
  1049. package/dist/level6/server/workflows/index.d.ts +267 -0
  1050. package/dist/level6/server/workflows/index.js +24 -0
  1051. package/dist/level6/server/workflows/index.ts +560 -0
  1052. package/dist/level6/shared/router/index.d.ts +5 -0
  1053. package/dist/level6/shared/router/index.ts +5 -0
  1054. package/dist/server/email/index.js +1 -1
  1055. package/dist/server/index.js +1719 -1268
  1056. package/dist/server/messager/index.js +1 -1
  1057. package/dist/server/postgres/index.js +9 -48
  1058. package/dist/server/redis/index.js +2 -2
  1059. package/dist/server/scheduler/index.js +1 -1
  1060. package/dist/server/ui/index.js +9 -9
  1061. package/dist/server/user/index.js +1 -1
  1062. package/dist/server/workflow/index.js +11 -11
  1063. package/docs/client.md +98 -50
  1064. package/docs/layout.md +2 -2
  1065. package/docs/level.md +125 -0
  1066. package/docs/migration.md +95 -0
  1067. package/docs/server.md +42 -34
  1068. package/package.json +36 -122
  1069. package/dist/cli/apps-typecheck.test.d.ts +0 -11
  1070. package/dist/cli/home-flash.test.d.ts +0 -1
  1071. package/dist/client/components/Accordion/Accordion.d.ts +0 -21
  1072. package/dist/client/components/ActionSheet/ActionSheet.d.ts +0 -38
  1073. package/dist/client/components/Affix/Affix.d.ts +0 -17
  1074. package/dist/client/components/AiChat/AiChat.d.ts +0 -53
  1075. package/dist/client/components/Alert/Alert.d.ts +0 -10
  1076. package/dist/client/components/AlertGroup/AlertGroup.d.ts +0 -24
  1077. package/dist/client/components/Anchor/Anchor.d.ts +0 -28
  1078. package/dist/client/components/AppShell/AppShell.d.ts +0 -73
  1079. package/dist/client/components/ApprovalCard/ApprovalCard.d.ts +0 -36
  1080. package/dist/client/components/AspectRatio/AspectRatio.d.ts +0 -11
  1081. package/dist/client/components/AuthPage/AuthPage.d.ts +0 -37
  1082. package/dist/client/components/AutoComplete/AutoComplete.d.ts +0 -40
  1083. package/dist/client/components/Avatar/Avatar.d.ts +0 -10
  1084. package/dist/client/components/AvatarGroup/AvatarGroup.d.ts +0 -22
  1085. package/dist/client/components/BackTop/BackTop.d.ts +0 -24
  1086. package/dist/client/components/Badge/Badge.d.ts +0 -15
  1087. package/dist/client/components/Breadcrumb/Breadcrumb.d.ts +0 -10
  1088. package/dist/client/components/Button/Button.d.ts +0 -26
  1089. package/dist/client/components/Calendar/Calendar.d.ts +0 -22
  1090. package/dist/client/components/Card/Card.d.ts +0 -20
  1091. package/dist/client/components/Carousel/Carousel.d.ts +0 -18
  1092. package/dist/client/components/Cascader/Cascader.d.ts +0 -26
  1093. package/dist/client/components/Chart/Chart.d.ts +0 -16
  1094. package/dist/client/components/ChatInput/ChatInput.d.ts +0 -69
  1095. package/dist/client/components/Checkbox/Checkbox.d.ts +0 -9
  1096. package/dist/client/components/CheckboxGroup/CheckboxGroup.d.ts +0 -24
  1097. package/dist/client/components/CitationCard/CitationCard.d.ts +0 -39
  1098. package/dist/client/components/CodeBlock/CodeBlock.d.ts +0 -15
  1099. package/dist/client/components/CodeEditor/CodeEditor.d.ts +0 -19
  1100. package/dist/client/components/Collapse/Collapse.d.ts +0 -29
  1101. package/dist/client/components/ColorPicker/ColorPicker.d.ts +0 -17
  1102. package/dist/client/components/Command/Command.d.ts +0 -23
  1103. package/dist/client/components/Confirm/Confirm.d.ts +0 -40
  1104. package/dist/client/components/ContextMenu/ContextMenu.d.ts +0 -20
  1105. package/dist/client/components/CopyButton/CopyButton.d.ts +0 -19
  1106. package/dist/client/components/CronPicker/CronPicker.d.ts +0 -31
  1107. package/dist/client/components/DatePicker/DatePicker.d.ts +0 -21
  1108. package/dist/client/components/Descriptions/Descriptions.d.ts +0 -22
  1109. package/dist/client/components/DiffView/DiffView.d.ts +0 -25
  1110. package/dist/client/components/Divider/Divider.d.ts +0 -7
  1111. package/dist/client/components/Drawer/Drawer.d.ts +0 -20
  1112. package/dist/client/components/DropZone/DropZone.d.ts +0 -28
  1113. package/dist/client/components/Dropdown/Dropdown.d.ts +0 -23
  1114. package/dist/client/components/Editor/Editor.d.ts +0 -15
  1115. package/dist/client/components/Editor/tools/toolbar.d.ts +0 -10
  1116. package/dist/client/components/EmptyState/EmptyState.d.ts +0 -10
  1117. package/dist/client/components/ExportCSV/ExportCSV.d.ts +0 -31
  1118. package/dist/client/components/Field/Field.d.ts +0 -10
  1119. package/dist/client/components/FilePreview/FilePreview.d.ts +0 -43
  1120. package/dist/client/components/FileTree/FileTree.d.ts +0 -58
  1121. package/dist/client/components/FileUpload/FileUpload.d.ts +0 -21
  1122. package/dist/client/components/FloatButton/FloatButton.d.ts +0 -35
  1123. package/dist/client/components/Form/Form.d.ts +0 -23
  1124. package/dist/client/components/Grid/Grid.d.ts +0 -35
  1125. package/dist/client/components/Highlight/Highlight.d.ts +0 -14
  1126. package/dist/client/components/HoverCard/HoverCard.d.ts +0 -24
  1127. package/dist/client/components/Icon/Icon.d.ts +0 -20
  1128. package/dist/client/components/ImageCropper/ImageCropper.d.ts +0 -22
  1129. package/dist/client/components/Img/Img.d.ts +0 -27
  1130. package/dist/client/components/InView/InView.d.ts +0 -17
  1131. package/dist/client/components/InfiniteScroll/InfiniteScroll.d.ts +0 -18
  1132. package/dist/client/components/Input/Input.d.ts +0 -31
  1133. package/dist/client/components/InputNumber/InputNumber.d.ts +0 -26
  1134. package/dist/client/components/JSONViewer/JSONViewer.d.ts +0 -22
  1135. package/dist/client/components/JsonSchemaForm/JsonSchemaForm.d.ts +0 -49
  1136. package/dist/client/components/Kanban/Kanban.d.ts +0 -29
  1137. package/dist/client/components/Label/Label.d.ts +0 -12
  1138. package/dist/client/components/Layout/Layout.d.ts +0 -61
  1139. package/dist/client/components/Link/Link.d.ts +0 -23
  1140. package/dist/client/components/List/List.d.ts +0 -22
  1141. package/dist/client/components/ListScaffold/ListScaffold.d.ts +0 -40
  1142. package/dist/client/components/Loading/Loading.d.ts +0 -6
  1143. package/dist/client/components/LogViewer/LogViewer.d.ts +0 -30
  1144. package/dist/client/components/Markdown/Markdown.d.ts +0 -15
  1145. package/dist/client/components/MarkdownEditor/MarkdownEditor.d.ts +0 -19
  1146. package/dist/client/components/Math/Math.d.ts +0 -16
  1147. package/dist/client/components/Mentions/Mentions.d.ts +0 -20
  1148. package/dist/client/components/Menu/Menu.d.ts +0 -37
  1149. package/dist/client/components/Menubar/Menubar.d.ts +0 -23
  1150. package/dist/client/components/MessageBubble/MessageBubble.d.ts +0 -21
  1151. package/dist/client/components/Modal/Modal.d.ts +0 -23
  1152. package/dist/client/components/NavBar/NavBar.d.ts +0 -33
  1153. package/dist/client/components/NavMenu/NavMenu.d.ts +0 -28
  1154. package/dist/client/components/Notification/Notification.d.ts +0 -74
  1155. package/dist/client/components/PageHeader/PageHeader.d.ts +0 -10
  1156. package/dist/client/components/Pagination/Pagination.d.ts +0 -9
  1157. package/dist/client/components/PasswordInput/PasswordInput.d.ts +0 -22
  1158. package/dist/client/components/PinInput/PinInput.d.ts +0 -19
  1159. package/dist/client/components/Pipeline/Pipeline.d.ts +0 -28
  1160. package/dist/client/components/Popconfirm/Popconfirm.d.ts +0 -35
  1161. package/dist/client/components/Popover/Popover.d.ts +0 -21
  1162. package/dist/client/components/ProgressBar/ProgressBar.d.ts +0 -14
  1163. package/dist/client/components/PromptTemplate/PromptTemplate.d.ts +0 -38
  1164. package/dist/client/components/QRCode/QRCode.d.ts +0 -21
  1165. package/dist/client/components/RadioGroup/RadioGroup.d.ts +0 -15
  1166. package/dist/client/components/Rate/Rate.d.ts +0 -19
  1167. package/dist/client/components/ReasoningBlock/ReasoningBlock.d.ts +0 -26
  1168. package/dist/client/components/RelationGraph/RelationGraph.d.ts +0 -60
  1169. package/dist/client/components/Resizable/Resizable.d.ts +0 -21
  1170. package/dist/client/components/Result/Result.d.ts +0 -18
  1171. package/dist/client/components/Scrollbar/Scrollbar.d.ts +0 -22
  1172. package/dist/client/components/SearchInput/SearchInput.d.ts +0 -19
  1173. package/dist/client/components/SegmentedControl/SegmentedControl.d.ts +0 -23
  1174. package/dist/client/components/Select/Select.d.ts +0 -35
  1175. package/dist/client/components/SessionList/SessionList.d.ts +0 -43
  1176. package/dist/client/components/SheetGrid/SheetGrid.d.ts +0 -31
  1177. package/dist/client/components/Skeleton/Skeleton.d.ts +0 -15
  1178. package/dist/client/components/SlideCanvas/SlideCanvas.d.ts +0 -29
  1179. package/dist/client/components/Slider/Slider.d.ts +0 -28
  1180. package/dist/client/components/SortableList/SortableList.d.ts +0 -24
  1181. package/dist/client/components/Space/Space.d.ts +0 -17
  1182. package/dist/client/components/Sparkline/Sparkline.d.ts +0 -24
  1183. package/dist/client/components/StatCard/StatCard.d.ts +0 -20
  1184. package/dist/client/components/StatusDot/StatusDot.d.ts +0 -25
  1185. package/dist/client/components/Steps/Steps.d.ts +0 -13
  1186. package/dist/client/components/Switch/Switch.d.ts +0 -9
  1187. package/dist/client/components/TabBar/TabBar.d.ts +0 -36
  1188. package/dist/client/components/Table/Table.d.ts +0 -49
  1189. package/dist/client/components/Tabs/Tabs.d.ts +0 -23
  1190. package/dist/client/components/Tag/Tag.d.ts +0 -9
  1191. package/dist/client/components/TagsInput/TagsInput.d.ts +0 -22
  1192. package/dist/client/components/Textarea/Textarea.d.ts +0 -24
  1193. package/dist/client/components/ThemeSwitch/ThemeSwitch.d.ts +0 -35
  1194. package/dist/client/components/Timeline/Timeline.d.ts +0 -27
  1195. package/dist/client/components/Toast/Toast.d.ts +0 -42
  1196. package/dist/client/components/ToggleGroup/ToggleGroup.d.ts +0 -34
  1197. package/dist/client/components/ToolCallCard/ToolCallCard.d.ts +0 -24
  1198. package/dist/client/components/Tooltip/Tooltip.d.ts +0 -18
  1199. package/dist/client/components/Tour/Tour.d.ts +0 -35
  1200. package/dist/client/components/Transfer/Transfer.d.ts +0 -23
  1201. package/dist/client/components/Tree/Tree.d.ts +0 -36
  1202. package/dist/client/components/TreeSelect/TreeSelect.d.ts +0 -32
  1203. package/dist/client/components/Typography/Typography.d.ts +0 -40
  1204. package/dist/client/components/VideoPlayer/VideoPlayer.d.ts +0 -26
  1205. package/dist/client/components/VirtualList/VirtualList.d.ts +0 -24
  1206. package/dist/client/components/VirtualTable/VirtualTable.d.ts +0 -41
  1207. package/dist/client/components/Watermark/Watermark.d.ts +0 -20
  1208. package/dist/client/components/Wave/Wave.d.ts +0 -16
  1209. package/dist/client/components/WordCloud/WordCloud.d.ts +0 -80
  1210. package/dist/client/components/index.d.ts +0 -298
  1211. package/dist/client/layout/bundle.d.ts +0 -42
  1212. package/dist/client/layout/index.d.ts +0 -20
  1213. package/dist/client/office/xml-serialize.d.ts +0 -18
  1214. package/dist/client/vdom/context/UIContext.d.ts +0 -69
  1215. package/dist/client/vdom/core/create-component.d.ts +0 -42
  1216. package/dist/client/vdom/core/create-item.d.ts +0 -52
  1217. package/dist/client/vdom/core/diff/attrs.d.ts +0 -18
  1218. package/dist/client/vdom/core/diff/cleanup.d.ts +0 -44
  1219. package/dist/client/vdom/core/field/index.d.ts +0 -19
  1220. package/dist/client/vdom/core/node/children.d.ts +0 -20
  1221. package/dist/client/vdom/core/node/component.d.ts +0 -92
  1222. package/dist/client/vdom/core/node/fragment.d.ts +0 -14
  1223. package/dist/client/vdom/core/node/index.d.ts +0 -35
  1224. package/dist/client/vdom/core/node/keyed.d.ts +0 -64
  1225. package/dist/client/vdom/core/node/native.d.ts +0 -25
  1226. package/dist/client/vdom/core/patch/index.d.ts +0 -74
  1227. package/dist/client/vdom/core/patch/processors.d.ts +0 -82
  1228. package/dist/client/vdom/core/patch/state-machine.d.ts +0 -38
  1229. package/dist/client/vdom/core/patch/verify.d.ts +0 -17
  1230. package/dist/client/vdom/core/protocol.d.ts +0 -100
  1231. package/dist/client/vdom/core/router.d.ts +0 -38
  1232. package/dist/client/vdom/core/ssr/absorb.d.ts +0 -80
  1233. package/dist/client/vdom/core/ssr/html.d.ts +0 -32
  1234. package/dist/client/vdom/core/transform/index.d.ts +0 -46
  1235. package/dist/client/vdom/core/transform/states.d.ts +0 -22
  1236. package/dist/client/vdom/core/transform/table.d.ts +0 -28
  1237. package/dist/client/vdom/core/v2/cycle.d.ts +0 -56
  1238. package/dist/client/vdom/core/v2/diff.d.ts +0 -89
  1239. package/dist/client/vdom/core/v2/integrate.d.ts +0 -24
  1240. package/dist/client/vdom/core/v2/render.d.ts +0 -28
  1241. package/dist/client/vdom/core/v2/schedule.d.ts +0 -33
  1242. package/dist/client/vdom/core/v2/ssr.d.ts +0 -14
  1243. package/dist/client/vdom/core/vnode.d.ts +0 -54
  1244. package/dist/client/vdom/dev/render-health.d.ts +0 -60
  1245. package/dist/client/vdom/hooks/ai-stream.d.ts +0 -46
  1246. package/dist/client/vdom/hooks/chat.d.ts +0 -118
  1247. package/dist/client/vdom/hooks/env.d.ts +0 -183
  1248. package/dist/client/vdom/hooks/field.d.ts +0 -54
  1249. package/dist/client/vdom/hooks/overlay.d.ts +0 -60
  1250. package/dist/client/vdom/hooks/popup-manager.d.ts +0 -113
  1251. package/dist/client/vdom/hooks/use-observable.d.ts +0 -13
  1252. package/dist/client/vdom/index.d.ts +0 -82
  1253. package/dist/client/vdom/jsx-runtime.d.ts +0 -28
  1254. package/dist/client/vdom/middlewares/api.d.ts +0 -46
  1255. package/dist/client/vdom/middlewares/auth-i18n.d.ts +0 -73
  1256. package/dist/client/vdom/middlewares/ws.d.ts +0 -77
  1257. package/dist/client/vdom/testing.d.ts +0 -46
  1258. package/dist/server/ai/assemble.d.ts +0 -19
  1259. package/dist/server/ai/contracts.d.ts +0 -121
  1260. package/dist/server/ai/index.d.ts +0 -27
  1261. package/dist/server/ai/types.d.ts +0 -156
  1262. package/dist/server/core/collect.d.ts +0 -31
  1263. package/dist/server/core/hub.d.ts +0 -2
  1264. package/dist/server/core/router.d.ts +0 -93
  1265. package/dist/server/core/serve.d.ts +0 -32
  1266. package/dist/server/core/ws.d.ts +0 -43
  1267. package/dist/server/db/body.d.ts +0 -31
  1268. package/dist/server/db/contracts.d.ts +0 -84
  1269. package/dist/server/db/errors.d.ts +0 -44
  1270. package/dist/server/db/gql-from-shape.d.ts +0 -42
  1271. package/dist/server/db/http.d.ts +0 -38
  1272. package/dist/server/db/memory-redis.d.ts +0 -103
  1273. package/dist/server/db/memory-sql.d.ts +0 -104
  1274. package/dist/server/db/orm.d.ts +0 -110
  1275. package/dist/server/db/postgres/connection.d.ts +0 -90
  1276. package/dist/server/db/query-builder.d.ts +0 -19
  1277. package/dist/server/db/redis/client.d.ts +0 -93
  1278. package/dist/server/db/redis/pool.d.ts +0 -85
  1279. package/dist/server/db/redis/resp.d.ts +0 -49
  1280. package/dist/server/db/redis/subscriber.d.ts +0 -17
  1281. package/dist/server/db/rest-from-shape.d.ts +0 -56
  1282. package/dist/server/db/schema.d.ts +0 -78
  1283. package/dist/server/db/shape.d.ts +0 -131
  1284. package/dist/server/db/typed-query.d.ts +0 -113
  1285. package/dist/server/email/index.d.ts +0 -54
  1286. package/dist/server/email/memory-email.d.ts +0 -30
  1287. package/dist/server/graphql.d.ts +0 -17
  1288. package/dist/server/index.d.ts +0 -69
  1289. package/dist/server/messager/index.d.ts +0 -249
  1290. package/dist/server/middleware/compress.d.ts +0 -25
  1291. package/dist/server/middleware/cors.d.ts +0 -25
  1292. package/dist/server/middleware/rate-limit.d.ts +0 -72
  1293. package/dist/server/middleware/static.d.ts +0 -28
  1294. package/dist/server/postgres/index.d.ts +0 -2
  1295. package/dist/server/postgres/types.d.ts +0 -80
  1296. package/dist/server/queue/index.d.ts +0 -98
  1297. package/dist/server/redis/index.d.ts +0 -2
  1298. package/dist/server/redis/types.d.ts +0 -34
  1299. package/dist/server/request.d.ts +0 -23
  1300. package/dist/server/response.d.ts +0 -63
  1301. package/dist/server/scheduler/index.d.ts +0 -74
  1302. package/dist/server/types.d.ts +0 -104
  1303. package/dist/server/ui/index.d.ts +0 -64
  1304. package/dist/server/user/app-auth.d.ts +0 -74
  1305. package/dist/server/user/index.d.ts +0 -461
  1306. package/dist/server/workflow/index.d.ts +0 -70
  1307. package/dist/server/workflow/store.d.ts +0 -19
  1308. package/dist/server/workflows/index.d.ts +0 -267
  1309. package/dist/shared/router/trie.d.ts +0 -69
  1310. /package/dist/{server → level0}/db/filter.d.ts +0 -0
  1311. /package/dist/{server → level0}/db/ops.d.ts +0 -0
  1312. /package/dist/{server → level0}/db/query.d.ts +0 -0
  1313. /package/dist/{shared → level0}/router/chain.d.ts +0 -0
  1314. /package/dist/{shared → level0}/router/context.d.ts +0 -0
  1315. /package/dist/{shared → level0}/router/ctx-fields.d.ts +0 -0
  1316. /package/dist/{shared → level0}/router/pipeline.d.ts +0 -0
  1317. /package/dist/{shared → level0}/router/types.d.ts +0 -0
  1318. /package/dist/{client/vdom/core → level0/vdom}/command/create.d.ts +0 -0
  1319. /package/dist/{client/vdom/core → level0/vdom}/command/index.d.ts +0 -0
  1320. /package/dist/{client/vdom/core → level0/vdom}/command/insert.d.ts +0 -0
  1321. /package/dist/{client/vdom/core → level0/vdom}/command/lifecycle.d.ts +0 -0
  1322. /package/dist/{client/vdom/core → level0/vdom}/command/props.d.ts +0 -0
  1323. /package/dist/{client/vdom/core → level0/vdom}/field/key.d.ts +0 -0
  1324. /package/dist/{client/vdom/core → level0/vdom}/node/hole.d.ts +0 -0
  1325. /package/dist/{shared → level0}/zod.d.ts +0 -0
  1326. /package/dist/{client/vdom/core → level1/vdom}/async-guard.d.ts +0 -0
  1327. /package/dist/{client → level1}/vdom/dev/effect-guard.d.ts +0 -0
  1328. /package/dist/{client → level1}/vdom/dev/error-counter.d.ts +0 -0
  1329. /package/dist/{client/vdom/core → level1/vdom}/node/portal.d.ts +0 -0
  1330. /package/dist/{client → level1}/vdom/observable/index.d.ts +0 -0
  1331. /package/dist/{client → level1}/vdom/observable/observable.d.ts +0 -0
  1332. /package/dist/{client → level1}/vdom/observable/operators.d.ts +0 -0
  1333. /package/dist/{client → level1}/vdom/observable/sources.d.ts +0 -0
  1334. /package/dist/{client → level1}/vdom/observable/types.d.ts +0 -0
  1335. /package/dist/{client → level1}/vdom/store.d.ts +0 -0
  1336. /package/dist/{client/vdom/core → level1/vdom}/v2/spy.d.ts +0 -0
  1337. /package/dist/{server → level2}/db/consistency.d.ts +0 -0
  1338. /package/dist/{server/core → level2}/error-counter.d.ts +0 -0
  1339. /package/dist/{client → level3}/vdom/browser/Browser.d.ts +0 -0
  1340. /package/dist/{client → level3}/vdom/browser/create-client-browser.d.ts +0 -0
  1341. /package/dist/{client → level3}/vdom/context/data.d.ts +0 -0
  1342. /package/dist/{client/vdom/core → level3/vdom}/field/attributes.d.ts +0 -0
  1343. /package/dist/{client/vdom/core → level3/vdom}/field/events.d.ts +0 -0
  1344. /package/dist/{client/vdom/core → level3/vdom}/field/input-sync.d.ts +0 -0
  1345. /package/dist/{client/vdom/core → level3/vdom}/field/props.d.ts +0 -0
  1346. /package/dist/{client/vdom/core → level3/vdom}/field/ref.d.ts +0 -0
  1347. /package/dist/{client/vdom/core → level3/vdom}/field/style.d.ts +0 -0
  1348. /package/dist/{client → level3}/vdom/hooks/basic.d.ts +0 -0
  1349. /package/dist/{client → level3}/vdom/hooks/controlled.d.ts +0 -0
  1350. /package/dist/{client → level3}/vdom/hooks/drag-media.d.ts +0 -0
  1351. /package/dist/{client → level3}/vdom/hooks/input.d.ts +0 -0
  1352. /package/dist/{client → level3}/vdom/hooks/observe.d.ts +0 -0
  1353. /package/dist/{client → level3}/vdom/hooks/popup.d.ts +0 -0
  1354. /package/dist/{client → level3}/vdom/hooks/signal.d.ts +0 -0
  1355. /package/dist/{client → level3}/vdom/hooks/stable.d.ts +0 -0
  1356. /package/dist/{client/vdom/core → level3/vdom}/patch/fields.d.ts +0 -0
  1357. /package/dist/{client/vdom/core → level3/vdom}/transform/component.d.ts +0 -0
  1358. /package/dist/{client/vdom/core → level3/vdom}/transform/element.d.ts +0 -0
  1359. /package/dist/{client/vdom/core → level3/vdom}/transform/fragment.d.ts +0 -0
  1360. /package/dist/{client/vdom/core → level3/vdom}/transform/hole.d.ts +0 -0
  1361. /package/dist/{client/vdom/core → level3/vdom}/transform/text.d.ts +0 -0
  1362. /package/dist/{client/vdom/core → level3/vdom}/v2/serve.d.ts +0 -0
  1363. /package/dist/{client → level4/client}/layout/decl.d.ts +0 -0
  1364. /package/dist/{client → level4/client}/layout/define.d.ts +0 -0
  1365. /package/dist/{client → level5/client}/components/Chart/chart-utils.d.ts +0 -0
  1366. /package/dist/{client → level5/client}/components/CodeBlock/highlight.d.ts +0 -0
  1367. /package/dist/{client → level5/client}/components/DatePicker/calendar-utils.d.ts +0 -0
  1368. /package/dist/{client → level5/client}/components/DiffView/diff-utils.d.ts +0 -0
  1369. /package/dist/{client → level5/client}/components/Editor/edit-events.d.ts +0 -0
  1370. /package/dist/{client → level5/client}/components/Editor/model/apply.d.ts +0 -0
  1371. /package/dist/{client → level5/client}/components/Editor/model/diff.d.ts +0 -0
  1372. /package/dist/{client → level5/client}/components/Editor/model/dom.d.ts +0 -0
  1373. /package/dist/{client → level5/client}/components/Editor/model/history.d.ts +0 -0
  1374. /package/dist/{client → level5/client}/components/Editor/model/html.d.ts +0 -0
  1375. /package/dist/{client → level5/client}/components/Editor/model/inverse.d.ts +0 -0
  1376. /package/dist/{client → level5/client}/components/Editor/model/types.d.ts +0 -0
  1377. /package/dist/{client → level5/client}/components/Editor/tools/table.d.ts +0 -0
  1378. /package/dist/{client → level5/client}/components/Editor/tools/types.d.ts +0 -0
  1379. /package/dist/{client → level5/client}/components/FilePreview/markdown.d.ts +0 -0
  1380. /package/dist/{client → level5/client}/components/Markdown/parser.d.ts +0 -0
  1381. /package/dist/{client → level5/client}/components/OfficeEditor/ai/ai-bridge.d.ts +0 -0
  1382. /package/dist/{client → level5/client}/components/OfficeEditor/model/apply.d.ts +0 -0
  1383. /package/dist/{client → level5/client}/components/OfficeEditor/model/types.d.ts +0 -0
  1384. /package/dist/{client → level5/client}/components/Pipeline/dag-utils.d.ts +0 -0
  1385. /package/dist/{client → level5/client}/components/QRCode/qr.d.ts +0 -0
  1386. /package/dist/{client → level5/client}/components/Sparkline/sparkline-utils.d.ts +0 -0
  1387. /package/dist/{client → level5/client}/office/docx.d.ts +0 -0
  1388. /package/dist/{client → level5/client}/office/pptx.d.ts +0 -0
  1389. /package/dist/{client → level5/client}/office/xlsx.d.ts +0 -0
  1390. /package/dist/{client → level5/client}/office/xml.d.ts +0 -0
  1391. /package/dist/{client → level5/client}/office/zip.d.ts +0 -0
  1392. /package/dist/{client → level5/client}/vdom/commands.d.ts +0 -0
  1393. /package/dist/{server → level5/server}/ai/agent.d.ts +0 -0
  1394. /package/dist/{server → level5/server}/ai/approvals.d.ts +0 -0
  1395. /package/dist/{server → level5/server}/ai/client.d.ts +0 -0
  1396. /package/dist/{server → level5/server}/ai/memory-server.d.ts +0 -0
  1397. /package/dist/{server → level5/server}/ai/memory.d.ts +0 -0
  1398. /package/dist/{server → level5/server}/ai/multimodal.d.ts +0 -0
  1399. /package/dist/{server → level5/server}/ai/openai.d.ts +0 -0
  1400. /package/dist/{server → level5/server}/ai/sse.d.ts +0 -0
  1401. /package/dist/{server → level5/server}/db/postgres/pool.d.ts +0 -0
  1402. /package/dist/{server → level5/server}/db/postgres/protocol.d.ts +0 -0
  1403. /package/dist/{server → level5/server}/db/postgres/schema.d.ts +0 -0
  1404. /package/dist/{server → level5/server}/db/redis/commands.d.ts +0 -0
  1405. /package/dist/{server → level5/server}/db/redis/connection.d.ts +0 -0
  1406. /package/dist/{server → level5/server}/db/redis/pipeline.d.ts +0 -0
  1407. /package/dist/{server → level5/server}/db/redis-server.d.ts +0 -0
  1408. /package/dist/{server → level5/server}/db/server.d.ts +0 -0
  1409. /package/dist/{server → level5/server}/email/api.d.ts +0 -0
  1410. /package/dist/{server → level5/server}/email/contracts.d.ts +0 -0
  1411. /package/dist/{server → level5/server}/email/memory-email-server.d.ts +0 -0
  1412. /package/dist/{server → level5/server}/make-executable-schema.d.ts +0 -0
  1413. /package/dist/{server → level5/server}/postgres/client.d.ts +0 -0
  1414. /package/dist/{server → level5/server}/redis/client.d.ts +0 -0
  1415. /package/dist/{server → level5/server}/scheduler/cron.d.ts +0 -0
  1416. /package/dist/{server → level5/server}/ui/html-safe.d.ts +0 -0
  1417. /package/dist/{server → level5/server}/user/password.d.ts +0 -0
  1418. /package/dist/{server → level5/server}/user/token.d.ts +0 -0
  1419. /package/dist/{server → level5/server}/workflow/contracts.d.ts +0 -0
  1420. /package/dist/{server → level5/server}/workflow/expression.d.ts +0 -0
  1421. /package/dist/{server → level5/server}/workflow/runner.d.ts +0 -0
  1422. /package/dist/{server → level5/server}/workflow/std.d.ts +0 -0
  1423. /package/dist/{server → level5/server}/workflow/steps.d.ts +0 -0
  1424. /package/dist/{server → level5/server}/workflow/tojs.d.ts +0 -0
  1425. /package/dist/{server → level5/server}/workflow/validate.d.ts +0 -0
  1426. /package/dist/{server → level5/server}/workflow/views.d.ts +0 -0
  1427. /package/dist/{server → level5/server}/workflow/wfjs.d.ts +0 -0
  1428. /package/dist/{server → level5/server}/workflows/cron.d.ts +0 -0
  1429. /package/dist/{dev → level6/dev}/index.d.ts +0 -0
@@ -1,10 +1,10 @@
1
- var g=(a,t)=>t&&Object.keys(t).length?`${a} { ${Object.entries(t).map(([i,e])=>`${i}: ${e};`).join(" ")} }`:"",v=a=>a.replace(/^0\\.|^0\\./gm,"").replace(/\s+/g," ").trim();function w(a){let t=[];for(let i of a){let e=`.${i.class}`,o=g(e,i.base??{});o&&t.push(o);let c=g(`:where(${e})`,i.defaults??{});c&&t.push(c);for(let[s,n]of Object.entries(i.variants??{})){let r=`.${s}`,l=g(r,{...i.base??{},...n.cover??{}});l&&t.push(l);let f=g(`:where(${r})`,{...i.defaults??{},...n.defaults??{}});f&&t.push(f)}}return t.join(`
2
- `)}function y(a){let t=new Map,i=a.replace(/\/\*[\s\S]*?\*\//g,""),e=/([^{}]+)\{([^{}]*)\}/g,o;for(;o=e.exec(i);){let c=o[1].replace(/\s+/g," ").trim(),s=new Map;for(let r of o[2].split(";")){let l=r.indexOf(":");l<0||s.set(r.slice(0,l).trim(),r.slice(l+1).trim())}let n=t.get(c);if(n)for(let[r,l]of s)n.set(r,l);else t.set(c,s)}return t}function j(a,t){let i=y(a),e=y(t);for(let[o,c]of i){let s=e.get(o);if(!s)return!1;for(let[n,r]of c)if(v(s.get(n)??"")!==v(r))return!1}return!0}var m=[{class:"wf-stack",base:{display:"flex","flex-direction":"column"},defaults:{gap:"var(--wf-gap, var(--wf-gap-md))","align-items":"var(--wf-align, stretch)"}},{class:"wf-row",base:{display:"flex","flex-wrap":"wrap"},defaults:{gap:"var(--wf-gap, var(--wf-gap-md))","align-items":"var(--wf-align, center)"},variants:{"wf-row-reverse":{cover:{"flex-direction":"row-reverse"}}}},{class:"wf-items-start",base:{"--wf-align":"flex-start"}},{class:"wf-items-center",base:{"--wf-align":"center"}},{class:"wf-items-end",base:{"--wf-align":"flex-end"}},{class:"wf-items-stretch",base:{"--wf-align":"stretch"}},{class:"wf-grid",base:{display:"grid","grid-template-columns":"var(--wf-cols, repeat(auto-fill, minmax(280px, 1fr)))"},defaults:{gap:"var(--wf-gap, var(--wf-gap-lg))"}},{class:"wf-center",base:{display:"flex","flex-direction":"column","align-items":"center","justify-content":"center"}},{class:"wf-justify-between",base:{display:"flex","justify-content":"space-between"},defaults:{"align-items":"var(--wf-align, center)",gap:"var(--wf-gap, var(--wf-gap-md))"}},{class:"wf-justify-end",base:{display:"flex","justify-content":"flex-end"},defaults:{"align-items":"var(--wf-align, center)",gap:"var(--wf-gap, var(--wf-gap-md))"}},{class:"wf-justify-center",base:{display:"flex","justify-content":"center"},defaults:{"align-items":"var(--wf-align, center)",gap:"var(--wf-gap, var(--wf-gap-md))"}},{class:"wf-fill",base:{flex:"1","min-width":"0","min-height":"0"}},{class:"wf-fill-hover",base:{"border-radius":"var(--wf-radius-sm)",padding:"2px 4px",margin:"-2px -4px",transition:"background 0.15s ease"}},{class:"wf-cover",base:{position:"fixed",inset:"0",display:"flex","align-items":"center","justify-content":"center","z-index":"var(--wf-z, var(--wf-cover-z))"}}];import{readFile as b,readdir as _}from"node:fs/promises";import{join as p,resolve as h}from"node:path";var k=["tokens","base","layout","components","utilities"],x={_tokens:"tokens",_dark:"tokens",_presets:"tokens",_props:"tokens",_base:"base",_stack:"layout",_row:"layout",_split:"layout",_center:"layout",_justify:"layout",_fill:"layout",_grid:"layout",_cluster:"layout",_cover:"layout",_position:"layout",_sticky:"layout",_overflow:"layout","_safe-area":"layout",_layer:"layout","_align-self":"layout",_nowrap:"layout",_shrink:"layout",_container:"layout","_app-shell":"layout",_surface:"utilities",_spacing:"utilities",_border:"utilities",_text:"utilities",_hidden:"utilities",_block:"utilities",_flex:"utilities",_popup:"layout"},E="tokens",O=a=>a.replace(/@import\s+['"][^'"]+['"]\s*;?\s*\n?/g,"");async function $(a){let t=await b(p(a,"weifuwu-layout.css"),"utf-8"),i=[];for(let e of t.split(`
1
+ var g=(a,t)=>t&&Object.keys(t).length?`${a} { ${Object.entries(t).map(([i,e])=>`${i}: ${e};`).join(" ")} }`:"",b=a=>a.replace(/^0\\.|^0\\./gm,"").replace(/\s+/g," ").trim();function w(a){let t=[];for(let i of a){let e=`.${i.class}`,o=g(e,i.base??{});o&&t.push(o);let c=g(`:where(${e})`,i.defaults??{});c&&t.push(c);for(let[s,n]of Object.entries(i.variants??{})){let r=`.${s}`,l=g(r,{...i.base??{},...n.cover??{}});l&&t.push(l);let f=g(`:where(${r})`,{...i.defaults??{},...n.defaults??{}});f&&t.push(f)}}return t.join(`
2
+ `)}function y(a){let t=new Map,i=a.replace(/\/\*[\s\S]*?\*\//g,""),e=/([^{}]+)\{([^{}]*)\}/g,o;for(;o=e.exec(i);){let c=o[1].replace(/\s+/g," ").trim(),s=new Map;for(let r of o[2].split(";")){let l=r.indexOf(":");l<0||s.set(r.slice(0,l).trim(),r.slice(l+1).trim())}let n=t.get(c);if(n)for(let[r,l]of s)n.set(r,l);else t.set(c,s)}return t}function j(a,t){let i=y(a),e=y(t);for(let[o,c]of i){let s=e.get(o);if(!s)return!1;for(let[n,r]of c)if(b(s.get(n)??"")!==b(r))return!1}return!0}var m=[{class:"wf-stack",base:{display:"flex","flex-direction":"column"},defaults:{gap:"var(--wf-gap, var(--wf-gap-md))","align-items":"var(--wf-align, stretch)"}},{class:"wf-row",base:{display:"flex","flex-wrap":"wrap"},defaults:{gap:"var(--wf-gap, var(--wf-gap-md))","align-items":"var(--wf-align, center)"},variants:{"wf-row-reverse":{cover:{"flex-direction":"row-reverse"}}}},{class:"wf-items-start",base:{"--wf-align":"flex-start"}},{class:"wf-items-center",base:{"--wf-align":"center"}},{class:"wf-items-end",base:{"--wf-align":"flex-end"}},{class:"wf-items-stretch",base:{"--wf-align":"stretch"}},{class:"wf-grid",base:{display:"grid","grid-template-columns":"var(--wf-cols, repeat(auto-fill, minmax(280px, 1fr)))"},defaults:{gap:"var(--wf-gap, var(--wf-gap-lg))"}},{class:"wf-center",base:{display:"flex","flex-direction":"column","align-items":"center","justify-content":"center"}},{class:"wf-justify-between",base:{display:"flex","justify-content":"space-between"},defaults:{"align-items":"var(--wf-align, center)",gap:"var(--wf-gap, var(--wf-gap-md))"}},{class:"wf-justify-end",base:{display:"flex","justify-content":"flex-end"},defaults:{"align-items":"var(--wf-align, center)",gap:"var(--wf-gap, var(--wf-gap-md))"}},{class:"wf-justify-center",base:{display:"flex","justify-content":"center"},defaults:{"align-items":"var(--wf-align, center)",gap:"var(--wf-gap, var(--wf-gap-md))"}},{class:"wf-fill",base:{flex:"1","min-width":"0","min-height":"0"}},{class:"wf-fill-hover",base:{"border-radius":"var(--wf-radius-sm)",padding:"2px 4px",margin:"-2px -4px",transition:"background 0.15s ease"}},{class:"wf-cover",base:{position:"fixed",inset:"0",display:"flex","align-items":"center","justify-content":"center","z-index":"var(--wf-z, var(--wf-cover-z))"}}];import{readFile as v,readdir as _}from"node:fs/promises";import{join as p,resolve as h}from"node:path";var k=["tokens","base","layout","components","utilities"],x={_tokens:"tokens",_dark:"tokens",_presets:"tokens",_props:"tokens",_base:"base",_stack:"layout",_row:"layout",_split:"layout",_center:"layout",_justify:"layout",_fill:"layout",_grid:"layout",_cluster:"layout",_cover:"layout",_position:"layout",_sticky:"layout",_overflow:"layout","_safe-area":"layout",_layer:"layout","_align-self":"layout",_nowrap:"layout",_shrink:"layout",_container:"layout","_app-shell":"layout",_surface:"utilities",_spacing:"utilities",_border:"utilities",_text:"utilities",_hidden:"utilities",_block:"utilities",_flex:"utilities",_popup:"layout"},E="tokens",O=a=>a.replace(/@import\s+['"][^'"]+['"]\s*;?\s*\n?/g,"");async function $(a){let t=await v(p(a,"weifuwu-layout.css"),"utf-8"),i=[];for(let e of t.split(`
3
3
  `)){let o=e.match(/@import\s+['"]([^'"]+)['"]/);o&&i.push(o[1].replace(/^\.\//,""))}if(!i.length)throw new Error(`layout \u5165\u53E3\u65E0 @import\uFF08${a}/weifuwu-layout.css\uFF09\u2014\u2014\u88C5\u914D\u5355\u6E90\u5931\u6548`);return i}async function L(a){try{let t=await _(a);return t.includes("weifuwu-layout.css")&&t.some(i=>/^_[a-z-]+\.css$/.test(i))}catch{return!1}}async function R(a){let t=h(a),i=await $(t),e=[p(t,"weifuwu-layout.css")],o=[];for(let s of i){if(s==="_stack.css"){e.push(p(t,"decl.ts"),p(t,"define.ts")),o.push(`@layer ${x._stack} {
4
4
  ${w(m)}
5
- }`);continue}if(s==="_row.css")continue;let n=p(t,s);e.push(n);let r=O(await b(n,"utf-8")).trim(),l=s.replace(/\.css$/,""),f=x[l];if(!f)throw new Error(`layout \u6587\u4EF6\u672A\u767B\u8BB0 @layer \u6620\u5C04: ${s}\uFF08\u5728 src/client/layout/bundle.ts LAYER_OF \u4E2D\u767B\u8BB0\uFF09`);o.push(f===E?r:`@layer ${f} {
5
+ }`);continue}if(s==="_row.css")continue;let n=p(t,s);e.push(n);let r=O(await v(n,"utf-8")).trim(),l=s.replace(/\.css$/,""),f=x[l];if(!f)throw new Error(`layout \u6587\u4EF6\u672A\u767B\u8BB0 @layer \u6620\u5C04: ${s}\uFF08\u5728 src/level5/client/layout/bundle.ts LAYER_OF \u4E2D\u767B\u8BB0\uFF09`);o.push(f===E?r:`@layer ${f} {
6
6
  ${r}
7
- }`)}return{css:`/* weifuwu/client/layout \u2014 CSS \u5E03\u5C40\u539F\u8BED + \u8BBE\u8BA1 Token\uFF08\u88C5\u914D\u5355\u6E90\uFF1Asrc/client/layout/bundle.ts\uFF09 */
7
+ }`)}return{css:`/* weifuwu/client/layout \u2014 CSS \u5E03\u5C40\u539F\u8BED + \u8BBE\u8BA1 Token\uFF08\u88C5\u914D\u5355\u6E90\uFF1Asrc/level5/client/layout/bundle.ts\uFF09 */
8
8
 
9
9
  @layer ${k.join(", ")};
10
10
 
@@ -12,6 +12,6 @@ ${o.join(`
12
12
 
13
13
  `)}
14
14
  `,inputs:e}}async function S(a,t){let{css:i,inputs:e}=await R(a),o=h(t),c=(await _(o,{withFileTypes:!0})).filter(n=>n.isDirectory()).map(n=>n.name),s=`${i}@layer components {
15
- `;for(let n of c){let r=p(o,n,`${n}.css`);try{s+=`${await b(r,"utf-8")}
15
+ `;for(let n of c){let r=p(o,n,`${n}.css`);try{s+=`${await v(r,"utf-8")}
16
16
  `,e.push(r)}catch{}}return s+=`}
17
17
  `,{css:s,inputs:e}}function C(a){let t=new Map,i=/\.wf-[a-z0-9]+(?:-[a-z0-9]+)*(?:--[a-z-]+)?/g,e=a.replace(/\/\*[\s\S]*?\*\//g,""),o=(n,r)=>{for(let l of n.matchAll(i)){let f=l[0].slice(1);t.has(f)||t.set(f,r)}},c="",s=0;for(;s<e.length;){let n=e.indexOf("@layer",s);if(n===-1){c+=e.slice(s);break}let r=e.indexOf("{",n),l=e.indexOf(";",n);if(l!==-1&&(r===-1||l<r)){c+=e.slice(s,l+1),s=l+1;continue}if(r===-1){c+=e.slice(s);break}let f=e.slice(n+6,r).trim(),d=0,u=r;for(;u<e.length;u++)if(e[u]==="{")d++;else if(e[u]==="}"&&(d--,d===0)){u++;break}c+=e.slice(s,n),o(e.slice(r+1,u-1),f),s=u}return o(c,"unlayered"),t}export{x as LAYER_OF,k as LAYER_ORDER,S as bundleComponents,R as bundleLayout,w as generateLayoutCss,j as isEquivalent,L as isLayoutSourceDir,C as layerMapOf,$ as layoutEntryFiles,y as parseProps,m as structures};
@@ -1,5 +1,5 @@
1
- var yo=Object.defineProperty;var Zt=(n,e,t)=>()=>{if(t)throw t[0];try{return n&&(e=n(n=0)),e}catch(o){throw t=[o],o}};var xo=(n,e)=>{for(var t in e)yo(n,t,{get:e[t],enumerable:!0})};function $t(n,e){return!n.startsWith("aria-")||typeof e!="boolean"?null:e?"true":"false"}function Dt(n,e,t){if(e==="innerHTML"||e==="textContent"||e==="value"){n[e]=t;return}if(t==null){n.removeAttribute(e);return}let o=$t(e,t);if(o!==null){n.setAttribute(e,o);return}if(qo.has(e)){n.setAttribute(e,t?"true":"false");return}if(t===!1){n.removeAttribute(e);return}if(e==="class"||e==="className"){n.setAttribute("class",String(t));return}if(typeof t=="boolean"){n.setAttribute(e,"");return}n.setAttribute(e,String(t))}var qo,Ft=Zt(()=>{"use strict";qo=new Set(["draggable","contenteditable","spellcheck"])});var mo={};xo(mo,{VOID_ELEMENTS:()=>co,attrsToHtml:()=>po,commandToHtml:()=>Rr,escapeHtml:()=>Ne,htmlDocument:()=>Nr,kebab:()=>fo});function Ne(n){return n.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function fo(n){return n.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}function po(n){let e=[];for(let[t,o]of Object.entries(n)){let r=$t(t,o);if(r!==null){e.push(`${t}="${r}"`);continue}if(!(o==null||o===!1))if(t==="style"&&o&&typeof o=="object"){let s=Object.entries(o).filter(([,i])=>i!=null&&i!==!1).map(([i,a])=>`${fo(i)}: ${a}`).join("; ");s&&e.push(`style="${Ne(s)}"`)}else typeof o=="boolean"?e.push(`${t}=""`):e.push(`${t}="${Ne(String(o))}"`)}return e.length?" "+e.join(" "):""}function Rr(){let n=[];return new TransformStream({transform(e,t){switch(e.op){case"create":n.push(e.tag),t.enqueue(`<${e.tag}${po(e.attrs)}>`);break;case"createText":t.enqueue(Ne(e.value));break;case"createAnchor":t.enqueue("<!--wf-hole-->");break;case"close":{let o=n.pop();o&&!co.has(o)&&t.enqueue(`</${o}>`);break}case"setText":t.enqueue(Ne(e.value));break;case"insert":case"remove":case"setProp":case"ref":case"unref":case"mount":case"unmount":case"move":case"done":break}}})}function Nr(n,e={}){let t=e.rootId??"root",o=e.data?`<script>window.__DATA__=${JSON.stringify(e.data).replace(/</g,"\\u003c")}<\/script>`:"";return`<!DOCTYPE html><html><head><meta charset="utf-8"><title>${Ne(e.title??"")}</title></head><body><div id="${t}">${n}</div>${o}</body></html>`}var co,go=Zt(()=>{"use strict";Ft();co=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"])});function at(n){return n==null?null:typeof n=="string"?n:typeof n=="number"?String(n):(console.warn(`[vdom] key \u5FC5\u987B\u662F string|number\u2014\u2014\u5F53\u524D ${typeof n}\uFF08\u5FFD\u7565\u2014\u2014\u4F4D\u7F6E\u8EAB\u4EFD\uFF09`),null)}function lt(n){return at(n?.key)}function ut(n){let e={...n??{}};return delete e.key,e}function dt(n){if(!(n==null||n===!1)){if(typeof n=="string")return n.trim()||void 0;if(typeof n=="number")return String(n);if(Array.isArray(n)){let e=n.map(dt).filter(t=>!!t);return e.length?e.join(" "):void 0}if(typeof n=="object"){let e=Object.entries(n).filter(([,t])=>!!t).map(([t])=>t);return e.length?e.join(" "):void 0}}}function Qt(n){for(let e of["class","className"]){let t=n[e];t!=null&&typeof t!="string"&&(n[e]=dt(t))}return n}function H(n,e,...t){let o=ut(Qt(e??{}));return t.length===1?o.children=t[0]:t.length>1&&(o.children=t),{type:n,props:o,key:lt(e)}}function ct(n,e,t){return{type:n,props:ut(Qt(e??{})),key:at(t)??lt(e)}}var wo=ct,To=ct;var en="pos:";function Q(n,e){return`${n}.k${e.replace(/%/g,"%25").replace(/\./g,"%2E")}`}function $(n){return n==null||typeof n=="boolean"||typeof n=="string"||typeof n=="number"||Array.isArray(n)?null:n.key}function Co(n){return $(n)!==null}function ft(n){return`${en}${n}`}function tn(n){return n.startsWith(en)}function Pe(n,e){let t=new Set;for(let o of n){let r=$(o);if(r!==null){if(t.has(r)){console.warn(`[vdom] ${e}\uFF1A\u91CD\u590D key "${r}"\uFF08\u5217\u8868\u8EAB\u4EFD\u6620\u5C04\u6B67\u4E49\u2014\u2014\u589E\u5220/\u91CD\u6392\u884C\u4E3A\u4E0D\u786E\u5B9A\uFF09\u2014\u2014\u8BF7\u4E3A\u6BCF\u9879\u58F0\u660E\u552F\u4E00 key\uFF08\u6570\u636E id \u2192 keyBy\uFF09`);return}t.add(r)}}}function nn(n,e){if(n.length<2)return;let t=n.some(r=>typeof r?.type=="function"),o=n.some(r=>!Co(r)&&typeof r?.type=="function");if(t&&o){let r=n.map(s=>{let i=s;if(i==null)return"null";if(typeof i=="boolean")return"bool";if(typeof i=="string"||typeof i=="number")return"text";if(Array.isArray(i))return"arr";if(typeof i.type=="function"){let a=i.type.name;return"comp"+(a?":"+a:"")}return"el"+(i.key?`.k{${String(i.key).slice(0,16)}}`:"")});console.warn(`[vdom] ${e}\uFF1A\u5217\u8868\u542B\u65E0 key \u7684\u7EC4\u4EF6\u9879\uFF08\u957F\u5EA6 ${n.length}\uFF09\u2014\u2014\u9879: [${r.join(", ")}]\u2014\u2014\u52A8\u6001\u589E\u5220/\u91CD\u6392\u65F6\u72B6\u6001\u4F1A\u6309\u4F4D\u7F6E\u7EE7\u627F\u2014\u2014\u8BF7\u4E3A\u7EC4\u4EF6\u9879\u58F0\u660E key\uFF08\u6570\u636E id \u2192 keyBy\uFF09`)}}var on=Symbol("vdom-fragment");function le(n){return n.type===on}function pt(){return{children:new Map}}function mt(n){return n.split("/").filter(Boolean)}function ko(n,e,t){let o=e.slice(1);if(!n.children.has(":")){let s=t();s.param=o,n.children.set(":",s)}let r=n.children.get(":");if(r.param!==o)throw new Error(`[router] param conflict: ":${r.param}" already registered, cannot register ":${o}"`);return r}function Eo(n,e,t){return e==="*"?(n.wildcard=!0,n):e.startsWith(":")?ko(n,e,t):(n.children.has(e)||n.children.set(e,t()),n.children.get(e))}function rn(n,e,t){let o=mt(e),r=n;for(let s of o){if(s==="*")return r.wildcard=!0,r.wildcardValue=t,r;r=Eo(r,s,()=>pt())}return r.value=t,r}function qe(n,e,t,o,r="value"){if(t===e.length){let l=r==="value"?n.value:n.wildcardValue;return l!==void 0?{value:l,params:{...o},node:n}:null}let s=e[t],i=n.children.get(s);if(i){let l=qe(i,e,t+1,o,r);if(l)return l}let a=n.children.get(":");if(a?.param){let l={...o,[a.param]:decodeURIComponent(s)},d=qe(a,e,t+1,l,r);if(d)return d}return null}function je(n,e){let t=qe(n,e,0,{});if(t){let o=t.node.wildcardValue!==void 0;return{value:t.value,params:o?{...t.params,"*":""}:t.params,wildcard:!1}}return So(n,e,e.length)}function So(n,e,t){for(let o=0;o<=t;o++){let r=qe(n,e.slice(0,o),0,{},"wildcard");if(r)return{value:r.value,params:{...r.params,"*":e.slice(o).join("/")},wildcard:!0}}return null}function an(n){let e;try{e=new URL(n.url)}catch{return{ok:!1,reason:"invalid-url"}}let t=Oo(e);try{decodeURI(e.pathname)}catch{return{ok:!1,reason:"malformed-encoding"}}for(let o of sn(e.pathname))try{decodeURIComponent(o)}catch{return{ok:!1,reason:"malformed-encoding"}}return{ok:!0,segments:sn(e.pathname),pathname:e.pathname,query:t}}function sn(n){return n.split("/").filter(Boolean)}function ln(n){return n?{...n.params}:{}}function Oo(n){return Object.fromEntries(n.searchParams)}function Ro(n){return Response.json({error:"Bad Request",reason:n},{status:400})}async function un(n,e,t,o){let r=an(t);if(!r.ok)return Ro(r.reason);let s=je(n,r.segments),i=s?{value:s.value,params:ln(s),wildcard:s.wildcard}:null;e.enrichCtx?.(o,i,r.pathname,r.query);try{if(!i)return await e.onNotFound(t,o,r.pathname);let a=e.resolveHandler(i,t,o);if(a.kind==="not-found")return await e.onNotFound(t,o,r.pathname);if(a.kind==="not-allowed")return e.onMethodNotAllowed?await e.onMethodNotAllowed(a.methods,t,o,r.pathname):new Response("Method Not Allowed",{status:405,headers:{Allow:a.methods.join(", ")}});let l=await a.run();return e.onRouteSuccess?.(t,o,r.pathname),l}catch(a){if(e.onError)return e.onError(a,t,o,r.pathname);throw a}}function dn(n){return new Request(new URL(n,"http://localhost"))}var gt=class{root=pt();notFoundHandler=null;get(e,t){return rn(this.root,e,t),this}has(e){try{let t=new URL(e,"http://x");for(let o of t.pathname.split("/").filter(Boolean))decodeURIComponent(o);return je(this.root,mt(t.pathname))!==null}catch{return!1}}notFound(e){return this.notFoundHandler=e,this}_pipeline;get pipeline(){return this._pipeline??={resolveHandler:(e,t,o)=>({kind:"route",run:()=>e.value(t,o)}),onNotFound:(e,t)=>this.notFoundHandler?this.notFoundHandler(e,t):new Response(null,{status:404}),enrichCtx:(e,t,o,r)=>{e.params=t?{...t.params}:{},e.query=r,e.route={path:o,params:e.params,query:r}}}}async resolve(e,t){return un(this.root,this.pipeline,e,t)}};function cn(n){try{if(typeof document>"u")return;let e=document.createElement("textarea");e.value=n,e.style.position="fixed",e.style.opacity="0",e.setAttribute("readonly",""),document.body.appendChild(e),e.select();let t=document.execCommand("copy");e.remove(),!t&&typeof console<"u"&&console.warn("[browser] copyText \u964D\u7EA7\u5931\u8D25\uFF08execCommand \u8FD4\u56DE false\uFF09")}catch{}}function bt(){let n=()=>typeof document<"u"?document.documentElement:null,e=()=>typeof document<"u"?document.scrollingElement??document.documentElement:null;return{get window(){return typeof window<"u"?window:void 0},get document(){return typeof document<"u"?document:void 0},copyText(t){if(typeof navigator<"u"&&navigator.clipboard?.writeText){navigator.clipboard.writeText(t).catch(()=>cn(t));return}cn(t)},downloadFile(t,o,r="text/plain"){try{let s=typeof document<"u"?document:null;if(!s)return!1;let i=new Blob([o],{type:r}),a=URL.createObjectURL(i),l=s.createElement("a");return l.href=a,l.download=t,l.click(),URL.revokeObjectURL(a),!0}catch{return!1}},activeElement:()=>typeof document<"u"?document.activeElement:null,byId:t=>typeof document<"u"?document.getElementById(t):null,query:t=>typeof document<"u"?document.querySelector(t):null,queryAll:t=>typeof document<"u"?document.querySelectorAll(t):null,createElement:t=>typeof document<"u"?document.createElement(t):null,createElementNS:(t,o)=>typeof document<"u"?document.createElementNS(t,o):null,createDocumentFragment:()=>typeof document<"u"?document.createDocumentFragment():null,createComment:t=>typeof document<"u"?document.createComment(t):null,createTextNode:t=>typeof document<"u"?document.createTextNode(t):null,addEventListener:(t,o,r)=>{typeof window<"u"&&window.addEventListener(t,o,r)},removeEventListener:(t,o,r)=>{typeof window<"u"&&window.removeEventListener(t,o,r)},scrollTo:t=>{typeof window<"u"&&window.scrollTo(0,t)},reload:()=>{typeof window<"u"&&window.location.reload()},scrollTop:()=>e()?.scrollTop??0,matchMedia:t=>typeof window<"u"&&typeof window.matchMedia=="function"?window.matchMedia(t):null,visualViewport:()=>typeof window<"u"?window.visualViewport??null:null,scrollingElement:()=>e(),bodyElement:()=>typeof document<"u"?document.body:null,bodyAppend:t=>{typeof document<"u"&&document.body.appendChild(t)},bodyRemove:t=>{typeof document<"u"&&document.body.contains(t)&&document.body.removeChild(t)},clearBody:()=>{typeof document<"u"&&(document.body.innerHTML="")},event:(t,o)=>typeof window<"u"?new window.Event(t,o):new Event(t,o),rootElement:()=>n(),getSelection:()=>typeof window<"u"?window.getSelection():null,selectionText:()=>typeof window<"u"?window.getSelection()?.toString()??"":"",storageGet:t=>{try{return typeof window<"u"?window.localStorage.getItem(t):null}catch{return null}},storageSet:(t,o)=>{try{typeof window<"u"&&window.localStorage.setItem(t,o)}catch{}},timeout:(t,o)=>typeof window<"u"?window.setTimeout(t,o):0,pathname:()=>typeof window<"u"?window.location.pathname:"",setHash:t=>{typeof window<"u"&&(window.location.hash=t)},viewportHeight:()=>typeof window<"u"?window.innerHeight:0,onFormRestore:t=>{t()}}}var Be=()=>{},B=class{_subscribe;constructor(e){this._subscribe=e}subscribe(e){let t=No(e),o=!1,r=null,s={next:l=>{o||t.next(l)},error:l=>{o||(o=!0,t.error(l),r?.())},complete:()=>{o||(o=!0,t.complete(),r?.())}},i=this._subscribe(s);r=typeof i=="function"?i:i?()=>i.unsubscribe():Be,o&&r();let a=!1;return{unsubscribe(){a||(a=!0,o||(o=!0,r?.()))}}}pipe(...e){return e.reduce((t,o)=>o(t),this)}};function No(n){return{next:n?.next??Be,error:n?.error??Be,complete:n?.complete??Be}}function I(n){return new B(n)}var vt=()=>{},N=class{subs=new Set;closed=!1;asObservable(){return I(e=>this.closed?(e.complete(),vt):(this.subs.add(e),()=>{this.subs.delete(e)}))}subscribe(e){return this.asObservable().subscribe(e)}next(e){if(!this.closed)for(let t of this.subs)t.next(e)}error(e){if(!this.closed){this.closed=!0;for(let t of this.subs)t.error(e);this.subs.clear()}}complete(){if(!this.closed){this.closed=!0;for(let e of this.subs)e.complete();this.subs.clear()}}},ae=class extends N{value;constructor(e){super(),this.value=e}get(){return this.value}next(e){this.value=e,super.next(e)}asObservable(){return I(e=>this.closed?(e.complete(),vt):(e.next(this.value),this.subs.add(e),()=>{this.subs.delete(e)}))}};function ce(n,e){return I(t=>{let o=!0,r=()=>{o&&(o=!1,t.complete())},s=e?.signal;if(s){if(s.aborted)return r(),vt;s.addEventListener("abort",r,{once:!0})}return n.then(i=>{o&&(o=!1,t.next(i),t.complete())},i=>{o&&(o=!1,t.error(i))}),()=>{o=!1,s&&s.removeEventListener("abort",r)}})}function ht(n,e){return I(t=>{let o=n(r=>t.next(r));return e&&t.next(e()),()=>{typeof o=="function"&&o()}})}function yt(n){return e=>new B(t=>e.subscribe({next:o=>t.next(n(o)),error:o=>t.error(o),complete:()=>t.complete()}))}function xt(n){return e=>new B(t=>e.subscribe({next:o=>{n(o)&&t.next(o)},error:o=>t.error(o),complete:()=>t.complete()}))}function fe(n){return e=>new B(t=>e.subscribe({next:o=>{try{n(o)}catch(r){t.error(r);return}t.next(o)},error:o=>t.error(o),complete:()=>t.complete()}))}function wt(){return n=>new B(e=>{let t=[];n.subscribe({next:o=>t.push(o),error:o=>e.error(o),complete:()=>{e.next(t),e.complete()}})})}function Tt(n){return e=>new B(t=>{let o=new Set,r=!1,s=!1,i=()=>{s&&o.size===0&&(r=!0,t.complete())},a=e.subscribe({next:l=>{let d=setTimeout(()=>{o.delete(d),!r&&(t.next(l),i())},n);o.add(d)},error:l=>{r=!0,t.error(l)},complete:()=>{s=!0,i()}});return()=>{r=!0;for(let l of o)clearTimeout(l);o.clear(),a.unsubscribe()}})}function be(n,e){let t=e;return o=>new B(r=>o.subscribe({next:s=>{t=n(t,s),r.next(t)},error:s=>r.error(s),complete:()=>r.complete()}))}function Me(n){return e=>new B(t=>{let o=null,r=!1,s=e.subscribe({next:i=>{o?.unsubscribe();let a=!1,l=n(i).subscribe({next:d=>t.next(d),error:d=>t.error(d),complete:()=>{a=!0,o=null}});o=a?null:l},error:i=>t.error(i),complete:()=>{r=!0,o||t.complete()}});return()=>{s.unsubscribe(),o?.unsubscribe()}})}function Ct(n){return e=>new B(t=>{let o=null,r=e.subscribe({next:s=>{if(o)return;let i=!1,a=n(s).subscribe({next:l=>t.next(l),error:l=>t.error(l),complete:()=>{i=!0,o=null}});o=i?null:a},error:s=>t.error(s),complete:()=>{o||t.complete()}});return()=>{r.unsubscribe(),o?.unsubscribe()}})}function kt(n){return e=>new B(t=>{if(n<=0)return t.complete(),()=>{};let o=0,r=null;return r=e.subscribe({next:s=>{o++,t.next(s),o>=n&&(t.complete(),r?.unsubscribe())},error:s=>t.error(s),complete:()=>t.complete()}),()=>r?.unsubscribe()})}function Et(n,e){let t=e?.trailing??!1;return o=>new B(r=>{let s=null,i=!1,a,l=!1,d=!1,u=b=>{d||r.next(b)},c=()=>{s=null,t&&l&&(l=!1,u(a)),i=!1},f=o.subscribe({next:b=>{i?t&&(a=b,l=!0):(i=!0,u(b),s=setTimeout(c,n))},error:b=>{d=!0,s&&clearTimeout(s),r.error(b)},complete:()=>{d=!0,s&&clearTimeout(s),r.complete()}});return()=>{d=!0,s&&clearTimeout(s),f.unsubscribe()}})}var Ke=globalThis;Ke.__wfErrState||(Ke.__wfErrState={errState:new Map,totalErrors:0});var{errState:ze,totalErrorsRef:St}={errState:Ke.__wfErrState.errState,totalErrorsRef:Ke.__wfErrState},fn={get:()=>St.totalErrors,inc:()=>{St.totalErrors++},reset:()=>{St.totalErrors=0}};function Ie(n,e){fn.inc();let t=ze.get(n);if(t){t.count++;return}ze.set(n,{shown:!0,count:1}),console.error(`[vdom] renderFn \u9519\u8BEF\uFF08${n}\uFF09\u2014\u2014\u7EC4\u4EF6\u7EA7 hole \u964D\u7EA7\uFF08\u4E0B\u4E00\u62CD\u91CD\u8BD5\u81EA\u6108\uFF09:`,e)}function Ot(n){ze.delete(n)}function ve(){let n={};for(let[e,t]of ze)n[e]=t.count;return{total:fn.get(),byComp:n}}function pn(n){let e=new Set,t=new N,o=n,r=()=>{for(let s of[...e])s();t.next(typeof o=="object"&&o!==null?{...o}:o)};return{get state(){return o},subscribe(s){return e.add(s),()=>{e.delete(s)}},set(s){typeof o=="object"&&o!==null&&!Array.isArray(o)&&typeof s=="object"&&s!==null?o={...o,...s}:o=s,r()},update(s){let i=s(o);i!==void 0&&(typeof o!="object"||o===null||i!==o)&&(o=i),r()},notify:r,changes$:t.asObservable()}}function Rt(n){let e=pn(n),t=(()=>e.state);return t.set=o=>e.set(o),t.update=o=>e.update(o),t.subscribe=o=>e.subscribe(o),t.notify=()=>e.notify(),t.store=e,t}function Vo(n,e,t=(o,r)=>o===r){let o,r,s=!1;return()=>{let i=n.map(a=>a());return(!s||i.some((a,l)=>!t(r[l],a)))&&(r=i,o=e(i),s=!0),o}}function q(n,e){let t=globalThis.__wfSpy;t&&t.length<1e3&&t.push({at:Date.now()%1e5,kind:n,data:e===void 0?void 0:String(e).slice(0,80)})}function te(n,e,t,o){let r=n.getInstanceData(),s=r.get(e);if(!s){let i=t,a=!0,l=new N,d=e.subscribe({next:f=>{let b=f!==i;i=f,b&&!a&&l.next()},error:f=>{console.error("[vdom] useObservable:",f)}});a=!1;let c=(o?.throttleMs&&o.throttleMs>0?l.asObservable().pipe(Et(o.throttleMs,{trailing:!0})):l.asObservable()).subscribe({next:()=>{q("obs:next",String(i)+" \u2192 req:render"),n.requestRender()}});n.onUnmount(()=>{d.unsubscribe(),c.unsubscribe()}),s={get:()=>i},r.set(e,s)}return()=>s.get()}function mn(n,e,t){if(typeof e=="function"){let r=e;return i=>{i?r(i):t?.()}}return{current:e}}function gn(n,e,t){let o=typeof e=="object"?e:void 0,r=typeof e=="boolean"?e:!1,s=o??t,i=n.nextHookIndex(),a=n.getHookState(i)??{open:r};n.setHookState(i,a);let l=s?.open!==void 0;return{get open(){return s?.open??a.open},setOpen(d){l?(s?.onOpenChange||console.warn(`[vdom] useOpen${o?.name?`(${o.name})`:""} \u53D7\u63A7\u7F3A onOpenChange \u56DE\u8C03\u2014\u2014\u4EA4\u4E92\u9759\u9ED8\u5931\u6548`),s?.onOpenChange?.(d)):(a.open=d,n.requestRender())},toggle(){this.setOpen(!this.open)}}}function Ye(n,e,t){let o=t?e:(()=>!0),r=t??e,s=n.getBrowser()?.window;if(!s)return()=>{};let i=l=>{if(typeof o=="string"){if(l.key!==o)return}else if(!o(l))return;r(l)};s.addEventListener("keydown",i);let a=()=>s.removeEventListener("keydown",i);return n.onUnmount(a),a}function bn(n,e,t,o,r,s,i,a){let l=n.getBoundingClientRect();if(l.width===0&&l.height===0)return null;let d=e.innerWidth,u=e.innerHeight,c,f;switch(r){case"bottom":c=l.bottom+s,f=a?l.left+l.width/2-t/2:l.left;break;case"top":c=l.top-o-s,f=a?l.left+l.width/2-t/2:l.left;break;case"left":c=a?l.top+l.height/2-o/2:l.top,f=l.left-t-s;break;case"right":c=a?l.top+l.height/2-o/2:l.top,f=l.right+s;break}return f+t>d-i&&(f=d-t-i),f<i&&(f=i),c+o>u-i&&(c=u-o-i),c<i&&(c=i),{top:c,left:f}}function vn(n,e){let t=e.getComputedStyle(n).animationName;if(t&&t!=="none")return!0;for(let o of n.children){let r=e.getComputedStyle(o).animationName;if(r&&r!=="none")return!0}return!1}function hn(n,e){let t=new N,o=te(n,Po(n,e,t),{top:0,left:0});return{get top(){return o().top},get left(){return o().left},refresh:()=>{t.next()}}}function Po(n,e,t){let o=n.getBrowser()?.window;return I(r=>{if(!o)return r.next({top:0,left:0}),r.complete(),()=>{};let s,i=()=>{let d=e.el();if(!d)return;let u=d.getBoundingClientRect();u.width===0&&u.height===0||(e.isOpen?.()??!0)&&r.next(e.compute(u))},a=()=>{s===void 0&&(s=o.requestAnimationFrame(()=>{s=void 0,i()}))};o.addEventListener("scroll",a,!0),o.addEventListener("resize",a),i();let l=t?.subscribe({next:()=>i()});return()=>{l?.unsubscribe(),s!==void 0&&o.cancelAnimationFrame(s),o.removeEventListener("scroll",a,!0),o.removeEventListener("resize",a)}})}function j(n){let e=n.children??(n.props.children===void 0?[]:n.props.children),t=o=>Array.isArray(o)?o.flatMap(t):[o];return Array.isArray(e)?e.flatMap(t):[e]}function D(n){return n!==null&&typeof n=="object"&&!Array.isArray(n)&&le(n)?j(n).reduce((e,t)=>e+D(t),0):1}function O(n,e){return`${n}.${e}`}function Ae(n){let e={};for(let[t,o]of Object.entries(n))t==="children"||t==="key"||t==="ref"||typeof o!="function"&&o!==void 0&&(e[t]=o);return e}function yn(n){return n==null||typeof n=="boolean"}function xn(n){return!(n==null||typeof n=="boolean"||typeof n=="string"||typeof n=="number"||Array.isArray(n)||typeof n=="object"&&typeof n.type=="string"||typeof n.type=="function"||typeof n.type=="symbol")}function Nt(n){return n==null?"null/undefined":typeof n=="object"?`object\uFF08type: ${typeof n.type}\uFF09`:typeof n}function Mo(n,e,t,o){return[{op:"createAnchor",id:n,...o!==void 0?{detail:o}:{}},{op:"insert",id:n,parent:e,ref:t}]}function Vt(n,e,t,o,r){for(let s of Mo(e,t,o,r))n(s)}function ne(n){return n===""?"hole":typeof n=="string"||typeof n=="number"?"text":yn(n)?"hole":Array.isArray(n)?"array":typeof n.type=="string"?"element":le(n)?"fragment":typeof n.type=="function"?"component":(xn(n),"invalid")}function Ge(n){return typeof n=="string"||typeof n=="number"?String(n):null}function Y(n){return ne(n)==="hole"}function pe(n){return ne(n)==="text"}function ue(n){if(n==null)return"hole";let e=ne(n);return e==="invalid"?"hole":e}function wn(n,e,t,o,r){let s=Ae(n.props),i=Ae(e.props);for(let[a,l]of Object.entries(i))a==="value"&&r?.formControl?o({op:"setProp",id:t,key:a,value:l}):s[a]!==l&&o({op:"setProp",id:t,key:a,value:l});for(let a of Object.keys(s))a in i||o({op:"setProp",id:t,key:a,value:void 0});for(let[a,l]of Object.entries(e.props))a==="children"||a==="key"||typeof l=="function"&&n.props[a]!==l&&o({op:"setProp",id:t,key:a,value:l,prev:n.props[a]});for(let a of Object.keys(n.props))a==="children"||a==="key"||typeof n.props[a]=="function"&&e.props[a]===void 0&&o({op:"setProp",id:t,key:a,value:void 0,prev:n.props[a]})}function Te(n,e,t){return typeof n?.type=="function"?O(e,0):Array.isArray(n)?e:Y(n)?O(e,0):t}function He(n,e,t){return typeof n?.type=="function"||Array.isArray(n)?e:t}function G(n,e,t,o,r){if(Y(n)){o({op:"remove",id:e});return}if(pe(n)){o({op:"remove",id:e});return}if(Array.isArray(n)){let l=0;for(let d of n)G(d,O(e,l),e,o,r),l+=D(d);return}let s=n;if(le(s)){let l=Number(e.slice(t.length+1)),d=j(s),u=l;for(let c of d)G(c,O(t,u),t,o,r),u+=D(c);return}if(typeof s.type=="function"){let l=s.key!==null?Q(t,s.key):e;o({op:"unmount",compId:l});let d=r?.get(l)?.lastOutput;if(d!==void 0){let u=me(d),c=Te(u,l,e),b=u!==null&&typeof u=="object"&&!Array.isArray(u)&&le(u)?e.slice(0,e.lastIndexOf(".")):He(u,l,l);G(u,c,b,o,r)}}let i=j(s),a=0;i.forEach(l=>{let d=O(e,a);l!==null&&typeof l!="string"&&typeof l!="number"&&typeof l!="boolean"&&!Array.isArray(l)?G(l,d,e,o,r):o({op:"remove",id:d}),a+=D(l)}),o({op:"remove",id:e})}var Ce=(n,e,t)=>{t.emit({op:"remove",id:t.oldId}),t.emitNode(e,t.parent,t.index,t.ref)};var ke=(n,e,t)=>{t.emit({op:"remove",id:t.oldId}),t.emitNode(e,t.parent,t.index,t.ref)};var Ee=(n,e,t)=>{G(n,t.oldId,t.parent,t.emit,t.registry),t.emitNode(e,t.parent,t.index,t.ref)};var Se=(n,e,t)=>{t.oldCompId&&t.emit({op:"unmount",compId:t.oldCompId});let o=t.registry?.get(t.oldCompId??"")?.lastOutput;if(o!==void 0){let r=me(o);G(r,Te(r,t.oldCompId??"",O(t.parent,t.index)),He(r,t.oldCompId??"",t.parent),t.emit,t.registry)}else t.emit({op:"remove",id:t.oldId});t.emitNode(e,t.parent,t.index,t.ref)};var oe=(n,e,t)=>{let o=Array.isArray(n)?n:j(n),r=t.index;for(let s of o)G(s,O(t.parent,r),t.parent,t.emit,t.registry),r+=D(s);t.emitNode(e,t.parent,t.index,t.ref)};var Io={text:{text:null,hole:Ce,element:Ce,component:Ce,fragment:Ce,array:Ce},hole:{text:ke,hole:null,element:ke,component:ke,fragment:ke,array:ke},element:{text:Ee,hole:Ee,element:null,component:Ee,fragment:Ee,array:Ee},component:{text:Se,hole:Se,element:Se,component:null,fragment:Se,array:Se},fragment:{text:oe,hole:oe,element:oe,component:oe,fragment:null,array:oe},array:{text:oe,hole:oe,element:oe,component:oe,fragment:oe,array:null}};function Pt(n,e){return Io[n]?.[e]??null}var En=0;function Sn(){return++En}function It(n,e,t,o,r){let s=[],i=new Map,a={n:0},l=new Map,d=new N;d.subscribe({next:()=>{for(let h of[...s].reverse())try{h()}catch(p){console.error("[vdom] v2 onUnmount:",p)}}});let u=Object.create(t);u.onUnmount=h=>{s.push(h)},u.ui=Ht({requestRender:()=>{q("req:render",o.slice(-18)),r?.()},onUnmount:h=>{s.push(h)},getBrowser:()=>t.browser??null,nextHookIndex:()=>a.n++,getHookState:h=>l.get(h),setHookState:(h,p)=>{l.set(h,p)},getInstanceData:()=>i,scheduleAfterRender:h=>{let p=t.afterRender;p?p(h):setTimeout(h,0)},getSharedContext:()=>t??null});let c=n(e,u),f;typeof c=="function"?f=c:f=(h=>{let p=n(h,u);return typeof p=="function"?null:p});let b=a.n;return{factory:n,renderFn:f,lastOutput:void 0,hookSeq:a,renderBase:b,instData:i,destroy$:d,disposed:!1,epoch:En}}function At(n,e){let t=n.renderFn.shouldRender;return t&&n.lastProps!==void 0&&n.lastOutput!==void 0&&!t(n.lastProps,e)?me(n.lastOutput):(n.lastProps=e,n.hookSeq.n=n.renderBase,n.renderFn(e))}function z(n,e){let t=e.get(n);if(!(!t||t.disposed)){t.disposed=!0;try{t.destroy$.next()}catch(o){console.error("[vdom] v2 destroy$:",o)}t.instData.clear(),e.delete(n)}}function Ao(n,e,t,o){let r=e.get(n),s=[];if(r){let a=r.lastOutput!==void 0?me(r.lastOutput):void 0;if(a!==void 0){let l={get:d=>{let u=e.get(d);return u?{lastOutput:u.lastOutput}:void 0}};G(a,Te(a,n,t),He(a,n,o),d=>{s.push(d)},l)}}let i=[];for(let a of s)a.op==="unmount"&&e.has(a.compId)&&i.push(a.compId);z(n,e);for(let a of i)e.has(a)&&z(a,e);return s.unshift({op:"unmount",compId:n}),s}function On(n,e,t,o){let r=n?.lastOutput;if(r===void 0)return[e+".0"];if(typeof r=="object"&&r!==null&&"kind"in r){let s=r;if(s.kind==="hole")return[e+".0"];if(s.kind==="array")return(s.items??[]).map((a,l)=>`${e}.${l}`);let i=s.v;return i?typeof i.type=="function"?[e+".0"]:[O(t,o)]:[e+".0"]}return[e+".0"]}function Ho(n,e,t,o){if(Y(n))return O(e,t);if(pe(n))return O(e,t);let r=n;if(typeof r.type!="function")return O(e,t);let s=$(r);if(s===null)return O(e,t);let i=Q(e,s);return On(o?.get(i),i,e,t)[0]}function Tn(n,e,t,o,r,s,i,a){let l=[],d=[],u=0,c=null;for(let f=0;f<e.length;f++){let b=D(e[f]);l.push(n[f]===void 0?K(e[f],t,u,c,o,s,r,i):ye(n[f],e[f],t,u,c,o,r,s,i)),c=O(t,u+b-1),u+=b}for(let f=n.length-1;f>=e.length;f--)d.push(A(he(n[f],t,Lo(n,f),r)));return a?J([...d.reverse(),...l]):(d.reverse(),J([...l,...d]))}function ye(n,e,t,o,r,s,i,a,l){let d=O(t,o),u=ne(n),c=ne(e);if(u==="text"&&c==="text")return String(n)===String(e)?A([]):A([{op:"setText",id:d,value:Ge(e)}]);if(u==="hole"&&c==="hole")return A([]);if(u==="hole")return J([A([{op:"remove",id:d}]),K(e,t,o,r,s,a,i,l)]);if(c==="hole")return Mt(n,e,t,o,r,s,a,u==="component"?$e(n,t,o):void 0,i,l);if((u==="fragment"||u==="array")&&(c==="fragment"||c==="array")){let p=Le(Array.isArray(n)?n:j(n)),v=Le(Array.isArray(e)?e:j(e));return Je(v)||Je(p)?kn(p,v,t,s,i,a,l):Tn(p,v,t,s,i,a,l,!0)}if(u===c&&typeof n!="string"&&typeof n!="number"){let p=n,v=e;if(typeof p.type=="function"&&typeof v.type=="function"){if(p.type===v.type)return Do(p,v,t,o,r,s,i,a,l);let C=$e(p,t,o),E=Ao(C,i,O(t,o),t);return J([A(E),K(v,t,o,r,s,a,i,l)])}if(typeof p.type=="string"&&typeof v.type=="string"){if(p.type===v.type){let C=[];wn(p,v,d,m=>C.push(m),{formControl:p.type==="input"||p.type==="textarea"});let E=Le(j(p)),k=Le(j(v));if(Uo(E,k,d),Je(k)||Je(E))return J([A(C),kn(E,k,d,s,i,a,l)]);let g=Tn(E,k,d,s,i,a,l,!1);return J([A(C),g])}return J([A(he(p,t,o,i)),K(v,t,o,r,s,a,i,l)])}}let f=ue(n),b=ue(e),h=ne(n)==="component"?$e(n,t,o):void 0;return Mt(n,e,t,o,r,s,a,h,i,l)}function Lo(n,e){let t=0;for(let o=0;o<e;o++)t+=D(n[o]);return t}function $o(n,e){let t=0;for(let o=0;o<e;o++)t+=D(n[o]);return t}function Do(n,e,t,o,r,s,i,a,l){let d=$e(e,t,o),u=i.get(d);if(!u||u.factory!==e.type)return u&&z(d,i),K(e,t,o,r,s,a,i,l);let c;try{c=At(u,e.props)}catch(h){return Ie(d,h),A([])}let f=u.lastOutput!==void 0?me(u.lastOutput):void 0;u.lastOutput=Xe(c);let b=Lt(c,d,t,o);return f===void 0?K(c,b.parent,b.index,r,s,a,i,l):Fo(f,c,b.parent,b.index,r,s,i,a,l)}function Fo(n,e,t,o,r,s,i,a,l){if(n===e)return A([]);let d=Array.isArray(n),u=Array.isArray(e);if(d||u){let c=d?n:[n],f=u?e:[e],b=0,h=null,p=[];for(let v=0;v<f.length;v++){let C=D(f[v]);p.push(c[v]===void 0?K(f[v],t,b,h,s,a,i,l):ye(c[v],f[v],t,b,h,s,i,a,l)),h=O(t,b+C-1),b+=C}for(let v=f.length;v<c.length;v++)p.push(A(he(c[v],t,$o(c,v),i)));return J(p)}return ye(n,e,t,o,r,s,i,a,l)}function Le(n){let e=[];for(let t of n)t!==null&&typeof t=="object"&&!Array.isArray(t)&&le(t)?e.push(...Le(j(t))):e.push(t);return e}function Uo(n,e,t){if(globalThis.__WF_NO_A_CHECK__)return;let o=c=>!Y(c)&&!pe(c)&&!Array.isArray(c),r=n.filter(o),s=e.filter(o),i=c=>typeof c?.type=="function"&&$(c)===null,a=(c,f)=>f>=c.length||Y(c[f]),l=c=>a(n,c)||i(n[c]),d=c=>a(e,c)||i(e[c]);(e.some((c,f)=>i(c)&&!l(f))||n.some((c,f)=>i(c)&&!d(f)))&&nn(s,`children\uFF08${t}\u2014\u2014\u65E0 key \u7EC4\u4EF6\u5B9E\u69FD\u7FFB\u8F6C ${r.length}\u2192${s.length}\uFF09`)}function $e(n,e,t){return n.key!==null?Q(e,n.key):O(e,t)}function xe(n,e,t,o,r,s){let i=ue(n),a=ue(e);return Pt(i,a)?Mt(n,e,"root",0,null,t,r,i==="component"?$e(n,"root",0):void 0,o,s).pipe(Cn):ye(n,e,"root",0,null,t,o,r,s).pipe(Cn)}var Cn=n=>J([n,A([{op:"done"}])]);function _o(n,e,t,o,r,s,i,a,l){return n===void 0?K(e,t,o,r,s,a,i,l):ye(n,e,t,o,r,s,i,a,l)}function kn(n,e,t,o,r,s,i){let a=[],l=(g,m)=>$(g)??ft(m),d=new Map;n.forEach((g,m)=>{let y=l(g,m);d.has(y)||d.set(y,m)});let u=new Set(e.map((g,m)=>l(g,m))),c=new Map;for(let g=0;g<n.length;g++){let m=n[g];if(Y(m)){a.push({op:"remove",id:O(t,g)});continue}if(pe(m)){a.push({op:"remove",id:O(t,g)});continue}if(Array.isArray(m))continue;let y=$(m);if(y!==null){let x=(c.get(y)??0)+1;if(c.set(y,x),x===1)continue;a.push(...he(m,t,g,r));continue}}for(let[g,m]of d)if(!u.has(g)&&(a.push(...he(n[m],t,m,r)),!tn(g))){let y=Q(t,g);r.has(y)&&z(y,r)}let f=n.map(g=>$(g)).filter(g=>g!==null&&u.has(g)),b=e.map(g=>$(g)).filter(g=>g!==null&&d.has(g)),p=!e.some((g,m)=>{let y=$(g);if(y===null||typeof g.type!="function")return!1;let x=d.get(y);return x===void 0||x===m?!1:r?.get(Q(t,y))===void 0});{let g=0;for(let m of b){let y=f.indexOf(m,g);if(y===-1){p=!1;break}g=y+1}}if(!p){n.forEach((y,x)=>{if(!(Y(y)||pe(y))&&!Array.isArray(y)){if($(y)!==null&&typeof y.type=="function"){a.push(...he(y,t,x,r,{keepSegments:!0}));return}if($(y)!==null){a.push({op:"remove",id:O(t,x)});return}a.push(...he(y,t,x,r))}});let g=[],m=null;for(let y=0;y<e.length;y++){let x=e[y],V=$(x),F=V!==null?Q(t,V):O(t,y);V!==null&&typeof x.type=="function"?g.push(K(x,t,y,m,o,s,r,i)):g.push(K(x,t,y,m,o,s,r,i)),m=O(t,y)}return J([A(a),...g])}let v=[];e.forEach((g,m)=>{let y=$(g);if(y===null)return;let x=d.get(y);x!==void 0&&x!==m&&v.push({oldIdx:x,newIdx:m})});let C=v.every(g=>g.newIdx<g.oldIdx);v.sort((g,m)=>C?g.newIdx-m.newIdx:m.newIdx-g.newIdx);for(let g of v){let m=e[g.newIdx],y=$(m);if(y!==null&&typeof m.type=="function"){let x=Q(t,y),V=On(r?.get(x),x,t,g.oldIdx);if(V.length===1&&!V[0].startsWith(x+"."))a.push({op:"move",id:V[0],parent:t,ref:null,newId:O(t,g.newIdx),noMove:!0});else{let re=g.newIdx>0?e[g.newIdx-1]:null,se=re===null?null:Ho(re,t,g.newIdx-1,r);for(let ie of V)a.push({op:"move",id:ie,parent:t,ref:se,newId:ie,noMove:!1}),se=ie}}else a.push({op:"move",id:O(t,g.oldIdx),parent:t,ref:null,newId:O(t,g.newIdx),noMove:!0})}let E=[],k=null;for(let g=0;g<e.length;g++){let m=e[g],y=$(m),x=O(t,g);if(y!==null){let V=d.get(y);V===void 0?E.push(K(m,t,g,k,o,s,r,i)):typeof m.type=="function"?E.push(_o(n[V],m,t,g,k,o,r,s,i)):E.push(ye(n[V],m,t,g,k,o,r,s,i))}else{let V=d.get(ft(g)),F=V===void 0?void 0:n[V];F!==void 0&&!Y(F)&&!pe(F)&&!Array.isArray(F)?E.push(ye(F,m,t,g,k,o,r,s,i)):E.push(K(m,t,g,k,o,s,r,i))}k=x}return J([A(a),...E])}function he(n,e,t,o,r){let s=[],i=O(e,t),a=o&&o.size>0?{get:d=>{let u=o.get(d);return u?{lastOutput:u.lastOutput}:void 0}}:void 0;if(G(n,i,e,d=>s.push(d),a),o&&!r?.keepSegments)for(let d of s)d.op==="unmount"&&o.has(d.compId)&&z(d.compId,o);else if(o&&r?.keepSegments){for(let d of s)if(d.op==="unmount"){let u=o.get(d.compId);u&&(u.lastOutput=void 0)}}return r?.keepSegments?s.filter(d=>d.op!=="unmount"):s}function Je(n){return n.some(e=>$(e)!==null)}function Mt(n,e,t,o,r,s,i,a,l,d){let u=Pt(ue(n),ue(e));if(!u)throw new Error(`[vdom] v2 \u72B6\u6001\u673A\u8FDD\u4F8B\uFF1A\u672A\u5B9A\u4E49\u8F6C\u6362 ${ue(n)} \u2192 ${ue(e)}`);let c=[],f=null,b=[],h=l&&l.size>0?{get:C=>{let E=l.get(C);return E?{lastOutput:E.lastOutput}:void 0}}:i,p={emit:C=>{let E=C;E.op==="unmount"&&l?.has(E.compId)&&b.push(E.compId),c.push(E)},emitNode:(C,E,k,g)=>{f={v:C,p:E,i:k,r:g}},oldId:O(t,o),newId:O(t,o),parent:t,index:o,ref:r,oldCompId:a,registry:h};u(n,e,p);let v=f?I(C=>{let E=f;return K(E.v,E.p,E.i,E.r,s,i,l,d).subscribe({next:g=>C.next(g),error:g=>C.error(g),complete:()=>C.complete()})}):A([]);return J([I(C=>{for(let E of b)l?.has(E)&&z(E,l);return C.complete(),()=>{}}),A(c),v])}var Ze=class{table=new Map;rootTypes=new Set;doc;dispatchBound;container;phase="active";constructor(e,t){this.doc=e,this.container=t,this.dispatchBound=this.dispatch.bind(this)}set(e,t,o){if(this.phase==="disposed"){console.error(`[vdom] \u4E8B\u4EF6\u8868\u72B6\u6001\u673A\u8FDD\u4F8B\uFF1Adisposed \u540E set(${e}, ${t}) \u88AB\u5FFD\u7565`);return}if(typeof o!="function"){console.warn(`[vdom] \u4E8B\u4EF6 ${t} \u975E\u51FD\u6570\u503C\u88AB\u8DF3\u8FC7\uFF08node ${e}\uFF09\u2014\u2014\u671F\u671B\u51FD\u6570\uFF0C\u5B9E\u9645 ${typeof o}`);return}let r=this.table.get(e);r||(r=new Map,this.table.set(e,r)),r.set(t,o),this.ensureRoot(t)}get(e,t){return this.table.get(e)?.get(t)}removeEvent(e,t){let o=this.table.get(e);o&&(o.delete(t),o.size===0&&this.table.delete(e))}remove(e){for(let t of[...this.table.keys()])(t===e||t.startsWith(e+"."))&&this.table.delete(t)}removeOne(e){this.table.delete(e)}ensureRoot(e){this.rootTypes.has(e)||(this.doc.addEventListener(e,this.dispatchBound,{capture:!0}),this.rootTypes.add(e))}dispatch(e){if(this.container){let o=e.target;if(o&&!this.container.contains(o))return}if(e.type==="contextmenu"&&window.__dbgEvt){let o=e.target,r=[...this.table.entries()].map(([s,i])=>s+":"+[...i.keys()].join("+")).join(" | ");console.error("[dbg-evt-dispatch]","target:",o?.getAttribute("data-wf-id"),"ALL:",r.slice(0,400))}let t=e.target;for(t&&t.nodeType===3&&(t=t.parentElement);t;){if(!t.hasAttribute?.("data-wf-id")){let r=t.closest?.("[data-wf-id]");if(r&&r!==t){t=r;continue}}let o=t.getAttribute?.("data-wf-id");if(o){let r=this.table.get(o)?.get(e.type);if(r){try{Object.defineProperty(e,"currentTarget",{value:t,configurable:!0})}catch{}try{r(e)}catch(s){console.error("[vdom] \u4E8B\u4EF6 handler:",s)}if(e.cancelBubble)return}}t=t.parentElement}}clear(){this.table.clear()}dispose(){if(this.phase!=="disposed"){this.phase="disposed";for(let e of this.rootTypes)this.doc.removeEventListener(e,this.dispatchBound,{capture:!0});this.rootTypes.clear(),this.table.clear()}}},Oe=/^on[A-Z]/;function De(n){return Oe.test(n)?n.slice(2).toLowerCase():null}var Qe=class{refs=new Map;phase="active";set(e,t,o){if(this.phase==="disposed"){console.error(`[vdom] ref \u8868\u72B6\u6001\u673A\u8FDD\u4F8B\uFF1Adisposed \u540E set(${e}) \u88AB\u5FFD\u7565`);return}if(o&&o!==t&&typeof o=="function")try{o(null)}catch(r){console.error("[vdom] ref prev:",r)}this.refs.set(e,t)}mount(e,t){let o=this.refs.get(e);if(typeof o=="function")try{o(t)}catch(r){console.error("[vdom] ref mount:",r)}}unmount(e){for(let[t,o]of[...this.refs])if(t===e||t.startsWith(e+".")){if(typeof o=="function")try{o(null)}catch(r){console.error("[vdom] ref unmount:",r)}this.refs.delete(t)}}unmountOne(e){let t=this.refs.get(e);if(typeof t=="function")try{t(null)}catch(o){console.error("[vdom] ref unmount:",o)}this.refs.delete(e)}remap(e,t){for(let[o,r]of[...this.refs])(o===e||o.startsWith(e+"."))&&(this.refs.delete(o),this.refs.set(t+o.slice(e.length),r))}clear(){this.refs.clear()}dispose(){this.phase!=="disposed"&&(this.phase="disposed",this.refs.clear())}};function Wo(n,e){switch(e.kind){case"begin":return"consuming";case"next":return e.matched?"consuming":"failed";case"end":return n==="consuming"?e.remaining>0?"failed":"inactive":n;case"reset":return"inactive"}}var et=class{queue=null;phase="inactive";events$;failed$;events=new N;constructor(){this.events$=this.events.asObservable(),this.events.asObservable().pipe(be(Wo,"inactive")).subscribe({next:e=>{this.phase=e}}),this.failed$=this.events.asObservable().pipe(xt(e=>e.kind==="next"&&!e.matched||e.kind==="end"&&e.remaining>0),yt(()=>{}))}begin(e){let t=[],o=r=>{t.push(r);for(let s of r.childNodes)o(s)};for(let r of e.childNodes)o(r);this.queue=t,this.events.next({kind:"begin"})}end(){if(this.phase!=="consuming")return;let e=this.queue?.length??0;this.queue=null,this.events.next({kind:"end",remaining:e})}reset(){this.queue=null,this.events.next({kind:"reset"})}next(e,t,o){if(this.phase!=="consuming")return console.error(`[vdom] absorb \u72B6\u6001\u673A\u8FDD\u4F8B\uFF1Anext \u5728 ${this.phase} \u9636\u6BB5\u8C03\u7528\uFF08\u5E94 consuming\uFF09`),null;let r=this.queue;if(!r)return null;for(;r.length>0;){let s=r.shift();if(e==="element"?s.nodeType===1&&s.tagName.toLowerCase()===t:e==="text"?s.nodeType===3:s.nodeType===8){if(e==="text"&&o!==void 0){let a=s,l=a.textContent??"";if(l!==o&&l.startsWith(o)){let d=a.splitText(o.length);r.unshift(d)}}return this.events.next({kind:"next",matched:!0}),s}}return this.events.next({kind:"next",matched:!1}),null}};Ft();var jo=new Set(["zIndex","opacity","lineHeight","zoom","fontWeight","order","flex","flexGrow","flexShrink","flexBasis","animationIterationCount","orphans","widows","columns","columnCount","columnGap","counterIncrement","counterReset","aspectRatio","scale","rotate"]);function Bo(n,e,t){if(t==null||t===!1){e.startsWith("--")&&n.style.removeProperty(e),n.style[e]="";return}if(e.startsWith("--")){n.style.setProperty(e,String(t));return}typeof t=="number"&&!jo.has(e)&&(t=`${t}px`),n.style[e]=String(t)}function Ut(n,e){if(e==null||e===!1){n.style.cssText="";return}if(typeof e=="string"){n.setAttribute("style",e);return}if(e&&typeof e=="object"){n.style.cssText="";for(let[t,o]of Object.entries(e))Bo(n,t,o)}}var tt=null,Rn=new WeakSet;function Ko(n){if(tt||(tt=new WeakSet),!Rn.has(n)){Rn.add(n);let e=tt;n.addEventListener("compositionstart",t=>{let o=t.target;o instanceof HTMLElement&&e.add(o)},!0),n.addEventListener("compositionend",t=>{let o=t.target;o instanceof HTMLElement&&e.delete(o)},!0)}return tt}function Nn(n,e){return Ko(n).has(e)}var zo=new Set(["value","checked","selected","disabled","hidden","autofocus","defaultValue","defaultChecked","innerHTML","textContent","download","indeterminate","multiple","readOnly","required","tabIndex","spellcheck","draggable","scrollTop","scrollLeft","volume","muted","paused","playbackRate","open"]);function Vn(n){return zo.has(n)}function Pn(n,e,t){if(t===void 0){if(Yo.has(e)){n[e]=!1;return}return}if(e==="value"&&n.nodeType===1){let o=n;if(n.ownerDocument&&Nn(n.ownerDocument,o))return;let r=o.value;if(r===t||String(r)===String(t))return}n[e]=t}var Yo=new Set(["disabled","checked","selected","multiple","readOnly","required","indeterminate","muted","paused","open","autofocus","draggable","hidden"]);function Fe(n,e){for(let[t,o]of Object.entries(e))t==="style"?Ut(n,o):Dt(n,t,o)}function Mn(n,e,t,o,r,s){if(o!=="ref")if(typeof r=="function"||r===void 0&&typeof s=="function"){if(Oe.test(o)){let i=De(o);i&&n.set(e,i,r)}return}else if(Oe.test(o)){let i=De(o);i&&n.set(e,i,r)}else o==="style"?Ut(t,r):Vn(o)?Pn(t,o,r):Dt(t,o,r)}var Go="http://www.w3.org/2000/svg",Jo=new Set(["svg","path","circle","line","rect","text","g","defs","marker","polyline","polygon","ellipse","use","symbol","tspan","textPath","clipPath","mask","pattern","linearGradient","radialGradient","stop"]);function In(n,e){return Jo.has(e)?n.createElementNS(Go,e):n.createElement(e)}function Xo(n,e){n.touched.add(e.id);let t=n.nodes.get(e.id);if(t&&t.nodeType===1&&t.tagName.toLowerCase()===e.tag)Fe(t,e.attrs);else if(n.absorb.queue&&!t){let r=n.absorb.next("element",e.tag);if(r)Fe(r,e.attrs),n.nodes.set(e.id,r);else{let s=In(n.doc,e.tag);Fe(s,e.attrs),n.nodes.set(e.id,s)}}else{let r=In(n.doc,e.tag);Fe(r,e.attrs),t&&(n.refRegistry.unmountOne(e.id),n.eventRegistry.removeOne(e.id),t.replaceWith(r)),n.nodes.set(e.id,r)}let o=n.nodes.get(e.id);o&&o.nodeType===1&&o.setAttribute("data-wf-id",e.id)}function Zo(n,e){n.touched.add(e.id);let t=n.nodes.get(e.id);if(t&&t.nodeType===3)t.textContent!==e.value&&(t.textContent=e.value);else if(n.absorb.queue&&!t){let o=n.absorb.next("text",void 0,e.value);if(o)o.textContent!==e.value&&(o.textContent=e.value),n.nodes.set(e.id,o);else{let r=n.doc.createTextNode(e.value);n.nodes.set(e.id,r)}}else{let o=n.doc.createTextNode(e.value);t&&t.replaceWith(o),n.nodes.set(e.id,o)}}function Qo(n,e){n.touched.add(e.id);let t=n.nodes.get(e.id);if(t&&t.nodeType===8){let o=e.detail?`wf-hole: ${e.detail}`:"wf-hole";t.textContent!==o&&(t.textContent=o)}else if(n.absorb.queue&&!t){let o=n.absorb.next("comment");if(o)n.nodes.set(e.id,o);else{let r=n.doc.createComment(e.detail?`wf-hole: ${e.detail}`:"wf-hole");n.nodes.set(e.id,r)}}else{let o=n.doc.createComment(e.detail?`wf-hole: ${e.detail}`:"wf-hole");t&&t.replaceWith(o),n.nodes.set(e.id,o)}}function er(n,e){let t=n.nodes.get(e.id);if(!t||t.isConnected)return;let o=n.parentOf(e);if(o){if(o.nodeType===3){let r=o.parentElement;if(!r)return;let s=o.nextSibling&&o.nextSibling.parentNode===r?o.nextSibling:null;r.insertBefore(t,s),t.nodeType===1&&n.refRegistry.mount(e.id,t),n.registerChild(e.parent,e.id);return}if(o.nodeType===8){console.error(`[vdom] id \u7A7A\u95F4\u8FDD\u4F8B\uFF1Ainsert ${e.id} \u7684 parent \u662F\u6CE8\u91CA\u951A\uFF08${e.parent}\uFF09\u2014\u2014\u63D2\u5230\u951A\u540E`);let r=o.parentElement;r&&r.insertBefore(t,o.nextSibling),t.nodeType===1&&n.refRegistry.mount(e.id,t),n.registerChild(e.parent,e.id);return}if(e.ref){let r=n.nodes.get(e.ref)??null;if(!r){let s=n.childIds.size>0&&n.childIds.has(e.ref)?n.collectDesc(e.ref):null;if(s){let i="",a=-1;for(let l of s){let d=n.seq.get(l)??0;d>a&&(a=d,i=l)}i&&(r=n.nodes.get(i)??null)}else{let i=e.ref+".";for(let[a,l]of n.nodes)a.startsWith(i)&&(r=l)}}r&&r.parentNode===o?o.insertBefore(t,r.nextSibling):r?o.appendChild(t):o.insertBefore(t,o.firstChild)}else o.insertBefore(t,o.firstChild);t.nodeType===1&&n.refRegistry.mount(e.id,t),n.registerChild(e.parent,e.id)}}function tr(n,e){let t=n.nodes.get(e.id);if(t){if(!e.noMove){let o=n.parentOf(e);if(!o)return;let r=e.ref?n.nodes.get(e.ref)??null:null;r?o.insertBefore(t,r.nextSibling):e.first?o.insertBefore(t,o.firstChild):o.appendChild(t)}n.remapSubtree(e.id,e.newId)}}function nr(n,e){n.refRegistry.unmountOne(e.id),n.eventRegistry.removeOne(e.id),n.nodes.get(e.id)?.remove();let t=n.childIds.size>0?n.collectDesc(e.id):null,o=t??[];if(!t){let r=e.id+".";for(let s of[...n.nodes.keys()])s.startsWith(r)&&o.push(s)}for(let r of o)n.refRegistry.unmountOne(r),n.eventRegistry.removeOne(r),n.nodes.delete(r),n.unregisterChild(r);n.nodes.delete(e.id),n.unregisterChild(e.id)}function or(n,e){let t=n.nodes.get(e.id);t&&t.nodeType===3&&(t.textContent=e.value)}function rr(n,e){let t=n.nodes.get(e.id);if(!t||t.nodeType!==1)return;let o=t;if(e.key==="ref"){let r=n.refRegistry.refs.get(e.id);if(e.value===void 0){n.refRegistry.set(e.id,void 0,r),n.refRegistry.refs.delete(e.id);return}n.refRegistry.set(e.id,e.value,r),o.isConnected&&n.refRegistry.mount(e.id,o);return}if(Oe.test(e.key)){let r=De(e.key);r&&(e.value===void 0?n.eventRegistry.removeEvent(e.id,r):n.eventRegistry.set(e.id,r,e.value));return}Mn(n.eventRegistry,e.id,o,e.key,e.value,e.prev)}function sr(n,e){let t=n.nodes.get(e.id);t&&t.nodeType===1&&typeof e.fn=="function"&&(n.refRegistry.set(e.id,e.fn),n.refRegistry.mount(e.id,t))}function ir(n,e){n.clearNodeRefs(e.id)}function ar(n,e){let t=n.registry?.get(e.compId);t&&(t.phase="mounted")}function lr(n,e){n.registry&&_t(e.compId,n.registry)}function ur(n,e){if(e.full&&n.absorb.end(),e.full&&n.touched.size>0)for(let[t,o]of[...n.nodes])n.touched.has(t)||(n.refRegistry.unmountOne(t),n.eventRegistry.removeOne(t),o.remove(),n.nodes.delete(t),n.unregisterChild(t));n.touched.clear()}function An(n,e){switch(e.op){case"create":Xo(n,e);break;case"createText":Zo(n,e);break;case"createAnchor":Qo(n,e);break;case"insert":er(n,e);break;case"move":tr(n,e);break;case"remove":nr(n,e);break;case"setText":or(n,e);break;case"setProp":rr(n,e);break;case"ref":sr(n,e);break;case"unref":ir(n,e);break;case"mount":ar(n,e);break;case"unmount":lr(n,e);break;case"done":ur(n,e);break;case"close":break}}var de=class{nodes=new Map;touched=new Set;childIds=new Map;byChild=new Map;seq=new Map;seqCounter=0;registerChild(e,t){this.byChild.set(t,e),this.seq.set(t,++this.seqCounter);let o=this.childIds.get(e);o||(o=new Set,this.childIds.set(e,o)),o.add(t)}unregisterChild(e){let t=this.byChild.get(e);if(t===void 0)return;this.byChild.delete(e),this.seq.delete(e);let o=this.childIds.get(t);o&&(o.delete(e),o.size===0&&this.childIds.delete(t))}collectDesc(e){let t=[],o=[e];for(;o.length>0;){let r=o.pop();t.push(r);let s=this.childIds.get(r);if(s)for(let i of s)o.push(i)}return t}reset(){this.nodes.clear(),this.touched.clear(),this.childIds.clear(),this.byChild.clear(),this.seq.clear(),this.seqCounter=0,this.eventRegistry.clear(),this.refRegistry.clear()}eventRegistry;refRegistry=new Qe;absorb=new et;container;doc;registry;devVerify=null;constructor(e,t,o){this.container=e,this.doc=t,this.registry=o??null,this.eventRegistry=new Ze(t,e)}dispose(){if(this.eventRegistry.dispose(),this.refRegistry.dispose(),this.registry)for(let e of[...this.registry.keys()].reverse()){let t=this.registry.get(e);if(t){for(let o of[...t.onUnmounts].reverse())try{o()}catch{}this.registry.delete(e)}}}clearNodeRefs(e){this.refRegistry.unmount(e)}remapSubtree(e,t){let o=(s,i)=>{let a=s.get(i);a!==void 0&&(s.delete(i),s.set(t+i.slice(e.length),a))};for(let s of[...this.nodes.keys()])if(s===e||s.startsWith(e+".")){o(this.nodes,s);let i=this.nodes.get(t+s.slice(e.length));i&&i.nodeType===1&&i.setAttribute("data-wf-id",t+s.slice(e.length))}for(let[s,i]of[...this.byChild]){let a=s===e||s.startsWith(e+"."),l=i===e||i.startsWith(e+".");if(!a&&!l)continue;let d=a?t+s.slice(e.length):s,u=l?t+i.slice(e.length):i;this.byChild.delete(s),this.byChild.set(d,u);let c=this.childIds.get(i);c&&(c.delete(s),c.size===0&&this.childIds.delete(i));let f=this.childIds.get(u);f||(f=new Set,this.childIds.set(u,f)),f.add(d)}let r=this.byChild.get(e);r!==void 0&&!this.byChild.has(t)&&(this.unregisterChild(e),this.registerChild(r,t)),this.refRegistry.remap(e,t);for(let s of[...this.eventRegistry.table.keys()])if(s===e||s.startsWith(e+".")){let i=this.eventRegistry.table.get(s);this.eventRegistry.table.delete(s),this.eventRegistry.table.set(t+s.slice(e.length),i)}if(this.registry){for(let s of[...this.registry.keys()])if(s===e||s.startsWith(e+".")){let i=this.registry.get(s);this.registry.delete(s),this.registry.set(t+s.slice(e.length),i)}}}parentOf(e){if(e.parent==="root")return this.container;let t=this.nodes.get(e.parent);if(t&&t.isConnected)return t;let o=e.parent.split(".");for(let r=o.length-1;r>0;r--){let s=o.slice(0,r).join(".");if(s==="root")return this.container;let i=this.nodes.get(s);if(i&&i.isConnected)return i}return null}apply(e){An(this,e),this.devVerify&&this.devVerify(e,this)}};var nt="__wf_portal";function Wt(n){return`${nt}-${n}`}function dr(n,e){switch(e.kind){case"open":return"open";case"exit":return n==="open"?"exit":n;case"closed":return"closed";case"disposed":return"closed"}}function cr(n){return typeof n=="function"?n():n}function Hn(n){return n?typeof n=="function"?n():n:null}function ot(n,e){let t={tree:null,applier:null,container:null,chain:Promise.resolve(),version:0,open:!1,phase:"closed",disposed:!1,panel:null,pos:{top:0,left:0},segments:new Map},o=new N,r=o.asObservable();o.asObservable().pipe(be(dr,"closed")).subscribe({next:w=>{t.phase=w}});let s=w=>{o.next(w)},i=n.getBrowser()?.window,a=n.getBrowser()?.document,l=()=>{if(!a)return null;if(t.container)return t.container;let w=a.getElementById(nt);w||(w=a.createElement("div"),w.id=nt,a.body.appendChild(w));let S=e.key??"popup",R=a.getElementById(Wt(S));return R?t.container=R:(t.container=a.createElement("div"),t.container.id=Wt(S),w.appendChild(t.container)),t.container},d=0,u=!1,c=()=>{if(t.disposed||!t.open)return;if(e.position&&t.panel){let _=e.position();if(_&&typeof _.x=="number"&&typeof _.y=="number"){t.pos={top:_.y,left:_.x,width:_.width},u=!0,p();return}}let w=Hn(e.anchor);if(!w||!t.panel){d++<10&&queueMicrotask(c);return}if(!i)return;let S=t.panel,R=S.offsetWidth||S.getBoundingClientRect().width,U=S.offsetHeight||S.getBoundingClientRect().height;if((R===0||U===0)&&d++<10){typeof i.requestAnimationFrame=="function"?i.requestAnimationFrame(c):queueMicrotask(c);return}let L=typeof e.placement=="function"?e.placement():e.placement??"bottom",X=bn(w,i,R,U,L,e.gap??8,e.margin??8,e.center??!0);if(!X){d++<10&&queueMicrotask(c);return}if(d=0,t.pos=X,t.applier){let _=v(t.tree);_&&C(_)}},f=w=>{if(t.panel=w,w&&t.open&&!u&&e.positioning!=="none"&&(i&&typeof i.requestAnimationFrame=="function"?i.requestAnimationFrame(c):queueMicrotask(c)),w&&e.presence){let S=R=>{t.phase==="exit"&&k()};w.addEventListener("animationend",S),n.onUnmount(()=>w.removeEventListener("animationend",S))}},b=null,h=w=>{b=w,w&&u&&p()},p=()=>{let w=e.mask?b:t.panel;w&&(w.style.top=`${t.pos.top}px`,w.style.left=`${t.pos.left}px`,t.pos.width!==void 0&&(w.style.width=`${t.pos.width}px`))},v=w=>{if(!w)return null;let S=w;e.mask&&(S=H("div",{class:"wf-popup-mask",style:{position:"fixed",inset:"0",background:"var(--wf-overlay, rgba(0,0,0,0.5))",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"var(--wf-z-modal, 1000)"},onClick:Z=>{e.maskClosable!==!1&&Z.target===Z.currentTarget&&g()}},e.maskCentered?{...S,props:{...S.props??{}}}:H("div",{class:"wf-popup-mask-inner",ref:h,style:e.position?{position:"fixed",top:`${t.pos.top}px`,left:`${t.pos.left}px`,...t.pos.width!==void 0?{width:`${t.pos.width}px`}:{}}:void 0},S)));let R=S.props??{},U=e.positioning==="none"||String(R.class??"").includes("mask")?R.class??"":["wf-popup",R.class].filter(Boolean).join(" "),L=!(e.mask&&e.position),X=e.positioning==="none"?{...R.style??{},position:"fixed"}:{...R.style??{},position:"fixed",...L?{top:`${t.pos.top}px`,left:`${t.pos.left}px`}:{},...L&&t.pos.width!==void 0?{width:`${t.pos.width}px`}:{}};return{...S,props:{...R,class:U,style:X,ref:f}}},C=w=>{let S=++t.version,R=t.tree;t.tree=w,t.chain=t.chain.then(async()=>{if(t.disposed||S!==t.version)return;let U=t.applier;if(!U)return;let L=U.registry;if(!L)return;let X=n.getSharedContext()??{},_=await new Promise((Z,Xt)=>{let T=[],P=()=>n.requestRender?.();(R?xe(R,w,X,t.segments,L,P):ge(w,X,L,t.segments,P)).subscribe({next:W=>T.push(W),error:Xt,complete:()=>Z(T)})});for(let Z of _){if(t.disposed||S!==t.version)return;U.apply(Z)}for(let Z of _)Z.op==="unmount"&&z(Z.compId,t.segments)}).catch(U=>{console.error("[popup] render error:",U)})},E=()=>{t.disposed||(t.disposed=!0,t.applier&&(t.applier.dispose(),t.applier=null),t.tree=null,t.container&&(t.container.remove(),t.container=null))},k=()=>{t.disposed||(t.open=!1,s({kind:"closed"}),V(),E(),s({kind:"disposed"}),e.onClose?.())},g=()=>{!t.open||t.disposed||(e.presence?(s({kind:"exit"}),t.panel&&i&&!vn(t.panel,i)&&k(),t.panel||k()):k())},m={value:""},y={value:null},x={value:!1},V=()=>{x.value&&(a?.body&&(a.body.style.overflow=m.value),m.value="",y.value&&(y.value.focus?.(),y.value=null),x.value=!1)},F=()=>{n.scheduleAfterRender(()=>{let w=S=>{let R=t.panel;R?(R.querySelector?.("input, button, [tabindex], select, textarea")??R).focus?.():S<10&&t.open&&queueMicrotask(()=>w(S+1))};w(0)})},re=()=>{x.value=!0,e.lockScroll&&a?.body&&(m.value=a.body.style.overflow,a.body.style.overflow="hidden"),e.trapFocus&&i&&(y.value=i.document.activeElement,F())},se=null;e.trapFocus&&i&&(se=w=>{if(w.key!=="Tab"||!t.open||!t.panel)return;let S=Array.from(t.panel.querySelectorAll?.("input, button, [tabindex], select, textarea")??[]).filter(X=>!X.disabled&&X.offsetParent!==null);if(S.length===0)return;let R=S[0],U=S[S.length-1],L=i?.document.activeElement;w.shiftKey&&(L===R||L===t.panel||!t.panel.contains(L))?(w.preventDefault(),U.focus()):!w.shiftKey&&(L===U||!t.panel.contains(L))&&(w.preventDefault(),R.focus())},i.addEventListener("keydown",se));let ie=w=>{if(!t.open||(e.closeOnOutside??!0)===!1)return;let S=w.target,R=Hn(e.anchor);S&&R?.contains(S)||S&&t.panel?.contains(S)||g()},Ve=w=>{t.open&&(e.closeOnEscape??!0)&&w.key==="Escape"&&g()};i&&(i.addEventListener("mousedown",ie),i.addEventListener("keydown",Ve)),n.onUnmount(()=>{i&&(i.removeEventListener("mousedown",ie),i.removeEventListener("keydown",Ve),se&&i.removeEventListener("keydown",se)),k()});let it=()=>{if(t.open||t.disposed)return;t.open=!0,s({kind:"open"});let w=l();if(!w)return;e.trapFocus||e.lockScroll?re():e.autoFocus&&F();let S=ee();t.applier=new de(w,a,S),t.segments=new Map;let R=cr(e.content);R!=null?C(v(R)):k()},we={close:g,update(w){if(t.disposed||!t.open)return;if(w==null){g();return}let S=!1;if(e.position){let R=e.position();R&&typeof R.x=="number"&&typeof R.y=="number"&&(t.pos={top:R.y,left:R.x,width:R.width},S=!0)}C(v(w)),S&&p()},refresh(){if(!(t.disposed||!t.open||!t.tree)&&e.position){let w=e.position();w&&typeof w.x=="number"&&typeof w.y=="number"&&(t.pos={top:w.y,left:w.x,width:w.width},p())}},get open(){return t.open},events$:r};return it(),we}function Ln(n,e,t){let o=n.nextHookIndex(),r=n.getHookState(o)??{value:t};n.setHookState(o,r);let s=e.value!==void 0;return{get value(){return e.value??r.value},controlled:e,setValue(i){s?(e.onChange||console.warn("[vdom] useControlled \u53D7\u63A7\u7F3A onChange \u56DE\u8C03\u2014\u2014\u4EA4\u4E92\u9759\u9ED8\u5931\u6548"),e.onChange?.(i)):(r.value=i,n.requestRender())}}}function $n(n,e){let t=new N,o=te(n,fr(n,e,t),{y:0,x:0});return{get y(){return o().y},get x(){return o().x},refresh:()=>{t.next()}}}function fr(n,e,t){let o=n.getBrowser()?.window,r=n.getBrowser()?.document??null;return I(s=>{if(!o)return s.next({y:0,x:0}),s.complete(),()=>{};let i,a=null,l=null,d=0,u=()=>{if(typeof e=="function")return e();if(e&&typeof e=="object"&&!("nodeType"in e)){let p=e;return typeof p.getScroller=="function"?p.getScroller()??null:p.root?typeof p.root=="string"?r?r.querySelector(p.root)??o:o:p.root:o}return o},c=p=>p?p===o?{y:o.scrollY||0,x:o.scrollX||0}:{y:p.scrollTop,x:p.scrollLeft}:{y:0,x:0},f=()=>{s.next(c(l))},b=()=>{if(a)return;if(l=u(),!l){d++<10&&n.scheduleAfterRender(b);return}let p=()=>{i===void 0&&(i=o.requestAnimationFrame(()=>{i=void 0,f()}))};l.addEventListener("scroll",p,{passive:!0}),a=p,f()};b();let h=t?.subscribe({next:()=>{b(),f()}});return()=>{h?.unsubscribe(),i!==void 0&&o.cancelAnimationFrame(i),a&&l&&l.removeEventListener("scroll",a),a=null}})}function Dn(n,e){let t=n.nextHookIndex(),o=n.getHookState(t)??{isIn:!1,io:null,retries:0,ready:!1};n.setHookState(t,o);let s=n.getBrowser()?.window?.IntersectionObserver,i=e&&typeof e=="object"&&!("nodeType"in e)?e:void 0,a=i?.target??(typeof e=="function"||e&&"nodeType"in e?e:void 0),l=typeof i?.rootMargin=="function"?i.rootMargin():i?.rootMargin,d=typeof i?.threshold=="function"?i.threshold():i?.threshold,u=typeof i?.root=="function"?i.root():i?.root??null,c=f=>{if(!s||!f||o.io)return;let b=new s(h=>{let p=h[0];p&&p.isIntersecting!==o.isIn&&(o.isIn=p.isIntersecting,i?.onChange?.(p,p.isIntersecting),n.requestRender())},{root:u??void 0,rootMargin:l,threshold:d});b.observe(f),o.io=b,o.ready=!0,n.onUnmount(()=>o.io?.disconnect())};if(s&&!o.io){let f=typeof a=="function"?a():a??null;f?c(f):a!==void 0&&o.retries++<10&&n.scheduleAfterRender(()=>c(typeof a=="function"?a():a??null))}return{get isIn(){return o.isIn},get ready(){return o.ready},ref:f=>{f?c(f):o.io?.disconnect()},observe:f=>c(f),disconnect:()=>{o.io?.disconnect(),o.io=null}}}function Fn(n,e,t){let o=n.nextHookIndex(),r=n.getHookState(o)??{keyword:"",selectedLabel:"",composing:!1};n.setHookState(o,r);let s=e.value!==void 0;return{controlled:e,get value(){return e.value??r.keyword},setValue(i){s?(e.onChange||console.warn(`[vdom] useControlledInput(${t?.name??""}) \u53D7\u63A7\u7F3A onChange \u56DE\u8C03\u2014\u2014\u4EA4\u4E92\u9759\u9ED8\u5931\u6548`),e.onChange?.(i)):(r.keyword=i,n.requestRender())},get keyword(){return r.keyword},setKeyword(i){r.keyword=i,r.composing||this.setValue(i)},get selectedLabel(){return r.selectedLabel},setSelectedLabel(i){r.selectedLabel=i},get isComposing(){return r.composing},onCompositionStart(){r.composing=!0},onCompositionEnd(){r.composing=!1}}}function _n(n,e){let t={draggable:!0,onDragStart:o=>{e.data!==void 0&&o.dataTransfer?.setData("text/plain",JSON.stringify(e.data)),e.onDragStart?.(o,e.data)},onDragEnd:o=>e.onDragEnd?.(o)};return{draggableProps:t,dragProps:t,dropProps:{onDragEnter:o=>e.onDragEnter?.(o),onDragOver:o=>{o.preventDefault(),e.onDragOver?.(o)},onDragLeave:o=>e.onDragLeave?.(o),onDrop:o=>{o.preventDefault();let r;try{r=o.dataTransfer?.getData("text/plain")?JSON.parse(o.dataTransfer.getData("text/plain")):void 0}catch{r=void 0}e.onDrop?.(o,r)}}}}var Un=new WeakMap,pr=new Map;function mr(n,e){let t=n.getBrowser()?.window,o=t?Un.get(t)??Un.set(t,new Map).get(t):pr,r=o.get(e);return r||(r=ht(s=>{let i=n.getBrowser()?.window,l=(i?.matchMedia?.bind(i)??(typeof globalThis.matchMedia=="function"?globalThis.matchMedia.bind(globalThis):void 0))?.(e);if(!l)return;let d=()=>s(l.matches);return l.addEventListener("change",d),()=>l.removeEventListener("change",d)},()=>{let s=n.getBrowser()?.window,i=s?.matchMedia?.bind(s)??(typeof globalThis.matchMedia=="function"?globalThis.matchMedia.bind(globalThis):void 0);return i?i(e).matches:!1}),o.set(e,r)),r}function Ue(n,e){return te(n,mr(n,e),!1)}function Wn(n,e){let t=Object.entries(e).sort((o,r)=>o[1]-r[1]);return()=>{let o=t[0]?.[0]??"default";for(let[r,s]of t)Ue(n,`(min-width: ${s}px)`)()&&(o=r);return o}}var gr=0,qt=()=>`m${Date.now().toString(36)}${(gr++).toString(36)}`;function br(){let n="";return(e,t)=>{let o=e.trim();if(!o)return null;if(o.startsWith("event:"))return n=o.slice(6).trim(),null;let r=t??n,s=o.startsWith("data:")?o.slice(5).trim():o;if(!s)return null;let i;try{i=JSON.parse(s)}catch{return null}if(!r)return i.toolCalls?{toolCalls:i.toolCalls}:i.text!==void 0?{content:String(i.text)}:i.content!==void 0?{content:i.content}:null;switch(r){case"wf:message_start":return null;case"wf:token":return{content:i.text!==void 0?String(i.text):i.content};case"wf:step":return{step:i};case"wf:usage":return{usage:i};case"wf:tool_call":return{toolCalls:[{id:i.id,name:i.name,args:i.args,status:"running",call:i}]};case"wf:tool_progress":return{toolProgress:i};case"wf:tool_result":return{toolResult:i};case"wf:approval_request":return{approval:i};case"wf:error":return{error:i};case"wf:done":{let a=i.usage?{usage:i.usage}:{};return{done:!0,...i.content?{content:i.content,doneContent:!0}:{},...a}}default:return null}}}function qn(n,e){let t=n.nextHookIndex(),o=n.getHookState(t)??{messages:[],status:"idle",subs:new Set,changes:new N,controller:null,seq:0,input:"",error:null,usage:null,step:null};if(n.setHookState(t,o),o.messages.length===0){let a=[];e.system&&a.push({id:qt(),role:"system",content:e.system}),e.initialMessages&&a.push(...e.initialMessages),o.messages=a}let r=()=>{for(let a of[...o.subs])a();o.changes.next([...o.messages])},s=e.parseChunk??br(),i={get state(){return o.messages},get messages(){return o.messages},changes$:o.changes.asObservable(),get status(){return o.status},get input(){return o.input??""},setInput(a){o.input=a},get streaming(){return o.status==="streaming"},get error(){return o.error??null},get usage(){return o.usage??null},get step(){return o.step??null},subscribe(a){return o.subs.add(a),()=>{o.subs.delete(a)}},set(){},update(){},notify:r,async send(a=o.input){let l=typeof e.url=="function"?e.url():e.url??"/api/chat",d={id:qt(),role:"user",content:a};o.messages=[...o.messages,d];let u={id:qt(),role:"assistant",content:"",status:"streaming"};o.messages=[...o.messages,u],o.status="streaming",r();let c=new AbortController;o.controller=c;try{let f=await fetch(l,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({messages:o.messages.map(v=>({role:v.role,content:v.content}))}),signal:c.signal});if(!f.ok||!f.body)throw new Error(`[vdom] chat \u8BF7\u6C42\u5931\u8D25 ${f.status}`);let b=f.body.getReader(),h=new TextDecoder,p="";for(;;){let{value:v,done:C}=await b.read();if(C)break;p+=h.decode(v,{stream:!0});let E=p.split(`
2
- `);p=E.pop()??"";let k;for(let g of E){if(!g.trim())continue;if(g.trim().startsWith("event:")){k=g.trim().slice(6).trim();continue}let m=s(g,k);if(g.trim().startsWith("data:")&&(k=void 0),!!m){if(m.content&&(u.content=m.doneContent?u.content||m.content:u.content+m.content,r()),m.toolCalls?.length&&(u.toolCalls=[...u.toolCalls??[],...m.toolCalls],r()),m.toolProgress){let y=u.toolCalls?.find(x=>x.id===m.toolProgress.toolCallId);y&&(y.progress=m.toolProgress,r())}if(m.toolResult){let y=u.toolCalls?.find(x=>x.id===m.toolResult.id);y&&(y.result=m.toolResult.output,y.status=m.toolResult.ok===!1?"error":"ok",r())}if(m.approval){u.approval=m.approval;let y=u.toolCalls?.find(x=>x.id===m.approval.toolCallId);y&&(y.approval=m.approval),r()}m.usage&&(o.usage=m.usage,r()),m.step!==void 0&&(o.step=m.step,r()),m.error&&(o.error=m.error,u.status="error",r()),m.done&&(o.step=null,r())}}}u.status=void 0,o.status="idle"}catch(f){f.name!=="AbortError"?(u.status="error",o.status="error"):(u.status=void 0,o.status="idle")}finally{o.controller=null,r()}},stop(){o.controller?.abort()},retry(){let a=[...o.messages].reverse().find(l=>l.role==="user");a&&i.send(a.content)},reset(){o.messages=[],o.status="idle",r()},async approve(a,l,d){let u=!1;for(let c of o.messages){for(let f of c.toolCalls??[])if(!f.approved){f.approved=a!=="rejected",l&&(f.feedback=l),a==="modified"&&d&&(f.args=d),u=!0;break}if(u)break}r()}};return i}function jt(n){return Ue(n,"(prefers-reduced-motion: reduce)")()}function jn(n,e,t){let o=n.getBrowser()?.window,r=jt(n),s=t?.duration??400;if(s<=0)return{value:e,reset:()=>{}};let i=t?.ease==="linear"?k=>k:k=>1-Math.pow(1-k,3),a=n.nextHookIndex(),l=n.getHookState(a);if(l)return l.reset(e),l;let d=r?e:0,u,c=e,f=0,b=s+200,h,p={get value(){return u!==void 0&&o&&o.performance.now()-f>b?c:d},set value(k){d=k},reset:()=>{}},v=()=>{n.requestRender()},C=k=>{if(c=k,r){p.value=k,v();return}if(k===p.value)return;if(!o){p.value=k;return}u!==void 0&&o.cancelAnimationFrame(u);let g=p.value,m=o.performance.now();f=m,E();let y=x=>{let V=Math.min(1,(x-m)/s);p.value=Math.round(g+(k-g)*i(V)),V<1?u=o.requestAnimationFrame(y):u=void 0,v()};u=o.requestAnimationFrame(y)},E=()=>{o&&(h!==void 0&&clearTimeout(h),h=setTimeout(()=>{h=void 0,u!==void 0&&(o&&o.cancelAnimationFrame(u),u=void 0,p.value=c,v())},b))};return p.reset=k=>{k===c&&u!==void 0||C(k)},n.onUnmount(()=>{u!==void 0&&o&&(o.cancelAnimationFrame(u),u=void 0)}),n.setHookState(a,p),l=p,l.reset(e),l}function Bn(n,e){let t=n.getBrowser()?.window,o=0,r=0,s=!1,i=0,a=c=>{s&&e.onMove(c,{x:c.clientX-o,y:c.clientY-r})},l=c=>{s&&c.pointerId===i&&(s=!1,t&&(t.removeEventListener("pointermove",a),t.removeEventListener("pointerup",l),t.removeEventListener("pointercancel",d)),e.onEnd?.(c))},d=c=>{!s||c.pointerId!==i||(s=!1,t&&(t.removeEventListener("pointermove",a),t.removeEventListener("pointerup",l),t.removeEventListener("pointercancel",d)),e.onEnd?.(c))},u=c=>{s||(c.preventDefault(),s=!0,i=c.pointerId,o=c.clientX,r=c.clientY,t&&(t.addEventListener("pointermove",a),t.addEventListener("pointerup",l),t.addEventListener("pointercancel",d)),e.onStart?.(c))};return n.onUnmount(()=>{s&&t&&(t.removeEventListener("pointermove",a),t.removeEventListener("pointerup",l),t.removeEventListener("pointercancel",d),s=!1)}),{onPointerDown:u}}function Kn(n){let e=te(n,vr(n),{height:0,offsetTop:0,keyboardOpen:!1});return{get height(){return e().height},get offsetTop(){return e().offsetTop},get keyboardOpen(){return e().keyboardOpen}}}function vr(n){let e=n.getBrowser()?.window;return I(t=>{let o=()=>{let i=e?.visualViewport,a=i?.height??e?.innerHeight??0;return{height:a,offsetTop:i?.offsetTop??0,keyboardOpen:a<(e?.innerHeight??0)*.9}};if(!e)return t.next({height:0,offsetTop:0,keyboardOpen:!1}),t.complete(),()=>{};let r=()=>t.next(o()),s=e.visualViewport;return s?.addEventListener?(s.addEventListener("resize",r),s.addEventListener("scroll",r),r(),()=>{s.removeEventListener("resize",r),s.removeEventListener("scroll",r)}):(e.addEventListener("resize",r),r(),()=>e.removeEventListener("resize",r))})}function Bt(n,e){let t=n.nextHookIndex(),o=n.getHookState(t);return o===void 0&&(o={v:e},n.setHookState(t,o)),{get:()=>o.v,set:r=>{o.v=typeof r=="function"?r(o.v):r,n.requestRender()}}}function Kt(n,e){let t=null,o=e,r={onClick:l=>{o.maskClosable!==!1&&l.target===l.currentTarget&&i()}},s={role:e.role??"dialog","aria-modal":!0},i=()=>o.onOpenChange?.(!1),a=(l,d)=>{d&&(o=d);let u=!!o.open;u&&!t?t=ot(n,{key:"overlay",presence:!!o.presence,trapFocus:o.trapFocus!==!1,lockScroll:o.lockScroll!==!1,positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:l,onClose:()=>{t=null}}):!u&&t?(t.update(l()),t.close(),t=null):t&&t.update(l())};return Ye(n,l=>{l.key==="Escape"&&t?.open&&o.closeOnEscape!==!1&&i()}),n.onUnmount?.(()=>{t&&t.close()}),{maskProps:r,panelProps:s,close:i,sync:a}}function zt(n,e){let t=e,o=()=>t.id??(t.name?`wf-${t.name}`:void 0),r=()=>o()??"wf-field";return{get hasWrap(){return!!(t.label||t.error||t.hint)},get stateClass(){return t.error?` ${t.wrapErrClass??"wf-field--err"}`:""},get inputId(){return o()},inputProps(){let s={},i=o();i&&(s.id=i),t.error&&(s["aria-invalid"]=!0);let a=[];return t.error&&a.push(`${r()}-err`),t.hint&&!t.error&&a.push(`${r()}-hint`),a.length&&(s["aria-describedby"]=a.join(" ")),t.required&&(s["aria-required"]=!0),s},renderLabel(){if(t.label==null&&!t.required)return null;let s=[];return t.label!=null&&s.push(t.label),t.required&&s.push(H("span",{class:t.reqClass??"wf-field-req"},t.reqChar??"*")),H("label",{class:t.labelClass,...o()?{for:o()}:{}},s)},renderError(){return t.error?H("div",{class:t.errClass,id:`${r()}-err`},t.error):null},renderHint(){return t.hint&&!t.error?H("div",{class:t.hintClass,id:`${r()}-hint`},t.hint):null}}}var Yt=new Map,zn=new Set,hr=new N;function Yn(n){if(n)for(let[e,t]of Object.entries(n)){let o=Yt.get(e);o?(o.state$.next(t),o.seedHit=!0):_e.set(e,t)}}var _e=new Map;function Ht(n){return{useObservable(e,t,o){return te(n,e,t,o)},useAsyncData(e,t){let o=Yt.get(t);o||(o={trigger:new ae(void 0),state$:new ae(_e.get(t)??null),fetcher:null,started:_e.has(t),seedHit:_e.has(t),sub:null},_e.delete(t),Yt.set(t,o)),o.fetcher=e;let r=()=>{if(o.sub||o.seedHit)return;o.started=!0;let a=o.trigger.asObservable().pipe(Me(()=>{let l=o.fetcher;if(!l)return ce(Promise.resolve(null));let d=l();return zn.add(d),d.finally(()=>zn.delete(d)).catch(()=>{}),ce(d)}));o.sub=a.subscribe({next:l=>{o.state$.next(l)},error:l=>{console.error("[vdom] useAsyncData:",l),hr.next({key:t,error:l}),o.state$.next(null)}})};return r(),[te(n,o.state$.asObservable(),null),()=>{o.seedHit&&(o.seedHit=!1),o.state$.next(null),o.sub?o.trigger.next():r()}]},useSession(e){let[t]=this.useAsyncData(async()=>{let o={},r=e?.token?.();r&&(o.Authorization=`Bearer ${r}`);let s=await fetch(e?.path??"/api/auth/me",{headers:o});if(!s.ok)throw new Error(`session \u83B7\u53D6\u5931\u8D25 HTTP ${s.status}`);return await s.json()},"wf:session");return t},useExternal(e){let t=n.getInstanceData(),o=t.get(e);if(!o){let r=e.subscribe(()=>n.requestRender());n.onUnmount(r),o={unsub:r},t.set(e,o)}return()=>e.state},signal:e=>{let t=Rt(e),o=t.subscribe(()=>n.requestRender());return n.onUnmount(o),t},hold:e=>n.onUnmount(e),useStableRef:(e,t)=>mn(n,e,t),useOpen:(e,t)=>gn(n,e,t),onUnmount:e=>n.onUnmount(e),useGlobalKey:(e,t)=>Ye(n,e,t),openPopup:e=>ot(n,e),usePopupPosition:e=>hn(n,e),useControlled:(e,t)=>Ln(n,e,t),useScrollPosition:e=>$n(n,e),useInView:e=>Dn(n,e),useControlledInput:(e,t)=>Fn(n,e,t),useDragDrop:e=>_n(n,e),useMedia:e=>Ue(n,e),useBreakpoint:e=>Wn(n,e),useChat:e=>qn(n,e),useTween:(e,t)=>jn(n,e,t),useDrag:e=>Bn(n,e),useVisualViewport:()=>Kn(n),useReducedMotion:()=>jt(n),useSignal:e=>Bt(n,e),useOverlay:e=>Kt(n,e),useField:e=>zt(n,e)}}function Gn(n,e,t){return e<=0?n:new Promise((o,r)=>{let s=setTimeout(()=>{r(new Error(`[vdom] \u5F02\u6B65\u8D85\u65F6\uFF08${e}ms\uFF09: ${t}`))},e);n.then(i=>{clearTimeout(s),o(i)},i=>{clearTimeout(s),r(i)})})}function Xe(n){return Y(n)?{kind:"hole"}:Array.isArray(n)?{kind:"array",items:n}:{kind:"vnode",v:n}}function me(n){return n.kind==="hole"?null:n.kind==="array"?n.items:n.v}function ee(){let n=new Map;return{get:e=>n.get(e),set:(e,t)=>{n.set(e,t)},delete:e=>{n.delete(e)},keys:()=>[...n.keys()],asyncTimeout:15e3}}function _t(n,e){let t=[...e.keys()].filter(o=>o===n||o.startsWith(n+".")).reverse();for(let o of t){let r=e.get(o);if(r){for(let s of r.onUnmounts.reverse())try{s()}catch(i){console.error("[vdom] onUnmount:",i)}e.delete(o)}}}function Lt(n,e,t,o){return typeof n?.type=="function"||Array.isArray(n)||ne(n)==="hole"?{parent:e,index:0}:{parent:t,index:o}}function K(n,e,t,o,r,s,i,a){let l=[];return We(n,e,t,o,r,s,i,a,l),A(l)}function We(n,e,t,o,r,s,i,a,l){let d=O(e,t);switch(ne(n)){case"text":{let u=Ge(n);l.push({op:"createText",id:d,value:u},{op:"insert",id:d,parent:e,ref:o});break}case"hole":{Vt(u=>l.push(u),d,e,o);break}case"array":{let u=n;Pe(u,`\u6570\u7EC4\u5C55\u5F00\uFF08${e}\uFF09`);let c=t,f=o;for(let b of u){We(b,e,c,f,r,s,i,a,l);let h=D(b);f=O(e,c+h-1),c+=h}break}case"fragment":{let u=j(n);Pe(u,`Fragment \u5C55\u5F00\uFF08${e}\uFF09`);let c=t,f=o;for(let b of u){We(b,e,c,f,r,s,i,a,l);let h=D(b);f=O(e,c+h-1),c+=h}break}case"element":{let u=n;l.push({op:"create",id:d,tag:u.type,attrs:Ae(u.props)});for(let[p,v]of Object.entries(u.props))p==="children"||p==="key"||p==="ref"||typeof v=="function"&&l.push({op:"setProp",id:d,key:p,value:v});l.push({op:"insert",id:d,parent:e,ref:o});let c=u.props.ref;typeof c=="function"&&l.push({op:"ref",id:d,fn:c});let f=j(u);Pe(f,`\u5143\u7D20 children\uFF08${d}\uFF09`);let b=null,h=0;for(let p of f){We(p,d,h,b,r,s,i,a,l);let v=D(p);b=O(d,h+v-1),h+=v}l.push({op:"close",id:d});break}case"component":{let u=n,c=u.key!==null?Q(e,u.key):d,f=i??new Map,b=f.get(c);b&&b.factory!==u.type&&(z(c,f),b=void 0),b?q("seg:reuse",c):(b=It(u.type,u.props,r,c,a),f.set(c,b),q("seg:create",c));let h;try{h=At(b,u.props)}catch(v){Ie(c,v),h=null}h!==null&&Ot(c),b.lastOutput=Xe(h);let p=Lt(h,c,e,t);if(Y(h)){let v=O(c,0);l.push({op:"createAnchor",id:v},{op:"insert",id:v,parent:e,ref:o},{op:"mount",compId:c});break}We(h,p.parent,p.index,o,r,s,f,a,l),l.push({op:"mount",compId:c});break}case"invalid":{console.warn(`[vdom] \u975E\u6CD5\u5B50\u8282\u70B9\u2014\u2014${Nt(n)}`),Vt(u=>l.push(u),d,e,o,Nt(n));break}}}function ge(n,e,t,o,r){let s=e??{},i=t??ee();return K(n,"root",0,null,s,i,o,r).pipe(yr(A([{op:"done",full:!0}])))}function A(n){return I(e=>{for(let t of n)e.next(t);return e.complete(),()=>{}})}function J(n){return I(e=>{let t=0,o=null,r=!1,s=!1,i=()=>{if(!(r||s)){for(s=!0;!r;){if(t>=n.length){e.complete();break}let a=n[t++],l=!1,d=!0;if(o=a.subscribe({next:u=>e.next(u),error:u=>{r||(r=!0,e.error(u))},complete:()=>{l||r||(l=!0,!d&&i())}}),d=!1,!l)break}s=!1}};return i(),()=>{r=!0,o?.unsubscribe()}})}function yr(n){return e=>J([e,n])}function Jn(n,e){return H("div",{class:"wf-error-fallback",style:"padding:40px 24px;text-align:center;font-family:var(--wf-font-sans,system-ui);"},[H("div",{style:"font-size:21px;font-weight:600;margin-bottom:8px;"},"\u9875\u9762\u6E32\u67D3\u5931\u8D25"),H("div",{style:"font-size:13px;color:var(--wf-color-text-secondary,#64748b);margin-bottom:16px;max-width:520px;margin-inline:auto;word-break:break-all;"},String(n?.message??n)),H("button",{class:"wf-btn wf-btn--primary",onClick:()=>{e.render?.()},style:"padding:8px 20px;border-radius:6px;border:none;cursor:pointer;"},"\u91CD\u8BD5")])}function Xn(){return new Map}function Zn(){let n=new Map;return{get:e=>n.get(e),set:(e,t)=>{n.set(e,t)},removePrefix:e=>{for(let t of[...n.keys()])(t===e||t.startsWith(e+"."))&&n.delete(t)},hasPrefix:e=>{for(let t of n.keys())if(t===e||t.startsWith(e+"."))return!0;return!1},remapPrefix:(e,t)=>{for(let[o,r]of[...n])(o===e||o.startsWith(e+"."))&&(n.delete(o),n.set(t+o.slice(e.length),r))},clear:()=>{n.clear()}}}function Qn(n,e){let t=[];switch(e.op){case"create":case"createText":case"createAnchor":{n.get(e.id)===void 0&&n.set(e.id,"created");break}case"insert":{let o=n.get(e.id);o===void 0?t.push(`insert Pre \u8FDD\u4F8B\uFF1Aid ${e.id} \u672A create`):o==="created"&&n.set(e.id,"inserted");break}case"close":{let o=n.get(e.id);o===void 0?t.push(`close Pre \u8FDD\u4F8B\uFF1Aid ${e.id} \u4E0D\u5B58\u5728`):o==="inserted"?n.set(e.id,"active"):o!=="active"&&t.push(`close Pre \u8FDD\u4F8B\uFF1A${e.id} \u72B6\u6001\u5E94\u4E3A inserted/active\uFF08\u5B9E\u9645 ${o}\uFF09`);break}case"remove":{n.removePrefix(e.id),n.hasPrefix(e.id)&&t.push(`remove Post \u8FDD\u4F8B\uFF1A${e.id} \u524D\u7F00\u8BB0\u5F55\u6B8B\u7559`);break}case"setText":{n.get(e.id)===void 0&&t.push(`setText Pre \u8FDD\u4F8B\uFF1Aid ${e.id} \u4E0D\u5B58\u5728`);break}case"setProp":{n.get(e.id)===void 0&&t.push(`setProp Pre \u8FDD\u4F8B\uFF1Aid ${e.id} \u4E0D\u5B58\u5728`);break}case"move":{n.remapPrefix(e.id,e.newId),n.get(e.newId)===void 0&&!n.hasPrefix(e.newId)&&t.push(`move Post \u8FDD\u4F8B\uFF1Aremap \u540E\u65B0 id ${e.newId} \u4E0D\u5B58\u5728`),e.id!==e.newId&&(n.hasPrefix(e.id)&&t.push(`move Post \u8FDD\u4F8B\uFF1A\u65E7\u524D\u7F00 ${e.id} \u8FC1\u79FB\u540E\u6B8B\u7559`),n.get(e.id)!==void 0&&n.get(e.newId)!==void 0&&t.push(`move Post \u8FDD\u4F8B\uFF1A\u65E7 id ${e.id} \u8FC1\u79FB\u540E\u6B8B\u7559`));break}case"mount":case"unmount":case"ref":case"unref":break;case"done":break}return t}function eo(){let n=Zn();return(e,t)=>{let o=Qn(n,e);for(let r of o)console.error(`[vdom-dev] ${r}`);switch(e.op){case"insert":{let r=t.nodes.get(e.id);r&&!r.isConnected&&console.error(`[vdom-dev] insert Post \u8FDD\u4F8B\uFF1A${e.id} \u672A\u6302\u8F7D\uFF08isConnected=false\uFF09`);break}case"setText":{let r=t.nodes.get(e.id);r&&r.nodeType!==3&&console.error(`[vdom-dev] setText Pre \u8FDD\u4F8B\uFF1A${e.id} \u975E\u6587\u672C\u8282\u70B9\uFF08${r.nodeType}\uFF09`);break}case"setProp":{let r=t.nodes.get(e.id);r&&r.nodeType!==1&&console.error(`[vdom-dev] setProp Pre \u8FDD\u4F8B\uFF1A${e.id} \u975E\u5143\u7D20\u8282\u70B9\uFF08${r.nodeType}\uFF09`);break}default:break}}}function to(n=15e3){let e=new Map,t="active",o={};return{get(r,s){let i=e.get(r);if(i)return i;let a=Gn((async()=>{if(r in o)return o[r];if(s)return s();let l=await fetch(r);if(!l.ok)throw new Error(`[vdom] ctx.data \u8BF7\u6C42\u5931\u8D25 ${l.status}: ${r}`);return l.json()})(),n,`ctx.data(${r})`);return e.set(r,a),a},set(r,s){e.set(r,Promise.resolve(s))},has(r){return e.has(r)},preload(r){o={...o,...r}},invalidate(r){e.delete(r)},seed(){return o}}}var xr=16,wr=20;function Tr(){return globalThis.performance?.now?.()??Date.now()}function Jt(){let n=new N,e=0,t=0,o=!1,r=!1,s=0,i=0,a=()=>{if(o=!1,!r){r=!0;try{let l=Tr();s=l-i<xr?s+1:0,i=l,t++,q("sched:flush"),n.next()}finally{r=!1,o&&(s>=wr?(console.warn("[vdom] v2 \u8C03\u5EA6\uFF1A\u8FDE\u7EED\u91CD\u6E32\u67D3\u8D85\u9650\uFF08",s,"\uFF09\u2014\u2014\u8BF7\u6C42\u4E22\u5F03\uFF08\u6E32\u67D3\u98CE\u66B4\u9632\u62A4\uFF09"),o=!1):queueMicrotask(a))}}};return{request(l){if(e++,q("sched:request",l??"unknown"),r){o=!0;return}o||(o=!0,queueMicrotask(a))},renders$:n.asObservable(),stats:()=>({requested:e,flushed:t})}}function no(n){let e=!1,t=null,o={builds:0,diffs:0,applies:0,unmounts:0},r=new N,s=new N,i=u=>{if(n.active())for(let c of u)try{o.applies++,n.apply(c)}catch(f){console.error("[vdom] v2 apply:",f);break}},a=(u,c)=>{if(n.active())for(let f of u)f.op==="unmount"&&n.dispose(f.compId,c)&&o.unmounts++};return{apply:u=>new Promise((c,f)=>{if(!n.active()){c();return}let b=Sn(),h;if(!e){e=!0;try{n.boot()}catch(p){f(p);return}}if(t===null)o.builds++,h=n.build(u);else if(t.type!==u.type){o.builds++;try{n.resetRoot()}catch(p){f(p);return}t=null,h=n.build(u)}else o.diffs++,h=n.diff(t,u);h.pipe(wt(),fe(p=>q("cmd:render",`${p.length}\u6761`)),fe(i),fe(p=>a(p,b)),fe(p=>{n.active()&&(t=u)})).subscribe({next:p=>{if(!n.active()){c();return}r.next(p),s.next(),c()},error:p=>{t=null,f(p)}})}),reset:()=>{t=null},metrics:()=>({...o}),applied$:r.asObservable(),complete$:s.asObservable()}}var rt=2e3,oo=5e3,ro=10,so=.05,io=300;function Cr(n,e,t,o){let r=()=>o?.()??globalThis.__wfSpy??[],s=0,i=0,a=0,l=0,d=0,u=0,c=0,f=0,b=0,h=0,p=0,v=[];n.subscribe({next:m=>{d=m.length,u=Math.max(u,m.length),i+=m.length}}),e.subscribe({next:()=>{s++,p++,c>0&&(b=ao()-c),b>h&&(h=b),c=ao(),g()}});let C=()=>{let m=0,y=0;for(let x of r())x.kind==="seg:create"?m++:x.kind==="seg:reuse"&&y++;a=m,l=y},E=null,k=()=>{C();let m=p/(rt/1e3),y=a+l>0?a/(a+l):0;v.length=0,m>ro&&v.push(`\u9891\u7387\u8D85\u9650\uFF1A${m.toFixed(1)} \u6E32\u67D3/s\uFF08> ${ro}\uFF09`),d>oo&&v.push(`\u89C4\u6A21\u8D85\u9650\uFF1A\u5355\u6E32\u67D3 ${d} \u547D\u4EE4\uFF08> ${oo}\uFF09`),h>io&&v.push(`\u6E32\u67D3\u8017\u65F6\u8D85\u9650\uFF1A${h}ms\uFF08> ${io}\uFF09`),y>so&&v.push(`\u590D\u7528\u7387\u4E0D\u8DB3\uFF1A\u91CD\u8DD1\u7387 ${(y*100).toFixed(1)}%\uFF08> ${so*100}%\uFF09`),ve().total>0&&ve().total!==f&&(v.push(`renderFn \u9519\u8BEF\uFF1A\u7D2F\u8BA1 ${ve().total}\uFF08\u7EC4\u4EF6\u7EA7 hole \u964D\u7EA7\u2014\u2014\u81EA\u6108\u91CD\u8BD5\u4E2D\uFF09`),f=ve().total);for(let x of v)console.warn(`[vdom-dev] \u6E32\u67D3\u5065\u5EB7\uFF1A${x}`);p=0,g()},g=()=>{let m=a+l>0?a/(a+l):0,y={fps:p/(rt/1e3),lastCmds:d,maxCmds:u,reRunRate:m,segments:t?.size??0,errors:ve().total,total:{renders:s,cmds:i,creates:a,reuses:l},warns:[...v]};globalThis.__wfRenderHealth=y};return g(),E=setInterval(k,rt),{snapshot:()=>{C();let m=a+l>0?a/(a+l):0;return{fps:p/(rt/1e3),lastCmds:d,maxCmds:u,reRunRate:m,segments:t?.size??0,errors:ve().total,total:{renders:s,cmds:i,creates:a,reuses:l},warns:[...v]}},refresh:k,dispose:()=>{E&&(clearInterval(E),E=null)}}}function ao(){return globalThis.performance?.now?.()??Date.now()}function lo(n){let e=Cr(n.applied$,n.complete$,n.segments);return q("health:attached"),e}function uo(n,e){let t=document,o=window,r=typeof e.root=="string"?t.querySelector(e.root):e.root;if(!r)throw new Error(`uiServeV2: root \u672A\u627E\u5230 \u2014 ${String(e.root)}`);let s=o.__DATA__;s&&Yn(s);let i=Xn(),a=ee(),l=new Map,d=new de(r,t,a);o.__WF_DEV__&&(d.devVerify=eo());let u=Jt(),c=o.__wfV2??={builds:0,diffs:0},f=[],b=[],h=()=>{let T=f.splice(0);for(let P of T)try{P()}catch(M){console.error("[vdom] v2 afterRender:",M)}},p={browser:bt(),data:to(),onUnmount(T){b.push(T)},afterRender(T){f.push(T)},...e.api?{api:e.api}:{},...e.auth?{auth:e.auth}:{},...e.ws?{ws:e.ws}:{},...e.i18n?{i18n:e.i18n}:{},...e.toast?{toast:e.toast}:{},...e.confirm?{confirm:e.confirm}:{},...e.notification?{notification:e.notification}:{}},v=!0,C=no({boot:()=>{Array.from(r.querySelectorAll("*")).some(P=>[...P.childNodes].some(M=>M.nodeType===8&&M.textContent?.includes("wf")))?d.absorb.begin(r):r.innerHTML=""},resetRoot:()=>{r.innerHTML="";for(let[T]of[...l])z(T,l);d.reset()},build:T=>ge(T,p,a,l,()=>u.request("component-rerender")),diff:(T,P)=>xe(T,P,p,l,a,()=>u.request("component-rerender")),apply:T=>{d.apply(T)},dispose:(T,P)=>{let M=l.get(T);return M&&!M.disposed&&M.epoch<P?(z(T,l),!0):!1},active:()=>v}),E=()=>{let T=C.metrics();c.builds=T.builds,c.diffs=T.diffs},k=!1;d.absorb.failed$.subscribe({next:()=>{k=!0,console.warn("[vdom] SSR \u5438\u6536\u5931\u8D25\u2014\u2014\u56DE\u9000\u6E05\u7A7A\u91CD\u5EFA\uFF08\u4E8B\u4EF6\u9A71\u52A8\uFF09")}}),C.complete$.subscribe({next:()=>{h(),k&&(k=!1,d.absorb.reset(),r.innerHTML="",C.reset(),u.request("error-fallback"))}});let g=null;o.__WF_DEV__&&(g=lo({applied$:C.applied$,complete$:C.complete$,segments:l}));let m=0,y=3,x=T=>{C.reset();let P=e.errorFallback?.(T,p)??Jn(T,p);C.apply(P).then(E).catch(M=>console.error("[vdom] v2 error fallback \u6E32\u67D3\u5931\u8D25:",M))},V=async T=>{if(v)try{await C.apply(T),m=0,E()}catch(P){console.error("[vdom] v2 render:",P),m++,m>=y&&(m=0,x(P instanceof Error?P:new Error(String(P))))}},F=p;F.stream=(T,P)=>(V(T),new Response(null,{status:P?.status??200}));let re=new N,se="idle";re.asObservable().pipe(be((T,P)=>P.kind==="begin"?"rendering":"idle","idle")).subscribe({next:T=>{se=T}});let ie=new N;ie.subscribe({next:T=>q("nav:resolve",T)});let Ve=(T,P)=>ce(n.resolve(dn(T),p)).pipe(Me(M=>{let W=M.status>=300&&M.status<400&&M.headers?.get("Location")?M.headers.get("Location"):null;if(W){if(P>=5)throw new Error(`[vdom] redirect \u94FE\u8D85\u9650\uFF08${P+1}\uFF09\u2014\u2014${T} \u2192 ${W}`);return o.history.replaceState({},"",W),Ve(W,P+1)}if(M.status===404)throw new Error(`[vdom] \u65E0\u8DEF\u7531\uFF1A${T}\u2014\u2014\u56DE\u9000\u9875\u9762\u7EA7\u5BFC\u822A`);return A([void 0])})),it=T=>I(P=>{re.next({kind:"begin"});let M=!1,W=Ve(T,0).subscribe({next:()=>P.next(),error:ho=>{M=!0,re.next({kind:"end"}),P.error(ho)},complete:()=>{M=!0,re.next({kind:"end"}),P.complete()}});return()=>{W.unsubscribe(),M||re.next({kind:"end"})}}),we=T=>(ie.next(T),new Promise((P,M)=>{it(T).subscribe({next:()=>P(),error:W=>M(W),complete:()=>P()})})),w=()=>o.location.pathname+o.location.search,S=async()=>{await we(w())};u.renders$.subscribe({next:()=>{S().catch(T=>console.error("[vdom] v2 render:",T))}}),p.render=()=>{u.request("page-render")};let R=()=>{try{o.history.replaceState({...o.history.state??{},scrollY:o.scrollY},"")}catch{}},U=()=>{try{let T=o.history.state?.scrollY;o.scrollTo(0,typeof T=="number"?T:0)}catch{}},L=async T=>{R(),o.history.pushState({scrollY:0},"",T);try{await we(T),o.scrollTo(0,0)}catch{o.location.href=T}};p.app={navigate:L};let X=T=>{let M=T.target?.closest?.("a[href]");if(!M)return;let W=M.getAttribute("href");!W||W.startsWith("http")||W.startsWith("#")||n.has(W)&&(T.preventDefault(),L(W))};t.addEventListener("click",X);let _=()=>{we(w()).then(()=>U()).catch(()=>{o.location.reload()})};o.addEventListener("popstate",_),we(w()).catch(T=>console.error("[vdom] v2 \u9996\u5E27:",T));let Z=!1;return{ready:Promise.resolve(),render:()=>S(),__apply:T=>V(T),navigate:L,unmount:()=>{Z=!0,v=!1,t.removeEventListener("click",X),o.removeEventListener("popstate",_),g?.dispose();for(let[T]of[...l])z(T,l);d.dispose();for(let T of b.reverse())try{T()}catch(P){console.error("[vdom] v2 unmount:",P)}b.length=0,r.innerHTML=""}}}var Re=class extends Error{status;constructor(e,t){super(e),this.name="ApiError",this.status=t}};function kr(n={}){let e=n.baseUrl??"",t=n.timeout??15e3,o=new N,r=new N;o.asObservable().pipe(Ct(()=>ce(Promise.resolve(n.onUnauthorized?.()??!1)))).subscribe({next:a=>r.next(a),error:()=>r.next(!1)});let s=async()=>(o.next(),new Promise(a=>{r.asObservable().pipe(kt(1)).subscribe({next:l=>a(l)})}));async function i(a,l,d,u={},c=!1){let f=new AbortController,b=setTimeout(()=>f.abort(),t),h=typeof n.token=="function"?n.token():n.token;try{let p=h,v={"content-type":"application/json",...typeof n.headers=="function"?n.headers():n.headers,...p?{authorization:`Bearer ${p}`}:{},...u.headers},C=await fetch(e+l,{method:a,headers:v,body:d!==void 0?JSON.stringify(d):void 0,signal:f.signal});if(C.status===401&&!c){let k=typeof n.token=="function"?n.token():n.token;if(k&&k!==h||await s())return i(a,l,d,u,!0);throw new Re(`[api] 401 ${a} ${l}\uFF08\u5237\u65B0\u5931\u8D25\uFF09`,401)}if(!C.ok){let k="";try{let g=await C.text();if(g){let m=JSON.parse(g);m&&typeof m=="object"&&typeof m.error=="string"&&(k=m.error)}}catch{}throw new Re(k||`[api] \u8BF7\u6C42\u5931\u8D25 ${C.status}: ${a} ${l}`,C.status)}let E=await C.text();return E?JSON.parse(E):void 0}catch(p){let v=p instanceof Re?p:new Re(p.message);throw n.onError?.(v),v}finally{clearTimeout(b)}}return{get:(a,l)=>i("GET",a,void 0,l),post:(a,l,d)=>i("POST",a,l,d),put:(a,l,d)=>i("PUT",a,l,d),delete:(a,l)=>i("DELETE",a,void 0,l),patch:(a,l,d)=>i("PATCH",a,l,d),request:i}}function Er(n={}){let e=n.scheme??"Bearer",t=n.storage??{get:()=>null,set:()=>{}},o=n.tokenKey??n.key??"wf-auth-token",r=n.userKey??"wf-auth-user",s=n.refreshTokenKey??"wf-auth-refresh",i=null;try{let u=t.get(r);u&&(i=JSON.parse(u))}catch{}let a=new ae(t.get(o)||null),l=()=>{a.next(d.getToken())},d={getToken(){let u=t.get(o);return u||null},setToken(u){u===null?t.set(o,""):t.set(o,u),l()},headers(){let u=t.get(o);return u?{authorization:`${e} ${u}`}:{}},logout(){t.set(o,""),t.set(r,""),t.set(s,""),i=null,l()},get user(){return i},get isLoggedIn(){return!!t.get(o)},login(u,c,f){t.set(o,u),c!==void 0&&(t.set(r,JSON.stringify(c)),i=c),f!=null&&t.set(s,f),l(),n.onAuth?.(d)},setUser(u){t.set(r,JSON.stringify(u)),i=u},token$:a.asObservable(),async refresh(){if(!n.onRefresh)return console.warn("[vdom] auth.refresh() \u672A\u914D\u7F6E onRefresh \u94A9\u5B50\u2014\u2014401 \u65F6\u5C06\u65E0\u6CD5\u7EED\u671F\uFF08\u76F4\u63A5\u767B\u51FA\u8BED\u4E49\uFF09"),!1;let u=await n.onRefresh();return u&&n.onAuth?.(d),u}};return d}function Sr(n={}){let e=n.messages??{},t=n.locale??Object.keys(e)[0]??"default",o=new N;return{get locale(){return t},setLocale(r){t=r,o.next(r)},locale$:o.asObservable(),t(r,s){let a=e[t]?.[r]??r;if(s)for(let[l,d]of Object.entries(s))a=a.replaceAll(`{${l}}`,String(d));return a}}}function Or(n={}){let e=n.WebSocketCtor??globalThis.WebSocket,t=null,o=!1,r=0,s=null,i=new Set,a=new Set,l=new N,d=new ae(!1),u=n.autoReconnect?typeof n.autoReconnect=="object"?n.autoReconnect:{}:null,c=x=>{v=Date.now();let V=x.data;if(typeof x.data=="string")try{V=JSON.parse(x.data)}catch{}for(let F of[...i])F(V);l.next(V)},f=x=>{if(b.current!==x){b.current=x;for(let V of[...a])V(x);d.next(x)}},b={current:!1},h=n.ping,p=null,v=0,C=()=>{p&&(clearInterval(p),p=null)},E=()=>{if(!h||!t)return;C();let x=h.intervalMs??15e3,V=h.timeoutMs??35e3;v=Date.now(),p=setInterval(()=>{if(!t){C();return}if(Date.now()-v>V){try{t.close()}catch{}return}if(t.readyState!==1){try{t.close()}catch{}return}try{t.send(JSON.stringify(h.payload?.()??{type:"ping"}))}catch{}},x)},k=()=>{if(!u||o||s)return;let x=u.baseMs??1e3,V=u.maxMs??3e4,F=Math.min(x*2**r,V);r++,s=setTimeout(()=>{s=null,y(g)},F)},g=n.url??"",m=[],y=x=>{e&&(g=x,t=new e(x),t.onmessage=c,t.onopen=()=>{for(r=0,f(!0),E();m.length>0;)t?.send(m.shift())},t.onerror=()=>{try{t?.close()}catch{}},t.onclose=()=>{C(),t=null,f(!1),k()})};return{connect(x){o=!1,s&&(clearTimeout(s),s=null),r=0,C(),t?.close(),t=null,f(!1),y(x??n.url??"")},get isConnected(){return b.current},send(x){let V=typeof x=="string"?x:JSON.stringify(x);t?.readyState===1?t.send(V):m.push(V)},onMessage(x){return i.add(x),()=>{i.delete(x)}},onStatusChange(x){return a.add(x),x(b.current),()=>{a.delete(x)}},messages$:l.asObservable(),status$:d.asObservable(),close(){o=!0,s&&(clearTimeout(s),s=null),C(),t?.close(),t=null,f(!1)}}}function bo(n){return new Promise((e,t)=>{let o=[];n.subscribe({next:r=>o.push(r),error:t,complete:()=>e(o)})})}function Vr(n,e,t,o,r,s){let i=r??new Map,a=o??ee(),l=xe(n,e,t??{},i,a,s);return new ReadableStream({start(d){l.subscribe({next:u=>d.enqueue(u),error:u=>d.error(u),complete:()=>d.close()})}})}function st(n,e,t,o,r){let i=ge(n,e,t,o??new Map,r);return new ReadableStream({start(a){i.subscribe({next:l=>a.enqueue(l),error:l=>a.error(l),complete:()=>a.close()})}})}async function Pr(n,e,t){let o=t??ee(),r=await bo(ge(n,e,o)),{commandToHtml:s}=await Promise.resolve().then(()=>(go(),mo)),a=new ReadableStream({start(d){for(let u of r)d.enqueue(u);d.close()}}).pipeThrough(s()).getReader(),l="";for(;;){let{value:d,done:u}=await a.read();if(u)break;l+=d}return l}function vo(n,e="info",t=3e3){let o=document.createElement("div");o.className="wf-toast-host",o.style.cssText="position:fixed;top:16px;right:16px;z-index:var(--wf-z-toast,9999)",document.body.appendChild(o);let r=ee(),s=new de(o,document,r),i={render:async()=>{},onUnmount:()=>{},data:{get:async()=>{},set:()=>{},has:()=>!1}};st(H(()=>()=>H("div",{class:`wf-toast wf-toast--${e}`},H("span",{class:"wf-toast-msg"},n)),{}),i,r).pipeTo(new WritableStream({write(l){s.apply(l)}})).then(()=>{I(l=>(l.next(1),l.complete(),()=>{})).pipe(Tt(t),fe(()=>{s.dispose(),o.remove()})).subscribe({next:()=>{}})})}function Mr(n){return Object.assign(n,{toast:vo})}function Ir(n){let{cls:e,suffix:t="--active",role:o,aria:r,ariaText:s,roving:i}=n;return(a,l={})=>{let d=e+(a?` ${e}${t}`:""),u=l.class,c=u?d+" "+(Array.isArray(u)?u.filter(Boolean).join(" "):u):d,{class:f,...b}=l;return{class:c,...o?{role:o}:{},...r?{[r]:a}:{},...s?{[s.key]:a?s.value:void 0}:{},...i?{tabindex:a?0:-1}:{},...b}}}function Ar(n){return(e,t)=>r=>{let s={},i=[n.class];for(let[l,d]of Object.entries(n.enumStates??{})){let u=r[l];u!=null&&(d===null?i.push(`${n.class}--${String(u)}`):i.push(d[String(u)]??`${n.class}--${String(u)}`))}for(let[l,d]of Object.entries(n.boolStates??{}))r[l]&&i.push(d);let a=r.class;a&&i.push(a),s.class=i.join(" ");for(let[l,d]of Object.entries(n.ariaBools??{}))r[l]&&(s[d]=!0);return n.role&&(s.role=n.role),n.render?n.render(s,r,t):H(n.tag??"div",s,r.children)}}function Hr(n,e,t){let o=new AbortController,r=t?.signal;r&&(r.aborted?o.abort():r.addEventListener("abort",()=>o.abort(),{once:!0}));let s=t?.traceId??Ur(),i=t?.record!==!1,a=[],l=(async()=>{let d;try{d=await fetch(n,{method:"POST",headers:{"Content-Type":"application/json","X-Trace-Id":s,Accept:"text/event-stream",...t?.headers},body:JSON.stringify(e),signal:o.signal})}catch(u){if(o.signal.aborted)return;t?.onError?.({code:"provider_error",message:u instanceof Error?u.message:String(u)});return}if(!d.ok){t?.onError?.({code:Fr(d.status),message:`HTTP ${d.status} ${d.statusText}`});return}try{for await(let{name:u,data:c}of $r(d.body)){if(o.signal.aborted)return;Dr(a,{name:u,data:c},i),Lr(u,c,t??{})}}catch(u){if(o.signal.aborted)return;t?.onError?.({code:"provider_error",message:u instanceof Error?u.message:String(u)})}})();return{abort:()=>o.abort(),done:l,traceId:s,events:a}}function Lr(n,e,t){switch(n){case"wf:token":return t.onToken?.(e.text);case"wf:tool_call":return t.onToolCall?.(e);case"wf:tool_result":return t.onToolResult?.(e);case"wf:tool_progress":return t.onToolProgress?.(e);case"wf:step":return t.onStep?.(e);case"wf:approval_request":return t.onApproval?.(e);case"wf:usage":return t.onUsage?.(e);case"wf:done":return t.onDone?.(e);case"wf:error":return t.onError?.(e);default:return t.onEvent?.(n,e)}}async function*$r(n){let e=n.getReader(),t=new TextDecoder,o="";try{for(;;){let{done:r,value:s}=await e.read();if(r)break;o+=t.decode(s,{stream:!0});let i=o.split(`
1
+ var xo=Object.defineProperty;var Zt=(n,e,t)=>()=>{if(t)throw t[0];try{return n&&(e=n(n=0)),e}catch(o){throw t=[o],o}};var wo=(n,e)=>{for(var t in e)xo(n,t,{get:e[t],enumerable:!0})};function Ae(n,e){return!n.startsWith("aria-")||typeof e!="boolean"?null:e?"true":"false"}function Mt(n,e,t){if(e==="innerHTML"||e==="textContent"||e==="value"){n[e]=t;return}if(t==null){n.removeAttribute(e);return}let o=Ae(e,t);if(o!==null){n.setAttribute(e,o);return}if(Po.has(e)){n.setAttribute(e,t?"true":"false");return}if(t===!1){n.removeAttribute(e);return}if(e==="class"||e==="className"){n.setAttribute("class",String(t));return}if(typeof t=="boolean"){n.setAttribute(e,"");return}n.setAttribute(e,String(t))}var Po,Je=Zt(()=>{"use strict";Po=new Set(["draggable","contenteditable","spellcheck"])});var mo={};wo(mo,{VOID_ELEMENTS:()=>co,attrsToHtml:()=>po,commandToHtml:()=>Nr,escapeHtml:()=>Ne,htmlDocument:()=>Vr,kebab:()=>fo});function Ne(n){return n.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function fo(n){return n.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}function po(n){let e=[];for(let[t,o]of Object.entries(n)){let r=Ae(t,o);if(r!==null){e.push(`${t}="${r}"`);continue}if(!(o==null||o===!1))if(t==="style"&&o&&typeof o=="object"){let s=Object.entries(o).filter(([,i])=>i!=null&&i!==!1).map(([i,a])=>`${fo(i)}: ${a}`).join("; ");s&&e.push(`style="${Ne(s)}"`)}else typeof o=="boolean"?e.push(`${t}=""`):e.push(`${t}="${Ne(String(o))}"`)}return e.length?" "+e.join(" "):""}function Nr(){let n=[];return new TransformStream({transform(e,t){switch(e.op){case"create":n.push(e.tag),t.enqueue(`<${e.tag}${po(e.attrs)}>`);break;case"createText":t.enqueue(Ne(e.value));break;case"createAnchor":t.enqueue("<!--wf-hole-->");break;case"close":{let o=n.pop();o&&!co.has(o)&&t.enqueue(`</${o}>`);break}case"setText":t.enqueue(Ne(e.value));break;case"insert":case"remove":case"setProp":case"ref":case"unref":case"mount":case"unmount":case"move":case"done":break}}})}function Vr(n,e={}){let t=e.rootId??"root",o=e.data?`<script>window.__DATA__=${JSON.stringify(e.data).replace(/</g,"\\u003c")}<\/script>`:"";return`<!DOCTYPE html><html><head><meta charset="utf-8"><title>${Ne(e.title??"")}</title></head><body><div id="${t}">${n}</div>${o}</body></html>`}var co,go=Zt(()=>{"use strict";Je();co=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"])});function ut(n){return n==null?null:typeof n=="string"?n:typeof n=="number"?String(n):(console.warn(`[vdom] key \u5FC5\u987B\u662F string|number\u2014\u2014\u5F53\u524D ${typeof n}\uFF08\u5FFD\u7565\u2014\u2014\u4F4D\u7F6E\u8EAB\u4EFD\uFF09`),null)}function dt(n){return ut(n?.key)}function ct(n){let e={...n??{}};return delete e.key,e}function ft(n){if(!(n==null||n===!1)){if(typeof n=="string")return n.trim()||void 0;if(typeof n=="number")return String(n);if(Array.isArray(n)){let e=n.map(ft).filter(t=>!!t);return e.length?e.join(" "):void 0}if(typeof n=="object"){let e=Object.entries(n).filter(([,t])=>!!t).map(([t])=>t);return e.length?e.join(" "):void 0}}}function Qt(n){for(let e of["class","className"]){let t=n[e];t!=null&&typeof t!="string"&&(n[e]=ft(t))}return n}function H(n,e,...t){let o=ct(Qt(e??{}));return t.length===1?o.children=t[0]:t.length>1&&(o.children=t),{type:n,props:o,key:dt(e)}}function pt(n,e,t){return{type:n,props:ct(Qt(e??{})),key:ut(t)??dt(e)}}var To=pt,Co=pt;var en="pos:";function Q(n,e){return`${n}.k${e.replace(/%/g,"%25").replace(/\./g,"%2E")}`}function D(n){return n==null||typeof n=="boolean"||typeof n=="string"||typeof n=="number"||Array.isArray(n)?null:n.key}function ko(n){return D(n)!==null}function mt(n){return`${en}${n}`}function tn(n){return n.startsWith(en)}function Me(n,e){let t=new Set;for(let o of n){let r=D(o);if(r!==null){if(t.has(r)){console.warn(`[vdom] ${e}\uFF1A\u91CD\u590D key "${r}"\uFF08\u5217\u8868\u8EAB\u4EFD\u6620\u5C04\u6B67\u4E49\u2014\u2014\u589E\u5220/\u91CD\u6392\u884C\u4E3A\u4E0D\u786E\u5B9A\uFF09\u2014\u2014\u8BF7\u4E3A\u6BCF\u9879\u58F0\u660E\u552F\u4E00 key\uFF08\u6570\u636E id \u2192 keyBy\uFF09`);return}t.add(r)}}}function nn(n,e){if(n.length<2)return;let t=n.some(r=>typeof r?.type=="function"),o=n.some(r=>!ko(r)&&typeof r?.type=="function");if(t&&o){let r=n.map(s=>{let i=s;if(i==null)return"null";if(typeof i=="boolean")return"bool";if(typeof i=="string"||typeof i=="number")return"text";if(Array.isArray(i))return"arr";if(typeof i.type=="function"){let a=i.type.name;return"comp"+(a?":"+a:"")}return"el"+(i.key?`.k{${String(i.key).slice(0,16)}}`:"")});console.warn(`[vdom] ${e}\uFF1A\u5217\u8868\u542B\u65E0 key \u7684\u7EC4\u4EF6\u9879\uFF08\u957F\u5EA6 ${n.length}\uFF09\u2014\u2014\u9879: [${r.join(", ")}]\u2014\u2014\u52A8\u6001\u589E\u5220/\u91CD\u6392\u65F6\u72B6\u6001\u4F1A\u6309\u4F4D\u7F6E\u7EE7\u627F\u2014\u2014\u8BF7\u4E3A\u7EC4\u4EF6\u9879\u58F0\u660E key\uFF08\u6570\u636E id \u2192 keyBy\uFF09`)}}var on=Symbol("vdom-fragment");function le(n){return n.type===on}function gt(){return{children:new Map}}function vt(n){return n.split("/").filter(Boolean)}function So(n,e,t){let o=e.slice(1);if(!n.children.has(":")){let s=t();s.param=o,n.children.set(":",s)}let r=n.children.get(":");if(r.param!==o)throw new Error(`[router] param conflict: ":${r.param}" already registered, cannot register ":${o}"`);return r}function Eo(n,e,t){return e==="*"?(n.wildcard=!0,n):e.startsWith(":")?So(n,e,t):(n.children.has(e)||n.children.set(e,t()),n.children.get(e))}function rn(n,e,t){let o=vt(e),r=n;for(let s of o){if(s==="*")return r.wildcard=!0,r.wildcardValue=t,r;r=Eo(r,s,()=>gt())}return r.value=t,r}function Be(n,e,t,o,r="value"){if(t===e.length){let l=r==="value"?n.value:n.wildcardValue;return l!==void 0?{value:l,params:{...o},node:n}:null}let s=e[t],i=n.children.get(s);if(i){let l=Be(i,e,t+1,o,r);if(l)return l}let a=n.children.get(":");if(a?.param){let l={...o,[a.param]:decodeURIComponent(s)},d=Be(a,e,t+1,l,r);if(d)return d}return null}function je(n,e){let t=Be(n,e,0,{});if(t){let o=t.node.wildcardValue!==void 0;return{value:t.value,params:o?{...t.params,"*":""}:t.params,wildcard:!1}}return Oo(n,e,e.length)}function Oo(n,e,t){for(let o=0;o<=t;o++){let r=Be(n,e.slice(0,o),0,{},"wildcard");if(r)return{value:r.value,params:{...r.params,"*":e.slice(o).join("/")},wildcard:!0}}return null}function an(n){let e;try{e=new URL(n.url)}catch{return{ok:!1,reason:"invalid-url"}}let t=Ro(e);try{decodeURI(e.pathname)}catch{return{ok:!1,reason:"malformed-encoding"}}for(let o of sn(e.pathname))try{decodeURIComponent(o)}catch{return{ok:!1,reason:"malformed-encoding"}}return{ok:!0,segments:sn(e.pathname),pathname:e.pathname,query:t}}function sn(n){return n.split("/").filter(Boolean)}function ln(n){return n?{...n.params}:{}}function Ro(n){return Object.fromEntries(n.searchParams)}function No(n){return Response.json({error:"Bad Request",reason:n},{status:400})}async function un(n,e,t,o){let r=an(t);if(!r.ok)return No(r.reason);let s=je(n,r.segments),i=s?{value:s.value,params:ln(s),wildcard:s.wildcard}:null;e.enrichCtx?.(o,i,r.pathname,r.query);try{if(!i)return await e.onNotFound(t,o,r.pathname);let a=e.resolveHandler(i,t,o);if(a.kind==="not-found")return await e.onNotFound(t,o,r.pathname);if(a.kind==="not-allowed")return e.onMethodNotAllowed?await e.onMethodNotAllowed(a.methods,t,o,r.pathname):new Response("Method Not Allowed",{status:405,headers:{Allow:a.methods.join(", ")}});let l=await a.run();return e.onRouteSuccess?.(t,o,r.pathname),l}catch(a){if(e.onError)return e.onError(a,t,o,r.pathname);throw a}}function dn(n){return new Request(new URL(n,"http://localhost"))}var bt=class{root=gt();notFoundHandler=null;get(e,t){return rn(this.root,e,t),this}has(e){try{let t=new URL(e,"http://x");for(let o of t.pathname.split("/").filter(Boolean))decodeURIComponent(o);return je(this.root,vt(t.pathname))!==null}catch{return!1}}notFound(e){return this.notFoundHandler=e,this}_pipeline;get pipeline(){return this._pipeline??={resolveHandler:(e,t,o)=>({kind:"route",run:()=>e.value(t,o)}),onNotFound:(e,t)=>this.notFoundHandler?this.notFoundHandler(e,t):new Response(null,{status:404}),enrichCtx:(e,t,o,r)=>{e.params=t?{...t.params}:{},e.query=r,e.route={path:o,params:e.params,query:r}}}}async resolve(e,t){return un(this.root,this.pipeline,e,t)}};function cn(n){try{if(typeof document>"u")return;let e=document.createElement("textarea");e.value=n,e.style.position="fixed",e.style.opacity="0",e.setAttribute("readonly",""),document.body.appendChild(e),e.select();let t=document.execCommand("copy");e.remove(),!t&&typeof console<"u"&&console.warn("[browser] copyText \u964D\u7EA7\u5931\u8D25\uFF08execCommand \u8FD4\u56DE false\uFF09")}catch{}}function ht(){let n=()=>typeof document<"u"?document.documentElement:null,e=()=>typeof document<"u"?document.scrollingElement??document.documentElement:null;return{get window(){return typeof window<"u"?window:void 0},get document(){return typeof document<"u"?document:void 0},copyText(t){if(typeof navigator<"u"&&navigator.clipboard?.writeText){navigator.clipboard.writeText(t).catch(()=>cn(t));return}cn(t)},downloadFile(t,o,r="text/plain"){try{let s=typeof document<"u"?document:null;if(!s)return!1;let i=new Blob([o],{type:r}),a=URL.createObjectURL(i),l=s.createElement("a");return l.href=a,l.download=t,l.click(),URL.revokeObjectURL(a),!0}catch{return!1}},activeElement:()=>typeof document<"u"?document.activeElement:null,byId:t=>typeof document<"u"?document.getElementById(t):null,query:t=>typeof document<"u"?document.querySelector(t):null,queryAll:t=>typeof document<"u"?document.querySelectorAll(t):null,createElement:t=>typeof document<"u"?document.createElement(t):null,createElementNS:(t,o)=>typeof document<"u"?document.createElementNS(t,o):null,createDocumentFragment:()=>typeof document<"u"?document.createDocumentFragment():null,createComment:t=>typeof document<"u"?document.createComment(t):null,createTextNode:t=>typeof document<"u"?document.createTextNode(t):null,addEventListener:(t,o,r)=>{typeof window<"u"&&window.addEventListener(t,o,r)},removeEventListener:(t,o,r)=>{typeof window<"u"&&window.removeEventListener(t,o,r)},scrollTo:t=>{typeof window<"u"&&window.scrollTo(0,t)},reload:()=>{typeof window<"u"&&window.location.reload()},scrollTop:()=>e()?.scrollTop??0,matchMedia:t=>typeof window<"u"&&typeof window.matchMedia=="function"?window.matchMedia(t):null,visualViewport:()=>typeof window<"u"?window.visualViewport??null:null,scrollingElement:()=>e(),bodyElement:()=>typeof document<"u"?document.body:null,bodyAppend:t=>{typeof document<"u"&&document.body.appendChild(t)},bodyRemove:t=>{typeof document<"u"&&document.body.contains(t)&&document.body.removeChild(t)},clearBody:()=>{typeof document<"u"&&(document.body.innerHTML="")},event:(t,o)=>typeof window<"u"?new window.Event(t,o):new Event(t,o),rootElement:()=>n(),getSelection:()=>typeof window<"u"?window.getSelection():null,selectionText:()=>typeof window<"u"?window.getSelection()?.toString()??"":"",storageGet:t=>{try{return typeof window<"u"?window.localStorage.getItem(t):null}catch{return null}},storageSet:(t,o)=>{try{typeof window<"u"&&window.localStorage.setItem(t,o)}catch{}},timeout:(t,o)=>typeof window<"u"?window.setTimeout(t,o):0,pathname:()=>typeof window<"u"?window.location.pathname:"",setHash:t=>{typeof window<"u"&&(window.location.hash=t)},viewportHeight:()=>typeof window<"u"?window.innerHeight:0,onFormRestore:t=>{t()}}}var Ke=()=>{},j=class{_subscribe;constructor(e){this._subscribe=e}subscribe(e){let t=Vo(e),o=!1,r=null,s={next:l=>{o||t.next(l)},error:l=>{o||(o=!0,t.error(l),r?.())},complete:()=>{o||(o=!0,t.complete(),r?.())}},i=this._subscribe(s);r=typeof i=="function"?i:i?()=>i.unsubscribe():Ke,o&&r();let a=!1;return{unsubscribe(){a||(a=!0,o||(o=!0,r?.()))}}}pipe(...e){return e.reduce((t,o)=>o(t),this)}};function Vo(n){return{next:n?.next??Ke,error:n?.error??Ke,complete:n?.complete??Ke}}function P(n){return new j(n)}var yt=()=>{},N=class{subs=new Set;closed=!1;asObservable(){return P(e=>this.closed?(e.complete(),yt):(this.subs.add(e),()=>{this.subs.delete(e)}))}subscribe(e){return this.asObservable().subscribe(e)}next(e){if(!this.closed)for(let t of this.subs)t.next(e)}error(e){if(!this.closed){this.closed=!0;for(let t of this.subs)t.error(e);this.subs.clear()}}complete(){if(!this.closed){this.closed=!0;for(let e of this.subs)e.complete();this.subs.clear()}}},ae=class extends N{value;constructor(e){super(),this.value=e}get(){return this.value}next(e){this.value=e,super.next(e)}asObservable(){return P(e=>this.closed?(e.complete(),yt):(e.next(this.value),this.subs.add(e),()=>{this.subs.delete(e)}))}};function ce(n,e){return P(t=>{let o=!0,r=()=>{o&&(o=!1,t.complete())},s=e?.signal;if(s){if(s.aborted)return r(),yt;s.addEventListener("abort",r,{once:!0})}return n.then(i=>{o&&(o=!1,t.next(i),t.complete())},i=>{o&&(o=!1,t.error(i))}),()=>{o=!1,s&&s.removeEventListener("abort",r)}})}function xt(n,e){return P(t=>{let o=n(r=>t.next(r));return e&&t.next(e()),()=>{typeof o=="function"&&o()}})}function wt(n){return e=>new j(t=>e.subscribe({next:o=>t.next(n(o)),error:o=>t.error(o),complete:()=>t.complete()}))}function Tt(n){return e=>new j(t=>e.subscribe({next:o=>{n(o)&&t.next(o)},error:o=>t.error(o),complete:()=>t.complete()}))}function fe(n){return e=>new j(t=>e.subscribe({next:o=>{try{n(o)}catch(r){t.error(r);return}t.next(o)},error:o=>t.error(o),complete:()=>t.complete()}))}function Ct(){return n=>new j(e=>{let t=[];n.subscribe({next:o=>t.push(o),error:o=>e.error(o),complete:()=>{e.next(t),e.complete()}})})}function kt(n){return e=>new j(t=>{let o=new Set,r=!1,s=!1,i=()=>{s&&o.size===0&&(r=!0,t.complete())},a=e.subscribe({next:l=>{let d=setTimeout(()=>{o.delete(d),!r&&(t.next(l),i())},n);o.add(d)},error:l=>{r=!0,t.error(l)},complete:()=>{s=!0,i()}});return()=>{r=!0;for(let l of o)clearTimeout(l);o.clear(),a.unsubscribe()}})}function ve(n,e){let t=e;return o=>new j(r=>o.subscribe({next:s=>{t=n(t,s),r.next(t)},error:s=>r.error(s),complete:()=>r.complete()}))}function Ie(n){return e=>new j(t=>{let o=null,r=!1,s=e.subscribe({next:i=>{o?.unsubscribe();let a=!1,l=n(i).subscribe({next:d=>t.next(d),error:d=>t.error(d),complete:()=>{a=!0,o=null}});o=a?null:l},error:i=>t.error(i),complete:()=>{r=!0,o||t.complete()}});return()=>{s.unsubscribe(),o?.unsubscribe()}})}function St(n){return e=>new j(t=>{let o=null,r=e.subscribe({next:s=>{if(o)return;let i=!1,a=n(s).subscribe({next:l=>t.next(l),error:l=>t.error(l),complete:()=>{i=!0,o=null}});o=i?null:a},error:s=>t.error(s),complete:()=>{o||t.complete()}});return()=>{r.unsubscribe(),o?.unsubscribe()}})}function Et(n){return e=>new j(t=>{if(n<=0)return t.complete(),()=>{};let o=0,r=null;return r=e.subscribe({next:s=>{o++,t.next(s),o>=n&&(t.complete(),r?.unsubscribe())},error:s=>t.error(s),complete:()=>t.complete()}),()=>r?.unsubscribe()})}function Ot(n,e){let t=e?.trailing??!1;return o=>new j(r=>{let s=null,i=!1,a,l=!1,d=!1,u=v=>{d||r.next(v)},c=()=>{s=null,t&&l&&(l=!1,u(a)),i=!1},f=o.subscribe({next:v=>{i?t&&(a=v,l=!0):(i=!0,u(v),s=setTimeout(c,n))},error:v=>{d=!0,s&&clearTimeout(s),r.error(v)},complete:()=>{d=!0,s&&clearTimeout(s),r.complete()}});return()=>{d=!0,s&&clearTimeout(s),f.unsubscribe()}})}var ze=globalThis;ze.__wfErrState||(ze.__wfErrState={errState:new Map,totalErrors:0});var{errState:Ye,totalErrorsRef:Rt}={errState:ze.__wfErrState.errState,totalErrorsRef:ze.__wfErrState},fn={get:()=>Rt.totalErrors,inc:()=>{Rt.totalErrors++},reset:()=>{Rt.totalErrors=0}};function Pe(n,e){fn.inc();let t=Ye.get(n);if(t){t.count++;return}Ye.set(n,{shown:!0,count:1}),console.error(`[vdom] renderFn \u9519\u8BEF\uFF08${n}\uFF09\u2014\u2014\u7EC4\u4EF6\u7EA7 hole \u964D\u7EA7\uFF08\u4E0B\u4E00\u62CD\u91CD\u8BD5\u81EA\u6108\uFF09:`,e)}function Nt(n){Ye.delete(n)}function be(){let n={};for(let[e,t]of Ye)n[e]=t.count;return{total:fn.get(),byComp:n}}function pn(n){let e=new Set,t=new N,o=n,r=()=>{for(let s of[...e])s();t.next(typeof o=="object"&&o!==null?{...o}:o)};return{get state(){return o},subscribe(s){return e.add(s),()=>{e.delete(s)}},set(s){typeof o=="object"&&o!==null&&!Array.isArray(o)&&typeof s=="object"&&s!==null?o={...o,...s}:o=s,r()},update(s){let i=s(o);i!==void 0&&(typeof o!="object"||o===null||i!==o)&&(o=i),r()},notify:r,changes$:t.asObservable()}}function Vt(n){let e=pn(n),t=(()=>e.state);return t.set=o=>e.set(o),t.update=o=>e.update(o),t.subscribe=o=>e.subscribe(o),t.notify=()=>e.notify(),t.store=e,t}function Mo(n,e,t=(o,r)=>o===r){let o,r,s=!1;return()=>{let i=n.map(a=>a());return(!s||i.some((a,l)=>!t(r[l],a)))&&(r=i,o=e(i),s=!0),o}}function q(n,e){let t=globalThis.__wfSpy;t&&t.length<1e3&&t.push({at:Date.now()%1e5,kind:n,data:e===void 0?void 0:String(e).slice(0,80)})}function te(n,e,t,o){let r=n.getInstanceData(),s=r.get(e);if(!s){let i=t,a=!0,l=new N,d=e.subscribe({next:f=>{let v=f!==i;i=f,v&&!a&&l.next()},error:f=>{console.error("[vdom] useObservable:",f)}});a=!1;let c=(o?.throttleMs&&o.throttleMs>0?l.asObservable().pipe(Ot(o.throttleMs,{trailing:!0})):l.asObservable()).subscribe({next:()=>{q("obs:next",String(i)+" \u2192 req:render"),n.requestRender()}});n.onUnmount(()=>{d.unsubscribe(),c.unsubscribe()}),s={get:()=>i},r.set(e,s)}return()=>s.get()}function mn(n,e,t){if(typeof e=="function"){let r=e;return i=>{i?r(i):t?.()}}return{current:e}}function gn(n,e,t){let o=typeof e=="object"?e:void 0,r=typeof e=="boolean"?e:!1,s=o??t,i=n.nextHookIndex(),a=n.getHookState(i)??{open:r};n.setHookState(i,a);let l=s?.open!==void 0;return{get open(){return s?.open??a.open},setOpen(d){l?(s?.onOpenChange||console.warn(`[vdom] useOpen${o?.name?`(${o.name})`:""} \u53D7\u63A7\u7F3A onOpenChange \u56DE\u8C03\u2014\u2014\u4EA4\u4E92\u9759\u9ED8\u5931\u6548`),s?.onOpenChange?.(d)):(a.open=d,n.requestRender())},toggle(){this.setOpen(!this.open)}}}function Ge(n,e,t){let o=t?e:(()=>!0),r=t??e,s=n.getBrowser()?.window;if(!s)return()=>{};let i=l=>{if(typeof o=="string"){if(l.key!==o)return}else if(!o(l))return;r(l)};s.addEventListener("keydown",i);let a=()=>s.removeEventListener("keydown",i);return n.onUnmount(a),a}function vn(n,e,t,o,r,s,i,a){let l=n.getBoundingClientRect();if(l.width===0&&l.height===0)return null;let d=e.innerWidth,u=e.innerHeight,c,f;switch(r){case"bottom":c=l.bottom+s,f=a?l.left+l.width/2-t/2:l.left;break;case"top":c=l.top-o-s,f=a?l.left+l.width/2-t/2:l.left;break;case"left":c=a?l.top+l.height/2-o/2:l.top,f=l.left-t-s;break;case"right":c=a?l.top+l.height/2-o/2:l.top,f=l.right+s;break}return f+t>d-i&&(f=d-t-i),f<i&&(f=i),c+o>u-i&&(c=u-o-i),c<i&&(c=i),{top:c,left:f}}function bn(n,e){let t=e.getComputedStyle(n).animationName;if(t&&t!=="none")return!0;for(let o of n.children){let r=e.getComputedStyle(o).animationName;if(r&&r!=="none")return!0}return!1}function hn(n,e){let t=new N,o=te(n,Io(n,e,t),{top:0,left:0});return{get top(){return o().top},get left(){return o().left},refresh:()=>{t.next()}}}function Io(n,e,t){let o=n.getBrowser()?.window;return P(r=>{if(!o)return r.next({top:0,left:0}),r.complete(),()=>{};let s,i=()=>{let d=e.el();if(!d)return;let u=d.getBoundingClientRect();u.width===0&&u.height===0||(e.isOpen?.()??!0)&&r.next(e.compute(u))},a=()=>{s===void 0&&(s=o.requestAnimationFrame(()=>{s=void 0,i()}))};o.addEventListener("scroll",a,!0),o.addEventListener("resize",a),i();let l=t?.subscribe({next:()=>i()});return()=>{l?.unsubscribe(),s!==void 0&&o.cancelAnimationFrame(s),o.removeEventListener("scroll",a,!0),o.removeEventListener("resize",a)}})}function B(n){let e=n.children??(n.props.children===void 0?[]:n.props.children),t=o=>Array.isArray(o)?o.flatMap(t):[o];return Array.isArray(e)?e.flatMap(t):[e]}function $(n){return n!==null&&typeof n=="object"&&!Array.isArray(n)&&le(n)?B(n).reduce((e,t)=>e+$(t),0):1}Je();function O(n,e){return`${n}.${e}`}function He(n){let e={};for(let[t,o]of Object.entries(n)){if(t==="children"||t==="key"||t==="ref"||typeof o=="function"||o===void 0)continue;let r=Ae(t,o);e[t]=r!==null?r:o}return e}function yn(n){return n==null||typeof n=="boolean"}function xn(n){return!(n==null||typeof n=="boolean"||typeof n=="string"||typeof n=="number"||Array.isArray(n)||typeof n=="object"&&typeof n.type=="string"||typeof n.type=="function"||typeof n.type=="symbol")}function It(n){return n==null?"null/undefined":typeof n=="object"?`object\uFF08type: ${typeof n.type}\uFF09`:typeof n}function Ao(n,e,t,o){return[{op:"createAnchor",id:n,...o!==void 0?{detail:o}:{}},{op:"insert",id:n,parent:e,ref:t}]}function Pt(n,e,t,o,r){for(let s of Ao(e,t,o,r))n(s)}function ne(n){return n===""?"hole":typeof n=="string"||typeof n=="number"?"text":yn(n)?"hole":Array.isArray(n)?"array":typeof n.type=="string"?"element":le(n)?"fragment":typeof n.type=="function"?"component":(xn(n),"invalid")}function Xe(n){return typeof n=="string"||typeof n=="number"?String(n):null}function Y(n){return ne(n)==="hole"}function pe(n){return ne(n)==="text"}function ue(n){if(n==null)return"hole";let e=ne(n);return e==="invalid"?"hole":e}function wn(n,e,t,o,r){let s=He(n.props),i=He(e.props);for(let[a,l]of Object.entries(i))a==="value"&&r?.formControl?o({op:"setProp",id:t,key:a,value:l}):s[a]!==l&&o({op:"setProp",id:t,key:a,value:l});for(let a of Object.keys(s))a in i||o({op:"setProp",id:t,key:a,value:void 0});for(let[a,l]of Object.entries(e.props))a==="children"||a==="key"||typeof l=="function"&&n.props[a]!==l&&o({op:"setProp",id:t,key:a,value:l,prev:n.props[a]});for(let a of Object.keys(n.props))a==="children"||a==="key"||typeof n.props[a]=="function"&&e.props[a]===void 0&&o({op:"setProp",id:t,key:a,value:void 0,prev:n.props[a]})}function Te(n,e,t){return typeof n?.type=="function"?O(e,0):Array.isArray(n)?e:Y(n)?O(e,0):t}function Le(n,e,t){return typeof n?.type=="function"||Array.isArray(n)?e:t}function G(n,e,t,o,r){if(Y(n)){o({op:"remove",id:e});return}if(pe(n)){o({op:"remove",id:e});return}if(Array.isArray(n)){let l=0;for(let d of n)G(d,O(e,l),e,o,r),l+=$(d);return}let s=n;if(le(s)){let l=Number(e.slice(t.length+1)),d=B(s),u=l;for(let c of d)G(c,O(t,u),t,o,r),u+=$(c);return}if(typeof s.type=="function"){let l=s.key!==null?Q(t,s.key):e;o({op:"unmount",compId:l});let d=r?.get(l)?.lastOutput;if(d!==void 0){let u=me(d),c=Te(u,l,e),v=u!==null&&typeof u=="object"&&!Array.isArray(u)&&le(u)?e.slice(0,e.lastIndexOf(".")):Le(u,l,l);G(u,c,v,o,r)}}let i=B(s),a=0;i.forEach(l=>{let d=O(e,a);l!==null&&typeof l!="string"&&typeof l!="number"&&typeof l!="boolean"&&!Array.isArray(l)?G(l,d,e,o,r):o({op:"remove",id:d}),a+=$(l)}),o({op:"remove",id:e})}var Ce=(n,e,t)=>{t.emit({op:"remove",id:t.oldId}),t.emitNode(e,t.parent,t.index,t.ref)};var ke=(n,e,t)=>{t.emit({op:"remove",id:t.oldId}),t.emitNode(e,t.parent,t.index,t.ref)};var Se=(n,e,t)=>{G(n,t.oldId,t.parent,t.emit,t.registry),t.emitNode(e,t.parent,t.index,t.ref)};var Ee=(n,e,t)=>{t.oldCompId&&t.emit({op:"unmount",compId:t.oldCompId});let o=t.registry?.get(t.oldCompId??"")?.lastOutput;if(o!==void 0){let r=me(o);G(r,Te(r,t.oldCompId??"",O(t.parent,t.index)),Le(r,t.oldCompId??"",t.parent),t.emit,t.registry)}else t.emit({op:"remove",id:t.oldId});t.emitNode(e,t.parent,t.index,t.ref)};var oe=(n,e,t)=>{let o=Array.isArray(n)?n:B(n),r=t.index;for(let s of o)G(s,O(t.parent,r),t.parent,t.emit,t.registry),r+=$(s);t.emitNode(e,t.parent,t.index,t.ref)};var Ho={text:{text:null,hole:Ce,element:Ce,component:Ce,fragment:Ce,array:Ce},hole:{text:ke,hole:null,element:ke,component:ke,fragment:ke,array:ke},element:{text:Se,hole:Se,element:null,component:Se,fragment:Se,array:Se},component:{text:Ee,hole:Ee,element:Ee,component:null,fragment:Ee,array:Ee},fragment:{text:oe,hole:oe,element:oe,component:oe,fragment:null,array:oe},array:{text:oe,hole:oe,element:oe,component:oe,fragment:oe,array:null}};function At(n,e){return Ho[n]?.[e]??null}var Sn=0;function En(){return++Sn}function Lt(n,e,t,o,r){let s=[],i=new Map,a={n:0},l=new Map,d=new N;d.subscribe({next:()=>{for(let h of[...s].reverse())try{h()}catch(p){console.error("[vdom] v2 onUnmount:",p)}}});let u=Object.create(t);u.onUnmount=h=>{s.push(h)},u.ui=$t({requestRender:()=>{q("req:render",o.slice(-18)),r?.()},onUnmount:h=>{s.push(h)},getBrowser:()=>t.browser??null,nextHookIndex:()=>a.n++,getHookState:h=>l.get(h),setHookState:(h,p)=>{l.set(h,p)},getInstanceData:()=>i,scheduleAfterRender:h=>{let p=t.afterRender;p?p(h):setTimeout(h,0)},getSharedContext:()=>t??null});let c=n(e,u),f;typeof c=="function"?f=c:f=(h=>{let p=n(h,u);return typeof p=="function"?null:p});let v=a.n;return{factory:n,renderFn:f,lastOutput:void 0,hookSeq:a,renderBase:v,instData:i,destroy$:d,disposed:!1,epoch:Sn}}function Dt(n,e){let t=n.renderFn.shouldRender;return t&&n.lastProps!==void 0&&n.lastOutput!==void 0&&!t(n.lastProps,e)?me(n.lastOutput):(n.lastProps=e,n.hookSeq.n=n.renderBase,n.renderFn(e))}function z(n,e){let t=e.get(n);if(!(!t||t.disposed)){t.disposed=!0;try{t.destroy$.next()}catch(o){console.error("[vdom] v2 destroy$:",o)}t.instData.clear(),e.delete(n)}}function Lo(n,e,t,o){let r=e.get(n),s=[];if(r){let a=r.lastOutput!==void 0?me(r.lastOutput):void 0;if(a!==void 0){let l={get:d=>{let u=e.get(d);return u?{lastOutput:u.lastOutput}:void 0}};G(a,Te(a,n,t),Le(a,n,o),d=>{s.push(d)},l)}}let i=[];for(let a of s)a.op==="unmount"&&e.has(a.compId)&&i.push(a.compId);z(n,e);for(let a of i)e.has(a)&&z(a,e);return s.unshift({op:"unmount",compId:n}),s}function On(n,e,t,o){let r=n?.lastOutput;if(r===void 0)return[e+".0"];if(typeof r=="object"&&r!==null&&"kind"in r){let s=r;if(s.kind==="hole")return[e+".0"];if(s.kind==="array")return(s.items??[]).map((a,l)=>`${e}.${l}`);let i=s.v;return i?typeof i.type=="function"?[e+".0"]:[O(t,o)]:[e+".0"]}return[e+".0"]}function Do(n,e,t,o){if(Y(n))return O(e,t);if(pe(n))return O(e,t);let r=n;if(typeof r.type!="function")return O(e,t);let s=D(r);if(s===null)return O(e,t);let i=Q(e,s);return On(o?.get(i),i,e,t)[0]}function Tn(n,e,t,o,r,s,i,a){let l=[],d=[],u=0,c=null;for(let f=0;f<e.length;f++){let v=$(e[f]);l.push(n[f]===void 0?K(e[f],t,u,c,o,s,r,i):ye(n[f],e[f],t,u,c,o,r,s,i)),c=O(t,u+v-1),u+=v}for(let f=n.length-1;f>=e.length;f--)d.push(A(he(n[f],t,$o(n,f),r)));return a?J([...d.reverse(),...l]):(d.reverse(),J([...l,...d]))}function ye(n,e,t,o,r,s,i,a,l){let d=O(t,o),u=ne(n),c=ne(e);if(u==="text"&&c==="text")return String(n)===String(e)?A([]):A([{op:"setText",id:d,value:Xe(e)}]);if(u==="hole"&&c==="hole")return A([]);if(u==="hole")return J([A([{op:"remove",id:d}]),K(e,t,o,r,s,a,i,l)]);if(c==="hole")return Ht(n,e,t,o,r,s,a,u==="component"?$e(n,t,o):void 0,i,l);if((u==="fragment"||u==="array")&&(c==="fragment"||c==="array")){let p=De(Array.isArray(n)?n:B(n)),b=De(Array.isArray(e)?e:B(e));return Ze(b)||Ze(p)?kn(p,b,t,s,i,a,l):Tn(p,b,t,s,i,a,l,!0)}if(u===c&&typeof n!="string"&&typeof n!="number"){let p=n,b=e;if(typeof p.type=="function"&&typeof b.type=="function"){if(p.type===b.type)return Uo(p,b,t,o,r,s,i,a,l);let C=$e(p,t,o),S=Lo(C,i,O(t,o),t);return J([A(S),K(b,t,o,r,s,a,i,l)])}if(typeof p.type=="string"&&typeof b.type=="string"){if(p.type===b.type){let C=[];wn(p,b,d,g=>C.push(g),{formControl:p.type==="input"||p.type==="textarea"});let S=De(B(p)),k=De(B(b));if(Wo(S,k,d),Ze(k)||Ze(S))return J([A(C),kn(S,k,d,s,i,a,l)]);let m=Tn(S,k,d,s,i,a,l,!1);return J([A(C),m])}return J([A(he(p,t,o,i)),K(b,t,o,r,s,a,i,l)])}}let f=ue(n),v=ue(e),h=ne(n)==="component"?$e(n,t,o):void 0;return Ht(n,e,t,o,r,s,a,h,i,l)}function $o(n,e){let t=0;for(let o=0;o<e;o++)t+=$(n[o]);return t}function Fo(n,e){let t=0;for(let o=0;o<e;o++)t+=$(n[o]);return t}function Uo(n,e,t,o,r,s,i,a,l){let d=$e(e,t,o),u=i.get(d);if(!u||u.factory!==e.type)return u&&z(d,i),K(e,t,o,r,s,a,i,l);let c;try{c=Dt(u,e.props)}catch(h){return Pe(d,h),A([])}let f=u.lastOutput!==void 0?me(u.lastOutput):void 0;u.lastOutput=Qe(c);let v=Ft(c,d,t,o);return f===void 0?K(c,v.parent,v.index,r,s,a,i,l):_o(f,c,v.parent,v.index,r,s,i,a,l)}function _o(n,e,t,o,r,s,i,a,l){if(n===e)return A([]);let d=Array.isArray(n),u=Array.isArray(e);if(d||u){let c=d?n:[n],f=u?e:[e],v=0,h=null,p=[];for(let b=0;b<f.length;b++){let C=$(f[b]);p.push(c[b]===void 0?K(f[b],t,v,h,s,a,i,l):ye(c[b],f[b],t,v,h,s,i,a,l)),h=O(t,v+C-1),v+=C}for(let b=f.length;b<c.length;b++)p.push(A(he(c[b],t,Fo(c,b),i)));return J(p)}return ye(n,e,t,o,r,s,i,a,l)}function De(n){let e=[];for(let t of n)t!==null&&typeof t=="object"&&!Array.isArray(t)&&le(t)?e.push(...De(B(t))):e.push(t);return e}function Wo(n,e,t){if(globalThis.__WF_NO_A_CHECK__)return;let o=c=>!Y(c)&&!pe(c)&&!Array.isArray(c),r=n.filter(o),s=e.filter(o),i=c=>typeof c?.type=="function"&&D(c)===null,a=(c,f)=>f>=c.length||Y(c[f]),l=c=>a(n,c)||i(n[c]),d=c=>a(e,c)||i(e[c]);(e.some((c,f)=>i(c)&&!l(f))||n.some((c,f)=>i(c)&&!d(f)))&&nn(s,`children\uFF08${t}\u2014\u2014\u65E0 key \u7EC4\u4EF6\u5B9E\u69FD\u7FFB\u8F6C ${r.length}\u2192${s.length}\uFF09`)}function $e(n,e,t){return n.key!==null?Q(e,n.key):O(e,t)}function xe(n,e,t,o,r,s){let i=ue(n),a=ue(e);return At(i,a)?Ht(n,e,"root",0,null,t,r,i==="component"?$e(n,"root",0):void 0,o,s).pipe(Cn):ye(n,e,"root",0,null,t,o,r,s).pipe(Cn)}var Cn=n=>J([n,A([{op:"done"}])]);function qo(n,e,t,o,r,s,i,a,l){return n===void 0?K(e,t,o,r,s,a,i,l):ye(n,e,t,o,r,s,i,a,l)}function kn(n,e,t,o,r,s,i){let a=[],l=(m,g)=>D(m)??mt(g),d=new Map;n.forEach((m,g)=>{let y=l(m,g);d.has(y)||d.set(y,g)});let u=new Set(e.map((m,g)=>l(m,g))),c=new Map;for(let m=0;m<n.length;m++){let g=n[m];if(Y(g)){a.push({op:"remove",id:O(t,m)});continue}if(pe(g)){a.push({op:"remove",id:O(t,m)});continue}if(Array.isArray(g))continue;let y=D(g);if(y!==null){let x=(c.get(y)??0)+1;if(c.set(y,x),x===1)continue;a.push(...he(g,t,m,r));continue}}for(let[m,g]of d)if(!u.has(m)&&(a.push(...he(n[g],t,g,r)),!tn(m))){let y=Q(t,m);r.has(y)&&z(y,r)}let f=n.map(m=>D(m)).filter(m=>m!==null&&u.has(m)),v=e.map(m=>D(m)).filter(m=>m!==null&&d.has(m)),p=!e.some((m,g)=>{let y=D(m);if(y===null||typeof m.type!="function")return!1;let x=d.get(y);return x===void 0||x===g?!1:r?.get(Q(t,y))===void 0});{let m=0;for(let g of v){let y=f.indexOf(g,m);if(y===-1){p=!1;break}m=y+1}}if(!p){n.forEach((y,x)=>{if(!(Y(y)||pe(y))&&!Array.isArray(y)){if(D(y)!==null&&typeof y.type=="function"){a.push(...he(y,t,x,r,{keepSegments:!0}));return}if(D(y)!==null){a.push({op:"remove",id:O(t,x)});return}a.push(...he(y,t,x,r))}});let m=[],g=null;for(let y=0;y<e.length;y++){let x=e[y],V=D(x),F=V!==null?Q(t,V):O(t,y);V!==null&&typeof x.type=="function"?m.push(K(x,t,y,g,o,s,r,i)):m.push(K(x,t,y,g,o,s,r,i)),g=O(t,y)}return J([A(a),...m])}let b=[];e.forEach((m,g)=>{let y=D(m);if(y===null)return;let x=d.get(y);x!==void 0&&x!==g&&b.push({oldIdx:x,newIdx:g})});let C=b.every(m=>m.newIdx<m.oldIdx);b.sort((m,g)=>C?m.newIdx-g.newIdx:g.newIdx-m.newIdx);for(let m of b){let g=e[m.newIdx],y=D(g);if(y!==null&&typeof g.type=="function"){let x=Q(t,y),V=On(r?.get(x),x,t,m.oldIdx);if(V.length===1&&!V[0].startsWith(x+"."))a.push({op:"move",id:V[0],parent:t,ref:null,newId:O(t,m.newIdx),noMove:!0});else{let re=m.newIdx>0?e[m.newIdx-1]:null,se=re===null?null:Do(re,t,m.newIdx-1,r);for(let ie of V)a.push({op:"move",id:ie,parent:t,ref:se,newId:ie,noMove:!1}),se=ie}}else a.push({op:"move",id:O(t,m.oldIdx),parent:t,ref:null,newId:O(t,m.newIdx),noMove:!0})}let S=[],k=null;for(let m=0;m<e.length;m++){let g=e[m],y=D(g),x=O(t,m);if(y!==null){let V=d.get(y);V===void 0?S.push(K(g,t,m,k,o,s,r,i)):typeof g.type=="function"?S.push(qo(n[V],g,t,m,k,o,r,s,i)):S.push(ye(n[V],g,t,m,k,o,r,s,i))}else{let V=d.get(mt(m)),F=V===void 0?void 0:n[V];F!==void 0&&!Y(F)&&!pe(F)&&!Array.isArray(F)?S.push(ye(F,g,t,m,k,o,r,s,i)):S.push(K(g,t,m,k,o,s,r,i))}k=x}return J([A(a),...S])}function he(n,e,t,o,r){let s=[],i=O(e,t),a=o&&o.size>0?{get:d=>{let u=o.get(d);return u?{lastOutput:u.lastOutput}:void 0}}:void 0;if(G(n,i,e,d=>s.push(d),a),o&&!r?.keepSegments)for(let d of s)d.op==="unmount"&&o.has(d.compId)&&z(d.compId,o);else if(o&&r?.keepSegments){for(let d of s)if(d.op==="unmount"){let u=o.get(d.compId);u&&(u.lastOutput=void 0)}}return r?.keepSegments?s.filter(d=>d.op!=="unmount"):s}function Ze(n){return n.some(e=>D(e)!==null)}function Ht(n,e,t,o,r,s,i,a,l,d){let u=At(ue(n),ue(e));if(!u)throw new Error(`[vdom] v2 \u72B6\u6001\u673A\u8FDD\u4F8B\uFF1A\u672A\u5B9A\u4E49\u8F6C\u6362 ${ue(n)} \u2192 ${ue(e)}`);let c=[],f=null,v=[],h=l&&l.size>0?{get:C=>{let S=l.get(C);return S?{lastOutput:S.lastOutput}:void 0}}:i,p={emit:C=>{let S=C;S.op==="unmount"&&l?.has(S.compId)&&v.push(S.compId),c.push(S)},emitNode:(C,S,k,m)=>{f={v:C,p:S,i:k,r:m}},oldId:O(t,o),newId:O(t,o),parent:t,index:o,ref:r,oldCompId:a,registry:h};u(n,e,p);let b=f?P(C=>{let S=f;return K(S.v,S.p,S.i,S.r,s,i,l,d).subscribe({next:m=>C.next(m),error:m=>C.error(m),complete:()=>C.complete()})}):A([]);return J([P(C=>{for(let S of v)l?.has(S)&&z(S,l);return C.complete(),()=>{}}),A(c),b])}var et=class{table=new Map;rootTypes=new Set;doc;dispatchBound;container;phase="active";constructor(e,t){this.doc=e,this.container=t,this.dispatchBound=this.dispatch.bind(this)}set(e,t,o){if(this.phase==="disposed"){console.error(`[vdom] \u4E8B\u4EF6\u8868\u72B6\u6001\u673A\u8FDD\u4F8B\uFF1Adisposed \u540E set(${e}, ${t}) \u88AB\u5FFD\u7565`);return}if(typeof o!="function"){console.warn(`[vdom] \u4E8B\u4EF6 ${t} \u975E\u51FD\u6570\u503C\u88AB\u8DF3\u8FC7\uFF08node ${e}\uFF09\u2014\u2014\u671F\u671B\u51FD\u6570\uFF0C\u5B9E\u9645 ${typeof o}`);return}let r=this.table.get(e);r||(r=new Map,this.table.set(e,r)),r.set(t,o),this.ensureRoot(t)}get(e,t){return this.table.get(e)?.get(t)}removeEvent(e,t){let o=this.table.get(e);o&&(o.delete(t),o.size===0&&this.table.delete(e))}remove(e){for(let t of[...this.table.keys()])(t===e||t.startsWith(e+"."))&&this.table.delete(t)}removeOne(e){this.table.delete(e)}ensureRoot(e){this.rootTypes.has(e)||(this.doc.addEventListener(e,this.dispatchBound,{capture:!0}),this.rootTypes.add(e))}dispatch(e){if(this.container){let o=e.target;if(o&&!this.container.contains(o))return}if(e.type==="contextmenu"&&window.__dbgEvt){let o=e.target,r=[...this.table.entries()].map(([s,i])=>s+":"+[...i.keys()].join("+")).join(" | ");console.error("[dbg-evt-dispatch]","target:",o?.getAttribute("data-wf-id"),"ALL:",r.slice(0,400))}let t=e.target;for(t&&t.nodeType===3&&(t=t.parentElement);t;){if(!t.hasAttribute?.("data-wf-id")){let r=t.closest?.("[data-wf-id]");if(r&&r!==t){t=r;continue}}let o=t.getAttribute?.("data-wf-id");if(o){let r=this.table.get(o)?.get(e.type);if(r){try{Object.defineProperty(e,"currentTarget",{value:t,configurable:!0})}catch{}try{r(e)}catch(s){console.error("[vdom] \u4E8B\u4EF6 handler:",s)}if(e.cancelBubble)return}}t=t.parentElement}}clear(){this.table.clear()}dispose(){if(this.phase!=="disposed"){this.phase="disposed";for(let e of this.rootTypes)this.doc.removeEventListener(e,this.dispatchBound,{capture:!0});this.rootTypes.clear(),this.table.clear()}}},Oe=/^on[A-Z]/;function Fe(n){return Oe.test(n)?n.slice(2).toLowerCase():null}var tt=class{refs=new Map;phase="active";set(e,t,o){if(this.phase==="disposed"){console.error(`[vdom] ref \u8868\u72B6\u6001\u673A\u8FDD\u4F8B\uFF1Adisposed \u540E set(${e}) \u88AB\u5FFD\u7565`);return}if(o&&o!==t&&typeof o=="function")try{o(null)}catch(r){console.error("[vdom] ref prev:",r)}this.refs.set(e,t)}mount(e,t){let o=this.refs.get(e);if(typeof o=="function")try{o(t)}catch(r){console.error("[vdom] ref mount:",r)}}unmount(e){for(let[t,o]of[...this.refs])if(t===e||t.startsWith(e+".")){if(typeof o=="function")try{o(null)}catch(r){console.error("[vdom] ref unmount:",r)}this.refs.delete(t)}}unmountOne(e){let t=this.refs.get(e);if(typeof t=="function")try{t(null)}catch(o){console.error("[vdom] ref unmount:",o)}this.refs.delete(e)}remap(e,t){for(let[o,r]of[...this.refs])(o===e||o.startsWith(e+"."))&&(this.refs.delete(o),this.refs.set(t+o.slice(e.length),r))}clear(){this.refs.clear()}dispose(){this.phase!=="disposed"&&(this.phase="disposed",this.refs.clear())}};function Bo(n,e){switch(e.kind){case"begin":return"consuming";case"next":return e.matched?"consuming":"failed";case"end":return n==="consuming"?e.remaining>0?"failed":"inactive":n;case"reset":return"inactive"}}var nt=class{queue=null;phase="inactive";events$;failed$;events=new N;constructor(){this.events$=this.events.asObservable(),this.events.asObservable().pipe(ve(Bo,"inactive")).subscribe({next:e=>{this.phase=e}}),this.failed$=this.events.asObservable().pipe(Tt(e=>e.kind==="next"&&!e.matched||e.kind==="end"&&e.remaining>0),wt(()=>{}))}begin(e){let t=[],o=r=>{t.push(r);for(let s of r.childNodes)o(s)};for(let r of e.childNodes)o(r);this.queue=t,this.events.next({kind:"begin"})}end(){if(this.phase!=="consuming")return;let e=this.queue?.length??0;this.queue=null,this.events.next({kind:"end",remaining:e})}reset(){this.queue=null,this.events.next({kind:"reset"})}next(e,t,o){if(this.phase!=="consuming")return console.error(`[vdom] absorb \u72B6\u6001\u673A\u8FDD\u4F8B\uFF1Anext \u5728 ${this.phase} \u9636\u6BB5\u8C03\u7528\uFF08\u5E94 consuming\uFF09`),null;let r=this.queue;if(!r)return null;for(;r.length>0;){let s=r.shift();if(e==="element"?s.nodeType===1&&s.tagName.toLowerCase()===t:e==="text"?s.nodeType===3:s.nodeType===8){if(e==="text"&&o!==void 0){let a=s,l=a.textContent??"";if(l!==o&&l.startsWith(o)){let d=a.splitText(o.length);r.unshift(d)}}return this.events.next({kind:"next",matched:!0}),s}}return this.events.next({kind:"next",matched:!1}),null}};Je();var jo=new Set(["zIndex","opacity","lineHeight","zoom","fontWeight","order","flex","flexGrow","flexShrink","flexBasis","animationIterationCount","orphans","widows","columns","columnCount","columnGap","counterIncrement","counterReset","aspectRatio","scale","rotate"]);function Ko(n,e,t){if(t==null||t===!1){e.startsWith("--")&&n.style.removeProperty(e),n.style[e]="";return}if(e.startsWith("--")){n.style.setProperty(e,String(t));return}typeof t=="number"&&!jo.has(e)&&(t=`${t}px`),n.style[e]=String(t)}function Ut(n,e){if(e==null||e===!1){n.style.cssText="";return}if(typeof e=="string"){n.setAttribute("style",e);return}if(e&&typeof e=="object"){n.style.cssText="";for(let[t,o]of Object.entries(e))Ko(n,t,o)}}var ot=null,Rn=new WeakSet;function zo(n){if(ot||(ot=new WeakSet),!Rn.has(n)){Rn.add(n);let e=ot;n.addEventListener("compositionstart",t=>{let o=t.target;o instanceof HTMLElement&&e.add(o)},!0),n.addEventListener("compositionend",t=>{let o=t.target;o instanceof HTMLElement&&e.delete(o)},!0)}return ot}function Nn(n,e){return zo(n).has(e)}var Yo=new Set(["value","checked","selected","disabled","hidden","autofocus","defaultValue","defaultChecked","innerHTML","textContent","download","indeterminate","multiple","readOnly","required","tabIndex","spellcheck","draggable","scrollTop","scrollLeft","volume","muted","paused","playbackRate","open"]);function Vn(n){return Yo.has(n)}function Mn(n,e,t){if(t===void 0){if(Go.has(e)){n[e]=!1;return}return}if(e==="value"&&n.nodeType===1){let o=n;if(n.ownerDocument&&Nn(n.ownerDocument,o))return;let r=o.value;if(r===t||String(r)===String(t))return}n[e]=t}var Go=new Set(["disabled","checked","selected","multiple","readOnly","required","indeterminate","muted","paused","open","autofocus","draggable","hidden"]);function Ue(n,e){for(let[t,o]of Object.entries(e))t==="style"?Ut(n,o):Mt(n,t,o)}function In(n,e,t,o,r,s){if(o!=="ref")if(typeof r=="function"||r===void 0&&typeof s=="function"){if(Oe.test(o)){let i=Fe(o);i&&n.set(e,i,r)}return}else if(Oe.test(o)){let i=Fe(o);i&&n.set(e,i,r)}else o==="style"?Ut(t,r):Vn(o)?Mn(t,o,r):Mt(t,o,r)}var Jo="http://www.w3.org/2000/svg",Xo=new Set(["svg","path","circle","line","rect","text","g","defs","marker","polyline","polygon","ellipse","use","symbol","tspan","textPath","clipPath","mask","pattern","linearGradient","radialGradient","stop"]);function Pn(n,e){return Xo.has(e)?n.createElementNS(Jo,e):n.createElement(e)}function Zo(n,e){n.touched.add(e.id);let t=n.nodes.get(e.id);if(t&&t.nodeType===1&&t.tagName.toLowerCase()===e.tag)Ue(t,e.attrs);else if(n.absorb.queue&&!t){let r=n.absorb.next("element",e.tag);if(r)Ue(r,e.attrs),n.nodes.set(e.id,r);else{let s=Pn(n.doc,e.tag);Ue(s,e.attrs),n.nodes.set(e.id,s)}}else{let r=Pn(n.doc,e.tag);Ue(r,e.attrs),t&&(n.refRegistry.unmountOne(e.id),n.eventRegistry.removeOne(e.id),t.replaceWith(r)),n.nodes.set(e.id,r)}let o=n.nodes.get(e.id);o&&o.nodeType===1&&o.setAttribute("data-wf-id",e.id)}function Qo(n,e){n.touched.add(e.id);let t=n.nodes.get(e.id);if(t&&t.nodeType===3)t.textContent!==e.value&&(t.textContent=e.value);else if(n.absorb.queue&&!t){let o=n.absorb.next("text",void 0,e.value);if(o)o.textContent!==e.value&&(o.textContent=e.value),n.nodes.set(e.id,o);else{let r=n.doc.createTextNode(e.value);n.nodes.set(e.id,r)}}else{let o=n.doc.createTextNode(e.value);t&&t.replaceWith(o),n.nodes.set(e.id,o)}}function er(n,e){n.touched.add(e.id);let t=n.nodes.get(e.id);if(t&&t.nodeType===8){let o=e.detail?`wf-hole: ${e.detail}`:"wf-hole";t.textContent!==o&&(t.textContent=o)}else if(n.absorb.queue&&!t){let o=n.absorb.next("comment");if(o)n.nodes.set(e.id,o);else{let r=n.doc.createComment(e.detail?`wf-hole: ${e.detail}`:"wf-hole");n.nodes.set(e.id,r)}}else{let o=n.doc.createComment(e.detail?`wf-hole: ${e.detail}`:"wf-hole");t&&t.replaceWith(o),n.nodes.set(e.id,o)}}function tr(n,e){let t=n.nodes.get(e.id);if(!t||t.isConnected)return;let o=n.parentOf(e);if(o){if(o.nodeType===3){let r=o.parentElement;if(!r)return;let s=o.nextSibling&&o.nextSibling.parentNode===r?o.nextSibling:null;r.insertBefore(t,s),t.nodeType===1&&n.refRegistry.mount(e.id,t),n.registerChild(e.parent,e.id);return}if(o.nodeType===8){console.error(`[vdom] id \u7A7A\u95F4\u8FDD\u4F8B\uFF1Ainsert ${e.id} \u7684 parent \u662F\u6CE8\u91CA\u951A\uFF08${e.parent}\uFF09\u2014\u2014\u63D2\u5230\u951A\u540E`);let r=o.parentElement;r&&r.insertBefore(t,o.nextSibling),t.nodeType===1&&n.refRegistry.mount(e.id,t),n.registerChild(e.parent,e.id);return}if(e.ref){let r=n.nodes.get(e.ref)??null;if(!r){let s=n.childIds.size>0&&n.childIds.has(e.ref)?n.collectDesc(e.ref):null;if(s){let i="",a=-1;for(let l of s){let d=n.seq.get(l)??0;d>a&&(a=d,i=l)}i&&(r=n.nodes.get(i)??null)}else{let i=e.ref+".";for(let[a,l]of n.nodes)a.startsWith(i)&&(r=l)}}r&&r.parentNode===o?o.insertBefore(t,r.nextSibling):r?o.appendChild(t):o.insertBefore(t,o.firstChild)}else o.insertBefore(t,o.firstChild);t.nodeType===1&&n.refRegistry.mount(e.id,t),n.registerChild(e.parent,e.id)}}function nr(n,e){let t=n.nodes.get(e.id);if(t){if(!e.noMove){let o=n.parentOf(e);if(!o)return;let r=e.ref?n.nodes.get(e.ref)??null:null;r?o.insertBefore(t,r.nextSibling):e.first?o.insertBefore(t,o.firstChild):o.appendChild(t)}n.remapSubtree(e.id,e.newId)}}function or(n,e){n.refRegistry.unmountOne(e.id),n.eventRegistry.removeOne(e.id),n.nodes.get(e.id)?.remove();let t=n.childIds.size>0?n.collectDesc(e.id):null,o=t??[];if(!t){let r=e.id+".";for(let s of[...n.nodes.keys()])s.startsWith(r)&&o.push(s)}for(let r of o)n.refRegistry.unmountOne(r),n.eventRegistry.removeOne(r),n.nodes.delete(r),n.unregisterChild(r);n.nodes.delete(e.id),n.unregisterChild(e.id)}function rr(n,e){let t=n.nodes.get(e.id);t&&t.nodeType===3&&(t.textContent=e.value)}function sr(n,e){let t=n.nodes.get(e.id);if(!t||t.nodeType!==1)return;let o=t;if(e.key==="ref"){let r=n.refRegistry.refs.get(e.id);if(e.value===void 0){n.refRegistry.set(e.id,void 0,r),n.refRegistry.refs.delete(e.id);return}n.refRegistry.set(e.id,e.value,r),o.isConnected&&n.refRegistry.mount(e.id,o);return}if(Oe.test(e.key)){let r=Fe(e.key);r&&(e.value===void 0?n.eventRegistry.removeEvent(e.id,r):n.eventRegistry.set(e.id,r,e.value));return}In(n.eventRegistry,e.id,o,e.key,e.value,e.prev)}function ir(n,e){let t=n.nodes.get(e.id);t&&t.nodeType===1&&typeof e.fn=="function"&&(n.refRegistry.set(e.id,e.fn),n.refRegistry.mount(e.id,t))}function ar(n,e){n.clearNodeRefs(e.id)}function lr(n,e){let t=n.registry?.get(e.compId);t&&(t.phase="mounted")}function ur(n,e){n.registry&&_t(e.compId,n.registry)}function dr(n,e){if(e.full&&n.absorb.end(),e.full&&n.touched.size>0)for(let[t,o]of[...n.nodes])n.touched.has(t)||(n.refRegistry.unmountOne(t),n.eventRegistry.removeOne(t),o.remove(),n.nodes.delete(t),n.unregisterChild(t));n.touched.clear()}function An(n,e){switch(e.op){case"create":Zo(n,e);break;case"createText":Qo(n,e);break;case"createAnchor":er(n,e);break;case"insert":tr(n,e);break;case"move":nr(n,e);break;case"remove":or(n,e);break;case"setText":rr(n,e);break;case"setProp":sr(n,e);break;case"ref":ir(n,e);break;case"unref":ar(n,e);break;case"mount":lr(n,e);break;case"unmount":ur(n,e);break;case"done":dr(n,e);break;case"close":break}}var de=class{nodes=new Map;touched=new Set;childIds=new Map;byChild=new Map;seq=new Map;seqCounter=0;registerChild(e,t){this.byChild.set(t,e),this.seq.set(t,++this.seqCounter);let o=this.childIds.get(e);o||(o=new Set,this.childIds.set(e,o)),o.add(t)}unregisterChild(e){let t=this.byChild.get(e);if(t===void 0)return;this.byChild.delete(e),this.seq.delete(e);let o=this.childIds.get(t);o&&(o.delete(e),o.size===0&&this.childIds.delete(t))}collectDesc(e){let t=[],o=[e];for(;o.length>0;){let r=o.pop();t.push(r);let s=this.childIds.get(r);if(s)for(let i of s)o.push(i)}return t}reset(){this.nodes.clear(),this.touched.clear(),this.childIds.clear(),this.byChild.clear(),this.seq.clear(),this.seqCounter=0,this.eventRegistry.clear(),this.refRegistry.clear()}eventRegistry;refRegistry=new tt;absorb=new nt;container;doc;registry;devVerify=null;constructor(e,t,o){this.container=e,this.doc=t,this.registry=o??null,this.eventRegistry=new et(t,e)}dispose(){if(this.eventRegistry.dispose(),this.refRegistry.dispose(),this.registry)for(let e of[...this.registry.keys()].reverse()){let t=this.registry.get(e);if(t){for(let o of[...t.onUnmounts].reverse())try{o()}catch{}this.registry.delete(e)}}}clearNodeRefs(e){this.refRegistry.unmount(e)}remapSubtree(e,t){let o=(s,i)=>{let a=s.get(i);a!==void 0&&(s.delete(i),s.set(t+i.slice(e.length),a))};for(let s of[...this.nodes.keys()])if(s===e||s.startsWith(e+".")){o(this.nodes,s);let i=this.nodes.get(t+s.slice(e.length));i&&i.nodeType===1&&i.setAttribute("data-wf-id",t+s.slice(e.length))}for(let[s,i]of[...this.byChild]){let a=s===e||s.startsWith(e+"."),l=i===e||i.startsWith(e+".");if(!a&&!l)continue;let d=a?t+s.slice(e.length):s,u=l?t+i.slice(e.length):i;this.byChild.delete(s),this.byChild.set(d,u);let c=this.childIds.get(i);c&&(c.delete(s),c.size===0&&this.childIds.delete(i));let f=this.childIds.get(u);f||(f=new Set,this.childIds.set(u,f)),f.add(d)}let r=this.byChild.get(e);r!==void 0&&!this.byChild.has(t)&&(this.unregisterChild(e),this.registerChild(r,t)),this.refRegistry.remap(e,t);for(let s of[...this.eventRegistry.table.keys()])if(s===e||s.startsWith(e+".")){let i=this.eventRegistry.table.get(s);this.eventRegistry.table.delete(s),this.eventRegistry.table.set(t+s.slice(e.length),i)}if(this.registry){for(let s of[...this.registry.keys()])if(s===e||s.startsWith(e+".")){let i=this.registry.get(s);this.registry.delete(s),this.registry.set(t+s.slice(e.length),i)}}}parentOf(e){if(e.parent==="root")return this.container;let t=this.nodes.get(e.parent);if(t&&t.isConnected)return t;let o=e.parent.split(".");for(let r=o.length-1;r>0;r--){let s=o.slice(0,r).join(".");if(s==="root")return this.container;let i=this.nodes.get(s);if(i&&i.isConnected)return i}return null}apply(e){An(this,e),this.devVerify&&this.devVerify(e,this)}};var rt="__wf_portal";function Wt(n){return`${rt}-${n}`}function cr(n,e){switch(e.kind){case"open":return"open";case"exit":return n==="open"?"exit":n;case"closed":return"closed";case"disposed":return"closed"}}function fr(n){return typeof n=="function"?n():n}function Hn(n){return n?typeof n=="function"?n():n:null}function st(n,e){let t={tree:null,applier:null,container:null,chain:Promise.resolve(),version:0,open:!1,phase:"closed",disposed:!1,panel:null,pos:{top:0,left:0},segments:new Map},o=new N,r=o.asObservable();o.asObservable().pipe(ve(cr,"closed")).subscribe({next:w=>{t.phase=w}});let s=w=>{o.next(w)},i=n.getBrowser()?.window,a=n.getBrowser()?.document,l=()=>{if(!a)return null;if(t.container)return t.container;let w=a.getElementById(rt);w||(w=a.createElement("div"),w.id=rt,a.body.appendChild(w));let E=e.key??"popup",R=a.getElementById(Wt(E));return R?t.container=R:(t.container=a.createElement("div"),t.container.id=Wt(E),w.appendChild(t.container)),t.container},d=0,u=!1,c=()=>{if(t.disposed||!t.open)return;if(e.position&&t.panel){let _=e.position();if(_&&typeof _.x=="number"&&typeof _.y=="number"){t.pos={top:_.y,left:_.x,width:_.width},u=!0,p();return}}let w=Hn(e.anchor);if(!w||!t.panel){d++<10&&queueMicrotask(c);return}if(!i)return;let E=t.panel,R=E.offsetWidth||E.getBoundingClientRect().width,U=E.offsetHeight||E.getBoundingClientRect().height;if((R===0||U===0)&&d++<10){typeof i.requestAnimationFrame=="function"?i.requestAnimationFrame(c):queueMicrotask(c);return}let L=typeof e.placement=="function"?e.placement():e.placement??"bottom",X=vn(w,i,R,U,L,e.gap??8,e.margin??8,e.center??!0);if(!X){d++<10&&queueMicrotask(c);return}if(d=0,t.pos=X,t.applier){let _=b(t.tree);_&&C(_)}},f=w=>{if(t.panel=w,w&&t.open&&!u&&e.positioning!=="none"&&(i&&typeof i.requestAnimationFrame=="function"?i.requestAnimationFrame(c):queueMicrotask(c)),w&&e.presence){let E=R=>{t.phase==="exit"&&k()};w.addEventListener("animationend",E),n.onUnmount(()=>w.removeEventListener("animationend",E))}},v=null,h=w=>{v=w,w&&u&&p()},p=()=>{let w=e.mask?v:t.panel;w&&(w.style.top=`${t.pos.top}px`,w.style.left=`${t.pos.left}px`,t.pos.width!==void 0&&(w.style.width=`${t.pos.width}px`))},b=w=>{if(!w)return null;let E=w;e.mask&&(E=H("div",{class:"wf-popup-mask",style:{position:"fixed",inset:"0",background:"var(--wf-overlay, rgba(0,0,0,0.5))",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"var(--wf-z-modal, 1000)"},onClick:Z=>{e.maskClosable!==!1&&Z.target===Z.currentTarget&&m()}},e.maskCentered?{...E,props:{...E.props??{}}}:H("div",{class:"wf-popup-mask-inner",ref:h,style:e.position?{position:"fixed",top:`${t.pos.top}px`,left:`${t.pos.left}px`,...t.pos.width!==void 0?{width:`${t.pos.width}px`}:{}}:void 0},E)));let R=E.props??{},U=e.positioning==="none"||String(R.class??"").includes("mask")?R.class??"":["wf-popup",R.class].filter(Boolean).join(" "),L=!(e.mask&&e.position),X=e.positioning==="none"?{...R.style??{},position:"fixed"}:{...R.style??{},position:"fixed",...L?{top:`${t.pos.top}px`,left:`${t.pos.left}px`}:{},...L&&t.pos.width!==void 0?{width:`${t.pos.width}px`}:{}};return{...E,props:{...R,class:U,style:X,ref:f}}},C=w=>{let E=++t.version,R=t.tree;t.tree=w,t.chain=t.chain.then(async()=>{if(t.disposed||E!==t.version)return;let U=t.applier;if(!U)return;let L=U.registry;if(!L)return;let X=n.getSharedContext()??{},_=await new Promise((Z,Xt)=>{let T=[],M=()=>n.requestRender?.();(R?xe(R,w,X,t.segments,L,M):ge(w,X,L,t.segments,M)).subscribe({next:W=>T.push(W),error:Xt,complete:()=>Z(T)})});for(let Z of _){if(t.disposed||E!==t.version)return;U.apply(Z)}for(let Z of _)Z.op==="unmount"&&z(Z.compId,t.segments)}).catch(U=>{console.error("[popup] render error:",U)})},S=()=>{t.disposed||(t.disposed=!0,t.applier&&(t.applier.dispose(),t.applier=null),t.tree=null,t.container&&(t.container.remove(),t.container=null))},k=()=>{t.disposed||(t.open=!1,s({kind:"closed"}),V(),S(),s({kind:"disposed"}),e.onClose?.())},m=()=>{!t.open||t.disposed||(e.presence?(s({kind:"exit"}),t.panel&&i&&!bn(t.panel,i)&&k(),t.panel||k()):k())},g={value:""},y={value:null},x={value:!1},V=()=>{x.value&&(a?.body&&(a.body.style.overflow=g.value),g.value="",y.value&&(y.value.focus?.(),y.value=null),x.value=!1)},F=()=>{n.scheduleAfterRender(()=>{let w=E=>{let R=t.panel;R?(R.querySelector?.("input, button, [tabindex], select, textarea")??R).focus?.():E<10&&t.open&&queueMicrotask(()=>w(E+1))};w(0)})},re=()=>{x.value=!0,e.lockScroll&&a?.body&&(g.value=a.body.style.overflow,a.body.style.overflow="hidden"),e.trapFocus&&i&&(y.value=i.document.activeElement,F())},se=null;e.trapFocus&&i&&(se=w=>{if(w.key!=="Tab"||!t.open||!t.panel)return;let E=Array.from(t.panel.querySelectorAll?.("input, button, [tabindex], select, textarea")??[]).filter(X=>!X.disabled&&X.offsetParent!==null);if(E.length===0)return;let R=E[0],U=E[E.length-1],L=i?.document.activeElement;w.shiftKey&&(L===R||L===t.panel||!t.panel.contains(L))?(w.preventDefault(),U.focus()):!w.shiftKey&&(L===U||!t.panel.contains(L))&&(w.preventDefault(),R.focus())},i.addEventListener("keydown",se));let ie=w=>{if(!t.open||(e.closeOnOutside??!0)===!1)return;let E=w.target,R=Hn(e.anchor);E&&R?.contains(E)||E&&t.panel?.contains(E)||m()},Ve=w=>{t.open&&(e.closeOnEscape??!0)&&w.key==="Escape"&&m()};i&&(i.addEventListener("mousedown",ie),i.addEventListener("keydown",Ve)),n.onUnmount(()=>{i&&(i.removeEventListener("mousedown",ie),i.removeEventListener("keydown",Ve),se&&i.removeEventListener("keydown",se)),k()});let lt=()=>{if(t.open||t.disposed)return;t.open=!0,s({kind:"open"});let w=l();if(!w)return;e.trapFocus||e.lockScroll?re():e.autoFocus&&F();let E=ee();t.applier=new de(w,a,E),t.segments=new Map;let R=fr(e.content);R!=null?C(b(R)):k()},we={close:m,update(w){if(t.disposed||!t.open)return;if(w==null){m();return}let E=!1;if(e.position){let R=e.position();R&&typeof R.x=="number"&&typeof R.y=="number"&&(t.pos={top:R.y,left:R.x,width:R.width},E=!0)}C(b(w)),E&&p()},refresh(){if(!(t.disposed||!t.open||!t.tree)&&e.position){let w=e.position();w&&typeof w.x=="number"&&typeof w.y=="number"&&(t.pos={top:w.y,left:w.x,width:w.width},p())}},get open(){return t.open},events$:r};return lt(),we}function Ln(n,e,t){let o=n.nextHookIndex(),r=n.getHookState(o)??{value:t};n.setHookState(o,r);let s=e.value!==void 0;return{get value(){return e.value??r.value},controlled:e,setValue(i){s?(e.onChange||console.warn("[vdom] useControlled \u53D7\u63A7\u7F3A onChange \u56DE\u8C03\u2014\u2014\u4EA4\u4E92\u9759\u9ED8\u5931\u6548"),e.onChange?.(i)):(r.value=i,n.requestRender())}}}function Dn(n,e){let t=new N,o=te(n,pr(n,e,t),{y:0,x:0});return{get y(){return o().y},get x(){return o().x},refresh:()=>{t.next()}}}function pr(n,e,t){let o=n.getBrowser()?.window,r=n.getBrowser()?.document??null;return P(s=>{if(!o)return s.next({y:0,x:0}),s.complete(),()=>{};let i,a=null,l=null,d=0,u=()=>{if(typeof e=="function")return e();if(e&&typeof e=="object"&&!("nodeType"in e)){let p=e;return typeof p.getScroller=="function"?p.getScroller()??null:p.root?typeof p.root=="string"?r?r.querySelector(p.root)??o:o:p.root:o}return o},c=p=>p?p===o?{y:o.scrollY||0,x:o.scrollX||0}:{y:p.scrollTop,x:p.scrollLeft}:{y:0,x:0},f=()=>{s.next(c(l))},v=()=>{if(a)return;if(l=u(),!l){d++<10&&n.scheduleAfterRender(v);return}let p=()=>{i===void 0&&(i=o.requestAnimationFrame(()=>{i=void 0,f()}))};l.addEventListener("scroll",p,{passive:!0}),a=p,f()};v();let h=t?.subscribe({next:()=>{v(),f()}});return()=>{h?.unsubscribe(),i!==void 0&&o.cancelAnimationFrame(i),a&&l&&l.removeEventListener("scroll",a),a=null}})}function $n(n,e){let t=n.nextHookIndex(),o=n.getHookState(t)??{isIn:!1,io:null,retries:0,ready:!1};n.setHookState(t,o);let s=n.getBrowser()?.window?.IntersectionObserver,i=e&&typeof e=="object"&&!("nodeType"in e)?e:void 0,a=i?.target??(typeof e=="function"||e&&"nodeType"in e?e:void 0),l=typeof i?.rootMargin=="function"?i.rootMargin():i?.rootMargin,d=typeof i?.threshold=="function"?i.threshold():i?.threshold,u=typeof i?.root=="function"?i.root():i?.root??null,c=f=>{if(!s||!f||o.io)return;let v=new s(h=>{let p=h[0];p&&p.isIntersecting!==o.isIn&&(o.isIn=p.isIntersecting,i?.onChange?.(p,p.isIntersecting),n.requestRender())},{root:u??void 0,rootMargin:l,threshold:d});v.observe(f),o.io=v,o.ready=!0,n.onUnmount(()=>o.io?.disconnect())};if(s&&!o.io){let f=typeof a=="function"?a():a??null;f?c(f):a!==void 0&&o.retries++<10&&n.scheduleAfterRender(()=>c(typeof a=="function"?a():a??null))}return{get isIn(){return o.isIn},get ready(){return o.ready},ref:f=>{f?c(f):o.io?.disconnect()},observe:f=>c(f),disconnect:()=>{o.io?.disconnect(),o.io=null}}}function Fn(n,e,t){let o=n.nextHookIndex(),r=n.getHookState(o)??{keyword:"",selectedLabel:"",composing:!1};n.setHookState(o,r);let s=e.value!==void 0;return{controlled:e,get value(){return e.value??r.keyword},setValue(i){s?(e.onChange||console.warn(`[vdom] useControlledInput(${t?.name??""}) \u53D7\u63A7\u7F3A onChange \u56DE\u8C03\u2014\u2014\u4EA4\u4E92\u9759\u9ED8\u5931\u6548`),e.onChange?.(i)):(r.keyword=i,n.requestRender())},get keyword(){return r.keyword},setKeyword(i){r.keyword=i,r.composing||this.setValue(i)},get selectedLabel(){return r.selectedLabel},setSelectedLabel(i){r.selectedLabel=i},get isComposing(){return r.composing},onCompositionStart(){r.composing=!0},onCompositionEnd(){r.composing=!1}}}function _n(n,e){let t={draggable:!0,onDragStart:o=>{e.data!==void 0&&o.dataTransfer?.setData("text/plain",JSON.stringify(e.data)),e.onDragStart?.(o,e.data)},onDragEnd:o=>e.onDragEnd?.(o)};return{draggableProps:t,dragProps:t,dropProps:{onDragEnter:o=>e.onDragEnter?.(o),onDragOver:o=>{o.preventDefault(),e.onDragOver?.(o)},onDragLeave:o=>e.onDragLeave?.(o),onDrop:o=>{o.preventDefault();let r;try{r=o.dataTransfer?.getData("text/plain")?JSON.parse(o.dataTransfer.getData("text/plain")):void 0}catch{r=void 0}e.onDrop?.(o,r)}}}}var Un=new WeakMap,mr=new Map;function gr(n,e){let t=n.getBrowser()?.window,o=t?Un.get(t)??Un.set(t,new Map).get(t):mr,r=o.get(e);return r||(r=xt(s=>{let i=n.getBrowser()?.window,l=(i?.matchMedia?.bind(i)??(typeof globalThis.matchMedia=="function"?globalThis.matchMedia.bind(globalThis):void 0))?.(e);if(!l)return;let d=()=>s(l.matches);return l.addEventListener("change",d),()=>l.removeEventListener("change",d)},()=>{let s=n.getBrowser()?.window,i=s?.matchMedia?.bind(s)??(typeof globalThis.matchMedia=="function"?globalThis.matchMedia.bind(globalThis):void 0);return i?i(e).matches:!1}),o.set(e,r)),r}function _e(n,e){return te(n,gr(n,e),!1)}function Wn(n,e){let t=Object.entries(e).sort((o,r)=>o[1]-r[1]);return()=>{let o=t[0]?.[0]??"default";for(let[r,s]of t)_e(n,`(min-width: ${s}px)`)()&&(o=r);return o}}var vr=0,qt=()=>`m${Date.now().toString(36)}${(vr++).toString(36)}`;function br(){let n="";return(e,t)=>{let o=e.trim();if(!o)return null;if(o.startsWith("event:"))return n=o.slice(6).trim(),null;let r=t??n,s=o.startsWith("data:")?o.slice(5).trim():o;if(!s)return null;let i;try{i=JSON.parse(s)}catch{return null}if(!r)return i.toolCalls?{toolCalls:i.toolCalls}:i.text!==void 0?{content:String(i.text)}:i.content!==void 0?{content:i.content}:null;switch(r){case"wf:message_start":return null;case"wf:token":return{content:i.text!==void 0?String(i.text):i.content};case"wf:step":return{step:i};case"wf:usage":return{usage:i};case"wf:tool_call":return{toolCalls:[{id:i.id,name:i.name,args:i.args,status:"running",call:i}]};case"wf:tool_progress":return{toolProgress:i};case"wf:tool_result":return{toolResult:i};case"wf:approval_request":return{approval:i};case"wf:error":return{error:i};case"wf:done":{let a=i.usage?{usage:i.usage}:{};return{done:!0,...i.content?{content:i.content,doneContent:!0}:{},...a}}default:return null}}}function qn(n,e){let t=n.nextHookIndex(),o=n.getHookState(t)??{messages:[],status:"idle",subs:new Set,changes:new N,controller:null,seq:0,input:"",error:null,usage:null,step:null};if(n.setHookState(t,o),o.messages.length===0){let a=[];e.system&&a.push({id:qt(),role:"system",content:e.system}),e.initialMessages&&a.push(...e.initialMessages),o.messages=a}let r=()=>{for(let a of[...o.subs])a();o.changes.next([...o.messages])},s=e.parseChunk??br(),i={get state(){return o.messages},get messages(){return o.messages},changes$:o.changes.asObservable(),get status(){return o.status},get input(){return o.input??""},setInput(a){o.input=a},get streaming(){return o.status==="streaming"},get error(){return o.error??null},get usage(){return o.usage??null},get step(){return o.step??null},subscribe(a){return o.subs.add(a),()=>{o.subs.delete(a)}},set(){},update(){},notify:r,async send(a=o.input){let l=typeof e.url=="function"?e.url():e.url??"/api/chat",d={id:qt(),role:"user",content:a};o.messages=[...o.messages,d];let u={id:qt(),role:"assistant",content:"",status:"streaming"};o.messages=[...o.messages,u],o.status="streaming",r();let c=new AbortController;o.controller=c;try{let f=await fetch(l,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({messages:o.messages.map(b=>({role:b.role,content:b.content}))}),signal:c.signal});if(!f.ok||!f.body)throw new Error(`[vdom] chat \u8BF7\u6C42\u5931\u8D25 ${f.status}`);let v=f.body.getReader(),h=new TextDecoder,p="";for(;;){let{value:b,done:C}=await v.read();if(C)break;p+=h.decode(b,{stream:!0});let S=p.split(`
2
+ `);p=S.pop()??"";let k;for(let m of S){if(!m.trim())continue;if(m.trim().startsWith("event:")){k=m.trim().slice(6).trim();continue}let g=s(m,k);if(m.trim().startsWith("data:")&&(k=void 0),!!g){if(g.content&&(u.content=g.doneContent?u.content||g.content:u.content+g.content,r()),g.toolCalls?.length&&(u.toolCalls=[...u.toolCalls??[],...g.toolCalls],r()),g.toolProgress){let y=u.toolCalls?.find(x=>x.id===g.toolProgress.toolCallId);y&&(y.progress=g.toolProgress,r())}if(g.toolResult){let y=u.toolCalls?.find(x=>x.id===g.toolResult.id);y&&(y.result=g.toolResult.output,y.status=g.toolResult.ok===!1?"error":"ok",r())}if(g.approval){u.approval=g.approval;let y=u.toolCalls?.find(x=>x.id===g.approval.toolCallId);y&&(y.approval=g.approval),r()}g.usage&&(o.usage=g.usage,r()),g.step!==void 0&&(o.step=g.step,r()),g.error&&(o.error=g.error,u.status="error",r()),g.done&&(o.step=null,r())}}}u.status=void 0,o.status="idle"}catch(f){f.name!=="AbortError"?(u.status="error",o.status="error"):(u.status=void 0,o.status="idle")}finally{o.controller=null,r()}},stop(){o.controller?.abort()},retry(){let a=[...o.messages].reverse().find(l=>l.role==="user");a&&i.send(a.content)},reset(){o.messages=[],o.status="idle",r()},async approve(a,l,d){let u=!1;for(let c of o.messages){for(let f of c.toolCalls??[])if(!f.approved){f.approved=a!=="rejected",l&&(f.feedback=l),a==="modified"&&d&&(f.args=d),u=!0;break}if(u)break}r()}};return i}function Bt(n){return _e(n,"(prefers-reduced-motion: reduce)")()}function Bn(n,e,t){let o=n.getBrowser()?.window,r=Bt(n),s=t?.duration??400;if(s<=0)return{value:e,reset:()=>{}};let i=t?.ease==="linear"?k=>k:k=>1-Math.pow(1-k,3),a=n.nextHookIndex(),l=n.getHookState(a);if(l)return l.reset(e),l;let d=r?e:0,u,c=e,f=0,v=s+200,h,p={get value(){return u!==void 0&&o&&o.performance.now()-f>v?c:d},set value(k){d=k},reset:()=>{}},b=()=>{n.requestRender()},C=k=>{if(c=k,r){p.value=k,b();return}if(k===p.value)return;if(!o){p.value=k;return}u!==void 0&&o.cancelAnimationFrame(u);let m=p.value,g=o.performance.now();f=g,S();let y=x=>{let V=Math.min(1,(x-g)/s);p.value=Math.round(m+(k-m)*i(V)),V<1?u=o.requestAnimationFrame(y):u=void 0,b()};u=o.requestAnimationFrame(y)},S=()=>{o&&(h!==void 0&&clearTimeout(h),h=setTimeout(()=>{h=void 0,u!==void 0&&(o&&o.cancelAnimationFrame(u),u=void 0,p.value=c,b())},v))};return p.reset=k=>{k===c&&u!==void 0||C(k)},n.onUnmount(()=>{u!==void 0&&o&&(o.cancelAnimationFrame(u),u=void 0)}),n.setHookState(a,p),l=p,l.reset(e),l}function jn(n,e){let t=n.getBrowser()?.window,o=0,r=0,s=!1,i=0,a=c=>{s&&e.onMove(c,{x:c.clientX-o,y:c.clientY-r})},l=c=>{s&&c.pointerId===i&&(s=!1,t&&(t.removeEventListener("pointermove",a),t.removeEventListener("pointerup",l),t.removeEventListener("pointercancel",d)),e.onEnd?.(c))},d=c=>{!s||c.pointerId!==i||(s=!1,t&&(t.removeEventListener("pointermove",a),t.removeEventListener("pointerup",l),t.removeEventListener("pointercancel",d)),e.onEnd?.(c))},u=c=>{s||(c.preventDefault(),s=!0,i=c.pointerId,o=c.clientX,r=c.clientY,t&&(t.addEventListener("pointermove",a),t.addEventListener("pointerup",l),t.addEventListener("pointercancel",d)),e.onStart?.(c))};return n.onUnmount(()=>{s&&t&&(t.removeEventListener("pointermove",a),t.removeEventListener("pointerup",l),t.removeEventListener("pointercancel",d),s=!1)}),{onPointerDown:u}}function Kn(n){let e=te(n,hr(n),{height:0,offsetTop:0,keyboardOpen:!1});return{get height(){return e().height},get offsetTop(){return e().offsetTop},get keyboardOpen(){return e().keyboardOpen}}}function hr(n){let e=n.getBrowser()?.window;return P(t=>{let o=()=>{let i=e?.visualViewport,a=i?.height??e?.innerHeight??0;return{height:a,offsetTop:i?.offsetTop??0,keyboardOpen:a<(e?.innerHeight??0)*.9}};if(!e)return t.next({height:0,offsetTop:0,keyboardOpen:!1}),t.complete(),()=>{};let r=()=>t.next(o()),s=e.visualViewport;return s?.addEventListener?(s.addEventListener("resize",r),s.addEventListener("scroll",r),r(),()=>{s.removeEventListener("resize",r),s.removeEventListener("scroll",r)}):(e.addEventListener("resize",r),r(),()=>e.removeEventListener("resize",r))})}function jt(n,e){let t=n.nextHookIndex(),o=n.getHookState(t);return o===void 0&&(o={v:e},n.setHookState(t,o)),{get:()=>o.v,set:r=>{o.v=typeof r=="function"?r(o.v):r,n.requestRender()}}}function Kt(n,e){let t=null,o=e,r={onClick:l=>{o.maskClosable!==!1&&l.target===l.currentTarget&&i()}},s={role:e.role??"dialog","aria-modal":!0},i=()=>o.onOpenChange?.(!1),a=(l,d)=>{d&&(o=d);let u=!!o.open;u&&!t?t=st(n,{key:"overlay",presence:!!o.presence,trapFocus:o.trapFocus!==!1,lockScroll:o.lockScroll!==!1,positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:l,onClose:()=>{t=null}}):!u&&t?(t.update(l()),t.close(),t=null):t&&t.update(l())};return Ge(n,l=>{l.key==="Escape"&&t?.open&&o.closeOnEscape!==!1&&i()}),n.onUnmount?.(()=>{t&&t.close()}),{maskProps:r,panelProps:s,close:i,sync:a}}function zt(n,e){let t=e,o=()=>t.id??(t.name?`wf-${t.name}`:void 0),r=()=>o()??"wf-field";return{get hasWrap(){return!!(t.label||t.error||t.hint)},get stateClass(){return t.error?` ${t.wrapErrClass??"wf-field--err"}`:""},get inputId(){return o()},inputProps(){let s={},i=o();i&&(s.id=i),t.error&&(s["aria-invalid"]=!0);let a=[];return t.error&&a.push(`${r()}-err`),t.hint&&!t.error&&a.push(`${r()}-hint`),a.length&&(s["aria-describedby"]=a.join(" ")),t.required&&(s["aria-required"]=!0),s},renderLabel(){if(t.label==null&&!t.required)return null;let s=[];return t.label!=null&&s.push(t.label),t.required&&s.push(H("span",{class:t.reqClass??"wf-field-req"},t.reqChar??"*")),H("label",{class:t.labelClass,...o()?{for:o()}:{}},s)},renderError(){return t.error?H("div",{class:t.errClass,id:`${r()}-err`},t.error):null},renderHint(){return t.hint&&!t.error?H("div",{class:t.hintClass,id:`${r()}-hint`},t.hint):null}}}var Yt=new Map,zn=new Set,yr=new N;function Yn(n){if(n)for(let[e,t]of Object.entries(n)){let o=Yt.get(e);o?(o.state$.next(t),o.seedHit=!0):We.set(e,t)}}var We=new Map;function $t(n){return{useObservable(e,t,o){return te(n,e,t,o)},useAsyncData(e,t){let o=Yt.get(t);o||(o={trigger:new ae(void 0),state$:new ae(We.get(t)??null),fetcher:null,started:We.has(t),seedHit:We.has(t),sub:null},We.delete(t),Yt.set(t,o)),o.fetcher=e;let r=()=>{if(o.sub||o.seedHit)return;o.started=!0;let a=o.trigger.asObservable().pipe(Ie(()=>{let l=o.fetcher;if(!l)return ce(Promise.resolve(null));let d=l();return zn.add(d),d.finally(()=>zn.delete(d)).catch(()=>{}),ce(d)}));o.sub=a.subscribe({next:l=>{o.state$.next(l)},error:l=>{console.error("[vdom] useAsyncData:",l),yr.next({key:t,error:l}),o.state$.next(null)}})};return r(),[te(n,o.state$.asObservable(),null),()=>{o.seedHit&&(o.seedHit=!1),o.state$.next(null),o.sub?o.trigger.next():r()}]},useSession(e){let[t]=this.useAsyncData(async()=>{let o={},r=e?.token?.();r&&(o.Authorization=`Bearer ${r}`);let s=await fetch(e?.path??"/api/auth/me",{headers:o});if(!s.ok)throw new Error(`session \u83B7\u53D6\u5931\u8D25 HTTP ${s.status}`);return await s.json()},"wf:session");return t},useExternal(e){let t=n.getInstanceData(),o=t.get(e);if(!o){let r=e.subscribe(()=>n.requestRender());n.onUnmount(r),o={unsub:r},t.set(e,o)}return()=>e.state},signal:e=>{let t=Vt(e),o=t.subscribe(()=>n.requestRender());return n.onUnmount(o),t},hold:e=>n.onUnmount(e),useStableRef:(e,t)=>mn(n,e,t),useOpen:(e,t)=>gn(n,e,t),onUnmount:e=>n.onUnmount(e),useGlobalKey:(e,t)=>Ge(n,e,t),openPopup:e=>st(n,e),usePopupPosition:e=>hn(n,e),useControlled:(e,t)=>Ln(n,e,t),useScrollPosition:e=>Dn(n,e),useInView:e=>$n(n,e),useControlledInput:(e,t)=>Fn(n,e,t),useDragDrop:e=>_n(n,e),useMedia:e=>_e(n,e),useBreakpoint:e=>Wn(n,e),useChat:e=>qn(n,e),useTween:(e,t)=>Bn(n,e,t),useDrag:e=>jn(n,e),useVisualViewport:()=>Kn(n),useReducedMotion:()=>Bt(n),useSignal:e=>jt(n,e),useOverlay:e=>Kt(n,e),useField:e=>zt(n,e)}}function Gn(n,e,t){return e<=0?n:new Promise((o,r)=>{let s=setTimeout(()=>{r(new Error(`[vdom] \u5F02\u6B65\u8D85\u65F6\uFF08${e}ms\uFF09: ${t}`))},e);n.then(i=>{clearTimeout(s),o(i)},i=>{clearTimeout(s),r(i)})})}function Qe(n){return Y(n)?{kind:"hole"}:Array.isArray(n)?{kind:"array",items:n}:{kind:"vnode",v:n}}function me(n){return n.kind==="hole"?null:n.kind==="array"?n.items:n.v}function ee(){let n=new Map;return{get:e=>n.get(e),set:(e,t)=>{n.set(e,t)},delete:e=>{n.delete(e)},keys:()=>[...n.keys()],asyncTimeout:15e3}}function _t(n,e){let t=[...e.keys()].filter(o=>o===n||o.startsWith(n+".")).reverse();for(let o of t){let r=e.get(o);if(r){for(let s of r.onUnmounts.reverse())try{s()}catch(i){console.error("[vdom] onUnmount:",i)}e.delete(o)}}}function Ft(n,e,t,o){return typeof n?.type=="function"||Array.isArray(n)||ne(n)==="hole"?{parent:e,index:0}:{parent:t,index:o}}function K(n,e,t,o,r,s,i,a){let l=[];return qe(n,e,t,o,r,s,i,a,l),A(l)}function qe(n,e,t,o,r,s,i,a,l){let d=O(e,t);switch(ne(n)){case"text":{let u=Xe(n);l.push({op:"createText",id:d,value:u},{op:"insert",id:d,parent:e,ref:o});break}case"hole":{Pt(u=>l.push(u),d,e,o);break}case"array":{let u=n;Me(u,`\u6570\u7EC4\u5C55\u5F00\uFF08${e}\uFF09`);let c=t,f=o;for(let v of u){qe(v,e,c,f,r,s,i,a,l);let h=$(v);f=O(e,c+h-1),c+=h}break}case"fragment":{let u=B(n);Me(u,`Fragment \u5C55\u5F00\uFF08${e}\uFF09`);let c=t,f=o;for(let v of u){qe(v,e,c,f,r,s,i,a,l);let h=$(v);f=O(e,c+h-1),c+=h}break}case"element":{let u=n;l.push({op:"create",id:d,tag:u.type,attrs:He(u.props)});for(let[p,b]of Object.entries(u.props))p==="children"||p==="key"||p==="ref"||typeof b=="function"&&l.push({op:"setProp",id:d,key:p,value:b});l.push({op:"insert",id:d,parent:e,ref:o});let c=u.props.ref;typeof c=="function"&&l.push({op:"ref",id:d,fn:c});let f=B(u);Me(f,`\u5143\u7D20 children\uFF08${d}\uFF09`);let v=null,h=0;for(let p of f){qe(p,d,h,v,r,s,i,a,l);let b=$(p);v=O(d,h+b-1),h+=b}l.push({op:"close",id:d});break}case"component":{let u=n,c=u.key!==null?Q(e,u.key):d,f=i??new Map,v=f.get(c);v&&v.factory!==u.type&&(z(c,f),v=void 0),v?q("seg:reuse",c):(v=Lt(u.type,u.props,r,c,a),f.set(c,v),q("seg:create",c));let h;try{h=Dt(v,u.props)}catch(b){Pe(c,b),h=null}h!==null&&Nt(c),v.lastOutput=Qe(h);let p=Ft(h,c,e,t);if(Y(h)){let b=O(c,0);l.push({op:"createAnchor",id:b},{op:"insert",id:b,parent:e,ref:o},{op:"mount",compId:c});break}qe(h,p.parent,p.index,o,r,s,f,a,l),l.push({op:"mount",compId:c});break}case"invalid":{console.warn(`[vdom] \u975E\u6CD5\u5B50\u8282\u70B9\u2014\u2014${It(n)}`),Pt(u=>l.push(u),d,e,o,It(n));break}}}function ge(n,e,t,o,r){let s=e??{},i=t??ee();return K(n,"root",0,null,s,i,o,r).pipe(xr(A([{op:"done",full:!0}])))}function A(n){return P(e=>{for(let t of n)e.next(t);return e.complete(),()=>{}})}function J(n){return P(e=>{let t=0,o=null,r=!1,s=!1,i=()=>{if(!(r||s)){for(s=!0;!r;){if(t>=n.length){e.complete();break}let a=n[t++],l=!1,d=!0;if(o=a.subscribe({next:u=>e.next(u),error:u=>{r||(r=!0,e.error(u))},complete:()=>{l||r||(l=!0,!d&&i())}}),d=!1,!l)break}s=!1}};return i(),()=>{r=!0,o?.unsubscribe()}})}function xr(n){return e=>J([e,n])}function Jn(n,e){return H("div",{class:"wf-error-fallback",style:"padding:40px 24px;text-align:center;font-family:var(--wf-font-sans,system-ui);"},[H("div",{style:"font-size:21px;font-weight:600;margin-bottom:8px;"},"\u9875\u9762\u6E32\u67D3\u5931\u8D25"),H("div",{style:"font-size:13px;color:var(--wf-color-text-secondary,#64748b);margin-bottom:16px;max-width:520px;margin-inline:auto;word-break:break-all;"},String(n?.message??n)),H("button",{class:"wf-btn wf-btn--primary",onClick:()=>{e.render?.()},style:"padding:8px 20px;border-radius:6px;border:none;cursor:pointer;"},"\u91CD\u8BD5")])}function Xn(){return new Map}function Zn(){let n=new Map;return{get:e=>n.get(e),set:(e,t)=>{n.set(e,t)},removePrefix:e=>{for(let t of[...n.keys()])(t===e||t.startsWith(e+"."))&&n.delete(t)},hasPrefix:e=>{for(let t of n.keys())if(t===e||t.startsWith(e+"."))return!0;return!1},remapPrefix:(e,t)=>{for(let[o,r]of[...n])(o===e||o.startsWith(e+"."))&&(n.delete(o),n.set(t+o.slice(e.length),r))},clear:()=>{n.clear()}}}function Qn(n,e){let t=[];switch(e.op){case"create":case"createText":case"createAnchor":{n.get(e.id)===void 0&&n.set(e.id,"created");break}case"insert":{let o=n.get(e.id);o===void 0?t.push(`insert Pre \u8FDD\u4F8B\uFF1Aid ${e.id} \u672A create`):o==="created"&&n.set(e.id,"inserted");break}case"close":{let o=n.get(e.id);o===void 0?t.push(`close Pre \u8FDD\u4F8B\uFF1Aid ${e.id} \u4E0D\u5B58\u5728`):o==="inserted"?n.set(e.id,"active"):o!=="active"&&t.push(`close Pre \u8FDD\u4F8B\uFF1A${e.id} \u72B6\u6001\u5E94\u4E3A inserted/active\uFF08\u5B9E\u9645 ${o}\uFF09`);break}case"remove":{n.removePrefix(e.id),n.hasPrefix(e.id)&&t.push(`remove Post \u8FDD\u4F8B\uFF1A${e.id} \u524D\u7F00\u8BB0\u5F55\u6B8B\u7559`);break}case"setText":{n.get(e.id)===void 0&&t.push(`setText Pre \u8FDD\u4F8B\uFF1Aid ${e.id} \u4E0D\u5B58\u5728`);break}case"setProp":{n.get(e.id)===void 0&&t.push(`setProp Pre \u8FDD\u4F8B\uFF1Aid ${e.id} \u4E0D\u5B58\u5728`);break}case"move":{n.remapPrefix(e.id,e.newId),n.get(e.newId)===void 0&&!n.hasPrefix(e.newId)&&t.push(`move Post \u8FDD\u4F8B\uFF1Aremap \u540E\u65B0 id ${e.newId} \u4E0D\u5B58\u5728`),e.id!==e.newId&&(n.hasPrefix(e.id)&&t.push(`move Post \u8FDD\u4F8B\uFF1A\u65E7\u524D\u7F00 ${e.id} \u8FC1\u79FB\u540E\u6B8B\u7559`),n.get(e.id)!==void 0&&n.get(e.newId)!==void 0&&t.push(`move Post \u8FDD\u4F8B\uFF1A\u65E7 id ${e.id} \u8FC1\u79FB\u540E\u6B8B\u7559`));break}case"mount":case"unmount":case"ref":case"unref":break;case"done":break}return t}function eo(){let n=Zn();return(e,t)=>{let o=Qn(n,e);for(let r of o)console.error(`[vdom-dev] ${r}`);switch(e.op){case"insert":{let r=t.nodes.get(e.id);r&&!r.isConnected&&console.error(`[vdom-dev] insert Post \u8FDD\u4F8B\uFF1A${e.id} \u672A\u6302\u8F7D\uFF08isConnected=false\uFF09`);break}case"setText":{let r=t.nodes.get(e.id);r&&r.nodeType!==3&&console.error(`[vdom-dev] setText Pre \u8FDD\u4F8B\uFF1A${e.id} \u975E\u6587\u672C\u8282\u70B9\uFF08${r.nodeType}\uFF09`);break}case"setProp":{let r=t.nodes.get(e.id);r&&r.nodeType!==1&&console.error(`[vdom-dev] setProp Pre \u8FDD\u4F8B\uFF1A${e.id} \u975E\u5143\u7D20\u8282\u70B9\uFF08${r.nodeType}\uFF09`);break}default:break}}}function to(n=15e3){let e=new Map,t="active",o={};return{get(r,s){let i=e.get(r);if(i)return i;let a=Gn((async()=>{if(r in o)return o[r];if(s)return s();let l=await fetch(r);if(!l.ok)throw new Error(`[vdom] ctx.data \u8BF7\u6C42\u5931\u8D25 ${l.status}: ${r}`);return l.json()})(),n,`ctx.data(${r})`);return e.set(r,a),a},set(r,s){e.set(r,Promise.resolve(s))},has(r){return e.has(r)},preload(r){o={...o,...r}},invalidate(r){e.delete(r)},seed(){return o}}}var wr=16,Tr=20;function Cr(){return globalThis.performance?.now?.()??Date.now()}function Jt(){let n=new N,e=0,t=0,o=!1,r=!1,s=0,i=0,a=()=>{if(o=!1,!r){r=!0;try{let l=Cr();s=l-i<wr?s+1:0,i=l,t++,q("sched:flush"),n.next()}finally{r=!1,o&&(s>=Tr?(console.warn("[vdom] v2 \u8C03\u5EA6\uFF1A\u8FDE\u7EED\u91CD\u6E32\u67D3\u8D85\u9650\uFF08",s,"\uFF09\u2014\u2014\u8BF7\u6C42\u4E22\u5F03\uFF08\u6E32\u67D3\u98CE\u66B4\u9632\u62A4\uFF09"),o=!1):queueMicrotask(a))}}};return{request(l){if(e++,q("sched:request",l??"unknown"),r){o=!0;return}o||(o=!0,queueMicrotask(a))},renders$:n.asObservable(),stats:()=>({requested:e,flushed:t})}}function no(n){let e=!1,t=null,o={builds:0,diffs:0,applies:0,unmounts:0},r=new N,s=new N,i=u=>{if(n.active())for(let c of u)try{o.applies++,n.apply(c)}catch(f){console.error("[vdom] v2 apply:",f);break}},a=(u,c)=>{if(n.active())for(let f of u)f.op==="unmount"&&n.dispose(f.compId,c)&&o.unmounts++};return{apply:u=>new Promise((c,f)=>{if(!n.active()){c();return}let v=En(),h;if(!e){e=!0;try{n.boot()}catch(p){f(p);return}}if(t===null)o.builds++,h=n.build(u);else if(t.type!==u.type){o.builds++;try{n.resetRoot()}catch(p){f(p);return}t=null,h=n.build(u)}else o.diffs++,h=n.diff(t,u);h.pipe(Ct(),fe(p=>q("cmd:render",`${p.length}\u6761`)),fe(i),fe(p=>a(p,v)),fe(p=>{n.active()&&(t=u)})).subscribe({next:p=>{if(!n.active()){c();return}r.next(p),s.next(),c()},error:p=>{t=null,f(p)}})}),reset:()=>{t=null},metrics:()=>({...o}),applied$:r.asObservable(),complete$:s.asObservable()}}var it=2e3,oo=5e3,ro=10,so=.05,io=300;function kr(n,e,t,o){let r=()=>o?.()??globalThis.__wfSpy??[],s=0,i=0,a=0,l=0,d=0,u=0,c=0,f=0,v=0,h=0,p=0,b=[];n.subscribe({next:g=>{d=g.length,u=Math.max(u,g.length),i+=g.length}}),e.subscribe({next:()=>{s++,p++,c>0&&(v=ao()-c),v>h&&(h=v),c=ao(),m()}});let C=()=>{let g=0,y=0;for(let x of r())x.kind==="seg:create"?g++:x.kind==="seg:reuse"&&y++;a=g,l=y},S=null,k=()=>{C();let g=p/(it/1e3),y=a+l>0?a/(a+l):0;b.length=0,g>ro&&b.push(`\u9891\u7387\u8D85\u9650\uFF1A${g.toFixed(1)} \u6E32\u67D3/s\uFF08> ${ro}\uFF09`),d>oo&&b.push(`\u89C4\u6A21\u8D85\u9650\uFF1A\u5355\u6E32\u67D3 ${d} \u547D\u4EE4\uFF08> ${oo}\uFF09`),h>io&&b.push(`\u6E32\u67D3\u8017\u65F6\u8D85\u9650\uFF1A${h}ms\uFF08> ${io}\uFF09`),y>so&&b.push(`\u590D\u7528\u7387\u4E0D\u8DB3\uFF1A\u91CD\u8DD1\u7387 ${(y*100).toFixed(1)}%\uFF08> ${so*100}%\uFF09`),be().total>0&&be().total!==f&&(b.push(`renderFn \u9519\u8BEF\uFF1A\u7D2F\u8BA1 ${be().total}\uFF08\u7EC4\u4EF6\u7EA7 hole \u964D\u7EA7\u2014\u2014\u81EA\u6108\u91CD\u8BD5\u4E2D\uFF09`),f=be().total);for(let x of b)console.warn(`[vdom-dev] \u6E32\u67D3\u5065\u5EB7\uFF1A${x}`);p=0,m()},m=()=>{let g=a+l>0?a/(a+l):0,y={fps:p/(it/1e3),lastCmds:d,maxCmds:u,reRunRate:g,segments:t?.size??0,errors:be().total,total:{renders:s,cmds:i,creates:a,reuses:l},warns:[...b]};globalThis.__wfRenderHealth=y};return m(),S=setInterval(k,it),{snapshot:()=>{C();let g=a+l>0?a/(a+l):0;return{fps:p/(it/1e3),lastCmds:d,maxCmds:u,reRunRate:g,segments:t?.size??0,errors:be().total,total:{renders:s,cmds:i,creates:a,reuses:l},warns:[...b]}},refresh:k,dispose:()=>{S&&(clearInterval(S),S=null)}}}function ao(){return globalThis.performance?.now?.()??Date.now()}function lo(n){let e=kr(n.applied$,n.complete$,n.segments);return q("health:attached"),e}function uo(n,e){let t=document,o=window,r=typeof e.root=="string"?t.querySelector(e.root):e.root;if(!r)throw new Error(`uiServeV2: root \u672A\u627E\u5230 \u2014 ${String(e.root)}`);let s=o.__DATA__;s&&Yn(s);let i=Xn(),a=ee(),l=new Map,d=new de(r,t,a);o.__WF_DEV__&&(d.devVerify=eo());let u=Jt(),c=o.__wfV2??={builds:0,diffs:0},f=[],v=[],h=()=>{let T=f.splice(0);for(let M of T)try{M()}catch(I){console.error("[vdom] v2 afterRender:",I)}},p={browser:ht(),data:to(),onUnmount(T){v.push(T)},afterRender(T){f.push(T)},...e.api?{api:e.api}:{},...e.auth?{auth:e.auth}:{},...e.ws?{ws:e.ws}:{},...e.i18n?{i18n:e.i18n}:{},...e.toast?{toast:e.toast}:{},...e.confirm?{confirm:e.confirm}:{},...e.notification?{notification:e.notification}:{}},b=!0,C=no({boot:()=>{Array.from(r.querySelectorAll("*")).some(M=>[...M.childNodes].some(I=>I.nodeType===8&&I.textContent?.includes("wf")))?d.absorb.begin(r):r.innerHTML=""},resetRoot:()=>{r.innerHTML="";for(let[T]of[...l])z(T,l);d.reset()},build:T=>ge(T,p,a,l,()=>u.request("component-rerender")),diff:(T,M)=>xe(T,M,p,l,a,()=>u.request("component-rerender")),apply:T=>{d.apply(T)},dispose:(T,M)=>{let I=l.get(T);return I&&!I.disposed&&I.epoch<M?(z(T,l),!0):!1},active:()=>b}),S=()=>{let T=C.metrics();c.builds=T.builds,c.diffs=T.diffs},k=!1;d.absorb.failed$.subscribe({next:()=>{k=!0,console.warn("[vdom] SSR \u5438\u6536\u5931\u8D25\u2014\u2014\u56DE\u9000\u6E05\u7A7A\u91CD\u5EFA\uFF08\u4E8B\u4EF6\u9A71\u52A8\uFF09")}}),C.complete$.subscribe({next:()=>{h(),k&&(k=!1,d.absorb.reset(),r.innerHTML="",C.reset(),u.request("error-fallback"))}});let m=null;o.__WF_DEV__&&(m=lo({applied$:C.applied$,complete$:C.complete$,segments:l}));let g=0,y=3,x=T=>{C.reset();let M=e.errorFallback?.(T,p)??Jn(T,p);C.apply(M).then(S).catch(I=>console.error("[vdom] v2 error fallback \u6E32\u67D3\u5931\u8D25:",I))},V=async T=>{if(b)try{await C.apply(T),g=0,S()}catch(M){console.error("[vdom] v2 render:",M),g++,g>=y&&(g=0,x(M instanceof Error?M:new Error(String(M))))}},F=p;F.stream=(T,M)=>(V(T),new Response(null,{status:M?.status??200}));let re=new N,se="idle";re.asObservable().pipe(ve((T,M)=>M.kind==="begin"?"rendering":"idle","idle")).subscribe({next:T=>{se=T}});let ie=new N;ie.subscribe({next:T=>q("nav:resolve",T)});let Ve=(T,M)=>ce(n.resolve(dn(T),p)).pipe(Ie(I=>{let W=I.status>=300&&I.status<400&&I.headers?.get("Location")?I.headers.get("Location"):null;if(W){if(M>=5)throw new Error(`[vdom] redirect \u94FE\u8D85\u9650\uFF08${M+1}\uFF09\u2014\u2014${T} \u2192 ${W}`);return o.history.replaceState({},"",W),Ve(W,M+1)}if(I.status===404)throw new Error(`[vdom] \u65E0\u8DEF\u7531\uFF1A${T}\u2014\u2014\u56DE\u9000\u9875\u9762\u7EA7\u5BFC\u822A`);return A([void 0])})),lt=T=>P(M=>{re.next({kind:"begin"});let I=!1,W=Ve(T,0).subscribe({next:()=>M.next(),error:yo=>{I=!0,re.next({kind:"end"}),M.error(yo)},complete:()=>{I=!0,re.next({kind:"end"}),M.complete()}});return()=>{W.unsubscribe(),I||re.next({kind:"end"})}}),we=T=>(ie.next(T),new Promise((M,I)=>{lt(T).subscribe({next:()=>M(),error:W=>I(W),complete:()=>M()})})),w=()=>o.location.pathname+o.location.search,E=async()=>{await we(w())};u.renders$.subscribe({next:()=>{E().catch(T=>console.error("[vdom] v2 render:",T))}}),p.render=()=>{u.request("page-render")};let R=()=>{try{o.history.replaceState({...o.history.state??{},scrollY:o.scrollY},"")}catch{}},U=()=>{try{let T=o.history.state?.scrollY;o.scrollTo(0,typeof T=="number"?T:0)}catch{}},L=async T=>{R(),o.history.pushState({scrollY:0},"",T);try{await we(T),o.scrollTo(0,0)}catch{o.location.href=T}};p.app={navigate:L};let X=T=>{let I=T.target?.closest?.("a[href]");if(!I)return;let W=I.getAttribute("href");!W||W.startsWith("http")||W.startsWith("#")||n.has(W)&&(T.preventDefault(),L(W))};t.addEventListener("click",X);let _=()=>{we(w()).then(()=>U()).catch(()=>{o.location.reload()})};o.addEventListener("popstate",_),we(w()).catch(T=>console.error("[vdom] v2 \u9996\u5E27:",T));let Z=!1;return{ready:Promise.resolve(),render:()=>E(),__apply:T=>V(T),navigate:L,unmount:()=>{Z=!0,b=!1,t.removeEventListener("click",X),o.removeEventListener("popstate",_),m?.dispose();for(let[T]of[...l])z(T,l);d.dispose();for(let T of v.reverse())try{T()}catch(M){console.error("[vdom] v2 unmount:",M)}v.length=0,r.innerHTML=""}}}var Re=class extends Error{status;constructor(e,t){super(e),this.name="ApiError",this.status=t}};function Sr(n={}){let e=n.baseUrl??"",t=n.timeout??15e3,o=new N,r=new N;o.asObservable().pipe(St(()=>ce(Promise.resolve(n.onUnauthorized?.()??!1)))).subscribe({next:a=>r.next(a),error:()=>r.next(!1)});let s=async()=>(o.next(),new Promise(a=>{r.asObservable().pipe(Et(1)).subscribe({next:l=>a(l)})}));async function i(a,l,d,u={},c=!1){let f=new AbortController,v=setTimeout(()=>f.abort(),t),h=typeof n.token=="function"?n.token():n.token;try{let p=h,b={"content-type":"application/json",...typeof n.headers=="function"?n.headers():n.headers,...p?{authorization:`Bearer ${p}`}:{},...u.headers},C=await fetch(e+l,{method:a,headers:b,body:d!==void 0?JSON.stringify(d):void 0,signal:f.signal});if(C.status===401&&!c){let k=typeof n.token=="function"?n.token():n.token;if(k&&k!==h||await s())return i(a,l,d,u,!0);throw new Re(`[api] 401 ${a} ${l}\uFF08\u5237\u65B0\u5931\u8D25\uFF09`,401)}if(!C.ok){let k="";try{let m=await C.text();if(m){let g=JSON.parse(m);g&&typeof g=="object"&&typeof g.error=="string"&&(k=g.error)}}catch{}throw new Re(k||`[api] \u8BF7\u6C42\u5931\u8D25 ${C.status}: ${a} ${l}`,C.status)}let S=await C.text();return S?JSON.parse(S):void 0}catch(p){let b=p instanceof Re?p:new Re(p.message);throw n.onError?.(b),b}finally{clearTimeout(v)}}return{get:(a,l)=>i("GET",a,void 0,l),post:(a,l,d)=>i("POST",a,l,d),put:(a,l,d)=>i("PUT",a,l,d),delete:(a,l)=>i("DELETE",a,void 0,l),patch:(a,l,d)=>i("PATCH",a,l,d),request:i}}function Er(n={}){let e=n.scheme??"Bearer",t=n.storage??{get:()=>null,set:()=>{}},o=n.tokenKey??n.key??"wf-auth-token",r=n.userKey??"wf-auth-user",s=n.refreshTokenKey??"wf-auth-refresh",i=null;try{let u=t.get(r);u&&(i=JSON.parse(u))}catch{}let a=new ae(t.get(o)||null),l=()=>{a.next(d.getToken())},d={getToken(){let u=t.get(o);return u||null},setToken(u){u===null?t.set(o,""):t.set(o,u),l()},headers(){let u=t.get(o);return u?{authorization:`${e} ${u}`}:{}},logout(){t.set(o,""),t.set(r,""),t.set(s,""),i=null,l()},get user(){return i},get isLoggedIn(){return!!t.get(o)},login(u,c,f){t.set(o,u),c!==void 0&&(t.set(r,JSON.stringify(c)),i=c),f!=null&&t.set(s,f),l(),n.onAuth?.(d)},setUser(u){t.set(r,JSON.stringify(u)),i=u},token$:a.asObservable(),async refresh(){if(!n.onRefresh)return console.warn("[vdom] auth.refresh() \u672A\u914D\u7F6E onRefresh \u94A9\u5B50\u2014\u2014401 \u65F6\u5C06\u65E0\u6CD5\u7EED\u671F\uFF08\u76F4\u63A5\u767B\u51FA\u8BED\u4E49\uFF09"),!1;let u=await n.onRefresh();return u&&n.onAuth?.(d),u}};return d}function Or(n={}){let e=n.messages??{},t=n.locale??Object.keys(e)[0]??"default",o=new N;return{get locale(){return t},setLocale(r){t=r,o.next(r)},locale$:o.asObservable(),t(r,s){let a=e[t]?.[r]??r;if(s)for(let[l,d]of Object.entries(s))a=a.replaceAll(`{${l}}`,String(d));return a}}}function Rr(n={}){let e=n.WebSocketCtor??globalThis.WebSocket,t=null,o=!1,r=0,s=null,i=new Set,a=new Set,l=new N,d=new ae(!1),u=n.autoReconnect?typeof n.autoReconnect=="object"?n.autoReconnect:{}:null,c=x=>{b=Date.now();let V=x.data;if(typeof x.data=="string")try{V=JSON.parse(x.data)}catch{}for(let F of[...i])F(V);l.next(V)},f=x=>{if(v.current!==x){v.current=x;for(let V of[...a])V(x);d.next(x)}},v={current:!1},h=n.ping,p=null,b=0,C=()=>{p&&(clearInterval(p),p=null)},S=()=>{if(!h||!t)return;C();let x=h.intervalMs??15e3,V=h.timeoutMs??35e3;b=Date.now(),p=setInterval(()=>{if(!t){C();return}if(Date.now()-b>V){try{t.close()}catch{}return}if(t.readyState!==1){try{t.close()}catch{}return}try{t.send(JSON.stringify(h.payload?.()??{type:"ping"}))}catch{}},x)},k=()=>{if(!u||o||s)return;let x=u.baseMs??1e3,V=u.maxMs??3e4,F=Math.min(x*2**r,V);r++,s=setTimeout(()=>{s=null,y(m)},F)},m=n.url??"",g=[],y=x=>{e&&(m=x,t=new e(x),t.onmessage=c,t.onopen=()=>{for(r=0,f(!0),S();g.length>0;)t?.send(g.shift())},t.onerror=()=>{try{t?.close()}catch{}},t.onclose=()=>{C(),t=null,f(!1),k()})};return{connect(x){o=!1,s&&(clearTimeout(s),s=null),r=0,C(),t?.close(),t=null,f(!1),y(x??n.url??"")},get isConnected(){return v.current},send(x){let V=typeof x=="string"?x:JSON.stringify(x);t?.readyState===1?t.send(V):g.push(V)},onMessage(x){return i.add(x),()=>{i.delete(x)}},onStatusChange(x){return a.add(x),x(v.current),()=>{a.delete(x)}},messages$:l.asObservable(),status$:d.asObservable(),close(){o=!0,s&&(clearTimeout(s),s=null),C(),t?.close(),t=null,f(!1)}}}function vo(n){return new Promise((e,t)=>{let o=[];n.subscribe({next:r=>o.push(r),error:t,complete:()=>e(o)})})}function Mr(n,e,t,o,r,s){let i=r??new Map,a=o??ee(),l=xe(n,e,t??{},i,a,s);return new ReadableStream({start(d){l.subscribe({next:u=>d.enqueue(u),error:u=>d.error(u),complete:()=>d.close()})}})}function at(n,e,t,o,r){let i=ge(n,e,t,o??new Map,r);return new ReadableStream({start(a){i.subscribe({next:l=>a.enqueue(l),error:l=>a.error(l),complete:()=>a.close()})}})}async function Ir(n,e,t){let o=t??ee(),r=await vo(ge(n,e,o)),{commandToHtml:s}=await Promise.resolve().then(()=>(go(),mo)),a=new ReadableStream({start(d){for(let u of r)d.enqueue(u);d.close()}}).pipeThrough(s()).getReader(),l="";for(;;){let{value:d,done:u}=await a.read();if(u)break;l+=d}return l}function bo(n,e="info",t=3e3){let o=document.createElement("div");o.className="wf-toast-host",o.style.cssText="position:fixed;top:16px;right:16px;z-index:var(--wf-z-toast,9999)",document.body.appendChild(o);let r=ee(),s=new de(o,document,r),i={render:async()=>{},onUnmount:()=>{},data:{get:async()=>{},set:()=>{},has:()=>!1}};at(H(()=>()=>H("div",{class:`wf-toast wf-toast--${e}`},H("span",{class:"wf-toast-msg"},n)),{}),i,r).pipeTo(new WritableStream({write(l){s.apply(l)}})).then(()=>{P(l=>(l.next(1),l.complete(),()=>{})).pipe(kt(t),fe(()=>{s.dispose(),o.remove()})).subscribe({next:()=>{}})})}function Pr(n){return Object.assign(n,{toast:bo})}function Ar(n){let{cls:e,role:t}=n,o=n.enum;if(o!==void 0){let{key:i,off:a,values:l}=o,d=a??{};return(u,c={})=>{let f=typeof u=="string"?u:null,v=f!==null&&l[f]?l[f]:d,h=[e];v.suffix&&h.push(e+v.suffix);let p=h.join(" "),b=c.class,C=b?p+" "+(Array.isArray(b)?b.filter(Boolean).join(" "):b):p,{class:S,...k}=c,m={class:C};return t&&(m.role=t),v.aria!==void 0?m[i]=v.aria:v===d&&(m[i]=d.aria!==void 0?d.aria:!1),v.props&&Object.assign(m,v.props),{...m,...k}}}let s=n.states!==void 0?Object.entries(n.states).map(([i,a])=>[i,{suffix:a.suffix===void 0?`--${i}`:a.suffix,aria:a.aria,ariaText:a.ariaText,roving:a.roving}]):[["active",{suffix:n.suffix??"--active",aria:n.aria,ariaText:n.ariaText,roving:n.roving}]];return(i,a={})=>{let l=i,d=C=>typeof l=="boolean"?l:!!l[C],u=[e];for(let[C,S]of s){let k=d(C);S.suffix&&k&&u.push(e+S.suffix)}let c=u.join(" "),f=a.class,v=f?c+" "+(Array.isArray(f)?f.filter(Boolean).join(" "):f):c,{class:h,...p}=a,b={class:v};t&&(b.role=t);for(let[C,S]of s){let k=d(C);S.aria&&(b[S.aria]=k),S.ariaText&&(b[S.ariaText.key]=k?S.ariaText.value:void 0),S.roving&&(b.tabindex=k?0:-1)}return{...b,...p}}}var ho={dialog:{fixed:{"aria-modal":!0},labelable:!0},alertdialog:{fixed:{"aria-modal":!0},labelable:!0},progressbar:{keys:["aria-valuenow","aria-valuemin","aria-valuemax"],labelable:!0},slider:{keys:["aria-valuenow","aria-valuemin","aria-valuemax"],labelable:!0},scrollbar:{keys:["aria-valuenow","aria-valuemin","aria-valuemax"],labelable:!0},switch:{keys:["aria-checked"],labelable:!0},radio:{keys:["aria-checked"],labelable:!0},checkbox:{keys:["aria-checked"],labelable:!0},option:{keys:["aria-selected"],labelable:!0},tab:{keys:["aria-selected"],labelable:!0},menuitem:{keys:[],optional:["aria-haspopup","aria-expanded","aria-current"],labelable:!0},treeitem:{keys:[],optional:["aria-level","aria-selected","aria-expanded","aria-checked"],labelable:!0},group:{labelable:!0},listbox:{labelable:!0},combobox:{keys:["aria-expanded"],optional:["aria-controls","aria-activedescendant"],labelable:!0},menu:{labelable:!0},tablist:{labelable:!0},radiogroup:{labelable:!0},toolbar:{labelable:!0},navigation:{labelable:!0},menubar:{labelable:!0},tabpanel:{optional:["aria-labelledby"],labelable:!0},img:{labelable:!0},article:{labelable:!0},status:{labelable:!0},alert:{labelable:!0},button:{labelable:!0},link:{labelable:!0},separator:{},tooltip:{},tree:{labelable:!0},list:{labelable:!0}};function Hr(n,e={}){let t=ho[n],o={role:n};t?.fixed&&Object.assign(o,t.fixed);let r=[...t?.keys??[],...t?.optional??[]];if(r.length)for(let i of r){let a=e.values?.[i];a!==void 0&&(o[i]=a)}let s=e.labelledBy??e.label;return t?.labelable&&s!==void 0&&(e.labelledBy!==void 0?o["aria-labelledby"]=e.labelledBy:o["aria-label"]=e.label),e.describedBy!==void 0&&(o["aria-describedby"]=e.describedBy),o}function Lr(n){return(e,t)=>r=>{let s={},i=[n.class];for(let[l,d]of Object.entries(n.enumStates??{})){let u=r[l];u!=null&&(d===null?i.push(`${n.class}--${String(u)}`):i.push(d[String(u)]??`${n.class}--${String(u)}`))}for(let[l,d]of Object.entries(n.boolStates??{}))r[l]&&i.push(d);let a=r.class;a&&i.push(a),s.class=i.join(" ");for(let[l,d]of Object.entries(n.ariaBools??{}))r[l]&&(s[d]=!0);return n.role&&(s.role=n.role),n.render?n.render(s,r,t):H(n.tag??"div",s,r.children)}}function Dr(n,e,t){let o=new AbortController,r=t?.signal;r&&(r.aborted?o.abort():r.addEventListener("abort",()=>o.abort(),{once:!0}));let s=t?.traceId??Wr(),i=t?.record!==!1,a=[],l=(async()=>{let d;try{d=await fetch(n,{method:"POST",headers:{"Content-Type":"application/json","X-Trace-Id":s,Accept:"text/event-stream",...t?.headers},body:JSON.stringify(e),signal:o.signal})}catch(u){if(o.signal.aborted)return;t?.onError?.({code:"provider_error",message:u instanceof Error?u.message:String(u)});return}if(!d.ok){t?.onError?.({code:_r(d.status),message:`HTTP ${d.status} ${d.statusText}`});return}try{for await(let{name:u,data:c}of Fr(d.body)){if(o.signal.aborted)return;Ur(a,{name:u,data:c},i),$r(u,c,t??{})}}catch(u){if(o.signal.aborted)return;t?.onError?.({code:"provider_error",message:u instanceof Error?u.message:String(u)})}})();return{abort:()=>o.abort(),done:l,traceId:s,events:a}}function $r(n,e,t){switch(n){case"wf:token":return t.onToken?.(e.text);case"wf:tool_call":return t.onToolCall?.(e);case"wf:tool_result":return t.onToolResult?.(e);case"wf:tool_progress":return t.onToolProgress?.(e);case"wf:step":return t.onStep?.(e);case"wf:approval_request":return t.onApproval?.(e);case"wf:usage":return t.onUsage?.(e);case"wf:done":return t.onDone?.(e);case"wf:error":return t.onError?.(e);default:return t.onEvent?.(n,e)}}async function*Fr(n){let e=n.getReader(),t=new TextDecoder,o="";try{for(;;){let{done:r,value:s}=await e.read();if(r)break;o+=t.decode(s,{stream:!0});let i=o.split(`
3
3
 
4
4
  `);o=i.pop()??"";for(let a of i){let l="message",d="";for(let u of a.split(`
5
- `))u.startsWith("event: ")?l=u.slice(7):u.startsWith("data: ")&&(d+=u.slice(6));if(d)try{yield{name:l,data:JSON.parse(d)}}catch{}}}}finally{e.releaseLock()}}function Dr(n,e,t){t&&(n.length>=500&&n.shift(),n.push(e))}function Fr(n){return n===401||n===403?"auth_failed":n===429?"rate_limited":n>=500?"provider_error":"invalid_request"}function Ur(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():`trace-${Date.now()}-${Math.random().toString(36).slice(2,10)}`}export{de as CommandApplier,on as Fragment,gt as UIRouter,Hr as aiStream,kr as api,Er as auth,bo as collectCommands,bt as createClientBrowser,Ar as createComponent,ee as createComponentRegistry,Ir as createItem,Jt as createRenderScheduler,It as createSegment,Rt as createSignal,pn as createStore,Vo as derived,Vr as diffStream,xe as diffV2,z as disposeSegment,H as h,Sr as i18n,Mr as injectCommands,ct as jsx,To as jsxDEV,wo as jsxs,$ as keyOf,Q as keyedId,dt as normalizeClass,st as renderToStream,st as renderToStreamV2,ge as renderV2,vo as toast,uo as uiServe,uo as uiServeV2,zt as useField,Kt as useOverlay,Bt as useSignal,Pr as v2ToHtml,Or as ws};
5
+ `))u.startsWith("event: ")?l=u.slice(7):u.startsWith("data: ")&&(d+=u.slice(6));if(d)try{yield{name:l,data:JSON.parse(d)}}catch{}}}}finally{e.releaseLock()}}function Ur(n,e,t){t&&(n.length>=500&&n.shift(),n.push(e))}function _r(n){return n===401||n===403?"auth_failed":n===429?"rate_limited":n>=500?"provider_error":"invalid_request"}function Wr(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():`trace-${Date.now()}-${Math.random().toString(36).slice(2,10)}`}export{de as CommandApplier,on as Fragment,ho as ROLE_SEMANTICS,bt as UIRouter,Dr as aiStream,Sr as api,Er as auth,vo as collectCommands,ht as createClientBrowser,Lr as createComponent,ee as createComponentRegistry,Ar as createItem,Jt as createRenderScheduler,Lt as createSegment,Vt as createSignal,pn as createStore,Mo as derived,Mr as diffStream,xe as diffV2,z as disposeSegment,H as h,Or as i18n,Pr as injectCommands,pt as jsx,Co as jsxDEV,To as jsxs,D as keyOf,Q as keyedId,ft as normalizeClass,at as renderToStream,at as renderToStreamV2,ge as renderV2,Hr as semantic,bo as toast,uo as uiServe,uo as uiServeV2,zt as useField,Kt as useOverlay,jt as useSignal,Ir as v2ToHtml,Rr as ws};
@@ -1 +1 @@
1
- function r(n){return n==null?null:typeof n=="string"?n:typeof n=="number"?String(n):(console.warn(`[vdom] key \u5FC5\u987B\u662F string|number\u2014\u2014\u5F53\u524D ${typeof n}\uFF08\u5FFD\u7565\u2014\u2014\u4F4D\u7F6E\u8EAB\u4EFD\uFF09`),null)}function i(n){return r(n?.key)}function s(n){let e={...n??{}};return delete e.key,e}function u(n){if(!(n==null||n===!1)){if(typeof n=="string")return n.trim()||void 0;if(typeof n=="number")return String(n);if(Array.isArray(n)){let e=n.map(u).filter(t=>!!t);return e.length?e.join(" "):void 0}if(typeof n=="object"){let e=Object.entries(n).filter(([,t])=>!!t).map(([t])=>t);return e.length?e.join(" "):void 0}}}function p(n){for(let e of["class","className"]){let t=n[e];t!=null&&typeof t!="string"&&(n[e]=u(t))}return n}function o(n,e,t){return{type:n,props:s(p(e??{})),key:r(t)??i(e)}}var d=o,f=o;var l=Symbol("vdom-fragment");export{l as Fragment,o as jsx,f as jsxDEV,d as jsxs};
1
+ function r(n){return n==null?null:typeof n=="string"?n:typeof n=="number"?String(n):(console.warn(`[vdom] key \u5FC5\u987B\u662F string|number\u2014\u2014\u5F53\u524D ${typeof n}\uFF08\u5FFD\u7565\u2014\u2014\u4F4D\u7F6E\u8EAB\u4EFD\uFF09`),null)}function i(n){return r(n?.key)}function s(n){let e={...n??{}};return delete e.key,e}function l(n){if(!(n==null||n===!1)){if(typeof n=="string")return n.trim()||void 0;if(typeof n=="number")return String(n);if(Array.isArray(n)){let e=n.map(l).filter(t=>!!t);return e.length?e.join(" "):void 0}if(typeof n=="object"){let e=Object.entries(n).filter(([,t])=>!!t).map(([t])=>t);return e.length?e.join(" "):void 0}}}function p(n){for(let e of["class","className"]){let t=n[e];t!=null&&typeof t!="string"&&(n[e]=l(t))}return n}function o(n,e,t){return{type:n,props:s(p(e??{})),key:r(t)??i(e)}}var d=o,f=o;var u=Symbol("vdom-fragment");export{u as Fragment,o as jsx,f as jsxDEV,d as jsxs};