solace-agent-mesh 0.2.3__py3-none-any.whl → 1.0.1__py3-none-any.whl

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.

Potentially problematic release.


This version of solace-agent-mesh might be problematic. Click here for more details.

Files changed (518) hide show
  1. solace_agent_mesh/agent/adk/adk_llm.txt +93 -0
  2. solace_agent_mesh/agent/adk/app_llm_agent.py +26 -0
  3. solace_agent_mesh/agent/adk/callbacks.py +1694 -0
  4. solace_agent_mesh/agent/adk/filesystem_artifact_service.py +381 -0
  5. solace_agent_mesh/agent/adk/invocation_monitor.py +295 -0
  6. solace_agent_mesh/agent/adk/models/lite_llm.py +872 -0
  7. solace_agent_mesh/agent/adk/models/models_llm.txt +94 -0
  8. solace_agent_mesh/agent/adk/runner.py +353 -0
  9. solace_agent_mesh/agent/adk/services.py +240 -0
  10. solace_agent_mesh/agent/adk/setup.py +751 -0
  11. solace_agent_mesh/agent/adk/stream_parser.py +214 -0
  12. solace_agent_mesh/agent/adk/tool_wrapper.py +139 -0
  13. solace_agent_mesh/agent/agent_llm.txt +41 -0
  14. solace_agent_mesh/agent/protocol/event_handlers.py +1469 -0
  15. solace_agent_mesh/agent/protocol/protocol_llm.txt +21 -0
  16. solace_agent_mesh/agent/sac/app.py +640 -0
  17. solace_agent_mesh/agent/sac/component.py +3388 -0
  18. solace_agent_mesh/agent/sac/patch_adk.py +111 -0
  19. solace_agent_mesh/agent/sac/sac_llm.txt +105 -0
  20. solace_agent_mesh/agent/sac/task_execution_context.py +176 -0
  21. solace_agent_mesh/agent/testing/__init__.py +3 -0
  22. solace_agent_mesh/agent/testing/debug_utils.py +135 -0
  23. solace_agent_mesh/agent/testing/testing_llm.txt +90 -0
  24. solace_agent_mesh/agent/tools/__init__.py +14 -0
  25. solace_agent_mesh/agent/tools/audio_tools.py +1622 -0
  26. solace_agent_mesh/agent/tools/builtin_artifact_tools.py +1954 -0
  27. solace_agent_mesh/agent/tools/builtin_data_analysis_tools.py +238 -0
  28. solace_agent_mesh/agent/tools/general_agent_tools.py +569 -0
  29. solace_agent_mesh/agent/tools/image_tools.py +1184 -0
  30. solace_agent_mesh/agent/tools/peer_agent_tool.py +289 -0
  31. solace_agent_mesh/agent/tools/registry.py +36 -0
  32. solace_agent_mesh/agent/tools/test_tools.py +135 -0
  33. solace_agent_mesh/agent/tools/tool_definition.py +45 -0
  34. solace_agent_mesh/agent/tools/tools_llm.txt +104 -0
  35. solace_agent_mesh/agent/tools/web_tools.py +381 -0
  36. solace_agent_mesh/agent/utils/artifact_helpers.py +927 -0
  37. solace_agent_mesh/agent/utils/config_parser.py +47 -0
  38. solace_agent_mesh/agent/utils/context_helpers.py +60 -0
  39. solace_agent_mesh/agent/utils/utils_llm.txt +153 -0
  40. solace_agent_mesh/assets/docs/404.html +16 -0
  41. solace_agent_mesh/assets/docs/assets/css/styles.906a1503.css +1 -0
  42. solace_agent_mesh/assets/docs/assets/images/Solace_AI_Framework_With_Broker-85f0a306a9bcdd20b390b7a949f6d862.png +0 -0
  43. solace_agent_mesh/assets/docs/assets/images/sac-flows-80d5b603c6aafd33e87945680ce0abf3.png +0 -0
  44. solace_agent_mesh/assets/docs/assets/images/sac_parts_of_a_component-cb3d0424b1d0c17734c5435cca6b4082.png +0 -0
  45. solace_agent_mesh/assets/docs/assets/js/04989206.674a8007.js +1 -0
  46. solace_agent_mesh/assets/docs/assets/js/0e682baa.79f0ab22.js +1 -0
  47. solace_agent_mesh/assets/docs/assets/js/1001.0182a8bd.js +1 -0
  48. solace_agent_mesh/assets/docs/assets/js/1023fc19.015679ca.js +1 -0
  49. solace_agent_mesh/assets/docs/assets/js/1039.0bd46aa1.js +1 -0
  50. solace_agent_mesh/assets/docs/assets/js/149.b797a808.js +1 -0
  51. solace_agent_mesh/assets/docs/assets/js/1523c6b4.91c7bc01.js +1 -0
  52. solace_agent_mesh/assets/docs/assets/js/165.6a39807d.js +2 -0
  53. solace_agent_mesh/assets/docs/assets/js/165.6a39807d.js.LICENSE.txt +9 -0
  54. solace_agent_mesh/assets/docs/assets/js/166ab619.7d97ccaf.js +1 -0
  55. solace_agent_mesh/assets/docs/assets/js/17896441.a5e82f9b.js +2 -0
  56. solace_agent_mesh/assets/docs/assets/js/17896441.a5e82f9b.js.LICENSE.txt +7 -0
  57. solace_agent_mesh/assets/docs/assets/js/1c6e87d2.23bccffb.js +1 -0
  58. solace_agent_mesh/assets/docs/assets/js/2130.ab9fd314.js +1 -0
  59. solace_agent_mesh/assets/docs/assets/js/21ceee5f.614fa8dd.js +1 -0
  60. solace_agent_mesh/assets/docs/assets/js/2237.5e477fc6.js +1 -0
  61. solace_agent_mesh/assets/docs/assets/js/2334.622a6395.js +1 -0
  62. solace_agent_mesh/assets/docs/assets/js/2a9cab12.8909df92.js +1 -0
  63. solace_agent_mesh/assets/docs/assets/js/3219.adc1d663.js +1 -0
  64. solace_agent_mesh/assets/docs/assets/js/332e10b5.7a103f42.js +1 -0
  65. solace_agent_mesh/assets/docs/assets/js/3624.b524e433.js +1 -0
  66. solace_agent_mesh/assets/docs/assets/js/375.708d48db.js +1 -0
  67. solace_agent_mesh/assets/docs/assets/js/3834.b6cd790e.js +1 -0
  68. solace_agent_mesh/assets/docs/assets/js/3d406171.f722eaf5.js +1 -0
  69. solace_agent_mesh/assets/docs/assets/js/4250.95455b28.js +1 -0
  70. solace_agent_mesh/assets/docs/assets/js/42b3f8d8.36090198.js +1 -0
  71. solace_agent_mesh/assets/docs/assets/js/4356.d169ab5b.js +1 -0
  72. solace_agent_mesh/assets/docs/assets/js/442a8107.5ba94b65.js +1 -0
  73. solace_agent_mesh/assets/docs/assets/js/4458.518e66fa.js +1 -0
  74. solace_agent_mesh/assets/docs/assets/js/4488.c7cc3442.js +1 -0
  75. solace_agent_mesh/assets/docs/assets/js/4494.6ee23046.js +1 -0
  76. solace_agent_mesh/assets/docs/assets/js/4855.fc4444b6.js +1 -0
  77. solace_agent_mesh/assets/docs/assets/js/4866.22daefc0.js +1 -0
  78. solace_agent_mesh/assets/docs/assets/js/4950.ca4caeda.js +1 -0
  79. solace_agent_mesh/assets/docs/assets/js/4c2787c2.66ee00e9.js +1 -0
  80. solace_agent_mesh/assets/docs/assets/js/5388.7a136447.js +1 -0
  81. solace_agent_mesh/assets/docs/assets/js/55f47984.c484bf96.js +1 -0
  82. solace_agent_mesh/assets/docs/assets/js/5607.081356f8.js +1 -0
  83. solace_agent_mesh/assets/docs/assets/js/5864.b0d0e9de.js +1 -0
  84. solace_agent_mesh/assets/docs/assets/js/5b4258a4.bda20761.js +1 -0
  85. solace_agent_mesh/assets/docs/assets/js/5e95c892.558d5167.js +1 -0
  86. solace_agent_mesh/assets/docs/assets/js/6143.0a1464c9.js +1 -0
  87. solace_agent_mesh/assets/docs/assets/js/6395.e9c73649.js +1 -0
  88. solace_agent_mesh/assets/docs/assets/js/6796.51d2c9b7.js +1 -0
  89. solace_agent_mesh/assets/docs/assets/js/6976.379be23b.js +1 -0
  90. solace_agent_mesh/assets/docs/assets/js/6978.ee0b945c.js +1 -0
  91. solace_agent_mesh/assets/docs/assets/js/7040.cb436723.js +1 -0
  92. solace_agent_mesh/assets/docs/assets/js/7195.412f418a.js +1 -0
  93. solace_agent_mesh/assets/docs/assets/js/7280.3fb73bdb.js +1 -0
  94. solace_agent_mesh/assets/docs/assets/js/768e31b0.a12673db.js +1 -0
  95. solace_agent_mesh/assets/docs/assets/js/7845.e33e7c4c.js +1 -0
  96. solace_agent_mesh/assets/docs/assets/js/7900.69516146.js +1 -0
  97. solace_agent_mesh/assets/docs/assets/js/8356.8a379c04.js +1 -0
  98. solace_agent_mesh/assets/docs/assets/js/85387663.6bf41934.js +1 -0
  99. solace_agent_mesh/assets/docs/assets/js/8567.4732c6b7.js +1 -0
  100. solace_agent_mesh/assets/docs/assets/js/8573.cb04eda5.js +1 -0
  101. solace_agent_mesh/assets/docs/assets/js/8577.1d54e766.js +1 -0
  102. solace_agent_mesh/assets/docs/assets/js/8591.d7c16be6.js +2 -0
  103. solace_agent_mesh/assets/docs/assets/js/8591.d7c16be6.js.LICENSE.txt +61 -0
  104. solace_agent_mesh/assets/docs/assets/js/8709.7ecd4047.js +1 -0
  105. solace_agent_mesh/assets/docs/assets/js/8731.49e930c2.js +1 -0
  106. solace_agent_mesh/assets/docs/assets/js/8908.f9d1b506.js +1 -0
  107. solace_agent_mesh/assets/docs/assets/js/9157.b4093d07.js +1 -0
  108. solace_agent_mesh/assets/docs/assets/js/9278.a4fd875d.js +1 -0
  109. solace_agent_mesh/assets/docs/assets/js/945fb41e.74d728aa.js +1 -0
  110. solace_agent_mesh/assets/docs/assets/js/9616.b75c2f6d.js +1 -0
  111. solace_agent_mesh/assets/docs/assets/js/9793.c6d16376.js +1 -0
  112. solace_agent_mesh/assets/docs/assets/js/9eff14a2.1bf8f61c.js +1 -0
  113. solace_agent_mesh/assets/docs/assets/js/a3a92b25.26ca071f.js +1 -0
  114. solace_agent_mesh/assets/docs/assets/js/a7bd4aaa.2204d2f7.js +1 -0
  115. solace_agent_mesh/assets/docs/assets/js/a94703ab.0438dbc2.js +1 -0
  116. solace_agent_mesh/assets/docs/assets/js/aba21aa0.c42a534c.js +1 -0
  117. solace_agent_mesh/assets/docs/assets/js/aba87c2f.d3e2dcc3.js +1 -0
  118. solace_agent_mesh/assets/docs/assets/js/ae4415af.8e279b5d.js +1 -0
  119. solace_agent_mesh/assets/docs/assets/js/b7006a3a.40b10c9d.js +1 -0
  120. solace_agent_mesh/assets/docs/assets/js/bac0be12.f50d9bac.js +1 -0
  121. solace_agent_mesh/assets/docs/assets/js/bb2ef573.207e6990.js +1 -0
  122. solace_agent_mesh/assets/docs/assets/js/c2c06897.63b76e9e.js +1 -0
  123. solace_agent_mesh/assets/docs/assets/js/cc969b05.954186d4.js +1 -0
  124. solace_agent_mesh/assets/docs/assets/js/cd3d4052.ca6eed8c.js +1 -0
  125. solace_agent_mesh/assets/docs/assets/js/ced92a13.fb92e7ca.js +1 -0
  126. solace_agent_mesh/assets/docs/assets/js/cee5d587.f5b73ca1.js +1 -0
  127. solace_agent_mesh/assets/docs/assets/js/f284c35a.ecc3d195.js +1 -0
  128. solace_agent_mesh/assets/docs/assets/js/f897a61a.2c2e152c.js +1 -0
  129. solace_agent_mesh/assets/docs/assets/js/fbfa3e75.aca209c9.js +1 -0
  130. solace_agent_mesh/assets/docs/assets/js/main.7ed3319f.js +2 -0
  131. solace_agent_mesh/assets/docs/assets/js/main.7ed3319f.js.LICENSE.txt +81 -0
  132. solace_agent_mesh/assets/docs/assets/js/runtime~main.d9520ae2.js +1 -0
  133. solace_agent_mesh/assets/docs/docs/documentation/concepts/agents/index.html +128 -0
  134. solace_agent_mesh/assets/docs/docs/documentation/concepts/architecture/index.html +91 -0
  135. solace_agent_mesh/assets/docs/docs/documentation/concepts/cli/index.html +201 -0
  136. solace_agent_mesh/assets/docs/docs/documentation/concepts/gateways/index.html +91 -0
  137. solace_agent_mesh/assets/docs/docs/documentation/concepts/orchestrator/index.html +55 -0
  138. solace_agent_mesh/assets/docs/docs/documentation/concepts/plugins/index.html +82 -0
  139. solace_agent_mesh/assets/docs/docs/documentation/deployment/debugging/index.html +60 -0
  140. solace_agent_mesh/assets/docs/docs/documentation/deployment/deploy/index.html +48 -0
  141. solace_agent_mesh/assets/docs/docs/documentation/deployment/observability/index.html +54 -0
  142. solace_agent_mesh/assets/docs/docs/documentation/enterprise/index.html +17 -0
  143. solace_agent_mesh/assets/docs/docs/documentation/getting-started/component-overview/index.html +45 -0
  144. solace_agent_mesh/assets/docs/docs/documentation/getting-started/installation/index.html +76 -0
  145. solace_agent_mesh/assets/docs/docs/documentation/getting-started/introduction/index.html +150 -0
  146. solace_agent_mesh/assets/docs/docs/documentation/getting-started/quick-start/index.html +54 -0
  147. solace_agent_mesh/assets/docs/docs/documentation/tutorials/bedrock-agents/index.html +267 -0
  148. solace_agent_mesh/assets/docs/docs/documentation/tutorials/custom-agent/index.html +136 -0
  149. solace_agent_mesh/assets/docs/docs/documentation/tutorials/event-mesh-gateway/index.html +116 -0
  150. solace_agent_mesh/assets/docs/docs/documentation/tutorials/mcp-integration/index.html +80 -0
  151. solace_agent_mesh/assets/docs/docs/documentation/tutorials/mongodb-integration/index.html +164 -0
  152. solace_agent_mesh/assets/docs/docs/documentation/tutorials/rest-gateway/index.html +57 -0
  153. solace_agent_mesh/assets/docs/docs/documentation/tutorials/slack-integration/index.html +72 -0
  154. solace_agent_mesh/assets/docs/docs/documentation/tutorials/sql-database/index.html +102 -0
  155. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/artifact-management/index.html +99 -0
  156. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/audio-tools/index.html +90 -0
  157. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/data-analysis-tools/index.html +107 -0
  158. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/embeds/index.html +152 -0
  159. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/index.html +103 -0
  160. solace_agent_mesh/assets/docs/docs/documentation/user-guide/create-agents/index.html +170 -0
  161. solace_agent_mesh/assets/docs/docs/documentation/user-guide/create-gateways/index.html +200 -0
  162. solace_agent_mesh/assets/docs/docs/documentation/user-guide/creating-service-providers/index.html +54 -0
  163. solace_agent_mesh/assets/docs/docs/documentation/user-guide/solace-ai-connector/index.html +69 -0
  164. solace_agent_mesh/assets/docs/docs/documentation/user-guide/structure/index.html +59 -0
  165. solace_agent_mesh/assets/docs/img/Solace_AI_Framework_README.png +0 -0
  166. solace_agent_mesh/assets/docs/img/Solace_AI_Framework_With_Broker.png +0 -0
  167. solace_agent_mesh/assets/docs/img/logo.png +0 -0
  168. solace_agent_mesh/assets/docs/img/sac-flows.png +0 -0
  169. solace_agent_mesh/assets/docs/img/sac_parts_of_a_component.png +0 -0
  170. solace_agent_mesh/assets/docs/img/solace-logo.png +0 -0
  171. solace_agent_mesh/assets/docs/lunr-index-1753813536522.json +1 -0
  172. solace_agent_mesh/assets/docs/lunr-index.json +1 -0
  173. solace_agent_mesh/assets/docs/search-doc-1753813536522.json +1 -0
  174. solace_agent_mesh/assets/docs/search-doc.json +1 -0
  175. solace_agent_mesh/assets/docs/sitemap.xml +1 -0
  176. solace_agent_mesh/cli/__init__.py +1 -1
  177. solace_agent_mesh/cli/commands/add_cmd/__init__.py +15 -0
  178. solace_agent_mesh/cli/commands/add_cmd/add_cmd_llm.txt +250 -0
  179. solace_agent_mesh/cli/commands/add_cmd/agent_cmd.py +659 -0
  180. solace_agent_mesh/cli/commands/add_cmd/gateway_cmd.py +322 -0
  181. solace_agent_mesh/cli/commands/add_cmd/web_add_agent_step.py +93 -0
  182. solace_agent_mesh/cli/commands/add_cmd/web_add_gateway_step.py +118 -0
  183. solace_agent_mesh/cli/commands/docs_cmd.py +57 -0
  184. solace_agent_mesh/cli/commands/eval_cmd.py +64 -0
  185. solace_agent_mesh/cli/commands/init_cmd/__init__.py +404 -0
  186. solace_agent_mesh/cli/commands/init_cmd/broker_step.py +201 -0
  187. solace_agent_mesh/cli/commands/init_cmd/directory_step.py +28 -0
  188. solace_agent_mesh/cli/commands/init_cmd/env_step.py +197 -0
  189. solace_agent_mesh/cli/commands/init_cmd/init_cmd_llm.txt +365 -0
  190. solace_agent_mesh/cli/commands/init_cmd/orchestrator_step.py +387 -0
  191. solace_agent_mesh/cli/commands/init_cmd/project_files_step.py +38 -0
  192. solace_agent_mesh/cli/commands/init_cmd/web_init_step.py +110 -0
  193. solace_agent_mesh/cli/commands/init_cmd/webui_gateway_step.py +183 -0
  194. solace_agent_mesh/cli/commands/plugin_cmd/__init__.py +18 -0
  195. solace_agent_mesh/cli/commands/plugin_cmd/add_cmd.py +372 -0
  196. solace_agent_mesh/cli/commands/plugin_cmd/build_cmd.py +86 -0
  197. solace_agent_mesh/cli/commands/plugin_cmd/catalog_cmd.py +138 -0
  198. solace_agent_mesh/cli/commands/plugin_cmd/create_cmd.py +309 -0
  199. solace_agent_mesh/cli/commands/plugin_cmd/official_registry.py +174 -0
  200. solace_agent_mesh/cli/commands/plugin_cmd/plugin_cmd_llm.txt +305 -0
  201. solace_agent_mesh/cli/commands/run_cmd.py +158 -0
  202. solace_agent_mesh/cli/main.py +17 -294
  203. solace_agent_mesh/cli/utils.py +135 -204
  204. solace_agent_mesh/client/webui/frontend/static/assets/authCallback-DvlO62me.js +1 -0
  205. solace_agent_mesh/client/webui/frontend/static/assets/client-bp6u3qVZ.js +49 -0
  206. solace_agent_mesh/client/webui/frontend/static/assets/favicon-BLgzUch9.ico +0 -0
  207. solace_agent_mesh/client/webui/frontend/static/assets/main-An0a5j5k.js +663 -0
  208. solace_agent_mesh/client/webui/frontend/static/assets/main-Bu5-4Bac.css +1 -0
  209. solace_agent_mesh/client/webui/frontend/static/auth-callback.html +14 -0
  210. solace_agent_mesh/client/webui/frontend/static/index.html +15 -0
  211. solace_agent_mesh/common/__init__.py +1 -0
  212. solace_agent_mesh/common/a2a_protocol.py +564 -0
  213. solace_agent_mesh/common/agent_registry.py +42 -0
  214. solace_agent_mesh/common/client/__init__.py +4 -0
  215. solace_agent_mesh/common/client/card_resolver.py +21 -0
  216. solace_agent_mesh/common/client/client.py +85 -0
  217. solace_agent_mesh/common/client/client_llm.txt +133 -0
  218. solace_agent_mesh/common/common_llm.txt +144 -0
  219. solace_agent_mesh/common/constants.py +1 -14
  220. solace_agent_mesh/common/middleware/__init__.py +12 -0
  221. solace_agent_mesh/common/middleware/config_resolver.py +130 -0
  222. solace_agent_mesh/common/middleware/middleware_llm.txt +174 -0
  223. solace_agent_mesh/common/middleware/registry.py +125 -0
  224. solace_agent_mesh/common/server/__init__.py +4 -0
  225. solace_agent_mesh/common/server/server.py +122 -0
  226. solace_agent_mesh/common/server/server_llm.txt +169 -0
  227. solace_agent_mesh/common/server/task_manager.py +291 -0
  228. solace_agent_mesh/common/server/utils.py +28 -0
  229. solace_agent_mesh/common/services/__init__.py +4 -0
  230. solace_agent_mesh/common/services/employee_service.py +162 -0
  231. solace_agent_mesh/common/services/identity_service.py +129 -0
  232. solace_agent_mesh/common/services/providers/__init__.py +4 -0
  233. solace_agent_mesh/common/services/providers/local_file_identity_service.py +148 -0
  234. solace_agent_mesh/common/services/providers/providers_llm.txt +113 -0
  235. solace_agent_mesh/common/services/services_llm.txt +132 -0
  236. solace_agent_mesh/common/types.py +411 -0
  237. solace_agent_mesh/common/utils/__init__.py +7 -0
  238. solace_agent_mesh/common/utils/asyncio_macos_fix.py +86 -0
  239. solace_agent_mesh/common/utils/embeds/__init__.py +33 -0
  240. solace_agent_mesh/common/utils/embeds/constants.py +55 -0
  241. solace_agent_mesh/common/utils/embeds/converter.py +452 -0
  242. solace_agent_mesh/common/utils/embeds/embeds_llm.txt +124 -0
  243. solace_agent_mesh/common/utils/embeds/evaluators.py +394 -0
  244. solace_agent_mesh/common/utils/embeds/modifiers.py +816 -0
  245. solace_agent_mesh/common/utils/embeds/resolver.py +865 -0
  246. solace_agent_mesh/common/utils/embeds/types.py +14 -0
  247. solace_agent_mesh/common/utils/in_memory_cache.py +108 -0
  248. solace_agent_mesh/common/utils/log_formatters.py +44 -0
  249. solace_agent_mesh/common/utils/mime_helpers.py +106 -0
  250. solace_agent_mesh/common/utils/push_notification_auth.py +134 -0
  251. solace_agent_mesh/common/utils/utils_llm.txt +67 -0
  252. solace_agent_mesh/config_portal/backend/common.py +66 -24
  253. solace_agent_mesh/config_portal/backend/plugin_catalog/constants.py +23 -0
  254. solace_agent_mesh/config_portal/backend/plugin_catalog/models.py +49 -0
  255. solace_agent_mesh/config_portal/backend/plugin_catalog/registry_manager.py +160 -0
  256. solace_agent_mesh/config_portal/backend/plugin_catalog/scraper.py +525 -0
  257. solace_agent_mesh/config_portal/backend/plugin_catalog_server.py +216 -0
  258. solace_agent_mesh/config_portal/backend/server.py +550 -140
  259. solace_agent_mesh/config_portal/frontend/static/client/assets/_index-DNxCwAGB.js +48 -0
  260. solace_agent_mesh/config_portal/frontend/static/client/assets/components-B7lKcHVY.js +140 -0
  261. solace_agent_mesh/config_portal/frontend/static/client/assets/{entry.client-DX1misIU.js → entry.client-CEumGClk.js} +3 -3
  262. solace_agent_mesh/config_portal/frontend/static/client/assets/index-DSo1AH_7.js +68 -0
  263. solace_agent_mesh/config_portal/frontend/static/client/assets/manifest-d2b54a97.js +1 -0
  264. solace_agent_mesh/config_portal/frontend/static/client/assets/{root-BApq5dPK.js → root-C4XmHinv.js} +2 -2
  265. solace_agent_mesh/config_portal/frontend/static/client/assets/root-DxRwaWiE.css +1 -0
  266. solace_agent_mesh/config_portal/frontend/static/client/index.html +3 -3
  267. solace_agent_mesh/core_a2a/__init__.py +1 -0
  268. solace_agent_mesh/core_a2a/core_a2a_llm.txt +88 -0
  269. solace_agent_mesh/core_a2a/service.py +331 -0
  270. solace_agent_mesh/evaluation/config_loader.py +657 -0
  271. solace_agent_mesh/evaluation/evaluator.py +667 -0
  272. solace_agent_mesh/evaluation/message_organizer.py +568 -0
  273. solace_agent_mesh/evaluation/report/benchmark_info.html +35 -0
  274. solace_agent_mesh/evaluation/report/chart_section.html +141 -0
  275. solace_agent_mesh/evaluation/report/detailed_breakdown.html +28 -0
  276. solace_agent_mesh/evaluation/report/modal.html +59 -0
  277. solace_agent_mesh/evaluation/report/modal_chart_functions.js +411 -0
  278. solace_agent_mesh/evaluation/report/modal_script.js +296 -0
  279. solace_agent_mesh/evaluation/report/modal_styles.css +340 -0
  280. solace_agent_mesh/evaluation/report/performance_metrics_styles.css +93 -0
  281. solace_agent_mesh/evaluation/report/templates/footer.html +2 -0
  282. solace_agent_mesh/evaluation/report/templates/header.html +340 -0
  283. solace_agent_mesh/evaluation/report_data_processor.py +972 -0
  284. solace_agent_mesh/evaluation/report_generator.py +613 -0
  285. solace_agent_mesh/evaluation/run.py +613 -0
  286. solace_agent_mesh/evaluation/subscriber.py +872 -0
  287. solace_agent_mesh/evaluation/summary_builder.py +775 -0
  288. solace_agent_mesh/evaluation/test_case_loader.py +714 -0
  289. solace_agent_mesh/gateway/base/__init__.py +1 -0
  290. solace_agent_mesh/gateway/base/app.py +266 -0
  291. solace_agent_mesh/gateway/base/base_llm.txt +119 -0
  292. solace_agent_mesh/gateway/base/component.py +1542 -0
  293. solace_agent_mesh/gateway/base/task_context.py +74 -0
  294. solace_agent_mesh/gateway/gateway_llm.txt +125 -0
  295. solace_agent_mesh/gateway/http_sse/app.py +190 -0
  296. solace_agent_mesh/gateway/http_sse/component.py +1602 -0
  297. solace_agent_mesh/gateway/http_sse/components/__init__.py +7 -0
  298. solace_agent_mesh/gateway/http_sse/components/components_llm.txt +65 -0
  299. solace_agent_mesh/gateway/http_sse/components/visualization_forwarder_component.py +108 -0
  300. solace_agent_mesh/gateway/http_sse/dependencies.py +316 -0
  301. solace_agent_mesh/gateway/http_sse/http_sse_llm.txt +63 -0
  302. solace_agent_mesh/gateway/http_sse/main.py +442 -0
  303. solace_agent_mesh/gateway/http_sse/routers/__init__.py +4 -0
  304. solace_agent_mesh/gateway/http_sse/routers/agents.py +41 -0
  305. solace_agent_mesh/gateway/http_sse/routers/artifacts.py +821 -0
  306. solace_agent_mesh/gateway/http_sse/routers/auth.py +212 -0
  307. solace_agent_mesh/gateway/http_sse/routers/config.py +55 -0
  308. solace_agent_mesh/gateway/http_sse/routers/people.py +69 -0
  309. solace_agent_mesh/gateway/http_sse/routers/routers_llm.txt +37 -0
  310. solace_agent_mesh/gateway/http_sse/routers/sessions.py +80 -0
  311. solace_agent_mesh/gateway/http_sse/routers/sse.py +138 -0
  312. solace_agent_mesh/gateway/http_sse/routers/tasks.py +294 -0
  313. solace_agent_mesh/gateway/http_sse/routers/users.py +59 -0
  314. solace_agent_mesh/gateway/http_sse/routers/visualization.py +1131 -0
  315. solace_agent_mesh/gateway/http_sse/services/__init__.py +4 -0
  316. solace_agent_mesh/gateway/http_sse/services/agent_service.py +69 -0
  317. solace_agent_mesh/gateway/http_sse/services/people_service.py +158 -0
  318. solace_agent_mesh/gateway/http_sse/services/services_llm.txt +179 -0
  319. solace_agent_mesh/gateway/http_sse/services/task_service.py +121 -0
  320. solace_agent_mesh/gateway/http_sse/session_manager.py +187 -0
  321. solace_agent_mesh/gateway/http_sse/sse_manager.py +328 -0
  322. solace_agent_mesh/llm.txt +228 -0
  323. solace_agent_mesh/llm_detail.txt +2835 -0
  324. solace_agent_mesh/templates/agent_template.yaml +53 -0
  325. solace_agent_mesh/templates/eval_backend_template.yaml +54 -0
  326. solace_agent_mesh/templates/gateway_app_template.py +73 -0
  327. solace_agent_mesh/templates/gateway_component_template.py +400 -0
  328. solace_agent_mesh/templates/gateway_config_template.yaml +43 -0
  329. solace_agent_mesh/templates/main_orchestrator.yaml +55 -0
  330. solace_agent_mesh/templates/plugin_agent_config_template.yaml +122 -0
  331. solace_agent_mesh/templates/plugin_custom_config_template.yaml +27 -0
  332. solace_agent_mesh/templates/plugin_custom_template.py +10 -0
  333. solace_agent_mesh/templates/plugin_gateway_config_template.yaml +63 -0
  334. solace_agent_mesh/templates/plugin_pyproject_template.toml +33 -0
  335. solace_agent_mesh/templates/plugin_readme_template.md +34 -0
  336. solace_agent_mesh/templates/plugin_tools_template.py +224 -0
  337. solace_agent_mesh/templates/shared_config.yaml +66 -0
  338. solace_agent_mesh/templates/templates_llm.txt +147 -0
  339. solace_agent_mesh/templates/webui.yaml +53 -0
  340. solace_agent_mesh-1.0.1.dist-info/METADATA +432 -0
  341. solace_agent_mesh-1.0.1.dist-info/RECORD +359 -0
  342. solace_agent_mesh-1.0.1.dist-info/entry_points.txt +3 -0
  343. {solace_agent_mesh-0.2.3.dist-info → solace_agent_mesh-1.0.1.dist-info}/licenses/LICENSE +1 -1
  344. solace_agent_mesh/agents/base_agent_component.py +0 -226
  345. solace_agent_mesh/agents/global/actions/agent_state_change.py +0 -54
  346. solace_agent_mesh/agents/global/actions/clear_history.py +0 -32
  347. solace_agent_mesh/agents/global/actions/convert_file_to_markdown.py +0 -160
  348. solace_agent_mesh/agents/global/actions/create_file.py +0 -70
  349. solace_agent_mesh/agents/global/actions/error_action.py +0 -45
  350. solace_agent_mesh/agents/global/actions/plantuml_diagram.py +0 -163
  351. solace_agent_mesh/agents/global/actions/plotly_graph.py +0 -152
  352. solace_agent_mesh/agents/global/actions/retrieve_file.py +0 -51
  353. solace_agent_mesh/agents/global/global_agent_component.py +0 -38
  354. solace_agent_mesh/agents/image_processing/actions/create_image.py +0 -75
  355. solace_agent_mesh/agents/image_processing/actions/describe_image.py +0 -115
  356. solace_agent_mesh/agents/image_processing/image_processing_agent_component.py +0 -23
  357. solace_agent_mesh/agents/slack/__init__.py +0 -1
  358. solace_agent_mesh/agents/slack/actions/__init__.py +0 -1
  359. solace_agent_mesh/agents/slack/actions/post_message.py +0 -177
  360. solace_agent_mesh/agents/slack/slack_agent_component.py +0 -59
  361. solace_agent_mesh/agents/web_request/actions/do_image_search.py +0 -84
  362. solace_agent_mesh/agents/web_request/actions/do_news_search.py +0 -47
  363. solace_agent_mesh/agents/web_request/actions/do_suggestion_search.py +0 -34
  364. solace_agent_mesh/agents/web_request/actions/do_web_request.py +0 -135
  365. solace_agent_mesh/agents/web_request/actions/download_file.py +0 -69
  366. solace_agent_mesh/agents/web_request/web_request_agent_component.py +0 -33
  367. solace_agent_mesh/assets/web-visualizer/assets/index-D0qORgkg.css +0 -1
  368. solace_agent_mesh/assets/web-visualizer/assets/index-DnDr1pnu.js +0 -109
  369. solace_agent_mesh/assets/web-visualizer/index.html +0 -14
  370. solace_agent_mesh/assets/web-visualizer/vite.svg +0 -1
  371. solace_agent_mesh/cli/commands/add/__init__.py +0 -3
  372. solace_agent_mesh/cli/commands/add/add.py +0 -88
  373. solace_agent_mesh/cli/commands/add/agent.py +0 -110
  374. solace_agent_mesh/cli/commands/add/copy_from_plugin.py +0 -92
  375. solace_agent_mesh/cli/commands/add/gateway.py +0 -374
  376. solace_agent_mesh/cli/commands/build.py +0 -670
  377. solace_agent_mesh/cli/commands/chat/__init__.py +0 -3
  378. solace_agent_mesh/cli/commands/chat/chat.py +0 -361
  379. solace_agent_mesh/cli/commands/config.py +0 -29
  380. solace_agent_mesh/cli/commands/init/__init__.py +0 -3
  381. solace_agent_mesh/cli/commands/init/ai_provider_step.py +0 -93
  382. solace_agent_mesh/cli/commands/init/broker_step.py +0 -99
  383. solace_agent_mesh/cli/commands/init/builtin_agent_step.py +0 -83
  384. solace_agent_mesh/cli/commands/init/check_if_already_done.py +0 -13
  385. solace_agent_mesh/cli/commands/init/create_config_file_step.py +0 -65
  386. solace_agent_mesh/cli/commands/init/create_other_project_files_step.py +0 -147
  387. solace_agent_mesh/cli/commands/init/file_service_step.py +0 -73
  388. solace_agent_mesh/cli/commands/init/init.py +0 -92
  389. solace_agent_mesh/cli/commands/init/project_structure_step.py +0 -16
  390. solace_agent_mesh/cli/commands/init/web_init_step.py +0 -32
  391. solace_agent_mesh/cli/commands/plugin/__init__.py +0 -3
  392. solace_agent_mesh/cli/commands/plugin/add.py +0 -100
  393. solace_agent_mesh/cli/commands/plugin/build.py +0 -268
  394. solace_agent_mesh/cli/commands/plugin/create.py +0 -117
  395. solace_agent_mesh/cli/commands/plugin/plugin.py +0 -124
  396. solace_agent_mesh/cli/commands/plugin/remove.py +0 -73
  397. solace_agent_mesh/cli/commands/run.py +0 -68
  398. solace_agent_mesh/cli/commands/visualizer.py +0 -138
  399. solace_agent_mesh/cli/config.py +0 -85
  400. solace_agent_mesh/common/action.py +0 -91
  401. solace_agent_mesh/common/action_list.py +0 -37
  402. solace_agent_mesh/common/action_response.py +0 -340
  403. solace_agent_mesh/common/mysql_database.py +0 -40
  404. solace_agent_mesh/common/postgres_database.py +0 -85
  405. solace_agent_mesh/common/prompt_templates.py +0 -28
  406. solace_agent_mesh/common/stimulus_utils.py +0 -152
  407. solace_agent_mesh/common/time.py +0 -24
  408. solace_agent_mesh/common/utils.py +0 -712
  409. solace_agent_mesh/config_portal/frontend/static/client/assets/_index-DMmCawWe.js +0 -42
  410. solace_agent_mesh/config_portal/frontend/static/client/assets/components-ZIfdTbrV.js +0 -191
  411. solace_agent_mesh/config_portal/frontend/static/client/assets/index-BJHAE5s4.js +0 -17
  412. solace_agent_mesh/config_portal/frontend/static/client/assets/manifest-dd988f05.js +0 -1
  413. solace_agent_mesh/config_portal/frontend/static/client/assets/root-DX4gQ516.css +0 -1
  414. solace_agent_mesh/configs/agent_global.yaml +0 -74
  415. solace_agent_mesh/configs/agent_image_processing.yaml +0 -82
  416. solace_agent_mesh/configs/agent_slack.yaml +0 -64
  417. solace_agent_mesh/configs/agent_web_request.yaml +0 -75
  418. solace_agent_mesh/configs/conversation_to_file.yaml +0 -56
  419. solace_agent_mesh/configs/error_catcher.yaml +0 -56
  420. solace_agent_mesh/configs/monitor.yaml +0 -0
  421. solace_agent_mesh/configs/monitor_stim_and_errors_to_slack.yaml +0 -109
  422. solace_agent_mesh/configs/monitor_user_feedback.yaml +0 -58
  423. solace_agent_mesh/configs/orchestrator.yaml +0 -241
  424. solace_agent_mesh/configs/service_embedding.yaml +0 -81
  425. solace_agent_mesh/configs/service_llm.yaml +0 -265
  426. solace_agent_mesh/configs/visualize_websocket.yaml +0 -55
  427. solace_agent_mesh/gateway/components/gateway_base.py +0 -47
  428. solace_agent_mesh/gateway/components/gateway_input.py +0 -278
  429. solace_agent_mesh/gateway/components/gateway_output.py +0 -298
  430. solace_agent_mesh/gateway/identity/bamboohr_identity.py +0 -18
  431. solace_agent_mesh/gateway/identity/identity_base.py +0 -10
  432. solace_agent_mesh/gateway/identity/identity_provider.py +0 -60
  433. solace_agent_mesh/gateway/identity/no_identity.py +0 -9
  434. solace_agent_mesh/gateway/identity/passthru_identity.py +0 -9
  435. solace_agent_mesh/monitors/base_monitor_component.py +0 -26
  436. solace_agent_mesh/monitors/feedback/user_feedback_monitor.py +0 -75
  437. solace_agent_mesh/monitors/stim_and_errors/stim_and_error_monitor.py +0 -560
  438. solace_agent_mesh/orchestrator/__init__.py +0 -0
  439. solace_agent_mesh/orchestrator/action_manager.py +0 -237
  440. solace_agent_mesh/orchestrator/components/__init__.py +0 -0
  441. solace_agent_mesh/orchestrator/components/orchestrator_action_manager_timeout_component.py +0 -58
  442. solace_agent_mesh/orchestrator/components/orchestrator_action_response_component.py +0 -179
  443. solace_agent_mesh/orchestrator/components/orchestrator_register_component.py +0 -107
  444. solace_agent_mesh/orchestrator/components/orchestrator_stimulus_processor_component.py +0 -527
  445. solace_agent_mesh/orchestrator/components/orchestrator_streaming_output_component.py +0 -260
  446. solace_agent_mesh/orchestrator/orchestrator_main.py +0 -172
  447. solace_agent_mesh/orchestrator/orchestrator_prompt.py +0 -539
  448. solace_agent_mesh/services/__init__.py +0 -0
  449. solace_agent_mesh/services/authorization/providers/base_authorization_provider.py +0 -56
  450. solace_agent_mesh/services/bamboo_hr_service/__init__.py +0 -3
  451. solace_agent_mesh/services/bamboo_hr_service/bamboo_hr.py +0 -182
  452. solace_agent_mesh/services/common/__init__.py +0 -4
  453. solace_agent_mesh/services/common/auto_expiry.py +0 -45
  454. solace_agent_mesh/services/common/singleton.py +0 -18
  455. solace_agent_mesh/services/file_service/__init__.py +0 -14
  456. solace_agent_mesh/services/file_service/file_manager/__init__.py +0 -0
  457. solace_agent_mesh/services/file_service/file_manager/bucket_file_manager.py +0 -149
  458. solace_agent_mesh/services/file_service/file_manager/file_manager_base.py +0 -162
  459. solace_agent_mesh/services/file_service/file_manager/memory_file_manager.py +0 -64
  460. solace_agent_mesh/services/file_service/file_manager/volume_file_manager.py +0 -106
  461. solace_agent_mesh/services/file_service/file_service.py +0 -437
  462. solace_agent_mesh/services/file_service/file_service_constants.py +0 -54
  463. solace_agent_mesh/services/file_service/file_transformations.py +0 -141
  464. solace_agent_mesh/services/file_service/file_utils.py +0 -324
  465. solace_agent_mesh/services/file_service/transformers/__init__.py +0 -5
  466. solace_agent_mesh/services/history_service/__init__.py +0 -3
  467. solace_agent_mesh/services/history_service/history_providers/__init__.py +0 -0
  468. solace_agent_mesh/services/history_service/history_providers/base_history_provider.py +0 -54
  469. solace_agent_mesh/services/history_service/history_providers/file_history_provider.py +0 -74
  470. solace_agent_mesh/services/history_service/history_providers/index.py +0 -40
  471. solace_agent_mesh/services/history_service/history_providers/memory_history_provider.py +0 -33
  472. solace_agent_mesh/services/history_service/history_providers/mongodb_history_provider.py +0 -66
  473. solace_agent_mesh/services/history_service/history_providers/redis_history_provider.py +0 -66
  474. solace_agent_mesh/services/history_service/history_providers/sql_history_provider.py +0 -93
  475. solace_agent_mesh/services/history_service/history_service.py +0 -413
  476. solace_agent_mesh/services/history_service/long_term_memory/__init__.py +0 -0
  477. solace_agent_mesh/services/history_service/long_term_memory/long_term_memory.py +0 -399
  478. solace_agent_mesh/services/llm_service/components/llm_request_component.py +0 -340
  479. solace_agent_mesh/services/llm_service/components/llm_service_component_base.py +0 -152
  480. solace_agent_mesh/services/middleware_service/__init__.py +0 -0
  481. solace_agent_mesh/services/middleware_service/middleware_service.py +0 -20
  482. solace_agent_mesh/templates/action.py +0 -38
  483. solace_agent_mesh/templates/agent.py +0 -29
  484. solace_agent_mesh/templates/agent.yaml +0 -70
  485. solace_agent_mesh/templates/gateway-config-template.yaml +0 -6
  486. solace_agent_mesh/templates/gateway-default-config.yaml +0 -28
  487. solace_agent_mesh/templates/gateway-flows.yaml +0 -78
  488. solace_agent_mesh/templates/gateway-header.yaml +0 -16
  489. solace_agent_mesh/templates/gateway_base.py +0 -15
  490. solace_agent_mesh/templates/gateway_input.py +0 -98
  491. solace_agent_mesh/templates/gateway_output.py +0 -71
  492. solace_agent_mesh/templates/plugin-gateway-default-config.yaml +0 -29
  493. solace_agent_mesh/templates/plugin-pyproject.toml +0 -30
  494. solace_agent_mesh/templates/rest-api-default-config.yaml +0 -31
  495. solace_agent_mesh/templates/rest-api-flows.yaml +0 -81
  496. solace_agent_mesh/templates/slack-default-config.yaml +0 -16
  497. solace_agent_mesh/templates/slack-flows.yaml +0 -81
  498. solace_agent_mesh/templates/solace-agent-mesh-default.yaml +0 -86
  499. solace_agent_mesh/templates/solace-agent-mesh-plugin-default.yaml +0 -8
  500. solace_agent_mesh/templates/web-default-config.yaml +0 -10
  501. solace_agent_mesh/templates/web-flows.yaml +0 -76
  502. solace_agent_mesh/tools/__init__.py +0 -0
  503. solace_agent_mesh/tools/components/__init__.py +0 -0
  504. solace_agent_mesh/tools/components/conversation_formatter.py +0 -111
  505. solace_agent_mesh/tools/components/file_resolver_component.py +0 -58
  506. solace_agent_mesh/tools/config/runtime_config.py +0 -26
  507. solace_agent_mesh-0.2.3.dist-info/METADATA +0 -172
  508. solace_agent_mesh-0.2.3.dist-info/RECORD +0 -193
  509. solace_agent_mesh-0.2.3.dist-info/entry_points.txt +0 -3
  510. /solace_agent_mesh/{agents → agent}/__init__.py +0 -0
  511. /solace_agent_mesh/{agents/global → agent/adk}/__init__.py +0 -0
  512. /solace_agent_mesh/{agents/global/actions → agent/protocol}/__init__.py +0 -0
  513. /solace_agent_mesh/{agents/image_processing → agent/sac}/__init__.py +0 -0
  514. /solace_agent_mesh/{agents/image_processing/actions → agent/utils}/__init__.py +0 -0
  515. /solace_agent_mesh/{agents/web_request → config_portal/backend/plugin_catalog}/__init__.py +0 -0
  516. /solace_agent_mesh/{agents/web_request/actions → evaluation}/__init__.py +0 -0
  517. /solace_agent_mesh/gateway/{components → http_sse}/__init__.py +0 -0
  518. {solace_agent_mesh-0.2.3.dist-info → solace_agent_mesh-1.0.1.dist-info}/WHEEL +0 -0
