machinaos 0.0.78 → 0.0.80

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 (743) hide show
  1. package/.env.template +74 -5
  2. package/{workflows/AI Assistant_workflow-1778504793388-ou1m1tz2x.json → .machina/workflows/AI Assistant_example_workflow-1779017037684-e2e5da7a.json } +164 -105
  3. package/{workflows/AI Employee_example_workflow-1777720598005-u4cm858dv.json → .machina/workflows/AI Employee_example_workflow-1779102911870-cbc76c82.json } +582 -328
  4. package/{workflows/Claude Assistant_workflow-1778380124051-mdibn807c.json → .machina/workflows/Claude Assistant_example_workflow-1779095939967-2369cff4.json } +152 -83
  5. package/README.md +5 -2
  6. package/bin/cli.js +2 -2
  7. package/{machina → cli}/__main__.py +11 -7
  8. package/cli/_common.py +122 -0
  9. package/cli/buildenv.py +40 -0
  10. package/cli/cli.py +204 -0
  11. package/{machina → cli}/colors.py +10 -2
  12. package/cli/commands/__init__.py +1 -0
  13. package/cli/commands/_temporal_specs.py +59 -0
  14. package/{machina → cli}/commands/build.py +35 -45
  15. package/cli/commands/clean.py +141 -0
  16. package/cli/commands/daemon/__init__.py +47 -0
  17. package/cli/commands/daemon/_state.py +97 -0
  18. package/cli/commands/daemon/restart.py +14 -0
  19. package/cli/commands/daemon/start.py +49 -0
  20. package/cli/commands/daemon/status.py +20 -0
  21. package/cli/commands/daemon/stop.py +22 -0
  22. package/{machina → cli}/commands/dev.py +32 -42
  23. package/{machina → cli}/commands/docs.py +13 -11
  24. package/{machina → cli}/commands/start.py +69 -62
  25. package/{machina → cli}/commands/stop.py +7 -10
  26. package/{machina → cli}/commands/version.py +12 -6
  27. package/cli/config.py +170 -0
  28. package/cli/platform_.py +169 -0
  29. package/{machina → cli}/ports.py +42 -3
  30. package/{machina → cli}/run.py +29 -2
  31. package/{machina → cli}/supervisor.py +29 -12
  32. package/{machina → cli}/tcp.py +6 -2
  33. package/{machina → cli}/tree.py +38 -11
  34. package/client/dist/assets/{ActionBar-Du2MSFSz.js → ActionBar-Cjr3TF7g.js} +1 -1
  35. package/client/dist/assets/{ApiKeyInput-k2LBmBjb.js → ApiKeyInput-DIJE2PVA.js} +1 -1
  36. package/client/dist/assets/{ApiKeyPanel-C_bV9U0X.js → ApiKeyPanel-CPmye7uh.js} +1 -1
  37. package/client/dist/assets/{ApiUsageSection-CmVfwZzL.js → ApiUsageSection-TF_7gH2D.js} +1 -1
  38. package/client/dist/assets/{EmailPanel-CeKIMGu-.js → EmailPanel-Bs-xvbKR.js} +1 -1
  39. package/client/dist/assets/{OAuthPanel-KA3t3Q2K.js → OAuthPanel-BDtVJhAV.js} +1 -1
  40. package/client/dist/assets/{QrPairingPanel-NgNpJNuk.js → QrPairingPanel-BwJehTuZ.js} +1 -1
  41. package/client/dist/assets/{RateLimitSection-Du5YNVIA.js → RateLimitSection-CfNOoPIS.js} +1 -1
  42. package/client/dist/assets/{StatusCard-DNLyayXc.js → StatusCard-DkwIrgdP.js} +1 -1
  43. package/client/dist/assets/index-P2FzntoL.js +165 -0
  44. package/client/dist/index.html +1 -1
  45. package/client/package.json +1 -1
  46. package/client/src/Dashboard.tsx +128 -76
  47. package/client/src/adapters/nodeSpecToDescription.ts +7 -0
  48. package/client/src/assets/icons/index.test.ts +10 -0
  49. package/client/src/assets/icons/index.ts +16 -3
  50. package/client/src/components/AIAgentNode.tsx +8 -8
  51. package/client/src/components/ParameterRenderer.tsx +6 -3
  52. package/client/src/components/SkillEditorModal.tsx +1 -0
  53. package/client/src/components/credentials/panels/EmailPanel.tsx +2 -0
  54. package/client/src/components/credentials/sections/ProviderDefaultsSection.tsx +2 -0
  55. package/client/src/components/credentials/sections/RateLimitSection.tsx +1 -0
  56. package/client/src/components/icons/AIProviderIcons.tsx +1 -0
  57. package/client/src/components/maps/GoogleMapsPicker.tsx +1 -0
  58. package/client/src/components/parameterPanel/InputSection.tsx +1 -0
  59. package/client/src/components/parameterPanel/MasterSkillEditor.tsx +1 -0
  60. package/client/src/components/parameterPanel/OutputSection.tsx +1 -0
  61. package/client/src/components/ui/ComponentPalette.tsx +1 -0
  62. package/client/src/components/ui/MapSelector.tsx +1 -0
  63. package/client/src/components/ui/NodeContextMenu.tsx +3 -3
  64. package/client/src/components/ui/SettingsPanel.tsx +1 -0
  65. package/client/src/components/ui/action-button.tsx +1 -0
  66. package/client/src/components/ui/badge.tsx +1 -0
  67. package/client/src/components/ui/button.tsx +1 -0
  68. package/client/src/components/ui/form.tsx +1 -0
  69. package/client/src/components/ui/tabs.tsx +1 -0
  70. package/client/src/contexts/AuthContext.tsx +1 -0
  71. package/client/src/contexts/ThemeContext.tsx +1 -0
  72. package/client/src/contexts/WebSocketContext.tsx +104 -34
  73. package/client/src/hooks/__tests__/useApiKeys.test.ts +2 -2
  74. package/client/src/hooks/useReactFlowNodes.ts +1 -0
  75. package/client/src/hooks/useWorkflowValidation.ts +142 -0
  76. package/client/src/lib/nodeSpec.ts +1 -0
  77. package/client/src/test/providers.tsx +1 -0
  78. package/client/src/types/__tests__/cloudEvents.test.ts +5 -2
  79. package/client/src/types/cloudEvents.ts +19 -7
  80. package/client/src/utils/nodeUtils.ts +1 -1
  81. package/client/src/utils/workflow.ts +8 -2
  82. package/client/src/utils/workflowExport.ts +60 -3
  83. package/package.json +24 -23
  84. package/scripts/install.js +16 -27
  85. package/scripts/migrate_icons.py +3 -1
  86. package/scripts/migrate_skill_icons.py +6 -7
  87. package/scripts/postinstall.js +11 -9
  88. package/server/config/ai_cli_providers.json +2 -3
  89. package/server/config/credential_providers.json +15 -15
  90. package/server/config/llm_defaults.json +1 -1
  91. package/server/config/model_registry.json +416 -611
  92. package/server/constants.py +285 -223
  93. package/server/core/__init__.py +1 -1
  94. package/server/core/cache.py +9 -29
  95. package/server/core/cleanup.py +12 -24
  96. package/server/core/config.py +148 -24
  97. package/server/core/container.py +68 -59
  98. package/server/core/credential_backends.py +5 -13
  99. package/server/core/credentials_database.py +13 -43
  100. package/server/core/database.py +292 -353
  101. package/server/core/health.py +4 -5
  102. package/server/core/logging.py +241 -87
  103. package/server/core/paths.py +285 -0
  104. package/server/core/tracing.py +2 -8
  105. package/server/gunicorn.conf.py +1 -0
  106. package/server/main.py +150 -74
  107. package/server/middleware/auth.py +18 -24
  108. package/server/models/__init__.py +1 -1
  109. package/server/models/auth.py +5 -12
  110. package/server/models/database.py +36 -68
  111. package/server/models/node_metadata.py +25 -18
  112. package/server/nodejs/dist/index.js +107 -0
  113. package/server/nodes/README.md +11 -5
  114. package/server/nodes/__init__.py +1 -1
  115. package/server/nodes/_visuals.py +146 -14
  116. package/server/nodes/agent/_events.py +124 -0
  117. package/server/nodes/agent/_handles.py +15 -29
  118. package/server/nodes/agent/_inline.py +28 -25
  119. package/server/nodes/agent/_specialized.py +30 -15
  120. package/server/nodes/agent/{ai_agent.py → ai_agent/__init__.py} +33 -17
  121. package/server/nodes/agent/ai_agent/meta.json +3 -0
  122. package/server/nodes/agent/{ai_employee.py → ai_employee/__init__.py} +5 -2
  123. package/server/nodes/agent/ai_employee/meta.json +3 -0
  124. package/server/nodes/agent/{android_agent.py → android_agent/__init__.py} +1 -1
  125. package/server/nodes/agent/android_agent/meta.json +3 -0
  126. package/server/nodes/agent/{autonomous_agent.py → autonomous_agent/__init__.py} +2 -1
  127. package/server/nodes/agent/autonomous_agent/meta.json +3 -0
  128. package/server/nodes/agent/{chat_agent.py → chat_agent/__init__.py} +29 -12
  129. package/server/nodes/agent/chat_agent/meta.json +3 -0
  130. package/server/nodes/agent/{claude_code_agent.py → claude_code_agent/__init__.py} +192 -95
  131. package/server/nodes/agent/claude_code_agent/_handlers.py +169 -0
  132. package/server/{services/claude_oauth.py → nodes/agent/claude_code_agent/_oauth.py} +26 -13
  133. package/server/nodes/agent/claude_code_agent/_pool.py +1020 -0
  134. package/server/nodes/agent/claude_code_agent/_provider.py +513 -0
  135. package/server/nodes/agent/claude_code_agent/_skills.py +245 -0
  136. package/server/nodes/agent/claude_code_agent/meta.json +3 -0
  137. package/server/nodes/agent/{codex_agent.py → codex_agent/__init__.py} +26 -35
  138. package/server/nodes/agent/codex_agent/meta.json +3 -0
  139. package/server/nodes/agent/{coding_agent.py → coding_agent/__init__.py} +1 -1
  140. package/server/nodes/agent/coding_agent/meta.json +3 -0
  141. package/server/nodes/agent/{consumer_agent.py → consumer_agent/__init__.py} +1 -1
  142. package/server/nodes/agent/consumer_agent/meta.json +3 -0
  143. package/server/nodes/agent/{orchestrator_agent.py → orchestrator_agent/__init__.py} +5 -2
  144. package/server/nodes/agent/orchestrator_agent/meta.json +3 -0
  145. package/server/nodes/agent/{payments_agent.py → payments_agent/__init__.py} +1 -1
  146. package/server/nodes/agent/payments_agent/meta.json +3 -0
  147. package/server/nodes/agent/{productivity_agent.py → productivity_agent/__init__.py} +1 -1
  148. package/server/nodes/agent/productivity_agent/meta.json +3 -0
  149. package/server/nodes/agent/{rlm_agent.py → rlm_agent/__init__.py} +18 -17
  150. package/server/nodes/agent/rlm_agent/meta.json +3 -0
  151. package/server/nodes/agent/{social_agent.py → social_agent/__init__.py} +1 -1
  152. package/server/nodes/agent/social_agent/meta.json +3 -0
  153. package/server/nodes/agent/{task_agent.py → task_agent/__init__.py} +1 -1
  154. package/server/nodes/agent/task_agent/meta.json +3 -0
  155. package/server/nodes/agent/{tool_agent.py → tool_agent/__init__.py} +1 -1
  156. package/server/nodes/agent/tool_agent/meta.json +3 -0
  157. package/server/nodes/agent/{travel_agent.py → travel_agent/__init__.py} +1 -1
  158. package/server/nodes/agent/travel_agent/meta.json +3 -0
  159. package/server/nodes/agent/{web_agent.py → web_agent/__init__.py} +1 -1
  160. package/server/nodes/agent/web_agent/meta.json +3 -0
  161. package/server/nodes/android/__init__.py +24 -0
  162. package/server/nodes/android/_base.py +93 -76
  163. package/server/nodes/android/_dispatcher.py +140 -223
  164. package/server/nodes/android/_events.py +154 -0
  165. package/server/nodes/android/_handlers.py +13 -7
  166. package/server/nodes/android/_option_loaders.py +1 -4
  167. package/server/nodes/android/_refresh.py +27 -37
  168. package/server/nodes/android/_relay/broadcaster.py +25 -41
  169. package/server/nodes/android/_relay/client.py +23 -42
  170. package/server/nodes/android/_relay/manager.py +1 -0
  171. package/server/nodes/android/_relay/protocol.py +6 -0
  172. package/server/nodes/android/_router.py +48 -133
  173. package/server/nodes/android/{airplane_mode_control.py → airplane_mode_control/__init__.py} +2 -1
  174. package/server/nodes/android/airplane_mode_control/meta.json +3 -0
  175. package/server/nodes/android/{app_launcher.py → app_launcher/__init__.py} +2 -1
  176. package/server/nodes/android/app_launcher/meta.json +3 -0
  177. package/server/nodes/android/{app_list.py → app_list/__init__.py} +2 -1
  178. package/server/nodes/android/app_list/meta.json +3 -0
  179. package/server/nodes/android/{audio_automation.py → audio_automation/__init__.py} +2 -1
  180. package/server/nodes/android/audio_automation/meta.json +3 -0
  181. package/server/nodes/android/{battery_monitor.py → battery_monitor/__init__.py} +2 -1
  182. package/server/nodes/android/battery_monitor/meta.json +3 -0
  183. package/server/nodes/android/{bluetooth_automation.py → bluetooth_automation/__init__.py} +2 -1
  184. package/server/nodes/android/bluetooth_automation/meta.json +3 -0
  185. package/server/nodes/android/{camera_control.py → camera_control/__init__.py} +2 -1
  186. package/server/nodes/android/camera_control/meta.json +3 -0
  187. package/server/nodes/android/{device_state_automation.py → device_state_automation/__init__.py} +2 -1
  188. package/server/nodes/android/device_state_automation/meta.json +3 -0
  189. package/server/nodes/android/{environmental_sensors.py → environmental_sensors/__init__.py} +2 -1
  190. package/server/nodes/android/environmental_sensors/meta.json +3 -0
  191. package/server/nodes/android/{location.py → location/__init__.py} +2 -1
  192. package/server/nodes/android/location/meta.json +3 -0
  193. package/server/nodes/android/{media_control.py → media_control/__init__.py} +2 -1
  194. package/server/nodes/android/media_control/meta.json +3 -0
  195. package/server/nodes/android/{motion_detection.py → motion_detection/__init__.py} +2 -1
  196. package/server/nodes/android/motion_detection/meta.json +3 -0
  197. package/server/nodes/android/{network_monitor.py → network_monitor/__init__.py} +2 -1
  198. package/server/nodes/android/network_monitor/meta.json +3 -0
  199. package/server/nodes/android/{screen_control_automation.py → screen_control_automation/__init__.py} +2 -1
  200. package/server/nodes/android/screen_control_automation/meta.json +3 -0
  201. package/server/nodes/android/{system_info.py → system_info/__init__.py} +2 -1
  202. package/server/nodes/android/system_info/meta.json +3 -0
  203. package/server/nodes/android/{wifi_automation.py → wifi_automation/__init__.py} +2 -1
  204. package/server/nodes/android/wifi_automation/meta.json +3 -0
  205. package/server/nodes/browser/__init__.py +22 -1
  206. package/server/nodes/browser/_install.py +63 -0
  207. package/server/nodes/browser/_service.py +21 -25
  208. package/server/nodes/browser/{browser.py → browser/__init__.py} +58 -25
  209. package/server/nodes/browser/browser/meta.json +3 -0
  210. package/server/nodes/chat/{chat_history.py → chat_history/__init__.py} +2 -4
  211. package/server/nodes/chat/chat_history/meta.json +3 -0
  212. package/server/nodes/chat/{chat_send.py → chat_send/__init__.py} +2 -4
  213. package/server/nodes/chat/chat_send/icon.svg +1 -0
  214. package/server/nodes/chat/chat_send/meta.json +3 -0
  215. package/server/nodes/code/_base.py +1 -1
  216. package/server/nodes/code/{javascript_executor.py → javascript_executor/__init__.py} +5 -5
  217. package/server/nodes/code/javascript_executor/meta.json +3 -0
  218. package/server/nodes/code/{python_executor.py → python_executor/__init__.py} +32 -14
  219. package/server/nodes/code/python_executor/meta.json +3 -0
  220. package/server/nodes/code/{typescript_executor.py → typescript_executor/__init__.py} +5 -5
  221. package/server/nodes/code/typescript_executor/meta.json +3 -0
  222. package/server/nodes/document/{document_parser.py → document_parser/__init__.py} +26 -15
  223. package/server/nodes/document/document_parser/meta.json +3 -0
  224. package/server/nodes/document/{embedding_generator.py → embedding_generator/__init__.py} +16 -9
  225. package/server/nodes/document/embedding_generator/meta.json +3 -0
  226. package/server/nodes/document/{file_downloader.py → file_downloader/__init__.py} +30 -20
  227. package/server/nodes/document/file_downloader/meta.json +3 -0
  228. package/server/nodes/document/{http_scraper.py → http_scraper/__init__.py} +31 -21
  229. package/server/nodes/document/http_scraper/meta.json +3 -0
  230. package/server/nodes/document/{text_chunker.py → text_chunker/__init__.py} +17 -12
  231. package/server/nodes/document/text_chunker/meta.json +3 -0
  232. package/server/nodes/document/{vector_store.py → vector_store/__init__.py} +88 -72
  233. package/server/nodes/document/vector_store/meta.json +3 -0
  234. package/server/nodes/email/__init__.py +9 -2
  235. package/server/nodes/email/_events.py +54 -0
  236. package/server/nodes/email/_filters.py +3 -3
  237. package/server/nodes/email/_himalaya.py +95 -50
  238. package/server/nodes/email/_service.py +23 -13
  239. package/server/nodes/email/{email_read.py → email_read/__init__.py} +23 -11
  240. package/server/nodes/email/email_read/icon.svg +6 -0
  241. package/server/nodes/email/email_read/meta.json +3 -0
  242. package/server/nodes/email/{email_receive.py → email_receive/__init__.py} +45 -23
  243. package/server/nodes/email/email_receive/meta.json +3 -0
  244. package/server/nodes/email/{email_send.py → email_send/__init__.py} +13 -7
  245. package/server/nodes/email/email_send/meta.json +3 -0
  246. package/server/nodes/filesystem/_backend.py +1 -5
  247. package/server/nodes/filesystem/{file_modify.py → file_modify/__init__.py} +10 -5
  248. package/server/nodes/filesystem/file_modify/meta.json +3 -0
  249. package/server/nodes/filesystem/{file_read.py → file_read/__init__.py} +7 -3
  250. package/server/nodes/filesystem/file_read/meta.json +3 -0
  251. package/server/nodes/filesystem/{fs_search.py → fs_search/__init__.py} +11 -3
  252. package/server/nodes/filesystem/fs_search/meta.json +3 -0
  253. package/server/nodes/filesystem/{shell.py → shell/__init__.py} +12 -5
  254. package/server/nodes/filesystem/shell/meta.json +3 -0
  255. package/server/nodes/google/__init__.py +12 -0
  256. package/server/nodes/google/_auth_helper.py +7 -13
  257. package/server/nodes/google/_base.py +14 -11
  258. package/server/nodes/google/_credentials.py +2 -1
  259. package/server/nodes/google/_events.py +47 -0
  260. package/server/nodes/google/_filters.py +3 -3
  261. package/server/nodes/google/_gmail.py +70 -47
  262. package/server/nodes/google/_handlers.py +3 -1
  263. package/server/nodes/google/_oauth.py +25 -11
  264. package/server/nodes/google/_option_loaders.py +9 -30
  265. package/server/nodes/google/_refresh.py +8 -12
  266. package/server/nodes/google/_router.py +4 -5
  267. package/server/nodes/google/{calendar.py → calendar/__init__.py} +87 -64
  268. package/server/nodes/google/calendar/meta.json +3 -0
  269. package/server/nodes/google/{contacts.py → contacts/__init__.py} +84 -72
  270. package/server/nodes/google/contacts/meta.json +3 -0
  271. package/server/nodes/google/{drive.py → drive/__init__.py} +87 -72
  272. package/server/nodes/google/drive/meta.json +3 -0
  273. package/server/nodes/google/{gmail.py → gmail/__init__.py} +73 -39
  274. package/server/nodes/google/gmail/meta.json +3 -0
  275. package/server/nodes/google/{gmail_receive.py → gmail_receive/__init__.py} +31 -24
  276. package/server/nodes/google/gmail_receive/icon.svg +7 -0
  277. package/server/nodes/google/gmail_receive/meta.json +3 -0
  278. package/server/nodes/google/google.svg +7 -0
  279. package/server/nodes/google/{sheets.py → sheets/__init__.py} +54 -42
  280. package/server/nodes/google/sheets/meta.json +3 -0
  281. package/server/nodes/google/{tasks.py → tasks/__init__.py} +56 -43
  282. package/server/nodes/google/tasks/meta.json +3 -0
  283. package/server/nodes/groups.py +28 -28
  284. package/server/nodes/location/__init__.py +31 -1
  285. package/server/nodes/location/_credentials.py +1 -6
  286. package/server/nodes/location/_service.py +88 -107
  287. package/server/nodes/location/{gmaps_create.py → gmaps_create/__init__.py} +6 -6
  288. package/server/nodes/location/gmaps_create/meta.json +3 -0
  289. package/server/nodes/location/{gmaps_locations.py → gmaps_locations/__init__.py} +8 -6
  290. package/server/nodes/location/gmaps_locations/meta.json +3 -0
  291. package/server/nodes/location/{gmaps_nearby_places.py → gmaps_nearby_places/__init__.py} +8 -6
  292. package/server/nodes/location/gmaps_nearby_places/meta.json +3 -0
  293. package/server/nodes/model/_base.py +10 -7
  294. package/server/nodes/model/_credentials.py +10 -10
  295. package/server/nodes/model/_local_validator.py +28 -24
  296. package/server/nodes/model/{anthropic_chat_model.py → anthropic_chat_model/__init__.py} +5 -3
  297. package/server/nodes/model/anthropic_chat_model/meta.json +3 -0
  298. package/server/nodes/model/{cerebras_chat_model.py → cerebras_chat_model/__init__.py} +5 -3
  299. package/server/nodes/model/cerebras_chat_model/meta.json +3 -0
  300. package/server/nodes/model/{deepseek_chat_model.py → deepseek_chat_model/__init__.py} +8 -4
  301. package/server/nodes/model/deepseek_chat_model/meta.json +3 -0
  302. package/server/nodes/model/{gemini_chat_model.py → gemini_chat_model/__init__.py} +5 -3
  303. package/server/nodes/model/gemini_chat_model/meta.json +3 -0
  304. package/server/nodes/model/{groq_chat_model.py → groq_chat_model/__init__.py} +2 -2
  305. package/server/nodes/model/groq_chat_model/meta.json +3 -0
  306. package/server/nodes/model/{kimi_chat_model.py → kimi_chat_model/__init__.py} +2 -2
  307. package/server/nodes/model/kimi_chat_model/meta.json +3 -0
  308. package/server/nodes/model/{lmstudio_chat_model.py → lmstudio_chat_model/__init__.py} +2 -2
  309. package/server/nodes/model/lmstudio_chat_model/meta.json +3 -0
  310. package/server/nodes/model/{mistral_chat_model.py → mistral_chat_model/__init__.py} +2 -2
  311. package/server/nodes/model/mistral_chat_model/meta.json +3 -0
  312. package/server/nodes/model/{ollama_chat_model.py → ollama_chat_model/__init__.py} +2 -2
  313. package/server/nodes/model/ollama_chat_model/meta.json +3 -0
  314. package/server/nodes/model/{openai_chat_model.py → openai_chat_model/__init__.py} +8 -4
  315. package/server/nodes/model/openai_chat_model/meta.json +3 -0
  316. package/server/nodes/model/{openrouter_chat_model.py → openrouter_chat_model/__init__.py} +8 -4
  317. package/server/nodes/model/openrouter_chat_model/meta.json +3 -0
  318. package/server/nodes/proxy/_usage.py +14 -15
  319. package/server/nodes/proxy/{proxy_config.py → proxy_config/__init__.py} +39 -30
  320. package/server/nodes/proxy/proxy_config/meta.json +3 -0
  321. package/server/nodes/proxy/{proxy_request.py → proxy_request/__init__.py} +30 -16
  322. package/server/nodes/proxy/proxy_request/meta.json +3 -0
  323. package/server/nodes/proxy/{proxy_status.py → proxy_status/__init__.py} +2 -0
  324. package/server/nodes/proxy/proxy_status/meta.json +3 -0
  325. package/server/nodes/scheduler/{cron_scheduler.py → cron_scheduler/__init__.py} +96 -23
  326. package/server/nodes/scheduler/cron_scheduler/_workflow.py +155 -0
  327. package/server/nodes/scheduler/cron_scheduler/meta.json +3 -0
  328. package/server/nodes/scheduler/{timer.py → timer/__init__.py} +6 -5
  329. package/server/nodes/scheduler/timer/meta.json +3 -0
  330. package/server/nodes/scraper/_credentials.py +0 -1
  331. package/server/nodes/scraper/{apify_actor.py → apify_actor/__init__.py} +44 -35
  332. package/server/nodes/scraper/apify_actor/icon.svg +5 -0
  333. package/server/nodes/scraper/apify_actor/meta.json +3 -0
  334. package/server/nodes/scraper/{crawlee_scraper.py → crawlee_scraper/__init__.py} +96 -57
  335. package/server/nodes/scraper/crawlee_scraper/meta.json +3 -0
  336. package/server/nodes/search/{brave_search.py → brave_search/__init__.py} +6 -5
  337. package/server/nodes/search/brave_search/icon.svg +3 -0
  338. package/server/nodes/search/brave_search/meta.json +3 -0
  339. package/server/nodes/search/{duckduckgo_search.py → duckduckgo_search/__init__.py} +17 -6
  340. package/server/nodes/search/duckduckgo_search/meta.json +3 -0
  341. package/server/nodes/search/{perplexity_search.py → perplexity_search/__init__.py} +4 -5
  342. package/server/nodes/search/perplexity_search/icon.svg +3 -0
  343. package/server/nodes/search/perplexity_search/meta.json +3 -0
  344. package/server/nodes/search/{serper_search.py → serper_search/__init__.py} +32 -25
  345. package/server/nodes/search/serper_search/icon.svg +3 -0
  346. package/server/nodes/search/serper_search/meta.json +3 -0
  347. package/server/nodes/skill/__init__.py +21 -1
  348. package/server/nodes/skill/_expander.py +75 -0
  349. package/server/nodes/skill/{master_skill.py → master_skill/__init__.py} +2 -8
  350. package/server/nodes/skill/master_skill/_events.py +84 -0
  351. package/server/nodes/skill/master_skill/meta.json +3 -0
  352. package/server/nodes/skill/{simple_memory.py → simple_memory/__init__.py} +8 -16
  353. package/server/nodes/skill/simple_memory/meta.json +3 -0
  354. package/server/nodes/social/_base.py +223 -231
  355. package/server/nodes/social/{social_receive.py → social_receive/__init__.py} +38 -13
  356. package/server/nodes/social/social_receive/meta.json +3 -0
  357. package/server/nodes/social/{social_send.py → social_send/__init__.py} +71 -29
  358. package/server/nodes/social/social_send/icon.svg +1 -0
  359. package/server/nodes/social/social_send/meta.json +3 -0
  360. package/server/nodes/stripe/__init__.py +7 -3
  361. package/server/nodes/stripe/_credentials.py +0 -1
  362. package/server/nodes/stripe/_handlers.py +18 -7
  363. package/server/nodes/stripe/_install.py +14 -15
  364. package/server/nodes/stripe/_source.py +5 -5
  365. package/server/nodes/stripe/icon.svg +1 -0
  366. package/server/nodes/stripe/meta.json +3 -0
  367. package/server/nodes/stripe/stripe_action.py +4 -4
  368. package/server/nodes/stripe/stripe_receive.py +6 -9
  369. package/server/nodes/telegram/__init__.py +13 -0
  370. package/server/nodes/telegram/_credentials.py +2 -7
  371. package/server/nodes/telegram/_events.py +167 -0
  372. package/server/nodes/telegram/_filters.py +3 -11
  373. package/server/nodes/telegram/_handlers.py +17 -7
  374. package/server/nodes/telegram/_refresh.py +24 -34
  375. package/server/nodes/telegram/_service.py +29 -45
  376. package/server/nodes/telegram/meta.json +3 -0
  377. package/server/nodes/telegram/telegram.svg +3 -0
  378. package/server/nodes/telegram/telegram_receive.py +38 -18
  379. package/server/nodes/telegram/telegram_send.py +21 -19
  380. package/server/nodes/text/{file_handler.py → file_handler/__init__.py} +7 -1
  381. package/server/nodes/text/file_handler/meta.json +3 -0
  382. package/server/nodes/text/{text_generator.py → text_generator/__init__.py} +2 -1
  383. package/server/nodes/text/text_generator/meta.json +3 -0
  384. package/server/nodes/tool/{agent_builder.py → agent_builder/__init__.py} +105 -100
  385. package/server/nodes/tool/agent_builder/_events.py +91 -0
  386. package/server/nodes/tool/agent_builder/meta.json +3 -0
  387. package/server/nodes/tool/{calculator_tool.py → calculator_tool/__init__.py} +19 -7
  388. package/server/nodes/tool/calculator_tool/meta.json +3 -0
  389. package/server/nodes/tool/{current_time_tool.py → current_time_tool/__init__.py} +6 -4
  390. package/server/nodes/tool/current_time_tool/meta.json +3 -0
  391. package/server/nodes/tool/{task_manager.py → task_manager/__init__.py} +17 -18
  392. package/server/nodes/tool/task_manager/meta.json +3 -0
  393. package/server/nodes/tool/{write_todos.py → write_todos/__init__.py} +20 -6
  394. package/server/nodes/tool/write_todos/meta.json +3 -0
  395. package/server/nodes/trigger/{chat_trigger.py → chat_trigger/__init__.py} +11 -7
  396. package/server/nodes/trigger/chat_trigger/_events.py +53 -0
  397. package/server/nodes/trigger/chat_trigger/meta.json +3 -0
  398. package/server/nodes/trigger/{task_trigger.py → task_trigger/__init__.py} +10 -7
  399. package/server/nodes/trigger/task_trigger/meta.json +3 -0
  400. package/server/nodes/trigger/{webhook_trigger.py → webhook_trigger/__init__.py} +10 -7
  401. package/server/nodes/trigger/webhook_trigger/_events.py +54 -0
  402. package/server/nodes/trigger/webhook_trigger/meta.json +3 -0
  403. package/server/nodes/twitter/__init__.py +7 -1
  404. package/server/nodes/twitter/_base.py +86 -61
  405. package/server/nodes/twitter/_credentials.py +7 -5
  406. package/server/nodes/twitter/_events.py +101 -0
  407. package/server/nodes/twitter/_filters.py +9 -9
  408. package/server/nodes/twitter/_handlers.py +3 -1
  409. package/server/nodes/twitter/_oauth.py +1 -2
  410. package/server/nodes/twitter/_refresh.py +8 -12
  411. package/server/nodes/twitter/{twitter_receive.py → twitter_receive/__init__.py} +7 -7
  412. package/server/nodes/twitter/twitter_receive/icon.svg +1 -0
  413. package/server/nodes/twitter/twitter_receive/meta.json +3 -0
  414. package/server/nodes/twitter/{twitter_search.py → twitter_search/__init__.py} +16 -11
  415. package/server/nodes/twitter/twitter_search/icon.svg +1 -0
  416. package/server/nodes/twitter/twitter_search/meta.json +3 -0
  417. package/server/nodes/twitter/{twitter_send.py → twitter_send/__init__.py} +60 -27
  418. package/server/nodes/twitter/twitter_send/icon.svg +1 -0
  419. package/server/nodes/twitter/twitter_send/meta.json +3 -0
  420. package/server/nodes/twitter/{twitter_user.py → twitter_user/__init__.py} +34 -19
  421. package/server/nodes/twitter/twitter_user/icon.svg +1 -0
  422. package/server/nodes/twitter/twitter_user/meta.json +3 -0
  423. package/server/nodes/utility/{console.py → console/__init__.py} +17 -22
  424. package/server/nodes/utility/console/meta.json +3 -0
  425. package/server/nodes/utility/{http_request.py → http_request/__init__.py} +9 -6
  426. package/server/nodes/utility/http_request/meta.json +3 -0
  427. package/server/nodes/utility/{process_manager.py → process_manager/__init__.py} +10 -6
  428. package/server/nodes/utility/process_manager/meta.json +3 -0
  429. package/server/nodes/utility/team_monitor/meta.json +3 -0
  430. package/server/nodes/utility/{webhook_response.py → webhook_response/__init__.py} +12 -7
  431. package/server/nodes/utility/webhook_response/meta.json +3 -0
  432. package/server/nodes/visuals.json +69 -251
  433. package/server/nodes/whatsapp/__init__.py +24 -0
  434. package/server/nodes/whatsapp/_base.py +283 -338
  435. package/server/nodes/whatsapp/_credentials.py +44 -0
  436. package/server/nodes/whatsapp/_events.py +277 -0
  437. package/server/nodes/whatsapp/_filters.py +36 -37
  438. package/server/nodes/whatsapp/_handlers.py +2 -0
  439. package/server/nodes/whatsapp/_option_loaders.py +1 -3
  440. package/server/nodes/whatsapp/_refresh.py +13 -18
  441. package/server/nodes/whatsapp/_runtime.py +9 -6
  442. package/server/nodes/whatsapp/_service.py +89 -152
  443. package/server/nodes/whatsapp/meta.json +3 -0
  444. package/server/nodes/whatsapp/whatsapp_db.py +116 -54
  445. package/server/nodes/whatsapp/whatsapp_receive.py +30 -13
  446. package/server/nodes/whatsapp/whatsapp_send.py +60 -37
  447. package/server/nodes/workflow/{start.py → start/__init__.py} +1 -4
  448. package/server/nodes/workflow/start/meta.json +3 -0
  449. package/server/package-lock.json +3 -3
  450. package/server/package.json +3 -0
  451. package/server/pyproject.toml +39 -10
  452. package/server/requirements.txt +3 -5
  453. package/server/routers/__init__.py +1 -1
  454. package/server/routers/auth.py +16 -56
  455. package/server/routers/database.py +27 -50
  456. package/server/routers/nodejs_compat.py +25 -87
  457. package/server/routers/schemas.py +66 -2
  458. package/server/routers/webhook.py +12 -12
  459. package/server/routers/websocket.py +312 -1716
  460. package/server/routers/workflow.py +28 -53
  461. package/server/scripts/smoke_test_skills.py +178 -0
  462. package/server/services/__init__.py +1 -1
  463. package/server/services/_supervisor/process.py +9 -3
  464. package/server/services/_supervisor/registry.py +3 -3
  465. package/server/services/_supervisor/util.py +1 -1
  466. package/server/services/agent_team.py +15 -43
  467. package/server/services/agent_teams/__init__.py +17 -0
  468. package/server/services/agent_teams/handlers.py +195 -0
  469. package/server/services/ai.py +853 -1108
  470. package/server/services/auth.py +10 -34
  471. package/server/services/chat_client.py +5 -34
  472. package/server/services/circuit_breaker.py +2 -6
  473. package/server/services/cli_agent/__init__.py +28 -4
  474. package/server/services/cli_agent/_cli_auth.py +61 -0
  475. package/server/services/cli_agent/_handlers.py +24 -183
  476. package/server/services/cli_agent/config.py +5 -8
  477. package/server/services/cli_agent/factory.py +168 -22
  478. package/server/services/cli_agent/jsonl_watcher.py +380 -0
  479. package/server/services/cli_agent/lockfile.py +9 -2
  480. package/server/services/cli_agent/mcp_server.py +110 -34
  481. package/server/services/cli_agent/protocol.py +37 -19
  482. package/server/services/cli_agent/providers/__init__.py +8 -4
  483. package/server/services/cli_agent/providers/google_gemini.py +11 -5
  484. package/server/services/cli_agent/providers/openai_codex.py +34 -34
  485. package/server/services/cli_agent/service.py +245 -83
  486. package/server/services/cli_agent/session.py +409 -229
  487. package/server/services/cli_agent/transports/__init__.py +47 -0
  488. package/server/services/cli_agent/transports/base.py +111 -0
  489. package/server/services/cli_agent/transports/posix.py +196 -0
  490. package/server/services/cli_agent/transports/windows.py +189 -0
  491. package/server/services/cli_agent/types.py +45 -18
  492. package/server/services/cli_agent/workflow_tools.py +28 -15
  493. package/server/services/compaction.py +68 -52
  494. package/server/services/credential_registry.py +6 -20
  495. package/server/services/credentials/__init__.py +18 -0
  496. package/server/services/credentials/handlers.py +196 -0
  497. package/server/services/deployment/__init__.py +12 -1
  498. package/server/services/deployment/canary_registry.py +137 -0
  499. package/server/services/deployment/handlers.py +382 -0
  500. package/server/services/deployment/manager.py +653 -163
  501. package/server/services/deployment/poll_registry.py +2 -6
  502. package/server/services/deployment/state.py +2 -0
  503. package/server/services/deployment/triggers.py +87 -93
  504. package/server/services/event_waiter.py +47 -54
  505. package/server/services/events/__init__.py +11 -0
  506. package/server/services/events/admin_handlers.py +368 -0
  507. package/server/services/events/daemon.py +3 -1
  508. package/server/services/events/dispatch.py +188 -0
  509. package/server/services/events/envelope.py +264 -45
  510. package/server/services/events/oauth_lifecycle.py +98 -42
  511. package/server/services/events/triggers.py +3 -13
  512. package/server/services/events/verifiers/hmac_basic.py +1 -1
  513. package/server/services/events/verifiers/standard_webhooks.py +2 -4
  514. package/server/services/events/webhook.py +2 -3
  515. package/server/services/example_loader.py +73 -15
  516. package/server/services/execution/cache.py +36 -76
  517. package/server/services/execution/conditions.py +7 -20
  518. package/server/services/execution/dlq.py +20 -24
  519. package/server/services/execution/executor.py +234 -265
  520. package/server/services/execution/models.py +40 -46
  521. package/server/services/execution/recovery.py +23 -46
  522. package/server/services/handlers/__init__.py +12 -16
  523. package/server/services/handlers/todo.py +3 -6
  524. package/server/services/handlers/tools.py +143 -194
  525. package/server/services/handlers/triggers.py +24 -23
  526. package/server/services/llm/config.py +10 -1
  527. package/server/services/llm/factory.py +16 -4
  528. package/server/services/llm/messages.py +1 -5
  529. package/server/services/llm/protocol.py +9 -1
  530. package/server/services/llm/providers/anthropic.py +23 -12
  531. package/server/services/llm/providers/gemini.py +43 -22
  532. package/server/services/llm/providers/openai.py +14 -6
  533. package/server/services/llm/providers/openrouter.py +6 -1
  534. package/server/services/markdown_formatter.py +1 -2
  535. package/server/services/memory/__init__.py +2 -2
  536. package/server/services/memory/jsonl.py +6 -2
  537. package/server/services/memory/markdown.py +6 -6
  538. package/server/services/memory/state.py +6 -5
  539. package/server/services/memory_store.py +8 -12
  540. package/server/services/model_registry.py +22 -20
  541. package/server/services/node_executor.py +85 -80
  542. package/server/services/node_output_schemas.py +4 -7
  543. package/server/services/node_registry.py +40 -4
  544. package/server/services/node_spec.py +3 -7
  545. package/server/services/nodejs_client.py +4 -14
  546. package/server/services/oauth_utils.py +11 -7
  547. package/server/services/parameter_resolver.py +30 -36
  548. package/server/services/plugin/base.py +321 -38
  549. package/server/services/plugin/connection.py +12 -7
  550. package/server/services/plugin/credential.py +80 -22
  551. package/server/services/plugin/edge_walker.py +128 -105
  552. package/server/services/plugin/identifiers.py +48 -0
  553. package/server/services/plugin/interceptor.py +1 -1
  554. package/server/services/plugin/oauth.py +25 -21
  555. package/server/services/plugin/operation.py +1 -1
  556. package/server/services/plugin/polling.py +151 -26
  557. package/server/services/plugin/registry.py +52 -4
  558. package/server/services/plugin/routing.py +6 -9
  559. package/server/services/plugin/scaling.py +36 -18
  560. package/server/services/plugin/service_factories.py +95 -0
  561. package/server/services/plugin/shutdown_hooks.py +103 -0
  562. package/server/services/plugin/social_provider_registry.py +80 -0
  563. package/server/services/plugin/ws.py +2 -1
  564. package/server/services/pricing.py +26 -40
  565. package/server/services/pricing_handlers.py +90 -0
  566. package/server/services/process_service.py +33 -32
  567. package/server/services/proxy/models.py +15 -9
  568. package/server/services/proxy/service.py +26 -40
  569. package/server/services/rlm/adapters.py +43 -40
  570. package/server/services/rlm/constants.py +9 -9
  571. package/server/services/rlm/service.py +57 -45
  572. package/server/services/scheduler.py +8 -39
  573. package/server/services/settings/__init__.py +16 -0
  574. package/server/services/settings/handlers.py +275 -0
  575. package/server/services/skill_loader.py +53 -45
  576. package/server/services/skill_prompt.py +8 -6
  577. package/server/services/skills/__init__.py +23 -0
  578. package/server/services/skills/handlers.py +479 -0
  579. package/server/services/status_broadcaster.py +314 -291
  580. package/server/services/temporal/__init__.py +22 -1
  581. package/server/services/temporal/_handlers.py +65 -0
  582. package/server/services/temporal/_install.py +158 -0
  583. package/server/services/temporal/_refresh.py +57 -0
  584. package/server/services/temporal/_retry_policies.py +85 -0
  585. package/server/services/temporal/_runtime.py +181 -0
  586. package/server/services/temporal/_supervised_runtime.py +102 -0
  587. package/server/services/temporal/activities.py +168 -11
  588. package/server/services/temporal/agent_activities.py +683 -0
  589. package/server/services/temporal/agent_workflow.py +601 -0
  590. package/server/services/temporal/client.py +58 -13
  591. package/server/services/temporal/executor.py +2 -3
  592. package/server/services/temporal/plugin_activities.py +37 -2
  593. package/server/services/temporal/plugin_registry.py +82 -0
  594. package/server/services/temporal/polling_trigger_workflow.py +267 -0
  595. package/server/services/temporal/schedules.py +220 -0
  596. package/server/services/temporal/search_attributes.py +177 -0
  597. package/server/services/temporal/trigger_listener_workflow.py +378 -0
  598. package/server/services/temporal/worker.py +111 -18
  599. package/server/services/temporal/workflow.py +259 -40
  600. package/server/services/temporal/ws_client.py +22 -11
  601. package/server/services/text.py +14 -28
  602. package/server/services/tracked_http.py +29 -49
  603. package/server/services/user_auth.py +7 -21
  604. package/server/services/workflow.py +28 -20
  605. package/server/services/workflow_import.py +351 -0
  606. package/server/services/workflow_ops.py +4 -0
  607. package/server/services/workflow_storage/__init__.py +18 -0
  608. package/server/services/workflow_storage/handlers.py +132 -0
  609. package/server/services/workflow_validator.py +209 -0
  610. package/server/services/ws_handler_registry.py +80 -9
  611. package/server/skills/assistant/agent-builder-skill/SKILL.md +6 -6
  612. package/server/tests/conftest.py +54 -3
  613. package/server/tests/credentials/test_auth_service.py +9 -21
  614. package/server/tests/credentials/test_credential_broadcasts.py +116 -22
  615. package/server/tests/credentials/test_credentials_database.py +12 -38
  616. package/server/tests/credentials/test_encryption.py +3 -9
  617. package/server/tests/credentials/test_google_oauth.py +1 -3
  618. package/server/tests/credentials/test_oauth_utils.py +31 -38
  619. package/server/tests/credentials/test_twitter_oauth.py +1 -3
  620. package/server/tests/credentials/test_websocket_handlers.py +37 -72
  621. package/server/tests/fixtures/tool_names_snapshot.json +78 -0
  622. package/server/tests/llm/test_factory.py +12 -4
  623. package/server/tests/llm/test_providers.py +25 -32
  624. package/server/tests/llm/test_wiring.py +27 -22
  625. package/server/tests/nodes/_compat.py +4 -5
  626. package/server/tests/nodes/_harness.py +31 -24
  627. package/server/tests/nodes/_mocks.py +2 -6
  628. package/server/tests/nodes/test_agent_builder.py +43 -35
  629. package/server/tests/nodes/test_ai_agents.py +29 -24
  630. package/server/tests/nodes/test_ai_chat_models.py +3 -9
  631. package/server/tests/nodes/test_ai_tools.py +29 -24
  632. package/server/tests/nodes/test_android.py +34 -64
  633. package/server/tests/nodes/test_chat_utility.py +2 -2
  634. package/server/tests/nodes/test_code_fs_process.py +26 -84
  635. package/server/tests/nodes/test_document.py +23 -47
  636. package/server/tests/nodes/test_email.py +88 -51
  637. package/server/tests/nodes/test_google_workspace.py +26 -20
  638. package/server/tests/nodes/test_http_proxy.py +43 -89
  639. package/server/tests/nodes/test_search.py +3 -9
  640. package/server/tests/nodes/test_specialized_agents.py +58 -162
  641. package/server/tests/nodes/test_stripe_plugin.py +25 -5
  642. package/server/tests/nodes/test_telegram_social.py +33 -37
  643. package/server/tests/nodes/test_twitter.py +59 -150
  644. package/server/tests/nodes/test_web_automation.py +21 -51
  645. package/server/tests/nodes/test_whatsapp.py +13 -19
  646. package/server/tests/nodes/test_workflow_triggers.py +16 -45
  647. package/server/tests/services/cli_agent/test_claude_session_events.py +201 -0
  648. package/server/tests/services/cli_agent/test_jsonl_watcher.py +190 -0
  649. package/server/tests/services/cli_agent/test_mcp_server.py +67 -29
  650. package/server/tests/services/cli_agent/test_providers.py +236 -47
  651. package/server/tests/services/cli_agent/test_service.py +9 -7
  652. package/server/tests/services/memory/test_jsonl.py +30 -25
  653. package/server/tests/services/test_events.py +26 -7
  654. package/server/tests/services/test_identifiers.py +122 -0
  655. package/server/tests/services/test_process_lifecycle.py +129 -0
  656. package/server/tests/services/test_supervisor.py +0 -1
  657. package/server/tests/temporal/__init__.py +0 -0
  658. package/server/tests/temporal/test_agent_workflow.py +215 -0
  659. package/server/tests/temporal/test_dispatch.py +231 -0
  660. package/server/tests/test_admin_handlers.py +394 -0
  661. package/server/tests/test_auto_skill.py +4 -2
  662. package/server/tests/test_canary_registry.py +310 -0
  663. package/server/tests/test_chat_trigger_canary_producer.py +101 -0
  664. package/server/tests/test_cloudevents_node_parameters.py +129 -0
  665. package/server/tests/test_credential_icon.py +115 -0
  666. package/server/tests/test_cron_canary.py +511 -0
  667. package/server/tests/test_deployment_canary_listener.py +692 -0
  668. package/server/tests/test_event_framework_phase_a.py +537 -0
  669. package/server/tests/test_no_raw_prints.py +131 -0
  670. package/server/tests/test_node_spec.py +196 -103
  671. package/server/tests/test_parameter_resolver.py +20 -20
  672. package/server/tests/test_plugin_contract.py +76 -49
  673. package/server/tests/test_plugin_helpers.py +0 -1
  674. package/server/tests/test_plugin_self_containment.py +40 -47
  675. package/server/tests/test_polling_trigger_workflow.py +572 -0
  676. package/server/tests/test_retry_policies.py +146 -0
  677. package/server/tests/test_service_factories.py +168 -0
  678. package/server/tests/test_shutdown_hooks.py +199 -0
  679. package/server/tests/test_social_provider_registry.py +177 -0
  680. package/server/tests/test_status_broadcasts.py +214 -63
  681. package/server/tests/test_task_trigger_canary_producer.py +131 -0
  682. package/server/tests/test_telegram_trigger_canary_producer.py +113 -0
  683. package/server/tests/test_tool_registry.py +110 -0
  684. package/server/tests/test_trigger_listener_workflow.py +365 -0
  685. package/server/tests/test_whatsapp_trigger_canary_producer.py +164 -0
  686. package/server/tests/test_workflow_ops.py +1 -3
  687. package/server/tests/test_workflow_validator.py +791 -0
  688. package/server/uv.lock +3539 -0
  689. package/client/dist/assets/index-DQ0nwhec.js +0 -257
  690. package/client/src/assets/icons/apify/index.ts +0 -19
  691. package/client/src/assets/icons/browser/index.ts +0 -17
  692. package/client/src/assets/icons/email/index.ts +0 -22
  693. package/client/src/assets/icons/google/index.ts +0 -34
  694. package/client/src/assets/icons/llm/deepseek.svg +0 -1
  695. package/client/src/assets/icons/llm/index.ts +0 -18
  696. package/client/src/assets/icons/llm/kimi.svg +0 -1
  697. package/client/src/assets/icons/llm/mistral.svg +0 -1
  698. package/client/src/assets/icons/search/index.ts +0 -28
  699. package/client/src/assets/icons/telegram/index.ts +0 -19
  700. package/machina/buildenv.py +0 -44
  701. package/machina/cli.py +0 -55
  702. package/machina/commands/__init__.py +0 -1
  703. package/machina/commands/clean.py +0 -80
  704. package/machina/commands/daemon.py +0 -150
  705. package/machina/config.py +0 -93
  706. package/machina/platform_.py +0 -37
  707. package/machina/pyproject.toml +0 -33
  708. package/server/nodes/agent/deep_agent.py +0 -103
  709. package/server/services/agents/__init__.py +0 -9
  710. package/server/services/agents/adapters.py +0 -199
  711. package/server/services/agents/constants.py +0 -10
  712. package/server/services/agents/service.py +0 -297
  713. package/server/services/cli_agent/providers/anthropic_claude.py +0 -419
  714. /package/{machina → cli}/README.md +0 -0
  715. /package/{machina → cli}/__init__.py +0 -0
  716. /package/{client/src/assets/icons/apify → server/credentials/icons}/apify.svg +0 -0
  717. /package/{client/src/assets/icons/search/brave.svg → server/credentials/icons/brave_search.svg} +0 -0
  718. /package/{client/src/assets/icons/email/read.svg → server/credentials/icons/email_himalaya.svg} +0 -0
  719. /package/{client/src/assets/icons/search → server/credentials/icons}/perplexity.svg +0 -0
  720. /package/{client/src/assets/icons/search/google.svg → server/credentials/icons/serper.svg} +0 -0
  721. /package/{client/src/assets → server/credentials}/icons/stripe.svg +0 -0
  722. /package/{client/src/assets/icons/twitter/x.svg → server/credentials/icons/twitter.svg} +0 -0
  723. /package/{client/src/assets/icons/browser/chrome.svg → server/nodes/browser/browser/icon.svg} +0 -0
  724. /package/{client/src/assets/icons/chat/chat.svg → server/nodes/chat/chat_history/icon.svg} +0 -0
  725. /package/{client/src/assets/icons/code/javascript.svg → server/nodes/code/javascript_executor/icon.svg} +0 -0
  726. /package/{client/src/assets/icons/code/python.svg → server/nodes/code/python_executor/icon.svg} +0 -0
  727. /package/{client/src/assets/icons/code/typescript.svg → server/nodes/code/typescript_executor/icon.svg} +0 -0
  728. /package/{client/src/assets/icons/email/receive.svg → server/nodes/email/email_receive/icon.svg} +0 -0
  729. /package/{client/src/assets/icons/email/send.svg → server/nodes/email/email_send/icon.svg} +0 -0
  730. /package/{client/src/assets/icons/google/calendar.svg → server/nodes/google/calendar/icon.svg} +0 -0
  731. /package/{client/src/assets/icons/google/contacts.svg → server/nodes/google/contacts/icon.svg} +0 -0
  732. /package/{client/src/assets/icons/google/drive.svg → server/nodes/google/drive/icon.svg} +0 -0
  733. /package/{client/src/assets/icons/google/gmail.svg → server/nodes/google/gmail/icon.svg} +0 -0
  734. /package/{client/src/assets/icons/google/sheets.svg → server/nodes/google/sheets/icon.svg} +0 -0
  735. /package/{client/src/assets/icons/google/tasks.svg → server/nodes/google/tasks/icon.svg} +0 -0
  736. /package/{client/src/assets/icons/search/duckduckgo.svg → server/nodes/search/duckduckgo_search/icon.svg} +0 -0
  737. /package/{client/src/assets/icons/social/social.svg → server/nodes/social/social_receive/icon.svg} +0 -0
  738. /package/{client/src/assets/icons/telegram/telegram.svg → server/nodes/telegram/icon.svg} +0 -0
  739. /package/server/nodes/utility/{team_monitor.py → team_monitor/__init__.py} +0 -0
  740. /package/{client/src/assets/icons/whatsapp/whatsapp-db.svg → server/nodes/whatsapp/icon_whatsappDb.svg} +0 -0
  741. /package/{client/src/assets/icons/whatsapp/whatsapp-receive.svg → server/nodes/whatsapp/icon_whatsappReceive.svg} +0 -0
  742. /package/{client/src/assets/icons/whatsapp/whatsapp-send.svg → server/nodes/whatsapp/icon_whatsappSend.svg} +0 -0
  743. /package/{client/src/assets/icons → server/nodes}/whatsapp/whatsapp.svg +0 -0
@@ -0,0 +1,165 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ApiKeyPanel-CPmye7uh.js","assets/vendor-query-SzWcOU0G.js","assets/ApiKeyInput-DIJE2PVA.js","assets/vendor-icons-CVrPjN2Q.js","assets/vendor-flow-CZmBvHRo.js","assets/vendor-markdown-CRou3yQ5.js","assets/RateLimitSection-CfNOoPIS.js","assets/vendor-react-DvWIbVx0.js","assets/ApiUsageSection-TF_7gH2D.js","assets/vendor-misc-C4VxKHs5.js","assets/vendor-radix-Dnos29jG.js","assets/OAuthPanel-BDtVJhAV.js","assets/ActionBar-Cjr3TF7g.js","assets/StatusCard-DkwIrgdP.js","assets/QrPairingPanel-BwJehTuZ.js","assets/EmailPanel-Bs-xvbKR.js"])))=>i.map(i=>d[i]);
2
+ import{r as Kb,h as Yb,O as tS,Q as nS,R as be,u as Zo,a as j,d as Sl,j as i,e as xm,f as oS,g as ym,i as Wx,k as sS,P as aS}from"./vendor-query-SzWcOU0G.js";import{a as rS,P as $n,H as Pn,u as lS,b as iS,g as cS,E as uS,B as dS,S as fS,c as pS,R as mS,d as hS,e as gS,f as xS,h as yS,C as bS,i as vS,j as wS,k as kS}from"./vendor-flow-CZmBvHRo.js";import{g as SS,s as _S,t as Pt,r as jS,_ as ka,T as NS}from"./vendor-misc-C4VxKHs5.js";import{c as CS,L as Pb,I as Xb,a as Jb,b as e0,d as t0,e as n0,f as o0,g as s0,h as a0,i as r0,j as l0,k as i0,l as Iu,C as LS,X as za,m as Us,n as Li,o as c0,G as u0,M as ES,P as bm,p as vm,T as $u,S as Ui,q as mo,r as zS,D as MS,s as d0,t as wl,u as Ei,A as TS,v as Bx,w as AS,x as Fx,y as zi,F as OS,z as Gx,B as mr,R as wm,Z as km,E as Qx,H as Kx,J as RS,K as f0,N as p0,O as DS,Q as IS,U as Sm,V as _m,W as m0,Y as h0,_ as $S,$ as qS,a0 as HS,a1 as g0,a2 as US,a3 as jm,a4 as x0,a5 as y0,a6 as ZS,a7 as VS,a8 as WS,a9 as BS,aa as FS,ab as GS,ac as Yx,ad as ou,ae as QS,af as KS,ag as b0,ah as YS,ai as PS,aj as XS,ak as v0,al as JS,am as e_,an as Px,ao as t_,ap as w0,aq as n_,ar as o_,as as s_,at as a_,au as r_,av as l_,aw as i_}from"./vendor-icons-CVrPjN2Q.js";import{S as Nm,R as c_,P as u_,O as d_,T as f_,D as p_,b as Cm,C as Lm,d as m_,e as h_,f as g_,I as x_,V as y_,g as b_,h as v_,i as w_,j as k_,k as S_,l as __,m as j_,n as N_,G as C_,L as L_,o as E_,p as z_,q as M_,r as T_,s as A_,t as O_,H as R_,v as D_,w as I_,x as $_,y as q_,z as H_,A as U_,B as Z_,E as V_,F as W_,J as B_,K as F_,M as G_,N as Q_,Q as K_,U as Y_,W as P_,X as X_,Y as J_,Z as e4,_ as t4,$ as n4,a0 as o4,a1 as s4,a2 as a4,a3 as r4,a4 as l4,a5 as i4,a6 as c4,a7 as u4,a8 as d4,a9 as f4,aa as p4,ab as m4}from"./vendor-radix-Dnos29jG.js";import{r as h4,a as g4,M as ju,b as Nu,c as Cu,J as x4}from"./vendor-markdown-CRou3yQ5.js";import{o as Xx,s as Jx,a as k0,F as y4,C as b4,u as S0,b as v4,c as w4,d as k4}from"./vendor-react-DvWIbVx0.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const c of document.querySelectorAll('link[rel="modulepreload"]'))r(c);new MutationObserver(c=>{for(const u of c)if(u.type==="childList")for(const f of u.addedNodes)f.tagName==="LINK"&&f.rel==="modulepreload"&&r(f)}).observe(document,{childList:!0,subtree:!0});function s(c){const u={};return c.integrity&&(u.integrity=c.integrity),c.referrerPolicy&&(u.referrerPolicy=c.referrerPolicy),c.crossOrigin==="use-credentials"?u.credentials="include":c.crossOrigin==="anonymous"?u.credentials="omit":u.credentials="same-origin",u}function r(c){if(c.ep)return;c.ep=!0;const u=s(c);fetch(c.href,u)}})();var dp={exports:{}},bi={},fp={exports:{}},pp={};var ey;function S4(){return ey||(ey=1,(function(t){function e(T,A){var K=T.length;T.push(A);e:for(;0<K;){var ne=K-1>>>1,X=T[ne];if(0<c(X,A))T[ne]=A,T[K]=X,K=ne;else break e}}function s(T){return T.length===0?null:T[0]}function r(T){if(T.length===0)return null;var A=T[0],K=T.pop();if(K!==A){T[0]=K;e:for(var ne=0,X=T.length,ue=X>>>1;ne<ue;){var fe=2*(ne+1)-1,pe=T[fe],we=fe+1,je=T[we];if(0>c(pe,K))we<X&&0>c(je,pe)?(T[ne]=je,T[we]=K,ne=we):(T[ne]=pe,T[fe]=K,ne=fe);else if(we<X&&0>c(je,K))T[ne]=je,T[we]=K,ne=we;else break e}}return A}function c(T,A){var K=T.sortIndex-A.sortIndex;return K!==0?K:T.id-A.id}if(t.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var u=performance;t.unstable_now=function(){return u.now()}}else{var f=Date,d=f.now();t.unstable_now=function(){return f.now()-d}}var h=[],g=[],x=1,y=null,b=3,k=!1,S=!1,w=!1,_=!1,N=typeof setTimeout=="function"?setTimeout:null,L=typeof clearTimeout=="function"?clearTimeout:null,z=typeof setImmediate<"u"?setImmediate:null;function O(T){for(var A=s(g);A!==null;){if(A.callback===null)r(g);else if(A.startTime<=T)r(g),A.sortIndex=A.expirationTime,e(h,A);else break;A=s(g)}}function I(T){if(w=!1,O(T),!S)if(s(h)!==null)S=!0,q||(q=!0,R());else{var A=s(g);A!==null&&W(I,A.startTime-T)}}var q=!1,M=-1,E=5,$=-1;function Q(){return _?!0:!(t.unstable_now()-$<E)}function H(){if(_=!1,q){var T=t.unstable_now();$=T;var A=!0;try{e:{S=!1,w&&(w=!1,L(M),M=-1),k=!0;var K=b;try{t:{for(O(T),y=s(h);y!==null&&!(y.expirationTime>T&&Q());){var ne=y.callback;if(typeof ne=="function"){y.callback=null,b=y.priorityLevel;var X=ne(y.expirationTime<=T);if(T=t.unstable_now(),typeof X=="function"){y.callback=X,O(T),A=!0;break t}y===s(h)&&r(h),O(T)}else r(h);y=s(h)}if(y!==null)A=!0;else{var ue=s(g);ue!==null&&W(I,ue.startTime-T),A=!1}}break e}finally{y=null,b=K,k=!1}A=void 0}}finally{A?R():q=!1}}}var R;if(typeof z=="function")R=function(){z(H)};else if(typeof MessageChannel<"u"){var D=new MessageChannel,U=D.port2;D.port1.onmessage=H,R=function(){U.postMessage(null)}}else R=function(){N(H,0)};function W(T,A){M=N(function(){T(t.unstable_now())},A)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(T){T.callback=null},t.unstable_forceFrameRate=function(T){0>T||125<T?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):E=0<T?Math.floor(1e3/T):5},t.unstable_getCurrentPriorityLevel=function(){return b},t.unstable_next=function(T){switch(b){case 1:case 2:case 3:var A=3;break;default:A=b}var K=b;b=A;try{return T()}finally{b=K}},t.unstable_requestPaint=function(){_=!0},t.unstable_runWithPriority=function(T,A){switch(T){case 1:case 2:case 3:case 4:case 5:break;default:T=3}var K=b;b=T;try{return A()}finally{b=K}},t.unstable_scheduleCallback=function(T,A,K){var ne=t.unstable_now();switch(typeof K=="object"&&K!==null?(K=K.delay,K=typeof K=="number"&&0<K?ne+K:ne):K=ne,T){case 1:var X=-1;break;case 2:X=250;break;case 5:X=1073741823;break;case 4:X=1e4;break;default:X=5e3}return X=K+X,T={id:x++,callback:A,priorityLevel:T,startTime:K,expirationTime:X,sortIndex:-1},K>ne?(T.sortIndex=K,e(g,T),s(h)===null&&T===s(g)&&(w?(L(M),M=-1):w=!0,W(I,K-ne))):(T.sortIndex=X,e(h,T),S||k||(S=!0,q||(q=!0,R()))),T},t.unstable_shouldYield=Q,t.unstable_wrapCallback=function(T){var A=b;return function(){var K=b;b=A;try{return T.apply(this,arguments)}finally{b=K}}}})(pp)),pp}var ty;function _4(){return ty||(ty=1,fp.exports=S4()),fp.exports}var ny;function j4(){if(ny)return bi;ny=1;var t=_4(),e=Kb(),s=rS();function r(n){var o="https://react.dev/errors/"+n;if(1<arguments.length){o+="?args[]="+encodeURIComponent(arguments[1]);for(var a=2;a<arguments.length;a++)o+="&args[]="+encodeURIComponent(arguments[a])}return"Minified React error #"+n+"; visit "+o+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function c(n){return!(!n||n.nodeType!==1&&n.nodeType!==9&&n.nodeType!==11)}function u(n){var o=n,a=n;if(n.alternate)for(;o.return;)o=o.return;else{n=o;do o=n,(o.flags&4098)!==0&&(a=o.return),n=o.return;while(n)}return o.tag===3?a:null}function f(n){if(n.tag===13){var o=n.memoizedState;if(o===null&&(n=n.alternate,n!==null&&(o=n.memoizedState)),o!==null)return o.dehydrated}return null}function d(n){if(n.tag===31){var o=n.memoizedState;if(o===null&&(n=n.alternate,n!==null&&(o=n.memoizedState)),o!==null)return o.dehydrated}return null}function h(n){if(u(n)!==n)throw Error(r(188))}function g(n){var o=n.alternate;if(!o){if(o=u(n),o===null)throw Error(r(188));return o!==n?null:n}for(var a=n,l=o;;){var p=a.return;if(p===null)break;var m=p.alternate;if(m===null){if(l=p.return,l!==null){a=l;continue}break}if(p.child===m.child){for(m=p.child;m;){if(m===a)return h(p),n;if(m===l)return h(p),o;m=m.sibling}throw Error(r(188))}if(a.return!==l.return)a=p,l=m;else{for(var v=!1,C=p.child;C;){if(C===a){v=!0,a=p,l=m;break}if(C===l){v=!0,l=p,a=m;break}C=C.sibling}if(!v){for(C=m.child;C;){if(C===a){v=!0,a=m,l=p;break}if(C===l){v=!0,l=m,a=p;break}C=C.sibling}if(!v)throw Error(r(189))}}if(a.alternate!==l)throw Error(r(190))}if(a.tag!==3)throw Error(r(188));return a.stateNode.current===a?n:o}function x(n){var o=n.tag;if(o===5||o===26||o===27||o===6)return n;for(n=n.child;n!==null;){if(o=x(n),o!==null)return o;n=n.sibling}return null}var y=Object.assign,b=Symbol.for("react.element"),k=Symbol.for("react.transitional.element"),S=Symbol.for("react.portal"),w=Symbol.for("react.fragment"),_=Symbol.for("react.strict_mode"),N=Symbol.for("react.profiler"),L=Symbol.for("react.consumer"),z=Symbol.for("react.context"),O=Symbol.for("react.forward_ref"),I=Symbol.for("react.suspense"),q=Symbol.for("react.suspense_list"),M=Symbol.for("react.memo"),E=Symbol.for("react.lazy"),$=Symbol.for("react.activity"),Q=Symbol.for("react.memo_cache_sentinel"),H=Symbol.iterator;function R(n){return n===null||typeof n!="object"?null:(n=H&&n[H]||n["@@iterator"],typeof n=="function"?n:null)}var D=Symbol.for("react.client.reference");function U(n){if(n==null)return null;if(typeof n=="function")return n.$$typeof===D?null:n.displayName||n.name||null;if(typeof n=="string")return n;switch(n){case w:return"Fragment";case N:return"Profiler";case _:return"StrictMode";case I:return"Suspense";case q:return"SuspenseList";case $:return"Activity"}if(typeof n=="object")switch(n.$$typeof){case S:return"Portal";case z:return n.displayName||"Context";case L:return(n._context.displayName||"Context")+".Consumer";case O:var o=n.render;return n=n.displayName,n||(n=o.displayName||o.name||"",n=n!==""?"ForwardRef("+n+")":"ForwardRef"),n;case M:return o=n.displayName||null,o!==null?o:U(n.type)||"Memo";case E:o=n._payload,n=n._init;try{return U(n(o))}catch{}}return null}var W=Array.isArray,T=e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,A=s.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,K={pending:!1,data:null,method:null,action:null},ne=[],X=-1;function ue(n){return{current:n}}function fe(n){0>X||(n.current=ne[X],ne[X]=null,X--)}function pe(n,o){X++,ne[X]=n.current,n.current=o}var we=ue(null),je=ue(null),ve=ue(null),Ce=ue(null);function ce(n,o){switch(pe(ve,o),pe(je,n),pe(we,null),o.nodeType){case 9:case 11:n=(n=o.documentElement)&&(n=n.namespaceURI)?px(n):0;break;default:if(n=o.tagName,o=o.namespaceURI)o=px(o),n=mx(o,n);else switch(n){case"svg":n=1;break;case"math":n=2;break;default:n=0}}fe(we),pe(we,n)}function te(){fe(we),fe(je),fe(ve)}function Oe(n){n.memoizedState!==null&&pe(Ce,n);var o=we.current,a=mx(o,n.type);o!==a&&(pe(je,n),pe(we,a))}function B(n){je.current===n&&(fe(we),fe(je)),Ce.current===n&&(fe(Ce),hi._currentValue=K)}var F,oe;function me(n){if(F===void 0)try{throw Error()}catch(a){var o=a.stack.trim().match(/\n( *(at )?)/);F=o&&o[1]||"",oe=-1<a.stack.indexOf(`
3
+ at`)?" (<anonymous>)":-1<a.stack.indexOf("@")?"@unknown:0:0":""}return`
4
+ `+F+n+oe}var Ke=!1;function tt(n,o){if(!n||Ke)return"";Ke=!0;var a=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var l={DetermineComponentFrameRoot:function(){try{if(o){var Se=function(){throw Error()};if(Object.defineProperty(Se.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(Se,[])}catch(de){var ie=de}Reflect.construct(n,[],Se)}else{try{Se.call()}catch(de){ie=de}n.call(Se.prototype)}}else{try{throw Error()}catch(de){ie=de}(Se=n())&&typeof Se.catch=="function"&&Se.catch(function(){})}}catch(de){if(de&&ie&&typeof de.stack=="string")return[de.stack,ie.stack]}return[null,null]}};l.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var p=Object.getOwnPropertyDescriptor(l.DetermineComponentFrameRoot,"name");p&&p.configurable&&Object.defineProperty(l.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var m=l.DetermineComponentFrameRoot(),v=m[0],C=m[1];if(v&&C){var V=v.split(`
5
+ `),ae=C.split(`
6
+ `);for(p=l=0;l<V.length&&!V[l].includes("DetermineComponentFrameRoot");)l++;for(;p<ae.length&&!ae[p].includes("DetermineComponentFrameRoot");)p++;if(l===V.length||p===ae.length)for(l=V.length-1,p=ae.length-1;1<=l&&0<=p&&V[l]!==ae[p];)p--;for(;1<=l&&0<=p;l--,p--)if(V[l]!==ae[p]){if(l!==1||p!==1)do if(l--,p--,0>p||V[l]!==ae[p]){var ge=`
7
+ `+V[l].replace(" at new "," at ");return n.displayName&&ge.includes("<anonymous>")&&(ge=ge.replace("<anonymous>",n.displayName)),ge}while(1<=l&&0<=p);break}}}finally{Ke=!1,Error.prepareStackTrace=a}return(a=n?n.displayName||n.name:"")?me(a):""}function lt(n,o){switch(n.tag){case 26:case 27:case 5:return me(n.type);case 16:return me("Lazy");case 13:return n.child!==o&&o!==null?me("Suspense Fallback"):me("Suspense");case 19:return me("SuspenseList");case 0:case 15:return tt(n.type,!1);case 11:return tt(n.type.render,!1);case 1:return tt(n.type,!0);case 31:return me("Activity");default:return""}}function yt(n){try{var o="",a=null;do o+=lt(n,a),a=n,n=n.return;while(n);return o}catch(l){return`
8
+ Error generating stack: `+l.message+`
9
+ `+l.stack}}var bt=Object.prototype.hasOwnProperty,re=t.unstable_scheduleCallback,qe=t.unstable_cancelCallback,Ye=t.unstable_shouldYield,at=t.unstable_requestPaint,it=t.unstable_now,kt=t.unstable_getCurrentPriorityLevel,he=t.unstable_ImmediatePriority,Re=t.unstable_UserBlockingPriority,He=t.unstable_NormalPriority,Rt=t.unstable_LowPriority,Mt=t.unstable_IdlePriority,Le=t.log,Cn=t.unstable_setDisableYieldValue,On=null,tn=null;function rn(n){if(typeof Le=="function"&&Cn(n),tn&&typeof tn.setStrictMode=="function")try{tn.setStrictMode(On,n)}catch{}}var sn=Math.clz32?Math.clz32:_r,Sr=Math.log,Vs=Math.LN2;function _r(n){return n>>>=0,n===0?32:31-(Sr(n)/Vs|0)|0}var gs=256,xs=262144,Eo=4194304;function go(n){var o=n&42;if(o!==0)return o;switch(n&-n){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return n&261888;case 262144:case 524288:case 1048576:case 2097152:return n&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return n&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return n}}function ys(n,o,a){var l=n.pendingLanes;if(l===0)return 0;var p=0,m=n.suspendedLanes,v=n.pingedLanes;n=n.warmLanes;var C=l&134217727;return C!==0?(l=C&~m,l!==0?p=go(l):(v&=C,v!==0?p=go(v):a||(a=C&~n,a!==0&&(p=go(a))))):(C=l&~m,C!==0?p=go(C):v!==0?p=go(v):a||(a=l&~n,a!==0&&(p=go(a)))),p===0?0:o!==0&&o!==p&&(o&m)===0&&(m=p&-p,a=o&-o,m>=a||m===32&&(a&4194048)!==0)?o:p}function Bo(n,o){return(n.pendingLanes&~(n.suspendedLanes&~n.pingedLanes)&o)===0}function Ws(n,o){switch(n){case 1:case 2:case 4:case 8:case 64:return o+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return o+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Bs(){var n=Eo;return Eo<<=1,(Eo&62914560)===0&&(Eo=4194304),n}function Fs(n){for(var o=[],a=0;31>a;a++)o.push(n);return o}function xo(n,o){n.pendingLanes|=o,o!==268435456&&(n.suspendedLanes=0,n.pingedLanes=0,n.warmLanes=0)}function jr(n,o,a,l,p,m){var v=n.pendingLanes;n.pendingLanes=a,n.suspendedLanes=0,n.pingedLanes=0,n.warmLanes=0,n.expiredLanes&=a,n.entangledLanes&=a,n.errorRecoveryDisabledLanes&=a,n.shellSuspendCounter=0;var C=n.entanglements,V=n.expirationTimes,ae=n.hiddenUpdates;for(a=v&~a;0<a;){var ge=31-sn(a),Se=1<<ge;C[ge]=0,V[ge]=-1;var ie=ae[ge];if(ie!==null)for(ae[ge]=null,ge=0;ge<ie.length;ge++){var de=ie[ge];de!==null&&(de.lane&=-536870913)}a&=~Se}l!==0&&os(n,l,0),m!==0&&p===0&&n.tag!==0&&(n.suspendedLanes|=m&~(v&~o))}function os(n,o,a){n.pendingLanes|=o,n.suspendedLanes&=~o;var l=31-sn(o);n.entangledLanes|=o,n.entanglements[l]=n.entanglements[l]|1073741824|a&261930}function $a(n,o){var a=n.entangledLanes|=o;for(n=n.entanglements;a;){var l=31-sn(a),p=1<<l;p&o|n[l]&o&&(n[l]|=o),a&=~p}}function qa(n,o){var a=o&-o;return a=(a&42)!==0?1:Gs(a),(a&(n.suspendedLanes|o))!==0?0:a}function Gs(n){switch(n){case 2:n=1;break;case 8:n=4;break;case 32:n=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:n=128;break;case 268435456:n=134217728;break;default:n=0}return n}function Qs(n){return n&=-n,2<n?8<n?(n&134217727)!==0?32:268435456:8:2}function Ha(){var n=A.p;return n!==0?n:(n=window.event,n===void 0?32:Ix(n.type))}function Ks(n,o){var a=A.p;try{return A.p=n,o()}finally{A.p=a}}var an=Math.random().toString(36).slice(2),xn="__reactFiber$"+an,Ln="__reactProps$"+an,zo="__reactContainer$"+an,bs="__reactEvents$"+an,Ua="__reactListeners$"+an,Nr="__reactHandles$"+an,Za="__reactResources$"+an,ss="__reactMarker$"+an;function Ys(n){delete n[xn],delete n[Ln],delete n[bs],delete n[Ua],delete n[Nr]}function Fo(n){var o=n[xn];if(o)return o;for(var a=n.parentNode;a;){if(o=a[zo]||a[xn]){if(a=o.alternate,o.child!==null||a!==null&&a.child!==null)for(n=wx(n);n!==null;){if(a=n[xn])return a;n=wx(n)}return o}n=a,a=n.parentNode}return null}function Go(n){if(n=n[xn]||n[zo]){var o=n.tag;if(o===5||o===6||o===13||o===31||o===26||o===27||o===3)return n}return null}function Qo(n){var o=n.tag;if(o===5||o===26||o===27||o===6)return n.stateNode;throw Error(r(33))}function as(n){var o=n[Za];return o||(o=n[Za]={hoistableStyles:new Map,hoistableScripts:new Map}),o}function P(n){n[ss]=!0}var J=new Set,xe={};function G(n,o){Me(n,o),Me(n+"Capture",o)}function Me(n,o){for(xe[n]=o,n=0;n<o.length;n++)J.add(o[n])}var ut=RegExp("^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"),mt={},wt={};function so(n){return bt.call(wt,n)?!0:bt.call(mt,n)?!1:ut.test(n)?wt[n]=!0:(mt[n]=!0,!1)}function bn(n,o,a){if(so(o))if(a===null)n.removeAttribute(o);else{switch(typeof a){case"undefined":case"function":case"symbol":n.removeAttribute(o);return;case"boolean":var l=o.toLowerCase().slice(0,5);if(l!=="data-"&&l!=="aria-"){n.removeAttribute(o);return}}n.setAttribute(o,""+a)}}function ke(n,o,a){if(a===null)n.removeAttribute(o);else{switch(typeof a){case"undefined":case"function":case"symbol":case"boolean":n.removeAttribute(o);return}n.setAttribute(o,""+a)}}function ze(n,o,a,l){if(l===null)n.removeAttribute(a);else{switch(typeof l){case"undefined":case"function":case"symbol":case"boolean":n.removeAttribute(a);return}n.setAttributeNS(o,a,""+l)}}function Ue(n){switch(typeof n){case"bigint":case"boolean":case"number":case"string":case"undefined":return n;case"object":return n;default:return""}}function dt(n){var o=n.type;return(n=n.nodeName)&&n.toLowerCase()==="input"&&(o==="checkbox"||o==="radio")}function Lt(n,o,a){var l=Object.getOwnPropertyDescriptor(n.constructor.prototype,o);if(!n.hasOwnProperty(o)&&typeof l<"u"&&typeof l.get=="function"&&typeof l.set=="function"){var p=l.get,m=l.set;return Object.defineProperty(n,o,{configurable:!0,get:function(){return p.call(this)},set:function(v){a=""+v,m.call(this,v)}}),Object.defineProperty(n,o,{enumerable:l.enumerable}),{getValue:function(){return a},setValue:function(v){a=""+v},stopTracking:function(){n._valueTracker=null,delete n[o]}}}}function rt(n){if(!n._valueTracker){var o=dt(n)?"checked":"value";n._valueTracker=Lt(n,o,""+n[o])}}function Yn(n){if(!n)return!1;var o=n._valueTracker;if(!o)return!0;var a=o.getValue(),l="";return n&&(l=dt(n)?n.checked?"true":"false":n.value),n=l,n!==a?(o.setValue(n),!0):!1}function le(n){if(n=n||(typeof document<"u"?document:void 0),typeof n>"u")return null;try{return n.activeElement||n.body}catch{return n.body}}var Te=/[\n"\\]/g;function $e(n){return n.replace(Te,function(o){return"\\"+o.charCodeAt(0).toString(16)+" "})}function ft(n,o,a,l,p,m,v,C){n.name="",v!=null&&typeof v!="function"&&typeof v!="symbol"&&typeof v!="boolean"?n.type=v:n.removeAttribute("type"),o!=null?v==="number"?(o===0&&n.value===""||n.value!=o)&&(n.value=""+Ue(o)):n.value!==""+Ue(o)&&(n.value=""+Ue(o)):v!=="submit"&&v!=="reset"||n.removeAttribute("value"),o!=null?Tt(n,v,Ue(o)):a!=null?Tt(n,v,Ue(a)):l!=null&&n.removeAttribute("value"),p==null&&m!=null&&(n.defaultChecked=!!m),p!=null&&(n.checked=p&&typeof p!="function"&&typeof p!="symbol"),C!=null&&typeof C!="function"&&typeof C!="symbol"&&typeof C!="boolean"?n.name=""+Ue(C):n.removeAttribute("name")}function et(n,o,a,l,p,m,v,C){if(m!=null&&typeof m!="function"&&typeof m!="symbol"&&typeof m!="boolean"&&(n.type=m),o!=null||a!=null){if(!(m!=="submit"&&m!=="reset"||o!=null)){rt(n);return}a=a!=null?""+Ue(a):"",o=o!=null?""+Ue(o):a,C||o===n.value||(n.value=o),n.defaultValue=o}l=l??p,l=typeof l!="function"&&typeof l!="symbol"&&!!l,n.checked=C?n.checked:!!l,n.defaultChecked=!!l,v!=null&&typeof v!="function"&&typeof v!="symbol"&&typeof v!="boolean"&&(n.name=v),rt(n)}function Tt(n,o,a){o==="number"&&le(n.ownerDocument)===n||n.defaultValue===""+a||(n.defaultValue=""+a)}function Dt(n,o,a,l){if(n=n.options,o){o={};for(var p=0;p<a.length;p++)o["$"+a[p]]=!0;for(a=0;a<n.length;a++)p=o.hasOwnProperty("$"+n[a].value),n[a].selected!==p&&(n[a].selected=p),p&&l&&(n[a].defaultSelected=!0)}else{for(a=""+Ue(a),o=null,p=0;p<n.length;p++){if(n[p].value===a){n[p].selected=!0,l&&(n[p].defaultSelected=!0);return}o!==null||n[p].disabled||(o=n[p])}o!==null&&(o.selected=!0)}}function Zn(n,o,a){if(o!=null&&(o=""+Ue(o),o!==n.value&&(n.value=o),a==null)){n.defaultValue!==o&&(n.defaultValue=o);return}n.defaultValue=a!=null?""+Ue(a):""}function ao(n,o,a,l){if(o==null){if(l!=null){if(a!=null)throw Error(r(92));if(W(l)){if(1<l.length)throw Error(r(93));l=l[0]}a=l}a==null&&(a=""),o=a}a=Ue(o),n.defaultValue=a,l=n.textContent,l===a&&l!==""&&l!==null&&(n.value=l),rt(n)}function eo(n,o){if(o){var a=n.firstChild;if(a&&a===n.lastChild&&a.nodeType===3){a.nodeValue=o;return}}n.textContent=o}var Vt=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function Vn(n,o,a){var l=o.indexOf("--")===0;a==null||typeof a=="boolean"||a===""?l?n.setProperty(o,""):o==="float"?n.cssFloat="":n[o]="":l?n.setProperty(o,a):typeof a!="number"||a===0||Vt.has(o)?o==="float"?n.cssFloat=a:n[o]=(""+a).trim():n[o]=a+"px"}function Ps(n,o,a){if(o!=null&&typeof o!="object")throw Error(r(62));if(n=n.style,a!=null){for(var l in a)!a.hasOwnProperty(l)||o!=null&&o.hasOwnProperty(l)||(l.indexOf("--")===0?n.setProperty(l,""):l==="float"?n.cssFloat="":n[l]="");for(var p in o)l=o[p],o.hasOwnProperty(p)&&a[p]!==l&&Vn(n,p,l)}else for(var m in o)o.hasOwnProperty(m)&&Vn(n,m,o[m])}function rd(n){if(n.indexOf("-")===-1)return!1;switch(n){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var P2=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),X2=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function Qi(n){return X2.test(""+n)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":n}function vs(){}var ld=null;function id(n){return n=n.target||n.srcElement||window,n.correspondingUseElement&&(n=n.correspondingUseElement),n.nodeType===3?n.parentNode:n}var Cr=null,Lr=null;function fh(n){var o=Go(n);if(o&&(n=o.stateNode)){var a=n[Ln]||null;e:switch(n=o.stateNode,o.type){case"input":if(ft(n,a.value,a.defaultValue,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name),o=a.name,a.type==="radio"&&o!=null){for(a=n;a.parentNode;)a=a.parentNode;for(a=a.querySelectorAll('input[name="'+$e(""+o)+'"][type="radio"]'),o=0;o<a.length;o++){var l=a[o];if(l!==n&&l.form===n.form){var p=l[Ln]||null;if(!p)throw Error(r(90));ft(l,p.value,p.defaultValue,p.defaultValue,p.checked,p.defaultChecked,p.type,p.name)}}for(o=0;o<a.length;o++)l=a[o],l.form===n.form&&Yn(l)}break e;case"textarea":Zn(n,a.value,a.defaultValue);break e;case"select":o=a.value,o!=null&&Dt(n,!!a.multiple,o,!1)}}}var cd=!1;function ph(n,o,a){if(cd)return n(o,a);cd=!0;try{var l=n(o);return l}finally{if(cd=!1,(Cr!==null||Lr!==null)&&(Rc(),Cr&&(o=Cr,n=Lr,Lr=Cr=null,fh(o),n)))for(o=0;o<n.length;o++)fh(n[o])}}function Tl(n,o){var a=n.stateNode;if(a===null)return null;var l=a[Ln]||null;if(l===null)return null;a=l[o];e:switch(o){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(l=!l.disabled)||(n=n.type,l=!(n==="button"||n==="input"||n==="select"||n==="textarea")),n=!l;break e;default:n=!1}if(n)return null;if(a&&typeof a!="function")throw Error(r(231,o,typeof a));return a}var ws=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ud=!1;if(ws)try{var Al={};Object.defineProperty(Al,"passive",{get:function(){ud=!0}}),window.addEventListener("test",Al,Al),window.removeEventListener("test",Al,Al)}catch{ud=!1}var Xs=null,dd=null,Ki=null;function mh(){if(Ki)return Ki;var n,o=dd,a=o.length,l,p="value"in Xs?Xs.value:Xs.textContent,m=p.length;for(n=0;n<a&&o[n]===p[n];n++);var v=a-n;for(l=1;l<=v&&o[a-l]===p[m-l];l++);return Ki=p.slice(n,1<l?1-l:void 0)}function Yi(n){var o=n.keyCode;return"charCode"in n?(n=n.charCode,n===0&&o===13&&(n=13)):n=o,n===10&&(n=13),32<=n||n===13?n:0}function Pi(){return!0}function hh(){return!1}function ro(n){function o(a,l,p,m,v){this._reactName=a,this._targetInst=p,this.type=l,this.nativeEvent=m,this.target=v,this.currentTarget=null;for(var C in n)n.hasOwnProperty(C)&&(a=n[C],this[C]=a?a(m):m[C]);return this.isDefaultPrevented=(m.defaultPrevented!=null?m.defaultPrevented:m.returnValue===!1)?Pi:hh,this.isPropagationStopped=hh,this}return y(o.prototype,{preventDefault:function(){this.defaultPrevented=!0;var a=this.nativeEvent;a&&(a.preventDefault?a.preventDefault():typeof a.returnValue!="unknown"&&(a.returnValue=!1),this.isDefaultPrevented=Pi)},stopPropagation:function(){var a=this.nativeEvent;a&&(a.stopPropagation?a.stopPropagation():typeof a.cancelBubble!="unknown"&&(a.cancelBubble=!0),this.isPropagationStopped=Pi)},persist:function(){},isPersistent:Pi}),o}var Va={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(n){return n.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Xi=ro(Va),Ol=y({},Va,{view:0,detail:0}),J2=ro(Ol),fd,pd,Rl,Ji=y({},Ol,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:hd,button:0,buttons:0,relatedTarget:function(n){return n.relatedTarget===void 0?n.fromElement===n.srcElement?n.toElement:n.fromElement:n.relatedTarget},movementX:function(n){return"movementX"in n?n.movementX:(n!==Rl&&(Rl&&n.type==="mousemove"?(fd=n.screenX-Rl.screenX,pd=n.screenY-Rl.screenY):pd=fd=0,Rl=n),fd)},movementY:function(n){return"movementY"in n?n.movementY:pd}}),gh=ro(Ji),ew=y({},Ji,{dataTransfer:0}),tw=ro(ew),nw=y({},Ol,{relatedTarget:0}),md=ro(nw),ow=y({},Va,{animationName:0,elapsedTime:0,pseudoElement:0}),sw=ro(ow),aw=y({},Va,{clipboardData:function(n){return"clipboardData"in n?n.clipboardData:window.clipboardData}}),rw=ro(aw),lw=y({},Va,{data:0}),xh=ro(lw),iw={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},cw={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},uw={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function dw(n){var o=this.nativeEvent;return o.getModifierState?o.getModifierState(n):(n=uw[n])?!!o[n]:!1}function hd(){return dw}var fw=y({},Ol,{key:function(n){if(n.key){var o=iw[n.key]||n.key;if(o!=="Unidentified")return o}return n.type==="keypress"?(n=Yi(n),n===13?"Enter":String.fromCharCode(n)):n.type==="keydown"||n.type==="keyup"?cw[n.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:hd,charCode:function(n){return n.type==="keypress"?Yi(n):0},keyCode:function(n){return n.type==="keydown"||n.type==="keyup"?n.keyCode:0},which:function(n){return n.type==="keypress"?Yi(n):n.type==="keydown"||n.type==="keyup"?n.keyCode:0}}),pw=ro(fw),mw=y({},Ji,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),yh=ro(mw),hw=y({},Ol,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:hd}),gw=ro(hw),xw=y({},Va,{propertyName:0,elapsedTime:0,pseudoElement:0}),yw=ro(xw),bw=y({},Ji,{deltaX:function(n){return"deltaX"in n?n.deltaX:"wheelDeltaX"in n?-n.wheelDeltaX:0},deltaY:function(n){return"deltaY"in n?n.deltaY:"wheelDeltaY"in n?-n.wheelDeltaY:"wheelDelta"in n?-n.wheelDelta:0},deltaZ:0,deltaMode:0}),vw=ro(bw),ww=y({},Va,{newState:0,oldState:0}),kw=ro(ww),Sw=[9,13,27,32],gd=ws&&"CompositionEvent"in window,Dl=null;ws&&"documentMode"in document&&(Dl=document.documentMode);var _w=ws&&"TextEvent"in window&&!Dl,bh=ws&&(!gd||Dl&&8<Dl&&11>=Dl),vh=" ",wh=!1;function kh(n,o){switch(n){case"keyup":return Sw.indexOf(o.keyCode)!==-1;case"keydown":return o.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Sh(n){return n=n.detail,typeof n=="object"&&"data"in n?n.data:null}var Er=!1;function jw(n,o){switch(n){case"compositionend":return Sh(o);case"keypress":return o.which!==32?null:(wh=!0,vh);case"textInput":return n=o.data,n===vh&&wh?null:n;default:return null}}function Nw(n,o){if(Er)return n==="compositionend"||!gd&&kh(n,o)?(n=mh(),Ki=dd=Xs=null,Er=!1,n):null;switch(n){case"paste":return null;case"keypress":if(!(o.ctrlKey||o.altKey||o.metaKey)||o.ctrlKey&&o.altKey){if(o.char&&1<o.char.length)return o.char;if(o.which)return String.fromCharCode(o.which)}return null;case"compositionend":return bh&&o.locale!=="ko"?null:o.data;default:return null}}var Cw={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function _h(n){var o=n&&n.nodeName&&n.nodeName.toLowerCase();return o==="input"?!!Cw[n.type]:o==="textarea"}function jh(n,o,a,l){Cr?Lr?Lr.push(l):Lr=[l]:Cr=l,o=Zc(o,"onChange"),0<o.length&&(a=new Xi("onChange","change",null,a,l),n.push({event:a,listeners:o}))}var Il=null,$l=null;function Lw(n){lx(n,0)}function ec(n){var o=Qo(n);if(Yn(o))return n}function Nh(n,o){if(n==="change")return o}var Ch=!1;if(ws){var xd;if(ws){var yd="oninput"in document;if(!yd){var Lh=document.createElement("div");Lh.setAttribute("oninput","return;"),yd=typeof Lh.oninput=="function"}xd=yd}else xd=!1;Ch=xd&&(!document.documentMode||9<document.documentMode)}function Eh(){Il&&(Il.detachEvent("onpropertychange",zh),$l=Il=null)}function zh(n){if(n.propertyName==="value"&&ec($l)){var o=[];jh(o,$l,n,id(n)),ph(Lw,o)}}function Ew(n,o,a){n==="focusin"?(Eh(),Il=o,$l=a,Il.attachEvent("onpropertychange",zh)):n==="focusout"&&Eh()}function zw(n){if(n==="selectionchange"||n==="keyup"||n==="keydown")return ec($l)}function Mw(n,o){if(n==="click")return ec(o)}function Tw(n,o){if(n==="input"||n==="change")return ec(o)}function Aw(n,o){return n===o&&(n!==0||1/n===1/o)||n!==n&&o!==o}var yo=typeof Object.is=="function"?Object.is:Aw;function ql(n,o){if(yo(n,o))return!0;if(typeof n!="object"||n===null||typeof o!="object"||o===null)return!1;var a=Object.keys(n),l=Object.keys(o);if(a.length!==l.length)return!1;for(l=0;l<a.length;l++){var p=a[l];if(!bt.call(o,p)||!yo(n[p],o[p]))return!1}return!0}function Mh(n){for(;n&&n.firstChild;)n=n.firstChild;return n}function Th(n,o){var a=Mh(n);n=0;for(var l;a;){if(a.nodeType===3){if(l=n+a.textContent.length,n<=o&&l>=o)return{node:a,offset:o-n};n=l}e:{for(;a;){if(a.nextSibling){a=a.nextSibling;break e}a=a.parentNode}a=void 0}a=Mh(a)}}function Ah(n,o){return n&&o?n===o?!0:n&&n.nodeType===3?!1:o&&o.nodeType===3?Ah(n,o.parentNode):"contains"in n?n.contains(o):n.compareDocumentPosition?!!(n.compareDocumentPosition(o)&16):!1:!1}function Oh(n){n=n!=null&&n.ownerDocument!=null&&n.ownerDocument.defaultView!=null?n.ownerDocument.defaultView:window;for(var o=le(n.document);o instanceof n.HTMLIFrameElement;){try{var a=typeof o.contentWindow.location.href=="string"}catch{a=!1}if(a)n=o.contentWindow;else break;o=le(n.document)}return o}function bd(n){var o=n&&n.nodeName&&n.nodeName.toLowerCase();return o&&(o==="input"&&(n.type==="text"||n.type==="search"||n.type==="tel"||n.type==="url"||n.type==="password")||o==="textarea"||n.contentEditable==="true")}var Ow=ws&&"documentMode"in document&&11>=document.documentMode,zr=null,vd=null,Hl=null,wd=!1;function Rh(n,o,a){var l=a.window===a?a.document:a.nodeType===9?a:a.ownerDocument;wd||zr==null||zr!==le(l)||(l=zr,"selectionStart"in l&&bd(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),Hl&&ql(Hl,l)||(Hl=l,l=Zc(vd,"onSelect"),0<l.length&&(o=new Xi("onSelect","select",null,o,a),n.push({event:o,listeners:l}),o.target=zr)))}function Wa(n,o){var a={};return a[n.toLowerCase()]=o.toLowerCase(),a["Webkit"+n]="webkit"+o,a["Moz"+n]="moz"+o,a}var Mr={animationend:Wa("Animation","AnimationEnd"),animationiteration:Wa("Animation","AnimationIteration"),animationstart:Wa("Animation","AnimationStart"),transitionrun:Wa("Transition","TransitionRun"),transitionstart:Wa("Transition","TransitionStart"),transitioncancel:Wa("Transition","TransitionCancel"),transitionend:Wa("Transition","TransitionEnd")},kd={},Dh={};ws&&(Dh=document.createElement("div").style,"AnimationEvent"in window||(delete Mr.animationend.animation,delete Mr.animationiteration.animation,delete Mr.animationstart.animation),"TransitionEvent"in window||delete Mr.transitionend.transition);function Ba(n){if(kd[n])return kd[n];if(!Mr[n])return n;var o=Mr[n],a;for(a in o)if(o.hasOwnProperty(a)&&a in Dh)return kd[n]=o[a];return n}var Ih=Ba("animationend"),$h=Ba("animationiteration"),qh=Ba("animationstart"),Rw=Ba("transitionrun"),Dw=Ba("transitionstart"),Iw=Ba("transitioncancel"),Hh=Ba("transitionend"),Uh=new Map,Sd="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");Sd.push("scrollEnd");function Ko(n,o){Uh.set(n,o),G(o,[n])}var tc=typeof reportError=="function"?reportError:function(n){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var o=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof n=="object"&&n!==null&&typeof n.message=="string"?String(n.message):String(n),error:n});if(!window.dispatchEvent(o))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",n);return}console.error(n)},Mo=[],Tr=0,_d=0;function nc(){for(var n=Tr,o=_d=Tr=0;o<n;){var a=Mo[o];Mo[o++]=null;var l=Mo[o];Mo[o++]=null;var p=Mo[o];Mo[o++]=null;var m=Mo[o];if(Mo[o++]=null,l!==null&&p!==null){var v=l.pending;v===null?p.next=p:(p.next=v.next,v.next=p),l.pending=p}m!==0&&Zh(a,p,m)}}function oc(n,o,a,l){Mo[Tr++]=n,Mo[Tr++]=o,Mo[Tr++]=a,Mo[Tr++]=l,_d|=l,n.lanes|=l,n=n.alternate,n!==null&&(n.lanes|=l)}function jd(n,o,a,l){return oc(n,o,a,l),sc(n)}function Fa(n,o){return oc(n,null,null,o),sc(n)}function Zh(n,o,a){n.lanes|=a;var l=n.alternate;l!==null&&(l.lanes|=a);for(var p=!1,m=n.return;m!==null;)m.childLanes|=a,l=m.alternate,l!==null&&(l.childLanes|=a),m.tag===22&&(n=m.stateNode,n===null||n._visibility&1||(p=!0)),n=m,m=m.return;return n.tag===3?(m=n.stateNode,p&&o!==null&&(p=31-sn(a),n=m.hiddenUpdates,l=n[p],l===null?n[p]=[o]:l.push(o),o.lane=a|536870912),m):null}function sc(n){if(50<ii)throw ii=0,Rf=null,Error(r(185));for(var o=n.return;o!==null;)n=o,o=n.return;return n.tag===3?n.stateNode:null}var Ar={};function $w(n,o,a,l){this.tag=n,this.key=a,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=o,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=l,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function bo(n,o,a,l){return new $w(n,o,a,l)}function Nd(n){return n=n.prototype,!(!n||!n.isReactComponent)}function ks(n,o){var a=n.alternate;return a===null?(a=bo(n.tag,o,n.key,n.mode),a.elementType=n.elementType,a.type=n.type,a.stateNode=n.stateNode,a.alternate=n,n.alternate=a):(a.pendingProps=o,a.type=n.type,a.flags=0,a.subtreeFlags=0,a.deletions=null),a.flags=n.flags&65011712,a.childLanes=n.childLanes,a.lanes=n.lanes,a.child=n.child,a.memoizedProps=n.memoizedProps,a.memoizedState=n.memoizedState,a.updateQueue=n.updateQueue,o=n.dependencies,a.dependencies=o===null?null:{lanes:o.lanes,firstContext:o.firstContext},a.sibling=n.sibling,a.index=n.index,a.ref=n.ref,a.refCleanup=n.refCleanup,a}function Vh(n,o){n.flags&=65011714;var a=n.alternate;return a===null?(n.childLanes=0,n.lanes=o,n.child=null,n.subtreeFlags=0,n.memoizedProps=null,n.memoizedState=null,n.updateQueue=null,n.dependencies=null,n.stateNode=null):(n.childLanes=a.childLanes,n.lanes=a.lanes,n.child=a.child,n.subtreeFlags=0,n.deletions=null,n.memoizedProps=a.memoizedProps,n.memoizedState=a.memoizedState,n.updateQueue=a.updateQueue,n.type=a.type,o=a.dependencies,n.dependencies=o===null?null:{lanes:o.lanes,firstContext:o.firstContext}),n}function ac(n,o,a,l,p,m){var v=0;if(l=n,typeof n=="function")Nd(n)&&(v=1);else if(typeof n=="string")v=Vk(n,a,we.current)?26:n==="html"||n==="head"||n==="body"?27:5;else e:switch(n){case $:return n=bo(31,a,o,p),n.elementType=$,n.lanes=m,n;case w:return Ga(a.children,p,m,o);case _:v=8,p|=24;break;case N:return n=bo(12,a,o,p|2),n.elementType=N,n.lanes=m,n;case I:return n=bo(13,a,o,p),n.elementType=I,n.lanes=m,n;case q:return n=bo(19,a,o,p),n.elementType=q,n.lanes=m,n;default:if(typeof n=="object"&&n!==null)switch(n.$$typeof){case z:v=10;break e;case L:v=9;break e;case O:v=11;break e;case M:v=14;break e;case E:v=16,l=null;break e}v=29,a=Error(r(130,n===null?"null":typeof n,"")),l=null}return o=bo(v,a,o,p),o.elementType=n,o.type=l,o.lanes=m,o}function Ga(n,o,a,l){return n=bo(7,n,l,o),n.lanes=a,n}function Cd(n,o,a){return n=bo(6,n,null,o),n.lanes=a,n}function Wh(n){var o=bo(18,null,null,0);return o.stateNode=n,o}function Ld(n,o,a){return o=bo(4,n.children!==null?n.children:[],n.key,o),o.lanes=a,o.stateNode={containerInfo:n.containerInfo,pendingChildren:null,implementation:n.implementation},o}var Bh=new WeakMap;function To(n,o){if(typeof n=="object"&&n!==null){var a=Bh.get(n);return a!==void 0?a:(o={value:n,source:o,stack:yt(o)},Bh.set(n,o),o)}return{value:n,source:o,stack:yt(o)}}var Or=[],Rr=0,rc=null,Ul=0,Ao=[],Oo=0,Js=null,rs=1,ls="";function Ss(n,o){Or[Rr++]=Ul,Or[Rr++]=rc,rc=n,Ul=o}function Fh(n,o,a){Ao[Oo++]=rs,Ao[Oo++]=ls,Ao[Oo++]=Js,Js=n;var l=rs;n=ls;var p=32-sn(l)-1;l&=~(1<<p),a+=1;var m=32-sn(o)+p;if(30<m){var v=p-p%5;m=(l&(1<<v)-1).toString(32),l>>=v,p-=v,rs=1<<32-sn(o)+p|a<<p|l,ls=m+n}else rs=1<<m|a<<p|l,ls=n}function Ed(n){n.return!==null&&(Ss(n,1),Fh(n,1,0))}function zd(n){for(;n===rc;)rc=Or[--Rr],Or[Rr]=null,Ul=Or[--Rr],Or[Rr]=null;for(;n===Js;)Js=Ao[--Oo],Ao[Oo]=null,ls=Ao[--Oo],Ao[Oo]=null,rs=Ao[--Oo],Ao[Oo]=null}function Gh(n,o){Ao[Oo++]=rs,Ao[Oo++]=ls,Ao[Oo++]=Js,rs=o.id,ls=o.overflow,Js=n}var Wn=null,ln=null,Et=!1,ea=null,Ro=!1,Md=Error(r(519));function ta(n){var o=Error(r(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw Zl(To(o,n)),Md}function Qh(n){var o=n.stateNode,a=n.type,l=n.memoizedProps;switch(o[xn]=n,o[Ln]=l,a){case"dialog":_t("cancel",o),_t("close",o);break;case"iframe":case"object":case"embed":_t("load",o);break;case"video":case"audio":for(a=0;a<ui.length;a++)_t(ui[a],o);break;case"source":_t("error",o);break;case"img":case"image":case"link":_t("error",o),_t("load",o);break;case"details":_t("toggle",o);break;case"input":_t("invalid",o),et(o,l.value,l.defaultValue,l.checked,l.defaultChecked,l.type,l.name,!0);break;case"select":_t("invalid",o);break;case"textarea":_t("invalid",o),ao(o,l.value,l.defaultValue,l.children)}a=l.children,typeof a!="string"&&typeof a!="number"&&typeof a!="bigint"||o.textContent===""+a||l.suppressHydrationWarning===!0||dx(o.textContent,a)?(l.popover!=null&&(_t("beforetoggle",o),_t("toggle",o)),l.onScroll!=null&&_t("scroll",o),l.onScrollEnd!=null&&_t("scrollend",o),l.onClick!=null&&(o.onclick=vs),o=!0):o=!1,o||ta(n,!0)}function Kh(n){for(Wn=n.return;Wn;)switch(Wn.tag){case 5:case 31:case 13:Ro=!1;return;case 27:case 3:Ro=!0;return;default:Wn=Wn.return}}function Dr(n){if(n!==Wn)return!1;if(!Et)return Kh(n),Et=!0,!1;var o=n.tag,a;if((a=o!==3&&o!==27)&&((a=o===5)&&(a=n.type,a=!(a!=="form"&&a!=="button")||Yf(n.type,n.memoizedProps)),a=!a),a&&ln&&ta(n),Kh(n),o===13){if(n=n.memoizedState,n=n!==null?n.dehydrated:null,!n)throw Error(r(317));ln=vx(n)}else if(o===31){if(n=n.memoizedState,n=n!==null?n.dehydrated:null,!n)throw Error(r(317));ln=vx(n)}else o===27?(o=ln,ha(n.type)?(n=tp,tp=null,ln=n):ln=o):ln=Wn?Io(n.stateNode.nextSibling):null;return!0}function Qa(){ln=Wn=null,Et=!1}function Td(){var n=ea;return n!==null&&(uo===null?uo=n:uo.push.apply(uo,n),ea=null),n}function Zl(n){ea===null?ea=[n]:ea.push(n)}var Ad=ue(null),Ka=null,_s=null;function na(n,o,a){pe(Ad,o._currentValue),o._currentValue=a}function js(n){n._currentValue=Ad.current,fe(Ad)}function Od(n,o,a){for(;n!==null;){var l=n.alternate;if((n.childLanes&o)!==o?(n.childLanes|=o,l!==null&&(l.childLanes|=o)):l!==null&&(l.childLanes&o)!==o&&(l.childLanes|=o),n===a)break;n=n.return}}function Rd(n,o,a,l){var p=n.child;for(p!==null&&(p.return=n);p!==null;){var m=p.dependencies;if(m!==null){var v=p.child;m=m.firstContext;e:for(;m!==null;){var C=m;m=p;for(var V=0;V<o.length;V++)if(C.context===o[V]){m.lanes|=a,C=m.alternate,C!==null&&(C.lanes|=a),Od(m.return,a,n),l||(v=null);break e}m=C.next}}else if(p.tag===18){if(v=p.return,v===null)throw Error(r(341));v.lanes|=a,m=v.alternate,m!==null&&(m.lanes|=a),Od(v,a,n),v=null}else v=p.child;if(v!==null)v.return=p;else for(v=p;v!==null;){if(v===n){v=null;break}if(p=v.sibling,p!==null){p.return=v.return,v=p;break}v=v.return}p=v}}function Ir(n,o,a,l){n=null;for(var p=o,m=!1;p!==null;){if(!m){if((p.flags&524288)!==0)m=!0;else if((p.flags&262144)!==0)break}if(p.tag===10){var v=p.alternate;if(v===null)throw Error(r(387));if(v=v.memoizedProps,v!==null){var C=p.type;yo(p.pendingProps.value,v.value)||(n!==null?n.push(C):n=[C])}}else if(p===Ce.current){if(v=p.alternate,v===null)throw Error(r(387));v.memoizedState.memoizedState!==p.memoizedState.memoizedState&&(n!==null?n.push(hi):n=[hi])}p=p.return}n!==null&&Rd(o,n,a,l),o.flags|=262144}function lc(n){for(n=n.firstContext;n!==null;){if(!yo(n.context._currentValue,n.memoizedValue))return!0;n=n.next}return!1}function Ya(n){Ka=n,_s=null,n=n.dependencies,n!==null&&(n.firstContext=null)}function Bn(n){return Yh(Ka,n)}function ic(n,o){return Ka===null&&Ya(n),Yh(n,o)}function Yh(n,o){var a=o._currentValue;if(o={context:o,memoizedValue:a,next:null},_s===null){if(n===null)throw Error(r(308));_s=o,n.dependencies={lanes:0,firstContext:o},n.flags|=524288}else _s=_s.next=o;return a}var qw=typeof AbortController<"u"?AbortController:function(){var n=[],o=this.signal={aborted:!1,addEventListener:function(a,l){n.push(l)}};this.abort=function(){o.aborted=!0,n.forEach(function(a){return a()})}},Hw=t.unstable_scheduleCallback,Uw=t.unstable_NormalPriority,En={$$typeof:z,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Dd(){return{controller:new qw,data:new Map,refCount:0}}function Vl(n){n.refCount--,n.refCount===0&&Hw(Uw,function(){n.controller.abort()})}var Wl=null,Id=0,$r=0,qr=null;function Zw(n,o){if(Wl===null){var a=Wl=[];Id=0,$r=Uf(),qr={status:"pending",value:void 0,then:function(l){a.push(l)}}}return Id++,o.then(Ph,Ph),o}function Ph(){if(--Id===0&&Wl!==null){qr!==null&&(qr.status="fulfilled");var n=Wl;Wl=null,$r=0,qr=null;for(var o=0;o<n.length;o++)(0,n[o])()}}function Vw(n,o){var a=[],l={status:"pending",value:null,reason:null,then:function(p){a.push(p)}};return n.then(function(){l.status="fulfilled",l.value=o;for(var p=0;p<a.length;p++)(0,a[p])(o)},function(p){for(l.status="rejected",l.reason=p,p=0;p<a.length;p++)(0,a[p])(void 0)}),l}var Xh=T.S;T.S=function(n,o){R1=it(),typeof o=="object"&&o!==null&&typeof o.then=="function"&&Zw(n,o),Xh!==null&&Xh(n,o)};var Pa=ue(null);function $d(){var n=Pa.current;return n!==null?n:nn.pooledCache}function cc(n,o){o===null?pe(Pa,Pa.current):pe(Pa,o.pool)}function Jh(){var n=$d();return n===null?null:{parent:En._currentValue,pool:n}}var Hr=Error(r(460)),qd=Error(r(474)),uc=Error(r(542)),dc={then:function(){}};function eg(n){return n=n.status,n==="fulfilled"||n==="rejected"}function tg(n,o,a){switch(a=n[a],a===void 0?n.push(o):a!==o&&(o.then(vs,vs),o=a),o.status){case"fulfilled":return o.value;case"rejected":throw n=o.reason,og(n),n;default:if(typeof o.status=="string")o.then(vs,vs);else{if(n=nn,n!==null&&100<n.shellSuspendCounter)throw Error(r(482));n=o,n.status="pending",n.then(function(l){if(o.status==="pending"){var p=o;p.status="fulfilled",p.value=l}},function(l){if(o.status==="pending"){var p=o;p.status="rejected",p.reason=l}})}switch(o.status){case"fulfilled":return o.value;case"rejected":throw n=o.reason,og(n),n}throw Ja=o,Hr}}function Xa(n){try{var o=n._init;return o(n._payload)}catch(a){throw a!==null&&typeof a=="object"&&typeof a.then=="function"?(Ja=a,Hr):a}}var Ja=null;function ng(){if(Ja===null)throw Error(r(459));var n=Ja;return Ja=null,n}function og(n){if(n===Hr||n===uc)throw Error(r(483))}var Ur=null,Bl=0;function fc(n){var o=Bl;return Bl+=1,Ur===null&&(Ur=[]),tg(Ur,n,o)}function Fl(n,o){o=o.props.ref,n.ref=o!==void 0?o:null}function pc(n,o){throw o.$$typeof===b?Error(r(525)):(n=Object.prototype.toString.call(o),Error(r(31,n==="[object Object]"?"object with keys {"+Object.keys(o).join(", ")+"}":n)))}function sg(n){function o(ee,Y){if(n){var se=ee.deletions;se===null?(ee.deletions=[Y],ee.flags|=16):se.push(Y)}}function a(ee,Y){if(!n)return null;for(;Y!==null;)o(ee,Y),Y=Y.sibling;return null}function l(ee){for(var Y=new Map;ee!==null;)ee.key!==null?Y.set(ee.key,ee):Y.set(ee.index,ee),ee=ee.sibling;return Y}function p(ee,Y){return ee=ks(ee,Y),ee.index=0,ee.sibling=null,ee}function m(ee,Y,se){return ee.index=se,n?(se=ee.alternate,se!==null?(se=se.index,se<Y?(ee.flags|=67108866,Y):se):(ee.flags|=67108866,Y)):(ee.flags|=1048576,Y)}function v(ee){return n&&ee.alternate===null&&(ee.flags|=67108866),ee}function C(ee,Y,se,ye){return Y===null||Y.tag!==6?(Y=Cd(se,ee.mode,ye),Y.return=ee,Y):(Y=p(Y,se),Y.return=ee,Y)}function V(ee,Y,se,ye){var Pe=se.type;return Pe===w?ge(ee,Y,se.props.children,ye,se.key):Y!==null&&(Y.elementType===Pe||typeof Pe=="object"&&Pe!==null&&Pe.$$typeof===E&&Xa(Pe)===Y.type)?(Y=p(Y,se.props),Fl(Y,se),Y.return=ee,Y):(Y=ac(se.type,se.key,se.props,null,ee.mode,ye),Fl(Y,se),Y.return=ee,Y)}function ae(ee,Y,se,ye){return Y===null||Y.tag!==4||Y.stateNode.containerInfo!==se.containerInfo||Y.stateNode.implementation!==se.implementation?(Y=Ld(se,ee.mode,ye),Y.return=ee,Y):(Y=p(Y,se.children||[]),Y.return=ee,Y)}function ge(ee,Y,se,ye,Pe){return Y===null||Y.tag!==7?(Y=Ga(se,ee.mode,ye,Pe),Y.return=ee,Y):(Y=p(Y,se),Y.return=ee,Y)}function Se(ee,Y,se){if(typeof Y=="string"&&Y!==""||typeof Y=="number"||typeof Y=="bigint")return Y=Cd(""+Y,ee.mode,se),Y.return=ee,Y;if(typeof Y=="object"&&Y!==null){switch(Y.$$typeof){case k:return se=ac(Y.type,Y.key,Y.props,null,ee.mode,se),Fl(se,Y),se.return=ee,se;case S:return Y=Ld(Y,ee.mode,se),Y.return=ee,Y;case E:return Y=Xa(Y),Se(ee,Y,se)}if(W(Y)||R(Y))return Y=Ga(Y,ee.mode,se,null),Y.return=ee,Y;if(typeof Y.then=="function")return Se(ee,fc(Y),se);if(Y.$$typeof===z)return Se(ee,ic(ee,Y),se);pc(ee,Y)}return null}function ie(ee,Y,se,ye){var Pe=Y!==null?Y.key:null;if(typeof se=="string"&&se!==""||typeof se=="number"||typeof se=="bigint")return Pe!==null?null:C(ee,Y,""+se,ye);if(typeof se=="object"&&se!==null){switch(se.$$typeof){case k:return se.key===Pe?V(ee,Y,se,ye):null;case S:return se.key===Pe?ae(ee,Y,se,ye):null;case E:return se=Xa(se),ie(ee,Y,se,ye)}if(W(se)||R(se))return Pe!==null?null:ge(ee,Y,se,ye,null);if(typeof se.then=="function")return ie(ee,Y,fc(se),ye);if(se.$$typeof===z)return ie(ee,Y,ic(ee,se),ye);pc(ee,se)}return null}function de(ee,Y,se,ye,Pe){if(typeof ye=="string"&&ye!==""||typeof ye=="number"||typeof ye=="bigint")return ee=ee.get(se)||null,C(Y,ee,""+ye,Pe);if(typeof ye=="object"&&ye!==null){switch(ye.$$typeof){case k:return ee=ee.get(ye.key===null?se:ye.key)||null,V(Y,ee,ye,Pe);case S:return ee=ee.get(ye.key===null?se:ye.key)||null,ae(Y,ee,ye,Pe);case E:return ye=Xa(ye),de(ee,Y,se,ye,Pe)}if(W(ye)||R(ye))return ee=ee.get(se)||null,ge(Y,ee,ye,Pe,null);if(typeof ye.then=="function")return de(ee,Y,se,fc(ye),Pe);if(ye.$$typeof===z)return de(ee,Y,se,ic(Y,ye),Pe);pc(Y,ye)}return null}function Be(ee,Y,se,ye){for(var Pe=null,It=null,Ge=Y,ht=Y=0,Nt=null;Ge!==null&&ht<se.length;ht++){Ge.index>ht?(Nt=Ge,Ge=null):Nt=Ge.sibling;var $t=ie(ee,Ge,se[ht],ye);if($t===null){Ge===null&&(Ge=Nt);break}n&&Ge&&$t.alternate===null&&o(ee,Ge),Y=m($t,Y,ht),It===null?Pe=$t:It.sibling=$t,It=$t,Ge=Nt}if(ht===se.length)return a(ee,Ge),Et&&Ss(ee,ht),Pe;if(Ge===null){for(;ht<se.length;ht++)Ge=Se(ee,se[ht],ye),Ge!==null&&(Y=m(Ge,Y,ht),It===null?Pe=Ge:It.sibling=Ge,It=Ge);return Et&&Ss(ee,ht),Pe}for(Ge=l(Ge);ht<se.length;ht++)Nt=de(Ge,ee,ht,se[ht],ye),Nt!==null&&(n&&Nt.alternate!==null&&Ge.delete(Nt.key===null?ht:Nt.key),Y=m(Nt,Y,ht),It===null?Pe=Nt:It.sibling=Nt,It=Nt);return n&&Ge.forEach(function(va){return o(ee,va)}),Et&&Ss(ee,ht),Pe}function nt(ee,Y,se,ye){if(se==null)throw Error(r(151));for(var Pe=null,It=null,Ge=Y,ht=Y=0,Nt=null,$t=se.next();Ge!==null&&!$t.done;ht++,$t=se.next()){Ge.index>ht?(Nt=Ge,Ge=null):Nt=Ge.sibling;var va=ie(ee,Ge,$t.value,ye);if(va===null){Ge===null&&(Ge=Nt);break}n&&Ge&&va.alternate===null&&o(ee,Ge),Y=m(va,Y,ht),It===null?Pe=va:It.sibling=va,It=va,Ge=Nt}if($t.done)return a(ee,Ge),Et&&Ss(ee,ht),Pe;if(Ge===null){for(;!$t.done;ht++,$t=se.next())$t=Se(ee,$t.value,ye),$t!==null&&(Y=m($t,Y,ht),It===null?Pe=$t:It.sibling=$t,It=$t);return Et&&Ss(ee,ht),Pe}for(Ge=l(Ge);!$t.done;ht++,$t=se.next())$t=de(Ge,ee,ht,$t.value,ye),$t!==null&&(n&&$t.alternate!==null&&Ge.delete($t.key===null?ht:$t.key),Y=m($t,Y,ht),It===null?Pe=$t:It.sibling=$t,It=$t);return n&&Ge.forEach(function(eS){return o(ee,eS)}),Et&&Ss(ee,ht),Pe}function Yt(ee,Y,se,ye){if(typeof se=="object"&&se!==null&&se.type===w&&se.key===null&&(se=se.props.children),typeof se=="object"&&se!==null){switch(se.$$typeof){case k:e:{for(var Pe=se.key;Y!==null;){if(Y.key===Pe){if(Pe=se.type,Pe===w){if(Y.tag===7){a(ee,Y.sibling),ye=p(Y,se.props.children),ye.return=ee,ee=ye;break e}}else if(Y.elementType===Pe||typeof Pe=="object"&&Pe!==null&&Pe.$$typeof===E&&Xa(Pe)===Y.type){a(ee,Y.sibling),ye=p(Y,se.props),Fl(ye,se),ye.return=ee,ee=ye;break e}a(ee,Y);break}else o(ee,Y);Y=Y.sibling}se.type===w?(ye=Ga(se.props.children,ee.mode,ye,se.key),ye.return=ee,ee=ye):(ye=ac(se.type,se.key,se.props,null,ee.mode,ye),Fl(ye,se),ye.return=ee,ee=ye)}return v(ee);case S:e:{for(Pe=se.key;Y!==null;){if(Y.key===Pe)if(Y.tag===4&&Y.stateNode.containerInfo===se.containerInfo&&Y.stateNode.implementation===se.implementation){a(ee,Y.sibling),ye=p(Y,se.children||[]),ye.return=ee,ee=ye;break e}else{a(ee,Y);break}else o(ee,Y);Y=Y.sibling}ye=Ld(se,ee.mode,ye),ye.return=ee,ee=ye}return v(ee);case E:return se=Xa(se),Yt(ee,Y,se,ye)}if(W(se))return Be(ee,Y,se,ye);if(R(se)){if(Pe=R(se),typeof Pe!="function")throw Error(r(150));return se=Pe.call(se),nt(ee,Y,se,ye)}if(typeof se.then=="function")return Yt(ee,Y,fc(se),ye);if(se.$$typeof===z)return Yt(ee,Y,ic(ee,se),ye);pc(ee,se)}return typeof se=="string"&&se!==""||typeof se=="number"||typeof se=="bigint"?(se=""+se,Y!==null&&Y.tag===6?(a(ee,Y.sibling),ye=p(Y,se),ye.return=ee,ee=ye):(a(ee,Y),ye=Cd(se,ee.mode,ye),ye.return=ee,ee=ye),v(ee)):a(ee,Y)}return function(ee,Y,se,ye){try{Bl=0;var Pe=Yt(ee,Y,se,ye);return Ur=null,Pe}catch(Ge){if(Ge===Hr||Ge===uc)throw Ge;var It=bo(29,Ge,null,ee.mode);return It.lanes=ye,It.return=ee,It}}}var er=sg(!0),ag=sg(!1),oa=!1;function Hd(n){n.updateQueue={baseState:n.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Ud(n,o){n=n.updateQueue,o.updateQueue===n&&(o.updateQueue={baseState:n.baseState,firstBaseUpdate:n.firstBaseUpdate,lastBaseUpdate:n.lastBaseUpdate,shared:n.shared,callbacks:null})}function sa(n){return{lane:n,tag:0,payload:null,callback:null,next:null}}function aa(n,o,a){var l=n.updateQueue;if(l===null)return null;if(l=l.shared,(Ht&2)!==0){var p=l.pending;return p===null?o.next=o:(o.next=p.next,p.next=o),l.pending=o,o=sc(n),Zh(n,null,a),o}return oc(n,l,o,a),sc(n)}function Gl(n,o,a){if(o=o.updateQueue,o!==null&&(o=o.shared,(a&4194048)!==0)){var l=o.lanes;l&=n.pendingLanes,a|=l,o.lanes=a,$a(n,a)}}function Zd(n,o){var a=n.updateQueue,l=n.alternate;if(l!==null&&(l=l.updateQueue,a===l)){var p=null,m=null;if(a=a.firstBaseUpdate,a!==null){do{var v={lane:a.lane,tag:a.tag,payload:a.payload,callback:null,next:null};m===null?p=m=v:m=m.next=v,a=a.next}while(a!==null);m===null?p=m=o:m=m.next=o}else p=m=o;a={baseState:l.baseState,firstBaseUpdate:p,lastBaseUpdate:m,shared:l.shared,callbacks:l.callbacks},n.updateQueue=a;return}n=a.lastBaseUpdate,n===null?a.firstBaseUpdate=o:n.next=o,a.lastBaseUpdate=o}var Vd=!1;function Ql(){if(Vd){var n=qr;if(n!==null)throw n}}function Kl(n,o,a,l){Vd=!1;var p=n.updateQueue;oa=!1;var m=p.firstBaseUpdate,v=p.lastBaseUpdate,C=p.shared.pending;if(C!==null){p.shared.pending=null;var V=C,ae=V.next;V.next=null,v===null?m=ae:v.next=ae,v=V;var ge=n.alternate;ge!==null&&(ge=ge.updateQueue,C=ge.lastBaseUpdate,C!==v&&(C===null?ge.firstBaseUpdate=ae:C.next=ae,ge.lastBaseUpdate=V))}if(m!==null){var Se=p.baseState;v=0,ge=ae=V=null,C=m;do{var ie=C.lane&-536870913,de=ie!==C.lane;if(de?(jt&ie)===ie:(l&ie)===ie){ie!==0&&ie===$r&&(Vd=!0),ge!==null&&(ge=ge.next={lane:0,tag:C.tag,payload:C.payload,callback:null,next:null});e:{var Be=n,nt=C;ie=o;var Yt=a;switch(nt.tag){case 1:if(Be=nt.payload,typeof Be=="function"){Se=Be.call(Yt,Se,ie);break e}Se=Be;break e;case 3:Be.flags=Be.flags&-65537|128;case 0:if(Be=nt.payload,ie=typeof Be=="function"?Be.call(Yt,Se,ie):Be,ie==null)break e;Se=y({},Se,ie);break e;case 2:oa=!0}}ie=C.callback,ie!==null&&(n.flags|=64,de&&(n.flags|=8192),de=p.callbacks,de===null?p.callbacks=[ie]:de.push(ie))}else de={lane:ie,tag:C.tag,payload:C.payload,callback:C.callback,next:null},ge===null?(ae=ge=de,V=Se):ge=ge.next=de,v|=ie;if(C=C.next,C===null){if(C=p.shared.pending,C===null)break;de=C,C=de.next,de.next=null,p.lastBaseUpdate=de,p.shared.pending=null}}while(!0);ge===null&&(V=Se),p.baseState=V,p.firstBaseUpdate=ae,p.lastBaseUpdate=ge,m===null&&(p.shared.lanes=0),ua|=v,n.lanes=v,n.memoizedState=Se}}function rg(n,o){if(typeof n!="function")throw Error(r(191,n));n.call(o)}function lg(n,o){var a=n.callbacks;if(a!==null)for(n.callbacks=null,n=0;n<a.length;n++)rg(a[n],o)}var Zr=ue(null),mc=ue(0);function ig(n,o){n=Os,pe(mc,n),pe(Zr,o),Os=n|o.baseLanes}function Wd(){pe(mc,Os),pe(Zr,Zr.current)}function Bd(){Os=mc.current,fe(Zr),fe(mc)}var vo=ue(null),Do=null;function ra(n){var o=n.alternate;pe(Sn,Sn.current&1),pe(vo,n),Do===null&&(o===null||Zr.current!==null||o.memoizedState!==null)&&(Do=n)}function Fd(n){pe(Sn,Sn.current),pe(vo,n),Do===null&&(Do=n)}function cg(n){n.tag===22?(pe(Sn,Sn.current),pe(vo,n),Do===null&&(Do=n)):la()}function la(){pe(Sn,Sn.current),pe(vo,vo.current)}function wo(n){fe(vo),Do===n&&(Do=null),fe(Sn)}var Sn=ue(0);function hc(n){for(var o=n;o!==null;){if(o.tag===13){var a=o.memoizedState;if(a!==null&&(a=a.dehydrated,a===null||Jf(a)||ep(a)))return o}else if(o.tag===19&&(o.memoizedProps.revealOrder==="forwards"||o.memoizedProps.revealOrder==="backwards"||o.memoizedProps.revealOrder==="unstable_legacy-backwards"||o.memoizedProps.revealOrder==="together")){if((o.flags&128)!==0)return o}else if(o.child!==null){o.child.return=o,o=o.child;continue}if(o===n)break;for(;o.sibling===null;){if(o.return===null||o.return===n)return null;o=o.return}o.sibling.return=o.return,o=o.sibling}return null}var Ns=0,pt=null,Qt=null,zn=null,gc=!1,Vr=!1,tr=!1,xc=0,Yl=0,Wr=null,Ww=0;function vn(){throw Error(r(321))}function Gd(n,o){if(o===null)return!1;for(var a=0;a<o.length&&a<n.length;a++)if(!yo(n[a],o[a]))return!1;return!0}function Qd(n,o,a,l,p,m){return Ns=m,pt=o,o.memoizedState=null,o.updateQueue=null,o.lanes=0,T.H=n===null||n.memoizedState===null?Fg:uf,tr=!1,m=a(l,p),tr=!1,Vr&&(m=dg(o,a,l,p)),ug(n),m}function ug(n){T.H=Jl;var o=Qt!==null&&Qt.next!==null;if(Ns=0,zn=Qt=pt=null,gc=!1,Yl=0,Wr=null,o)throw Error(r(300));n===null||Mn||(n=n.dependencies,n!==null&&lc(n)&&(Mn=!0))}function dg(n,o,a,l){pt=n;var p=0;do{if(Vr&&(Wr=null),Yl=0,Vr=!1,25<=p)throw Error(r(301));if(p+=1,zn=Qt=null,n.updateQueue!=null){var m=n.updateQueue;m.lastEffect=null,m.events=null,m.stores=null,m.memoCache!=null&&(m.memoCache.index=0)}T.H=Gg,m=o(a,l)}while(Vr);return m}function Bw(){var n=T.H,o=n.useState()[0];return o=typeof o.then=="function"?Pl(o):o,n=n.useState()[0],(Qt!==null?Qt.memoizedState:null)!==n&&(pt.flags|=1024),o}function Kd(){var n=xc!==0;return xc=0,n}function Yd(n,o,a){o.updateQueue=n.updateQueue,o.flags&=-2053,n.lanes&=~a}function Pd(n){if(gc){for(n=n.memoizedState;n!==null;){var o=n.queue;o!==null&&(o.pending=null),n=n.next}gc=!1}Ns=0,zn=Qt=pt=null,Vr=!1,Yl=xc=0,Wr=null}function to(){var n={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return zn===null?pt.memoizedState=zn=n:zn=zn.next=n,zn}function _n(){if(Qt===null){var n=pt.alternate;n=n!==null?n.memoizedState:null}else n=Qt.next;var o=zn===null?pt.memoizedState:zn.next;if(o!==null)zn=o,Qt=n;else{if(n===null)throw pt.alternate===null?Error(r(467)):Error(r(310));Qt=n,n={memoizedState:Qt.memoizedState,baseState:Qt.baseState,baseQueue:Qt.baseQueue,queue:Qt.queue,next:null},zn===null?pt.memoizedState=zn=n:zn=zn.next=n}return zn}function yc(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function Pl(n){var o=Yl;return Yl+=1,Wr===null&&(Wr=[]),n=tg(Wr,n,o),o=pt,(zn===null?o.memoizedState:zn.next)===null&&(o=o.alternate,T.H=o===null||o.memoizedState===null?Fg:uf),n}function bc(n){if(n!==null&&typeof n=="object"){if(typeof n.then=="function")return Pl(n);if(n.$$typeof===z)return Bn(n)}throw Error(r(438,String(n)))}function Xd(n){var o=null,a=pt.updateQueue;if(a!==null&&(o=a.memoCache),o==null){var l=pt.alternate;l!==null&&(l=l.updateQueue,l!==null&&(l=l.memoCache,l!=null&&(o={data:l.data.map(function(p){return p.slice()}),index:0})))}if(o==null&&(o={data:[],index:0}),a===null&&(a=yc(),pt.updateQueue=a),a.memoCache=o,a=o.data[o.index],a===void 0)for(a=o.data[o.index]=Array(n),l=0;l<n;l++)a[l]=Q;return o.index++,a}function Cs(n,o){return typeof o=="function"?o(n):o}function vc(n){var o=_n();return Jd(o,Qt,n)}function Jd(n,o,a){var l=n.queue;if(l===null)throw Error(r(311));l.lastRenderedReducer=a;var p=n.baseQueue,m=l.pending;if(m!==null){if(p!==null){var v=p.next;p.next=m.next,m.next=v}o.baseQueue=p=m,l.pending=null}if(m=n.baseState,p===null)n.memoizedState=m;else{o=p.next;var C=v=null,V=null,ae=o,ge=!1;do{var Se=ae.lane&-536870913;if(Se!==ae.lane?(jt&Se)===Se:(Ns&Se)===Se){var ie=ae.revertLane;if(ie===0)V!==null&&(V=V.next={lane:0,revertLane:0,gesture:null,action:ae.action,hasEagerState:ae.hasEagerState,eagerState:ae.eagerState,next:null}),Se===$r&&(ge=!0);else if((Ns&ie)===ie){ae=ae.next,ie===$r&&(ge=!0);continue}else Se={lane:0,revertLane:ae.revertLane,gesture:null,action:ae.action,hasEagerState:ae.hasEagerState,eagerState:ae.eagerState,next:null},V===null?(C=V=Se,v=m):V=V.next=Se,pt.lanes|=ie,ua|=ie;Se=ae.action,tr&&a(m,Se),m=ae.hasEagerState?ae.eagerState:a(m,Se)}else ie={lane:Se,revertLane:ae.revertLane,gesture:ae.gesture,action:ae.action,hasEagerState:ae.hasEagerState,eagerState:ae.eagerState,next:null},V===null?(C=V=ie,v=m):V=V.next=ie,pt.lanes|=Se,ua|=Se;ae=ae.next}while(ae!==null&&ae!==o);if(V===null?v=m:V.next=C,!yo(m,n.memoizedState)&&(Mn=!0,ge&&(a=qr,a!==null)))throw a;n.memoizedState=m,n.baseState=v,n.baseQueue=V,l.lastRenderedState=m}return p===null&&(l.lanes=0),[n.memoizedState,l.dispatch]}function ef(n){var o=_n(),a=o.queue;if(a===null)throw Error(r(311));a.lastRenderedReducer=n;var l=a.dispatch,p=a.pending,m=o.memoizedState;if(p!==null){a.pending=null;var v=p=p.next;do m=n(m,v.action),v=v.next;while(v!==p);yo(m,o.memoizedState)||(Mn=!0),o.memoizedState=m,o.baseQueue===null&&(o.baseState=m),a.lastRenderedState=m}return[m,l]}function fg(n,o,a){var l=pt,p=_n(),m=Et;if(m){if(a===void 0)throw Error(r(407));a=a()}else a=o();var v=!yo((Qt||p).memoizedState,a);if(v&&(p.memoizedState=a,Mn=!0),p=p.queue,of(hg.bind(null,l,p,n),[n]),p.getSnapshot!==o||v||zn!==null&&zn.memoizedState.tag&1){if(l.flags|=2048,Br(9,{destroy:void 0},mg.bind(null,l,p,a,o),null),nn===null)throw Error(r(349));m||(Ns&127)!==0||pg(l,o,a)}return a}function pg(n,o,a){n.flags|=16384,n={getSnapshot:o,value:a},o=pt.updateQueue,o===null?(o=yc(),pt.updateQueue=o,o.stores=[n]):(a=o.stores,a===null?o.stores=[n]:a.push(n))}function mg(n,o,a,l){o.value=a,o.getSnapshot=l,gg(o)&&xg(n)}function hg(n,o,a){return a(function(){gg(o)&&xg(n)})}function gg(n){var o=n.getSnapshot;n=n.value;try{var a=o();return!yo(n,a)}catch{return!0}}function xg(n){var o=Fa(n,2);o!==null&&fo(o,n,2)}function tf(n){var o=to();if(typeof n=="function"){var a=n;if(n=a(),tr){rn(!0);try{a()}finally{rn(!1)}}}return o.memoizedState=o.baseState=n,o.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Cs,lastRenderedState:n},o}function yg(n,o,a,l){return n.baseState=a,Jd(n,Qt,typeof l=="function"?l:Cs)}function Fw(n,o,a,l,p){if(Sc(n))throw Error(r(485));if(n=o.action,n!==null){var m={payload:p,action:n,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(v){m.listeners.push(v)}};T.T!==null?a(!0):m.isTransition=!1,l(m),a=o.pending,a===null?(m.next=o.pending=m,bg(o,m)):(m.next=a.next,o.pending=a.next=m)}}function bg(n,o){var a=o.action,l=o.payload,p=n.state;if(o.isTransition){var m=T.T,v={};T.T=v;try{var C=a(p,l),V=T.S;V!==null&&V(v,C),vg(n,o,C)}catch(ae){nf(n,o,ae)}finally{m!==null&&v.types!==null&&(m.types=v.types),T.T=m}}else try{m=a(p,l),vg(n,o,m)}catch(ae){nf(n,o,ae)}}function vg(n,o,a){a!==null&&typeof a=="object"&&typeof a.then=="function"?a.then(function(l){wg(n,o,l)},function(l){return nf(n,o,l)}):wg(n,o,a)}function wg(n,o,a){o.status="fulfilled",o.value=a,kg(o),n.state=a,o=n.pending,o!==null&&(a=o.next,a===o?n.pending=null:(a=a.next,o.next=a,bg(n,a)))}function nf(n,o,a){var l=n.pending;if(n.pending=null,l!==null){l=l.next;do o.status="rejected",o.reason=a,kg(o),o=o.next;while(o!==l)}n.action=null}function kg(n){n=n.listeners;for(var o=0;o<n.length;o++)(0,n[o])()}function Sg(n,o){return o}function _g(n,o){if(Et){var a=nn.formState;if(a!==null){e:{var l=pt;if(Et){if(ln){t:{for(var p=ln,m=Ro;p.nodeType!==8;){if(!m){p=null;break t}if(p=Io(p.nextSibling),p===null){p=null;break t}}m=p.data,p=m==="F!"||m==="F"?p:null}if(p){ln=Io(p.nextSibling),l=p.data==="F!";break e}}ta(l)}l=!1}l&&(o=a[0])}}return a=to(),a.memoizedState=a.baseState=o,l={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Sg,lastRenderedState:o},a.queue=l,a=Vg.bind(null,pt,l),l.dispatch=a,l=tf(!1),m=cf.bind(null,pt,!1,l.queue),l=to(),p={state:o,dispatch:null,action:n,pending:null},l.queue=p,a=Fw.bind(null,pt,p,m,a),p.dispatch=a,l.memoizedState=n,[o,a,!1]}function jg(n){var o=_n();return Ng(o,Qt,n)}function Ng(n,o,a){if(o=Jd(n,o,Sg)[0],n=vc(Cs)[0],typeof o=="object"&&o!==null&&typeof o.then=="function")try{var l=Pl(o)}catch(v){throw v===Hr?uc:v}else l=o;o=_n();var p=o.queue,m=p.dispatch;return a!==o.memoizedState&&(pt.flags|=2048,Br(9,{destroy:void 0},Gw.bind(null,p,a),null)),[l,m,n]}function Gw(n,o){n.action=o}function Cg(n){var o=_n(),a=Qt;if(a!==null)return Ng(o,a,n);_n(),o=o.memoizedState,a=_n();var l=a.queue.dispatch;return a.memoizedState=n,[o,l,!1]}function Br(n,o,a,l){return n={tag:n,create:a,deps:l,inst:o,next:null},o=pt.updateQueue,o===null&&(o=yc(),pt.updateQueue=o),a=o.lastEffect,a===null?o.lastEffect=n.next=n:(l=a.next,a.next=n,n.next=l,o.lastEffect=n),n}function Lg(){return _n().memoizedState}function wc(n,o,a,l){var p=to();pt.flags|=n,p.memoizedState=Br(1|o,{destroy:void 0},a,l===void 0?null:l)}function kc(n,o,a,l){var p=_n();l=l===void 0?null:l;var m=p.memoizedState.inst;Qt!==null&&l!==null&&Gd(l,Qt.memoizedState.deps)?p.memoizedState=Br(o,m,a,l):(pt.flags|=n,p.memoizedState=Br(1|o,m,a,l))}function Eg(n,o){wc(8390656,8,n,o)}function of(n,o){kc(2048,8,n,o)}function Qw(n){pt.flags|=4;var o=pt.updateQueue;if(o===null)o=yc(),pt.updateQueue=o,o.events=[n];else{var a=o.events;a===null?o.events=[n]:a.push(n)}}function zg(n){var o=_n().memoizedState;return Qw({ref:o,nextImpl:n}),function(){if((Ht&2)!==0)throw Error(r(440));return o.impl.apply(void 0,arguments)}}function Mg(n,o){return kc(4,2,n,o)}function Tg(n,o){return kc(4,4,n,o)}function Ag(n,o){if(typeof o=="function"){n=n();var a=o(n);return function(){typeof a=="function"?a():o(null)}}if(o!=null)return n=n(),o.current=n,function(){o.current=null}}function Og(n,o,a){a=a!=null?a.concat([n]):null,kc(4,4,Ag.bind(null,o,n),a)}function sf(){}function Rg(n,o){var a=_n();o=o===void 0?null:o;var l=a.memoizedState;return o!==null&&Gd(o,l[1])?l[0]:(a.memoizedState=[n,o],n)}function Dg(n,o){var a=_n();o=o===void 0?null:o;var l=a.memoizedState;if(o!==null&&Gd(o,l[1]))return l[0];if(l=n(),tr){rn(!0);try{n()}finally{rn(!1)}}return a.memoizedState=[l,o],l}function af(n,o,a){return a===void 0||(Ns&1073741824)!==0&&(jt&261930)===0?n.memoizedState=o:(n.memoizedState=a,n=I1(),pt.lanes|=n,ua|=n,a)}function Ig(n,o,a,l){return yo(a,o)?a:Zr.current!==null?(n=af(n,a,l),yo(n,o)||(Mn=!0),n):(Ns&42)===0||(Ns&1073741824)!==0&&(jt&261930)===0?(Mn=!0,n.memoizedState=a):(n=I1(),pt.lanes|=n,ua|=n,o)}function $g(n,o,a,l,p){var m=A.p;A.p=m!==0&&8>m?m:8;var v=T.T,C={};T.T=C,cf(n,!1,o,a);try{var V=p(),ae=T.S;if(ae!==null&&ae(C,V),V!==null&&typeof V=="object"&&typeof V.then=="function"){var ge=Vw(V,l);Xl(n,o,ge,_o(n))}else Xl(n,o,l,_o(n))}catch(Se){Xl(n,o,{then:function(){},status:"rejected",reason:Se},_o())}finally{A.p=m,v!==null&&C.types!==null&&(v.types=C.types),T.T=v}}function Kw(){}function rf(n,o,a,l){if(n.tag!==5)throw Error(r(476));var p=qg(n).queue;$g(n,p,o,K,a===null?Kw:function(){return Hg(n),a(l)})}function qg(n){var o=n.memoizedState;if(o!==null)return o;o={memoizedState:K,baseState:K,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Cs,lastRenderedState:K},next:null};var a={};return o.next={memoizedState:a,baseState:a,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Cs,lastRenderedState:a},next:null},n.memoizedState=o,n=n.alternate,n!==null&&(n.memoizedState=o),o}function Hg(n){var o=qg(n);o.next===null&&(o=n.alternate.memoizedState),Xl(n,o.next.queue,{},_o())}function lf(){return Bn(hi)}function Ug(){return _n().memoizedState}function Zg(){return _n().memoizedState}function Yw(n){for(var o=n.return;o!==null;){switch(o.tag){case 24:case 3:var a=_o();n=sa(a);var l=aa(o,n,a);l!==null&&(fo(l,o,a),Gl(l,o,a)),o={cache:Dd()},n.payload=o;return}o=o.return}}function Pw(n,o,a){var l=_o();a={lane:l,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},Sc(n)?Wg(o,a):(a=jd(n,o,a,l),a!==null&&(fo(a,n,l),Bg(a,o,l)))}function Vg(n,o,a){var l=_o();Xl(n,o,a,l)}function Xl(n,o,a,l){var p={lane:l,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null};if(Sc(n))Wg(o,p);else{var m=n.alternate;if(n.lanes===0&&(m===null||m.lanes===0)&&(m=o.lastRenderedReducer,m!==null))try{var v=o.lastRenderedState,C=m(v,a);if(p.hasEagerState=!0,p.eagerState=C,yo(C,v))return oc(n,o,p,0),nn===null&&nc(),!1}catch{}if(a=jd(n,o,p,l),a!==null)return fo(a,n,l),Bg(a,o,l),!0}return!1}function cf(n,o,a,l){if(l={lane:2,revertLane:Uf(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Sc(n)){if(o)throw Error(r(479))}else o=jd(n,a,l,2),o!==null&&fo(o,n,2)}function Sc(n){var o=n.alternate;return n===pt||o!==null&&o===pt}function Wg(n,o){Vr=gc=!0;var a=n.pending;a===null?o.next=o:(o.next=a.next,a.next=o),n.pending=o}function Bg(n,o,a){if((a&4194048)!==0){var l=o.lanes;l&=n.pendingLanes,a|=l,o.lanes=a,$a(n,a)}}var Jl={readContext:Bn,use:bc,useCallback:vn,useContext:vn,useEffect:vn,useImperativeHandle:vn,useLayoutEffect:vn,useInsertionEffect:vn,useMemo:vn,useReducer:vn,useRef:vn,useState:vn,useDebugValue:vn,useDeferredValue:vn,useTransition:vn,useSyncExternalStore:vn,useId:vn,useHostTransitionStatus:vn,useFormState:vn,useActionState:vn,useOptimistic:vn,useMemoCache:vn,useCacheRefresh:vn};Jl.useEffectEvent=vn;var Fg={readContext:Bn,use:bc,useCallback:function(n,o){return to().memoizedState=[n,o===void 0?null:o],n},useContext:Bn,useEffect:Eg,useImperativeHandle:function(n,o,a){a=a!=null?a.concat([n]):null,wc(4194308,4,Ag.bind(null,o,n),a)},useLayoutEffect:function(n,o){return wc(4194308,4,n,o)},useInsertionEffect:function(n,o){wc(4,2,n,o)},useMemo:function(n,o){var a=to();o=o===void 0?null:o;var l=n();if(tr){rn(!0);try{n()}finally{rn(!1)}}return a.memoizedState=[l,o],l},useReducer:function(n,o,a){var l=to();if(a!==void 0){var p=a(o);if(tr){rn(!0);try{a(o)}finally{rn(!1)}}}else p=o;return l.memoizedState=l.baseState=p,n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:n,lastRenderedState:p},l.queue=n,n=n.dispatch=Pw.bind(null,pt,n),[l.memoizedState,n]},useRef:function(n){var o=to();return n={current:n},o.memoizedState=n},useState:function(n){n=tf(n);var o=n.queue,a=Vg.bind(null,pt,o);return o.dispatch=a,[n.memoizedState,a]},useDebugValue:sf,useDeferredValue:function(n,o){var a=to();return af(a,n,o)},useTransition:function(){var n=tf(!1);return n=$g.bind(null,pt,n.queue,!0,!1),to().memoizedState=n,[!1,n]},useSyncExternalStore:function(n,o,a){var l=pt,p=to();if(Et){if(a===void 0)throw Error(r(407));a=a()}else{if(a=o(),nn===null)throw Error(r(349));(jt&127)!==0||pg(l,o,a)}p.memoizedState=a;var m={value:a,getSnapshot:o};return p.queue=m,Eg(hg.bind(null,l,m,n),[n]),l.flags|=2048,Br(9,{destroy:void 0},mg.bind(null,l,m,a,o),null),a},useId:function(){var n=to(),o=nn.identifierPrefix;if(Et){var a=ls,l=rs;a=(l&~(1<<32-sn(l)-1)).toString(32)+a,o="_"+o+"R_"+a,a=xc++,0<a&&(o+="H"+a.toString(32)),o+="_"}else a=Ww++,o="_"+o+"r_"+a.toString(32)+"_";return n.memoizedState=o},useHostTransitionStatus:lf,useFormState:_g,useActionState:_g,useOptimistic:function(n){var o=to();o.memoizedState=o.baseState=n;var a={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return o.queue=a,o=cf.bind(null,pt,!0,a),a.dispatch=o,[n,o]},useMemoCache:Xd,useCacheRefresh:function(){return to().memoizedState=Yw.bind(null,pt)},useEffectEvent:function(n){var o=to(),a={impl:n};return o.memoizedState=a,function(){if((Ht&2)!==0)throw Error(r(440));return a.impl.apply(void 0,arguments)}}},uf={readContext:Bn,use:bc,useCallback:Rg,useContext:Bn,useEffect:of,useImperativeHandle:Og,useInsertionEffect:Mg,useLayoutEffect:Tg,useMemo:Dg,useReducer:vc,useRef:Lg,useState:function(){return vc(Cs)},useDebugValue:sf,useDeferredValue:function(n,o){var a=_n();return Ig(a,Qt.memoizedState,n,o)},useTransition:function(){var n=vc(Cs)[0],o=_n().memoizedState;return[typeof n=="boolean"?n:Pl(n),o]},useSyncExternalStore:fg,useId:Ug,useHostTransitionStatus:lf,useFormState:jg,useActionState:jg,useOptimistic:function(n,o){var a=_n();return yg(a,Qt,n,o)},useMemoCache:Xd,useCacheRefresh:Zg};uf.useEffectEvent=zg;var Gg={readContext:Bn,use:bc,useCallback:Rg,useContext:Bn,useEffect:of,useImperativeHandle:Og,useInsertionEffect:Mg,useLayoutEffect:Tg,useMemo:Dg,useReducer:ef,useRef:Lg,useState:function(){return ef(Cs)},useDebugValue:sf,useDeferredValue:function(n,o){var a=_n();return Qt===null?af(a,n,o):Ig(a,Qt.memoizedState,n,o)},useTransition:function(){var n=ef(Cs)[0],o=_n().memoizedState;return[typeof n=="boolean"?n:Pl(n),o]},useSyncExternalStore:fg,useId:Ug,useHostTransitionStatus:lf,useFormState:Cg,useActionState:Cg,useOptimistic:function(n,o){var a=_n();return Qt!==null?yg(a,Qt,n,o):(a.baseState=n,[n,a.queue.dispatch])},useMemoCache:Xd,useCacheRefresh:Zg};Gg.useEffectEvent=zg;function df(n,o,a,l){o=n.memoizedState,a=a(l,o),a=a==null?o:y({},o,a),n.memoizedState=a,n.lanes===0&&(n.updateQueue.baseState=a)}var ff={enqueueSetState:function(n,o,a){n=n._reactInternals;var l=_o(),p=sa(l);p.payload=o,a!=null&&(p.callback=a),o=aa(n,p,l),o!==null&&(fo(o,n,l),Gl(o,n,l))},enqueueReplaceState:function(n,o,a){n=n._reactInternals;var l=_o(),p=sa(l);p.tag=1,p.payload=o,a!=null&&(p.callback=a),o=aa(n,p,l),o!==null&&(fo(o,n,l),Gl(o,n,l))},enqueueForceUpdate:function(n,o){n=n._reactInternals;var a=_o(),l=sa(a);l.tag=2,o!=null&&(l.callback=o),o=aa(n,l,a),o!==null&&(fo(o,n,a),Gl(o,n,a))}};function Qg(n,o,a,l,p,m,v){return n=n.stateNode,typeof n.shouldComponentUpdate=="function"?n.shouldComponentUpdate(l,m,v):o.prototype&&o.prototype.isPureReactComponent?!ql(a,l)||!ql(p,m):!0}function Kg(n,o,a,l){n=o.state,typeof o.componentWillReceiveProps=="function"&&o.componentWillReceiveProps(a,l),typeof o.UNSAFE_componentWillReceiveProps=="function"&&o.UNSAFE_componentWillReceiveProps(a,l),o.state!==n&&ff.enqueueReplaceState(o,o.state,null)}function nr(n,o){var a=o;if("ref"in o){a={};for(var l in o)l!=="ref"&&(a[l]=o[l])}if(n=n.defaultProps){a===o&&(a=y({},a));for(var p in n)a[p]===void 0&&(a[p]=n[p])}return a}function Yg(n){tc(n)}function Pg(n){console.error(n)}function Xg(n){tc(n)}function _c(n,o){try{var a=n.onUncaughtError;a(o.value,{componentStack:o.stack})}catch(l){setTimeout(function(){throw l})}}function Jg(n,o,a){try{var l=n.onCaughtError;l(a.value,{componentStack:a.stack,errorBoundary:o.tag===1?o.stateNode:null})}catch(p){setTimeout(function(){throw p})}}function pf(n,o,a){return a=sa(a),a.tag=3,a.payload={element:null},a.callback=function(){_c(n,o)},a}function e1(n){return n=sa(n),n.tag=3,n}function t1(n,o,a,l){var p=a.type.getDerivedStateFromError;if(typeof p=="function"){var m=l.value;n.payload=function(){return p(m)},n.callback=function(){Jg(o,a,l)}}var v=a.stateNode;v!==null&&typeof v.componentDidCatch=="function"&&(n.callback=function(){Jg(o,a,l),typeof p!="function"&&(da===null?da=new Set([this]):da.add(this));var C=l.stack;this.componentDidCatch(l.value,{componentStack:C!==null?C:""})})}function Xw(n,o,a,l,p){if(a.flags|=32768,l!==null&&typeof l=="object"&&typeof l.then=="function"){if(o=a.alternate,o!==null&&Ir(o,a,p,!0),a=vo.current,a!==null){switch(a.tag){case 31:case 13:return Do===null?Dc():a.alternate===null&&wn===0&&(wn=3),a.flags&=-257,a.flags|=65536,a.lanes=p,l===dc?a.flags|=16384:(o=a.updateQueue,o===null?a.updateQueue=new Set([l]):o.add(l),$f(n,l,p)),!1;case 22:return a.flags|=65536,l===dc?a.flags|=16384:(o=a.updateQueue,o===null?(o={transitions:null,markerInstances:null,retryQueue:new Set([l])},a.updateQueue=o):(a=o.retryQueue,a===null?o.retryQueue=new Set([l]):a.add(l)),$f(n,l,p)),!1}throw Error(r(435,a.tag))}return $f(n,l,p),Dc(),!1}if(Et)return o=vo.current,o!==null?((o.flags&65536)===0&&(o.flags|=256),o.flags|=65536,o.lanes=p,l!==Md&&(n=Error(r(422),{cause:l}),Zl(To(n,a)))):(l!==Md&&(o=Error(r(423),{cause:l}),Zl(To(o,a))),n=n.current.alternate,n.flags|=65536,p&=-p,n.lanes|=p,l=To(l,a),p=pf(n.stateNode,l,p),Zd(n,p),wn!==4&&(wn=2)),!1;var m=Error(r(520),{cause:l});if(m=To(m,a),li===null?li=[m]:li.push(m),wn!==4&&(wn=2),o===null)return!0;l=To(l,a),a=o;do{switch(a.tag){case 3:return a.flags|=65536,n=p&-p,a.lanes|=n,n=pf(a.stateNode,l,n),Zd(a,n),!1;case 1:if(o=a.type,m=a.stateNode,(a.flags&128)===0&&(typeof o.getDerivedStateFromError=="function"||m!==null&&typeof m.componentDidCatch=="function"&&(da===null||!da.has(m))))return a.flags|=65536,p&=-p,a.lanes|=p,p=e1(p),t1(p,n,a,l),Zd(a,p),!1}a=a.return}while(a!==null);return!1}var mf=Error(r(461)),Mn=!1;function Fn(n,o,a,l){o.child=n===null?ag(o,null,a,l):er(o,n.child,a,l)}function n1(n,o,a,l,p){a=a.render;var m=o.ref;if("ref"in l){var v={};for(var C in l)C!=="ref"&&(v[C]=l[C])}else v=l;return Ya(o),l=Qd(n,o,a,v,m,p),C=Kd(),n!==null&&!Mn?(Yd(n,o,p),Ls(n,o,p)):(Et&&C&&Ed(o),o.flags|=1,Fn(n,o,l,p),o.child)}function o1(n,o,a,l,p){if(n===null){var m=a.type;return typeof m=="function"&&!Nd(m)&&m.defaultProps===void 0&&a.compare===null?(o.tag=15,o.type=m,s1(n,o,m,l,p)):(n=ac(a.type,null,l,o,o.mode,p),n.ref=o.ref,n.return=o,o.child=n)}if(m=n.child,!kf(n,p)){var v=m.memoizedProps;if(a=a.compare,a=a!==null?a:ql,a(v,l)&&n.ref===o.ref)return Ls(n,o,p)}return o.flags|=1,n=ks(m,l),n.ref=o.ref,n.return=o,o.child=n}function s1(n,o,a,l,p){if(n!==null){var m=n.memoizedProps;if(ql(m,l)&&n.ref===o.ref)if(Mn=!1,o.pendingProps=l=m,kf(n,p))(n.flags&131072)!==0&&(Mn=!0);else return o.lanes=n.lanes,Ls(n,o,p)}return hf(n,o,a,l,p)}function a1(n,o,a,l){var p=l.children,m=n!==null?n.memoizedState:null;if(n===null&&o.stateNode===null&&(o.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),l.mode==="hidden"){if((o.flags&128)!==0){if(m=m!==null?m.baseLanes|a:a,n!==null){for(l=o.child=n.child,p=0;l!==null;)p=p|l.lanes|l.childLanes,l=l.sibling;l=p&~m}else l=0,o.child=null;return r1(n,o,m,a,l)}if((a&536870912)!==0)o.memoizedState={baseLanes:0,cachePool:null},n!==null&&cc(o,m!==null?m.cachePool:null),m!==null?ig(o,m):Wd(),cg(o);else return l=o.lanes=536870912,r1(n,o,m!==null?m.baseLanes|a:a,a,l)}else m!==null?(cc(o,m.cachePool),ig(o,m),la(),o.memoizedState=null):(n!==null&&cc(o,null),Wd(),la());return Fn(n,o,p,a),o.child}function ei(n,o){return n!==null&&n.tag===22||o.stateNode!==null||(o.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),o.sibling}function r1(n,o,a,l,p){var m=$d();return m=m===null?null:{parent:En._currentValue,pool:m},o.memoizedState={baseLanes:a,cachePool:m},n!==null&&cc(o,null),Wd(),cg(o),n!==null&&Ir(n,o,l,!0),o.childLanes=p,null}function jc(n,o){return o=Cc({mode:o.mode,children:o.children},n.mode),o.ref=n.ref,n.child=o,o.return=n,o}function l1(n,o,a){return er(o,n.child,null,a),n=jc(o,o.pendingProps),n.flags|=2,wo(o),o.memoizedState=null,n}function Jw(n,o,a){var l=o.pendingProps,p=(o.flags&128)!==0;if(o.flags&=-129,n===null){if(Et){if(l.mode==="hidden")return n=jc(o,l),o.lanes=536870912,ei(null,n);if(Fd(o),(n=ln)?(n=bx(n,Ro),n=n!==null&&n.data==="&"?n:null,n!==null&&(o.memoizedState={dehydrated:n,treeContext:Js!==null?{id:rs,overflow:ls}:null,retryLane:536870912,hydrationErrors:null},a=Wh(n),a.return=o,o.child=a,Wn=o,ln=null)):n=null,n===null)throw ta(o);return o.lanes=536870912,null}return jc(o,l)}var m=n.memoizedState;if(m!==null){var v=m.dehydrated;if(Fd(o),p)if(o.flags&256)o.flags&=-257,o=l1(n,o,a);else if(o.memoizedState!==null)o.child=n.child,o.flags|=128,o=null;else throw Error(r(558));else if(Mn||Ir(n,o,a,!1),p=(a&n.childLanes)!==0,Mn||p){if(l=nn,l!==null&&(v=qa(l,a),v!==0&&v!==m.retryLane))throw m.retryLane=v,Fa(n,v),fo(l,n,v),mf;Dc(),o=l1(n,o,a)}else n=m.treeContext,ln=Io(v.nextSibling),Wn=o,Et=!0,ea=null,Ro=!1,n!==null&&Gh(o,n),o=jc(o,l),o.flags|=4096;return o}return n=ks(n.child,{mode:l.mode,children:l.children}),n.ref=o.ref,o.child=n,n.return=o,n}function Nc(n,o){var a=o.ref;if(a===null)n!==null&&n.ref!==null&&(o.flags|=4194816);else{if(typeof a!="function"&&typeof a!="object")throw Error(r(284));(n===null||n.ref!==a)&&(o.flags|=4194816)}}function hf(n,o,a,l,p){return Ya(o),a=Qd(n,o,a,l,void 0,p),l=Kd(),n!==null&&!Mn?(Yd(n,o,p),Ls(n,o,p)):(Et&&l&&Ed(o),o.flags|=1,Fn(n,o,a,p),o.child)}function i1(n,o,a,l,p,m){return Ya(o),o.updateQueue=null,a=dg(o,l,a,p),ug(n),l=Kd(),n!==null&&!Mn?(Yd(n,o,m),Ls(n,o,m)):(Et&&l&&Ed(o),o.flags|=1,Fn(n,o,a,m),o.child)}function c1(n,o,a,l,p){if(Ya(o),o.stateNode===null){var m=Ar,v=a.contextType;typeof v=="object"&&v!==null&&(m=Bn(v)),m=new a(l,m),o.memoizedState=m.state!==null&&m.state!==void 0?m.state:null,m.updater=ff,o.stateNode=m,m._reactInternals=o,m=o.stateNode,m.props=l,m.state=o.memoizedState,m.refs={},Hd(o),v=a.contextType,m.context=typeof v=="object"&&v!==null?Bn(v):Ar,m.state=o.memoizedState,v=a.getDerivedStateFromProps,typeof v=="function"&&(df(o,a,v,l),m.state=o.memoizedState),typeof a.getDerivedStateFromProps=="function"||typeof m.getSnapshotBeforeUpdate=="function"||typeof m.UNSAFE_componentWillMount!="function"&&typeof m.componentWillMount!="function"||(v=m.state,typeof m.componentWillMount=="function"&&m.componentWillMount(),typeof m.UNSAFE_componentWillMount=="function"&&m.UNSAFE_componentWillMount(),v!==m.state&&ff.enqueueReplaceState(m,m.state,null),Kl(o,l,m,p),Ql(),m.state=o.memoizedState),typeof m.componentDidMount=="function"&&(o.flags|=4194308),l=!0}else if(n===null){m=o.stateNode;var C=o.memoizedProps,V=nr(a,C);m.props=V;var ae=m.context,ge=a.contextType;v=Ar,typeof ge=="object"&&ge!==null&&(v=Bn(ge));var Se=a.getDerivedStateFromProps;ge=typeof Se=="function"||typeof m.getSnapshotBeforeUpdate=="function",C=o.pendingProps!==C,ge||typeof m.UNSAFE_componentWillReceiveProps!="function"&&typeof m.componentWillReceiveProps!="function"||(C||ae!==v)&&Kg(o,m,l,v),oa=!1;var ie=o.memoizedState;m.state=ie,Kl(o,l,m,p),Ql(),ae=o.memoizedState,C||ie!==ae||oa?(typeof Se=="function"&&(df(o,a,Se,l),ae=o.memoizedState),(V=oa||Qg(o,a,V,l,ie,ae,v))?(ge||typeof m.UNSAFE_componentWillMount!="function"&&typeof m.componentWillMount!="function"||(typeof m.componentWillMount=="function"&&m.componentWillMount(),typeof m.UNSAFE_componentWillMount=="function"&&m.UNSAFE_componentWillMount()),typeof m.componentDidMount=="function"&&(o.flags|=4194308)):(typeof m.componentDidMount=="function"&&(o.flags|=4194308),o.memoizedProps=l,o.memoizedState=ae),m.props=l,m.state=ae,m.context=v,l=V):(typeof m.componentDidMount=="function"&&(o.flags|=4194308),l=!1)}else{m=o.stateNode,Ud(n,o),v=o.memoizedProps,ge=nr(a,v),m.props=ge,Se=o.pendingProps,ie=m.context,ae=a.contextType,V=Ar,typeof ae=="object"&&ae!==null&&(V=Bn(ae)),C=a.getDerivedStateFromProps,(ae=typeof C=="function"||typeof m.getSnapshotBeforeUpdate=="function")||typeof m.UNSAFE_componentWillReceiveProps!="function"&&typeof m.componentWillReceiveProps!="function"||(v!==Se||ie!==V)&&Kg(o,m,l,V),oa=!1,ie=o.memoizedState,m.state=ie,Kl(o,l,m,p),Ql();var de=o.memoizedState;v!==Se||ie!==de||oa||n!==null&&n.dependencies!==null&&lc(n.dependencies)?(typeof C=="function"&&(df(o,a,C,l),de=o.memoizedState),(ge=oa||Qg(o,a,ge,l,ie,de,V)||n!==null&&n.dependencies!==null&&lc(n.dependencies))?(ae||typeof m.UNSAFE_componentWillUpdate!="function"&&typeof m.componentWillUpdate!="function"||(typeof m.componentWillUpdate=="function"&&m.componentWillUpdate(l,de,V),typeof m.UNSAFE_componentWillUpdate=="function"&&m.UNSAFE_componentWillUpdate(l,de,V)),typeof m.componentDidUpdate=="function"&&(o.flags|=4),typeof m.getSnapshotBeforeUpdate=="function"&&(o.flags|=1024)):(typeof m.componentDidUpdate!="function"||v===n.memoizedProps&&ie===n.memoizedState||(o.flags|=4),typeof m.getSnapshotBeforeUpdate!="function"||v===n.memoizedProps&&ie===n.memoizedState||(o.flags|=1024),o.memoizedProps=l,o.memoizedState=de),m.props=l,m.state=de,m.context=V,l=ge):(typeof m.componentDidUpdate!="function"||v===n.memoizedProps&&ie===n.memoizedState||(o.flags|=4),typeof m.getSnapshotBeforeUpdate!="function"||v===n.memoizedProps&&ie===n.memoizedState||(o.flags|=1024),l=!1)}return m=l,Nc(n,o),l=(o.flags&128)!==0,m||l?(m=o.stateNode,a=l&&typeof a.getDerivedStateFromError!="function"?null:m.render(),o.flags|=1,n!==null&&l?(o.child=er(o,n.child,null,p),o.child=er(o,null,a,p)):Fn(n,o,a,p),o.memoizedState=m.state,n=o.child):n=Ls(n,o,p),n}function u1(n,o,a,l){return Qa(),o.flags|=256,Fn(n,o,a,l),o.child}var gf={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function xf(n){return{baseLanes:n,cachePool:Jh()}}function yf(n,o,a){return n=n!==null?n.childLanes&~a:0,o&&(n|=So),n}function d1(n,o,a){var l=o.pendingProps,p=!1,m=(o.flags&128)!==0,v;if((v=m)||(v=n!==null&&n.memoizedState===null?!1:(Sn.current&2)!==0),v&&(p=!0,o.flags&=-129),v=(o.flags&32)!==0,o.flags&=-33,n===null){if(Et){if(p?ra(o):la(),(n=ln)?(n=bx(n,Ro),n=n!==null&&n.data!=="&"?n:null,n!==null&&(o.memoizedState={dehydrated:n,treeContext:Js!==null?{id:rs,overflow:ls}:null,retryLane:536870912,hydrationErrors:null},a=Wh(n),a.return=o,o.child=a,Wn=o,ln=null)):n=null,n===null)throw ta(o);return ep(n)?o.lanes=32:o.lanes=536870912,null}var C=l.children;return l=l.fallback,p?(la(),p=o.mode,C=Cc({mode:"hidden",children:C},p),l=Ga(l,p,a,null),C.return=o,l.return=o,C.sibling=l,o.child=C,l=o.child,l.memoizedState=xf(a),l.childLanes=yf(n,v,a),o.memoizedState=gf,ei(null,l)):(ra(o),bf(o,C))}var V=n.memoizedState;if(V!==null&&(C=V.dehydrated,C!==null)){if(m)o.flags&256?(ra(o),o.flags&=-257,o=vf(n,o,a)):o.memoizedState!==null?(la(),o.child=n.child,o.flags|=128,o=null):(la(),C=l.fallback,p=o.mode,l=Cc({mode:"visible",children:l.children},p),C=Ga(C,p,a,null),C.flags|=2,l.return=o,C.return=o,l.sibling=C,o.child=l,er(o,n.child,null,a),l=o.child,l.memoizedState=xf(a),l.childLanes=yf(n,v,a),o.memoizedState=gf,o=ei(null,l));else if(ra(o),ep(C)){if(v=C.nextSibling&&C.nextSibling.dataset,v)var ae=v.dgst;v=ae,l=Error(r(419)),l.stack="",l.digest=v,Zl({value:l,source:null,stack:null}),o=vf(n,o,a)}else if(Mn||Ir(n,o,a,!1),v=(a&n.childLanes)!==0,Mn||v){if(v=nn,v!==null&&(l=qa(v,a),l!==0&&l!==V.retryLane))throw V.retryLane=l,Fa(n,l),fo(v,n,l),mf;Jf(C)||Dc(),o=vf(n,o,a)}else Jf(C)?(o.flags|=192,o.child=n.child,o=null):(n=V.treeContext,ln=Io(C.nextSibling),Wn=o,Et=!0,ea=null,Ro=!1,n!==null&&Gh(o,n),o=bf(o,l.children),o.flags|=4096);return o}return p?(la(),C=l.fallback,p=o.mode,V=n.child,ae=V.sibling,l=ks(V,{mode:"hidden",children:l.children}),l.subtreeFlags=V.subtreeFlags&65011712,ae!==null?C=ks(ae,C):(C=Ga(C,p,a,null),C.flags|=2),C.return=o,l.return=o,l.sibling=C,o.child=l,ei(null,l),l=o.child,C=n.child.memoizedState,C===null?C=xf(a):(p=C.cachePool,p!==null?(V=En._currentValue,p=p.parent!==V?{parent:V,pool:V}:p):p=Jh(),C={baseLanes:C.baseLanes|a,cachePool:p}),l.memoizedState=C,l.childLanes=yf(n,v,a),o.memoizedState=gf,ei(n.child,l)):(ra(o),a=n.child,n=a.sibling,a=ks(a,{mode:"visible",children:l.children}),a.return=o,a.sibling=null,n!==null&&(v=o.deletions,v===null?(o.deletions=[n],o.flags|=16):v.push(n)),o.child=a,o.memoizedState=null,a)}function bf(n,o){return o=Cc({mode:"visible",children:o},n.mode),o.return=n,n.child=o}function Cc(n,o){return n=bo(22,n,null,o),n.lanes=0,n}function vf(n,o,a){return er(o,n.child,null,a),n=bf(o,o.pendingProps.children),n.flags|=2,o.memoizedState=null,n}function f1(n,o,a){n.lanes|=o;var l=n.alternate;l!==null&&(l.lanes|=o),Od(n.return,o,a)}function wf(n,o,a,l,p,m){var v=n.memoizedState;v===null?n.memoizedState={isBackwards:o,rendering:null,renderingStartTime:0,last:l,tail:a,tailMode:p,treeForkCount:m}:(v.isBackwards=o,v.rendering=null,v.renderingStartTime=0,v.last=l,v.tail=a,v.tailMode=p,v.treeForkCount=m)}function p1(n,o,a){var l=o.pendingProps,p=l.revealOrder,m=l.tail;l=l.children;var v=Sn.current,C=(v&2)!==0;if(C?(v=v&1|2,o.flags|=128):v&=1,pe(Sn,v),Fn(n,o,l,a),l=Et?Ul:0,!C&&n!==null&&(n.flags&128)!==0)e:for(n=o.child;n!==null;){if(n.tag===13)n.memoizedState!==null&&f1(n,a,o);else if(n.tag===19)f1(n,a,o);else if(n.child!==null){n.child.return=n,n=n.child;continue}if(n===o)break e;for(;n.sibling===null;){if(n.return===null||n.return===o)break e;n=n.return}n.sibling.return=n.return,n=n.sibling}switch(p){case"forwards":for(a=o.child,p=null;a!==null;)n=a.alternate,n!==null&&hc(n)===null&&(p=a),a=a.sibling;a=p,a===null?(p=o.child,o.child=null):(p=a.sibling,a.sibling=null),wf(o,!1,p,a,m,l);break;case"backwards":case"unstable_legacy-backwards":for(a=null,p=o.child,o.child=null;p!==null;){if(n=p.alternate,n!==null&&hc(n)===null){o.child=p;break}n=p.sibling,p.sibling=a,a=p,p=n}wf(o,!0,a,null,m,l);break;case"together":wf(o,!1,null,null,void 0,l);break;default:o.memoizedState=null}return o.child}function Ls(n,o,a){if(n!==null&&(o.dependencies=n.dependencies),ua|=o.lanes,(a&o.childLanes)===0)if(n!==null){if(Ir(n,o,a,!1),(a&o.childLanes)===0)return null}else return null;if(n!==null&&o.child!==n.child)throw Error(r(153));if(o.child!==null){for(n=o.child,a=ks(n,n.pendingProps),o.child=a,a.return=o;n.sibling!==null;)n=n.sibling,a=a.sibling=ks(n,n.pendingProps),a.return=o;a.sibling=null}return o.child}function kf(n,o){return(n.lanes&o)!==0?!0:(n=n.dependencies,!!(n!==null&&lc(n)))}function ek(n,o,a){switch(o.tag){case 3:ce(o,o.stateNode.containerInfo),na(o,En,n.memoizedState.cache),Qa();break;case 27:case 5:Oe(o);break;case 4:ce(o,o.stateNode.containerInfo);break;case 10:na(o,o.type,o.memoizedProps.value);break;case 31:if(o.memoizedState!==null)return o.flags|=128,Fd(o),null;break;case 13:var l=o.memoizedState;if(l!==null)return l.dehydrated!==null?(ra(o),o.flags|=128,null):(a&o.child.childLanes)!==0?d1(n,o,a):(ra(o),n=Ls(n,o,a),n!==null?n.sibling:null);ra(o);break;case 19:var p=(n.flags&128)!==0;if(l=(a&o.childLanes)!==0,l||(Ir(n,o,a,!1),l=(a&o.childLanes)!==0),p){if(l)return p1(n,o,a);o.flags|=128}if(p=o.memoizedState,p!==null&&(p.rendering=null,p.tail=null,p.lastEffect=null),pe(Sn,Sn.current),l)break;return null;case 22:return o.lanes=0,a1(n,o,a,o.pendingProps);case 24:na(o,En,n.memoizedState.cache)}return Ls(n,o,a)}function m1(n,o,a){if(n!==null)if(n.memoizedProps!==o.pendingProps)Mn=!0;else{if(!kf(n,a)&&(o.flags&128)===0)return Mn=!1,ek(n,o,a);Mn=(n.flags&131072)!==0}else Mn=!1,Et&&(o.flags&1048576)!==0&&Fh(o,Ul,o.index);switch(o.lanes=0,o.tag){case 16:e:{var l=o.pendingProps;if(n=Xa(o.elementType),o.type=n,typeof n=="function")Nd(n)?(l=nr(n,l),o.tag=1,o=c1(null,o,n,l,a)):(o.tag=0,o=hf(null,o,n,l,a));else{if(n!=null){var p=n.$$typeof;if(p===O){o.tag=11,o=n1(null,o,n,l,a);break e}else if(p===M){o.tag=14,o=o1(null,o,n,l,a);break e}}throw o=U(n)||n,Error(r(306,o,""))}}return o;case 0:return hf(n,o,o.type,o.pendingProps,a);case 1:return l=o.type,p=nr(l,o.pendingProps),c1(n,o,l,p,a);case 3:e:{if(ce(o,o.stateNode.containerInfo),n===null)throw Error(r(387));l=o.pendingProps;var m=o.memoizedState;p=m.element,Ud(n,o),Kl(o,l,null,a);var v=o.memoizedState;if(l=v.cache,na(o,En,l),l!==m.cache&&Rd(o,[En],a,!0),Ql(),l=v.element,m.isDehydrated)if(m={element:l,isDehydrated:!1,cache:v.cache},o.updateQueue.baseState=m,o.memoizedState=m,o.flags&256){o=u1(n,o,l,a);break e}else if(l!==p){p=To(Error(r(424)),o),Zl(p),o=u1(n,o,l,a);break e}else for(n=o.stateNode.containerInfo,n.nodeType===9?n=n.body:n=n.nodeName==="HTML"?n.ownerDocument.body:n,ln=Io(n.firstChild),Wn=o,Et=!0,ea=null,Ro=!0,a=ag(o,null,l,a),o.child=a;a;)a.flags=a.flags&-3|4096,a=a.sibling;else{if(Qa(),l===p){o=Ls(n,o,a);break e}Fn(n,o,l,a)}o=o.child}return o;case 26:return Nc(n,o),n===null?(a=jx(o.type,null,o.pendingProps,null))?o.memoizedState=a:Et||(a=o.type,n=o.pendingProps,l=Vc(ve.current).createElement(a),l[xn]=o,l[Ln]=n,Gn(l,a,n),P(l),o.stateNode=l):o.memoizedState=jx(o.type,n.memoizedProps,o.pendingProps,n.memoizedState),null;case 27:return Oe(o),n===null&&Et&&(l=o.stateNode=kx(o.type,o.pendingProps,ve.current),Wn=o,Ro=!0,p=ln,ha(o.type)?(tp=p,ln=Io(l.firstChild)):ln=p),Fn(n,o,o.pendingProps.children,a),Nc(n,o),n===null&&(o.flags|=4194304),o.child;case 5:return n===null&&Et&&((p=l=ln)&&(l=zk(l,o.type,o.pendingProps,Ro),l!==null?(o.stateNode=l,Wn=o,ln=Io(l.firstChild),Ro=!1,p=!0):p=!1),p||ta(o)),Oe(o),p=o.type,m=o.pendingProps,v=n!==null?n.memoizedProps:null,l=m.children,Yf(p,m)?l=null:v!==null&&Yf(p,v)&&(o.flags|=32),o.memoizedState!==null&&(p=Qd(n,o,Bw,null,null,a),hi._currentValue=p),Nc(n,o),Fn(n,o,l,a),o.child;case 6:return n===null&&Et&&((n=a=ln)&&(a=Mk(a,o.pendingProps,Ro),a!==null?(o.stateNode=a,Wn=o,ln=null,n=!0):n=!1),n||ta(o)),null;case 13:return d1(n,o,a);case 4:return ce(o,o.stateNode.containerInfo),l=o.pendingProps,n===null?o.child=er(o,null,l,a):Fn(n,o,l,a),o.child;case 11:return n1(n,o,o.type,o.pendingProps,a);case 7:return Fn(n,o,o.pendingProps,a),o.child;case 8:return Fn(n,o,o.pendingProps.children,a),o.child;case 12:return Fn(n,o,o.pendingProps.children,a),o.child;case 10:return l=o.pendingProps,na(o,o.type,l.value),Fn(n,o,l.children,a),o.child;case 9:return p=o.type._context,l=o.pendingProps.children,Ya(o),p=Bn(p),l=l(p),o.flags|=1,Fn(n,o,l,a),o.child;case 14:return o1(n,o,o.type,o.pendingProps,a);case 15:return s1(n,o,o.type,o.pendingProps,a);case 19:return p1(n,o,a);case 31:return Jw(n,o,a);case 22:return a1(n,o,a,o.pendingProps);case 24:return Ya(o),l=Bn(En),n===null?(p=$d(),p===null&&(p=nn,m=Dd(),p.pooledCache=m,m.refCount++,m!==null&&(p.pooledCacheLanes|=a),p=m),o.memoizedState={parent:l,cache:p},Hd(o),na(o,En,p)):((n.lanes&a)!==0&&(Ud(n,o),Kl(o,null,null,a),Ql()),p=n.memoizedState,m=o.memoizedState,p.parent!==l?(p={parent:l,cache:l},o.memoizedState=p,o.lanes===0&&(o.memoizedState=o.updateQueue.baseState=p),na(o,En,l)):(l=m.cache,na(o,En,l),l!==p.cache&&Rd(o,[En],a,!0))),Fn(n,o,o.pendingProps.children,a),o.child;case 29:throw o.pendingProps}throw Error(r(156,o.tag))}function Es(n){n.flags|=4}function Sf(n,o,a,l,p){if((o=(n.mode&32)!==0)&&(o=!1),o){if(n.flags|=16777216,(p&335544128)===p)if(n.stateNode.complete)n.flags|=8192;else if(U1())n.flags|=8192;else throw Ja=dc,qd}else n.flags&=-16777217}function h1(n,o){if(o.type!=="stylesheet"||(o.state.loading&4)!==0)n.flags&=-16777217;else if(n.flags|=16777216,!zx(o))if(U1())n.flags|=8192;else throw Ja=dc,qd}function Lc(n,o){o!==null&&(n.flags|=4),n.flags&16384&&(o=n.tag!==22?Bs():536870912,n.lanes|=o,Kr|=o)}function ti(n,o){if(!Et)switch(n.tailMode){case"hidden":o=n.tail;for(var a=null;o!==null;)o.alternate!==null&&(a=o),o=o.sibling;a===null?n.tail=null:a.sibling=null;break;case"collapsed":a=n.tail;for(var l=null;a!==null;)a.alternate!==null&&(l=a),a=a.sibling;l===null?o||n.tail===null?n.tail=null:n.tail.sibling=null:l.sibling=null}}function cn(n){var o=n.alternate!==null&&n.alternate.child===n.child,a=0,l=0;if(o)for(var p=n.child;p!==null;)a|=p.lanes|p.childLanes,l|=p.subtreeFlags&65011712,l|=p.flags&65011712,p.return=n,p=p.sibling;else for(p=n.child;p!==null;)a|=p.lanes|p.childLanes,l|=p.subtreeFlags,l|=p.flags,p.return=n,p=p.sibling;return n.subtreeFlags|=l,n.childLanes=a,o}function tk(n,o,a){var l=o.pendingProps;switch(zd(o),o.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return cn(o),null;case 1:return cn(o),null;case 3:return a=o.stateNode,l=null,n!==null&&(l=n.memoizedState.cache),o.memoizedState.cache!==l&&(o.flags|=2048),js(En),te(),a.pendingContext&&(a.context=a.pendingContext,a.pendingContext=null),(n===null||n.child===null)&&(Dr(o)?Es(o):n===null||n.memoizedState.isDehydrated&&(o.flags&256)===0||(o.flags|=1024,Td())),cn(o),null;case 26:var p=o.type,m=o.memoizedState;return n===null?(Es(o),m!==null?(cn(o),h1(o,m)):(cn(o),Sf(o,p,null,l,a))):m?m!==n.memoizedState?(Es(o),cn(o),h1(o,m)):(cn(o),o.flags&=-16777217):(n=n.memoizedProps,n!==l&&Es(o),cn(o),Sf(o,p,n,l,a)),null;case 27:if(B(o),a=ve.current,p=o.type,n!==null&&o.stateNode!=null)n.memoizedProps!==l&&Es(o);else{if(!l){if(o.stateNode===null)throw Error(r(166));return cn(o),null}n=we.current,Dr(o)?Qh(o):(n=kx(p,l,a),o.stateNode=n,Es(o))}return cn(o),null;case 5:if(B(o),p=o.type,n!==null&&o.stateNode!=null)n.memoizedProps!==l&&Es(o);else{if(!l){if(o.stateNode===null)throw Error(r(166));return cn(o),null}if(m=we.current,Dr(o))Qh(o);else{var v=Vc(ve.current);switch(m){case 1:m=v.createElementNS("http://www.w3.org/2000/svg",p);break;case 2:m=v.createElementNS("http://www.w3.org/1998/Math/MathML",p);break;default:switch(p){case"svg":m=v.createElementNS("http://www.w3.org/2000/svg",p);break;case"math":m=v.createElementNS("http://www.w3.org/1998/Math/MathML",p);break;case"script":m=v.createElement("div"),m.innerHTML="<script><\/script>",m=m.removeChild(m.firstChild);break;case"select":m=typeof l.is=="string"?v.createElement("select",{is:l.is}):v.createElement("select"),l.multiple?m.multiple=!0:l.size&&(m.size=l.size);break;default:m=typeof l.is=="string"?v.createElement(p,{is:l.is}):v.createElement(p)}}m[xn]=o,m[Ln]=l;e:for(v=o.child;v!==null;){if(v.tag===5||v.tag===6)m.appendChild(v.stateNode);else if(v.tag!==4&&v.tag!==27&&v.child!==null){v.child.return=v,v=v.child;continue}if(v===o)break e;for(;v.sibling===null;){if(v.return===null||v.return===o)break e;v=v.return}v.sibling.return=v.return,v=v.sibling}o.stateNode=m;e:switch(Gn(m,p,l),p){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&Es(o)}}return cn(o),Sf(o,o.type,n===null?null:n.memoizedProps,o.pendingProps,a),null;case 6:if(n&&o.stateNode!=null)n.memoizedProps!==l&&Es(o);else{if(typeof l!="string"&&o.stateNode===null)throw Error(r(166));if(n=ve.current,Dr(o)){if(n=o.stateNode,a=o.memoizedProps,l=null,p=Wn,p!==null)switch(p.tag){case 27:case 5:l=p.memoizedProps}n[xn]=o,n=!!(n.nodeValue===a||l!==null&&l.suppressHydrationWarning===!0||dx(n.nodeValue,a)),n||ta(o,!0)}else n=Vc(n).createTextNode(l),n[xn]=o,o.stateNode=n}return cn(o),null;case 31:if(a=o.memoizedState,n===null||n.memoizedState!==null){if(l=Dr(o),a!==null){if(n===null){if(!l)throw Error(r(318));if(n=o.memoizedState,n=n!==null?n.dehydrated:null,!n)throw Error(r(557));n[xn]=o}else Qa(),(o.flags&128)===0&&(o.memoizedState=null),o.flags|=4;cn(o),n=!1}else a=Td(),n!==null&&n.memoizedState!==null&&(n.memoizedState.hydrationErrors=a),n=!0;if(!n)return o.flags&256?(wo(o),o):(wo(o),null);if((o.flags&128)!==0)throw Error(r(558))}return cn(o),null;case 13:if(l=o.memoizedState,n===null||n.memoizedState!==null&&n.memoizedState.dehydrated!==null){if(p=Dr(o),l!==null&&l.dehydrated!==null){if(n===null){if(!p)throw Error(r(318));if(p=o.memoizedState,p=p!==null?p.dehydrated:null,!p)throw Error(r(317));p[xn]=o}else Qa(),(o.flags&128)===0&&(o.memoizedState=null),o.flags|=4;cn(o),p=!1}else p=Td(),n!==null&&n.memoizedState!==null&&(n.memoizedState.hydrationErrors=p),p=!0;if(!p)return o.flags&256?(wo(o),o):(wo(o),null)}return wo(o),(o.flags&128)!==0?(o.lanes=a,o):(a=l!==null,n=n!==null&&n.memoizedState!==null,a&&(l=o.child,p=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(p=l.alternate.memoizedState.cachePool.pool),m=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(m=l.memoizedState.cachePool.pool),m!==p&&(l.flags|=2048)),a!==n&&a&&(o.child.flags|=8192),Lc(o,o.updateQueue),cn(o),null);case 4:return te(),n===null&&Bf(o.stateNode.containerInfo),cn(o),null;case 10:return js(o.type),cn(o),null;case 19:if(fe(Sn),l=o.memoizedState,l===null)return cn(o),null;if(p=(o.flags&128)!==0,m=l.rendering,m===null)if(p)ti(l,!1);else{if(wn!==0||n!==null&&(n.flags&128)!==0)for(n=o.child;n!==null;){if(m=hc(n),m!==null){for(o.flags|=128,ti(l,!1),n=m.updateQueue,o.updateQueue=n,Lc(o,n),o.subtreeFlags=0,n=a,a=o.child;a!==null;)Vh(a,n),a=a.sibling;return pe(Sn,Sn.current&1|2),Et&&Ss(o,l.treeForkCount),o.child}n=n.sibling}l.tail!==null&&it()>Ac&&(o.flags|=128,p=!0,ti(l,!1),o.lanes=4194304)}else{if(!p)if(n=hc(m),n!==null){if(o.flags|=128,p=!0,n=n.updateQueue,o.updateQueue=n,Lc(o,n),ti(l,!0),l.tail===null&&l.tailMode==="hidden"&&!m.alternate&&!Et)return cn(o),null}else 2*it()-l.renderingStartTime>Ac&&a!==536870912&&(o.flags|=128,p=!0,ti(l,!1),o.lanes=4194304);l.isBackwards?(m.sibling=o.child,o.child=m):(n=l.last,n!==null?n.sibling=m:o.child=m,l.last=m)}return l.tail!==null?(n=l.tail,l.rendering=n,l.tail=n.sibling,l.renderingStartTime=it(),n.sibling=null,a=Sn.current,pe(Sn,p?a&1|2:a&1),Et&&Ss(o,l.treeForkCount),n):(cn(o),null);case 22:case 23:return wo(o),Bd(),l=o.memoizedState!==null,n!==null?n.memoizedState!==null!==l&&(o.flags|=8192):l&&(o.flags|=8192),l?(a&536870912)!==0&&(o.flags&128)===0&&(cn(o),o.subtreeFlags&6&&(o.flags|=8192)):cn(o),a=o.updateQueue,a!==null&&Lc(o,a.retryQueue),a=null,n!==null&&n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(a=n.memoizedState.cachePool.pool),l=null,o.memoizedState!==null&&o.memoizedState.cachePool!==null&&(l=o.memoizedState.cachePool.pool),l!==a&&(o.flags|=2048),n!==null&&fe(Pa),null;case 24:return a=null,n!==null&&(a=n.memoizedState.cache),o.memoizedState.cache!==a&&(o.flags|=2048),js(En),cn(o),null;case 25:return null;case 30:return null}throw Error(r(156,o.tag))}function nk(n,o){switch(zd(o),o.tag){case 1:return n=o.flags,n&65536?(o.flags=n&-65537|128,o):null;case 3:return js(En),te(),n=o.flags,(n&65536)!==0&&(n&128)===0?(o.flags=n&-65537|128,o):null;case 26:case 27:case 5:return B(o),null;case 31:if(o.memoizedState!==null){if(wo(o),o.alternate===null)throw Error(r(340));Qa()}return n=o.flags,n&65536?(o.flags=n&-65537|128,o):null;case 13:if(wo(o),n=o.memoizedState,n!==null&&n.dehydrated!==null){if(o.alternate===null)throw Error(r(340));Qa()}return n=o.flags,n&65536?(o.flags=n&-65537|128,o):null;case 19:return fe(Sn),null;case 4:return te(),null;case 10:return js(o.type),null;case 22:case 23:return wo(o),Bd(),n!==null&&fe(Pa),n=o.flags,n&65536?(o.flags=n&-65537|128,o):null;case 24:return js(En),null;case 25:return null;default:return null}}function g1(n,o){switch(zd(o),o.tag){case 3:js(En),te();break;case 26:case 27:case 5:B(o);break;case 4:te();break;case 31:o.memoizedState!==null&&wo(o);break;case 13:wo(o);break;case 19:fe(Sn);break;case 10:js(o.type);break;case 22:case 23:wo(o),Bd(),n!==null&&fe(Pa);break;case 24:js(En)}}function ni(n,o){try{var a=o.updateQueue,l=a!==null?a.lastEffect:null;if(l!==null){var p=l.next;a=p;do{if((a.tag&n)===n){l=void 0;var m=a.create,v=a.inst;l=m(),v.destroy=l}a=a.next}while(a!==p)}}catch(C){Bt(o,o.return,C)}}function ia(n,o,a){try{var l=o.updateQueue,p=l!==null?l.lastEffect:null;if(p!==null){var m=p.next;l=m;do{if((l.tag&n)===n){var v=l.inst,C=v.destroy;if(C!==void 0){v.destroy=void 0,p=o;var V=a,ae=C;try{ae()}catch(ge){Bt(p,V,ge)}}}l=l.next}while(l!==m)}}catch(ge){Bt(o,o.return,ge)}}function x1(n){var o=n.updateQueue;if(o!==null){var a=n.stateNode;try{lg(o,a)}catch(l){Bt(n,n.return,l)}}}function y1(n,o,a){a.props=nr(n.type,n.memoizedProps),a.state=n.memoizedState;try{a.componentWillUnmount()}catch(l){Bt(n,o,l)}}function oi(n,o){try{var a=n.ref;if(a!==null){switch(n.tag){case 26:case 27:case 5:var l=n.stateNode;break;case 30:l=n.stateNode;break;default:l=n.stateNode}typeof a=="function"?n.refCleanup=a(l):a.current=l}}catch(p){Bt(n,o,p)}}function is(n,o){var a=n.ref,l=n.refCleanup;if(a!==null)if(typeof l=="function")try{l()}catch(p){Bt(n,o,p)}finally{n.refCleanup=null,n=n.alternate,n!=null&&(n.refCleanup=null)}else if(typeof a=="function")try{a(null)}catch(p){Bt(n,o,p)}else a.current=null}function b1(n){var o=n.type,a=n.memoizedProps,l=n.stateNode;try{e:switch(o){case"button":case"input":case"select":case"textarea":a.autoFocus&&l.focus();break e;case"img":a.src?l.src=a.src:a.srcSet&&(l.srcset=a.srcSet)}}catch(p){Bt(n,n.return,p)}}function _f(n,o,a){try{var l=n.stateNode;_k(l,n.type,a,o),l[Ln]=o}catch(p){Bt(n,n.return,p)}}function v1(n){return n.tag===5||n.tag===3||n.tag===26||n.tag===27&&ha(n.type)||n.tag===4}function jf(n){e:for(;;){for(;n.sibling===null;){if(n.return===null||v1(n.return))return null;n=n.return}for(n.sibling.return=n.return,n=n.sibling;n.tag!==5&&n.tag!==6&&n.tag!==18;){if(n.tag===27&&ha(n.type)||n.flags&2||n.child===null||n.tag===4)continue e;n.child.return=n,n=n.child}if(!(n.flags&2))return n.stateNode}}function Nf(n,o,a){var l=n.tag;if(l===5||l===6)n=n.stateNode,o?(a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a).insertBefore(n,o):(o=a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a,o.appendChild(n),a=a._reactRootContainer,a!=null||o.onclick!==null||(o.onclick=vs));else if(l!==4&&(l===27&&ha(n.type)&&(a=n.stateNode,o=null),n=n.child,n!==null))for(Nf(n,o,a),n=n.sibling;n!==null;)Nf(n,o,a),n=n.sibling}function Ec(n,o,a){var l=n.tag;if(l===5||l===6)n=n.stateNode,o?a.insertBefore(n,o):a.appendChild(n);else if(l!==4&&(l===27&&ha(n.type)&&(a=n.stateNode),n=n.child,n!==null))for(Ec(n,o,a),n=n.sibling;n!==null;)Ec(n,o,a),n=n.sibling}function w1(n){var o=n.stateNode,a=n.memoizedProps;try{for(var l=n.type,p=o.attributes;p.length;)o.removeAttributeNode(p[0]);Gn(o,l,a),o[xn]=n,o[Ln]=a}catch(m){Bt(n,n.return,m)}}var zs=!1,Tn=!1,Cf=!1,k1=typeof WeakSet=="function"?WeakSet:Set,Un=null;function ok(n,o){if(n=n.containerInfo,Qf=Yc,n=Oh(n),bd(n)){if("selectionStart"in n)var a={start:n.selectionStart,end:n.selectionEnd};else e:{a=(a=n.ownerDocument)&&a.defaultView||window;var l=a.getSelection&&a.getSelection();if(l&&l.rangeCount!==0){a=l.anchorNode;var p=l.anchorOffset,m=l.focusNode;l=l.focusOffset;try{a.nodeType,m.nodeType}catch{a=null;break e}var v=0,C=-1,V=-1,ae=0,ge=0,Se=n,ie=null;t:for(;;){for(var de;Se!==a||p!==0&&Se.nodeType!==3||(C=v+p),Se!==m||l!==0&&Se.nodeType!==3||(V=v+l),Se.nodeType===3&&(v+=Se.nodeValue.length),(de=Se.firstChild)!==null;)ie=Se,Se=de;for(;;){if(Se===n)break t;if(ie===a&&++ae===p&&(C=v),ie===m&&++ge===l&&(V=v),(de=Se.nextSibling)!==null)break;Se=ie,ie=Se.parentNode}Se=de}a=C===-1||V===-1?null:{start:C,end:V}}else a=null}a=a||{start:0,end:0}}else a=null;for(Kf={focusedElem:n,selectionRange:a},Yc=!1,Un=o;Un!==null;)if(o=Un,n=o.child,(o.subtreeFlags&1028)!==0&&n!==null)n.return=o,Un=n;else for(;Un!==null;){switch(o=Un,m=o.alternate,n=o.flags,o.tag){case 0:if((n&4)!==0&&(n=o.updateQueue,n=n!==null?n.events:null,n!==null))for(a=0;a<n.length;a++)p=n[a],p.ref.impl=p.nextImpl;break;case 11:case 15:break;case 1:if((n&1024)!==0&&m!==null){n=void 0,a=o,p=m.memoizedProps,m=m.memoizedState,l=a.stateNode;try{var Be=nr(a.type,p);n=l.getSnapshotBeforeUpdate(Be,m),l.__reactInternalSnapshotBeforeUpdate=n}catch(nt){Bt(a,a.return,nt)}}break;case 3:if((n&1024)!==0){if(n=o.stateNode.containerInfo,a=n.nodeType,a===9)Xf(n);else if(a===1)switch(n.nodeName){case"HEAD":case"HTML":case"BODY":Xf(n);break;default:n.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((n&1024)!==0)throw Error(r(163))}if(n=o.sibling,n!==null){n.return=o.return,Un=n;break}Un=o.return}}function S1(n,o,a){var l=a.flags;switch(a.tag){case 0:case 11:case 15:Ts(n,a),l&4&&ni(5,a);break;case 1:if(Ts(n,a),l&4)if(n=a.stateNode,o===null)try{n.componentDidMount()}catch(v){Bt(a,a.return,v)}else{var p=nr(a.type,o.memoizedProps);o=o.memoizedState;try{n.componentDidUpdate(p,o,n.__reactInternalSnapshotBeforeUpdate)}catch(v){Bt(a,a.return,v)}}l&64&&x1(a),l&512&&oi(a,a.return);break;case 3:if(Ts(n,a),l&64&&(n=a.updateQueue,n!==null)){if(o=null,a.child!==null)switch(a.child.tag){case 27:case 5:o=a.child.stateNode;break;case 1:o=a.child.stateNode}try{lg(n,o)}catch(v){Bt(a,a.return,v)}}break;case 27:o===null&&l&4&&w1(a);case 26:case 5:Ts(n,a),o===null&&l&4&&b1(a),l&512&&oi(a,a.return);break;case 12:Ts(n,a);break;case 31:Ts(n,a),l&4&&N1(n,a);break;case 13:Ts(n,a),l&4&&C1(n,a),l&64&&(n=a.memoizedState,n!==null&&(n=n.dehydrated,n!==null&&(a=fk.bind(null,a),Tk(n,a))));break;case 22:if(l=a.memoizedState!==null||zs,!l){o=o!==null&&o.memoizedState!==null||Tn,p=zs;var m=Tn;zs=l,(Tn=o)&&!m?As(n,a,(a.subtreeFlags&8772)!==0):Ts(n,a),zs=p,Tn=m}break;case 30:break;default:Ts(n,a)}}function _1(n){var o=n.alternate;o!==null&&(n.alternate=null,_1(o)),n.child=null,n.deletions=null,n.sibling=null,n.tag===5&&(o=n.stateNode,o!==null&&Ys(o)),n.stateNode=null,n.return=null,n.dependencies=null,n.memoizedProps=null,n.memoizedState=null,n.pendingProps=null,n.stateNode=null,n.updateQueue=null}var mn=null,lo=!1;function Ms(n,o,a){for(a=a.child;a!==null;)j1(n,o,a),a=a.sibling}function j1(n,o,a){if(tn&&typeof tn.onCommitFiberUnmount=="function")try{tn.onCommitFiberUnmount(On,a)}catch{}switch(a.tag){case 26:Tn||is(a,o),Ms(n,o,a),a.memoizedState?a.memoizedState.count--:a.stateNode&&(a=a.stateNode,a.parentNode.removeChild(a));break;case 27:Tn||is(a,o);var l=mn,p=lo;ha(a.type)&&(mn=a.stateNode,lo=!1),Ms(n,o,a),fi(a.stateNode),mn=l,lo=p;break;case 5:Tn||is(a,o);case 6:if(l=mn,p=lo,mn=null,Ms(n,o,a),mn=l,lo=p,mn!==null)if(lo)try{(mn.nodeType===9?mn.body:mn.nodeName==="HTML"?mn.ownerDocument.body:mn).removeChild(a.stateNode)}catch(m){Bt(a,o,m)}else try{mn.removeChild(a.stateNode)}catch(m){Bt(a,o,m)}break;case 18:mn!==null&&(lo?(n=mn,xx(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,a.stateNode),ol(n)):xx(mn,a.stateNode));break;case 4:l=mn,p=lo,mn=a.stateNode.containerInfo,lo=!0,Ms(n,o,a),mn=l,lo=p;break;case 0:case 11:case 14:case 15:ia(2,a,o),Tn||ia(4,a,o),Ms(n,o,a);break;case 1:Tn||(is(a,o),l=a.stateNode,typeof l.componentWillUnmount=="function"&&y1(a,o,l)),Ms(n,o,a);break;case 21:Ms(n,o,a);break;case 22:Tn=(l=Tn)||a.memoizedState!==null,Ms(n,o,a),Tn=l;break;default:Ms(n,o,a)}}function N1(n,o){if(o.memoizedState===null&&(n=o.alternate,n!==null&&(n=n.memoizedState,n!==null))){n=n.dehydrated;try{ol(n)}catch(a){Bt(o,o.return,a)}}}function C1(n,o){if(o.memoizedState===null&&(n=o.alternate,n!==null&&(n=n.memoizedState,n!==null&&(n=n.dehydrated,n!==null))))try{ol(n)}catch(a){Bt(o,o.return,a)}}function sk(n){switch(n.tag){case 31:case 13:case 19:var o=n.stateNode;return o===null&&(o=n.stateNode=new k1),o;case 22:return n=n.stateNode,o=n._retryCache,o===null&&(o=n._retryCache=new k1),o;default:throw Error(r(435,n.tag))}}function zc(n,o){var a=sk(n);o.forEach(function(l){if(!a.has(l)){a.add(l);var p=pk.bind(null,n,l);l.then(p,p)}})}function io(n,o){var a=o.deletions;if(a!==null)for(var l=0;l<a.length;l++){var p=a[l],m=n,v=o,C=v;e:for(;C!==null;){switch(C.tag){case 27:if(ha(C.type)){mn=C.stateNode,lo=!1;break e}break;case 5:mn=C.stateNode,lo=!1;break e;case 3:case 4:mn=C.stateNode.containerInfo,lo=!0;break e}C=C.return}if(mn===null)throw Error(r(160));j1(m,v,p),mn=null,lo=!1,m=p.alternate,m!==null&&(m.return=null),p.return=null}if(o.subtreeFlags&13886)for(o=o.child;o!==null;)L1(o,n),o=o.sibling}var Yo=null;function L1(n,o){var a=n.alternate,l=n.flags;switch(n.tag){case 0:case 11:case 14:case 15:io(o,n),co(n),l&4&&(ia(3,n,n.return),ni(3,n),ia(5,n,n.return));break;case 1:io(o,n),co(n),l&512&&(Tn||a===null||is(a,a.return)),l&64&&zs&&(n=n.updateQueue,n!==null&&(l=n.callbacks,l!==null&&(a=n.shared.hiddenCallbacks,n.shared.hiddenCallbacks=a===null?l:a.concat(l))));break;case 26:var p=Yo;if(io(o,n),co(n),l&512&&(Tn||a===null||is(a,a.return)),l&4){var m=a!==null?a.memoizedState:null;if(l=n.memoizedState,a===null)if(l===null)if(n.stateNode===null){e:{l=n.type,a=n.memoizedProps,p=p.ownerDocument||p;t:switch(l){case"title":m=p.getElementsByTagName("title")[0],(!m||m[ss]||m[xn]||m.namespaceURI==="http://www.w3.org/2000/svg"||m.hasAttribute("itemprop"))&&(m=p.createElement(l),p.head.insertBefore(m,p.querySelector("head > title"))),Gn(m,l,a),m[xn]=n,P(m),l=m;break e;case"link":var v=Lx("link","href",p).get(l+(a.href||""));if(v){for(var C=0;C<v.length;C++)if(m=v[C],m.getAttribute("href")===(a.href==null||a.href===""?null:a.href)&&m.getAttribute("rel")===(a.rel==null?null:a.rel)&&m.getAttribute("title")===(a.title==null?null:a.title)&&m.getAttribute("crossorigin")===(a.crossOrigin==null?null:a.crossOrigin)){v.splice(C,1);break t}}m=p.createElement(l),Gn(m,l,a),p.head.appendChild(m);break;case"meta":if(v=Lx("meta","content",p).get(l+(a.content||""))){for(C=0;C<v.length;C++)if(m=v[C],m.getAttribute("content")===(a.content==null?null:""+a.content)&&m.getAttribute("name")===(a.name==null?null:a.name)&&m.getAttribute("property")===(a.property==null?null:a.property)&&m.getAttribute("http-equiv")===(a.httpEquiv==null?null:a.httpEquiv)&&m.getAttribute("charset")===(a.charSet==null?null:a.charSet)){v.splice(C,1);break t}}m=p.createElement(l),Gn(m,l,a),p.head.appendChild(m);break;default:throw Error(r(468,l))}m[xn]=n,P(m),l=m}n.stateNode=l}else Ex(p,n.type,n.stateNode);else n.stateNode=Cx(p,l,n.memoizedProps);else m!==l?(m===null?a.stateNode!==null&&(a=a.stateNode,a.parentNode.removeChild(a)):m.count--,l===null?Ex(p,n.type,n.stateNode):Cx(p,l,n.memoizedProps)):l===null&&n.stateNode!==null&&_f(n,n.memoizedProps,a.memoizedProps)}break;case 27:io(o,n),co(n),l&512&&(Tn||a===null||is(a,a.return)),a!==null&&l&4&&_f(n,n.memoizedProps,a.memoizedProps);break;case 5:if(io(o,n),co(n),l&512&&(Tn||a===null||is(a,a.return)),n.flags&32){p=n.stateNode;try{eo(p,"")}catch(Be){Bt(n,n.return,Be)}}l&4&&n.stateNode!=null&&(p=n.memoizedProps,_f(n,p,a!==null?a.memoizedProps:p)),l&1024&&(Cf=!0);break;case 6:if(io(o,n),co(n),l&4){if(n.stateNode===null)throw Error(r(162));l=n.memoizedProps,a=n.stateNode;try{a.nodeValue=l}catch(Be){Bt(n,n.return,Be)}}break;case 3:if(Fc=null,p=Yo,Yo=Wc(o.containerInfo),io(o,n),Yo=p,co(n),l&4&&a!==null&&a.memoizedState.isDehydrated)try{ol(o.containerInfo)}catch(Be){Bt(n,n.return,Be)}Cf&&(Cf=!1,E1(n));break;case 4:l=Yo,Yo=Wc(n.stateNode.containerInfo),io(o,n),co(n),Yo=l;break;case 12:io(o,n),co(n);break;case 31:io(o,n),co(n),l&4&&(l=n.updateQueue,l!==null&&(n.updateQueue=null,zc(n,l)));break;case 13:io(o,n),co(n),n.child.flags&8192&&n.memoizedState!==null!=(a!==null&&a.memoizedState!==null)&&(Tc=it()),l&4&&(l=n.updateQueue,l!==null&&(n.updateQueue=null,zc(n,l)));break;case 22:p=n.memoizedState!==null;var V=a!==null&&a.memoizedState!==null,ae=zs,ge=Tn;if(zs=ae||p,Tn=ge||V,io(o,n),Tn=ge,zs=ae,co(n),l&8192)e:for(o=n.stateNode,o._visibility=p?o._visibility&-2:o._visibility|1,p&&(a===null||V||zs||Tn||or(n)),a=null,o=n;;){if(o.tag===5||o.tag===26){if(a===null){V=a=o;try{if(m=V.stateNode,p)v=m.style,typeof v.setProperty=="function"?v.setProperty("display","none","important"):v.display="none";else{C=V.stateNode;var Se=V.memoizedProps.style,ie=Se!=null&&Se.hasOwnProperty("display")?Se.display:null;C.style.display=ie==null||typeof ie=="boolean"?"":(""+ie).trim()}}catch(Be){Bt(V,V.return,Be)}}}else if(o.tag===6){if(a===null){V=o;try{V.stateNode.nodeValue=p?"":V.memoizedProps}catch(Be){Bt(V,V.return,Be)}}}else if(o.tag===18){if(a===null){V=o;try{var de=V.stateNode;p?yx(de,!0):yx(V.stateNode,!1)}catch(Be){Bt(V,V.return,Be)}}}else if((o.tag!==22&&o.tag!==23||o.memoizedState===null||o===n)&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===n)break e;for(;o.sibling===null;){if(o.return===null||o.return===n)break e;a===o&&(a=null),o=o.return}a===o&&(a=null),o.sibling.return=o.return,o=o.sibling}l&4&&(l=n.updateQueue,l!==null&&(a=l.retryQueue,a!==null&&(l.retryQueue=null,zc(n,a))));break;case 19:io(o,n),co(n),l&4&&(l=n.updateQueue,l!==null&&(n.updateQueue=null,zc(n,l)));break;case 30:break;case 21:break;default:io(o,n),co(n)}}function co(n){var o=n.flags;if(o&2){try{for(var a,l=n.return;l!==null;){if(v1(l)){a=l;break}l=l.return}if(a==null)throw Error(r(160));switch(a.tag){case 27:var p=a.stateNode,m=jf(n);Ec(n,m,p);break;case 5:var v=a.stateNode;a.flags&32&&(eo(v,""),a.flags&=-33);var C=jf(n);Ec(n,C,v);break;case 3:case 4:var V=a.stateNode.containerInfo,ae=jf(n);Nf(n,ae,V);break;default:throw Error(r(161))}}catch(ge){Bt(n,n.return,ge)}n.flags&=-3}o&4096&&(n.flags&=-4097)}function E1(n){if(n.subtreeFlags&1024)for(n=n.child;n!==null;){var o=n;E1(o),o.tag===5&&o.flags&1024&&o.stateNode.reset(),n=n.sibling}}function Ts(n,o){if(o.subtreeFlags&8772)for(o=o.child;o!==null;)S1(n,o.alternate,o),o=o.sibling}function or(n){for(n=n.child;n!==null;){var o=n;switch(o.tag){case 0:case 11:case 14:case 15:ia(4,o,o.return),or(o);break;case 1:is(o,o.return);var a=o.stateNode;typeof a.componentWillUnmount=="function"&&y1(o,o.return,a),or(o);break;case 27:fi(o.stateNode);case 26:case 5:is(o,o.return),or(o);break;case 22:o.memoizedState===null&&or(o);break;case 30:or(o);break;default:or(o)}n=n.sibling}}function As(n,o,a){for(a=a&&(o.subtreeFlags&8772)!==0,o=o.child;o!==null;){var l=o.alternate,p=n,m=o,v=m.flags;switch(m.tag){case 0:case 11:case 15:As(p,m,a),ni(4,m);break;case 1:if(As(p,m,a),l=m,p=l.stateNode,typeof p.componentDidMount=="function")try{p.componentDidMount()}catch(ae){Bt(l,l.return,ae)}if(l=m,p=l.updateQueue,p!==null){var C=l.stateNode;try{var V=p.shared.hiddenCallbacks;if(V!==null)for(p.shared.hiddenCallbacks=null,p=0;p<V.length;p++)rg(V[p],C)}catch(ae){Bt(l,l.return,ae)}}a&&v&64&&x1(m),oi(m,m.return);break;case 27:w1(m);case 26:case 5:As(p,m,a),a&&l===null&&v&4&&b1(m),oi(m,m.return);break;case 12:As(p,m,a);break;case 31:As(p,m,a),a&&v&4&&N1(p,m);break;case 13:As(p,m,a),a&&v&4&&C1(p,m);break;case 22:m.memoizedState===null&&As(p,m,a),oi(m,m.return);break;case 30:break;default:As(p,m,a)}o=o.sibling}}function Lf(n,o){var a=null;n!==null&&n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(a=n.memoizedState.cachePool.pool),n=null,o.memoizedState!==null&&o.memoizedState.cachePool!==null&&(n=o.memoizedState.cachePool.pool),n!==a&&(n!=null&&n.refCount++,a!=null&&Vl(a))}function Ef(n,o){n=null,o.alternate!==null&&(n=o.alternate.memoizedState.cache),o=o.memoizedState.cache,o!==n&&(o.refCount++,n!=null&&Vl(n))}function Po(n,o,a,l){if(o.subtreeFlags&10256)for(o=o.child;o!==null;)z1(n,o,a,l),o=o.sibling}function z1(n,o,a,l){var p=o.flags;switch(o.tag){case 0:case 11:case 15:Po(n,o,a,l),p&2048&&ni(9,o);break;case 1:Po(n,o,a,l);break;case 3:Po(n,o,a,l),p&2048&&(n=null,o.alternate!==null&&(n=o.alternate.memoizedState.cache),o=o.memoizedState.cache,o!==n&&(o.refCount++,n!=null&&Vl(n)));break;case 12:if(p&2048){Po(n,o,a,l),n=o.stateNode;try{var m=o.memoizedProps,v=m.id,C=m.onPostCommit;typeof C=="function"&&C(v,o.alternate===null?"mount":"update",n.passiveEffectDuration,-0)}catch(V){Bt(o,o.return,V)}}else Po(n,o,a,l);break;case 31:Po(n,o,a,l);break;case 13:Po(n,o,a,l);break;case 23:break;case 22:m=o.stateNode,v=o.alternate,o.memoizedState!==null?m._visibility&2?Po(n,o,a,l):si(n,o):m._visibility&2?Po(n,o,a,l):(m._visibility|=2,Fr(n,o,a,l,(o.subtreeFlags&10256)!==0||!1)),p&2048&&Lf(v,o);break;case 24:Po(n,o,a,l),p&2048&&Ef(o.alternate,o);break;default:Po(n,o,a,l)}}function Fr(n,o,a,l,p){for(p=p&&((o.subtreeFlags&10256)!==0||!1),o=o.child;o!==null;){var m=n,v=o,C=a,V=l,ae=v.flags;switch(v.tag){case 0:case 11:case 15:Fr(m,v,C,V,p),ni(8,v);break;case 23:break;case 22:var ge=v.stateNode;v.memoizedState!==null?ge._visibility&2?Fr(m,v,C,V,p):si(m,v):(ge._visibility|=2,Fr(m,v,C,V,p)),p&&ae&2048&&Lf(v.alternate,v);break;case 24:Fr(m,v,C,V,p),p&&ae&2048&&Ef(v.alternate,v);break;default:Fr(m,v,C,V,p)}o=o.sibling}}function si(n,o){if(o.subtreeFlags&10256)for(o=o.child;o!==null;){var a=n,l=o,p=l.flags;switch(l.tag){case 22:si(a,l),p&2048&&Lf(l.alternate,l);break;case 24:si(a,l),p&2048&&Ef(l.alternate,l);break;default:si(a,l)}o=o.sibling}}var ai=8192;function Gr(n,o,a){if(n.subtreeFlags&ai)for(n=n.child;n!==null;)M1(n,o,a),n=n.sibling}function M1(n,o,a){switch(n.tag){case 26:Gr(n,o,a),n.flags&ai&&n.memoizedState!==null&&Wk(a,Yo,n.memoizedState,n.memoizedProps);break;case 5:Gr(n,o,a);break;case 3:case 4:var l=Yo;Yo=Wc(n.stateNode.containerInfo),Gr(n,o,a),Yo=l;break;case 22:n.memoizedState===null&&(l=n.alternate,l!==null&&l.memoizedState!==null?(l=ai,ai=16777216,Gr(n,o,a),ai=l):Gr(n,o,a));break;default:Gr(n,o,a)}}function T1(n){var o=n.alternate;if(o!==null&&(n=o.child,n!==null)){o.child=null;do o=n.sibling,n.sibling=null,n=o;while(n!==null)}}function ri(n){var o=n.deletions;if((n.flags&16)!==0){if(o!==null)for(var a=0;a<o.length;a++){var l=o[a];Un=l,O1(l,n)}T1(n)}if(n.subtreeFlags&10256)for(n=n.child;n!==null;)A1(n),n=n.sibling}function A1(n){switch(n.tag){case 0:case 11:case 15:ri(n),n.flags&2048&&ia(9,n,n.return);break;case 3:ri(n);break;case 12:ri(n);break;case 22:var o=n.stateNode;n.memoizedState!==null&&o._visibility&2&&(n.return===null||n.return.tag!==13)?(o._visibility&=-3,Mc(n)):ri(n);break;default:ri(n)}}function Mc(n){var o=n.deletions;if((n.flags&16)!==0){if(o!==null)for(var a=0;a<o.length;a++){var l=o[a];Un=l,O1(l,n)}T1(n)}for(n=n.child;n!==null;){switch(o=n,o.tag){case 0:case 11:case 15:ia(8,o,o.return),Mc(o);break;case 22:a=o.stateNode,a._visibility&2&&(a._visibility&=-3,Mc(o));break;default:Mc(o)}n=n.sibling}}function O1(n,o){for(;Un!==null;){var a=Un;switch(a.tag){case 0:case 11:case 15:ia(8,a,o);break;case 23:case 22:if(a.memoizedState!==null&&a.memoizedState.cachePool!==null){var l=a.memoizedState.cachePool.pool;l!=null&&l.refCount++}break;case 24:Vl(a.memoizedState.cache)}if(l=a.child,l!==null)l.return=a,Un=l;else e:for(a=n;Un!==null;){l=Un;var p=l.sibling,m=l.return;if(_1(l),l===a){Un=null;break e}if(p!==null){p.return=m,Un=p;break e}Un=m}}}var ak={getCacheForType:function(n){var o=Bn(En),a=o.data.get(n);return a===void 0&&(a=n(),o.data.set(n,a)),a},cacheSignal:function(){return Bn(En).controller.signal}},rk=typeof WeakMap=="function"?WeakMap:Map,Ht=0,nn=null,St=null,jt=0,Wt=0,ko=null,ca=!1,Qr=!1,zf=!1,Os=0,wn=0,ua=0,sr=0,Mf=0,So=0,Kr=0,li=null,uo=null,Tf=!1,Tc=0,R1=0,Ac=1/0,Oc=null,da=null,Rn=0,fa=null,Yr=null,Rs=0,Af=0,Of=null,D1=null,ii=0,Rf=null;function _o(){return(Ht&2)!==0&&jt!==0?jt&-jt:T.T!==null?Uf():Ha()}function I1(){if(So===0)if((jt&536870912)===0||Et){var n=xs;xs<<=1,(xs&3932160)===0&&(xs=262144),So=n}else So=536870912;return n=vo.current,n!==null&&(n.flags|=32),So}function fo(n,o,a){(n===nn&&(Wt===2||Wt===9)||n.cancelPendingCommit!==null)&&(Pr(n,0),pa(n,jt,So,!1)),xo(n,a),((Ht&2)===0||n!==nn)&&(n===nn&&((Ht&2)===0&&(sr|=a),wn===4&&pa(n,jt,So,!1)),cs(n))}function $1(n,o,a){if((Ht&6)!==0)throw Error(r(327));var l=!a&&(o&127)===0&&(o&n.expiredLanes)===0||Bo(n,o),p=l?ck(n,o):If(n,o,!0),m=l;do{if(p===0){Qr&&!l&&pa(n,o,0,!1);break}else{if(a=n.current.alternate,m&&!lk(a)){p=If(n,o,!1),m=!1;continue}if(p===2){if(m=o,n.errorRecoveryDisabledLanes&m)var v=0;else v=n.pendingLanes&-536870913,v=v!==0?v:v&536870912?536870912:0;if(v!==0){o=v;e:{var C=n;p=li;var V=C.current.memoizedState.isDehydrated;if(V&&(Pr(C,v).flags|=256),v=If(C,v,!1),v!==2){if(zf&&!V){C.errorRecoveryDisabledLanes|=m,sr|=m,p=4;break e}m=uo,uo=p,m!==null&&(uo===null?uo=m:uo.push.apply(uo,m))}p=v}if(m=!1,p!==2)continue}}if(p===1){Pr(n,0),pa(n,o,0,!0);break}e:{switch(l=n,m=p,m){case 0:case 1:throw Error(r(345));case 4:if((o&4194048)!==o)break;case 6:pa(l,o,So,!ca);break e;case 2:uo=null;break;case 3:case 5:break;default:throw Error(r(329))}if((o&62914560)===o&&(p=Tc+300-it(),10<p)){if(pa(l,o,So,!ca),ys(l,0,!0)!==0)break e;Rs=o,l.timeoutHandle=hx(q1.bind(null,l,a,uo,Oc,Tf,o,So,sr,Kr,ca,m,"Throttled",-0,0),p);break e}q1(l,a,uo,Oc,Tf,o,So,sr,Kr,ca,m,null,-0,0)}}break}while(!0);cs(n)}function q1(n,o,a,l,p,m,v,C,V,ae,ge,Se,ie,de){if(n.timeoutHandle=-1,Se=o.subtreeFlags,Se&8192||(Se&16785408)===16785408){Se={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:vs},M1(o,m,Se);var Be=(m&62914560)===m?Tc-it():(m&4194048)===m?R1-it():0;if(Be=Bk(Se,Be),Be!==null){Rs=m,n.cancelPendingCommit=Be(G1.bind(null,n,o,m,a,l,p,v,C,V,ge,Se,null,ie,de)),pa(n,m,v,!ae);return}}G1(n,o,m,a,l,p,v,C,V)}function lk(n){for(var o=n;;){var a=o.tag;if((a===0||a===11||a===15)&&o.flags&16384&&(a=o.updateQueue,a!==null&&(a=a.stores,a!==null)))for(var l=0;l<a.length;l++){var p=a[l],m=p.getSnapshot;p=p.value;try{if(!yo(m(),p))return!1}catch{return!1}}if(a=o.child,o.subtreeFlags&16384&&a!==null)a.return=o,o=a;else{if(o===n)break;for(;o.sibling===null;){if(o.return===null||o.return===n)return!0;o=o.return}o.sibling.return=o.return,o=o.sibling}}return!0}function pa(n,o,a,l){o&=~Mf,o&=~sr,n.suspendedLanes|=o,n.pingedLanes&=~o,l&&(n.warmLanes|=o),l=n.expirationTimes;for(var p=o;0<p;){var m=31-sn(p),v=1<<m;l[m]=-1,p&=~v}a!==0&&os(n,a,o)}function Rc(){return(Ht&6)===0?(ci(0),!1):!0}function Df(){if(St!==null){if(Wt===0)var n=St.return;else n=St,_s=Ka=null,Pd(n),Ur=null,Bl=0,n=St;for(;n!==null;)g1(n.alternate,n),n=n.return;St=null}}function Pr(n,o){var a=n.timeoutHandle;a!==-1&&(n.timeoutHandle=-1,Ck(a)),a=n.cancelPendingCommit,a!==null&&(n.cancelPendingCommit=null,a()),Rs=0,Df(),nn=n,St=a=ks(n.current,null),jt=o,Wt=0,ko=null,ca=!1,Qr=Bo(n,o),zf=!1,Kr=So=Mf=sr=ua=wn=0,uo=li=null,Tf=!1,(o&8)!==0&&(o|=o&32);var l=n.entangledLanes;if(l!==0)for(n=n.entanglements,l&=o;0<l;){var p=31-sn(l),m=1<<p;o|=n[p],l&=~m}return Os=o,nc(),a}function H1(n,o){pt=null,T.H=Jl,o===Hr||o===uc?(o=ng(),Wt=3):o===qd?(o=ng(),Wt=4):Wt=o===mf?8:o!==null&&typeof o=="object"&&typeof o.then=="function"?6:1,ko=o,St===null&&(wn=1,_c(n,To(o,n.current)))}function U1(){var n=vo.current;return n===null?!0:(jt&4194048)===jt?Do===null:(jt&62914560)===jt||(jt&536870912)!==0?n===Do:!1}function Z1(){var n=T.H;return T.H=Jl,n===null?Jl:n}function V1(){var n=T.A;return T.A=ak,n}function Dc(){wn=4,ca||(jt&4194048)!==jt&&vo.current!==null||(Qr=!0),(ua&134217727)===0&&(sr&134217727)===0||nn===null||pa(nn,jt,So,!1)}function If(n,o,a){var l=Ht;Ht|=2;var p=Z1(),m=V1();(nn!==n||jt!==o)&&(Oc=null,Pr(n,o)),o=!1;var v=wn;e:do try{if(Wt!==0&&St!==null){var C=St,V=ko;switch(Wt){case 8:Df(),v=6;break e;case 3:case 2:case 9:case 6:vo.current===null&&(o=!0);var ae=Wt;if(Wt=0,ko=null,Xr(n,C,V,ae),a&&Qr){v=0;break e}break;default:ae=Wt,Wt=0,ko=null,Xr(n,C,V,ae)}}ik(),v=wn;break}catch(ge){H1(n,ge)}while(!0);return o&&n.shellSuspendCounter++,_s=Ka=null,Ht=l,T.H=p,T.A=m,St===null&&(nn=null,jt=0,nc()),v}function ik(){for(;St!==null;)W1(St)}function ck(n,o){var a=Ht;Ht|=2;var l=Z1(),p=V1();nn!==n||jt!==o?(Oc=null,Ac=it()+500,Pr(n,o)):Qr=Bo(n,o);e:do try{if(Wt!==0&&St!==null){o=St;var m=ko;t:switch(Wt){case 1:Wt=0,ko=null,Xr(n,o,m,1);break;case 2:case 9:if(eg(m)){Wt=0,ko=null,B1(o);break}o=function(){Wt!==2&&Wt!==9||nn!==n||(Wt=7),cs(n)},m.then(o,o);break e;case 3:Wt=7;break e;case 4:Wt=5;break e;case 7:eg(m)?(Wt=0,ko=null,B1(o)):(Wt=0,ko=null,Xr(n,o,m,7));break;case 5:var v=null;switch(St.tag){case 26:v=St.memoizedState;case 5:case 27:var C=St;if(v?zx(v):C.stateNode.complete){Wt=0,ko=null;var V=C.sibling;if(V!==null)St=V;else{var ae=C.return;ae!==null?(St=ae,Ic(ae)):St=null}break t}}Wt=0,ko=null,Xr(n,o,m,5);break;case 6:Wt=0,ko=null,Xr(n,o,m,6);break;case 8:Df(),wn=6;break e;default:throw Error(r(462))}}uk();break}catch(ge){H1(n,ge)}while(!0);return _s=Ka=null,T.H=l,T.A=p,Ht=a,St!==null?0:(nn=null,jt=0,nc(),wn)}function uk(){for(;St!==null&&!Ye();)W1(St)}function W1(n){var o=m1(n.alternate,n,Os);n.memoizedProps=n.pendingProps,o===null?Ic(n):St=o}function B1(n){var o=n,a=o.alternate;switch(o.tag){case 15:case 0:o=i1(a,o,o.pendingProps,o.type,void 0,jt);break;case 11:o=i1(a,o,o.pendingProps,o.type.render,o.ref,jt);break;case 5:Pd(o);default:g1(a,o),o=St=Vh(o,Os),o=m1(a,o,Os)}n.memoizedProps=n.pendingProps,o===null?Ic(n):St=o}function Xr(n,o,a,l){_s=Ka=null,Pd(o),Ur=null,Bl=0;var p=o.return;try{if(Xw(n,p,o,a,jt)){wn=1,_c(n,To(a,n.current)),St=null;return}}catch(m){if(p!==null)throw St=p,m;wn=1,_c(n,To(a,n.current)),St=null;return}o.flags&32768?(Et||l===1?n=!0:Qr||(jt&536870912)!==0?n=!1:(ca=n=!0,(l===2||l===9||l===3||l===6)&&(l=vo.current,l!==null&&l.tag===13&&(l.flags|=16384))),F1(o,n)):Ic(o)}function Ic(n){var o=n;do{if((o.flags&32768)!==0){F1(o,ca);return}n=o.return;var a=tk(o.alternate,o,Os);if(a!==null){St=a;return}if(o=o.sibling,o!==null){St=o;return}St=o=n}while(o!==null);wn===0&&(wn=5)}function F1(n,o){do{var a=nk(n.alternate,n);if(a!==null){a.flags&=32767,St=a;return}if(a=n.return,a!==null&&(a.flags|=32768,a.subtreeFlags=0,a.deletions=null),!o&&(n=n.sibling,n!==null)){St=n;return}St=n=a}while(n!==null);wn=6,St=null}function G1(n,o,a,l,p,m,v,C,V){n.cancelPendingCommit=null;do $c();while(Rn!==0);if((Ht&6)!==0)throw Error(r(327));if(o!==null){if(o===n.current)throw Error(r(177));if(m=o.lanes|o.childLanes,m|=_d,jr(n,a,m,v,C,V),n===nn&&(St=nn=null,jt=0),Yr=o,fa=n,Rs=a,Af=m,Of=p,D1=l,(o.subtreeFlags&10256)!==0||(o.flags&10256)!==0?(n.callbackNode=null,n.callbackPriority=0,mk(He,function(){return X1(),null})):(n.callbackNode=null,n.callbackPriority=0),l=(o.flags&13878)!==0,(o.subtreeFlags&13878)!==0||l){l=T.T,T.T=null,p=A.p,A.p=2,v=Ht,Ht|=4;try{ok(n,o,a)}finally{Ht=v,A.p=p,T.T=l}}Rn=1,Q1(),K1(),Y1()}}function Q1(){if(Rn===1){Rn=0;var n=fa,o=Yr,a=(o.flags&13878)!==0;if((o.subtreeFlags&13878)!==0||a){a=T.T,T.T=null;var l=A.p;A.p=2;var p=Ht;Ht|=4;try{L1(o,n);var m=Kf,v=Oh(n.containerInfo),C=m.focusedElem,V=m.selectionRange;if(v!==C&&C&&C.ownerDocument&&Ah(C.ownerDocument.documentElement,C)){if(V!==null&&bd(C)){var ae=V.start,ge=V.end;if(ge===void 0&&(ge=ae),"selectionStart"in C)C.selectionStart=ae,C.selectionEnd=Math.min(ge,C.value.length);else{var Se=C.ownerDocument||document,ie=Se&&Se.defaultView||window;if(ie.getSelection){var de=ie.getSelection(),Be=C.textContent.length,nt=Math.min(V.start,Be),Yt=V.end===void 0?nt:Math.min(V.end,Be);!de.extend&&nt>Yt&&(v=Yt,Yt=nt,nt=v);var ee=Th(C,nt),Y=Th(C,Yt);if(ee&&Y&&(de.rangeCount!==1||de.anchorNode!==ee.node||de.anchorOffset!==ee.offset||de.focusNode!==Y.node||de.focusOffset!==Y.offset)){var se=Se.createRange();se.setStart(ee.node,ee.offset),de.removeAllRanges(),nt>Yt?(de.addRange(se),de.extend(Y.node,Y.offset)):(se.setEnd(Y.node,Y.offset),de.addRange(se))}}}}for(Se=[],de=C;de=de.parentNode;)de.nodeType===1&&Se.push({element:de,left:de.scrollLeft,top:de.scrollTop});for(typeof C.focus=="function"&&C.focus(),C=0;C<Se.length;C++){var ye=Se[C];ye.element.scrollLeft=ye.left,ye.element.scrollTop=ye.top}}Yc=!!Qf,Kf=Qf=null}finally{Ht=p,A.p=l,T.T=a}}n.current=o,Rn=2}}function K1(){if(Rn===2){Rn=0;var n=fa,o=Yr,a=(o.flags&8772)!==0;if((o.subtreeFlags&8772)!==0||a){a=T.T,T.T=null;var l=A.p;A.p=2;var p=Ht;Ht|=4;try{S1(n,o.alternate,o)}finally{Ht=p,A.p=l,T.T=a}}Rn=3}}function Y1(){if(Rn===4||Rn===3){Rn=0,at();var n=fa,o=Yr,a=Rs,l=D1;(o.subtreeFlags&10256)!==0||(o.flags&10256)!==0?Rn=5:(Rn=0,Yr=fa=null,P1(n,n.pendingLanes));var p=n.pendingLanes;if(p===0&&(da=null),Qs(a),o=o.stateNode,tn&&typeof tn.onCommitFiberRoot=="function")try{tn.onCommitFiberRoot(On,o,void 0,(o.current.flags&128)===128)}catch{}if(l!==null){o=T.T,p=A.p,A.p=2,T.T=null;try{for(var m=n.onRecoverableError,v=0;v<l.length;v++){var C=l[v];m(C.value,{componentStack:C.stack})}}finally{T.T=o,A.p=p}}(Rs&3)!==0&&$c(),cs(n),p=n.pendingLanes,(a&261930)!==0&&(p&42)!==0?n===Rf?ii++:(ii=0,Rf=n):ii=0,ci(0)}}function P1(n,o){(n.pooledCacheLanes&=o)===0&&(o=n.pooledCache,o!=null&&(n.pooledCache=null,Vl(o)))}function $c(){return Q1(),K1(),Y1(),X1()}function X1(){if(Rn!==5)return!1;var n=fa,o=Af;Af=0;var a=Qs(Rs),l=T.T,p=A.p;try{A.p=32>a?32:a,T.T=null,a=Of,Of=null;var m=fa,v=Rs;if(Rn=0,Yr=fa=null,Rs=0,(Ht&6)!==0)throw Error(r(331));var C=Ht;if(Ht|=4,A1(m.current),z1(m,m.current,v,a),Ht=C,ci(0,!1),tn&&typeof tn.onPostCommitFiberRoot=="function")try{tn.onPostCommitFiberRoot(On,m)}catch{}return!0}finally{A.p=p,T.T=l,P1(n,o)}}function J1(n,o,a){o=To(a,o),o=pf(n.stateNode,o,2),n=aa(n,o,2),n!==null&&(xo(n,2),cs(n))}function Bt(n,o,a){if(n.tag===3)J1(n,n,a);else for(;o!==null;){if(o.tag===3){J1(o,n,a);break}else if(o.tag===1){var l=o.stateNode;if(typeof o.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(da===null||!da.has(l))){n=To(a,n),a=e1(2),l=aa(o,a,2),l!==null&&(t1(a,l,o,n),xo(l,2),cs(l));break}}o=o.return}}function $f(n,o,a){var l=n.pingCache;if(l===null){l=n.pingCache=new rk;var p=new Set;l.set(o,p)}else p=l.get(o),p===void 0&&(p=new Set,l.set(o,p));p.has(a)||(zf=!0,p.add(a),n=dk.bind(null,n,o,a),o.then(n,n))}function dk(n,o,a){var l=n.pingCache;l!==null&&l.delete(o),n.pingedLanes|=n.suspendedLanes&a,n.warmLanes&=~a,nn===n&&(jt&a)===a&&(wn===4||wn===3&&(jt&62914560)===jt&&300>it()-Tc?(Ht&2)===0&&Pr(n,0):Mf|=a,Kr===jt&&(Kr=0)),cs(n)}function ex(n,o){o===0&&(o=Bs()),n=Fa(n,o),n!==null&&(xo(n,o),cs(n))}function fk(n){var o=n.memoizedState,a=0;o!==null&&(a=o.retryLane),ex(n,a)}function pk(n,o){var a=0;switch(n.tag){case 31:case 13:var l=n.stateNode,p=n.memoizedState;p!==null&&(a=p.retryLane);break;case 19:l=n.stateNode;break;case 22:l=n.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(o),ex(n,a)}function mk(n,o){return re(n,o)}var qc=null,Jr=null,qf=!1,Hc=!1,Hf=!1,ma=0;function cs(n){n!==Jr&&n.next===null&&(Jr===null?qc=Jr=n:Jr=Jr.next=n),Hc=!0,qf||(qf=!0,gk())}function ci(n,o){if(!Hf&&Hc){Hf=!0;do for(var a=!1,l=qc;l!==null;){if(n!==0){var p=l.pendingLanes;if(p===0)var m=0;else{var v=l.suspendedLanes,C=l.pingedLanes;m=(1<<31-sn(42|n)+1)-1,m&=p&~(v&~C),m=m&201326741?m&201326741|1:m?m|2:0}m!==0&&(a=!0,sx(l,m))}else m=jt,m=ys(l,l===nn?m:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(m&3)===0||Bo(l,m)||(a=!0,sx(l,m));l=l.next}while(a);Hf=!1}}function hk(){tx()}function tx(){Hc=qf=!1;var n=0;ma!==0&&Nk()&&(n=ma);for(var o=it(),a=null,l=qc;l!==null;){var p=l.next,m=nx(l,o);m===0?(l.next=null,a===null?qc=p:a.next=p,p===null&&(Jr=a)):(a=l,(n!==0||(m&3)!==0)&&(Hc=!0)),l=p}Rn!==0&&Rn!==5||ci(n),ma!==0&&(ma=0)}function nx(n,o){for(var a=n.suspendedLanes,l=n.pingedLanes,p=n.expirationTimes,m=n.pendingLanes&-62914561;0<m;){var v=31-sn(m),C=1<<v,V=p[v];V===-1?((C&a)===0||(C&l)!==0)&&(p[v]=Ws(C,o)):V<=o&&(n.expiredLanes|=C),m&=~C}if(o=nn,a=jt,a=ys(n,n===o?a:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),l=n.callbackNode,a===0||n===o&&(Wt===2||Wt===9)||n.cancelPendingCommit!==null)return l!==null&&l!==null&&qe(l),n.callbackNode=null,n.callbackPriority=0;if((a&3)===0||Bo(n,a)){if(o=a&-a,o===n.callbackPriority)return o;switch(l!==null&&qe(l),Qs(a)){case 2:case 8:a=Re;break;case 32:a=He;break;case 268435456:a=Mt;break;default:a=He}return l=ox.bind(null,n),a=re(a,l),n.callbackPriority=o,n.callbackNode=a,o}return l!==null&&l!==null&&qe(l),n.callbackPriority=2,n.callbackNode=null,2}function ox(n,o){if(Rn!==0&&Rn!==5)return n.callbackNode=null,n.callbackPriority=0,null;var a=n.callbackNode;if($c()&&n.callbackNode!==a)return null;var l=jt;return l=ys(n,n===nn?l:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),l===0?null:($1(n,l,o),nx(n,it()),n.callbackNode!=null&&n.callbackNode===a?ox.bind(null,n):null)}function sx(n,o){if($c())return null;$1(n,o,!0)}function gk(){Lk(function(){(Ht&6)!==0?re(he,hk):tx()})}function Uf(){if(ma===0){var n=$r;n===0&&(n=gs,gs<<=1,(gs&261888)===0&&(gs=256)),ma=n}return ma}function ax(n){return n==null||typeof n=="symbol"||typeof n=="boolean"?null:typeof n=="function"?n:Qi(""+n)}function rx(n,o){var a=o.ownerDocument.createElement("input");return a.name=o.name,a.value=o.value,n.id&&a.setAttribute("form",n.id),o.parentNode.insertBefore(a,o),n=new FormData(n),a.parentNode.removeChild(a),n}function xk(n,o,a,l,p){if(o==="submit"&&a&&a.stateNode===p){var m=ax((p[Ln]||null).action),v=l.submitter;v&&(o=(o=v[Ln]||null)?ax(o.formAction):v.getAttribute("formAction"),o!==null&&(m=o,v=null));var C=new Xi("action","action",null,l,p);n.push({event:C,listeners:[{instance:null,listener:function(){if(l.defaultPrevented){if(ma!==0){var V=v?rx(p,v):new FormData(p);rf(a,{pending:!0,data:V,method:p.method,action:m},null,V)}}else typeof m=="function"&&(C.preventDefault(),V=v?rx(p,v):new FormData(p),rf(a,{pending:!0,data:V,method:p.method,action:m},m,V))},currentTarget:p}]})}}for(var Zf=0;Zf<Sd.length;Zf++){var Vf=Sd[Zf],yk=Vf.toLowerCase(),bk=Vf[0].toUpperCase()+Vf.slice(1);Ko(yk,"on"+bk)}Ko(Ih,"onAnimationEnd"),Ko($h,"onAnimationIteration"),Ko(qh,"onAnimationStart"),Ko("dblclick","onDoubleClick"),Ko("focusin","onFocus"),Ko("focusout","onBlur"),Ko(Rw,"onTransitionRun"),Ko(Dw,"onTransitionStart"),Ko(Iw,"onTransitionCancel"),Ko(Hh,"onTransitionEnd"),Me("onMouseEnter",["mouseout","mouseover"]),Me("onMouseLeave",["mouseout","mouseover"]),Me("onPointerEnter",["pointerout","pointerover"]),Me("onPointerLeave",["pointerout","pointerover"]),G("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),G("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),G("onBeforeInput",["compositionend","keypress","textInput","paste"]),G("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),G("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),G("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var ui="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),vk=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(ui));function lx(n,o){o=(o&4)!==0;for(var a=0;a<n.length;a++){var l=n[a],p=l.event;l=l.listeners;e:{var m=void 0;if(o)for(var v=l.length-1;0<=v;v--){var C=l[v],V=C.instance,ae=C.currentTarget;if(C=C.listener,V!==m&&p.isPropagationStopped())break e;m=C,p.currentTarget=ae;try{m(p)}catch(ge){tc(ge)}p.currentTarget=null,m=V}else for(v=0;v<l.length;v++){if(C=l[v],V=C.instance,ae=C.currentTarget,C=C.listener,V!==m&&p.isPropagationStopped())break e;m=C,p.currentTarget=ae;try{m(p)}catch(ge){tc(ge)}p.currentTarget=null,m=V}}}}function _t(n,o){var a=o[bs];a===void 0&&(a=o[bs]=new Set);var l=n+"__bubble";a.has(l)||(ix(o,n,2,!1),a.add(l))}function Wf(n,o,a){var l=0;o&&(l|=4),ix(a,n,l,o)}var Uc="_reactListening"+Math.random().toString(36).slice(2);function Bf(n){if(!n[Uc]){n[Uc]=!0,J.forEach(function(a){a!=="selectionchange"&&(vk.has(a)||Wf(a,!1,n),Wf(a,!0,n))});var o=n.nodeType===9?n:n.ownerDocument;o===null||o[Uc]||(o[Uc]=!0,Wf("selectionchange",!1,o))}}function ix(n,o,a,l){switch(Ix(o)){case 2:var p=Qk;break;case 8:p=Kk;break;default:p=rp}a=p.bind(null,o,a,n),p=void 0,!ud||o!=="touchstart"&&o!=="touchmove"&&o!=="wheel"||(p=!0),l?p!==void 0?n.addEventListener(o,a,{capture:!0,passive:p}):n.addEventListener(o,a,!0):p!==void 0?n.addEventListener(o,a,{passive:p}):n.addEventListener(o,a,!1)}function Ff(n,o,a,l,p){var m=l;if((o&1)===0&&(o&2)===0&&l!==null)e:for(;;){if(l===null)return;var v=l.tag;if(v===3||v===4){var C=l.stateNode.containerInfo;if(C===p)break;if(v===4)for(v=l.return;v!==null;){var V=v.tag;if((V===3||V===4)&&v.stateNode.containerInfo===p)return;v=v.return}for(;C!==null;){if(v=Fo(C),v===null)return;if(V=v.tag,V===5||V===6||V===26||V===27){l=m=v;continue e}C=C.parentNode}}l=l.return}ph(function(){var ae=m,ge=id(a),Se=[];e:{var ie=Uh.get(n);if(ie!==void 0){var de=Xi,Be=n;switch(n){case"keypress":if(Yi(a)===0)break e;case"keydown":case"keyup":de=pw;break;case"focusin":Be="focus",de=md;break;case"focusout":Be="blur",de=md;break;case"beforeblur":case"afterblur":de=md;break;case"click":if(a.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":de=gh;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":de=tw;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":de=gw;break;case Ih:case $h:case qh:de=sw;break;case Hh:de=yw;break;case"scroll":case"scrollend":de=J2;break;case"wheel":de=vw;break;case"copy":case"cut":case"paste":de=rw;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":de=yh;break;case"toggle":case"beforetoggle":de=kw}var nt=(o&4)!==0,Yt=!nt&&(n==="scroll"||n==="scrollend"),ee=nt?ie!==null?ie+"Capture":null:ie;nt=[];for(var Y=ae,se;Y!==null;){var ye=Y;if(se=ye.stateNode,ye=ye.tag,ye!==5&&ye!==26&&ye!==27||se===null||ee===null||(ye=Tl(Y,ee),ye!=null&&nt.push(di(Y,ye,se))),Yt)break;Y=Y.return}0<nt.length&&(ie=new de(ie,Be,null,a,ge),Se.push({event:ie,listeners:nt}))}}if((o&7)===0){e:{if(ie=n==="mouseover"||n==="pointerover",de=n==="mouseout"||n==="pointerout",ie&&a!==ld&&(Be=a.relatedTarget||a.fromElement)&&(Fo(Be)||Be[zo]))break e;if((de||ie)&&(ie=ge.window===ge?ge:(ie=ge.ownerDocument)?ie.defaultView||ie.parentWindow:window,de?(Be=a.relatedTarget||a.toElement,de=ae,Be=Be?Fo(Be):null,Be!==null&&(Yt=u(Be),nt=Be.tag,Be!==Yt||nt!==5&&nt!==27&&nt!==6)&&(Be=null)):(de=null,Be=ae),de!==Be)){if(nt=gh,ye="onMouseLeave",ee="onMouseEnter",Y="mouse",(n==="pointerout"||n==="pointerover")&&(nt=yh,ye="onPointerLeave",ee="onPointerEnter",Y="pointer"),Yt=de==null?ie:Qo(de),se=Be==null?ie:Qo(Be),ie=new nt(ye,Y+"leave",de,a,ge),ie.target=Yt,ie.relatedTarget=se,ye=null,Fo(ge)===ae&&(nt=new nt(ee,Y+"enter",Be,a,ge),nt.target=se,nt.relatedTarget=Yt,ye=nt),Yt=ye,de&&Be)t:{for(nt=wk,ee=de,Y=Be,se=0,ye=ee;ye;ye=nt(ye))se++;ye=0;for(var Pe=Y;Pe;Pe=nt(Pe))ye++;for(;0<se-ye;)ee=nt(ee),se--;for(;0<ye-se;)Y=nt(Y),ye--;for(;se--;){if(ee===Y||Y!==null&&ee===Y.alternate){nt=ee;break t}ee=nt(ee),Y=nt(Y)}nt=null}else nt=null;de!==null&&cx(Se,ie,de,nt,!1),Be!==null&&Yt!==null&&cx(Se,Yt,Be,nt,!0)}}e:{if(ie=ae?Qo(ae):window,de=ie.nodeName&&ie.nodeName.toLowerCase(),de==="select"||de==="input"&&ie.type==="file")var It=Nh;else if(_h(ie))if(Ch)It=Tw;else{It=zw;var Ge=Ew}else de=ie.nodeName,!de||de.toLowerCase()!=="input"||ie.type!=="checkbox"&&ie.type!=="radio"?ae&&rd(ae.elementType)&&(It=Nh):It=Mw;if(It&&(It=It(n,ae))){jh(Se,It,a,ge);break e}Ge&&Ge(n,ie,ae),n==="focusout"&&ae&&ie.type==="number"&&ae.memoizedProps.value!=null&&Tt(ie,"number",ie.value)}switch(Ge=ae?Qo(ae):window,n){case"focusin":(_h(Ge)||Ge.contentEditable==="true")&&(zr=Ge,vd=ae,Hl=null);break;case"focusout":Hl=vd=zr=null;break;case"mousedown":wd=!0;break;case"contextmenu":case"mouseup":case"dragend":wd=!1,Rh(Se,a,ge);break;case"selectionchange":if(Ow)break;case"keydown":case"keyup":Rh(Se,a,ge)}var ht;if(gd)e:{switch(n){case"compositionstart":var Nt="onCompositionStart";break e;case"compositionend":Nt="onCompositionEnd";break e;case"compositionupdate":Nt="onCompositionUpdate";break e}Nt=void 0}else Er?kh(n,a)&&(Nt="onCompositionEnd"):n==="keydown"&&a.keyCode===229&&(Nt="onCompositionStart");Nt&&(bh&&a.locale!=="ko"&&(Er||Nt!=="onCompositionStart"?Nt==="onCompositionEnd"&&Er&&(ht=mh()):(Xs=ge,dd="value"in Xs?Xs.value:Xs.textContent,Er=!0)),Ge=Zc(ae,Nt),0<Ge.length&&(Nt=new xh(Nt,n,null,a,ge),Se.push({event:Nt,listeners:Ge}),ht?Nt.data=ht:(ht=Sh(a),ht!==null&&(Nt.data=ht)))),(ht=_w?jw(n,a):Nw(n,a))&&(Nt=Zc(ae,"onBeforeInput"),0<Nt.length&&(Ge=new xh("onBeforeInput","beforeinput",null,a,ge),Se.push({event:Ge,listeners:Nt}),Ge.data=ht)),xk(Se,n,ae,a,ge)}lx(Se,o)})}function di(n,o,a){return{instance:n,listener:o,currentTarget:a}}function Zc(n,o){for(var a=o+"Capture",l=[];n!==null;){var p=n,m=p.stateNode;if(p=p.tag,p!==5&&p!==26&&p!==27||m===null||(p=Tl(n,a),p!=null&&l.unshift(di(n,p,m)),p=Tl(n,o),p!=null&&l.push(di(n,p,m))),n.tag===3)return l;n=n.return}return[]}function wk(n){if(n===null)return null;do n=n.return;while(n&&n.tag!==5&&n.tag!==27);return n||null}function cx(n,o,a,l,p){for(var m=o._reactName,v=[];a!==null&&a!==l;){var C=a,V=C.alternate,ae=C.stateNode;if(C=C.tag,V!==null&&V===l)break;C!==5&&C!==26&&C!==27||ae===null||(V=ae,p?(ae=Tl(a,m),ae!=null&&v.unshift(di(a,ae,V))):p||(ae=Tl(a,m),ae!=null&&v.push(di(a,ae,V)))),a=a.return}v.length!==0&&n.push({event:o,listeners:v})}var kk=/\r\n?/g,Sk=/\u0000|\uFFFD/g;function ux(n){return(typeof n=="string"?n:""+n).replace(kk,`
10
+ `).replace(Sk,"")}function dx(n,o){return o=ux(o),ux(n)===o}function Kt(n,o,a,l,p,m){switch(a){case"children":typeof l=="string"?o==="body"||o==="textarea"&&l===""||eo(n,l):(typeof l=="number"||typeof l=="bigint")&&o!=="body"&&eo(n,""+l);break;case"className":ke(n,"class",l);break;case"tabIndex":ke(n,"tabindex",l);break;case"dir":case"role":case"viewBox":case"width":case"height":ke(n,a,l);break;case"style":Ps(n,l,m);break;case"data":if(o!=="object"){ke(n,"data",l);break}case"src":case"href":if(l===""&&(o!=="a"||a!=="href")){n.removeAttribute(a);break}if(l==null||typeof l=="function"||typeof l=="symbol"||typeof l=="boolean"){n.removeAttribute(a);break}l=Qi(""+l),n.setAttribute(a,l);break;case"action":case"formAction":if(typeof l=="function"){n.setAttribute(a,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof m=="function"&&(a==="formAction"?(o!=="input"&&Kt(n,o,"name",p.name,p,null),Kt(n,o,"formEncType",p.formEncType,p,null),Kt(n,o,"formMethod",p.formMethod,p,null),Kt(n,o,"formTarget",p.formTarget,p,null)):(Kt(n,o,"encType",p.encType,p,null),Kt(n,o,"method",p.method,p,null),Kt(n,o,"target",p.target,p,null)));if(l==null||typeof l=="symbol"||typeof l=="boolean"){n.removeAttribute(a);break}l=Qi(""+l),n.setAttribute(a,l);break;case"onClick":l!=null&&(n.onclick=vs);break;case"onScroll":l!=null&&_t("scroll",n);break;case"onScrollEnd":l!=null&&_t("scrollend",n);break;case"dangerouslySetInnerHTML":if(l!=null){if(typeof l!="object"||!("__html"in l))throw Error(r(61));if(a=l.__html,a!=null){if(p.children!=null)throw Error(r(60));n.innerHTML=a}}break;case"multiple":n.multiple=l&&typeof l!="function"&&typeof l!="symbol";break;case"muted":n.muted=l&&typeof l!="function"&&typeof l!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(l==null||typeof l=="function"||typeof l=="boolean"||typeof l=="symbol"){n.removeAttribute("xlink:href");break}a=Qi(""+l),n.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",a);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":l!=null&&typeof l!="function"&&typeof l!="symbol"?n.setAttribute(a,""+l):n.removeAttribute(a);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":l&&typeof l!="function"&&typeof l!="symbol"?n.setAttribute(a,""):n.removeAttribute(a);break;case"capture":case"download":l===!0?n.setAttribute(a,""):l!==!1&&l!=null&&typeof l!="function"&&typeof l!="symbol"?n.setAttribute(a,l):n.removeAttribute(a);break;case"cols":case"rows":case"size":case"span":l!=null&&typeof l!="function"&&typeof l!="symbol"&&!isNaN(l)&&1<=l?n.setAttribute(a,l):n.removeAttribute(a);break;case"rowSpan":case"start":l==null||typeof l=="function"||typeof l=="symbol"||isNaN(l)?n.removeAttribute(a):n.setAttribute(a,l);break;case"popover":_t("beforetoggle",n),_t("toggle",n),bn(n,"popover",l);break;case"xlinkActuate":ze(n,"http://www.w3.org/1999/xlink","xlink:actuate",l);break;case"xlinkArcrole":ze(n,"http://www.w3.org/1999/xlink","xlink:arcrole",l);break;case"xlinkRole":ze(n,"http://www.w3.org/1999/xlink","xlink:role",l);break;case"xlinkShow":ze(n,"http://www.w3.org/1999/xlink","xlink:show",l);break;case"xlinkTitle":ze(n,"http://www.w3.org/1999/xlink","xlink:title",l);break;case"xlinkType":ze(n,"http://www.w3.org/1999/xlink","xlink:type",l);break;case"xmlBase":ze(n,"http://www.w3.org/XML/1998/namespace","xml:base",l);break;case"xmlLang":ze(n,"http://www.w3.org/XML/1998/namespace","xml:lang",l);break;case"xmlSpace":ze(n,"http://www.w3.org/XML/1998/namespace","xml:space",l);break;case"is":bn(n,"is",l);break;case"innerText":case"textContent":break;default:(!(2<a.length)||a[0]!=="o"&&a[0]!=="O"||a[1]!=="n"&&a[1]!=="N")&&(a=P2.get(a)||a,bn(n,a,l))}}function Gf(n,o,a,l,p,m){switch(a){case"style":Ps(n,l,m);break;case"dangerouslySetInnerHTML":if(l!=null){if(typeof l!="object"||!("__html"in l))throw Error(r(61));if(a=l.__html,a!=null){if(p.children!=null)throw Error(r(60));n.innerHTML=a}}break;case"children":typeof l=="string"?eo(n,l):(typeof l=="number"||typeof l=="bigint")&&eo(n,""+l);break;case"onScroll":l!=null&&_t("scroll",n);break;case"onScrollEnd":l!=null&&_t("scrollend",n);break;case"onClick":l!=null&&(n.onclick=vs);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!xe.hasOwnProperty(a))e:{if(a[0]==="o"&&a[1]==="n"&&(p=a.endsWith("Capture"),o=a.slice(2,p?a.length-7:void 0),m=n[Ln]||null,m=m!=null?m[a]:null,typeof m=="function"&&n.removeEventListener(o,m,p),typeof l=="function")){typeof m!="function"&&m!==null&&(a in n?n[a]=null:n.hasAttribute(a)&&n.removeAttribute(a)),n.addEventListener(o,l,p);break e}a in n?n[a]=l:l===!0?n.setAttribute(a,""):bn(n,a,l)}}}function Gn(n,o,a){switch(o){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":_t("error",n),_t("load",n);var l=!1,p=!1,m;for(m in a)if(a.hasOwnProperty(m)){var v=a[m];if(v!=null)switch(m){case"src":l=!0;break;case"srcSet":p=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(r(137,o));default:Kt(n,o,m,v,a,null)}}p&&Kt(n,o,"srcSet",a.srcSet,a,null),l&&Kt(n,o,"src",a.src,a,null);return;case"input":_t("invalid",n);var C=m=v=p=null,V=null,ae=null;for(l in a)if(a.hasOwnProperty(l)){var ge=a[l];if(ge!=null)switch(l){case"name":p=ge;break;case"type":v=ge;break;case"checked":V=ge;break;case"defaultChecked":ae=ge;break;case"value":m=ge;break;case"defaultValue":C=ge;break;case"children":case"dangerouslySetInnerHTML":if(ge!=null)throw Error(r(137,o));break;default:Kt(n,o,l,ge,a,null)}}et(n,m,C,V,ae,v,p,!1);return;case"select":_t("invalid",n),l=v=m=null;for(p in a)if(a.hasOwnProperty(p)&&(C=a[p],C!=null))switch(p){case"value":m=C;break;case"defaultValue":v=C;break;case"multiple":l=C;default:Kt(n,o,p,C,a,null)}o=m,a=v,n.multiple=!!l,o!=null?Dt(n,!!l,o,!1):a!=null&&Dt(n,!!l,a,!0);return;case"textarea":_t("invalid",n),m=p=l=null;for(v in a)if(a.hasOwnProperty(v)&&(C=a[v],C!=null))switch(v){case"value":l=C;break;case"defaultValue":p=C;break;case"children":m=C;break;case"dangerouslySetInnerHTML":if(C!=null)throw Error(r(91));break;default:Kt(n,o,v,C,a,null)}ao(n,l,p,m);return;case"option":for(V in a)a.hasOwnProperty(V)&&(l=a[V],l!=null)&&(V==="selected"?n.selected=l&&typeof l!="function"&&typeof l!="symbol":Kt(n,o,V,l,a,null));return;case"dialog":_t("beforetoggle",n),_t("toggle",n),_t("cancel",n),_t("close",n);break;case"iframe":case"object":_t("load",n);break;case"video":case"audio":for(l=0;l<ui.length;l++)_t(ui[l],n);break;case"image":_t("error",n),_t("load",n);break;case"details":_t("toggle",n);break;case"embed":case"source":case"link":_t("error",n),_t("load",n);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(ae in a)if(a.hasOwnProperty(ae)&&(l=a[ae],l!=null))switch(ae){case"children":case"dangerouslySetInnerHTML":throw Error(r(137,o));default:Kt(n,o,ae,l,a,null)}return;default:if(rd(o)){for(ge in a)a.hasOwnProperty(ge)&&(l=a[ge],l!==void 0&&Gf(n,o,ge,l,a,void 0));return}}for(C in a)a.hasOwnProperty(C)&&(l=a[C],l!=null&&Kt(n,o,C,l,a,null))}function _k(n,o,a,l){switch(o){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var p=null,m=null,v=null,C=null,V=null,ae=null,ge=null;for(de in a){var Se=a[de];if(a.hasOwnProperty(de)&&Se!=null)switch(de){case"checked":break;case"value":break;case"defaultValue":V=Se;default:l.hasOwnProperty(de)||Kt(n,o,de,null,l,Se)}}for(var ie in l){var de=l[ie];if(Se=a[ie],l.hasOwnProperty(ie)&&(de!=null||Se!=null))switch(ie){case"type":m=de;break;case"name":p=de;break;case"checked":ae=de;break;case"defaultChecked":ge=de;break;case"value":v=de;break;case"defaultValue":C=de;break;case"children":case"dangerouslySetInnerHTML":if(de!=null)throw Error(r(137,o));break;default:de!==Se&&Kt(n,o,ie,de,l,Se)}}ft(n,v,C,V,ae,ge,m,p);return;case"select":de=v=C=ie=null;for(m in a)if(V=a[m],a.hasOwnProperty(m)&&V!=null)switch(m){case"value":break;case"multiple":de=V;default:l.hasOwnProperty(m)||Kt(n,o,m,null,l,V)}for(p in l)if(m=l[p],V=a[p],l.hasOwnProperty(p)&&(m!=null||V!=null))switch(p){case"value":ie=m;break;case"defaultValue":C=m;break;case"multiple":v=m;default:m!==V&&Kt(n,o,p,m,l,V)}o=C,a=v,l=de,ie!=null?Dt(n,!!a,ie,!1):!!l!=!!a&&(o!=null?Dt(n,!!a,o,!0):Dt(n,!!a,a?[]:"",!1));return;case"textarea":de=ie=null;for(C in a)if(p=a[C],a.hasOwnProperty(C)&&p!=null&&!l.hasOwnProperty(C))switch(C){case"value":break;case"children":break;default:Kt(n,o,C,null,l,p)}for(v in l)if(p=l[v],m=a[v],l.hasOwnProperty(v)&&(p!=null||m!=null))switch(v){case"value":ie=p;break;case"defaultValue":de=p;break;case"children":break;case"dangerouslySetInnerHTML":if(p!=null)throw Error(r(91));break;default:p!==m&&Kt(n,o,v,p,l,m)}Zn(n,ie,de);return;case"option":for(var Be in a)ie=a[Be],a.hasOwnProperty(Be)&&ie!=null&&!l.hasOwnProperty(Be)&&(Be==="selected"?n.selected=!1:Kt(n,o,Be,null,l,ie));for(V in l)ie=l[V],de=a[V],l.hasOwnProperty(V)&&ie!==de&&(ie!=null||de!=null)&&(V==="selected"?n.selected=ie&&typeof ie!="function"&&typeof ie!="symbol":Kt(n,o,V,ie,l,de));return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var nt in a)ie=a[nt],a.hasOwnProperty(nt)&&ie!=null&&!l.hasOwnProperty(nt)&&Kt(n,o,nt,null,l,ie);for(ae in l)if(ie=l[ae],de=a[ae],l.hasOwnProperty(ae)&&ie!==de&&(ie!=null||de!=null))switch(ae){case"children":case"dangerouslySetInnerHTML":if(ie!=null)throw Error(r(137,o));break;default:Kt(n,o,ae,ie,l,de)}return;default:if(rd(o)){for(var Yt in a)ie=a[Yt],a.hasOwnProperty(Yt)&&ie!==void 0&&!l.hasOwnProperty(Yt)&&Gf(n,o,Yt,void 0,l,ie);for(ge in l)ie=l[ge],de=a[ge],!l.hasOwnProperty(ge)||ie===de||ie===void 0&&de===void 0||Gf(n,o,ge,ie,l,de);return}}for(var ee in a)ie=a[ee],a.hasOwnProperty(ee)&&ie!=null&&!l.hasOwnProperty(ee)&&Kt(n,o,ee,null,l,ie);for(Se in l)ie=l[Se],de=a[Se],!l.hasOwnProperty(Se)||ie===de||ie==null&&de==null||Kt(n,o,Se,ie,l,de)}function fx(n){switch(n){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function jk(){if(typeof performance.getEntriesByType=="function"){for(var n=0,o=0,a=performance.getEntriesByType("resource"),l=0;l<a.length;l++){var p=a[l],m=p.transferSize,v=p.initiatorType,C=p.duration;if(m&&C&&fx(v)){for(v=0,C=p.responseEnd,l+=1;l<a.length;l++){var V=a[l],ae=V.startTime;if(ae>C)break;var ge=V.transferSize,Se=V.initiatorType;ge&&fx(Se)&&(V=V.responseEnd,v+=ge*(V<C?1:(C-ae)/(V-ae)))}if(--l,o+=8*(m+v)/(p.duration/1e3),n++,10<n)break}}if(0<n)return o/n/1e6}return navigator.connection&&(n=navigator.connection.downlink,typeof n=="number")?n:5}var Qf=null,Kf=null;function Vc(n){return n.nodeType===9?n:n.ownerDocument}function px(n){switch(n){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function mx(n,o){if(n===0)switch(o){case"svg":return 1;case"math":return 2;default:return 0}return n===1&&o==="foreignObject"?0:n}function Yf(n,o){return n==="textarea"||n==="noscript"||typeof o.children=="string"||typeof o.children=="number"||typeof o.children=="bigint"||typeof o.dangerouslySetInnerHTML=="object"&&o.dangerouslySetInnerHTML!==null&&o.dangerouslySetInnerHTML.__html!=null}var Pf=null;function Nk(){var n=window.event;return n&&n.type==="popstate"?n===Pf?!1:(Pf=n,!0):(Pf=null,!1)}var hx=typeof setTimeout=="function"?setTimeout:void 0,Ck=typeof clearTimeout=="function"?clearTimeout:void 0,gx=typeof Promise=="function"?Promise:void 0,Lk=typeof queueMicrotask=="function"?queueMicrotask:typeof gx<"u"?function(n){return gx.resolve(null).then(n).catch(Ek)}:hx;function Ek(n){setTimeout(function(){throw n})}function ha(n){return n==="head"}function xx(n,o){var a=o,l=0;do{var p=a.nextSibling;if(n.removeChild(a),p&&p.nodeType===8)if(a=p.data,a==="/$"||a==="/&"){if(l===0){n.removeChild(p),ol(o);return}l--}else if(a==="$"||a==="$?"||a==="$~"||a==="$!"||a==="&")l++;else if(a==="html")fi(n.ownerDocument.documentElement);else if(a==="head"){a=n.ownerDocument.head,fi(a);for(var m=a.firstChild;m;){var v=m.nextSibling,C=m.nodeName;m[ss]||C==="SCRIPT"||C==="STYLE"||C==="LINK"&&m.rel.toLowerCase()==="stylesheet"||a.removeChild(m),m=v}}else a==="body"&&fi(n.ownerDocument.body);a=p}while(a);ol(o)}function yx(n,o){var a=n;n=0;do{var l=a.nextSibling;if(a.nodeType===1?o?(a._stashedDisplay=a.style.display,a.style.display="none"):(a.style.display=a._stashedDisplay||"",a.getAttribute("style")===""&&a.removeAttribute("style")):a.nodeType===3&&(o?(a._stashedText=a.nodeValue,a.nodeValue=""):a.nodeValue=a._stashedText||""),l&&l.nodeType===8)if(a=l.data,a==="/$"){if(n===0)break;n--}else a!=="$"&&a!=="$?"&&a!=="$~"&&a!=="$!"||n++;a=l}while(a)}function Xf(n){var o=n.firstChild;for(o&&o.nodeType===10&&(o=o.nextSibling);o;){var a=o;switch(o=o.nextSibling,a.nodeName){case"HTML":case"HEAD":case"BODY":Xf(a),Ys(a);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(a.rel.toLowerCase()==="stylesheet")continue}n.removeChild(a)}}function zk(n,o,a,l){for(;n.nodeType===1;){var p=a;if(n.nodeName.toLowerCase()!==o.toLowerCase()){if(!l&&(n.nodeName!=="INPUT"||n.type!=="hidden"))break}else if(l){if(!n[ss])switch(o){case"meta":if(!n.hasAttribute("itemprop"))break;return n;case"link":if(m=n.getAttribute("rel"),m==="stylesheet"&&n.hasAttribute("data-precedence"))break;if(m!==p.rel||n.getAttribute("href")!==(p.href==null||p.href===""?null:p.href)||n.getAttribute("crossorigin")!==(p.crossOrigin==null?null:p.crossOrigin)||n.getAttribute("title")!==(p.title==null?null:p.title))break;return n;case"style":if(n.hasAttribute("data-precedence"))break;return n;case"script":if(m=n.getAttribute("src"),(m!==(p.src==null?null:p.src)||n.getAttribute("type")!==(p.type==null?null:p.type)||n.getAttribute("crossorigin")!==(p.crossOrigin==null?null:p.crossOrigin))&&m&&n.hasAttribute("async")&&!n.hasAttribute("itemprop"))break;return n;default:return n}}else if(o==="input"&&n.type==="hidden"){var m=p.name==null?null:""+p.name;if(p.type==="hidden"&&n.getAttribute("name")===m)return n}else return n;if(n=Io(n.nextSibling),n===null)break}return null}function Mk(n,o,a){if(o==="")return null;for(;n.nodeType!==3;)if((n.nodeType!==1||n.nodeName!=="INPUT"||n.type!=="hidden")&&!a||(n=Io(n.nextSibling),n===null))return null;return n}function bx(n,o){for(;n.nodeType!==8;)if((n.nodeType!==1||n.nodeName!=="INPUT"||n.type!=="hidden")&&!o||(n=Io(n.nextSibling),n===null))return null;return n}function Jf(n){return n.data==="$?"||n.data==="$~"}function ep(n){return n.data==="$!"||n.data==="$?"&&n.ownerDocument.readyState!=="loading"}function Tk(n,o){var a=n.ownerDocument;if(n.data==="$~")n._reactRetry=o;else if(n.data!=="$?"||a.readyState!=="loading")o();else{var l=function(){o(),a.removeEventListener("DOMContentLoaded",l)};a.addEventListener("DOMContentLoaded",l),n._reactRetry=l}}function Io(n){for(;n!=null;n=n.nextSibling){var o=n.nodeType;if(o===1||o===3)break;if(o===8){if(o=n.data,o==="$"||o==="$!"||o==="$?"||o==="$~"||o==="&"||o==="F!"||o==="F")break;if(o==="/$"||o==="/&")return null}}return n}var tp=null;function vx(n){n=n.nextSibling;for(var o=0;n;){if(n.nodeType===8){var a=n.data;if(a==="/$"||a==="/&"){if(o===0)return Io(n.nextSibling);o--}else a!=="$"&&a!=="$!"&&a!=="$?"&&a!=="$~"&&a!=="&"||o++}n=n.nextSibling}return null}function wx(n){n=n.previousSibling;for(var o=0;n;){if(n.nodeType===8){var a=n.data;if(a==="$"||a==="$!"||a==="$?"||a==="$~"||a==="&"){if(o===0)return n;o--}else a!=="/$"&&a!=="/&"||o++}n=n.previousSibling}return null}function kx(n,o,a){switch(o=Vc(a),n){case"html":if(n=o.documentElement,!n)throw Error(r(452));return n;case"head":if(n=o.head,!n)throw Error(r(453));return n;case"body":if(n=o.body,!n)throw Error(r(454));return n;default:throw Error(r(451))}}function fi(n){for(var o=n.attributes;o.length;)n.removeAttributeNode(o[0]);Ys(n)}var $o=new Map,Sx=new Set;function Wc(n){return typeof n.getRootNode=="function"?n.getRootNode():n.nodeType===9?n:n.ownerDocument}var Ds=A.d;A.d={f:Ak,r:Ok,D:Rk,C:Dk,L:Ik,m:$k,X:Hk,S:qk,M:Uk};function Ak(){var n=Ds.f(),o=Rc();return n||o}function Ok(n){var o=Go(n);o!==null&&o.tag===5&&o.type==="form"?Hg(o):Ds.r(n)}var el=typeof document>"u"?null:document;function _x(n,o,a){var l=el;if(l&&typeof o=="string"&&o){var p=$e(o);p='link[rel="'+n+'"][href="'+p+'"]',typeof a=="string"&&(p+='[crossorigin="'+a+'"]'),Sx.has(p)||(Sx.add(p),n={rel:n,crossOrigin:a,href:o},l.querySelector(p)===null&&(o=l.createElement("link"),Gn(o,"link",n),P(o),l.head.appendChild(o)))}}function Rk(n){Ds.D(n),_x("dns-prefetch",n,null)}function Dk(n,o){Ds.C(n,o),_x("preconnect",n,o)}function Ik(n,o,a){Ds.L(n,o,a);var l=el;if(l&&n&&o){var p='link[rel="preload"][as="'+$e(o)+'"]';o==="image"&&a&&a.imageSrcSet?(p+='[imagesrcset="'+$e(a.imageSrcSet)+'"]',typeof a.imageSizes=="string"&&(p+='[imagesizes="'+$e(a.imageSizes)+'"]')):p+='[href="'+$e(n)+'"]';var m=p;switch(o){case"style":m=tl(n);break;case"script":m=nl(n)}$o.has(m)||(n=y({rel:"preload",href:o==="image"&&a&&a.imageSrcSet?void 0:n,as:o},a),$o.set(m,n),l.querySelector(p)!==null||o==="style"&&l.querySelector(pi(m))||o==="script"&&l.querySelector(mi(m))||(o=l.createElement("link"),Gn(o,"link",n),P(o),l.head.appendChild(o)))}}function $k(n,o){Ds.m(n,o);var a=el;if(a&&n){var l=o&&typeof o.as=="string"?o.as:"script",p='link[rel="modulepreload"][as="'+$e(l)+'"][href="'+$e(n)+'"]',m=p;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":m=nl(n)}if(!$o.has(m)&&(n=y({rel:"modulepreload",href:n},o),$o.set(m,n),a.querySelector(p)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(a.querySelector(mi(m)))return}l=a.createElement("link"),Gn(l,"link",n),P(l),a.head.appendChild(l)}}}function qk(n,o,a){Ds.S(n,o,a);var l=el;if(l&&n){var p=as(l).hoistableStyles,m=tl(n);o=o||"default";var v=p.get(m);if(!v){var C={loading:0,preload:null};if(v=l.querySelector(pi(m)))C.loading=5;else{n=y({rel:"stylesheet",href:n,"data-precedence":o},a),(a=$o.get(m))&&np(n,a);var V=v=l.createElement("link");P(V),Gn(V,"link",n),V._p=new Promise(function(ae,ge){V.onload=ae,V.onerror=ge}),V.addEventListener("load",function(){C.loading|=1}),V.addEventListener("error",function(){C.loading|=2}),C.loading|=4,Bc(v,o,l)}v={type:"stylesheet",instance:v,count:1,state:C},p.set(m,v)}}}function Hk(n,o){Ds.X(n,o);var a=el;if(a&&n){var l=as(a).hoistableScripts,p=nl(n),m=l.get(p);m||(m=a.querySelector(mi(p)),m||(n=y({src:n,async:!0},o),(o=$o.get(p))&&op(n,o),m=a.createElement("script"),P(m),Gn(m,"link",n),a.head.appendChild(m)),m={type:"script",instance:m,count:1,state:null},l.set(p,m))}}function Uk(n,o){Ds.M(n,o);var a=el;if(a&&n){var l=as(a).hoistableScripts,p=nl(n),m=l.get(p);m||(m=a.querySelector(mi(p)),m||(n=y({src:n,async:!0,type:"module"},o),(o=$o.get(p))&&op(n,o),m=a.createElement("script"),P(m),Gn(m,"link",n),a.head.appendChild(m)),m={type:"script",instance:m,count:1,state:null},l.set(p,m))}}function jx(n,o,a,l){var p=(p=ve.current)?Wc(p):null;if(!p)throw Error(r(446));switch(n){case"meta":case"title":return null;case"style":return typeof a.precedence=="string"&&typeof a.href=="string"?(o=tl(a.href),a=as(p).hoistableStyles,l=a.get(o),l||(l={type:"style",instance:null,count:0,state:null},a.set(o,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(a.rel==="stylesheet"&&typeof a.href=="string"&&typeof a.precedence=="string"){n=tl(a.href);var m=as(p).hoistableStyles,v=m.get(n);if(v||(p=p.ownerDocument||p,v={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},m.set(n,v),(m=p.querySelector(pi(n)))&&!m._p&&(v.instance=m,v.state.loading=5),$o.has(n)||(a={rel:"preload",as:"style",href:a.href,crossOrigin:a.crossOrigin,integrity:a.integrity,media:a.media,hrefLang:a.hrefLang,referrerPolicy:a.referrerPolicy},$o.set(n,a),m||Zk(p,n,a,v.state))),o&&l===null)throw Error(r(528,""));return v}if(o&&l!==null)throw Error(r(529,""));return null;case"script":return o=a.async,a=a.src,typeof a=="string"&&o&&typeof o!="function"&&typeof o!="symbol"?(o=nl(a),a=as(p).hoistableScripts,l=a.get(o),l||(l={type:"script",instance:null,count:0,state:null},a.set(o,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,n))}}function tl(n){return'href="'+$e(n)+'"'}function pi(n){return'link[rel="stylesheet"]['+n+"]"}function Nx(n){return y({},n,{"data-precedence":n.precedence,precedence:null})}function Zk(n,o,a,l){n.querySelector('link[rel="preload"][as="style"]['+o+"]")?l.loading=1:(o=n.createElement("link"),l.preload=o,o.addEventListener("load",function(){return l.loading|=1}),o.addEventListener("error",function(){return l.loading|=2}),Gn(o,"link",a),P(o),n.head.appendChild(o))}function nl(n){return'[src="'+$e(n)+'"]'}function mi(n){return"script[async]"+n}function Cx(n,o,a){if(o.count++,o.instance===null)switch(o.type){case"style":var l=n.querySelector('style[data-href~="'+$e(a.href)+'"]');if(l)return o.instance=l,P(l),l;var p=y({},a,{"data-href":a.href,"data-precedence":a.precedence,href:null,precedence:null});return l=(n.ownerDocument||n).createElement("style"),P(l),Gn(l,"style",p),Bc(l,a.precedence,n),o.instance=l;case"stylesheet":p=tl(a.href);var m=n.querySelector(pi(p));if(m)return o.state.loading|=4,o.instance=m,P(m),m;l=Nx(a),(p=$o.get(p))&&np(l,p),m=(n.ownerDocument||n).createElement("link"),P(m);var v=m;return v._p=new Promise(function(C,V){v.onload=C,v.onerror=V}),Gn(m,"link",l),o.state.loading|=4,Bc(m,a.precedence,n),o.instance=m;case"script":return m=nl(a.src),(p=n.querySelector(mi(m)))?(o.instance=p,P(p),p):(l=a,(p=$o.get(m))&&(l=y({},a),op(l,p)),n=n.ownerDocument||n,p=n.createElement("script"),P(p),Gn(p,"link",l),n.head.appendChild(p),o.instance=p);case"void":return null;default:throw Error(r(443,o.type))}else o.type==="stylesheet"&&(o.state.loading&4)===0&&(l=o.instance,o.state.loading|=4,Bc(l,a.precedence,n));return o.instance}function Bc(n,o,a){for(var l=a.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),p=l.length?l[l.length-1]:null,m=p,v=0;v<l.length;v++){var C=l[v];if(C.dataset.precedence===o)m=C;else if(m!==p)break}m?m.parentNode.insertBefore(n,m.nextSibling):(o=a.nodeType===9?a.head:a,o.insertBefore(n,o.firstChild))}function np(n,o){n.crossOrigin==null&&(n.crossOrigin=o.crossOrigin),n.referrerPolicy==null&&(n.referrerPolicy=o.referrerPolicy),n.title==null&&(n.title=o.title)}function op(n,o){n.crossOrigin==null&&(n.crossOrigin=o.crossOrigin),n.referrerPolicy==null&&(n.referrerPolicy=o.referrerPolicy),n.integrity==null&&(n.integrity=o.integrity)}var Fc=null;function Lx(n,o,a){if(Fc===null){var l=new Map,p=Fc=new Map;p.set(a,l)}else p=Fc,l=p.get(a),l||(l=new Map,p.set(a,l));if(l.has(n))return l;for(l.set(n,null),a=a.getElementsByTagName(n),p=0;p<a.length;p++){var m=a[p];if(!(m[ss]||m[xn]||n==="link"&&m.getAttribute("rel")==="stylesheet")&&m.namespaceURI!=="http://www.w3.org/2000/svg"){var v=m.getAttribute(o)||"";v=n+v;var C=l.get(v);C?C.push(m):l.set(v,[m])}}return l}function Ex(n,o,a){n=n.ownerDocument||n,n.head.insertBefore(a,o==="title"?n.querySelector("head > title"):null)}function Vk(n,o,a){if(a===1||o.itemProp!=null)return!1;switch(n){case"meta":case"title":return!0;case"style":if(typeof o.precedence!="string"||typeof o.href!="string"||o.href==="")break;return!0;case"link":if(typeof o.rel!="string"||typeof o.href!="string"||o.href===""||o.onLoad||o.onError)break;return o.rel==="stylesheet"?(n=o.disabled,typeof o.precedence=="string"&&n==null):!0;case"script":if(o.async&&typeof o.async!="function"&&typeof o.async!="symbol"&&!o.onLoad&&!o.onError&&o.src&&typeof o.src=="string")return!0}return!1}function zx(n){return!(n.type==="stylesheet"&&(n.state.loading&3)===0)}function Wk(n,o,a,l){if(a.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(a.state.loading&4)===0){if(a.instance===null){var p=tl(l.href),m=o.querySelector(pi(p));if(m){o=m._p,o!==null&&typeof o=="object"&&typeof o.then=="function"&&(n.count++,n=Gc.bind(n),o.then(n,n)),a.state.loading|=4,a.instance=m,P(m);return}m=o.ownerDocument||o,l=Nx(l),(p=$o.get(p))&&np(l,p),m=m.createElement("link"),P(m);var v=m;v._p=new Promise(function(C,V){v.onload=C,v.onerror=V}),Gn(m,"link",l),a.instance=m}n.stylesheets===null&&(n.stylesheets=new Map),n.stylesheets.set(a,o),(o=a.state.preload)&&(a.state.loading&3)===0&&(n.count++,a=Gc.bind(n),o.addEventListener("load",a),o.addEventListener("error",a))}}var sp=0;function Bk(n,o){return n.stylesheets&&n.count===0&&Kc(n,n.stylesheets),0<n.count||0<n.imgCount?function(a){var l=setTimeout(function(){if(n.stylesheets&&Kc(n,n.stylesheets),n.unsuspend){var m=n.unsuspend;n.unsuspend=null,m()}},6e4+o);0<n.imgBytes&&sp===0&&(sp=62500*jk());var p=setTimeout(function(){if(n.waitingForImages=!1,n.count===0&&(n.stylesheets&&Kc(n,n.stylesheets),n.unsuspend)){var m=n.unsuspend;n.unsuspend=null,m()}},(n.imgBytes>sp?50:800)+o);return n.unsuspend=a,function(){n.unsuspend=null,clearTimeout(l),clearTimeout(p)}}:null}function Gc(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Kc(this,this.stylesheets);else if(this.unsuspend){var n=this.unsuspend;this.unsuspend=null,n()}}}var Qc=null;function Kc(n,o){n.stylesheets=null,n.unsuspend!==null&&(n.count++,Qc=new Map,o.forEach(Fk,n),Qc=null,Gc.call(n))}function Fk(n,o){if(!(o.state.loading&4)){var a=Qc.get(n);if(a)var l=a.get(null);else{a=new Map,Qc.set(n,a);for(var p=n.querySelectorAll("link[data-precedence],style[data-precedence]"),m=0;m<p.length;m++){var v=p[m];(v.nodeName==="LINK"||v.getAttribute("media")!=="not all")&&(a.set(v.dataset.precedence,v),l=v)}l&&a.set(null,l)}p=o.instance,v=p.getAttribute("data-precedence"),m=a.get(v)||l,m===l&&a.set(null,p),a.set(v,p),this.count++,l=Gc.bind(this),p.addEventListener("load",l),p.addEventListener("error",l),m?m.parentNode.insertBefore(p,m.nextSibling):(n=n.nodeType===9?n.head:n,n.insertBefore(p,n.firstChild)),o.state.loading|=4}}var hi={$$typeof:z,Provider:null,Consumer:null,_currentValue:K,_currentValue2:K,_threadCount:0};function Gk(n,o,a,l,p,m,v,C,V){this.tag=1,this.containerInfo=n,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Fs(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Fs(0),this.hiddenUpdates=Fs(null),this.identifierPrefix=l,this.onUncaughtError=p,this.onCaughtError=m,this.onRecoverableError=v,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=V,this.incompleteTransitions=new Map}function Mx(n,o,a,l,p,m,v,C,V,ae,ge,Se){return n=new Gk(n,o,a,v,V,ae,ge,Se,C),o=1,m===!0&&(o|=24),m=bo(3,null,null,o),n.current=m,m.stateNode=n,o=Dd(),o.refCount++,n.pooledCache=o,o.refCount++,m.memoizedState={element:l,isDehydrated:a,cache:o},Hd(m),n}function Tx(n){return n?(n=Ar,n):Ar}function Ax(n,o,a,l,p,m){p=Tx(p),l.context===null?l.context=p:l.pendingContext=p,l=sa(o),l.payload={element:a},m=m===void 0?null:m,m!==null&&(l.callback=m),a=aa(n,l,o),a!==null&&(fo(a,n,o),Gl(a,n,o))}function Ox(n,o){if(n=n.memoizedState,n!==null&&n.dehydrated!==null){var a=n.retryLane;n.retryLane=a!==0&&a<o?a:o}}function ap(n,o){Ox(n,o),(n=n.alternate)&&Ox(n,o)}function Rx(n){if(n.tag===13||n.tag===31){var o=Fa(n,67108864);o!==null&&fo(o,n,67108864),ap(n,67108864)}}function Dx(n){if(n.tag===13||n.tag===31){var o=_o();o=Gs(o);var a=Fa(n,o);a!==null&&fo(a,n,o),ap(n,o)}}var Yc=!0;function Qk(n,o,a,l){var p=T.T;T.T=null;var m=A.p;try{A.p=2,rp(n,o,a,l)}finally{A.p=m,T.T=p}}function Kk(n,o,a,l){var p=T.T;T.T=null;var m=A.p;try{A.p=8,rp(n,o,a,l)}finally{A.p=m,T.T=p}}function rp(n,o,a,l){if(Yc){var p=lp(l);if(p===null)Ff(n,o,l,Pc,a),$x(n,l);else if(Pk(p,n,o,a,l))l.stopPropagation();else if($x(n,l),o&4&&-1<Yk.indexOf(n)){for(;p!==null;){var m=Go(p);if(m!==null)switch(m.tag){case 3:if(m=m.stateNode,m.current.memoizedState.isDehydrated){var v=go(m.pendingLanes);if(v!==0){var C=m;for(C.pendingLanes|=2,C.entangledLanes|=2;v;){var V=1<<31-sn(v);C.entanglements[1]|=V,v&=~V}cs(m),(Ht&6)===0&&(Ac=it()+500,ci(0))}}break;case 31:case 13:C=Fa(m,2),C!==null&&fo(C,m,2),Rc(),ap(m,2)}if(m=lp(l),m===null&&Ff(n,o,l,Pc,a),m===p)break;p=m}p!==null&&l.stopPropagation()}else Ff(n,o,l,null,a)}}function lp(n){return n=id(n),ip(n)}var Pc=null;function ip(n){if(Pc=null,n=Fo(n),n!==null){var o=u(n);if(o===null)n=null;else{var a=o.tag;if(a===13){if(n=f(o),n!==null)return n;n=null}else if(a===31){if(n=d(o),n!==null)return n;n=null}else if(a===3){if(o.stateNode.current.memoizedState.isDehydrated)return o.tag===3?o.stateNode.containerInfo:null;n=null}else o!==n&&(n=null)}}return Pc=n,null}function Ix(n){switch(n){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(kt()){case he:return 2;case Re:return 8;case He:case Rt:return 32;case Mt:return 268435456;default:return 32}default:return 32}}var cp=!1,ga=null,xa=null,ya=null,gi=new Map,xi=new Map,ba=[],Yk="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function $x(n,o){switch(n){case"focusin":case"focusout":ga=null;break;case"dragenter":case"dragleave":xa=null;break;case"mouseover":case"mouseout":ya=null;break;case"pointerover":case"pointerout":gi.delete(o.pointerId);break;case"gotpointercapture":case"lostpointercapture":xi.delete(o.pointerId)}}function yi(n,o,a,l,p,m){return n===null||n.nativeEvent!==m?(n={blockedOn:o,domEventName:a,eventSystemFlags:l,nativeEvent:m,targetContainers:[p]},o!==null&&(o=Go(o),o!==null&&Rx(o)),n):(n.eventSystemFlags|=l,o=n.targetContainers,p!==null&&o.indexOf(p)===-1&&o.push(p),n)}function Pk(n,o,a,l,p){switch(o){case"focusin":return ga=yi(ga,n,o,a,l,p),!0;case"dragenter":return xa=yi(xa,n,o,a,l,p),!0;case"mouseover":return ya=yi(ya,n,o,a,l,p),!0;case"pointerover":var m=p.pointerId;return gi.set(m,yi(gi.get(m)||null,n,o,a,l,p)),!0;case"gotpointercapture":return m=p.pointerId,xi.set(m,yi(xi.get(m)||null,n,o,a,l,p)),!0}return!1}function qx(n){var o=Fo(n.target);if(o!==null){var a=u(o);if(a!==null){if(o=a.tag,o===13){if(o=f(a),o!==null){n.blockedOn=o,Ks(n.priority,function(){Dx(a)});return}}else if(o===31){if(o=d(a),o!==null){n.blockedOn=o,Ks(n.priority,function(){Dx(a)});return}}else if(o===3&&a.stateNode.current.memoizedState.isDehydrated){n.blockedOn=a.tag===3?a.stateNode.containerInfo:null;return}}}n.blockedOn=null}function Xc(n){if(n.blockedOn!==null)return!1;for(var o=n.targetContainers;0<o.length;){var a=lp(n.nativeEvent);if(a===null){a=n.nativeEvent;var l=new a.constructor(a.type,a);ld=l,a.target.dispatchEvent(l),ld=null}else return o=Go(a),o!==null&&Rx(o),n.blockedOn=a,!1;o.shift()}return!0}function Hx(n,o,a){Xc(n)&&a.delete(o)}function Xk(){cp=!1,ga!==null&&Xc(ga)&&(ga=null),xa!==null&&Xc(xa)&&(xa=null),ya!==null&&Xc(ya)&&(ya=null),gi.forEach(Hx),xi.forEach(Hx)}function Jc(n,o){n.blockedOn===o&&(n.blockedOn=null,cp||(cp=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,Xk)))}var eu=null;function Ux(n){eu!==n&&(eu=n,t.unstable_scheduleCallback(t.unstable_NormalPriority,function(){eu===n&&(eu=null);for(var o=0;o<n.length;o+=3){var a=n[o],l=n[o+1],p=n[o+2];if(typeof l!="function"){if(ip(l||a)===null)continue;break}var m=Go(a);m!==null&&(n.splice(o,3),o-=3,rf(m,{pending:!0,data:p,method:a.method,action:l},l,p))}}))}function ol(n){function o(V){return Jc(V,n)}ga!==null&&Jc(ga,n),xa!==null&&Jc(xa,n),ya!==null&&Jc(ya,n),gi.forEach(o),xi.forEach(o);for(var a=0;a<ba.length;a++){var l=ba[a];l.blockedOn===n&&(l.blockedOn=null)}for(;0<ba.length&&(a=ba[0],a.blockedOn===null);)qx(a),a.blockedOn===null&&ba.shift();if(a=(n.ownerDocument||n).$$reactFormReplay,a!=null)for(l=0;l<a.length;l+=3){var p=a[l],m=a[l+1],v=p[Ln]||null;if(typeof m=="function")v||Ux(a);else if(v){var C=null;if(m&&m.hasAttribute("formAction")){if(p=m,v=m[Ln]||null)C=v.formAction;else if(ip(p)!==null)continue}else C=v.action;typeof C=="function"?a[l+1]=C:(a.splice(l,3),l-=3),Ux(a)}}}function Zx(){function n(m){m.canIntercept&&m.info==="react-transition"&&m.intercept({handler:function(){return new Promise(function(v){return p=v})},focusReset:"manual",scroll:"manual"})}function o(){p!==null&&(p(),p=null),l||setTimeout(a,20)}function a(){if(!l&&!navigation.transition){var m=navigation.currentEntry;m&&m.url!=null&&navigation.navigate(m.url,{state:m.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var l=!1,p=null;return navigation.addEventListener("navigate",n),navigation.addEventListener("navigatesuccess",o),navigation.addEventListener("navigateerror",o),setTimeout(a,100),function(){l=!0,navigation.removeEventListener("navigate",n),navigation.removeEventListener("navigatesuccess",o),navigation.removeEventListener("navigateerror",o),p!==null&&(p(),p=null)}}}function up(n){this._internalRoot=n}tu.prototype.render=up.prototype.render=function(n){var o=this._internalRoot;if(o===null)throw Error(r(409));var a=o.current,l=_o();Ax(a,l,n,o,null,null)},tu.prototype.unmount=up.prototype.unmount=function(){var n=this._internalRoot;if(n!==null){this._internalRoot=null;var o=n.containerInfo;Ax(n.current,2,null,n,null,null),Rc(),o[zo]=null}};function tu(n){this._internalRoot=n}tu.prototype.unstable_scheduleHydration=function(n){if(n){var o=Ha();n={blockedOn:null,target:n,priority:o};for(var a=0;a<ba.length&&o!==0&&o<ba[a].priority;a++);ba.splice(a,0,n),a===0&&qx(n)}};var Vx=e.version;if(Vx!=="19.2.6")throw Error(r(527,Vx,"19.2.6"));A.findDOMNode=function(n){var o=n._reactInternals;if(o===void 0)throw typeof n.render=="function"?Error(r(188)):(n=Object.keys(n).join(","),Error(r(268,n)));return n=g(o),n=n!==null?x(n):null,n=n===null?null:n.stateNode,n};var Jk={bundleType:0,version:"19.2.6",rendererPackageName:"react-dom",currentDispatcherRef:T,reconcilerVersion:"19.2.6"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var nu=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!nu.isDisabled&&nu.supportsFiber)try{On=nu.inject(Jk),tn=nu}catch{}}return bi.createRoot=function(n,o){if(!c(n))throw Error(r(299));var a=!1,l="",p=Yg,m=Pg,v=Xg;return o!=null&&(o.unstable_strictMode===!0&&(a=!0),o.identifierPrefix!==void 0&&(l=o.identifierPrefix),o.onUncaughtError!==void 0&&(p=o.onUncaughtError),o.onCaughtError!==void 0&&(m=o.onCaughtError),o.onRecoverableError!==void 0&&(v=o.onRecoverableError)),o=Mx(n,1,!1,null,null,a,l,null,p,m,v,Zx),n[zo]=o.current,Bf(n),new up(o)},bi.hydrateRoot=function(n,o,a){if(!c(n))throw Error(r(299));var l=!1,p="",m=Yg,v=Pg,C=Xg,V=null;return a!=null&&(a.unstable_strictMode===!0&&(l=!0),a.identifierPrefix!==void 0&&(p=a.identifierPrefix),a.onUncaughtError!==void 0&&(m=a.onUncaughtError),a.onCaughtError!==void 0&&(v=a.onCaughtError),a.onRecoverableError!==void 0&&(C=a.onRecoverableError),a.formState!==void 0&&(V=a.formState)),o=Mx(n,1,!0,o,a??null,l,p,V,m,v,C,Zx),o.context=Tx(null),a=o.current,l=_o(),l=Gs(l),p=sa(l),p.callback=null,aa(a,p,l),a=l,o.current.lanes=a,xo(o,a),cs(o),n[zo]=o.current,Bf(n),new tu(o)},bi.version="19.2.6",bi}var oy;function N4(){if(oy)return dp.exports;oy=1;function t(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(e){console.error(e)}}return t(),dp.exports=j4(),dp.exports}var C4=N4(),mp={exports:{}},hp={};var sy;function L4(){if(sy)return hp;sy=1;var t=Kb().__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;return hp.c=function(e){return t.H.useMemoCache(e)},hp}var ay;function E4(){return ay||(ay=1,mp.exports=L4()),mp.exports}var Fe=E4();const z4={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1,VITE_ANDROID_RELAY_URL:"",VITE_PYTHON_SERVICE_URL:"",VITE_WHATSAPP_SERVICE_URL:""},M4=t=>{try{return z4?.[t]}catch{return}},T4=t=>{if(!t)return!1;const e=t.trim().toLowerCase();return e==="false"||e==="0"||e==="no"||e==="off"},_0={nodeSpecBackend:!T4(M4("VITE_NODESPEC_BACKEND"))};function j0(t){if(t.hidden===!0||t.uiHints?.hidden===!0)return"hidden";if(t.enum&&t.enum.length>0)return"options";const e=t.editor??t.uiHints?.editor;if(e==="code")return"code";if(e==="json")return"json";if((t.widget??t.uiHints?.widget)==="file"||t.format==="binary")return"file";if(t.format==="date-time"||t.format==="date")return"dateTime";if(t.anyOf){const c=t.anyOf.find(u=>u.type&&u.type!=="null");if(c)return j0(c)}switch(Array.isArray(t.type)?t.type[0]:t.type){case"boolean":return"boolean";case"integer":case"number":return"number";case"array":return"collection";case"object":return"fixedCollection";default:return"string"}}function A4(t,e,s){const r=j0(e),u=e.uiHints?.options??e.enum?.map(w=>({name:String(w),value:w})),f={displayName:e.uiHints?.displayName||e.title||t,name:t,type:r,default:e.default,description:e.description,options:u};s&&(f.required=!0),(e.minimum!==void 0||e.maximum!==void 0)&&(f.typeOptions={...e.minimum!==void 0?{minValue:e.minimum}:{},...e.maximum!==void 0?{maxValue:e.maximum}:{}});const d=w=>e[w]!==void 0?e[w]:e.uiHints?.[w],h=d("displayOptions");h&&(f.displayOptions=h);const g=d("placeholder");g&&(f.placeholder=g);const x=d("noDataExpression");x&&(f.noDataExpression=x);const y=d("validation");y&&(f.validation=y);const b=["loadOptionsMethod","loadOptionsDependsOn","multipleValues","multipleValueButtonText","numberStepSize","password","rows","editor","editorLanguage","dynamicOptions","dependsOn","accept"],k={};for(const w of b){const _=d(w);_!==void 0&&(k[w]=_)}Object.keys(k).length>0&&(f.typeOptions={...f.typeOptions,...k});const S=d("group");return S&&(f.__group=S),f}function O4(t){return t.replace(/[_-]+/g," ").replace(/([a-z])([A-Z])/g,"$1 $2").split(" ").filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ")}function R4(t,e){const s=d=>d.__group,r=new Map;for(let d=0;d<t.length;d++){const h=s(t[d]);h&&!r.has(h)&&r.set(h,d)}if(r.size===0)return t.map(d=>{const{__group:h,...g}=d;return g});const c={},u=new Set,f=[];for(let d=0;d<t.length;d++){const h=t[d],g=s(h),{__group:x,...y}=h,b=y;if(!g){f.push(b);continue}c[g]=c[g]||[],c[g].push(b),r.get(g)===d&&!u.has(g)&&(u.add(g),f.push({__groupPlaceholder:g}))}return f.map(d=>{const h=d.__groupPlaceholder;if(!h)return d;const g=e[h]||{},x=g.display_name||O4(h),y=`Add ${x.replace(/s$/,"")||x}`;return{displayName:x,name:h,type:"collection",placeholder:g.placeholder||y,default:{},options:c[h]}})}function ry(){return["main"]}function N0(t){const e=t.inputs?.properties??{},s=new Set(t.inputs?.required??[]),r=Object.entries(e).map(([f,d])=>A4(f,d,s.has(f))),c=t.inputs?.groups??{},u=R4(r,c);return{displayName:t.displayName,name:t.type,icon:t.icon,group:t.group??[],version:t.version??1,subtitle:t.subtitle,description:t.description??"",defaults:{name:t.displayName},inputs:ry(),outputs:ry(),properties:u,credentials:t.credentials?.map(f=>({name:f})),uiHints:t.uiHints}}const jo={SHORT:3e4,MEDIUM:6e4,FOREVER:1/0},yr={DEFAULT:5*6e4,FOREVER:1/0},D4=Yb("credentialValues",{byProvider:t=>[t]}),I4=Yb("compactionStats",{bySession:(t,e,s)=>[t,e,s]}),$p=tS(D4,I4),At=new nS({defaultOptions:{queries:{refetchOnWindowFocus:!1,refetchOnReconnect:!1,refetchOnMount:!1,retry:1,staleTime:jo.SHORT,gcTime:yr.DEFAULT}}});At.setQueryDefaults(["nodeSpec"],{staleTime:jo.FOREVER,gcTime:yr.FOREVER});At.setQueryDefaults(["nodeGroups"],{staleTime:jo.FOREVER,gcTime:yr.FOREVER});At.setQueryDefaults(["credentialValues"],{staleTime:jo.FOREVER,gcTime:yr.FOREVER});At.setQueryDefaults(["skillContent"],{staleTime:jo.FOREVER,gcTime:yr.FOREVER});(!globalThis.EventTarget||!globalThis.Event)&&console.error(`
11
+ PartySocket requires a global 'EventTarget' class to be available!
12
+ You can polyfill this global by adding this to your code before any partysocket imports:
13
+
14
+ \`\`\`
15
+ import 'partysocket/event-target-polyfill';
16
+ \`\`\`
17
+ Please file an issue at https://github.com/partykit/partykit if you're still having trouble.
18
+ `);var C0=class extends Event{message;error;constructor(t,e){super("error",e),this.message=t.message,this.error=t}},L0=class extends Event{code;reason;wasClean=!0;constructor(t=1e3,e="",s){super("close",s),this.code=t,this.reason=e}};const gp={Event,ErrorEvent:C0,CloseEvent:L0};function $4(t,e){if(!t)throw new Error(e)}function q4(t){return new t.constructor(t.type,t)}function H4(t){return"data"in t?new MessageEvent(t.type,t):"code"in t||"reason"in t?new L0(t.code||1999,t.reason||"unknown reason",t):"error"in t?new C0(t.error,t):new Event(t.type,t)}const U4=typeof process<"u"&&typeof process.versions?.node<"u",Z4=typeof navigator<"u"&&navigator.product==="ReactNative",su=U4||Z4?H4:q4,ar={maxReconnectionDelay:1e4,minReconnectionDelay:1e3+Math.random()*4e3,minUptime:5e3,reconnectionDelayGrowFactor:1.3,connectionTimeout:4e3,maxRetries:Number.POSITIVE_INFINITY,maxEnqueuedMessages:Number.POSITIVE_INFINITY};let ly=!1;var Xo=class ir extends EventTarget{_ws;_retryCount=-1;_uptimeTimeout;_connectTimeout;_shouldReconnect=!0;_connectLock=!1;_binaryType="blob";_closeCalled=!1;_messageQueue=[];_debugLogger=console.log.bind(console);_url;_protocols;_options;constructor(e,s,r={}){super(),this._url=e,this._protocols=s,this._options=r,this._options.startClosed&&(this._shouldReconnect=!1),this._options.debugLogger&&(this._debugLogger=this._options.debugLogger),this._connect()}static get CONNECTING(){return 0}static get OPEN(){return 1}static get CLOSING(){return 2}static get CLOSED(){return 3}get CONNECTING(){return ir.CONNECTING}get OPEN(){return ir.OPEN}get CLOSING(){return ir.CLOSING}get CLOSED(){return ir.CLOSED}get binaryType(){return this._ws?this._ws.binaryType:this._binaryType}set binaryType(e){this._binaryType=e,this._ws&&(this._ws.binaryType=e)}get retryCount(){return Math.max(this._retryCount,0)}get bufferedAmount(){return this._messageQueue.reduce((e,s)=>(typeof s=="string"?e+=s.length:s instanceof Blob?e+=s.size:e+=s.byteLength,e),0)+(this._ws?this._ws.bufferedAmount:0)}get extensions(){return this._ws?this._ws.extensions:""}get protocol(){return this._ws?this._ws.protocol:""}get readyState(){return this._ws?this._ws.readyState:this._options.startClosed?ir.CLOSED:ir.CONNECTING}get url(){return this._ws?this._ws.url:""}get shouldReconnect(){return this._shouldReconnect}onclose=null;onerror=null;onmessage=null;onopen=null;close(e=1e3,s){if(this._closeCalled=!0,this._shouldReconnect=!1,this._clearTimeouts(),!this._ws){this._debug("close enqueued: no ws instance");return}if(this._ws.readyState===this.CLOSED){this._debug("close: already closed");return}this._ws.close(e,s)}reconnect(e,s){this._shouldReconnect=!0,this._closeCalled=!1,this._retryCount=-1,!this._ws||this._ws.readyState===this.CLOSED?this._connect():(this._disconnect(e,s),this._connect())}send(e){if(this._ws&&this._ws.readyState===this.OPEN)this._debug("send",e),this._ws.send(e);else{const{maxEnqueuedMessages:s=ar.maxEnqueuedMessages}=this._options;this._messageQueue.length<s&&(this._debug("enqueue",e),this._messageQueue.push(e))}}_debug(...e){this._options.debug&&this._debugLogger("RWS>",...e)}_getNextDelay(){const{reconnectionDelayGrowFactor:e=ar.reconnectionDelayGrowFactor,minReconnectionDelay:s=ar.minReconnectionDelay,maxReconnectionDelay:r=ar.maxReconnectionDelay}=this._options;let c=0;return this._retryCount>0&&(c=s*e**(this._retryCount-1),c>r&&(c=r)),this._debug("next delay",c),c}_wait(){return new Promise(e=>{setTimeout(e,this._getNextDelay())})}_getNextProtocols(e){if(!e)return Promise.resolve(null);if(typeof e=="string"||Array.isArray(e))return Promise.resolve(e);if(typeof e=="function"){const s=e();if(!s)return Promise.resolve(null);if(typeof s=="string"||Array.isArray(s))return Promise.resolve(s);if(s.then)return s}throw Error("Invalid protocols")}_getNextUrl(e){if(typeof e=="string")return Promise.resolve(e);if(typeof e=="function"){const s=e();if(typeof s=="string")return Promise.resolve(s);if(s.then)return s}throw Error("Invalid URL")}_connect(){if(this._connectLock||!this._shouldReconnect)return;this._connectLock=!0;const{maxRetries:e=ar.maxRetries,connectionTimeout:s=ar.connectionTimeout}=this._options;if(this._retryCount>=e){this._debug("max retries reached",this._retryCount,">=",e),this._connectLock=!1;return}this._retryCount++,this._debug("connect",this._retryCount),this._removeListeners(),this._wait().then(()=>Promise.all([this._getNextUrl(this._url),this._getNextProtocols(this._protocols||null)])).then(([r,c])=>{if(this._closeCalled){this._connectLock=!1;return}!this._options.WebSocket&&typeof WebSocket>"u"&&!ly&&(console.error(`‼️ No WebSocket implementation available. You should define options.WebSocket.
19
+
20
+ For example, if you're using node.js, run \`npm install ws\`, and then in your code:
21
+
22
+ import PartySocket from 'partysocket';
23
+ import WS from 'ws';
24
+
25
+ const partysocket = new PartySocket({
26
+ host: "127.0.0.1:1999",
27
+ room: "test-room",
28
+ WebSocket: WS
29
+ });
30
+
31
+ `),ly=!0);const u=this._options.WebSocket||WebSocket;this._debug("connect",{url:r,protocols:c}),this._ws=c?new u(r,c):new u(r),this._ws.binaryType=this._binaryType,this._connectLock=!1,this._addListeners(),this._connectTimeout=setTimeout(()=>this._handleTimeout(),s)}).catch(r=>{this._connectLock=!1,this._handleError(new gp.ErrorEvent(Error(r.message),this))})}_handleTimeout(){this._debug("timeout event"),this._handleError(new gp.ErrorEvent(Error("TIMEOUT"),this))}_disconnect(e=1e3,s){if(this._clearTimeouts(),!!this._ws){this._removeListeners();try{(this._ws.readyState===this.OPEN||this._ws.readyState===this.CONNECTING)&&this._ws.close(e,s),this._handleClose(new gp.CloseEvent(e,s,this))}catch{}}}_acceptOpen(){this._debug("accept open"),this._retryCount=0}_handleOpen=e=>{this._debug("open event");const{minUptime:s=ar.minUptime}=this._options;clearTimeout(this._connectTimeout),this._uptimeTimeout=setTimeout(()=>this._acceptOpen(),s),$4(this._ws,"WebSocket is not defined"),this._ws.binaryType=this._binaryType,this._messageQueue.forEach(r=>{this._ws?.send(r)}),this._messageQueue=[],this.onopen&&this.onopen(e),this.dispatchEvent(su(e))};_handleMessage=e=>{this._debug("message event"),this.onmessage&&this.onmessage(e),this.dispatchEvent(su(e))};_handleError=e=>{this._debug("error event",e.message),this._disconnect(void 0,e.message==="TIMEOUT"?"timeout":void 0),this.onerror&&this.onerror(e),this._debug("exec error listeners"),this.dispatchEvent(su(e)),this._connect()};_handleClose=e=>{this._debug("close event"),this._clearTimeouts(),this._shouldReconnect&&this._connect(),this.onclose&&this.onclose(e),this.dispatchEvent(su(e))};_removeListeners(){this._ws&&(this._debug("removeListeners"),this._ws.removeEventListener("open",this._handleOpen),this._ws.removeEventListener("close",this._handleClose),this._ws.removeEventListener("message",this._handleMessage),this._ws.removeEventListener("error",this._handleError))}_addListeners(){this._ws&&(this._debug("addListeners"),this._ws.addEventListener("open",this._handleOpen),this._ws.addEventListener("close",this._handleClose),this._ws.addEventListener("message",this._handleMessage),this._ws.addEventListener("error",this._handleError))}_clearTimeouts(){clearTimeout(this._connectTimeout),clearTimeout(this._uptimeTimeout)}};const V4={VITE_PYTHON_SERVICE_URL:""};function W4(){const t=V4||{},e=typeof window<"u"&&!window.location.hostname.includes("localhost")&&!window.location.hostname.includes("127.0.0.1");return{PYTHON_BASE_URL:t.VITE_PYTHON_SERVICE_URL||(e?"":"http://localhost:3010")}}const _l=W4(),iy=t=>{let e;const s=new Set,r=(g,x)=>{const y=typeof g=="function"?g(e):g;if(!Object.is(y,e)){const b=e;e=x??(typeof y!="object"||y===null)?y:Object.assign({},e,y),s.forEach(k=>k(e,b))}},c=()=>e,d={setState:r,getState:c,getInitialState:()=>h,subscribe:g=>(s.add(g),()=>s.delete(g))},h=e=t(r,c,d);return d},B4=(t=>t?iy(t):iy),F4=t=>t;function G4(t,e=F4){const s=be.useSyncExternalStore(t.subscribe,be.useCallback(()=>e(t.getState()),[t,e]),be.useCallback(()=>e(t.getInitialState()),[t,e]));return be.useDebugValue(s),s}const cy=t=>{const e=B4(t),s=r=>G4(e,r);return Object.assign(s,e),s},Em=(t=>t?cy(t):cy),Q4=()=>`workflow-${Date.now()}-${Math.random().toString(36).substr(2,9)}`,uy=t=>t.map(e=>({...e,selected:void 0,dragging:void 0})),dy=t=>t.map(e=>({...e,selected:void 0})),K4=(t,e=20)=>({x:Math.round(t.x/e)*e,y:Math.round(t.y/e)*e}),Y4=t=>t===0?{x:100,y:200}:{x:0,y:0},Xe={green:"#50fa7b",purple:"#bd93f9",pink:"#ff79c6",cyan:"#8be9fd",red:"#ff5555",orange:"#ffb86c",yellow:"#f1fa8c",background:"#282a36",currentLine:"#44475a",selection:"#44475a",comment:"#6272a4",foreground:"#f8f8f2"},kn={base03:"#002b36",base02:"#073642",base01:"#586e75",base00:"#657b83",base0:"#839496",base1:"#93a1a1",base2:"#eee8d5",base3:"#fdf6e3",yellow:"#b58900",orange:"#cb4b16",red:"#dc322f",magenta:"#d33682",violet:"#6c71c4",blue:"#268bd2",cyan:"#2aa198",green:"#859900"},E0={background:"#f5f7fa",backgroundAlt:"#eef1f5",backgroundPanel:"#ffffff",backgroundElevated:"#ffffff",backgroundHover:"rgba(0,0,0,0.05)",backgroundActive:"rgba(0,0,0,0.08)",backgroundCanvas:"#e8ecf1",text:"#1a1d21",textSecondary:"#374151",textMuted:"#4b5563",border:"#d1d5db",borderHover:"#9ca3af",borderFocus:"#3b82f6",borderNode:"#c7ccd4",shadow:"rgba(0,0,0,0.12)",shadowLight:"rgba(0,0,0,0.06)",shadowHeavy:"rgba(0,0,0,0.18)",shadowNode:"0 2px 8px rgba(0,0,0,0.1), 0 4px 16px rgba(0,0,0,0.06)",focus:"#3b82f6",focusRing:"rgba(59, 130, 246, 0.25)",primary:"#2563eb",success:"#059669",warning:"#d97706",error:"#dc2626",info:"#0891b2",templateVariable:"#7c3aed",nodeBackground:"#ffffff",nodeBorder:"#d1d5db",nodeHeaderBg:"#f3f4f6",actionRun:"#059669",actionDeploy:"#7c3aed",actionStop:"#dc2626",actionSave:"#0284c7",actionSettings:"#d97706",actionCredentials:"#ca8a04",actionTheme:"#7c3aed",actionSidebar:"#0891b2",actionPalette:"#7c3aed",statusSaved:"#059669",statusModified:"#d97706",edgeDefault:"#6b7280",edgeSelected:"#7c3aed",edgeExecuting:"#2563eb",edgeCompleted:"#16a34a",edgeError:"#dc2626",edgePending:"#6b7280",edgeMemoryActive:"#db2777",edgeToolActive:"#ea580c",categoryWorkflow:"#ea580c",categoryTrigger:"#db2777",categoryAI:"#7c3aed",categoryLocation:"#dc2626",categoryWhatsapp:"#059669",categoryAndroid:"#0891b2",categoryChat:"#ca8a04",categoryCode:"#ea580c",categoryUtil:"#7c3aed"},P4={background:kn.base03,backgroundAlt:kn.base02,backgroundPanel:kn.base02,backgroundElevated:"#0d1f2d",backgroundHover:"rgba(255,255,255,0.04)",backgroundActive:"rgba(255,255,255,0.08)",backgroundCanvas:kn.base03,text:Xe.foreground,textSecondary:"#bfbfbf",textMuted:Xe.comment,border:kn.base01+"60",borderHover:kn.base01,borderFocus:kn.blue,borderNode:kn.base01,shadow:"rgba(0,0,0,0.4)",shadowLight:"rgba(0,0,0,0.25)",shadowHeavy:"rgba(0,0,0,0.5)",shadowNode:"0 2px 12px rgba(0,0,0,0.3)",focus:kn.blue,focusRing:"rgba(38, 139, 210, 0.3)",primary:kn.blue,success:kn.green,warning:kn.yellow,error:kn.red,info:kn.cyan,templateVariable:kn.cyan,nodeBackground:kn.base02,nodeBorder:kn.base01,nodeHeaderBg:kn.base03,actionRun:Xe.green,actionDeploy:Xe.purple,actionStop:Xe.pink,actionSave:Xe.cyan,actionSettings:Xe.orange,actionCredentials:Xe.yellow,actionTheme:Xe.yellow,actionSidebar:Xe.cyan,actionPalette:Xe.purple,statusSaved:Xe.green,statusModified:Xe.orange,edgeDefault:Xe.cyan,edgeSelected:Xe.purple,edgeExecuting:Xe.purple,edgeCompleted:Xe.green,edgeError:Xe.red,edgePending:Xe.cyan,edgeMemoryActive:Xe.pink,edgeToolActive:Xe.orange,categoryWorkflow:Xe.orange,categoryTrigger:Xe.pink,categoryAI:Xe.purple,categoryLocation:Xe.red,categoryWhatsapp:Xe.green,categoryAndroid:Xe.cyan,categoryChat:Xe.yellow,categoryCode:Xe.orange,categoryUtil:Xe.purple},Ie={colors:E0,accent:kn,dracula:Xe,spacing:{xs:"4px",sm:"8px",md:"12px",lg:"16px",xl:"20px",xxl:"32px"},fontSize:{xs:"11px",sm:"12px",base:"14px",lg:"16px",xl:"18px"},fontWeight:{normal:"400",medium:"500",semibold:"600"},fontFamily:{sans:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',mono:'ui-monospace, SFMono-Regular, "SF Mono", Menlo, Monaco, Consolas, monospace'},borderRadius:{sm:"4px",md:"6px",lg:"8px"},nodeSize:{square:"60px",squareIcon:"28px",toolkitWidth:"120px",toolkitHeight:"50px",handle:"8px",statusIndicator:"10px",paramButton:"16px",outputBadge:"14px"},iconSize:{xs:"12px",sm:"16px",md:"24px",lg:"28px",xl:"32px"},buttonSize:{sm:"24px",md:"32px",lg:"34px"},layout:{sidebarWidth:"288px",workflowSidebarWidth:"280px",parameterPanelWidth:"320px",headerHeight:"60px",toolbarHeight:"48px"},transitions:{fast:"0.2s ease",medium:"0.3s ease"},constants:{storageKeys:{workflows:"react-flow-workflows",workflowData:t=>`react-flow-workflows-${t}`},defaultWorkflowName:"Untitled Workflow",debounceDelay:{workflowUpdate:100,search:300},gridSize:20,defaultNodePosition:{x:100,y:200},dragOffset:{x:75,y:50}}};`${Ie.spacing.sm}${Ie.spacing.lg}`,Ie.borderRadius.md,Ie.fontSize.sm,Ie.fontWeight.medium,Ie.transitions.fast,Ie.spacing.sm,Ie.colors.focus,`${Ie.colors.border}`,Ie.colors.textSecondary,`${Ie.spacing.sm}${Ie.spacing.md}`,Ie.fontSize.base,`${Ie.colors.border}`,Ie.borderRadius.md,Ie.colors.background,Ie.colors.text,`${Ie.transitions.fast}`,Ie.colors.background,`${Ie.colors.border}`,Ie.borderRadius.lg,`${Ie.colors.shadowLight}`,Ie.transitions.fast,Ie.spacing.xl,Ie.colors.background,Ie.borderRadius.lg,Ie.spacing.xl,`${Ie.colors.border}`,Ie.colors.backgroundAlt,Ie.fontSize.xl,Ie.fontWeight.semibold,Ie.colors.text,Ie.colors.backgroundPanel,Ie.spacing.xl,`${Ie.colors.border}`,Ie.colors.background,Ie.fontSize.xl,Ie.fontWeight.semibold,Ie.colors.text,Ie.spacing.sm,Ie.colors.background,`${Ie.colors.border}`,Ie.borderRadius.md,Ie.transitions.fast,`${Ie.colors.shadowLight}`,Ie.fontSize.lg,Ie.borderRadius.md,Ie.colors.background,`${Ie.colors.shadow}`,Ie.fontWeight.medium,Ie.fontSize.base,Ie.colors.text,Ie.fontSize.sm,Ie.colors.textSecondary,`${Ie.spacing.sm}${Ie.spacing.md}`,Ie.fontSize.sm,Ie.fontWeight.semibold,Ie.colors.textSecondary,Ie.colors.backgroundPanel,`${Ie.colors.border}`,Ie.borderRadius.md,Ie.transitions.fast,`${Ie.transitions.medium}${Ie.transitions.fast}`,Ie.colors.background,Ie.colors.text,Ie.colors.backgroundAlt,`${Ie.transitions.medium}`,Ie.colors.background,Ie.fontFamily.mono,Ie.fontSize.sm;function qu(t){const e=[];return(!t.id||typeof t.id!="string")&&e.push("Workflow must have a valid id"),(!t.name||typeof t.name!="string")&&e.push("Workflow must have a valid name"),Array.isArray(t.nodes)||e.push("Workflow must have a nodes array"),Array.isArray(t.edges)||e.push("Workflow must have an edges array"),t.createdAt||e.push("Workflow must have a createdAt timestamp"),t.lastModified||e.push("Workflow must have a lastModified timestamp"),t.nodes?.forEach((s,r)=>{s.id||e.push(`Node at index ${r} must have an id`),s.type||e.push(`Node at index ${r} must have a type`),(!s.position||typeof s.position.x!="number"||typeof s.position.y!="number")&&e.push(`Node at index ${r} must have a valid position with x and y coordinates`)}),t.edges?.forEach((s,r)=>{s.id||e.push(`Edge at index ${r} must have an id`),s.source||e.push(`Edge at index ${r} must have a source node`),s.target||e.push(`Edge at index ${r} must have a target node`);const c=t.nodes?.some(f=>f.id===s.source),u=t.nodes?.some(f=>f.id===s.target);c||e.push(`Edge ${s.id} references non-existent source node: ${s.source}`),u||e.push(`Edge ${s.id} references non-existent target node: ${s.target}`)}),{valid:e.length===0,errors:e}}function z0(t){return JSON.stringify(t,null,2)}function M0(t){try{const e=JSON.parse(t);return e.createdAt&&(e.createdAt=new Date(e.createdAt)),e.lastModified&&(e.lastModified=new Date(e.lastModified)),e}catch(e){throw new Error(`Failed to parse workflow JSON: ${e}`)}}const X4=new Set(["apiKey","api_key","apikey","accessToken","access_token","refreshToken","refresh_token","secret","password","passwd","client_id","client_secret","clientId","clientSecret","token","bearerToken","bearer_token","privateKey","private_key","encryptionKey","encryption_key","oauthToken","oauth_token"]),J4=new Set(["maxTokens","max_tokens","budgetTokens","budget_tokens","page_token","pageToken","nextPageToken","next_page_token","tokenCount","token_count","totalTokens","total_tokens","inputTokens","input_tokens","outputTokens","output_tokens"]),e8=["api_key","apikey","secret","password","private_key","privatekey","accesstoken","access_token","refreshtoken","refresh_token","bearertoken","bearer_token","oauthtoken","oauth_token","authtoken","auth_token"];function t8(t){if(J4.has(t))return!1;if(X4.has(t))return!0;const e=t.toLowerCase();return e8.some(s=>e.includes(s))}const n8=new Set(["memoryContent","token_usage","execution_time","last_execution","last_result"]);function T0(t){const e={};for(const[s,r]of Object.entries(t))if(!t8(s)&&!n8.has(s))if(r&&typeof r=="object"&&!Array.isArray(r)){const c=T0(r);Object.keys(c).length>0&&(e[s]=c)}else e[s]=r;return e}const A0="0.0.72",o8=new Set(["label","disabled","condition"]);function O0(t){const e=new Set,s=[];for(const r of t){const c=Vo(r.type??"");if(c){s.push({type:c.type,version:c.version??1});for(const u of c.credentials??[])e.add(u)}}if(!(e.size===0&&s.length===0))return{credentials:[...e].map(r=>({provider_id:r})),nodes:s}}function Lu(t){return t.map(e=>({...e,data:Object.fromEntries(Object.entries(e.data||{}).filter(([s])=>o8.has(s)))}))}function R0(t){if(!t||Object.keys(t).length===0)return;const e={};for(const[s,r]of Object.entries(t)){const c=T0(r);Object.keys(c).length>0&&(e[s]=c)}return Object.keys(e).length>0?e:void 0}function s8(t,e){const s=qu(t);if(!s.valid)throw console.error("Workflow validation errors:",s.errors),new Error(`Cannot export invalid workflow: ${s.errors.join(", ")}`);const r={...t,nodes:Lu(t.nodes),createdAt:t.createdAt.toISOString(),lastModified:t.lastModified.toISOString(),version:A0},c=R0(e);c&&(r.nodeParameters=c);const u=O0(t.nodes);u&&(r.requirements=u);const f=z0(r),d=new Blob([f],{type:"application/json"}),h=URL.createObjectURL(d),g=document.createElement("a");g.href=h,g.download=`${t.name||"workflow"}_${t.id}.json`,document.body.appendChild(g),g.click(),document.body.removeChild(g),URL.revokeObjectURL(h)}function a8(t){return new Promise((e,s)=>{const r=new FileReader;r.onload=c=>{try{const u=c.target?.result,f=JSON.parse(u),d=f.nodeParameters||void 0,h=f.requirements||void 0,g=M0(u),x=qu(g);if(!x.valid){s(new Error(`Invalid workflow JSON: ${x.errors.join(", ")}`));return}e({...g,nodeParameters:d,requirements:h})}catch(u){s(u)}},r.onerror=()=>{s(new Error("Failed to read file"))},r.readAsText(t)})}function r8(t,e){const s=qu(t);if(!s.valid)throw new Error(`Cannot export invalid workflow: ${s.errors.join(", ")}`);const r={...t,nodes:Lu(t.nodes),createdAt:t.createdAt.toISOString(),lastModified:t.lastModified.toISOString(),version:A0},c=R0(e);c&&(r.nodeParameters=c);const u=O0(t.nodes);return u&&(r.requirements=u),z0(r)}function l8(t){const e=JSON.parse(t),s=e.nodeParameters||void 0,r=e.requirements||void 0,c=M0(t),u=qu(c);if(!u.valid)throw new Error(`Invalid workflow JSON: ${u.errors.join(", ")}`);return{...c,nodeParameters:s,requirements:r}}const au=()=>`${_l.PYTHON_BASE_URL}/api/database`,fl={async saveWorkflow(t,e,s){try{return(await(await fetch(`${au()}/workflows`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({workflow_id:t,name:e,data:s})})).json()).success}catch(r){return console.error("Failed to save workflow:",r),!1}},async getWorkflow(t){try{const s=await(await fetch(`${au()}/workflows/${t}`,{credentials:"include"})).json();return s.success&&s.workflow?s.workflow:null}catch(e){return console.error("Failed to get workflow:",e),null}},async getAllWorkflows(){try{const e=await(await fetch(`${au()}/workflows`,{credentials:"include"})).json();return e.success&&e.workflows?e.workflows:[]}catch(t){return console.error("Failed to get workflows:",t),[]}},async deleteWorkflow(t){try{return(await(await fetch(`${au()}/workflows/${t}`,{method:"DELETE",credentials:"include"})).json()).success}catch(e){return console.error("Failed to delete workflow:",e),!1}}},Hu=["workflows"];function i8(t){return{id:t.id,name:t.name,nodeCount:t.nodeCount,createdAt:new Date(t.createdAt),lastModified:new Date(t.lastModified)}}function D0(){const t=Fe.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e={queryKey:Hu,queryFn:c8,staleTime:3e4},t[0]=e):e=t[0],Zo(e)}async function c8(){return(await fl.getAllWorkflows()).map(i8)}const xp=()=>{At.invalidateQueries({queryKey:Hu})},fy=()=>({id:Q4(),name:Ie.constants.defaultWorkflowName,nodes:[],edges:[],createdAt:new Date,lastModified:new Date}),sl=()=>({selectedNodeId:null,executedNodes:[],executionOrder:[],isExecuting:!1,viewport:void 0}),py=t=>t.map(e=>e.type==="googleChatModel"?{...e,type:"geminiChatModel"}:e),Qn={sidebarVisible:"ui_sidebar_visible",componentPaletteVisible:"ui_component_palette_visible",consolePanelVisible:"ui_console_panel_visible",proMode:"ui_pro_mode",soundEnabled:"machinaos-sound"},vi=(t,e)=>{try{const s=localStorage.getItem(t);if(s!==null)return s==="true"}catch{}return e},qo=(t,e)=>{try{localStorage.setItem(t,String(e))}catch{}},De=Em((t,e)=>({currentWorkflow:null,hasUnsavedChanges:!1,workflowUIStates:{},selectedNode:null,sidebarVisible:vi(Qn.sidebarVisible,!0),componentPaletteVisible:vi(Qn.componentPaletteVisible,!0),consolePanelVisible:vi(Qn.consolePanelVisible,!1),proMode:vi(Qn.proMode,!1),soundEnabled:vi(Qn.soundEnabled,!0),renamingNodeId:null,setCurrentWorkflow:s=>{t({currentWorkflow:s,hasUnsavedChanges:!1})},updateWorkflow:s=>{const r=e().currentWorkflow;if(!r)return;const c={...r,...s,lastModified:new Date};t({currentWorkflow:c,hasUnsavedChanges:!0})},createNewWorkflow:()=>{const s=fy();t({currentWorkflow:s,hasUnsavedChanges:!1,selectedNode:null})},saveWorkflow:async()=>{const{currentWorkflow:s}=e();if(!s)return;const r={...s,lastModified:new Date};if(!await fl.saveWorkflow(r.id,r.name,{nodes:Lu(r.nodes),edges:r.edges})){console.error("Failed to save workflow to database");return}t({currentWorkflow:r,hasUnsavedChanges:!1}),xp()},loadWorkflow:async s=>{const r=await fl.getWorkflow(s);if(r){const c=py(r.data?.nodes||[]),u=r.data?.edges||[],f={id:r.id,name:r.name,nodes:c,edges:u,createdAt:new Date(r.createdAt),lastModified:new Date(r.lastModified)};t({currentWorkflow:f,hasUnsavedChanges:!1,selectedNode:null})}},deleteWorkflow:async s=>{const{currentWorkflow:r}=e();if(!await fl.deleteWorkflow(s))return console.error("Failed to delete workflow from database"),!1;if(r?.id===s){const u=fy();t({currentWorkflow:u,hasUnsavedChanges:!1,selectedNode:null})}return xp(),!0},migrateCurrentWorkflow:async()=>{const{currentWorkflow:s}=e();if(!s||!s.nodes)return;const r=py(s.nodes);if(r.some((u,f)=>u.type!==s.nodes[f]?.type)){const u={...s,nodes:r};await fl.saveWorkflow(u.id,u.name,{nodes:Lu(u.nodes),edges:u.edges}),t({currentWorkflow:u,hasUnsavedChanges:!1}),xp()}},setSelectedNode:s=>{t({selectedNode:s})},toggleSidebar:()=>{t(s=>{const r=!s.sidebarVisible;return qo(Qn.sidebarVisible,r),{sidebarVisible:r}})},toggleComponentPalette:()=>{t(s=>{const r=!s.componentPaletteVisible;return qo(Qn.componentPaletteVisible,r),{componentPaletteVisible:r}})},toggleProMode:()=>{t(s=>{const r=!s.proMode;return qo(Qn.proMode,r),{proMode:r}})},setSoundEnabled:s=>{qo(Qn.soundEnabled,s),t({soundEnabled:s})},toggleSoundEnabled:()=>{t(s=>{const r=!s.soundEnabled;return qo(Qn.soundEnabled,r),{soundEnabled:r}})},setRenamingNodeId:s=>{t({renamingNodeId:s})},setSidebarVisible:s=>{qo(Qn.sidebarVisible,s),t({sidebarVisible:s})},setComponentPaletteVisible:s=>{qo(Qn.componentPaletteVisible,s),t({componentPaletteVisible:s})},setConsolePanelVisible:s=>{qo(Qn.consolePanelVisible,s),t({consolePanelVisible:s})},toggleConsolePanelVisible:()=>{t(s=>{const r=!s.consolePanelVisible;return qo(Qn.consolePanelVisible,r),{consolePanelVisible:r}})},applyUIDefaults:s=>{const r={};s.sidebarDefaultOpen!==void 0&&(r.sidebarVisible=s.sidebarDefaultOpen,qo(Qn.sidebarVisible,s.sidebarDefaultOpen)),s.componentPaletteDefaultOpen!==void 0&&(r.componentPaletteVisible=s.componentPaletteDefaultOpen,qo(Qn.componentPaletteVisible,s.componentPaletteDefaultOpen)),s.consolePanelDefaultOpen!==void 0&&(r.consolePanelVisible=s.consolePanelDefaultOpen,qo(Qn.consolePanelVisible,s.consolePanelDefaultOpen)),Object.keys(r).length>0&&t(r)},getWorkflowUIState:s=>{const{workflowUIStates:r}=e();return r[s]||sl()},setWorkflowExecuting:(s,r)=>{t(c=>{const u=c.workflowUIStates[s];return{workflowUIStates:{...c.workflowUIStates,[s]:{...u||sl(),isExecuting:r}}}})},setWorkflowExecutedNodes:(s,r)=>{t(c=>({workflowUIStates:{...c.workflowUIStates,[s]:{...c.workflowUIStates[s]||sl(),executedNodes:r}}}))},setWorkflowExecutionOrder:(s,r)=>{t(c=>({workflowUIStates:{...c.workflowUIStates,[s]:{...c.workflowUIStates[s]||sl(),executionOrder:r}}}))},setWorkflowViewport:(s,r)=>{t(c=>({workflowUIStates:{...c.workflowUIStates,[s]:{...c.workflowUIStates[s]||sl(),viewport:r}}}))},clearWorkflowExecutionState:s=>{t(r=>({workflowUIStates:{...r.workflowUIStates,[s]:{...r.workflowUIStates[s]||sl(),isExecuting:!1,executedNodes:[],executionOrder:[]}}}))},updateNodeData:(s,r)=>{const{currentWorkflow:c,selectedNode:u}=e();if(!c)return;const f=c.nodes.map(h=>h.id===s?{...h,data:{...h.data,...r}}:h),d={...c,nodes:f,lastModified:new Date};t({currentWorkflow:d,hasUnsavedChanges:!0,selectedNode:u?.id===s?{...u,data:{...u.data,...r}}:u})},updateNodes:s=>{const{currentWorkflow:r}=e();if(!r)return;const c={...r,nodes:s,lastModified:new Date};t({currentWorkflow:c,hasUnsavedChanges:!0})},updateEdges:s=>{const{currentWorkflow:r}=e();if(!r)return;const c={...r,edges:s,lastModified:new Date};t({currentWorkflow:c,hasUnsavedChanges:!0})},addNode:s=>{const{currentWorkflow:r}=e();if(!r)return;const c={...r,nodes:[...r.nodes,s],lastModified:new Date};t({currentWorkflow:c,hasUnsavedChanges:!0})},removeNodes:s=>{const{currentWorkflow:r}=e();if(!r)return;const c=r.nodes.filter(d=>!s.includes(d.id)),u=r.edges.filter(d=>!s.includes(d.source)&&!s.includes(d.target)),f={...r,nodes:c,edges:u,lastModified:new Date};t({currentWorkflow:f,hasUnsavedChanges:!0,selectedNode:s.includes(e().selectedNode?.id||"")?null:e().selectedNode})},removeEdges:s=>{const{currentWorkflow:r}=e();if(!r)return;const c=r.edges.filter(f=>!s.includes(f.id)),u={...r,edges:c,lastModified:new Date};t({currentWorkflow:u,hasUnsavedChanges:!0})},exportWorkflowToJSON:s=>{const{currentWorkflow:r}=e();if(!r)throw new Error("No workflow to export");return r8(r,s)},exportWorkflowToFile:s=>{const{currentWorkflow:r}=e();if(!r)throw new Error("No workflow to export");s8(r,s)},importWorkflowFromJSON:s=>{const r=l8(s);return t({currentWorkflow:r,hasUnsavedChanges:!0}),r}})),qp={BASE_MS:50,CAP_MS:4e3,MAX_ATTEMPTS:7},ru={MIN_DELAY_MS:250,MAX_DELAY_MS:8e3,GROW_FACTOR:1.3,MAX_ENQUEUED_MESSAGES:200},lu={NORMAL_CLOSURE:1e3},I0=j.createContext(void 0),ku=()=>`${_l.PYTHON_BASE_URL}/api/auth`,u8={id:0,email:"anonymous",display_name:"Anonymous",is_owner:!0},al=["auth","status"],d8=t=>Math.random()*Math.min(qp.CAP_MS,qp.BASE_MS*2**t),f8=(t,e)=>{if(t>=qp.MAX_ATTEMPTS)return!1;const s=e instanceof Error?e.message:String(e);return!(s.includes("HTTP 401")||s.includes("HTTP 403"))},p8=async({signal:t})=>{const e=await fetch(`${ku()}/status`,{credentials:"include",signal:t});if(!e.ok)throw new Error(`auth.status: HTTP ${e.status}`);return e.json()},m8=({children:t})=>{const e=Sl(),s=Zo({queryKey:al,queryFn:p8,retry:f8,retryDelay:d8,staleTime:1/0,refetchOnMount:!1,refetchOnWindowFocus:!1,refetchOnReconnect:!1}),r=s.data,c=j.useMemo(()=>r?r.auth_enabled===!1?u8:r.authenticated?r.user:null:null,[r]),u=r?.auth_mode??"single",f=r?.can_register??!1,d=c!==null,h=s.isPending,g=s.isError?"Failed to connect to server":null,x=j.useCallback(()=>e.invalidateQueries({queryKey:al}),[e]),y=j.useCallback(async(_,N)=>{try{const L=await fetch(`${ku()}/login`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({email:_,password:N})}),z=await L.json();return!L.ok||!z.success||!z.user?(e.setQueryData(al,null),!1):(e.setQueryData(al,{auth_enabled:!0,auth_mode:u,authenticated:!0,user:z.user,can_register:!1}),await x(),!0)}catch(L){return console.error("Login error:",L),!1}},[e,x,u]),b=j.useCallback(async(_,N,L)=>{try{const z=await fetch(`${ku()}/register`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({email:_,password:N,display_name:L})}),O=await z.json();return!z.ok||!O.success||!O.user?!1:(e.setQueryData(al,{auth_enabled:!0,auth_mode:u,authenticated:!0,user:O.user,can_register:!1}),await x(),!0)}catch(z){return console.error("Register error:",z),!1}},[e,x,u]),k=j.useCallback(async()=>{try{await fetch(`${ku()}/logout`,{method:"POST",credentials:"include"})}catch(_){console.error("Logout error:",_)}finally{e.setQueryData(al,_=>({..._??{auth_enabled:!0,auth_mode:"single",can_register:!1},authenticated:!1,user:null})),await x()}},[e,x]),S=j.useCallback(async()=>{await s.refetch()},[s]),w=j.useMemo(()=>({user:c,isAuthenticated:d,isLoading:h,authMode:u,canRegister:f,error:g,login:y,register:b,logout:k,checkAuth:S}),[c,d,h,u,f,g,y,b,k,S]);return i.jsx(I0.Provider,{value:w,children:t})},Uu=()=>{const t=j.useContext(I0);if(t===void 0)throw new Error("useAuth must be used within an AuthProvider");return t};function my(t){return"unchanged"in t&&t.unchanged===!0}const ul=["credentialCatalogue"],h8=300;let iu=null;function Is(t){iu&&clearTimeout(iu),iu=setTimeout(()=>{iu=null,t.invalidateQueries({queryKey:ul})},h8)}const $0="credentials:catalogue:current";function g8(t){if(typeof window>"u")return setTimeout(t,0);const e=window.requestIdleCallback;return typeof e=="function"?e(t,{timeout:2e3}):setTimeout(t,0)}function x8(t){if(t===null)return;if(typeof window>"u"){clearTimeout(t);return}const e=window.cancelIdleCallback;if(typeof e=="function"&&typeof t=="number"){e(t);return}clearTimeout(t)}async function y8(){try{const t=await SS($0);return!t||t.schemaVersion!==1||!t.catalogue?null:t.catalogue}catch(t){return console.warn("[credentials] failed to read IDB cache",t),null}}async function b8(t){try{const e={schemaVersion:1,savedAt:Date.now(),catalogue:t};await _S($0,e)}catch(e){console.warn("[credentials] failed to write IDB cache",e)}}function zm(){const t=Fe.c(17),e=Sl(),{sendRequest:s,isReady:r}=Ct(),c=j.useRef(!1);let u,f;t[0]!==e?(u=()=>{if(c.current)return;c.current=!0;let _=!1;return y8().then(N=>{_||!N||e.getQueryData(ul)||e.setQueryData(ul,N)}),()=>{_=!0}},f=[e],t[0]=e,t[1]=u,t[2]=f):(u=t[1],f=t[2]),j.useEffect(u,f);let d;t[3]!==e||t[4]!==s?(d=async()=>{const _=e.getQueryData(ul),N={};_?.version&&(N.since=_.version);const L=await s("get_credential_catalogue",N);if(my(L)){if(_)return _;const z=await s("get_credential_catalogue",{});if(my(z))throw new Error("server returned unchanged on empty cache");return z}return L},t[3]=e,t[4]=s,t[5]=d):d=t[5];const h=d;let g;t[6]!==r||t[7]!==h?(g={queryKey:ul,queryFn:h,staleTime:1/0,gcTime:6e5,enabled:r,placeholderData:v8},t[6]=r,t[7]=h,t[8]=g):g=t[8];const x=Zo(g);let y,b;t[9]!==x.data?(y=()=>{if(!x.data)return;const _=g8(()=>{b8(x.data)});return()=>x8(_)},b=[x.data],t[9]=x.data,t[10]=y,t[11]=b):(y=t[10],b=t[11]),j.useEffect(y,b);let k;t[12]!==e?(k=async()=>{await e.invalidateQueries({queryKey:ul})},t[12]=e,t[13]=k):k=t[13];const S=k;let w;return t[14]!==x||t[15]!==S?(w={...x,refresh:S},t[14]=x,t[15]=S,t[16]=w):w=t[16],w}function v8(t){return t}function w8(t){const e=Fe.c(3),{data:s}=zm();if(!t||!s?.providers)return!1;let r;return e[0]!==s.providers||e[1]!==t?(r=s.providers.find(c=>c.id===t)?.stored,e[0]=s.providers,e[1]=t,e[2]=r):r=e[2],!!r}function k8(){const t=Fe.c(2),{data:e}=zm();if(!e?.providers)return 0;let s;return t[0]!==e.providers?(s=e.providers.filter(S8),t[0]=e.providers,t[1]=s):s=t[1],s.length}function S8(t){return t.stored}const ja=t=>["nodeParams",t];function _8(t){const e=Fe.c(9),{getNodeParameters:s,isReady:r}=Ct();let c;e[0]!==t?(c=t?ja(t):["nodeParams","none"],e[0]=t,e[1]=c):c=e[1];let u;e[2]!==s||e[3]!==t?(u=()=>t?s(t):Promise.resolve(null),e[2]=s,e[3]=t,e[4]=u):u=e[4];const f=!!t&&r;let d;return e[5]!==c||e[6]!==u||e[7]!==f?(d={queryKey:c,queryFn:u,enabled:f,staleTime:6e4},e[5]=c,e[6]=u,e[7]=f,e[8]=d):d=e[8],Zo(d)}function j8(){const t=Fe.c(7),{saveNodeParameters:e}=Ct(),s=Sl();let r;t[0]!==e?(r=async f=>{const{nodeId:d,parameters:h,version:g}=f,x=await e(d,h,g);if(!x)throw new Error("Failed to save node parameters");return x},t[0]=e,t[1]=r):r=t[1];let c;t[2]!==s?(c=(f,d)=>{const{nodeId:h,parameters:g}=d;s.setQueryData(ja(h),x=>({parameters:g,version:(x?.version??0)+1,timestamp:Date.now()}))},t[2]=s,t[3]=c):c=t[3];let u;return t[4]!==r||t[5]!==c?(u={mutationFn:r,onSuccess:c},t[4]=r,t[5]=c,t[6]=u):u=t[6],xm(u)}const fs=Em(t=>({allStatuses:{},currentWorkflowId:void 0,setCurrentWorkflowId:e=>t(s=>s.currentWorkflowId===e?s:{currentWorkflowId:e}),setStatus:(e,s,r)=>t(c=>{const u=c.allStatuses[e]??{};return u[s]===r?c:{allStatuses:{...c.allStatuses,[e]:{...u,[s]:r}}}}),setStatusesForWorkflow:(e,s)=>t(r=>({allStatuses:{...r.allStatuses,[e]:s}})),mergeStatuses:e=>t(s=>({allStatuses:{...s.allStatuses,...e}})),clearStatus:(e,s)=>t(r=>{const c=r.allStatuses[e];if(!c||!(s in c))return r;const u={...c};return delete u[s],{allStatuses:{...r.allStatuses,[e]:u}}}),clearWorkflow:e=>t(s=>{if(!(e in s.allStatuses))return s;const r={...s.allStatuses};return delete r[e],{allStatuses:r}})}));function N8(t){const e=Fe.c(2);let s;return e[0]!==t?(s=r=>{const c=r.currentWorkflowId;return c?r.allStatuses[c]?.[t]:void 0},e[0]=t,e[1]=s):s=e[1],fs(s)}function C8(){return fs(L8)}function L8(t){const e=t.currentWorkflowId;return e?t.allStatuses[e]??hy:hy}const hy=Object.freeze({}),yp=()=>`${Date.now()}-${Math.random().toString(36).substr(2,9)}`,E8=3e4,z8=200,M8=["whatsappReceive","webhookTrigger","cronScheduler","chatTrigger","telegramReceive"],T8=["aiAgent","chatAgent","rlm_agent","android_agent","coding_agent","web_agent","task_agent","social_agent","travel_agent","tool_agent","productivity_agent","payments_agent","consumer_agent","autonomous_agent","orchestrator_agent","ai_employee"],gy={connected:!1,paired:!1,device_id:null,device_name:null,connected_devices:[],connection_type:null,qr_data:null,session_token:null},xy={executing:!1,current_node:null},yy={isRunning:!1,activeRuns:0,status:"idle"},A8={locked:!1,workflow_id:null,locked_at:null,reason:null},by={connected:!1,has_session:!1,running:!1,pairing:!1},O8={connected:!1,username:null,user_id:null},R8={connected:!1,email:null},D8={connected:!1,bot_username:null,bot_name:null,bot_id:null,owner_chat_id:null},q0=j.createContext(null),I8=()=>{const t=_l.PYTHON_BASE_URL;if(!t)return`${window.location.protocol==="https:"?"wss":"ws"}://${window.location.host}/ws/status`;const e=t.startsWith("https")?"wss":"ws";return`${t.replace(/^https?/,e)}/ws/status`},$8=100,q8=({children:t})=>{const{isAuthenticated:e,isLoading:s}=Uu(),c=De(P=>P.currentWorkflow)?.id,[u,f]=j.useState(!1),[d,h]=j.useState(!1),[g,x]=j.useState(!1),[y,b]=j.useState(gy),[k,S]=j.useState(by),[w,_]=j.useState(O8),[N,L]=j.useState(R8),[z,O]=j.useState(D8),[I,q]=j.useState([]),[M,E]=j.useState(null),[$,Q]=j.useState({}),[H,R]=j.useState([]),[D,U]=j.useState([]),[W,T]=j.useState([]),[A,K]=j.useState({}),[ne,X]=j.useState({}),[ue,fe]=j.useState(xy),[pe,we]=j.useState(yy),[je,ve]=j.useState(A8),[Ce,ce]=j.useState({}),te=j.useRef(null),Oe=j.useRef(null),B=j.useRef(new Map),F=j.useRef(new Map),oe=j.useRef([]),me=j.useRef(c);j.useEffect(()=>{const P=me.current;P&&c&&P!==c&&te.current?.readyState===Xo.OPEN&&(async()=>{try{const xe=yp(),G=await new Promise((mt,wt)=>{const so=setTimeout(()=>wt(new Error("Timeout")),5e3),bn=ke=>{try{const ze=JSON.parse(ke.data);ze.request_id===xe&&(clearTimeout(so),te.current?.removeEventListener("message",bn),mt(ze))}catch{}};te.current?.addEventListener("message",bn),te.current?.send(JSON.stringify({type:"get_deployment_status",request_id:xe,workflow_id:c}))}),Me=G.is_running||!1;we({isRunning:Me,activeRuns:G.active_runs||0,status:Me?"running":"idle",workflow_id:G.workflow_id||null});const{setWorkflowExecuting:ut}=De.getState();ut(c,Me),ve({locked:Me,workflow_id:Me?c:null,locked_at:Me?Date.now():null,reason:Me?"Workflow is running":null})}catch(xe){console.error("[WebSocket] Failed to fetch deployment status:",xe)}})(),me.current=c},[c]);const Ke=j.useCallback(P=>{try{const J=JSON.parse(P.data),{type:xe,data:G,node_id:Me,name:ut,value:mt,output:wt,variables:so,request_id:bn}=J;if(bn&&B.current.has(bn)){const ke=B.current.get(bn);ke.timeout&&clearTimeout(ke.timeout),B.current.delete(bn),ke.resolve(J);return}switch(xe){case"initial_status":case"full_status":if(G){if(G.android&&b(G.android),G.whatsapp&&S(G.whatsapp),G.twitter&&_(G.twitter),G.google&&L(G.google),G.telegram&&O(G.telegram),G.api_keys&&Q(G.api_keys),G.nodes){const ke={};for(const[ze,Ue]of Object.entries(G.nodes)){const dt=Ue,Lt=dt?.workflow_id||"unknown";ke[Lt]||(ke[Lt]={}),ke[Lt][ze]=dt}fs.getState().mergeStatuses(ke)}if(G.node_parameters){K(G.node_parameters);for(const[ke,ze]of Object.entries(G.node_parameters))At.setQueryData(ja(ke),ze)}if(G.variables){const ke={};for(const[ze,Ue]of Object.entries(G.variables)){const dt=Ue?.workflow_id||"unknown";ke[dt]||(ke[dt]={}),ke[dt][ze]=Ue}X(ze=>({...ze,...ke}))}G.workflow&&fe(G.workflow),G.workflow_lock&&ve(G.workflow_lock),G.deployment&&we({isRunning:G.deployment.isRunning||!1,activeRuns:G.deployment.activeRuns||0,status:G.deployment.status||"idle"}),Is(At)}break;case"api_key_status":J.provider&&(Q(ke=>({...ke,[J.provider]:G})),Is(At));break;case"credential_catalogue_updated":{const ke=G;Is(At);break}case"workflow_lifecycle":{G?.type?.endsWith(".imported")&&At.invalidateQueries({queryKey:Hu});break}case"skill_lifecycle":{const ke=G,ze=ke?.data?.name||ke?.subject;At.invalidateQueries({queryKey:["userSkills"]}),At.invalidateQueries({queryKey:["folderSkills"]}),ze&&(ke?.type?.endsWith(".content_saved")||ke?.type?.endsWith(".deleted"))&&At.removeQueries({queryKey:["skillContent",ze]});break}case"plugin_connection_status":{const ke=G,ze=ke?.source||"",Ue=ke?.data||{};ze.includes("/android")?b({...gy,...Ue}):ze.includes("/whatsapp")?(S({...by,...Ue}),Is(At)):ze.includes("/telegram")&&(O({connected:!!Ue.connected,bot_username:Ue.bot_username??null,bot_name:Ue.bot_name??null,bot_id:Ue.bot_id??null,owner_chat_id:Ue.owner_chat_id??null}),Is(At));break}case"twitter_oauth_complete":G?.success&&(_({connected:!0,username:G.username||null,user_id:G.user_id||null,name:G.name,profile_image_url:G.profile_image_url}),Is(At));break;case"google_oauth_complete":G?.success&&(L({connected:!0,email:G.email||null,name:G.name,profile_image_url:G.profile_image_url}),Is(At));break;case"google_status":G&&(L({connected:G.connected||!1,email:G.email||null,name:G.name}),Is(At));break;case"whatsapp_message_received":if(G){const ke={message_id:G.message_id||G.id||"",sender:G.sender||G.from||"",chat_id:G.chat_id||G.chat||"",type:G.type||"text",text:G.text||G.message||G.body||"",timestamp:G.timestamp||Date.now(),is_group:G.is_group||G.isGroup||!1,push_name:G.push_name||G.pushName||G.name,media_url:G.media_url||G.mediaUrl,media_data:G.media_data||G.mediaData,caption:G.caption,latitude:G.latitude,longitude:G.longitude,contact_name:G.contact_name||G.contactName,vcard:G.vcard};E(ke),q(ze=>[ke,...ze].slice(0,$8))}break;case"node_status":if(Me){const ke=J.workflow_id||"unknown",ze=G?.data||{},Ue={...G,...ze,workflow_id:ke};fs.getState().setStatus(ke,Me,Ue)}break;case"node_output":if(Me){const ke=J.workflow_id||"unknown",ze=fs.getState(),Ue=ze.allStatuses[ke]?.[Me]||{};ze.setStatus(ke,Me,{...Ue,output:wt,workflow_id:ke})}break;case"agent_progress":{const ke=G,ze=ke?.data,Ue=ze?.node_id||ke?.subject,dt=ke?.workflow_id||J.workflow_id||"unknown";if(Ue&&ze){const Lt=fs.getState(),rt=Lt.allStatuses[dt]?.[Ue]||{},Yn=rt.status==="success"||rt.status==="error"?rt.status:"executing";Lt.setStatus(dt,Ue,{...rt,status:Yn,workflow_id:dt,data:{...rt.data||{},iteration:ze.iteration,max_iterations:ze.max_iterations,...ze.phase?{phase:ze.phase}:{}}})}break}case"node_status_cleared":if(Me||J.node_id){const ke=Me||J.node_id,ze=J.workflow_id,Ue=fs.getState();if(ze)Ue.clearStatus(ze,ke);else for(const dt of Object.keys(Ue.allStatuses))Ue.clearStatus(dt,ke)}break;case"node_parameters_updated":{const ke=G,ze=ke?.data,Ue=ze?.node_id||ke?.subject;if(Ue&&ze?.parameters!==void 0){const dt={parameters:ze.parameters,version:ze.version??1};K(Lt=>({...Lt,[Ue]:dt})),At.setQueryData(ja(Ue),dt)}break}case"node_parameters_deleted":Me&&(K(ke=>{const ze={...ke};return delete ze[Me],ze}),At.removeQueries({queryKey:ja(Me)}));break;case"variable_update":if(ut!==void 0){const ke=J.workflow_id||"unknown";X(ze=>({...ze,[ke]:{...ze[ke]||{},[ut]:mt}}))}break;case"variables_update":if(so){const ke=J.workflow_id||"unknown";X(ze=>({...ze,[ke]:{...ze[ke]||{},...so}}))}break;case"workflow_status":{fe(G||xy);const ke=J.workflow_id||G?.workflow_id;if(ke&&G&&typeof G.executing=="boolean"){const{setWorkflowExecuting:ze}=De.getState();ze(ke,G.executing)}break}case"deployment_snapshot":{const ze=G?.data?.running_workflow_ids??[],Ue=new Set(ze),dt=De.getState(),Lt=dt.currentWorkflow?.id,rt=dt.workflowUIStates??{};for(const[Yn,le]of Object.entries(rt))le?.isExecuting&&!Ue.has(Yn)&&dt.setWorkflowExecuting(Yn,!1);for(const Yn of ze)dt.setWorkflowExecuting(Yn,!0);we(Yn=>{const le={...Yn};return Lt&&Ue.has(Lt)?(le.isRunning=!0,le.status="running",le.workflow_id=Lt):Lt&&!Ue.has(Lt)&&Yn.workflow_id===Lt&&(le.isRunning=!1,le.status="stopped",le.workflow_id=null,le.activeRuns=0),le});break}case"deployment_status":if(J.status){const ke=J.workflow_id,ze=De.getState().currentWorkflow?.id,Ue=["stopped","cancelled","error"].includes(J.status);if((!ke||ke===ze||Ue)&&(we(Lt=>{const rt={...Lt};switch(J.workflow_id&&(rt.workflow_id=J.workflow_id),J.status){case"starting":rt.isRunning=!0,rt.status="starting",rt.activeRuns=0;break;case"running":case"started":rt.isRunning=!0,rt.status="running",rt.activeRuns=J.data?.active_runs??Lt.activeRuns;break;case"run_started":rt.isRunning=!0,rt.status="running",rt.activeRuns=J.data?.active_runs||Lt.activeRuns+1;break;case"run_complete":rt.activeRuns=Math.max(0,J.data?.active_runs||Lt.activeRuns-1);break;case"stopped":(!Lt.workflow_id||Lt.workflow_id===ke)&&(rt.isRunning=!1,rt.status="stopped",rt.totalTime=J.data?.total_time,rt.activeRuns=0,rt.workflow_id=null);break;case"cancelled":(!Lt.workflow_id||Lt.workflow_id===ke)&&(rt.isRunning=!1,rt.status="cancelled",rt.activeRuns=0,rt.workflow_id=null);break;case"error":(!Lt.workflow_id||Lt.workflow_id===ke)&&(rt.isRunning=!1,rt.status="error",rt.error=J.error,rt.workflow_id=null);break}return rt}),ke)){const{setWorkflowExecuting:Lt}=De.getState(),rt=["starting","running","started","run_started"].includes(J.status),Yn=["stopped","cancelled","error"].includes(J.status);(rt||Yn)&&Lt(ke,rt)}}break;case"pong":break;case"console_log":if(G){const ke=De.getState().currentWorkflow?.id;if(G.workflow_id&&ke&&G.workflow_id!==ke)break;const ze={node_id:G.node_id||"",label:G.label||"Console",timestamp:G.timestamp||new Date().toISOString(),data:G.data,formatted:G.formatted||JSON.stringify(G.data,null,2),format:G.format||"json",workflow_id:G.workflow_id,source_node_id:G.source_node_id,source_node_type:G.source_node_type,source_node_label:G.source_node_label};R(Ue=>[ze,...Ue].slice(0,100))}break;case"console_logs_cleared":J.workflow_id?R(ke=>ke.filter(ze=>ze.workflow_id!==J.workflow_id)):R([]);break;case"terminal_log":if(G){const ke={timestamp:G.timestamp||new Date().toISOString(),level:G.level||"info",message:G.message||"",source:G.source,details:G.details};U(ze=>[ke,...ze].slice(0,200))}break;case"terminal_logs_cleared":U([]);break;case"workflow_lock":if(G){const ke=J.workflow_id||G.workflow_id,ze=De.getState().currentWorkflow?.id;(!ke||ke===ze||!G.locked)&&ve({locked:G.locked||!1,workflow_id:G.workflow_id||null,locked_at:G.locked_at||null,reason:G.reason||null})}break;case"token_usage_update":{const ke=J.session_id,ze=J.workflow_id||De.getState().currentWorkflow?.id||"",Ue=J.data||{};ke&&ze&&(ce(dt=>{const Lt=dt[ze]||{},rt=Lt[ke];return{...dt,[ze]:{...Lt,[ke]:{session_id:ke,total:Ue.total??rt?.total??0,threshold:Ue.threshold??rt?.threshold??0,count:rt?.count??0,total_cost:Ue.total_cost??rt?.total_cost}}}}),At.invalidateQueries({queryKey:$p.compactionStats._def}));break}case"compaction_completed":{const ke=J.session_id;ke&&(ce(ze=>{const Ue={...ze};for(const dt of Object.keys(Ue))Ue[dt]?.[ke]&&(Ue[dt]={...Ue[dt],[ke]:{...Ue[dt][ke],count:(Ue[dt][ke].count||0)+(J.success?1:0),total:J.tokens_after??Ue[dt][ke].total}});return Ue}),At.invalidateQueries({queryKey:$p.compactionStats._def}));break}case"compaction_starting":break;case"error":console.error("[WebSocket] Server error:",J.code,J.message);break;default:{const ke=F.current.get(xe);if(ke&&ke.size>0)for(const ze of ke)try{ze(G)}catch(Ue){console.error(`[WebSocket] Listener for '${xe}' threw:`,Ue)}break}}}catch(J){console.error("[WebSocket] Failed to parse message:",J)}},[]),tt=j.useCallback(P=>{const J=oe.current;oe.current=[];for(const xe of J){try{xe.abortController.abort()}catch{}if(P.readyState!==WebSocket.OPEN){try{xe.reject(new Error("WebSocket closed during drain"))}catch{}continue}const G=yp();let Me=null;xe.timeoutMs>0&&(Me=setTimeout(()=>{B.current.delete(G),xe.reject(new Error(`Request timeout: ${xe.type}`))},xe.timeoutMs)),B.current.set(G,{resolve:xe.resolve,reject:xe.reject,timeout:Me}),P.send(JSON.stringify({type:xe.type,request_id:G,...xe.data}))}},[]),lt=j.useCallback(()=>{if(te.current?.readyState===Xo.OPEN)return;const P=I8();try{const J=new Xo(P,[],{minReconnectionDelay:ru.MIN_DELAY_MS,maxReconnectionDelay:ru.MAX_DELAY_MS,reconnectionDelayGrowFactor:ru.GROW_FACTOR,maxRetries:1/0,maxEnqueuedMessages:ru.MAX_ENQUEUED_MESSAGES});J.onopen=async()=>{f(!0),x(!1),Oe.current=setInterval(()=>{J.readyState===Xo.OPEN&&J.send(JSON.stringify({type:"ping"}))},3e4),tt(J),h(!0),Is(At);const xe=(G,Me)=>new Promise((ut,mt)=>{const wt=`${Me}_${Date.now()}_${Math.random().toString(36).slice(2,8)}`,so=setTimeout(()=>{J.removeEventListener("message",bn),mt(new Error("Timeout"))},5e3),bn=ke=>{try{const ze=JSON.parse(ke.data);ze.request_id===wt&&(clearTimeout(so),J.removeEventListener("message",bn),ut(ze))}catch{}};J.addEventListener("message",bn),J.send(JSON.stringify({...G,request_id:wt}))});(async()=>{try{const G=await xe({type:"get_terminal_logs"},"terminal_logs");if(G.success&&G.logs){const Me=G.logs.map(ut=>({timestamp:ut.timestamp||new Date().toISOString(),level:ut.level||"info",message:ut.message||"",source:ut.source,details:ut.details})).reverse();U(Me)}}catch{}})(),(async()=>{try{const G=De.getState().currentWorkflow?.id||"default",Me=await xe({type:"get_chat_messages",session_id:G},"chat_messages");if(Me.success&&Me.messages){const ut=Me.messages.map(mt=>({role:mt.role,message:mt.message,timestamp:mt.timestamp}));T(ut)}}catch{}})(),(async()=>{try{const G=De.getState().currentWorkflow?.id,Me=await xe({type:"get_console_logs",limit:100,workflow_id:G},"console");if(Me.success&&Me.logs){const ut=Me.logs.map(mt=>({node_id:mt.node_id,label:mt.label,timestamp:mt.timestamp,data:mt.data,formatted:mt.formatted,format:mt.format,workflow_id:mt.workflow_id,source_node_id:mt.source_node_id,source_node_type:mt.source_node_type,source_node_label:mt.source_node_label}));R(ut)}}catch{}})()},J.onmessage=Ke,J.onclose=xe=>{if(console.log("[WebSocket] Disconnected:",xe.code,xe.reason),f(!1),h(!1),te.current=null,B.current.size>0){for(const[,G]of B.current){G.timeout&&clearTimeout(G.timeout);try{G.reject(new Error("WebSocket closed"))}catch{}}B.current.clear()}if(xe.code===lu.NORMAL_CLOSURE&&oe.current.length>0){for(const G of oe.current)try{G.abortController.abort(),G.reject(new Error("WebSocket closed (intentional)"))}catch{}oe.current=[]}Oe.current&&(clearInterval(Oe.current),Oe.current=null),xe.code!==lu.NORMAL_CLOSURE&&x(!0)},J.onerror=xe=>{console.error("[WebSocket] Error:",xe)},te.current=J}catch(J){console.error("[WebSocket] Failed to create connection:",J)}},[Ke,tt]),yt=j.useCallback(()=>{te.current?.readyState===Xo.OPEN&&te.current.send(JSON.stringify({type:"get_status"}))},[]),bt=j.useCallback(P=>{if(c)return fs.getState().allStatuses[c]?.[P]},[c]),re=j.useCallback(P=>$[P],[$]),qe=j.useCallback(P=>{if(c)return ne[c]?.[P]},[ne,c]),Ye=j.useCallback(async P=>{const J=De.getState().currentWorkflow?.id;J&&fs.getState().clearStatus(J,P);try{te.current&&te.current.readyState===WebSocket.OPEN&&te.current.send(JSON.stringify({type:"clear_node_output",node_id:P,workflow_id:J}))}catch(xe){console.error("[WebSocket] Failed to clear backend node output:",xe)}},[]),at=j.useCallback(()=>{q([]),E(null)},[]),it=j.useCallback(()=>{if(R([]),te.current?.readyState===Xo.OPEN){const P=De.getState().currentWorkflow?.id;te.current.send(JSON.stringify({type:"clear_console_logs",workflow_id:P}))}},[]),kt=j.useCallback(()=>{U([]),te.current?.readyState===Xo.OPEN&&te.current.send(JSON.stringify({type:"clear_terminal_logs"}))},[]),he=j.useCallback(()=>{if(T([]),te.current?.readyState===Xo.OPEN){const P=De.getState().currentWorkflow?.id||"default";te.current.send(JSON.stringify({type:"clear_chat_messages",session_id:P}))}},[]);j.useEffect(()=>{if(!d||!te.current||te.current.readyState!==WebSocket.OPEN)return;T([]),R([]);const P=c||"default",J=te.current,xe=`chat_switch_${Date.now()}`,G=`console_switch_${Date.now()}`,Me=ut=>{try{const mt=JSON.parse(ut.data);mt.request_id===xe&&mt.success&&Array.isArray(mt.messages)?T(mt.messages.map(wt=>({role:wt.role,message:wt.message,timestamp:wt.timestamp}))):mt.request_id===G&&mt.success&&Array.isArray(mt.logs)&&R(mt.logs.map(wt=>({node_id:wt.node_id,label:wt.label,timestamp:wt.timestamp,data:wt.data,formatted:wt.formatted,format:wt.format,workflow_id:wt.workflow_id,source_node_id:wt.source_node_id,source_node_type:wt.source_node_type,source_node_label:wt.source_node_label})))}catch{}};return J.addEventListener("message",Me),J.send(JSON.stringify({type:"get_chat_messages",session_id:P,request_id:xe})),J.send(JSON.stringify({type:"get_console_logs",limit:100,workflow_id:c,request_id:G})),()=>{J.removeEventListener("message",Me)}},[c,d]);const Re=C8(),He=j.useMemo(()=>c?ne[c]||{}:{},[ne,c]),Rt=j.useMemo(()=>c?Ce[c]||{}:{},[Ce,c]),Mt=j.useCallback((P,J,xe)=>{ce(G=>({...G,[P]:{...G[P]||{},[J]:xe}}))},[]),Le=j.useCallback(async(P,J,xe)=>new Promise((G,Me)=>{const ut=xe===void 0||xe>=0,mt=xe&&xe>0?xe:E8,wt=xe===-1||!ut?-1:mt;if(te.current?.readyState===Xo.OPEN){const ke=yp();let ze=null;wt>0&&(ze=setTimeout(()=>{B.current.delete(ke),Me(new Error(`Request timeout: ${P}`))},wt)),B.current.set(ke,{resolve:G,reject:Me,timeout:ze}),te.current.send(JSON.stringify({type:P,request_id:ke,...J}));return}if(oe.current.length>=z8){const ke=oe.current.shift();if(ke)try{ke.abortController.abort(),ke.reject(new Error("backpressure: too many queued requests"))}catch{}}const so=new AbortController,bn={type:P,data:J,resolve:G,reject:Me,enqueuedAt:Date.now(),timeoutMs:wt,abortController:so};if(oe.current.push(bn),wt>0){const ke=setTimeout(()=>{const ze=oe.current.indexOf(bn);if(ze>=0){oe.current.splice(ze,1);try{Me(new Error(`Request timeout (queued): ${P}`))}catch{}}},wt);so.signal.addEventListener("abort",()=>clearTimeout(ke))}}),[]),Cn=j.useCallback(async(P,J)=>{const xe=new Date().toISOString(),G={role:"user",message:P,timestamp:xe};T(Me=>[...Me,G]);try{const Me=De.getState().currentWorkflow?.id||"default";await Le("send_chat_message",{message:P,role:"user",node_id:J,session_id:Me,timestamp:xe})}catch(Me){throw console.error("[WebSocket] Failed to send chat message:",Me),Me}},[Le]),On=j.useCallback(async P=>{try{const J=await Le("get_node_parameters",{node_id:P});if(J.parameters){const xe={parameters:J.parameters,version:J.version||0};return K(G=>({...G,[P]:xe})),xe}return null}catch(J){return console.error("[WebSocket] Failed to get node parameters:",J),null}},[Le]),tn=j.useCallback(async P=>{if(!P.length)return{};try{const J=await Le("get_all_node_parameters",{node_ids:P}),xe={};if(J.parameters){for(const[G,Me]of Object.entries(J.parameters))xe[G]={parameters:Me.parameters||{},version:Me.version||0};K(G=>({...G,...xe}))}return xe}catch(J){return console.error("[WebSocket] Failed to get all node parameters:",J),{}}},[Le]),rn=j.useCallback(async(P,J,xe)=>{try{const G=A[P]?.version||xe||0,Me=await Le("save_node_parameters",{node_id:P,parameters:J,version:G});return Me.success!==!1?(K(ut=>({...ut,[P]:{parameters:Me.parameters||J,version:Me.version||G+1,timestamp:Me.timestamp}})),!0):!1}catch(G){return console.error("[WebSocket] Failed to save node parameters:",G),!1}},[Le,A]),sn=j.useCallback(async P=>{try{return await Le("delete_node_parameters",{node_id:P}),K(J=>{const xe={...J};return delete xe[P],xe}),!0}catch(J){return console.error("[WebSocket] Failed to delete node parameters:",J),!1}},[Le]),Sr=j.useCallback(async(P,J,xe,G,Me)=>{try{const mt=M8.includes(J)||T8.includes(J)?-1:void 0;return await Le("execute_node",{node_id:P,node_type:J,parameters:xe,nodes:G,edges:Me,workflow_id:c},mt)}catch(ut){throw console.error("[WebSocket] Failed to execute node:",ut),ut}},[Le,c]),Vs=j.useCallback(async(P,J)=>{try{const xe=await Le("get_node_output",{node_id:P,output_name:J||"output_0"});return xe.success?xe.data:null}catch(xe){return console.error("[WebSocket] Failed to get node output:",xe),null}},[Le]),_r=j.useCallback(async(P,J)=>{try{return await Le("cancel_event_wait",{node_id:P,waiter_id:J})}catch(xe){return console.error("[WebSocket] Failed to cancel event wait:",xe),{success:!1}}},[Le]),gs=j.useCallback(async(P,J,xe)=>{try{return await Le("execute_workflow",{nodes:P.map(Me=>({id:Me.id,type:Me.type||"",data:Me.data||{}})),edges:J.map(Me=>({id:Me.id,source:Me.source,target:Me.target,sourceHandle:Me.sourceHandle||void 0,targetHandle:Me.targetHandle||void 0})),session_id:xe||"default"})}catch(G){throw console.error("[WebSocket] Failed to execute workflow:",G),G}},[Le]),xs=j.useCallback(async(P,J,xe,G)=>{try{return await Le("deploy_workflow",{workflow_id:P,nodes:J.map(ut=>({id:ut.id,type:ut.type||"",data:ut.data||{}})),edges:xe.map(ut=>({id:ut.id,source:ut.source,target:ut.target,sourceHandle:ut.sourceHandle||void 0,targetHandle:ut.targetHandle||void 0})),session_id:G||"default"})}catch(Me){throw console.error("[WebSocket] Failed to start deployment:",Me),Me}},[Le]),Eo=j.useCallback(async P=>{try{const J=await Le("cancel_deployment",{workflow_id:P});return(!P||P===pe.workflow_id)&&we(yy),J}catch(J){throw console.error("[WebSocket] Failed to cancel deployment:",J),J}},[Le,pe.workflow_id]),go=j.useCallback(async P=>{try{const J=await Le("get_deployment_status",{workflow_id:P});return{isRunning:J.is_running||!1,activeRuns:J.active_runs||0,settings:J.settings,workflow_id:J.workflow_id}}catch(J){return console.error("[WebSocket] Failed to get deployment status:",J),{isRunning:!1,activeRuns:0}}},[Le]),ys=j.useCallback(async(P,J)=>{try{const xe=await Le("cancel_execution",{workflow_id:P,node_id:J}),{setWorkflowExecuting:G}=De.getState();return G(P,!1),xe}catch(xe){throw console.error("[WebSocket] Failed to cancel execution:",xe),xe}},[Le]),Bo=j.useCallback(async P=>{try{return{executing:!!((await Le("get_workflow_status",{workflow_id:P}))?.data||{}).executing}}catch(J){return console.error("[WebSocket] Failed to get workflow status:",J),{executing:!1}}},[Le]),Ws=j.useCallback(async(P,J,xe,G,Me,ut,mt)=>{try{return await Le("execute_ai_node",{node_id:P,node_type:J,parameters:xe,model:G,workflow_id:Me,nodes:ut,edges:mt},-1)}catch(wt){throw console.error("[WebSocket] Failed to execute AI node:",wt),wt}},[Le]),Bs=j.useCallback(async(P,J)=>{try{return(await Le("get_ai_models",{provider:P,api_key:J})).models||[]}catch(xe){return console.error("[WebSocket] Failed to get AI models:",xe),[]}},[Le]),Fs=j.useCallback(async(P,J)=>{try{const xe=await Le("validate_api_key",{provider:P,api_key:J}),G={valid:xe.valid===!0,message:xe.message??xe.error,models:xe.models};return G.valid&&Q(Me=>({...Me,[P]:{valid:!0,models:G.models}})),G}catch(xe){return console.error("[WebSocket] Failed to validate API key:",xe),{valid:!1,message:"Validation failed"}}},[Le]),xo=j.useCallback(async P=>{try{const J=await Le("get_stored_api_key",{provider:P}),xe={hasKey:!!J.hasKey,apiKey:J.apiKey,models:J.models};return xe.hasKey&&Q(G=>({...G,[P]:{valid:!0,models:xe.models}})),xe}catch(J){return console.error("[WebSocket] Failed to get stored API key:",J),{hasKey:!1}}},[Le]),jr=j.useCallback(async(P,J,xe)=>{try{const Me=(await Le("save_api_key",{provider:P,api_key:J,models:xe})).success!==!1;return Me&&Q(ut=>({...ut,[P]:{valid:!0,models:xe}})),Me}catch(G){return console.error("[WebSocket] Failed to save API key:",G),!1}},[Le]),os=j.useCallback(async P=>{try{return await Le("delete_api_key",{provider:P}),!0}catch(J){return console.error("[WebSocket] Failed to delete API key:",J),!1}},[Le]),$a=j.useCallback(async()=>{try{return(await Le("get_android_devices",{})).devices||[]}catch(P){return console.error("[WebSocket] Failed to get Android devices:",P),[]}},[Le]),qa=j.useCallback(async(P,J,xe,G)=>{try{return await Le("execute_android_action",{service_id:P,action:J,parameters:xe,device_id:G})}catch(Me){throw console.error("[WebSocket] Failed to execute Android action:",Me),Me}},[Le]),Gs=j.useCallback(async P=>{try{const J=await Le("validate_maps_key",{api_key:P});return{valid:J.valid||!1,message:J.message}}catch(J){return console.error("[WebSocket] Failed to validate Maps key:",J),{valid:!1,message:"Validation failed"}}},[Le]),Qs=j.useCallback(async P=>{try{const J=await Le("validate_apify_key",{api_key:P});return{valid:J.valid||!1,message:J.message,username:J.username}}catch(J){return console.error("[WebSocket] Failed to validate Apify key:",J),{valid:!1,message:"Validation failed"}}},[Le]),Ha=j.useCallback(async()=>{try{const P=await Le("whatsapp_status",{});return{connected:P.connected||!1,deviceId:P.device_id,data:P.data}}catch(P){return console.error("[WebSocket] Failed to get WhatsApp status:",P),{connected:!1}}},[Le]),Ks=j.useCallback(async()=>{try{const P=await Le("whatsapp_qr",{});return{connected:P.connected||!1,qr:P.qr,message:P.message}}catch(P){return console.error("[WebSocket] Failed to get WhatsApp QR:",P),{connected:!1,message:"Failed to get QR code"}}},[Le]),an=j.useCallback(async(P,J)=>{try{const xe=await Le("whatsapp_send",{phone:P,message:J});return{success:xe.success||!1,messageId:xe.messageId,error:xe.error}}catch(xe){return console.error("[WebSocket] Failed to send WhatsApp message:",xe),{success:!1,error:xe.message||"Send failed"}}},[Le]),xn=j.useCallback(async()=>{try{const P=await Le("whatsapp_start",{});return{success:P.success!==!1,message:P.message}}catch(P){return console.error("[WebSocket] Failed to start WhatsApp connection:",P),{success:!1,message:P.message||"Failed to start"}}},[Le]),Ln=j.useCallback(async()=>{try{const P=await Le("whatsapp_restart",{});return{success:P.success!==!1,message:P.message}}catch(P){return console.error("[WebSocket] Failed to restart WhatsApp connection:",P),{success:!1,message:P.message||"Failed to restart"}}},[Le]),zo=j.useCallback(async()=>{try{const P=await Le("whatsapp_groups",{});return{success:P.success!==!1,groups:P.groups||[],error:P.error}}catch(P){return console.error("[WebSocket] Failed to get WhatsApp groups:",P),{success:!1,groups:[],error:P.message||"Failed to get groups"}}},[Le]),bs=j.useCallback(async()=>{try{const P=await Le("whatsapp_newsletters",{}),J=P.channels||P.result?.channels||[];return{success:P.success!==!1,channels:J,error:P.error}}catch(P){return console.error("[WebSocket] Failed to get WhatsApp channels:",P),{success:!1,channels:[],error:P.message||"Failed to get channels"}}},[Le]),Ua=j.useCallback(async P=>{try{const J=await Le("whatsapp_group_info",{group_id:P});return{success:J.success!==!1,participants:J.participants||[],name:J.name,error:J.error}}catch(J){return console.error("[WebSocket] Failed to get WhatsApp group info:",J),{success:!1,participants:[],error:J.message||"Failed to get group info"}}},[Le]),Nr=j.useCallback(async()=>{try{const P=await Le("whatsapp_rate_limit_get",{});return{success:P.success!==!1,config:P.config,stats:P.stats,error:P.error}}catch(P){return console.error("[WebSocket] Failed to get WhatsApp rate limit config:",P),{success:!1,error:P.message||"Failed to get rate limit config"}}},[Le]),Za=j.useCallback(async P=>{try{const J=await Le("whatsapp_rate_limit_set",{config:P});return{success:J.success!==!1,config:J.config,error:J.error}}catch(J){return console.error("[WebSocket] Failed to set WhatsApp rate limit config:",J),{success:!1,error:J.message||"Failed to set rate limit config"}}},[Le]),ss=j.useCallback(async()=>{try{const P=await Le("whatsapp_rate_limit_stats",{});return{success:P.success!==!1,stats:P.stats||P,error:P.error}}catch(P){return console.error("[WebSocket] Failed to get WhatsApp rate limit stats:",P),{success:!1,error:P.message||"Failed to get rate limit stats"}}},[Le]),Ys=j.useCallback(async()=>{try{const P=await Le("whatsapp_rate_limit_unpause",{});return{success:P.success!==!1,stats:P.stats,error:P.error}}catch(P){return console.error("[WebSocket] Failed to unpause WhatsApp rate limit:",P),{success:!1,error:P.message||"Failed to unpause rate limit"}}},[Le]),Fo=j.useCallback(async(P,J=!1,xe)=>{try{const G=await Le("clear_memory",{session_id:P,clear_long_term:J,workflow_id:xe});return{success:G.success!==!1,default_content:G.default_content,cleared_vector_store:G.cleared_vector_store,cleared_todo_keys:G.cleared_todo_keys,error:G.error}}catch(G){return console.error("[WebSocket] Failed to clear memory:",G),{success:!1,error:G.message||"Failed to clear memory"}}},[Le]),Go=j.useCallback(async P=>{try{const J=await Le("reset_skill",{skill_name:P});return{success:J.success!==!1,original_content:J.original_content,is_builtin:J.is_builtin,error:J.error}}catch(J){return console.error("[WebSocket] Failed to reset skill:",J),{success:!1,error:J.message||"Failed to reset skill"}}},[Le]),Qo=j.useRef(!0);j.useEffect(()=>{if(Qo.current=!0,s||!e||te.current?.readyState===Xo.OPEN)return;const P=setTimeout(()=>{Qo.current&&e&&!te.current&&lt()},100);return()=>{clearTimeout(P)}},[lt,e,s]),j.useEffect(()=>{if(!e&&te.current){if(oe.current.length>0){for(const P of oe.current)try{P.abortController.abort(),P.reject(new Error("auth: not authenticated"))}catch{}oe.current=[]}te.current.close(lu.NORMAL_CLOSURE,"User logged out"),te.current=null,f(!1),h(!1)}},[e]),j.useEffect(()=>()=>{if(Qo.current=!1,Oe.current&&clearInterval(Oe.current),oe.current.length>0){for(const P of oe.current)try{P.abortController.abort(),P.reject(new Error("WebSocket unmounting"))}catch{}oe.current=[]}te.current?.readyState===Xo.OPEN&&te.current.close(lu.NORMAL_CLOSURE,"Component unmounted")},[]);const as=j.useMemo(()=>({isConnected:u,isReady:d,reconnecting:g,androidStatus:y,setAndroidStatus:b,whatsappStatus:k,twitterStatus:w,googleStatus:N,telegramStatus:z,whatsappMessages:I,lastWhatsAppMessage:M,apiKeyStatuses:$,consoleLogs:H,terminalLogs:D,chatMessages:W,nodeStatuses:Re,nodeParameters:A,variables:He,workflowStatus:ue,deploymentStatus:pe,workflowLock:je,compactionStats:Rt,updateCompactionStats:Mt,getNodeStatus:bt,getApiKeyStatus:re,getVariable:qe,requestStatus:yt,clearNodeStatus:Ye,clearWhatsAppMessages:at,clearConsoleLogs:it,clearTerminalLogs:kt,clearChatMessages:he,sendChatMessage:Cn,sendRequest:Le,addEventListener:(P,J)=>{let xe=F.current.get(P);return xe||(xe=new Set,F.current.set(P,xe)),xe.add(J),()=>{const G=F.current.get(P);G&&(G.delete(J),G.size===0&&F.current.delete(P))}},getNodeParameters:On,getAllNodeParameters:tn,saveNodeParameters:rn,deleteNodeParameters:sn,executeNode:Sr,executeWorkflow:gs,getNodeOutput:Vs,cancelEventWait:_r,deployWorkflow:xs,cancelDeployment:Eo,getDeploymentStatus:go,cancelExecution:ys,getWorkflowStatus:Bo,executeAiNode:Ws,getAiModels:Bs,validateApiKey:Fs,getStoredApiKey:xo,saveApiKey:jr,deleteApiKey:os,getAndroidDevices:$a,executeAndroidAction:qa,validateMapsKey:Gs,validateApifyKey:Qs,getWhatsAppStatus:Ha,getWhatsAppQR:Ks,sendWhatsAppMessage:an,startWhatsAppConnection:xn,restartWhatsAppConnection:Ln,getWhatsAppGroups:zo,getWhatsAppChannels:bs,getWhatsAppGroupInfo:Ua,getWhatsAppRateLimitConfig:Nr,setWhatsAppRateLimitConfig:Za,getWhatsAppRateLimitStats:ss,unpauseWhatsAppRateLimit:Ys,clearMemory:Fo,resetSkill:Go}),[u,d,g,y,b,k,w,N,z,I,M,$,H,D,W,Re,A,He,ue,pe,je,Rt,Mt,bt,re,qe,yt,Ye,at,it,kt,he,Cn,Le,On,tn,rn,sn,Sr,gs,Vs,_r,xs,Eo,go,ys,Bo,Ws,Bs,Fs,xo,jr,os,$a,qa,Gs,Qs,Ha,Ks,an,xn,Ln,zo,bs,Ua,Nr,Za,ss,Ys,Fo,Go]);return i.jsx(q0.Provider,{value:as,children:t})},Ct=()=>{const t=j.useContext(q0);if(!t)throw new Error("useWebSocket must be used within a WebSocketProvider");return t},oO=()=>{const t=Fe.c(3),{androidStatus:e,isConnected:s}=Ct();let r;return t[0]!==e||t[1]!==s?(r={...e,isConnected:s},t[0]=e,t[1]=s,t[2]=r):r=t[2],r},Mm=t=>N8(t),H0=()=>{const{whatsappStatus:t}=Ct();return t},sO=()=>{const{twitterStatus:t}=Ct();return t},aO=()=>{const{googleStatus:t}=Ct();return t},rO=()=>{const{telegramStatus:t}=Ct();return t},Tm=t=>["nodeSpec",t];async function U0(t,e){return At.fetchQuery({queryKey:Tm(t),queryFn:async()=>{try{return(await e("get_node_spec",{node_type:t}))?.spec??null}catch{return null}},staleTime:jo.FOREVER,gcTime:yr.FOREVER})}const vy="machina-nodespec-revision";async function H8(t){try{const e=await t("list_node_specs",{}),s=e?.node_types??[],r=e?.revision;r&&typeof window<"u"&&window.localStorage.getItem(vy)!==r&&(At.removeQueries({queryKey:["nodeSpec"]}),At.removeQueries({queryKey:["nodeGroups"]}),window.localStorage.setItem(vy,r)),await Promise.all(s.map(c=>U0(c,t)))}catch{}}function Vo(t){return At.getQueryData(Tm(t))??null}function Zi(t){const{sendRequest:e,isReady:s}=Ct(),r=Tm(t??"__none__"),c=oS(r),u=h=>At.getQueryCache().subscribe(x=>{x.query.queryHash===c&&h()}),f=()=>At.getQueryData(r)??null,d=j.useSyncExternalStore(u,f,f);return j.useEffect(()=>{!t||!s||At.getQueryData(r)===void 0&&U0(t,e)},[t,s,e]),d}function U8(){const t=Fe.c(5),{sendRequest:e,isReady:s}=Ct();let r;t[0]!==e?(r=async()=>(await e("get_node_groups",{}))?.groups??{},t[0]=e,t[1]=r):r=t[1];let c;return t[2]!==s||t[3]!==r?(c={queryKey:Z8,queryFn:r,enabled:s,staleTime:jo.FOREVER,gcTime:yr.FOREVER},t[2]=s,t[3]=r,t[4]=c):c=t[4],Zo(c)}const Z8=["nodeGroups"];function Vi(){return At.getQueriesData({queryKey:["nodeSpec"]}).map(([,e])=>e).filter(e=>!!e)}function V8(t){return Vi().filter(e=>(e.group??[]).includes(t)).map(e=>e.type)}function Am(t,e){if(!t)return!1;const s=Vo(t);if(s)return(s.group??[]).includes(e)}function fn(t,e){if(!_0.nodeSpecBackend)return e??null;const s=Vo(t);return s?N0(s):e??null}function jl(t,e){return t.id===e.id&&t.type===e.type&&t.selected===e.selected&&t.dragging===e.dragging&&t.data===e.data&&t.isConnectable===e.isConnectable}class W8{static validateConfiguration(e){const s=[];return(!e.prompt||e.prompt.trim()==="")&&s.push("Prompt is required"),{valid:s.length===0,errors:s}}}const Om=["light","dark","renaissance","greek","edo","steampunk","atomic","cyber","wasteland","rot","plague","surveillance"],Hp="machinaos-theme",wy="darkMode",ky=new Set(["dark","cyber","wasteland","rot","surveillance","steampunk"]),Z0=j.createContext(void 0);function B8(t){return!!t&&Om.includes(t)}function F8(){const t=localStorage.getItem(Hp);if(B8(t))return t;const e=localStorage.getItem(wy);if(e!==null){const s=e==="false"?"light":"dark";return localStorage.setItem(Hp,s),localStorage.removeItem(wy),s}return"dark"}const G8=t=>{const e=Fe.c(13),{children:s}=t,[r,c]=j.useState(F8);let u,f;e[0]!==r?(u=()=>{const w=document.documentElement;w.dataset.theme=r,ky.has(r)?w.classList.add("dark"):w.classList.remove("dark"),localStorage.setItem(Hp,r)},f=[r],e[0]=r,e[1]=u,e[2]=f):(u=e[1],f=e[2]),j.useEffect(u,f);let d;e[3]===Symbol.for("react.memo_cache_sentinel")?(d=w=>{c(w)},e[3]=d):d=e[3];const h=d;let g;e[4]===Symbol.for("react.memo_cache_sentinel")?(g=()=>{c(Q8)},e[4]=g):g=e[4];const x=g;let y;e[5]!==r?(y=ky.has(r),e[5]=r,e[6]=y):y=e[6];let b;e[7]!==y||e[8]!==r?(b={theme:r,setTheme:h,availableThemes:Om,isDarkMode:y,toggleTheme:x},e[7]=y,e[8]=r,e[9]=b):b=e[9];const k=b;let S;return e[10]!==s||e[11]!==k?(S=i.jsx(Z0.Provider,{value:k,children:s}),e[10]=s,e[11]=k,e[12]=S):S=e[12],S},Zs=()=>{const t=j.useContext(Z0);if(t===void 0)throw new Error("useTheme must be used within a ThemeProvider");return t};function Q8(t){return t==="dark"?"light":"dark"}const K8=new Set(["dark","cyber","wasteland","rot","surveillance","steampunk"]),Y8={renaissance:{primary:"#b8893c",focus:"#d4a030",focusRing:"rgba(212, 160, 48, 0.35)",actionRun:"#4a6818",actionDeploy:"#b8893c",actionStop:"#8a1410",actionSave:"#d4a030",edgeDefault:"#5a3a14",edgeSelected:"#d4a030",edgeCompleted:"#4a6818",edgeError:"#8a1410",edgeMemoryActive:"#b8893c",edgeToolActive:"#c08020"},greek:{primary:"#284b82",focus:"#284b82",focusRing:"rgba(40, 75, 130, 0.3)",actionRun:"#6a7a32",actionDeploy:"#284b82",actionStop:"#7a1a18",actionSave:"#c8a040",edgeDefault:"#4a3818",edgeSelected:"#284b82",edgeCompleted:"#6a7a32",edgeError:"#7a1a18",edgeMemoryActive:"#284b82",edgeToolActive:"#c8a040"},edo:{primary:"#b41e1e",focus:"#b41e1e",focusRing:"rgba(180, 30, 30, 0.3)",actionRun:"#4a6a3a",actionDeploy:"#b41e1e",actionStop:"#b41e1e",actionSave:"#1a1410",edgeDefault:"#1a1410",edgeSelected:"#b41e1e",edgeCompleted:"#4a6a3a",edgeError:"#b41e1e",edgeMemoryActive:"#b41e1e",edgeToolActive:"#c89832"},steampunk:{primary:"#d8a848",focus:"#d8a848",focusRing:"rgba(216, 168, 72, 0.4)",actionRun:"#6a8a3a",actionDeploy:"#d8a848",actionStop:"#8a3a1a",actionSave:"#b8602a",edgeDefault:"#b88838",edgeSelected:"#d8a848",edgeCompleted:"#6a8a3a",edgeError:"#8a3a1a",edgeMemoryActive:"#b8602a",edgeToolActive:"#d8a848"},atomic:{primary:"#e85a26",focus:"#e85a26",focusRing:"rgba(232, 90, 38, 0.4)",actionRun:"#5a8a5a",actionDeploy:"#e85a26",actionStop:"#e85a26",actionSave:"#3a9aa0",edgeDefault:"#2a3a4a",edgeSelected:"#e85a26",edgeCompleted:"#5a8a5a",edgeError:"#e85a26",edgeMemoryActive:"#3a9aa0",edgeToolActive:"#d8a838"},cyber:{primary:"#f51eb6",focus:"#1dd9e5",focusRing:"rgba(245, 30, 182, 0.5)",actionRun:"#26d97a",actionDeploy:"#f51eb6",actionStop:"#ff2050",actionSave:"#1dd9e5",edgeDefault:"#f51eb6",edgeSelected:"#1dd9e5",edgeCompleted:"#26d97a",edgeError:"#ff2050",edgeMemoryActive:"#f51eb6",edgeToolActive:"#ffd028"},wasteland:{primary:"#e88a28",focus:"#e88a28",focusRing:"rgba(232, 138, 40, 0.45)",actionRun:"#8a9028",actionDeploy:"#e88a28",actionStop:"#b8281a",actionSave:"#c8d038",edgeDefault:"#8a3a18",edgeSelected:"#e88a28",edgeCompleted:"#8a9028",edgeError:"#b8281a",edgeMemoryActive:"#e88a28",edgeToolActive:"#c8d038"},rot:{primary:"#78c878",focus:"#78c878",focusRing:"rgba(120, 200, 120, 0.4)",actionRun:"#78c878",actionDeploy:"#e8a838",actionStop:"#a83838",actionSave:"#e8a838",edgeDefault:"#4a6a4a",edgeSelected:"#78c878",edgeCompleted:"#78c878",edgeError:"#a83838",edgeMemoryActive:"#e8a838",edgeToolActive:"#5898b8"},plague:{primary:"#783c28",focus:"#783c28",focusRing:"rgba(120, 60, 40, 0.4)",actionRun:"#5a7028",actionDeploy:"#783c28",actionStop:"#783c28",actionSave:"#98a838",edgeDefault:"#2a1c14",edgeSelected:"#783c28",edgeCompleted:"#5a7028",edgeError:"#783c28",edgeMemoryActive:"#98a838",edgeToolActive:"#4a5868"},surveillance:{primary:"#e82626",focus:"#e82626",focusRing:"rgba(232, 38, 38, 0.45)",actionRun:"#6acc6a",actionDeploy:"#e82626",actionStop:"#e82626",actionSave:"#6acc6a",edgeDefault:"#5a5e62",edgeSelected:"#e82626",edgeCompleted:"#6acc6a",edgeError:"#e82626",edgeMemoryActive:"#e82626",edgeToolActive:"#5a8cc8"}},ts=()=>{const t=Fe.c(10),{theme:e}=Zs();let s;t[0]!==e?(s=K8.has(e),t[0]=e,t[1]=s):s=t[1];const r=s,c=r?P4:E0;let u;t[2]!==e?(u=Y8[e]??{},t[2]=e,t[3]=u):u=t[3];const f=u;let d;t[4]!==c||t[5]!==f?(d={...c,...f},t[4]=c,t[5]=f,t[6]=d):d=t[6];const h=d;let g;return t[7]!==r||t[8]!==h?(g={...Ie,colors:h,isDarkMode:r},t[7]=r,t[8]=h,t[9]=g):g=t[9],g},P8=(t,e)=>{const s=new Array(t.length+e.length);for(let r=0;r<t.length;r++)s[r]=t[r];for(let r=0;r<e.length;r++)s[t.length+r]=e[r];return s},X8=(t,e)=>({classGroupId:t,validator:e}),V0=(t=new Map,e=null,s)=>({nextPart:t,validators:e,classGroupId:s}),Eu="-",Sy=[],J8="arbitrary..",e6=t=>{const e=n6(t),{conflictingClassGroups:s,conflictingClassGroupModifiers:r}=t;return{getClassGroupId:f=>{if(f.startsWith("[")&&f.endsWith("]"))return t6(f);const d=f.split(Eu),h=d[0]===""&&d.length>1?1:0;return W0(d,h,e)},getConflictingClassGroupIds:(f,d)=>{if(d){const h=r[f],g=s[f];return h?g?P8(g,h):h:g||Sy}return s[f]||Sy}}},W0=(t,e,s)=>{if(t.length-e===0)return s.classGroupId;const c=t[e],u=s.nextPart.get(c);if(u){const g=W0(t,e+1,u);if(g)return g}const f=s.validators;if(f===null)return;const d=e===0?t.join(Eu):t.slice(e).join(Eu),h=f.length;for(let g=0;g<h;g++){const x=f[g];if(x.validator(d))return x.classGroupId}},t6=t=>t.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const e=t.slice(1,-1),s=e.indexOf(":"),r=e.slice(0,s);return r?J8+r:void 0})(),n6=t=>{const{theme:e,classGroups:s}=t;return o6(s,e)},o6=(t,e)=>{const s=V0();for(const r in t){const c=t[r];Rm(c,s,r,e)}return s},Rm=(t,e,s,r)=>{const c=t.length;for(let u=0;u<c;u++){const f=t[u];s6(f,e,s,r)}},s6=(t,e,s,r)=>{if(typeof t=="string"){a6(t,e,s);return}if(typeof t=="function"){r6(t,e,s,r);return}l6(t,e,s,r)},a6=(t,e,s)=>{const r=t===""?e:B0(e,t);r.classGroupId=s},r6=(t,e,s,r)=>{if(i6(t)){Rm(t(r),e,s,r);return}e.validators===null&&(e.validators=[]),e.validators.push(X8(s,t))},l6=(t,e,s,r)=>{const c=Object.entries(t),u=c.length;for(let f=0;f<u;f++){const[d,h]=c[f];Rm(h,B0(e,d),s,r)}},B0=(t,e)=>{let s=t;const r=e.split(Eu),c=r.length;for(let u=0;u<c;u++){const f=r[u];let d=s.nextPart.get(f);d||(d=V0(),s.nextPart.set(f,d)),s=d}return s},i6=t=>"isThemeGetter"in t&&t.isThemeGetter===!0,c6=t=>{if(t<1)return{get:()=>{},set:()=>{}};let e=0,s=Object.create(null),r=Object.create(null);const c=(u,f)=>{s[u]=f,e++,e>t&&(e=0,r=s,s=Object.create(null))};return{get(u){let f=s[u];if(f!==void 0)return f;if((f=r[u])!==void 0)return c(u,f),f},set(u,f){u in s?s[u]=f:c(u,f)}}},Up="!",_y=":",u6=[],jy=(t,e,s,r,c)=>({modifiers:t,hasImportantModifier:e,baseClassName:s,maybePostfixModifierPosition:r,isExternal:c}),d6=t=>{const{prefix:e,experimentalParseClassName:s}=t;let r=c=>{const u=[];let f=0,d=0,h=0,g;const x=c.length;for(let w=0;w<x;w++){const _=c[w];if(f===0&&d===0){if(_===_y){u.push(c.slice(h,w)),h=w+1;continue}if(_==="/"){g=w;continue}}_==="["?f++:_==="]"?f--:_==="("?d++:_===")"&&d--}const y=u.length===0?c:c.slice(h);let b=y,k=!1;y.endsWith(Up)?(b=y.slice(0,-1),k=!0):y.startsWith(Up)&&(b=y.slice(1),k=!0);const S=g&&g>h?g-h:void 0;return jy(u,k,b,S)};if(e){const c=e+_y,u=r;r=f=>f.startsWith(c)?u(f.slice(c.length)):jy(u6,!1,f,void 0,!0)}if(s){const c=r;r=u=>s({className:u,parseClassName:c})}return r},f6=t=>{const e=new Map;return t.orderSensitiveModifiers.forEach((s,r)=>{e.set(s,1e6+r)}),s=>{const r=[];let c=[];for(let u=0;u<s.length;u++){const f=s[u],d=f[0]==="[",h=e.has(f);d||h?(c.length>0&&(c.sort(),r.push(...c),c=[]),r.push(f)):c.push(f)}return c.length>0&&(c.sort(),r.push(...c)),r}},p6=t=>({cache:c6(t.cacheSize),parseClassName:d6(t),sortModifiers:f6(t),postfixLookupClassGroupIds:m6(t),...e6(t)}),m6=t=>{const e=Object.create(null),s=t.postfixLookupClassGroups;if(s)for(let r=0;r<s.length;r++)e[s[r]]=!0;return e},h6=/\s+/,g6=(t,e)=>{const{parseClassName:s,getClassGroupId:r,getConflictingClassGroupIds:c,sortModifiers:u,postfixLookupClassGroupIds:f}=e,d=[],h=t.trim().split(h6);let g="";for(let x=h.length-1;x>=0;x-=1){const y=h[x],{isExternal:b,modifiers:k,hasImportantModifier:S,baseClassName:w,maybePostfixModifierPosition:_}=s(y);if(b){g=y+(g.length>0?" "+g:g);continue}let N=!!_,L;if(N){const M=w.substring(0,_);L=r(M);const E=L&&f[L]?r(w):void 0;E&&E!==L&&(L=E,N=!1)}else L=r(w);if(!L){if(!N){g=y+(g.length>0?" "+g:g);continue}if(L=r(w),!L){g=y+(g.length>0?" "+g:g);continue}N=!1}const z=k.length===0?"":k.length===1?k[0]:u(k).join(":"),O=S?z+Up:z,I=O+L;if(d.indexOf(I)>-1)continue;d.push(I);const q=c(L,N);for(let M=0;M<q.length;++M){const E=q[M];d.push(O+E)}g=y+(g.length>0?" "+g:g)}return g},x6=(...t)=>{let e=0,s,r,c="";for(;e<t.length;)(s=t[e++])&&(r=F0(s))&&(c&&(c+=" "),c+=r);return c},F0=t=>{if(typeof t=="string")return t;let e,s="";for(let r=0;r<t.length;r++)t[r]&&(e=F0(t[r]))&&(s&&(s+=" "),s+=e);return s},y6=(t,...e)=>{let s,r,c,u;const f=h=>{const g=e.reduce((x,y)=>y(x),t());return s=p6(g),r=s.cache.get,c=s.cache.set,u=d,d(h)},d=h=>{const g=r(h);if(g)return g;const x=g6(h,s);return c(h,x),x};return u=f,(...h)=>u(x6(...h))},b6=[],Dn=t=>{const e=s=>s[t]||b6;return e.isThemeGetter=!0,e},G0=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Q0=/^\((?:(\w[\w-]*):)?(.+)\)$/i,v6=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,w6=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,k6=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,S6=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,_6=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,j6=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,wa=t=>v6.test(t),vt=t=>!!t&&!Number.isNaN(Number(t)),us=t=>!!t&&Number.isInteger(Number(t)),bp=t=>t.endsWith("%")&&vt(t.slice(0,-1)),$s=t=>w6.test(t),K0=()=>!0,N6=t=>k6.test(t)&&!S6.test(t),Dm=()=>!1,C6=t=>_6.test(t),L6=t=>j6.test(t),E6=t=>!Ve(t)&&!We(t),z6=t=>t.startsWith("@container")&&(t[10]==="/"&&t[11]!==void 0||t[11]==="s"&&t[16]!==void 0&&t.startsWith("-size/",10)||t[11]==="n"&&t[18]!==void 0&&t.startsWith("-normal/",10)),M6=t=>Ta(t,X0,Dm),Ve=t=>G0.test(t),rr=t=>Ta(t,J0,N6),Ny=t=>Ta(t,q6,vt),T6=t=>Ta(t,tv,K0),A6=t=>Ta(t,ev,Dm),Cy=t=>Ta(t,Y0,Dm),O6=t=>Ta(t,P0,L6),cu=t=>Ta(t,nv,C6),We=t=>Q0.test(t),wi=t=>br(t,J0),R6=t=>br(t,ev),Ly=t=>br(t,Y0),D6=t=>br(t,X0),I6=t=>br(t,P0),uu=t=>br(t,nv,!0),$6=t=>br(t,tv,!0),Ta=(t,e,s)=>{const r=G0.exec(t);return r?r[1]?e(r[1]):s(r[2]):!1},br=(t,e,s=!1)=>{const r=Q0.exec(t);return r?r[1]?e(r[1]):s:!1},Y0=t=>t==="position"||t==="percentage",P0=t=>t==="image"||t==="url",X0=t=>t==="length"||t==="size"||t==="bg-size",J0=t=>t==="length",q6=t=>t==="number",ev=t=>t==="family-name",tv=t=>t==="number"||t==="weight",nv=t=>t==="shadow",H6=()=>{const t=Dn("color"),e=Dn("font"),s=Dn("text"),r=Dn("font-weight"),c=Dn("tracking"),u=Dn("leading"),f=Dn("breakpoint"),d=Dn("container"),h=Dn("spacing"),g=Dn("radius"),x=Dn("shadow"),y=Dn("inset-shadow"),b=Dn("text-shadow"),k=Dn("drop-shadow"),S=Dn("blur"),w=Dn("perspective"),_=Dn("aspect"),N=Dn("ease"),L=Dn("animate"),z=()=>["auto","avoid","all","avoid-page","page","left","right","column"],O=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],I=()=>[...O(),We,Ve],q=()=>["auto","hidden","clip","visible","scroll"],M=()=>["auto","contain","none"],E=()=>[We,Ve,h],$=()=>[wa,"full","auto",...E()],Q=()=>[us,"none","subgrid",We,Ve],H=()=>["auto",{span:["full",us,We,Ve]},us,We,Ve],R=()=>[us,"auto",We,Ve],D=()=>["auto","min","max","fr",We,Ve],U=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],W=()=>["start","end","center","stretch","center-safe","end-safe"],T=()=>["auto",...E()],A=()=>[wa,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...E()],K=()=>[wa,"screen","full","dvw","lvw","svw","min","max","fit",...E()],ne=()=>[wa,"screen","full","lh","dvh","lvh","svh","min","max","fit",...E()],X=()=>[t,We,Ve],ue=()=>[...O(),Ly,Cy,{position:[We,Ve]}],fe=()=>["no-repeat",{repeat:["","x","y","space","round"]}],pe=()=>["auto","cover","contain",D6,M6,{size:[We,Ve]}],we=()=>[bp,wi,rr],je=()=>["","none","full",g,We,Ve],ve=()=>["",vt,wi,rr],Ce=()=>["solid","dashed","dotted","double"],ce=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],te=()=>[vt,bp,Ly,Cy],Oe=()=>["","none",S,We,Ve],B=()=>["none",vt,We,Ve],F=()=>["none",vt,We,Ve],oe=()=>[vt,We,Ve],me=()=>[wa,"full",...E()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[$s],breakpoint:[$s],color:[K0],container:[$s],"drop-shadow":[$s],ease:["in","out","in-out"],font:[E6],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[$s],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[$s],shadow:[$s],spacing:["px",vt],text:[$s],"text-shadow":[$s],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",wa,Ve,We,_]}],container:["container"],"container-type":[{"@container":["","normal","size",We,Ve]}],"container-named":[z6],columns:[{columns:[vt,Ve,We,d]}],"break-after":[{"break-after":z()}],"break-before":[{"break-before":z()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:I()}],overflow:[{overflow:q()}],"overflow-x":[{"overflow-x":q()}],"overflow-y":[{"overflow-y":q()}],overscroll:[{overscroll:M()}],"overscroll-x":[{"overscroll-x":M()}],"overscroll-y":[{"overscroll-y":M()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:$()}],"inset-x":[{"inset-x":$()}],"inset-y":[{"inset-y":$()}],start:[{"inset-s":$(),start:$()}],end:[{"inset-e":$(),end:$()}],"inset-bs":[{"inset-bs":$()}],"inset-be":[{"inset-be":$()}],top:[{top:$()}],right:[{right:$()}],bottom:[{bottom:$()}],left:[{left:$()}],visibility:["visible","invisible","collapse"],z:[{z:[us,"auto",We,Ve]}],basis:[{basis:[wa,"full","auto",d,...E()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[vt,wa,"auto","initial","none",Ve]}],grow:[{grow:["",vt,We,Ve]}],shrink:[{shrink:["",vt,We,Ve]}],order:[{order:[us,"first","last","none",We,Ve]}],"grid-cols":[{"grid-cols":Q()}],"col-start-end":[{col:H()}],"col-start":[{"col-start":R()}],"col-end":[{"col-end":R()}],"grid-rows":[{"grid-rows":Q()}],"row-start-end":[{row:H()}],"row-start":[{"row-start":R()}],"row-end":[{"row-end":R()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":D()}],"auto-rows":[{"auto-rows":D()}],gap:[{gap:E()}],"gap-x":[{"gap-x":E()}],"gap-y":[{"gap-y":E()}],"justify-content":[{justify:[...U(),"normal"]}],"justify-items":[{"justify-items":[...W(),"normal"]}],"justify-self":[{"justify-self":["auto",...W()]}],"align-content":[{content:["normal",...U()]}],"align-items":[{items:[...W(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...W(),{baseline:["","last"]}]}],"place-content":[{"place-content":U()}],"place-items":[{"place-items":[...W(),"baseline"]}],"place-self":[{"place-self":["auto",...W()]}],p:[{p:E()}],px:[{px:E()}],py:[{py:E()}],ps:[{ps:E()}],pe:[{pe:E()}],pbs:[{pbs:E()}],pbe:[{pbe:E()}],pt:[{pt:E()}],pr:[{pr:E()}],pb:[{pb:E()}],pl:[{pl:E()}],m:[{m:T()}],mx:[{mx:T()}],my:[{my:T()}],ms:[{ms:T()}],me:[{me:T()}],mbs:[{mbs:T()}],mbe:[{mbe:T()}],mt:[{mt:T()}],mr:[{mr:T()}],mb:[{mb:T()}],ml:[{ml:T()}],"space-x":[{"space-x":E()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":E()}],"space-y-reverse":["space-y-reverse"],size:[{size:A()}],"inline-size":[{inline:["auto",...K()]}],"min-inline-size":[{"min-inline":["auto",...K()]}],"max-inline-size":[{"max-inline":["none",...K()]}],"block-size":[{block:["auto",...ne()]}],"min-block-size":[{"min-block":["auto",...ne()]}],"max-block-size":[{"max-block":["none",...ne()]}],w:[{w:[d,"screen",...A()]}],"min-w":[{"min-w":[d,"screen","none",...A()]}],"max-w":[{"max-w":[d,"screen","none","prose",{screen:[f]},...A()]}],h:[{h:["screen","lh",...A()]}],"min-h":[{"min-h":["screen","lh","none",...A()]}],"max-h":[{"max-h":["screen","lh",...A()]}],"font-size":[{text:["base",s,wi,rr]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[r,$6,T6]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",bp,Ve]}],"font-family":[{font:[R6,A6,e]}],"font-features":[{"font-features":[Ve]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[c,We,Ve]}],"line-clamp":[{"line-clamp":[vt,"none",We,Ny]}],leading:[{leading:[u,...E()]}],"list-image":[{"list-image":["none",We,Ve]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",We,Ve]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:X()}],"text-color":[{text:X()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...Ce(),"wavy"]}],"text-decoration-thickness":[{decoration:[vt,"from-font","auto",We,rr]}],"text-decoration-color":[{decoration:X()}],"underline-offset":[{"underline-offset":[vt,"auto",We,Ve]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:E()}],"tab-size":[{tab:[us,We,Ve]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",We,Ve]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",We,Ve]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:ue()}],"bg-repeat":[{bg:fe()}],"bg-size":[{bg:pe()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},us,We,Ve],radial:["",We,Ve],conic:[us,We,Ve]},I6,O6]}],"bg-color":[{bg:X()}],"gradient-from-pos":[{from:we()}],"gradient-via-pos":[{via:we()}],"gradient-to-pos":[{to:we()}],"gradient-from":[{from:X()}],"gradient-via":[{via:X()}],"gradient-to":[{to:X()}],rounded:[{rounded:je()}],"rounded-s":[{"rounded-s":je()}],"rounded-e":[{"rounded-e":je()}],"rounded-t":[{"rounded-t":je()}],"rounded-r":[{"rounded-r":je()}],"rounded-b":[{"rounded-b":je()}],"rounded-l":[{"rounded-l":je()}],"rounded-ss":[{"rounded-ss":je()}],"rounded-se":[{"rounded-se":je()}],"rounded-ee":[{"rounded-ee":je()}],"rounded-es":[{"rounded-es":je()}],"rounded-tl":[{"rounded-tl":je()}],"rounded-tr":[{"rounded-tr":je()}],"rounded-br":[{"rounded-br":je()}],"rounded-bl":[{"rounded-bl":je()}],"border-w":[{border:ve()}],"border-w-x":[{"border-x":ve()}],"border-w-y":[{"border-y":ve()}],"border-w-s":[{"border-s":ve()}],"border-w-e":[{"border-e":ve()}],"border-w-bs":[{"border-bs":ve()}],"border-w-be":[{"border-be":ve()}],"border-w-t":[{"border-t":ve()}],"border-w-r":[{"border-r":ve()}],"border-w-b":[{"border-b":ve()}],"border-w-l":[{"border-l":ve()}],"divide-x":[{"divide-x":ve()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":ve()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...Ce(),"hidden","none"]}],"divide-style":[{divide:[...Ce(),"hidden","none"]}],"border-color":[{border:X()}],"border-color-x":[{"border-x":X()}],"border-color-y":[{"border-y":X()}],"border-color-s":[{"border-s":X()}],"border-color-e":[{"border-e":X()}],"border-color-bs":[{"border-bs":X()}],"border-color-be":[{"border-be":X()}],"border-color-t":[{"border-t":X()}],"border-color-r":[{"border-r":X()}],"border-color-b":[{"border-b":X()}],"border-color-l":[{"border-l":X()}],"divide-color":[{divide:X()}],"outline-style":[{outline:[...Ce(),"none","hidden"]}],"outline-offset":[{"outline-offset":[vt,We,Ve]}],"outline-w":[{outline:["",vt,wi,rr]}],"outline-color":[{outline:X()}],shadow:[{shadow:["","none",x,uu,cu]}],"shadow-color":[{shadow:X()}],"inset-shadow":[{"inset-shadow":["none",y,uu,cu]}],"inset-shadow-color":[{"inset-shadow":X()}],"ring-w":[{ring:ve()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:X()}],"ring-offset-w":[{"ring-offset":[vt,rr]}],"ring-offset-color":[{"ring-offset":X()}],"inset-ring-w":[{"inset-ring":ve()}],"inset-ring-color":[{"inset-ring":X()}],"text-shadow":[{"text-shadow":["none",b,uu,cu]}],"text-shadow-color":[{"text-shadow":X()}],opacity:[{opacity:[vt,We,Ve]}],"mix-blend":[{"mix-blend":[...ce(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":ce()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[vt]}],"mask-image-linear-from-pos":[{"mask-linear-from":te()}],"mask-image-linear-to-pos":[{"mask-linear-to":te()}],"mask-image-linear-from-color":[{"mask-linear-from":X()}],"mask-image-linear-to-color":[{"mask-linear-to":X()}],"mask-image-t-from-pos":[{"mask-t-from":te()}],"mask-image-t-to-pos":[{"mask-t-to":te()}],"mask-image-t-from-color":[{"mask-t-from":X()}],"mask-image-t-to-color":[{"mask-t-to":X()}],"mask-image-r-from-pos":[{"mask-r-from":te()}],"mask-image-r-to-pos":[{"mask-r-to":te()}],"mask-image-r-from-color":[{"mask-r-from":X()}],"mask-image-r-to-color":[{"mask-r-to":X()}],"mask-image-b-from-pos":[{"mask-b-from":te()}],"mask-image-b-to-pos":[{"mask-b-to":te()}],"mask-image-b-from-color":[{"mask-b-from":X()}],"mask-image-b-to-color":[{"mask-b-to":X()}],"mask-image-l-from-pos":[{"mask-l-from":te()}],"mask-image-l-to-pos":[{"mask-l-to":te()}],"mask-image-l-from-color":[{"mask-l-from":X()}],"mask-image-l-to-color":[{"mask-l-to":X()}],"mask-image-x-from-pos":[{"mask-x-from":te()}],"mask-image-x-to-pos":[{"mask-x-to":te()}],"mask-image-x-from-color":[{"mask-x-from":X()}],"mask-image-x-to-color":[{"mask-x-to":X()}],"mask-image-y-from-pos":[{"mask-y-from":te()}],"mask-image-y-to-pos":[{"mask-y-to":te()}],"mask-image-y-from-color":[{"mask-y-from":X()}],"mask-image-y-to-color":[{"mask-y-to":X()}],"mask-image-radial":[{"mask-radial":[We,Ve]}],"mask-image-radial-from-pos":[{"mask-radial-from":te()}],"mask-image-radial-to-pos":[{"mask-radial-to":te()}],"mask-image-radial-from-color":[{"mask-radial-from":X()}],"mask-image-radial-to-color":[{"mask-radial-to":X()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":O()}],"mask-image-conic-pos":[{"mask-conic":[vt]}],"mask-image-conic-from-pos":[{"mask-conic-from":te()}],"mask-image-conic-to-pos":[{"mask-conic-to":te()}],"mask-image-conic-from-color":[{"mask-conic-from":X()}],"mask-image-conic-to-color":[{"mask-conic-to":X()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:ue()}],"mask-repeat":[{mask:fe()}],"mask-size":[{mask:pe()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",We,Ve]}],filter:[{filter:["","none",We,Ve]}],blur:[{blur:Oe()}],brightness:[{brightness:[vt,We,Ve]}],contrast:[{contrast:[vt,We,Ve]}],"drop-shadow":[{"drop-shadow":["","none",k,uu,cu]}],"drop-shadow-color":[{"drop-shadow":X()}],grayscale:[{grayscale:["",vt,We,Ve]}],"hue-rotate":[{"hue-rotate":[vt,We,Ve]}],invert:[{invert:["",vt,We,Ve]}],saturate:[{saturate:[vt,We,Ve]}],sepia:[{sepia:["",vt,We,Ve]}],"backdrop-filter":[{"backdrop-filter":["","none",We,Ve]}],"backdrop-blur":[{"backdrop-blur":Oe()}],"backdrop-brightness":[{"backdrop-brightness":[vt,We,Ve]}],"backdrop-contrast":[{"backdrop-contrast":[vt,We,Ve]}],"backdrop-grayscale":[{"backdrop-grayscale":["",vt,We,Ve]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[vt,We,Ve]}],"backdrop-invert":[{"backdrop-invert":["",vt,We,Ve]}],"backdrop-opacity":[{"backdrop-opacity":[vt,We,Ve]}],"backdrop-saturate":[{"backdrop-saturate":[vt,We,Ve]}],"backdrop-sepia":[{"backdrop-sepia":["",vt,We,Ve]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":E()}],"border-spacing-x":[{"border-spacing-x":E()}],"border-spacing-y":[{"border-spacing-y":E()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",We,Ve]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[vt,"initial",We,Ve]}],ease:[{ease:["linear","initial",N,We,Ve]}],delay:[{delay:[vt,We,Ve]}],animate:[{animate:["none",L,We,Ve]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[w,We,Ve]}],"perspective-origin":[{"perspective-origin":I()}],rotate:[{rotate:B()}],"rotate-x":[{"rotate-x":B()}],"rotate-y":[{"rotate-y":B()}],"rotate-z":[{"rotate-z":B()}],scale:[{scale:F()}],"scale-x":[{"scale-x":F()}],"scale-y":[{"scale-y":F()}],"scale-z":[{"scale-z":F()}],"scale-3d":["scale-3d"],skew:[{skew:oe()}],"skew-x":[{"skew-x":oe()}],"skew-y":[{"skew-y":oe()}],transform:[{transform:[We,Ve,"","none","gpu","cpu"]}],"transform-origin":[{origin:I()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:me()}],"translate-x":[{"translate-x":me()}],"translate-y":[{"translate-y":me()}],"translate-z":[{"translate-z":me()}],"translate-none":["translate-none"],zoom:[{zoom:[us,We,Ve]}],accent:[{accent:X()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:X()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",We,Ve]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scrollbar-thumb-color":[{"scrollbar-thumb":X()}],"scrollbar-track-color":[{"scrollbar-track":X()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":E()}],"scroll-mx":[{"scroll-mx":E()}],"scroll-my":[{"scroll-my":E()}],"scroll-ms":[{"scroll-ms":E()}],"scroll-me":[{"scroll-me":E()}],"scroll-mbs":[{"scroll-mbs":E()}],"scroll-mbe":[{"scroll-mbe":E()}],"scroll-mt":[{"scroll-mt":E()}],"scroll-mr":[{"scroll-mr":E()}],"scroll-mb":[{"scroll-mb":E()}],"scroll-ml":[{"scroll-ml":E()}],"scroll-p":[{"scroll-p":E()}],"scroll-px":[{"scroll-px":E()}],"scroll-py":[{"scroll-py":E()}],"scroll-ps":[{"scroll-ps":E()}],"scroll-pe":[{"scroll-pe":E()}],"scroll-pbs":[{"scroll-pbs":E()}],"scroll-pbe":[{"scroll-pbe":E()}],"scroll-pt":[{"scroll-pt":E()}],"scroll-pr":[{"scroll-pr":E()}],"scroll-pb":[{"scroll-pb":E()}],"scroll-pl":[{"scroll-pl":E()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",We,Ve]}],fill:[{fill:["none",...X()]}],"stroke-w":[{stroke:[vt,wi,rr,Ny]}],stroke:[{stroke:["none",...X()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{"container-named":["container-type"],overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},postfixLookupClassGroups:["container-type"],orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},U6=y6(H6);function Ne(...t){return U6(CS(t))}const Z6=new Set(["agent","trigger","tool","memory","output","send","file","folder","settings","credentials","run","save","stop","plus","close","search","chevron","check","warning","error","info","sidebar","upload","download","copy","moon","deploy","grid","shield"]),ov='<svg viewBox="0 0 32 32" fill="none" width="100%" height="100%" xmlns="http://www.w3.org/2000/svg">',V6='<svg viewBox="0 0 32 32" fill="none" width="100%" height="100%" xmlns="http://www.w3.org/2000/svg" style="filter:drop-shadow(0 0 3px currentColor)">',W6='<path d="M4 4 H28 V22 Q28 28, 16 30 Q4 28, 4 22 Z" fill="#fbf3dc" stroke="#5a3a14" stroke-width="1.5"/><path d="M5 5 H27 V22 Q27 27, 16 29 Q5 27, 5 22 Z" fill="none" stroke="#d4a030" stroke-width="0.8"/>',Z=t=>`${ov}${t}</svg>`,Ft=t=>`${V6}${t}</svg>`,Gt=t=>`${ov}${W6}${t}</svg>`,B6={renaissance:{agent:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#d4a030" stroke-linejoin="round"><circle cx="16" cy="13" r="4"/><path d="M9 22 Q16 17, 23 22 L23 25 Q16 27, 9 25 Z"/><path d="M14 12 L13 9 M18 12 L19 9" stroke-width="1"/></g>'),trigger:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#d4a030"><path d="M16 8 L12 18 L16 18 L14 24 L20 14 L16 14 Z"/></g>'),tool:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#d4a030"><path d="M10 22 L18 14 M22 12 L24 14 M22 12 L20 10 M22 12 Q26 8, 20 8 L18 10 Z"/><circle cx="11" cy="22" r="1.5" fill="#5a3a14"/></g>'),memory:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#fbf3dc"><rect x="9" y="10" width="14" height="14"/><path d="M9 14 L23 14 M9 18 L23 18 M13 10 L13 24 M19 10 L19 24" stroke-width="0.8"/></g>'),output:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#d4a030"><path d="M9 16 L21 16 M17 12 L21 16 L17 20"/></g>'),send:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#d4a030"><path d="M9 22 L24 14 L11 13 L13 17 L9 22 Z"/></g>'),file:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#fbf3dc"><path d="M11 9 L19 9 L23 13 L23 24 L11 24 Z"/><path d="M19 9 L19 13 L23 13" fill="#d4a030"/></g>'),folder:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#d4a030"><path d="M9 12 L13 12 L15 14 L23 14 L23 23 L9 23 Z"/></g>'),settings:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#d4a030"><circle cx="16" cy="16" r="3"/><path d="M16 9 L16 12 M16 20 L16 23 M9 16 L12 16 M20 16 L23 16 M11 11 L13 13 M19 19 L21 21 M11 21 L13 19 M19 13 L21 11"/></g>'),credentials:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#d4a030"><circle cx="14" cy="16" r="4"/><path d="M18 16 L24 16 L24 18 M22 16 L22 19"/></g>'),run:Gt('<g stroke="#2a5a18" stroke-width="1.4" fill="#4a8230"><path d="M12 10 L22 16 L12 22 Z"/></g>'),save:Gt('<g stroke="#5a0a08" stroke-width="1.2" fill="#8a1410"><circle cx="16" cy="16" r="6"/><path d="M14 14 L18 18 M18 14 L14 18" stroke="#fbf3dc" stroke-width="1"/></g>'),stop:Gt('<g stroke="#5a1a08" stroke-width="1.4" fill="#8a3a14"><rect x="11" y="11" width="10" height="10"/></g>'),plus:Gt('<g stroke="#5a3a14" stroke-width="2"><path d="M16 10 L16 22 M10 16 L22 16"/></g>'),close:Gt('<g stroke="#5a3a14" stroke-width="2"><path d="M11 11 L21 21 M21 11 L11 21"/></g>'),search:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="none"><circle cx="14" cy="14" r="4"/><path d="M17 17 L22 22"/></g>'),chevron:Gt('<g stroke="#5a3a14" stroke-width="1.6" fill="none"><path d="M13 12 L19 16 L13 20"/></g>'),check:Gt('<g stroke="#2a5a18" stroke-width="2" fill="none"><path d="M10 16 L14 20 L22 12"/></g>'),warning:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#d4a030"><path d="M16 9 L24 22 L8 22 Z"/><path d="M16 14 L16 18 M16 20 L16 20.5" stroke="#5a0a08" stroke-width="1.6"/></g>'),error:Gt('<g stroke="#5a0a08" stroke-width="1.4" fill="#8a1410"><circle cx="16" cy="16" r="6"/><path d="M13 13 L19 19 M19 13 L13 19" stroke="#fbf3dc" stroke-width="1.4"/></g>'),info:Gt('<g stroke="#1a3a5a" stroke-width="1.4" fill="#fbf3dc"><circle cx="16" cy="16" r="6"/><path d="M16 14 L16 19 M16 12 L16 12.5" stroke="#1a3a5a" stroke-width="1.6"/></g>'),sidebar:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#fbf3dc"><rect x="7" y="8" width="18" height="16"/><path d="M13 8 L13 24" stroke-width="1.4"/><rect x="8" y="9" width="4" height="14" fill="#d4a030" stroke="none"/></g>'),upload:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#d4a030"><path d="M16 22 L16 10 M11 15 L16 10 L21 15"/><path d="M9 22 L23 22"/></g>'),download:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#d4a030"><path d="M16 10 L16 22 M11 17 L16 22 L21 17"/><path d="M9 10 L23 10"/></g>'),copy:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#fbf3dc"><rect x="11" y="11" width="11" height="13"/><path d="M14 11 L14 8 L25 8 L25 21 L22 21" fill="#d4a030"/></g>'),moon:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#d4a030"><path d="M22 18 Q22 23, 17 23 Q11 23, 11 16 Q11 10, 17 10 Q14 13, 14 16 Q14 20, 18 20 Q21 20, 22 18 Z"/><circle cx="22" cy="11" r="0.8" fill="#5a3a14"/><circle cx="24" cy="14" r="0.6" fill="#5a3a14"/></g>'),deploy:Gt('<g stroke="#2a5a18" stroke-width="1.4" fill="#4a8230"><path d="M16 8 L20 14 L20 20 L18 22 L18 25 L14 25 L14 22 L12 20 L12 14 Z"/><circle cx="16" cy="14" r="1.5" fill="#fbf3dc" stroke="none"/><path d="M12 22 L8 26 M20 22 L24 26" stroke-width="1"/></g>'),grid:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#d4a030"><rect x="9" y="9" width="6" height="6"/><rect x="17" y="9" width="6" height="6"/><rect x="9" y="17" width="6" height="6"/><rect x="17" y="17" width="6" height="6"/></g>'),shield:Gt('<g stroke="#5a3a14" stroke-width="1.4" fill="#d4a030"><path d="M16 8 L23 11 L23 17 Q23 22, 16 25 Q9 22, 9 17 L9 11 Z"/><path d="M13 16 L15 18 L19 14" stroke="#5a0a08" stroke-width="1.6" fill="none"/></g>')},cyber:{agent:Ft('<g stroke="currentColor" stroke-width="1.2" fill="none"><rect x="9" y="6" width="14" height="20"/><rect x="12" y="11" width="2" height="2" fill="currentColor"/><rect x="18" y="11" width="2" height="2" fill="currentColor"/><path d="M12 18 L20 18 M14 22 L18 22"/><path d="M16 6 L16 4 M16 26 L16 28" stroke-dasharray="1 1"/></g>'),trigger:Ft('<g stroke="currentColor" stroke-width="1.2" fill="none"><path d="M16 4 L11 16 L16 16 L13 28 L21 14 L16 14 Z" fill="currentColor" fill-opacity="0.3"/></g>'),tool:Ft('<g stroke="currentColor" stroke-width="1.2" fill="none"><rect x="6" y="14" width="20" height="4"/><path d="M10 14 L10 12 L14 12 L14 14 M18 18 L18 20 L22 20 L22 18"/></g>'),memory:Ft('<g stroke="currentColor" stroke-width="1.2" fill="none"><rect x="7" y="9" width="18" height="14"/><path d="M7 13 L25 13 M7 17 L25 17 M7 21 L25 21 M11 9 L11 23 M16 9 L16 23 M21 9 L21 23"/></g>'),output:Ft('<g stroke="currentColor" stroke-width="1.4" fill="none"><path d="M6 16 L24 16 M18 10 L24 16 L18 22"/></g>'),send:Ft('<g stroke="currentColor" stroke-width="1.2" fill="none"><path d="M5 16 L27 6 L20 27 L17 18 L8 16 Z" fill="currentColor" fill-opacity="0.2"/></g>'),file:Ft('<g stroke="currentColor" stroke-width="1.2" fill="none"><path d="M9 4 L19 4 L24 9 L24 28 L9 28 Z"/><path d="M19 4 L19 9 L24 9"/><path d="M12 14 L21 14 M12 18 L21 18 M12 22 L17 22"/></g>'),folder:Ft('<g stroke="currentColor" stroke-width="1.2" fill="none"><path d="M5 10 L13 10 L15 12 L27 12 L27 24 L5 24 Z"/></g>'),settings:Ft('<g stroke="currentColor" stroke-width="1.2" fill="none"><circle cx="16" cy="16" r="3"/><circle cx="16" cy="16" r="8"/><path d="M16 4 L16 8 M16 24 L16 28 M4 16 L8 16 M24 16 L28 16"/></g>'),credentials:Ft('<g stroke="currentColor" stroke-width="1.2" fill="none"><circle cx="12" cy="16" r="4"/><path d="M16 16 L28 16 L28 19 M24 16 L24 20 M20 16 L20 18"/></g>'),run:Ft('<g stroke="currentColor" stroke-width="1.4" fill="currentColor" fill-opacity="0.4"><path d="M10 6 L26 16 L10 26 Z"/></g>'),save:Ft('<g stroke="currentColor" stroke-width="1.2" fill="none"><rect x="6" y="6" width="20" height="20"/><rect x="10" y="6" width="12" height="6" fill="currentColor" fill-opacity="0.3"/><rect x="11" y="18" width="10" height="8"/></g>'),stop:Ft('<g stroke="currentColor" stroke-width="1.4" fill="currentColor" fill-opacity="0.4"><rect x="9" y="9" width="14" height="14"/></g>'),plus:Ft('<g stroke="currentColor" stroke-width="1.6"><path d="M16 6 L16 26 M6 16 L26 16"/></g>'),close:Ft('<g stroke="currentColor" stroke-width="1.6"><path d="M7 7 L25 25 M25 7 L7 25"/></g>'),search:Ft('<g stroke="currentColor" stroke-width="1.4" fill="none"><circle cx="14" cy="14" r="6"/><path d="M19 19 L26 26"/></g>'),chevron:Ft('<g stroke="currentColor" stroke-width="1.6" fill="none"><path d="M11 8 L21 16 L11 24"/></g>'),check:Ft('<g stroke="currentColor" stroke-width="1.8" fill="none"><path d="M6 16 L13 23 L26 8"/></g>'),warning:Ft('<g stroke="currentColor" stroke-width="1.4" fill="none"><path d="M16 4 L28 26 L4 26 Z"/><path d="M16 12 L16 20 M16 23 L16 24" stroke-width="1.8"/></g>'),error:Ft('<g stroke="currentColor" stroke-width="1.4" fill="none"><circle cx="16" cy="16" r="10"/><path d="M11 11 L21 21 M21 11 L11 21" stroke-width="1.8"/></g>'),info:Ft('<g stroke="currentColor" stroke-width="1.4" fill="none"><circle cx="16" cy="16" r="10"/><path d="M16 14 L16 22 M16 10 L16 11" stroke-width="1.8"/></g>'),sidebar:Ft('<g stroke="currentColor" stroke-width="1.2" fill="none"><rect x="5" y="6" width="22" height="20"/><path d="M12 6 L12 26"/><rect x="6" y="7" width="5" height="18" fill="currentColor" fill-opacity="0.25"/></g>'),upload:Ft('<g stroke="currentColor" stroke-width="1.4" fill="none"><path d="M16 24 L16 8 M9 15 L16 8 L23 15"/><path d="M6 26 L26 26"/></g>'),download:Ft('<g stroke="currentColor" stroke-width="1.4" fill="none"><path d="M16 8 L16 24 M9 17 L16 24 L23 17"/><path d="M6 6 L26 6"/></g>'),copy:Ft('<g stroke="currentColor" stroke-width="1.2" fill="none"><rect x="8" y="8" width="13" height="16"/><path d="M12 4 L25 4 L25 20 L21 20"/></g>'),moon:Ft('<g stroke="currentColor" stroke-width="1.2" fill="none"><path d="M24 18 Q24 25, 16 25 Q8 25, 8 16 Q8 8, 16 8 Q12 12, 12 16 Q12 22, 18 22 Q22 22, 24 18 Z"/></g>'),deploy:Ft('<g stroke="currentColor" stroke-width="1.2" fill="none"><path d="M16 4 L22 12 L22 22 L18 26 L14 26 L10 22 L10 12 Z"/><circle cx="16" cy="13" r="2.5" fill="currentColor" fill-opacity="0.4"/><path d="M10 22 L4 28 M22 22 L28 28" stroke-dasharray="2 1"/></g>'),grid:Ft('<g stroke="currentColor" stroke-width="1.2" fill="none"><rect x="6" y="6" width="8" height="8"/><rect x="18" y="6" width="8" height="8"/><rect x="6" y="18" width="8" height="8"/><rect x="18" y="18" width="8" height="8"/></g>'),shield:Ft('<g stroke="currentColor" stroke-width="1.2" fill="none"><path d="M16 4 L26 8 L26 16 Q26 23, 16 28 Q6 23, 6 16 L6 8 Z"/><path d="M11 16 L14 19 L21 12" stroke-width="1.6"/></g>')},greek:{agent:Z('<g stroke="#284b82" stroke-width="1.4" fill="#284b82"><circle cx="16" cy="11" r="3.5" fill="none"/><path d="M9 23 Q9 17, 16 17 Q23 17, 23 23 Z" fill="none"/><path d="M14 9 L13 7 L19 7 L18 9" stroke-width="1"/></g>'),trigger:Z('<g stroke="#284b82" stroke-width="1.4" fill="#c8a040"><path d="M16 5 L8 17 L14 17 L12 27 L24 13 L18 13 L20 5 Z"/></g>'),tool:Z('<g stroke="#284b82" stroke-width="1.4" fill="none"><path d="M6 22 L18 10 M22 6 L26 10 M24 8 Q28 4, 22 4 L18 8 Z" fill="#c8a040"/><circle cx="7" cy="22" r="1.5" fill="#284b82"/></g>'),memory:Z('<g stroke="#284b82" stroke-width="1.4" fill="none"><rect x="6" y="8" width="20" height="16"/><path d="M6 13 L26 13 M6 18 L26 18 M11 8 L11 24 M21 8 L21 24"/></g>'),output:Z('<g stroke="#284b82" stroke-width="1.6" fill="none"><path d="M6 16 L24 16 L20 12 M24 16 L20 20"/></g>'),send:Z('<g stroke="#284b82" stroke-width="1.4" fill="#c8a040"><path d="M5 27 L27 5 L19 13 L13 11 L11 19 L5 27 Z"/></g>'),file:Z('<g stroke="#284b82" stroke-width="1.4" fill="#faf6e9"><path d="M9 5 L19 5 L23 9 L23 27 L9 27 Z"/><path d="M19 5 L19 9 L23 9" fill="#c8a040"/><path d="M12 14 L20 14 M12 18 L20 18 M12 22 L17 22"/></g>'),folder:Z('<g stroke="#284b82" stroke-width="1.4" fill="#c8a040"><path d="M5 10 L13 10 L15 12 L27 12 L27 24 L5 24 Z"/><path d="M5 14 L27 14"/></g>'),settings:Z('<g stroke="#284b82" stroke-width="1.4" fill="none"><circle cx="16" cy="16" r="3"/><circle cx="16" cy="16" r="8"/><path d="M16 4 L16 8 M16 24 L16 28 M4 16 L8 16 M24 16 L28 16 M8 8 L11 11 M21 21 L24 24 M8 24 L11 21 M21 11 L24 8"/></g>'),credentials:Z('<g stroke="#284b82" stroke-width="1.4" fill="#c8a040"><circle cx="12" cy="16" r="4" fill="none"/><path d="M16 16 L28 16 L28 19 M24 16 L24 20 M20 16 L20 18"/></g>'),run:Z('<g stroke="#6a7a32" stroke-width="1.4" fill="#6a7a32"><path d="M9 7 L25 16 L9 25 Z"/></g>'),save:Z('<g stroke="#7a1a18" stroke-width="1.4" fill="#7a1a18"><path d="M16 5 L19 13 L27 13 L21 18 L23 26 L16 22 L9 26 L11 18 L5 13 L13 13 Z"/></g>'),stop:Z('<g stroke="#7a1a18" stroke-width="1.4" fill="#7a1a18"><rect x="8" y="8" width="16" height="16"/></g>'),plus:Z('<g stroke="#284b82" stroke-width="2.4"><path d="M16 6 L16 26 M6 16 L26 16"/></g>'),close:Z('<g stroke="#284b82" stroke-width="2.4"><path d="M7 7 L25 25 M25 7 L7 25"/></g>'),search:Z('<g stroke="#284b82" stroke-width="1.6" fill="none"><circle cx="13" cy="13" r="6"/><path d="M18 18 L26 26"/></g>'),chevron:Z('<g stroke="#284b82" stroke-width="2" fill="none"><path d="M11 8 L21 16 L11 24"/></g>'),check:Z('<g stroke="#6a7a32" stroke-width="2.4" fill="none"><path d="M6 16 L13 23 L26 8"/></g>'),warning:Z('<g stroke="#284b82" stroke-width="1.4" fill="#c8a040"><path d="M16 5 L28 26 L4 26 Z"/><path d="M16 13 L16 20 M16 23 L16 23.5" stroke="#7a1a18" stroke-width="2"/></g>'),error:Z('<g stroke="#7a1a18" stroke-width="1.4" fill="#7a1a18"><circle cx="16" cy="16" r="9"/><path d="M11 11 L21 21 M21 11 L11 21" stroke="#faf6e9" stroke-width="2"/></g>'),info:Z('<g stroke="#284b82" stroke-width="1.4" fill="#284b82"><circle cx="16" cy="16" r="9"/><path d="M16 14 L16 22 M16 10 L16 11" stroke="#faf6e9" stroke-width="2"/></g>'),sidebar:Z('<g stroke="#284b82" stroke-width="1.4" fill="#faf6e9"><rect x="5" y="6" width="22" height="20"/><path d="M12 6 L12 26"/><rect x="6" y="7" width="5" height="18" fill="#c8a040" stroke="none"/></g>'),upload:Z('<g stroke="#284b82" stroke-width="1.6" fill="none"><path d="M16 24 L16 8 M9 15 L16 8 L23 15"/><path d="M6 27 L26 27"/></g>'),download:Z('<g stroke="#284b82" stroke-width="1.6" fill="none"><path d="M16 8 L16 24 M9 17 L16 24 L23 17"/><path d="M6 5 L26 5"/></g>'),copy:Z('<g stroke="#284b82" stroke-width="1.4" fill="#faf6e9"><rect x="8" y="8" width="13" height="16"/><path d="M12 4 L25 4 L25 20 L21 20" fill="#c8a040"/></g>'),moon:Z('<g stroke="#284b82" stroke-width="1.4" fill="#c8a040"><path d="M24 18 Q24 25, 16 25 Q8 25, 8 16 Q8 8, 16 8 Q12 12, 12 16 Q12 22, 18 22 Q22 22, 24 18 Z"/></g>'),deploy:Z('<g stroke="#284b82" stroke-width="1.4" fill="#c8a040"><path d="M16 4 L23 9 L23 18 L19 24 L13 24 L9 18 L9 9 Z"/><circle cx="16" cy="13" r="2.5" fill="#284b82" stroke="none"/></g>'),grid:Z('<g stroke="#284b82" stroke-width="1.4" fill="#c8a040"><rect x="6" y="6" width="8" height="8"/><rect x="18" y="6" width="8" height="8"/><rect x="6" y="18" width="8" height="8"/><rect x="18" y="18" width="8" height="8"/></g>'),shield:Z('<g stroke="#284b82" stroke-width="1.4" fill="#c8a040"><path d="M16 4 L26 8 L26 16 Q26 23, 16 28 Q6 23, 6 16 L6 8 Z"/><path d="M11 16 L14 19 L21 12" stroke="#7a1a18" stroke-width="1.8" fill="none"/></g>')},edo:{agent:Z('<g stroke="#1a1410" stroke-width="1.6" fill="none" stroke-linecap="round"><circle cx="16" cy="11" r="3.5"/><path d="M9 24 Q9 18, 16 18 Q23 18, 23 24"/></g>'),trigger:Z('<g stroke="#1a1410" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"><path d="M17 4 L10 17 L15 17 L13 28 L22 14 L17 14 Z" fill="#b41e1e" fill-opacity="0.15"/></g>'),tool:Z('<g stroke="#1a1410" stroke-width="1.8" fill="none" stroke-linecap="round"><path d="M6 24 L20 10 M22 8 L24 10 M22 8 Q26 4, 22 4 L20 6"/></g>'),memory:Z('<g stroke="#1a1410" stroke-width="1.6" fill="none"><rect x="6" y="9" width="20" height="14"/><path d="M6 13 L26 13 M6 18 L26 18 M13 9 L13 23 M19 9 L19 23"/></g>'),output:Z('<g stroke="#1a1410" stroke-width="1.8" fill="none" stroke-linecap="round"><path d="M5 16 L25 16 L20 11 M25 16 L20 21"/></g>'),send:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#b41e1e" stroke-linejoin="round"><path d="M5 27 L27 5 L17 13 L13 11 L13 17 L5 27 Z"/></g>'),file:Z('<g stroke="#1a1410" stroke-width="1.6" fill="none"><path d="M9 5 L19 5 L24 10 L24 27 L9 27 Z"/><path d="M19 5 L19 10 L24 10"/></g>'),folder:Z('<g stroke="#1a1410" stroke-width="1.6" fill="none"><path d="M5 11 L13 11 L15 13 L27 13 L27 24 L5 24 Z"/></g>'),settings:Z('<g stroke="#1a1410" stroke-width="1.6" fill="none"><circle cx="16" cy="16" r="3"/><path d="M16 5 L16 9 M16 23 L16 27 M5 16 L9 16 M23 16 L27 16 M8 8 L11 11 M21 21 L24 24 M8 24 L11 21 M21 11 L24 8"/></g>'),credentials:Z('<g stroke="#1a1410" stroke-width="1.6" fill="none"><circle cx="12" cy="16" r="4"/><path d="M16 16 L27 16 L27 19 M24 16 L24 20 M20 16 L20 18"/></g>'),run:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#4a6a3a" stroke-linejoin="round"><path d="M10 6 L26 16 L10 26 Z"/></g>'),save:Z('<g fill="#b41e1e"><rect x="9" y="9" width="14" height="14" transform="rotate(6 16 16)"/></g>'),stop:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#1a1410"><rect x="9" y="9" width="14" height="14"/></g>'),plus:Z('<g stroke="#1a1410" stroke-width="2" stroke-linecap="round"><path d="M16 7 L16 25 M7 16 L25 16"/></g>'),close:Z('<g stroke="#1a1410" stroke-width="2" stroke-linecap="round"><path d="M8 8 L24 24 M24 8 L8 24"/></g>'),search:Z('<g stroke="#1a1410" stroke-width="1.6" fill="none" stroke-linecap="round"><circle cx="13" cy="13" r="6"/><path d="M18 18 L25 25"/></g>'),chevron:Z('<g stroke="#1a1410" stroke-width="2" fill="none" stroke-linecap="round"><path d="M11 9 L20 16 L11 23"/></g>'),check:Z('<g stroke="#4a6a3a" stroke-width="2.4" fill="none" stroke-linecap="round"><path d="M6 16 L13 23 L26 8"/></g>'),warning:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#c89832" stroke-linejoin="round"><path d="M16 5 L27 25 L5 25 Z"/><path d="M16 13 L16 20 M16 22.5 L16 23" stroke="#1a1410" stroke-width="2"/></g>'),error:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#b41e1e"><circle cx="16" cy="16" r="9"/><path d="M11 11 L21 21 M21 11 L11 21" stroke="#fdf8ea" stroke-width="2"/></g>'),info:Z('<g stroke="#1a1410" stroke-width="1.6" fill="none"><circle cx="16" cy="16" r="9"/><path d="M16 14 L16 22 M16 10 L16 11" stroke-width="2"/></g>'),sidebar:Z('<g stroke="#1a1410" stroke-width="1.6" fill="none"><rect x="5" y="6" width="22" height="20"/><path d="M12 6 L12 26"/></g>'),upload:Z('<g stroke="#1a1410" stroke-width="1.6" fill="none" stroke-linecap="round"><path d="M16 24 L16 8 M9 15 L16 8 L23 15"/></g>'),download:Z('<g stroke="#1a1410" stroke-width="1.6" fill="none" stroke-linecap="round"><path d="M16 8 L16 24 M9 17 L16 24 L23 17"/></g>'),copy:Z('<g stroke="#1a1410" stroke-width="1.6" fill="none"><rect x="8" y="8" width="13" height="16"/><path d="M12 4 L25 4 L25 20 L21 20"/></g>'),moon:Z('<g stroke="#1a1410" stroke-width="1.6" fill="none" stroke-linecap="round"><path d="M24 18 Q24 25, 16 25 Q8 25, 8 16 Q8 8, 16 8 Q12 12, 12 16 Q12 22, 18 22 Q22 22, 24 18 Z"/></g>'),deploy:Z('<g stroke="#1a1410" stroke-width="1.6" fill="none"><path d="M16 5 L22 11 L22 22 L18 26 L14 26 L10 22 L10 11 Z"/><circle cx="16" cy="13" r="2"/></g>'),grid:Z('<g stroke="#1a1410" stroke-width="1.4" fill="none"><rect x="6" y="6" width="8" height="8"/><rect x="18" y="6" width="8" height="8"/><rect x="6" y="18" width="8" height="8"/><rect x="18" y="18" width="8" height="8"/></g>'),shield:Z('<g stroke="#1a1410" stroke-width="1.6" fill="none"><path d="M16 4 L26 8 L26 16 Q26 23, 16 28 Q6 23, 6 16 L6 8 Z"/></g>')},steampunk:{agent:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#d8a848"><circle cx="16" cy="11" r="3.5"/><path d="M9 24 Q9 18, 16 18 Q23 18, 23 24 Z"/><circle cx="16" cy="11" r="1" fill="#4a2818"/></g>'),trigger:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#d8a848"><circle cx="16" cy="16" r="9"/><path d="M16 8 L16 16 L20 19" stroke-width="1.6"/><circle cx="16" cy="16" r="1.5" fill="#4a2818"/></g>'),tool:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#d8a848"><circle cx="16" cy="16" r="6"/><path d="M16 8 L16 12 M16 20 L16 24 M8 16 L12 16 M20 16 L24 16 M11 11 L13 13 M19 19 L21 21 M11 21 L13 19 M19 13 L21 11"/><circle cx="16" cy="16" r="2" fill="#b8602a"/></g>'),memory:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#b8602a"><rect x="6" y="9" width="20" height="14"/><path d="M6 14 L26 14 M6 19 L26 19" stroke="#d8a848"/><circle cx="9" cy="11" r="0.8" fill="#4a2818"/><circle cx="23" cy="11" r="0.8" fill="#4a2818"/><circle cx="9" cy="21" r="0.8" fill="#4a2818"/><circle cx="23" cy="21" r="0.8" fill="#4a2818"/></g>'),output:Z('<g stroke="#4a2818" stroke-width="1.6" fill="#d8a848"><path d="M5 16 L23 16 L19 12 L19 20 Z"/></g>'),send:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#d8a848"><path d="M5 27 L27 5 L19 13 L13 11 L13 19 L5 27 Z"/></g>'),file:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#d8a848"><path d="M9 5 L19 5 L24 10 L24 27 L9 27 Z"/><circle cx="11" cy="7" r="0.8" fill="#4a2818"/><circle cx="22" cy="25" r="0.8" fill="#4a2818"/></g>'),folder:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#b8602a"><path d="M5 11 L13 11 L15 13 L27 13 L27 24 L5 24 Z"/><circle cx="7" cy="22" r="0.8" fill="#4a2818"/><circle cx="25" cy="22" r="0.8" fill="#4a2818"/></g>'),settings:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#d8a848"><path d="M16 4 L18 8 L22 6 L22 11 L26 13 L24 16 L26 19 L22 21 L22 26 L18 24 L16 28 L14 24 L10 26 L10 21 L6 19 L8 16 L6 13 L10 11 L10 6 L14 8 Z"/><circle cx="16" cy="16" r="3" fill="#b8602a"/></g>'),credentials:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#d8a848"><circle cx="12" cy="16" r="4"/><circle cx="12" cy="16" r="1.5" fill="#4a2818"/><path d="M16 16 L27 16 L27 20 M23 16 L23 20 M19 16 L19 18"/></g>'),run:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#6a8a3a"><path d="M10 6 L26 16 L10 26 Z"/></g>'),save:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#d8a848"><circle cx="16" cy="16" r="9"/><path d="M16 7 L16 25 M7 16 L25 16" stroke-width="1"/><circle cx="16" cy="16" r="3" fill="#b8602a"/></g>'),stop:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#8a3a1a"><rect x="8" y="8" width="16" height="16"/><circle cx="10" cy="10" r="0.8" fill="#4a2818"/><circle cx="22" cy="10" r="0.8" fill="#4a2818"/><circle cx="10" cy="22" r="0.8" fill="#4a2818"/><circle cx="22" cy="22" r="0.8" fill="#4a2818"/></g>'),plus:Z('<g stroke="#4a2818" stroke-width="2.4"><path d="M16 7 L16 25 M7 16 L25 16"/></g>'),close:Z('<g stroke="#4a2818" stroke-width="2.4"><path d="M8 8 L24 24 M24 8 L8 24"/></g>'),search:Z('<g stroke="#4a2818" stroke-width="1.5" fill="none"><circle cx="13" cy="13" r="6"/><path d="M18 18 L25 25" stroke-width="2"/></g>'),chevron:Z('<g stroke="#4a2818" stroke-width="2" fill="none"><path d="M11 9 L20 16 L11 23"/></g>'),check:Z('<g stroke="#6a8a3a" stroke-width="2.4" fill="none"><path d="M6 16 L13 23 L26 8"/></g>'),warning:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#d8a848"><path d="M16 5 L27 25 L5 25 Z"/><path d="M16 13 L16 20" stroke-width="2"/><circle cx="16" cy="22.5" r="0.8" fill="#4a2818"/></g>'),error:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#8a3a1a"><circle cx="16" cy="16" r="9"/><path d="M11 11 L21 21 M21 11 L11 21" stroke="#d8a848" stroke-width="2"/></g>'),info:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#4a8aa8"><circle cx="16" cy="16" r="9"/><path d="M16 14 L16 22 M16 10 L16 11" stroke="#d8a848" stroke-width="2"/></g>'),sidebar:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#d8a848"><rect x="5" y="6" width="22" height="20"/><path d="M12 6 L12 26"/><circle cx="7" cy="8" r="0.6" fill="#4a2818"/><circle cx="25" cy="24" r="0.6" fill="#4a2818"/></g>'),upload:Z('<g stroke="#4a2818" stroke-width="1.6" fill="#d8a848"><path d="M16 23 L16 8 L11 13 M16 8 L21 13"/></g>'),download:Z('<g stroke="#4a2818" stroke-width="1.6" fill="#d8a848"><path d="M16 8 L16 23 L11 18 M16 23 L21 18"/></g>'),copy:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#d8a848"><rect x="8" y="8" width="13" height="16"/><path d="M12 4 L25 4 L25 20 L21 20"/></g>'),moon:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#d8a848"><path d="M24 18 Q24 25, 16 25 Q8 25, 8 16 Q8 8, 16 8 Q12 12, 12 16 Q12 22, 18 22 Q22 22, 24 18 Z"/></g>'),deploy:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#d8a848"><path d="M16 4 L23 11 L23 22 L18 27 L14 27 L9 22 L9 11 Z"/><circle cx="16" cy="14" r="3" fill="#b8602a"/></g>'),grid:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#d8a848"><rect x="6" y="6" width="8" height="8"/><rect x="18" y="6" width="8" height="8"/><rect x="6" y="18" width="8" height="8"/><rect x="18" y="18" width="8" height="8"/></g>'),shield:Z('<g stroke="#4a2818" stroke-width="1.3" fill="#d8a848"><path d="M16 4 L26 8 L26 16 Q26 23, 16 28 Q6 23, 6 16 L6 8 Z"/><path d="M11 16 L14 19 L21 12" stroke="#8a3a1a" stroke-width="2"/></g>')},atomic:{agent:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#e85a26" stroke-linejoin="round"><circle cx="16" cy="11" r="4"/><path d="M8 25 Q8 18, 16 18 Q24 18, 24 25"/></g>'),trigger:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#d8a838" stroke-linejoin="round"><path d="M16 3 L11 16 L16 16 L13 29 L23 13 L17 13 L21 3 Z"/></g>'),tool:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#3a9aa0" stroke-linejoin="round"><path d="M5 25 L18 12 M22 8 L26 12 M22 8 Q28 2, 22 4 L18 8 Z"/></g>'),memory:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#3a9aa0"><rect x="5" y="9" width="22" height="14" rx="3"/><path d="M5 14 L27 14 M5 19 L27 19" stroke="#2a3a4a"/></g>'),output:Z('<g stroke="#2a3a4a" stroke-width="2.4" fill="none" stroke-linecap="round" stroke-linejoin="round"><path d="M5 16 L23 16 L18 11 M23 16 L18 21"/></g>'),send:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#e85a26" stroke-linejoin="round"><path d="M4 28 L28 4 L18 14 L12 11 L11 19 Z"/></g>'),file:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#ffffff" stroke-linejoin="round"><path d="M9 4 L20 4 L24 8 L24 28 L9 28 Z"/><path d="M20 4 L20 8 L24 8" fill="#d8a838"/></g>'),folder:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#d8a838" stroke-linejoin="round"><path d="M4 11 L13 11 L15 13 L28 13 L28 25 L4 25 Z"/></g>'),settings:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#3a9aa0"><circle cx="16" cy="16" r="4"/><path d="M16 3 L16 8 M16 24 L16 29 M3 16 L8 16 M24 16 L29 16" stroke-linecap="round"/></g>'),credentials:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#d8a838"><circle cx="12" cy="16" r="4"/><path d="M16 16 L28 16 L28 20 M23 16 L23 21 M19 16 L19 19"/></g>'),run:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#5a8a5a" stroke-linejoin="round"><path d="M9 5 L26 16 L9 27 Z"/></g>'),save:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#e85a26" stroke-linejoin="round"><path d="M16 4 L20 13 L29 14 L22 20 L24 29 L16 25 L8 29 L10 20 L3 14 L12 13 Z"/></g>'),stop:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#e85a26"><rect x="7" y="7" width="18" height="18" rx="2"/></g>'),plus:Z('<g stroke="#2a3a4a" stroke-width="3" stroke-linecap="round"><path d="M16 6 L16 26 M6 16 L26 16"/></g>'),close:Z('<g stroke="#2a3a4a" stroke-width="3" stroke-linecap="round"><path d="M8 8 L24 24 M24 8 L8 24"/></g>'),search:Z('<g stroke="#2a3a4a" stroke-width="2.4" fill="#d8a838" stroke-linecap="round"><circle cx="13" cy="13" r="6"/><path d="M18 18 L26 26"/></g>'),chevron:Z('<g stroke="#2a3a4a" stroke-width="2.4" fill="none" stroke-linecap="round" stroke-linejoin="round"><path d="M11 9 L20 16 L11 23"/></g>'),check:Z('<g stroke="#5a8a5a" stroke-width="3" fill="none" stroke-linecap="round" stroke-linejoin="round"><path d="M6 16 L13 23 L26 8"/></g>'),warning:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#d8a838" stroke-linejoin="round"><path d="M16 4 L28 26 L4 26 Z"/><path d="M16 13 L16 20" stroke-linecap="round"/></g>'),error:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#e85a26"><circle cx="16" cy="16" r="10"/><path d="M11 11 L21 21 M21 11 L11 21" stroke="#ffffff" stroke-linecap="round"/></g>'),info:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#3a9aa0"><circle cx="16" cy="16" r="10"/><path d="M16 14 L16 22 M16 10 L16 11" stroke="#ffffff" stroke-linecap="round"/></g>'),sidebar:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#3a9aa0"><rect x="5" y="6" width="22" height="20" rx="2"/><path d="M12 6 L12 26"/></g>'),upload:Z('<g stroke="#2a3a4a" stroke-width="2.4" fill="none" stroke-linecap="round" stroke-linejoin="round"><path d="M16 24 L16 7 M9 14 L16 7 L23 14"/></g>'),download:Z('<g stroke="#2a3a4a" stroke-width="2.4" fill="none" stroke-linecap="round" stroke-linejoin="round"><path d="M16 8 L16 25 M9 18 L16 25 L23 18"/></g>'),copy:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#d8a838" stroke-linejoin="round"><rect x="8" y="8" width="13" height="16" rx="1"/><path d="M12 4 L25 4 L25 20 L21 20"/></g>'),moon:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#d8a838" stroke-linejoin="round"><path d="M24 18 Q24 25, 16 25 Q8 25, 8 16 Q8 8, 16 8 Q12 12, 12 16 Q12 22, 18 22 Q22 22, 24 18 Z"/></g>'),deploy:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#e85a26" stroke-linejoin="round"><path d="M16 3 L23 11 L23 23 L18 28 L14 28 L9 23 L9 11 Z"/><circle cx="16" cy="13" r="2.5" fill="#ffffff"/></g>'),grid:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#d8a838"><rect x="6" y="6" width="8" height="8" rx="1"/><rect x="18" y="6" width="8" height="8" rx="1"/><rect x="6" y="18" width="8" height="8" rx="1"/><rect x="18" y="18" width="8" height="8" rx="1"/></g>'),shield:Z('<g stroke="#2a3a4a" stroke-width="2" fill="#3a9aa0" stroke-linejoin="round"><path d="M16 3 L26 7 L26 16 Q26 24, 16 29 Q6 24, 6 16 L6 7 Z"/><path d="M11 16 L14 19 L21 12" stroke="#ffffff" stroke-linecap="round"/></g>')},wasteland:{agent:Z('<g stroke="#e88a28" stroke-width="2" fill="none" stroke-linejoin="round"><path d="M12 7 L20 7 L20 14 L23 14 L23 24 L9 24 L9 14 L12 14 Z"/><rect x="13" y="10" width="2" height="2" fill="#e88a28"/><rect x="17" y="10" width="2" height="2" fill="#e88a28"/></g>'),trigger:Z('<g stroke="#c8d038" stroke-width="2" fill="#c8d038" fill-opacity="0.3" stroke-linejoin="round"><path d="M16 4 L9 18 L15 18 L12 28 L23 13 L17 13 L19 4 Z"/></g>'),tool:Z('<g stroke="#e88a28" stroke-width="2" fill="none" stroke-linejoin="round"><path d="M5 25 L17 13 M19 11 L21 13 M19 11 Q25 5, 21 7 L17 11 Z"/><path d="M5 25 L7 27"/></g>'),memory:Z('<g stroke="#e88a28" stroke-width="2" fill="none"><rect x="6" y="9" width="20" height="14"/><path d="M6 13 L26 13 M6 18 L26 18 M11 9 L11 23 M21 9 L21 23"/></g>'),output:Z('<g stroke="#e88a28" stroke-width="2.4" fill="none" stroke-linecap="square"><path d="M5 16 L24 16 L19 11 M24 16 L19 21"/></g>'),send:Z('<g stroke="#e88a28" stroke-width="2" fill="#e88a28" fill-opacity="0.3" stroke-linejoin="round"><path d="M5 27 L27 5 L19 13 L13 11 L13 19 L5 27 Z"/></g>'),file:Z('<g stroke="#e88a28" stroke-width="2" fill="none" stroke-linejoin="round"><path d="M9 5 L19 5 L24 10 L24 27 L9 27 Z"/><path d="M19 5 L19 10 L24 10"/><path d="M12 14 L20 14 M12 18 L20 18 M12 22 L17 22"/></g>'),folder:Z('<g stroke="#e88a28" stroke-width="2" fill="none" stroke-linejoin="round"><path d="M5 11 L13 11 L15 13 L27 13 L27 24 L5 24 Z"/></g>'),settings:Z('<g stroke="#e88a28" stroke-width="2" fill="none"><circle cx="16" cy="16" r="3"/><path d="M16 4 L16 9 M16 23 L16 28 M4 16 L9 16 M23 16 L28 16 M8 8 L11 11 M21 21 L24 24 M8 24 L11 21 M21 11 L24 8"/></g>'),credentials:Z('<g stroke="#e88a28" stroke-width="2" fill="none"><circle cx="12" cy="16" r="4"/><path d="M16 16 L27 16 L27 20 M23 16 L23 20"/></g>'),run:Z('<g stroke="#8a9028" stroke-width="2" fill="#8a9028" fill-opacity="0.4" stroke-linejoin="round"><path d="M10 6 L26 16 L10 26 Z"/></g>'),save:Z('<g stroke="#c8d038" stroke-width="2" fill="none"><circle cx="16" cy="16" r="9"/><path d="M16 11 L16 16 L19 18" stroke-linecap="square"/></g>'),stop:Z('<g stroke="#b8281a" stroke-width="2" fill="#b8281a" fill-opacity="0.4"><rect x="8" y="8" width="16" height="16"/></g>'),plus:Z('<g stroke="#e88a28" stroke-width="3" stroke-linecap="square"><path d="M16 6 L16 26 M6 16 L26 16"/></g>'),close:Z('<g stroke="#e88a28" stroke-width="3" stroke-linecap="square"><path d="M8 8 L24 24 M24 8 L8 24"/></g>'),search:Z('<g stroke="#e88a28" stroke-width="2" fill="none" stroke-linecap="square"><circle cx="13" cy="13" r="6"/><path d="M18 18 L25 25"/></g>'),chevron:Z('<g stroke="#e88a28" stroke-width="2.4" fill="none" stroke-linecap="square"><path d="M11 9 L20 16 L11 23"/></g>'),check:Z('<g stroke="#8a9028" stroke-width="3" fill="none" stroke-linecap="square"><path d="M6 16 L13 23 L26 8"/></g>'),warning:Z('<g stroke="#c8d038" stroke-width="2" fill="#c8d038" fill-opacity="0.3"><path d="M16 4 L28 26 L4 26 Z"/><path d="M16 13 L16 20" stroke-linecap="square"/></g>'),error:Z('<g stroke="#b8281a" stroke-width="2" fill="#b8281a" fill-opacity="0.4"><circle cx="16" cy="16" r="9"/><path d="M11 11 L21 21 M21 11 L11 21" stroke-linecap="square"/></g>'),info:Z('<g stroke="#e88a28" stroke-width="2" fill="none"><circle cx="16" cy="16" r="9"/><path d="M16 14 L16 22 M16 10 L16 11" stroke-linecap="square"/></g>'),sidebar:Z('<g stroke="#e88a28" stroke-width="2" fill="none"><rect x="5" y="6" width="22" height="20"/><path d="M12 6 L12 26"/></g>'),upload:Z('<g stroke="#e88a28" stroke-width="2.4" fill="none" stroke-linecap="square"><path d="M16 24 L16 8 M9 15 L16 8 L23 15"/></g>'),download:Z('<g stroke="#e88a28" stroke-width="2.4" fill="none" stroke-linecap="square"><path d="M16 8 L16 24 M9 17 L16 24 L23 17"/></g>'),copy:Z('<g stroke="#e88a28" stroke-width="2" fill="none"><rect x="8" y="8" width="13" height="16"/><path d="M12 4 L25 4 L25 20 L21 20"/></g>'),moon:Z('<g stroke="#e88a28" stroke-width="2" fill="none"><path d="M24 18 Q24 25, 16 25 Q8 25, 8 16 Q8 8, 16 8 Q12 12, 12 16 Q12 22, 18 22 Q22 22, 24 18 Z"/></g>'),deploy:Z('<g stroke="#e88a28" stroke-width="2" fill="none" stroke-linejoin="round"><path d="M16 5 L22 11 L22 22 L18 26 L14 26 L10 22 L10 11 Z"/><circle cx="16" cy="14" r="2.5" fill="#e88a28" fill-opacity="0.4"/></g>'),grid:Z('<g stroke="#e88a28" stroke-width="2" fill="none"><rect x="6" y="6" width="8" height="8"/><rect x="18" y="6" width="8" height="8"/><rect x="6" y="18" width="8" height="8"/><rect x="18" y="18" width="8" height="8"/></g>'),shield:Z('<g stroke="#c8d038" stroke-width="2" fill="none"><path d="M16 4 L26 8 L26 16 Q26 23, 16 28 Q6 23, 6 16 L6 8 Z"/><path d="M11 16 L14 19 L21 12" stroke-width="2.4" stroke-linecap="square"/></g>')},rot:{agent:Z('<g stroke="#d8d0b8" stroke-width="1.4" fill="none"><circle cx="16" cy="11" r="3.5"/><path d="M9 24 Q9 18, 16 18 Q23 18, 23 24"/><path d="M14 13 L14 16 M18 13 L18 16" stroke="#78c878" stroke-width="0.8"/></g>'),trigger:Z('<g stroke="#78c878" stroke-width="1.6" fill="none" stroke-linecap="round"><path d="M16 5 L11 17 L16 17 L13 27 L21 14 L16 14 Z" fill="#78c878" fill-opacity="0.2"/></g>'),tool:Z('<g stroke="#d8d0b8" stroke-width="1.4" fill="none"><path d="M6 25 L18 13 M22 9 L24 11 M22 9 Q26 5, 22 5 L18 9 Z" fill="#78c878" fill-opacity="0.3"/></g>'),memory:Z('<g stroke="#d8d0b8" stroke-width="1.4" fill="none"><rect x="6" y="9" width="20" height="14"/><path d="M6 13 L26 13 M6 18 L26 18 M11 9 L11 23 M21 9 L21 23"/></g>'),output:Z('<g stroke="#78c878" stroke-width="1.6" fill="none" stroke-linecap="round"><path d="M5 16 L23 16 L18 11 M23 16 L18 21"/></g>'),send:Z('<g stroke="#d8d0b8" stroke-width="1.4" fill="#78c878" fill-opacity="0.2" stroke-linejoin="round"><path d="M5 27 L27 5 L19 13 L13 11 L13 19 L5 27 Z"/></g>'),file:Z('<g stroke="#d8d0b8" stroke-width="1.4" fill="none"><path d="M9 5 L19 5 L24 10 L24 27 L9 27 Z"/><path d="M19 5 L19 10 L24 10"/><path d="M12 14 L20 14 M12 18 L20 18 M12 22 L17 22"/></g>'),folder:Z('<g stroke="#d8d0b8" stroke-width="1.4" fill="none"><path d="M5 11 L13 11 L15 13 L27 13 L27 24 L5 24 Z"/></g>'),settings:Z('<g stroke="#d8d0b8" stroke-width="1.4" fill="none"><circle cx="16" cy="16" r="3"/><path d="M16 4 L16 9 M16 23 L16 28 M4 16 L9 16 M23 16 L28 16 M8 8 L11 11 M21 21 L24 24 M8 24 L11 21 M21 11 L24 8"/></g>'),credentials:Z('<g stroke="#d8d0b8" stroke-width="1.4" fill="none"><circle cx="12" cy="16" r="4"/><path d="M16 16 L27 16 L27 20 M23 16 L23 20"/></g>'),run:Z('<g stroke="#78c878" stroke-width="1.4" fill="#78c878" fill-opacity="0.4" stroke-linejoin="round"><path d="M10 6 L26 16 L10 26 Z"/></g>'),save:Z('<g stroke="#e8a838" stroke-width="1.4" fill="#e8a838" fill-opacity="0.3"><path d="M16 5 L18 11 L25 11 L19 15 L22 22 L16 18 L10 22 L13 15 L7 11 L14 11 Z"/></g>'),stop:Z('<g stroke="#a83838" stroke-width="1.4" fill="#a83838" fill-opacity="0.4"><rect x="9" y="9" width="14" height="14"/></g>'),plus:Z('<g stroke="#d8d0b8" stroke-width="2"><path d="M16 7 L16 25 M7 16 L25 16"/></g>'),close:Z('<g stroke="#d8d0b8" stroke-width="2"><path d="M8 8 L24 24 M24 8 L8 24"/></g>'),search:Z('<g stroke="#d8d0b8" stroke-width="1.4" fill="none"><circle cx="13" cy="13" r="6"/><path d="M18 18 L25 25"/></g>'),chevron:Z('<g stroke="#d8d0b8" stroke-width="1.8" fill="none"><path d="M11 9 L20 16 L11 23"/></g>'),check:Z('<g stroke="#78c878" stroke-width="2" fill="none"><path d="M6 16 L13 23 L26 8"/></g>'),warning:Z('<g stroke="#e8a838" stroke-width="1.4" fill="#e8a838" fill-opacity="0.3"><path d="M16 5 L27 25 L5 25 Z"/><path d="M16 13 L16 20"/></g>'),error:Z('<g stroke="#a83838" stroke-width="1.4" fill="#a83838" fill-opacity="0.4"><circle cx="16" cy="16" r="9"/><path d="M11 11 L21 21 M21 11 L11 21"/></g>'),info:Z('<g stroke="#5898b8" stroke-width="1.4" fill="none"><circle cx="16" cy="16" r="9"/><path d="M16 14 L16 22 M16 10 L16 11"/></g>'),sidebar:Z('<g stroke="#d8d0b8" stroke-width="1.4" fill="none"><rect x="5" y="6" width="22" height="20"/><path d="M12 6 L12 26"/></g>'),upload:Z('<g stroke="#d8d0b8" stroke-width="1.6" fill="none"><path d="M16 24 L16 8 M9 15 L16 8 L23 15"/></g>'),download:Z('<g stroke="#d8d0b8" stroke-width="1.6" fill="none"><path d="M16 8 L16 24 M9 17 L16 24 L23 17"/></g>'),copy:Z('<g stroke="#d8d0b8" stroke-width="1.4" fill="none"><rect x="8" y="8" width="13" height="16"/><path d="M12 4 L25 4 L25 20 L21 20"/></g>'),moon:Z('<g stroke="#e8a838" stroke-width="1.4" fill="#e8a838" fill-opacity="0.2"><path d="M24 18 Q24 25, 16 25 Q8 25, 8 16 Q8 8, 16 8 Q12 12, 12 16 Q12 22, 18 22 Q22 22, 24 18 Z"/></g>'),deploy:Z('<g stroke="#78c878" stroke-width="1.4" fill="none"><path d="M16 5 L22 11 L22 22 L18 26 L14 26 L10 22 L10 11 Z"/><circle cx="16" cy="14" r="2.5" fill="#78c878" fill-opacity="0.3"/></g>'),grid:Z('<g stroke="#d8d0b8" stroke-width="1.4" fill="none"><rect x="6" y="6" width="8" height="8"/><rect x="18" y="6" width="8" height="8"/><rect x="6" y="18" width="8" height="8"/><rect x="18" y="18" width="8" height="8"/></g>'),shield:Z('<g stroke="#d8d0b8" stroke-width="1.4" fill="none"><path d="M16 4 L26 8 L26 16 Q26 23, 16 28 Q6 23, 6 16 L6 8 Z"/><path d="M11 16 L14 19 L21 12" stroke="#78c878" stroke-width="1.8"/></g>')},plague:{agent:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#efeacf"><circle cx="16" cy="11" r="3.5"/><path d="M9 24 Q9 18, 16 18 Q23 18, 23 24 Z"/><path d="M14 22 L14 24 M16 22 L16 24 M18 22 L18 24" stroke-width="0.8"/></g>'),trigger:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#783c28"><path d="M16 4 L10 16 L15 16 L12 28 L22 13 L17 13 L20 4 Z"/></g>'),tool:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#efeacf"><path d="M6 25 L18 13 M22 9 L24 11 M22 9 Q26 5, 22 5 L18 9 Z"/></g>'),memory:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#efeacf"><rect x="6" y="9" width="20" height="14"/><path d="M6 13 L26 13 M6 18 L26 18" stroke-width="1"/></g>'),output:Z('<g stroke="#1a1410" stroke-width="2" fill="none"><path d="M5 16 L23 16 L18 11 M23 16 L18 21"/></g>'),send:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#783c28"><path d="M5 27 L27 5 L19 13 L13 11 L13 19 L5 27 Z"/></g>'),file:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#efeacf"><path d="M9 5 L19 5 L24 10 L24 27 L9 27 Z"/><path d="M19 5 L19 10 L24 10"/><path d="M12 14 L20 14 M12 18 L20 18 M12 22 L16 22"/></g>'),folder:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#efeacf"><path d="M5 11 L13 11 L15 13 L27 13 L27 24 L5 24 Z"/></g>'),settings:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#efeacf"><circle cx="16" cy="16" r="3"/><circle cx="16" cy="16" r="8"/><path d="M16 4 L16 8 M16 24 L16 28 M4 16 L8 16 M24 16 L28 16"/></g>'),credentials:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#783c28"><circle cx="12" cy="16" r="4" fill="#efeacf"/><path d="M16 16 L27 16 L27 20 M23 16 L23 20"/></g>'),run:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#5a7028"><path d="M10 6 L26 16 L10 26 Z"/></g>'),save:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#783c28"><circle cx="16" cy="16" r="8"/><path d="M14 14 L18 14 L18 18 L14 18 Z M12 12 L20 20 M20 12 L12 20" stroke="#efeacf" stroke-width="1.2"/></g>'),stop:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#783c28"><rect x="8" y="8" width="16" height="16"/></g>'),plus:Z('<g stroke="#1a1410" stroke-width="2.4"><path d="M16 6 L16 26 M6 16 L26 16"/></g>'),close:Z('<g stroke="#1a1410" stroke-width="2.4"><path d="M8 8 L24 24 M24 8 L8 24"/></g>'),search:Z('<g stroke="#1a1410" stroke-width="1.8" fill="none"><circle cx="13" cy="13" r="6"/><path d="M18 18 L25 25"/></g>'),chevron:Z('<g stroke="#1a1410" stroke-width="2" fill="none"><path d="M11 9 L20 16 L11 23"/></g>'),check:Z('<g stroke="#5a7028" stroke-width="2.4" fill="none"><path d="M6 16 L13 23 L26 8"/></g>'),warning:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#98a838"><path d="M16 4 L28 26 L4 26 Z"/><path d="M16 13 L16 20" stroke-width="2"/><circle cx="16" cy="23" r="0.8" fill="#1a1410"/></g>'),error:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#783c28"><circle cx="16" cy="16" r="9"/><path d="M11 11 L21 21 M21 11 L11 21" stroke="#efeacf" stroke-width="2"/></g>'),info:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#efeacf"><circle cx="16" cy="16" r="9"/><path d="M16 14 L16 22 M16 10 L16 11" stroke-width="2"/></g>'),sidebar:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#efeacf"><rect x="5" y="6" width="22" height="20"/><path d="M12 6 L12 26"/></g>'),upload:Z('<g stroke="#1a1410" stroke-width="2" fill="none"><path d="M16 24 L16 8 M9 15 L16 8 L23 15"/></g>'),download:Z('<g stroke="#1a1410" stroke-width="2" fill="none"><path d="M16 8 L16 24 M9 17 L16 24 L23 17"/></g>'),copy:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#efeacf"><rect x="8" y="8" width="13" height="16"/><path d="M12 4 L25 4 L25 20 L21 20"/></g>'),moon:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#efeacf"><path d="M24 18 Q24 25, 16 25 Q8 25, 8 16 Q8 8, 16 8 Q12 12, 12 16 Q12 22, 18 22 Q22 22, 24 18 Z"/></g>'),deploy:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#783c28"><path d="M16 5 L22 11 L22 22 L18 26 L14 26 L10 22 L10 11 Z"/><circle cx="16" cy="14" r="2.5" fill="#efeacf"/></g>'),grid:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#efeacf"><rect x="6" y="6" width="8" height="8"/><rect x="18" y="6" width="8" height="8"/><rect x="6" y="18" width="8" height="8"/><rect x="18" y="18" width="8" height="8"/></g>'),shield:Z('<g stroke="#1a1410" stroke-width="1.6" fill="#783c28"><path d="M16 4 L26 8 L26 16 Q26 23, 16 28 Q6 23, 6 16 L6 8 Z"/><path d="M11 16 L14 19 L21 12" stroke="#efeacf" stroke-width="2"/></g>')},surveillance:{agent:Z('<g stroke="#c8ccd0" stroke-width="1.2" fill="none"><rect x="9" y="6" width="14" height="20"/><circle cx="13" cy="12" r="1" fill="#e82626"/><circle cx="19" cy="12" r="1" fill="#c8ccd0"/><path d="M12 18 L20 18 M12 21 L20 21" stroke-width="0.8"/></g>'),trigger:Z('<g stroke="#e82626" stroke-width="1.4" fill="#e82626" fill-opacity="0.3"><path d="M16 4 L10 16 L15 16 L12 28 L22 13 L17 13 L20 4 Z"/></g>'),tool:Z('<g stroke="#c8ccd0" stroke-width="1.2" fill="none"><rect x="6" y="14" width="20" height="4"/><path d="M10 14 L10 12 L14 12 L14 14 M18 18 L18 20 L22 20 L22 18"/></g>'),memory:Z('<g stroke="#c8ccd0" stroke-width="1.2" fill="none"><rect x="6" y="9" width="20" height="14"/><path d="M6 13 L26 13 M6 17 L26 17 M6 21 L26 21 M11 9 L11 23 M21 9 L21 23"/></g>'),output:Z('<g stroke="#6acc6a" stroke-width="1.4" fill="none"><path d="M5 16 L24 16 M19 11 L24 16 L19 21"/></g>'),send:Z('<g stroke="#e82626" stroke-width="1.2" fill="#e82626" fill-opacity="0.3"><path d="M5 27 L27 5 L19 13 L13 11 L13 19 L5 27 Z"/></g>'),file:Z('<g stroke="#c8ccd0" stroke-width="1.2" fill="none"><path d="M9 5 L19 5 L24 10 L24 27 L9 27 Z"/><path d="M19 5 L19 10 L24 10"/><path d="M12 14 L20 14 M12 18 L20 18 M12 22 L17 22" stroke="#6acc6a"/></g>'),folder:Z('<g stroke="#c8ccd0" stroke-width="1.2" fill="none"><path d="M5 11 L13 11 L15 13 L27 13 L27 24 L5 24 Z"/></g>'),settings:Z('<g stroke="#c8ccd0" stroke-width="1.2" fill="none"><rect x="13" y="13" width="6" height="6"/><path d="M16 4 L16 9 M16 23 L16 28 M4 16 L9 16 M23 16 L28 16 M8 8 L12 12 M20 20 L24 24 M8 24 L12 20 M20 12 L24 8"/></g>'),credentials:Z('<g stroke="#c8ccd0" stroke-width="1.2" fill="none"><circle cx="12" cy="16" r="4"/><path d="M16 16 L27 16 L27 20 M23 16 L23 20 M19 16 L19 18"/></g>'),run:Z('<g stroke="#6acc6a" stroke-width="1.4" fill="#6acc6a" fill-opacity="0.4"><path d="M10 6 L26 16 L10 26 Z"/></g>'),save:Z('<g stroke="#d8a020" stroke-width="1.2" fill="none"><rect x="6" y="6" width="20" height="20"/><rect x="10" y="6" width="12" height="6" fill="#d8a020" fill-opacity="0.3"/><rect x="11" y="18" width="10" height="8"/></g>'),stop:Z('<g stroke="#e82626" stroke-width="1.4" fill="#e82626" fill-opacity="0.5"><rect x="9" y="9" width="14" height="14"/></g>'),plus:Z('<g stroke="#c8ccd0" stroke-width="1.6" stroke-linecap="square"><path d="M16 6 L16 26 M6 16 L26 16"/></g>'),close:Z('<g stroke="#e82626" stroke-width="1.6" stroke-linecap="square"><path d="M8 8 L24 24 M24 8 L8 24"/></g>'),search:Z('<g stroke="#c8ccd0" stroke-width="1.4" fill="none"><circle cx="13" cy="13" r="6"/><path d="M18 18 L26 26"/></g>'),chevron:Z('<g stroke="#c8ccd0" stroke-width="1.6" fill="none"><path d="M11 9 L20 16 L11 23"/></g>'),check:Z('<g stroke="#6acc6a" stroke-width="1.8" fill="none"><path d="M6 16 L13 23 L26 8"/></g>'),warning:Z('<g stroke="#d8a020" stroke-width="1.4" fill="none"><path d="M16 4 L28 26 L4 26 Z"/><path d="M16 13 L16 20 M16 23 L16 23.5" stroke-width="1.8"/></g>'),error:Z('<g stroke="#e82626" stroke-width="1.4" fill="#e82626" fill-opacity="0.3"><circle cx="16" cy="16" r="9"/><path d="M11 11 L21 21 M21 11 L11 21" stroke-width="1.8"/></g>'),info:Z('<g stroke="#5a8cc8" stroke-width="1.4" fill="none"><circle cx="16" cy="16" r="9"/><path d="M16 14 L16 22 M16 10 L16 11" stroke-width="1.8"/></g>'),sidebar:Z('<g stroke="#c8ccd0" stroke-width="1.2" fill="none"><rect x="5" y="6" width="22" height="20"/><path d="M12 6 L12 26"/><rect x="6" y="7" width="5" height="18" fill="#e82626" fill-opacity="0.3" stroke="none"/></g>'),upload:Z('<g stroke="#c8ccd0" stroke-width="1.4" fill="none" stroke-linecap="square"><path d="M16 24 L16 8 M9 15 L16 8 L23 15"/></g>'),download:Z('<g stroke="#c8ccd0" stroke-width="1.4" fill="none" stroke-linecap="square"><path d="M16 8 L16 24 M9 17 L16 24 L23 17"/></g>'),copy:Z('<g stroke="#c8ccd0" stroke-width="1.2" fill="none"><rect x="8" y="8" width="13" height="16"/><path d="M12 4 L25 4 L25 20 L21 20"/></g>'),moon:Z('<g stroke="#c8ccd0" stroke-width="1.2" fill="none"><path d="M24 18 Q24 25, 16 25 Q8 25, 8 16 Q8 8, 16 8 Q12 12, 12 16 Q12 22, 18 22 Q22 22, 24 18 Z"/></g>'),deploy:Z('<g stroke="#e82626" stroke-width="1.2" fill="none"><path d="M16 4 L22 11 L22 22 L18 26 L14 26 L10 22 L10 11 Z"/><circle cx="16" cy="13" r="2.5" fill="#e82626" fill-opacity="0.4"/></g>'),grid:Z('<g stroke="#c8ccd0" stroke-width="1.2" fill="none"><rect x="6" y="6" width="8" height="8"/><rect x="18" y="6" width="8" height="8"/><rect x="6" y="18" width="8" height="8"/><rect x="18" y="18" width="8" height="8"/></g>'),shield:Z('<g stroke="#e82626" stroke-width="1.2" fill="none"><path d="M16 4 L26 8 L26 16 Q26 23, 16 28 Q6 23, 6 16 L6 8 Z"/><path d="M11 16 L14 19 L21 12" stroke-width="1.6"/></g>')}},Co=t=>{const e=Fe.c(24),{icon:s,className:r,fallback:c}=t,u=c===void 0?null:c,{theme:f}=Zs();let d;if(s&&Z6.has(s)){const b=B6[f]?.[s];if(b){let k;e[0]!==r?(k=Ne("inline-flex items-center justify-center",r),e[0]=r,e[1]=k):k=e[1];let S;e[2]!==b?(S={__html:b},e[2]=b,e[3]=S):S=e[3];let w;return e[4]!==k||e[5]!==S?(w=i.jsx("span",{className:k,dangerouslySetInnerHTML:S}),e[4]=k,e[5]=S,e[6]=w):w=e[6],w}}let h;e[7]!==s?(h=o3(s),e[7]=s,e[8]=h):h=e[8];const g=h;if(g){let b;if(e[9]!==g){let k;e[11]===Symbol.for("react.memo_cache_sentinel")?(k={className:"h-full w-full"},e[11]=k):k=e[11],b=j.createElement(g,k),e[9]=g,e[10]=b}else b=e[10];d=b}else if(e[12]!==u||e[13]!==s){const b=P6(s);if(!b)d=u;else if(X6(b)){let k;e[15]!==b?(k=i.jsx("img",{src:b,alt:"",className:"h-full w-full object-contain"}),e[15]=b,e[16]=k):k=e[16],d=k}else{let k;e[17]!==b?(k=i.jsx("span",{className:"leading-none",children:b}),e[17]=b,e[18]=k):k=e[18],d=k}e[12]=u,e[13]=s,e[14]=d}else d=e[14];let x;e[19]!==r?(x=Ne("inline-flex items-center justify-center",r),e[19]=r,e[20]=x):x=e[20];let y;return e[21]!==d||e[22]!==x?(y=i.jsx("span",{className:x,children:d}),e[21]=d,e[22]=x,e[23]=y):y=e[23],y},F6=Object.assign({}),G6=t=>`data:image/svg+xml,${encodeURIComponent(t).replace(/'/g,"%27").replace(/"/g,"%22")}`,Q6=t=>(t.split("/").pop()??"").replace(/\.svg$/i,""),K6=Object.entries(F6).sort(([t],[e])=>t.localeCompare(e)).map(([t,e])=>[Q6(t),G6(e)]),Y6=Object.fromEntries(K6),P6=t=>t?t.startsWith("asset:")?Y6[t.slice(6)]??null:t.startsWith("/api/")?`${_l.PYTHON_BASE_URL}${t}`:t.startsWith("data:")||t.startsWith("http://")||t.startsWith("https://")||t.startsWith("/")?t:t.includes(":")?null:t:null,X6=t=>t.startsWith("data:")||t.startsWith("http")||t.startsWith("/"),J6=t=>Object.fromEntries(Object.keys(t).map(e=>[e.toLowerCase(),e])),e3=J6(Pb),t3={openai:i0,claude:l0,gemini:r0,groq:a0,cerebras:s0,openrouter:o0,deepseek:n0,kimi:t0,mistral:e0,ollama:Jb,lmstudio:Xb},n3={lobehub:t=>{const e=t3[t.toLowerCase()];return e?.Color??e?.Avatar??null},lucide:t=>{const e=e3[t.toLowerCase()];if(!e)return null;const s=Pb[e];return s&&typeof s=="object"&&"$$typeof"in s?s:null}},o3=t=>{if(!t)return null;const e=t.indexOf(":");if(e<=0)return null;const s=t.slice(0,e),r=n3[s];return r?r(t.slice(e+1)):null},s3=Iu("group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!",{variants:{variant:{default:"bg-primary text-primary-foreground [a]:hover:bg-primary/80",secondary:"bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80",destructive:"bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20",outline:"border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground",ghost:"hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50",link:"text-primary underline-offset-4 hover:underline",success:"bg-success/15 text-success border-success/30",warning:"bg-warning/15 text-warning border-warning/30",info:"bg-info/15 text-info border-info/30"}},defaultVariants:{variant:"default"}});function Ot({className:t,variant:e="default",asChild:s=!1,...r}){const c=s?Nm:"span";return i.jsx(c,{"data-slot":"badge","data-variant":e,className:Ne(s3({variant:e}),t),...r})}const a3={initializing:{icon:"⚡",label:"Initializing",color:Xe.cyan},loading_memory:{icon:"💾",label:"Loading Memory",color:Xe.purple},memory_loaded:{icon:"✓",label:"Memory Ready",color:Xe.green},building_tools:{icon:"🔧",label:"Building Tools",color:Xe.orange},building_graph:{icon:"🔗",label:"Building Graph",color:Xe.orange},invoking_llm:{icon:"🧠",label:"Thinking...",color:Xe.pink},executing_tool:{icon:"⚡",label:"Using Tool",color:Xe.pink},tool_completed:{icon:"✓",label:"Tool Done",color:Xe.green},saving_memory:{icon:"💾",label:"Saving Memory",color:Xe.purple}},r3={top:$n.Top,bottom:$n.Bottom,left:$n.Left,right:$n.Right},l3=({id:t,type:e,data:s,isConnectable:r,selected:c})=>{const u=ts(),f=De(A=>A.setSelectedNode),[d,h]=j.useState(!0),[g,x]=j.useState([]),y=Zi(e||"aiAgent"),b=y?.handles??[],k=y?.color||Xe.purple,S=y?.uiHints?.width??300,w=y?.uiHints?.height??200,_=s?.label||y?.displayName||e||"Agent",N=y?.subtitle??"",L=j.useMemo(()=>b.filter(A=>A.kind==="input"&&A.position==="left"&&A.name!=="input-main"),[b]),z=j.useMemo(()=>b.filter(A=>A.kind==="input"&&A.position==="bottom"),[b]),O=j.useMemo(()=>b.filter(A=>A.kind==="output"&&A.position==="right"),[b]),I=j.useMemo(()=>b.find(A=>A.kind==="output"&&A.position==="top"),[b]),q=j.useMemo(()=>b.some(A=>A.name==="input-main"||A.kind==="input"&&A.position==="left"&&A.role==="main"),[b]),M=Mm(t),E=M?.status==="executing",$=M?.data?.phase,Q=$?a3[$]:null,H=M?.data?.iteration,R=M?.data?.max_iterations,D=E&&typeof H=="number"&&typeof R=="number";j.useEffect(()=>{try{const A=W8.validateConfiguration(s||{});h(A.valid),x(A.errors)}catch(A){console.error("Configuration validation error:",A),h(!1),x(["Configuration validation failed"])}},[s,t,_]);const U=A=>{A.stopPropagation(),f({id:t,type:e,data:s,position:{x:0,y:0}})},W=O.length>0,T=q||L.length>0;return i.jsxs("div",{className:`node node-agent ${c?"selected":""}`,"data-executing":E?"":void 0,style:{"--node-color":k,position:"relative",padding:u.spacing.lg,paddingLeft:T?"72px":u.spacing.lg,paddingRight:W?"72px":u.spacing.lg,width:`${S}px`,minHeight:`${w}px`,color:u.colors.text,fontSize:u.fontSize.sm,fontWeight:u.fontWeight.medium,textAlign:"center",cursor:"pointer",transition:"all 0.3s ease",overflow:"visible",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:u.spacing.sm},children:[q&&i.jsxs(i.Fragment,{children:[i.jsx("div",{style:{position:"absolute",left:"10px",top:"30%",transform:"translateY(-50%)",fontSize:u.fontSize.sm,color:u.colors.text,fontWeight:u.fontWeight.medium,pointerEvents:"none",whiteSpace:"nowrap"},children:"Input"}),i.jsx(Pn,{id:"input-main",type:"target",position:$n.Left,isConnectable:r,className:"node-handle in",style:{position:"absolute",left:"-6px",top:"30%",transform:"translateY(-50%)",width:u.nodeSize.handle,height:u.nodeSize.handle,borderRadius:"50%"},title:"Input"})]}),D&&i.jsxs(Ot,{variant:"outline",title:`Iteration ${H} of ${R} (agent.recursion_limit)`,className:"absolute top-1 left-1 z-20 tabular-nums pointer-events-none",style:{color:"var(--node-color)",borderColor:"var(--node-color)"},children:[H," / ",R]}),i.jsx("button",{onClick:U,className:"node-gear",style:{position:"absolute",top:u.spacing.xs,right:u.spacing.xs,width:u.nodeSize.paramButton,height:u.nodeSize.paramButton,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:u.fontSize.xs,fontWeight:u.fontWeight.normal,zIndex:20},title:"Edit Parameters",children:"⚙️"}),i.jsx("div",{style:{marginBottom:u.spacing.xs,color:k},children:i.jsx(Co,{icon:y?.icon,className:"h-7 w-7 text-3xl"})}),i.jsx("div",{className:"node-label",style:{alignSelf:"stretch",width:"100%",fontSize:u.fontSize.base,fontWeight:u.fontWeight.semibold,color:u.colors.text,lineHeight:"1.2",marginBottom:u.spacing.xs,overflowWrap:"break-word",wordBreak:"break-word",whiteSpace:"normal",textAlign:"center"},children:_}),i.jsx("div",{className:"node-sub",style:{alignSelf:"stretch",width:"100%",fontSize:u.fontSize.xs,fontWeight:u.fontWeight.normal,color:E&&Q?Q.color:u.colors.focus,lineHeight:"1.2",marginBottom:u.spacing.lg,transition:"color 0.3s ease",overflowWrap:"break-word",wordBreak:"break-word",whiteSpace:"normal",textAlign:"center"},children:E&&Q?Q.label:N}),L.map(A=>i.jsxs(be.Fragment,{children:[i.jsx("div",{style:{position:"absolute",left:"12px",top:A.offset||"50%",transform:"translateY(-50%)",fontSize:u.fontSize.sm,color:u.colors.text,fontWeight:u.fontWeight.medium,pointerEvents:"none",whiteSpace:"nowrap"},children:A.label||A.name}),i.jsx(Pn,{id:A.name,type:"target",position:r3[A.position],isConnectable:r,className:"node-handle in",style:{position:"absolute",left:"-6px",top:A.offset||"50%",width:u.nodeSize.handle,height:u.nodeSize.handle,borderRadius:"0",transform:"translateY(-50%) rotate(45deg)"},title:A.label||A.name})]},A.name)),z.map(A=>i.jsx("span",{style:{position:"absolute",bottom:u.spacing.lg,left:A.offset||"50%",transform:"translateX(-50%)",fontSize:u.fontSize.sm,color:u.colors.text,fontWeight:u.fontWeight.medium,whiteSpace:"nowrap"},children:A.label||A.name},`label-${A.name}`)),z.map(A=>i.jsx(Pn,{id:A.name,type:"target",position:$n.Bottom,isConnectable:r,className:"node-handle in",style:{position:"absolute",bottom:"-6px",left:A.offset||"50%",width:u.nodeSize.handle,height:u.nodeSize.handle,borderRadius:"0",transform:"translateX(-50%) rotate(45deg)"},title:A.label||A.name},A.name)),I&&i.jsx(Pn,{id:I.name,type:"source",position:$n.Top,isConnectable:r,className:"node-handle out",style:{position:"absolute",top:"-6px",left:"50%",transform:"translateX(-50%)",width:u.nodeSize.handle,height:u.nodeSize.handle,borderRadius:"50%",zIndex:20},title:I.label||I.name}),W&&O.map(A=>i.jsxs(be.Fragment,{children:[i.jsx("div",{style:{position:"absolute",right:"14px",top:A.offset||"50%",transform:"translateY(-50%)",fontSize:u.fontSize.sm,color:u.colors.text,fontWeight:u.fontWeight.medium,pointerEvents:"none",whiteSpace:"nowrap",textAlign:"right",lineHeight:1},children:A.label||A.name}),i.jsx(Pn,{id:A.name,type:"source",position:$n.Right,isConnectable:r,className:"node-handle out",style:{position:"absolute",right:"-6px",top:A.offset||"50%",transform:"translateY(-50%)",width:u.nodeSize.handle,height:u.nodeSize.handle,borderRadius:"50%",zIndex:20},title:A.label||A.name})]},A.name)),!W&&!I&&i.jsx(Pn,{id:"output-main",type:"source",position:$n.Right,isConnectable:r,className:"node-handle out",style:{position:"absolute",right:"-6px",top:"50%",transform:"translateY(-50%)",width:u.nodeSize.handle,height:u.nodeSize.handle,borderRadius:"50%"},title:"Main Output"})]})},Ey=j.memo(l3,jl);let pl=null;function Zp(){if(pl)return pl;try{const t=window.AudioContext||window.webkitAudioContext;return t?(pl=new t,pl):null}catch{return null}}let cr=!1,vp="none",du={};const zy={},i3={type:30,hover:30};function My(t){if(!t||!cr)return;const e=Zp();if(!e)return;const s=()=>{try{const r=e.createOscillator(),c=e.createGain();r.type=t.type,r.frequency.value=t.freq;let u=r;if(t.lp){const d=e.createBiquadFilter();d.type="lowpass",d.frequency.value=t.lp,u.connect(d),u=d}u.connect(c),c.connect(e.destination);const f=e.currentTime;c.gain.setValueAtTime(0,f),c.gain.linearRampToValueAtTime(t.vol,f+t.attack),c.gain.exponentialRampToValueAtTime(1e-4,f+t.attack+t.decay),t.sweep&&r.frequency.exponentialRampToValueAtTime(t.freq*t.sweep,f+t.dur),r.start(f),r.stop(f+t.dur+.02)}catch{}};e.state==="running"?s():Promise.resolve(e.resume()).then(s).catch(()=>{})}const c3={click:{type:"sine",freq:220,dur:.04,vol:.06,attack:.005,decay:.04},hover:{type:"triangle",freq:380,dur:.02,vol:.025,attack:.002,decay:.02},type:{type:"square",freq:180,dur:.025,vol:.04,attack:.001,decay:.025,lp:800},success:{type:"sine",freq:523,dur:.4,vol:.08,attack:.01,decay:.4,sweep:1.5},error:{type:"sawtooth",freq:110,dur:.25,vol:.1,attack:.005,decay:.25,lp:600},run:{type:"sine",freq:392,dur:.18,vol:.1,attack:.01,decay:.18,sweep:1.3},save:{type:"triangle",freq:294,dur:.3,vol:.1,attack:.02,decay:.3},modalOpen:{type:"sine",freq:392,dur:.18,vol:.07,attack:.02,decay:.18,sweep:1.2},modalClose:{type:"sine",freq:392,dur:.14,vol:.06,attack:.005,decay:.14,sweep:.7}},u3={click:{type:"sine",freq:330,dur:.05,vol:.07,attack:.001,decay:.05},hover:{type:"sine",freq:520,dur:.02,vol:.025,attack:.001,decay:.02},type:{type:"triangle",freq:260,dur:.03,vol:.04,attack:.001,decay:.03,lp:1200},success:{type:"sine",freq:392,dur:.5,vol:.09,attack:.005,decay:.5,sweep:1.6},error:{type:"sawtooth",freq:130,dur:.3,vol:.1,attack:.005,decay:.3,lp:500},run:{type:"sine",freq:440,dur:.22,vol:.1,attack:.005,decay:.22,sweep:1.4},save:{type:"sine",freq:330,dur:.35,vol:.1,attack:.01,decay:.35},modalOpen:{type:"sine",freq:392,dur:.2,vol:.07,attack:.02,decay:.2,sweep:1.3},modalClose:{type:"sine",freq:392,dur:.16,vol:.06,attack:.005,decay:.16,sweep:.7}},d3={click:{type:"triangle",freq:280,dur:.05,vol:.05,attack:.005,decay:.05,lp:1500},hover:{type:"sine",freq:440,dur:.018,vol:.02,attack:.001,decay:.018},type:{type:"sine",freq:220,dur:.04,vol:.04,attack:.005,decay:.04,lp:600},success:{type:"sine",freq:660,dur:1.2,vol:.08,attack:.01,decay:1.2},error:{type:"triangle",freq:174,dur:.4,vol:.08,attack:.005,decay:.4,lp:800},run:{type:"sine",freq:523,dur:.6,vol:.08,attack:.02,decay:.6},save:{type:"sine",freq:440,dur:.8,vol:.1,attack:.01,decay:.8},modalOpen:{type:"sine",freq:523,dur:.4,vol:.06,attack:.04,decay:.4},modalClose:{type:"sine",freq:392,dur:.4,vol:.05,attack:.005,decay:.4}},f3={click:{type:"square",freq:800,dur:.04,vol:.06,attack:.001,decay:.04,lp:2200},hover:{type:"square",freq:1100,dur:.012,vol:.02,attack:.001,decay:.012},type:{type:"square",freq:600,dur:.025,vol:.05,attack:.001,decay:.025,lp:1800},success:{type:"sawtooth",freq:523,dur:.5,vol:.08,attack:.005,decay:.5,sweep:1.5,lp:2500},error:{type:"sawtooth",freq:196,dur:.35,vol:.1,attack:.005,decay:.35,lp:700},run:{type:"square",freq:440,dur:.3,vol:.1,attack:.005,decay:.3,sweep:1.4,lp:2e3},save:{type:"triangle",freq:660,dur:.45,vol:.1,attack:.01,decay:.45,lp:2400},modalOpen:{type:"square",freq:392,dur:.18,vol:.07,attack:.005,decay:.18,sweep:1.3,lp:1800},modalClose:{type:"square",freq:392,dur:.14,vol:.06,attack:.005,decay:.14,sweep:.65,lp:1400}},p3={click:{type:"triangle",freq:880,dur:.1,vol:.06,attack:.001,decay:.1},hover:{type:"triangle",freq:1320,dur:.05,vol:.025,attack:.001,decay:.05},type:{type:"sine",freq:660,dur:.06,vol:.04,attack:.001,decay:.06},success:{type:"triangle",freq:988,dur:.5,vol:.09,attack:.001,decay:.5,sweep:1.5},error:{type:"sawtooth",freq:233,dur:.25,vol:.1,attack:.005,decay:.25,sweep:.6},run:{type:"triangle",freq:1175,dur:.3,vol:.1,attack:.001,decay:.3,sweep:1.4},save:{type:"triangle",freq:880,dur:.4,vol:.1,attack:.001,decay:.4},modalOpen:{type:"triangle",freq:988,dur:.18,vol:.06,attack:.001,decay:.18,sweep:1.4},modalClose:{type:"triangle",freq:988,dur:.18,vol:.06,attack:.001,decay:.18,sweep:.65}},m3={click:{type:"square",freq:1200,dur:.025,vol:.06,attack:.001,decay:.025},hover:{type:"square",freq:1800,dur:.012,vol:.025,attack:.001,decay:.012},type:{type:"square",freq:880,dur:.018,vol:.05,attack:5e-4,decay:.018},success:{type:"square",freq:1318,dur:.18,vol:.08,attack:.001,decay:.18,sweep:1.5},error:{type:"sawtooth",freq:220,dur:.18,vol:.1,attack:.001,decay:.18,sweep:.5},run:{type:"square",freq:1568,dur:.1,vol:.1,attack:.001,decay:.1},save:{type:"square",freq:988,dur:.12,vol:.08,attack:.001,decay:.12,sweep:1.2},modalOpen:{type:"square",freq:1175,dur:.06,vol:.06,attack:.001,decay:.06,sweep:1.4},modalClose:{type:"square",freq:1175,dur:.06,vol:.06,attack:.001,decay:.06,sweep:.6}},h3={click:{type:"sawtooth",freq:180,dur:.05,vol:.07,attack:5e-4,decay:.05,lp:1400},hover:{type:"sawtooth",freq:320,dur:.012,vol:.025,attack:5e-4,decay:.012,lp:2e3},type:{type:"square",freq:140,dur:.03,vol:.05,attack:5e-4,decay:.03,lp:800},success:{type:"sawtooth",freq:440,dur:.18,vol:.1,attack:.001,decay:.18,sweep:1.3,lp:1600},error:{type:"sawtooth",freq:90,dur:.5,vol:.12,attack:.001,decay:.5,lp:400},run:{type:"square",freq:220,dur:.2,vol:.1,attack:.001,decay:.2,sweep:1.2,lp:1200},save:{type:"sawtooth",freq:330,dur:.18,vol:.1,attack:.001,decay:.18,lp:1400},modalOpen:{type:"sawtooth",freq:196,dur:.1,vol:.07,attack:.001,decay:.1,lp:1e3},modalClose:{type:"sawtooth",freq:196,dur:.08,vol:.06,attack:.001,decay:.08,sweep:.5,lp:700}},g3={click:{type:"sine",freq:220,dur:.08,vol:.06,attack:.005,decay:.08,lp:600},hover:{type:"sine",freq:330,dur:.025,vol:.02,attack:.005,decay:.025,lp:800},type:{type:"sine",freq:165,dur:.04,vol:.04,attack:.005,decay:.04,lp:400},success:{type:"triangle",freq:261,dur:.8,vol:.08,attack:.02,decay:.8,sweep:1.5,lp:1200},error:{type:"sawtooth",freq:73,dur:.6,vol:.1,attack:.01,decay:.6,lp:300},run:{type:"sine",freq:196,dur:.45,vol:.1,attack:.02,decay:.45,sweep:1.3,lp:800},save:{type:"sine",freq:174,dur:.7,vol:.1,attack:.05,decay:.7,lp:700},modalOpen:{type:"sine",freq:220,dur:.5,vol:.07,attack:.05,decay:.5,lp:600},modalClose:{type:"sine",freq:220,dur:.4,vol:.06,attack:.005,decay:.4,sweep:.6,lp:500}},x3={click:{type:"triangle",freq:392,dur:.1,vol:.06,attack:.001,decay:.1,lp:1500},hover:{type:"sine",freq:660,dur:.025,vol:.025,attack:.001,decay:.025},type:{type:"square",freq:220,dur:.025,vol:.04,attack:.001,decay:.025,lp:800},success:{type:"triangle",freq:523,dur:1,vol:.09,attack:.001,decay:1},error:{type:"sawtooth",freq:110,dur:.6,vol:.1,attack:.005,decay:.6,lp:500},run:{type:"triangle",freq:440,dur:.6,vol:.1,attack:.001,decay:.6},save:{type:"triangle",freq:392,dur:.9,vol:.1,attack:.001,decay:.9},modalOpen:{type:"triangle",freq:523,dur:.4,vol:.07,attack:.001,decay:.4},modalClose:{type:"triangle",freq:392,dur:.4,vol:.06,attack:.001,decay:.4}},y3={click:{type:"square",freq:1500,dur:.012,vol:.07,attack:5e-4,decay:.012},hover:{type:"square",freq:2200,dur:.006,vol:.02,attack:5e-4,decay:.006},type:{type:"square",freq:1100,dur:.01,vol:.05,attack:5e-4,decay:.01},success:{type:"square",freq:1318,dur:.1,vol:.08,attack:5e-4,decay:.1},error:{type:"sawtooth",freq:220,dur:.4,vol:.12,attack:5e-4,decay:.4},run:{type:"square",freq:1760,dur:.06,vol:.1,attack:5e-4,decay:.06},save:{type:"square",freq:1175,dur:.08,vol:.08,attack:5e-4,decay:.08},modalOpen:{type:"square",freq:988,dur:.05,vol:.07,attack:5e-4,decay:.05},modalClose:{type:"square",freq:988,dur:.04,vol:.06,attack:5e-4,decay:.04,sweep:.6}},Ty={none:{},parchment:c3,marble:u3,ink:d3,clockwork:f3,vibraphone:p3,terminal:m3,scrap:h3,crypt:g3,bell:x3,telex:y3},Hn={setEnabled(t){cr=t},isEnabled(){return cr},setPack(t){vp=t,du=Ty[t]??Ty.none},pack(){return vp},unlock(){const t=Zp();t&&t.state==="suspended"&&t.resume()},play(t){const e=i3[t];if(e!==void 0){const s=typeof performance<"u"?performance.now():Date.now(),r=zy[t]??0;if(s-r<e)return;zy[t]=s}My(du[t])},diagnose(){const t=typeof window<"u"?window.AudioContext||window.webkitAudioContext:void 0,e=typeof document<"u"?getComputedStyle(document.documentElement).getPropertyValue("--sound-pack").trim().replace(/['"]/g,""):"",s=typeof document<"u"?document.documentElement.getAttribute("data-theme"):null;return{enabled:cr,pack:vp,eventsForPack:Object.keys(du),cssSoundPack:e,cssDataTheme:s,audioContextState:t?pl?pl.state:"no-ac":"no-audio-api",browserSupport:!!t}},test(t="click"){const e=du[t];if(!e||!Zp())return!1;const r=cr;cr=!0;try{return My(e),!0}finally{cr=r}}};function on({className:t,type:e,onChange:s,...r}){const c=s?u=>{Hn.play("type"),s(u)}:void 0;return i.jsx("input",{type:e,"data-slot":"input",onChange:c,className:Ne("input h-8 w-full min-w-0 rounded-lg border border-input bg-transparent px-2.5 py-1 text-base transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",t),...r})}const Zu=({nodeId:t,label:e,defaultLabel:s,onLabelChange:r,onActivate:c,className:u})=>{const f=De(w=>w.renamingNodeId),d=De(w=>w.setRenamingNodeId),[h,g]=j.useState(!1),[x,y]=j.useState(""),b=j.useRef(null);j.useEffect(()=>{f===t?(g(!0),y(e||s)):g(!1)},[f,t,e,s]),j.useEffect(()=>{h&&b.current&&(b.current.focus(),b.current.select())},[h]);const k=j.useCallback(()=>{const w=x.trim();w&&w!==(e||s)&&r(w),g(!1),d(null)},[x,e,s,r,d]),S=j.useCallback(()=>{g(!1),d(null)},[d]);return h?i.jsx(on,{ref:b,type:"text",value:x,onChange:w=>y(w.target.value),onKeyDown:w=>{w.key==="Enter"?k():w.key==="Escape"&&S(),w.stopPropagation()},onBlur:k,onClick:w=>w.stopPropagation(),className:Ne("sq-node-label node-label mt-2 h-auto max-w-[120px] border-accent px-1 py-0.5 text-center text-xs font-medium",u)}):i.jsx("div",{onDoubleClick:c,title:"Double-click to rename",className:Ne("sq-node-label node-label mt-2 max-w-[120px] cursor-text text-center text-xs leading-tight font-medium text-foreground",u),children:e||s})},ns=28,sv=t=>{const e=Fe.c(2),{size:s}=t,r=s===void 0?ns:s;let c;return e[0]!==r?(c=i.jsx(i0.Avatar,{size:r}),e[0]=r,e[1]=c):c=e[1],c},av=t=>{const e=Fe.c(2),{size:s}=t,r=s===void 0?ns:s;let c;return e[0]!==r?(c=i.jsx(l0.Color,{size:r}),e[0]=r,e[1]=c):c=e[1],c},rv=t=>{const e=Fe.c(2),{size:s}=t,r=s===void 0?ns:s;let c;return e[0]!==r?(c=i.jsx(r0.Color,{size:r}),e[0]=r,e[1]=c):c=e[1],c},lv=t=>{const e=Fe.c(2),{size:s}=t,r=s===void 0?ns:s;let c;return e[0]!==r?(c=i.jsx(a0.Avatar,{size:r}),e[0]=r,e[1]=c):c=e[1],c},iv=t=>{const e=Fe.c(2),{size:s}=t,r=s===void 0?ns:s;let c;return e[0]!==r?(c=i.jsx(o0.Avatar,{size:r}),e[0]=r,e[1]=c):c=e[1],c},cv=t=>{const e=Fe.c(2),{size:s}=t,r=s===void 0?ns:s;let c;return e[0]!==r?(c=i.jsx(s0.Color,{size:r}),e[0]=r,e[1]=c):c=e[1],c},b3=t=>{const e=Fe.c(2),{size:s}=t,r=s===void 0?ns:s;let c;return e[0]!==r?(c=i.jsx(n0.Color,{size:r}),e[0]=r,e[1]=c):c=e[1],c},v3=t=>{const e=Fe.c(2),{size:s}=t,r=s===void 0?ns:s;let c;return e[0]!==r?(c=i.jsx(t0.Color,{size:r}),e[0]=r,e[1]=c):c=e[1],c},w3=t=>{const e=Fe.c(2),{size:s}=t,r=s===void 0?ns:s;let c;return e[0]!==r?(c=i.jsx(e0.Color,{size:r}),e[0]=r,e[1]=c):c=e[1],c},k3=t=>{const e=Fe.c(2),{size:s}=t,r=s===void 0?ns:s;let c;return e[0]!==r?(c=i.jsx(Jb.Avatar,{size:r}),e[0]=r,e[1]=c):c=e[1],c},S3=t=>{const e=Fe.c(2),{size:s}=t,r=s===void 0?ns:s;let c;return e[0]!==r?(c=i.jsx(Xb.Avatar,{size:r}),e[0]=r,e[1]=c):c=e[1],c},Vp={openai:{iconRef:"lobehub:OpenAI",Icon:sv,color:Xe.green,label:"OpenAI"},anthropic:{iconRef:"lobehub:Claude",Icon:av,color:Xe.orange,label:"Anthropic"},gemini:{iconRef:"lobehub:Gemini",Icon:rv,color:kn.blue,label:"Gemini"},groq:{iconRef:"lobehub:Groq",Icon:lv,color:Xe.red,label:"Groq"},cerebras:{iconRef:"lobehub:Cerebras",Icon:cv,color:Xe.orange,label:"Cerebras"},openrouter:{iconRef:"lobehub:OpenRouter",Icon:iv,color:kn.violet,label:"OpenRouter"},deepseek:{iconRef:"lobehub:DeepSeek",Icon:b3,color:Xe.cyan,label:"DeepSeek"},kimi:{iconRef:"lobehub:Kimi",Icon:v3,color:Xe.purple,label:"Kimi"},mistral:{iconRef:"lobehub:Mistral",Icon:w3,color:Xe.pink,label:"Mistral"},ollama:{iconRef:"lobehub:Ollama",Icon:k3,color:Xe.foreground,label:"Ollama"},lmstudio:{iconRef:"lobehub:LmStudio",Icon:S3,color:kn.cyan,label:"LM Studio"}},_3=["openai","anthropic","gemini","openrouter","groq","cerebras","deepseek","kimi","mistral","ollama","lmstudio"],uv=Object.fromEntries(_3.map(t=>[`${t}ChatModel`,t]));Object.entries(Vp).map(([t,e])=>({name:e.label,value:t}));const j3=t=>(t?.group||[]).includes("tool"),wp=uv,Ay={googleMapsApi:"google_maps",openaiApi:"openai",anthropicApi:"anthropic",googleAiApi:"gemini"},N3=({id:t,type:e,data:s,isConnectable:r,selected:c})=>{const u=ts(),f=De(Ce=>Ce.setSelectedNode),d=De(Ce=>Ce.setRenamingNodeId),h=De(Ce=>Ce.updateNodeData),g=s?.disabled===!0,{androidStatus:x,getApiKeyStatus:y}=Ct(),b=Mm(t),k=b?.status||"idle",[S,w]=j.useState(!1),_=j.useRef(null);j.useEffect(()=>(k==="executing"||k==="waiting"?(w(!0),_.current&&(clearTimeout(_.current),_.current=null)):S&&(_.current||(_.current=setTimeout(()=>{w(!1),_.current=null},500))),()=>{_.current&&(clearTimeout(_.current),_.current=null)}),[k,S]);const N=Ce=>Ce?fn(Ce)?.group??[]:[],L=(Ce,ce)=>Am(Ce,ce)??N(Ce).includes(ce),z=L(e,"location"),O=z?y("google_maps"):void 0,I=e?e in wp:!1,q=e&&wp[e]?wp[e]:null,M=q?y(q):void 0,E=fn(e||""),$=L(e,"android"),Q=$||j3(E),H=$&&x.paired,R=L(e,"whatsapp"),D=H0(),U=k==="executing"||k==="waiting"||S,W=E?.displayName||e||"",T=j.useCallback(Ce=>h(t,{label:Ce}),[t,h]),A=j.useCallback(()=>d(t),[t,d]),K=j.useMemo(()=>{const Ce=E?.credentials?.[0]?.name;return Ce&&Ay[Ce]?Ay[Ce]:e?.includes("map")||e?.includes("location")?"google_maps":""},[E?.credentials,e]),ne=w8(K),X=ne&&!!s&&Object.keys(s).length>0,ue=Ce=>{Ce.stopPropagation(),f({id:t,type:e,data:s,position:{x:0,y:0}})},fe=k==="executing"||k==="waiting"||S?"executing":k==="success"?"success":k==="error"?"error":$?H?"success":"error":R?D.connected?"success":D.pairing?"waiting":"error":z&&O?O.valid?"success":"error":I?M?.valid&&ne?"success":ne?"waiting":"error":X?"success":ne?"waiting":"idle",pe=()=>{switch(k){case"executing":return"Executing...";case"waiting":return b?.message||"Waiting for event...";case"success":return"Execution successful";case"error":return`Error: ${b?.data?.error||"Unknown error"}`;default:return $?H?"Android device connected":"Android device not connected":R?D.connected?"WhatsApp connected":D.pairing?"Pairing in progress...":D.running?"WhatsApp service running":"WhatsApp not connected":z&&O?O.valid?"Google Maps API key validated":`API key invalid: ${O.message||"Validation failed"}`:I?M?.valid&&ne?`${q?.charAt(0).toUpperCase()}${q?.slice(1)} API key validated`:ne?"API key found, validation pending":"API key required - configure in Credentials":X?"Service configured and ready":ne?"API key found, service needs configuration":"API key required"}},je=Zi(e)?.icon??E?.icon,ve=E?.defaults?.color||"#1A73E8";return i.jsxs("div",{className:`sq-node ${c?"selected":""}`,"data-executing":U?"":void 0,style:{"--node-color":ve,position:"relative",display:"flex",flexDirection:"column",alignItems:"center",fontFamily:"system-ui, -apple-system, sans-serif",fontSize:"11px",cursor:"pointer"},children:[i.jsxs("div",{className:"sq-node-box",style:{"--node-color":ve,position:"relative",width:u.nodeSize.square,height:u.nodeSize.square,display:"flex",alignItems:"center",justifyContent:"center",color:u.colors.text,fontSize:u.nodeSize.squareIcon,fontWeight:"600",transition:"all 0.2s ease",opacity:g?.5:1},children:[g&&i.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(128, 128, 128, 0.4)",borderRadius:"inherit",zIndex:35,display:"flex",alignItems:"center",justifyContent:"center",pointerEvents:"none"},children:i.jsx("span",{style:{fontSize:"20px",opacity:.8,color:u.colors.textSecondary},children:"||"})}),i.jsx(Co,{icon:je,className:"h-7 w-7 text-3xl"}),i.jsx("button",{onClick:ue,style:{position:"absolute",top:"-8px",right:"-8px",width:u.nodeSize.paramButton,height:u.nodeSize.paramButton,fontSize:u.fontSize.xs,zIndex:30},title:"Edit Service Parameters",className:"sq-node-gear",children:"⚙️"}),i.jsx("div",{className:"sq-node-pip","data-status":fe,style:{position:"absolute",top:"-4px",left:"-4px",width:u.nodeSize.statusIndicator,height:u.nodeSize.statusIndicator,zIndex:30},title:pe()}),!Vo(e||"")?.hideInputHandle&&i.jsx(Pn,{id:"input-main",type:"target",position:$n.Left,isConnectable:r,className:"sq-node-handle in",style:{position:"absolute",left:"-6px",top:"50%",transform:"translateY(-50%)",width:u.nodeSize.handle,height:u.nodeSize.handle,zIndex:20},title:"Service Input"}),!Vo(e||"")?.hideOutputHandle&&i.jsx(Pn,{id:"output-main",type:"source",position:$n.Right,isConnectable:r,className:"sq-node-handle out",style:{"--node-color":X?ve:u.colors.textSecondary,position:"absolute",right:"-6px",top:"50%",transform:"translateY(-50%)",width:u.nodeSize.handle,height:u.nodeSize.handle,zIndex:20},title:"Service Output"}),Q&&(()=>{const te=Vo(e||"")?.handles?.find(Oe=>Oe.kind==="output"&&Oe.position==="top")?.label??"Tool Output";return i.jsx(Pn,{id:"output-tool",type:"source",position:$n.Top,isConnectable:r,className:"sq-node-handle out",style:{"--node-color":ve,position:"absolute",top:"-6px",left:"50%",transform:"translateX(-50%)",width:u.nodeSize.handle,height:u.nodeSize.handle,zIndex:20},title:te})})(),k==="success"&&b?.data&&i.jsx("div",{style:{position:"absolute",bottom:"-4px",right:"-4px",width:u.nodeSize.outputBadge,height:u.nodeSize.outputBadge,borderRadius:u.borderRadius.sm,backgroundColor:u.dracula.green,border:`1px solid ${u.isDarkMode?u.colors.background:"#ffffff"}`,display:"flex",alignItems:"center",justifyContent:"center",fontSize:u.fontSize.xs,color:"white",fontWeight:"bold",zIndex:30,boxShadow:u.isDarkMode?"0 1px 3px rgba(0,0,0,0.2)":"0 1px 3px rgba(0,0,0,0.15)"},title:"Output data available - click node to view",children:i.jsx("span",{style:{lineHeight:1},children:"D"})})]}),i.jsx(Zu,{nodeId:t,label:s?.label,defaultLabel:W,onLabelChange:T,onActivate:A})]})},Si=j.memo(N3,jl),C3=t=>{const e=Fe.c(97),{id:s,type:r,data:c,isConnectable:u,selected:f}=t,d=ts(),h=De(E3),g=De(z3),x=De(M3),[y,b]=j.useState(!1),k=c?.disabled===!0,S=Mm(s),w=S?.status||"idle",_=r==="whatsappReceive",N=H0(),L=w==="executing"||w==="waiting",z=r||"";let O;e[0]!==z?(O=fn(z),e[0]=z,e[1]=O):O=e[1];const I=O;let q,M;e[2]!==c?(q=()=>{const He=c&&Object.keys(c).length>0;b(He)},M=[c],e[2]=c,e[3]=q,e[4]=M):(q=e[3],M=e[4]),j.useEffect(q,M);const E=I?.displayName||r||"";let $;e[5]!==s||e[6]!==x?($=He=>x(s,{label:He}),e[5]=s,e[6]=x,e[7]=$):$=e[7];const Q=$;let H;e[8]!==s||e[9]!==g?(H=()=>g(s),e[8]=s,e[9]=g,e[10]=H):H=e[10];const R=H;let D;e[11]!==c||e[12]!==s||e[13]!==h||e[14]!==r?(D=He=>{He.stopPropagation(),h({id:s,type:r,data:c,position:{x:0,y:0}})},e[11]=c,e[12]=s,e[13]=h,e[14]=r,e[15]=D):D=e[15];const U=D;let W;e:{if(w==="executing"||w==="waiting"){W="executing";break e}if(w==="success"){W="success";break e}if(w==="error"){W="error";break e}if(_){if(N.connected){W="success";break e}if(N.pairing){W="waiting";break e}W="error";break e}W=y?"success":"idle"}const T=W;let A;e[16]!==w||e[17]!==y||e[18]!==_||e[19]!==S?.data?.error||e[20]!==S?.message||e[21]!==N?(A=()=>{switch(w){case"executing":return"Executing...";case"waiting":return S?.message||"Waiting for trigger event...";case"success":return"Trigger fired successfully";case"error":return`Error: ${S?.data?.error||"Unknown error"}`;default:return _?N.connected?"WhatsApp connected - ready to receive":N.pairing?"Pairing in progress...":"WhatsApp not connected":y?"Trigger configured and ready":"Click to configure trigger"}},e[16]=w,e[17]=y,e[18]=_,e[19]=S?.data?.error,e[20]=S?.message,e[21]=N,e[22]=A):A=e[22];const K=A,X=Zi(r)?.icon??I?.icon,ue=I?.defaults?.color||"#f59e0b",fe=`sq-node node-trigger ${f?"selected":""}`,pe=L?"":void 0;let we;e[23]!==ue?(we={"--node-color":ue,position:"relative",display:"flex",flexDirection:"column",alignItems:"center",fontFamily:"system-ui, -apple-system, sans-serif",fontSize:"11px",cursor:"pointer"},e[23]=ue,e[24]=we):we=e[24];const je=we,ve=k?.5:1;let Ce;e[25]!==ve||e[26]!==d.colors.text||e[27]!==d.nodeSize.square||e[28]!==d.nodeSize.squareIcon?(Ce={position:"relative",width:d.nodeSize.square,height:d.nodeSize.square,display:"flex",alignItems:"center",justifyContent:"center",color:d.colors.text,fontSize:d.nodeSize.squareIcon,fontWeight:"600",opacity:ve},e[25]=ve,e[26]=d.colors.text,e[27]=d.nodeSize.square,e[28]=d.nodeSize.squareIcon,e[29]=Ce):Ce=e[29];let ce;e[30]!==k||e[31]!==d.colors.textSecondary?(ce=k&&i.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(128, 128, 128, 0.4)",borderRadius:"inherit",zIndex:35,display:"flex",alignItems:"center",justifyContent:"center",pointerEvents:"none"},children:i.jsx("span",{style:{fontSize:"20px",opacity:.8,color:d.colors.textSecondary},children:"||"})}),e[30]=k,e[31]=d.colors.textSecondary,e[32]=ce):ce=e[32];let te;e[33]!==X?(te=i.jsx(Co,{icon:X,className:"h-7 w-7 text-3xl"}),e[33]=X,e[34]=te):te=e[34];let Oe;e[35]!==d.fontSize.xs||e[36]!==d.nodeSize.paramButton||e[37]!==d.transitions.fast?(Oe={position:"absolute",top:"-8px",right:"-8px",width:d.nodeSize.paramButton,height:d.nodeSize.paramButton,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:d.fontSize.xs,fontWeight:"400",transition:d.transitions.fast,zIndex:30},e[35]=d.fontSize.xs,e[36]=d.nodeSize.paramButton,e[37]=d.transitions.fast,e[38]=Oe):Oe=e[38];let B;e[39]!==U||e[40]!==Oe?(B=i.jsx("button",{onClick:U,className:"sq-node-gear",style:Oe,title:"Configure Trigger",children:"⚙️"}),e[39]=U,e[40]=Oe,e[41]=B):B=e[41];let F;e[42]!==d.nodeSize.statusIndicator?(F={position:"absolute",top:"-4px",left:"-4px",width:d.nodeSize.statusIndicator,height:d.nodeSize.statusIndicator,zIndex:30},e[42]=d.nodeSize.statusIndicator,e[43]=F):F=e[43];let oe;e[44]!==K?(oe=K(),e[44]=K,e[45]=oe):oe=e[45];let me;e[46]!==T||e[47]!==F||e[48]!==oe?(me=i.jsx("div",{className:"sq-node-pip","data-status":T,style:F,title:oe}),e[46]=T,e[47]=F,e[48]=oe,e[49]=me):me=e[49];const Ke=`1px solid ${d.isDarkMode?d.colors.background:"#ffffff"}`,tt=d.isDarkMode?`0 1px 3px ${d.colors.shadow}`:"0 1px 3px rgba(0,0,0,0.15)";let lt;e[50]!==Ke||e[51]!==tt||e[52]!==d.borderRadius.sm||e[53]!==d.dracula.yellow||e[54]!==d.fontSize.xs||e[55]!==d.nodeSize.outputBadge?(lt={position:"absolute",bottom:"-4px",left:"-4px",width:d.nodeSize.outputBadge,height:d.nodeSize.outputBadge,borderRadius:d.borderRadius.sm,backgroundColor:d.dracula.yellow,border:Ke,display:"flex",alignItems:"center",justifyContent:"center",fontSize:d.fontSize.xs,zIndex:30,boxShadow:tt},e[50]=Ke,e[51]=tt,e[52]=d.borderRadius.sm,e[53]=d.dracula.yellow,e[54]=d.fontSize.xs,e[55]=d.nodeSize.outputBadge,e[56]=lt):lt=e[56];const yt=d.isDarkMode?d.colors.background:"#1a1d21";let bt;e[57]!==yt?(bt=i.jsx("span",{style:{lineHeight:1,color:yt},children:"⚡"}),e[57]=yt,e[58]=bt):bt=e[58];let re;e[59]!==lt||e[60]!==bt?(re=i.jsx("div",{style:lt,title:"Trigger Node - Starts workflow execution",children:bt}),e[59]=lt,e[60]=bt,e[61]=re):re=e[61];let qe;e[62]!==d.nodeSize.handle?(qe={position:"absolute",right:"-6px",top:"50%",transform:"translateY(-50%)",width:d.nodeSize.handle,height:d.nodeSize.handle,zIndex:20},e[62]=d.nodeSize.handle,e[63]=qe):qe=e[63];let Ye;e[64]!==u||e[65]!==qe?(Ye=i.jsx(Pn,{id:"output-main",type:"source",position:$n.Right,isConnectable:u,className:"sq-node-handle out",style:qe,title:"Trigger Output"}),e[64]=u,e[65]=qe,e[66]=Ye):Ye=e[66];let at;e[67]!==w||e[68]!==S?.data||e[69]!==d.borderRadius.sm||e[70]!==d.colors.background||e[71]!==d.dracula.green||e[72]!==d.fontSize.xs||e[73]!==d.isDarkMode||e[74]!==d.nodeSize.outputBadge?(at=w==="success"&&S?.data&&i.jsx("div",{style:{position:"absolute",bottom:"-4px",right:"-4px",width:d.nodeSize.outputBadge,height:d.nodeSize.outputBadge,borderRadius:d.borderRadius.sm,backgroundColor:d.dracula.green,border:`1px solid ${d.isDarkMode?d.colors.background:"#ffffff"}`,display:"flex",alignItems:"center",justifyContent:"center",fontSize:d.fontSize.xs,color:"white",fontWeight:"bold",zIndex:30,boxShadow:d.isDarkMode?"0 1px 3px rgba(0,0,0,0.2)":"0 1px 3px rgba(0,0,0,0.15)"},title:"Output data available - click node to view",children:i.jsx("span",{style:{lineHeight:1},children:"D"})}),e[67]=w,e[68]=S?.data,e[69]=d.borderRadius.sm,e[70]=d.colors.background,e[71]=d.dracula.green,e[72]=d.fontSize.xs,e[73]=d.isDarkMode,e[74]=d.nodeSize.outputBadge,e[75]=at):at=e[75];let it;e[76]!==Ce||e[77]!==ce||e[78]!==te||e[79]!==B||e[80]!==me||e[81]!==re||e[82]!==Ye||e[83]!==at?(it=i.jsxs("div",{className:"sq-node-box",style:Ce,children:[ce,te,B,me,re,Ye,at]}),e[76]=Ce,e[77]=ce,e[78]=te,e[79]=B,e[80]=me,e[81]=re,e[82]=Ye,e[83]=at,e[84]=it):it=e[84];const kt=c?.label;let he;e[85]!==E||e[86]!==R||e[87]!==Q||e[88]!==s||e[89]!==kt?(he=i.jsx(Zu,{nodeId:s,label:kt,defaultLabel:E,onLabelChange:Q,onActivate:R}),e[85]=E,e[86]=R,e[87]=Q,e[88]=s,e[89]=kt,e[90]=he):he=e[90];let Re;return e[91]!==fe||e[92]!==pe||e[93]!==je||e[94]!==it||e[95]!==he?(Re=i.jsxs("div",{className:fe,"data-executing":pe,style:je,children:[it,he]}),e[91]=fe,e[92]=pe,e[93]=je,e[94]=it,e[95]=he,e[96]=Re):Re=e[96],Re},L3=j.memo(C3,jl);function E3(t){return t.setSelectedNode}function z3(t){return t.setRenamingNodeId}function M3(t){return t.updateNodeData}const T3=["androidTool"],A3=t=>{const e=Fe.c(80),{id:s,type:r,data:c,isConnectable:u,selected:f}=t,d=ts(),h=De(R3),g=De(D3),x=De(I3),{getNodeStatus:y}=Ct();let b;e[0]!==y||e[1]!==s?(b=y(s),e[0]=y,e[1]=s,e[2]=b):b=e[2];const k=b,S=k?.status||"idle",w=r||"";let _;e[3]!==w?(_=fn(w),e[3]=w,e[4]=_):_=e[4];const N=_;let L;e[5]!==r?(L=r?T3.includes(r):!1,e[5]=r,e[6]=L):L=e[6];const z=L,O=S==="executing"||S==="waiting",I=N?.displayName||r||"";let q;e[7]!==c||e[8]!==s||e[9]!==x?(q=bt=>x(s,{...c,label:bt}),e[7]=c,e[8]=s,e[9]=x,e[10]=q):q=e[10];const M=q;let E;e[11]!==s||e[12]!==g?(E=()=>g(s),e[11]=s,e[12]=g,e[13]=E):E=e[13];const $=E;let Q;e[14]!==c||e[15]!==s||e[16]!==h||e[17]!==r?(Q=bt=>{bt.stopPropagation(),h({id:s,type:r,data:c,position:{x:0,y:0}})},e[14]=c,e[15]=s,e[16]=h,e[17]=r,e[18]=Q):Q=e[18];const H=Q,R=N?.defaults?.color||"#3DDC84",U=Zi(r)?.icon??N?.icon;let W;e:{if(O){W="executing";break e}if(S==="success"){W="success";break e}if(S==="error"){W="error";break e}W="success"}const T=W,A=`sq-node ${f?"selected":""}`,K=O?"":void 0;let ne;e[19]!==R?(ne={"--node-color":R,position:"relative",display:"flex",flexDirection:"column",alignItems:"center",fontFamily:"system-ui, -apple-system, sans-serif",fontSize:"11px",cursor:"pointer"},e[19]=R,e[20]=ne):ne=e[20];const X=ne,ue=z?d.nodeSize.toolkitWidth:d.nodeSize.square,fe=z?d.nodeSize.toolkitHeight:d.nodeSize.square;let pe;e[21]!==ue||e[22]!==fe||e[23]!==d.colors.text||e[24]!==d.nodeSize.squareIcon?(pe={position:"relative",width:ue,height:fe,display:"flex",alignItems:"center",justifyContent:"center",color:d.colors.text,fontSize:d.nodeSize.squareIcon,fontWeight:"600"},e[21]=ue,e[22]=fe,e[23]=d.colors.text,e[24]=d.nodeSize.squareIcon,e[25]=pe):pe=e[25];let we;e[26]!==U?(we=i.jsx(Co,{icon:U,className:"h-7 w-7 text-3xl"}),e[26]=U,e[27]=we):we=e[27];let je;e[28]!==d.fontSize.xs||e[29]!==d.nodeSize.paramButton||e[30]!==d.transitions.fast?(je={position:"absolute",top:"-8px",right:"-8px",width:d.nodeSize.paramButton,height:d.nodeSize.paramButton,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:d.fontSize.xs,fontWeight:"400",transition:d.transitions.fast,zIndex:30},e[28]=d.fontSize.xs,e[29]=d.nodeSize.paramButton,e[30]=d.transitions.fast,e[31]=je):je=e[31];let ve;e[32]!==H||e[33]!==je?(ve=i.jsx("button",{onClick:H,className:"sq-node-gear",style:je,title:"Edit Toolkit Parameters",children:"⚙️"}),e[32]=H,e[33]=je,e[34]=ve):ve=e[34];let Ce;e[35]!==d.nodeSize.statusIndicator?(Ce={position:"absolute",top:"-4px",left:"-4px",width:d.nodeSize.statusIndicator,height:d.nodeSize.statusIndicator,zIndex:30},e[35]=d.nodeSize.statusIndicator,e[36]=Ce):Ce=e[36];const ce=O?"Executing...":"Toolkit ready";let te;e[37]!==T||e[38]!==Ce||e[39]!==ce?(te=i.jsx("div",{className:"sq-node-pip","data-status":T,style:Ce,title:ce}),e[37]=T,e[38]=Ce,e[39]=ce,e[40]=te):te=e[40];let Oe;e[41]!==d.nodeSize.handle?(Oe={position:"absolute",top:"-6px",left:"50%",transform:"translateX(-50%)",width:d.nodeSize.handle,height:d.nodeSize.handle,zIndex:20},e[41]=d.nodeSize.handle,e[42]=Oe):Oe=e[42];const B=z?"Connect to AI Agent's tool input":"Connect to agent's skill input";let F;e[43]!==u||e[44]!==Oe||e[45]!==B?(F=i.jsx(Pn,{id:"output-main",type:"source",position:$n.Top,isConnectable:u,className:"sq-node-handle out",style:Oe,title:B}),e[43]=u,e[44]=Oe,e[45]=B,e[46]=F):F=e[46];let oe;e[47]!==u||e[48]!==z||e[49]!==d.nodeSize.handle?(oe=z&&i.jsx(Pn,{id:"input-services",type:"target",position:$n.Bottom,isConnectable:u,className:"sq-node-handle in",style:{position:"absolute",bottom:"-6px",left:"50%",transform:"translateX(-50%)",width:d.nodeSize.handle,height:d.nodeSize.handle,zIndex:20},title:"Connect Android service nodes"}),e[47]=u,e[48]=z,e[49]=d.nodeSize.handle,e[50]=oe):oe=e[50];let me;e[51]!==S||e[52]!==k?.data||e[53]!==d.borderRadius||e[54]!==d.colors.background||e[55]!==d.dracula||e[56]!==d.fontSize.xs||e[57]!==d.isDarkMode||e[58]!==d.nodeSize.outputBadge?(me=S==="success"&&k?.data&&i.jsx("div",{style:{position:"absolute",bottom:"-4px",right:"-4px",width:d.nodeSize.outputBadge,height:d.nodeSize.outputBadge,borderRadius:d.borderRadius.sm,backgroundColor:d.dracula.green,border:`1px solid ${d.isDarkMode?d.colors.background:"#ffffff"}`,display:"flex",alignItems:"center",justifyContent:"center",fontSize:d.fontSize.xs,color:"white",fontWeight:"bold",zIndex:30,boxShadow:d.isDarkMode?"0 1px 3px rgba(0,0,0,0.2)":"0 1px 3px rgba(0,0,0,0.15)"},title:"Output data available",children:i.jsx("span",{style:{lineHeight:1},children:"D"})}),e[51]=S,e[52]=k?.data,e[53]=d.borderRadius,e[54]=d.colors.background,e[55]=d.dracula,e[56]=d.fontSize.xs,e[57]=d.isDarkMode,e[58]=d.nodeSize.outputBadge,e[59]=me):me=e[59];let Ke;e[60]!==pe||e[61]!==we||e[62]!==ve||e[63]!==te||e[64]!==F||e[65]!==oe||e[66]!==me?(Ke=i.jsxs("div",{className:"sq-node-box",style:pe,children:[we,ve,te,F,oe,me]}),e[60]=pe,e[61]=we,e[62]=ve,e[63]=te,e[64]=F,e[65]=oe,e[66]=me,e[67]=Ke):Ke=e[67];const tt=c?.label;let lt;e[68]!==I||e[69]!==$||e[70]!==M||e[71]!==s||e[72]!==tt?(lt=i.jsx(Zu,{nodeId:s,label:tt,defaultLabel:I,onLabelChange:M,onActivate:$}),e[68]=I,e[69]=$,e[70]=M,e[71]=s,e[72]=tt,e[73]=lt):lt=e[73];let yt;return e[74]!==K||e[75]!==X||e[76]!==Ke||e[77]!==lt||e[78]!==A?(yt=i.jsxs("div",{className:A,"data-executing":K,style:X,children:[Ke,lt]}),e[74]=K,e[75]=X,e[76]=Ke,e[77]=lt,e[78]=A,e[79]=yt):yt=e[79],yt},O3=j.memo(A3,jl);function R3(t){return t.setSelectedNode}function D3(t){return t.setRenamingNodeId}function I3(t){return t.updateNodeData}const $3=["ai_employee","orchestrator_agent"],q3=({id:t,type:e,data:s,isConnectable:r,selected:c})=>{const u=ts(),f=De(O=>O.setSelectedNode),{sendRequest:d}=Ct(),h=lS(),g=iS(),[x,y]=j.useState(null),[b,k]=j.useState(!1),w=fn(e||"")?.defaults?.color||"#8b5cf6",_=j.useMemo(()=>{const O=h.filter(I=>I.target===t);for(const I of O){const q=g.find(M=>M.id===I.source);if(q&&$3.includes(q.type||""))return q}return null},[h,g,t]),N=j.useCallback(async()=>{const O=s?.teamId;if(!(!O&&!_)){k(!0);try{const I=await d("get_team_status",{team_id:O,team_lead_node_id:_?.id});I?.status&&y({team_id:I.status.team_id||O||"",members:I.status.members||[],tasks:{total:I.status.task_count||0,completed:I.status.completed_count||0,active:I.status.active_count||0,pending:I.status.pending_count||0,failed:I.status.failed_count||0},active_tasks:I.status.active_tasks||[]})}catch(I){console.error("Failed to fetch team status:",I)}finally{k(!1)}}},[s?.teamId,_,d]);j.useEffect(()=>{const O=s?.refreshInterval||2e3;if(O>0&&(s?.teamId||_)){N();const I=setInterval(N,O);return()=>clearInterval(I)}},[s?.refreshInterval,s?.teamId,_,N]);const L=O=>{O.stopPropagation(),f({id:t,type:e,data:s,position:{x:0,y:0}})},z=O=>{switch(O){case"completed":return u.dracula.green;case"in_progress":return u.dracula.cyan;case"failed":return u.dracula.red;case"pending":return u.dracula.orange;default:return u.colors.textSecondary}};return i.jsxs("div",{className:`node ${c?"selected":""}`,onClick:L,style:{"--node-color":w,width:200,minHeight:120,fontFamily:"system-ui, -apple-system, sans-serif",fontSize:10,overflow:"hidden"},children:[i.jsxs("div",{style:{padding:"6px 8px",borderBottom:`1px solid ${u.colors.border}`,background:`${w}20`,display:"flex",alignItems:"center",gap:6},children:[i.jsx("span",{style:{fontSize:14},children:"📊"}),i.jsx("span",{style:{fontWeight:600,color:u.colors.text,fontSize:11},children:s?.label||"Team Monitor"})]}),i.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(4, 1fr)",gap:2,padding:"6px 4px",borderBottom:`1px solid ${u.colors.border}`},children:[i.jsxs("div",{style:{textAlign:"center"},children:[i.jsx("div",{style:{fontSize:12,fontWeight:"bold",color:u.dracula.purple},children:x?.members?.length||0}),i.jsx("div",{style:{fontSize:8,color:u.colors.textSecondary},children:"Team"})]}),i.jsxs("div",{style:{textAlign:"center"},children:[i.jsx("div",{style:{fontSize:12,fontWeight:"bold",color:u.dracula.cyan},children:x?.tasks?.total||0}),i.jsx("div",{style:{fontSize:8,color:u.colors.textSecondary},children:"Tasks"})]}),i.jsxs("div",{style:{textAlign:"center"},children:[i.jsx("div",{style:{fontSize:12,fontWeight:"bold",color:u.dracula.green},children:x?.tasks?.completed||0}),i.jsx("div",{style:{fontSize:8,color:u.colors.textSecondary},children:"Done"})]}),i.jsxs("div",{style:{textAlign:"center"},children:[i.jsx("div",{style:{fontSize:12,fontWeight:"bold",color:u.dracula.orange},children:x?.tasks?.active||0}),i.jsx("div",{style:{fontSize:8,color:u.colors.textSecondary},children:"Active"})]})]}),i.jsx("div",{style:{padding:"4px 6px",maxHeight:80,overflow:"auto"},children:!s?.teamId&&!_?i.jsx("div",{style:{color:u.colors.textSecondary,textAlign:"center",padding:8,fontSize:9},children:"Connect to AI Employee"}):b&&!x?i.jsx("div",{style:{color:u.colors.textSecondary,textAlign:"center",padding:8,fontSize:9},children:"Loading..."}):x?.active_tasks&&x.active_tasks.length>0?x.active_tasks.slice(0,3).map(O=>i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:4,padding:"2px 0",fontSize:9},children:[i.jsx("span",{style:{width:6,height:6,borderRadius:"50%",backgroundColor:z(O.status),flexShrink:0}}),i.jsx("span",{style:{color:u.colors.text,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1},children:O.title})]},O.id)):i.jsx("div",{style:{color:u.colors.textSecondary,textAlign:"center",padding:4,fontSize:9},children:"No active tasks"})}),i.jsx(Pn,{id:"input-team",type:"target",position:$n.Left,isConnectable:r,className:"node-handle in",style:{left:-6,top:"50%",width:10,height:10,borderRadius:"50%"}}),i.jsx(Pn,{id:"output-main",type:"source",position:$n.Right,isConnectable:r,className:"node-handle out",style:{right:-6,top:"50%",width:10,height:10,borderRadius:"50%"}})]})},H3=j.memo(q3,jl),U3=t=>{const e=Fe.c(42),{id:s,type:r,data:c,isConnectable:u,selected:f}=t,d=De(V3),h=De(W3),g=De(B3),x=ts(),y=r||"";let b;e[0]!==y?(b=fn(y),e[0]=y,e[1]=b):b=e[1];const S=b?.defaults?.color||x.dracula.cyan;let w;e[2]!==s||e[3]!==g?(w=X=>g(s,{label:X}),e[2]=s,e[3]=g,e[4]=w):w=e[4];const _=w;let N;e[5]!==s||e[6]!==h?(N=()=>h(s),e[5]=s,e[6]=h,e[7]=N):N=e[7];const L=N;let z;e[8]!==c||e[9]!==s||e[10]!==d||e[11]!==r?(z=X=>{X.stopPropagation(),d({id:s,type:r,data:c,position:{x:0,y:0}})},e[8]=c,e[9]=s,e[10]=d,e[11]=r,e[12]=z):z=e[12];const O=z,I=`sq-node ${f?"selected":""}`;let q;e[13]!==S?(q={"--node-color":S,position:"relative",display:"flex",flexDirection:"column",alignItems:"center",fontFamily:"system-ui, -apple-system, sans-serif",fontSize:"11px",cursor:"pointer"},e[13]=S,e[14]=q):q=e[14];const M=q;let E;e[15]!==x.colors.text?(E={position:"relative",width:"60px",height:"60px",display:"flex",alignItems:"center",justifyContent:"center",color:x.colors.text,fontSize:"28px",fontWeight:"600"},e[15]=x.colors.text,e[16]=E):E=e[16];let $;e[17]!==S?($=i.jsx(LS,{className:"h-7 w-7",style:{color:S}}),e[17]=S,e[18]=$):$=e[18];let Q;e[19]===Symbol.for("react.memo_cache_sentinel")?(Q={position:"absolute",top:"-8px",right:"-8px",width:"16px",height:"16px",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"8px",fontWeight:"400",zIndex:30},e[19]=Q):Q=e[19];let H;e[20]!==O?(H=i.jsx("button",{onClick:O,className:"sq-node-gear",style:Q,title:"Edit Parameters",children:"⚙️"}),e[20]=O,e[21]=H):H=e[21];let R;e[22]===Symbol.for("react.memo_cache_sentinel")?(R=i.jsx("div",{className:"sq-node-pip","data-status":"success",style:{position:"absolute",top:"-4px",left:"-4px",width:"10px",height:"10px",zIndex:30},title:"Workflow start point"}),e[22]=R):R=e[22];let D;e[23]===Symbol.for("react.memo_cache_sentinel")?(D=i.jsx(Pn,{id:"input-main",type:"target",position:$n.Left,isConnectable:!1,style:{visibility:"hidden",width:"1px",height:"1px"}}),e[23]=D):D=e[23];let U;e[24]===Symbol.for("react.memo_cache_sentinel")?(U={position:"absolute",right:"-6px",top:"50%",transform:"translateY(-50%)",width:"8px",height:"8px",zIndex:20},e[24]=U):U=e[24];let W;e[25]!==u?(W=i.jsx(Pn,{id:"output-main",type:"source",position:$n.Right,isConnectable:u,className:"sq-node-handle out",style:U,title:"Workflow Output"}),e[25]=u,e[26]=W):W=e[26];let T;e[27]!==$||e[28]!==H||e[29]!==W||e[30]!==E?(T=i.jsxs("div",{className:"sq-node-box",style:E,children:[$,H,R,D,W]}),e[27]=$,e[28]=H,e[29]=W,e[30]=E,e[31]=T):T=e[31];const A=c?.label;let K;e[32]!==L||e[33]!==_||e[34]!==s||e[35]!==A?(K=i.jsx(Zu,{nodeId:s,label:A,defaultLabel:"Start",onLabelChange:_,onActivate:L}),e[32]=L,e[33]=_,e[34]=s,e[35]=A,e[36]=K):K=e[36];let ne;return e[37]!==T||e[38]!==K||e[39]!==I||e[40]!==M?(ne=i.jsxs("div",{className:I,style:M,children:[T,K]}),e[37]=T,e[38]=K,e[39]=I,e[40]=M,e[41]=ne):ne=e[41],ne},Z3=j.memo(U3,jl);function V3(t){return t.setSelectedNode}function W3(t){return t.setRenamingNodeId}function B3(t){return t.updateNodeData}const kl={eq:{label:"Equals",description:"Value equals target",requiresValue:!0,valueType:"any"},neq:{label:"Not Equals",description:"Value does not equal target",requiresValue:!0,valueType:"any"},gt:{label:"Greater Than",description:"Value is greater than target",requiresValue:!0,valueType:"number"},lt:{label:"Less Than",description:"Value is less than target",requiresValue:!0,valueType:"number"},gte:{label:"Greater or Equal",description:"Value is greater than or equal to target",requiresValue:!0,valueType:"number"},lte:{label:"Less or Equal",description:"Value is less than or equal to target",requiresValue:!0,valueType:"number"},contains:{label:"Contains",description:"String/list contains value",requiresValue:!0,valueType:"string"},not_contains:{label:"Does Not Contain",description:"String/list does not contain value",requiresValue:!0,valueType:"string"},exists:{label:"Exists",description:"Field exists and is not null",requiresValue:!1},not_exists:{label:"Does Not Exist",description:"Field does not exist or is null",requiresValue:!1},is_empty:{label:"Is Empty",description:'Value is empty (null, "", [], {})',requiresValue:!1},is_not_empty:{label:"Is Not Empty",description:"Value is not empty",requiresValue:!1},matches:{label:"Matches Regex",description:"Value matches regex pattern",requiresValue:!0,valueType:"string"},in:{label:"In List",description:"Value is in list",requiresValue:!0,valueType:"array"},not_in:{label:"Not In List",description:"Value is not in list",requiresValue:!0,valueType:"array"},starts_with:{label:"Starts With",description:"String starts with value",requiresValue:!0,valueType:"string"},ends_with:{label:"Ends With",description:"String ends with value",requiresValue:!0,valueType:"string"},is_true:{label:"Is True",description:"Value is truthy",requiresValue:!1},is_false:{label:"Is False",description:"Value is falsy",requiresValue:!1},is_string:{label:"Is String",description:"Value is a string",requiresValue:!1},is_number:{label:"Is Number",description:"Value is a number",requiresValue:!1},is_boolean:{label:"Is Boolean",description:"Value is a boolean",requiresValue:!1},is_array:{label:"Is Array",description:"Value is an array",requiresValue:!1},is_object:{label:"Is Object",description:"Value is an object",requiresValue:!1}};function F3(){return{Equality:["eq","neq"],Comparison:["gt","lt","gte","lte"],Contains:["contains","not_contains"],Existence:["exists","not_exists"],Empty:["is_empty","is_not_empty"],Pattern:["matches","starts_with","ends_with"],List:["in","not_in"],Boolean:["is_true","is_false"],Type:["is_string","is_number","is_boolean","is_array","is_object"]}}function dv(t){const e=kl[t.operator];if(!e)return"";if(!e.requiresValue)return`${t.field} ${e.label.toLowerCase()}`;const s=Array.isArray(t.value)?`[${t.value.join(", ")}]`:String(t.value);return`${t.field} ${e.label.toLowerCase()} ${s}`}function G3(t){return!t.field||t.field.trim()===""?{valid:!1,error:"Field is required"}:!t.operator||!kl[t.operator]?{valid:!1,error:"Invalid operator"}:kl[t.operator].requiresValue&&(t.value===void 0||t.value==="")?{valid:!1,error:"Value is required for this operator"}:{valid:!0}}const Q3=Iu("btn group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground [a]:hover:bg-primary/80",outline:"border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",ghost:"hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50",destructive:"bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",xs:"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",lg:"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",icon:"size-8","icon-xs":"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg","icon-lg":"size-9"}},defaultVariants:{variant:"default",size:"default"}});function Ut({className:t,variant:e="default",size:s="default",asChild:r=!1,onClick:c,...u}){const f=r?Nm:"button",d=c?h=>{Hn.play("click"),c(h)}:h=>{Hn.play("click")};return i.jsx(f,{"data-slot":"button","data-variant":e,"data-size":s,className:Ne(Q3({variant:e,size:s,className:t})),onClick:d,...u})}function Im({...t}){return i.jsx(c_,{"data-slot":"dialog",...t})}function $m({...t}){return i.jsx(u_,{"data-slot":"dialog-portal",...t})}function K3({...t}){return i.jsx(Cm,{"data-slot":"dialog-close",...t})}function qm({className:t,...e}){return i.jsx(d_,{"data-slot":"dialog-overlay",className:Ne("fixed inset-0 isolate z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=closed]:animate-out data-[state=closed]:fade-out-0",t),...e})}function Y3({className:t,children:e,showCloseButton:s=!0,...r}){return i.jsxs($m,{children:[i.jsx(qm,{}),i.jsxs(Lm,{"data-slot":"dialog-content",className:Ne("fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",t),...r,children:[e,s&&i.jsx(Cm,{"data-slot":"dialog-close",asChild:!0,children:i.jsxs(Ut,{variant:"ghost",className:"absolute top-2 right-2",size:"icon-sm",children:[i.jsx(za,{}),i.jsx("span",{className:"sr-only",children:"Close"})]})})]})]})}function P3({className:t,...e}){return i.jsx("div",{"data-slot":"dialog-header",className:Ne("flex flex-col gap-2",t),...e})}function X3({className:t,showCloseButton:e=!1,children:s,...r}){return i.jsxs("div",{"data-slot":"dialog-footer",className:Ne("-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 sm:flex-row sm:justify-end",t),...r,children:[s,e&&i.jsx(Cm,{asChild:!0,children:i.jsx(Ut,{variant:"outline",children:"Close"})})]})}function zu({className:t,...e}){return i.jsx(f_,{"data-slot":"dialog-title",className:Ne("text-base leading-none font-medium",t),...e})}function Hm({className:t,...e}){return i.jsx(p_,{"data-slot":"dialog-description",className:Ne("text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",t),...e})}function _a({className:t,...e}){return i.jsx(m_,{"data-slot":"label",className:Ne("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t),...e})}const J3=Iu("group/alert relative grid w-full gap-0.5 rounded-lg border px-2.5 py-2 text-left text-sm has-data-[slot=alert-action]:relative has-data-[slot=alert-action]:pr-18 has-[>svg]:grid-cols-[auto_1fr] has-[>svg]:gap-x-2 *:[svg]:row-span-2 *:[svg]:translate-y-0.5 *:[svg]:text-current *:[svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-card text-card-foreground",destructive:"bg-card text-destructive *:data-[slot=alert-description]:text-destructive/90 *:[svg]:text-current",success:"border-success/30 bg-success/5 text-success *:data-[slot=alert-description]:text-success/90 *:[svg]:text-current",warning:"border-warning/30 bg-warning/5 text-warning *:data-[slot=alert-description]:text-warning/90 *:[svg]:text-current",info:"border-info/30 bg-info/5 text-info *:data-[slot=alert-description]:text-info/90 *:[svg]:text-current"}},defaultVariants:{variant:"default"}});function Nl({className:t,variant:e,...s}){return i.jsx("div",{"data-slot":"alert",role:"alert",className:Ne(J3({variant:e}),t),...s})}function fv({className:t,...e}){return i.jsx("div",{"data-slot":"alert-title",className:Ne("font-medium group-has-[>svg]/alert:col-start-2 [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground",t),...e})}function Cl({className:t,...e}){return i.jsx("div",{"data-slot":"alert-description",className:Ne("text-sm text-balance text-muted-foreground md:text-pretty [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4",t),...e})}function Hs({className:t,size:e="default",...s}){return i.jsx("div",{"data-slot":"card","data-size":e,className:Ne("group/card flex flex-col gap-4 overflow-hidden rounded-xl bg-card py-4 text-sm text-card-foreground ring-1 ring-foreground/10 has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:gap-3 data-[size=sm]:py-3 data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl",t),...s})}function ej({className:t,...e}){return i.jsx("div",{"data-slot":"card-header",className:Ne("group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-4 group-data-[size=sm]/card:px-3 has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-4 group-data-[size=sm]/card:[.border-b]:pb-3",t),...e})}function tj({className:t,...e}){return i.jsx("div",{"data-slot":"card-title",className:Ne("text-base leading-snug font-medium group-data-[size=sm]/card:text-sm",t),...e})}function nj({className:t,...e}){return i.jsx("div",{"data-slot":"card-description",className:Ne("text-sm text-muted-foreground",t),...e})}function Vu({className:t,...e}){return i.jsx("div",{"data-slot":"card-content",className:Ne("px-4 group-data-[size=sm]/card:px-3",t),...e})}function oj({className:t,...e}){return i.jsx("div",{"data-slot":"card-footer",className:Ne("flex items-center rounded-b-xl border-t bg-muted/50 p-4 group-data-[size=sm]/card:p-3",t),...e})}function Na({...t}){return i.jsx(h_,{"data-slot":"select",...t})}function pv({className:t,...e}){return i.jsx(C_,{"data-slot":"select-group",className:Ne("scroll-my-1 p-1",t),...e})}function Ca({...t}){return i.jsx(y_,{"data-slot":"select-value",...t})}function La({className:t,size:e="default",children:s,...r}){return i.jsxs(g_,{"data-slot":"select-trigger","data-size":e,className:Ne("flex w-fit items-center justify-between gap-1.5 rounded-lg border border-input bg-transparent py-2 pr-2 pl-2.5 text-sm whitespace-nowrap transition-colors outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-placeholder:text-muted-foreground data-[size=default]:h-8 data-[size=sm]:h-7 data-[size=sm]:rounded-[min(var(--radius-md),10px)] *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-1.5 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...r,children:[s,i.jsx(x_,{asChild:!0,children:i.jsx(Us,{className:"pointer-events-none size-4 text-muted-foreground"})})]})}function Ea({className:t,children:e,position:s="item-aligned",align:r="center",...c}){return i.jsx(b_,{children:i.jsxs(v_,{"data-slot":"select-content","data-align-trigger":s==="item-aligned",className:Ne("relative z-50 max-h-(--radix-select-content-available-height) min-w-36 origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[align-trigger=true]:animate-none data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",s==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",t),position:s,align:r,...c,children:[i.jsx(sj,{}),i.jsx(w_,{"data-position":s,className:Ne("data-[position=popper]:h-(--radix-select-trigger-height) data-[position=popper]:w-full data-[position=popper]:min-w-(--radix-select-trigger-width)",s==="popper"&&""),children:e}),i.jsx(aj,{})]})})}function mv({className:t,...e}){return i.jsx(L_,{"data-slot":"select-label",className:Ne("px-1.5 py-1 text-xs text-muted-foreground",t),...e})}function po({className:t,children:e,onClick:s,...r}){const c=s?u=>{Hn.play("click"),s(u)}:u=>{Hn.play("click")};return i.jsxs(k_,{"data-slot":"select-item",className:Ne("relative flex w-full cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",t),onClick:c,...r,children:[i.jsx("span",{className:"pointer-events-none absolute right-2 flex size-4 items-center justify-center",children:i.jsx(S_,{children:i.jsx(Li,{className:"pointer-events-none"})})}),i.jsx(__,{children:e})]})}function sj({className:t,...e}){return i.jsx(j_,{"data-slot":"select-scroll-up-button",className:Ne("z-10 flex cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4",t),...e,children:i.jsx(c0,{})})}function aj({className:t,...e}){return i.jsx(N_,{"data-slot":"select-scroll-down-button",className:Ne("z-10 flex cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4",t),...e,children:i.jsx(Us,{})})}const rj=(t,e)=>{if(e==="number"){const s=parseFloat(t);return isNaN(s)?t:s}if(e==="boolean")return t.toLowerCase()==="true";if(e==="array")try{return JSON.parse(t)}catch{return t.split(",").map(s=>s.trim())}return t},lj=t=>{const e=Fe.c(133),{isOpen:s,onClose:r,condition:c,label:u,onSave:f,availableFields:d,sourceNodeName:h}=t;let g;e[0]!==d?(g=d===void 0?[]:d,e[0]=d,e[1]=g):g=e[1];const x=g,[y,b]=j.useState(c?.field||""),[k,S]=j.useState(c?.operator||"eq"),[w,_]=j.useState(c?.value!==void 0?String(c.value):""),[N,L]=j.useState(u||""),[z,O]=j.useState(null);let I,q;e[2]!==c||e[3]!==s||e[4]!==u?(I=()=>{s&&(b(c?.field||""),S(c?.operator||"eq"),_(c?.value!==void 0?String(c.value):""),L(u||""),O(null))},q=[s,c,u],e[2]=c,e[3]=s,e[4]=u,e[5]=I,e[6]=q):(I=e[5],q=e[6]),j.useEffect(I,q);const M=kl[k];let E,$,Q,H,R,D,U,W,T,A,K,ne,X,ue,fe,pe,we,je,ve;if(e[7]!==x||e[8]!==N||e[9]!==y||e[10]!==s||e[11]!==r||e[12]!==f||e[13]!==k||e[14]!==M||e[15]!==h||e[16]!==w){const Re=F3();let He;e[36]!==N||e[37]!==y||e[38]!==r||e[39]!==f||e[40]!==k||e[41]!==M.requiresValue||e[42]!==M.valueType||e[43]!==w?(He=()=>{if(!y.trim()){f(void 0,N.trim()||void 0),r();return}const rn={field:y.trim(),operator:k,value:M.requiresValue?rj(w,M.valueType):void 0},sn=G3(rn);if(!sn.valid){O(sn.error||"Invalid condition");return}f(rn,N.trim()||dv(rn)),r()},e[36]=N,e[37]=y,e[38]=r,e[39]=f,e[40]=k,e[41]=M.requiresValue,e[42]=M.valueType,e[43]=w,e[44]=He):He=e[44],D=He;let Rt;e[45]!==r||e[46]!==f?(Rt=()=>{f(void 0,void 0),r()},e[45]=r,e[46]=f,e[47]=Rt):Rt=e[47],R=Rt,H=Im,X=s,e[48]!==r?(ue=rn=>!rn&&r(),e[48]=r,e[49]=ue):ue=e[49],Q=Y3,K="max-h-[85vh] w-[420px] overflow-hidden p-0",e[50]===Symbol.for("react.memo_cache_sentinel")?(ne=i.jsxs(P3,{className:"border-b border-border bg-muted px-5 py-4",children:[i.jsxs(zu,{className:"flex items-center gap-2",children:[i.jsx(u0,{className:"h-4 w-4 text-accent"}),"Edge Condition"]}),i.jsx(Hm,{className:"sr-only",children:"Configure condition for edge branching"})]}),e[50]=ne):ne=e[50],W="space-y-4 overflow-y-auto px-5 py-5",e[51]!==h?(T=h&&i.jsxs(Hs,{className:"bg-muted px-3 py-2 text-sm text-muted-foreground",children:["Condition evaluates output from:"," ",i.jsx("strong",{className:"text-foreground",children:h})]}),e[51]=h,e[52]=T):T=e[52];let Mt;e[53]===Symbol.for("react.memo_cache_sentinel")?(Mt=i.jsx(_a,{htmlFor:"edge-field",children:"Field Path"}),e[53]=Mt):Mt=e[53];let Le;e[54]===Symbol.for("react.memo_cache_sentinel")?(Le=rn=>b(rn.target.value),e[54]=Le):Le=e[54];let Cn;e[55]!==y?(Cn=i.jsx(on,{id:"edge-field",type:"text",value:y,onChange:Le,placeholder:"e.g., result.status, items.0.name",list:"available-fields"}),e[55]=y,e[56]=Cn):Cn=e[56];let On;e[57]!==x?(On=x.length>0&&i.jsx("datalist",{id:"available-fields",children:x.map(ij)}),e[57]=x,e[58]=On):On=e[58];let tn;e[59]===Symbol.for("react.memo_cache_sentinel")?(tn=i.jsx("p",{className:"text-xs text-muted-foreground",children:"Use dot notation for nested fields (e.g., result.data.value)"}),e[59]=tn):tn=e[59],e[60]!==Cn||e[61]!==On?(A=i.jsxs("div",{className:"space-y-1.5",children:[Mt,Cn,On,tn]}),e[60]=Cn,e[61]=On,e[62]=A):A=e[62],ve="space-y-1.5",e[63]===Symbol.for("react.memo_cache_sentinel")?(U=i.jsx(_a,{htmlFor:"edge-operator",children:"Operator"}),e[63]=U):U=e[63],$=Na,pe=k,e[64]===Symbol.for("react.memo_cache_sentinel")?(we=rn=>S(rn),e[64]=we):we=e[64],e[65]===Symbol.for("react.memo_cache_sentinel")?(je=i.jsx(La,{id:"edge-operator",children:i.jsx(Ca,{})}),e[65]=je):je=e[65],E=Ea,fe=Object.entries(Re).map(uj),e[7]=x,e[8]=N,e[9]=y,e[10]=s,e[11]=r,e[12]=f,e[13]=k,e[14]=M,e[15]=h,e[16]=w,e[17]=E,e[18]=$,e[19]=Q,e[20]=H,e[21]=R,e[22]=D,e[23]=U,e[24]=W,e[25]=T,e[26]=A,e[27]=K,e[28]=ne,e[29]=X,e[30]=ue,e[31]=fe,e[32]=pe,e[33]=we,e[34]=je,e[35]=ve}else E=e[17],$=e[18],Q=e[19],H=e[20],R=e[21],D=e[22],U=e[23],W=e[24],T=e[25],A=e[26],K=e[27],ne=e[28],X=e[29],ue=e[30],fe=e[31],pe=e[32],we=e[33],je=e[34],ve=e[35];let Ce;e[66]!==E||e[67]!==fe?(Ce=i.jsx(E,{children:fe}),e[66]=E,e[67]=fe,e[68]=Ce):Ce=e[68];let ce;e[69]!==$||e[70]!==Ce||e[71]!==pe||e[72]!==we||e[73]!==je?(ce=i.jsxs($,{value:pe,onValueChange:we,children:[je,Ce]}),e[69]=$,e[70]=Ce,e[71]=pe,e[72]=we,e[73]=je,e[74]=ce):ce=e[74];let te;e[75]!==M.description?(te=i.jsx("p",{className:"text-xs text-muted-foreground",children:M.description}),e[75]=M.description,e[76]=te):te=e[76];let Oe;e[77]!==U||e[78]!==ce||e[79]!==te||e[80]!==ve?(Oe=i.jsxs("div",{className:ve,children:[U,ce,te]}),e[77]=U,e[78]=ce,e[79]=te,e[80]=ve,e[81]=Oe):Oe=e[81];let B;e[82]!==M.requiresValue||e[83]!==M.valueType||e[84]!==w?(B=M.requiresValue&&i.jsxs("div",{className:"space-y-1.5",children:[i.jsxs(_a,{htmlFor:"edge-value",children:["Value",M.valueType==="array"&&i.jsx("span",{className:"ml-2 font-normal",children:"(comma-separated or JSON array)"})]}),i.jsx(on,{id:"edge-value",type:M.valueType==="number"?"number":"text",value:w,onChange:Re=>_(Re.target.value),placeholder:M.valueType==="array"?'e.g., value1, value2 or ["a", "b"]':"Enter comparison value"})]}),e[82]=M.requiresValue,e[83]=M.valueType,e[84]=w,e[85]=B):B=e[85];let F;e[86]===Symbol.for("react.memo_cache_sentinel")?(F=i.jsx(_a,{htmlFor:"edge-label",children:"Edge Label (optional)"}),e[86]=F):F=e[86];let oe;e[87]===Symbol.for("react.memo_cache_sentinel")?(oe=Re=>L(Re.target.value),e[87]=oe):oe=e[87];let me;e[88]!==N?(me=i.jsx(on,{id:"edge-label",type:"text",value:N,onChange:oe,placeholder:"Auto-generated from condition"}),e[88]=N,e[89]=me):me=e[89];let Ke;e[90]===Symbol.for("react.memo_cache_sentinel")?(Ke=i.jsx("p",{className:"text-xs text-muted-foreground",children:"Displayed on the workflow canvas"}),e[90]=Ke):Ke=e[90];let tt;e[91]!==me?(tt=i.jsxs("div",{className:"space-y-1.5",children:[F,me,Ke]}),e[91]=me,e[92]=tt):tt=e[92];let lt;e[93]!==z?(lt=z&&i.jsx(Nl,{variant:"destructive",children:i.jsx(Cl,{children:z})}),e[93]=z,e[94]=lt):lt=e[94];let yt;e[95]!==y||e[96]!==k||e[97]!==M.requiresValue||e[98]!==w?(yt=y&&i.jsxs(Hs,{className:"bg-muted p-3",children:[i.jsx("div",{className:"mb-1 text-xs text-muted-foreground",children:"Preview:"}),i.jsxs("div",{className:"font-mono text-sm text-accent",children:["if output.",y," ",kl[k].label.toLowerCase(),M.requiresValue&&w&&` "${w}"`]})]}),e[95]=y,e[96]=k,e[97]=M.requiresValue,e[98]=w,e[99]=yt):yt=e[99];let bt;e[100]!==W||e[101]!==T||e[102]!==A||e[103]!==Oe||e[104]!==B||e[105]!==tt||e[106]!==lt||e[107]!==yt?(bt=i.jsxs("div",{className:W,children:[T,A,Oe,B,tt,lt,yt]}),e[100]=W,e[101]=T,e[102]=A,e[103]=Oe,e[104]=B,e[105]=tt,e[106]=lt,e[107]=yt,e[108]=bt):bt=e[108];let re;e[109]!==c||e[110]!==R?(re=c?i.jsx(Ut,{variant:"destructive",onClick:R,children:"Remove Condition"}):i.jsx("div",{}),e[109]=c,e[110]=R,e[111]=re):re=e[111];let qe;e[112]!==r?(qe=i.jsx(Ut,{variant:"outline",onClick:r,children:"Cancel"}),e[112]=r,e[113]=qe):qe=e[113];let Ye;e[114]!==D?(Ye=i.jsx(Ut,{onClick:D,children:"Save Condition"}),e[114]=D,e[115]=Ye):Ye=e[115];let at;e[116]!==qe||e[117]!==Ye?(at=i.jsxs("div",{className:"flex gap-2",children:[qe,Ye]}),e[116]=qe,e[117]=Ye,e[118]=at):at=e[118];let it;e[119]!==re||e[120]!==at?(it=i.jsxs(X3,{className:"flex flex-row items-center justify-between border-t border-border bg-muted px-5 py-4 sm:justify-between",children:[re,at]}),e[119]=re,e[120]=at,e[121]=it):it=e[121];let kt;e[122]!==Q||e[123]!==K||e[124]!==ne||e[125]!==bt||e[126]!==it?(kt=i.jsxs(Q,{className:K,children:[ne,bt,it]}),e[122]=Q,e[123]=K,e[124]=ne,e[125]=bt,e[126]=it,e[127]=kt):kt=e[127];let he;return e[128]!==H||e[129]!==X||e[130]!==ue||e[131]!==kt?(he=i.jsx(H,{open:X,onOpenChange:ue,children:kt}),e[128]=H,e[129]=X,e[130]=ue,e[131]=kt,e[132]=he):he=e[132],he};function ij(t){return i.jsx("option",{value:t},t)}function cj(t){return i.jsx(po,{value:t,children:kl[t].label},t)}function uj(t){const[e,s]=t;return i.jsxs(pv,{children:[i.jsx(mv,{children:e}),s.map(cj)]},e)}const dj=t=>{const e=Fe.c(42),{id:s,sourceX:r,sourceY:c,targetX:u,targetY:f,sourcePosition:d,targetPosition:h,style:g,markerEnd:x,data:y,selected:b,onConditionUpdate:k}=t;let S;e[0]!==g?(S=g===void 0?{}:g,e[0]=g,e[1]=S):S=e[1];const w=S,[_,N]=j.useState(!1);let L;e[2]!==d||e[3]!==r||e[4]!==c||e[5]!==h||e[6]!==u||e[7]!==f?(L=cS({sourceX:r,sourceY:c,sourcePosition:d,targetX:u,targetY:f,targetPosition:h,borderRadius:10}),e[2]=d,e[3]=r,e[4]=c,e[5]=h,e[6]=u,e[7]=f,e[8]=L):L=e[8];const[z,O,I]=L,q=!!y?.condition;let M;e[9]!==y||e[10]!==q?(M=y?.label||(q&&y?.condition?dv(y.condition):null),e[9]=y,e[10]=q,e[11]=M):M=e[11];const E=M;let $;e[12]===Symbol.for("react.memo_cache_sentinel")?($=je=>{je.stopPropagation(),N(!0)},e[12]=$):$=e[12];const Q=$;let H;e[13]===Symbol.for("react.memo_cache_sentinel")?(H=()=>N(!1),e[13]=H):H=e[13];const R=H;let D;e[14]!==s||e[15]!==k?(D=(je,ve)=>{k&&k(s,je,ve)},e[14]=s,e[15]=k,e[16]=D):D=e[16];const U=D,W=q?"hsl(var(--accent))":void 0,T=q?2:void 0,A=q?"5 3":void 0;let K;e[17]!==w||e[18]!==A||e[19]!==W||e[20]!==T?(K={...w,stroke:W,strokeWidth:T,strokeDasharray:A},e[17]=w,e[18]=A,e[19]=W,e[20]=T,e[21]=K):K=e[21];let ne;e[22]!==z||e[23]!==s||e[24]!==x||e[25]!==K?(ne=i.jsx(dS,{id:s,path:z,markerEnd:x,style:K}),e[22]=z,e[23]=s,e[24]=x,e[25]=K,e[26]=ne):ne=e[26];let X;e[27]!==E||e[28]!==q||e[29]!==O||e[30]!==I||e[31]!==b?(X=i.jsx(uS,{children:E?i.jsxs("div",{style:{left:O,top:I},onClick:Q,title:`Click to edit condition: ${E}`,className:Ne("pointer-events-auto absolute -translate-x-1/2 -translate-y-1/2 max-w-[150px] cursor-pointer truncate rounded-sm border px-1.5 py-0.5 text-xs font-medium whitespace-nowrap transition-all",q?"border-accent bg-accent/20 text-accent":"border-border bg-card text-muted-foreground",b&&"shadow-[0_0_6px_hsl(var(--node-agent))]"),children:[i.jsx("span",{className:"mr-1 inline-flex",children:i.jsx(ES,{className:"h-2.5 w-2.5"})}),E]}):i.jsx("div",{style:{left:O,top:I},onClick:Q,title:"Click to add condition",className:Ne("pointer-events-auto absolute flex h-5 w-5 -translate-x-1/2 -translate-y-1/2 cursor-pointer items-center justify-center rounded-full border border-dashed border-border bg-card text-sm text-muted-foreground transition-opacity",b?"opacity-100":"opacity-0"),children:"+"})}),e[27]=E,e[28]=q,e[29]=O,e[30]=I,e[31]=b,e[32]=X):X=e[32];const ue=y?.condition,fe=y?.label;let pe;e[33]!==U||e[34]!==_||e[35]!==ue||e[36]!==fe?(pe=i.jsx(lj,{isOpen:_,onClose:R,condition:ue,label:fe,onSave:U}),e[33]=U,e[34]=_,e[35]=ue,e[36]=fe,e[37]=pe):pe=e[37];let we;return e[38]!==ne||e[39]!==X||e[40]!==pe?(we=i.jsxs(i.Fragment,{children:[ne,X,pe]}),e[38]=ne,e[39]=X,e[40]=pe,e[41]=we):we=e[41],we},fj=j.memo(dj),pj=({nodeId:t,x:e,y:s,onClose:r,onRename:c,onCopy:u,onDelete:f})=>{const d=j.useRef(null),[h,g]=be.useState(0),x=j.useMemo(()=>[{label:"Rename",shortcut:"F2",action:c,Icon:bm},{label:"Copy",shortcut:"Ctrl+C",action:u,Icon:vm},{label:"Delete",shortcut:"Del",action:f,Icon:$u,danger:!0}],[c,u,f]),b=j.useCallback(()=>{const w=x.length*36+16,_=window.innerWidth,N=window.innerHeight;let L=e,z=s;return e+180>_&&(L=_-180-8),s+w>N&&(z=N-w-8),{left:L,top:z}},[e,s,x.length])();j.useEffect(()=>{const S=N=>{d.current&&!d.current.contains(N.target)&&r()},w=N=>{N.key==="Escape"&&r()},_=setTimeout(()=>{document.addEventListener("mousedown",S),document.addEventListener("keydown",w)},0);return()=>{clearTimeout(_),document.removeEventListener("mousedown",S),document.removeEventListener("keydown",w)}},[r]),j.useEffect(()=>{const S=w=>{switch(w.key){case"ArrowDown":w.preventDefault(),g(_=>(_+1)%x.length);break;case"ArrowUp":w.preventDefault(),g(_=>(_-1+x.length)%x.length);break;case"Enter":w.preventDefault(),x[h].action(),r();break}};return document.addEventListener("keydown",S),()=>document.removeEventListener("keydown",S)},[h,x,r]),j.useEffect(()=>{d.current?.focus()},[]);const k=S=>{S.action(),r()};return i.jsx("div",{ref:d,tabIndex:-1,style:{left:b.left,top:b.top},className:"fixed z-[10000] min-w-[160px] rounded-lg border border-border bg-popover p-1 text-popover-foreground shadow-md outline-none",children:x.map((S,w)=>{const _=h===w;return i.jsxs("div",{onClick:()=>k(S),onMouseEnter:()=>g(w),className:Ne("flex cursor-pointer items-center justify-between gap-2 rounded-md px-2 py-1.5 text-sm transition-colors",_&&"bg-muted",S.danger?"text-destructive":"text-foreground"),children:[i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsx(S.Icon,{className:"h-3.5 w-3.5"}),i.jsx("span",{className:"font-medium",children:S.label})]}),i.jsx("span",{className:"font-mono text-xs text-muted-foreground",children:S.shortcut})]},S.label)})})},Ll=({isOpen:t,onClose:e,children:s,title:r,maxWidth:c="500px",maxHeight:u="80vh",headerActions:f,autoHeight:d=!1,scrollableBody:h=!0,className:g})=>{const x=!!(r||f),y=j.useRef(t);return j.useEffect(()=>{y.current!==t&&(Hn.play(t?"modalOpen":"modalClose"),y.current=t)},[t]),i.jsx(Im,{open:t,onOpenChange:b=>{b||e()},children:i.jsxs($m,{children:[i.jsx(qm,{className:"bg-bg-overlay supports-backdrop-filter:backdrop-blur-xs"}),i.jsxs(Lm,{"data-slot":"dialog-content",className:Ne("modal modal-frame","fixed top-1/2 left-1/2 z-50 flex -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-lg border border-border-default bg-bg-app shadow-2xl outline-none","data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 duration-100",g),style:{width:c,minWidth:c,height:d?"auto":u,maxHeight:u},children:[x?i.jsxs("div",{className:"modal-head relative flex w-full items-center border-b border-border-default bg-bg-panel px-5 py-3",children:[i.jsxs(zu,{className:"absolute left-5 flex items-center gap-2 font-display text-base font-semibold tracking-[var(--type-tracking-display)] text-fg-default [text-transform:var(--type-uppercase)]",children:[i.jsx(Ui,{className:"h-4 w-4 opacity-70"}),r]}),i.jsx("div",{className:"flex flex-1 items-center justify-center",children:f}),i.jsx(K3,{onClick:e,className:"absolute right-5 inline-flex h-8 w-8 items-center justify-center rounded-md text-fg-muted transition-colors hover:bg-bg-hover hover:text-fg-default","aria-label":"Close",children:i.jsx(za,{className:"h-[18px] w-[18px]"})})]}):i.jsx(zu,{className:"sr-only",children:r||"Dialog"}),i.jsx(Hm,{className:"sr-only",children:r||"Modal dialog"}),i.jsx("div",{className:Ne("flex h-full min-h-0 flex-1 flex-col",h?"overflow-y-auto":"overflow-hidden"),children:s})]})]})})},mj=t=>{const e=Fe.c(7),s=De(hj);let r;e[0]!==s?(r=h=>{if(!s)return h;const g=(s.nodes||[]).find(b=>b.id===h);if(!g)return h;const x=g.data?.label;if(x&&typeof x=="string")return x.toLowerCase().replace(/\s+/g,"");const y=fn(g.type||"");return y?.displayName?y.displayName.toLowerCase().replace(/\s+/g,""):(g.type||h).toLowerCase().replace(/\s+/g,"")},e[0]=s,e[1]=r):r=e[1];const c=r;let u;e[2]!==c?(u=(h,g,x,y)=>{const b=c(g),k=`{{${b}.${x}}}`;h.dataTransfer.setData("text/plain",k),h.dataTransfer.setData("application/json",JSON.stringify({type:"nodeVariable",nodeId:g,nodeName:b,key:x,variableTemplate:k,dataType:typeof y})),h.dataTransfer.effectAllowed="copy"},e[2]=c,e[3]=u):u=e[3];const f=u;let d;return e[4]!==c||e[5]!==f?(d={handleVariableDragStart:f,getTemplateVariableName:c},e[4]=c,e[5]=f,e[6]=d):d=e[6],d};function hj(t){return t.currentWorkflow}const gj=t=>["nodeOutputSchema",t];async function xj(t,e){return At.fetchQuery({queryKey:gj(t),queryFn:async()=>{try{return(await e("get_node_output_schema",{node_type:t}))?.schema??null}catch{return null}},staleTime:1/0})}function hv(t){if(!t||typeof t!="object")return null;const e=t.properties;if(!e||typeof e!="object")return null;const s={};for(const[r,c]of Object.entries(e)){if(!c||typeof c!="object")continue;const u=c;u.type==="object"&&u.properties?s[r]=hv(u)??"object":u.type==="array"?s[r]="array":typeof u.type=="string"?s[r]=u.type==="integer"?"number":u.type:s[r]="any"}return s}const fu=t=>{const e=Fe.c(23),{templateName:s,templatePath:r,value:c,onDragStart:u,sourceNodeId:f,showLabel:d,labelKey:h,className:g}=t;let x;e[0]!==u||e[1]!==f||e[2]!==r||e[3]!==c?(x=z=>u(z,f,r,c),e[0]=u,e[1]=f,e[2]=r,e[3]=c,e[4]=x):x=e[4];let y;e[5]!==g?(y=Ne("mb-2 cursor-grab rounded-md border border-border bg-card p-2 transition-colors","hover:border-info hover:bg-info/10",g),e[5]=g,e[6]=y):y=e[6];const b=`{{${s}.${r}}}`;let k;e[7]!==b?(k=i.jsx("div",{className:"font-mono text-sm font-medium text-info truncate",children:b}),e[7]=b,e[8]=k):k=e[8];let S;e[9]!==h||e[10]!==d||e[11]!==c?(S=d&&i.jsxs("div",{className:"text-xs text-muted-foreground",children:[h,": ",typeof c]}),e[9]=h,e[10]=d,e[11]=c,e[12]=S):S=e[12];let w;e[13]!==k||e[14]!==S?(w=i.jsxs("div",{className:"min-w-0 flex-1",children:[k,S]}),e[13]=k,e[14]=S,e[15]=w):w=e[15];let _;e[16]===Symbol.for("react.memo_cache_sentinel")?(_=i.jsx(TS,{className:"h-3.5 w-3.5 shrink-0 text-info"}),e[16]=_):_=e[16];let N;e[17]!==w?(N=i.jsxs("div",{className:"flex items-center justify-between gap-2",children:[w,_]}),e[17]=w,e[18]=N):N=e[18];let L;return e[19]!==x||e[20]!==y||e[21]!==N?(L=i.jsx("div",{draggable:!0,onDragStart:x,className:y,children:N}),e[19]=x,e[20]=y,e[21]=N,e[22]=L):L=e[22],L},gv=({nodeId:t,visible:e=!0})=>{const s=De(w=>w.currentWorkflow),{getNodeOutput:r,sendRequest:c}=Ct(),[u,f]=j.useState(new Set),[d,h]=j.useState([]),[g,x]=j.useState(!1),{handleVariableDragStart:y,getTemplateVariableName:b}=mj();j.useEffect(()=>{(async()=>{if(!s||!t){h([]);return}x(!0);const _=s.nodes||[],N=s.edges||[],L=R=>R?!!(R.startsWith("input-")&&R!=="input-main"&&R!=="input-chat"&&R!=="input-task"&&R!=="input-teammates"):!1,z=R=>R?fn(R)?.uiHints?.isConfigNode===!0:!1,I=_.find(R=>R.id===t)?.type,M=(I?Vo(I):null)?.uiHints?.hasSkills===!0,E=[];if(N.filter(R=>R.target===t).forEach(R=>{if(M&&L(R.targetHandle))return;let D;R.targetHandle&&R.targetHandle.startsWith("input-")&&R.targetHandle!=="input-main"&&(D=R.targetHandle.replace("input-","")),E.push({edge:R,targetHandleLabel:D})}),z(I)){const R=N.filter(D=>D.source===t);for(const D of R)if(L(D.targetHandle)){const U=_.find(K=>K.id===D.target);if(!U)continue;const T=fn(U.type||"")?.displayName||U.type,A=N.filter(K=>K.target===U.id&&!L(K.targetHandle));for(const K of A)E.push({edge:K,label:`via ${T}`})}}const Q=E.map(async({edge:R,label:D,targetHandleLabel:U})=>{const W=_.find(Ce=>Ce.id===R.source),T=W?.type||"",A=fn(T);let K="output_0";R.sourceHandle&&R.sourceHandle.startsWith("output-")&&(K=`output_${R.sourceHandle.replace("output-","")}`);let ne=await r(R.source,K);!ne&&K!=="output_0"&&(ne=await r(R.source,"output_0"));let X=null,ue,fe=!1;if(ne&&ne[0]&&ne[0][0]){const Ce=ne[0][0].json||ne[0][0];typeof Ce=="object"&&Ce!==null?(X=Ce,ue=Ce,fe=!0):(X={value:Ce},ue={value:typeof Ce},fe=!0)}else{fe=!1;const Ce=T?Vo(T):null;if((Ce?.uiHints??{}).hasInitialDataBlob===!0)try{const te=W?.data?.initial_data||"{}";ue=typeof te=="string"?JSON.parse(te):te}catch{ue={}}else{const te=hv(await xj(T,c));if(te){if(ue=te,(Ce?.handles??[]).filter(B=>B.kind==="output").length>1&&R.sourceHandle?.startsWith("output-")){const B=R.sourceHandle.replace("output-",""),F=B&&te[B];F!==void 0&&(ue=typeof F=="object"&&F!==null?F:{[B]:F})}}else ue={data:"any"}}}const pe=W?.data?.label||A?.displayName||T;let we=pe,je="";if(R.sourceHandle&&R.sourceHandle.startsWith("output-")){const Ce=R.sourceHandle.replace("output-","");je=Ce,we=`${pe} → ${Ce}`}return U&&(we=`${we} (${U})`,je=je?`${je}-${U}`:U),D&&(we=`${we} (${D})`),{id:je?`${R.source}-${je}`:R.source,sourceNodeId:R.source,name:we,type:T,icon:A?.icon||"",inputData:X,outputSchema:ue,hasExecutionData:fe}}),H=await Promise.all(Q);h(H),f(new Set(H.map(R=>R.id))),x(!1)})()},[t,s,r]);const k=w=>{f(_=>{const N=new Set(_);return N.has(w)?N.delete(w):N.add(w),N})},S=(w,_,N,L="",z=0,O=3)=>{const I=L?`${L}.${w}`:w,q=typeof _=="object"&&_!==null&&!Array.isArray(_),M=Array.isArray(_),E=b(N),$=z>0?"ml-4":"";if(M&&_.length>0){const Q=Math.min(_.length,O);return i.jsxs("div",{className:Ne("mb-2",$),children:[i.jsxs("div",{className:"mb-1 flex items-center gap-1.5 text-xs font-medium text-muted-foreground",children:[w,i.jsxs(Ot,{variant:"secondary",className:"bg-node-agent-soft px-1.5 text-[10px] text-node-agent",children:["[",_.length," items]"]})]}),i.jsxs("div",{children:[_.slice(0,Q).map((H,R)=>{const D=`${w}[${R}]`,U=L?`${L}.${D}`:D;return typeof H=="object"&&H!==null?i.jsxs("div",{className:"mb-2 ml-2 rounded-sm border border-dashed border-border bg-muted p-1",children:[i.jsxs("div",{className:"mb-1 text-xs font-medium text-info",children:["[",R,"]"]}),Object.entries(H).map(([W,T])=>{const A=`${U}.${W}`;return typeof T=="object"&&T!==null&&!Array.isArray(T)?i.jsxs("div",{className:"mb-1 ml-2",children:[i.jsxs("div",{className:"mb-0.5 text-xs text-muted-foreground",children:[W,":"]}),Object.entries(T).map(([K,ne])=>i.jsx(fu,{templateName:E,templatePath:`${A}.${K}`,value:ne,onDragStart:y,sourceNodeId:N,className:"mb-1 ml-2 p-1"},`${A}.${K}`))]},A):i.jsx(fu,{templateName:E,templatePath:A,value:T,onDragStart:y,sourceNodeId:N,showLabel:!0,labelKey:W,className:"mb-1 ml-2 p-1"},A)})]},`${I}[${R}]`):i.jsx(fu,{templateName:E,templatePath:U,value:H,onDragStart:y,sourceNodeId:N,showLabel:!0,labelKey:`[${R}]`,className:"mb-1 ml-2 p-1"},`${I}[${R}]`)}),_.length>O&&i.jsxs("div",{className:"ml-2 text-xs italic text-muted-foreground",children:["... and ",_.length-O," more items"]})]})]},I)}return M&&_.length===0?i.jsx("div",{className:Ne("mb-2",$),children:i.jsxs("div",{className:"text-xs text-muted-foreground",children:[w,": ",i.jsx("span",{className:"italic",children:"empty array"})]})},I):q?i.jsxs("div",{className:Ne("mb-2",$),children:[i.jsxs("div",{className:"mb-1 text-xs font-medium text-muted-foreground",children:[w,":"]}),i.jsx("div",{children:Object.entries(_).map(([Q,H])=>S(Q,H,N,I,z+1))})]},I):i.jsx(fu,{templateName:E,templatePath:I,value:_,onDragStart:y,sourceNodeId:N,showLabel:!0,labelKey:w,className:$},I)};return e?g?i.jsxs("div",{className:"flex h-full w-full flex-col items-center justify-center bg-card p-12",children:[i.jsx(mo,{className:"mb-4 h-8 w-8 animate-spin text-info"}),i.jsx("div",{className:"text-sm text-muted-foreground",children:"Loading input data..."})]}):d.length===0?i.jsxs("div",{className:"flex h-full w-full flex-col items-center justify-center bg-card p-12",children:[i.jsx(zS,{className:"mb-4 h-12 w-12 stroke-1 text-muted-foreground"}),i.jsx("div",{className:"mb-1 text-base font-medium text-foreground",children:"No connected inputs"}),i.jsx("div",{className:"text-center text-sm text-muted-foreground",children:"Connect nodes to see input data and available variables"})]}):i.jsxs("div",{className:"flex h-full w-full flex-col overflow-hidden bg-card",children:[i.jsxs("div",{className:"flex shrink-0 items-center gap-2 border-b border-border bg-background px-4 py-3",children:[i.jsx(MS,{className:"h-4 w-4 text-muted-foreground"}),i.jsx("span",{className:"font-display text-sm font-semibold tracking-[var(--type-tracking-display)] text-fg-default [text-transform:var(--type-uppercase)]",children:"Input Data & Variables"}),i.jsx(Ot,{variant:"info",children:d.length})]}),i.jsx("div",{className:"flex-1 overflow-auto p-3",children:d.map(w=>{const _=u.has(w.id);return i.jsxs("div",{className:Ne("mb-3 overflow-hidden rounded-md border border-border bg-background border-l-[3px]",w.hasExecutionData?"border-l-success":"border-l-warning"),children:[i.jsxs("div",{onClick:()=>k(w.id),className:"flex cursor-pointer items-center justify-between bg-muted px-3 py-2 transition-colors hover:bg-card",children:[i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsx(Co,{icon:w.icon,className:"h-5 w-5 text-lg"}),i.jsx("span",{className:"font-display text-sm font-semibold text-fg-default",children:w.name})]}),i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsxs(Ot,{variant:w.hasExecutionData?"success":"warning",children:[w.hasExecutionData?i.jsx(d0,{className:"h-3 w-3"}):i.jsx(wl,{className:"h-3 w-3"}),w.hasExecutionData?"LIVE":"SCHEMA"]}),i.jsx(Us,{className:Ne("h-3 w-3 text-muted-foreground transition-transform",_&&"rotate-180")})]})]}),_&&i.jsxs("div",{className:"border-t border-border p-3",children:[!w.hasExecutionData&&i.jsxs("div",{className:"mb-3 flex items-center gap-2 rounded-sm border border-info bg-info/10 px-2 py-1 text-xs text-info",children:[i.jsx(Ei,{className:"h-3 w-3"}),"Schema view - Execute this node to see actual input data"]}),w.hasExecutionData&&i.jsxs("div",{className:"mb-3",children:[i.jsx("div",{className:"mb-1 text-xs font-medium tracking-wider text-muted-foreground uppercase",children:"Received Data"}),i.jsx("pre",{className:"m-0 max-h-[120px] overflow-auto rounded-sm border border-border bg-muted p-2 font-mono text-xs whitespace-pre-wrap break-words text-foreground",children:JSON.stringify(w.inputData,null,2)})]}),i.jsx("div",{className:"mb-2 text-xs font-medium tracking-wider text-muted-foreground uppercase",children:"Drag Variables to Parameters"}),i.jsx("div",{children:typeof w.outputSchema=="object"&&w.outputSchema!==null?Object.entries(w.outputSchema).map(([N,L])=>S(N,L,w.sourceNodeId||w.id)):i.jsx("div",{className:"text-sm italic text-muted-foreground",children:"No variables available"})})]})]},w.id)})}),i.jsxs("div",{className:"flex shrink-0 items-center justify-center gap-1 border-t border-border bg-background px-4 py-2 text-center text-xs text-muted-foreground",children:[i.jsx(Ei,{className:"h-3 w-3"}),"Drag variables into parameter fields to use them"]})]}):null};function yj({className:t,value:e,...s}){return i.jsx(E_,{"data-slot":"progress",className:Ne("relative flex h-1 w-full items-center overflow-x-hidden rounded-full bg-muted",t),...s,children:i.jsx(z_,{"data-slot":"progress-indicator",className:"size-full flex-1 bg-primary transition-all",style:{transform:`translateX(-${100-(e||0)}%)`}})})}function Mi({className:t,...e}){return i.jsx(M_,{"data-slot":"checkbox",className:Ne("peer relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border border-input transition-colors outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary",t),...e,children:i.jsx(T_,{"data-slot":"checkbox-indicator",className:"grid place-content-center text-current transition-none [&>svg]:size-3.5",children:i.jsx(Li,{})})})}function kp({className:t,...e}){return i.jsx(A_,{"data-slot":"accordion",className:Ne("flex w-full flex-col",t),...e})}function Sp({className:t,...e}){return i.jsx(O_,{"data-slot":"accordion-item",className:Ne("not-last:border-b",t),...e})}function _p({className:t,children:e,...s}){return i.jsx(R_,{className:"flex",children:i.jsxs(D_,{"data-slot":"accordion-trigger",className:Ne("group/accordion-trigger relative flex flex-1 items-start justify-between rounded-lg border border-transparent py-2.5 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:after:border-ring disabled:pointer-events-none disabled:opacity-50 **:data-[slot=accordion-trigger-icon]:ml-auto **:data-[slot=accordion-trigger-icon]:size-4 **:data-[slot=accordion-trigger-icon]:text-muted-foreground",t),...s,children:[e,i.jsx(Us,{"data-slot":"accordion-trigger-icon",className:"pointer-events-none shrink-0 group-aria-expanded/accordion-trigger:hidden"}),i.jsx(c0,{"data-slot":"accordion-trigger-icon",className:"pointer-events-none hidden shrink-0 group-aria-expanded/accordion-trigger:inline"})]})})}function jp({className:t,children:e,...s}){return i.jsx(I_,{"data-slot":"accordion-content",className:"overflow-hidden text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",...s,children:i.jsx("div",{className:Ne("pt-0 pb-2.5 [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4",t),children:e})})}function Wp({...t}){return i.jsx($_,{"data-slot":"alert-dialog",...t})}function bj({...t}){return i.jsx(W_,{"data-slot":"alert-dialog-trigger",...t})}function vj({...t}){return i.jsx(B_,{"data-slot":"alert-dialog-portal",...t})}function wj({className:t,...e}){return i.jsx(F_,{"data-slot":"alert-dialog-overlay",className:Ne("fixed inset-0 z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=closed]:animate-out data-[state=closed]:fade-out-0",t),...e})}function Bp({className:t,size:e="default",...s}){return i.jsxs(vj,{children:[i.jsx(wj,{}),i.jsx(q_,{"data-slot":"alert-dialog-content","data-size":e,className:Ne("group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-sm data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",t),...s})]})}function Fp({className:t,...e}){return i.jsx("div",{"data-slot":"alert-dialog-header",className:Ne("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-4 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",t),...e})}function Gp({className:t,...e}){return i.jsx("div",{"data-slot":"alert-dialog-footer",className:Ne("-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",t),...e})}function Qp({className:t,...e}){return i.jsx(H_,{"data-slot":"alert-dialog-title",className:Ne("text-base font-medium sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",t),...e})}function Kp({className:t,...e}){return i.jsx(U_,{"data-slot":"alert-dialog-description",className:Ne("text-sm text-balance text-muted-foreground md:text-pretty *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",t),...e})}function Yp({className:t,variant:e="default",size:s="default",...r}){return i.jsx(Ut,{variant:e,size:s,asChild:!0,children:i.jsx(V_,{"data-slot":"alert-dialog-action",className:Ne(t),...r})})}function Pp({className:t,variant:e="outline",size:s="default",...r}){return i.jsx(Ut,{variant:e,size:s,asChild:!0,children:i.jsx(Z_,{"data-slot":"alert-dialog-cancel",className:Ne(t),...r})})}const kj=Iu("action-btn btn inline-flex h-8 items-center gap-1.5 rounded-md border px-3.5 text-[13px] font-semibold transition-all outline-none select-none disabled:cursor-not-allowed disabled:opacity-50 focus-visible:ring-2 focus-visible:ring-ring/40",{variants:{intent:{run:"border-action-run-border bg-action-run-soft text-action-run hover:bg-action-run-hover",stop:"border-action-stop-border bg-action-stop-soft text-action-stop hover:bg-action-stop-hover",save:"border-action-save-border bg-action-save-soft text-action-save hover:bg-action-save-hover",config:"border-action-config-border bg-action-config-soft text-action-config hover:bg-action-config-hover",secret:"border-action-secret-border bg-action-secret-soft text-action-secret hover:bg-action-secret-hover",tools:"border-action-tools-border bg-action-tools-soft text-action-tools hover:bg-action-tools-hover"}},defaultVariants:{intent:"save"}}),Xt=j.forwardRef(({className:t,intent:e,onClick:s,...r},c)=>{const u=s?f=>{Hn.play("click"),s(f)}:f=>{Hn.play("click")};return i.jsx("button",{ref:c,type:r.type??"button",className:Ne(kj({intent:e}),t),onClick:u,...r})});Xt.displayName="ActionButton";function Xp({delayDuration:t=0,...e}){return i.jsx(G_,{"data-slot":"tooltip-provider",delayDuration:t,...e})}function Jp({...t}){return i.jsx(Q_,{"data-slot":"tooltip",...t})}function em({...t}){return i.jsx(K_,{"data-slot":"tooltip-trigger",...t})}function tm({className:t,sideOffset:e=0,children:s,...r}){return i.jsx(Y_,{children:i.jsxs(P_,{"data-slot":"tooltip-content",sideOffset:e,className:Ne("z-50 inline-flex w-fit max-w-xs origin-(--radix-tooltip-content-transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pr-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-sm data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",t),...r,children:[s,i.jsx(X_,{className:"z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground"})]})})}const Wu=()=>{const{validateApiKey:t,getStoredApiKey:e,saveApiKey:s,deleteApiKey:r,validateMapsKey:c,validateApifyKey:u,getAiModels:f,sendRequest:d,isConnected:h}=Ct(),[g,x]=j.useState(!1),[y,b]=j.useState(null),k=j.useCallback(async(D,U)=>{x(!0),b(null);try{const W=await t(D,U);return W.valid||b(W.message||"Validation failed"),{isValid:W.valid,error:W.message,models:W.models}}catch(W){const T=W.message||"Validation failed";return b(T),{isValid:!1,error:T}}finally{x(!1)}},[t]),S=j.useCallback(async(D,U)=>{try{const W=await s(D,U);return{isValid:W,error:W?void 0:"Failed to save API key"}}catch(W){return{isValid:!1,error:W.message||"Failed to save API key"}}},[s]),w=j.useCallback(async D=>{try{const U=await e(D);return U.hasKey&&U.apiKey||null}catch(U){return console.warn(`Error retrieving API key for ${D}:`,U),null}},[e]),_=j.useCallback(async D=>{try{return(await e(D)).hasKey}catch{return!1}},[e]),N=j.useCallback(async D=>{try{const U=await e(D);return U.hasKey&&U.models&&U.models.length>0?U.models:null}catch(U){return console.warn(`Error retrieving models for ${D}:`,U),null}},[e]),L=j.useCallback(async D=>{try{await r(D)}catch(U){console.warn(`Error removing API key for ${D}:`,U)}},[r]),z=j.useCallback(async D=>{x(!0),b(null);try{const U=await c(D);return U.valid||b(U.message||"Validation failed"),{isValid:U.valid,error:U.message}}catch(U){const W=U.message||"Validation failed";return b(W),{isValid:!1,error:W}}finally{x(!1)}},[c]),O=j.useCallback(async D=>{x(!0),b(null);try{const U=await u(D);return U.valid||b(U.message||"Validation failed"),{isValid:U.valid,error:U.message}}catch(U){const W=U.message||"Validation failed";return b(W),{isValid:!1,error:W}}finally{x(!1)}},[u]),I=j.useCallback(async(D,U)=>{try{return await f(D,U)}catch(W){return console.warn(`Error fetching AI models for ${D}:`,W),[]}},[f]),q=j.useCallback(async D=>{const U={default_model:"",temperature:.7,max_tokens:4096,thinking_enabled:!1,thinking_budget:2048,reasoning_effort:"medium",reasoning_format:"parsed"};if(!h)return U;try{return(await d("get_provider_defaults",{provider:D}))?.defaults||U}catch(W){return console.warn(`Error fetching provider defaults for ${D}:`,W),U}},[d,h]),M=j.useCallback(async(D,U)=>{if(!h)return!1;try{return(await d("save_provider_defaults",{provider:D,defaults:U}))?.success||!1}catch(W){return console.warn(`Error saving provider defaults for ${D}:`,W),!1}},[d,h]),E=j.useCallback(async()=>{if(!h)return[];try{return(await d("get_provider_usage_summary",{}))?.providers||[]}catch(D){return console.warn("Error fetching provider usage summary:",D),[]}},[d,h]),$=j.useCallback(async D=>{if(!h)return[];try{return(await d("get_api_usage_summary",{service:D}))?.services||[]}catch(U){return console.warn("Error fetching API usage summary:",U),[]}},[d,h]),Q=j.useCallback(async(D,U)=>{const W={found:!1,model:D,provider:U,max_output_tokens:4096,context_length:128e3,temperature_range:[0,2],supports_thinking:!1,thinking_type:"none",is_reasoning_model:!1};if(!h)return W;try{return await d("get_model_constraints",{model:D,provider:U})||W}catch(T){return console.warn(`Error fetching model constraints for ${U}/${D}:`,T),W}},[d,h]),H=j.useCallback(async()=>{const D={providers:[],global_provider:null,global_model:null};if(!h)return D;try{return await d("get_validated_ai_providers",{})||D}catch(U){return console.warn("Error fetching validated AI providers:",U),D}},[d,h]),R=j.useCallback(async(D,U)=>{if(!h)return!1;try{return(await d("save_global_model",{provider:D,model:U}))?.success??!1}catch(W){return console.warn("Error saving global model:",W),!1}},[d,h]);return{validateApiKey:k,saveApiKey:S,getStoredApiKey:w,hasStoredKey:_,getStoredModels:N,removeApiKey:L,validateGoogleMapsKey:z,validateApifyKey:O,getAiModels:I,getProviderDefaults:q,saveProviderDefaults:M,getProviderUsageSummary:E,getAPIUsageSummary:$,getModelConstraints:Q,getValidatedAiProviders:H,saveGlobalModel:R,isValidating:g,validationError:y,isConnected:h}},Sj=({provider:t,onSuccess:e})=>{const[s,r]=j.useState("idle"),[c,u]=j.useState(!1),{validateApiKey:f,getStoredApiKey:d,hasStoredKey:h,removeApiKey:g,getStoredModels:x}=Wu();j.useEffect(()=>{if(!t)return;(async()=>{try{if(await h(t)){u(!0),r("valid");const _=await x(t);_?.length&&e&&e(_)}}catch(w){console.warn("Error checking stored key:",w)}})()},[t,e,h,x]);const y=j.useCallback(async S=>{if(!t||!S.trim()){Pt.error("Please enter an API key");return}r("validating");try{const w=await f(t,S.trim());w.isValid?(r("valid"),u(!0),Pt.success("API key validated successfully!"),w.models?.length&&e&&e(w.models)):(r("invalid"),Pt.error(w.error||"Invalid API key"))}catch(w){r("invalid"),Pt.error(w.message||"Validation failed")}},[t,e,f]),b=j.useCallback(async()=>{if(t)try{await g(t),u(!1),r("idle"),Pt.success("API key cleared")}catch{Pt.error("Failed to clear API key")}},[t,g]),k=j.useCallback(async()=>t?await d(t):null,[t,d]);return{status:s,hasStoredKey:c,validate:y,clear:b,getStoredKey:k,isValidating:s==="validating",isValid:s==="valid",isInvalid:s==="invalid"}},_j=t=>{const e=Fe.c(62),{value:s,onChange:r,placeholder:c,validationConfig:u,onValidationSuccess:f,isDragOver:d,onDragOver:h,onDragLeave:g,onDrop:x}=t,y=d===void 0?!1:d;let b;e[0]!==f||e[1]!==u.provider?(b={provider:u.provider,onSuccess:f},e[0]=f,e[1]=u.provider,e[2]=b):b=e[2];const{status:k,hasStoredKey:S,validate:w,clear:_,getStoredKey:N,isValidating:L,isValid:z}=Sj(b);let O,I;e[3]!==N||e[4]!==S||e[5]!==r||e[6]!==s?(O=()=>{S&&!s&&N().then(ve=>{ve&&r(ve)})},I=[S,s,r,N],e[3]=N,e[4]=S,e[5]=r,e[6]=s,e[7]=O,e[8]=I):(O=e[7],I=e[8]),j.useEffect(O,I);let q;e[9]!==w||e[10]!==s?(q=()=>w(s),e[9]=w,e[10]=s,e[11]=q):q=e[11];const M=q;let E;e[12]!==_||e[13]!==r?(E=async()=>{await _(),r("")},e[12]=_,e[13]=r,e[14]=E):E=e[14];const $=E;let Q;e[15]!==r?(Q=ve=>r(ve.target.value),e[15]=r,e[16]=Q):Q=e[16];const H=c||"Enter API key...",R=k==="invalid"||void 0,D=y&&"border-primary bg-primary/10";let U;e[17]!==D?(U=Ne("font-mono pr-8",D),e[17]=D,e[18]=U):U=e[18];let W;e[19]!==g||e[20]!==h||e[21]!==x||e[22]!==U||e[23]!==Q||e[24]!==H||e[25]!==R||e[26]!==s?(W=i.jsx(on,{type:"password",value:s,onChange:Q,placeholder:H,onDragOver:h,onDragLeave:g,onDrop:x,"aria-invalid":R,className:U}),e[19]=g,e[20]=h,e[21]=x,e[22]=U,e[23]=Q,e[24]=H,e[25]=R,e[26]=s,e[27]=W):W=e[27];let T;e[28]!==L?(T=L&&i.jsx(mo,{className:"h-4 w-4 animate-spin text-muted-foreground"}),e[28]=L,e[29]=T):T=e[29];let A;e[30]!==z||e[31]!==L?(A=!L&&z&&i.jsx(Bx,{className:"h-4 w-4 text-success"}),e[30]=z,e[31]=L,e[32]=A):A=e[32];let K;e[33]!==L||e[34]!==k?(K=!L&&k==="invalid"&&i.jsx(AS,{className:"h-4 w-4 text-destructive"}),e[33]=L,e[34]=k,e[35]=K):K=e[35];let ne;e[36]!==T||e[37]!==A||e[38]!==K?(ne=i.jsxs("div",{className:"pointer-events-none absolute top-1/2 right-2 -translate-y-1/2",children:[T,A,K]}),e[36]=T,e[37]=A,e[38]=K,e[39]=ne):ne=e[39];let X;e[40]!==W||e[41]!==ne?(X=i.jsxs("div",{className:"relative flex-1",children:[W,ne]}),e[40]=W,e[41]=ne,e[42]=X):X=e[42];let ue;e[43]!==M||e[44]!==z||e[45]!==L||e[46]!==u.showValidateButton||e[47]!==s?(ue=u.showValidateButton&&i.jsxs(Ut,{variant:z?"default":"outline",disabled:!s?.trim()||L,onClick:M,children:[L&&i.jsx(mo,{className:"h-4 w-4 animate-spin"}),L?"Validating":z?"Valid":"Validate"]}),e[43]=M,e[44]=z,e[45]=L,e[46]=u.showValidateButton,e[47]=s,e[48]=ue):ue=e[48];let fe;e[49]!==$||e[50]!==S?(fe=S&&i.jsx(Xp,{children:i.jsxs(Jp,{children:[i.jsx(em,{asChild:!0,children:i.jsx(Ut,{variant:"ghost",size:"icon",onClick:$,children:i.jsx($u,{className:"h-4 w-4"})})}),i.jsx(tm,{children:"Clear stored API key"})]})}),e[49]=$,e[50]=S,e[51]=fe):fe=e[51];let pe;e[52]!==X||e[53]!==ue||e[54]!==fe?(pe=i.jsxs("div",{className:"flex w-full items-stretch gap-1",children:[X,ue,fe]}),e[52]=X,e[53]=ue,e[54]=fe,e[55]=pe):pe=e[55];let we;e[56]!==S||e[57]!==z?(we=S&&z&&i.jsxs(Ot,{variant:"success",className:"w-fit gap-1",children:[i.jsx(Bx,{className:"h-3 w-3"}),"Validated"]}),e[56]=S,e[57]=z,e[58]=we):we=e[58];let je;return e[59]!==pe||e[60]!==we?(je=i.jsxs("div",{className:"flex w-full flex-col gap-1.5",children:[pe,we]}),e[59]=pe,e[60]=we,e[61]=je):je=e[61],je};var jj=h4();const Nj=ym(jj);var Cj=g4();const ji=ym(Cj);var Oy={},Ry;function Lj(){return Ry||(Ry=1,Prism.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},Prism.languages.python["string-interpolation"].inside.interpolation.inside.rest=Prism.languages.python,Prism.languages.py=Prism.languages.python),Oy}Lj();Prism.languages.javascript=Prism.languages.extend("clike",{"class-name":[Prism.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/});Prism.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/;Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:Prism.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:Prism.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/});Prism.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}});Prism.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}});Prism.languages.markup&&(Prism.languages.markup.tag.addInlined("script","javascript"),Prism.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript"));Prism.languages.js=Prism.languages.javascript;var Dy={},Iy;function Ej(){return Iy||(Iy=1,(function(t){t.languages.typescript=t.languages.extend("javascript",{"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|type)\s+)(?!keyof\b)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?:\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),t.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete t.languages.typescript.parameter,delete t.languages.typescript["literal-property"];var e=t.languages.extend("typescript",{});delete e["class-name"],t.languages.typescript["class-name"].inside=e,t.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:e}}}}),t.languages.ts=t.languages.typescript})(Prism)),Dy}Ej();(function(t){var e=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function s(x){return x=x.replace(/<inner>/g,function(){return e}),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+x+")")}var r=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,c=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,function(){return r}),u=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source;t.languages.markdown=t.languages.extend("markup",{}),t.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:t.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+c+u+"(?:"+c+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+c+u+")(?:"+c+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(r),inside:t.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+c+")"+u+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+c+"$"),inside:{"table-header":{pattern:RegExp(r),alias:"important",inside:t.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:s(/\b__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__\b|\*\*(?:(?!\*)<inner>|\*(?:(?!\*)<inner>)+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:s(/\b_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_\b|\*(?:(?!\*)<inner>|\*\*(?:(?!\*)<inner>)+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:s(/(~~?)(?:(?!~)<inner>)+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:s(/!?\[(?:(?!\])<inner>)+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\])<inner>)+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach(function(x){["url","bold","italic","strike","code-snippet"].forEach(function(y){x!==y&&(t.languages.markdown[x].inside.content.inside[y]=t.languages.markdown[y])})}),t.hooks.add("after-tokenize",function(x){if(x.language!=="markdown"&&x.language!=="md")return;function y(b){if(!(!b||typeof b=="string"))for(var k=0,S=b.length;k<S;k++){var w=b[k];if(w.type!=="code"){y(w.content);continue}var _=w.content[1],N=w.content[3];if(_&&N&&_.type==="code-language"&&N.type==="code-block"&&typeof _.content=="string"){var L=_.content.replace(/\b#/g,"sharp").replace(/\b\+\+/g,"pp");L=(/[a-z][\w-]*/i.exec(L)||[""])[0].toLowerCase();var z="language-"+L;N.alias?typeof N.alias=="string"?N.alias=[N.alias,z]:N.alias.push(z):N.alias=[z]}}}y(x.tokens)}),t.hooks.add("wrap",function(x){if(x.type==="code-block"){for(var y="",b=0,k=x.classes.length;b<k;b++){var S=x.classes[b],w=/language-(.+)/.exec(S);if(w){y=w[1];break}}var _=t.languages[y];if(_)x.content=t.highlight(g(x.content),_,y);else if(y&&y!=="none"&&t.plugins.autoloader){var N="md-"+new Date().valueOf()+"-"+Math.floor(Math.random()*1e16);x.attributes.id=N,t.plugins.autoloader.loadLanguages(y,function(){var L=document.getElementById(N);L&&(L.innerHTML=t.highlight(L.textContent,t.languages[y],y))})}}});var f=RegExp(t.languages.markup.tag.pattern.source,"gi"),d={amp:"&",lt:"<",gt:">",quot:'"'},h=String.fromCodePoint||String.fromCharCode;function g(x){var y=x.replace(f,"");return y=y.replace(/&(\w{1,8}|#x?[\da-f]{1,8});/gi,function(b,k){if(k=k.toLowerCase(),k[0]==="#"){var S;return k[1]==="x"?S=parseInt(k.slice(2),16):S=Number(k.slice(1)),h(S)}else{var w=d[k];return w||b}}),y}t.languages.md=t.languages.markdown})(Prism);const $y=({value:t,onChange:e,language:s="python",placeholder:r})=>{const c=f=>{e(f)},u=f=>{const d=ji.languages[s]||ji.languages.python;return ji.highlight(f,d,s)};return i.jsx("div",{className:"h-full overflow-auto rounded-md border border-border",children:i.jsx("div",{className:"code-editor-container h-full bg-muted text-foreground",children:i.jsx(Nj,{value:t||"",onValueChange:c,highlight:u,placeholder:r,padding:12,tabSize:4,insertSpaces:!0,style:{fontFamily:"'Consolas', 'Monaco', 'Fira Code', monospace",fontSize:13,lineHeight:1.5,minHeight:"100%",height:"auto",overflow:"visible"}})})})};class lr{static dynamicOptions={};static listeners=[];static subscribe(e){return this.listeners.push(e),()=>{this.listeners=this.listeners.filter(s=>s!==e)}}static updateParameterOptions(e,s,r){this.dynamicOptions[e]||(this.dynamicOptions[e]={}),this.dynamicOptions[e][s]=r,this.listeners.forEach(c=>{c(e,s,r)})}static getParameterOptions(e,s){return this.dynamicOptions[e]?.[s]||null}static clearParameterOptions(e,s){this.dynamicOptions[e]&&(delete this.dynamicOptions[e][s],this.listeners.forEach(r=>{r(e,s,[])}))}static clearNodeOptions(e){if(this.dynamicOptions[e]){const s=Object.keys(this.dynamicOptions[e]);delete this.dynamicOptions[e],s.forEach(r=>{this.listeners.forEach(c=>{c(e,r,[])})})}}static createModelOptions(e){return e.map(s=>({name:this.formatModelName(s),value:s,label:this.formatModelName(s),description:`Model: ${s}`}))}static formatModelName(e){const s=e.startsWith("[FREE] "),c=(s?e.slice(7):e).replace(/^gpt-/,"GPT-").replace(/^claude-/,"Claude ").replace(/^gemini-/,"Gemini ").replace(/turbo/i,"Turbo").replace(/^o1-/,"O1-");return s?`[FREE] ${c}`:c}}const xv=(t,e)=>{if(!t.displayOptions?.show)return!0;for(const[s,r]of Object.entries(t.displayOptions.show)){const c=e[s];if(Array.isArray(r)){if(!r.includes(c))return!1}else if(c!==r)return!1}return!0},zj={...uv,claudeChatModel:"anthropic",googleChatModel:"gemini",azureChatModel:"azure_openai",cohereChatModel:"cohere"},Mj=({parameter:t,value:e,onChange:s,allParameters:r,theme:c})=>{const[u,f]=j.useState(!1),d=e||{},h=Object.keys(d).filter(k=>d[k]!==void 0),g=t.options?.filter(k=>!h.includes(k.name))||[],x=k=>{const S=t.options?.find(w=>w.name===k);S&&(s({...d,[k]:S.default}),f(!1))},y=k=>{const S={...d};delete S[k],s(S)},b=(k,S)=>{s({...d,[k]:S})};return i.jsxs("div",{children:[h.length===0&&i.jsx("div",{style:{fontSize:"14px",color:c.colors.textSecondary,marginBottom:"12px",padding:"8px 0"},children:"No properties"}),h.map(k=>{const S=t.options?.find(w=>w.name===k);return S?i.jsxs("div",{style:{marginBottom:"16px",padding:"12px",border:`1px solid ${c.colors.border}`,borderRadius:"4px",backgroundColor:c.colors.backgroundAlt,position:"relative"},children:[i.jsx("button",{onClick:()=>y(k),style:{position:"absolute",top:"6px",right:"6px",background:"none",border:"none",color:c.colors.textSecondary,cursor:"pointer",fontSize:"14px",padding:"2px 4px",borderRadius:"2px"},onMouseEnter:w=>w.currentTarget.style.backgroundColor=c.colors.border,onMouseLeave:w=>w.currentTarget.style.backgroundColor="transparent",title:"Remove",children:"✕"}),i.jsx(Um,{parameter:S,value:d[k],onChange:w=>b(k,w),allParameters:r})]},k):null}),g.length>0&&i.jsxs("div",{style:{position:"relative"},children:[i.jsxs("button",{onClick:()=>f(!u),style:{width:"100%",padding:"10px 12px",border:`1px solid ${c.colors.border}`,borderRadius:"4px",backgroundColor:c.colors.backgroundAlt,color:c.colors.textSecondary,cursor:"pointer",fontSize:"14px",display:"flex",alignItems:"center",justifyContent:"space-between",transition:"all 0.2s ease"},onMouseEnter:k=>k.currentTarget.style.backgroundColor=c.colors.borderHover,onMouseLeave:k=>k.currentTarget.style.backgroundColor=c.colors.backgroundAlt,children:[t.placeholder||"Add Option",i.jsx("span",{style:{transform:u?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s ease"},children:"▼"})]}),u&&i.jsx("div",{style:{position:"absolute",top:"100%",left:0,right:0,zIndex:1e3,backgroundColor:c.colors.background,border:`1px solid ${c.colors.border}`,borderRadius:"4px",marginTop:"2px",boxShadow:`0 4px 6px -1px ${c.colors.shadow}`,maxHeight:"200px",overflowY:"auto"},children:g.map((k,S)=>i.jsxs("button",{onClick:()=>x(k.name),style:{width:"100%",padding:"10px 12px",border:"none",backgroundColor:"transparent",color:c.colors.text,cursor:"pointer",fontSize:"14px",textAlign:"left",borderBottom:S<g.length-1?`1px solid ${c.colors.border}`:"none"},onMouseEnter:w=>w.currentTarget.style.backgroundColor=c.colors.backgroundAlt,onMouseLeave:w=>w.currentTarget.style.backgroundColor="transparent",children:[i.jsx("div",{style:{fontWeight:"500"},children:k.displayName}),k.description&&i.jsx("div",{style:{fontSize:"12px",color:c.colors.textSecondary,marginTop:"2px"},children:k.description})]},k.name))})]})]})},Tj=({value:t,onChange:e,onNameChange:s,storedName:r,placeholder:c,theme:u,isDragOver:f,onDragOver:d,onDragLeave:h,onDrop:g})=>{const[x,y]=j.useState([]),[b,k]=j.useState(!1),[S,w]=j.useState(!1),[_,N]=j.useState(null),[L,z]=j.useState(null),O=r||L,{getWhatsAppGroups:I}=Ct();j.useEffect(()=>{r&&z(r)},[r]);const q=async()=>{k(!0),N(null);try{const H=await I();if(console.log("[GroupIdSelector] Raw groups from API:",H.groups?.map(R=>({name:R.name,jid:R.jid,is_community:R.is_community}))),H.success&&H.groups.length>0){const R=H.groups.filter(D=>!D.is_community);if(console.log("[GroupIdSelector] After filtering communities:",R.length,"groups remaining"),R.length===0){N("Only communities found (no chat history available)");return}if(y(R),w(!0),t){const D=R.find(U=>U.jid===t);D&&D.name!==r&&(z(D.name),s?.(D.name))}}else H.error?N(H.error):N("No groups found")}catch(H){N(H.message||"Failed to load groups")}finally{k(!1)}},M=H=>{e(H.jid),z(H.name),s?.(H.name),w(!1)},E=H=>{e(H.target.value),z(null),s?.("")},$=O||t,Q=O!==null&&t;return i.jsxs("div",{style:{position:"relative"},children:[i.jsxs("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:[i.jsx("input",{type:"text",value:$,onChange:E,placeholder:c||"123456789@g.us",onDragOver:d,onDragLeave:h,onDrop:g,style:{flex:1,padding:"8px 12px",border:f?`2px solid ${u.colors.focus}`:`1px solid ${u.colors.border}`,borderRadius:"6px",fontSize:"14px",backgroundColor:Q?u.colors.backgroundAlt:f?u.colors.focusRing:u.colors.background,color:Q?u.colors.success:t&&t.includes("{{")?u.colors.templateVariable:u.colors.text,outline:"none",transition:"all 0.2s ease",fontFamily:t&&t.includes("{{")?"monospace":"system-ui, sans-serif",fontWeight:Q?"500":"normal"},onFocus:H=>H.target.style.borderColor=u.colors.focus,onBlur:H=>H.target.style.borderColor=u.colors.border}),i.jsx("button",{onClick:q,disabled:b,style:{padding:"8px 12px",border:`1px solid ${b?u.colors.border:`${u.colors.focus}40`}`,borderRadius:"6px",backgroundColor:b?"transparent":`${u.colors.focus}18`,color:b?u.colors.textMuted:u.colors.focus,cursor:b?"wait":"pointer",fontSize:"13px",fontWeight:600,transition:"all 0.2s ease",whiteSpace:"nowrap",opacity:b?.7:1},onMouseEnter:H=>{b||(H.currentTarget.style.backgroundColor=`${u.colors.focus}30`)},onMouseLeave:H=>{H.currentTarget.style.backgroundColor=b?"transparent":`${u.colors.focus}18`},title:"Load WhatsApp groups",children:b?"Loading...":"Load"})]}),Q&&i.jsx("div",{style:{fontSize:"11px",color:u.colors.textSecondary,marginTop:"4px",fontFamily:"monospace"},children:t}),_&&i.jsx("div",{style:{fontSize:"12px",color:u.colors.error,marginTop:"4px"},children:_}),S&&x.length>0&&i.jsxs("div",{style:{position:"absolute",top:"100%",left:0,right:0,marginTop:"4px",backgroundColor:u.colors.background,border:`1px solid ${u.colors.border}`,borderRadius:"6px",boxShadow:`0 4px 12px ${u.colors.shadow}`,maxHeight:"200px",overflowY:"auto",zIndex:1e3},children:[x.map((H,R)=>i.jsxs("button",{onClick:()=>M(H),style:{width:"100%",padding:"10px 12px",border:"none",backgroundColor:"transparent",color:u.colors.text,cursor:"pointer",fontSize:"13px",textAlign:"left",borderBottom:R<x.length-1?`1px solid ${u.colors.border}`:"none"},onMouseEnter:D=>D.currentTarget.style.backgroundColor=u.colors.backgroundAlt,onMouseLeave:D=>D.currentTarget.style.backgroundColor="transparent",children:[i.jsx("div",{style:{fontWeight:"500"},children:H.name}),i.jsxs("div",{style:{fontSize:"11px",color:u.colors.textSecondary,marginTop:"2px",fontFamily:"monospace"},children:[H.jid,H.size&&i.jsxs("span",{style:{marginLeft:"8px"},children:["(",H.size," members)"]})]})]},H.jid)),i.jsx("button",{onClick:()=>w(!1),style:{width:"100%",padding:"8px 12px",border:"none",borderTop:`1px solid ${u.colors.border}`,backgroundColor:u.colors.backgroundAlt,color:u.colors.textSecondary,cursor:"pointer",fontSize:"12px",textAlign:"center"},onMouseEnter:H=>H.currentTarget.style.color=u.colors.text,onMouseLeave:H=>H.currentTarget.style.color=u.colors.textSecondary,children:"Close"})]})]})},Aj=({value:t,onChange:e,onNameChange:s,storedName:r,placeholder:c,theme:u,isDragOver:f,onDragOver:d,onDragLeave:h,onDrop:g,groupId:x})=>{const[y,b]=j.useState([]),[k,S]=j.useState(!1),[w,_]=j.useState(!1),[N,L]=j.useState(null),[z,O]=j.useState(null),I=r||z,{getWhatsAppGroupInfo:q}=Ct();j.useEffect(()=>{r&&O(r)},[r]);const M=async()=>{if(!x){L("Select a group first");return}S(!0),L(null);try{const D=await q(x);if(D.success&&D.participants&&D.participants.length>0){if(b(D.participants),_(!0),t){const U=D.participants.find(W=>W.phone===t);if(U){const W=U.name||U.phone;W!==r&&(O(W),s?.(W))}}}else D.error?L(D.error):L("No members found")}catch(D){L(D.message||"Failed to load members")}finally{S(!1)}},E=D=>{const U=D.name||D.phone;e(D.phone),O(U),s?.(U),_(!1)},$=()=>{e(""),O(null),s?.(""),_(!1)},Q=D=>{e(D.target.value),O(null),s?.("")},H=I||t,R=I!==null&&t;return i.jsxs("div",{style:{position:"relative"},children:[i.jsxs("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:[i.jsx("input",{type:"text",value:H,onChange:Q,placeholder:c||"All members (leave empty)",onDragOver:d,onDragLeave:h,onDrop:g,style:{flex:1,padding:"8px 12px",border:f?`2px solid ${u.colors.focus}`:`1px solid ${u.colors.border}`,borderRadius:"6px",fontSize:"14px",backgroundColor:R?u.colors.backgroundAlt:f?u.colors.focusRing:u.colors.background,color:R?u.colors.success:t&&t.includes("{{")?u.colors.templateVariable:u.colors.text,outline:"none",transition:"all 0.2s ease",fontFamily:t&&t.includes("{{")?"monospace":"system-ui, sans-serif",fontWeight:R?"500":"normal"},onFocus:D=>D.target.style.borderColor=u.colors.focus,onBlur:D=>D.target.style.borderColor=u.colors.border}),i.jsx("button",{onClick:M,disabled:k||!x,style:{padding:"8px 12px",border:`1px solid ${k||!x?u.colors.border:`${u.colors.focus}40`}`,borderRadius:"6px",backgroundColor:k||!x?"transparent":`${u.colors.focus}18`,color:k||!x?u.colors.textMuted:u.colors.focus,cursor:k||!x?"not-allowed":"pointer",fontSize:"13px",fontWeight:600,transition:"all 0.2s ease",whiteSpace:"nowrap",opacity:k||!x?.7:1},onMouseEnter:D=>{!k&&x&&(D.currentTarget.style.backgroundColor=`${u.colors.focus}30`)},onMouseLeave:D=>{D.currentTarget.style.backgroundColor=k||!x?"transparent":`${u.colors.focus}18`},title:x?"Load group members":"Select a group first",children:k?"Loading...":"Load"})]}),R&&i.jsx("div",{style:{fontSize:"11px",color:u.colors.textSecondary,marginTop:"4px",fontFamily:"monospace"},children:t}),N&&i.jsx("div",{style:{fontSize:"12px",color:u.colors.error,marginTop:"4px"},children:N}),w&&y.length>0&&i.jsxs("div",{style:{position:"absolute",top:"100%",left:0,right:0,marginTop:"4px",backgroundColor:u.colors.background,border:`1px solid ${u.colors.border}`,borderRadius:"6px",boxShadow:`0 4px 12px ${u.colors.shadow}`,maxHeight:"250px",overflowY:"auto",zIndex:1e3},children:[i.jsxs("button",{onClick:$,style:{width:"100%",padding:"10px 12px",border:"none",backgroundColor:t?"transparent":u.colors.backgroundAlt,color:u.colors.text,cursor:"pointer",fontSize:"13px",textAlign:"left",borderBottom:`1px solid ${u.colors.border}`},onMouseEnter:D=>D.currentTarget.style.backgroundColor=u.colors.backgroundAlt,onMouseLeave:D=>D.currentTarget.style.backgroundColor=t?"transparent":u.colors.backgroundAlt,children:[i.jsx("div",{style:{fontWeight:"500",color:u.colors.textSecondary},children:"All Members"}),i.jsx("div",{style:{fontSize:"11px",color:u.colors.textMuted,marginTop:"2px"},children:"Receive from anyone in group"})]}),y.map((D,U)=>i.jsxs("button",{onClick:()=>E(D),style:{width:"100%",padding:"10px 12px",border:"none",backgroundColor:t===D.phone?u.colors.backgroundAlt:"transparent",color:u.colors.text,cursor:"pointer",fontSize:"13px",textAlign:"left",borderBottom:U<y.length-1?`1px solid ${u.colors.border}`:"none"},onMouseEnter:W=>W.currentTarget.style.backgroundColor=u.colors.backgroundAlt,onMouseLeave:W=>W.currentTarget.style.backgroundColor=t===D.phone?u.colors.backgroundAlt:"transparent",children:[i.jsxs("div",{style:{fontWeight:"500"},children:[D.name||D.phone,D.is_admin&&i.jsx("span",{style:{marginLeft:"8px",fontSize:"10px",color:u.colors.warning},children:"(Admin)"})]}),i.jsx("div",{style:{fontSize:"11px",color:u.colors.textSecondary,marginTop:"2px",fontFamily:"monospace"},children:D.phone})]},D.jid||D.phone)),i.jsx("button",{onClick:()=>_(!1),style:{width:"100%",padding:"8px 12px",border:"none",borderTop:`1px solid ${u.colors.border}`,backgroundColor:u.colors.backgroundAlt,color:u.colors.textSecondary,cursor:"pointer",fontSize:"12px",textAlign:"center"},onMouseEnter:D=>D.currentTarget.style.color=u.colors.text,onMouseLeave:D=>D.currentTarget.style.color=u.colors.textSecondary,children:"Close"})]})]})},Oj=({value:t,onChange:e,onNameChange:s,storedName:r,placeholder:c,theme:u,isDragOver:f,onDragOver:d,onDragLeave:h,onDrop:g})=>{const[x,y]=j.useState([]),[b,k]=j.useState(!1),[S,w]=j.useState(!1),[_,N]=j.useState(null),[L,z]=j.useState(null),O=r||L,{getWhatsAppChannels:I}=Ct();j.useEffect(()=>{r&&z(r)},[r]);const q=async()=>{k(!0),N(null);try{const R=await I();if(R.success&&R.channels.length>0){if(y(R.channels),w(!0),t){const D=R.channels.find(U=>U.jid===t);D&&D.name!==r&&(z(D.name),s?.(D.name))}}else R.error?N(R.error):N("No channels found")}catch(R){N(R.message||"Failed to load channels")}finally{k(!1)}},M=R=>{e(R.jid),z(R.name),s?.(R.name),w(!1)},E=R=>{e(R.target.value),z(null),s?.("")},$=O||t,Q=O!==null&&t,H=t&&t.includes("{{");return i.jsxs("div",{style:{position:"relative"},children:[i.jsxs("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:[i.jsx("input",{type:"text",value:$,onChange:E,placeholder:c||"120363...@newsletter or https://whatsapp.com/channel/...",onDragOver:d,onDragLeave:h,onDrop:g,style:{flex:1,padding:"8px 12px",border:f?`2px solid ${u.colors.focus}`:`1px solid ${u.colors.border}`,borderRadius:u.borderRadius.md,fontSize:u.fontSize.base,backgroundColor:Q?u.colors.backgroundAlt:f?u.colors.focusRing:u.colors.background,color:Q?u.colors.success:H?u.colors.templateVariable:u.colors.text,outline:"none",transition:"all 0.2s ease",fontFamily:H?u.fontFamily.mono:u.fontFamily.sans,fontWeight:Q?u.fontWeight.medium:u.fontWeight.normal},onFocus:R=>R.target.style.borderColor=u.colors.focus,onBlur:R=>R.target.style.borderColor=u.colors.border}),i.jsx("button",{onClick:q,disabled:b,style:{padding:"8px 12px",border:`1px solid ${b?u.colors.border:`${u.colors.focus}40`}`,borderRadius:u.borderRadius.md,backgroundColor:b?"transparent":`${u.colors.focus}18`,color:b?u.colors.textMuted:u.colors.focus,cursor:b?"wait":"pointer",fontSize:u.fontSize.sm,fontWeight:u.fontWeight.semibold,fontFamily:u.fontFamily.sans,transition:"all 0.2s ease",whiteSpace:"nowrap",opacity:b?.7:1},onMouseEnter:R=>{b||(R.currentTarget.style.backgroundColor=`${u.colors.focus}30`)},onMouseLeave:R=>{R.currentTarget.style.backgroundColor=b?"transparent":`${u.colors.focus}18`},title:"Load WhatsApp channels",children:b?"Loading...":"Load"})]}),Q&&i.jsx("div",{style:{fontSize:u.fontSize.xs,color:u.colors.textSecondary,marginTop:"4px",fontFamily:u.fontFamily.mono},children:t}),_&&i.jsx("div",{style:{fontSize:u.fontSize.sm,color:u.colors.error,marginTop:"4px",fontFamily:u.fontFamily.sans},children:_}),S&&x.length>0&&i.jsxs("div",{style:{position:"absolute",top:"100%",left:0,right:0,marginTop:"4px",backgroundColor:u.colors.background,border:`1px solid ${u.colors.border}`,borderRadius:u.borderRadius.md,boxShadow:`0 4px 12px ${u.colors.shadow}`,maxHeight:"200px",overflowY:"auto",zIndex:1e3},children:[x.map((R,D)=>i.jsxs("button",{onClick:()=>M(R),style:{width:"100%",padding:"10px 12px",border:"none",backgroundColor:"transparent",color:u.colors.text,cursor:"pointer",fontSize:u.fontSize.sm,fontFamily:u.fontFamily.sans,textAlign:"left",borderBottom:D<x.length-1?`1px solid ${u.colors.border}`:"none"},onMouseEnter:U=>U.currentTarget.style.backgroundColor=u.colors.backgroundAlt,onMouseLeave:U=>U.currentTarget.style.backgroundColor="transparent",children:[i.jsx("div",{style:{fontWeight:u.fontWeight.medium},children:R.name}),i.jsxs("div",{style:{fontSize:u.fontSize.xs,color:u.colors.textSecondary,marginTop:"2px",fontFamily:u.fontFamily.mono},children:[R.jid,R.subscriber_count!=null&&i.jsxs("span",{style:{marginLeft:"8px"},children:["(",R.subscriber_count," subscribers)"]})]})]},R.jid)),i.jsx("button",{onClick:()=>w(!1),style:{width:"100%",padding:"8px 12px",border:"none",borderTop:`1px solid ${u.colors.border}`,backgroundColor:u.colors.backgroundAlt,color:u.colors.textSecondary,cursor:"pointer",fontSize:u.fontSize.sm,fontFamily:u.fontFamily.sans,textAlign:"center"},onMouseEnter:R=>R.currentTarget.style.color=u.colors.text,onMouseLeave:R=>R.currentTarget.style.color=u.colors.textSecondary,children:"Close"})]})]})},Rj=({parameter:t,value:e,onChange:s,allParameters:r,theme:c})=>{const u=e||{};return i.jsx("div",{style:{border:`1px solid ${c.colors.border}`,borderRadius:"6px",backgroundColor:c.colors.backgroundAlt,padding:"12px"},children:t.options?.map(f=>{const d=u[f.name]||{};return i.jsxs("div",{style:{marginBottom:"16px"},children:[i.jsx("div",{style:{fontSize:"14px",fontWeight:"500",color:c.colors.text,marginBottom:"8px"},children:f.displayName}),i.jsx("div",{style:{border:`1px solid ${c.colors.border}`,borderRadius:"6px",backgroundColor:c.colors.background,padding:"12px"},children:f.values?.map(h=>xv(h,{...r,...d})?i.jsx(Um,{parameter:h,value:d[h.name],onChange:g=>{s({...u,[f.name]:{...d,[h.name]:g}})},allParameters:r},h.name):null)})]},f.name)})})},qy=t=>"typeOptions"in t,Um=({parameter:t,value:e,onChange:s,allParameters:r,onParameterChange:c,isLoadingParameters:u=!1,connectedAgentId:f})=>{const d=ts(),h=u?e??"":e!==void 0?e:t.default,[g,x]=j.useState(!1),[y,b]=j.useState([]),[k,S]=j.useState({}),w=De(A=>A.selectedNode),{getNodeParameters:_,sendRequest:N}=Ct(),{getStoredApiKey:L,hasStoredKey:z,getStoredModels:O,getProviderDefaults:I}=Wu();if(t.type==="hidden")return null;j.useEffect(()=>{(async()=>{if(w?.id){const K=await _(w.id);K?.parameters&&S(K.parameters)}})()},[w?.id,_]);const q=be.useRef(null),M=be.useRef(!1);j.useEffect(()=>{M.current=!1,q.current=null},[w?.id]),j.useEffect(()=>{(async()=>{if(t.name!=="api_key"&&t.name!=="model"||u)return;let K=r?.provider;if(!K&&w){const fe=w.type||w.data?.nodeType;fe&&(K=zj[fe])}if(!K)return;const ne=q.current===null,X=!ne&&q.current!==K,ue=t.name==="model"&&(X||ne||!M.current);if(!(!X&&!ne&&t.name!=="model")&&!(!X&&!ne&&M.current)){q.current=K;try{if(await z(K)){if(t.name==="api_key"&&X){const pe=await L(K);pe&&s(pe)}if(ue&&w){const pe=await O(K);if(pe?.length){const we=lr.createModelOptions(pe);lr.updateParameterOptions(w.id,"model",we);const ve=(await I(K))?.default_model||"",Ce=te=>typeof te=="string"?te:te.id;let ce=Ce(pe[0]);if(ve){const te=pe.find(Oe=>Ce(Oe)===ve);te&&(ce=Ce(te))}if(X)s(ce);else{const te=e||r?.model;(!te||te==="")&&s(ce)}M.current=!0}}}else t.name==="api_key"&&s(""),t.name==="model"&&(s(""),M.current=!0)}catch(fe){console.warn("Error loading stored key info:",fe)}}})()},[r?.provider,t.name,z,L,O,I,w?.id,w?.type,s,u,e,r?.model]);const E={...k,...r},$=()=>t.min||t.typeOptions?.minValue||0,Q=()=>t.max||t.typeOptions?.maxValue||100,H=()=>t.step||t.typeOptions?.numberStepSize||1;j.useEffect(()=>{(async()=>{if(!w||!qy(t)||!t.typeOptions?.loadOptionsMethod)return;const K=t.typeOptions.loadOptionsDependsOn||[],ne={...k,...r},X=K.every(ue=>ne[ue]);if(!(K.length>0&&!X))try{const ue=w.data?.nodeType||w.type,fe=ue?fn(ue):null;let pe=[];const we=t.typeOptions.loadOptionsMethod;if(fe?.methods?.loadOptions?.[we]){const ve=fe.methods.loadOptions[we],Ce={getCurrentNodeParameter:ce=>ne[ce]};pe=await ve.call(Ce)}else try{pe=(await N("load_options",{method:we,params:{node_id:w.id,node_type:ue,...ne}}))?.options??[]}catch(ve){console.error(`[ParameterRenderer] backend load_options(${we}) failed:`,ve)}const je=pe.map(ve=>({name:ve.name??ve.label??String(ve.value),value:ve.value}));b(je),lr.updateParameterOptions(w.id,t.name,je),je.length>0&&(!h||h==="")&&s(je[0].value)}catch(ue){console.error("Error loading dynamic options:",ue)}})()},[w?.id,qy(t)&&t.typeOptions?.loadOptionsMethod,k,r,t.name]),j.useEffect(()=>{(async()=>{if(!w||t.name!=="parameters")return;const K=w.data?.nodeType||w.type;if(!(Am(K,"android")??(fn(K)?.group??[]).includes("android")))return;const X={...k,...r},ue=X.service_id,fe=X.action;if(!ue||!fe){console.log("[AndroidService] Skipping - missing serviceId or action:",{serviceId:ue,action:fe});return}try{console.log("[AndroidService] Fetching default parameters for:",{serviceId:ue,action:fe});const we=await(await fetch(`${_l.PYTHON_BASE_URL}/api/android/services/${ue}/actions/${fe}/parameters`,{credentials:"include"})).json();console.log("[AndroidService] Default parameters response:",we),we.success&&we.default_parameters&&(console.log("[AndroidService] Setting parameters to:",we.default_parameters),s(we.default_parameters))}catch(pe){console.error("[AndroidService] Error loading default parameters:",pe)}})()},[w?.id,t.name,r?.service_id,r?.action,k?.service_id,k?.action]),j.useEffect(()=>{if(!w)return;const A=lr.subscribe((ne,X,ue)=>{ne===w.id&&X===t.name&&b(ue)}),K=lr.getParameterOptions(w.id,t.name);return K&&b(K),A},[w?.id,t.name]);const R=A=>{if(!w){console.warn("ParameterRenderer: No selected node for dynamic options update");return}const K=lr.createModelOptions(A);lr.updateParameterOptions(w.id,"model",K),t.name==="model"&&!h&&A.length>0&&s(A[0])},D=A=>{A.preventDefault(),A.dataTransfer.dropEffect="copy",x(!0)},U=A=>{A.preventDefault(),x(!1)},W=A=>{A.preventDefault(),x(!1);const K=t.name.toLowerCase(),ne=K.includes("lat")||K.includes("lng")||K.includes("lon")||K==="latitude"||K==="longitude",X=A.dataTransfer.getData("application/json");if(X)try{const fe=JSON.parse(X);if(fe.type==="nodeVariable"){if(ne&&typeof fe.dataType=="string"&&fe.dataType==="number"){const ve=h||"",Ce=ve&&!ve.endsWith(" ")&&ve.length>0,ce=ve+(Ce?" ":"")+fe.variableTemplate;s(ce);return}const pe=h||"",we=pe&&!pe.endsWith(" ")&&pe.length>0,je=pe+(we?" ":"")+fe.variableTemplate;s(je);return}if(fe.type==="nodeOutput"){s(fe.value);return}}catch(fe){console.warn("Failed to parse JSON drag data:",fe)}const ue=A.dataTransfer.getData("text/plain");if(ue&&ue.startsWith("{{")&&ue.endsWith("}}")){if(ne){s(ue);return}const fe=h||"",pe=fe&&!fe.endsWith(" ")&&fe.length>0,we=fe+(pe?" ":"")+ue;s(we)}},T=()=>{switch(t.type){case"string":const A=t.typeOptions?.rows>1,K=t.typeOptions?.password,ne=t.typeOptions?.editor==="code";if(!(A&&K)){if(A){if(ne){if(u)return i.jsx("div",{style:{height:"100%",minHeight:"200px",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:d.colors.backgroundAlt,border:`1px solid ${d.colors.border}`,borderRadius:d.borderRadius.md,color:d.colors.textMuted,fontSize:"14px"},children:"Loading code..."});const B=t.typeOptions?.editorLanguage||"python";return i.jsx($y,{value:h||"",onChange:s,language:B,placeholder:t.placeholder})}return i.jsx("textarea",{value:h||"",onChange:B=>s(B.target.value),placeholder:t.placeholder,rows:t.typeOptions?.rows||3,spellCheck:!0,onDragOver:D,onDragLeave:U,onDrop:W,style:{width:"100%",padding:"10px 12px",border:g?`2px solid ${d.accent.cyan}`:`1px solid ${d.colors.border}`,borderRadius:"6px",fontSize:"14px",backgroundColor:g?`${d.accent.cyan}10`:d.colors.backgroundAlt,color:h&&h.includes("{{")?d.accent.yellow:d.colors.text,outline:"none",transition:"all 0.2s ease",fontFamily:h&&h.includes("{{")?"monospace":"system-ui, sans-serif",resize:"vertical",minHeight:"80px",boxShadow:"inset 0 1px 2px rgba(0,0,0,0.05)",lineHeight:"1.5"},onFocus:B=>{B.target.style.borderColor=d.accent.cyan,B.target.style.boxShadow=`0 0 0 3px ${d.accent.cyan}20, inset 0 1px 2px rgba(0,0,0,0.05)`},onBlur:B=>{B.target.style.borderColor=d.colors.border,B.target.style.boxShadow="inset 0 1px 2px rgba(0,0,0,0.05)"}})}}const ue=t.validation?.find(B=>B.type==="apiKey"&&B.showValidateButton);if(ue){let B=ue.provider;if(typeof B=="string"&&B.includes("$parameter[")){const oe=B.match(/\$parameter\["([^"]+)"\]|\$parameter\['([^']+)'\]/);if(oe){const me=oe[1]||oe[2];B=E[me]||B}}const F={...ue,provider:B};return i.jsx(_j,{value:h||"",onChange:s,placeholder:t.placeholder,validationConfig:F,onValidationSuccess:R,isDragOver:g,onDragOver:D,onDragLeave:U,onDrop:W})}if(y.length>0&&t.type==="string"){if(y.some(F=>String(F.label||F.value).includes("[FREE]"))){const F=y.filter(me=>String(me.label||me.value).includes("[FREE]")),oe=y.filter(me=>!String(me.label||me.value).includes("[FREE]"));return i.jsxs("select",{value:h||"",onChange:me=>s(me.target.value),style:{width:"100%",padding:d.spacing.sm,border:`1px solid ${d.colors.border}`,borderRadius:d.borderRadius.md,fontSize:d.fontSize.sm,outline:"none",transition:"border-color 0.2s ease",cursor:"pointer",backgroundColor:d.colors.background,color:d.colors.text,fontFamily:"system-ui, sans-serif"},onFocus:me=>me.target.style.borderColor=d.colors.focus,onBlur:me=>me.target.style.borderColor=d.colors.border,children:[!h&&i.jsx("option",{value:"",disabled:!0,children:"Select a model..."}),i.jsx("optgroup",{label:`Free Models (${F.length})`,children:F.map(me=>i.jsx("option",{value:String(me.value),children:me.label||me.name||String(me.value)},String(me.value)))}),i.jsx("optgroup",{label:`Paid Models (${oe.length})`,children:oe.map(me=>i.jsx("option",{value:String(me.value),children:me.label||me.name||String(me.value)},String(me.value)))})]})}return i.jsxs("select",{value:h||"",onChange:F=>s(F.target.value),style:{width:"100%",padding:"8px 12px",border:`1px solid ${d.colors.border}`,borderRadius:"6px",fontSize:"14px",outline:"none",transition:"border-color 0.2s ease",cursor:"pointer",backgroundColor:d.colors.background,color:d.colors.text,fontFamily:"system-ui, sans-serif"},onFocus:F=>F.target.style.borderColor=d.colors.focus,onBlur:F=>F.target.style.borderColor=d.colors.border,children:[!h&&i.jsx("option",{value:"",disabled:!0,children:"Select a model..."}),y.map(F=>i.jsx("option",{value:String(F.value),children:F.label||F.name||String(F.value)},String(F.value)))]})}const fe=t.typeOptions?.loadOptionsMethod;if(fe==="whatsappGroups"||t.name==="group_id"){const B=r?.group_name||"";return i.jsx(Tj,{value:h||"",onChange:s,onNameChange:F=>c?.("group_name",F),storedName:B,placeholder:t.placeholder,theme:d,isDragOver:g,onDragOver:D,onDragLeave:U,onDrop:W})}if(fe==="whatsappChannels"||t.name==="channel_jid"){const B=r?.channel_display_name||"";return i.jsx(Oj,{value:h||"",onChange:s,onNameChange:F=>c?.("channel_display_name",F),storedName:B,placeholder:t.placeholder,theme:d,isDragOver:g,onDragOver:D,onDragLeave:U,onDrop:W})}if(fe==="whatsappGroupMembers"||t.name==="sender_number"){const B=E?.group_id||r?.group_id||"",F=r?.sender_name||"";return i.jsx(Aj,{value:h||"",onChange:s,onNameChange:oe=>c?.("sender_name",oe),storedName:F,placeholder:t.placeholder,theme:d,isDragOver:g,onDragOver:D,onDragLeave:U,onDrop:W,groupId:B})}if(t.name==="session_id"&&f){const F=!h||h==="default"?"":h;return i.jsx("input",{type:"text",value:F,onChange:oe=>s(oe.target.value),placeholder:f,onDragOver:D,onDragLeave:U,onDrop:W,style:{width:"100%",padding:"10px 12px",border:g?`2px solid ${d.accent.cyan}`:`1px solid ${d.colors.border}`,borderRadius:"6px",fontSize:"14px",backgroundColor:g?`${d.accent.cyan}10`:d.colors.backgroundAlt,color:h&&h.includes("{{")?d.accent.yellow:d.colors.text,outline:"none",transition:"all 0.2s ease",fontFamily:h&&h.includes("{{")?"monospace":"system-ui, sans-serif",boxShadow:"inset 0 1px 2px rgba(0,0,0,0.05)"},onFocus:oe=>{oe.target.style.borderColor=d.accent.cyan,oe.target.style.boxShadow=`0 0 0 3px ${d.accent.cyan}20, inset 0 1px 2px rgba(0,0,0,0.05)`},onBlur:oe=>{oe.target.style.borderColor=d.colors.border,oe.target.style.boxShadow="inset 0 1px 2px rgba(0,0,0,0.05)"}})}return i.jsx("input",{type:K?"password":"text",value:h||"",onChange:B=>s(B.target.value),placeholder:t.placeholder,onDragOver:D,onDragLeave:U,onDrop:W,style:{width:"100%",padding:"10px 12px",border:g?`2px solid ${d.accent.cyan}`:`1px solid ${d.colors.border}`,borderRadius:"6px",fontSize:"14px",backgroundColor:g?`${d.accent.cyan}10`:d.colors.backgroundAlt,color:h&&h.includes("{{")?d.accent.yellow:d.colors.text,outline:"none",transition:"all 0.2s ease",fontFamily:h&&h.includes("{{")?"monospace":"system-ui, sans-serif",boxShadow:"inset 0 1px 2px rgba(0,0,0,0.05)"},onFocus:B=>{B.target.style.borderColor=d.accent.cyan,B.target.style.boxShadow=`0 0 0 3px ${d.accent.cyan}20, inset 0 1px 2px rgba(0,0,0,0.05)`},onBlur:B=>{B.target.style.borderColor=d.colors.border,B.target.style.boxShadow="inset 0 1px 2px rgba(0,0,0,0.05)"}});case"number":return i.jsx("input",{type:"number",value:h!==void 0?h:t.default||0,onChange:B=>s(Number(B.target.value)),min:$(),max:Q(),step:H(),onDragOver:D,onDragLeave:U,onDrop:W,style:{width:"100%",padding:"8px 12px",border:g?`2px solid ${d.colors.focus}`:`1px solid ${d.colors.border}`,borderRadius:"6px",fontSize:"14px",backgroundColor:g?d.colors.focusRing:d.colors.background,color:d.colors.text,outline:"none",transition:"all 0.2s ease",fontFamily:"system-ui, sans-serif"},onFocus:B=>B.target.style.borderColor=d.colors.focus,onBlur:B=>B.target.style.borderColor=d.colors.border});case"boolean":return i.jsxs("label",{style:{display:"flex",alignItems:"center",gap:"8px",cursor:"pointer",fontSize:"14px",fontFamily:"system-ui, sans-serif",color:d.colors.text},children:[i.jsx("input",{type:"checkbox",checked:h||!1,onChange:B=>s(B.target.checked),style:{width:"16px",height:"16px",accentColor:d.colors.focus}}),t.displayName]});case"select":case"options":const we=(y.length>0?y:t.options||[]).filter(B=>"value"in B);return i.jsx("select",{value:h||t.default,onChange:B=>s(B.target.value),style:{width:"100%",padding:"10px 12px",border:`1px solid ${d.colors.border}`,borderRadius:"6px",fontSize:"14px",outline:"none",transition:"all 0.2s ease",cursor:"pointer",backgroundColor:d.colors.backgroundAlt,color:d.colors.text,fontFamily:"system-ui, sans-serif",boxShadow:"inset 0 1px 2px rgba(0,0,0,0.05)",appearance:"none",backgroundImage:`url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23657b83' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")`,backgroundRepeat:"no-repeat",backgroundPosition:"right 12px center",paddingRight:"36px"},onFocus:B=>{B.target.style.borderColor=d.accent.cyan,B.target.style.boxShadow=`0 0 0 3px ${d.accent.cyan}20, inset 0 1px 2px rgba(0,0,0,0.05)`},onBlur:B=>{B.target.style.borderColor=d.colors.border,B.target.style.boxShadow="inset 0 1px 2px rgba(0,0,0,0.05)"},children:we.map(B=>i.jsx("option",{value:String(B.value),children:B.label||B.name||String(B.value)},String(B.value)))});case"slider":return i.jsxs("div",{children:[i.jsx("input",{type:"range",min:$(),max:Q(),step:H(),value:h!==void 0?h:t.default||0,onChange:B=>s(Number(B.target.value)),style:{width:"100%",height:"8px",backgroundColor:d.colors.backgroundAlt,borderRadius:"8px",outline:"none",accentColor:d.colors.focus}}),i.jsxs("div",{style:{textAlign:"center",fontSize:"12px",color:d.colors.textSecondary,marginTop:"4px",fontFamily:"system-ui, sans-serif"},children:[h!==void 0?h:t.default||0,t.type==="slider"?"%":""]})]});case"percentage":return i.jsxs("div",{children:[i.jsx("input",{type:"range",min:$(),max:Q(),step:H(),value:h!==void 0?h:t.default||0,onChange:B=>s(Number(B.target.value)),style:{width:"100%",height:"8px",backgroundColor:d.colors.backgroundAlt,borderRadius:"8px",outline:"none",accentColor:d.colors.success}}),i.jsxs("div",{style:{textAlign:"center",fontSize:"12px",color:d.colors.textSecondary,marginTop:"4px",fontFamily:"system-ui, sans-serif"},children:[h!==void 0?h:t.default||0,"%"]})]});case"text":return i.jsx("input",{type:"text",value:h||"",onChange:B=>s(B.target.value),placeholder:t.placeholder,onDragOver:D,onDragLeave:U,onDrop:W,style:{width:"100%",padding:"8px 12px",border:g?`2px solid ${d.colors.focus}`:`1px solid ${d.colors.border}`,borderRadius:"6px",fontSize:"14px",backgroundColor:g?d.colors.focusRing:d.colors.background,color:h&&h.includes("{{")?d.colors.templateVariable:d.colors.text,outline:"none",transition:"all 0.2s ease",fontFamily:h&&h.includes("{{")?"monospace":"system-ui, sans-serif"},onFocus:B=>B.target.style.borderColor=d.colors.focus,onBlur:B=>B.target.style.borderColor=d.colors.border});case"file":const je=be.useRef(null),ve=B=>{const F=B.target.files?.[0];if(!F)return;const oe=new FileReader;oe.onload=()=>{const me=oe.result.split(",")[1];s({type:"upload",data:me,filename:F.name,mimeType:F.type||"application/octet-stream"})},oe.readAsDataURL(F)},Ce=h&&typeof h=="object"&&h.type==="upload",ce=()=>{const B=r?.message_type;if(B)switch(B){case"image":return"image/*";case"video":return"video/*";case"audio":return"audio/*,.ogg,.opus,.mp3,.wav,.m4a";case"document":return".pdf,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.txt,.csv,.zip,.rar";case"sticker":return"image/webp,.webp";default:return t.typeOptions?.accept||"*/*"}return t.typeOptions?.accept||"*/*"};return i.jsxs("div",{children:[i.jsxs("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:[i.jsx("input",{type:"text",value:Ce?`[Uploaded] ${h.filename}`:h||"",onChange:B=>s(B.target.value),placeholder:t.placeholder||"Enter file path or upload",onDragOver:D,onDragLeave:U,onDrop:W,readOnly:Ce,style:{flex:1,padding:"8px 12px",border:g?`2px solid ${d.colors.focus}`:`1px solid ${d.colors.border}`,borderRadius:"6px",fontSize:"13px",backgroundColor:Ce?d.colors.backgroundAlt:g?d.colors.focusRing:d.colors.background,color:Ce?d.colors.success:h&&h.includes?.("{{")?d.colors.templateVariable:d.colors.text,outline:"none",transition:"all 0.2s ease",fontFamily:"monospace"},onFocus:B=>B.target.style.borderColor=d.colors.focus,onBlur:B=>B.target.style.borderColor=d.colors.border}),i.jsx("input",{ref:je,type:"file",onChange:ve,style:{display:"none"},accept:ce()},`file-input-${r?.message_type||"default"}`),i.jsx("button",{onClick:()=>je.current?.click(),style:{padding:"8px 12px",border:`1px solid ${d.colors.focus}40`,borderRadius:"6px",backgroundColor:`${d.colors.focus}18`,color:d.colors.focus,cursor:"pointer",fontSize:"13px",fontWeight:600,transition:"all 0.2s ease",whiteSpace:"nowrap"},onMouseEnter:B=>{B.currentTarget.style.backgroundColor=`${d.colors.focus}30`},onMouseLeave:B=>{B.currentTarget.style.backgroundColor=`${d.colors.focus}18`},title:"Upload file",children:"Upload"}),Ce&&i.jsx("button",{onClick:()=>{s(""),je.current&&(je.current.value="")},style:{padding:"8px 10px",border:`1px solid ${d.colors.error}40`,borderRadius:"6px",backgroundColor:`${d.colors.error}18`,color:d.colors.error,cursor:"pointer",fontSize:"13px",fontWeight:600,transition:"all 0.2s ease"},onMouseEnter:B=>{B.currentTarget.style.backgroundColor=`${d.colors.error}30`},onMouseLeave:B=>{B.currentTarget.style.backgroundColor=`${d.colors.error}18`},title:"Clear uploaded file",children:"X"})]}),i.jsx("div",{style:{fontSize:"11px",color:d.colors.textSecondary,marginTop:"4px",fontStyle:"italic"},children:Ce?`Size: ${(h.data.length*.75/1024).toFixed(1)} KB | Type: ${h.mimeType}`:"Enter server path or click Upload to select a file"})]});case"array":const te=Array.isArray(h)?h:[];return i.jsxs("div",{children:[i.jsx("div",{style:{border:`1px solid ${d.colors.border}`,borderRadius:"6px",backgroundColor:d.colors.background,maxHeight:"120px",overflowY:"auto"},children:t.options?.map(B=>i.jsxs("label",{style:{display:"flex",alignItems:"center",gap:"8px",padding:"8px 12px",cursor:"pointer",fontSize:"14px",fontFamily:"system-ui, sans-serif",color:d.colors.text,borderBottom:`1px solid ${d.colors.border}`},children:[i.jsx("input",{type:"checkbox",checked:te.includes(B.value),onChange:F=>{F.target.checked?s([...te,B.value]):s(te.filter(oe=>oe!==B.value))},style:{width:"16px",height:"16px",accentColor:d.colors.focus}}),B.label]},B.value))}),i.jsxs("div",{style:{fontSize:"11px",color:d.colors.textSecondary,marginTop:"4px"},children:["Selected: ",te.length," item",te.length!==1?"s":""]})]});case"collection":return i.jsx(Mj,{parameter:t,value:h,onChange:s,allParameters:r,theme:d});case"fixedCollection":return i.jsx(Rj,{parameter:t,value:h,onChange:s,allParameters:r,theme:d});case"notice":return i.jsx("div",{style:{padding:"10px 12px",backgroundColor:d.colors.backgroundAlt,border:`1px solid ${d.colors.border}`,borderRadius:"6px",fontSize:"13px",color:d.colors.textSecondary,lineHeight:"1.5"},children:t.default||t.description||""});case"json":const Oe=t.typeOptions?.rows||6;return i.jsx("textarea",{value:h||t.default||"{}",onChange:B=>s(B.target.value),placeholder:t.placeholder||"{}",rows:Oe,onDragOver:D,onDragLeave:U,onDrop:W,style:{width:"100%",padding:"10px 12px",border:g?`2px solid ${d.colors.focus}`:`1px solid ${d.colors.border}`,borderRadius:"6px",fontSize:"13px",backgroundColor:g?d.colors.focusRing:d.colors.background,color:d.colors.text,outline:"none",resize:"vertical",minHeight:"100px",fontFamily:"monospace",lineHeight:"1.5",transition:"all 0.2s ease"},onFocus:B=>B.target.style.borderColor=d.colors.focus,onBlur:B=>B.target.style.borderColor=d.colors.border});case"code":{const B=t.typeOptions?.editorLanguage||"python";return u?i.jsx("div",{className:"flex items-center justify-center rounded-md border border-border bg-muted text-muted-foreground text-sm min-h-[200px]",children:"Loading code..."}):i.jsx($y,{value:h||t.default||"",onChange:s,language:B,placeholder:t.placeholder})}case"dateTime":return i.jsx(on,{type:"datetime-local",value:h||t.default||"",onChange:B=>s(B.target.value)});default:return i.jsxs("div",{style:{color:d.colors.error,fontSize:"14px",padding:"8px 12px",backgroundColor:`${d.colors.error}15`,border:`1px solid ${d.colors.error}30`,borderRadius:"6px"},children:["Unsupported parameter type: ",t.type]})}};return i.jsxs("div",{style:{height:"100%",display:"flex",flexDirection:"column"},children:[t.type!=="boolean"&&i.jsxs("label",{style:{display:"flex",alignItems:"center",gap:"6px",marginBottom:"8px",fontSize:"13px",fontWeight:600,color:d.colors.text,fontFamily:"system-ui, sans-serif",flexShrink:0},children:[i.jsx("span",{children:t.displayName}),t.required&&i.jsx("span",{style:{color:d.accent.red,fontSize:"14px",fontWeight:700},children:"*"})]}),i.jsx("div",{style:{flex:1,minHeight:0},children:T()}),t.description&&i.jsx("div",{style:{fontSize:"12px",color:d.colors.textSecondary,marginTop:"6px",lineHeight:"1.5",fontFamily:"system-ui, sans-serif",paddingLeft:"2px",flexShrink:0},children:t.description})]})};var Hy;function _e(t,e,s){function r(d,h){if(d._zod||Object.defineProperty(d,"_zod",{value:{def:h,constr:f,traits:new Set},enumerable:!1}),d._zod.traits.has(t))return;d._zod.traits.add(t),e(d,h);const g=f.prototype,x=Object.keys(g);for(let y=0;y<x.length;y++){const b=x[y];b in d||(d[b]=g[b].bind(d))}}const c=s?.Parent??Object;class u extends c{}Object.defineProperty(u,"name",{value:t});function f(d){var h;const g=s?.Parent?new u:this;r(g,d),(h=g._zod).deferred??(h.deferred=[]);for(const x of g._zod.deferred)x();return g}return Object.defineProperty(f,"init",{value:r}),Object.defineProperty(f,Symbol.hasInstance,{value:d=>s?.Parent&&d instanceof s.Parent?!0:d?._zod?.traits?.has(t)}),Object.defineProperty(f,"name",{value:t}),f}class xl extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class yv extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}}(Hy=globalThis).__zod_globalConfig??(Hy.__zod_globalConfig={});const Zm=globalThis.__zod_globalConfig;function hr(t){return Zm}function bv(t){const e=Object.values(t).filter(r=>typeof r=="number");return Object.entries(t).filter(([r,c])=>e.indexOf(+r)===-1).map(([r,c])=>c)}function nm(t,e){return typeof e=="bigint"?e.toString():e}function Vm(t){return{get value(){{const e=t();return Object.defineProperty(this,"value",{value:e}),e}}}}function Wm(t){return t==null}function Bm(t){const e=t.startsWith("^")?1:0,s=t.endsWith("$")?t.length-1:t.length;return t.slice(e,s)}function Dj(t,e){const s=t/e,r=Math.round(s),c=Number.EPSILON*Math.max(Math.abs(s),1);return Math.abs(s-r)<c?0:s-r}const Uy=Symbol("evaluating");function Jt(t,e,s){let r;Object.defineProperty(t,e,{get(){if(r!==Uy)return r===void 0&&(r=Uy,r=s()),r},set(c){Object.defineProperty(t,e,{value:c})},configurable:!0})}function vr(t,e,s){Object.defineProperty(t,e,{value:s,writable:!0,enumerable:!0,configurable:!0})}function Aa(...t){const e={};for(const s of t){const r=Object.getOwnPropertyDescriptors(s);Object.assign(e,r)}return Object.defineProperties({},e)}function Zy(t){return JSON.stringify(t)}function Ij(t){return t.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const vv="captureStackTrace"in Error?Error.captureStackTrace:(...t)=>{};function Mu(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}const $j=Vm(()=>{if(Zm.jitless||typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const t=Function;return new t(""),!0}catch{return!1}});function Ti(t){if(Mu(t)===!1)return!1;const e=t.constructor;if(e===void 0||typeof e!="function")return!0;const s=e.prototype;return!(Mu(s)===!1||Object.prototype.hasOwnProperty.call(s,"isPrototypeOf")===!1)}function wv(t){return Ti(t)?{...t}:Array.isArray(t)?[...t]:t instanceof Map?new Map(t):t instanceof Set?new Set(t):t}const qj=new Set(["string","number","symbol"]);function Bu(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Oa(t,e,s){const r=new t._zod.constr(e??t._zod.def);return(!e||s?.parent)&&(r._zod.parent=t),r}function Je(t){const e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function Hj(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}const Uj={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function Zj(t,e){const s=t._zod.def,r=s.checks;if(r&&r.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const u=Aa(t._zod.def,{get shape(){const f={};for(const d in e){if(!(d in s.shape))throw new Error(`Unrecognized key: "${d}"`);e[d]&&(f[d]=s.shape[d])}return vr(this,"shape",f),f},checks:[]});return Oa(t,u)}function Vj(t,e){const s=t._zod.def,r=s.checks;if(r&&r.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const u=Aa(t._zod.def,{get shape(){const f={...t._zod.def.shape};for(const d in e){if(!(d in s.shape))throw new Error(`Unrecognized key: "${d}"`);e[d]&&delete f[d]}return vr(this,"shape",f),f},checks:[]});return Oa(t,u)}function Wj(t,e){if(!Ti(e))throw new Error("Invalid input to extend: expected a plain object");const s=t._zod.def.checks;if(s&&s.length>0){const u=t._zod.def.shape;for(const f in e)if(Object.getOwnPropertyDescriptor(u,f)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}const c=Aa(t._zod.def,{get shape(){const u={...t._zod.def.shape,...e};return vr(this,"shape",u),u}});return Oa(t,c)}function Bj(t,e){if(!Ti(e))throw new Error("Invalid input to safeExtend: expected a plain object");const s=Aa(t._zod.def,{get shape(){const r={...t._zod.def.shape,...e};return vr(this,"shape",r),r}});return Oa(t,s)}function Fj(t,e){if(t._zod.def.checks?.length)throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");const s=Aa(t._zod.def,{get shape(){const r={...t._zod.def.shape,...e._zod.def.shape};return vr(this,"shape",r),r},get catchall(){return e._zod.def.catchall},checks:e._zod.def.checks??[]});return Oa(t,s)}function Gj(t,e,s){const c=e._zod.def.checks;if(c&&c.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");const f=Aa(e._zod.def,{get shape(){const d=e._zod.def.shape,h={...d};if(s)for(const g in s){if(!(g in d))throw new Error(`Unrecognized key: "${g}"`);s[g]&&(h[g]=t?new t({type:"optional",innerType:d[g]}):d[g])}else for(const g in d)h[g]=t?new t({type:"optional",innerType:d[g]}):d[g];return vr(this,"shape",h),h},checks:[]});return Oa(e,f)}function Qj(t,e,s){const r=Aa(e._zod.def,{get shape(){const c=e._zod.def.shape,u={...c};if(s)for(const f in s){if(!(f in u))throw new Error(`Unrecognized key: "${f}"`);s[f]&&(u[f]=new t({type:"nonoptional",innerType:c[f]}))}else for(const f in c)u[f]=new t({type:"nonoptional",innerType:c[f]});return vr(this,"shape",u),u}});return Oa(e,r)}function ml(t,e=0){if(t.aborted===!0)return!0;for(let s=e;s<t.issues.length;s++)if(t.issues[s]?.continue!==!0)return!0;return!1}function Kj(t,e=0){if(t.aborted===!0)return!0;for(let s=e;s<t.issues.length;s++)if(t.issues[s]?.continue===!1)return!0;return!1}function kv(t,e){return e.map(s=>{var r;return(r=s).path??(r.path=[]),s.path.unshift(t),s})}function pu(t){return typeof t=="string"?t:t?.message}function gr(t,e,s){const r=t.message?t.message:pu(t.inst?._zod.def?.error?.(t))??pu(e?.error?.(t))??pu(s.customError?.(t))??pu(s.localeError?.(t))??"Invalid input",{inst:c,continue:u,input:f,...d}=t;return d.path??(d.path=[]),d.message=r,e?.reportInput&&(d.input=f),d}function Fm(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Ai(...t){const[e,s,r]=t;return typeof e=="string"?{message:e,code:"custom",input:s,inst:r}:{...e}}const Sv=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),t.message=JSON.stringify(e,nm,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Gm=_e("$ZodError",Sv),Fu=_e("$ZodError",Sv,{Parent:Error});function Yj(t,e=s=>s.message){const s={},r=[];for(const c of t.issues)c.path.length>0?(s[c.path[0]]=s[c.path[0]]||[],s[c.path[0]].push(e(c))):r.push(e(c));return{formErrors:r,fieldErrors:s}}function Pj(t,e=s=>s.message){const s={_errors:[]},r=(c,u=[])=>{for(const f of c.issues)if(f.code==="invalid_union"&&f.errors.length)f.errors.map(d=>r({issues:d},[...u,...f.path]));else if(f.code==="invalid_key")r({issues:f.issues},[...u,...f.path]);else if(f.code==="invalid_element")r({issues:f.issues},[...u,...f.path]);else{const d=[...u,...f.path];if(d.length===0)s._errors.push(e(f));else{let h=s,g=0;for(;g<d.length;){const x=d[g];g===d.length-1?(h[x]=h[x]||{_errors:[]},h[x]._errors.push(e(f))):h[x]=h[x]||{_errors:[]},h=h[x],g++}}}};return r(t),s}const Gu=t=>(e,s,r,c)=>{const u=r?{...r,async:!1}:{async:!1},f=e._zod.run({value:s,issues:[]},u);if(f instanceof Promise)throw new xl;if(f.issues.length){const d=new(c?.Err??t)(f.issues.map(h=>gr(h,u,hr())));throw vv(d,c?.callee),d}return f.value},Xj=Gu(Fu),Qu=t=>async(e,s,r,c)=>{const u=r?{...r,async:!0}:{async:!0};let f=e._zod.run({value:s,issues:[]},u);if(f instanceof Promise&&(f=await f),f.issues.length){const d=new(c?.Err??t)(f.issues.map(h=>gr(h,u,hr())));throw vv(d,c?.callee),d}return f.value},Jj=Qu(Fu),Ku=t=>(e,s,r)=>{const c=r?{...r,async:!1}:{async:!1},u=e._zod.run({value:s,issues:[]},c);if(u instanceof Promise)throw new xl;return u.issues.length?{success:!1,error:new(t??Gm)(u.issues.map(f=>gr(f,c,hr())))}:{success:!0,data:u.value}},eN=Ku(Fu),Yu=t=>async(e,s,r)=>{const c=r?{...r,async:!0}:{async:!0};let u=e._zod.run({value:s,issues:[]},c);return u instanceof Promise&&(u=await u),u.issues.length?{success:!1,error:new t(u.issues.map(f=>gr(f,c,hr())))}:{success:!0,data:u.value}},tN=Yu(Fu),nN=t=>(e,s,r)=>{const c=r?{...r,direction:"backward"}:{direction:"backward"};return Gu(t)(e,s,c)},oN=t=>(e,s,r)=>Gu(t)(e,s,r),sN=t=>async(e,s,r)=>{const c=r?{...r,direction:"backward"}:{direction:"backward"};return Qu(t)(e,s,c)},aN=t=>async(e,s,r)=>Qu(t)(e,s,r),rN=t=>(e,s,r)=>{const c=r?{...r,direction:"backward"}:{direction:"backward"};return Ku(t)(e,s,c)},lN=t=>(e,s,r)=>Ku(t)(e,s,r),iN=t=>async(e,s,r)=>{const c=r?{...r,direction:"backward"}:{direction:"backward"};return Yu(t)(e,s,c)},cN=t=>async(e,s,r)=>Yu(t)(e,s,r),uN=/^[cC][0-9a-z]{6,}$/,dN=/^[0-9a-z]+$/,fN=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,pN=/^[0-9a-vA-V]{20}$/,mN=/^[A-Za-z0-9]{27}$/,hN=/^[a-zA-Z0-9_-]{21}$/,gN=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,xN=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Vy=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,yN=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,bN="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function vN(){return new RegExp(bN,"u")}const wN=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,kN=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,SN=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,_N=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,jN=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,_v=/^[A-Za-z0-9_-]*$/,NN=/^https?$/,CN=/^\+[1-9]\d{6,14}$/,jv="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",LN=new RegExp(`^${jv}$`);function Nv(t){const e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function EN(t){return new RegExp(`^${Nv(t)}$`)}function zN(t){const e=Nv({precision:t.precision}),s=["Z"];t.local&&s.push(""),t.offset&&s.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const r=`${e}(?:${s.join("|")})`;return new RegExp(`^${jv}T(?:${r})$`)}const MN=t=>{const e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},TN=/^-?\d+$/,AN=/^-?\d+(?:\.\d+)?$/,ON=/^(?:true|false)$/i,RN=/^[^A-Z]*$/,DN=/^[^a-z]*$/,ho=_e("$ZodCheck",(t,e)=>{var s;t._zod??(t._zod={}),t._zod.def=e,(s=t._zod).onattach??(s.onattach=[])}),Cv={number:"number",bigint:"bigint",object:"date"},Lv=_e("$ZodCheckLessThan",(t,e)=>{ho.init(t,e);const s=Cv[typeof e.value];t._zod.onattach.push(r=>{const c=r._zod.bag,u=(e.inclusive?c.maximum:c.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<u&&(e.inclusive?c.maximum=e.value:c.exclusiveMaximum=e.value)}),t._zod.check=r=>{(e.inclusive?r.value<=e.value:r.value<e.value)||r.issues.push({origin:s,code:"too_big",maximum:typeof e.value=="object"?e.value.getTime():e.value,input:r.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Ev=_e("$ZodCheckGreaterThan",(t,e)=>{ho.init(t,e);const s=Cv[typeof e.value];t._zod.onattach.push(r=>{const c=r._zod.bag,u=(e.inclusive?c.minimum:c.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>u&&(e.inclusive?c.minimum=e.value:c.exclusiveMinimum=e.value)}),t._zod.check=r=>{(e.inclusive?r.value>=e.value:r.value>e.value)||r.issues.push({origin:s,code:"too_small",minimum:typeof e.value=="object"?e.value.getTime():e.value,input:r.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),IN=_e("$ZodCheckMultipleOf",(t,e)=>{ho.init(t,e),t._zod.onattach.push(s=>{var r;(r=s._zod.bag).multipleOf??(r.multipleOf=e.value)}),t._zod.check=s=>{if(typeof s.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof s.value=="bigint"?s.value%e.value===BigInt(0):Dj(s.value,e.value)===0)||s.issues.push({origin:typeof s.value,code:"not_multiple_of",divisor:e.value,input:s.value,inst:t,continue:!e.abort})}}),$N=_e("$ZodCheckNumberFormat",(t,e)=>{ho.init(t,e),e.format=e.format||"float64";const s=e.format?.includes("int"),r=s?"int":"number",[c,u]=Uj[e.format];t._zod.onattach.push(f=>{const d=f._zod.bag;d.format=e.format,d.minimum=c,d.maximum=u,s&&(d.pattern=TN)}),t._zod.check=f=>{const d=f.value;if(s){if(!Number.isInteger(d)){f.issues.push({expected:r,format:e.format,code:"invalid_type",continue:!1,input:d,inst:t});return}if(!Number.isSafeInteger(d)){d>0?f.issues.push({input:d,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:r,inclusive:!0,continue:!e.abort}):f.issues.push({input:d,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:r,inclusive:!0,continue:!e.abort});return}}d<c&&f.issues.push({origin:"number",input:d,code:"too_small",minimum:c,inclusive:!0,inst:t,continue:!e.abort}),d>u&&f.issues.push({origin:"number",input:d,code:"too_big",maximum:u,inclusive:!0,inst:t,continue:!e.abort})}}),qN=_e("$ZodCheckMaxLength",(t,e)=>{var s;ho.init(t,e),(s=t._zod.def).when??(s.when=r=>{const c=r.value;return!Wm(c)&&c.length!==void 0}),t._zod.onattach.push(r=>{const c=r._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<c&&(r._zod.bag.maximum=e.maximum)}),t._zod.check=r=>{const c=r.value;if(c.length<=e.maximum)return;const f=Fm(c);r.issues.push({origin:f,code:"too_big",maximum:e.maximum,inclusive:!0,input:c,inst:t,continue:!e.abort})}}),HN=_e("$ZodCheckMinLength",(t,e)=>{var s;ho.init(t,e),(s=t._zod.def).when??(s.when=r=>{const c=r.value;return!Wm(c)&&c.length!==void 0}),t._zod.onattach.push(r=>{const c=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>c&&(r._zod.bag.minimum=e.minimum)}),t._zod.check=r=>{const c=r.value;if(c.length>=e.minimum)return;const f=Fm(c);r.issues.push({origin:f,code:"too_small",minimum:e.minimum,inclusive:!0,input:c,inst:t,continue:!e.abort})}}),UN=_e("$ZodCheckLengthEquals",(t,e)=>{var s;ho.init(t,e),(s=t._zod.def).when??(s.when=r=>{const c=r.value;return!Wm(c)&&c.length!==void 0}),t._zod.onattach.push(r=>{const c=r._zod.bag;c.minimum=e.length,c.maximum=e.length,c.length=e.length}),t._zod.check=r=>{const c=r.value,u=c.length;if(u===e.length)return;const f=Fm(c),d=u>e.length;r.issues.push({origin:f,...d?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:r.value,inst:t,continue:!e.abort})}}),Pu=_e("$ZodCheckStringFormat",(t,e)=>{var s,r;ho.init(t,e),t._zod.onattach.push(c=>{const u=c._zod.bag;u.format=e.format,e.pattern&&(u.patterns??(u.patterns=new Set),u.patterns.add(e.pattern))}),e.pattern?(s=t._zod).check??(s.check=c=>{e.pattern.lastIndex=0,!e.pattern.test(c.value)&&c.issues.push({origin:"string",code:"invalid_format",format:e.format,input:c.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(r=t._zod).check??(r.check=()=>{})}),ZN=_e("$ZodCheckRegex",(t,e)=>{Pu.init(t,e),t._zod.check=s=>{e.pattern.lastIndex=0,!e.pattern.test(s.value)&&s.issues.push({origin:"string",code:"invalid_format",format:"regex",input:s.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),VN=_e("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=RN),Pu.init(t,e)}),WN=_e("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=DN),Pu.init(t,e)}),BN=_e("$ZodCheckIncludes",(t,e)=>{ho.init(t,e);const s=Bu(e.includes),r=new RegExp(typeof e.position=="number"?`^.{${e.position}}${s}`:s);e.pattern=r,t._zod.onattach.push(c=>{const u=c._zod.bag;u.patterns??(u.patterns=new Set),u.patterns.add(r)}),t._zod.check=c=>{c.value.includes(e.includes,e.position)||c.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:c.value,inst:t,continue:!e.abort})}}),FN=_e("$ZodCheckStartsWith",(t,e)=>{ho.init(t,e);const s=new RegExp(`^${Bu(e.prefix)}.*`);e.pattern??(e.pattern=s),t._zod.onattach.push(r=>{const c=r._zod.bag;c.patterns??(c.patterns=new Set),c.patterns.add(s)}),t._zod.check=r=>{r.value.startsWith(e.prefix)||r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:r.value,inst:t,continue:!e.abort})}}),GN=_e("$ZodCheckEndsWith",(t,e)=>{ho.init(t,e);const s=new RegExp(`.*${Bu(e.suffix)}$`);e.pattern??(e.pattern=s),t._zod.onattach.push(r=>{const c=r._zod.bag;c.patterns??(c.patterns=new Set),c.patterns.add(s)}),t._zod.check=r=>{r.value.endsWith(e.suffix)||r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:r.value,inst:t,continue:!e.abort})}}),QN=_e("$ZodCheckOverwrite",(t,e)=>{ho.init(t,e),t._zod.check=s=>{s.value=e.tx(s.value)}});class KN{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}const r=e.split(`
32
+ `).filter(f=>f),c=Math.min(...r.map(f=>f.length-f.trimStart().length)),u=r.map(f=>f.slice(c)).map(f=>" ".repeat(this.indent*2)+f);for(const f of u)this.content.push(f)}compile(){const e=Function,s=this?.args,c=[...(this?.content??[""]).map(u=>` ${u}`)];return new e(...s,c.join(`
33
+ `))}}const YN={major:4,minor:4,patch:3},jn=_e("$ZodType",(t,e)=>{var s;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=YN;const r=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&r.unshift(t);for(const c of r)for(const u of c._zod.onattach)u(t);if(r.length===0)(s=t._zod).deferred??(s.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{const c=(f,d,h)=>{let g=ml(f),x;for(const y of d){if(y._zod.def.when){if(Kj(f)||!y._zod.def.when(f))continue}else if(g)continue;const b=f.issues.length,k=y._zod.check(f);if(k instanceof Promise&&h?.async===!1)throw new xl;if(x||k instanceof Promise)x=(x??Promise.resolve()).then(async()=>{await k,f.issues.length!==b&&(g||(g=ml(f,b)))});else{if(f.issues.length===b)continue;g||(g=ml(f,b))}}return x?x.then(()=>f):f},u=(f,d,h)=>{if(ml(f))return f.aborted=!0,f;const g=c(d,r,h);if(g instanceof Promise){if(h.async===!1)throw new xl;return g.then(x=>t._zod.parse(x,h))}return t._zod.parse(g,h)};t._zod.run=(f,d)=>{if(d.skipChecks)return t._zod.parse(f,d);if(d.direction==="backward"){const g=t._zod.parse({value:f.value,issues:[]},{...d,skipChecks:!0});return g instanceof Promise?g.then(x=>u(x,f,d)):u(g,f,d)}const h=t._zod.parse(f,d);if(h instanceof Promise){if(d.async===!1)throw new xl;return h.then(g=>c(g,r,d))}return c(h,r,d)}}Jt(t,"~standard",()=>({validate:c=>{try{const u=eN(t,c);return u.success?{value:u.data}:{issues:u.error?.issues}}catch{return tN(t,c).then(f=>f.success?{value:f.data}:{issues:f.error?.issues})}},vendor:"zod",version:1}))}),Qm=_e("$ZodString",(t,e)=>{jn.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??MN(t._zod.bag),t._zod.parse=(s,r)=>{if(e.coerce)try{s.value=String(s.value)}catch{}return typeof s.value=="string"||s.issues.push({expected:"string",code:"invalid_type",input:s.value,inst:t}),s}}),gn=_e("$ZodStringFormat",(t,e)=>{Pu.init(t,e),Qm.init(t,e)}),PN=_e("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=xN),gn.init(t,e)}),XN=_e("$ZodUUID",(t,e)=>{if(e.version){const r={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(r===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=Vy(r))}else e.pattern??(e.pattern=Vy());gn.init(t,e)}),JN=_e("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=yN),gn.init(t,e)}),eC=_e("$ZodURL",(t,e)=>{gn.init(t,e),t._zod.check=s=>{try{const r=s.value.trim();if(!e.normalize&&e.protocol?.source===NN.source&&!/^https?:\/\//i.test(r)){s.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:s.value,inst:t,continue:!e.abort});return}const c=new URL(r);e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(c.hostname)||s.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:e.hostname.source,input:s.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(c.protocol.endsWith(":")?c.protocol.slice(0,-1):c.protocol)||s.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:s.value,inst:t,continue:!e.abort})),e.normalize?s.value=c.href:s.value=r;return}catch{s.issues.push({code:"invalid_format",format:"url",input:s.value,inst:t,continue:!e.abort})}}}),tC=_e("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=vN()),gn.init(t,e)}),nC=_e("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=hN),gn.init(t,e)}),oC=_e("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=uN),gn.init(t,e)}),sC=_e("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=dN),gn.init(t,e)}),aC=_e("$ZodULID",(t,e)=>{e.pattern??(e.pattern=fN),gn.init(t,e)}),rC=_e("$ZodXID",(t,e)=>{e.pattern??(e.pattern=pN),gn.init(t,e)}),lC=_e("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=mN),gn.init(t,e)}),iC=_e("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=zN(e)),gn.init(t,e)}),cC=_e("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=LN),gn.init(t,e)}),uC=_e("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=EN(e)),gn.init(t,e)}),dC=_e("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=gN),gn.init(t,e)}),fC=_e("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=wN),gn.init(t,e),t._zod.bag.format="ipv4"}),pC=_e("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=kN),gn.init(t,e),t._zod.bag.format="ipv6",t._zod.check=s=>{try{new URL(`http://[${s.value}]`)}catch{s.issues.push({code:"invalid_format",format:"ipv6",input:s.value,inst:t,continue:!e.abort})}}}),mC=_e("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=SN),gn.init(t,e)}),hC=_e("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=_N),gn.init(t,e),t._zod.check=s=>{const r=s.value.split("/");try{if(r.length!==2)throw new Error;const[c,u]=r;if(!u)throw new Error;const f=Number(u);if(`${f}`!==u)throw new Error;if(f<0||f>128)throw new Error;new URL(`http://[${c}]`)}catch{s.issues.push({code:"invalid_format",format:"cidrv6",input:s.value,inst:t,continue:!e.abort})}}});function zv(t){if(t==="")return!0;if(/\s/.test(t)||t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}const gC=_e("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=jN),gn.init(t,e),t._zod.bag.contentEncoding="base64",t._zod.check=s=>{zv(s.value)||s.issues.push({code:"invalid_format",format:"base64",input:s.value,inst:t,continue:!e.abort})}});function xC(t){if(!_v.test(t))return!1;const e=t.replace(/[-_]/g,r=>r==="-"?"+":"/"),s=e.padEnd(Math.ceil(e.length/4)*4,"=");return zv(s)}const yC=_e("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=_v),gn.init(t,e),t._zod.bag.contentEncoding="base64url",t._zod.check=s=>{xC(s.value)||s.issues.push({code:"invalid_format",format:"base64url",input:s.value,inst:t,continue:!e.abort})}}),bC=_e("$ZodE164",(t,e)=>{e.pattern??(e.pattern=CN),gn.init(t,e)});function vC(t,e=null){try{const s=t.split(".");if(s.length!==3)return!1;const[r]=s;if(!r)return!1;const c=JSON.parse(atob(r));return!("typ"in c&&c?.typ!=="JWT"||!c.alg||e&&(!("alg"in c)||c.alg!==e))}catch{return!1}}const wC=_e("$ZodJWT",(t,e)=>{gn.init(t,e),t._zod.check=s=>{vC(s.value,e.alg)||s.issues.push({code:"invalid_format",format:"jwt",input:s.value,inst:t,continue:!e.abort})}}),Mv=_e("$ZodNumber",(t,e)=>{jn.init(t,e),t._zod.pattern=t._zod.bag.pattern??AN,t._zod.parse=(s,r)=>{if(e.coerce)try{s.value=Number(s.value)}catch{}const c=s.value;if(typeof c=="number"&&!Number.isNaN(c)&&Number.isFinite(c))return s;const u=typeof c=="number"?Number.isNaN(c)?"NaN":Number.isFinite(c)?void 0:"Infinity":void 0;return s.issues.push({expected:"number",code:"invalid_type",input:c,inst:t,...u?{received:u}:{}}),s}}),kC=_e("$ZodNumberFormat",(t,e)=>{$N.init(t,e),Mv.init(t,e)}),SC=_e("$ZodBoolean",(t,e)=>{jn.init(t,e),t._zod.pattern=ON,t._zod.parse=(s,r)=>{if(e.coerce)try{s.value=!!s.value}catch{}const c=s.value;return typeof c=="boolean"||s.issues.push({expected:"boolean",code:"invalid_type",input:c,inst:t}),s}}),_C=_e("$ZodUnknown",(t,e)=>{jn.init(t,e),t._zod.parse=s=>s}),jC=_e("$ZodNever",(t,e)=>{jn.init(t,e),t._zod.parse=(s,r)=>(s.issues.push({expected:"never",code:"invalid_type",input:s.value,inst:t}),s)});function Wy(t,e,s){t.issues.length&&e.issues.push(...kv(s,t.issues)),e.value[s]=t.value}const NC=_e("$ZodArray",(t,e)=>{jn.init(t,e),t._zod.parse=(s,r)=>{const c=s.value;if(!Array.isArray(c))return s.issues.push({expected:"array",code:"invalid_type",input:c,inst:t}),s;s.value=Array(c.length);const u=[];for(let f=0;f<c.length;f++){const d=c[f],h=e.element._zod.run({value:d,issues:[]},r);h instanceof Promise?u.push(h.then(g=>Wy(g,s,f))):Wy(h,s,f)}return u.length?Promise.all(u).then(()=>s):s}});function Tu(t,e,s,r,c,u){const f=s in r;if(t.issues.length){if(c&&u&&!f)return;e.issues.push(...kv(s,t.issues))}if(!f&&!c){t.issues.length||e.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[s]});return}t.value===void 0?f&&(e.value[s]=void 0):e.value[s]=t.value}function Tv(t){const e=Object.keys(t.shape);for(const r of e)if(!t.shape?.[r]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${r}": expected a Zod schema`);const s=Hj(t.shape);return{...t,keys:e,keySet:new Set(e),numKeys:e.length,optionalKeys:new Set(s)}}function Av(t,e,s,r,c,u){const f=[],d=c.keySet,h=c.catchall._zod,g=h.def.type,x=h.optin==="optional",y=h.optout==="optional";for(const b in e){if(b==="__proto__"||d.has(b))continue;if(g==="never"){f.push(b);continue}const k=h.run({value:e[b],issues:[]},r);k instanceof Promise?t.push(k.then(S=>Tu(S,s,b,e,x,y))):Tu(k,s,b,e,x,y)}return f.length&&s.issues.push({code:"unrecognized_keys",keys:f,input:e,inst:u}),t.length?Promise.all(t).then(()=>s):s}const CC=_e("$ZodObject",(t,e)=>{if(jn.init(t,e),!Object.getOwnPropertyDescriptor(e,"shape")?.get){const d=e.shape;Object.defineProperty(e,"shape",{get:()=>{const h={...d};return Object.defineProperty(e,"shape",{value:h}),h}})}const r=Vm(()=>Tv(e));Jt(t._zod,"propValues",()=>{const d=e.shape,h={};for(const g in d){const x=d[g]._zod;if(x.values){h[g]??(h[g]=new Set);for(const y of x.values)h[g].add(y)}}return h});const c=Mu,u=e.catchall;let f;t._zod.parse=(d,h)=>{f??(f=r.value);const g=d.value;if(!c(g))return d.issues.push({expected:"object",code:"invalid_type",input:g,inst:t}),d;d.value={};const x=[],y=f.shape;for(const b of f.keys){const k=y[b],S=k._zod.optin==="optional",w=k._zod.optout==="optional",_=k._zod.run({value:g[b],issues:[]},h);_ instanceof Promise?x.push(_.then(N=>Tu(N,d,b,g,S,w))):Tu(_,d,b,g,S,w)}return u?Av(x,g,d,h,r.value,t):x.length?Promise.all(x).then(()=>d):d}}),LC=_e("$ZodObjectJIT",(t,e)=>{CC.init(t,e);const s=t._zod.parse,r=Vm(()=>Tv(e)),c=b=>{const k=new KN(["shape","payload","ctx"]),S=r.value,w=z=>{const O=Zy(z);return`shape[${O}]._zod.run({ value: input[${O}], issues: [] }, ctx)`};k.write("const input = payload.value;");const _=Object.create(null);let N=0;for(const z of S.keys)_[z]=`key_${N++}`;k.write("const newResult = {};");for(const z of S.keys){const O=_[z],I=Zy(z),q=b[z],M=q?._zod?.optin==="optional",E=q?._zod?.optout==="optional";k.write(`const ${O} = ${w(z)};`),M&&E?k.write(`
34
+ if (${O}.issues.length) {
35
+ if (${I} in input) {
36
+ payload.issues = payload.issues.concat(${O}.issues.map(iss => ({
37
+ ...iss,
38
+ path: iss.path ? [${I}, ...iss.path] : [${I}]
39
+ })));
40
+ }
41
+ }
42
+
43
+ if (${O}.value === undefined) {
44
+ if (${I} in input) {
45
+ newResult[${I}] = undefined;
46
+ }
47
+ } else {
48
+ newResult[${I}] = ${O}.value;
49
+ }
50
+
51
+ `):M?k.write(`
52
+ if (${O}.issues.length) {
53
+ payload.issues = payload.issues.concat(${O}.issues.map(iss => ({
54
+ ...iss,
55
+ path: iss.path ? [${I}, ...iss.path] : [${I}]
56
+ })));
57
+ }
58
+
59
+ if (${O}.value === undefined) {
60
+ if (${I} in input) {
61
+ newResult[${I}] = undefined;
62
+ }
63
+ } else {
64
+ newResult[${I}] = ${O}.value;
65
+ }
66
+
67
+ `):k.write(`
68
+ const ${O}_present = ${I} in input;
69
+ if (${O}.issues.length) {
70
+ payload.issues = payload.issues.concat(${O}.issues.map(iss => ({
71
+ ...iss,
72
+ path: iss.path ? [${I}, ...iss.path] : [${I}]
73
+ })));
74
+ }
75
+ if (!${O}_present && !${O}.issues.length) {
76
+ payload.issues.push({
77
+ code: "invalid_type",
78
+ expected: "nonoptional",
79
+ input: undefined,
80
+ path: [${I}]
81
+ });
82
+ }
83
+
84
+ if (${O}_present) {
85
+ if (${O}.value === undefined) {
86
+ newResult[${I}] = undefined;
87
+ } else {
88
+ newResult[${I}] = ${O}.value;
89
+ }
90
+ }
91
+
92
+ `)}k.write("payload.value = newResult;"),k.write("return payload;");const L=k.compile();return(z,O)=>L(b,z,O)};let u;const f=Mu,d=!Zm.jitless,g=d&&$j.value,x=e.catchall;let y;t._zod.parse=(b,k)=>{y??(y=r.value);const S=b.value;return f(S)?d&&g&&k?.async===!1&&k.jitless!==!0?(u||(u=c(e.shape)),b=u(b,k),x?Av([],S,b,k,y,t):b):s(b,k):(b.issues.push({expected:"object",code:"invalid_type",input:S,inst:t}),b)}});function By(t,e,s,r){for(const u of t)if(u.issues.length===0)return e.value=u.value,e;const c=t.filter(u=>!ml(u));return c.length===1?(e.value=c[0].value,c[0]):(e.issues.push({code:"invalid_union",input:e.value,inst:s,errors:t.map(u=>u.issues.map(f=>gr(f,r,hr())))}),e)}const EC=_e("$ZodUnion",(t,e)=>{jn.init(t,e),Jt(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),Jt(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),Jt(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),Jt(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){const r=e.options.map(c=>c._zod.pattern);return new RegExp(`^(${r.map(c=>Bm(c.source)).join("|")})$`)}});const s=e.options.length===1?e.options[0]._zod.run:null;t._zod.parse=(r,c)=>{if(s)return s(r,c);let u=!1;const f=[];for(const d of e.options){const h=d._zod.run({value:r.value,issues:[]},c);if(h instanceof Promise)f.push(h),u=!0;else{if(h.issues.length===0)return h;f.push(h)}}return u?Promise.all(f).then(d=>By(d,r,t,c)):By(f,r,t,c)}}),zC=_e("$ZodIntersection",(t,e)=>{jn.init(t,e),t._zod.parse=(s,r)=>{const c=s.value,u=e.left._zod.run({value:c,issues:[]},r),f=e.right._zod.run({value:c,issues:[]},r);return u instanceof Promise||f instanceof Promise?Promise.all([u,f]).then(([h,g])=>Fy(s,h,g)):Fy(s,u,f)}});function om(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(Ti(t)&&Ti(e)){const s=Object.keys(e),r=Object.keys(t).filter(u=>s.indexOf(u)!==-1),c={...t,...e};for(const u of r){const f=om(t[u],e[u]);if(!f.valid)return{valid:!1,mergeErrorPath:[u,...f.mergeErrorPath]};c[u]=f.data}return{valid:!0,data:c}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};const s=[];for(let r=0;r<t.length;r++){const c=t[r],u=e[r],f=om(c,u);if(!f.valid)return{valid:!1,mergeErrorPath:[r,...f.mergeErrorPath]};s.push(f.data)}return{valid:!0,data:s}}return{valid:!1,mergeErrorPath:[]}}function Fy(t,e,s){const r=new Map;let c;for(const d of e.issues)if(d.code==="unrecognized_keys"){c??(c=d);for(const h of d.keys)r.has(h)||r.set(h,{}),r.get(h).l=!0}else t.issues.push(d);for(const d of s.issues)if(d.code==="unrecognized_keys")for(const h of d.keys)r.has(h)||r.set(h,{}),r.get(h).r=!0;else t.issues.push(d);const u=[...r].filter(([,d])=>d.l&&d.r).map(([d])=>d);if(u.length&&c&&t.issues.push({...c,keys:u}),ml(t))return t;const f=om(e.value,s.value);if(!f.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(f.mergeErrorPath)}`);return t.value=f.data,t}const MC=_e("$ZodEnum",(t,e)=>{jn.init(t,e);const s=bv(e.entries),r=new Set(s);t._zod.values=r,t._zod.pattern=new RegExp(`^(${s.filter(c=>qj.has(typeof c)).map(c=>typeof c=="string"?Bu(c):c.toString()).join("|")})$`),t._zod.parse=(c,u)=>{const f=c.value;return r.has(f)||c.issues.push({code:"invalid_value",values:s,input:f,inst:t}),c}}),TC=_e("$ZodTransform",(t,e)=>{jn.init(t,e),t._zod.optin="optional",t._zod.parse=(s,r)=>{if(r.direction==="backward")throw new yv(t.constructor.name);const c=e.transform(s.value,s);if(r.async)return(c instanceof Promise?c:Promise.resolve(c)).then(f=>(s.value=f,s.fallback=!0,s));if(c instanceof Promise)throw new xl;return s.value=c,s.fallback=!0,s}});function Gy(t,e){return e===void 0&&(t.issues.length||t.fallback)?{issues:[],value:void 0}:t}const Ov=_e("$ZodOptional",(t,e)=>{jn.init(t,e),t._zod.optin="optional",t._zod.optout="optional",Jt(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),Jt(t._zod,"pattern",()=>{const s=e.innerType._zod.pattern;return s?new RegExp(`^(${Bm(s.source)})?$`):void 0}),t._zod.parse=(s,r)=>{if(e.innerType._zod.optin==="optional"){const c=s.value,u=e.innerType._zod.run(s,r);return u instanceof Promise?u.then(f=>Gy(f,c)):Gy(u,c)}return s.value===void 0?s:e.innerType._zod.run(s,r)}}),AC=_e("$ZodExactOptional",(t,e)=>{Ov.init(t,e),Jt(t._zod,"values",()=>e.innerType._zod.values),Jt(t._zod,"pattern",()=>e.innerType._zod.pattern),t._zod.parse=(s,r)=>e.innerType._zod.run(s,r)}),OC=_e("$ZodNullable",(t,e)=>{jn.init(t,e),Jt(t._zod,"optin",()=>e.innerType._zod.optin),Jt(t._zod,"optout",()=>e.innerType._zod.optout),Jt(t._zod,"pattern",()=>{const s=e.innerType._zod.pattern;return s?new RegExp(`^(${Bm(s.source)}|null)$`):void 0}),Jt(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(s,r)=>s.value===null?s:e.innerType._zod.run(s,r)}),RC=_e("$ZodDefault",(t,e)=>{jn.init(t,e),t._zod.optin="optional",Jt(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(s,r)=>{if(r.direction==="backward")return e.innerType._zod.run(s,r);if(s.value===void 0)return s.value=e.defaultValue,s;const c=e.innerType._zod.run(s,r);return c instanceof Promise?c.then(u=>Qy(u,e)):Qy(c,e)}});function Qy(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}const DC=_e("$ZodPrefault",(t,e)=>{jn.init(t,e),t._zod.optin="optional",Jt(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(s,r)=>(r.direction==="backward"||s.value===void 0&&(s.value=e.defaultValue),e.innerType._zod.run(s,r))}),IC=_e("$ZodNonOptional",(t,e)=>{jn.init(t,e),Jt(t._zod,"values",()=>{const s=e.innerType._zod.values;return s?new Set([...s].filter(r=>r!==void 0)):void 0}),t._zod.parse=(s,r)=>{const c=e.innerType._zod.run(s,r);return c instanceof Promise?c.then(u=>Ky(u,t)):Ky(c,t)}});function Ky(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}const $C=_e("$ZodCatch",(t,e)=>{jn.init(t,e),t._zod.optin="optional",Jt(t._zod,"optout",()=>e.innerType._zod.optout),Jt(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(s,r)=>{if(r.direction==="backward")return e.innerType._zod.run(s,r);const c=e.innerType._zod.run(s,r);return c instanceof Promise?c.then(u=>(s.value=u.value,u.issues.length&&(s.value=e.catchValue({...s,error:{issues:u.issues.map(f=>gr(f,r,hr()))},input:s.value}),s.issues=[],s.fallback=!0),s)):(s.value=c.value,c.issues.length&&(s.value=e.catchValue({...s,error:{issues:c.issues.map(u=>gr(u,r,hr()))},input:s.value}),s.issues=[],s.fallback=!0),s)}}),qC=_e("$ZodPipe",(t,e)=>{jn.init(t,e),Jt(t._zod,"values",()=>e.in._zod.values),Jt(t._zod,"optin",()=>e.in._zod.optin),Jt(t._zod,"optout",()=>e.out._zod.optout),Jt(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(s,r)=>{if(r.direction==="backward"){const u=e.out._zod.run(s,r);return u instanceof Promise?u.then(f=>mu(f,e.in,r)):mu(u,e.in,r)}const c=e.in._zod.run(s,r);return c instanceof Promise?c.then(u=>mu(u,e.out,r)):mu(c,e.out,r)}});function mu(t,e,s){return t.issues.length?(t.aborted=!0,t):e._zod.run({value:t.value,issues:t.issues,fallback:t.fallback},s)}const HC=_e("$ZodReadonly",(t,e)=>{jn.init(t,e),Jt(t._zod,"propValues",()=>e.innerType._zod.propValues),Jt(t._zod,"values",()=>e.innerType._zod.values),Jt(t._zod,"optin",()=>e.innerType?._zod?.optin),Jt(t._zod,"optout",()=>e.innerType?._zod?.optout),t._zod.parse=(s,r)=>{if(r.direction==="backward")return e.innerType._zod.run(s,r);const c=e.innerType._zod.run(s,r);return c instanceof Promise?c.then(Yy):Yy(c)}});function Yy(t){return t.value=Object.freeze(t.value),t}const UC=_e("$ZodCustom",(t,e)=>{ho.init(t,e),jn.init(t,e),t._zod.parse=(s,r)=>s,t._zod.check=s=>{const r=s.value,c=e.fn(r);if(c instanceof Promise)return c.then(u=>Py(u,s,r,t));Py(c,s,r,t)}});function Py(t,e,s,r){if(!t){const c={code:"custom",input:s,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(c.params=r._zod.def.params),e.issues.push(Ai(c))}}var Xy;class ZC{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...s){const r=s[0];return this._map.set(e,r),r&&typeof r=="object"&&"id"in r&&this._idmap.set(r.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){const s=this._map.get(e);return s&&typeof s=="object"&&"id"in s&&this._idmap.delete(s.id),this._map.delete(e),this}get(e){const s=e._zod.parent;if(s){const r={...this.get(s)??{}};delete r.id;const c={...r,...this._map.get(e)};return Object.keys(c).length?c:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function VC(){return new ZC}(Xy=globalThis).__zod_globalRegistry??(Xy.__zod_globalRegistry=VC());const _i=globalThis.__zod_globalRegistry;function WC(t,e){return new t({type:"string",...Je(e)})}function Rv(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...Je(e)})}function Jy(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...Je(e)})}function BC(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...Je(e)})}function FC(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...Je(e)})}function GC(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...Je(e)})}function QC(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...Je(e)})}function KC(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...Je(e)})}function YC(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...Je(e)})}function PC(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...Je(e)})}function XC(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...Je(e)})}function JC(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...Je(e)})}function e5(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...Je(e)})}function t5(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...Je(e)})}function n5(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...Je(e)})}function o5(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...Je(e)})}function s5(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...Je(e)})}function a5(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...Je(e)})}function r5(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...Je(e)})}function l5(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...Je(e)})}function i5(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...Je(e)})}function c5(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...Je(e)})}function u5(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...Je(e)})}function d5(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...Je(e)})}function f5(t,e){return new t({type:"string",format:"date",check:"string_format",...Je(e)})}function p5(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...Je(e)})}function m5(t,e){return new t({type:"string",format:"duration",check:"string_format",...Je(e)})}function h5(t,e){return new t({type:"number",checks:[],...Je(e)})}function g5(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...Je(e)})}function x5(t,e){return new t({type:"boolean",...Je(e)})}function y5(t){return new t({type:"unknown"})}function b5(t,e){return new t({type:"never",...Je(e)})}function eb(t,e){return new Lv({check:"less_than",...Je(e),value:t,inclusive:!1})}function Np(t,e){return new Lv({check:"less_than",...Je(e),value:t,inclusive:!0})}function tb(t,e){return new Ev({check:"greater_than",...Je(e),value:t,inclusive:!1})}function Cp(t,e){return new Ev({check:"greater_than",...Je(e),value:t,inclusive:!0})}function nb(t,e){return new IN({check:"multiple_of",...Je(e),value:t})}function Dv(t,e){return new qN({check:"max_length",...Je(e),maximum:t})}function Au(t,e){return new HN({check:"min_length",...Je(e),minimum:t})}function Iv(t,e){return new UN({check:"length_equals",...Je(e),length:t})}function v5(t,e){return new ZN({check:"string_format",format:"regex",...Je(e),pattern:t})}function w5(t){return new VN({check:"string_format",format:"lowercase",...Je(t)})}function k5(t){return new WN({check:"string_format",format:"uppercase",...Je(t)})}function S5(t,e){return new BN({check:"string_format",format:"includes",...Je(e),includes:t})}function _5(t,e){return new FN({check:"string_format",format:"starts_with",...Je(e),prefix:t})}function j5(t,e){return new GN({check:"string_format",format:"ends_with",...Je(e),suffix:t})}function El(t){return new QN({check:"overwrite",tx:t})}function N5(t){return El(e=>e.normalize(t))}function C5(){return El(t=>t.trim())}function L5(){return El(t=>t.toLowerCase())}function E5(){return El(t=>t.toUpperCase())}function z5(){return El(t=>Ij(t))}function M5(t,e,s){return new t({type:"array",element:e,...Je(s)})}function T5(t,e,s){return new t({type:"custom",check:"custom",fn:e,...Je(s)})}function A5(t,e){const s=O5(r=>(r.addIssue=c=>{if(typeof c=="string")r.issues.push(Ai(c,r.value,s._zod.def));else{const u=c;u.fatal&&(u.continue=!1),u.code??(u.code="custom"),u.input??(u.input=r.value),u.inst??(u.inst=s),u.continue??(u.continue=!s._zod.def.abort),r.issues.push(Ai(u))}},t(r.value,r)),e);return s}function O5(t,e){const s=new ho({check:"custom",...Je(e)});return s._zod.check=t,s}function $v(t){let e=t?.target??"draft-2020-12";return e==="draft-4"&&(e="draft-04"),e==="draft-7"&&(e="draft-07"),{processors:t.processors??{},metadataRegistry:t?.metadata??_i,target:e,unrepresentable:t?.unrepresentable??"throw",override:t?.override??(()=>{}),io:t?.io??"output",counter:0,seen:new Map,cycles:t?.cycles??"ref",reused:t?.reused??"inline",external:t?.external??void 0}}function Kn(t,e,s={path:[],schemaPath:[]}){var r;const c=t._zod.def,u=e.seen.get(t);if(u)return u.count++,s.schemaPath.includes(t)&&(u.cycle=s.path),u.schema;const f={schema:{},count:1,cycle:void 0,path:s.path};e.seen.set(t,f);const d=t._zod.toJSONSchema?.();if(d)f.schema=d;else{const x={...s,schemaPath:[...s.schemaPath,t],path:s.path};if(t._zod.processJSONSchema)t._zod.processJSONSchema(e,f.schema,x);else{const b=f.schema,k=e.processors[c.type];if(!k)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${c.type}`);k(t,e,b,x)}const y=t._zod.parent;y&&(f.ref||(f.ref=y),Kn(y,e,x),e.seen.get(y).isParent=!0)}const h=e.metadataRegistry.get(t);return h&&Object.assign(f.schema,h),e.io==="input"&&no(t)&&(delete f.schema.examples,delete f.schema.default),e.io==="input"&&"_prefault"in f.schema&&((r=f.schema).default??(r.default=f.schema._prefault)),delete f.schema._prefault,e.seen.get(t).schema}function qv(t,e){const s=t.seen.get(e);if(!s)throw new Error("Unprocessed schema. This is a bug in Zod.");const r=new Map;for(const f of t.seen.entries()){const d=t.metadataRegistry.get(f[0])?.id;if(d){const h=r.get(d);if(h&&h!==f[0])throw new Error(`Duplicate schema id "${d}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(d,f[0])}}const c=f=>{const d=t.target==="draft-2020-12"?"$defs":"definitions";if(t.external){const y=t.external.registry.get(f[0])?.id,b=t.external.uri??(S=>S);if(y)return{ref:b(y)};const k=f[1].defId??f[1].schema.id??`schema${t.counter++}`;return f[1].defId=k,{defId:k,ref:`${b("__shared")}#/${d}/${k}`}}if(f[1]===s)return{ref:"#"};const g=`#/${d}/`,x=f[1].schema.id??`__schema${t.counter++}`;return{defId:x,ref:g+x}},u=f=>{if(f[1].schema.$ref)return;const d=f[1],{ref:h,defId:g}=c(f);d.def={...d.schema},g&&(d.defId=g);const x=d.schema;for(const y in x)delete x[y];x.$ref=h};if(t.cycles==="throw")for(const f of t.seen.entries()){const d=f[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
93
+
94
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const f of t.seen.entries()){const d=f[1];if(e===f[0]){u(f);continue}if(t.external){const g=t.external.registry.get(f[0])?.id;if(e!==f[0]&&g){u(f);continue}}if(t.metadataRegistry.get(f[0])?.id){u(f);continue}if(d.cycle){u(f);continue}if(d.count>1&&t.reused==="ref"){u(f);continue}}}function Hv(t,e){const s=t.seen.get(e);if(!s)throw new Error("Unprocessed schema. This is a bug in Zod.");const r=d=>{const h=t.seen.get(d);if(h.ref===null)return;const g=h.def??h.schema,x={...g},y=h.ref;if(h.ref=null,y){r(y);const k=t.seen.get(y),S=k.schema;if(S.$ref&&(t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0")?(g.allOf=g.allOf??[],g.allOf.push(S)):Object.assign(g,S),Object.assign(g,x),d._zod.parent===y)for(const _ in g)_==="$ref"||_==="allOf"||_ in x||delete g[_];if(S.$ref&&k.def)for(const _ in g)_==="$ref"||_==="allOf"||_ in k.def&&JSON.stringify(g[_])===JSON.stringify(k.def[_])&&delete g[_]}const b=d._zod.parent;if(b&&b!==y){r(b);const k=t.seen.get(b);if(k?.schema.$ref&&(g.$ref=k.schema.$ref,k.def))for(const S in g)S==="$ref"||S==="allOf"||S in k.def&&JSON.stringify(g[S])===JSON.stringify(k.def[S])&&delete g[S]}t.override({zodSchema:d,jsonSchema:g,path:h.path??[]})};for(const d of[...t.seen.entries()].reverse())r(d[0]);const c={};if(t.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":t.target==="draft-07"?c.$schema="http://json-schema.org/draft-07/schema#":t.target==="draft-04"?c.$schema="http://json-schema.org/draft-04/schema#":t.target,t.external?.uri){const d=t.external.registry.get(e)?.id;if(!d)throw new Error("Schema is missing an `id` property");c.$id=t.external.uri(d)}Object.assign(c,s.def??s.schema);const u=t.metadataRegistry.get(e)?.id;u!==void 0&&c.id===u&&delete c.id;const f=t.external?.defs??{};for(const d of t.seen.entries()){const h=d[1];h.def&&h.defId&&(h.def.id===h.defId&&delete h.def.id,f[h.defId]=h.def)}t.external||Object.keys(f).length>0&&(t.target==="draft-2020-12"?c.$defs=f:c.definitions=f);try{const d=JSON.parse(JSON.stringify(c));return Object.defineProperty(d,"~standard",{value:{...e["~standard"],jsonSchema:{input:Ou(e,"input",t.processors),output:Ou(e,"output",t.processors)}},enumerable:!1,writable:!1}),d}catch{throw new Error("Error converting schema to JSON.")}}function no(t,e){const s=e??{seen:new Set};if(s.seen.has(t))return!1;s.seen.add(t);const r=t._zod.def;if(r.type==="transform")return!0;if(r.type==="array")return no(r.element,s);if(r.type==="set")return no(r.valueType,s);if(r.type==="lazy")return no(r.getter(),s);if(r.type==="promise"||r.type==="optional"||r.type==="nonoptional"||r.type==="nullable"||r.type==="readonly"||r.type==="default"||r.type==="prefault")return no(r.innerType,s);if(r.type==="intersection")return no(r.left,s)||no(r.right,s);if(r.type==="record"||r.type==="map")return no(r.keyType,s)||no(r.valueType,s);if(r.type==="pipe")return t._zod.traits.has("$ZodCodec")?!0:no(r.in,s)||no(r.out,s);if(r.type==="object"){for(const c in r.shape)if(no(r.shape[c],s))return!0;return!1}if(r.type==="union"){for(const c of r.options)if(no(c,s))return!0;return!1}if(r.type==="tuple"){for(const c of r.items)if(no(c,s))return!0;return!!(r.rest&&no(r.rest,s))}return!1}const R5=(t,e={})=>s=>{const r=$v({...s,processors:e});return Kn(t,r),qv(r,t),Hv(r,t)},Ou=(t,e,s={})=>r=>{const{libraryOptions:c,target:u}=r??{},f=$v({...c??{},target:u,io:e,processors:s});return Kn(t,f),qv(f,t),Hv(f,t)},D5={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},I5=(t,e,s,r)=>{const c=s;c.type="string";const{minimum:u,maximum:f,format:d,patterns:h,contentEncoding:g}=t._zod.bag;if(typeof u=="number"&&(c.minLength=u),typeof f=="number"&&(c.maxLength=f),d&&(c.format=D5[d]??d,c.format===""&&delete c.format,d==="time"&&delete c.format),g&&(c.contentEncoding=g),h&&h.size>0){const x=[...h];x.length===1?c.pattern=x[0].source:x.length>1&&(c.allOf=[...x.map(y=>({...e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"?{type:"string"}:{},pattern:y.source}))])}},$5=(t,e,s,r)=>{const c=s,{minimum:u,maximum:f,format:d,multipleOf:h,exclusiveMaximum:g,exclusiveMinimum:x}=t._zod.bag;typeof d=="string"&&d.includes("int")?c.type="integer":c.type="number";const y=typeof x=="number"&&x>=(u??Number.NEGATIVE_INFINITY),b=typeof g=="number"&&g<=(f??Number.POSITIVE_INFINITY),k=e.target==="draft-04"||e.target==="openapi-3.0";y?k?(c.minimum=x,c.exclusiveMinimum=!0):c.exclusiveMinimum=x:typeof u=="number"&&(c.minimum=u),b?k?(c.maximum=g,c.exclusiveMaximum=!0):c.exclusiveMaximum=g:typeof f=="number"&&(c.maximum=f),typeof h=="number"&&(c.multipleOf=h)},q5=(t,e,s,r)=>{s.type="boolean"},H5=(t,e,s,r)=>{s.not={}},U5=(t,e,s,r)=>{},Z5=(t,e,s,r)=>{const c=t._zod.def,u=bv(c.entries);u.every(f=>typeof f=="number")&&(s.type="number"),u.every(f=>typeof f=="string")&&(s.type="string"),s.enum=u},V5=(t,e,s,r)=>{if(e.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},W5=(t,e,s,r)=>{if(e.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},B5=(t,e,s,r)=>{const c=s,u=t._zod.def,{minimum:f,maximum:d}=t._zod.bag;typeof f=="number"&&(c.minItems=f),typeof d=="number"&&(c.maxItems=d),c.type="array",c.items=Kn(u.element,e,{...r,path:[...r.path,"items"]})},F5=(t,e,s,r)=>{const c=s,u=t._zod.def;c.type="object",c.properties={};const f=u.shape;for(const g in f)c.properties[g]=Kn(f[g],e,{...r,path:[...r.path,"properties",g]});const d=new Set(Object.keys(f)),h=new Set([...d].filter(g=>{const x=u.shape[g]._zod;return e.io==="input"?x.optin===void 0:x.optout===void 0}));h.size>0&&(c.required=Array.from(h)),u.catchall?._zod.def.type==="never"?c.additionalProperties=!1:u.catchall?u.catchall&&(c.additionalProperties=Kn(u.catchall,e,{...r,path:[...r.path,"additionalProperties"]})):e.io==="output"&&(c.additionalProperties=!1)},G5=(t,e,s,r)=>{const c=t._zod.def,u=c.inclusive===!1,f=c.options.map((d,h)=>Kn(d,e,{...r,path:[...r.path,u?"oneOf":"anyOf",h]}));u?s.oneOf=f:s.anyOf=f},Q5=(t,e,s,r)=>{const c=t._zod.def,u=Kn(c.left,e,{...r,path:[...r.path,"allOf",0]}),f=Kn(c.right,e,{...r,path:[...r.path,"allOf",1]}),d=g=>"allOf"in g&&Object.keys(g).length===1,h=[...d(u)?u.allOf:[u],...d(f)?f.allOf:[f]];s.allOf=h},K5=(t,e,s,r)=>{const c=t._zod.def,u=Kn(c.innerType,e,r),f=e.seen.get(t);e.target==="openapi-3.0"?(f.ref=c.innerType,s.nullable=!0):s.anyOf=[u,{type:"null"}]},Y5=(t,e,s,r)=>{const c=t._zod.def;Kn(c.innerType,e,r);const u=e.seen.get(t);u.ref=c.innerType},P5=(t,e,s,r)=>{const c=t._zod.def;Kn(c.innerType,e,r);const u=e.seen.get(t);u.ref=c.innerType,s.default=JSON.parse(JSON.stringify(c.defaultValue))},X5=(t,e,s,r)=>{const c=t._zod.def;Kn(c.innerType,e,r);const u=e.seen.get(t);u.ref=c.innerType,e.io==="input"&&(s._prefault=JSON.parse(JSON.stringify(c.defaultValue)))},J5=(t,e,s,r)=>{const c=t._zod.def;Kn(c.innerType,e,r);const u=e.seen.get(t);u.ref=c.innerType;let f;try{f=c.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}s.default=f},eL=(t,e,s,r)=>{const c=t._zod.def,u=c.in._zod.traits.has("$ZodTransform"),f=e.io==="input"?u?c.out:c.in:c.out;Kn(f,e,r);const d=e.seen.get(t);d.ref=f},tL=(t,e,s,r)=>{const c=t._zod.def;Kn(c.innerType,e,r);const u=e.seen.get(t);u.ref=c.innerType,s.readOnly=!0},Uv=(t,e,s,r)=>{const c=t._zod.def;Kn(c.innerType,e,r);const u=e.seen.get(t);u.ref=c.innerType};function ob(t,e){try{var s=t()}catch(r){return e(r)}return s&&s.then?s.then(void 0,e):s}function nL(t,e){for(var s={};t.length;){var r=t[0],c=r.code,u=r.message,f=r.path.join(".");if(!s[f])if("unionErrors"in r){var d=r.unionErrors[0].errors[0];s[f]={message:d.message,type:d.code}}else s[f]={message:u,type:c};if("unionErrors"in r&&r.unionErrors.forEach(function(x){return x.errors.forEach(function(y){return t.push(y)})}),e){var h=s[f].types,g=h&&h[r.code];s[f]=k0(f,e,s,c,g?[].concat(g,r.message):r.message)}t.shift()}return s}function oL(t,e){for(var s={};t.length;){var r=t[0],c=r.code,u=r.message,f=r.path.join(".");if(!s[f])if(r.code==="invalid_union"&&r.errors.length>0){var d=r.errors[0][0];s[f]={message:d.message,type:d.code}}else s[f]={message:u,type:c};if(r.code==="invalid_union"&&r.errors.forEach(function(x){return x.forEach(function(y){return t.push(y)})}),e){var h=s[f].types,g=h&&h[r.code];s[f]=k0(f,e,s,c,g?[].concat(g,r.message):r.message)}t.shift()}return s}function sL(t,e,s){if(s===void 0&&(s={}),(function(r){return"_def"in r&&typeof r._def=="object"&&"typeName"in r._def})(t))return function(r,c,u){try{return Promise.resolve(ob(function(){return Promise.resolve(t[s.mode==="sync"?"parse":"parseAsync"](r,e)).then(function(f){return u.shouldUseNativeValidation&&Xx({},u),{errors:{},values:s.raw?Object.assign({},r):f}})},function(f){if((function(d){return Array.isArray(d?.issues)})(f))return{values:{},errors:Jx(nL(f.errors,!u.shouldUseNativeValidation&&u.criteriaMode==="all"),u)};throw f}))}catch(f){return Promise.reject(f)}};if((function(r){return"_zod"in r&&typeof r._zod=="object"})(t))return function(r,c,u){try{return Promise.resolve(ob(function(){return Promise.resolve((s.mode==="sync"?Xj:Jj)(t,r,e)).then(function(f){return u.shouldUseNativeValidation&&Xx({},u),{errors:{},values:s.raw?Object.assign({},r):f}})},function(f){if((function(d){return d instanceof Gm})(f))return{values:{},errors:Jx(oL(f.issues,!u.shouldUseNativeValidation&&u.criteriaMode==="all"),u)};throw f}))}catch(f){return Promise.reject(f)}};throw new Error("Invalid input: not a Zod schema")}const aL=_e("ZodISODateTime",(t,e)=>{iC.init(t,e),yn.init(t,e)});function rL(t){return d5(aL,t)}const lL=_e("ZodISODate",(t,e)=>{cC.init(t,e),yn.init(t,e)});function iL(t){return f5(lL,t)}const cL=_e("ZodISOTime",(t,e)=>{uC.init(t,e),yn.init(t,e)});function uL(t){return p5(cL,t)}const dL=_e("ZodISODuration",(t,e)=>{dC.init(t,e),yn.init(t,e)});function fL(t){return m5(dL,t)}const pL=(t,e)=>{Gm.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:s=>Pj(t,s)},flatten:{value:s=>Yj(t,s)},addIssue:{value:s=>{t.issues.push(s),t.message=JSON.stringify(t.issues,nm,2)}},addIssues:{value:s=>{t.issues.push(...s),t.message=JSON.stringify(t.issues,nm,2)}},isEmpty:{get(){return t.issues.length===0}}})},Wo=_e("ZodError",pL,{Parent:Error}),mL=Gu(Wo),hL=Qu(Wo),gL=Ku(Wo),xL=Yu(Wo),yL=nN(Wo),bL=oN(Wo),vL=sN(Wo),wL=aN(Wo),kL=rN(Wo),SL=lN(Wo),_L=iN(Wo),jL=cN(Wo),sb=new WeakMap;function Wi(t,e,s){const r=Object.getPrototypeOf(t);let c=sb.get(r);if(c||(c=new Set,sb.set(r,c)),!c.has(e)){c.add(e);for(const u in s){const f=s[u];Object.defineProperty(r,u,{configurable:!0,enumerable:!1,get(){const d=f.bind(this);return Object.defineProperty(this,u,{configurable:!0,writable:!0,enumerable:!0,value:d}),d},set(d){Object.defineProperty(this,u,{configurable:!0,writable:!0,enumerable:!0,value:d})}})}}}const Nn=_e("ZodType",(t,e)=>(jn.init(t,e),Object.assign(t["~standard"],{jsonSchema:{input:Ou(t,"input"),output:Ou(t,"output")}}),t.toJSONSchema=R5(t,{}),t.def=e,t.type=e.type,Object.defineProperty(t,"_def",{value:e}),t.parse=(s,r)=>mL(t,s,r,{callee:t.parse}),t.safeParse=(s,r)=>gL(t,s,r),t.parseAsync=async(s,r)=>hL(t,s,r,{callee:t.parseAsync}),t.safeParseAsync=async(s,r)=>xL(t,s,r),t.spa=t.safeParseAsync,t.encode=(s,r)=>yL(t,s,r),t.decode=(s,r)=>bL(t,s,r),t.encodeAsync=async(s,r)=>vL(t,s,r),t.decodeAsync=async(s,r)=>wL(t,s,r),t.safeEncode=(s,r)=>kL(t,s,r),t.safeDecode=(s,r)=>SL(t,s,r),t.safeEncodeAsync=async(s,r)=>_L(t,s,r),t.safeDecodeAsync=async(s,r)=>jL(t,s,r),Wi(t,"ZodType",{check(...s){const r=this.def;return this.clone(Aa(r,{checks:[...r.checks??[],...s.map(c=>typeof c=="function"?{_zod:{check:c,def:{check:"custom"},onattach:[]}}:c)]}),{parent:!0})},with(...s){return this.check(...s)},clone(s,r){return Oa(this,s,r)},brand(){return this},register(s,r){return s.add(this,r),this},refine(s,r){return this.check(gE(s,r))},superRefine(s,r){return this.check(xE(s,r))},overwrite(s){return this.check(El(s))},optional(){return ib(this)},exactOptional(){return oE(this)},nullable(){return cb(this)},nullish(){return ib(cb(this))},nonoptional(s){return cE(this,s)},array(){return Bv(this)},or(s){return PL([this,s])},and(s){return JL(this,s)},transform(s){return ub(this,tE(s))},default(s){return rE(this,s)},prefault(s){return iE(this,s)},catch(s){return dE(this,s)},pipe(s){return ub(this,s)},readonly(){return mE(this)},describe(s){const r=this.clone();return _i.add(r,{description:s}),r},meta(...s){if(s.length===0)return _i.get(this);const r=this.clone();return _i.add(r,s[0]),r},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(s){return s(this)}}),Object.defineProperty(t,"description",{get(){return _i.get(t)?.description},configurable:!0}),t)),Zv=_e("_ZodString",(t,e)=>{Qm.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(r,c,u)=>I5(t,r,c);const s=t._zod.bag;t.format=s.format??null,t.minLength=s.minimum??null,t.maxLength=s.maximum??null,Wi(t,"_ZodString",{regex(...r){return this.check(v5(...r))},includes(...r){return this.check(S5(...r))},startsWith(...r){return this.check(_5(...r))},endsWith(...r){return this.check(j5(...r))},min(...r){return this.check(Au(...r))},max(...r){return this.check(Dv(...r))},length(...r){return this.check(Iv(...r))},nonempty(...r){return this.check(Au(1,...r))},lowercase(r){return this.check(w5(r))},uppercase(r){return this.check(k5(r))},trim(){return this.check(C5())},normalize(...r){return this.check(N5(...r))},toLowerCase(){return this.check(L5())},toUpperCase(){return this.check(E5())},slugify(){return this.check(z5())}})}),NL=_e("ZodString",(t,e)=>{Qm.init(t,e),Zv.init(t,e),t.email=s=>t.check(Rv(Vv,s)),t.url=s=>t.check(KC(CL,s)),t.jwt=s=>t.check(u5(ZL,s)),t.emoji=s=>t.check(YC(LL,s)),t.guid=s=>t.check(Jy(ab,s)),t.uuid=s=>t.check(BC(hu,s)),t.uuidv4=s=>t.check(FC(hu,s)),t.uuidv6=s=>t.check(GC(hu,s)),t.uuidv7=s=>t.check(QC(hu,s)),t.nanoid=s=>t.check(PC(EL,s)),t.guid=s=>t.check(Jy(ab,s)),t.cuid=s=>t.check(XC(zL,s)),t.cuid2=s=>t.check(JC(ML,s)),t.ulid=s=>t.check(e5(TL,s)),t.base64=s=>t.check(l5(qL,s)),t.base64url=s=>t.check(i5(HL,s)),t.xid=s=>t.check(t5(AL,s)),t.ksuid=s=>t.check(n5(OL,s)),t.ipv4=s=>t.check(o5(RL,s)),t.ipv6=s=>t.check(s5(DL,s)),t.cidrv4=s=>t.check(a5(IL,s)),t.cidrv6=s=>t.check(r5($L,s)),t.e164=s=>t.check(c5(UL,s)),t.datetime=s=>t.check(rL(s)),t.date=s=>t.check(iL(s)),t.time=s=>t.check(uL(s)),t.duration=s=>t.check(fL(s))});function sm(t){return WC(NL,t)}const yn=_e("ZodStringFormat",(t,e)=>{gn.init(t,e),Zv.init(t,e)}),Vv=_e("ZodEmail",(t,e)=>{JN.init(t,e),yn.init(t,e)});function lO(t){return Rv(Vv,t)}const ab=_e("ZodGUID",(t,e)=>{PN.init(t,e),yn.init(t,e)}),hu=_e("ZodUUID",(t,e)=>{XN.init(t,e),yn.init(t,e)}),CL=_e("ZodURL",(t,e)=>{eC.init(t,e),yn.init(t,e)}),LL=_e("ZodEmoji",(t,e)=>{tC.init(t,e),yn.init(t,e)}),EL=_e("ZodNanoID",(t,e)=>{nC.init(t,e),yn.init(t,e)}),zL=_e("ZodCUID",(t,e)=>{oC.init(t,e),yn.init(t,e)}),ML=_e("ZodCUID2",(t,e)=>{sC.init(t,e),yn.init(t,e)}),TL=_e("ZodULID",(t,e)=>{aC.init(t,e),yn.init(t,e)}),AL=_e("ZodXID",(t,e)=>{rC.init(t,e),yn.init(t,e)}),OL=_e("ZodKSUID",(t,e)=>{lC.init(t,e),yn.init(t,e)}),RL=_e("ZodIPv4",(t,e)=>{fC.init(t,e),yn.init(t,e)}),DL=_e("ZodIPv6",(t,e)=>{pC.init(t,e),yn.init(t,e)}),IL=_e("ZodCIDRv4",(t,e)=>{mC.init(t,e),yn.init(t,e)}),$L=_e("ZodCIDRv6",(t,e)=>{hC.init(t,e),yn.init(t,e)}),qL=_e("ZodBase64",(t,e)=>{gC.init(t,e),yn.init(t,e)}),HL=_e("ZodBase64URL",(t,e)=>{yC.init(t,e),yn.init(t,e)}),UL=_e("ZodE164",(t,e)=>{bC.init(t,e),yn.init(t,e)}),ZL=_e("ZodJWT",(t,e)=>{wC.init(t,e),yn.init(t,e)}),Wv=_e("ZodNumber",(t,e)=>{Mv.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(r,c,u)=>$5(t,r,c),Wi(t,"ZodNumber",{gt(r,c){return this.check(tb(r,c))},gte(r,c){return this.check(Cp(r,c))},min(r,c){return this.check(Cp(r,c))},lt(r,c){return this.check(eb(r,c))},lte(r,c){return this.check(Np(r,c))},max(r,c){return this.check(Np(r,c))},int(r){return this.check(rb(r))},safe(r){return this.check(rb(r))},positive(r){return this.check(tb(0,r))},nonnegative(r){return this.check(Cp(0,r))},negative(r){return this.check(eb(0,r))},nonpositive(r){return this.check(Np(0,r))},multipleOf(r,c){return this.check(nb(r,c))},step(r,c){return this.check(nb(r,c))},finite(){return this}});const s=t._zod.bag;t.minValue=Math.max(s.minimum??Number.NEGATIVE_INFINITY,s.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(s.maximum??Number.POSITIVE_INFINITY,s.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(s.format??"").includes("int")||Number.isSafeInteger(s.multipleOf??.5),t.isFinite=!0,t.format=s.format??null});function ur(t){return h5(Wv,t)}const VL=_e("ZodNumberFormat",(t,e)=>{kC.init(t,e),Wv.init(t,e)});function rb(t){return g5(VL,t)}const WL=_e("ZodBoolean",(t,e)=>{SC.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>q5(t,s,r)});function Sa(t){return x5(WL,t)}const BL=_e("ZodUnknown",(t,e)=>{_C.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>U5()});function lb(){return y5(BL)}const FL=_e("ZodNever",(t,e)=>{jC.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>H5(t,s,r)});function GL(t){return b5(FL,t)}const QL=_e("ZodArray",(t,e)=>{NC.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>B5(t,s,r,c),t.element=e.element,Wi(t,"ZodArray",{min(s,r){return this.check(Au(s,r))},nonempty(s){return this.check(Au(1,s))},max(s,r){return this.check(Dv(s,r))},length(s,r){return this.check(Iv(s,r))},unwrap(){return this.element}})});function Bv(t,e){return M5(QL,t,e)}const KL=_e("ZodObject",(t,e)=>{LC.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>F5(t,s,r,c),Jt(t,"shape",()=>e.shape),Wi(t,"ZodObject",{keyof(){return Km(Object.keys(this._zod.def.shape))},catchall(s){return this.clone({...this._zod.def,catchall:s})},passthrough(){return this.clone({...this._zod.def,catchall:lb()})},loose(){return this.clone({...this._zod.def,catchall:lb()})},strict(){return this.clone({...this._zod.def,catchall:GL()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(s){return Wj(this,s)},safeExtend(s){return Bj(this,s)},merge(s){return Fj(this,s)},pick(s){return Zj(this,s)},omit(s){return Vj(this,s)},partial(...s){return Gj(Fv,this,s[0])},required(...s){return Qj(Gv,this,s[0])}})});function Xu(t,e){const s={type:"object",shape:t??{},...Je(e)};return new KL(s)}const YL=_e("ZodUnion",(t,e)=>{EC.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>G5(t,s,r,c),t.options=e.options});function PL(t,e){return new YL({type:"union",options:t,...Je(e)})}const XL=_e("ZodIntersection",(t,e)=>{zC.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>Q5(t,s,r,c)});function JL(t,e){return new XL({type:"intersection",left:t,right:e})}const am=_e("ZodEnum",(t,e)=>{MC.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(r,c,u)=>Z5(t,r,c),t.enum=e.entries,t.options=Object.values(e.entries);const s=new Set(Object.keys(e.entries));t.extract=(r,c)=>{const u={};for(const f of r)if(s.has(f))u[f]=e.entries[f];else throw new Error(`Key ${f} not found in enum`);return new am({...e,checks:[],...Je(c),entries:u})},t.exclude=(r,c)=>{const u={...e.entries};for(const f of r)if(s.has(f))delete u[f];else throw new Error(`Key ${f} not found in enum`);return new am({...e,checks:[],...Je(c),entries:u})}});function Km(t,e){const s=Array.isArray(t)?Object.fromEntries(t.map(r=>[r,r])):t;return new am({type:"enum",entries:s,...Je(e)})}const eE=_e("ZodTransform",(t,e)=>{TC.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>W5(t,s),t._zod.parse=(s,r)=>{if(r.direction==="backward")throw new yv(t.constructor.name);s.addIssue=u=>{if(typeof u=="string")s.issues.push(Ai(u,s.value,e));else{const f=u;f.fatal&&(f.continue=!1),f.code??(f.code="custom"),f.input??(f.input=s.value),f.inst??(f.inst=t),s.issues.push(Ai(f))}};const c=e.transform(s.value,s);return c instanceof Promise?c.then(u=>(s.value=u,s.fallback=!0,s)):(s.value=c,s.fallback=!0,s)}});function tE(t){return new eE({type:"transform",transform:t})}const Fv=_e("ZodOptional",(t,e)=>{Ov.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>Uv(t,s,r,c),t.unwrap=()=>t._zod.def.innerType});function ib(t){return new Fv({type:"optional",innerType:t})}const nE=_e("ZodExactOptional",(t,e)=>{AC.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>Uv(t,s,r,c),t.unwrap=()=>t._zod.def.innerType});function oE(t){return new nE({type:"optional",innerType:t})}const sE=_e("ZodNullable",(t,e)=>{OC.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>K5(t,s,r,c),t.unwrap=()=>t._zod.def.innerType});function cb(t){return new sE({type:"nullable",innerType:t})}const aE=_e("ZodDefault",(t,e)=>{RC.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>P5(t,s,r,c),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function rE(t,e){return new aE({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():wv(e)}})}const lE=_e("ZodPrefault",(t,e)=>{DC.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>X5(t,s,r,c),t.unwrap=()=>t._zod.def.innerType});function iE(t,e){return new lE({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():wv(e)}})}const Gv=_e("ZodNonOptional",(t,e)=>{IC.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>Y5(t,s,r,c),t.unwrap=()=>t._zod.def.innerType});function cE(t,e){return new Gv({type:"nonoptional",innerType:t,...Je(e)})}const uE=_e("ZodCatch",(t,e)=>{$C.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>J5(t,s,r,c),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function dE(t,e){return new uE({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}const fE=_e("ZodPipe",(t,e)=>{qC.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>eL(t,s,r,c),t.in=e.in,t.out=e.out});function ub(t,e){return new fE({type:"pipe",in:t,out:e})}const pE=_e("ZodReadonly",(t,e)=>{HC.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>tL(t,s,r,c),t.unwrap=()=>t._zod.def.innerType});function mE(t){return new pE({type:"readonly",innerType:t})}const hE=_e("ZodCustom",(t,e)=>{UC.init(t,e),Nn.init(t,e),t._zod.processJSONSchema=(s,r,c)=>V5(t,s)});function gE(t,e={}){return T5(hE,t,e)}function xE(t,e){return A5(t,e)}const yE=()=>{const{sendRequest:t,isConnected:e}=Ct(),[s,r]=j.useState(!1),[c,u]=j.useState(null),f=j.useCallback(async x=>{if(!e)return console.warn("[useToolSchema] WebSocket not connected"),null;r(!0),u(null);try{const y=await t("get_tool_schema",{node_id:x});return y.success?y.schema:null}catch(y){const b=y instanceof Error?y.message:"Failed to get tool schema";return u(b),console.error("[useToolSchema] Error getting schema:",b),null}finally{r(!1)}},[e,t]),d=j.useCallback(async(x,y,b,k,S)=>{if(!e)return console.warn("[useToolSchema] WebSocket not connected"),!1;r(!0),u(null);try{const w=await t("save_tool_schema",{node_id:x,tool_name:y,tool_description:b,schema_config:k,connected_services:S});return w.success&&w.saved}catch(w){const _=w instanceof Error?w.message:"Failed to save tool schema";return u(_),console.error("[useToolSchema] Error saving schema:",_),!1}finally{r(!1)}},[e,t]),h=j.useCallback(async x=>{if(!e)return console.warn("[useToolSchema] WebSocket not connected"),!1;r(!0),u(null);try{return(await t("delete_tool_schema",{node_id:x})).success}catch(y){const b=y instanceof Error?y.message:"Failed to delete tool schema";return u(b),console.error("[useToolSchema] Error deleting schema:",b),!1}finally{r(!1)}},[e,t]),g=j.useCallback(async()=>{if(!e)return console.warn("[useToolSchema] WebSocket not connected"),[];r(!0),u(null);try{const x=await t("get_all_tool_schemas",{});return x.success?x.schemas||[]:[]}catch(x){const y=x instanceof Error?x.message:"Failed to get tool schemas";return u(y),console.error("[useToolSchema] Error getting schemas:",y),[]}finally{r(!1)}},[e,t]);return{getToolSchema:f,saveToolSchema:d,deleteToolSchema:h,getAllToolSchemas:g,isLoading:s,error:c,isConnected:e}},bE=y4,Qv=j.createContext({}),gu=({...t})=>i.jsx(Qv.Provider,{value:{name:t.name},children:i.jsx(b4,{...t})}),Ju=()=>{const t=j.useContext(Qv),e=j.useContext(Kv),{getFieldState:s}=S0(),r=v4({name:t.name}),c=s(t.name,r);if(!t)throw new Error("useFormField should be used within <FormField>");const{id:u}=e;return{id:u,name:t.name,formItemId:`${u}-form-item`,formDescriptionId:`${u}-form-item-description`,formMessageId:`${u}-form-item-message`,...c}},Kv=j.createContext({});function ed({className:t,...e}){const s=j.useId();return i.jsx(Kv.Provider,{value:{id:s},children:i.jsx("div",{"data-slot":"form-item",className:Ne("grid gap-2",t),...e})})}function iO({className:t,...e}){const{error:s,formItemId:r}=Ju();return i.jsx(_a,{"data-slot":"form-label","data-error":!!s,className:Ne("data-[error=true]:text-destructive",t),htmlFor:r,...e})}function td({...t}){const{error:e,formItemId:s,formDescriptionId:r,formMessageId:c}=Ju();return i.jsx(Nm,{"data-slot":"form-control",id:s,"aria-describedby":e?`${r} ${c}`:`${r}`,"aria-invalid":!!e,...t})}function cO({className:t,...e}){const{formDescriptionId:s}=Ju();return i.jsx("p",{"data-slot":"form-description",id:s,className:Ne("text-sm text-muted-foreground",t),...e})}function vE({className:t,...e}){const{error:s,formMessageId:r}=Ju(),c=s?String(s?.message??""):e.children;return c?i.jsx("p",{"data-slot":"form-message",id:r,className:Ne("text-sm text-destructive",t),...e,children:c}):null}const Ym=["string","number","integer","boolean","object","array"],wE=Xu({name:sm().min(1,"Required").regex(/^[a-zA-Z_][a-zA-Z0-9_]*$/,"Letters / digits / underscore only"),type:Km(Ym),description:sm().default(""),required:Sa().default(!1)}),kE=Xu({description:sm().default(""),fields:Bv(wE)}),rm={description:"Control Android device via connected services",fields:[{name:"service_id",type:"string",description:"Service to use (determined by connected Android nodes)",required:!0},{name:"action",type:"string",description:"Action to perform (see service list for available actions)",required:!0},{name:"parameters",type:"object",description:'Action parameters. Examples: {package_name: "com.app"} for app_launcher',required:!1}]};function db(t){if(!t)return rm;const e=t.data?.label||t.type||"service";return{description:`Control ${e} on Android device`,fields:[{name:"action",type:"string",description:`Action to perform on ${e}`,required:!0},{name:"parameters",type:"object",description:`Parameters for the ${e} action`,required:!1}]}}function SE(t){return{description:t.description??"",fields:Object.entries(t.fields??{}).map(([e,s])=>({name:e,type:Ym.includes(s.type)?s.type:"string",description:s.description??"",required:!!s.required}))}}function _E(t){const e={};for(const s of t.fields)e[s.name]={type:s.type,description:s.description,required:s.required};return{description:t.description,fields:e}}const jE=({nodeId:t,toolName:e,toolDescription:s})=>{const r=De(d=>d.currentWorkflow),c=j.useMemo(()=>r?.nodes?r.nodes.find(d=>d.id===t):null,[r?.nodes,t]);return(c?.type?fn(c.type):void 0)?.uiHints?.isAndroidToolkit===!0?i.jsx(NE,{nodeId:t,toolName:e,toolDescription:s}):null},NE=({nodeId:t})=>{const{getToolSchema:e,saveToolSchema:s,deleteToolSchema:r,isLoading:c}=yE(),{isConnected:u}=Ct(),f=De(q=>q.currentWorkflow),d=j.useMemo(()=>{if(!f?.edges||!f?.nodes)return[];const q=f.edges.filter(E=>E.target===t),M=[];for(const E of q){const $=f.nodes.find(H=>H.id===E.source),Q=$?Am($.type,"android")===!0:!1;$&&Q&&M.push($)}return M},[f?.edges,f?.nodes,t]),[h,g]=j.useState(null),[x,y]=j.useState(!0),[b,k]=j.useState("idle");j.useEffect(()=>{if(d.length===0){g(null);return}(!h||!d.find(q=>q.id===h))&&g(d[0].id)},[d,h]);const S=j.useMemo(()=>d.find(q=>q.id===h)??null,[d,h]),w=w4({resolver:sL(kE),defaultValues:rm,mode:"onChange"}),{fields:_,append:N,remove:L}=k4({control:w.control,name:"fields"});j.useEffect(()=>{let q=!1;return(async()=>{if(!u||!h){w.reset(rm);return}const E=await e(h);q||(E?.schema_config&&Object.keys(E.schema_config.fields||{}).length>0?w.reset(SE(E.schema_config)):w.reset(db(S)))})(),()=>{q=!0}},[h,u]);const z=async q=>{if(!h||!S)return;k("saving");const M=S.data?.label||S.type||"unknown",E=_E(q),$=await s(h,M,E.description,E);k($?"saved":"error"),$&&w.reset(q),setTimeout(()=>k("idle"),2e3)},O=async()=>{h&&(await r(h),w.reset(db(S)))},I=w.formState.isDirty;return i.jsxs("div",{className:"overflow-hidden rounded-md border border-border bg-background",children:[i.jsxs("div",{onClick:()=>y(!x),className:Ne("flex cursor-pointer items-center justify-between bg-muted p-3",x&&"border-b border-border"),children:[i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsx(Us,{className:Ne("h-3 w-3 text-muted-foreground transition-transform",!x&&"-rotate-90")}),i.jsx("span",{className:"font-display tracking-[var(--type-tracking-display)] [text-transform:var(--type-uppercase)] text-sm font-semibold text-fg-default",children:"Connected Services"})]}),i.jsxs("span",{className:"text-sm text-muted-foreground",children:[d.length," service(s)"]})]}),x&&i.jsx(bE,{...w,children:i.jsxs("form",{onSubmit:w.handleSubmit(z),className:"p-3",children:[d.length>0?i.jsxs("div",{className:"mb-3",children:[i.jsx("label",{className:"mb-1 block text-sm text-muted-foreground",children:"Select Service"}),i.jsxs(Na,{value:h??void 0,onValueChange:q=>g(q),children:[i.jsx(La,{className:"w-full",children:i.jsx(Ca,{placeholder:"Choose a connected service"})}),i.jsx(Ea,{children:d.map(q=>i.jsx(po,{value:q.id,children:q.data?.label||q.type},q.id))})]}),S&&i.jsxs("div",{className:"mt-1 text-xs text-muted-foreground",children:["Type: ",S.type]})]}):i.jsx("div",{className:"mb-3 rounded border border-warning/30 bg-warning/10 p-2 text-sm text-warning",children:"Connect Android nodes to the input handle"}),i.jsxs("div",{className:"mb-2 flex items-center justify-between",children:[i.jsx("label",{className:"font-display tracking-[var(--type-tracking-display)] [text-transform:var(--type-uppercase)] text-sm text-fg-muted",children:"Schema Fields"}),i.jsx(Xt,{intent:"tools",className:"h-7",onClick:()=>N({name:`field_${_.length+1}`,type:"string",description:"",required:!1}),children:"+ Add"})]}),i.jsx("div",{className:"flex flex-col gap-1",children:_.map((q,M)=>i.jsx(CE,{index:M,onRemove:()=>L(M)},q.id))}),I&&i.jsxs("div",{className:"mt-3 flex justify-end gap-2",children:[i.jsx(Xt,{intent:"config",type:"button",onClick:O,children:"Reset"}),i.jsx(Xt,{intent:"save",type:"submit",disabled:c||b==="saving",children:b==="saving"?"Saving...":b==="saved"?"Saved!":"Save"})]})]})})]})},CE=t=>{const e=Fe.c(22),{index:s,onRemove:r}=t,{control:c}=S0(),u=`fields.${s}.name`;let f;e[0]!==c||e[1]!==u?(f=i.jsx(gu,{control:c,name:u,render:LE}),e[0]=c,e[1]=u,e[2]=f):f=e[2];const d=`fields.${s}.type`;let h;e[3]!==c||e[4]!==d?(h=i.jsx(gu,{control:c,name:d,render:zE}),e[3]=c,e[4]=d,e[5]=h):h=e[5];const g=`fields.${s}.required`;let x;e[6]!==c||e[7]!==g?(x=i.jsx(gu,{control:c,name:g,render:ME}),e[6]=c,e[7]=g,e[8]=x):x=e[8];let y;e[9]!==r?(y=i.jsx(Xt,{intent:"stop",onClick:r,className:"h-7 px-2 text-xs",children:"X"}),e[9]=r,e[10]=y):y=e[10];let b;e[11]!==f||e[12]!==h||e[13]!==x||e[14]!==y?(b=i.jsxs("div",{className:"mb-1 flex items-center gap-1",children:[f,h,x,y]}),e[11]=f,e[12]=h,e[13]=x,e[14]=y,e[15]=b):b=e[15];const k=`fields.${s}.description`;let S;e[16]!==c||e[17]!==k?(S=i.jsx(gu,{control:c,name:k,render:TE}),e[16]=c,e[17]=k,e[18]=S):S=e[18];let w;return e[19]!==S||e[20]!==b?(w=i.jsxs("div",{className:"rounded border border-border bg-card p-2",children:[b,S]}),e[19]=S,e[20]=b,e[21]=w):w=e[21],w};function LE(t){const{field:e}=t;return i.jsxs(ed,{className:"flex-1",children:[i.jsx(td,{children:i.jsx(on,{...e,className:"h-8",onChange:s=>e.onChange(s.target.value.replace(/\s/g,"_"))})}),i.jsx(vE,{})]})}function EE(t){return i.jsx(po,{value:t,children:t},t)}function zE(t){const{field:e}=t;return i.jsx(ed,{children:i.jsxs(Na,{onValueChange:e.onChange,value:e.value,children:[i.jsx(td,{children:i.jsx(La,{className:"h-8 w-[110px] text-xs",children:i.jsx(Ca,{})})}),i.jsx(Ea,{children:Ym.map(EE)})]})})}function ME(t){const{field:e}=t;return i.jsxs(ed,{className:"flex items-center gap-1 space-y-0 px-1 text-xs text-muted-foreground",children:[i.jsx(td,{children:i.jsx(Mi,{checked:e.value,onCheckedChange:e.onChange})}),i.jsx("span",{children:"Req"})]})}function TE(t){const{field:e}=t;return i.jsx(ed,{children:i.jsx(td,{children:i.jsx(on,{...e,placeholder:"Description...",className:"h-7 text-xs"})})})}function fb({className:t,onChange:e,...s}){const r=e?c=>{Hn.play("type"),e(c)}:void 0;return i.jsx("textarea",{"data-slot":"textarea",onChange:r,className:Ne("input flex field-sizing-content min-h-16 w-full rounded-lg border border-input bg-transparent px-2.5 py-2 text-base transition-colors outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",t),...s})}const Yv=t=>["folderSkills",t],AE=t=>t.split("-").map(e=>e.length?e[0].toUpperCase()+e.slice(1):e).join(" ");function OE(t){const e=Fe.c(9),{sendRequest:s,isReady:r}=Ct(),c=t??"";let u;e[0]!==c?(u=Yv(c),e[0]=c,e[1]=u):u=e[1];let f;e[2]!==t||e[3]!==s?(f=async()=>{if(!t)return[];const g=await s("scan_skill_folder",{folder:t});return!g?.success||!g.skills?[]:g.skills.map(RE)},e[2]=t,e[3]=s,e[4]=f):f=e[4];const d=!!t&&r;let h;return e[5]!==u||e[6]!==f||e[7]!==d?(h={queryKey:u,queryFn:f,enabled:d,staleTime:jo.MEDIUM},e[5]=u,e[6]=f,e[7]=d,e[8]=h):h=e[8],Zo(h)}function RE(t){return{type:t.name,skillName:t.name,displayName:AE(t.name),icon:t.metadata?.icon??"",color:t.metadata?.color??Xe.purple,description:t.description??""}}const Pm=()=>{const t=Fe.c(21),{sendRequest:e,isConnected:s}=Ct(),[r,c]=j.useState(null),u=j.useRef(!1);let f,d;t[0]!==s||t[1]!==e?(f=()=>{!s||u.current||(u.current=!0,e("get_node_allowlist",{}).then(z=>{c({show_all:z?.show_all??!0,enabled_nodes:z?.enabled_nodes??[],disabled_groups:z?.disabled_groups??[],disabled_nodes:z?.disabled_nodes??[],disabled_credential_categories:z?.disabled_credential_categories??[],disabled_skill_folders:z?.disabled_skill_folders??[]})}).catch(z=>{console.error("[NodeAllowlist] Failed to fetch:",z),c({show_all:!0,enabled_nodes:[],disabled_groups:[],disabled_nodes:[],disabled_credential_categories:[],disabled_skill_folders:[]})}))},d=[s,e],t[0]=s,t[1]=e,t[2]=f,t[3]=d):(f=t[2],d=t[3]),j.useEffect(f,d);let h;t[4]!==r?(h=(z,O)=>{if(!r)return!1;if(r.disabled_nodes.includes(z))return!0;if(O&&O.length>0){for(const I of O)if(r.disabled_groups.includes(I))return!0}return!1},t[4]=r,t[5]=h):h=t[5];const g=h;let x;t[6]!==r?(x=z=>!r||r.show_all?!0:r.enabled_nodes.includes(z),t[6]=r,t[7]=x):x=t[7];const y=x;let b;t[8]!==y||t[9]!==g?(b=(z,O)=>g(z,O)?!1:y(z),t[8]=y,t[9]=g,t[10]=b):b=t[10];const k=b;let S;t[11]!==r?(S=z=>r?r.disabled_credential_categories.includes(z):!1,t[11]=r,t[12]=S):S=t[12];const w=S;let _;t[13]!==r?(_=z=>r?r.disabled_skill_folders.includes(z):!1,t[13]=r,t[14]=_):_=t[14];const N=_;let L;return t[15]!==y||t[16]!==g||t[17]!==w||t[18]!==N||t[19]!==k?(L={isVisible:k,isBlocked:g,isAllowed:y,isCredentialCategoryDisabled:w,isSkillFolderDisabled:N},t[15]=y,t[16]=g,t[17]=w,t[18]=N,t[19]=k,t[20]=L):L=t[20],L},DE=({skillsConfig:t,onConfigChange:e,skillFolder:s,onSkillFolderChange:r,nodeId:c})=>{const{sendRequest:u}=Ct(),[f,d]=j.useState(null),[h,g]=j.useState(!1),[x,y]=j.useState(""),b=j.useRef(null),k=Sl(),w=Zo({queryKey:["userSkills"],queryFn:async()=>(await u("get_user_skills",{active_only:!1}))?.skills??[],staleTime:6e4}).data??[],_=j.useCallback(()=>k.invalidateQueries({queryKey:["userSkills"]}),[k]),N=Zo({queryKey:["skillFolders"],queryFn:async()=>{const F=await u("list_skill_folders",{});return F?.success?F.folders??[]:[]},staleTime:1/0}),{isSkillFolderDisabled:L}=Pm(),z=j.useMemo(()=>(N.data??[]).filter(F=>!L(F.name)),[N.data,L]),O=!N.isLoading,I=OE(s),q=I.data??[],M=I.isLoading,[E,$]=j.useState(!1),[Q,H]=j.useState(null),[R,D]=j.useState(!1),[U,W]=j.useState(!1);j.useEffect(()=>{const F=b.current;if(!F)return;const oe=me=>{(me.ctrlKey||me.metaKey)&&me.stopPropagation()};return F.addEventListener("keydown",oe),()=>F.removeEventListener("keydown",oe)});const T=j.useMemo(()=>{const F=[];return s&&q.length>0&&F.push(...q),w.forEach(oe=>{F.push({type:"userSkill",skillName:oe.name,displayName:oe.display_name,icon:oe.icon||"",color:oe.color||"#6366F1",description:oe.description||"",isUserSkill:!0})}),F},[s,q,w]),A=j.useMemo(()=>{if(!x.trim())return T;const F=x.toLowerCase();return T.filter(oe=>oe.displayName.toLowerCase().includes(F)||oe.description.toLowerCase().includes(F))},[T,x]);j.useEffect(()=>{!f&&!E&&T.length>0&&d(T[0].skillName)},[f,E,T]);const K=j.useCallback(async F=>{try{return g(!0),await k.fetchQuery({queryKey:["skillContent",F],queryFn:async()=>{const me=await u("get_skill_content",{skill_name:F});return me?.success&&me.instructions?me.instructions:(console.warn("[MasterSkillEditor] No content returned for skill:",F,me?.error),"")},staleTime:1/0})}catch(oe){return console.error("[MasterSkillEditor] Failed to load skill content:",oe),""}finally{g(!1)}},[k,u]),ne=j.useCallback(F=>k.getQueryData(["skillContent",F]),[k]);j.useEffect(()=>{!f||E||!T.some(oe=>oe.skillName===f)||ne(f)===void 0&&K(f)},[f,E,K,ne,T]),j.useEffect(()=>{if(T.length!==0)for(const F of T)F.isUserSkill||ne(F.skillName)===void 0&&k.prefetchQuery({queryKey:["skillContent",F.skillName],queryFn:async()=>{const oe=await u("get_skill_content",{skill_name:F.skillName});return oe?.success&&oe.instructions||""},staleTime:1/0})},[T,k,u,ne]),j.useEffect(()=>{if(E||!f)return;if(T.find(oe=>oe.skillName===f)?.isUserSkill){const oe=w.find(me=>me.name===f);oe&&(H({name:oe.name,display_name:oe.display_name,description:oe.description,instructions:oe.instructions,icon:oe.icon||"",color:oe.color||"#6366F1"}),W(!1))}else H(null),W(!1)},[f,E,T,w]);const X=j.useCallback(async(F,oe)=>{const me=t[F];if(oe&&!me?.instructions){const Ke=await K(F);e({...t,[F]:{enabled:!0,instructions:Ke,isCustomized:!1}})}else e({...t,[F]:{enabled:oe,instructions:me?.instructions||"",isCustomized:me?.isCustomized||!1}})},[t,e,K]),ue=j.useCallback((F,oe)=>{const me=t[F],Ke=ne(F)??"",tt=oe!==Ke;e({...t,[F]:{enabled:me?.enabled||!1,instructions:oe,isCustomized:tt}})},[t,e,ne]),fe=j.useCallback(async F=>{k.removeQueries({queryKey:["skillContent",F]});const oe=await K(F),me=t[F];e({...t,[F]:{enabled:me?.enabled||!1,instructions:oe,isCustomized:!1}})},[t,e,K,k]),pe=j.useCallback(()=>{$(!0),d(null),H({name:"",display_name:"",description:"",instructions:`# Skill Instructions
95
+
96
+ Describe what this skill does and how the AI should use it.`,icon:"",color:"#6366F1"}),W(!1)},[]),we=j.useCallback(()=>{$(!1),H(null),W(!1),T.length>0&&d(T[0].skillName)},[T]),je=j.useCallback((F,oe)=>{H(me=>me?{...me,[F]:oe}:null),W(!0)},[]),ve=j.useCallback(async()=>{if(!Q)return;if(!Q.display_name.trim()){Pt.error("Display name is required");return}if(!Q.instructions.trim()){Pt.error("Instructions are required");return}let F=Q.name;if(E&&(F.trim()||(F=Q.display_name.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")),!F||!/^[a-z0-9-]+$/.test(F))){Pt.error("Invalid skill ID. Use lowercase letters, numbers, and hyphens only.");return}D(!0);try{const oe=E?"create_user_skill":"update_user_skill",me={name:F,display_name:Q.display_name,description:Q.description,instructions:Q.instructions,icon:Q.icon,color:Q.color,category:s||"custom",is_active:!0},Ke=await u(oe,me);Ke.skill||Ke.success?(Pt.success(E?"Skill created":"Skill saved"),await _(),E&&(e({...t,[F]:{enabled:!0,instructions:Q.instructions,isCustomized:!1}}),$(!1),d(F)),W(!1)):Pt.error(Ke.error||"Failed to save skill")}catch(oe){Pt.error(oe.message||"Failed to save skill")}finally{D(!1)}},[Q,E,s,u,_,t,e]),Ce=j.useCallback(async F=>{try{const oe=await u("delete_user_skill",{name:F});if(oe.success){Pt.success("Skill deleted");const me={...t};delete me[F],e(me),c&&await u("save_node_parameters",{node_id:c,parameters:{skills_config:me,skillFolder:s||"assistant"}}),f===F&&(d(null),H(null)),await _()}else Pt.error(oe.error||"Failed to delete skill")}catch(oe){Pt.error(oe.message||"Failed to delete skill")}},[u,_,t,e,f,c,s]),ce=T.find(F=>F.skillName===f),te=f?t[f]:void 0,Oe=Object.values(t).filter(F=>F?.enabled).length,B=ce?.isUserSkill&&Q;return i.jsxs("div",{className:"flex flex-1 min-h-0 gap-3 overflow-hidden",children:[i.jsxs("div",{className:"flex flex-[0_0_260px] flex-col overflow-hidden rounded-md border border-border-default bg-bg-elevated",children:[i.jsxs("div",{className:"flex items-center justify-between border-b border-border-default bg-bg-panel p-2",children:[i.jsx("span",{className:"font-display tracking-[var(--type-tracking-display)] [text-transform:var(--type-uppercase)] text-sm font-semibold text-fg-default",children:"Skills"}),i.jsxs("div",{className:"flex items-center gap-1",children:[i.jsx(Ot,{className:"h-5 min-w-5 justify-center rounded-full bg-action-tools px-1.5 text-white",children:Oe}),i.jsx(Xp,{children:i.jsxs(Jp,{children:[i.jsx(em,{asChild:!0,children:i.jsx(Xt,{intent:"tools",onClick:pe,disabled:E,className:"h-7 px-2","aria-label":"Create new skill",children:i.jsx(Fx,{className:"h-3.5 w-3.5"})})}),i.jsx(tm,{children:"Create new skill"})]})})]})]}),i.jsx("div",{className:"border-b border-border p-2",children:i.jsxs("div",{className:"relative",children:[i.jsx(zi,{className:"pointer-events-none absolute top-1/2 left-2 h-4 w-4 -translate-y-1/2 text-muted-foreground"}),i.jsx(on,{placeholder:"Search skills...",value:x,onChange:F=>y(F.target.value),className:"h-9 pl-8 pr-8"}),x&&i.jsx("button",{type:"button",onClick:()=>y(""),className:"absolute top-1/2 right-2 -translate-y-1/2 text-muted-foreground hover:text-foreground","aria-label":"Clear search",children:i.jsx(za,{className:"h-4 w-4"})})]})}),i.jsx("div",{className:"shrink-0 border-b border-border p-2",children:i.jsxs(Na,{value:s||"assistant",onValueChange:F=>{r?.(F),d(null)},disabled:!O,children:[i.jsx(La,{className:"w-full",children:i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsx(OS,{className:"h-4 w-4 text-muted-foreground"}),i.jsx(Ca,{placeholder:"Choose folder"})]})}),i.jsx(Ea,{children:z.map(F=>i.jsxs(po,{value:F.name,children:[F.name," (",F.skill_count,")"]},F.name))})]})}),i.jsx("div",{className:"flex-1 overflow-y-auto",children:M?i.jsxs("div",{className:"mt-4 flex items-center justify-center gap-2 text-sm text-muted-foreground",children:[i.jsx(mo,{className:"h-4 w-4 animate-spin"}),"Scanning folder..."]}):A.length===0?i.jsxs("div",{className:"mt-6 flex flex-col items-center gap-2 p-6 text-center text-sm text-muted-foreground",children:[i.jsx(Gx,{className:"h-10 w-10 opacity-50"}),i.jsx("p",{children:s?`No skills found in skills/${s}/`:"No skills found"})]}):i.jsx("div",{className:"divide-y divide-border",children:A.map(F=>{const oe=t[F.skillName],me=f===F.skillName&&!E,Ke=oe?.enabled||!1,tt=oe?.isCustomized||!1;return i.jsx("div",{onClick:()=>{if(E){if(U&&!confirm("Discard unsaved changes?"))return;$(!1)}d(F.skillName)},className:Ne("cursor-pointer border-l-[3px] px-3 py-2 transition-colors",me?"bg-tint-soft":"border-l-transparent"),style:me?{color:F.color,borderLeftColor:F.color}:void 0,children:i.jsxs("div",{className:"flex w-full items-center gap-2",children:[i.jsx(Mi,{checked:Ke,onCheckedChange:lt=>{X(F.skillName,lt===!0)},onClick:lt=>lt.stopPropagation()}),i.jsx(Co,{icon:F.icon,className:"h-4 w-4 text-base"}),i.jsx("span",{className:Ne("flex-1 overflow-hidden text-sm whitespace-nowrap text-ellipsis",me?"font-semibold":"font-medium",Ke?"text-fg-default":"text-fg-muted"),children:F.displayName}),tt&&i.jsx(Xp,{children:i.jsxs(Jp,{children:[i.jsx(em,{asChild:!0,children:i.jsx("div",{className:"h-2 w-2 shrink-0 rounded-full bg-warning"})}),i.jsx(tm,{children:"Customized"})]})}),F.isUserSkill&&i.jsx(Ot,{className:"h-4 bg-info/20 px-1 text-[10px] text-info",children:"Custom"})]})},F.skillName)})})})]}),i.jsx("div",{className:"flex flex-1 flex-col overflow-hidden rounded-md border border-border-default bg-bg-elevated",children:E&&Q?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"flex items-center gap-3 border-b border-border-default bg-bg-panel p-3",children:[i.jsx("div",{className:"flex h-10 w-10 items-center justify-center rounded-md border-2 border-dashed bg-tint-soft",style:{color:Q.color},children:Q.icon?i.jsx(Co,{icon:Q.icon,className:"h-5 w-5 text-xl"}):i.jsx(Fx,{className:"h-5 w-5"})}),i.jsxs("div",{className:"flex-1",children:[i.jsx("div",{className:"font-display tracking-[var(--type-tracking-display)] [text-transform:var(--type-uppercase)] text-sm font-semibold text-success",children:"Create New Skill"}),i.jsx("div",{className:"mt-0.5 text-xs text-fg-muted",children:"Fill in the details below and save"})]}),i.jsxs(Xt,{intent:"stop",onClick:we,className:"h-8",children:[i.jsx(za,{className:"h-3.5 w-3.5"}),"Cancel"]}),i.jsxs(Xt,{intent:"save",onClick:ve,disabled:R,className:"h-8",children:[R?i.jsx(mo,{className:"h-3.5 w-3.5 animate-spin"}):i.jsx(mr,{className:"h-3.5 w-3.5"}),"Save"]})]}),i.jsxs("div",{ref:b,className:"flex flex-1 flex-col gap-3 overflow-auto p-3",children:[i.jsxs("div",{children:[i.jsx("label",{className:"mb-1 block text-xs text-fg-muted",children:"Display Name *"}),i.jsx(on,{value:Q.display_name,onChange:F=>je("display_name",F.target.value),placeholder:"My Custom Skill",className:"bg-bg-input border-border-default"})]}),i.jsxs("div",{children:[i.jsx("label",{className:"mb-1 block text-xs text-fg-muted",children:"Description"}),i.jsx(on,{value:Q.description,onChange:F=>je("description",F.target.value),placeholder:"Brief description of what this skill does",className:"bg-bg-input border-border-default"})]}),i.jsxs("div",{className:"flex gap-3",children:[i.jsxs("div",{className:"w-[100px]",children:[i.jsx("label",{className:"mb-1 block text-xs text-fg-muted",children:"Icon (emoji)"}),i.jsx(on,{value:Q.icon,onChange:F=>je("icon",F.target.value),placeholder:"",className:"bg-bg-input border-border-default text-center"})]}),i.jsxs("div",{className:"w-20",children:[i.jsx("label",{className:"mb-1 block text-xs text-fg-muted",children:"Color"}),i.jsx(on,{type:"color",value:Q.color,onChange:F=>je("color",F.target.value),className:"h-8 bg-bg-input border-border-default p-0.5"})]})]}),i.jsxs("div",{className:"flex flex-1 flex-col min-h-[200px]",children:[i.jsx("label",{className:"mb-1 block text-xs text-fg-muted",children:"Instructions *"}),i.jsx(fb,{value:Q.instructions,onChange:F=>je("instructions",F.target.value),placeholder:"# Skill Instructions...",spellCheck:!1,className:"flex-1 min-h-0 resize-none rounded-md border-border-default bg-bg-input font-mono text-[13px] leading-[1.5] text-fg-default"})]})]})]}):ce?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"flex items-center gap-3 border-b border-border-default bg-bg-panel p-3",children:[i.jsx(Co,{icon:ce.icon,className:"h-6 w-6 text-2xl"}),i.jsxs("div",{className:"flex-1",children:[B?i.jsx(on,{value:Q?.display_name||"",onChange:F=>je("display_name",F.target.value),className:"mb-1 bg-bg-elevated border-border-default text-sm font-semibold"}):i.jsxs("div",{className:"font-display tracking-[var(--type-tracking-display)] [text-transform:var(--type-uppercase)] flex items-center gap-2 text-sm font-semibold text-fg-default",children:[ce.displayName,te?.isCustomized&&i.jsx(Ot,{className:"h-4 bg-warning/20 text-xs text-warning",children:"Customized"})]}),B?i.jsx(on,{value:Q?.description||"",onChange:F=>je("description",F.target.value),placeholder:"Description",className:"bg-bg-elevated border-border-default text-xs"}):i.jsx("div",{className:"mt-0.5 text-xs text-fg-muted",children:ce.description})]}),B&&i.jsxs(i.Fragment,{children:[U&&i.jsxs(Xt,{intent:"save",onClick:ve,disabled:R,className:"h-8",children:[R?i.jsx(mo,{className:"h-3.5 w-3.5 animate-spin"}):i.jsx(mr,{className:"h-3.5 w-3.5"}),"Save"]}),i.jsxs(Wp,{children:[i.jsx(bj,{asChild:!0,children:i.jsxs(Xt,{intent:"stop",className:"h-8",children:[i.jsx($u,{className:"h-3.5 w-3.5"}),"Delete"]})}),i.jsxs(Bp,{children:[i.jsxs(Fp,{children:[i.jsx(Qp,{children:"Delete this skill?"}),i.jsx(Kp,{children:"This action cannot be undone. The skill and any custom instructions will be permanently removed."})]}),i.jsxs(Gp,{children:[i.jsx(Pp,{children:"Cancel"}),i.jsx(Yp,{onClick:()=>Ce(f),className:"bg-destructive text-white hover:bg-destructive/90",children:"Delete"})]})]})]})]}),!B&&te?.isCustomized&&i.jsxs(Xt,{intent:"config",onClick:()=>fe(f),disabled:h,className:"h-8",children:[h?i.jsx(mo,{className:"h-3.5 w-3.5 animate-spin"}):i.jsx(wm,{className:"h-3.5 w-3.5"}),"Reset"]})]}),i.jsxs("div",{ref:b,className:"flex flex-1 flex-col overflow-hidden p-3",children:[h?i.jsxs("div",{className:"flex flex-1 items-center justify-center gap-2 text-sm text-muted-foreground",children:[i.jsx(mo,{className:"h-4 w-4 animate-spin"}),"Loading..."]}):i.jsx(fb,{value:B?Q?.instructions||"":te?.instructions||ne(f)||"",onChange:F=>{B?je("instructions",F.target.value):ue(f,F.target.value)},placeholder:"Loading skill instructions...",spellCheck:!1,className:"flex-1 min-h-0 resize-none rounded-md border-border-default bg-bg-input font-mono text-[13px] leading-[1.5] text-fg-default"}),!te?.enabled&&i.jsxs(Nl,{variant:"info",className:"mt-3",children:[i.jsx(Ei,{className:"h-4 w-4"}),i.jsx(Cl,{children:"Enable this skill to include it when running the AI Agent."})]})]})]}):i.jsxs("div",{className:"m-auto flex flex-col items-center gap-2 p-6 text-center text-sm text-muted-foreground",children:[i.jsx(Gx,{className:"h-10 w-10 opacity-50"}),i.jsx("p",{children:"Select a skill to view instructions"})]})})]})},Pv=["userSettings"];function nd(){const t=Fe.c(5),{sendRequest:e,isReady:s}=Ct();let r;t[0]!==e?(r=async()=>(await e("get_user_settings",{}))?.settings??{},t[0]=e,t[1]=r):r=t[1];let c;return t[2]!==s||t[3]!==r?(c={queryKey:Pv,queryFn:r,enabled:s,staleTime:6e4},t[2]=s,t[3]=r,t[4]=c):c=t[4],Zo(c)}function Xv(){const t=Fe.c(7),{sendRequest:e}=Ct(),s=Sl();let r;t[0]!==e?(r=async f=>(await e("save_user_settings",{settings:f}),f),t[0]=e,t[1]=r):r=t[1];let c;t[2]!==s?(c=f=>{s.setQueryData(Pv,d=>({...d??{},...f}))},t[2]=s,t[3]=c):c=t[3];let u;return t[4]!==r||t[5]!==c?(u={mutationFn:r,onSuccess:c},t[4]=r,t[5]=c,t[6]=u):u=t[6],xm(u)}const Lp=t=>t?Vo(t)?.uiHints?.isMasterSkillEditor===!0:!1,xu=t=>{const e=Fe.c(7),{title:s,value:r}=t;let c;e[0]!==s?(c=i.jsx("span",{className:"text-xs text-muted-foreground",children:s}),e[0]=s,e[1]=c):c=e[1];let u;e[2]!==r?(u=i.jsx("span",{className:"text-lg font-semibold tabular-nums",children:r}),e[2]=r,e[3]=u):u=e[3];let f;return e[4]!==c||e[5]!==u?(f=i.jsxs("div",{className:"flex flex-col",children:[c,u]}),e[4]=c,e[5]=u,e[6]=f):f=e[6],f},Jv=({nodeId:t,nodeDefinition:e,parameters:s,onParameterChange:r,isLoadingParameters:c=!1,executionResults:u=[]})=>{const f=De(he=>he.currentWorkflow),{clearMemory:d,resetSkill:h,sendRequest:g,getNodeParameters:x,compactionStats:y,updateCompactionStats:b}=Ct(),[k,S]=j.useState(!1),[w,_]=j.useState(!1),[N,L]=j.useState(!1),[z,O]=j.useState(!1),[I,q]=j.useState(!1),[M,E]=j.useState(0),$=xm({mutationFn:async he=>(await g("configure_compaction",{session_id:he.sessionId,threshold:he.threshold}),he),onSuccess:({sessionId:he,threshold:Re})=>{const He=y[he];He&&f?.id&&b(f.id,he,{...He,threshold:Re}),q(!1),Pt.success("Threshold updated")},onError:()=>{Pt.error("Failed to update threshold")}}),Q=$.isPending,[H,R]=j.useState(null),D=async()=>{O(!0);try{const he=s.session_id||"default",Re=await d(he,N,f?.id);Re.success&&Re.default_content&&r("memory_content",Re.default_content)}finally{O(!1),S(!1),L(!1)}},U=async()=>{O(!0);try{const he=s.skillName;if(!he)return;const Re=await h(he);Re.success&&Re.original_content&&r("instructions",Re.original_content)}finally{O(!1),_(!1)}},W=(e.properties||[]).filter(he=>xv(he,s)),T=e.uiHints??{},A=T.isMasterSkillEditor===!0,K=T.isMemoryPanel===!0,ne=T.hasCodeEditor===!0,X=ne&&!K&&!A,ue=!1,fe=T.isToolPanel===!0,pe=T.hasSkills===!0,{data:we}=nd();j.useEffect(()=>{if(!K)return;const he=we?.memory_window_size;he!==void 0&&s.window_size===void 0&&r("window_size",he)},[t,K,we?.memory_window_size]);const je=j.useMemo(()=>!pe||!f?null:(f.edges||[]).find(He=>He.target===t&&He.targetHandle==="input-memory")?.source??null,[pe,f,t]),Ce=Zo({queryKey:ja(je||"none"),queryFn:()=>je?x(je):Promise.resolve(null),enabled:!!je,staleTime:jo.MEDIUM}).data?.parameters,ce=j.useMemo(()=>{if(!je)return null;const he=Ce?.session_id||"";return he&&he!=="default"?he:t},[je,Ce?.session_id,t]),te=Zo({...$p.compactionStats.bySession(ce??"",s.model||"",s.provider||""),queryFn:()=>g("get_compaction_stats",{session_id:ce,model:s.model||"",provider:s.provider||""}),enabled:!!ce,staleTime:jo.SHORT}),Oe=te.isFetching;j.useEffect(()=>{const he=te.data;!he||!ce||!f?.id||b(f.id,ce,{session_id:he.session_id||ce,total:he.total||0,threshold:he.threshold,context_length:he.context_length||0,count:he.count||0})},[te.data,ce,f?.id,b]);const B=ce&&y[ce]||null;j.useEffect(()=>{if(!K||!f){R(null);return}const Re=(f.edges||[]).find(He=>He.source===t&&He.targetHandle==="input-memory");R(Re?Re.target:null)},[t,K,f]);const F=j.useMemo(()=>!pe||!f?[]:(f.edges||[]).filter(he=>he.target===t&&he.targetHandle==="input-skill"),[pe,f,t]),oe=j.useMemo(()=>{const he=f?.nodes||[];return F.filter(Re=>Lp(he.find(He=>He.id===Re.source)?.type)).map(Re=>Re.source)},[F,f?.nodes]),me=Wx({queries:oe.map(he=>({queryKey:ja(he),queryFn:()=>x(he),staleTime:jo.MEDIUM}))}),Ke=j.useMemo(()=>{const he={};return oe.forEach((Re,He)=>{const Rt=me[He]?.data;Rt?.parameters&&(he[Re]=Rt.parameters)}),he},[oe,me]),tt=j.useMemo(()=>{if(oe.length===0)return[];const he=new Set;for(const Re of oe){const He=Ke[Re]?.skill_folder;he.add(typeof He=="string"&&He.length>0?He:"assistant")}return Array.from(he)},[oe,Ke]),lt=Wx({queries:tt.map(he=>({queryKey:Yv(he),queryFn:async()=>{const Re=await g("scan_skill_folder",{folder:he});return!Re?.success||!Re.skills?[]:Re.skills.map(He=>({type:He.name,skillName:He.name,displayName:He.name,icon:He.metadata?.icon??"",color:He.metadata?.color??Xe.purple,description:He.description??""}))},staleTime:jo.MEDIUM,enabled:!!he}))}),yt=j.useMemo(()=>{const he={};for(const Re of lt)for(const He of Re.data??[])he[He.skillName]=He;return he},[lt]),bt=j.useMemo(()=>{const he=new Set;for(const Re of oe){const He=Ke[Re]?.skills_config??{};for(const[Rt,Mt]of Object.entries(He))Mt?.enabled&&!yt[Rt]&&he.add(Rt)}return Array.from(he).sort()},[oe,Ke,yt]),re=Zo({queryKey:["skillMetadataLookup",bt.join(",")],queryFn:async()=>{const he=await g("lookup_skill_metadata",{names:bt});if(!he?.success||!he.skills)return{};const Re={};for(const He of he.skills)Re[He.name]={type:He.name,skillName:He.name,displayName:He.name,icon:He.metadata?.icon??"",color:He.metadata?.color??Xe.purple,description:He.description??""};return Re},enabled:bt.length>0,staleTime:jo.MEDIUM}),qe=j.useMemo(()=>({...yt,...re.data??{}}),[yt,re.data]),Ye=j.useMemo(()=>{const he=f?.nodes||[],Re=[];for(const He of F){const Rt=he.find(Cn=>Cn.id===He.source),Mt=Rt?.type||"";if(Lp(Mt))continue;const Le=fn(Mt);Re.push({id:He.source,name:Rt?.data?.label||Le?.displayName||Mt,type:Mt,icon:Le?.icon||"",description:Le?.description||"",color:Le?.defaults?.color||Xe.purple})}return Re},[F,f?.nodes]),at=be.useMemo(()=>{const he=[...Ye],Re=f?.nodes||[],Rt=(f?.edges||[]).filter(Mt=>Mt.target===t&&Mt.targetHandle==="input-skill");for(const Mt of Rt){const Le=Re.find(Cn=>Cn.id===Mt.source);if(Lp(Le?.type)){const On=Ke[Mt.source]?.skills_config||{};for(const[tn,rn]of Object.entries(On)){if(!rn?.enabled)continue;const sn=qe[tn];he.push({id:`${Mt.source}_${tn}`,name:sn?.displayName||tn,type:"masterSkill",icon:sn?.icon||"",description:sn?.description||"",color:sn?.color||Xe.purple})}}}return he},[Ye,Ke,f,t,qe]),kt=X?(()=>{if(u.length===0)return"";const he=u[0],Re=he.outputs||he.data||he.nodeData?.[0]?.[0]?.json;return Re?Re.console_output?Re.console_output:Re.stdout?Re.stdout:Re.result?.console_output?Re.result.console_output:Re.result?.stdout?Re.result.stdout:he.error?`Error: ${he.error}`:Re.error?`Error: ${Re.error}`:Re.stderr?`Error: ${Re.stderr}`:"":""})():"";return i.jsxs("div",{className:"relative flex h-full flex-1 flex-col overflow-hidden",children:[!ne&&!A&&i.jsx("div",{className:"shrink-0 border-b border-border-default bg-bg-panel px-6 pt-4 pb-2",children:i.jsx("p",{className:"m-0 text-base leading-[1.5] text-fg-muted",children:e.description})}),i.jsx("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:A?i.jsx("div",{className:"flex flex-1 flex-col overflow-hidden p-4",children:i.jsx(DE,{skillsConfig:s.skills_config||{},onConfigChange:he=>r("skills_config",he),skillFolder:s.skill_folder||"assistant",onSkillFolderChange:he=>r("skill_folder",he),nodeId:t})}):i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:Ne("box-border min-h-0 w-full overflow-x-hidden p-6",ne?"flex flex-[3] flex-col overflow-y-hidden":"block flex-1 overflow-y-auto"),children:[i.jsxs("div",{className:Ne("box-border rounded-md border border-border-default bg-bg-elevated p-4 shadow-sm",ne?"flex h-full flex-col":"block h-auto"),children:[W.map((he,Re)=>{const He=he.typeOptions?.editor==="code",Rt=Re===W.length-1;return i.jsx("div",{className:Ne(ne?"flex flex-col":"block",!Rt&&"mb-3 border-b border-border-default pb-3",ne&&He?"min-h-[300px] flex-1":"min-h-0 flex-none"),children:i.jsx(Um,{parameter:he,value:s[he.name],onChange:Mt=>r(he.name,Mt),allParameters:s,onParameterChange:r,onClosePanel:()=>{},isLoadingParameters:c,connectedAgentId:K?H:void 0})},he.name)}),fe&&i.jsx(jE,{nodeId:t,toolName:s.tool_name||e.name,toolDescription:s.tool_description||e.description||""}),K&&i.jsx("div",{className:"mt-3 flex justify-end border-t border-border-default pt-3",children:i.jsxs(Xt,{intent:"stop",onClick:()=>S(!0),className:"h-8",children:[i.jsx($u,{className:"h-3.5 w-3.5"}),"Clear Memory"]})}),ue]}),i.jsx(Wp,{open:k,onOpenChange:he=>{he||(S(!1),L(!1))},children:i.jsxs(Bp,{children:[i.jsxs(Fp,{children:[i.jsx(Qp,{children:"Clear Conversation Memory"}),i.jsx(Kp,{children:"This will reset the conversation history to its initial state. This action cannot be undone."})]}),s.long_term_enabled&&i.jsxs("label",{className:"flex cursor-pointer items-center gap-2 text-sm text-foreground",children:[i.jsx(Mi,{checked:N,onCheckedChange:he=>L(he===!0)}),"Also clear long-term memory (vector store)"]}),i.jsxs(Gp,{children:[i.jsx(Pp,{disabled:z,children:"Cancel"}),i.jsx(Yp,{variant:"destructive",disabled:z,onClick:D,children:z?"Clearing...":"Clear Memory"})]})]})}),i.jsx(Wp,{open:w,onOpenChange:he=>!he&&_(!1),children:i.jsxs(Bp,{children:[i.jsxs(Fp,{children:[i.jsx(Qp,{children:"Reset Skill to Default"}),i.jsx(Kp,{children:"This will restore the skill instructions to their original content. Any customizations will be lost."})]}),i.jsxs(Gp,{children:[i.jsx(Pp,{disabled:z,children:"Cancel"}),i.jsx(Yp,{disabled:z,onClick:U,children:z?"Resetting...":"Reset to Default"})]})]})}),pe&&ce&&i.jsx(kp,{type:"single",collapsible:!0,defaultValue:"tokens",className:"mt-4",children:i.jsxs(Sp,{value:"tokens",children:[i.jsx(_p,{children:(()=>{const he=B?.context_length||0,Re=he>0?he:B?.threshold||0;return i.jsxs("span",{className:"font-display tracking-[var(--type-tracking-display)] [text-transform:var(--type-uppercase)] text-fg-default flex flex-1 items-center gap-2",children:[i.jsx(km,{className:"h-4 w-4"}),"Token Usage",B&&Re>0&&i.jsxs("span",{className:"ml-auto text-xs text-fg-muted normal-case tracking-normal",children:[Math.round(B.total/1e3),"K / ",Math.round(Re/1e3),"K",he>0?" context":""]})]})})()}),i.jsx(jp,{children:Oe?i.jsx(mo,{className:"h-4 w-4 animate-spin text-muted-foreground"}):B?(()=>{const he=B.context_length||0,Re=he>0,He=Re?he:B.threshold,Rt=He>0?Math.round(B.total/He*100):0,Mt=Re?B.total>=he*.8:B.total>=B.threshold*.8;return i.jsxs(i.Fragment,{children:[i.jsx(yj,{value:Math.min(Rt,100),className:Ne(Mt&&"[&>div]:bg-destructive")}),Re&&B.threshold>0&&i.jsxs("span",{className:"mt-1 block text-[11px] text-muted-foreground",children:["Compaction at ",Math.round(B.threshold/1e3),"K (",Math.round(B.threshold/he*100),"% of context)"]}),i.jsxs("div",{className:"mt-3 grid grid-cols-12 gap-4",children:[i.jsx("div",{className:"col-span-4",children:i.jsx(xu,{title:"Total",value:B.total})}),i.jsx("div",{className:"col-span-4",children:I?i.jsxs("div",{children:[i.jsx("span",{className:"text-xs text-muted-foreground",children:"Threshold"}),i.jsxs("div",{className:"mt-1 flex gap-1",children:[i.jsx(on,{type:"number",value:M,onChange:Le=>E(Number(Le.target.value)||B.threshold),min:1e4,max:2e6,step:1e4,className:"h-7 w-28 text-xs"}),i.jsx(Xt,{intent:"save",className:"h-7 w-7 px-0",disabled:Q||!ce,onClick:()=>{ce&&$.mutate({sessionId:ce,threshold:M})},children:Q?i.jsx(mo,{className:"h-3.5 w-3.5 animate-spin"}):i.jsx(mr,{className:"h-3.5 w-3.5"})})]})]}):i.jsx("div",{onClick:()=>{E(B.threshold),q(!0)},className:"cursor-pointer",children:i.jsx(xu,{title:i.jsxs("span",{className:"inline-flex items-center gap-1",children:["Threshold",i.jsx(bm,{className:"h-3 w-3"})]}),value:B.threshold})})}),i.jsx("div",{className:Re?"col-span-2":"col-span-4",children:i.jsx(xu,{title:"Compactions",value:B.count})}),Re&&i.jsx("div",{className:"col-span-2",children:i.jsx(xu,{title:"Context",value:`${Math.round(he/1e3)}K`})})]}),i.jsxs("span",{className:"mt-2 block text-xs text-muted-foreground",children:["Session: ",B.session_id]})]})})():i.jsx("span",{className:"text-xs text-muted-foreground",children:"No data yet. Run the agent to start tracking."})})]})}),pe&&i.jsx(kp,{type:"single",collapsible:!0,defaultValue:"skills",className:"mt-4",children:i.jsxs(Sp,{value:"skills",children:[i.jsx(_p,{children:i.jsxs("span",{className:"font-display tracking-[var(--type-tracking-display)] [text-transform:var(--type-uppercase)] text-fg-default flex flex-1 items-center gap-2",children:[i.jsx(Qx,{className:"h-4 w-4"}),"Connected Skills",i.jsx(Ot,{variant:at.length>0?"default":"outline",className:"ml-auto normal-case tracking-normal",children:at.length})]})}),i.jsx(jp,{children:at.length===0?i.jsxs("div",{className:"flex flex-col items-center justify-center gap-1 py-6 text-center text-muted-foreground",children:[i.jsx(Qx,{className:"mb-1 h-8 w-8 opacity-50"}),i.jsx("span",{className:"text-sm",children:"No skills connected"}),i.jsx("span",{className:"text-xs",children:"Connect skill nodes to the Skill handle to add capabilities"})]}):i.jsx("div",{className:"flex flex-col gap-2",children:at.map(he=>i.jsxs("div",{className:"flex items-start gap-3 rounded-md border border-border bg-muted/40 p-3",style:{borderLeft:`3px solid ${he.color}`},children:[i.jsx("div",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-md bg-tint-soft",style:{color:he.color},children:i.jsx(Co,{icon:he.icon,className:"h-5 w-5 text-lg"})}),i.jsxs("div",{className:"min-w-0 flex-1 overflow-hidden",children:[i.jsx("div",{className:"mb-0.5 truncate text-sm font-semibold text-foreground",children:he.name}),i.jsx("div",{className:"line-clamp-2 break-words text-xs text-muted-foreground",children:he.description})]}),i.jsx(Ot,{variant:"success",className:"shrink-0",children:"Active"})]},he.id))})})]})})]}),X&&i.jsx("div",{className:"flex min-h-0 flex-1 flex-col px-6 pb-6",children:i.jsx(kp,{type:"single",collapsible:!0,defaultValue:"console",className:"flex min-h-0 flex-1 flex-col",children:i.jsxs(Sp,{value:"console",className:"flex min-h-0 flex-1 flex-col",children:[i.jsx(_p,{children:i.jsxs("span",{className:"font-display tracking-[var(--type-tracking-display)] [text-transform:var(--type-uppercase)] text-fg-default flex flex-1 items-center gap-2",children:[i.jsx(Kx,{className:"h-4 w-4"}),"Console",kt&&i.jsx(Ot,{variant:"success",className:"ml-auto normal-case tracking-normal",children:"Output"})]})}),i.jsx(jp,{className:"flex min-h-0 flex-1 flex-col",children:i.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto rounded-md bg-bg-app p-2 font-mono text-sm leading-relaxed",children:kt?i.jsx("pre",{className:Ne("m-0 whitespace-pre-wrap break-words",kt.startsWith("Error")?"text-destructive":"text-success"),children:kt}):i.jsxs("div",{className:"flex h-full min-h-10 flex-col items-center justify-center text-muted-foreground",children:[i.jsx(Kx,{className:"mb-1 h-6 w-6 opacity-50"}),i.jsx("span",{className:"text-xs",children:"Run the code to see console output"})]})})})]})})})]})})]})};var IE={"--w-rjv-font-family":"monospace","--w-rjv-color":"#79c0ff","--w-rjv-key-string":"#79c0ff","--w-rjv-background-color":"#0d1117","--w-rjv-line-color":"#94949480","--w-rjv-arrow-color":"#ccc","--w-rjv-edit-color":"var(--w-rjv-color)","--w-rjv-info-color":"#7b7b7b","--w-rjv-update-color":"#ebcb8b","--w-rjv-copied-color":"#79c0ff","--w-rjv-copied-success-color":"#28a745","--w-rjv-curlybraces-color":"#8b949e","--w-rjv-colon-color":"#c9d1d9","--w-rjv-brackets-color":"#8b949e","--w-rjv-quotes-color":"var(--w-rjv-key-string)","--w-rjv-quotes-string-color":"var(--w-rjv-type-string-color)","--w-rjv-type-string-color":"#a5d6ff","--w-rjv-type-int-color":"#79c0ff","--w-rjv-type-float-color":"#79c0ff","--w-rjv-type-bigint-color":"#79c0ff","--w-rjv-type-boolean-color":"#ffab70","--w-rjv-type-date-color":"#79c0ff","--w-rjv-type-url-color":"#4facff","--w-rjv-type-null-color":"#ff7b72","--w-rjv-type-nan-color":"#859900","--w-rjv-type-undefined-color":"#79c0ff"},$E={"--w-rjv-font-family":"monospace","--w-rjv-color":"#6f42c1","--w-rjv-key-string":"#6f42c1","--w-rjv-background-color":"#ffffff","--w-rjv-line-color":"#ddd","--w-rjv-arrow-color":"#6e7781","--w-rjv-edit-color":"var(--w-rjv-color)","--w-rjv-info-color":"#0000004d","--w-rjv-update-color":"#ebcb8b","--w-rjv-copied-color":"#002b36","--w-rjv-copied-success-color":"#28a745","--w-rjv-curlybraces-color":"#6a737d","--w-rjv-colon-color":"#24292e","--w-rjv-brackets-color":"#6a737d","--w-rjv-quotes-color":"var(--w-rjv-key-string)","--w-rjv-quotes-string-color":"var(--w-rjv-type-string-color)","--w-rjv-type-string-color":"#032f62","--w-rjv-type-int-color":"#005cc5","--w-rjv-type-float-color":"#005cc5","--w-rjv-type-bigint-color":"#005cc5","--w-rjv-type-boolean-color":"#d73a49","--w-rjv-type-date-color":"#005cc5","--w-rjv-type-url-color":"#0969da","--w-rjv-type-null-color":"#d73a49","--w-rjv-type-nan-color":"#859900","--w-rjv-type-undefined-color":"#005cc5"};function e2({...t}){return i.jsx(J_,{"data-slot":"collapsible",...t})}function t2({...t}){return i.jsx(e4,{"data-slot":"collapsible-trigger",...t})}function n2({...t}){return i.jsx(t4,{"data-slot":"collapsible-content",...t})}const o2=async(t,e)=>{try{const s=typeof t=="string"?t:JSON.stringify(t,null,2);return await navigator.clipboard.writeText(s),e&&Pt.success(e),!0}catch(s){return console.error("Failed to copy to clipboard:",s),!1}},qE=t=>new Date(t).toLocaleString(),HE=t=>t.outputs??t.data??t.nodeData?.[0]?.[0]?.json??{success:t.success},UE=t=>t?.result&&typeof t.result=="object"&&!Array.isArray(t.result)?t.result:t,pb=t=>t.replace(/\\n/g,`
97
+ `).replace(/\\t/g," "),ZE={model:"secondary",provider:"info",agent_type:"success"};function Ep(t){const e=Fe.c(21),{label:s,defaultOpen:r,action:c,children:u}=t,f=r===void 0?!1:r,[d,h]=j.useState(f),g=d&&"rotate-0",x=!d&&"-rotate-90";let y;e[0]!==g||e[1]!==x?(y=Ne("h-4 w-4 transition-transform",g,x),e[0]=g,e[1]=x,e[2]=y):y=e[2];let b;e[3]!==y?(b=i.jsx(Us,{className:y}),e[3]=y,e[4]=b):b=e[4];let k;e[5]!==s?(k=i.jsx("span",{className:"flex-1 text-left",children:s}),e[5]=s,e[6]=k):k=e[6];let S;e[7]!==b||e[8]!==k?(S=i.jsxs(t2,{className:"flex flex-1 items-center gap-2 py-2 text-sm font-medium text-foreground hover:text-primary",children:[b,k]}),e[7]=b,e[8]=k,e[9]=S):S=e[9];let w;e[10]!==c?(w=c&&i.jsx("div",{className:"shrink-0",children:c}),e[10]=c,e[11]=w):w=e[11];let _;e[12]!==S||e[13]!==w?(_=i.jsxs("div",{className:"flex items-center gap-2",children:[S,w]}),e[12]=S,e[13]=w,e[14]=_):_=e[14];let N;e[15]!==u?(N=i.jsx(n2,{className:"pb-3 pl-6",children:u}),e[15]=u,e[16]=N):N=e[16];let L;return e[17]!==d||e[18]!==N||e[19]!==_?(L=i.jsxs(e2,{open:d,onOpenChange:h,className:"border-b border-border last:border-0",children:[_,N]}),e[17]=d,e[18]=N,e[19]=_,e[20]=L):L=e[20],L}function VE(t){const e=Fe.c(50),{results:s,onClear:r,selectedNode:c}=t,{isDarkMode:u}=Zs();let f,d,h,g,x,y,b,k,S;if(e[0]!==r||e[1]!==s||e[2]!==c){S=Symbol.for("react.early_return_sentinel");e:{const $=(c?s.filter(fe=>fe.nodeId===c.id):s)[0];if(!$){let fe;e[12]===Symbol.for("react.memo_cache_sentinel")?(fe=i.jsx("div",{className:"flex h-full w-full items-center justify-center text-sm text-muted-foreground",children:"No output yet. Run a node to see results."}),e[12]=fe):fe=e[12],S=fe;break e}f=HE($);const Q=UE(f),H=Q?.response??Q?.output??Q?.text??Q?.content??Q?.stdout,R=Q?.thinking,D=["model","provider","agent_type"].filter(fe=>Q?.[fe]);b="flex h-full w-full flex-col overflow-hidden bg-card";let U;e[13]===Symbol.for("react.memo_cache_sentinel")?(U=i.jsx("span",{className:"mr-1 text-sm font-semibold",children:"Output"}),e[13]=U):U=e[13];const W=$.success?"success":"destructive",T=$.success?"Success":"Error";let A;e[14]!==W||e[15]!==T?(A=i.jsx(Ot,{variant:W,children:T}),e[14]=W,e[15]=T,e[16]=A):A=e[16];const K=$.executionTime>0&&i.jsxs(Ot,{variant:"outline",children:[($.executionTime/1e3).toFixed(1),"s"]}),ne=D.map(fe=>i.jsx(Ot,{variant:ZE[fe]??"secondary",children:String(Q[fe]).replace(/_/g," ")},fe));let X;e[17]!==A||e[18]!==K||e[19]!==ne?(X=i.jsxs("div",{className:"flex min-w-0 flex-1 flex-wrap items-center gap-1.5",children:[U,A,K,ne]}),e[17]=A,e[18]=K,e[19]=ne,e[20]=X):X=e[20];let ue;e[21]!==r?(ue=r&&i.jsxs(Ut,{variant:"ghost",size:"xs",onClick:r,className:"shrink-0 text-destructive",children:[i.jsx(za,{})," Clear"]}),e[21]=r,e[22]=ue):ue=e[22],e[23]!==X||e[24]!==ue?(k=i.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-2 border-b border-border bg-card px-4 py-2",children:[X,ue]}),e[23]=X,e[24]=ue,e[25]=k):k=e[25],x="flex-1 overflow-auto p-4",y=$.error&&i.jsx("pre",{className:"mb-3 overflow-auto rounded-md border border-destructive/40 border-l-4 border-l-destructive bg-destructive/5 p-3 font-mono text-sm whitespace-pre-wrap break-words text-destructive",children:$.error}),d="space-y-0",h=H&&i.jsx(Ep,{label:"Response",defaultOpen:!0,children:i.jsx("div",{className:"prose prose-sm max-w-none whitespace-pre-wrap dark:prose-invert",children:i.jsx(ju,{remarkPlugins:[Nu,Cu],children:pb(typeof H=="string"?H:JSON.stringify(H,null,2))})})}),g=R&&i.jsx(Ep,{label:"Thinking",children:i.jsx("div",{className:"prose prose-sm max-h-[300px] max-w-none overflow-auto whitespace-pre-wrap dark:prose-invert",children:i.jsx(ju,{remarkPlugins:[Nu,Cu],children:pb(R)})})})}e[0]=r,e[1]=s,e[2]=c,e[3]=f,e[4]=d,e[5]=h,e[6]=g,e[7]=x,e[8]=y,e[9]=b,e[10]=k,e[11]=S}else f=e[3],d=e[4],h=e[5],g=e[6],x=e[7],y=e[8],b=e[9],k=e[10],S=e[11];if(S!==Symbol.for("react.early_return_sentinel"))return S;let w;e[26]!==f?(w=()=>o2(f,"Copied!"),e[26]=f,e[27]=w):w=e[27];let _;e[28]===Symbol.for("react.memo_cache_sentinel")?(_=i.jsx(vm,{className:"h-3 w-3"}),e[28]=_):_=e[28];let N;e[29]!==w?(N=i.jsxs("button",{type:"button",onClick:w,className:"inline-flex items-center gap-1 text-xs text-primary hover:underline",children:[_,"Copy"]}),e[29]=w,e[30]=N):N=e[30];const L=u?IE:$E;let z;e[31]!==f||e[32]!==L?(z=i.jsx(x4,{value:f,collapsed:2,displayDataTypes:!1,style:L}),e[31]=f,e[32]=L,e[33]=z):z=e[33];let O;e[34]!==N||e[35]!==z?(O=i.jsx(Ep,{label:"Raw JSON",action:N,children:z}),e[34]=N,e[35]=z,e[36]=O):O=e[36];let I;e[37]!==d||e[38]!==O||e[39]!==h||e[40]!==g?(I=i.jsxs("div",{className:d,children:[h,g,O]}),e[37]=d,e[38]=O,e[39]=h,e[40]=g,e[41]=I):I=e[41];let q;e[42]!==I||e[43]!==x||e[44]!==y?(q=i.jsxs("div",{className:x,children:[y,I]}),e[42]=I,e[43]=x,e[44]=y,e[45]=q):q=e[45];let M;return e[46]!==q||e[47]!==b||e[48]!==k?(M=i.jsxs("div",{className:b,children:[k,q]}),e[46]=q,e[47]=b,e[48]=k,e[49]=M):M=e[49],M}const WE=({selectedNode:t,executionResults:e,onClearResults:s,visible:r=!0})=>{const{nodeStatuses:c}=Ct();if(!r)return null;const u=be.useMemo(()=>{const f=[...e],d=c[t.id],h=d?.data||d?.output;if(d&&h&&(d.status==="success"||d.status==="error")){const g=h?.execution_id;if(!f.some(y=>g&&y.executionId?y.executionId===g:y.nodeId===t.id&&JSON.stringify(y.outputs)===JSON.stringify(h))){const y={success:d.status==="success",nodeId:t.id,nodeType:t.type||"unknown",nodeName:t.type||"Node",timestamp:new Date().toISOString(),executionTime:0,outputs:h,nodeData:[[{json:h}]],error:d.status==="error"?h?.error:void 0,executionId:g};f.unshift(y)}}return f},[e,c,t.id,t.type]);return i.jsx("div",{className:"relative flex h-full w-full flex-col overflow-hidden bg-card",children:i.jsx(VE,{results:u,onClear:s,selectedNode:t})})},BE=t=>{const e=Fe.c(19),{selectedNode:s,nodeDefinition:r,parameters:c,onParameterChange:u,executionResults:f,onClearResults:d,showInputSection:h,showOutputSection:g,isLoadingParameters:x}=t,y=h===void 0?!0:h,b=g===void 0?!0:g,k=x===void 0?!1:x;let S;e[0]!==s.id||e[1]!==y?(S=y&&i.jsx("div",{className:"h-full flex-[0.7] overflow-hidden",children:i.jsx(gv,{nodeId:s.id,visible:y})}),e[0]=s.id,e[1]=y,e[2]=S):S=e[2];let w;e[3]!==f||e[4]!==k||e[5]!==r||e[6]!==u||e[7]!==c||e[8]!==s.id?(w=i.jsx("div",{className:"h-full min-w-0 flex-[1.6] overflow-hidden",children:i.jsx(Jv,{nodeId:s.id,nodeDefinition:r,parameters:c,onParameterChange:u,isLoadingParameters:k,executionResults:f})}),e[3]=f,e[4]=k,e[5]=r,e[6]=u,e[7]=c,e[8]=s.id,e[9]=w):w=e[9];let _;e[10]!==f||e[11]!==d||e[12]!==s||e[13]!==b?(_=b&&i.jsx("div",{className:"h-full flex-[0.7] overflow-hidden",children:i.jsx(WE,{selectedNode:s,executionResults:f,onClearResults:d,visible:b})}),e[10]=f,e[11]=d,e[12]=s,e[13]=b,e[14]=_):_=e[14];let N;return e[15]!==S||e[16]!==w||e[17]!==_?(N=i.jsxs("div",{className:"flex h-full min-h-0",children:[S,w,_]}),e[15]=S,e[16]=w,e[17]=_,e[18]=N):N=e[18],N};function FE(t){const e=fn(t);if(!e?.properties)return{};const s={};for(const r of e.properties)s[r.name]=r.default!==void 0?r.default:null;return s}const s2=()=>{const t=De(M=>M.selectedNode),e=De(M=>M.setSelectedNode),{sendRequest:s,isConnected:r}=Ct(),c=t?.id,u=t?.type,f=_8(c),d=j8(),[h,g]=j.useState({}),[x,y]=j.useState({}),[b,k]=j.useState(null),S=j.useRef(null),w=j.useRef(s);w.current=s;const _=j.useRef(d);_.current=d;const N=j.useRef(f.data);N.current=f.data,j.useEffect(()=>{if(!u||!c){g({}),y({}),k(null),S.current=null;return}if(f.isLoading||S.current===c)return;S.current=c;const M=FE(u),E=N.current?.parameters??{},$={...M,...E};g($),y($)},[c,u,f.isLoading]),j.useEffect(()=>{k(f.isError?"Failed to load saved parameters":null)},[f.isError]);const L=j.useMemo(()=>JSON.stringify(h)!==JSON.stringify(x),[h,x]),z=j.useCallback((M,E)=>{g($=>({...$,[M]:E}))},[]),O=j.useCallback(async()=>{if(c)try{await d.mutateAsync({nodeId:c,parameters:h,version:f.data?.version}),y({...h}),k(null)}catch(M){console.error("Failed to save parameters via WebSocket:",M),k("Failed to save parameters")}},[c,h,d,f.data?.version]),I=j.useCallback(()=>{g({...x}),e(null)},[x,e]),q=u?fn(u):null;return{selectedNode:t,nodeDefinition:q,parameters:h,hasUnsavedChanges:L,handleParameterChange:z,handleSave:O,handleCancel:I,isLoading:f.isLoading,isSaving:d.isPending,error:b,isConnected:r}};class lm{static async executeNodeViaWebSocket(e,s,r,c,u,f){try{console.log(`[WS Execution] Starting: ${e} (type: ${s})`);const d=Date.now(),g=(await c(e))?.parameters||{};console.log(`[WS Execution] Parameters for ${e}:`,g);const x=u?.map(S=>({id:S.id,type:S.type||"",data:S.data||{}}))||[],y=f?.map(S=>({id:S.id,source:S.source,target:S.target,sourceHandle:S.sourceHandle||void 0,targetHandle:S.targetHandle||void 0}))||[],b=await r(e,s,g,x,y);console.log("[WS Execution] Result:",b);const k=Date.now()-d;if(b.success){const S=b.result||{nodeId:e,success:!0,message:"Execution completed successfully",timestamp:b.timestamp||new Date().toISOString()},w=[[{json:S}]];return{success:!0,nodeId:e,nodeType:s,nodeName:fn(s)?.displayName||s,timestamp:b.timestamp||new Date().toISOString(),executionTime:b.execution_time||k,outputs:S,data:S,nodeData:w,executionId:b.execution_id}}else{const S=b.result||{error:b.error,nodeId:e,success:!1,timestamp:b.timestamp||new Date().toISOString()},w=[[{json:S}]];return{success:!1,nodeId:e,nodeType:s,nodeName:fn(s)?.displayName||s,timestamp:b.timestamp||new Date().toISOString(),executionTime:b.execution_time||k,error:b.error,outputs:S,data:S,nodeData:w,executionId:b.execution_id}}}catch(d){console.error(`[WS Execution] Failed for node ${e}:`,d);const h={error:d.message||"WebSocket execution failed",nodeId:e,success:!1,timestamp:new Date().toISOString()};return{success:!1,nodeId:e,nodeType:s,nodeName:fn(s)?.displayName||s,timestamp:new Date().toISOString(),executionTime:0,error:d.message||"WebSocket execution failed",outputs:h,data:h,nodeData:[[{json:h}]]}}}static async checkBackendHealth(){try{return(await(await fetch(`${_l.PYTHON_BASE_URL}/api/workflow/health`)).json()).status==="OK"}catch(e){return console.warn("Backend health check failed:",e),!1}}static isNodeTypeSupported(e){return Vo(e)!==null}}const GE=()=>{const{selectedNode:t,nodeDefinition:e,parameters:s,hasUnsavedChanges:r,handleParameterChange:c,handleSave:u,handleCancel:f,isLoading:d}=s2(),h=De(D=>D.currentWorkflow),{executeNode:g,getNodeParameters:x,clearNodeStatus:y,cancelEventWait:b,getNodeStatus:k}=Ct(),S=t?k(t.id):null,w=S?.status==="waiting",[_,N]=be.useState(!1),[L,z]=be.useState([]),O=()=>{f()},I=async()=>{if(!(!t||!e)){r&&await u(),N(!0);try{const D=h?.nodes||[],U=h?.edges||[],W=await lm.executeNodeViaWebSocket(t.id,e.name,g,x,D,U);console.log("[ParameterPanel] Execution result:",W),console.log("[ParameterPanel] Result nodeId:",W.nodeId),console.log("[ParameterPanel] Result outputs:",W.outputs),console.log("[ParameterPanel] Selected node id:",t.id),z(T=>[W,...T])}catch(D){console.error("Execution failed:",D);const U={success:!1,nodeId:t.id,nodeType:e.name,nodeName:e.displayName,timestamp:new Date().toISOString(),executionTime:0,error:D.message||"Unknown execution error",nodeData:[[{json:{error:D.message||"Unknown execution error",nodeId:t.id,success:!1,timestamp:new Date().toISOString()}}]]};z(W=>[U,...W])}finally{N(!1)}}},q=()=>{z([]),t&&y(t.id)},M=t&&e&&lm.isNodeTypeSupported(e.name),E=e?.uiHints??{},$=E.hideInputSection===!0,Q=E.hideOutputSection===!0,H=E.hideRunButton===!0;if(!t||!e)return null;const R=i.jsxs("div",{className:"flex items-center gap-4",children:[i.jsxs("div",{className:"flex items-center gap-2 font-display text-[15px] font-semibold tracking-[var(--type-tracking-display)] text-fg-default [text-transform:var(--type-uppercase)]",children:[i.jsx(Co,{icon:e.icon,className:"h-5 w-5 text-xl"}),i.jsx("span",{children:e.displayName}),r&&i.jsx("span",{className:"text-warning",children:"*"})]}),i.jsxs("div",{className:"flex items-center gap-2",children:[M&&!H&&i.jsxs(Xt,{intent:"run",onClick:I,disabled:_,title:_?"Execution in progress...":"Execute this node",children:[i.jsx("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"currentColor",children:i.jsx("path",{d:"M8 5v14l11-7z"})}),_?"Running...":"Run"]}),i.jsxs(Xt,{intent:"tools",onClick:u,disabled:!r,children:[i.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[i.jsx("path",{d:"M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"}),i.jsx("polyline",{points:"17 21 17 13 7 13 7 21"}),i.jsx("polyline",{points:"7 3 7 8 15 8"})]}),"Save"]}),i.jsxs(Xt,{intent:"stop",onClick:async()=>{if(w&&t){const D=await b(t.id,S?.data?.waiter_id);console.log("[ParameterPanel] Cancel result:",D);return}f()},children:[i.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[i.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),i.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]}),w?"Stop":"Cancel"]})]})]});return i.jsx(Ll,{isOpen:!!t,onClose:O,title:"Node Configuration",maxWidth:"95vw",maxHeight:"95vh",headerActions:R,scrollableBody:!1,children:i.jsx(BE,{selectedNode:t,nodeDefinition:e,parameters:s,hasUnsavedChanges:r,onParameterChange:c,executionResults:L,onClearResults:q,showInputSection:!$,showOutputSection:!Q,isLoadingParameters:d})})};class hl{static instance;loadPromise=null;isLoaded=!1;isLoading=!1;constructor(){}static getInstance(){return hl.instance||(hl.instance=new hl),hl.instance}async loadGoogleMaps(e){if(this.isLoaded)return Promise.resolve();if(this.isLoading&&this.loadPromise)return this.loadPromise;if(typeof window<"u"&&window.google?.maps)return this.isLoaded=!0,Promise.resolve();this.isLoading=!0,this.loadPromise=this.createLoadPromise(e);try{await this.loadPromise,this.isLoaded=!0,this.isLoading=!1}catch(s){throw this.isLoading=!1,this.loadPromise=null,s}}createLoadPromise(e){return new Promise((s,r)=>{const c=document.querySelector('script[src*="maps.googleapis.com"]');if(c){window.google?.maps?s():(c.addEventListener("load",()=>s()),c.addEventListener("error",x=>r(x)));return}const u=document.createElement("script");u.type="text/javascript",u.async=!0,u.defer=!0;const{apiKey:f,libraries:d=["geometry"],version:h="weekly"}=e,g=new URLSearchParams({key:f,libraries:d.join(","),v:h,callback:"__googleMapsCallback__"});u.src=`https://maps.googleapis.com/maps/api/js?${g.toString()}`,window.__googleMapsCallback__=()=>{delete window.__googleMapsCallback__,s()},u.onerror=x=>{delete window.__googleMapsCallback__,r(new Error(`Failed to load Google Maps API: ${x}`))},document.head.appendChild(u)})}isGoogleMapsLoaded(){return this.isLoaded||typeof window<"u"&&!!window.google?.maps}getGoogleMaps(){return typeof window<"u"&&window.google?.maps?window.google.maps:null}}const QE=hl.getInstance(),KE=t=>QE.loadGoogleMaps(t),YE=({lat:t,lng:e,onLocationClick:s,apiKey:r,zoom:c=13,mapTypeId:u="ROADMAP",height:f="100%",width:d="100%"})=>{const h=ts(),g=j.useRef(null),x=j.useRef(null),y=j.useRef(null);return j.useEffect(()=>{if(!g.current||!r)return;(async()=>{try{await KE({apiKey:r,libraries:["geometry"]}),k()}catch(S){console.error("Failed to load Google Maps API:",S)}})();function k(){if(!g.current||!window.google?.maps)return;const S={center:{lat:t,lng:e},zoom:c,mapTypeId:window.google.maps.MapTypeId[u]||google.maps.MapTypeId.ROADMAP,clickableIcons:!1,disableDefaultUI:!1,zoomControl:!0,mapTypeControl:!0,streetViewControl:!0,fullscreenControl:!0};x.current=new google.maps.Map(g.current,S),y.current=new google.maps.Marker({position:{lat:t,lng:e},map:x.current,draggable:!0,title:"Selected Location - Click or drag to change"}),x.current.addListener("click",w=>{if(w.latLng){const _=w.latLng.lat(),N=w.latLng.lng();s(_,N)}}),y.current.addListener("dragend",w=>{if(w.latLng){const _=w.latLng.lat(),N=w.latLng.lng();s(_,N)}})}},[r,t,e,c,u]),j.useEffect(()=>{if(y.current&&x.current){const b={lat:t,lng:e};y.current.setPosition(b),x.current.setCenter(b)}},[t,e]),r?i.jsx("div",{ref:g,style:{height:f,width:d,border:`1px solid ${h.colors.border}`,borderRadius:h.borderRadius.sm}}):i.jsx("div",{style:{height:f,width:d,display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:h.colors.backgroundAlt,color:h.colors.textSecondary,fontSize:h.fontSize.sm,textAlign:"center",padding:h.spacing.lg,border:`1px solid ${h.colors.border}`,borderRadius:h.borderRadius.sm},children:"Google Maps API key required for map display"})},PE=t=>{const e=Fe.c(67),{lat:s,lng:r,zoom:c,mapTypeId:u,apiKey:f,onLocationClick:d,title:h,description:g}=t,x=c===void 0?13:c,y=u===void 0?"ROADMAP":u,b=h===void 0?"Maps Preview":h,k=g===void 0?"Interactive map based on current parameters":g,S=ts();let w;e[0]!==S.colors.backgroundPanel?(w={width:"100%",height:"100%",display:"flex",flexDirection:"column",backgroundColor:S.colors.backgroundPanel},e[0]=S.colors.backgroundPanel,e[1]=w):w=e[1];const _=`1px solid ${S.colors.border}`;let N;e[2]!==_||e[3]!==S.colors.backgroundAlt||e[4]!==S.spacing.lg?(N={padding:S.spacing.lg,borderBottom:_,backgroundColor:S.colors.backgroundAlt,flexShrink:0},e[2]=_,e[3]=S.colors.backgroundAlt,e[4]=S.spacing.lg,e[5]=N):N=e[5];let L;e[6]!==S.colors.text||e[7]!==S.fontSize.lg||e[8]!==S.fontWeight.semibold||e[9]!==S.spacing.sm?(L={margin:0,fontSize:S.fontSize.lg,fontWeight:S.fontWeight.semibold,color:S.colors.text,display:"flex",alignItems:"center",gap:S.spacing.sm},e[6]=S.colors.text,e[7]=S.fontSize.lg,e[8]=S.fontWeight.semibold,e[9]=S.spacing.sm,e[10]=L):L=e[10];let z;e[11]!==L||e[12]!==b?(z=i.jsx("h3",{style:L,children:b}),e[11]=L,e[12]=b,e[13]=z):z=e[13];const O=`${S.spacing.xs} 0 0 0`;let I;e[14]!==O||e[15]!==S.colors.textSecondary||e[16]!==S.fontSize.sm?(I={margin:O,fontSize:S.fontSize.sm,color:S.colors.textSecondary},e[14]=O,e[15]=S.colors.textSecondary,e[16]=S.fontSize.sm,e[17]=I):I=e[17];let q;e[18]!==k||e[19]!==I?(q=i.jsx("p",{style:I,children:k}),e[18]=k,e[19]=I,e[20]=q):q=e[20];let M;e[21]!==q||e[22]!==N||e[23]!==z?(M=i.jsxs("div",{style:N,children:[z,q]}),e[21]=q,e[22]=N,e[23]=z,e[24]=M):M=e[24];let E;e[25]!==S.spacing.md?(E={flex:1,padding:S.spacing.md,display:"flex",flexDirection:"column"},e[25]=S.spacing.md,e[26]=E):E=e[26];let $;e[27]!==f||e[28]!==s||e[29]!==r||e[30]!==y||e[31]!==d||e[32]!==x?($=i.jsx(YE,{lat:s,lng:r,onLocationClick:d,apiKey:f,zoom:x,mapTypeId:y,height:"100%",width:"100%"}),e[27]=f,e[28]=s,e[29]=r,e[30]=y,e[31]=d,e[32]=x,e[33]=$):$=e[33];let Q;e[34]!==E||e[35]!==$?(Q=i.jsx("div",{style:E,children:$}),e[34]=E,e[35]=$,e[36]=Q):Q=e[36];const H=`1px solid ${S.colors.border}`;let R;e[37]!==H||e[38]!==S.colors.backgroundAlt||e[39]!==S.colors.textSecondary||e[40]!==S.fontSize.xs||e[41]!==S.spacing.md?(R={padding:S.spacing.md,borderTop:H,backgroundColor:S.colors.backgroundAlt,fontSize:S.fontSize.xs,color:S.colors.textSecondary,fontFamily:"monospace",flexShrink:0},e[37]=H,e[38]=S.colors.backgroundAlt,e[39]=S.colors.textSecondary,e[40]=S.fontSize.xs,e[41]=S.spacing.md,e[42]=R):R=e[42];let D;e[43]===Symbol.for("react.memo_cache_sentinel")?(D={display:"flex",justifyContent:"space-between"},e[43]=D):D=e[43];let U;e[44]!==s?(U=s.toFixed(6),e[44]=s,e[45]=U):U=e[45];let W;e[46]!==U?(W=i.jsxs("span",{children:["Lat: ",U]}),e[46]=U,e[47]=W):W=e[47];let T;e[48]!==r?(T=r.toFixed(6),e[48]=r,e[49]=T):T=e[49];let A;e[50]!==T?(A=i.jsxs("span",{children:["Lng: ",T]}),e[50]=T,e[51]=A):A=e[51];let K;e[52]!==W||e[53]!==A?(K=i.jsxs("div",{style:D,children:[W,A]}),e[52]=W,e[53]=A,e[54]=K):K=e[54];let ne;e[55]!==S.fontSize.xs||e[56]!==S.spacing.xs?(ne=i.jsx("div",{style:{marginTop:S.spacing.xs,textAlign:"center",fontSize:S.fontSize.xs,opacity:.7},children:"Click or drag marker to update coordinates"}),e[55]=S.fontSize.xs,e[56]=S.spacing.xs,e[57]=ne):ne=e[57];let X;e[58]!==R||e[59]!==K||e[60]!==ne?(X=i.jsxs("div",{style:R,children:[K,ne]}),e[58]=R,e[59]=K,e[60]=ne,e[61]=X):X=e[61];let ue;return e[62]!==M||e[63]!==Q||e[64]!==X||e[65]!==w?(ue=i.jsxs("div",{style:w,children:[M,Q,X]}),e[62]=M,e[63]=Q,e[64]=X,e[65]=w,e[66]=ue):ue=e[66],ue},XE={},JE=t=>{if(!t)return{latParam:null,lngParam:null};const e=t.properties?.find(r=>{const c=r.name.toLowerCase();return c.includes("lat")||c==="latitude"}),s=t.properties?.find(r=>{const c=r.name.toLowerCase();return c.includes("lng")||c.includes("lon")||c==="longitude"});return{latParam:e||null,lngParam:s||null}},ez=(t,e)=>{const{latParam:s,lngParam:r}=e,c=s&&t[s.name]||s?.default||40.7128,u=r&&t[r.name]||r?.default||-74.006;return{lat:c,lng:u}},tz=t=>{const e=t.zoom||13,s=t.mapTypeId||"ROADMAP";return{zoom:e,mapTypeId:s}},nz=()=>XE?.VITE_GOOGLE_MAPS_API_KEY||void 0,oz=(t,e)=>(s,r)=>{const{latParam:c,lngParam:u}=t;c&&e(c.name,s),u&&e(u.name,r)},sz=t=>{const e=Fe.c(21),{nodeDefinition:s,parameters:r,onParameterChange:c,visible:u}=t,f=u===void 0?!0:u,{getStoredApiKey:d,isConnected:h}=Wu(),[g,x]=j.useState(az),y=j.useRef(!1);let b,k;if(e[0]!==d||e[1]!==h?(b=()=>{if(!h||y.current)return;(async()=>{y.current=!0;try{const q=await d("google_maps");q&&x(q)}catch{}})()},k=[h,d],e[0]=d,e[1]=h,e[2]=b,e[3]=k):(b=e[2],k=e[3]),j.useEffect(b,k),!f)return null;let S,w,_,N,L;if(e[4]!==s||e[5]!==c||e[6]!==r){const I=JE(s);({lat:S,lng:w}=ez(r,I));let q;e[12]!==r?(q=tz(r),e[12]=r,e[13]=q):q=e[13],{zoom:L,mapTypeId:_}=q,N=oz(I,c),e[4]=s,e[5]=c,e[6]=r,e[7]=S,e[8]=w,e[9]=_,e[10]=N,e[11]=L}else S=e[7],w=e[8],_=e[9],N=e[10],L=e[11];const z=N;let O;return e[14]!==g||e[15]!==z||e[16]!==S||e[17]!==w||e[18]!==_||e[19]!==L?(O=i.jsx("div",{className:"flex h-full w-full flex-col bg-card",children:i.jsx(PE,{lat:S,lng:w,zoom:L,mapTypeId:_,apiKey:g,onLocationClick:z,title:"Maps Preview",description:"Interactive map based on current parameters"})}),e[14]=g,e[15]=z,e[16]=S,e[17]=w,e[18]=_,e[19]=L,e[20]=O):O=e[20],O};function az(){return nz()}const rz=t=>{const e=Fe.c(17),{selectedNode:s,nodeDefinition:r,parameters:c,onParameterChange:u,showInputSection:f}=t,d=f===void 0?!0:f;let h;e[0]!==s.id||e[1]!==d?(h=d&&i.jsx("div",{className:"h-full flex-1 overflow-hidden",children:i.jsx(gv,{nodeId:s.id,visible:d})}),e[0]=s.id,e[1]=d,e[2]=h):h=e[2];let g;e[3]!==r||e[4]!==u||e[5]!==c||e[6]!==s.id?(g=i.jsx("div",{className:"h-full flex-1 overflow-hidden",children:i.jsx(Jv,{nodeId:s.id,nodeDefinition:r,parameters:c,onParameterChange:u})}),e[3]=r,e[4]=u,e[5]=c,e[6]=s.id,e[7]=g):g=e[7];let x;e[8]!==r||e[9]!==u||e[10]!==c||e[11]!==s?(x=i.jsx("div",{className:"h-full flex-1 overflow-hidden",children:i.jsx(sz,{selectedNode:s,nodeDefinition:r,parameters:c,onParameterChange:u})}),e[8]=r,e[9]=u,e[10]=c,e[11]=s,e[12]=x):x=e[12];let y;return e[13]!==h||e[14]!==g||e[15]!==x?(y=i.jsxs("div",{className:"flex h-full min-h-0",children:[h,g,x]}),e[13]=h,e[14]=g,e[15]=x,e[16]=y):y=e[16],y},lz=()=>{const{selectedNode:t,nodeDefinition:e,parameters:s,hasUnsavedChanges:r,handleParameterChange:c,handleSave:u,handleCancel:f}=s2(),[d,h]=j.useState(!1),g=()=>{f()},x=async()=>{!t||!e||(r&&await u(),h(!0),h(!1))},y=t&&e&&lm.isNodeTypeSupported(e.name);if(!t||!e||!(e.uiHints?.showLocationPanel??e.name==="gmaps_create"))return null;const k=i.jsxs("div",{className:"flex items-center gap-4",children:[i.jsxs("div",{className:"flex items-center gap-2 text-[15px] font-semibold text-foreground",children:[i.jsx("span",{children:e.icon}),i.jsx("span",{children:e.displayName}),r&&i.jsx("span",{className:"text-warning",children:"*"})]}),i.jsxs("div",{className:"flex items-center gap-2",children:[y&&i.jsx(Xt,{intent:"run",onClick:x,disabled:d,title:d?"Execution in progress...":"Execute this node",children:d?"Running...":"Run"}),i.jsx(Xt,{intent:"tools",onClick:u,disabled:!r,children:"Save"}),i.jsx(Xt,{intent:"stop",onClick:f,children:"Cancel"})]})]});return i.jsx(Ll,{isOpen:!!t,onClose:g,title:"Node Configuration",maxWidth:"95vw",maxHeight:"95vh",headerActions:k,children:i.jsx(rz,{selectedNode:t,nodeDefinition:e,parameters:s,hasUnsavedChanges:r,onParameterChange:c,showInputSection:!0})})},iz=({definition:t,onDragStart:e})=>{const[s,r]=j.useState(!1),c=Zi(t.name),u=t,f=c?.icon??u.icon;return i.jsxs(Hs,{size:"sm",draggable:!0,onDragStart:d=>{r(!0),e(d,t)},onDragEnd:()=>r(!1),className:Ne("comp row group relative flex-row items-center gap-3 px-3 py-2 cursor-grab select-none","border-border-default bg-bg-app transition-all duration-150 ease-out","hover:-translate-y-0.5 hover:bg-bg-hover hover:ring-2 hover:ring-foreground/15 hover:shadow-md",s&&"opacity-50"),children:[i.jsx("div",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-md bg-bg-elevated ring-1 ring-border-default/40",children:i.jsx(Co,{icon:f,className:"h-5 w-5 text-lg",fallback:i.jsx("span",{children:"📦"})})}),i.jsxs("div",{className:"min-w-0 flex-1",children:[i.jsx("div",{className:"truncate font-display text-sm font-medium text-fg-default",children:u.displayName}),i.jsx("div",{className:"truncate text-xs leading-tight text-fg-muted",children:u.description})]}),i.jsx(RS,{className:"h-4 w-4 shrink-0 text-fg-faint opacity-50 transition-opacity group-hover:opacity-80","aria-hidden":!0})]})},cz=({title:t,isCollapsed:e,onToggle:s,children:r})=>{const c=!e;return i.jsx(e2,{open:c,onOpenChange:()=>s(),children:i.jsxs("div",{className:Ne("cat overflow-hidden rounded-lg border border-border-default bg-bg-app",e&&"collapsed"),children:[i.jsxs(t2,{className:"cat-head flex w-full cursor-pointer items-center justify-between gap-2 border-none bg-bg-elevated px-4 py-3 text-base text-fg-default transition-colors hover:bg-bg-hover",children:[typeof t=="string"?i.jsx("span",{className:"font-display font-medium",children:t}):i.jsx("div",{className:"flex flex-1 items-center",children:t}),i.jsx(Us,{className:Ne("h-3 w-3 shrink-0 text-fg-muted transition-transform",e&&"-rotate-90")})]}),i.jsx(n2,{className:Ne("cat-body transition-[padding]",c&&"p-3"),children:r})]})})};function dr({className:t,...e}){return i.jsx("div",{"data-slot":"skeleton",className:Ne("animate-pulse rounded-md bg-muted",t),...e})}const uz=({searchQuery:t,onSearchChange:e,collapsedSections:s,onToggleSection:r,onDragStart:c,proMode:u=!1,specsReady:f=!1})=>{const d=ts(),{isBlocked:h,isAllowed:g}=Pm(),{data:x,isPending:y}=U8(),b=be.useCallback(w=>{const _=x?.[w.toLowerCase()];return{icon:_?.icon??"",color:_?.color||d.colors.textSecondary,label:_?.label||w}},[x,d.colors.textSecondary]),k=be.useMemo(()=>{const w={};return Vi().map(N0).filter(L=>{if(h(L.name,L.group)||!u&&!g(L.name))return!1;if(t.trim())try{const z=t.toLowerCase();if(!((L.displayName||"").toLowerCase().includes(z)||(L.description||"").toLowerCase().includes(z)||(L.group?.[0]||"").toLowerCase().includes(z)))return!1}catch{return!1}if(!u){const z=(L.group?.[0]||"").toLowerCase(),O=x?.[z]?.visibility;if(O!=="normal"&&O!=="all")return!1}return!0}).forEach(L=>{try{const z=(L.group?.[0]||"Uncategorized").toLowerCase();w[z]||(w[z]=[]),w[z].push(L)}catch{}}),w},[t,u,x,h,g,f]),S=Object.values(k).reduce((w,_)=>w+_.length,0);return i.jsxs("div",{className:"palette flex h-full w-full flex-col overflow-hidden border-l border-border-default bg-bg-panel",children:[i.jsxs("div",{className:"border-b border-border-default bg-bg-app p-4",children:[i.jsxs("div",{className:"mb-3 flex items-center justify-between",children:[i.jsx("h2",{className:"font-display text-base font-semibold tracking-[var(--type-tracking-display)] text-fg-default [text-transform:var(--type-uppercase)]",children:"Components"}),i.jsx(Ot,{variant:"secondary",className:"font-mono text-xs font-medium",children:S})]}),i.jsxs("div",{className:"relative",children:[i.jsx(zi,{className:"pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-fg-faint"}),i.jsx(on,{type:"text",placeholder:"Search...",value:t,onChange:w=>e(w.target.value),className:"pl-9"})]})]}),i.jsx("div",{className:"flex-1 overflow-y-auto p-3",children:y?i.jsx(pz,{}):Object.keys(k).length===0?i.jsxs("div",{className:"flex flex-col items-center px-6 py-12 text-center text-fg-muted",children:[i.jsx(zi,{className:"mb-3 h-12 w-12 opacity-50"}),i.jsxs("p",{className:"text-sm",children:['No components found matching "',t,'"']})]}):Object.entries(k).map(([w,_])=>{try{const N=s[w],L=b(w);return i.jsx("div",{className:"mb-3",children:i.jsx(cz,{title:i.jsxs("div",{className:"flex w-full items-center justify-between",children:[i.jsxs("div",{className:"flex items-center gap-2.5",children:[i.jsx("span",{className:"flex h-7 w-7 items-center justify-center rounded-md bg-tint-soft",style:{color:L.color},children:i.jsx(Co,{icon:L.icon,className:"h-4 w-4 text-base",fallback:i.jsx("span",{children:"📦"})})}),i.jsx("span",{className:"font-display text-sm font-semibold tracking-[var(--type-tracking-display)] text-fg-default [text-transform:var(--type-uppercase)]",children:L.label})]}),i.jsx(Ot,{variant:"secondary",className:"text-xs font-medium",children:_?.length||0})]}),isCollapsed:N,onToggle:()=>r(w),children:i.jsx("div",{className:"grid gap-2 pt-2",children:(_||[]).map((z,O)=>{try{return i.jsx(iz,{definition:z,onDragStart:c},z?.name||`item-${O}`)}catch{return null}})})})},w||"unknown")}catch{return null}})})]})},dz=3,fz=2,pz=()=>i.jsx("div",{"aria-busy":"true","aria-label":"Loading components",children:Array.from({length:dz}).map((t,e)=>i.jsxs("div",{className:"mb-3 space-y-2",children:[i.jsxs("div",{className:"flex items-center gap-2.5 px-1 py-2",children:[i.jsx(dr,{className:"h-7 w-7 rounded-md"}),i.jsx(dr,{className:"h-4 w-24"})]}),i.jsx("div",{className:"grid gap-2 pt-2",children:Array.from({length:fz}).map((s,r)=>i.jsx(dr,{className:"h-10 w-full rounded-md"},r))})]},e))});function a2({...t}){return i.jsx(n4,{"data-slot":"dropdown-menu",...t})}function r2({...t}){return i.jsx(o4,{"data-slot":"dropdown-menu-trigger",...t})}function l2({className:t,align:e="start",sideOffset:s=4,...r}){return i.jsx(s4,{children:i.jsx(a4,{"data-slot":"dropdown-menu-content",sideOffset:s,align:e,className:Ne("menu-pop z-50 max-h-(--radix-dropdown-menu-content-available-height) w-(--radix-dropdown-menu-trigger-width) min-w-32 origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:overflow-hidden data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",t),...r})})}function dl({className:t,inset:e,variant:s="default",onSelect:r,...c}){const u=r?f=>{Hn.play("click"),r(f)}:f=>{Hn.play("click")};return i.jsx(l4,{"data-slot":"dropdown-menu-item","data-inset":e,"data-variant":s,onSelect:u,className:Ne("menu-pop-item group/dropdown-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive",t),...c})}function i2({className:t,inset:e,...s}){return i.jsx(r4,{"data-slot":"dropdown-menu-label","data-inset":e,className:Ne("px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7",t),...s})}function im({className:t,...e}){return i.jsx(i4,{"data-slot":"dropdown-menu-separator",className:Ne("-mx-1 my-1 h-px bg-border",t),...e})}const mb={light:{label:"Light",blurb:"Clean default"},dark:{label:"Dark",blurb:"Solarized + Dracula"},renaissance:{label:"Renaissance",blurb:"Illuminated codex"},greek:{label:"Greek",blurb:"Sun-bleached marble agora"},edo:{label:"Edo",blurb:"Washi paper, sumi ink"},steampunk:{label:"Steampunk",blurb:"Riveted brass + leather"},atomic:{label:"Atomic Modern",blurb:"Eames mid-century"},cyber:{label:"Cyber-Tyranny",blurb:"Neon night market"},wasteland:{label:"Wasteland",blurb:"Irradiated scrap + rust"},rot:{label:"Necromantic Rot",blurb:"Moss-overgrown crypt"},plague:{label:"Plague City",blurb:"Quarantine notices"},surveillance:{label:"Surveillance",blurb:"Institutional CCTV"}},mz=[{heading:"System",themes:["light","dark"]},{heading:"Utopian",themes:["renaissance","greek","edo","steampunk","atomic"]},{heading:"Dystopian",themes:["cyber","wasteland","rot","plague","surveillance"]}],hz=({className:t})=>{const{theme:e,setTheme:s}=Zs(),r=mb[e];return i.jsxs(a2,{children:[i.jsx(r2,{asChild:!0,children:i.jsx(Ut,{variant:"outline",size:"icon-sm",title:`Theme: ${r.label}`,className:"border-action-secret-border bg-action-secret-soft text-action-secret hover:bg-action-secret/25",children:i.jsx(f0,{})})}),i.jsx(l2,{align:"end",className:t??"min-w-[240px]",children:mz.map((c,u)=>i.jsxs(j.Fragment,{children:[u>0&&i.jsx(im,{}),i.jsx(i2,{className:"text-xs uppercase tracking-wider text-muted-foreground",children:c.heading}),c.themes.map(f=>{const d=mb[f],h=f===e;return i.jsxs(dl,{onSelect:()=>s(f),className:"flex items-center gap-2",children:[i.jsx("span",{className:"flex h-4 w-4 items-center justify-center",children:h&&i.jsx(Li,{className:"h-3.5 w-3.5"})}),i.jsxs("span",{className:"flex-1",children:[i.jsx("span",{className:"block text-sm font-medium",children:d.label}),i.jsx("span",{className:"block text-[11px] text-muted-foreground",children:d.blurb})]})]},f)})]},c.heading))})]})},yu=()=>i.jsx("div",{className:"mx-1 h-6 w-px bg-border-default"}),gz=({workflowName:t,onWorkflowNameChange:e,onSave:s,onNew:r,onOpen:c,onRun:u,isRunning:f=!1,onDeploy:d,onCancelDeployment:h,isDeploying:g=!1,hasUnsavedChanges:x,sidebarVisible:y,onToggleSidebar:b,componentPaletteVisible:k,onToggleComponentPalette:S,proMode:w,onToggleProMode:_,onOpenSettings:N,onOpenCredentials:L,onExportJSON:z,onExportFile:O,onImportJSON:I,onGlobalModelChange:q,onOverrideAllAgents:M})=>{const[E,$]=j.useState(!1),[Q,H]=j.useState(t),{user:R,logout:D}=Uu(),{getValidatedAiProviders:U,saveGlobalModel:W,isConnected:T}=Wu(),[A,K]=j.useState({providers:[],global_provider:null,global_model:null}),ne=k8();j.useEffect(()=>{T&&U().then(ve=>K(ve))},[T,ne,U]);const X=j.useCallback(ve=>{const[Ce,...ce]=ve.split("::"),te=ce.join("::");K(Oe=>({...Oe,global_provider:Ce,global_model:te})),W(Ce,te),q?.(Ce,te)},[W,q]),ue=A.global_provider&&A.global_model?`${A.global_provider}::${A.global_model}`:void 0,fe=Vp[A.global_provider||""],pe=()=>{H(t),$(!0)},we=()=>{e(Q.trim()||"Untitled Workflow"),$(!1)},je=ve=>{ve.key==="Enter"?we():ve.key==="Escape"&&(H(t),$(!1))};return i.jsxs("div",{className:"toolbar flex h-12 items-center justify-between gap-3 border-b border-border-default bg-bg-panel px-3",children:[i.jsxs("div",{className:"flex items-center gap-1.5",children:[i.jsx(Ut,{variant:"outline",size:"icon-sm",onClick:b,"aria-pressed":y,title:y?"Hide sidebar":"Show sidebar",className:"border-action-save-border bg-action-save-soft text-action-save hover:bg-action-save/25 aria-pressed:bg-action-save/30",children:y?i.jsx(p0,{}):i.jsx(DS,{})}),i.jsx(yu,{}),i.jsxs(a2,{children:[i.jsx(r2,{asChild:!0,children:i.jsxs(Ut,{variant:"outline",size:"sm",className:"border-action-save-border bg-action-save-soft text-action-save hover:bg-action-save/25",children:[i.jsx(IS,{}),i.jsx("span",{className:"font-display tracking-[var(--type-tracking-display)] [text-transform:var(--type-uppercase)]",children:"File"}),i.jsx(Us,{})]})}),i.jsxs(l2,{align:"start",className:"min-w-[200px]",children:[i.jsx(i2,{className:"text-xs uppercase tracking-wider text-muted-foreground",children:"File Operations"}),i.jsxs(dl,{onSelect:r,className:"text-action-run focus:text-action-run",children:[i.jsx(Sm,{}),"New Workflow"]}),i.jsxs(dl,{onSelect:c,className:"text-action-save focus:text-action-save",children:[i.jsx(_m,{}),"Open"]}),i.jsx(im,{}),i.jsxs(dl,{onSelect:O,className:"text-action-save focus:text-action-save",children:[i.jsx(m0,{}),"Export"]}),i.jsxs(dl,{onSelect:I,className:"text-action-save focus:text-action-save",children:[i.jsx(h0,{}),"Import"]}),i.jsx(im,{}),i.jsxs(dl,{onSelect:z,className:"text-action-tools focus:text-action-tools",children:[i.jsx($S,{}),"Copy as JSON"]})]})]})]}),i.jsx("div",{className:"flex flex-1 justify-center",children:E?i.jsx("input",{type:"text",value:Q,onChange:ve=>H(ve.target.value),onBlur:we,onKeyDown:je,autoFocus:!0,className:"min-w-[200px] rounded-sm border border-accent bg-background px-3 py-1.5 text-center text-sm font-medium text-foreground outline-none"}):i.jsxs("button",{onClick:pe,title:"Click to rename",className:"flex items-center gap-1.5 rounded-sm bg-transparent px-3 py-1.5 transition-colors hover:bg-bg-hover",children:[i.jsx("span",{className:"text-sm font-display font-medium tracking-[var(--type-tracking-display)] text-fg-default [text-transform:var(--type-uppercase)]",children:t}),i.jsx(bm,{className:"h-3 w-3 text-fg-muted"})]})}),A.providers.length>0&&i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsx("span",{className:"text-sm font-semibold whitespace-nowrap text-node-model",children:"Set Global Model"}),i.jsxs(Na,{value:ue,onValueChange:X,children:[i.jsx(La,{className:"h-8 w-auto min-w-[180px]",children:i.jsx(Ca,{placeholder:"Select model...",children:A.global_model&&i.jsxs("span",{className:"flex items-center gap-2",children:[fe&&i.jsx("span",{className:"inline-block h-2.5 w-2.5 shrink-0 rounded-full",style:{backgroundColor:fe.color}}),i.jsx("span",{children:A.global_model})]})})}),i.jsx(Ea,{children:A.providers.map(ve=>{const Ce=Vp[ve.provider],ce=ve.popular_models.length>0?ve.popular_models:ve.models.slice(0,5);return i.jsxs(pv,{children:[i.jsx(mv,{className:"text-xs",style:{color:Ce?.color},children:Ce?.label||ve.provider}),ce.map(te=>i.jsx(po,{value:`${ve.provider}::${te}`,children:te},`${ve.provider}::${te}`))]},ve.provider)})})]}),ue&&i.jsxs(Xt,{intent:"config",onClick:()=>A.global_provider&&A.global_model&&M?.(A.global_provider,A.global_model),title:"Override all agent nodes in this workflow to use the selected model",className:"h-8 px-3 text-xs",children:[i.jsx(qS,{className:"h-3 w-3"}),"Apply All"]})]}),i.jsxs("div",{className:"flex items-center gap-1.5",children:[i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsx("span",{className:"text-sm font-semibold text-node-model",children:"Mode:"}),i.jsxs("div",{className:"flex items-center rounded-md border border-border bg-card p-0.5",title:w?"Dev mode: All components visible":"Normal mode: Only AI components",children:[i.jsxs("button",{onClick:()=>w&&_(),className:Ne("flex items-center gap-1 rounded-sm border px-2.5 py-1 text-xs font-semibold transition-all",w?"cursor-pointer border-transparent text-node-workflow hover:bg-muted":"border-node-skill-border bg-node-skill-soft text-node-skill cursor-default"),children:[i.jsx(HS,{className:"h-3 w-3"}),"Normal"]}),i.jsxs("button",{onClick:()=>!w&&_(),className:Ne("flex items-center gap-1 rounded-sm border px-2.5 py-1 text-xs font-semibold transition-all",w?"border-node-agent-border bg-node-agent-soft text-node-agent cursor-default":"cursor-pointer border-transparent text-node-workflow hover:bg-muted"),children:[i.jsx(km,{className:"h-3 w-3"}),"Dev"]})]})]}),i.jsx(yu,{}),i.jsx(Ut,{variant:"outline",size:"icon-sm",onClick:N,title:"Settings",className:"border-action-config-border bg-action-config-soft text-action-config hover:bg-action-config/25",children:i.jsx(Ui,{})}),i.jsx(Ut,{variant:"outline",size:"icon-sm",onClick:L,title:"API Credentials",className:"border-action-secret-border bg-action-secret-soft text-action-secret hover:bg-action-secret/25",children:i.jsx(g0,{})}),i.jsx(hz,{}),R&&i.jsx(Ut,{variant:"outline",size:"icon-sm",onClick:D,title:`Logout ${R.display_name}`,className:"border-action-stop-border bg-action-stop-soft text-action-stop hover:bg-action-stop/25",children:i.jsx(US,{})}),i.jsx(yu,{}),g?i.jsxs(Xt,{intent:"stop",onClick:h,title:"Stop workflow",children:[i.jsx(x0,{className:"h-3 w-3 fill-current"}),"Stop"]}):i.jsxs(Xt,{intent:"run",onClick:d,disabled:f,title:"Start workflow",children:[i.jsx(jm,{className:"h-3 w-3 fill-current"}),"Start"]}),i.jsxs(Xt,{intent:"save",onClick:()=>typeof s=="function"&&s(),disabled:!x,title:x?"Save changes":"No changes to save",children:[i.jsx(mr,{className:"h-3 w-3"}),"Save"]}),i.jsxs("div",{className:Ne("flex items-center gap-2 rounded-sm px-3 py-1 text-xs font-mono",x?"text-warning":"text-success"),children:[i.jsx("div",{className:Ne("h-2 w-2 rounded-full",x?"bg-warning":"bg-success")}),x?"Modified":"Saved"]}),i.jsx(yu,{}),i.jsx(Ut,{variant:"outline",size:"icon-sm",onClick:S,"aria-pressed":k,title:k?"Hide components":"Show components",className:"border-action-tools-border bg-action-tools-soft text-action-tools hover:bg-action-tools/25 aria-pressed:bg-action-tools/30",children:k?i.jsx(y0,{}):i.jsx(ZS,{})})]})]})},xz=t=>new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"}).format(t),yz=({workflow:t,isSelected:e,onSelect:s,onDelete:r})=>i.jsxs(Hs,{onClick:s,className:Ne("wf-card row group relative mb-2 cursor-pointer border-border-default bg-bg-app p-3 transition-colors",e?"selected border-accent border-l-[3px] bg-bg-active":"hover:bg-bg-hover"),children:[i.jsxs("div",{className:"mb-1 flex items-center gap-2",children:[i.jsx("div",{className:Ne("flex h-6 w-6 shrink-0 items-center justify-center rounded-sm border",e?"border-accent bg-accent/20 text-accent":"border-border-default bg-bg-elevated text-fg-muted"),children:i.jsx(VS,{className:"h-3 w-3"})}),i.jsx("h4",{className:Ne("m-0 flex-1 truncate font-display text-sm font-medium tracking-[var(--type-tracking-display)] [text-transform:var(--type-uppercase)]",e?"text-accent":"text-fg-default"),children:t.name})]}),i.jsxs("div",{className:Ne("flex items-center justify-between font-mono text-xs",e?"text-fg-default":"text-fg-muted"),children:[i.jsxs("span",{children:[t.nodeCount," nodes"]}),i.jsx("span",{children:xz(t.lastModified)})]}),r&&i.jsx(Ut,{variant:"ghost",size:"icon-xs",onClick:c=>{c.stopPropagation(),window.confirm(`Delete "${t.name}"?`)&&r()},title:"Delete workflow",className:"absolute top-2 right-2 hidden text-destructive hover:bg-destructive/10 group-hover:flex",children:i.jsx(za,{className:"h-3 w-3"})})]}),bz=({workflows:t,currentWorkflowId:e,onSelectWorkflow:s,onDeleteWorkflow:r})=>i.jsxs("div",{className:"sidebar flex h-full w-[280px] flex-col overflow-hidden border-r border-border-default bg-bg-panel",children:[i.jsx("div",{className:"border-b border-border-default bg-bg-app px-4 py-5",children:i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsx("div",{className:"flex h-9 w-9 items-center justify-center rounded-md bg-accent/20 text-accent",children:i.jsx(_m,{className:"h-4 w-4"})}),i.jsxs("div",{children:[i.jsx("h3",{className:"m-0 font-display text-base font-semibold tracking-[var(--type-tracking-display)] text-fg-default [text-transform:var(--type-uppercase)]",children:"Workflows"}),i.jsxs("p",{className:"m-0 font-mono text-xs text-fg-muted",children:[t.length," saved"]})]})]})}),i.jsx("div",{className:"flex-1 overflow-y-auto p-3",children:t.length===0?i.jsxs("div",{className:"px-4 py-12 text-center text-sm text-fg-muted",children:[i.jsx("div",{className:"mx-auto mb-4 flex h-16 w-16 items-center justify-center rounded-lg border-2 border-dashed border-border-default bg-bg-elevated",children:i.jsx(Sm,{className:"h-7 w-7 stroke-1"})}),i.jsx("p",{className:"m-0 font-medium text-fg-default",children:"No workflows yet"}),i.jsxs("p",{className:"mt-2 text-xs leading-relaxed",children:["Create your first workflow",i.jsx("br",{}),"to get started"]})]}):t.map(c=>i.jsx(yz,{workflow:c,isSelected:e===c.id,onSelect:()=>s(c),onDelete:r?()=>r(c.id):void 0},c.id))})]});function rl({className:t,size:e="default",...s}){return i.jsx(c4,{"data-slot":"switch","data-size":e,className:Ne("peer group/switch relative inline-flex shrink-0 items-center rounded-full border border-transparent transition-all outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-[size=default]:h-[18.4px] data-[size=default]:w-[32px] data-[size=sm]:h-[14px] data-[size=sm]:w-[24px] dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:bg-primary data-unchecked:bg-input dark:data-unchecked:bg-input/80 data-disabled:cursor-not-allowed data-disabled:opacity-50",t),...s,children:i.jsx(u4,{"data-slot":"switch-thumb",className:"pointer-events-none block rounded-full bg-background ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 group-data-[size=default]/switch:data-checked:translate-x-[calc(100%-2px)] group-data-[size=sm]/switch:data-checked:translate-x-[calc(100%-2px)] dark:data-checked:bg-primary-foreground group-data-[size=default]/switch:data-unchecked:translate-x-0 group-data-[size=sm]/switch:data-unchecked:translate-x-0 dark:data-unchecked:bg-foreground"})})}function vz({className:t,defaultValue:e,value:s,min:r=0,max:c=100,...u}){const f=j.useMemo(()=>Array.isArray(s)?s:Array.isArray(e)?e:[r,c],[s,e,r,c]);return i.jsxs(d4,{"data-slot":"slider",defaultValue:e,value:s,min:r,max:c,className:Ne("relative flex w-full touch-none items-center select-none data-disabled:opacity-50 data-vertical:h-full data-vertical:min-h-40 data-vertical:w-auto data-vertical:flex-col",t),...u,children:[i.jsx(f4,{"data-slot":"slider-track",className:"relative grow overflow-hidden rounded-full bg-muted data-horizontal:h-1 data-horizontal:w-full data-vertical:h-full data-vertical:w-1",children:i.jsx(p4,{"data-slot":"slider-range",className:"absolute bg-primary select-none data-horizontal:h-full data-vertical:w-full"})}),Array.from({length:f.length},(d,h)=>i.jsx(m4,{"data-slot":"slider-thumb",className:"relative block size-3 shrink-0 rounded-full border border-ring bg-white ring-ring/50 transition-[color,box-shadow] select-none after:absolute after:-inset-2 hover:ring-3 focus-visible:ring-3 focus-visible:outline-hidden active:ring-3 disabled:pointer-events-none disabled:opacity-50"},h))]})}const Xm=Xu({autoSave:Sa().default(!0),autoSaveInterval:ur().int().min(10).max(300).default(30),sidebarDefaultOpen:Sa().default(!0),componentPaletteDefaultOpen:Sa().default(!0),consolePanelDefaultOpen:Sa().default(!1),memoryWindowSize:ur().int().min(1).max(100).default(100),compactionRatio:ur().min(.1).max(.9).default(.5),maxProcesses:ur().int().min(1).max(50).default(10),autoAddSkillForTools:Sa().default(!0)}),yl=Xm.parse({});function wz(t){return t?Xm.parse({autoSave:t.auto_save,autoSaveInterval:t.auto_save_interval,sidebarDefaultOpen:t.sidebar_default_open,componentPaletteDefaultOpen:t.component_palette_default_open,consolePanelDefaultOpen:t.console_panel_default_open,memoryWindowSize:t.memory_window_size,compactionRatio:t.compaction_ratio,maxProcesses:t.max_processes,autoAddSkillForTools:t.auto_add_skill_for_tools}):yl}function kz(t){return{auto_save:t.autoSave,auto_save_interval:t.autoSaveInterval,sidebar_default_open:t.sidebarDefaultOpen,component_palette_default_open:t.componentPaletteDefaultOpen,console_panel_default_open:t.consolePanelDefaultOpen,memory_window_size:t.memoryWindowSize,compaction_ratio:t.compactionRatio,max_processes:t.maxProcesses,auto_add_skill_for_tools:t.autoAddSkillForTools}}const Sz={agent:"bg-node-agent-soft text-node-agent",model:"bg-node-model-soft text-node-model",workflow:"bg-node-workflow-soft text-node-workflow",tool:"bg-node-tool-soft text-node-tool"},ll=({title:t,Icon:e,tone:s,children:r})=>i.jsxs("div",{className:"mb-4 rounded-md border border-border-default bg-bg-elevated p-4",children:[i.jsxs("div",{className:"mb-4 flex items-center gap-2 border-b border-border-default pb-3",children:[i.jsx("div",{className:`flex h-8 w-8 items-center justify-center rounded-md ${Sz[s]}`,children:i.jsx(e,{className:"h-4 w-4"})}),i.jsx("div",{className:"font-display text-base font-semibold tracking-[var(--type-tracking-display)] text-fg-default [text-transform:var(--type-uppercase)]",children:t})]}),r]}),ds=({label:t,description:e,children:s})=>i.jsxs("div",{className:"flex items-center justify-between py-2",children:[i.jsxs("div",{className:"flex-1",children:[i.jsx("div",{className:"text-sm font-medium text-fg-default",children:t}),i.jsx("div",{className:"mt-0.5 text-xs text-fg-muted",children:e})]}),s]}),_z=({isOpen:t,onClose:e,settings:s,onSettingsChange:r,onReplayOnboarding:c})=>{const u=nd(),f=Xv(),d=u.isLoading,h=f.isPending,g=De(_=>_.soundEnabled),x=De(_=>_.setSoundEnabled);j.useEffect(()=>{!t||!u.data||r(wz(u.data))},[t,u.data]);const y=async(_,N)=>{const L=Xm.safeParse(_);if(!L.success){const z=L.error.issues[0]?.message??"Invalid settings";Pt.error(z);return}try{await f.mutateAsync(kz(L.data)),N&&Pt.success("Settings saved successfully")}catch(z){console.error("[SettingsPanel] Failed to save settings:",z),N&&Pt.error("Failed to save settings")}},b=(_,N)=>{const L={...s,[_]:N};r(L),y(L,!1)},k=async()=>{r(yl),await y(yl,!0)},S=async()=>{await y(s,!0)},w=i.jsxs("div",{className:"flex items-center gap-4",children:[i.jsxs("div",{className:"flex items-center gap-2 font-display text-[15px] font-semibold tracking-[var(--type-tracking-display)] text-fg-default [text-transform:var(--type-uppercase)]",children:[i.jsx(Ui,{className:"h-4 w-4"}),i.jsx("span",{children:"Settings"})]}),i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsxs(Xt,{intent:"config",onClick:k,disabled:h,title:"Reset to default settings",children:[i.jsx(wm,{className:"h-3 w-3"}),"Reset"]}),i.jsxs(Xt,{intent:"run",onClick:S,disabled:h,title:"Save settings",children:[i.jsx(mr,{className:"h-3 w-3"}),h?"Saving...":"Save"]}),i.jsxs(Xt,{intent:"stop",onClick:e,title:"Close settings",children:[i.jsx(za,{className:"h-3 w-3"}),"Close"]})]})]});return i.jsx(Ll,{isOpen:t,onClose:e,title:"Settings",maxWidth:"95vw",maxHeight:"95vh",headerActions:w,children:i.jsx("div",{className:"flex h-full flex-col",children:i.jsxs("div",{className:`flex-1 overflow-auto p-4 transition-opacity ${d?"opacity-60":"opacity-100"}`,children:[i.jsxs(ll,{title:"UI Defaults",Icon:WS,tone:"agent",children:[i.jsx(ds,{label:"Sidebar Open by Default",description:"Show the sidebar panel when the application starts",children:i.jsx(rl,{checked:s.sidebarDefaultOpen,onCheckedChange:_=>b("sidebarDefaultOpen",_),disabled:h})}),i.jsx(ds,{label:"Component Palette Open by Default",description:"Show the component palette when the application starts",children:i.jsx(rl,{checked:s.componentPaletteDefaultOpen,onCheckedChange:_=>b("componentPaletteDefaultOpen",_),disabled:h})}),i.jsx(ds,{label:"Console Panel Open by Default",description:"Show the console/chat panel at the bottom when the application starts",children:i.jsx(rl,{checked:s.consolePanelDefaultOpen,onCheckedChange:_=>b("consolePanelDefaultOpen",_),disabled:h})}),i.jsx(ds,{label:"Auto-add Skill for Connected Tools",description:"When a tool node is connected to an AI agent, automatically enable the matching skill in the agent's Master Skill (creating one if needed). Disconnecting the tool disables the skill.",children:i.jsx(rl,{checked:s.autoAddSkillForTools,onCheckedChange:_=>b("autoAddSkillForTools",_),disabled:h})})]}),i.jsxs(ll,{title:"Auto-save",Icon:mr,tone:"model",children:[i.jsx(ds,{label:"Enable Auto-save",description:"Automatically save the workflow at regular intervals",children:i.jsx(rl,{checked:s.autoSave,onCheckedChange:_=>b("autoSave",_),disabled:h})}),s.autoSave&&i.jsx(ds,{label:"Auto-save Interval",description:"How often to auto-save (10-300 seconds)",children:i.jsxs("div",{className:"relative w-24",children:[i.jsx(on,{type:"number",min:10,max:300,step:5,value:s.autoSaveInterval,onChange:_=>b("autoSaveInterval",Number(_.target.value)||30),disabled:h,className:"pr-6"}),i.jsx("span",{className:"pointer-events-none absolute top-1/2 right-2 -translate-y-1/2 text-xs text-fg-muted",children:"s"})]})})]}),i.jsxs(ll,{title:"Memory & Compaction",Icon:BS,tone:"agent",children:[i.jsx(ds,{label:"Default Window Size",description:"Number of message pairs to keep in short-term memory (1-100)",children:i.jsx(on,{type:"number",min:1,max:100,step:1,value:s.memoryWindowSize,onChange:_=>b("memoryWindowSize",Number(_.target.value)||100),disabled:h,className:"w-20"})}),i.jsx("div",{className:"my-1 border-b border-border-default"}),i.jsxs("div",{className:"py-2",children:[i.jsxs("div",{className:"mb-2 flex items-center justify-between",children:[i.jsxs("div",{className:"flex-1",children:[i.jsx("div",{className:"text-sm font-medium text-fg-default",children:"Compaction Ratio"}),i.jsx("div",{className:"mt-0.5 text-xs text-fg-muted",children:"Fraction of context window that triggers memory compaction"})]}),i.jsxs("span",{className:"min-w-[42px] text-right text-sm font-semibold text-node-model",children:[Math.round(s.compactionRatio*100),"%"]})]}),i.jsx(vz,{min:10,max:90,step:5,value:[Math.round(s.compactionRatio*100)],onValueChange:_=>b("compactionRatio",(_[0]??50)/100),disabled:h,className:"my-3"}),i.jsxs("div",{className:"flex justify-between text-[10px] text-fg-muted",children:[i.jsx("span",{children:"10%"}),i.jsx("span",{children:"50%"}),i.jsx("span",{children:"90%"})]}),i.jsx("div",{className:"mt-1 text-xs leading-snug text-fg-muted",children:"Lower = compact sooner (saves tokens, loses detail). Higher = compact later (preserves context, uses more tokens)."})]})]}),i.jsx(ll,{title:"Process Manager",Icon:FS,tone:"workflow",children:i.jsx(ds,{label:"Max Concurrent Processes",description:"Maximum number of running processes per workflow (1-50)",children:i.jsx(on,{type:"number",min:1,max:50,step:1,value:s.maxProcesses??10,onChange:_=>b("maxProcesses",Number(_.target.value)||10),disabled:h,className:"w-20"})})}),i.jsx(ll,{title:"Audio",Icon:GS,tone:"tool",children:i.jsx(ds,{label:"Sound Effects",description:"Play per-theme click / hover / save / error sounds. Each theme ships a different pack (parchment, terminal, marble, ink, clockwork, ...). Enabled by default — toggle off if you prefer silence.",children:i.jsx(rl,{checked:g,onCheckedChange:x})})}),i.jsx(ll,{title:"Help",Icon:Yx,tone:"model",children:i.jsx(ds,{label:"Replay Welcome Guide",description:"Show the onboarding wizard again to review platform features",children:i.jsxs(Ut,{size:"sm",variant:"default",onClick:c,disabled:!c,children:[i.jsx(Yx,{className:"h-3.5 w-3.5"}),"Replay"]})})})]})})})},zp=({value:t,label:e})=>i.jsxs(Hs,{className:"p-2 text-center",children:[i.jsx("div",{className:"text-base font-semibold text-foreground",children:t}),i.jsx("div",{className:"text-xs text-muted-foreground",children:e})]}),jz=({isOpen:t,onClose:e,result:s})=>s?i.jsx(Ll,{isOpen:t,onClose:e,title:"AI Execution Result",maxWidth:"800px",maxHeight:"90vh",children:i.jsxs("div",{className:"flex h-full flex-col",children:[i.jsxs("div",{className:"border-b border-border bg-muted p-4",children:[i.jsxs("div",{className:"mb-2 flex items-start justify-between",children:[i.jsxs("div",{children:[i.jsxs("h3",{className:"m-0 font-display text-base font-semibold tracking-[var(--type-tracking-display)] text-fg-default [text-transform:var(--type-uppercase)]",children:[s.nodeName," Result"]}),i.jsxs("p",{className:"mt-1 mb-0 text-sm text-muted-foreground",children:["Model: ",s.model," | ",qE(s.timestamp)]})]}),i.jsxs(Ut,{size:"sm",onClick:()=>o2(s.response,"Response copied to clipboard!"),children:[i.jsx(vm,{className:"h-3.5 w-3.5"}),"Copy Response"]})]}),s.usage&&i.jsxs("div",{className:"mt-2 grid grid-cols-[repeat(auto-fit,minmax(120px,1fr))] gap-2",children:[i.jsx(zp,{value:s.usage.promptTokens,label:"Prompt Tokens"}),i.jsx(zp,{value:s.usage.completionTokens,label:"Completion Tokens"}),i.jsx(zp,{value:s.usage.totalTokens,label:"Total Tokens"})]})]}),i.jsxs("div",{className:"flex-1 overflow-y-auto p-4",children:[i.jsx("h4",{className:"m-0 mb-3 text-base font-medium text-foreground",children:"Response:"}),i.jsx("div",{className:"max-h-[400px] overflow-y-auto rounded-md border border-border bg-muted p-4 font-sans text-base leading-relaxed whitespace-pre-wrap text-foreground",children:s.response})]}),i.jsxs("div",{className:"flex items-center justify-between border-t border-border bg-muted p-4",children:[i.jsx("div",{className:"text-xs text-muted-foreground",children:s.finishReason&&`Finish reason: ${s.finishReason}`}),i.jsx(Ut,{variant:"outline",onClick:e,children:"Close"})]})]})}):null,bu={apiKey:()=>ou(()=>import("./ApiKeyPanel-CPmye7uh.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10])),oauth:()=>ou(()=>import("./OAuthPanel-BDtVJhAV.js"),__vite__mapDeps([11,1,6,7,3,4,5,12,13,8,9,10])),qrPairing:()=>ou(()=>import("./QrPairingPanel-BwJehTuZ.js"),__vite__mapDeps([14,1,2,3,4,5,9,10,6,7,12,13])),email:()=>ou(()=>import("./EmailPanel-Bs-xvbKR.js"),__vite__mapDeps([15,1,7,13,3,4,5,9,10]))},Nz={apiKey:be.lazy(bu.apiKey),oauth:be.lazy(bu.oauth),qrPairing:be.lazy(bu.qrPairing),email:be.lazy(bu.email)},Cz=()=>{const t=Fe.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=i.jsx("div",{className:"flex h-full min-h-[240px] w-full items-center justify-center",children:i.jsx(mo,{className:"h-6 w-6 animate-spin text-muted-foreground"})}),t[0]=e):e=t[0],e},hb=t=>{const e=Fe.c(5),{icon:s,message:r}=t;let c;e[0]!==r?(c=i.jsx("p",{className:"text-sm text-muted-foreground",children:r}),e[0]=r,e[1]=c):c=e[1];let u;return e[2]!==s||e[3]!==c?(u=i.jsxs("div",{className:"flex h-full w-full flex-col items-center justify-center gap-3 p-8 text-center",children:[s,c]}),e[2]=s,e[3]=c,e[4]=u):u=e[4],u},Lz=t=>{const e=Fe.c(9),{config:s,visible:r}=t;let c;e:{if(!s){c=null;break e}c=Nz[s.kind]??null}const u=c;if(!s){let h;return e[0]===Symbol.for("react.memo_cache_sentinel")?(h=i.jsx(hb,{icon:i.jsx(Ei,{className:"h-8 w-8 text-muted-foreground"}),message:"Select a credential to configure"}),e[0]=h):h=e[0],h}if(!u){let h;e[1]===Symbol.for("react.memo_cache_sentinel")?(h=i.jsx(wl,{className:"h-8 w-8 text-warning"}),e[1]=h):h=e[1];const g=`Unknown credential kind: ${s.kind}`;let x;return e[2]!==g?(x=i.jsx(hb,{icon:h,message:g}),e[2]=g,e[3]=x):x=e[3],x}let f;e[4]===Symbol.for("react.memo_cache_sentinel")?(f=i.jsx(Cz,{}),e[4]=f):f=e[4];let d;return e[5]!==u||e[6]!==s||e[7]!==r?(d=i.jsx(j.Suspense,{fallback:f,children:i.jsx(u,{config:s,visible:r})}),e[5]=u,e[6]=s,e[7]=r,e[8]=d):d=e[8],d},od=0,Ra=1,zl=2,c2=4;function gb(t){return()=>t}function Ez(t){t()}function u2(t,e){return s=>t(e(s))}function xb(t,e){return()=>t(e)}function zz(t,e){return s=>t(e,s)}function Jm(t){return t!==void 0}function Mz(...t){return()=>{t.map(Ez)}}function Ml(){}function sd(t,e){return e(t),t}function Tz(t,e){return e(t)}function pn(...t){return t}function Zt(t,e){return t(Ra,e)}function gt(t,e){t(od,e)}function eh(t){t(zl)}function hn(t){return t(c2)}function Qe(t,e){return Zt(t,zz(e,od))}function Jo(t,e){const s=t(Ra,r=>{s(),e(r)});return s}function yb(t){let e,s;return r=>c=>{e=c,s&&clearTimeout(s),s=setTimeout(()=>{r(e)},t)}}function d2(t,e){return t===e}function dn(t=d2){let e;return s=>r=>{t(e,r)||(e=r,s(r))}}function st(t){return e=>s=>{t(s)&&e(s)}}function Ze(t){return e=>u2(e,t)}function ps(t){return e=>()=>{e(t)}}function Ee(t,...e){const s=Az(...e);return((r,c)=>{switch(r){case zl:eh(t);return;case Ra:return Zt(t,s(c))}})}function ms(t,e){return s=>r=>{s(e=t(e,r))}}function xr(t){return e=>s=>{t>0?t--:e(s)}}function qs(t){let e=null,s;return r=>c=>{e=c,!s&&(s=setTimeout(()=>{s=void 0,r(e)},t))}}function xt(...t){const e=new Array(t.length);let s=0,r=null;const c=2**t.length-1;return t.forEach((u,f)=>{const d=2**f;Zt(u,h=>{const g=s;s|=d,e[f]=h,g!==c&&s===c&&r&&(r(),r=null)})}),u=>f=>{const d=()=>{u([f].concat(e))};s===c?d():r=d}}function Az(...t){return e=>t.reduceRight(Tz,e)}function Oz(t){let e,s;const r=()=>e?.();return function(c,u){switch(c){case Ra:return u?s===u?void 0:(r(),s=u,e=Zt(t,u),e):(r(),Ml);case zl:r(),s=null;return}}}function Ae(t){let e=t;const s=zt();return((r,c)=>{switch(r){case od:e=c;break;case Ra:{c(e);break}case c2:return e}return s(r,c)})}function Jn(t,e){return sd(Ae(e),s=>Qe(t,s))}function zt(){const t=[];return((e,s)=>{switch(e){case od:t.slice().forEach(r=>{r(s)});return;case zl:t.splice(0,t.length);return;case Ra:return t.push(s),()=>{const r=t.indexOf(s);r>-1&&t.splice(r,1)}}})}function Lo(t){return sd(zt(),e=>Qe(t,e))}function qt(t,e=[],{singleton:s}={singleton:!0}){return{constructor:t,dependencies:e,id:Rz(),singleton:s}}const Rz=()=>Symbol();function Dz(t){const e=new Map,s=({constructor:r,dependencies:c,id:u,singleton:f})=>{if(f&&e.has(u))return e.get(u);const d=r(c.map(h=>s(h)));return f&&e.set(u,d),d};return s(t)}function An(...t){const e=zt(),s=new Array(t.length);let r=0;const c=2**t.length-1;return t.forEach((u,f)=>{const d=2**f;Zt(u,h=>{s[f]=h,r|=d,r===c&&gt(e,s)})}),function(u,f){switch(u){case zl:{eh(e);return}case Ra:return r===c&&f(s),Zt(e,f)}}}function ot(t,e=d2){return Ee(t,dn(e))}function cm(...t){return function(e,s){switch(e){case zl:return;case Ra:return Mz(...t.map(r=>Zt(r,s)))}}}const qn={DEBUG:0,INFO:1,WARN:2,ERROR:3},Iz={[qn.DEBUG]:"debug",[qn.ERROR]:"error",[qn.INFO]:"log",[qn.WARN]:"warn"},$z=()=>typeof globalThis>"u"?window:globalThis,Da=qt(()=>{const t=Ae(qn.ERROR);return{log:Ae((e,s,r=qn.INFO)=>{const c=$z().VIRTUOSO_LOG_LEVEL??hn(t);r>=c&&console[Iz[r]]("%creact-virtuoso: %c%s %o","color: #0253b3; font-weight: bold","color: initial",e,s)}),logLevel:t}},[],{singleton:!0}),um=new WeakMap;function f2(t){return"self"in t?t.document.documentElement:t}function qz(t){const e=f2(t),s=um.get(e);if(s!==void 0)return s;const r=e.ownerDocument.defaultView.getComputedStyle(e).direction==="rtl";return um.set(e,r),r}function bb(t){um.delete(f2(t))}function p2(t,e){return qz(t)?-e:e}const fr=p2;function vb(t,e){return p2(t,e)}function wr(t,e,s){return th(t,e,s).callbackRef}function th(t,e,s){const r=be.useRef(null);let c=f=>{};const u=be.useMemo(()=>typeof ResizeObserver<"u"?new ResizeObserver(f=>{const d=()=>{const h=f[0].target;h.offsetParent!==null&&t(h)};s?d():requestAnimationFrame(d)}):null,[t,s]);return c=f=>{f&&e?(u?.observe(f),r.current=f):(r.current&&u?.unobserve(r.current),r.current=null)},{callbackRef:c,ref:r}}function Hz(t,e,s,r,c,u,f,d,h){const g=be.useCallback(x=>{const y=Uz(x.children,e,d?"offsetWidth":"offsetHeight",c);let b=x.parentElement;for(;b.dataset.virtuosoScroller===void 0;)b=b.parentElement;const k=b.lastElementChild.dataset.viewportType==="window";let S;k&&(S=b.ownerDocument.defaultView);const w=f?d?f.scrollWidth:f.scrollHeight:k?d?S.document.documentElement.scrollWidth:S.document.documentElement.scrollHeight:d?b.scrollWidth:b.scrollHeight,_=f?d?f.offsetWidth:f.offsetHeight:k?d?S.innerWidth:S.innerHeight:d?b.offsetWidth:b.offsetHeight,N=f?d?fr(f,f.scrollLeft):f.scrollTop:k?d?fr(S,S.scrollX||S.document.documentElement.scrollLeft):S.scrollY||S.document.documentElement.scrollTop:d?fr(b,b.scrollLeft):b.scrollTop;r({scrollHeight:w,scrollTop:Math.max(N,0),viewportHeight:_}),u?.(d?wb("column-gap",getComputedStyle(x).columnGap,c):wb("row-gap",getComputedStyle(x).rowGap,c)),y!==null&&t(y)},[t,e,c,u,f,r,d]);return th(g,s,h)}function Uz(t,e,s,r){const c=t.length;if(c===0)return null;const u=[];for(let f=0;f<c;f++){const d=t.item(f);if(d.dataset.index===void 0)continue;const h=parseInt(d.dataset.index),g=parseFloat(d.dataset.knownSize),x=e(d,s);if(x===0&&r("Zero-sized element, this should not happen",{child:d},qn.ERROR),x===g)continue;const y=u[u.length-1];u.length===0||y.size!==x||y.endIndex!==h-1?u.push({endIndex:h,size:x,startIndex:h}):u[u.length-1].endIndex++}return u}function wb(t,e,s){return e!=="normal"&&e?.endsWith("px")!==!0&&s(`${t} was not resolved to pixel value correctly`,e,qn.WARN),e==="normal"?0:parseInt(e??"0",10)}function m2(t,e,s){const r=be.useRef(null),c=be.useCallback(h=>{if(!h?.offsetParent)return;const g=h.getBoundingClientRect(),x=g.width;let y,b;if(e){const k=e.getBoundingClientRect(),S=g.top-k.top;b=k.height-Math.max(0,S),y=S+e.scrollTop}else{const k=f.current.ownerDocument.defaultView;b=k.innerHeight-Math.max(0,g.top),y=g.top+k.scrollY}r.current={listHeight:g.height,offsetTop:y,visibleHeight:b,visibleWidth:x},t(r.current)},[t,e]),{callbackRef:u,ref:f}=th(c,!0,s),d=be.useCallback(()=>{c(f.current)},[c,f]);return be.useEffect(()=>{if(e){e.addEventListener("scroll",d);const g=new ResizeObserver(()=>{requestAnimationFrame(d)});return g.observe(e),()=>{e.removeEventListener("scroll",d),g.unobserve(e)}}const h=f.current?.ownerDocument.defaultView;return h?.addEventListener("scroll",d),h?.addEventListener("resize",d),()=>{h?.removeEventListener("scroll",d),h?.removeEventListener("resize",d)}},[d,e,f]),u}const oo=qt(()=>{const t=zt(),e=zt(),s=Ae(0),r=zt(),c=Ae(0),u=zt(),f=zt(),d=Ae(0),h=Ae(0),g=Ae(0),x=Ae(0),y=zt(),b=zt(),k=Ae(!1),S=Ae(!1),w=Ae(!1);return Qe(Ee(t,Ze(({scrollTop:_})=>_)),e),Qe(Ee(t,Ze(({scrollHeight:_})=>_)),f),Qe(e,c),{deviation:s,fixedFooterHeight:g,fixedHeaderHeight:h,footerHeight:x,headerHeight:d,horizontalDirection:S,scrollBy:b,scrollContainerState:t,scrollHeight:f,scrollingInProgress:k,scrollTo:y,scrollTop:e,skipAnimationFrameInResizeObserver:w,smoothScrollTargetReached:r,statefulScrollTop:c,viewportHeight:u}},[],{singleton:!0}),Oi={lvl:0};function h2(t,e){const s=t.length;if(s===0)return[];let{index:r,value:c}=e(t[0]);const u=[];for(let f=1;f<s;f++){const{index:d,value:h}=e(t[f]);u.push({end:d-1,start:r,value:c}),r=d,c=h}return u.push({end:1/0,start:r,value:c}),u}function en(t){return t===Oi}function Ri(t,e){if(!en(t))return e===t.k?t.v:e<t.k?Ri(t.l,e):Ri(t.r,e)}function es(t,e,s="k"){if(en(t))return[-1/0,void 0];if(Number(t[s])===e)return[t.k,t.v];if(Number(t[s])<e){const r=es(t.r,e,s);return r[0]===-1/0?[t.k,t.v]:r}return es(t.l,e,s)}function No(t,e,s){return en(t)?y2(e,s,1):e===t.k?In(t,{k:e,v:s}):e<t.k?kb(In(t,{l:No(t.l,e,s)})):kb(In(t,{r:No(t.r,e,s)}))}function bl(){return Oi}function vl(t,e,s){if(en(t))return[];const r=es(t,e)[0];return Zz(fm(t,r,s))}function dm(t,e){if(en(t))return Oi;const{k:s,l:r,r:c}=t;if(e===s){if(en(r))return c;if(en(c))return r;const[u,f]=x2(r);return Su(In(t,{k:u,l:g2(r),v:f}))}return e<s?Su(In(t,{l:dm(r,e)})):Su(In(t,{r:dm(c,e)}))}function pr(t){return en(t)?[]:[...pr(t.l),{k:t.k,v:t.v},...pr(t.r)]}function fm(t,e,s){if(en(t))return[];const{k:r,l:c,r:u,v:f}=t;let d=[];return r>e&&(d=d.concat(fm(c,e,s))),r>=e&&r<=s&&d.push({k:r,v:f}),r<=s&&(d=d.concat(fm(u,e,s))),d}function Su(t){const{l:e,lvl:s,r}=t;if(r.lvl>=s-1&&e.lvl>=s-1)return t;if(s>r.lvl+1){if(Mp(e))return b2(In(t,{lvl:s-1}));if(!en(e)&&!en(e.r))return In(e.r,{l:In(e,{r:e.r.l}),lvl:s,r:In(t,{l:e.r.r,lvl:s-1})});throw new Error("Unexpected empty nodes")}if(Mp(t))return pm(In(t,{lvl:s-1}));if(!en(r)&&!en(r.l)){const c=r.l,u=Mp(c)?r.lvl-1:r.lvl;return In(c,{l:In(t,{lvl:s-1,r:c.l}),lvl:c.lvl+1,r:pm(In(r,{l:c.r,lvl:u}))})}throw new Error("Unexpected empty nodes")}function In(t,e){return y2(e.k!==void 0?e.k:t.k,e.v!==void 0?e.v:t.v,e.lvl!==void 0?e.lvl:t.lvl,e.l!==void 0?e.l:t.l,e.r!==void 0?e.r:t.r)}function g2(t){return en(t.r)?t.l:Su(In(t,{r:g2(t.r)}))}function Mp(t){return en(t)||t.lvl>t.r.lvl}function x2(t){return en(t.r)?[t.k,t.v]:x2(t.r)}function y2(t,e,s,r=Oi,c=Oi){return{k:t,l:r,lvl:s,r:c,v:e}}function kb(t){return pm(b2(t))}function b2(t){const{l:e}=t;return!en(e)&&e.lvl===t.lvl?In(e,{r:In(t,{l:e.r})}):t}function pm(t){const{lvl:e,r:s}=t;return!en(s)&&!en(s.r)&&s.lvl===e&&s.r.lvl===e?In(s,{l:In(t,{r:s.l}),lvl:e+1}):t}function Zz(t){return h2(t,({k:e,v:s})=>({index:e,value:s}))}function v2(t,e){return!!(t&&t.startIndex===e.startIndex&&t.endIndex===e.endIndex)}function Di(t,e){return!!(t&&t[0]===e[0]&&t[1]===e[1])}const nh=qt(()=>({recalcInProgress:Ae(!1)}),[],{singleton:!0});function w2(t,e,s){return t[Ru(t,e,s)]}function Ru(t,e,s,r=0){let c=t.length-1;for(;r<=c;){const u=Math.floor((r+c)/2),f=t[u],d=s(f,e);if(d===0)return u;if(d===-1){if(c-r<2)return u-1;c=u-1}else{if(c===r)return u;r=u+1}}throw new Error(`Failed binary finding record in array - ${t.join(",")}, searched for ${e}`)}function Vz(t,e,s,r){const c=Ru(t,e,r),u=Ru(t,s,r,c);return t.slice(c,u+1)}function Ma(t,e){return Math.round(t.getBoundingClientRect()[e])}function ad(t){return!en(t.groupOffsetTree)}function oh({index:t},e){return e===t?0:e<t?-1:1}function Wz(){return{groupIndices:[],groupOffsetTree:bl(),lastIndex:0,lastOffset:0,lastSize:0,offsetTree:[],sizeTree:bl()}}function Bz(t,e){let s=en(t)?0:1/0;for(const r of e){const{endIndex:c,size:u,startIndex:f}=r;if(s=Math.min(s,f),en(t)){t=No(t,0,u);continue}const d=vl(t,f-1,c+1);if(d.some(Xz(r)))continue;let h=!1,g=!1;for(const{end:x,start:y,value:b}of d)h?(c>=y||u===b)&&(t=dm(t,y)):(g=b!==u,h=!0),x>c&&c>=y&&b!==u&&(t=No(t,c+1,b));g&&(t=No(t,f,u))}return[t,s]}function Fz(t){return typeof t.groupIndex<"u"}function Gz({offset:t},e){return e===t?0:e<t?-1:1}function Ii(t,e,s){if(e.length===0)return 0;const{index:r,offset:c,size:u}=w2(e,t,oh),f=t-r,d=u*f+(f-1)*s+c;return d>0?d+s:d}function k2(t,e){if(!ad(e))return t;let s=0;for(;e.groupIndices[s]<=t+s;)s++;return t+s}function S2(t,e,s){if(Fz(t))return e.groupIndices[t.groupIndex]+1;const r=t.index==="LAST"?s:t.index;let c=k2(r,e);return c=Math.max(0,c,Math.min(s,c)),c}function Qz(t,e,s,r=0){return r>0&&(e=Math.max(e,w2(t,r,oh).offset)),h2(Vz(t,e,s,Gz),Pz)}function Kz(t,[e,s,r,c]){e.length>0&&r("received item sizes",e,qn.DEBUG);const u=t.sizeTree;let f=u,d=0;if(s.length>0&&en(u)&&e.length===2){const b=e[0].size,k=e[1].size;f=s.reduce((S,w)=>No(No(S,w,b),w+1,k),f)}else[f,d]=Bz(f,e);if(f===u)return t;const{lastIndex:h,lastOffset:g,lastSize:x,offsetTree:y}=mm(t.offsetTree,d,f,c);return{groupIndices:s,groupOffsetTree:s.reduce((b,k)=>No(b,k,Ii(k,y,c)),bl()),lastIndex:h,lastOffset:g,lastSize:x,offsetTree:y,sizeTree:f}}function Yz(t){return pr(t).map(({k:e,v:s},r,c)=>{const u=c[r+1];return{endIndex:u!==void 0?u.k-1:1/0,size:s,startIndex:e}})}function Sb(t,e){let s=0,r=0;for(;s<t;)s+=e[r+1]-e[r]-1,r++;return r-(s===t?0:1)}function mm(t,e,s,r){let c=t,u=0,f=0,d=0,h=0;if(e!==0){h=Ru(c,e-1,oh),d=c[h].offset;const g=es(s,e-1);u=g[0],f=g[1],c.length&&c[h].size===es(s,e)[1]&&(h-=1),c=c.slice(0,h+1)}else c=[];for(const{start:g,value:x}of vl(s,e,1/0)){const y=g-u,b=y*f+d+y*r;c.push({index:g,offset:b,size:x}),u=g,d=b,f=x}return{lastIndex:u,lastOffset:d,lastSize:f,offsetTree:c}}function Pz(t){return{index:t.index,value:t}}function Xz(t){const{endIndex:e,size:s,startIndex:r}=t;return c=>c.start===r&&(c.end===e||c.end===1/0)&&c.value===s}const Jz={offsetHeight:"height",offsetWidth:"width"},hs=qt(([{log:t},{recalcInProgress:e}])=>{const s=zt(),r=zt(),c=Jn(r,0),u=zt(),f=zt(),d=Ae(0),h=Ae([]),g=Ae(void 0),x=Ae(void 0),y=Ae(void 0),b=Ae(void 0),k=Ae((M,E)=>Ma(M,Jz[E])),S=Ae(void 0),w=Ae(0),_=Wz(),N=Jn(Ee(s,xt(h,t,w),ms(Kz,_),dn()),_),L=Jn(Ee(h,dn(),ms((M,E)=>({current:E,prev:M.current}),{current:[],prev:[]}),Ze(({prev:M})=>M)),[]);Qe(Ee(h,st(M=>M.length>0),xt(N,w),Ze(([M,E,$])=>{const Q=M.reduce((H,R,D)=>No(H,R,Ii(R,E.offsetTree,$)||D),bl());return{...E,groupIndices:M,groupOffsetTree:Q}})),N),Qe(Ee(r,xt(N),st(([M,{lastIndex:E}])=>M<E),Ze(([M,{lastIndex:E,lastSize:$}])=>[{endIndex:E,size:$,startIndex:M}])),s),Qe(g,x);const z=Jn(Ee(g,Ze(M=>M===void 0)),!0);Qe(Ee(x,st(M=>M!==void 0&&en(hn(N).sizeTree)),Ze(M=>{const E=hn(y),$=hn(h).length>0;return E!==void 0&&E!==0?$?[{endIndex:0,size:E,startIndex:0},{endIndex:1,size:M,startIndex:1}]:[]:[{endIndex:0,size:M,startIndex:0}]})),s),Qe(Ee(b,st(M=>M!==void 0&&M.length>0&&en(hn(N).sizeTree)),Ze(M=>{const E=[];let $=M[0],Q=0;for(let H=1;H<M.length;H++){const R=M[H];R!==$&&(E.push({endIndex:H-1,size:$,startIndex:Q}),$=R,Q=H)}return E.push({endIndex:M.length-1,size:$,startIndex:Q}),E})),s),Qe(Ee(h,xt(y,x),st(([,M,E])=>M!==void 0&&E!==void 0),Ze(([M,E,$])=>{const Q=[];for(let H=0;H<M.length;H++){const R=M[H],D=M[H+1];Q.push({startIndex:R,endIndex:R,size:E}),D!==void 0&&Q.push({startIndex:R+1,endIndex:D-1,size:$})}return Q})),s);const O=Lo(Ee(s,xt(N),ms(({sizes:M},[E,$])=>({changed:$!==M,sizes:$}),{changed:!1,sizes:_}),Ze(M=>M.changed)));Zt(Ee(d,ms((M,E)=>({diff:M.prev-E,prev:E}),{diff:0,prev:0}),Ze(M=>M.diff)),M=>{const{groupIndices:E}=hn(N);if(M>0)gt(e,!0),gt(u,M+Sb(M,E));else if(M<0){const $=hn(L);$.length>0&&(M-=Sb(-M,$)),gt(f,M)}}),Zt(Ee(d,xt(t)),([M,E])=>{M<0&&E("`firstItemIndex` prop should not be set to less than zero. If you don't know the total count, just use a very high value",{firstItemIndex:d},qn.ERROR)});const I=Lo(u);Qe(Ee(u,xt(N),Ze(([M,E])=>{const $=E.groupIndices.length>0,Q=[],H=E.lastSize;if($){const R=Ri(E.sizeTree,0);let D=0,U=0;for(;D<M;){const T=E.groupIndices[U],A=E.groupIndices.length===U+1?1/0:E.groupIndices[U+1]-T-1;Q.push({endIndex:T,size:R,startIndex:T}),Q.push({endIndex:T+1+A-1,size:H,startIndex:T+1}),U++,D+=A+1}const W=pr(E.sizeTree);return D!==M&&W.shift(),W.reduce((T,{k:A,v:K})=>{let ne=T.ranges;return T.prevSize!==0&&(ne=[...T.ranges,{endIndex:A+M-1,size:T.prevSize,startIndex:T.prevIndex}]),{prevIndex:A+M,prevSize:K,ranges:ne}},{prevIndex:M,prevSize:0,ranges:Q}).ranges}return pr(E.sizeTree).reduce((R,{k:D,v:U})=>({prevIndex:D+M,prevSize:U,ranges:[...R.ranges,{endIndex:D+M-1,size:R.prevSize,startIndex:R.prevIndex}]}),{prevIndex:0,prevSize:H,ranges:[]}).ranges})),s);const q=Lo(Ee(f,xt(N,w),Ze(([M,{offsetTree:E},$])=>{const Q=-M;return Ii(Q,E,$)})));return Qe(Ee(f,xt(N,w),Ze(([M,E,$])=>{if(E.groupIndices.length>0){if(en(E.sizeTree))return E;let H=bl();const R=hn(L);let D=0,U=0,W=0;for(;D<-M;){W=R[U];const T=R[U+1]-W-1;U++,D+=T+1}if(H=pr(E.sizeTree).reduce((T,{k:A,v:K})=>No(T,Math.max(0,A+M),K),H),D!==-M){const T=Ri(E.sizeTree,W);H=No(H,0,T);const A=es(E.sizeTree,-M+1)[1];H=No(H,1,A)}return{...E,sizeTree:H,...mm(E.offsetTree,0,H,$)}}const Q=pr(E.sizeTree).reduce((H,{k:R,v:D})=>No(H,Math.max(0,R+M),D),bl());return{...E,sizeTree:Q,...mm(E.offsetTree,0,Q,$)}})),N),{beforeUnshiftWith:I,data:S,defaultItemSize:x,firstItemIndex:d,fixedItemSize:g,fixedGroupSize:y,gap:w,groupIndices:h,heightEstimates:b,itemSize:k,listRefresh:O,shiftWith:f,shiftWithOffset:q,sizeRanges:s,sizes:N,statefulTotalCount:c,totalCount:r,trackItemSizes:z,unshiftWith:u}},pn(Da,nh),{singleton:!0});function eM(t){return t.reduce((e,s)=>(e.groupIndices.push(e.totalCount),e.totalCount+=s+1,e),{groupIndices:[],totalCount:0})}const _2=qt(([{groupIndices:t,sizes:e,totalCount:s},{headerHeight:r,scrollTop:c}])=>{const u=zt(),f=zt(),d=Lo(Ee(u,Ze(eM)));return Qe(Ee(d,Ze(h=>h.totalCount)),s),Qe(Ee(d,Ze(h=>h.groupIndices)),t),Qe(Ee(An(c,e,r),st(([h,g])=>ad(g)),Ze(([h,g,x])=>es(g.groupOffsetTree,Math.max(h-x,0),"v")[0]),dn(),Ze(h=>[h])),f),{groupCounts:u,topItemsIndexes:f}},pn(hs,oo)),Ia=qt(([{log:t}])=>{const e=Ae(!1),s=Lo(Ee(e,st(r=>r),dn()));return Zt(e,r=>{r&&hn(t)("props updated",{},qn.DEBUG)}),{didMount:s,propsReady:e}},pn(Da),{singleton:!0}),tM=typeof document<"u"&&"scrollBehavior"in document.documentElement.style;function j2(t){const e=typeof t=="number"?{index:t}:t;return e.align||(e.align="start"),(!e.behavior||!tM)&&(e.behavior="auto"),e.offset===void 0&&(e.offset=0),e}const Bi=qt(([{gap:t,listRefresh:e,sizes:s,totalCount:r},{fixedFooterHeight:c,fixedHeaderHeight:u,footerHeight:f,headerHeight:d,scrollingInProgress:h,scrollTo:g,smoothScrollTargetReached:x,viewportHeight:y},{log:b}])=>{const k=zt(),S=zt(),w=Ae(0);let _=null,N=null,L=null;function z(){_!==null&&(_(),_=null),L!==null&&(L(),L=null),N&&(clearTimeout(N),N=null),gt(h,!1)}return Qe(Ee(k,xt(s,y,r,w,d,f,b),xt(t,u,c),Ze(([[O,I,q,M,E,$,Q,H],R,D,U])=>{const W=j2(O),{align:T,behavior:A,offset:K}=W,ne=M-1,X=S2(W,I,ne);let ue=Ii(X,I.offsetTree,R)+$;T==="end"?(ue+=D+es(I.sizeTree,X)[1]-q+U,X===ne&&(ue+=Q)):T==="center"?ue+=(D+es(I.sizeTree,X)[1]-q+U)/2:ue-=E,K!==void 0&&K!==0&&(ue+=K);const fe=pe=>{z(),pe?(H("retrying to scroll to",{location:O},qn.DEBUG),gt(k,O)):(gt(S,!0),H("list did not change, scroll successful",{},qn.DEBUG))};if(z(),A==="smooth"){let pe=!1;L=Zt(e,we=>{pe=pe||we}),_=Jo(x,()=>{fe(pe)})}else _=Jo(Ee(e,nM(150)),fe);return N=setTimeout(()=>{z()},1200),gt(h,!0),H("scrolling from index to",{behavior:A,index:X,top:ue},qn.DEBUG),{behavior:A,top:ue}})),g),{scrollTargetReached:S,scrollToIndex:k,topListHeight:w}},pn(hs,oo,Da),{singleton:!0});function nM(t){return e=>{const s=setTimeout(()=>{e(!1)},t);return r=>{r&&(e(!0),clearTimeout(s))}}}function sh(t,e){t===0?e():requestAnimationFrame(()=>{sh(t-1,e)})}function ah(t,e){const s=e-1;return typeof t=="number"?t:t.index==="LAST"?s:t.index}const Fi=qt(([{defaultItemSize:t,listRefresh:e,sizes:s},{scrollTop:r},{scrollTargetReached:c,scrollToIndex:u},{didMount:f}])=>{const d=Ae(!0),h=Ae(0),g=Ae(!0);return Qe(Ee(f,xt(h),st(([x,y])=>y!==0),ps(!1)),d),Qe(Ee(f,xt(h),st(([x,y])=>y!==0),ps(!1)),g),Zt(Ee(An(e,f),xt(d,s,t,g),st(([[,x],y,{sizeTree:b},k,S])=>x&&(!en(b)||Jm(k))&&!y&&!S),xt(h)),([,x])=>{Jo(c,()=>{gt(g,!0)}),sh(4,()=>{Jo(r,()=>{gt(d,!0)}),gt(u,x)})}),{initialItemFinalLocationReached:g,initialTopMostItemIndex:h,scrolledToInitialItem:d}},pn(hs,oo,Bi,Ia),{singleton:!0});function N2(t,e){return Math.abs(t-e)<1.01}const $i="up",Ni="down",oM="none",sM={atBottom:!1,notAtBottomBecause:"NOT_SHOWING_LAST_ITEM",state:{offsetBottom:0,scrollHeight:0,scrollTop:0,viewportHeight:0}},aM=0,Gi=qt(([{footerHeight:t,headerHeight:e,scrollBy:s,scrollContainerState:r,scrollTop:c,viewportHeight:u}])=>{const f=Ae(!1),d=Ae(!0),h=zt(),g=zt(),x=Ae(4),y=Ae(aM),b=Jn(Ee(cm(Ee(ot(c),xr(1),ps(!0)),Ee(ot(c),xr(1),ps(!1),yb(100))),dn()),!1),k=Jn(Ee(cm(Ee(s,ps(!0)),Ee(s,ps(!1),yb(200))),dn()),!1);Qe(Ee(An(ot(c),ot(y)),Ze(([L,z])=>L<=z),dn()),d),Qe(Ee(d,qs(50)),g);const S=Lo(Ee(An(r,ot(u),ot(e),ot(t),ot(x)),ms((L,[{scrollHeight:z,scrollTop:O},I,q,M,E])=>{const $=O+I-z>-E,Q={scrollHeight:z,scrollTop:O,viewportHeight:I};if($){let R,D;return O>L.state.scrollTop?(R="SCROLLED_DOWN",D=L.state.scrollTop-O):(R="SIZE_DECREASED",D=L.state.scrollTop-O||L.scrollTopDelta),{atBottom:!0,atBottomBecause:R,scrollTopDelta:D,state:Q}}let H;return Q.scrollHeight>L.state.scrollHeight?H="SIZE_INCREASED":I<L.state.viewportHeight?H="VIEWPORT_HEIGHT_DECREASING":O<L.state.scrollTop?H="SCROLLING_UPWARDS":H="NOT_FULLY_SCROLLED_TO_LAST_ITEM_BOTTOM",{atBottom:!1,notAtBottomBecause:H,state:Q}},sM),dn((L,z)=>L!==void 0&&L.atBottom===z.atBottom))),w=Jn(Ee(r,ms((L,{scrollHeight:z,scrollTop:O,viewportHeight:I})=>{if(!N2(L.scrollHeight,z)){const q=z-(O+I)<1;return L.scrollTop!==O&&q?{changed:!0,jump:L.scrollTop-O,scrollHeight:z,scrollTop:O}:{changed:!0,jump:0,scrollHeight:z,scrollTop:O}}return{changed:!1,jump:0,scrollHeight:z,scrollTop:O}},{changed:!1,jump:0,scrollHeight:0,scrollTop:0}),st(L=>L.changed),Ze(L=>L.jump)),0);Qe(Ee(S,Ze(L=>L.atBottom)),f),Qe(Ee(f,qs(50)),h);const _=Ae(Ni);Qe(Ee(r,Ze(({scrollTop:L})=>L),dn(),ms((L,z)=>hn(k)?{direction:L.direction,prevScrollTop:z}:{direction:z<L.prevScrollTop?$i:Ni,prevScrollTop:z},{direction:Ni,prevScrollTop:0}),Ze(L=>L.direction)),_),Qe(Ee(r,qs(50),ps(oM)),_);const N=Ae(0);return Qe(Ee(b,st(L=>!L),ps(0)),N),Qe(Ee(c,qs(100),xt(b),st(([L,z])=>z),ms(([L,z],[O])=>[z,O],[0,0]),Ze(([L,z])=>z-L)),N),{atBottomState:S,atBottomStateChange:h,atBottomThreshold:x,atTopStateChange:g,atTopThreshold:y,isAtBottom:f,isAtTop:d,isScrolling:b,lastJumpDueToItemResize:w,scrollDirection:_,scrollVelocity:N}},pn(oo)),qi="top",Hi="bottom",_b="none";function jb(t,e,s){return typeof t=="number"?s===$i&&e===qi||s===Ni&&e===Hi?t:0:s===$i?e===qi?t.main:t.reverse:e===Hi?t.main:t.reverse}function Nb(t,e){return typeof t=="number"?t:t[e]??0}const rh=qt(([{deviation:t,fixedHeaderHeight:e,headerHeight:s,scrollTop:r,viewportHeight:c}])=>{const u=zt(),f=Ae(0),d=Ae(0),h=Ae(0),g=Jn(Ee(An(ot(r),ot(c),ot(s),ot(u,Di),ot(h),ot(f),ot(e),ot(t),ot(d)),Ze(([x,y,b,[k,S],w,_,N,L,z])=>{const O=x-L,I=_+N,q=Math.max(b-O,0);let M=_b;const E=Nb(z,qi),$=Nb(z,Hi);return k-=L,k+=b+N,S+=b+N,S-=L,k>x+I-E&&(M=$i),S<x-q+y+$&&(M=Ni),M!==_b?[Math.max(O-b-jb(w,qi,M)-E,0),O-q-N+y+jb(w,Hi,M)+$]:null}),st(x=>x!==null),dn(Di)),[0,0]);return{increaseViewportBy:d,listBoundary:u,overscan:h,topListHeight:f,visibleRange:g}},pn(oo),{singleton:!0});function rM(t,e,s){if(ad(e)){const r=k2(t,e);return[{index:es(e.groupOffsetTree,r)[0],offset:0,size:0},{data:s?.[0],index:r,offset:0,size:0}]}return[{data:s?.[0],index:t,offset:0,size:0}]}const Tp={bottom:0,firstItemIndex:0,items:[],offsetBottom:0,offsetTop:0,top:0,topItems:[],topListHeight:0,totalCount:0};function _u(t,e,s,r,c,u){const{lastIndex:f,lastOffset:d,lastSize:h}=c;let g=0,x=0;if(t.length>0){g=t[0].offset;const w=t[t.length-1];x=w.offset+w.size}const y=s-f,b=d+y*h+(y-1)*r,k=g,S=b-x;return{bottom:x,firstItemIndex:u,items:Cb(t,c,u),offsetBottom:S,offsetTop:g,top:k,topItems:Cb(e,c,u),topListHeight:e.reduce((w,_)=>_.size+w,0),totalCount:s}}function C2(t,e,s,r,c,u){let f=0;if(s.groupIndices.length>0)for(const x of s.groupIndices){if(x-f>=t)break;f++}const d=t+f,h=ah(e,d),g=Array.from({length:d}).map((x,y)=>({data:u[y+h],index:y+h,offset:0,size:0}));return _u(g,[],d,c,s,r)}function Cb(t,e,s){if(t.length===0)return[];if(!ad(e))return t.map(g=>({...g,index:g.index+s,originalIndex:g.index}));const r=t[0].index,c=t[t.length-1].index,u=[],f=vl(e.groupOffsetTree,r,c);let d,h=0;for(const g of t){(!d||d.end<g.index)&&(d=f.shift(),h=e.groupIndices.indexOf(d.start));let x;g.index===d.start?x={index:h,type:"group"}:x={groupIndex:h,index:g.index-(h+1)+s},u.push({...x,data:g.data,offset:g.offset,originalIndex:g.index,size:g.size})}return u}function Lb(t,e){return t===void 0?0:typeof t=="number"?t:t[e]??0}const kr=qt(([{data:t,firstItemIndex:e,gap:s,sizes:r,totalCount:c},u,{listBoundary:f,topListHeight:d,visibleRange:h},{initialTopMostItemIndex:g,scrolledToInitialItem:x},{topListHeight:y},b,{didMount:k},{recalcInProgress:S}])=>{const w=Ae([]),_=Ae(0),N=zt(),L=Ae(0);Qe(u.topItemsIndexes,w);const z=Jn(Ee(An(k,S,ot(h,Di),ot(c),ot(r),ot(g),x,ot(w),ot(e),ot(s),ot(L),t),st(([M,E,,$,,,,,,,,Q])=>{const H=Q!==void 0&&Q.length!==$;return M&&!E&&!H}),Ze(([,,[M,E],$,Q,H,R,D,U,W,T,A])=>{const K=Q,{offsetTree:ne,sizeTree:X}=K,ue=hn(_);if($===0)return{...Tp,totalCount:$};if(M===0&&E===0)return ue===0?{...Tp,totalCount:$}:C2(ue,H,Q,U,W,A||[]);if(en(X))return ue>0?null:_u(rM(ah(H,$),K,A),[],$,W,K,U);const fe=[];if(D.length>0){const te=D[0],Oe=D[D.length-1];let B=0;for(const F of vl(X,te,Oe)){const oe=F.value,me=Math.max(F.start,te),Ke=Math.min(F.end,Oe);for(let tt=me;tt<=Ke;tt++)fe.push({data:A?.[tt],index:tt,offset:B,size:oe}),B+=oe}}if(!R)return _u([],fe,$,W,K,U);const pe=D.length>0?D[D.length-1]+1:0,we=Qz(ne,M,E,pe);if(we.length===0)return null;const je=$-1,ve=sd([],te=>{for(const Oe of we){const B=Oe.value;let F=B.offset,oe=Oe.start;const me=B.size;if(B.offset<M){oe+=Math.floor((M-B.offset+W)/(me+W));const tt=oe-Oe.start;F+=tt*me+tt*W}oe<pe&&(F+=(pe-oe)*me,oe=pe);const Ke=Math.min(Oe.end,je);for(let tt=oe;tt<=Ke&&!(F>=E);tt++)te.push({data:A?.[tt],index:tt,offset:F,size:me}),F+=me+W}}),Ce=Lb(T,qi),ce=Lb(T,Hi);if(ve.length>0&&(Ce>0||ce>0)){const te=ve[0],Oe=ve[ve.length-1];if(Ce>0&&te.index>pe){const B=Math.min(Ce,te.index-pe),F=[];let oe=te.offset;for(let me=te.index-1;me>=te.index-B;me--){const Ke=vl(X,me,me)[0]?.value??te.size;oe-=Ke+W,F.unshift({data:A?.[me],index:me,offset:oe,size:Ke})}ve.unshift(...F)}if(ce>0&&Oe.index<je){const B=Math.min(ce,je-Oe.index);let F=Oe.offset+Oe.size+W;for(let oe=Oe.index+1;oe<=Oe.index+B;oe++){const me=vl(X,oe,oe)[0]?.value??Oe.size;ve.push({data:A?.[oe],index:oe,offset:F,size:me}),F+=me+W}}}return _u(ve,fe,$,W,K,U)}),st(M=>M!==null),dn()),Tp);Qe(Ee(t,st(Jm),Ze(M=>M?.length)),c),Qe(Ee(z,Ze(M=>M.topListHeight)),y),Qe(y,d),Qe(Ee(z,Ze(M=>[M.top,M.bottom])),f),Qe(Ee(z,Ze(M=>M.items)),N);const O=Lo(Ee(z,st(({items:M})=>M.length>0),xt(c,t),st(([{items:M},E])=>M[M.length-1].originalIndex===E-1),Ze(([,M,E])=>[M-1,E]),dn(Di),Ze(([M])=>M))),I=Lo(Ee(z,qs(200),st(({items:M,topItems:E})=>M.length>0&&M[0].originalIndex===E.length),Ze(({items:M})=>M[0].index),dn())),q=Lo(Ee(z,st(({items:M})=>M.length>0),Ze(({items:M})=>{let E=0,$=M.length-1;for(;M[E].type==="group"&&E<$;)E++;for(;M[$].type==="group"&&$>E;)$--;return{endIndex:M[$].index,startIndex:M[E].index}}),dn(v2)));return{endReached:O,initialItemCount:_,itemsRendered:N,listState:z,minOverscanItemCount:L,rangeChanged:q,startReached:I,topItemsIndexes:w,...b}},pn(hs,_2,rh,Fi,Bi,Gi,Ia,nh),{singleton:!0}),L2=qt(([{fixedFooterHeight:t,fixedHeaderHeight:e,footerHeight:s,headerHeight:r},{listState:c}])=>{const u=zt(),f=Jn(Ee(An(s,t,r,e,c),Ze(([d,h,g,x,y])=>d+h+g+x+y.offsetBottom+y.bottom)),0);return Qe(ot(f),u),{totalListHeight:f,totalListHeightChanged:u}},pn(oo,kr),{singleton:!0}),lM=qt(([{viewportHeight:t},{totalListHeight:e}])=>{const s=Ae(!1),r=Jn(Ee(An(s,t,e),st(([c])=>c),Ze(([,c,u])=>Math.max(0,c-u)),qs(0),dn()),0);return{alignToBottom:s,paddingTopAddition:r}},pn(oo,L2),{singleton:!0}),E2=qt(()=>({context:Ae(null)})),iM=({itemBottom:t,itemTop:e,locationParams:{align:s,behavior:r,...c},viewportBottom:u,viewportTop:f})=>e<f?{...c,align:s??"start",...r!==void 0?{behavior:r}:{}}:t>u?{...c,align:s??"end",...r!==void 0?{behavior:r}:{}}:null,z2=qt(([{gap:t,sizes:e,totalCount:s},{fixedFooterHeight:r,fixedHeaderHeight:c,headerHeight:u,scrollingInProgress:f,scrollTop:d,viewportHeight:h},{scrollToIndex:g}])=>{const x=zt();return Qe(Ee(x,xt(e,h,s,u,c,r,d),xt(t),Ze(([[y,b,k,S,w,_,N,L],z])=>{const{calculateViewLocation:O=iM,done:I,...q}=y,M=S2(y,b,S-1),E=Ii(M,b.offsetTree,z)+w+_,$=E+es(b.sizeTree,M)[1],Q=L+_,H=L+k-N,R=O({itemBottom:$,itemTop:E,locationParams:q,viewportBottom:H,viewportTop:Q});return R!==null?I&&Jo(Ee(f,st(D=>!D),xr(hn(f)?1:2)),I):I?.(),R}),st(y=>y!==null)),g),{scrollIntoView:x}},pn(hs,oo,Bi,kr,Da),{singleton:!0});function Eb(t){return t===!1?!1:t==="smooth"?"smooth":"auto"}const cM=(t,e)=>typeof t=="function"?Eb(t(e)):e&&Eb(t),uM=qt(([{listRefresh:t,totalCount:e,fixedItemSize:s,data:r},{atBottomState:c,isAtBottom:u},{scrollToIndex:f},{scrolledToInitialItem:d},{didMount:h,propsReady:g},{log:x},{scrollingInProgress:y},{context:b},{scrollIntoView:k}])=>{const S=Ae(!1),w=zt();let _=null;function N(I){gt(f,{align:"end",behavior:I,index:"LAST"})}Zt(Ee(An(Ee(ot(e),xr(1)),h),xt(ot(S),u,d,y),Ze(([[I,q],M,E,$,Q])=>{let H=q&&$,R="auto";return H&&(R=cM(M,E||Q),H=H&&R!==!1),{followOutputBehavior:R,shouldFollow:H,totalCount:I}}),st(({shouldFollow:I})=>I)),({followOutputBehavior:I,totalCount:q})=>{_!==null&&(_(),_=null),hn(s)!==void 0?requestAnimationFrame(()=>{hn(x)("following output to ",{totalCount:q},qn.DEBUG),N(I)}):_=Jo(t,()=>{hn(x)("following output to ",{totalCount:q},qn.DEBUG),N(I),_=null})});function L(I){const q=Jo(c,M=>{I&&!M.atBottom&&M.notAtBottomBecause==="SIZE_INCREASED"&&_===null&&(hn(x)("scrolling to bottom due to increased size",{},qn.DEBUG),N("auto"))});setTimeout(q,100)}Zt(Ee(An(ot(S),e,g),st(([I,,q])=>I!==!1&&q),ms(({value:I},[,q])=>({refreshed:I===q,value:q}),{refreshed:!1,value:0}),st(({refreshed:I})=>I),xt(S,e)),([,I])=>{hn(d)&&L(I!==!1)}),Zt(w,()=>{L(hn(S)!==!1)}),Zt(An(ot(S),c),([I,q])=>{I!==!1&&!q.atBottom&&q.notAtBottomBecause==="VIEWPORT_HEIGHT_DECREASING"&&N("auto")});const z=Ae(null),O=zt();return Qe(cm(Ee(ot(r),Ze(I=>I?.length??0)),Ee(ot(e))),O),Zt(Ee(An(Ee(O,xr(1)),h),xt(ot(z),d,y,b),Ze(([[I,q],M,E,$,Q])=>q&&E&&M?.({context:Q,totalCount:I,scrollingInProgress:$})),st(I=>!!I),qs(0)),I=>{_!==null&&(_(),_=null),hn(s)!==void 0?requestAnimationFrame(()=>{hn(x)("scrolling into view",{}),gt(k,I)}):_=Jo(t,()=>{hn(x)("scrolling into view",{}),gt(k,I),_=null})}),{autoscrollToBottom:w,followOutput:S,scrollIntoViewOnChange:z}},pn(hs,Gi,Bi,Fi,Ia,Da,oo,E2,z2)),dM=qt(([{data:t,firstItemIndex:e,gap:s,sizes:r},{initialTopMostItemIndex:c},{initialItemCount:u,listState:f},{didMount:d}])=>(Qe(Ee(d,xt(u),st(([,h])=>h!==0),xt(c,r,e,s,t),Ze(([[,h],g,x,y,b,k=[]])=>C2(h,g,x,y,b,k))),f),{}),pn(hs,Fi,kr,Ia),{singleton:!0}),fM=qt(([{didMount:t},{scrollTo:e},{listState:s}])=>{const r=Ae(0);return Zt(Ee(t,xt(r),st(([,c])=>c!==0),Ze(([,c])=>({top:c}))),c=>{Jo(Ee(s,xr(1),st(u=>u.items.length>1)),()=>{requestAnimationFrame(()=>{gt(e,c)})})}),{initialScrollTop:r}},pn(Ia,oo,kr),{singleton:!0}),M2=qt(([{scrollVelocity:t}])=>{const e=Ae(!1),s=zt(),r=Ae(!1);return Qe(Ee(t,xt(r,e,s),st(([c,u])=>u!==!1&&u!==void 0),Ze(([c,u,f,d])=>{const{enter:h,exit:g}=u;if(f){if(g(c,d))return!1}else if(h(c,d))return!0;return f}),dn()),e),Zt(Ee(An(e,t,s),xt(r)),([[c,u,f],d])=>{c&&d!==!1&&d!==void 0&&d.change&&d.change(u,f)}),{isSeeking:e,scrollSeekConfiguration:r,scrollSeekRangeChanged:s,scrollVelocity:t}},pn(Gi),{singleton:!0}),lh=qt(([{scrollContainerState:t,scrollTo:e}])=>{const s=zt(),r=zt(),c=zt(),u=Ae(!1),f=Ae(void 0);return Qe(Ee(An(s,r),Ze(([{scrollTop:d,viewportHeight:h},{offsetTop:g,listHeight:x}])=>({scrollHeight:x,scrollTop:Math.max(0,d-g),viewportHeight:h}))),t),Qe(Ee(e,xt(r),Ze(([d,{offsetTop:h}])=>({...d,top:d.top+h}))),c),{customScrollParent:f,useWindowScroll:u,windowScrollContainerState:s,windowScrollTo:c,windowViewportRect:r}},pn(oo)),pM=qt(([{sizeRanges:t,sizes:e},{headerHeight:s,scrollTop:r},{initialTopMostItemIndex:c},{didMount:u},{useWindowScroll:f,windowScrollContainerState:d,windowViewportRect:h}])=>{const g=zt(),x=Ae(void 0),y=Ae(null),b=Ae(null);return Qe(d,y),Qe(h,b),Zt(Ee(g,xt(e,r,f,y,b,s)),([k,S,w,_,N,L,z])=>{const O=Yz(S.sizeTree);_&&N!==null&&L!==null&&(w=N.scrollTop-L.offsetTop),w-=z,k({ranges:O,scrollTop:w})}),Qe(Ee(x,st(Jm),Ze(mM)),c),Qe(Ee(u,xt(x),st(([,k])=>k!==void 0),dn(),Ze(([,k])=>k.ranges)),t),{getState:g,restoreStateFrom:x}},pn(hs,oo,Fi,Ia,lh));function mM(t){return{align:"start",index:0,offset:t.scrollTop}}const hM=qt(([{topItemsIndexes:t}])=>{const e=Ae(0);return Qe(Ee(e,st(s=>s>=0),Ze(s=>Array.from({length:s}).map((r,c)=>c))),t),{topItemCount:e}},pn(kr));function T2(t){let e=!1,s;return(()=>(e||(e=!0,s=t()),s))}const gM=T2(()=>/iP(ad|od|hone)/i.test(navigator.userAgent)&&/WebKit/i.test(navigator.userAgent)),xM=qt(([{deviation:t,scrollBy:e,scrollingInProgress:s,scrollTop:r},{isAtBottom:c,isScrolling:u,lastJumpDueToItemResize:f,scrollDirection:d},{listState:h},{beforeUnshiftWith:g,gap:x,shiftWithOffset:y,sizes:b},{log:k},{recalcInProgress:S}])=>{const w=Lo(Ee(h,xt(f),ms(([,N,L,z],[{bottom:O,items:I,offsetBottom:q,totalCount:M},E])=>{const $=O+q;let Q=0;return L===M&&N.length>0&&I.length>0&&(I[0].originalIndex===0&&N[0].originalIndex===0||(Q=$-z,Q!==0&&(Q+=E))),[Q,I,M,$]},[0,[],0,0]),st(([N])=>N!==0),xt(r,d,s,c,k,S),st(([,N,L,z,,,O])=>!O&&!z&&N!==0&&L===$i),Ze(([[N],,,,,L])=>(L("Upward scrolling compensation",{amount:N},qn.DEBUG),N))));function _(N){N>0?(gt(e,{behavior:"auto",top:-N}),gt(t,0)):(gt(t,0),gt(e,{behavior:"auto",top:-N}))}return Zt(Ee(w,xt(t,u)),([N,L,z])=>{z&&gM()?gt(t,L-N):_(-N)}),Zt(Ee(An(Jn(u,!1),t,S),st(([N,L,z])=>!N&&!z&&L!==0),Ze(([N,L])=>L),qs(1)),_),Qe(Ee(y,Ze(N=>({top:-N}))),e),Zt(Ee(g,xt(b,x),Ze(([N,{groupIndices:L,lastSize:z,sizeTree:O},I])=>{function q(H){return H*(z+I)}if(L.length===0)return q(N);let M=0;const E=Ri(O,0);let $=0,Q=0;for(;$<N;){$++,M+=E;let H=L.length===Q+1?1/0:L[Q+1]-L[Q]-1;$+H>N&&(M-=E,H=N-$+1),$+=H,M+=q(H),Q++}return M})),N=>{gt(t,N),requestAnimationFrame(()=>{gt(e,{top:N}),requestAnimationFrame(()=>{gt(t,0),gt(S,!1)})})}),{deviation:t}},pn(oo,Gi,kr,hs,Da,nh)),yM=qt(([t,e,s,r,c,u,f,d,h,g,x])=>({...t,...e,...s,...r,...c,...u,...f,...d,...h,...g,...x}),pn(rh,dM,Ia,M2,L2,fM,lM,lh,z2,Da,E2)),A2=qt(([{data:t,defaultItemSize:e,firstItemIndex:s,fixedItemSize:r,fixedGroupSize:c,gap:u,groupIndices:f,heightEstimates:d,itemSize:h,sizeRanges:g,sizes:x,statefulTotalCount:y,totalCount:b,trackItemSizes:k},{initialItemFinalLocationReached:S,initialTopMostItemIndex:w,scrolledToInitialItem:_},N,L,z,O,{scrollToIndex:I},q,{topItemCount:M},{groupCounts:E},$])=>{const{listState:Q,minOverscanItemCount:H,topItemsIndexes:R,rangeChanged:D,...U}=O;return Qe(D,$.scrollSeekRangeChanged),Qe(Ee($.windowViewportRect,Ze(W=>W.visibleHeight)),N.viewportHeight),{data:t,defaultItemHeight:e,firstItemIndex:s,fixedItemHeight:r,fixedGroupHeight:c,gap:u,groupCounts:E,heightEstimates:d,initialItemFinalLocationReached:S,initialTopMostItemIndex:w,scrolledToInitialItem:_,sizeRanges:g,topItemCount:M,topItemsIndexes:R,totalCount:b,...z,groupIndices:f,itemSize:h,listState:Q,minOverscanItemCount:H,scrollToIndex:I,statefulTotalCount:y,trackItemSizes:k,rangeChanged:D,...U,...$,...N,sizes:x,...L}},pn(hs,Fi,oo,pM,uM,kr,Bi,xM,hM,_2,yM));function bM(t,e){const s={},r={};let c=0;const u=t.length;for(;c<u;)r[t[c]]=1,c+=1;for(const f in e)Object.hasOwn(r,f)||(s[f]=e[f]);return s}const vu=typeof document<"u"?be.useLayoutEffect:be.useEffect;function O2(t,e,s){const r=Object.keys(e.required||{}),c=Object.keys(e.optional||{}),u=Object.keys(e.methods||{}),f=Object.keys(e.events||{}),d=be.createContext({});function h(_,N){_.propsReady!==void 0&&gt(_.propsReady,!1);for(const L of r){const z=_[e.required[L]];gt(z,N[L])}for(const L of c)if(L in N){const z=_[e.optional[L]];gt(z,N[L])}_.propsReady!==void 0&&gt(_.propsReady,!0)}function g(_){return u.reduce((N,L)=>(N[L]=z=>{const O=_[e.methods[L]];gt(O,z)},N),{})}function x(_){return f.reduce((N,L)=>(N[L]=Oz(_[e.events[L]]),N),{})}const y=be.forwardRef(function(_,N){const{children:L,...z}=_,[O]=be.useState(()=>sd(Dz(t),M=>{h(M,z)})),[I]=be.useState(xb(x,O));vu(()=>{for(const M of f)M in z&&Zt(I[M],z[M]);return()=>{Object.values(I).map(eh)}},[z,I,O]),vu(()=>{h(O,z)}),be.useImperativeHandle(N,gb(g(O)));const q=s;return i.jsx(d.Provider,{value:O,children:s!==void 0?i.jsx(q,{...bM([...r,...c,...f],z),children:L}):L})}),b=_=>{const N=be.useContext(d);return be.useCallback(L=>{gt(N[_],L)},[N,_])},k=_=>{const N=be.useContext(d)[_],L=be.useCallback(z=>Zt(N,z),[N]);return be.useSyncExternalStore(L,()=>hn(N),()=>hn(N))},S=_=>{const N=be.useContext(d)[_],[L,z]=be.useState(xb(hn,N));return vu(()=>Zt(N,O=>{O!==L&&z(gb(O))}),[N,L]),L},w=parseInt(be.version)>=18?k:S;return{Component:y,useEmitter:(_,N)=>{const L=be.useContext(d)[_];vu(()=>Zt(L,N),[N,L])},useEmitterValue:w,usePublisher:b}}const R2=be.createContext(void 0),D2=be.createContext(void 0),Ap="-webkit-sticky",zb="sticky",ih=T2(()=>{if(typeof document>"u")return zb;const t=document.createElement("div");return t.style.position=Ap,t.style.position===Ap?Ap:zb}),I2=typeof document<"u"?be.useLayoutEffect:be.useEffect;function Op(t){return"self"in t}function vM(t){return"body"in t}function $2(t,e,s,r=Ml,c,u){const f=be.useRef(null),d=be.useRef(null),h=be.useRef(null),g=be.useCallback(b=>{let k,S,w;const _=b.target;if(vM(_)||Op(_)){const L=Op(_)?_:_.defaultView;w=u===!0?fr(L,L.scrollX):L.scrollY,k=u===!0?L.document.documentElement.scrollWidth:L.document.documentElement.scrollHeight,S=u===!0?L.innerWidth:L.innerHeight}else w=u===!0?fr(_,_.scrollLeft):_.scrollTop,k=u===!0?_.scrollWidth:_.scrollHeight,S=u===!0?_.offsetWidth:_.offsetHeight;const N=()=>{t({scrollHeight:k,scrollTop:Math.max(w,0),viewportHeight:S})};b.suppressFlushSync===!0?N():fS.flushSync(N),d.current!==null&&(w===d.current||w<=0||w===k-S)&&(d.current=null,e(!0),h.current&&(clearTimeout(h.current),h.current=null))},[t,e,u]);be.useEffect(()=>{const b=c||f.current;return bb(b),r(c||f.current),g({suppressFlushSync:!0,target:b}),b.addEventListener("scroll",g,{passive:!0}),()=>{bb(b),r(null),b.removeEventListener("scroll",g)}},[f,g,s,r,c]);function x(b){const k=f.current;if(!k||(u===!0?"offsetWidth"in k&&k.offsetWidth===0:"offsetHeight"in k&&k.offsetHeight===0))return;const S=b.behavior==="smooth";let w,_,N;Op(k)?(_=Math.max(Ma(k.document.documentElement,u===!0?"width":"height"),u===!0?k.document.documentElement.scrollWidth:k.document.documentElement.scrollHeight),w=u===!0?k.innerWidth:k.innerHeight,N=u===!0?fr(k,k.scrollX):k.scrollY):(_=k[u===!0?"scrollWidth":"scrollHeight"],w=Ma(k,u===!0?"width":"height"),N=u===!0?fr(k,k.scrollLeft):k.scrollTop);const L=_-w;if(b.top===void 0){k.scrollTo(b);return}const z=Math.ceil(Math.max(Math.min(L,b.top),0));if(b.top=z,N2(w,_)||z===N){t({scrollHeight:_,scrollTop:N,viewportHeight:w}),S&&e(!0);return}S?(d.current=z,h.current&&clearTimeout(h.current),h.current=setTimeout(()=>{h.current=null,d.current=null,e(!0)},1e3)):d.current=null,u===!0&&(b={...b.behavior!==void 0?{behavior:b.behavior}:{},left:vb(k,z)}),k.scrollTo(b)}function y(b){u===!0&&(b={...b.behavior!==void 0?{behavior:b.behavior}:{},...b.top!==void 0?{left:vb(f.current,b.top)}:{}}),f.current.scrollBy(b)}return{scrollByCallback:y,scrollerRef:f,scrollToCallback:x}}function ch(t){return t}const wM=qt(()=>{const t=Ae(d=>`Item ${d}`),e=Ae(d=>`Group ${d}`),s=Ae({}),r=Ae(ch),c=Ae("div"),u=Ae(Ml),f=(d,h=null)=>Jn(Ee(s,Ze(g=>g[d]),dn()),h);return{components:s,computeItemKey:r,EmptyPlaceholder:f("EmptyPlaceholder"),FooterComponent:f("Footer"),GroupComponent:f("Group","div"),groupContent:e,HeaderComponent:f("Header"),HeaderFooterTag:c,ItemComponent:f("Item","div"),itemContent:t,ListComponent:f("List","div"),ScrollerComponent:f("Scroller","div"),scrollerRef:u,ScrollSeekPlaceholder:f("ScrollSeekPlaceholder"),TopItemListComponent:f("TopItemList")}}),kM=qt(([t,e])=>({...t,...e}),pn(A2,wM)),SM=({height:t})=>i.jsx("div",{style:{height:t}}),_M={overflowAnchor:"none",position:ih(),zIndex:1},q2={overflowAnchor:"none"},jM={...q2,display:"inline-block",height:"100%"},Mb=be.memo(function({showTopList:t=!1}){const e=ct("listState"),s=Ho("sizeRanges"),r=ct("useWindowScroll"),c=ct("customScrollParent"),u=Ho("windowScrollContainerState"),f=Ho("scrollContainerState"),d=c||r?u:f,h=ct("itemContent"),g=ct("context"),x=ct("groupContent"),y=ct("trackItemSizes"),b=ct("itemSize"),k=ct("log"),S=Ho("gap"),w=ct("horizontalDirection"),{callbackRef:_}=Hz(s,b,y,t?Ml:d,k,S,c,w,ct("skipAnimationFrameInResizeObserver")),[N,L]=be.useState(0);dh("deviation",U=>{N!==U&&L(U)});const z=ct("EmptyPlaceholder"),O=ct("ScrollSeekPlaceholder")??SM,I=ct("ListComponent"),q=ct("ItemComponent"),M=ct("GroupComponent"),E=ct("computeItemKey"),$=ct("isSeeking"),Q=ct("groupIndices").length>0,H=ct("alignToBottom"),R=ct("initialItemFinalLocationReached"),D=t?{}:{boxSizing:"border-box",...w?{display:"inline-block",height:"100%",marginInlineStart:N!==0?N:H?"auto":0,paddingInlineEnd:e.offsetBottom,paddingInlineStart:e.offsetTop,whiteSpace:"nowrap"}:{marginTop:N!==0?N:H?"auto":0,paddingBottom:e.offsetBottom,paddingTop:e.offsetTop},...R?{}:{visibility:"hidden"}};return!t&&e.totalCount===0&&z!==null&&z!==void 0?i.jsx(z,{...Xn(z,g)}):i.jsx(I,{...Xn(I,g),"data-testid":t?"virtuoso-top-item-list":"virtuoso-item-list",ref:_,style:D,children:(t?e.topItems:e.items).map(U=>{const W=U.originalIndex,T=E(W+e.firstItemIndex,U.data,g);return $?j.createElement(O,{...Xn(O,g),height:U.size,index:U.index,key:T,type:U.type||"item",...U.type==="group"?{}:{groupIndex:U.groupIndex}}):U.type==="group"?j.createElement(M,{...Xn(M,g),"data-index":W,"data-item-index":U.index,"data-known-size":U.size,key:T,style:_M},x(U.index,g)):j.createElement(q,{...Xn(q,g),...EM(q,U.data),"data-index":W,"data-item-group-index":U.groupIndex,"data-item-index":U.index,"data-known-size":U.size,key:T,style:w?jM:q2},Q?h(U.index,U.groupIndex,U.data,g):h(U.index,U.data,g))})})}),NM={height:"100%",outline:"none",overflowY:"auto",position:"relative",WebkitOverflowScrolling:"touch"},CM={outline:"none",overflowX:"auto",position:"relative"},uh=t=>({height:"100%",position:"absolute",top:0,width:"100%",...t?{display:"flex",flexDirection:"column"}:void 0}),H2=(t,e,s=0)=>({...uh(t),position:e?"relative":"absolute",top:e?-s:0}),LM={position:ih(),top:0,width:"100%",zIndex:1};function Xn(t,e){if(typeof t!="string")return{context:e}}function EM(t,e){return{item:typeof t=="string"?void 0:e}}const zM=be.memo(function(){const t=ct("HeaderComponent"),e=Ho("headerHeight"),s=ct("HeaderFooterTag"),r=wr(be.useMemo(()=>u=>{e(Ma(u,"height"))},[e]),!0,ct("skipAnimationFrameInResizeObserver")),c=ct("context");return t!=null?i.jsx(s,{ref:r,children:i.jsx(t,{...Xn(t,c)})}):null}),MM=be.memo(function(){const t=ct("FooterComponent"),e=Ho("footerHeight"),s=ct("HeaderFooterTag"),r=wr(be.useMemo(()=>u=>{e(Ma(u,"height"))},[e]),!0,ct("skipAnimationFrameInResizeObserver")),c=ct("context");return t!=null?i.jsx(s,{ref:r,children:i.jsx(t,{...Xn(t,c)})}):null});function U2({useEmitter:t,useEmitterValue:e,usePublisher:s}){return be.memo(function({children:r,style:c,context:u,...f}){const d=s("scrollContainerState"),h=e("ScrollerComponent"),g=s("smoothScrollTargetReached"),x=e("scrollerRef"),y=e("horizontalDirection")||!1,{scrollByCallback:b,scrollerRef:k,scrollToCallback:S}=$2(d,g,h,x,void 0,y);return t("scrollTo",S),t("scrollBy",b),i.jsx(h,{"data-testid":"virtuoso-scroller","data-virtuoso-scroller":!0,ref:k,style:{...y?CM:NM,...c},tabIndex:0,...f,...Xn(h,u),children:r})})}function Z2({useEmitter:t,useEmitterValue:e,usePublisher:s}){return be.memo(function({children:r,style:c,context:u,...f}){const d=s("windowScrollContainerState"),h=e("ScrollerComponent"),g=s("smoothScrollTargetReached"),x=e("totalListHeight"),y=e("deviation"),b=e("customScrollParent"),k=be.useRef(null),S=e("scrollerRef"),{scrollByCallback:w,scrollerRef:_,scrollToCallback:N}=$2(d,g,h,S,b);return I2(()=>(_.current=b||k.current?.ownerDocument.defaultView,()=>{_.current=null}),[_,b]),t("windowScrollTo",N),t("scrollBy",w),i.jsx(h,{ref:k,"data-virtuoso-scroller":!0,style:{position:"relative",...c,...x!==0?{height:x+y}:void 0},...f,...Xn(h,u),children:r})})}const TM=({children:t})=>{const e=be.useContext(R2),s=Ho("viewportHeight"),r=Ho("fixedItemHeight"),c=ct("alignToBottom"),u=ct("horizontalDirection"),f=be.useMemo(()=>u2(s,h=>Ma(h,u?"width":"height")),[s,u]),d=wr(f,!0,ct("skipAnimationFrameInResizeObserver"));return be.useEffect(()=>{e&&(s(e.viewportHeight),r(e.itemHeight))},[e,s,r]),i.jsx("div",{"data-viewport-type":"element",ref:d,style:uh(c),children:t})},AM=({children:t})=>{const e=be.useContext(R2),s=Ho("windowViewportRect"),r=Ho("fixedItemHeight"),c=ct("customScrollParent"),u=ct("useWindowScroll"),f=ct("topListHeight"),d=m2(s,c,ct("skipAnimationFrameInResizeObserver")),h=ct("alignToBottom");return be.useEffect(()=>{e&&(r(e.itemHeight),s({listHeight:0,offsetTop:0,visibleHeight:e.viewportHeight,visibleWidth:100}))},[e,s,r]),i.jsx("div",{"data-viewport-type":"window",ref:d,style:H2(h,u,f),children:t})},OM=({children:t})=>{const e=ct("TopItemListComponent")??"div",s=ct("headerHeight"),r={...LM,marginTop:`${s}px`},c=ct("context");return i.jsx(e,{style:r,...Xn(e,c),children:t})},RM=be.memo(function(t){const e=ct("useWindowScroll"),s=ct("topItemsIndexes").length>0,r=ct("customScrollParent"),c=ct("context");return i.jsxs(r||e?$M:IM,{...t,context:c,children:[s&&i.jsx(OM,{children:i.jsx(Mb,{showTopList:!0})}),i.jsxs(r||e?AM:TM,{children:[i.jsx(zM,{}),i.jsx(Mb,{}),i.jsx(MM,{})]})]})}),{Component:DM,useEmitter:dh,useEmitterValue:ct,usePublisher:Ho}=O2(kM,{optional:{restoreStateFrom:"restoreStateFrom",context:"context",followOutput:"followOutput",scrollIntoViewOnChange:"scrollIntoViewOnChange",itemContent:"itemContent",groupContent:"groupContent",overscan:"overscan",increaseViewportBy:"increaseViewportBy",minOverscanItemCount:"minOverscanItemCount",totalCount:"totalCount",groupCounts:"groupCounts",topItemCount:"topItemCount",firstItemIndex:"firstItemIndex",initialTopMostItemIndex:"initialTopMostItemIndex",components:"components",atBottomThreshold:"atBottomThreshold",atTopThreshold:"atTopThreshold",computeItemKey:"computeItemKey",defaultItemHeight:"defaultItemHeight",fixedGroupHeight:"fixedGroupHeight",fixedItemHeight:"fixedItemHeight",heightEstimates:"heightEstimates",itemSize:"itemSize",scrollSeekConfiguration:"scrollSeekConfiguration",headerFooterTag:"HeaderFooterTag",data:"data",initialItemCount:"initialItemCount",initialScrollTop:"initialScrollTop",alignToBottom:"alignToBottom",useWindowScroll:"useWindowScroll",customScrollParent:"customScrollParent",scrollerRef:"scrollerRef",logLevel:"logLevel",horizontalDirection:"horizontalDirection",skipAnimationFrameInResizeObserver:"skipAnimationFrameInResizeObserver"},methods:{scrollToIndex:"scrollToIndex",scrollIntoView:"scrollIntoView",scrollTo:"scrollTo",scrollBy:"scrollBy",autoscrollToBottom:"autoscrollToBottom",getState:"getState"},events:{isScrolling:"isScrolling",endReached:"endReached",startReached:"startReached",rangeChanged:"rangeChanged",atBottomStateChange:"atBottomStateChange",atTopStateChange:"atTopStateChange",totalListHeightChanged:"totalListHeightChanged",itemsRendered:"itemsRendered",groupIndices:"groupIndices"}},RM),IM=U2({useEmitter:dh,useEmitterValue:ct,usePublisher:Ho}),$M=Z2({useEmitter:dh,useEmitterValue:ct,usePublisher:Ho}),qM=DM,HM=qt(()=>{const t=Ae(g=>i.jsxs("td",{children:["Item $",g]})),e=Ae(null),s=Ae(g=>i.jsxs("td",{colSpan:1e3,children:["Group ",g]})),r=Ae(null),c=Ae(null),u=Ae({}),f=Ae(ch),d=Ae(Ml),h=(g,x=null)=>Jn(Ee(u,Ze(y=>y[g]),dn()),x);return{components:u,computeItemKey:f,context:e,EmptyPlaceholder:h("EmptyPlaceholder"),FillerRow:h("FillerRow"),fixedFooterContent:c,fixedHeaderContent:r,itemContent:t,groupContent:s,ScrollerComponent:h("Scroller","div"),scrollerRef:d,ScrollSeekPlaceholder:h("ScrollSeekPlaceholder"),TableBodyComponent:h("TableBody","tbody"),TableComponent:h("Table","table"),TableFooterComponent:h("TableFoot","tfoot"),TableHeadComponent:h("TableHead","thead"),TableRowComponent:h("TableRow","tr"),GroupComponent:h("Group","tr")}});pn(A2,HM);ih();const Tb={bottom:0,itemHeight:0,items:[],itemWidth:0,offsetBottom:0,offsetTop:0,top:0},UM={bottom:0,itemHeight:0,items:[{index:0}],itemWidth:0,offsetBottom:0,offsetTop:0,top:0},{ceil:Ab,floor:Du,max:Ci,min:Rp,round:Ob}=Math;function Rb(t,e,s){return Array.from({length:e-t+1}).map((r,c)=>({data:s===null?null:s[c+t],index:c+t}))}function ZM(t){return{...UM,items:t}}function wu(t,e){return t!==void 0&&t.width===e.width&&t.height===e.height}function VM(t,e){return t!==void 0&&t.column===e.column&&t.row===e.row}const WM=qt(([{increaseViewportBy:t,listBoundary:e,overscan:s,visibleRange:r},{footerHeight:c,headerHeight:u,scrollBy:f,scrollContainerState:d,scrollTo:h,scrollTop:g,smoothScrollTargetReached:x,viewportHeight:y},b,k,{didMount:S,propsReady:w},{customScrollParent:_,useWindowScroll:N,windowScrollContainerState:L,windowScrollTo:z,windowViewportRect:O},I])=>{const q=Ae(0),M=Ae(0),E=Ae(Tb),$=Ae({height:0,width:0}),Q=Ae({height:0,width:0}),H=zt(),R=zt(),D=Ae(0),U=Ae(null),W=Ae({column:0,row:0}),T=zt(),A=zt(),K=Ae(!1),ne=Ae(0),X=Ae(!0),ue=Ae(!1),fe=Ae(!1);Zt(Ee(S,xt(ne),st(([ce,te])=>te!==0)),()=>{gt(X,!1)}),Zt(Ee(An(S,X,Q,$,ne,ue),st(([ce,te,Oe,B,,F])=>ce&&!te&&Oe.height!==0&&B.height!==0&&!F)),([,,,,ce])=>{gt(ue,!0),sh(1,()=>{gt(H,ce)}),Jo(Ee(g),()=>{gt(e,[0,0]),gt(X,!0)})}),Qe(Ee(A,st(ce=>ce!=null&&ce.scrollTop>0),ps(0)),M),Zt(Ee(S,xt(A),st(([,ce])=>ce!=null)),([,ce])=>{ce&&(gt($,ce.viewport),gt(Q,ce.item),gt(W,ce.gap),ce.scrollTop>0&&(gt(K,!0),Jo(Ee(g,xr(1)),te=>{gt(K,!1)}),gt(h,{top:ce.scrollTop})))}),Qe(Ee($,Ze(({height:ce})=>ce)),y),Qe(Ee(An(ot($,wu),ot(Q,wu),ot(W,(ce,te)=>ce!==void 0&&ce.column===te.column&&ce.row===te.row),ot(g)),Ze(([ce,te,Oe,B])=>({gap:Oe,item:te,scrollTop:B,viewport:ce}))),T),Qe(Ee(An(ot(q),r,ot(W,VM),ot(Q,wu),ot($,wu),ot(U),ot(M),ot(K),ot(X),ot(ne)),st(([,,,,,,,ce])=>!ce),Ze(([ce,[te,Oe],B,F,oe,me,Ke,,tt,lt])=>{const{column:yt,row:bt}=B,{height:re,width:qe}=F,{width:Ye}=oe;if(Ke===0&&(ce===0||Ye===0))return Tb;if(qe===0){const Le=ah(lt,ce),Cn=Le+Math.max(Ke-1,0);return ZM(Rb(Le,Cn,me))}const at=V2(Ye,qe,yt);let it,kt;tt?te===0&&Oe===0&&Ke>0?(it=0,kt=Ke-1):(it=at*Du((te+bt)/(re+bt)),kt=at*Ab((Oe+bt)/(re+bt))-1,kt=Rp(ce-1,Ci(kt,at-1)),it=Rp(kt,Ci(0,it))):(it=0,kt=-1);const he=Rb(it,kt,me),{bottom:Re,top:He}=Db(oe,B,F,he),Rt=Ab(ce/at),Mt=Rt*re+(Rt-1)*bt-Re;return{bottom:Re,itemHeight:re,items:he,itemWidth:qe,offsetBottom:Mt,offsetTop:He,top:He}})),E),Qe(Ee(U,st(ce=>ce!==null),Ze(ce=>ce.length)),q),Qe(Ee(An($,Q,E,W),st(([ce,te,{items:Oe}])=>Oe.length>0&&te.height!==0&&ce.height!==0),Ze(([ce,te,{items:Oe},B])=>{const{bottom:F,top:oe}=Db(ce,B,te,Oe);return[oe,F]}),dn(Di)),e);const pe=Ae(!1);Qe(Ee(g,xt(pe),Ze(([ce,te])=>te||ce!==0)),pe);const we=Lo(Ee(An(E,q),st(([{items:ce}])=>ce.length>0),xt(pe),st(([[ce,te],Oe])=>{const B=ce.items[ce.items.length-1].index===te-1;return(Oe||ce.bottom>0&&ce.itemHeight>0&&ce.offsetBottom===0&&ce.items.length===te)&&B}),Ze(([[,ce]])=>ce-1),dn())),je=Lo(Ee(ot(E),st(({items:ce})=>ce.length>0&&ce[0].index===0),ps(0),dn())),ve=Lo(Ee(ot(E),xt(K),st(([{items:ce},te])=>ce.length>0&&!te),Ze(([{items:ce}])=>({endIndex:ce[ce.length-1].index,startIndex:ce[0].index})),dn(v2),qs(0)));Qe(ve,k.scrollSeekRangeChanged),Qe(Ee(H,xt($,Q,q,W),Ze(([ce,te,Oe,B,F])=>{const oe=j2(ce),{align:me,behavior:Ke,offset:tt}=oe;let lt=oe.index;lt==="LAST"&&(lt=B-1),lt=Ci(0,lt,Rp(B-1,lt));let yt=hm(te,F,Oe,lt);return me==="end"?yt=Ob(yt-te.height+Oe.height):me==="center"&&(yt=Ob(yt-te.height/2+Oe.height/2)),tt!==void 0&&tt!==0&&(yt+=tt),{behavior:Ke,top:yt}})),h);const Ce=Jn(Ee(E,Ze(ce=>ce.offsetBottom+ce.bottom)),0);return Qe(Ee(O,Ze(ce=>({height:ce.visibleHeight,width:ce.visibleWidth}))),$),{customScrollParent:_,data:U,deviation:D,footerHeight:c,gap:W,headerHeight:u,increaseViewportBy:t,initialItemCount:M,itemDimensions:Q,overscan:s,restoreStateFrom:A,scrollBy:f,scrollContainerState:d,scrollHeight:R,scrollTo:h,scrollToIndex:H,scrollTop:g,smoothScrollTargetReached:x,totalCount:q,useWindowScroll:N,viewportDimensions:$,windowScrollContainerState:L,windowScrollTo:z,windowViewportRect:O,...k,gridState:E,horizontalDirection:fe,initialTopMostItemIndex:ne,totalListHeight:Ce,...b,endReached:we,propsReady:w,rangeChanged:ve,startReached:je,stateChanged:T,stateRestoreInProgress:K,...I}},pn(rh,oo,Gi,M2,Ia,lh,Da));function V2(t,e,s){return Ci(1,Du((t+s)/(Du(e)+s)))}function Db(t,e,s,r){const{height:c}=s;if(c===void 0||r.length===0)return{bottom:0,top:0};const u=hm(t,e,s,r[0].index);return{bottom:hm(t,e,s,r[r.length-1].index)+c,top:u}}function hm(t,e,s,r){const c=V2(t.width,s.width,e.column),u=Du(r/c),f=u*s.height+Ci(0,u-1)*e.row;return f>0?f+e.row:f}const BM=qt(()=>{const t=Ae(y=>`Item ${y}`),e=Ae({}),s=Ae(null),r=Ae("virtuoso-grid-item"),c=Ae("virtuoso-grid-list"),u=Ae(ch),f=Ae("div"),d=Ae(Ml),h=(y,b=null)=>Jn(Ee(e,Ze(k=>k[y]),dn()),b),g=Ae(!1),x=Ae(!1);return Qe(ot(x),g),{components:e,computeItemKey:u,context:s,FooterComponent:h("Footer"),HeaderComponent:h("Header"),headerFooterTag:f,itemClassName:r,ItemComponent:h("Item","div"),itemContent:t,listClassName:c,ListComponent:h("List","div"),readyStateChanged:g,reportReadyState:x,ScrollerComponent:h("Scroller","div"),scrollerRef:d,ScrollSeekPlaceholder:h("ScrollSeekPlaceholder","div")}}),FM=qt(([t,e])=>({...t,...e}),pn(WM,BM)),GM=be.memo(function(){const t=un("gridState"),e=un("listClassName"),s=un("itemClassName"),r=un("itemContent"),c=un("computeItemKey"),u=un("isSeeking"),f=Uo("scrollHeight"),d=un("ItemComponent"),h=un("ListComponent"),g=un("ScrollSeekPlaceholder"),x=un("context"),y=Uo("itemDimensions"),b=Uo("gap"),k=un("log"),S=un("stateRestoreInProgress"),w=Uo("reportReadyState"),_=wr(be.useMemo(()=>N=>{const L=N.parentElement.parentElement.scrollHeight;f(L);const z=N.firstChild;if(z!==null){const{height:O,width:I}=z.getBoundingClientRect();y({height:O,width:I})}b({column:Ib("column-gap",getComputedStyle(N).columnGap,k),row:Ib("row-gap",getComputedStyle(N).rowGap,k)})},[f,y,b,k]),!0,!1);return I2(()=>{t.itemHeight>0&&t.itemWidth>0&&w(!0)},[t]),S?null:i.jsx(h,{className:e,ref:_,...Xn(h,x),"data-testid":"virtuoso-item-list",style:{paddingBottom:t.offsetBottom,paddingTop:t.offsetTop},children:t.items.map(N=>{const L=c(N.index,N.data,x);return u?i.jsx(g,{...Xn(g,x),height:t.itemHeight,index:N.index,width:t.itemWidth},L):j.createElement(d,{...Xn(d,x),className:s,"data-index":N.index,key:L},r(N.index,N.data,x))})})}),QM=be.memo(function(){const t=un("HeaderComponent"),e=Uo("headerHeight"),s=un("headerFooterTag"),r=wr(be.useMemo(()=>u=>{e(Ma(u,"height"))},[e]),!0,!1),c=un("context");return t!=null?i.jsx(s,{ref:r,children:i.jsx(t,{...Xn(t,c)})}):null}),KM=be.memo(function(){const t=un("FooterComponent"),e=Uo("footerHeight"),s=un("headerFooterTag"),r=wr(be.useMemo(()=>u=>{e(Ma(u,"height"))},[e]),!0,!1),c=un("context");return t!=null?i.jsx(s,{ref:r,children:i.jsx(t,{...Xn(t,c)})}):null}),YM=({children:t})=>{const e=be.useContext(D2),s=Uo("itemDimensions"),r=Uo("viewportDimensions"),c=wr(be.useMemo(()=>u=>{r(u.getBoundingClientRect())},[r]),!0,!1);return be.useEffect(()=>{e&&(r({height:e.viewportHeight,width:e.viewportWidth}),s({height:e.itemHeight,width:e.itemWidth}))},[e,r,s]),i.jsx("div",{ref:c,style:uh(!1),children:t})},PM=({children:t})=>{const e=be.useContext(D2),s=Uo("windowViewportRect"),r=Uo("itemDimensions"),c=un("customScrollParent"),u=un("useWindowScroll"),f=m2(s,c,!1);return be.useEffect(()=>{e&&(r({height:e.itemHeight,width:e.itemWidth}),s({listHeight:0,offsetTop:0,visibleHeight:e.viewportHeight,visibleWidth:e.viewportWidth}))},[e,s,r]),i.jsx("div",{ref:f,style:H2(!1,u),children:t})},XM=be.memo(function({...t}){const e=un("useWindowScroll"),s=un("customScrollParent"),r=s||e?eT:JM,c=s||e?PM:YM,u=un("context");return i.jsx(r,{...t,...Xn(r,u),children:i.jsxs(c,{children:[i.jsx(QM,{}),i.jsx(GM,{}),i.jsx(KM,{})]})})}),{useEmitter:W2,useEmitterValue:un,usePublisher:Uo}=O2(FM,{optional:{context:"context",totalCount:"totalCount",overscan:"overscan",itemContent:"itemContent",components:"components",computeItemKey:"computeItemKey",data:"data",initialItemCount:"initialItemCount",scrollSeekConfiguration:"scrollSeekConfiguration",headerFooterTag:"headerFooterTag",listClassName:"listClassName",itemClassName:"itemClassName",useWindowScroll:"useWindowScroll",customScrollParent:"customScrollParent",scrollerRef:"scrollerRef",logLevel:"logLevel",restoreStateFrom:"restoreStateFrom",initialTopMostItemIndex:"initialTopMostItemIndex",increaseViewportBy:"increaseViewportBy"},methods:{scrollTo:"scrollTo",scrollBy:"scrollBy",scrollToIndex:"scrollToIndex"},events:{isScrolling:"isScrolling",endReached:"endReached",startReached:"startReached",rangeChanged:"rangeChanged",atBottomStateChange:"atBottomStateChange",atTopStateChange:"atTopStateChange",stateChanged:"stateChanged",readyStateChanged:"readyStateChanged"}},XM),JM=U2({useEmitter:W2,useEmitterValue:un,usePublisher:Uo}),eT=Z2({useEmitter:W2,useEmitterValue:un,usePublisher:Uo});function Ib(t,e,s){return e!=="normal"&&e?.endsWith("px")!==!0&&s(`${t} was not resolved to pixel value correctly`,e,qn.WARN),e==="normal"?0:parseInt(e??"0",10)}var tT=jS();const gm=ym(tT);function nT(t){return t.map(e=>({provider:e,_name:gm.prepare(e.name),_category:gm.prepare(e.categoryLabel)}))}function Dp(t,e){return t.trim()?gm.go(t,e,{keys:["_name","_category"],threshold:-1e4,limit:500}).map(r=>r.obj.provider):e.map(r=>r.provider)}function oT(t,e){const s=new Map;for(const h of t){const g=s.get(h.category);g?g.push(h):s.set(h.category,[h])}const r=[],c=[],u=[];for(const h of e){const g=s.get(h.key);!g||g.length===0||(r.push({key:h.key,label:h.label,items:g}),c.push(g.length),u.push(...g))}const f=new Set(e.map(h=>h.key)),d=[];for(const[h,g]of s.entries())f.has(h)||d.push(...g);return d.length>0&&(r.push({key:"_other",label:"Other",items:d}),c.push(d.length),u.push(...d)),{groups:r,groupCounts:c,flatItems:u}}const sT={unconfigured:"bg-muted-foreground/30",stored:"bg-success",failed:"bg-destructive"},ki={unconfigured:"Not configured",stored:"Configured",failed:"Validation failed"},aT=j.memo(function(e){const s=Fe.c(6),{providerId:r,stored:c}=e,{apiKeyStatuses:u}=Ct(),f=u[r],d=f?.message==="deleted";let h,g=ki.unconfigured;!c||d?h="unconfigured":f&&f.valid===!1?(h="failed",g=f.message?`${ki.failed}: ${f.message}`:ki.failed):(h="stored",g=ki.stored);const x=ki[h],y=g,b=sT[h];let k;s[0]!==b?(k=Ne("h-2 w-2 shrink-0 rounded-full transition-colors",b),s[0]=b,s[1]=k):k=s[1];let S;return s[2]!==x||s[3]!==k||s[4]!==g?(S=i.jsx("span",{"aria-label":x,title:y,className:k}),s[2]=x,s[3]=k,s[4]=g,s[5]=S):S=s[5],S}),rT=j.memo(function(e){const s=Fe.c(19),{provider:r,selected:c,onSelect:u}=e;let f;s[0]!==u||s[1]!==r.id?(f=()=>u(r.id),s[0]=u,s[1]=r.id,s[2]=f):f=s[2];const d=f,h=r.id,g=c?"border-node-agent-border bg-node-agent-soft":"border-transparent bg-transparent";let x;s[3]!==g?(x=Ne("machinaos-palette-row flex cursor-pointer items-center gap-3 rounded-sm border px-3 py-2 text-sm text-foreground",g),s[3]=g,s[4]=x):x=s[4];let y;s[5]!==r.iconRef?(y=i.jsx(Co,{icon:r.iconRef,className:"h-3.5 w-3.5 shrink-0 text-sm"}),s[5]=r.iconRef,s[6]=y):y=s[6];let b;s[7]!==r.name?(b=i.jsx("span",{className:"flex-1 truncate",children:r.name}),s[7]=r.name,s[8]=b):b=s[8];const k=!!r.stored;let S;s[9]!==r.id||s[10]!==k?(S=i.jsx(aT,{providerId:r.id,stored:k}),s[9]=r.id,s[10]=k,s[11]=S):S=s[11];let w;return s[12]!==d||s[13]!==r.id||s[14]!==x||s[15]!==y||s[16]!==b||s[17]!==S?(w=i.jsxs(ka.Item,{value:h,onSelect:d,className:x,children:[y,b,S]}),s[12]=d,s[13]=r.id,s[14]=x,s[15]=y,s[16]=b,s[17]=S,s[18]=w):w=s[18],w}),lT=j.memo(function(e){const s=Fe.c(7),{label:r,count:c}=e;let u;s[0]!==r?(u=i.jsx("span",{children:r}),s[0]=r,s[1]=u):u=s[1];let f;s[2]!==c?(f=i.jsx("span",{className:"text-muted-foreground/60",children:c}),s[2]=c,s[3]=f):f=s[3];let d;return s[4]!==u||s[5]!==f?(d=i.jsxs("div",{className:"sticky top-0 z-[1] flex justify-between border-b border-border bg-background px-3 py-1 text-xs font-semibold tracking-wider text-muted-foreground uppercase",children:[u,f]}),s[4]=u,s[5]=f,s[6]=d):d=s[6],d}),iT=({providers:t,categories:e,selectedId:s,onSelect:r,height:c="100%",placeholder:u="Search providers…"})=>{const f=j.useMemo(()=>nT(t),[t]),[d,h]=j.useState(""),[g,x]=j.useState(()=>t),y=be.useRef(t);y.current!==t&&(y.current=t,x(Dp(d,f)));const b=j.useCallback(w=>{const _=w.target.value;h(_),j.startTransition(()=>{x(Dp(_,f))})},[f]),k=j.useDeferredValue(g),S=j.useMemo(()=>oT(k,e),[k,e]);return i.jsxs(ka,{shouldFilter:!1,label:"Credential providers",className:"flex h-full w-full flex-col",children:[i.jsx("div",{className:"border-b border-border p-2",children:i.jsxs("div",{className:"relative",children:[i.jsx(zi,{className:"pointer-events-none absolute top-1/2 left-2 h-4 w-4 -translate-y-1/2 text-muted-foreground"}),i.jsx(on,{value:d,onChange:b,placeholder:u,className:"h-9 pl-8 pr-8",autoFocus:!0}),d&&i.jsx("button",{type:"button",onClick:()=>{h(""),j.startTransition(()=>x(Dp("",f)))},className:"absolute top-1/2 right-2 -translate-y-1/2 text-muted-foreground hover:text-foreground","aria-label":"Clear search",children:i.jsx(za,{className:"h-4 w-4"})})]})}),i.jsx("div",{className:"min-h-0 flex-1",children:S.flatItems.length===0?i.jsxs("div",{className:"flex h-full items-center justify-center text-sm text-muted-foreground opacity-70",children:["No providers match “",d,"”"]}):i.jsx(qM,{style:{height:c},groupCounts:S.groupCounts,groupContent:w=>i.jsx(lT,{label:S.groups[w].label,count:S.groupCounts[w]}),itemContent:w=>{const _=S.flatItems[w];return _?i.jsx(rT,{provider:_,selected:_.id===s,onSelect:r}):null}})})]})},cT=j.memo(iT);function gl(t,e){if(typeof e!="string"||e.length===0)return!1;const s=e.startsWith("!"),r=s?e.slice(1):e,u=!!(t&&typeof t=="object"?t[r]:void 0);return s?!u:u}function uT(t){if(!(!t||t.length===0))return t.map(e=>({label:e.label,ok:s=>gl(s,e.ok_field),trueText:e.true_text,falseText:e.false_text,warn:e.warn}))}const dT={green:"run",pink:"stop",cyan:"save",orange:"config",yellow:"secret",purple:"tools"};function fT(t){if(!(!t||t.length===0))return t.map(e=>{let s;return e.disabled_when&&e.disabled_when.length>0&&(s=(r,c)=>e.disabled_when.some(u=>u==="stored"?!!c:u==="!stored"?!c:gl(r,u))),{key:e.key,label:e.label,intent:dT[e.theme_color]??"save",disabled:s}})}function pT(t){if(!t)return;const e=u=>gl(u,t.is_connected_field),s=u=>(t.is_loading_fields??[]).every(f=>gl(u,f)),r=u=>{if(t.connected_subtitle_static)return t.connected_subtitle_static;if(t.connected_subtitle_field){const f=u&&typeof u=="object"?u[t.connected_subtitle_field]:void 0;if(typeof f=="string"&&f.length>0)return f}return t.connected_subtitle_fallback??""},c=(u,f)=>!f&&t.empty_text_no_key?t.empty_text_no_key:(gl(u,"running")||gl(u,"connected"))&&t.empty_text_running?t.empty_text_running:t.empty_text_stopped??"";return{qrField:t.qr_field,isConnected:e,connectedTitle:t.connected_title,connectedSubtitle:r,isLoading:s,emptyText:c,scanText:t.scan_text}}function mT(t){if(!(!t||t.length===0))return t.map(e=>({key:e.key,label:e.label??e.key,secret:e.secret??e.type==="password",placeholder:e.placeholder,default:e.default,required:e.required,help:e.help}))}function hT(t){return{id:t.id,name:t.name,category:t.category,categoryLabel:t.category_label,color:t.color,kind:t.kind,iconRef:t.icon_ref??"",fields:mT(t.fields),ws:t.ws,statusHook:t.status_hook,statusRows:uT(t.status_rows),actions:fT(t.actions),qr:pT(t.qr),validateAs:t.validate_as,callbackUrl:t.callback_url,instructions:t.instructions,hasDefaults:t.has_defaults,hasRateLimits:t.has_rate_limits,usageService:t.usage_service,stored:t.stored,account_label:t.account_label??null}}function gT(t){const e=t.providers.map(hT),s=new Map;for(const c of t.categories)s.set(c.key,{key:c.key,label:c.label,items:[]});for(const c of e){let u=s.get(c.category);u||(u={key:c.category,label:c.categoryLabel,items:[]},s.set(c.category,u)),u.items.push(c)}const r=Array.from(s.values()).filter(c=>c.items.length>0);return{providers:e,categories:r}}const $b={selectedId:null,paletteOpen:!1,query:""},qb=Em(t=>({...$b,setSelectedId:e=>t({selectedId:e}),openPalette:()=>t({paletteOpen:!0}),closePalette:()=>t({paletteOpen:!1}),togglePalette:()=>t(e=>({paletteOpen:!e.paletteOpen})),setQuery:e=>t({query:e}),reset:()=>t($b)})),xT=({visible:t,onClose:e})=>{const s=qb(w=>w.selectedId),r=qb(w=>w.setSelectedId),c=zm(),u=j.useMemo(()=>c.data?gT(c.data):null,[c.data]),{isCredentialCategoryDisabled:f}=Pm(),d=j.useMemo(()=>(u?.providers??[]).filter(w=>!f(w.category)),[u?.providers,f]),h=j.useMemo(()=>(u?.categories??[]).filter(w=>!f(w.key)),[u?.categories,f]),g=j.useMemo(()=>s&&d.some(w=>w.id===s)?s:d[0]?.id??null,[s,d]);be.useEffect(()=>{g&&g!==s&&r(g)},[g,s,r]);const x=j.useMemo(()=>d.find(w=>w.id===g)??null,[d,g]),y=c.isLoading&&!c.data,b=c.isError&&!c.data,k=i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsxs("div",{className:"flex items-center gap-2 text-base font-semibold",children:[i.jsx(QS,{className:"h-4 w-4 text-dracula-yellow"}),i.jsx("span",{children:"API Credentials"})]}),u&&i.jsxs(Ot,{variant:"success",children:[d.length," providers"]}),y&&i.jsxs(Ot,{variant:"info",className:"gap-1",children:[i.jsx(mo,{className:"h-3 w-3 animate-spin"}),"loading"]}),b&&i.jsxs(Ot,{variant:"destructive",className:"gap-1",title:"Server unreachable",children:[i.jsx(wl,{className:"h-3 w-3"}),"offline"]})]});let S;return b?S=i.jsx("div",{className:"flex flex-1 flex-col items-center justify-center p-8",children:i.jsxs(Nl,{variant:"destructive",className:"max-w-md",children:[i.jsx(wl,{className:"h-4 w-4"}),i.jsx(fv,{children:"Couldn't reach the credentials server"}),i.jsx(Cl,{children:"The provider list comes from the backend. Check your connection and try again — refreshing the page will retry the fetch."})]})}):u?S=i.jsxs("div",{className:"flex h-full overflow-hidden",children:[i.jsx("div",{className:"flex w-[280px] shrink-0 flex-col border-r border-border",children:i.jsx(cT,{providers:d,categories:h,selectedId:g,onSelect:r})}),i.jsx("div",{className:"flex flex-1 flex-col overflow-auto bg-background",children:i.jsx(Lz,{config:x,visible:t})})]}):S=i.jsxs("div",{className:"flex h-full overflow-hidden",children:[i.jsx("div",{className:"flex w-[280px] shrink-0 flex-col gap-2 border-r border-border p-4",children:Array.from({length:6}).map((w,_)=>i.jsx(dr,{className:"h-9 w-full"},_))}),i.jsxs("div",{className:"flex flex-1 flex-col gap-3 bg-background p-6",children:[i.jsx(dr,{className:"h-6 w-48"}),i.jsx(dr,{className:"h-4 w-72"}),i.jsx(dr,{className:"mt-4 h-32 w-full"})]})]}),i.jsx(Ll,{isOpen:t,onClose:e,maxWidth:"95vw",maxHeight:"95vh",headerActions:k,children:S})},yT=5,bT=(t,e=yT)=>{const s=nd(),r=Xv(),[c,u]=j.useState({isVisible:!1,currentStep:0,isCompleted:!1,isLoading:!0,hasChecked:!1});j.useEffect(()=>{if(!s.isSuccess)return;const y=s.data,b=y?.onboarding_completed??!1,k=y?.onboarding_step??0;u(S=>({...S,isVisible:S.hasChecked?S.isVisible:!b,currentStep:S.hasChecked?S.currentStep:k,isCompleted:b,isLoading:!1,hasChecked:!0}))},[s.isSuccess,s.data]),j.useEffect(()=>{s.isError&&(console.error("[Onboarding] Failed to check status:",s.error),u(y=>({...y,isLoading:!1,hasChecked:!0})))},[s.isError,s.error]),j.useEffect(()=>{t&&t>0&&u(y=>({...y,isVisible:!0,currentStep:0,isCompleted:!1}))},[t]);const f=j.useCallback((y,b)=>{r.mutate({onboarding_step:y,onboarding_completed:b})},[r]),d=j.useCallback(()=>{u(y=>{const b=y.currentStep+1;return b>=e?(f(e,!0),{...y,currentStep:b,isCompleted:!0,isVisible:!1}):(f(b,!1),{...y,currentStep:b})})},[f,e]),h=j.useCallback(()=>{u(y=>{const b=Math.max(0,y.currentStep-1);return f(b,!1),{...y,currentStep:b}})},[f]),g=j.useCallback(()=>{f(c.currentStep,!0),u(y=>({...y,isVisible:!1,isCompleted:!0}))},[f,c.currentStep]),x=j.useCallback(()=>{f(e,!0),u(y=>({...y,isVisible:!1,isCompleted:!0}))},[f,e]);return{...c,totalSteps:e,nextStep:d,prevStep:h,skip:g,complete:x}},vT=[{Icon:KS,label:"108+ Nodes",desc:"Workflow building blocks"},{Icon:b0,label:"6 AI Providers",desc:"OpenAI, Claude, Gemini & more"},{Icon:YS,label:"Drag & Drop",desc:"Visual workflow builder"},{Icon:km,label:"Real-time",desc:"Live execution & monitoring"}],wT=()=>{const t=Fe.c(5);let e,s,r,c;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=i.jsx(b0,{className:"mx-auto mb-2 h-10 w-10 text-node-agent"}),s=i.jsx("h3",{className:"m-0 mb-1 text-xl font-semibold",children:"Welcome to MachinaOs"}),r=i.jsx("p",{className:"text-[15px] font-semibold text-node-agent",children:"Visual workflow automation powered by AI agents"}),c=i.jsx("p",{className:"mx-auto mt-4 mb-6 max-w-[480px] text-sm text-muted-foreground",children:"MachinaOs lets you build intelligent automation workflows by connecting AI models, tools, and services together on an interactive canvas. No coding required for most tasks."}),t[0]=e,t[1]=s,t[2]=r,t[3]=c):(e=t[0],s=t[1],r=t[2],c=t[3]);let u;return t[4]===Symbol.for("react.memo_cache_sentinel")?(u=i.jsxs("div",{className:"py-2 text-center",children:[e,s,r,c,i.jsx("div",{className:"mx-auto grid max-w-[440px] grid-cols-2 gap-3",children:vT.map(kT)})]}),t[4]=u):u=t[4],u};function kT(t){const{Icon:e,label:s,desc:r}=t;return i.jsx(Hs,{className:"text-center bg-node-agent-soft border-node-agent-border",children:i.jsxs(Vu,{className:"flex flex-col items-center gap-1 p-3",children:[i.jsx(e,{className:"h-5 w-5 text-node-agent"}),i.jsx("span",{className:"block text-sm font-semibold",children:s}),i.jsx("span",{className:"text-xs text-muted-foreground",children:r})]})},s)}const B2={model:{card:"bg-node-model-soft border-node-model-border",text:"text-node-model"},skill:{card:"bg-node-skill-soft border-node-skill-border",text:"text-node-skill"},agent:{card:"bg-node-agent-soft border-node-agent-border",text:"text-node-agent"},workflow:{card:"bg-node-workflow-soft border-node-workflow-border",text:"text-node-workflow"},trigger:{card:"bg-node-trigger-soft border-node-trigger-border",text:"text-node-trigger"}},ST=[{Icon:PS,title:"Nodes",desc:"Building blocks of your workflow. Each node performs a specific action like sending a message, calling an AI model, or processing data.",role:"model"},{Icon:u0,title:"Edges",desc:"Connections between nodes that define data flow. Drag from one node's output to another's input to connect them.",role:"skill"},{Icon:XS,title:"AI Agents",desc:"Intelligent nodes that use LLMs (Claude, GPT, Gemini) to reason, call tools, and complete tasks autonomously.",role:"agent"},{Icon:v0,title:"Skills & Tools",desc:"Connect skills and tools to agents to extend their capabilities. Skills provide instructions, tools provide actions.",role:"workflow"},{Icon:JS,title:"Normal vs Dev Mode",desc:"Normal mode shows AI-focused nodes for simple workflows. Dev mode unlocks all 108+ nodes for advanced automation.",role:"trigger"}],_T=()=>{const t=Fe.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=i.jsxs("div",{className:"mb-4 text-center",children:[i.jsx("h4",{className:"m-0 mb-1 text-lg font-semibold",children:"Key Concepts"}),i.jsx("p",{className:"text-xs text-muted-foreground",children:"Understanding these will help you build powerful workflows"})]}),t[0]=e):e=t[0];let s;return t[1]===Symbol.for("react.memo_cache_sentinel")?(s=i.jsxs("div",{className:"py-1",children:[e,i.jsx("div",{className:"flex w-full flex-col gap-2.5",children:ST.map(jT)})]}),t[1]=s):s=t[1],s};function jT(t){const e=B2[t.role];return i.jsxs("div",{className:`flex items-start gap-3 rounded-md border p-3 ${e.card}`,children:[i.jsx("div",{className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-md ${e.card}`,children:i.jsx(t.Icon,{className:`h-4 w-4 ${e.text}`})}),i.jsxs("div",{className:"min-w-0 flex-1",children:[i.jsx("div",{className:`mb-0.5 text-sm font-semibold ${e.text}`,children:t.title}),i.jsx("p",{className:"m-0 text-xs leading-relaxed text-muted-foreground",children:t.desc})]})]},t.title)}const NT=[{name:"OpenAI",icon:i.jsx(sv,{}),desc:"GPT-4o, o3, o4 models",url:"platform.openai.com"},{name:"Anthropic",icon:i.jsx(av,{}),desc:"Claude Opus, Sonnet models",url:"console.anthropic.com"},{name:"Google",icon:i.jsx(rv,{}),desc:"Gemini Pro, Flash models",url:"aistudio.google.com"},{name:"Groq",icon:i.jsx(lv,{}),desc:"Ultra-fast Llama, Qwen",url:"console.groq.com"},{name:"OpenRouter",icon:i.jsx(iv,{}),desc:"Access 200+ models",url:"openrouter.ai"},{name:"Cerebras",icon:i.jsx(cv,{}),desc:"Fast inference on custom HW",url:"cloud.cerebras.ai"}],CT=t=>{const e=Fe.c(8),{onOpenCredentials:s}=t;let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=i.jsxs("div",{className:"mb-4 text-center",children:[i.jsxs("h4",{className:"m-0 mb-1 flex items-center justify-center gap-2 text-lg font-semibold",children:[i.jsx(Px,{className:"h-4 w-4 text-dracula-yellow"}),"API Key Setup"]}),i.jsx("p",{className:"text-xs text-muted-foreground",children:"Configure at least one AI provider to use AI agents"})]}),e[0]=r):r=e[0];let c;e[1]===Symbol.for("react.memo_cache_sentinel")?(c=i.jsx("div",{className:"flex w-full flex-col gap-2",children:NT.map(LT)}),e[1]=c):c=e[1];let u;e[2]===Symbol.for("react.memo_cache_sentinel")?(u=i.jsx(Px,{className:"h-4 w-4"}),e[2]=u):u=e[2];let f;e[3]!==s?(f=i.jsx("div",{className:"mt-5 text-center",children:i.jsxs(Ut,{onClick:s,className:"gap-2",children:[u,"Open Credentials"]})}),e[3]=s,e[4]=f):f=e[4];let d;e[5]===Symbol.for("react.memo_cache_sentinel")?(d=i.jsx(Nl,{variant:"info",className:"mt-4",children:i.jsx(Cl,{className:"text-xs",children:"You can always change API keys later from the toolbar credentials button."})}),e[5]=d):d=e[5];let h;return e[6]!==f?(h=i.jsxs("div",{className:"py-1",children:[r,c,f,d]}),e[6]=f,e[7]=h):h=e[7],h};function LT(t){return i.jsxs("div",{className:"flex items-center gap-2.5 rounded-md border border-border bg-muted/50 px-3 py-2",children:[i.jsx("div",{className:"flex h-6 w-6 shrink-0 items-center justify-center",children:t.icon}),i.jsxs("div",{className:"min-w-0 flex-1",children:[i.jsx("div",{className:"block text-sm font-semibold",children:t.name}),i.jsx("div",{className:"text-xs text-muted-foreground",children:t.desc})]}),i.jsxs("div",{className:"flex items-center gap-1 text-[10px] text-muted-foreground",children:[i.jsx(e_,{className:"h-3 w-3"})," ",t.url]})]},t.name)}const ET=()=>{const t=Fe.c(9);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=[{keys:"Ctrl+S",action:"Save workflow"},{keys:"F2",action:"Rename node"},{keys:"Delete",action:"Remove node"},{keys:"Ctrl+C",action:"Copy node"}],t[0]=e):e=t[0];const s=e;let r;t[1]===Symbol.for("react.memo_cache_sentinel")?(r=i.jsxs("div",{className:"mb-4 text-center",children:[i.jsx("h4",{className:"m-0 mb-1 text-lg font-semibold",children:"Canvas Tour"}),i.jsx("p",{className:"text-xs text-muted-foreground",children:"Navigate the main interface regions"})]}),t[1]=r):r=t[1];let c;t[2]===Symbol.for("react.memo_cache_sentinel")?(c=i.jsxs("div",{className:"flex items-center gap-1.5 border-b border-border bg-node-workflow-soft px-2.5 py-1.5",children:[i.jsx(v0,{className:"h-3 w-3 text-dracula-orange"}),i.jsx("span",{className:"text-xs font-semibold text-dracula-orange",children:"Toolbar"}),i.jsx("div",{className:"flex-1"}),i.jsx(Ot,{variant:"warning",className:"text-[10px]",children:"Run"}),i.jsx(Ot,{variant:"secondary",className:"text-[10px]",children:"Start"}),i.jsx(Ot,{variant:"info",className:"text-[10px]",children:"Save"})]}),t[2]=c):c=t[2];let u;t[3]===Symbol.for("react.memo_cache_sentinel")?(u=i.jsxs("div",{className:"flex w-20 flex-col gap-1 border-r border-border bg-node-model-soft p-1.5",children:[i.jsx("span",{className:"text-[9px] font-semibold text-dracula-cyan",children:"Sidebar"}),["Workflow 1","Workflow 2"].map(zT)]}),t[3]=u):u=t[3];let f;t[4]===Symbol.for("react.memo_cache_sentinel")?(f=i.jsx("div",{className:"relative flex flex-1 items-center justify-center bg-node-agent-soft",children:i.jsxs("div",{className:"text-center",children:[i.jsx(t_,{className:"mx-auto h-5 w-5 text-dracula-purple opacity-50"}),i.jsx("div",{className:"mt-0.5 text-[9px] text-dracula-purple",children:"Canvas"})]})}),t[4]=f):f=t[4];let d;t[5]===Symbol.for("react.memo_cache_sentinel")?(d=i.jsxs("div",{className:"flex h-[120px]",children:[u,f,i.jsxs("div",{className:"flex w-20 flex-col gap-1 border-l border-border bg-node-skill-soft p-1.5",children:[i.jsx("span",{className:"text-[9px] font-semibold text-dracula-green",children:"Palette"}),["AI Agents","AI Models","Skills"].map(MT)]})]}),t[5]=d):d=t[5];let h,g;t[6]===Symbol.for("react.memo_cache_sentinel")?(h=i.jsxs("div",{className:"mb-4 overflow-hidden rounded-lg border border-border",children:[c,d,i.jsxs("div",{className:"flex items-center gap-1.5 border-t border-border bg-node-trigger-soft px-2.5 py-1.5",children:[i.jsx(w0,{className:"h-3 w-3 text-dracula-pink"}),i.jsx("span",{className:"text-xs font-semibold text-dracula-pink",children:"Console"}),i.jsx("div",{className:"flex-1"}),i.jsx(Ot,{variant:"outline",className:"text-[9px]",children:"Chat"}),i.jsx(Ot,{variant:"outline",className:"text-[9px]",children:"Logs"})]})]}),g=i.jsx("div",{className:"mb-2 block text-xs font-semibold",children:"Keyboard Shortcuts"}),t[6]=h,t[7]=g):(h=t[6],g=t[7]);let x;return t[8]===Symbol.for("react.memo_cache_sentinel")?(x=i.jsxs("div",{className:"py-1",children:[r,h,i.jsxs("div",{children:[g,i.jsx("div",{className:"flex flex-wrap items-center gap-x-2 gap-y-1.5",children:s.map(TT)})]})]}),t[8]=x):x=t[8],x};function zT(t){return i.jsx("div",{className:"rounded-sm bg-muted px-1 py-0.5 text-[8px] text-muted-foreground",children:t},t)}function MT(t){return i.jsx("div",{className:"rounded-sm bg-muted px-1 py-0.5 text-[8px] text-muted-foreground",children:t},t)}function TT(t){return i.jsxs("span",{className:"inline-flex items-center gap-1.5 text-xs",children:[i.jsx(Ot,{variant:"outline",className:"font-mono text-[11px]",children:t.keys}),i.jsx("span",{className:"text-xs text-muted-foreground",children:t.action})]},t.keys)}const AT=[{Icon:jm,title:"Try an Example Workflow",desc:"Open the sidebar and click on one of the pre-loaded example workflows to see how things work.",role:"skill"},{Icon:n_,title:"Build Your First Workflow",desc:i.jsxs(i.Fragment,{children:["Quick recipe: drag"," ",i.jsx(Ot,{variant:"outline",className:"mx-0.5 text-[10px]",children:"Chat Trigger"}),i.jsx("span",{className:"text-xs text-muted-foreground",children:"→"})," ",i.jsx(Ot,{variant:"outline",className:"mx-0.5 text-[10px]",children:"Zeenie"}),i.jsx("span",{className:"text-xs text-muted-foreground",children:"→"})," ",i.jsx(Ot,{variant:"outline",className:"mx-0.5 text-[10px]",children:"Claude Model"})," ","then click"," ",i.jsx(Ot,{variant:"success",className:"mx-0.5 text-[10px]",children:"Run"})]}),role:"agent"},{Icon:o_,title:"Explore AI Skills",desc:"Use the Master Skill node to browse and enable built-in skills for your AI agents.",role:"model"},{Icon:Ui,title:"Revisit This Guide",desc:"You can replay this welcome guide anytime from Settings.",role:"workflow"}],OT=()=>{const t=Fe.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=i.jsxs("div",{className:"mb-4 text-center",children:[i.jsx("h4",{className:"m-0 mb-1 text-lg font-semibold",children:"Get Started"}),i.jsx("p",{className:"text-xs text-muted-foreground",children:"Here are some things to try first"})]}),t[0]=e):e=t[0];let s;return t[1]===Symbol.for("react.memo_cache_sentinel")?(s=i.jsxs("div",{className:"py-1",children:[e,i.jsx("div",{className:"flex w-full flex-col gap-2.5",children:AT.map(RT)})]}),t[1]=s):s=t[1],s};function RT(t,e){const{Icon:s,title:r,desc:c,role:u}=t,f=B2[u];return i.jsx(Hs,{className:f.card,children:i.jsxs(Vu,{className:"flex items-start gap-2.5 p-3",children:[i.jsx("div",{className:`flex h-7 w-7 shrink-0 items-center justify-center rounded-md ${f.card}`,children:i.jsx(s,{className:`h-3.5 w-3.5 ${f.text}`})}),i.jsxs("div",{className:"min-w-0 flex-1",children:[i.jsx("div",{className:`mb-0.5 text-sm font-semibold ${f.text}`,children:r}),i.jsx("p",{className:"m-0 text-xs leading-relaxed text-muted-foreground",children:c})]})]})},e)}const il=[{title:"Welcome",render:()=>i.jsx(wT,{})},{title:"Concepts",render:()=>i.jsx(_T,{})},{title:"API Keys",render:({onOpenCredentials:t})=>i.jsx(CT,{onOpenCredentials:t})},{title:"Canvas",render:()=>i.jsx(ET,{})},{title:"Get Started",render:()=>i.jsx(OT,{})}],DT=t=>{const e=Fe.c(32),{onOpenCredentials:s,reopenTrigger:r}=t,{isVisible:c,currentStep:u,isLoading:f,hasChecked:d,nextStep:h,prevStep:g,skip:x,complete:y}=bT(r,il.length);if(!c||!d||f)return null;const b=u>=il.length-1,k=Math.min(Math.max(u,0),il.length-1);let S;e[0]!==u?(S=il.map((Q,H)=>{const R=H<u?"completed":H===u?"active":"upcoming",D=H===il.length-1;return i.jsxs("li",{className:"flex flex-1 items-center gap-2",children:[i.jsx("div",{className:Ne("flex h-7 w-7 shrink-0 items-center justify-center rounded-full border text-xs font-medium transition-colors",R==="completed"&&"border-primary bg-primary text-primary-foreground",R==="active"&&"border-primary text-primary",R==="upcoming"&&"border-border text-muted-foreground"),children:R==="completed"?i.jsx(Li,{className:"h-4 w-4"}):H+1}),i.jsx("span",{className:Ne("whitespace-nowrap text-xs",R==="upcoming"?"text-muted-foreground":"text-foreground"),children:Q.title}),!D&&i.jsx("div",{className:Ne("h-px flex-1",H<u?"bg-primary":"bg-border")})]},Q.title)}),e[0]=u,e[1]=S):S=e[1];let w;e[2]!==S?(w=i.jsx("ol",{className:"mb-4 flex w-full items-center",children:S}),e[2]=S,e[3]=w):w=e[3];const _=il[k];let N;e[4]!==s||e[5]!==_?(N=_.render({onOpenCredentials:s}),e[4]=s,e[5]=_,e[6]=N):N=e[6];let L;e[7]!==N?(L=i.jsx("div",{className:"overflow-y-auto pr-1 max-h-[calc(95vh-200px)]",children:N}),e[7]=N,e[8]=L):L=e[8];let z;e[9]!==x?(z=i.jsx(Ut,{variant:"ghost",size:"sm",onClick:x,className:"text-muted-foreground",children:"Skip for now"}),e[9]=x,e[10]=z):z=e[10];let O;e[11]!==u||e[12]!==g?(O=u>0&&i.jsxs(Ut,{variant:"outline",onClick:g,children:[i.jsx(s_,{className:"h-4 w-4"}),"Back"]}),e[11]=u,e[12]=g,e[13]=O):O=e[13];let I;e[14]!==y||e[15]!==b||e[16]!==h?(I=b?i.jsxs(Xt,{intent:"run",onClick:y,children:[i.jsx(Li,{className:"h-4 w-4"}),"Start Building"]}):i.jsxs(Xt,{intent:"tools",onClick:h,children:["Next",i.jsx(a_,{className:"h-4 w-4"})]}),e[14]=y,e[15]=b,e[16]=h,e[17]=I):I=e[17];let q;e[18]!==O||e[19]!==I?(q=i.jsxs("div",{className:"flex items-center gap-2",children:[O,I]}),e[18]=O,e[19]=I,e[20]=q):q=e[20];let M;e[21]!==z||e[22]!==q?(M=i.jsxs("div",{className:"flex items-center justify-between border-t border-border pt-3 mt-3",children:[z,q]}),e[21]=z,e[22]=q,e[23]=M):M=e[23];let E;e[24]!==M||e[25]!==w||e[26]!==L?(E=i.jsxs("div",{className:"flex flex-col px-5 pt-4 pb-3",children:[w,L,M]}),e[24]=M,e[25]=w,e[26]=L,e[27]=E):E=e[27];let $;return e[28]!==c||e[29]!==x||e[30]!==E?($=i.jsx(Ll,{isOpen:c,onClose:x,title:"Welcome Guide",maxWidth:"95vw",maxHeight:"95vh",children:E}),e[28]=c,e[29]=x,e[30]=E,e[31]=$):$=e[31],$};class Hb extends j.Component{state={hasError:!1};static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,s){console.error("ErrorBoundary caught an error:",e,s),this.setState({error:e,errorInfo:s})}handleReset=()=>{this.setState({hasError:!1,error:void 0,errorInfo:void 0})};handleReload=()=>{window.location.reload()};render(){return this.state.hasError?this.props.fallback?this.props.fallback:i.jsx("div",{className:"flex h-full w-full items-center justify-center bg-background p-8",children:i.jsx(Hs,{className:"w-full max-w-xl",children:i.jsxs(Vu,{className:"space-y-4 p-6 text-center",children:[i.jsxs(Nl,{variant:"destructive",children:[i.jsx(wl,{className:"h-4 w-4"}),i.jsx(fv,{children:"Canvas Error Detected"}),i.jsx(Cl,{children:"The workflow canvas encountered an error and needs to be reset. Your workflow data is safe and will be restored."})]}),i.jsxs("div",{className:"flex flex-wrap justify-center gap-3",children:[i.jsxs(Ut,{onClick:this.handleReset,children:[i.jsx(wm,{className:"h-4 w-4"}),"Reset Canvas"]}),i.jsxs(Ut,{variant:"outline",onClick:this.handleReload,children:[i.jsx(r_,{className:"h-4 w-4"}),"Reload Page"]})]}),!1]})})}):this.props.children}}Prism.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}};Prism.languages.webmanifest=Prism.languages.json;const Ub=Xu({panelHeight:ur().min(80).max(2e3).default(250),chatWidthPercent:ur().min(20).max(80).default(50),fontSize:ur().min(8).max(40).default(12),autoScroll:Sa().default(!0),prettyPrint:Sa().default(!0),consoleTab:Km(["console","terminal"]).default("console")}),F2="console_panel_prefs_v1";function IT(){try{const t=localStorage.getItem(F2);if(t){const e=Ub.safeParse(JSON.parse(t));if(e.success)return e.data}}catch{}return Ub.parse({})}function $T(t){try{localStorage.setItem(F2,JSON.stringify(t))}catch{}}const Zb=10,Vb=32,qT=12;function HT(t){const[e,s]=j.useState(!1),r=j.useRef(0),c=j.useRef(0),{axis:u,cursor:f,onMove:d,getStartValue:h}=t,g=j.useCallback(x=>{x.preventDefault(),x.stopPropagation(),r.current=u==="y"?x.clientY:x.clientX,c.current=h(),s(!0)},[u,h]);return j.useEffect(()=>{if(!e)return;const x=b=>{const k=u==="y"?b.clientY:b.clientX;d(k-r.current,c.current)},y=()=>s(!1);return document.addEventListener("mousemove",x),document.addEventListener("mouseup",y),document.body.style.cursor=f,document.body.style.userSelect="none",()=>{document.removeEventListener("mousemove",x),document.removeEventListener("mouseup",y),document.body.style.cursor="",document.body.style.userSelect=""}},[e,u,f,d]),{start:g,isResizing:e}}const UT=({isOpen:t,onToggle:e,minHeight:s=80,nodes:r=[]})=>{const{consoleLogs:c,clearConsoleLogs:u,terminalLogs:f,clearTerminalLogs:d,sendChatMessage:h,chatMessages:g,clearChatMessages:x}=Ct(),y=j.useMemo(()=>r.filter(re=>(re.type?fn(re.type):void 0)?.uiHints?.isChatTrigger??(re.type?["chatTrigger"].includes(re.type):!1)),[r]),b=j.useMemo(()=>r.filter(re=>(re.type?fn(re.type):void 0)?.uiHints?.isConsoleSink??(re.type?["console"].includes(re.type):!1)),[r]),[k,S]=j.useState(""),[w,_]=j.useState(""),[N,L]=j.useState(""),[z,O]=j.useState(""),[I,q]=j.useState("all"),[M,E]=j.useState(IT),$=j.useCallback((re,qe)=>{E(Ye=>{const at={...Ye,[re]:qe};return $T(at),at})},[]),{autoScroll:Q,prettyPrint:H,consoleTab:R,panelHeight:D,chatWidthPercent:U,fontSize:W}=M,T=j.useRef(null),A=j.useRef(null),K=j.useRef(null),[ne,X]=j.useState(""),[ue,fe]=j.useState(!1),pe=j.useRef(null),we=HT({axis:"y",cursor:"ns-resize",getStartValue:()=>D,onMove:(re,qe)=>{const Ye=window.innerHeight-90,at=Math.min(Ye,Math.max(s,qe-re));$("panelHeight",at)}}),je=we.isResizing,ve=we.start,[Ce,ce]=j.useState(!1),te=j.useCallback(re=>{re.preventDefault(),re.stopPropagation(),ce(!0)},[]);j.useEffect(()=>{if(!Ce)return;const re=Ye=>{const at=pe.current;if(!at)return;const it=at.getBoundingClientRect(),kt=(Ye.clientX-it.left)/it.width*100;$("chatWidthPercent",Math.min(80,Math.max(20,kt)))},qe=()=>ce(!1);return document.addEventListener("mousemove",re),document.addEventListener("mouseup",qe),document.body.style.cursor="ew-resize",document.body.style.userSelect="none",()=>{document.removeEventListener("mousemove",re),document.removeEventListener("mouseup",qe),document.body.style.cursor="",document.body.style.userSelect=""}},[Ce,$]),j.useEffect(()=>{(W<Zb||W>Vb)&&$("fontSize",qT)},[]);const Oe=j.useMemo(()=>{let re=c;if(w&&(re=re.filter(qe=>qe.node_id===w)),N){const qe=N.toLowerCase();re=re.filter(Ye=>Ye.label.toLowerCase().includes(qe)||Ye.formatted.toLowerCase().includes(qe)||Ye.node_id.toLowerCase().includes(qe))}return re},[c,N,w]),B=j.useMemo(()=>{let re=f;if(I!=="all"){const qe={error:0,warning:1,info:2,debug:3},Ye=qe[I]??2;re=re.filter(at=>(qe[at.level]??2)<=Ye)}if(z){const qe=z.toLowerCase();re=re.filter(Ye=>Ye.message.toLowerCase().includes(qe)||Ye.source?.toLowerCase().includes(qe))}return re},[f,z,I]);j.useEffect(()=>{Q&&t&&T.current&&T.current.scrollIntoView({behavior:"smooth"})},[Oe.length,Q,t]),j.useEffect(()=>{t&&A.current&&A.current.scrollIntoView({behavior:"smooth"})},[g?.length,t]);const F=j.useCallback(()=>u(),[u]),oe=j.useCallback(()=>x(),[x]),me=j.useCallback(async()=>{const re=ne.trim();if(!(!re||ue)){fe(!0);try{await h(re,k||void 0),X("")}catch(qe){console.error("Failed to send chat message:",qe)}finally{fe(!1)}}},[ne,ue,h,k]),Ke=j.useCallback(re=>{re.key==="Enter"&&!re.shiftKey&&(re.preventDefault(),me())},[me]),tt=j.useCallback(re=>{try{const qe=new Date(re),Ye=qe.toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"}),at=qe.getMilliseconds().toString().padStart(3,"0");return`${Ye}.${at}`}catch{return re}},[]),lt=j.useCallback(re=>{switch(re){case"json":case"json_compact":return"text-info";case"table":return"text-success";default:return"text-foreground"}},[]),yt=j.useCallback(re=>{if(!H)return{formatted:re,isJson:!1};let qe=re.replace(/\\n/g,`
98
+ `).replace(/\\t/g," ");const Ye=qe.trim();if(Ye.startsWith("{")&&Ye.endsWith("}")||Ye.startsWith("[")&&Ye.endsWith("]"))try{const at=JSON.parse(Ye);return qe=JSON.stringify(at,null,2),{formatted:qe,isJson:!0}}catch{}return{formatted:qe,isJson:!1}},[H]),bt=j.useCallback(re=>ji.highlight(re,ji.languages.json,"json"),[]);return i.jsxs("div",{className:"chat relative",onWheel:re=>{re.target.closest("[data-scrollable]")||re.stopPropagation()},children:[t&&i.jsx("div",{onMouseDown:ve,className:Ne("absolute top-0 right-0 left-0 z-10 h-1.5 cursor-ns-resize transition-colors",je?"bg-node-agent transition-none":"hover:bg-node-agent-soft")}),i.jsx("div",{onClick:e,className:"flex cursor-pointer items-center justify-between border-t border-border-default bg-bg-elevated px-3 py-1.5 select-none",children:i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsx(Us,{className:Ne("h-3 w-3 text-muted-foreground transition-transform",!t&&"rotate-180")}),i.jsxs("span",{className:"flex items-center gap-1.5 font-display text-sm font-semibold tracking-[var(--type-tracking-display)] text-fg-default [text-transform:var(--type-uppercase)]",children:["Chat / Console",(c.length>0||g&&g.length>0)&&i.jsx(Ot,{variant:"secondary",className:"text-xs",children:c.length+(g?.length||0)})]})]})}),i.jsxs("div",{ref:pe,style:{height:t?`${D}px`:"0px"},className:Ne("flex flex-row overflow-hidden bg-bg-app","max-h-[calc(100vh-90px)]",je||Ce?"[transition:none]":"transition-[height] duration-200 ease-in-out"),children:[i.jsxs("div",{style:{width:`${U}%`},className:"relative flex flex-col overflow-hidden",children:[i.jsxs("div",{className:"flex min-h-[32px] items-center justify-between border-b border-border-default bg-bg-elevated px-3 py-1.5",children:[i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsxs("span",{className:"flex items-center gap-1.5 font-display text-sm font-semibold tracking-[var(--type-tracking-display)] text-fg-default [text-transform:var(--type-uppercase)]",children:["Chat",g&&g.length>0&&i.jsx(Ot,{variant:"success",className:"text-xs",children:g.length})]}),y.length>0&&i.jsxs(Na,{value:k||"__all__",onValueChange:re=>S(re==="__all__"?"":re),children:[i.jsx(La,{className:"h-6 max-w-[120px] text-xs",onClick:re=>re.stopPropagation(),title:"Select chatTrigger node to target",children:i.jsx(Ca,{})}),i.jsxs(Ea,{children:[i.jsx(po,{value:"__all__",children:"All Triggers"}),y.map(re=>i.jsx(po,{value:re.id,children:re.data?.label||re.id},re.id))]})]})]}),g&&g.length>0&&i.jsx(Ut,{variant:"outline",size:"xs",onClick:oe,className:"border-destructive/40 text-destructive hover:bg-destructive/10",children:"Clear"})]}),i.jsx("div",{"data-scrollable":!0,style:{fontSize:W},className:"flex-1 overflow-auto px-4 py-3",children:!g||g.length===0?i.jsx("div",{className:"flex h-full items-center justify-center p-6 text-center text-xs text-muted-foreground",children:"Send a message to trigger chatTrigger nodes"}):i.jsxs("div",{className:"flex flex-col gap-1",children:[g.map((re,qe)=>{const Ye=re.role==="user";return i.jsxs("div",{className:Ne("chat-msg max-w-[80%] px-3 py-2 break-words",Ye?"chat-msg-user mr-0 ml-auto rounded-l-xl rounded-tr-xl rounded-br-sm bg-node-agent-soft":"chat-msg-bot mr-auto ml-0 rounded-r-xl rounded-tl-xl rounded-bl-sm border border-border-default bg-bg-elevated"),children:[Ye?i.jsx("pre",{className:"m-0 leading-tight font-[inherit] text-[length:inherit] whitespace-pre-wrap break-words text-foreground",children:re.message}):i.jsx("div",{className:"chat-markdown text-sm leading-snug text-foreground",children:i.jsx(ju,{remarkPlugins:[Nu,Cu],children:re.message})}),i.jsx("div",{className:"mt-0.5 text-xs text-muted-foreground",children:tt(re.timestamp)})]},`${re.timestamp}-${qe}`)}),i.jsx("div",{ref:A})]})}),i.jsxs("div",{className:"flex items-center gap-2 border-t border-border-default bg-bg-elevated px-4 py-2.5",children:[i.jsx(on,{ref:K,type:"text",placeholder:"Type a message...",value:ne,onChange:re=>X(re.target.value),onKeyDown:Ke,disabled:ue,className:"flex-1"}),i.jsxs(Ut,{variant:"default",size:"sm",onClick:me,disabled:ue||!ne.trim(),children:[i.jsx(l_,{className:"h-3.5 w-3.5"}),ue?"...":"Send"]})]})]}),i.jsx("div",{onMouseDown:te,className:Ne("w-1.5 shrink-0 cursor-ew-resize transition-colors",Ce?"bg-node-agent transition-none":"bg-border hover:bg-node-agent-soft")}),i.jsxs("div",{className:"flex flex-1 flex-col overflow-hidden",children:[i.jsxs("div",{className:"flex min-h-[32px] items-center justify-between border-b border-border-default bg-bg-elevated px-3 py-1.5",children:[i.jsxs("div",{className:"flex items-center gap-1",children:[i.jsxs("button",{onClick:()=>$("consoleTab","console"),className:Ne("flex items-center gap-1 rounded-sm px-2 py-0.5 text-xs transition-colors",R==="console"?"bg-node-agent-soft font-semibold text-node-agent":"text-muted-foreground hover:bg-muted"),children:["Console",c.length>0&&i.jsx(Ot,{variant:"secondary",className:"ml-1 px-1 text-xs",children:c.length})]}),i.jsxs("button",{onClick:()=>$("consoleTab","terminal"),className:Ne("flex items-center gap-1 rounded-sm px-2 py-0.5 text-xs transition-colors",R==="terminal"?"bg-node-model-soft font-semibold text-node-model":"text-muted-foreground hover:bg-muted"),children:["Terminal",f.length>0&&i.jsx(Ot,{variant:"info",className:"ml-1 px-1 text-xs",children:f.length})]})]}),i.jsxs("div",{className:"flex items-center gap-1.5",children:[R==="terminal"&&i.jsxs(Na,{value:I,onValueChange:re=>q(re),children:[i.jsx(La,{className:"h-6 max-w-[120px] text-xs",onClick:re=>re.stopPropagation(),children:i.jsx(Ca,{})}),i.jsxs(Ea,{children:[i.jsx(po,{value:"all",children:"All Levels"}),i.jsx(po,{value:"error",children:"Error"}),i.jsx(po,{value:"warning",children:"Warning+"}),i.jsx(po,{value:"info",children:"Info+"}),i.jsx(po,{value:"debug",children:"Debug+"})]})]}),R==="console"&&b.length>0&&i.jsxs(Na,{value:w||"__all__",onValueChange:re=>_(re==="__all__"?"":re),children:[i.jsx(La,{className:"h-6 max-w-[120px] text-xs",onClick:re=>re.stopPropagation(),title:"Filter logs by Console node",children:i.jsx(Ca,{})}),i.jsxs(Ea,{children:[i.jsx(po,{value:"__all__",children:"All Consoles"}),b.map(re=>i.jsx(po,{value:re.id,children:re.data?.label||re.id},re.id))]})]}),i.jsx(on,{type:"text",placeholder:"Filter...",value:R==="console"?N:z,onChange:re=>R==="console"?L(re.target.value):O(re.target.value),onClick:re=>re.stopPropagation(),className:"h-6 w-[100px] text-xs"}),i.jsxs("label",{className:"flex cursor-pointer items-center gap-1 rounded-sm px-1.5 py-0.5 text-xs text-muted-foreground",children:[i.jsx(Mi,{checked:Q,onCheckedChange:re=>$("autoScroll",re===!0),className:"h-3 w-3"}),"Auto"]}),R==="console"&&i.jsxs("label",{className:Ne("flex cursor-pointer items-center gap-1 rounded-sm px-1.5 py-0.5 text-xs text-muted-foreground transition-colors",H&&"bg-node-model-soft text-node-model"),title:"Format JSON and convert escaped newlines",children:[i.jsx(Mi,{checked:H,onCheckedChange:re=>$("prettyPrint",re===!0),className:"h-3 w-3"}),"Pretty"]}),i.jsx(on,{type:"number",value:W,onChange:re=>{const qe=Number(re.target.value);Number.isNaN(qe)||$("fontSize",qe)},min:Zb,max:Vb,className:"h-7 w-14 text-xs"}),(R==="console"&&c.length>0||R==="terminal"&&f.length>0)&&i.jsx(Ut,{variant:"outline",size:"xs",onClick:R==="console"?F:d,className:"border-destructive/40 text-destructive hover:bg-destructive/10",children:"Clear"})]})]}),i.jsxs("div",{"data-scrollable":!0,style:{fontSize:W},className:"flex-1 overflow-auto font-mono",children:[R==="console"?Oe.length===0?i.jsx("div",{className:"flex h-full items-center justify-center p-6 text-center text-xs text-muted-foreground",children:c.length===0?"Add a Console node to see debug output":"No logs match the filter"}):Oe.slice().reverse().map((re,qe)=>i.jsxs("div",{className:"flex items-start gap-3 border-b border-border px-3 py-1",children:[i.jsx("span",{className:"min-w-[90px] text-xs whitespace-nowrap text-muted-foreground",children:tt(re.timestamp)}),i.jsx("span",{className:"min-w-[80px] max-w-[120px] truncate text-sm font-medium text-warning",title:re.label||re.node_id,children:re.label||re.node_id}),re.source_node_label&&i.jsx("span",{className:"min-w-[80px] max-w-[120px] truncate font-mono text-xs text-node-trigger opacity-85",title:`Source: ${re.source_node_type} (${re.source_node_id})`,children:re.source_node_label}),(()=>{const{formatted:Ye,isJson:at}=yt(re.formatted);return at&&H?i.jsx("pre",{className:"code-editor-container m-0 flex-1 overflow-auto whitespace-pre-wrap break-words",dangerouslySetInnerHTML:{__html:bt(Ye)}}):!at&&H?i.jsx("div",{className:Ne("chat-markdown flex-1 overflow-auto leading-snug",lt(re.format)),children:i.jsx(ju,{remarkPlugins:[Nu,Cu],children:Ye})}):i.jsx("pre",{className:Ne("m-0 flex-1 overflow-auto leading-tight font-[inherit] text-[length:inherit] whitespace-pre-wrap break-words",lt(re.format)),children:Ye})})()]},`${re.node_id}-${re.timestamp}-${qe}`)):B.length===0?i.jsx("div",{className:"flex h-full items-center justify-center p-6 text-center text-xs text-muted-foreground",children:f.length===0?"Server logs will appear here":"No logs match the filter"}):i.jsx("div",{className:"min-w-max",children:B.slice().reverse().map((re,qe)=>i.jsxs("div",{className:Ne("border-b border-border px-3 py-0.5 whitespace-nowrap",re.level==="error"&&"bg-destructive/10",re.level==="warning"&&"bg-warning/10"),children:[i.jsx("span",{className:"text-xs text-muted-foreground",children:tt(re.timestamp)}),re.source&&i.jsxs("span",{className:"ml-2 text-xs text-info",children:["[",re.source,"]"]}),i.jsxs("span",{className:"ml-2 text-sm text-foreground",children:[re.message,re.details&&i.jsx("span",{className:"ml-2 text-muted-foreground",children:typeof re.details=="string"?re.details:JSON.stringify(re.details)})]})]},`${re.timestamp}-${qe}`))}),i.jsx("div",{ref:T})]})]})]})]})},ZT={light:"LIGHT",dark:"DARK",renaissance:"RENAISSANCE",greek:"GREEK",edo:"EDO",steampunk:"STEAMPUNK",atomic:"ATOMIC",cyber:"CYBER",wasteland:"WASTELAND",rot:"ROT",plague:"PLAGUE",surveillance:"SURVEILLANCE"},VT=()=>{const[t,e]=j.useState(()=>new Date);return j.useEffect(()=>{const s=window.setInterval(()=>e(new Date),1e3);return()=>window.clearInterval(s)},[]),t.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1})},Ip=()=>i.jsx("span",{className:"opacity-40",children:"|"}),WT=({workflowName:t,nodeCount:e})=>{const{isReady:s,isConnected:r}=Ct(),{theme:c}=Zs(),u=VT(),f=s?"ONLINE":r?"CONNECTING":"OFFLINE",d=s?"text-success":r?"text-warning":"text-destructive";return i.jsxs("div",{className:Ne("statusbar flex h-6 items-center gap-3 border-t border-border-default bg-bg-panel px-3.5","font-mono text-[11px] tracking-[0.04em] text-fg-muted","[text-transform:var(--type-uppercase)]"),role:"contentinfo","aria-label":"Status bar",children:[i.jsxs("span",{className:Ne("flex items-center gap-1.5 font-medium",d),children:[i.jsx("span",{className:Ne("pip inline-block h-1.5 w-1.5 rounded-full",s?"bg-success animate-pulse":r?"bg-warning":"bg-destructive")}),f]}),i.jsx(Ip,{}),i.jsxs("span",{title:t??"No workflow",children:["WF: ",i.jsx("span",{className:"text-fg-default",children:t??"—"})]}),i.jsx(Ip,{}),i.jsxs("span",{children:["NODES: ",i.jsx("span",{className:"text-fg-default",children:e??0})]}),i.jsxs("span",{className:"ml-auto flex items-center gap-3",children:[i.jsxs("span",{children:["THEME: ",i.jsx("span",{className:"text-fg-default",children:ZT[c]})]}),i.jsx(Ip,{}),i.jsx("span",{className:"tabular-nums",children:u})]})]})},BT=({open:t,onOpenChange:e,commands:s})=>{j.useEffect(()=>{const c=u=>{u.key==="k"&&(u.metaKey||u.ctrlKey)?(u.preventDefault(),e(!t)):u.key==="Escape"&&t&&e(!1)};return window.addEventListener("keydown",c),()=>window.removeEventListener("keydown",c)},[t,e]);const r=j.useMemo(()=>{const c={};for(const u of s){const f=u.group??"Actions";(c[f]??=[]).push(u)}return c},[s]);return i.jsx(Im,{open:t,onOpenChange:e,children:i.jsxs($m,{children:[i.jsx(qm,{className:"bg-bg-overlay"}),i.jsxs(Lm,{"data-slot":"command-palette",className:Ne("cmdk fixed left-1/2 top-[14%] z-50 w-[min(560px,92vw)] -translate-x-1/2 overflow-hidden rounded-md border border-border-strong bg-bg-elevated shadow-2xl outline-none","data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 duration-100"),children:[i.jsx(zu,{className:"sr-only",children:"Command palette"}),i.jsx(Hm,{className:"sr-only",children:"Run a command from the keyboard"}),i.jsxs(ka,{label:"Command palette",className:"flex flex-col",shouldFilter:!0,children:[i.jsxs("div",{className:"relative border-b border-border-default px-4",children:[i.jsx(zi,{className:"pointer-events-none absolute left-4 top-1/2 h-4 w-4 -translate-y-1/2 text-fg-muted"}),i.jsx(ka.Input,{placeholder:"Type a command or search...",autoFocus:!0,className:"h-12 w-full bg-transparent pl-7 font-display text-[15px] tracking-[var(--type-tracking-display)] text-fg-default placeholder:text-fg-faint focus:outline-none [text-transform:var(--type-uppercase)]"})]}),i.jsxs(ka.List,{className:"max-h-[360px] overflow-y-auto p-1.5",children:[i.jsx(ka.Empty,{className:"px-3 py-6 text-center text-sm text-fg-muted",children:"No matching commands"}),Object.entries(r).map(([c,u])=>i.jsx(ka.Group,{heading:c,className:"px-1 py-1 text-[10px] font-semibold uppercase tracking-wider text-fg-faint",children:u.map(f=>{const d=f.icon;return i.jsxs(ka.Item,{value:`${f.label} ${f.hint??""}`,onSelect:()=>{e(!1),requestAnimationFrame(()=>f.onRun())},className:"flex cursor-pointer items-center gap-3 rounded-sm px-3 py-2 text-sm text-fg-default data-[selected=true]:bg-bg-active data-[selected=true]:text-accent",children:[d&&i.jsx(d,{className:"h-4 w-4 shrink-0"}),i.jsx("span",{className:"flex-1 truncate font-display",children:f.label}),f.hint&&i.jsx("span",{className:"font-mono text-[11px] text-fg-faint",children:f.hint}),f.shortcut&&i.jsx("kbd",{className:"ml-auto rounded-sm border border-border-default bg-bg-app px-1.5 py-0.5 font-mono text-[10px] text-fg-muted",children:f.shortcut})]},f.id)})},c))]})]})]})]})})},FT={light:"Light",dark:"Dark",renaissance:"Renaissance",greek:"Greek",edo:"Edo",steampunk:"Steampunk",atomic:"Atomic Modern",cyber:"Cyber-Tyranny",wasteland:"Wasteland",rot:"Necromantic Rot",plague:"Plague City",surveillance:"Surveillance"},GT=({open:t,onOpenChange:e,handlers:s})=>{const{theme:r,setTheme:c}=Zs(),u=j.useMemo(()=>{const f=[{id:"workflow.new",label:"New Workflow",group:"Workflow",icon:Sm,onRun:s.newWorkflow},{id:"workflow.open",label:"Open Workflow",group:"Workflow",icon:_m,onRun:s.open},{id:"workflow.save",label:"Save Workflow",group:"Workflow",icon:mr,shortcut:"⌘S",onRun:s.save},{id:"workflow.export",label:"Export Workflow",group:"Workflow",icon:m0,onRun:s.exportFile},{id:"workflow.import",label:"Import Workflow",group:"Workflow",icon:h0,onRun:s.importJSON},s.isDeploying?{id:"run.stop",label:"Stop Workflow",group:"Run",icon:x0,onRun:s.stop}:{id:"run.start",label:"Start Workflow",group:"Run",icon:jm,onRun:s.run},{id:"open.settings",label:"Open Settings",group:"Open",icon:Ui,onRun:s.openSettings},{id:"open.credentials",label:"Open Credentials",group:"Open",icon:g0,onRun:s.openCredentials},{id:"view.sidebar",label:"Toggle Sidebar",group:"View",icon:p0,onRun:s.toggleSidebar},{id:"view.palette",label:"Toggle Component Palette",group:"View",icon:y0,onRun:s.toggleComponentPalette},{id:"view.console",label:"Toggle Console / Chat Panel",group:"View",icon:w0,onRun:s.toggleConsolePanel}];for(const d of Om)f.push({id:`theme.${d}`,label:`Switch theme: ${FT[d]}`,group:"Theme",icon:f0,hint:d===r?"active":void 0,onRun:()=>c(d)});return f},[s,r,c]);return i.jsx(BT,{open:t,onOpenChange:e,commands:u})},QT=new Set(["none","parchment","marble","ink","clockwork","vibraphone","terminal","scrap","crypt","bell","telex"]),G2=".btn, .action-btn, .row, .menu-pop-item, .wf-card, .comp, .cmdk-item, [data-sound-hover]";function KT(){if(typeof document>"u")return"none";const t=getComputedStyle(document.documentElement).getPropertyValue("--sound-pack").trim().replace(/['"]/g,"");return QT.has(t)?t:"none"}let Wb=!1;function YT(){if(Wb)return;Wb=!0;const t=Pt.success,e=Pt.error;Pt.success=((...s)=>(Hn.play("success"),t.apply(Pt,s))),Pt.error=((...s)=>(Hn.play("error"),e.apply(Pt,s)))}function PT(){const t=Fe.c(8),{theme:e}=Zs(),s=De(aA);let r;t[0]===Symbol.for("react.memo_cache_sentinel")?(r=[],t[0]=r):r=t[0],j.useEffect(sA,r);let c,u;t[1]!==s?(c=()=>{Hn.setEnabled(s)},u=[s],t[1]=s,t[2]=c,t[3]=u):(c=t[2],u=t[3]),j.useEffect(c,u);let f;t[4]!==e?(f=[e],t[4]=e,t[5]=f):f=t[5],j.useEffect(oA,f);let d;t[6]===Symbol.for("react.memo_cache_sentinel")?(d=[],t[6]=d):d=t[6],j.useEffect(eA,d);let h;t[7]===Symbol.for("react.memo_cache_sentinel")?(h=[],t[7]=h):h=t[7],j.useEffect(XT,h)}function XT(){const t=JT,e={once:!0,capture:!0,passive:!0};return window.addEventListener("pointerdown",t,e),window.addEventListener("keydown",t,e),window.addEventListener("touchstart",t,e),()=>{window.removeEventListener("pointerdown",t,e),window.removeEventListener("keydown",t,e),window.removeEventListener("touchstart",t,e)}}function JT(){Hn.unlock()}function eA(){const t=nA,e=tA;return document.addEventListener("mouseover",e,{capture:!0,passive:!0}),document.addEventListener("touchstart",t,{capture:!0,passive:!0}),()=>{document.removeEventListener("mouseover",e,!0),document.removeEventListener("touchstart",t,!0)}}function tA(t){const e=t.target,s=t.relatedTarget;if(!e||typeof e.closest!="function")return;const r=e.closest(G2);r&&(s&&r.contains(s)||Hn.play("hover"))}function nA(t){const e=t.target;!e||typeof e.closest!="function"||e.closest(G2)&&Hn.play("hover")}function oA(){Hn.setPack(KT())}function sA(){YT()}function aA(t){return t.soundEnabled}function cl(t,e){return((...s)=>{Hn.play(t),e?.(...s)})}const rA=()=>{const t=Fe.c(18),e=De(lA),s=De(iA),r=De(cA),c=De(uA),u=De(dA),f=De(fA),{data:d}=D0();let h;t[0]!==d?(h=d===void 0?[]:d,t[0]=d,t[1]=h):h=t[1];const g=h;let x;t[2]!==r?(x=O=>{r({name:O})},t[2]=r,t[3]=x):x=t[3];const y=x;let b;t[4]!==c?(b=()=>{c()},t[4]=c,t[5]=b):b=t[5];const k=b;let S;t[6]!==f?(S=()=>{f()},t[6]=f,t[7]=S):S=t[7];const w=S,_=pA;let N;t[8]!==u?(N=O=>{u(O.id)},t[8]=u,t[9]=N):N=t[9];const L=N;let z;return t[10]!==e||t[11]!==w||t[12]!==k||t[13]!==L||t[14]!==y||t[15]!==s||t[16]!==g?(z={currentWorkflow:e,hasUnsavedChanges:s,savedWorkflows:g,handleWorkflowNameChange:y,handleSave:k,handleNew:w,handleOpen:_,handleSelectWorkflow:L},t[10]=e,t[11]=w,t[12]=k,t[13]=L,t[14]=y,t[15]=s,t[16]=g,t[17]=z):z=t[17],z};function lA(t){return t.currentWorkflow}function iA(t){return t.hasUnsavedChanges}function cA(t){return t.updateWorkflow}function uA(t){return t.saveWorkflow}function dA(t){return t.loadWorkflow}function fA(t){return t.createNewWorkflow}function pA(){}const mA=t=>Vo(t)?.componentKind==="agent"?!0:t==="aiAgent"||t==="chatAgent",Q2=(t,e,s)=>{const r=s.filter(u=>u.type===e).map(u=>u.data?.label).filter(u=>!!u);if(!r.includes(t))return t;let c=1;for(;r.includes(`${t} ${c}`);)c++;return`${t} ${c}`},hA=({nodes:t,setNodes:e,saveNodeParameters:s,globalModelDefaults:r})=>{const c=j.useCallback(d=>{d.preventDefault(),d.dataTransfer.dropEffect="move"},[]),u=j.useCallback(async d=>{d.preventDefault();try{const h=JSON.parse(d.dataTransfer.getData("application/reactflow"));if(!h||!h.type)return;const g=d.target.getBoundingClientRect();let x={x:d.clientX-g.left-Ie.constants.dragOffset.x,y:d.clientY-g.top-Ie.constants.dragOffset.y};x=K4(x),t.length===0&&(x=Y4(t.length));const b=fn(h.type)?.displayName||h.type,k=Q2(b,h.type,t),S={id:`${h.type}-${Date.now()}`,type:h.type,position:x,data:{label:k}},w=h.data||{};if(r&&mA(h.type)&&(w.provider=r.provider,w.model=r.model),Object.keys(w).length>0&&s)try{await s(S.id,{...w,label:k}),console.log(`[DragAndDrop] Saved default parameters for node ${S.id}`)}catch(_){console.error(`[DragAndDrop] Failed to save parameters for node ${S.id}:`,_)}e(_=>_.concat(S))}catch(h){console.error("Error dropping node:",h)}},[e,t,s,r]),f=j.useCallback((d,h)=>{const g={};(h.properties||h.parameters||[]).forEach(y=>{g[y.name]=y.default}),d.dataTransfer.setData("application/reactflow",JSON.stringify({type:h.name||h.type,data:g})),d.dataTransfer.effectAllowed="move"},[]);return{onDragOver:c,onDrop:u,handleComponentDragStart:f}},K2="component_palette_collapsed_sections",gA=()=>{const t=Fe.c(7),[e,s]=j.useState(yA),[r,c]=j.useState("");let u,f;t[0]!==e?(u=()=>{try{localStorage.setItem(K2,JSON.stringify(e))}catch{}},f=[e],t[0]=e,t[1]=u,t[2]=f):(u=t[1],f=t[2]),j.useEffect(u,f);let d;t[3]===Symbol.for("react.memo_cache_sentinel")?(d=x=>{s(y=>({...y,[x]:!y[x]}))},t[3]=d):d=t[3];const h=d;let g;return t[4]!==e||t[5]!==r?(g={collapsedSections:e,searchQuery:r,setSearchQuery:c,toggleSection:h},t[4]=e,t[5]=r,t[6]=g):g=t[6],g};function xA(t){return t.group??[]}function yA(){try{const s=localStorage.getItem(K2);if(s)return JSON.parse(s)}catch{}const t={};return new Set(Vi().flatMap(xA)).forEach(s=>{t[s]=!0}),t}const bA=({setNodes:t,setEdges:e})=>{const s=De(y=>y.selectedNode),r=De(y=>y.setSelectedNode),c=y=>{const b=fn(y);return b?.inputs?b.inputs.length>0&&typeof b.inputs[0]=="object"?b.inputs:b.inputs.map((k,S)=>({name:`input_${S}`,displayName:"Input",type:k||"main",description:"Node input connection"})):[]},u=y=>{const b=fn(y);return b?.outputs?b.outputs.length>0&&typeof b.outputs[0]=="object"?b.outputs:b.outputs.map((k,S)=>({name:`output_${S}`,displayName:"Output",type:k||"main",description:"Node output connection"})):[]},f=(y,b)=>{const k=b.find(q=>q.id===y.source),S=b.find(q=>q.id===y.target);if(!k||!S)return console.warn("Connection validation: Source or target node not found"),!1;const w=u(k.type||""),_=c(S.type||""),N=y.sourceHandle||"output_0",L=y.targetHandle||"input_0",z=w.find(q=>`output-${q.name}`===N||q.name===N),O=_.find(q=>`input-${q.name}`===L||q.name===L);if(!z||!O)return console.log("[Connection Debug]",{sourceType:k.type,targetType:S.type,sourceHandle:N,targetHandle:L,sourceOutputs:w.map(q=>({name:q.name,computed:`output-${q.name}`})),targetInputs:_.map(q=>({name:q.name,computed:`input-${q.name}`})),sourceOutput:z?"found":"NOT FOUND",targetInput:O?"found":"NOT FOUND"}),console.warn("Connection validation: Handle not found",{sourceHandle:N,targetHandle:L}),!0;const I=d(z.type,O.type);return I||console.warn("Connection rejected: Incompatible types",{source:`${k.type}.${z.name} (${z.type})`,target:`${S.type}.${O.name} (${O.type})`}),I},d=(y,b)=>y===b||y==="main"||b==="main"?!0:{main:["main","trigger","ai","file","binary","webhook"],trigger:["main","trigger"],ai:["main","ai"],file:["main","file","binary"],binary:["main","file","binary"],webhook:["main","webhook"]}[y]?.includes(b)??!1,h=j.useCallback(y=>{const{currentWorkflow:b}=De.getState(),k=b?.nodes||[],S={source:y.source,target:y.target,sourceHandle:y.sourceHandle??null,targetHandle:y.targetHandle??null};if(console.log("[onConnect] Connection attempt:",{source:y.source,target:y.target,sourceHandle:y.sourceHandle,targetHandle:y.targetHandle}),!f(S,k)){console.warn("Connection rejected: Incompatible connection types",S),setTimeout(()=>{alert(`Connection not allowed: Incompatible connection types.
99
+
100
+ Tip: Connect outputs to compatible inputs (e.g., AI → Main, File → Binary).`)},0);return}console.log("[onConnect] Connection accepted, adding edge"),e(w=>pS(y,w))},[e]),g=j.useCallback(y=>{t(b=>b.filter(k=>!y.find(S=>S.id===k.id))),s&&y.find(b=>b.id===s.id)&&r(null)},[t,s,r]),x=j.useCallback(y=>{e(b=>b.filter(k=>!y.find(S=>S.id===k.id)))},[e]);return{onConnect:h,onNodesDelete:g,onEdgesDelete:x}};function Bb(t){return`${t}-${Date.now()}-${Math.floor(Math.random()*1e3)}`}function Fb(t,e){return typeof t=="string"?t:e[t.client_ref]??null}function Gb(t,e,s){if(!t)return e.defaultPosition??{x:200,y:200};if("x"in t&&"y"in t)return{x:t.x,y:t.y};const r=s.find(c=>c.id===t.anchor_node_id);return r?{x:r.position.x+(t.offset?.x??0),y:r.position.y+(t.offset?.y??0)}:t.fallback??e.defaultPosition??{x:200,y:200}}async function Y2(t,e){const s={applied:0,errors:[],refMap:{}};let r=[...e.nodes],c=[...e.edges];for(const u of t)try{switch(u.type){case"add_node":{const f=Bb(u.node_type);s.refMap[u.client_ref]=f;const d=Gb(u.position,e,r),h=u.label??u.parameters?.label??u.node_type,g={id:f,type:u.node_type,position:d,data:{label:h}};r=r.concat(g),e.setNodes(x=>x.concat(g)),await e.saveNodeParameters(f,{label:h,...u.parameters});break}case"add_edge":{const f=Fb(u.source,s.refMap),d=Fb(u.target,s.refMap);if(!f||!d)throw new Error("add_edge: unresolved client_ref");const h={id:`e-${f}-${d}-${Date.now()}-${Math.floor(Math.random()*1e3)}`,source:f,target:d,sourceHandle:u.source_handle??null,targetHandle:u.target_handle??null};c=c.concat(h),e.setEdges(g=>g.concat(h));break}case"set_node_parameters":{if(!await e.saveNodeParameters(u.node_id,u.parameters))throw new Error(`saveNodeParameters returned false for ${u.node_id}`);break}case"delete_node":{r=r.filter(f=>f.id!==u.node_id),c=c.filter(f=>f.source!==u.node_id&&f.target!==u.node_id),e.setNodes(f=>f.filter(d=>d.id!==u.node_id)),e.setEdges(f=>f.filter(d=>d.source!==u.node_id&&d.target!==u.node_id));break}case"delete_edge":{c=c.filter(f=>f.id!==u.edge_id),e.setEdges(f=>f.filter(d=>d.id!==u.edge_id));break}case"move_node":{const f=Gb(u.position,e,r);r=r.map(d=>d.id===u.node_id?{...d,position:f}:d),e.setNodes(d=>d.map(h=>h.id===u.node_id?{...h,position:f}:h));break}case"replace_node":{const f=r.find(x=>x.id===u.node_id);if(!f)throw new Error(`replace_node: node ${u.node_id} not found`);const d=Bb(u.node_type),h=u.label??u.parameters?.label??u.node_type,g={id:d,type:u.node_type,position:f.position,data:{label:h}};r=r.filter(x=>x.id!==u.node_id).concat(g),e.setNodes(x=>x.filter(y=>y.id!==u.node_id).concat(g)),u.preserve_edges!==!1?(c=c.map(x=>x.source===u.node_id?{...x,source:d}:x.target===u.node_id?{...x,target:d}:x),e.setEdges(x=>x.map(y=>y.source===u.node_id?{...y,source:d}:y.target===u.node_id?{...y,target:d}:y))):(c=c.filter(x=>x.source!==u.node_id&&x.target!==u.node_id),e.setEdges(x=>x.filter(y=>y.source!==u.node_id&&y.target!==u.node_id))),await e.saveNodeParameters(d,{label:h,...u.parameters});break}default:{const f=u;throw new Error(`Unknown op type: ${f?.type}`)}}s.applied+=1}catch(f){s.errors.push({op:u,message:f instanceof Error?f.message:String(f)})}return s}const vA="input-skill",wA=t=>t?Vo(t)?.uiHints?.isMasterSkillEditor===!0:!1;function kA(t){const e=Fe.c(18),{baseOnConnect:s,baseOnEdgesDelete:r,nodes:c,edges:u,setNodes:f,setEdges:d}=t,{sendRequest:h,saveNodeParameters:g,getNodeParameters:x}=Ct(),b=nd().data?.auto_add_skill_for_tools??!0;let k;e[0]!==u||e[1]!==b||e[2]!==x||e[3]!==c||e[4]!==g||e[5]!==h||e[6]!==d||e[7]!==f?(k=async(O,I)=>{if(!b)return;const q=I.source,M=I.target;if(!q||!M)return;const E=c.find(T=>T.id===q),$=c.find(T=>T.id===M);if(!E||!$)return;const Q=u.find(T=>T.target===M&&T.targetHandle===vA),R=(Q&&c.find(T=>T.id===Q.source&&wA(T.type)))?.id??null,U=(R?await x(R):null)?.parameters?.skills_config??null,W=await h("evaluate_auto_skill",{action:O,source_type:E.type??"",target_type:$.type??"",target_handle:I.targetHandle??"",target_node_id:M,master_skill_id:R,master_skill_config:U});W?.operations?.length&&await Y2(W.operations,{nodes:c,edges:u,setNodes:f,setEdges:d,saveNodeParameters:g})},e[0]=u,e[1]=b,e[2]=x,e[3]=c,e[4]=g,e[5]=h,e[6]=d,e[7]=f,e[8]=k):k=e[8];const S=k;let w;e[9]!==s||e[10]!==S?(w=O=>{s(O),S("connect",O)},e[9]=s,e[10]=S,e[11]=w):w=e[11];const _=w;let N;e[12]!==r||e[13]!==S?(N=O=>{r(O);for(const I of O)S("disconnect",I)},e[12]=r,e[13]=S,e[14]=N):N=e[14];const L=N;let z;return e[15]!==_||e[16]!==L?(z={onConnect:_,onEdgesDelete:L},e[15]=_,e[16]=L,e[17]=z):z=e[17],z}function SA(t){const e=Fe.c(10),{nodes:s,edges:r,setNodes:c,setEdges:u}=t,{addEventListener:f,saveNodeParameters:d}=Ct(),h=De(NA),g=De(jA);let x,y;e[0]!==f||e[1]!==h||e[2]!==r||e[3]!==g||e[4]!==s||e[5]!==d||e[6]!==u||e[7]!==c?(x=()=>f("workflow_ops_apply",k=>{const S=k?.operations??[];if(!(S.length===0&&!k?.workflow_id)){if(k.workflow_id&&k.workflow_id!==h){Pt.message("New workflow created",{description:`Workflow ${k.workflow_id} is ready.`,action:{label:"Switch",onClick:()=>g(k.workflow_id)}});return}S.length!==0&&Y2(S,{nodes:s,edges:r,setNodes:c,setEdges:u,saveNodeParameters:d}).then(_A)}}),y=[f,h,g,s,r,c,u,d],e[0]=f,e[1]=h,e[2]=r,e[3]=g,e[4]=s,e[5]=d,e[6]=u,e[7]=c,e[8]=x,e[9]=y):(x=e[8],y=e[9]),j.useEffect(x,y)}function _A(t){t.errors.length>0&&console.warn("[workflow_ops_apply] some ops failed:",t.errors)}function jA(t){return t.loadWorkflow}function NA(t){return t.currentWorkflow?.id}const CA=({nodes:t,edges:e,setNodes:s,setEdges:r,saveNodeParameters:c})=>{const u=j.useRef(null),f=j.useCallback(()=>{const g=t.filter(b=>b.selected);if(g.length===0){console.log("[CopyPaste] No nodes selected to copy");return}const x=new Set(g.map(b=>b.id)),y=e.filter(b=>x.has(b.source)&&x.has(b.target));u.current={nodes:g,edges:y},console.log(`[CopyPaste] Copied ${g.length} nodes and ${y.length} edges`)},[t,e]),d=j.useCallback(async()=>{if(!u.current){console.log("[CopyPaste] Nothing in clipboard to paste");return}const{nodes:g,edges:x}=u.current,y=new Map,b=Date.now();g.forEach((_,N)=>{y.set(_.id,`${_.type}-${b+N}`)});const k=50,S=[];for(let _=0;_<g.length;_++){const N=g[_],L=y.get(N.id),z=fn(N.type)?.displayName||N.type,O=[...t,...S],I=Q2(z,N.type,O),q={...N,id:L,position:{x:N.position.x+k,y:N.position.y+k},selected:!0,data:{...N.data,label:I}};if(c&&q.data)try{await c(L,q.data)}catch(M){console.error(`[CopyPaste] Failed to save parameters for ${L}:`,M)}S.push(q)}const w=x.map(_=>({..._,id:`e-${y.get(_.source)}-${y.get(_.target)}-${Date.now()}`,source:y.get(_.source),target:y.get(_.target),selected:!1}));s(_=>[..._.map(N=>({...N,selected:!1})),...S]),r(_=>[..._,...w]),console.log(`[CopyPaste] Pasted ${S.length} nodes and ${w.length} edges`)},[t,s,r,c]),h=u.current!==null&&u.current.nodes.length>0;return{copySelectedNodes:f,pasteNodes:d,hasClipboard:h}},LA=`
101
+ @keyframes dashFlow {
102
+ 0% { stroke-dashoffset: 24; }
103
+ 100% { stroke-dashoffset: 0; }
104
+ }
105
+ `;function EA(t){return`
106
+ .react-flow__edge path {
107
+ stroke: ${t.edgeDefault} !important;
108
+ stroke-width: 2px;
109
+ }
110
+
111
+ .react-flow__edge.selected path {
112
+ stroke: ${t.edgeSelected} !important;
113
+ stroke-width: 4px !important;
114
+ }
115
+
116
+ .react-flow__edge.executing path {
117
+ stroke: ${t.edgeExecuting} !important;
118
+ stroke-width: 3px !important;
119
+ stroke-dasharray: 8 4;
120
+ animation: dashFlow 0.5s linear infinite;
121
+ }
122
+
123
+ .react-flow__edge.completed path {
124
+ stroke: ${t.edgeCompleted} !important;
125
+ stroke-width: 2px !important;
126
+ }
127
+
128
+ .react-flow__edge.error path {
129
+ stroke: ${t.edgeError} !important;
130
+ stroke-width: 3px !important;
131
+ }
132
+
133
+ .react-flow__edge.pending path {
134
+ stroke: ${t.edgePending} !important;
135
+ stroke-width: 2px !important;
136
+ stroke-dasharray: 8 4;
137
+ animation: dashFlow 0.5s linear infinite;
138
+ }
139
+
140
+ .react-flow__edge.memory-active path {
141
+ stroke: ${t.edgeMemoryActive} !important;
142
+ stroke-width: 3px !important;
143
+ }
144
+
145
+ .react-flow__edge.tool-active path {
146
+ stroke: ${t.edgeToolActive} !important;
147
+ stroke-width: 3px !important;
148
+ }
149
+ `}function zA(t){return""}function MA(t){return[EA(t),zA(),LA].join(`
150
+ `)}const Qb={start:Z3,trigger:L3,agent:Ey,chat:Ey,model:Si,square:Si,tool:Si,generic:Si},TA=()=>{const t={};return Vi().forEach(e=>{const s=e.componentKind;s&&Qb[s]?t[e.type]=Qb[s]:e.type==="teamMonitor"?t[e.type]=H3:e.uiHints?.isMasterSkillEditor===!0?t[e.type]=O3:t[e.type]=Si}),t},AA={conditional:fj},OA=[],RA=[],DA=()=>{const t=ts(),e=De(le=>le.currentWorkflow),s=De(le=>le.hasUnsavedChanges),r=De(le=>le.sidebarVisible),c=De(le=>le.componentPaletteVisible),u=De(le=>le.updateWorkflow),f=De(le=>le.loadWorkflow),d=De(le=>le.createNewWorkflow),h=De(le=>le.deleteWorkflow),g=De(le=>le.migrateCurrentWorkflow),x=De(le=>le.toggleSidebar),y=De(le=>le.toggleComponentPalette),b=De(le=>le.proMode),k=De(le=>le.toggleProMode),S=De(le=>le.exportWorkflowToJSON),w=De(le=>le.exportWorkflowToFile),_=De(le=>le.selectedNode),N=De(le=>le.setSelectedNode),L=De(le=>le.renamingNodeId),z=De(le=>le.setRenamingNodeId),O=De(le=>le.setWorkflowExecuting),I=De(le=>le.setWorkflowExecutionOrder),q=De(le=>le.setWorkflowViewport),M=De(le=>le.clearWorkflowExecutionState);j.useEffect(()=>{fs.getState().setCurrentWorkflowId(e?.id)},[e?.id]);const[E,$,Q]=hS(OA),[H,R,D]=gS(RA),U=xS(),[W,T]=be.useState(null),[A,K]=be.useState(!1),ne=De(le=>le.workflowUIStates),X=be.useMemo(()=>e?.id?ne[e.id]||{isExecuting:!1,executedNodes:[],executionOrder:[],selectedNodeId:null}:null,[ne,e?.id]),ue=X?.isExecuting||!1,fe=be.useMemo(()=>new Set(X?.executedNodes||[]),[X?.executedNodes]),pe=X?.executionOrder||[],{handleWorkflowNameChange:we,handleSave:je,handleNew:ve,handleOpen:Ce,handleSelectWorkflow:ce}=rA(),{collapsedSections:te,searchQuery:Oe,setSearchQuery:B,toggleSection:F}=gA(),{saveNodeParameters:oe,getAllNodeParameters:me,executeWorkflow:Ke,deployWorkflow:tt,cancelDeployment:lt,cancelExecution:yt,getWorkflowStatus:bt,nodeStatuses:re,deploymentStatus:qe,workflowLock:Ye,isConnected:at,isReady:it,sendRequest:kt}=Ct(),he=De(le=>le.applyUIDefaults),Re=Sl(),{data:He=[]}=D0(),Rt=qe.isRunning&&qe.workflow_id===e?.id,Mt=ue||Rt,Le=Ye.locked&&Ye.workflow_id===e?.id,[Cn,On]=be.useState(null),{onDragOver:tn,onDrop:rn,handleComponentDragStart:sn}=hA({nodes:E,setNodes:$,saveNodeParameters:oe,globalModelDefaults:Cn}),{onConnect:Sr,onNodesDelete:Vs,onEdgesDelete:_r}=bA({setNodes:$,setEdges:R}),{onConnect:gs,onEdgesDelete:xs}=kA({baseOnConnect:Sr,baseOnEdgesDelete:_r,nodes:E,edges:H,setNodes:$,setEdges:R});SA({nodes:E,edges:H,setNodes:$,setEdges:R});const{copySelectedNodes:Eo,pasteNodes:go}=CA({nodes:E,edges:H,setNodes:$,setEdges:R,saveNodeParameters:oe}),ys=be.useCallback(async(le,Te)=>{const $e=new Set(V8("agent")),ft=E.filter(Dt=>$e.has(Dt.type||""));if(ft.length===0)return;const et=ft.map(Dt=>Dt.id),Tt=await me(et);await Promise.all(ft.map(Dt=>{const Zn=Tt[Dt.id]?.parameters||{};return oe(Dt.id,{...Zn,provider:le,model:Te})}))},[E,me,oe]),Bo=be.useCallback(()=>{$(le=>le.map(Te=>Te.selected?{...Te,data:{...Te.data,disabled:!Te.data?.disabled}}:Te))},[$]),[Ws,Bs]=be.useState(()=>{try{const le=localStorage.getItem("workflow_settings");return le?{...yl,...JSON.parse(le)}:yl}catch{return yl}}),[Fs,xo]=be.useState(!1),[jr,os]=be.useState(!1),[$a,qa]=be.useState(0),[Gs,Qs]=be.useState(!1),Ha=De(le=>le.consolePanelVisible),Ks=De(le=>le.toggleConsolePanelVisible);PT(),j.useEffect(()=>{const le=document.documentElement;let Te=!1;const $e=Dt=>{Dt?le.setAttribute("data-page-hidden",""):requestAnimationFrame(()=>{requestAnimationFrame(()=>{!document.hidden&&!Te&&le.removeAttribute("data-page-hidden")})})},ft=()=>$e(document.hidden||Te),et=()=>{Te=!0,$e(!0)},Tt=()=>{Te=!1,$e(document.hidden)};return document.addEventListener("visibilitychange",ft),window.addEventListener("blur",et),window.addEventListener("focus",Tt),()=>{document.removeEventListener("visibilitychange",ft),window.removeEventListener("blur",et),window.removeEventListener("focus",Tt)}},[]);const[an,xn]=be.useState(null);be.useEffect(()=>{localStorage.setItem("workflow_settings",JSON.stringify(Ws))},[Ws]),be.useEffect(()=>{if(!it||!e?.id)return;const le=e.id;let Te=!1;return(async()=>{try{const{executing:$e}=await bt(le);if(Te)return;De.getState().setWorkflowExecuting(le,$e)}catch{}})(),()=>{Te=!0}},[it,e?.id,bt]);const Ln=be.useRef(!1);be.useEffect(()=>{if(!at||Ln.current)return;Ln.current=!0,(async()=>{try{const Te=await kt("get_user_settings",{});Te?.settings&&(he({sidebarDefaultOpen:Te.settings.sidebar_default_open,componentPaletteDefaultOpen:Te.settings.component_palette_default_open,consolePanelDefaultOpen:Te.settings.console_panel_default_open}),Bs($e=>({...$e,autoSave:Te.settings.auto_save??$e.autoSave,autoSaveInterval:Te.settings.auto_save_interval??$e.autoSaveInterval,sidebarDefaultOpen:Te.settings.sidebar_default_open??$e.sidebarDefaultOpen,componentPaletteDefaultOpen:Te.settings.component_palette_default_open??$e.componentPaletteDefaultOpen,consolePanelDefaultOpen:Te.settings.console_panel_default_open??$e.consolePanelDefaultOpen})),console.log("[Dashboard] UI defaults loaded from database"))}catch(Te){console.error("[Dashboard] Failed to load UI defaults:",Te)}})()},[at,kt,he]);const zo=be.useRef(!1),[bs,Ua]=be.useState(()=>Vi().length>0);be.useEffect(()=>{if(!(!it||zo.current)){if(!_0.nodeSpecBackend){Ua(!0);return}zo.current=!0,H8(kt).finally(()=>Ua(!0))}},[it,kt]);const Nr=be.useMemo(()=>E.map(le=>{const Te=re[le.id]?.status;let $e="";return Te==="executing"||Te==="waiting"?$e="executing":Te==="success"?$e="completed":Te==="error"?$e="error":ue&&pe.includes(le.id)&&!fe.has(le.id)&&($e="pending"),{...le,className:$e}}),[E,re,ue,pe,fe]),Za=be.useMemo(()=>H.map(le=>{const Te=re[le.source],$e=re[le.target],ft=E.find(Vt=>Vt.id===le.target);let et="";const Tt=le.targetHandle==="input-memory",Dt=le.targetHandle==="input-tools",Zn=le.targetHandle==="input-skill";if((ft?.type==="aiAgent"||ft?.type==="chatAgent")&&$e?.status==="executing"){const Vt=$e?.data?.phase,Vn=$e?.data?.has_memory;if(Tt&&Vn)(Vt==="loading_memory"||Vt==="memory_loaded"||Vt==="saving_memory"||Vt==="invoking_llm")&&(et="memory-active");else if(Dt){const Ps=Te?.status;Ps==="executing"?et="tool-active":(Vt==="invoking_llm"||Vt==="building_graph")&&Ps==="success"&&(et="completed")}else Zn&&Vt==="loading_skills"&&(et="skill-active")}if(!et&&(ue||Rt)){const Vt=Te?.status,Vn=$e?.status;Vn==="executing"?et="executing":Vt==="success"&&Vn==="success"?et="completed":Vn==="error"?et="error":Vt==="success"&&Vn==="waiting"?et="executing":(Vt==="success"&&!Vn||Vt==="waiting")&&(et="pending")}return{...le,className:et}}),[H,re,ue,Rt,E]),ss=be.useMemo(()=>({type:"smoothstep",animated:!0,style:{stroke:t.dracula.cyan,strokeWidth:3}}),[t.dracula.cyan]),Ys=be.useMemo(()=>({stroke:t.dracula.cyan,strokeWidth:2}),[t.dracula.cyan]),Fo=be.useMemo(()=>({width:"100%",height:"100%"}),[]),Go=be.useMemo(()=>[20,20],[]),Qo=be.useMemo(()=>({hideAttribution:!0}),[]),as=be.useMemo(()=>TA(),[bs]),P=AA,J=async()=>{if(!e)return;const le=e.id;O(le,!0),T(null),M(le),O(le,!0);try{const Te=E.find(Dt=>Dt.type==="start");if(!Te){alert(`No Start node found in workflow.
151
+
152
+ Add a Start node to begin workflow execution.`),O(le,!1);return}const ft=(()=>{const Dt=[],Zn=new Set,ao=[Te.id],eo=new Map;for(H.forEach(Vt=>{const Vn=eo.get(Vt.source)||[];Vn.push(Vt.target),eo.set(Vt.source,Vn)});ao.length>0;){const Vt=ao.shift();if(Zn.has(Vt))continue;Zn.add(Vt),Dt.push(Vt),(eo.get(Vt)||[]).forEach(Ps=>{Zn.has(Ps)||ao.push(Ps)})}return Dt})();I(le,ft),console.log("[Workflow Run] Starting workflow execution with",E.length,"nodes and",H.length,"edges"),console.log("[Workflow Run] Execution order:",ft);const et=await Ke(E,H);console.log("[Workflow Run] Execution complete:",et);const Tt={success:et.success,nodeId:"workflow",nodeName:e.name||"Workflow",timestamp:new Date().toISOString(),executionTime:et.execution_time||0,outputs:et.node_results||{},data:et,error:et.error||(et.errors?.length>0?et.errors[0].error:void 0),nodeData:et,nodesExecuted:et.nodes_executed||[],executionOrder:et.execution_order||[],totalNodes:et.total_nodes||0,completedNodes:et.completed_nodes||0,nodeResults:et.node_results||{},errors:et.errors||[],response:et.success?`Workflow executed successfully. ${et.completed_nodes}/${et.total_nodes} nodes completed.`:`Workflow failed: ${et.error||"Unknown error"}`,model:"workflow"};T(Tt),K(!0)}catch(Te){console.error("Workflow execution error:",Te);const $e={success:!1,nodeId:"workflow",nodeName:e?.name||"Workflow",timestamp:new Date().toISOString(),executionTime:0,error:Te.message||"Unknown execution error",response:`Error: ${Te.message}`,model:"workflow"};T($e),K(!0)}finally{O(le,!1)}},xe=async()=>{if(!e)return;const le=["start","cronScheduler","webhookTrigger","whatsappReceive","telegramReceive","twitterReceive","googleGmailReceive","emailReceive","workflowTrigger","chatTrigger","taskTrigger"];if(!E.some($e=>le.includes($e.type||""))){alert(`No trigger node found in workflow.
153
+
154
+ Add a trigger node (Cron Scheduler, WhatsApp Receive, Webhook, Chat Trigger, etc.) to begin deployment.`);return}try{console.log("[Dashboard] Deploying with edges:",{edgeCount:H.length,edges:H.map(ft=>({id:ft.id,source:ft.source,target:ft.target,sourceHandle:ft.sourceHandle,targetHandle:ft.targetHandle})),toolkitEdges:H.filter(ft=>ft.target?.includes("androidTool")||ft.source?.includes("androidTool"))});const $e=await tt(e.id,E,H,"default");$e.success||(console.error("[Dashboard] Deployment failed:",$e.error),alert(`Failed to start deployment: ${$e.error}`))}catch($e){console.error("[Dashboard] Deployment error:",$e),alert(`Deployment error: ${$e.message}`)}},G=async()=>{const le=e?.id;if(le)try{if(Rt){console.log("[Dashboard] Cancelling deployment for workflow:",le);const Te=await lt(le);Te?.success||console.error("[Dashboard] Failed to cancel deployment:",Te?.message);return}ue&&(console.log("[Dashboard] Cancelling ad-hoc execution for workflow:",le),await yt(le))}catch(Te){console.error("[Dashboard] Cancel error:",Te)}},Me=async()=>{if(!e?.nodes.length)return{};const le=e.nodes.map(Te=>Te.id);try{const Te=await me(le),$e={};for(const[ft,et]of Object.entries(Te))et?.parameters&&Object.keys(et.parameters).length>0&&($e[ft]=et.parameters);return $e}catch(Te){return console.error("Failed to fetch node parameters for export:",Te),{}}},ut=async()=>{try{const le=await Me(),Te=S(le);await navigator.clipboard.writeText(Te),alert("Workflow JSON copied to clipboard")}catch(le){console.error("Export JSON error:",le),alert("Failed to export workflow JSON")}},mt=async()=>{try{const le=await Me();w(le)}catch(le){console.error("Export file error:",le),alert("Failed to export workflow file")}},wt=()=>{const le=document.createElement("input");le.type="file",le.accept=".json",le.onchange=async Te=>{try{const $e=Te.target.files?.[0];if(!$e)return;const ft=await a8($e),et=ft.name||"Imported Workflow";let Tt=await kt("import_workflow",{workflow:ft});if(!Tt.success){const Dt=(Tt.report?.errors??[]).map(Zn=>`- ${Zn.code}: ${Zn.message}`).join(`
155
+ `);alert(`Failed to import workflow: ${Tt.error??"unknown error"}`+(Dt?`
156
+
157
+ Validation errors:
158
+ ${Dt}`:""));return}if(Tt.preview){let Dt=!1,Zn=et;const ao=Tt.missing_credentials??[];if(ao.length>0){const eo=ao.map(Vn=>`- ${Vn.display_name} (${Vn.provider_id})`).join(`
159
+ `);if(!window.confirm(`This workflow needs ${ao.length} credential${ao.length===1?"":"s"} that ${ao.length===1?"is":"are"} not configured:
160
+
161
+ ${eo}
162
+
163
+ Click OK to import anyway and configure ${ao.length===1?"it":"them"} later, or Cancel to abort.`))return;Dt=!0}if(Tt.name_conflict){const eo=Tt.suggested_name??`${et} (imported)`,Vt=window.prompt(`A workflow named "${et}" already exists.
164
+
165
+ Enter a new name for the imported workflow:`,eo);if(Vt===null)return;if(Zn=Vt.trim(),!Zn){alert("Workflow name cannot be empty");return}}if(Tt=await kt("import_workflow",{workflow:ft,name:Zn,force_credentials:Dt}),!Tt.success){alert(`Failed to import workflow: ${Tt.error??"unknown error"}`);return}}!Tt.preview&&Tt.workflow_id&&(await f(Tt.workflow_id),alert(`Workflow "${Tt.name}" imported with ${Tt.node_count} nodes and ${Tt.edge_count} connections`))}catch($e){console.error("Import error:",$e),alert(`Failed to import workflow: ${$e.message}`)}},le.click()},so=be.useRef(!1),bn=be.useRef(!1);j.useEffect(()=>{if(bn.current)return;bn.current=!0,console.log("[Dashboard] Mount effect - loading workflows",{hasCurrentWorkflow:!!e,currentWorkflowId:e?.id});const le=()=>Re.fetchQuery({queryKey:Hu,queryFn:async()=>(await fl.getAllWorkflows()).map(ft=>({id:ft.id,name:ft.name,nodeCount:ft.nodeCount,createdAt:new Date(ft.createdAt),lastModified:new Date(ft.lastModified)}))});e?so.current||(console.log("[Dashboard] Migrating current workflow"),g(),so.current=!0,le()):(async()=>{const $e=await le();if($e.length>0){const et=[...$e].sort((Tt,Dt)=>Dt.lastModified.getTime()-Tt.lastModified.getTime())[0];await f(et.id)}De.getState().currentWorkflow||(console.log("[Dashboard] No saved workflows found, creating new one"),d())})()},[Re,e,f,d,g]),j.useEffect(()=>{if(e&&e.id){const le=e.nodes||[];$(le),R(e.edges||[])}},[e?.id,e?.lastModified,$,R]),j.useEffect(()=>{if(!e||!e.id)return;const le=setTimeout(()=>{try{const Te=JSON.stringify(uy(E)),$e=JSON.stringify(dy(H)),ft=JSON.stringify(uy(e.nodes||[])),et=JSON.stringify(dy(e.edges||[]));(Te!==ft||$e!==et)&&(console.log("[Dashboard] Syncing ReactFlow -> Store",{reactFlowEdgeCount:H.length,storeEdgeCount:(e.edges||[]).length,newEdges:H.filter(Tt=>!(e.edges||[]).find(Dt=>Dt.id===Tt.id))}),u({nodes:E,edges:H}))}catch(Te){console.warn("Failed to sync workflow state:",Te)}},t.constants.debounceDelay.workflowUpdate);return()=>clearTimeout(le)},[E,H,e?.id,u]);const ke=be.useRef(null),ze=be.useRef(null);j.useEffect(()=>{const le=e?.id,Te=ke.current;if(Te&&Te!==le){try{const $e=U.getViewport();q(Te,$e)}catch{}ze.current=null}ke.current=le||null},[e?.id,U,q]),j.useEffect(()=>{const le=e?.id;if(!le||ze.current===le)return;const $e=ne[le]?.viewport;if(!$e){ze.current=le;return}const ft=setTimeout(()=>{try{U.setViewport($e,{duration:0}),ze.current=le}catch{}},100);return()=>clearTimeout(ft)},[e?.id,E.length,ne,U]);const Ue=be.useCallback((le,Te)=>{le.preventDefault(),N(Te),xn({nodeId:Te.id,x:le.clientX,y:le.clientY})},[N]),dt=be.useCallback(()=>{xn(null)},[]),Lt=be.useCallback(()=>{an&&z(an.nodeId),dt()},[an,z,dt]),rt=be.useCallback(()=>{an&&E.find(Te=>Te.id===an.nodeId)&&($(Te=>Te.map($e=>({...$e,selected:$e.id===an.nodeId}))),setTimeout(()=>Eo(),0)),dt()},[an,E,$,Eo,dt]),Yn=be.useCallback(()=>{an&&Vs([E.find(le=>le.id===an.nodeId)].filter(Boolean)),dt()},[an,E,Vs,dt]);return j.useEffect(()=>{const le=Te=>{if(!(Te.target instanceof HTMLInputElement||Te.target instanceof HTMLTextAreaElement)&&!L){if(Te.key==="F2"&&_){Te.preventDefault(),z(_.id);return}if(Te.ctrlKey||Te.metaKey)switch(Te.key.toLowerCase()){case"s":Te.preventDefault(),cl("save",je)();break;case"c":Te.preventDefault(),Eo();break;case"v":Te.preventDefault(),go();break}else Te.key.toLowerCase()==="d"&&(Te.preventDefault(),Bo())}};return document.addEventListener("keydown",le),()=>{document.removeEventListener("keydown",le)}},[je,Eo,go,Bo,_,L,z]),i.jsxs(i.Fragment,{children:[i.jsx("style",{children:MA(t.colors)}),i.jsxs("div",{className:"app-frame",style:{width:"100%",height:"100vh",display:"flex",flexDirection:"column",backgroundColor:t.colors.background,fontFamily:"system-ui, sans-serif"},children:[i.jsx(gz,{workflowName:e?.name||"Untitled Workflow",onWorkflowNameChange:we,onSave:cl("save",je),onNew:ve,onOpen:Ce,onRun:cl("run",J),isRunning:ue,onDeploy:cl("run",xe),onCancelDeployment:G,isDeploying:Mt,hasUnsavedChanges:s,sidebarVisible:r,onToggleSidebar:x,componentPaletteVisible:c,onToggleComponentPalette:y,proMode:b,onToggleProMode:k,onOpenSettings:()=>xo(!0),onOpenCredentials:()=>os(!0),onExportJSON:ut,onExportFile:mt,onImportJSON:wt,onGlobalModelChange:(le,Te)=>On({provider:le,model:Te}),onOverrideAllAgents:ys}),i.jsxs("div",{style:{flex:1,minHeight:0,display:"flex",overflow:"hidden"},children:[i.jsx("div",{style:{width:r?"280px":"0px",overflow:"hidden",transition:"width 0.3s ease",borderRight:r?`1px solid ${t.colors.border}`:"none",display:"flex",flexDirection:"column"},children:r&&i.jsx(bz,{workflows:He,currentWorkflowId:e?.id,onSelectWorkflow:ce,onDeleteWorkflow:h})}),i.jsxs("div",{style:{flex:1,display:"flex",position:"relative"},children:[i.jsx("div",{className:"canvas-host canvas",style:{flex:1,position:"relative"},children:i.jsx(Hb,{children:i.jsx(yS,{nodes:Nr,edges:Za,onNodesChange:Q,onEdgesChange:D,onNodesDelete:Vs,onEdgesDelete:xs,onConnect:gs,onDragOver:tn,onDrop:rn,onNodeContextMenu:Ue,nodeTypes:as,edgeTypes:P,connectionMode:wS.Loose,deleteKeyCode:Le?[]:["Delete","Backspace"],edgesFocusable:!Le,edgesUpdatable:!Le,nodesDraggable:!Le,nodesConnectable:!Le,nodesFocusable:!Le,elementsSelectable:!Le,selectNodesOnDrag:!1,selectionOnDrag:!0,selectionMode:vS.Partial,selectionKeyCode:"Control",panOnDrag:!0,panOnScroll:!1,zoomOnScroll:!0,preventScrolling:!0,proOptions:Qo,defaultEdgeOptions:ss,connectionLineStyle:Ys,connectionLineType:bS.SmoothStep,snapToGrid:!0,snapGrid:Go,style:Fo,children:i.jsx(kS,{})})})}),i.jsx("div",{style:{width:c?t.layout.sidebarWidth:"0px",overflow:"hidden",transition:"width 0.3s ease",borderLeft:c?`1px solid ${t.colors.border}`:"none",display:"flex",flexDirection:"column"},children:c&&i.jsx(uz,{searchQuery:Oe,onSearchChange:B,collapsedSections:te,onToggleSection:F,onDragStart:sn,proMode:b,specsReady:bs})})]})]}),i.jsx(UT,{isOpen:Ha,onToggle:Ks,nodes:E}),i.jsx(WT,{workflowName:e?.name,nodeCount:E.length}),i.jsx(GT,{open:Gs,onOpenChange:Qs,handlers:{save:cl("save",je),newWorkflow:ve,open:Ce,run:cl("run",xe),stop:G,isDeploying:Mt,exportFile:mt,importJSON:wt,openSettings:()=>xo(!0),openCredentials:()=>os(!0),toggleSidebar:x,toggleComponentPalette:y,toggleConsolePanel:Ks}}),i.jsxs(Hb,{children:[i.jsx(GE,{}),i.jsx(lz,{})]}),i.jsx(jz,{isOpen:A,onClose:()=>K(!1),result:W}),i.jsx(_z,{isOpen:Fs,onClose:()=>xo(!1),settings:Ws,onSettingsChange:Bs,onReplayOnboarding:()=>{xo(!1),qa(le=>le+1)}}),i.jsx(xT,{visible:jr,onClose:()=>os(!1)}),i.jsx(DT,{onOpenCredentials:()=>os(!0),reopenTrigger:$a}),an&&i.jsx(pj,{nodeId:an.nodeId,x:an.x,y:an.y,onClose:dt,onRename:Lt,onCopy:rt,onDelete:Yn})]})]})},IA=()=>i.jsx(mS,{children:i.jsx(DA,{})}),$A=()=>{const t=Fe.c(51),{login:e,register:s,canRegister:r,error:c,isLoading:u}=Uu(),[f,d]=j.useState(!1),[h,g]=j.useState(""),[x,y]=j.useState(""),[b,k]=j.useState(""),[S,w]=j.useState(null);let _;t[0]!==b||t[1]!==h||t[2]!==f||t[3]!==e||t[4]!==x||t[5]!==s?(_=async we=>{if(we.preventDefault(),w(null),!h||!x){w("Email and password are required");return}if(f){if(!b){w("Display name is required");return}if(x.length<8){w("Password must be at least 8 characters");return}await s(h,x,b)}else await e(h,x)},t[0]=b,t[1]=h,t[2]=f,t[3]=e,t[4]=x,t[5]=s,t[6]=_):_=t[6];const N=_;let L;t[7]!==f?(L=()=>{d(!f),w(null)},t[7]=f,t[8]=L):L=t[8];const z=L,O=S||c;let I;t[9]===Symbol.for("react.memo_cache_sentinel")?(I=i.jsx(tj,{className:"text-3xl font-bold text-node-agent",children:"MachinaOs"}),t[9]=I):I=t[9];const q=f?"Create your account":"Sign in to continue";let M;t[10]!==q?(M=i.jsxs(ej,{className:"text-center",children:[I,i.jsx(nj,{children:q})]}),t[10]=q,t[11]=M):M=t[11];let E;t[12]!==O?(E=O&&i.jsx(Nl,{variant:"destructive",children:i.jsx(Cl,{children:O})}),t[12]=O,t[13]=E):E=t[13];let $;t[14]!==b||t[15]!==u||t[16]!==f?($=f&&i.jsxs("div",{className:"space-y-1.5",children:[i.jsx(_a,{htmlFor:"displayName",children:"Display Name"}),i.jsx(on,{id:"displayName",type:"text",value:b,onChange:we=>k(we.target.value),placeholder:"Your name",disabled:u})]}),t[14]=b,t[15]=u,t[16]=f,t[17]=$):$=t[17];let Q;t[18]===Symbol.for("react.memo_cache_sentinel")?(Q=i.jsx(_a,{htmlFor:"email",children:"Email"}),t[18]=Q):Q=t[18];let H;t[19]===Symbol.for("react.memo_cache_sentinel")?(H=we=>g(we.target.value),t[19]=H):H=t[19];let R;t[20]!==h||t[21]!==u?(R=i.jsxs("div",{className:"space-y-1.5",children:[Q,i.jsx(on,{id:"email",type:"email",value:h,onChange:H,placeholder:"you@example.com",disabled:u,autoComplete:"email"})]}),t[20]=h,t[21]=u,t[22]=R):R=t[22];let D;t[23]===Symbol.for("react.memo_cache_sentinel")?(D=i.jsx(_a,{htmlFor:"password",children:"Password"}),t[23]=D):D=t[23];let U;t[24]===Symbol.for("react.memo_cache_sentinel")?(U=we=>y(we.target.value),t[24]=U):U=t[24];const W=f?"At least 8 characters":"Your password",T=f?"new-password":"current-password";let A;t[25]!==u||t[26]!==x||t[27]!==W||t[28]!==T?(A=i.jsxs("div",{className:"space-y-1.5",children:[D,i.jsx(on,{id:"password",type:"password",value:x,onChange:U,placeholder:W,disabled:u,autoComplete:T})]}),t[25]=u,t[26]=x,t[27]=W,t[28]=T,t[29]=A):A=t[29];const K=u?"Please wait...":f?"Create Account":"Sign In";let ne;t[30]!==u||t[31]!==K?(ne=i.jsx(Ut,{type:"submit",className:"w-full",disabled:u,children:K}),t[30]=u,t[31]=K,t[32]=ne):ne=t[32];let X;t[33]!==N||t[34]!==A||t[35]!==ne||t[36]!==$||t[37]!==R?(X=i.jsxs("form",{onSubmit:N,className:"space-y-4",children:[$,R,A,ne]}),t[33]=N,t[34]=A,t[35]=ne,t[36]=$,t[37]=R,t[38]=X):X=t[38];let ue;t[39]!==X||t[40]!==E?(ue=i.jsxs(Vu,{className:"space-y-4",children:[E,X]}),t[39]=X,t[40]=E,t[41]=ue):ue=t[41];let fe;t[42]!==r||t[43]!==u||t[44]!==f||t[45]!==z?(fe=r&&i.jsxs(oj,{className:"justify-center gap-2 border-t pt-4 text-sm",children:[i.jsx("span",{className:"text-muted-foreground",children:f?"Already have an account?":"Don't have an account?"}),i.jsx(Ut,{variant:"link",onClick:z,disabled:u,className:"h-auto p-0",children:f?"Sign In":"Register"})]}),t[42]=r,t[43]=u,t[44]=f,t[45]=z,t[46]=fe):fe=t[46];let pe;return t[47]!==ue||t[48]!==fe||t[49]!==M?(pe=i.jsx("div",{className:"flex min-h-screen items-center justify-center bg-background p-5",children:i.jsxs(Hs,{className:"w-full max-w-md",children:[M,ue,fe]})}),t[47]=ue,t[48]=fe,t[49]=M,t[50]=pe):pe=t[50],pe},qA=t=>{const e=Fe.c(4),{children:s}=t,{isAuthenticated:r,isLoading:c}=Uu();if(c){let f;return e[0]===Symbol.for("react.memo_cache_sentinel")?(f=i.jsx("div",{className:"flex h-screen items-center justify-center bg-background text-foreground",children:i.jsxs("div",{className:"text-center",children:[i.jsx(mo,{className:"mx-auto mb-4 h-10 w-10 animate-spin text-node-agent"}),i.jsx("p",{children:"Loading..."})]})}),e[0]=f):f=e[0],f}if(!r){let f;return e[1]===Symbol.for("react.memo_cache_sentinel")?(f=i.jsx($A,{}),e[1]=f):f=e[1],f}let u;return e[2]!==s?(u=i.jsx(i.Fragment,{children:s}),e[2]=s,e[3]=u):u=e[3],u},HA=()=>{const t=Fe.c(4);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e={position:"absolute",overflow:"hidden"},t[0]=e):e=t[0];let s;t[1]===Symbol.for("react.memo_cache_sentinel")?(s=i.jsxs("filter",{id:"ink-blot",children:[i.jsx("feTurbulence",{type:"fractalNoise",baseFrequency:"0.02 0.04",numOctaves:"2",seed:"3"}),i.jsx("feDisplacementMap",{in:"SourceGraphic",scale:"2"})]}),t[1]=s):s=t[1];let r;t[2]===Symbol.for("react.memo_cache_sentinel")?(r=i.jsxs("filter",{id:"noise",children:[i.jsx("feTurbulence",{type:"fractalNoise",baseFrequency:"0.9",numOctaves:"2",stitchTiles:"stitch"}),i.jsx("feColorMatrix",{values:"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.15 0"})]}),t[2]=r):r=t[2];let c;return t[3]===Symbol.for("react.memo_cache_sentinel")?(c=i.jsx("svg",{width:0,height:0,"aria-hidden":"true",style:e,children:i.jsxs("defs",{children:[s,r,i.jsxs("filter",{id:"crt",children:[i.jsx("feColorMatrix",{values:"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"}),i.jsx("feOffset",{in:"SourceGraphic",dx:"-1",dy:"0",result:"r"}),i.jsx("feOffset",{in:"SourceGraphic",dx:"1",dy:"0",result:"b"}),i.jsx("feBlend",{in:"r",in2:"b",mode:"screen"})]})]})}),t[3]=c):c=t[3],c},UA=({...t})=>{const{isDarkMode:e}=Zs(),s=e?"dark":"light";return i.jsx(NS,{theme:s,className:"toaster group",icons:{success:i.jsx(d0,{className:"size-4"}),info:i.jsx(Ei,{className:"size-4"}),warning:i.jsx(wl,{className:"size-4"}),error:i.jsx(i_,{className:"size-4"}),loading:i.jsx(mo,{className:"size-4 animate-spin"})},style:{"--normal-bg":"var(--popover)","--normal-text":"var(--popover-foreground)","--normal-border":"var(--border)","--border-radius":"var(--radius)"},toastOptions:{classNames:{toast:"cn-toast"}},...t})},ZA=()=>{const t=Fe.c(5),{isDarkMode:e}=Zs();let s,r;t[0]!==e?(s=()=>{const f=document.documentElement;f.classList.toggle("dark",e),f.dataset.theme=e?"dark":"light"},r=[e],t[0]=e,t[1]=s,t[2]=r):(s=t[1],r=t[2]),j.useEffect(s,r);let c;t[3]===Symbol.for("react.memo_cache_sentinel")?(c=i.jsx(HA,{}),t[3]=c):c=t[3];let u;return t[4]===Symbol.for("react.memo_cache_sentinel")?(u=i.jsxs(i.Fragment,{children:[c,i.jsx(qA,{children:i.jsx("div",{className:"flex h-screen w-screen",children:i.jsx(IA,{})})}),i.jsx(UA,{position:"top-right",richColors:!0,closeButton:!0})]}),t[4]=u):u=t[4],u},VA="0.0.72",WA="machina-query-cache",BA=sS({storage:typeof window<"u"?window.localStorage:void 0,key:WA}),FA=VA,GA=1440*60*1e3,QA=["nodeSpec","nodeGroups"];function KA(t){const e=t.queryKey;return!Array.isArray(e)||typeof e[0]!="string"||!QA.includes(e[0])?!1:t.state.status==="success"}C4.createRoot(document.getElementById("root")).render(i.jsx(j.StrictMode,{children:i.jsxs(aS,{client:At,persistOptions:{persister:BA,buster:FA,maxAge:GA,dehydrateOptions:{shouldDehydrateQuery:KA}},children:[i.jsx(G8,{children:i.jsx(m8,{children:i.jsx(q8,{children:i.jsx(ZA,{})})})}),!1]})}));export{kp as A,Ut as B,tj as C,La as D,Ca as E,bE as F,Ea as G,po as H,on as I,cO as J,vE as K,_a as L,rl as M,Co as N,Xu as O,ur as P,Sa as Q,sm as R,jo as S,lO as T,Km as _,Sp as a,_p as b,jp as c,Nl as d,Cl as e,Fe as f,Ot as g,ej as h,Vu as i,Hs as j,Xt as k,fv as l,Ct as m,H0 as n,oO as o,sO as p,aO as q,rO as r,$p as s,sL as t,Wu as u,gu as v,ed as w,iO as x,Na as y,td as z};