@@ -0,0 +1,140 @@
1
+ var ze=Object.defineProperty;var Be=(e,t,r)=>t in e?ze(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var j=(e,t,r)=>Be(e,typeof t!="symbol"?t+"":t,r);import{p as Ye,A as Xe,D as Ve,i as pe,g as We,h as ve,E as U,r as c,k as Ge,m as we,l as Ke,n as Ze,o as Qe,q as qe,u as ge,s as Ee,N as et,L as tt,F as rt}from"./index-DSo1AH_7.js";var nt=-1,at=-2,it=-3,ot=-4,lt=-5,st=-6,ut=-7,ct="B",dt="D",Se="E",ft="M",ht="N",Re="P",mt="R",yt="S",pt="Y",vt="U",wt="Z",xe=class{constructor(){j(this,"promise");j(this,"resolve");j(this,"reject");this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}};function gt(){const e=new TextDecoder;let t="";return new TransformStream({transform(r,n){const a=e.decode(r,{stream:!0}),i=(t+a).split(`
2
+ `);t=i.pop()||"";for(const s of i)n.enqueue(s)},flush(r){t&&r.enqueue(t)}})}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var V=typeof window<"u"?window:typeof globalThis<"u"?globalThis:void 0;function K(e){const{hydrated:t,values:r}=this;if(typeof e=="number")return ue.call(this,e);if(!Array.isArray(e)||!e.length)throw new SyntaxError;const n=r.length;for(const a of e)r.push(a);return t.length=r.length,ue.call(this,n)}function ue(e){const{hydrated:t,values:r,deferred:n,plugins:a}=this;let i;const s=[[e,o=>{i=o}]];let l=[];for(;s.length>0;){const[o,h]=s.pop();switch(o){case ut:h(void 0);continue;case lt:h(null);continue;case at:h(NaN);continue;case st:h(1/0);continue;case it:h(-1/0);continue;case ot:h(-0);continue}if(t[o]){h(t[o]);continue}const m=r[o];if(!m||typeof m!="object"){t[o]=m,h(m);continue}if(Array.isArray(m))if(typeof m[0]=="string"){const[u,d,y]=m;switch(u){case dt:h(t[o]=new Date(d));continue;case vt:h(t[o]=new URL(d));continue;case ct:h(t[o]=BigInt(d));continue;case mt:h(t[o]=new RegExp(d,y));continue;case pt:h(t[o]=Symbol.for(d));continue;case yt:const f=new Set;t[o]=f;for(let w=1;w<m.length;w++)s.push([m[w],S=>{f.add(S)}]);h(f);continue;case ft:const p=new Map;t[o]=p;for(let w=1;w<m.length;w+=2){const S=[];s.push([m[w+1],v=>{S[1]=v}]),s.push([m[w],v=>{S[0]=v}]),l.push(()=>{p.set(S[0],S[1])})}h(p);continue;case ht:const g=Object.create(null);t[o]=g;for(const w of Object.keys(d).reverse()){const S=[];s.push([d[w],v=>{S[1]=v}]),s.push([Number(w.slice(1)),v=>{S[0]=v}]),l.push(()=>{g[S[0]]=S[1]})}h(g);continue;case Re:if(t[d])h(t[o]=t[d]);else{const w=new xe;n[d]=w,h(t[o]=w.promise)}continue;case Se:const[,E,b]=m;let x=b&&V&&V[b]?new V[b](E):new Error(E);t[o]=x,h(x);continue;case wt:h(t[o]=t[d]);continue;default:if(Array.isArray(a)){const w=[],S=m.slice(1);for(let v=0;v<S.length;v++){const R=S[v];s.push([R,_=>{w[v]=_}])}l.push(()=>{for(const v of a){const R=v(m[0],...w);if(R){h(t[o]=R.value);return}}throw new SyntaxError});continue}throw new SyntaxError}}else{const u=[];t[o]=u;for(let d=0;d<m.length;d++){const y=m[d];y!==nt&&s.push([y,f=>{u[d]=f}])}h(u);continue}else{const u={};t[o]=u;for(const d of Object.keys(m).reverse()){const y=[];s.push([m[d],f=>{y[1]=f}]),s.push([Number(d.slice(1)),f=>{y[0]=f}]),l.push(()=>{u[y[0]]=y[1]})}h(u);continue}}for(;l.length>0;)l.pop()();return i}async function Et(e,t){const{plugins:r}=t??{},n=new xe,a=e.pipeThrough(gt()).getReader(),i={values:[],hydrated:[],deferred:{},plugins:r},s=await St.call(i,a);let l=n.promise;return s.done?n.resolve():l=Rt.call(i,a).then(n.resolve).catch(o=>{for(const h of Object.values(i.deferred))h.reject(o);n.reject(o)}),{done:l.then(()=>a.closed),value:s.value}}async function St(e){const t=await e.read();if(!t.value)throw new SyntaxError;let r;try{r=JSON.parse(t.value)}catch{throw new SyntaxError}return{done:t.done,value:K.call(this,r)}}async function Rt(e){let t=await e.read();for(;!t.done;){if(!t.value)continue;const r=t.value;switch(r[0]){case Re:{const n=r.indexOf(":"),a=Number(r.slice(1,n)),i=this.deferred[a];if(!i)throw new Error(`Deferred ID ${a} not found in stream`);const s=r.slice(n+1);let l;try{l=JSON.parse(s)}catch{throw new SyntaxError}const o=K.call(this,l);i.resolve(o);break}case Se:{const n=r.indexOf(":"),a=Number(r.slice(1,n)),i=this.deferred[a];if(!i)throw new Error(`Deferred ID ${a} not found in stream`);const s=r.slice(n+1);let l;try{l=JSON.parse(s)}catch{throw new SyntaxError}const o=K.call(this,l);i.reject(o);break}default:throw new SyntaxError}t=await e.read()}}/**
3
+ * @remix-run/server-runtime v2.16.2
4
+ *
5
+ * Copyright (c) Remix Software Inc.
6
+ *
7
+ * This source code is licensed under the MIT license found in the
8
+ * LICENSE.md file in the root directory of this source tree.
9
+ *
10
+ * @license MIT
11
+ */const be=Symbol("SingleFetchRedirect");/**
12
+ * @remix-run/react v2.16.2
13
+ *
14
+ * Copyright (c) Remix Software Inc.
15
+ *
16
+ * This source code is licensed under the MIT license found in the
17
+ * LICENSE.md file in the root directory of this source tree.
18
+ *
19
+ * @license MIT
20
+ */function L(){return L=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},L.apply(this,arguments)}/**
21
+ * @remix-run/react v2.16.2
22
+ *
23
+ * Copyright (c) Remix Software Inc.
24
+ *
25
+ * This source code is licensed under the MIT license found in the
26
+ * LICENSE.md file in the root directory of this source tree.
27
+ *
28
+ * @license MIT
29
+ */function P(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}/**
30
+ * @remix-run/react v2.16.2
31
+ *
32
+ * Copyright (c) Remix Software Inc.
33
+ *
34
+ * This source code is licensed under the MIT license found in the
35
+ * LICENSE.md file in the root directory of this source tree.
36
+ *
37
+ * @license MIT
38
+ */async function _e(e,t){if(e.id in t)return t[e.id];try{let r=await import(e.module);return t[e.id]=r,r}catch(r){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(r),window.__remixContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}/**
39
+ * @remix-run/react v2.16.2
40
+ *
41
+ * Copyright (c) Remix Software Inc.
42
+ *
43
+ * This source code is licensed under the MIT license found in the
44
+ * LICENSE.md file in the root directory of this source tree.
45
+ *
46
+ * @license MIT
47
+ */function xt(e,t,r){let n=e.map(i=>{var s;let l=t[i.route.id],o=r.routes[i.route.id];return[o.css?o.css.map(h=>({rel:"stylesheet",href:h})):[],(l==null||(s=l.links)===null||s===void 0?void 0:s.call(l))||[]]}).flat(2),a=Pt(e,r);return Oe(n,a)}async function Le(e,t){var r,n;if(!e.css&&!t.links||!Nt())return;let a=[((r=e.css)===null||r===void 0?void 0:r.map(l=>({rel:"stylesheet",href:l})))??[],((n=t.links)===null||n===void 0?void 0:n.call(t))??[]].flat(1);if(a.length===0)return;let i=[];for(let l of a)!q(l)&&l.rel==="stylesheet"&&i.push({...l,rel:"preload",as:"style"});let s=i.filter(l=>(!l.media||window.matchMedia(l.media).matches)&&!document.querySelector(`link[rel="stylesheet"][href="${l.href}"]`));await Promise.all(s.map(bt))}async function bt(e){return new Promise(t=>{let r=document.createElement("link");Object.assign(r,e);function n(){document.head.contains(r)&&document.head.removeChild(r)}r.onload=()=>{n(),t()},r.onerror=()=>{n(),t()},document.head.appendChild(r)})}function q(e){return e!=null&&typeof e.page=="string"}function _t(e){return e==null?!1:e.href==null?e.rel==="preload"&&typeof e.imageSrcSet=="string"&&typeof e.imageSizes=="string":typeof e.rel=="string"&&typeof e.href=="string"}async function Lt(e,t,r){let n=await Promise.all(e.map(async a=>{let i=await _e(t.routes[a.route.id],r);return i.links?i.links():[]}));return Oe(n.flat(1).filter(_t).filter(a=>a.rel==="stylesheet"||a.rel==="preload").map(a=>a.rel==="stylesheet"?{...a,rel:"prefetch",as:"style"}:{...a,rel:"prefetch"}))}function ce(e,t,r,n,a,i,s){let l=ke(e),o=(u,d)=>r[d]?u.route.id!==r[d].route.id:!0,h=(u,d)=>{var y;return r[d].pathname!==u.pathname||((y=r[d].route.path)===null||y===void 0?void 0:y.endsWith("*"))&&r[d].params["*"]!==u.params["*"]};return s==="data"&&(i.v3_singleFetch||a.search!==l.search)?t.filter((u,d)=>{if(!n.routes[u.route.id].hasLoader)return!1;if(o(u,d)||h(u,d))return!0;let f=i.v3_singleFetch||a.search!==l.search;if(u.route.shouldRevalidate){var p;let g=u.route.shouldRevalidate({currentUrl:new URL(a.pathname+a.search+a.hash,window.origin),currentParams:((p=r[0])===null||p===void 0?void 0:p.params)||{},nextUrl:new URL(e,window.origin),nextParams:u.params,defaultShouldRevalidate:f});if(typeof g=="boolean")return g}return f}):t.filter((u,d)=>{let y=n.routes[u.route.id];return(s==="assets"||y.hasLoader)&&(o(u,d)||h(u,d))})}function Ot(e,t,r){let n=ke(e);return ee(t.filter(a=>r.routes[a.route.id].hasLoader&&!r.routes[a.route.id].hasClientLoader).map(a=>{let{pathname:i,search:s}=n,l=new URLSearchParams(s);return l.set("_data",a.route.id),`${i}?${l}`}))}function kt(e,t){return ee(e.map(r=>{let n=t.routes[r.route.id],a=[n.module];return n.imports&&(a=a.concat(n.imports)),a}).flat(1))}function Pt(e,t){return ee(e.map(r=>{let n=t.routes[r.route.id],a=[n.module];return n.imports&&(a=a.concat(n.imports)),a}).flat(1))}function ee(e){return[...new Set(e)]}function Dt(e){let t={},r=Object.keys(e).sort();for(let n of r)t[n]=e[n];return t}function Oe(e,t){let r=new Set,n=new Set(t);return e.reduce((a,i)=>{if(t&&!q(i)&&i.as==="script"&&i.href&&n.has(i.href))return a;let l=JSON.stringify(Dt(i));return r.has(l)||(r.add(l),a.push({key:l,link:i})),a},[])}function ke(e){let t=Ye(e);return t.search===void 0&&(t.search=""),t}let $;function Nt(){if($!==void 0)return $;let e=document.createElement("link");return $=e.relList.supports("preload"),e=null,$}/**
48
+ * @remix-run/react v2.16.2
49
+ *
50
+ * Copyright (c) Remix Software Inc.
51
+ *
52
+ * This source code is licensed under the MIT license found in the
53
+ * LICENSE.md file in the root directory of this source tree.
54
+ *
55
+ * @license MIT
56
+ */const Tt={"&":"\\u0026",">":"\\u003e","<":"\\u003c","\u2028":"\\u2028","\u2029":"\\u2029"},At=/[&><\u2028\u2029]/g;function F(e){return e.replace(At,t=>Tt[t])}function de(e){return{__html:e}}/**
57
+ * @remix-run/react v2.16.2
58
+ *
59
+ * Copyright (c) Remix Software Inc.
60
+ *
61
+ * This source code is licensed under the MIT license found in the
62
+ * LICENSE.md file in the root directory of this source tree.
63
+ *
64
+ * @license MIT
65
+ */function Ct(e){return e.headers.get("X-Remix-Catch")!=null}function jt(e){return e.headers.get("X-Remix-Error")!=null}function $t(e){return te(e)&&e.status>=400&&e.headers.get("X-Remix-Error")==null&&e.headers.get("X-Remix-Catch")==null&&e.headers.get("X-Remix-Response")==null}function Ft(e){return e.headers.get("X-Remix-Redirect")!=null}function It(e){var t;return!!((t=e.headers.get("Content-Type"))!==null&&t!==void 0&&t.match(/text\/remix-deferred/))}function te(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.headers=="object"&&typeof e.body<"u"}function Ht(e){let t=e;return t&&typeof t=="object"&&typeof t.data=="object"&&typeof t.subscribe=="function"&&typeof t.cancel=="function"&&typeof t.resolveData=="function"}async function Pe(e,t,r=0){let n=new URL(e.url);n.searchParams.set("_data",t),r>0&&await new Promise(l=>setTimeout(l,5**r*10));let a=await z(e),i=window.__remixRevalidation,s=await fetch(n.href,a).catch(l=>{if(typeof i=="number"&&i===window.__remixRevalidation&&(l==null?void 0:l.name)==="TypeError"&&r<3)return Pe(e,t,r+1);throw l});if(jt(s)){let l=await s.json(),o=new Error(l.message);return o.stack=l.stack,o}if($t(s)){let l=await s.text(),o=new Error(l);return o.stack=void 0,o}return s}async function z(e){let t={signal:e.signal};if(e.method!=="GET"){t.method=e.method;let r=e.headers.get("Content-Type");r&&/\bapplication\/json\b/.test(r)?(t.headers={"Content-Type":r},t.body=JSON.stringify(await e.json())):r&&/\btext\/plain\b/.test(r)?(t.headers={"Content-Type":r},t.body=await e.text()):r&&/\bapplication\/x-www-form-urlencoded\b/.test(r)?t.body=new URLSearchParams(await e.text()):t.body=await e.formData()}return t}const Mt="__deferred_promise:";async function Ut(e){if(!e)throw new Error("parseDeferredReadableStream requires stream argument");let t,r={};try{let n=Jt(e),i=(await n.next()).value;if(!i)throw new Error("no critical data");let s=JSON.parse(i);if(typeof s=="object"&&s!==null)for(let[l,o]of Object.entries(s))typeof o!="string"||!o.startsWith(Mt)||(t=t||{},t[l]=new Promise((h,m)=>{r[l]={resolve:u=>{h(u),delete r[l]},reject:u=>{m(u),delete r[l]}}}));return(async()=>{try{for await(let l of n){let[o,...h]=l.split(":"),m=h.join(":"),u=JSON.parse(m);if(o==="data")for(let[d,y]of Object.entries(u))r[d]&&r[d].resolve(y);else if(o==="error")for(let[d,y]of Object.entries(u)){let f=new Error(y.message);f.stack=y.stack,r[d]&&r[d].reject(f)}}for(let[l,o]of Object.entries(r))o.reject(new Xe(`Deferred ${l} will never be resolved`))}catch(l){for(let o of Object.values(r))o.reject(l)}})(),new Ve({...s,...t})}catch(n){for(let a of Object.values(r))a.reject(n);throw n}}async function*Jt(e){let t=e.getReader(),r=[],n=[],a=!1,i=new TextEncoder,s=new TextDecoder,l=async()=>{if(n.length>0)return n.shift();for(;!a&&n.length===0;){let h=await t.read();if(h.done){a=!0;break}r.push(h.value);try{let u=s.decode(fe(...r)).split(`
66
+
67
+ `);if(u.length>=2&&(n.push(...u.slice(0,-1)),r=[i.encode(u.slice(-1).join(`
68
+
69
+ `))]),n.length>0)break}catch{continue}}return n.length>0||r.length>0&&(n=s.decode(fe(...r)).split(`
70
+
71
+ `).filter(m=>m),r=[]),n.shift()},o=await l();for(;o;)yield o,o=await l()}function fe(...e){let t=new Uint8Array(e.reduce((n,a)=>n+a.length,0)),r=0;for(let n of e)t.set(n,r),r+=n.length;return t}/**
72
+ * @remix-run/react v2.16.2
73
+ *
74
+ * Copyright (c) Remix Software Inc.
75
+ *
76
+ * This source code is licensed under the MIT license found in the
77
+ * LICENSE.md file in the root directory of this source tree.
78
+ *
79
+ * @license MIT
80
+ */function wr(e,t,r){return async({request:n,matches:a,fetcherKey:i})=>n.method!=="GET"?zt(n,a):i?Yt(n,a):Bt(e,t,r(),n,a)}async function zt(e,t){let r=t.find(i=>i.shouldLoad);P(r,"No action match found");let n,a=await r.resolve(async i=>await i(async()=>{let l=B(e.url),o=await z(e),{data:h,status:m}=await re(l,o);return n=m,Z(h,r.route.id)}));return te(a.result)||pe(a.result)?{[r.route.id]:a}:{[r.route.id]:{type:a.type,result:We(a.result,n)}}}async function Bt(e,t,r,n,a){let i=new Set,s=!1,l=a.map(()=>he()),o=Promise.all(l.map(f=>f.promise)),h=he(),m=Ne(B(n.url)),u=await z(n),d={},y=Promise.all(a.map(async(f,p)=>f.resolve(async g=>{if(l[p].resolve(),!f.shouldLoad){var E;if(!r.state.initialized)return;if(f.route.id in r.state.loaderData&&e.routes[f.route.id]&&(E=t[f.route.id])!==null&&E!==void 0&&E.shouldRevalidate){e.routes[f.route.id].hasLoader&&(s=!0);return}}if(e.routes[f.route.id].hasClientLoader){e.routes[f.route.id].hasLoader&&(s=!0);try{let b=await De(g,m,u,f.route.id);d[f.route.id]={type:"data",result:b}}catch(b){d[f.route.id]={type:"error",result:b}}return}e.routes[f.route.id].hasLoader&&i.add(f.route.id);try{let b=await g(async()=>{let x=await h.promise;return Te(x,f.route.id)});d[f.route.id]={type:"data",result:b}}catch(b){d[f.route.id]={type:"error",result:b}}})));if(await o,(!r.state.initialized||i.size===0)&&!window.__remixHdrActive)h.resolve({});else try{s&&i.size>0&&m.searchParams.set("_routes",a.filter(p=>i.has(p.route.id)).map(p=>p.route.id).join(","));let f=await re(m,u);h.resolve(f.data)}catch(f){h.reject(f)}return await y,d}async function Yt(e,t){let r=t.find(a=>a.shouldLoad);P(r,"No fetcher match found");let n=await r.resolve(async a=>{let i=Ne(B(e.url)),s=await z(e);return De(a,i,s,r.route.id)});return{[r.route.id]:n}}function De(e,t,r,n){return e(async()=>{let a=new URL(t);a.searchParams.set("_routes",n);let{data:i}=await re(a,r);return Te(i,n)})}function Ne(e){let t=e.searchParams.getAll("index");e.searchParams.delete("index");let r=[];for(let n of t)n&&r.push(n);for(let n of r)e.searchParams.append("index",n);return e}function B(e){let t=typeof e=="string"?new URL(e,window.location.origin):e;return t.pathname==="/"?t.pathname="_root.data":t.pathname=`${t.pathname.replace(/\/$/,"")}.data`,t}async function re(e,t){let r=await fetch(e,t);if(new Set([100,101,204,205]).has(r.status))return!t.method||t.method==="GET"?{status:r.status,data:{}}:{status:r.status,data:{data:null}};P(r.body,"No response body to decode");try{let a=await Xt(r.body,window);return{status:r.status,data:a.value}}catch(a){throw console.error(a),new Error(`Unable to decode turbo-stream response from URL: ${e.toString()}`)}}function Xt(e,t){return Et(e,{plugins:[(r,...n)=>{if(r==="SanitizedError"){let[a,i,s]=n,l=Error;a&&a in t&&typeof t[a]=="function"&&(l=t[a]);let o=new l(i);return o.stack=s,{value:o}}if(r==="ErrorResponse"){let[a,i,s]=n;return{value:new U(i,s,a)}}if(r==="SingleFetchRedirect")return{value:{[be]:n[0]}}},(r,n)=>{if(r==="SingleFetchFallback")return{value:void 0};if(r==="SingleFetchClassInstance")return{value:n}}]})}function Te(e,t){let r=e[be];return r?Z(r,t):e[t]!==void 0?Z(e[t],t):null}function Z(e,t){if("error"in e)throw e.error;if("redirect"in e){let r={};throw e.revalidate&&(r["X-Remix-Revalidate"]="yes"),e.reload&&(r["X-Remix-Reload-Document"]="yes"),e.replace&&(r["X-Remix-Replace"]="yes"),ve(e.redirect,{status:e.status,headers:r})}else{if("data"in e)return e.data;throw new Error(`No response found for routeId "${t}"`)}}function he(){let e,t,r=new Promise((n,a)=>{e=async i=>{n(i);try{await r}catch{}},t=async i=>{a(i);try{await r}catch{}}});return{promise:r,resolve:e,reject:t}}/**
81
+ * @remix-run/react v2.16.2
82
+ *
83
+ * Copyright (c) Remix Software Inc.
84
+ *
85
+ * This source code is licensed under the MIT license found in the
86
+ * LICENSE.md file in the root directory of this source tree.
87
+ *
88
+ * @license MIT
89
+ */class gr extends c.Component{constructor(t){super(t),this.state={error:t.error||null,location:t.location}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,r){return r.location!==t.location?{error:t.error||null,location:t.location}:{error:t.error||r.error,location:r.location}}render(){return this.state.error?c.createElement(Ae,{error:this.state.error,isOutsideRemixApp:!0}):this.props.children}}function Ae({error:e,isOutsideRemixApp:t}){console.error(e);let r=c.createElement("script",{dangerouslySetInnerHTML:{__html:`
90
+ console.log(
91
+ "💿 Hey developer 👋. You can provide a way better UX than this when your app throws errors. Check out https://remix.run/guides/errors for more information."
92
+ );
93
+ `}});if(pe(e))return c.createElement(Q,{title:"Unhandled Thrown Response!"},c.createElement("h1",{style:{fontSize:"24px"}},e.status," ",e.statusText),r);let n;if(e instanceof Error)n=e;else{let a=e==null?"Unknown Error":typeof e=="object"&&"toString"in e?e.toString():JSON.stringify(e);n=new Error(a)}return c.createElement(Q,{title:"Application Error!",isOutsideRemixApp:t},c.createElement("h1",{style:{fontSize:"24px"}},"Application Error"),c.createElement("pre",{style:{padding:"2rem",background:"hsla(10, 50%, 50%, 0.1)",color:"red",overflow:"auto"}},n.stack),r)}function Q({title:e,renderScripts:t,isOutsideRemixApp:r,children:n}){var a;let{routeModules:i}=T();return(a=i.root)!==null&&a!==void 0&&a.Layout&&!r?n:c.createElement("html",{lang:"en"},c.createElement("head",null,c.createElement("meta",{charSet:"utf-8"}),c.createElement("meta",{name:"viewport",content:"width=device-width,initial-scale=1,viewport-fit=cover"}),c.createElement("title",null,e)),c.createElement("body",null,c.createElement("main",{style:{fontFamily:"system-ui, sans-serif",padding:"2rem"}},n,t?c.createElement(hr,null):null)))}/**
94
+ * @remix-run/react v2.16.2
95
+ *
96
+ * Copyright (c) Remix Software Inc.
97
+ *
98
+ * This source code is licensed under the MIT license found in the
99
+ * LICENSE.md file in the root directory of this source tree.
100
+ *
101
+ * @license MIT
102
+ */function Vt(){return c.createElement(Q,{title:"Loading...",renderScripts:!0},c.createElement("script",{dangerouslySetInnerHTML:{__html:`
103
+ console.log(
104
+ "💿 Hey developer 👋. You can provide a way better UX than this " +
105
+ "when your app is loading JS modules and/or running \`clientLoader\` " +
106
+ "functions. Check out https://remix.run/route/hydrate-fallback " +
107
+ "for more information."
108
+ );
109
+ `}}))}/**
110
+ * @remix-run/react v2.16.2
111
+ *
112
+ * Copyright (c) Remix Software Inc.
113
+ *
114
+ * This source code is licensed under the MIT license found in the
115
+ * LICENSE.md file in the root directory of this source tree.
116
+ *
117
+ * @license MIT
118
+ */function Ce(e){let t={};return Object.values(e).forEach(r=>{let n=r.parentId||"";t[n]||(t[n]=[]),t[n].push(r)}),t}function Wt(e,t,r){let n=je(t),a=t.HydrateFallback&&(!r||e.id==="root")?t.HydrateFallback:e.id==="root"?Vt:void 0,i=t.ErrorBoundary?t.ErrorBoundary:e.id==="root"?()=>c.createElement(Ae,{error:Ge()}):void 0;return e.id==="root"&&t.Layout?{...n?{element:c.createElement(t.Layout,null,c.createElement(n,null))}:{Component:n},...i?{errorElement:c.createElement(t.Layout,null,c.createElement(i,null))}:{ErrorBoundary:i},...a?{hydrateFallbackElement:c.createElement(t.Layout,null,c.createElement(a,null))}:{HydrateFallback:a}}:{Component:n,ErrorBoundary:i,HydrateFallback:a}}function Er(e,t,r,n,a,i){return ne(t,r,n,a,i,"",Ce(t),e)}function I(e,t,r){if(r){let s=`You cannot call ${e==="action"?"serverAction()":"serverLoader()"} in SPA Mode (routeId: "${t.id}")`;throw console.error(s),new U(400,"Bad Request",new Error(s),!0)}let a=`You are trying to call ${e==="action"?"serverAction()":"serverLoader()"} on a route that does not have a server ${e} (routeId: "${t.id}")`;if(e==="loader"&&!t.hasLoader||e==="action"&&!t.hasAction)throw console.error(a),new U(400,"Bad Request",new Error(a),!0)}function W(e,t){let r=e==="clientAction"?"a":"an",n=`Route "${t}" does not have ${r} ${e}, but you are trying to submit to it. To fix this, please add ${r} \`${e}\` function to the route`;throw console.error(n),new U(405,"Method Not Allowed",new Error(n),!0)}function ne(e,t,r,n,a,i="",s=Ce(e),l){return(s[i]||[]).map(o=>{let h=t[o.id];async function m(x,w,S){if(typeof S=="function")return await S();let v=await Zt(x,o);return w?Qt(v):v}function u(x,w,S){return o.hasLoader?m(x,w,S):Promise.resolve(null)}function d(x,w,S){if(!o.hasAction)throw W("action",o.id);return m(x,w,S)}async function y(x){let w=t[o.id],S=w?Le(o,w):Promise.resolve();try{return x()}finally{await S}}let f={id:o.id,index:o.index,path:o.path};if(h){var p,g,E;Object.assign(f,{...f,...Wt(o,h,a),handle:h.handle,shouldRevalidate:me(n,h,o.id,l)});let x=r==null||(p=r.loaderData)===null||p===void 0?void 0:p[o.id],w=r==null||(g=r.errors)===null||g===void 0?void 0:g[o.id],S=l==null&&(((E=h.clientLoader)===null||E===void 0?void 0:E.hydrate)===!0||!o.hasLoader);f.loader=async({request:v,params:R},_)=>{try{return await y(async()=>(P(h,"No `routeModule` available for critical-route loader"),h.clientLoader?h.clientLoader({request:v,params:R,async serverLoader(){if(I("loader",o,a),S){if(x!==void 0)return x;if(w!==void 0)throw w;return null}return u(v,!0,_)}}):a?null:u(v,!1,_)))}finally{S=!1}},f.loader.hydrate=er(o,h,a),f.action=({request:v,params:R},_)=>y(async()=>{if(P(h,"No `routeModule` available for critical-route action"),!h.clientAction){if(a)throw W("clientAction",o.id);return d(v,!1,_)}return h.clientAction({request:v,params:R,async serverAction(){return I("action",o,a),d(v,!0,_)}})})}else o.hasClientLoader||(f.loader=({request:x},w)=>y(()=>a?Promise.resolve(null):u(x,!1,w))),o.hasClientAction||(f.action=({request:x},w)=>y(()=>{if(a)throw W("clientAction",o.id);return d(x,!1,w)})),f.lazy=async()=>{let x=await Kt(o,t),w={...x};if(x.clientLoader){let S=x.clientLoader;w.loader=(v,R)=>S({...v,async serverLoader(){return I("loader",o,a),u(v.request,!0,R)}})}if(x.clientAction){let S=x.clientAction;w.action=(v,R)=>S({...v,async serverAction(){return I("action",o,a),d(v.request,!0,R)}})}return{...w.loader?{loader:w.loader}:{},...w.action?{action:w.action}:{},hasErrorBoundary:w.hasErrorBoundary,shouldRevalidate:me(n,w,o.id,l),handle:w.handle,Component:w.Component,ErrorBoundary:w.ErrorBoundary}};let b=ne(e,t,r,n,a,o.id,s,l);return b.length>0&&(f.children=b),f})}function me(e,t,r,n){if(n)return Gt(r,t.shouldRevalidate,n);if(e.v3_singleFetch&&t.shouldRevalidate){let a=t.shouldRevalidate;return i=>a({...i,defaultShouldRevalidate:!0})}return t.shouldRevalidate}function Gt(e,t,r){let n=!1;return a=>n?t?t(a):a.defaultShouldRevalidate:(n=!0,r.has(e))}async function Kt(e,t){let r=await _e(e,t);return await Le(e,r),{Component:je(r),ErrorBoundary:r.ErrorBoundary,clientAction:r.clientAction,clientLoader:r.clientLoader,handle:r.handle,links:r.links,meta:r.meta,shouldRevalidate:r.shouldRevalidate}}async function Zt(e,t){let r=await Pe(e,t.id);if(r instanceof Error)throw r;if(Ft(r))throw qt(r);if(Ct(r))throw r;return It(r)&&r.body?await Ut(r.body):r}function Qt(e){if(Ht(e))return e.data;if(te(e)){let t=e.headers.get("Content-Type");return t&&/\bapplication\/json\b/.test(t)?e.json():e.text()}return e}function qt(e){let t=parseInt(e.headers.get("X-Remix-Status"),10)||302,r=e.headers.get("X-Remix-Redirect"),n={},a=e.headers.get("X-Remix-Revalidate");a&&(n["X-Remix-Revalidate"]=a);let i=e.headers.get("X-Remix-Reload-Document");i&&(n["X-Remix-Reload-Document"]=i);let s=e.headers.get("X-Remix-Replace");return s&&(n["X-Remix-Replace"]=s),ve(r,{status:t,headers:n})}function je(e){if(e.default==null)return;if(!(typeof e.default=="object"&&Object.keys(e.default).length===0))return e.default}function er(e,t,r){return r&&e.id!=="root"||t.clientLoader!=null&&(t.clientLoader.hydrate===!0||e.hasLoader!==!0)}/**
119
+ * @remix-run/react v2.16.2
120
+ *
121
+ * Copyright (c) Remix Software Inc.
122
+ *
123
+ * This source code is licensed under the MIT license found in the
124
+ * LICENSE.md file in the root directory of this source tree.
125
+ *
126
+ * @license MIT
127
+ */const H=new Set,tr=1e3,J=new Set,rr=7680;function ae(e,t){return e.v3_lazyRouteDiscovery===!0&&!t}function nr(e,t){let r=new Set(t.state.matches.map(s=>s.route.id)),n=t.state.location.pathname.split("/").filter(Boolean),a=["/"];for(n.pop();n.length>0;)a.push(`/${n.join("/")}`),n.pop();a.forEach(s=>{let l=we(t.routes,s,t.basename);l&&l.forEach(o=>r.add(o.route.id))});let i=[...r].reduce((s,l)=>Object.assign(s,{[l]:e.routes[l]}),{});return{...e,routes:i}}function Sr(e,t,r,n,a){if(ae(r,n))return async({path:i,patch:s,signal:l,fetcherKey:o})=>{J.has(i)||await $e([i],o?window.location.href:i,e,t,r,n,a,s,l)}}function Rr(e,t,r,n,a){c.useEffect(()=>{var i;if(!ae(n,a)||((i=navigator.connection)===null||i===void 0?void 0:i.saveData)===!0)return;function s(u){let d=u.tagName==="FORM"?u.getAttribute("action"):u.getAttribute("href");if(!d)return;let y=new URL(d,window.location.origin);J.has(y.pathname)||H.add(y.pathname)}async function l(){let u=Array.from(H.keys()).filter(d=>J.has(d)?(H.delete(d),!1):!0);if(u.length!==0)try{await $e(u,null,t,r,n,a,e.basename,e.patchRoutes)}catch(d){console.error("Failed to fetch manifest patches",d)}}document.body.querySelectorAll("a[data-discover], form[data-discover]").forEach(u=>s(u)),l();let o=ir(l,100);function h(u){return u.nodeType===Node.ELEMENT_NODE}let m=new MutationObserver(u=>{let d=new Set;u.forEach(y=>{[y.target,...y.addedNodes].forEach(f=>{h(f)&&((f.tagName==="A"&&f.getAttribute("data-discover")||f.tagName==="FORM"&&f.getAttribute("data-discover"))&&d.add(f),f.tagName!=="A"&&f.querySelectorAll("a[data-discover], form[data-discover]").forEach(p=>d.add(p)))})}),d.forEach(y=>s(y)),o()});return m.observe(document.documentElement,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["data-discover","href","action"]}),()=>m.disconnect()},[n,a,t,r,e])}const G="remix-manifest-version";async function $e(e,t,r,n,a,i,s,l,o){let h=`${s??"/"}/__manifest`.replace(/\/+/g,"/"),m=new URL(h,window.location.origin);if(e.sort().forEach(p=>m.searchParams.append("p",p)),m.searchParams.set("version",r.version),m.toString().length>rr){H.clear();return}let u;try{let p=await fetch(m,{signal:o});if(p.ok){if(p.status===204&&p.headers.has("X-Remix-Reload-Document")){if(!t){console.warn("Detected a manifest version mismatch during eager route discovery. The next navigation/fetch to an undiscovered route will result in a new document navigation to sync up with the latest manifest.");return}if(sessionStorage.getItem(G)===r.version){console.error("Unable to discover routes due to manifest version mismatch.");return}throw sessionStorage.setItem(G,r.version),window.location.href=t,new Error("Detected manifest version mismatch, reloading...")}else if(p.status>=400)throw new Error(await p.text())}else throw new Error(`${p.status} ${p.statusText}`);sessionStorage.removeItem(G),u=await p.json()}catch(p){if(o!=null&&o.aborted)return;throw p}let d=new Set(Object.keys(r.routes)),y=Object.values(u).reduce((p,g)=>d.has(g.id)?p:Object.assign(p,{[g.id]:g}),{});Object.assign(r.routes,y),e.forEach(p=>ar(p,J));let f=new Set;Object.values(y).forEach(p=>{(!p.parentId||!y[p.parentId])&&f.add(p.parentId)}),f.forEach(p=>l(p||null,ne(y,n,null,a,i,p)))}function ar(e,t){if(t.size>=tr){let r=t.values().next().value;typeof r=="string"&&t.delete(r)}t.add(e)}function ir(e,t){let r;return(...n)=>{window.clearTimeout(r),r=window.setTimeout(()=>e(...n),t)}}function Fe(){let e=c.useContext(Ke);return P(e,"You must render this element inside a <DataRouterContext.Provider> element"),e}function Y(){let e=c.useContext(Ze);return P(e,"You must render this element inside a <DataRouterStateContext.Provider> element"),e}const Ie=c.createContext(void 0);Ie.displayName="Remix";function T(){let e=c.useContext(Ie);return P(e,"You must render this element inside a <Remix> element"),e}function He(e,t){let[r,n]=c.useState(!1),[a,i]=c.useState(!1),{onFocus:s,onBlur:l,onMouseEnter:o,onMouseLeave:h,onTouchStart:m}=t,u=c.useRef(null);c.useEffect(()=>{if(e==="render"&&i(!0),e==="viewport"){let f=g=>{g.forEach(E=>{i(E.isIntersecting)})},p=new IntersectionObserver(f,{threshold:.5});return u.current&&p.observe(u.current),()=>{p.disconnect()}}},[e]);let d=()=>{e==="intent"&&n(!0)},y=()=>{e==="intent"&&(n(!1),i(!1))};return c.useEffect(()=>{if(r){let f=setTimeout(()=>{i(!0)},100);return()=>{clearTimeout(f)}}},[r]),[a,u,{onFocus:C(s,d),onBlur:C(l,y),onMouseEnter:C(o,d),onMouseLeave:C(h,y),onTouchStart:C(m,d)}]}const ie=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i;function oe(e,t,r){return e==="render"&&!t&&!r?"true":void 0}let or=c.forwardRef(({to:e,prefetch:t="none",discover:r="render",...n},a)=>{let i=typeof e=="string"&&ie.test(e),s=Ee(e),[l,o,h]=He(t,n);return c.createElement(c.Fragment,null,c.createElement(et,L({},n,h,{ref:Me(a,o),to:e,"data-discover":oe(r,i,n.reloadDocument)})),l&&!i?c.createElement(se,{page:s}):null)});or.displayName="NavLink";let lr=c.forwardRef(({to:e,prefetch:t="none",discover:r="render",...n},a)=>{let i=typeof e=="string"&&ie.test(e),s=Ee(e),[l,o,h]=He(t,n);return c.createElement(c.Fragment,null,c.createElement(tt,L({},n,h,{ref:Me(a,o),to:e,"data-discover":oe(r,i,n.reloadDocument)})),l&&!i?c.createElement(se,{page:s}):null)});lr.displayName="Link";let sr=c.forwardRef(({discover:e="render",...t},r)=>{let n=typeof t.action=="string"&&ie.test(t.action);return c.createElement(rt,L({},t,{ref:r,"data-discover":oe(e,n,t.reloadDocument)}))});sr.displayName="Form";function C(e,t){return r=>{e&&e(r),r.defaultPrevented||t(r)}}function le(e,t,r){if(r&&!M)return[e[0]];if(t){let n=e.findIndex(a=>t[a.route.id]!==void 0);return e.slice(0,n+1)}return e}function xr(){let{isSpaMode:e,manifest:t,routeModules:r,criticalCss:n}=T(),{errors:a,matches:i}=Y(),s=le(i,a,e),l=c.useMemo(()=>xt(s,r,t),[s,r,t]);return c.createElement(c.Fragment,null,n?c.createElement("style",{dangerouslySetInnerHTML:{__html:n}}):null,l.map(({key:o,link:h})=>q(h)?c.createElement(se,L({key:o},h)):c.createElement("link",L({key:o},h))))}function se({page:e,...t}){let{router:r}=Fe(),n=c.useMemo(()=>we(r.routes,e,r.basename),[r.routes,e,r.basename]);return n?c.createElement(cr,L({page:e,matches:n},t)):(console.warn(`Tried to prefetch ${e} but no routes matched.`),null)}function ur(e){let{manifest:t,routeModules:r}=T(),[n,a]=c.useState([]);return c.useEffect(()=>{let i=!1;return Lt(e,t,r).then(s=>{i||a(s)}),()=>{i=!0}},[e,t,r]),n}function cr({page:e,matches:t,...r}){let n=ge(),{future:a,manifest:i,routeModules:s}=T(),{loaderData:l,matches:o}=Y(),h=c.useMemo(()=>ce(e,t,o,i,n,a,"data"),[e,t,o,i,n,a]),m=c.useMemo(()=>{if(!a.v3_singleFetch)return Ot(e,h,i);if(e===n.pathname+n.search+n.hash)return[];let f=new Set,p=!1;if(t.forEach(E=>{var b;i.routes[E.route.id].hasLoader&&(!h.some(x=>x.route.id===E.route.id)&&E.route.id in l&&(b=s[E.route.id])!==null&&b!==void 0&&b.shouldRevalidate||i.routes[E.route.id].hasClientLoader?p=!0:f.add(E.route.id))}),f.size===0)return[];let g=B(e);return p&&f.size>0&&g.searchParams.set("_routes",t.filter(E=>f.has(E.route.id)).map(E=>E.route.id).join(",")),[g.pathname+g.search]},[a.v3_singleFetch,l,n,i,h,t,e,s]),u=c.useMemo(()=>ce(e,t,o,i,n,a,"assets"),[e,t,o,i,n,a]),d=c.useMemo(()=>kt(u,i),[u,i]),y=ur(u);return c.createElement(c.Fragment,null,m.map(f=>c.createElement("link",L({key:f,rel:"prefetch",as:"fetch",href:f},r))),d.map(f=>c.createElement("link",L({key:f,rel:"modulepreload",href:f},r))),y.map(({key:f,link:p})=>c.createElement("link",L({key:f},p))))}function br(){let{isSpaMode:e,routeModules:t}=T(),{errors:r,matches:n,loaderData:a}=Y(),i=ge(),s=le(n,r,e),l=null;r&&(l=r[s[s.length-1].route.id]);let o=[],h=null,m=[];for(let u=0;u<s.length;u++){let d=s[u],y=d.route.id,f=a[y],p=d.params,g=t[y],E=[],b={id:y,data:f,meta:[],params:d.params,pathname:d.pathname,handle:d.route.handle,error:l};if(m[u]=b,g!=null&&g.meta?E=typeof g.meta=="function"?g.meta({data:f,params:p,location:i,matches:m,error:l}):Array.isArray(g.meta)?[...g.meta]:g.meta:h&&(E=[...h]),E=E||[],!Array.isArray(E))throw new Error("The route at "+d.route.path+` returns an invalid value. All route meta functions must return an array of meta objects.
128
+
129
+ To reference the meta function API, see https://remix.run/route/meta`);b.meta=E,m[u]=b,o=[...E],h=o}return c.createElement(c.Fragment,null,o.flat().map(u=>{if(!u)return null;if("tagName"in u){let{tagName:d,...y}=u;if(!dr(d))return console.warn(`A meta object uses an invalid tagName: ${d}. Expected either 'link' or 'meta'`),null;let f=d;return c.createElement(f,L({key:JSON.stringify(y)},y))}if("title"in u)return c.createElement("title",{key:"title"},String(u.title));if("charset"in u&&(u.charSet??(u.charSet=u.charset),delete u.charset),"charSet"in u&&u.charSet!=null)return typeof u.charSet=="string"?c.createElement("meta",{key:"charSet",charSet:u.charSet}):null;if("script:ld+json"in u)try{let d=JSON.stringify(u["script:ld+json"]);return c.createElement("script",{key:`script:ld+json:${d}`,type:"application/ld+json",dangerouslySetInnerHTML:{__html:d}})}catch{return null}return c.createElement("meta",L({key:JSON.stringify(u)},u))}))}function dr(e){return typeof e=="string"&&/^(meta|link)$/.test(e)}function fr(e){return c.createElement(Qe,e)}let M=!1;function hr(e){let{manifest:t,serverHandoffString:r,abortDelay:n,serializeError:a,isSpaMode:i,future:s,renderMeta:l}=T(),{router:o,static:h,staticContext:m}=Fe(),{matches:u}=Y(),d=ae(s,i);l&&(l.didRenderScripts=!0);let y=le(u,null,i);c.useEffect(()=>{M=!0},[]);let f=(v,R)=>{let _;return a&&R instanceof Error?_=a(R):_=R,`${JSON.stringify(v)}:__remixContext.p(!1, ${F(JSON.stringify(_))})`},p=(v,R,_)=>{let O;try{O=JSON.stringify(_)}catch(A){return f(R,A)}return`${JSON.stringify(R)}:__remixContext.p(${F(O)})`},g=(v,R,_)=>{let O;return a&&_ instanceof Error?O=a(_):O=_,`__remixContext.r(${JSON.stringify(v)}, ${JSON.stringify(R)}, !1, ${F(JSON.stringify(O))})`},E=(v,R,_)=>{let O;try{O=JSON.stringify(_)}catch(A){return g(v,R,A)}return`__remixContext.r(${JSON.stringify(v)}, ${JSON.stringify(R)}, ${F(O)})`},b=[],x=c.useMemo(()=>{var v;let R=s.v3_singleFetch?"window.__remixContext.stream = new ReadableStream({start(controller){window.__remixContext.streamController = controller;}}).pipeThrough(new TextEncoderStream());":"",_=m?`window.__remixContext = ${r};${R}`:" ",O=s.v3_singleFetch||m==null?void 0:m.activeDeferreds;_+=O?["__remixContext.p = function(v,e,p,x) {"," if (typeof e !== 'undefined') {",` x=new Error("Unexpected Server Error");
130
+ x.stack=undefined;`," p=Promise.reject(x);"," } else {"," p=Promise.resolve(v);"," }"," return p;","};","__remixContext.n = function(i,k) {"," __remixContext.t = __remixContext.t || {};"," __remixContext.t[i] = __remixContext.t[i] || {};"," let p = new Promise((r, e) => {__remixContext.t[i][k] = {r:(v)=>{r(v);},e:(v)=>{e(v);}};});",typeof n=="number"?`setTimeout(() => {if(typeof p._error !== "undefined" || typeof p._data !== "undefined"){return;} __remixContext.t[i][k].e(new Error("Server timeout."))}, ${n});`:""," return p;","};","__remixContext.r = function(i,k,v,e,p,x) {"," p = __remixContext.t[i][k];"," if (typeof e !== 'undefined') {",` x=new Error("Unexpected Server Error");
131
+ x.stack=undefined;`," p.e(x);"," } else {"," p.r(v);"," }","};"].join(`
132
+ `)+Object.entries(O).map(([k,D])=>{let Ue=new Set(D.pendingKeys),Je=D.deferredKeys.map(N=>{if(Ue.has(N))return b.push(c.createElement(ye,{key:`${k} | ${N}`,deferredData:D,routeId:k,dataKey:N,scriptProps:e,serializeData:E,serializeError:g})),`${JSON.stringify(N)}:__remixContext.n(${JSON.stringify(k)}, ${JSON.stringify(N)})`;{let X=D.data[N];return typeof X._error<"u"?f(N,X._error):p(k,N,X._data)}}).join(`,
133
+ `);return`Object.assign(__remixContext.state.loaderData[${JSON.stringify(k)}], {${Je}});`}).join(`
134
+ `)+(b.length>0?`__remixContext.a=${b.length};`:""):"";let A=h?`${(v=t.hmr)!==null&&v!==void 0&&v.runtime?`import ${JSON.stringify(t.hmr.runtime)};`:""}${d?"":`import ${JSON.stringify(t.url)}`};
135
+ ${y.map((k,D)=>`import * as route${D} from ${JSON.stringify(t.routes[k.route.id].module)};`).join(`
136
+ `)}
137
+ ${d?`window.__remixManifest = ${JSON.stringify(nr(t,o),null,2)};`:""}
138
+ window.__remixRouteModules = {${y.map((k,D)=>`${JSON.stringify(k.route.id)}:route${D}`).join(",")}};
139
+
140
+ import(${JSON.stringify(t.entry.module)});`:" ";return c.createElement(c.Fragment,null,c.createElement("script",L({},e,{suppressHydrationWarning:!0,dangerouslySetInnerHTML:de(_),type:void 0})),c.createElement("script",L({},e,{suppressHydrationWarning:!0,dangerouslySetInnerHTML:de(A),type:"module",async:!0})))},[]);if(!h&&typeof __remixContext=="object"&&__remixContext.a)for(let v=0;v<__remixContext.a;v++)b.push(c.createElement(ye,{key:v,scriptProps:e,serializeData:E,serializeError:g}));let w=y.map(v=>{let R=t.routes[v.route.id];return(R.imports||[]).concat([R.module])}).flat(1),S=M?[]:t.entry.imports.concat(w);return M?null:c.createElement(c.Fragment,null,d?null:c.createElement("link",{rel:"modulepreload",href:t.url,crossOrigin:e.crossOrigin}),c.createElement("link",{rel:"modulepreload",href:t.entry.module,crossOrigin:e.crossOrigin}),yr(S).map(v=>c.createElement("link",{key:v,rel:"modulepreload",href:v,crossOrigin:e.crossOrigin})),x,b)}function ye({dataKey:e,deferredData:t,routeId:r,scriptProps:n,serializeData:a,serializeError:i}){return typeof document>"u"&&t&&e&&r&&P(t.pendingKeys.includes(e),`Deferred data for route ${r} with key ${e} was not pending but tried to render a script for it.`),c.createElement(c.Suspense,{fallback:typeof document>"u"&&t&&e&&r?null:c.createElement("script",L({},n,{async:!0,suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:" "}}))},typeof document>"u"&&t&&e&&r?c.createElement(fr,{resolve:t.data[e],errorElement:c.createElement(mr,{dataKey:e,routeId:r,scriptProps:n,serializeError:i}),children:s=>c.createElement("script",L({},n,{async:!0,suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:a(r,e,s)}}))}):c.createElement("script",L({},n,{async:!0,suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:" "}})))}function mr({dataKey:e,routeId:t,scriptProps:r,serializeError:n}){let a=qe();return c.createElement("script",L({},r,{suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:n(t,e,a)}}))}function yr(e){return[...new Set(e)]}function Me(...e){return t=>{e.forEach(r=>{typeof r=="function"?r(t):r!=null&&(r.current=t)})}}export{xr as L,br as M,Ie as R,hr as S,L as _,wr as a,Er as b,ne as c,Xt as d,gr as e,T as f,Sr as g,P as i,er as s,Rr as u};
@@ -1,4 +1,4 @@
1
- import{r,j as v}from"./index-BJHAE5s4.js";import{E as p,i as C,d as M,c as y,m as g,s as E,a as S,g as b,b as F,e as P,f as k,u as D,R as z,h as j,j as H,k as L,r as O}from"./components-ZIfdTbrV.js";/**
1
+ import{E as C,m as h,c as M,a as y,r,R as g,b as E,d as S,j as v}from"./index-DSo1AH_7.js";import{i as b,d as F,c as P,s as D,g as k,a as z,b as H,u as L,R as O,e as T}from"./components-B7lKcHVY.js";/**
2
2
  * @remix-run/react v2.16.2
3
3
  *
4
4
  * Copyright (c) Remix Software Inc.
@@ -7,7 +7,7 @@ import{r,j as v}from"./index-BJHAE5s4.js";import{E as p,i as C,d as M,c as y,m a
7
7
  * LICENSE.md file in the root directory of this source tree.
8
8
  *
9
9
  * @license MIT
10
- */function T(n){if(!n)return null;let x=Object.entries(n),u={};for(let[a,e]of x)if(e&&e.__type==="RouteErrorResponse")u[a]=new p(e.status,e.statusText,e.data,e.internal===!0);else if(e&&e.__type==="Error"){if(e.__subType){let i=window[e.__subType];if(typeof i=="function")try{let o=new i(e.message);o.stack=e.stack,u[a]=o}catch{}}if(u[a]==null){let i=new Error(e.message);i.stack=e.stack,u[a]=i}}else u[a]=e;return u}/**
10
+ */function j(n){if(!n)return null;let x=Object.entries(n),u={};for(let[a,e]of x)if(e&&e.__type==="RouteErrorResponse")u[a]=new C(e.status,e.statusText,e.data,e.internal===!0);else if(e&&e.__type==="Error"){if(e.__subType){let i=window[e.__subType];if(typeof i=="function")try{let o=new i(e.message);o.stack=e.stack,u[a]=o}catch{}}if(u[a]==null){let i=new Error(e.message);i.stack=e.stack,u[a]=i}}else u[a]=e;return u}/**
11
11
  * @remix-run/react v2.16.2
12
12
  *
13
13
  * Copyright (c) Remix Software Inc.
@@ -16,4 +16,4 @@ import{r,j as v}from"./index-BJHAE5s4.js";import{E as p,i as C,d as M,c as y,m a
16
16
  * LICENSE.md file in the root directory of this source tree.
17
17
  *
18
18
  * @license MIT
19
- */let s,t,f=!1,R;new Promise(n=>{R=n}).catch(()=>{});function B(n){if(!t){if(window.__remixContext.future.v3_singleFetch){if(!s){let d=window.__remixContext.stream;C(d,"No stream found for single fetch decoding"),window.__remixContext.stream=void 0,s=M(d,window).then(l=>{window.__remixContext.state=l.value,s.value=!0}).catch(l=>{s.error=l})}if(s.error)throw s.error;if(!s.value)throw s}let i=y(window.__remixManifest.routes,window.__remixRouteModules,window.__remixContext.state,window.__remixContext.future,window.__remixContext.isSpaMode),o;if(!window.__remixContext.isSpaMode){o={...window.__remixContext.state,loaderData:{...window.__remixContext.state.loaderData}};let d=g(i,window.location,window.__remixContext.basename);if(d)for(let l of d){let _=l.route.id,c=window.__remixRouteModules[_],w=window.__remixManifest.routes[_];c&&E(w,c,window.__remixContext.isSpaMode)&&(c.HydrateFallback||!w.hasLoader)?o.loaderData[_]=void 0:w&&!w.hasLoader&&(o.loaderData[_]=null)}o&&o.errors&&(o.errors=T(o.errors))}t=S({routes:i,history:P(),basename:window.__remixContext.basename,future:{v7_normalizeFormMethod:!0,v7_fetcherPersist:window.__remixContext.future.v3_fetcherPersist,v7_partialHydration:!0,v7_prependBasename:!0,v7_relativeSplatPath:window.__remixContext.future.v3_relativeSplatPath,v7_skipActionErrorRevalidation:window.__remixContext.future.v3_singleFetch===!0},hydrationData:o,mapRouteProperties:L,dataStrategy:window.__remixContext.future.v3_singleFetch&&!window.__remixContext.isSpaMode?F(window.__remixManifest,window.__remixRouteModules,()=>t):void 0,patchRoutesOnNavigation:b(window.__remixManifest,window.__remixRouteModules,window.__remixContext.future,window.__remixContext.isSpaMode,window.__remixContext.basename)}),t.state.initialized&&(f=!0,t.initialize()),t.createRoutesForHMR=k,window.__remixRouter=t,R&&R(t)}let[x,u]=r.useState(void 0),[a,e]=r.useState(t.state.location);return r.useLayoutEffect(()=>{f||(f=!0,t.initialize())},[]),r.useLayoutEffect(()=>t.subscribe(i=>{i.location!==a&&e(i.location)}),[a]),D(t,window.__remixManifest,window.__remixRouteModules,window.__remixContext.future,window.__remixContext.isSpaMode),r.createElement(r.Fragment,null,r.createElement(z.Provider,{value:{manifest:window.__remixManifest,routeModules:window.__remixRouteModules,future:window.__remixContext.future,criticalCss:x,isSpaMode:window.__remixContext.isSpaMode}},r.createElement(j,{location:a},r.createElement(H,{router:t,fallbackElement:null,future:{v7_startTransition:!0}}))),window.__remixContext.future.v3_singleFetch?r.createElement(r.Fragment,null):null)}var m={},h;function q(){if(h)return m;h=1;var n=O();return m.createRoot=n.createRoot,m.hydrateRoot=n.hydrateRoot,m}var I=q();r.startTransition(()=>{I.hydrateRoot(document,v.jsx(r.StrictMode,{children:v.jsx(B,{})}))});
19
+ */let s,t,f=!1,R;new Promise(n=>{R=n}).catch(()=>{});function B(n){if(!t){if(window.__remixContext.future.v3_singleFetch){if(!s){let d=window.__remixContext.stream;b(d,"No stream found for single fetch decoding"),window.__remixContext.stream=void 0,s=F(d,window).then(l=>{window.__remixContext.state=l.value,s.value=!0}).catch(l=>{s.error=l})}if(s.error)throw s.error;if(!s.value)throw s}let i=P(window.__remixManifest.routes,window.__remixRouteModules,window.__remixContext.state,window.__remixContext.future,window.__remixContext.isSpaMode),o;if(!window.__remixContext.isSpaMode){o={...window.__remixContext.state,loaderData:{...window.__remixContext.state.loaderData}};let d=h(i,window.location,window.__remixContext.basename);if(d)for(let l of d){let _=l.route.id,c=window.__remixRouteModules[_],w=window.__remixManifest.routes[_];c&&D(w,c,window.__remixContext.isSpaMode)&&(c.HydrateFallback||!w.hasLoader)?o.loaderData[_]=void 0:w&&!w.hasLoader&&(o.loaderData[_]=null)}o&&o.errors&&(o.errors=j(o.errors))}t=M({routes:i,history:y(),basename:window.__remixContext.basename,future:{v7_normalizeFormMethod:!0,v7_fetcherPersist:window.__remixContext.future.v3_fetcherPersist,v7_partialHydration:!0,v7_prependBasename:!0,v7_relativeSplatPath:window.__remixContext.future.v3_relativeSplatPath,v7_skipActionErrorRevalidation:window.__remixContext.future.v3_singleFetch===!0},hydrationData:o,mapRouteProperties:E,dataStrategy:window.__remixContext.future.v3_singleFetch&&!window.__remixContext.isSpaMode?z(window.__remixManifest,window.__remixRouteModules,()=>t):void 0,patchRoutesOnNavigation:k(window.__remixManifest,window.__remixRouteModules,window.__remixContext.future,window.__remixContext.isSpaMode,window.__remixContext.basename)}),t.state.initialized&&(f=!0,t.initialize()),t.createRoutesForHMR=H,window.__remixRouter=t,R&&R(t)}let[x,u]=r.useState(void 0),[a,e]=r.useState(t.state.location);return r.useLayoutEffect(()=>{f||(f=!0,t.initialize())},[]),r.useLayoutEffect(()=>t.subscribe(i=>{i.location!==a&&e(i.location)}),[a]),L(t,window.__remixManifest,window.__remixRouteModules,window.__remixContext.future,window.__remixContext.isSpaMode),r.createElement(r.Fragment,null,r.createElement(O.Provider,{value:{manifest:window.__remixManifest,routeModules:window.__remixRouteModules,future:window.__remixContext.future,criticalCss:x,isSpaMode:window.__remixContext.isSpaMode}},r.createElement(T,{location:a},r.createElement(g,{router:t,fallbackElement:null,future:{v7_startTransition:!0}}))),window.__remixContext.future.v3_singleFetch?r.createElement(r.Fragment,null):null)}var m={},p;function q(){if(p)return m;p=1;var n=S();return m.createRoot=n.createRoot,m.hydrateRoot=n.hydrateRoot,m}var I=q();r.startTransition(()=>{I.hydrateRoot(document,v.jsx(r.StrictMode,{children:v.jsx(B,{})}))});