@hotmeshio/long-tail 0.18.1 → 0.19.1

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 (367) hide show
  1. package/build/api/escalations/index.d.ts +1 -1
  2. package/build/api/escalations/index.js +2 -1
  3. package/build/api/escalations/list.d.ts +11 -0
  4. package/build/api/escalations/list.js +31 -2
  5. package/build/api/users.d.ts +11 -0
  6. package/build/api/users.js +19 -0
  7. package/build/api/workflows/config.d.ts +5 -1
  8. package/build/api/workflows/config.js +9 -1
  9. package/build/api/workflows/index.d.ts +3 -0
  10. package/build/api/workflows/index.js +7 -1
  11. package/build/api/workflows/input-validation.d.ts +13 -0
  12. package/build/api/workflows/input-validation.js +38 -0
  13. package/build/api/workflows/invocable.d.ts +19 -0
  14. package/build/api/workflows/invocable.js +106 -0
  15. package/build/api/workflows/invocation.js +6 -0
  16. package/build/lib/db/schemas/034_workflow_input_schema.sql +13 -0
  17. package/build/lib/uuid.d.ts +11 -0
  18. package/build/lib/uuid.js +20 -0
  19. package/build/routes/escalations/list.js +10 -1
  20. package/build/routes/users.js +9 -0
  21. package/build/routes/workflows/config.js +2 -0
  22. package/build/routes/workflows/discovery.js +14 -0
  23. package/build/scripts/ortho-populate.d.ts +3 -1
  24. package/build/scripts/ortho-populate.js +15 -5
  25. package/build/sdk/index.d.ts +1 -0
  26. package/build/services/config/cache.js +2 -0
  27. package/build/services/config/read.js +4 -0
  28. package/build/services/config/sql.d.ts +2 -2
  29. package/build/services/config/sql.js +7 -5
  30. package/build/services/config/write.js +11 -1
  31. package/build/services/escalation/batch.js +3 -0
  32. package/build/services/escalation/bulk.js +8 -0
  33. package/build/services/escalation/crud.js +26 -0
  34. package/build/services/escalation/queries.d.ts +14 -1
  35. package/build/services/escalation/queries.js +49 -7
  36. package/build/services/escalation/sql.d.ts +4 -2
  37. package/build/services/escalation/sql.js +4 -0
  38. package/build/services/interceptor/index.js +7 -0
  39. package/build/services/invocation-access.d.ts +18 -0
  40. package/build/services/invocation-access.js +32 -0
  41. package/build/services/role/types.d.ts +1 -1
  42. package/build/services/role/types.js +1 -1
  43. package/build/services/user/auth.js +2 -2
  44. package/build/services/user/crud.d.ts +13 -0
  45. package/build/services/user/crud.js +26 -3
  46. package/build/services/user/index.d.ts +1 -1
  47. package/build/services/user/index.js +2 -1
  48. package/build/services/user/sql.d.ts +11 -5
  49. package/build/services/user/sql.js +18 -6
  50. package/build/services/workflow-invocation.js +4 -9
  51. package/build/shared/form-validation/index.d.ts +1 -0
  52. package/build/shared/form-validation/index.js +1 -0
  53. package/build/shared/form-validation/invoke-context.d.ts +7 -0
  54. package/build/shared/form-validation/invoke-context.js +11 -0
  55. package/build/shared/form-validation/validate-resolver-payload.d.ts +1 -1
  56. package/build/shared/form-validation/validate-resolver-payload.js +1 -0
  57. package/build/shared/form-validation/x-lt-help.d.ts +2 -2
  58. package/build/shared/form-validation/x-lt-help.js +2 -2
  59. package/build/shared/form-validation/x-lt-show-if.d.ts +1 -0
  60. package/build/shared/form-validation/x-lt-show-if.js +3 -0
  61. package/build/start/workers.js +2 -0
  62. package/build/system/mcp-servers/admin/workflows.js +15 -2
  63. package/build/tsconfig.tsbuildinfo +1 -1
  64. package/build/types/config.d.ts +6 -0
  65. package/build/types/index.d.ts +2 -0
  66. package/build/types/index.js +4 -1
  67. package/build/types/startup.d.ts +10 -0
  68. package/build/types/validation.d.ts +4 -2
  69. package/build/types/workflow-icons.d.ts +86 -0
  70. package/build/types/workflow-icons.js +92 -0
  71. package/dashboard/dist/assets/{AdminDashboard-DDY8bceq.js → AdminDashboard-Drs-9TRM.js} +2 -2
  72. package/dashboard/dist/assets/{AdminDashboard-DDY8bceq.js.map → AdminDashboard-Drs-9TRM.js.map} +1 -1
  73. package/dashboard/dist/assets/{AgentConfigPage-D47sHnup.js → AgentConfigPage-BDPDZ7-v.js} +3 -3
  74. package/dashboard/dist/assets/{AgentConfigPage-D47sHnup.js.map → AgentConfigPage-BDPDZ7-v.js.map} +1 -1
  75. package/dashboard/dist/assets/{AgentDetailPage-DwrfByA2.js → AgentDetailPage-CGBulM4_.js} +3 -3
  76. package/dashboard/dist/assets/{AgentDetailPage-DwrfByA2.js.map → AgentDetailPage-CGBulM4_.js.map} +1 -1
  77. package/dashboard/dist/assets/AgentsPage-D77JeViQ.js +2 -0
  78. package/dashboard/dist/assets/{AgentsPage-CLSjlyXy.js.map → AgentsPage-D77JeViQ.js.map} +1 -1
  79. package/dashboard/dist/assets/{AutoGrowTextarea-DgEQeRQw.js → AutoGrowTextarea-7X3T9La8.js} +2 -2
  80. package/dashboard/dist/assets/{AutoGrowTextarea-DgEQeRQw.js.map → AutoGrowTextarea-7X3T9La8.js.map} +1 -1
  81. package/dashboard/dist/assets/AvailableEscalationsPage-CqM_MOMy.js +2 -0
  82. package/dashboard/dist/assets/AvailableEscalationsPage-CqM_MOMy.js.map +1 -0
  83. package/dashboard/dist/assets/{BotPicker-CbL7gQFq.js → BotPicker-CC5vI_Sv.js} +2 -2
  84. package/dashboard/dist/assets/{BotPicker-CbL7gQFq.js.map → BotPicker-CC5vI_Sv.js.map} +1 -1
  85. package/dashboard/dist/assets/BulkAssignModal-BXiJnlqt.js +2 -0
  86. package/dashboard/dist/assets/BulkAssignModal-BXiJnlqt.js.map +1 -0
  87. package/dashboard/dist/assets/{CapabilitiesPage-Q9Pe0y_p.js → CapabilitiesPage-D9TC2iKy.js} +2 -2
  88. package/dashboard/dist/assets/{CapabilitiesPage-Q9Pe0y_p.js.map → CapabilitiesPage-D9TC2iKy.js.map} +1 -1
  89. package/dashboard/dist/assets/{CollapsibleSection-BZOtaWPR.js → CollapsibleSection-D10lGw_u.js} +2 -2
  90. package/dashboard/dist/assets/{CollapsibleSection-BZOtaWPR.js.map → CollapsibleSection-D10lGw_u.js.map} +1 -1
  91. package/dashboard/dist/assets/{ConfirmDeleteModal-6CidwpPx.js → ConfirmDeleteModal-BJdLN6No.js} +2 -2
  92. package/dashboard/dist/assets/{ConfirmDeleteModal-6CidwpPx.js.map → ConfirmDeleteModal-BJdLN6No.js.map} +1 -1
  93. package/dashboard/dist/assets/{CopyableId-4Lqlc5cU.js → CopyableId-Bn02zYxt.js} +2 -2
  94. package/dashboard/dist/assets/{CopyableId-4Lqlc5cU.js.map → CopyableId-Bn02zYxt.js.map} +1 -1
  95. package/dashboard/dist/assets/CountdownTimer-D9B-BjQ7.js +2 -0
  96. package/dashboard/dist/assets/CountdownTimer-D9B-BjQ7.js.map +1 -0
  97. package/dashboard/dist/assets/{CredentialsPage-dxjrUEyO.js → CredentialsPage-hniUAFBK.js} +2 -2
  98. package/dashboard/dist/assets/{CredentialsPage-dxjrUEyO.js.map → CredentialsPage-hniUAFBK.js.map} +1 -1
  99. package/dashboard/dist/assets/{CronLabel-D8oo8eaA.js → CronLabel-v9DCD2FX.js} +2 -2
  100. package/dashboard/dist/assets/{CronLabel-D8oo8eaA.js.map → CronLabel-v9DCD2FX.js.map} +1 -1
  101. package/dashboard/dist/assets/{DataTable-DFPMeqyQ.js → DataTable-7C7riavf.js} +2 -2
  102. package/dashboard/dist/assets/{DataTable-DFPMeqyQ.js.map → DataTable-7C7riavf.js.map} +1 -1
  103. package/dashboard/dist/assets/{DropZone-CWCh5ItZ.js → DropZone-XlcY8hEH.js} +2 -2
  104. package/dashboard/dist/assets/{DropZone-CWCh5ItZ.js.map → DropZone-XlcY8hEH.js.map} +1 -1
  105. package/dashboard/dist/assets/{ElapsedCell-FHHQ69G3.js → ElapsedCell-_xvVTK8N.js} +2 -2
  106. package/dashboard/dist/assets/{ElapsedCell-FHHQ69G3.js.map → ElapsedCell-_xvVTK8N.js.map} +1 -1
  107. package/dashboard/dist/assets/{EmptyState-lpUFYfun.js → EmptyState-DgC_6njU.js} +2 -2
  108. package/dashboard/dist/assets/{EmptyState-lpUFYfun.js.map → EmptyState-DgC_6njU.js.map} +1 -1
  109. package/dashboard/dist/assets/EntityTimelinePanel-1lT3jkCM.js +2 -0
  110. package/dashboard/dist/assets/EntityTimelinePanel-1lT3jkCM.js.map +1 -0
  111. package/dashboard/dist/assets/{EscalationListSchemaPage-D5L5lDNb.js → EscalationListSchemaPage-BeQUTUEO.js} +3 -3
  112. package/dashboard/dist/assets/{EscalationListSchemaPage-D5L5lDNb.js.map → EscalationListSchemaPage-BeQUTUEO.js.map} +1 -1
  113. package/dashboard/dist/assets/EscalationListView-uuZRMSLB.js +2 -0
  114. package/dashboard/dist/assets/EscalationListView-uuZRMSLB.js.map +1 -0
  115. package/dashboard/dist/assets/{EscalationSchemaPage-bYbfEpSB.js → EscalationSchemaPage-D4VlEwyS.js} +3 -3
  116. package/dashboard/dist/assets/{EscalationSchemaPage-bYbfEpSB.js.map → EscalationSchemaPage-D4VlEwyS.js.map} +1 -1
  117. package/dashboard/dist/assets/{EscalationsOverview-DjtIjL1b.js → EscalationsOverview-Bx6Zrzm-.js} +2 -2
  118. package/dashboard/dist/assets/{EscalationsOverview-DjtIjL1b.js.map → EscalationsOverview-Bx6Zrzm-.js.map} +1 -1
  119. package/dashboard/dist/assets/{EventTable-CihVTREC.js → EventTable-KEC3YWBf.js} +2 -2
  120. package/dashboard/dist/assets/{EventTable-CihVTREC.js.map → EventTable-KEC3YWBf.js.map} +1 -1
  121. package/dashboard/dist/assets/{FilterBar-Fin1IqHc.js → FilterBar-xwN_b5fj.js} +2 -2
  122. package/dashboard/dist/assets/{FilterBar-Fin1IqHc.js.map → FilterBar-xwN_b5fj.js.map} +1 -1
  123. package/dashboard/dist/assets/{GraphInvokePage-D77ILPd3.js → GraphInvokePage-DV7Y0fe2.js} +2 -2
  124. package/dashboard/dist/assets/{GraphInvokePage-D77ILPd3.js.map → GraphInvokePage-DV7Y0fe2.js.map} +1 -1
  125. package/dashboard/dist/assets/HomePage-G785SWcW.js +2 -0
  126. package/dashboard/dist/assets/HomePage-G785SWcW.js.map +1 -0
  127. package/dashboard/dist/assets/ListToolbar-zPVYPg3W.js +2 -0
  128. package/dashboard/dist/assets/{ListToolbar-DyHaJBTk.js.map → ListToolbar-zPVYPg3W.js.map} +1 -1
  129. package/dashboard/dist/assets/{McpOverview-qz7Ivf0G.js → McpOverview-CMGUq8hx.js} +2 -2
  130. package/dashboard/dist/assets/{McpOverview-qz7Ivf0G.js.map → McpOverview-CMGUq8hx.js.map} +1 -1
  131. package/dashboard/dist/assets/{McpQueryDetailPage-D6MB4CZM.js → McpQueryDetailPage-CdhLhaKn.js} +3 -3
  132. package/dashboard/dist/assets/{McpQueryDetailPage-D6MB4CZM.js.map → McpQueryDetailPage-CdhLhaKn.js.map} +1 -1
  133. package/dashboard/dist/assets/McpQueryPage-CNSNMagY.js +2 -0
  134. package/dashboard/dist/assets/{McpQueryPage-BqqRF5cQ.js.map → McpQueryPage-CNSNMagY.js.map} +1 -1
  135. package/dashboard/dist/assets/{McpRunDetailPage-DxLEhzhn.js → McpRunDetailPage-DBm8hUaW.js} +2 -2
  136. package/dashboard/dist/assets/{McpRunDetailPage-DxLEhzhn.js.map → McpRunDetailPage-DBm8hUaW.js.map} +1 -1
  137. package/dashboard/dist/assets/{McpRunsPage-BOsS4Hdf.js → McpRunsPage-B6rb5QBf.js} +2 -2
  138. package/dashboard/dist/assets/{McpRunsPage-BOsS4Hdf.js.map → McpRunsPage-B6rb5QBf.js.map} +1 -1
  139. package/dashboard/dist/assets/NamespacePill-Bb3revqD.js +2 -0
  140. package/dashboard/dist/assets/{NamespacePill-CJikgGzE.js.map → NamespacePill-Bb3revqD.js.map} +1 -1
  141. package/dashboard/dist/assets/OperationsPage-Dxk1fAMg.js +3 -0
  142. package/dashboard/dist/assets/OperationsPage-Dxk1fAMg.js.map +1 -0
  143. package/dashboard/dist/assets/OperatorDashboard-DBOscDnf.js +2 -0
  144. package/dashboard/dist/assets/{OperatorDashboard-C5rlijvh.js.map → OperatorDashboard-DBOscDnf.js.map} +1 -1
  145. package/dashboard/dist/assets/{PageHeader-DZmymFBS.js → PageHeader-Di5Sz3an.js} +2 -2
  146. package/dashboard/dist/assets/{PageHeader-DZmymFBS.js.map → PageHeader-Di5Sz3an.js.map} +1 -1
  147. package/dashboard/dist/assets/{PageHeaderWithStats-DuAm6YK2.js → PageHeaderWithStats-DutKJ-h2.js} +2 -2
  148. package/dashboard/dist/assets/{PageHeaderWithStats-DuAm6YK2.js.map → PageHeaderWithStats-DutKJ-h2.js.map} +1 -1
  149. package/dashboard/dist/assets/{PersonaDetailPage-JBdVvT5g.js → PersonaDetailPage-BGRdGpeR.js} +2 -2
  150. package/dashboard/dist/assets/{PersonaDetailPage-JBdVvT5g.js.map → PersonaDetailPage-BGRdGpeR.js.map} +1 -1
  151. package/dashboard/dist/assets/PersonasPage-DRzOZcVa.js +2 -0
  152. package/dashboard/dist/assets/PersonasPage-DRzOZcVa.js.map +1 -0
  153. package/dashboard/dist/assets/{PriorityBadge-BETdj4M-.js → PriorityBadge-r33mpDju.js} +2 -2
  154. package/dashboard/dist/assets/{PriorityBadge-BETdj4M-.js.map → PriorityBadge-r33mpDju.js.map} +1 -1
  155. package/dashboard/dist/assets/{ProcessDetailPage-CHnzOzQn.js → ProcessDetailPage-BLGjZXpM.js} +2 -2
  156. package/dashboard/dist/assets/{ProcessDetailPage-CHnzOzQn.js.map → ProcessDetailPage-BLGjZXpM.js.map} +1 -1
  157. package/dashboard/dist/assets/ProcessesListPage-5NnysKFC.js +2 -0
  158. package/dashboard/dist/assets/{ProcessesListPage-DuXTS5-v.js.map → ProcessesListPage-5NnysKFC.js.map} +1 -1
  159. package/dashboard/dist/assets/ResolverForm-Dy0yirtP.js +2 -0
  160. package/dashboard/dist/assets/ResolverForm-Dy0yirtP.js.map +1 -0
  161. package/dashboard/dist/assets/RoleDetailPage-C_LIoe1j.js +8 -0
  162. package/dashboard/dist/assets/RoleDetailPage-C_LIoe1j.js.map +1 -0
  163. package/dashboard/dist/assets/{RolePill-C9LSs1aK.js → RolePill-DhnVPK4q.js} +2 -2
  164. package/dashboard/dist/assets/{RolePill-C9LSs1aK.js.map → RolePill-DhnVPK4q.js.map} +1 -1
  165. package/dashboard/dist/assets/RolesPage-BmW1LzkU.js +2 -0
  166. package/dashboard/dist/assets/{RolesPage-h77-JOLd.js.map → RolesPage-BmW1LzkU.js.map} +1 -1
  167. package/dashboard/dist/assets/{RowActions-eYrzgQSj.js → RowActions-Bdd7z4eB.js} +2 -2
  168. package/dashboard/dist/assets/{RowActions-eYrzgQSj.js.map → RowActions-Bdd7z4eB.js.map} +1 -1
  169. package/dashboard/dist/assets/RunAsSelector-BwZTJ4Yj.js +2 -0
  170. package/dashboard/dist/assets/{RunAsSelector-DoLFJ0mZ.js.map → RunAsSelector-BwZTJ4Yj.js.map} +1 -1
  171. package/dashboard/dist/assets/ScanCodesPage-FiYIYB-m.js +2 -0
  172. package/dashboard/dist/assets/{ScanCodesPage-b5NZM_-f.js.map → ScanCodesPage-FiYIYB-m.js.map} +1 -1
  173. package/dashboard/dist/assets/{ScanSchemeDetailPage-t7X6ekaW.js → ScanSchemeDetailPage-BiAqtD-a.js} +2 -2
  174. package/dashboard/dist/assets/{ScanSchemeDetailPage-t7X6ekaW.js.map → ScanSchemeDetailPage-BiAqtD-a.js.map} +1 -1
  175. package/dashboard/dist/assets/ScanStationPage-8CdOtbCD.js +2 -0
  176. package/dashboard/dist/assets/{ScanStationPage-r02hkTAG.js.map → ScanStationPage-8CdOtbCD.js.map} +1 -1
  177. package/dashboard/dist/assets/{ScopeBadge-CjyC7iyO.js → ScopeBadge-CXUg0FHo.js} +2 -2
  178. package/dashboard/dist/assets/{ScopeBadge-CjyC7iyO.js.map → ScopeBadge-CXUg0FHo.js.map} +1 -1
  179. package/dashboard/dist/assets/{SegmentedTabs-DXNzY05q.js → SegmentedTabs-BpJh4Hwn.js} +2 -2
  180. package/dashboard/dist/assets/{SegmentedTabs-DXNzY05q.js.map → SegmentedTabs-BpJh4Hwn.js.map} +1 -1
  181. package/dashboard/dist/assets/{StatCard-BXQ8dD9Y.js → StatCard-nWY4sndl.js} +2 -2
  182. package/dashboard/dist/assets/{StatCard-BXQ8dD9Y.js.map → StatCard-nWY4sndl.js.map} +1 -1
  183. package/dashboard/dist/assets/{StatusBadge-BDeUwPtb.js → StatusBadge-DHVwxre2.js} +2 -2
  184. package/dashboard/dist/assets/{StatusBadge-BDeUwPtb.js.map → StatusBadge-DHVwxre2.js.map} +1 -1
  185. package/dashboard/dist/assets/{StickyPagination-BGHQbp0_.js → StickyPagination-DRuqKhZt.js} +2 -2
  186. package/dashboard/dist/assets/{StickyPagination-BGHQbp0_.js.map → StickyPagination-DRuqKhZt.js.map} +1 -1
  187. package/dashboard/dist/assets/{StreamMessageDetail-C-wfdbLJ.js → StreamMessageDetail-JwlbRiMn.js} +2 -2
  188. package/dashboard/dist/assets/{StreamMessageDetail-C-wfdbLJ.js.map → StreamMessageDetail-JwlbRiMn.js.map} +1 -1
  189. package/dashboard/dist/assets/{SwimlaneTimeline-Dnoz-me3.js → SwimlaneTimeline-hu3c4bCJ.js} +2 -2
  190. package/dashboard/dist/assets/{SwimlaneTimeline-Dnoz-me3.js.map → SwimlaneTimeline-hu3c4bCJ.js.map} +1 -1
  191. package/dashboard/dist/assets/{TagInput-D-vLSMQC.js → TagInput-BZ8vb2oW.js} +2 -2
  192. package/dashboard/dist/assets/{TagInput-D-vLSMQC.js.map → TagInput-BZ8vb2oW.js.map} +1 -1
  193. package/dashboard/dist/assets/{TaskDetailPage-c9IiAhVJ.js → TaskDetailPage-NqVZF3jW.js} +2 -2
  194. package/dashboard/dist/assets/{TaskDetailPage-c9IiAhVJ.js.map → TaskDetailPage-NqVZF3jW.js.map} +1 -1
  195. package/dashboard/dist/assets/{TaskQueuePill-sFRMrQ5D.js → TaskQueuePill-Bxir8WRl.js} +2 -2
  196. package/dashboard/dist/assets/{TaskQueuePill-sFRMrQ5D.js.map → TaskQueuePill-Bxir8WRl.js.map} +1 -1
  197. package/dashboard/dist/assets/TasksListPage-BQNaSzCn.js +2 -0
  198. package/dashboard/dist/assets/{TasksListPage-Dor8LSc5.js.map → TasksListPage-BQNaSzCn.js.map} +1 -1
  199. package/dashboard/dist/assets/TimeAgo-Cv35DOiI.js +2 -0
  200. package/dashboard/dist/assets/{TimeAgo-Dd8vmRnM.js.map → TimeAgo-Cv35DOiI.js.map} +1 -1
  201. package/dashboard/dist/assets/{TimestampCell-qJfC6-iT.js → TimestampCell-DHUXey9s.js} +2 -2
  202. package/dashboard/dist/assets/{TimestampCell-qJfC6-iT.js.map → TimestampCell-DHUXey9s.js.map} +1 -1
  203. package/dashboard/dist/assets/{ToolPill-OQ3mC11d.js → ToolPill-FkgTXIhq.js} +2 -2
  204. package/dashboard/dist/assets/{ToolPill-OQ3mC11d.js.map → ToolPill-FkgTXIhq.js.map} +1 -1
  205. package/dashboard/dist/assets/ToolTestPanel-DvuLFWqQ.js +2 -0
  206. package/dashboard/dist/assets/{ToolTestPanel-CEGY5jss.js.map → ToolTestPanel-DvuLFWqQ.js.map} +1 -1
  207. package/dashboard/dist/assets/{TopicDetailPage-SI80ZTVv.js → TopicDetailPage-TXX3QNSo.js} +3 -3
  208. package/dashboard/dist/assets/{TopicDetailPage-SI80ZTVv.js.map → TopicDetailPage-TXX3QNSo.js.map} +1 -1
  209. package/dashboard/dist/assets/{TopicsPage-DiVB8tNr.js → TopicsPage-h-oyTeEJ.js} +2 -2
  210. package/dashboard/dist/assets/{TopicsPage-DiVB8tNr.js.map → TopicsPage-h-oyTeEJ.js.map} +1 -1
  211. package/dashboard/dist/assets/UserName-BceRCeDF.js +2 -0
  212. package/dashboard/dist/assets/UserName-BceRCeDF.js.map +1 -0
  213. package/dashboard/dist/assets/WorkflowExecutionPage-CmHGcaN9.js +2 -0
  214. package/dashboard/dist/assets/{WorkflowExecutionPage-e-Q57yiJ.js.map → WorkflowExecutionPage-CmHGcaN9.js.map} +1 -1
  215. package/dashboard/dist/assets/{WorkflowPill-Dh3hIW1l.js → WorkflowPill--AYMW7u_.js} +2 -2
  216. package/dashboard/dist/assets/WorkflowPill--AYMW7u_.js.map +1 -0
  217. package/dashboard/dist/assets/WorkflowsDashboard-B0r2lQXk.js +2 -0
  218. package/dashboard/dist/assets/{WorkflowsDashboard-DLKzN80h.js.map → WorkflowsDashboard-B0r2lQXk.js.map} +1 -1
  219. package/dashboard/dist/assets/WorkflowsOverview-BTMc2PJ_.js +2 -0
  220. package/dashboard/dist/assets/{WorkflowsOverview-J-ITQiO5.js.map → WorkflowsOverview-BTMc2PJ_.js.map} +1 -1
  221. package/dashboard/dist/assets/{YamlWorkflowDetailPage-B_-ahhf1.js → YamlWorkflowDetailPage-DUiCVnZp.js} +2 -2
  222. package/dashboard/dist/assets/{YamlWorkflowDetailPage-B_-ahhf1.js.map → YamlWorkflowDetailPage-DUiCVnZp.js.map} +1 -1
  223. package/dashboard/dist/assets/YamlWorkflowsPage-BAuXfwi0.js +2 -0
  224. package/dashboard/dist/assets/{YamlWorkflowsPage-DQNeERXU.js.map → YamlWorkflowsPage-BAuXfwi0.js.map} +1 -1
  225. package/dashboard/dist/assets/{agents-BsJ-MizQ.js → agents-BvmLCk4h.js} +2 -2
  226. package/dashboard/dist/assets/{agents-BsJ-MizQ.js.map → agents-BvmLCk4h.js.map} +1 -1
  227. package/dashboard/dist/assets/{bots-q1UYqaIh.js → bots-f_tyhl4I.js} +2 -2
  228. package/dashboard/dist/assets/{bots-q1UYqaIh.js.map → bots-f_tyhl4I.js.map} +1 -1
  229. package/dashboard/dist/assets/capabilities-DNo5bqLx.js +2 -0
  230. package/dashboard/dist/assets/{capabilities-BvjPXUcJ.js.map → capabilities-DNo5bqLx.js.map} +1 -1
  231. package/dashboard/dist/assets/{controlplane-BwlNpoJ_.js → controlplane-Dyyj2Irb.js} +2 -2
  232. package/dashboard/dist/assets/{controlplane-BwlNpoJ_.js.map → controlplane-Dyyj2Irb.js.map} +1 -1
  233. package/dashboard/dist/assets/escalation-columns-DIigeTOK.js +2 -0
  234. package/dashboard/dist/assets/escalation-columns-DIigeTOK.js.map +1 -0
  235. package/dashboard/dist/assets/index-BMlQYOE1.js +67 -0
  236. package/dashboard/dist/assets/index-BMlQYOE1.js.map +1 -0
  237. package/dashboard/dist/assets/index-BNZknxFY.js +2 -0
  238. package/dashboard/dist/assets/{index-cvmt1plS.js.map → index-BNZknxFY.js.map} +1 -1
  239. package/dashboard/dist/assets/index-Bpvfr4OW.css +1 -0
  240. package/dashboard/dist/assets/{index-CldVY0UQ.js → index-C-Xr2V3F.js} +2 -2
  241. package/dashboard/dist/assets/{index-CldVY0UQ.js.map → index-C-Xr2V3F.js.map} +1 -1
  242. package/dashboard/dist/assets/index-CegPUKpc.js +3 -0
  243. package/dashboard/dist/assets/index-CegPUKpc.js.map +1 -0
  244. package/dashboard/dist/assets/{index-O9uuK2yO.js → index-CsKiRyhy.js} +2 -2
  245. package/dashboard/dist/assets/{index-O9uuK2yO.js.map → index-CsKiRyhy.js.map} +1 -1
  246. package/dashboard/dist/assets/index-D7ESqn22.js +2 -0
  247. package/dashboard/dist/assets/{index-BhzsR_gZ.js.map → index-D7ESqn22.js.map} +1 -1
  248. package/dashboard/dist/assets/{index-Hbbox1A4.js → index-DL83W7Gu.js} +2 -2
  249. package/dashboard/dist/assets/{index-Hbbox1A4.js.map → index-DL83W7Gu.js.map} +1 -1
  250. package/dashboard/dist/assets/index-DPLssnMW.js +6 -0
  251. package/dashboard/dist/assets/index-DPLssnMW.js.map +1 -0
  252. package/dashboard/dist/assets/{index-DsKqDMs4.js → index-DWse7ERF.js} +2 -2
  253. package/dashboard/dist/assets/{index-DsKqDMs4.js.map → index-DWse7ERF.js.map} +1 -1
  254. package/dashboard/dist/assets/index-DoETPlJP.js +11 -0
  255. package/dashboard/dist/assets/index-DoETPlJP.js.map +1 -0
  256. package/dashboard/dist/assets/{index-8Gmtvd8e.js → index-DvxxrFBo.js} +2 -2
  257. package/dashboard/dist/assets/{index-8Gmtvd8e.js.map → index-DvxxrFBo.js.map} +1 -1
  258. package/dashboard/dist/assets/{index-DDHoDZRg.js → index-PcyGjmBm.js} +2 -2
  259. package/dashboard/dist/assets/{index-DDHoDZRg.js.map → index-PcyGjmBm.js.map} +1 -1
  260. package/dashboard/dist/assets/{index-BvGIyZUt.js → index-e2X-s0EQ.js} +2 -2
  261. package/dashboard/dist/assets/{index-BvGIyZUt.js.map → index-e2X-s0EQ.js.map} +1 -1
  262. package/dashboard/dist/assets/{knowledge-DM0tNphj.js → knowledge-Coo6CKzo.js} +2 -2
  263. package/dashboard/dist/assets/{knowledge-DM0tNphj.js.map → knowledge-Coo6CKzo.js.map} +1 -1
  264. package/dashboard/dist/assets/{mcp-CQ_TD2P9.js → mcp-Cz5eFnP_.js} +2 -2
  265. package/dashboard/dist/assets/{mcp-CQ_TD2P9.js.map → mcp-Cz5eFnP_.js.map} +1 -1
  266. package/dashboard/dist/assets/{mcp-query-BP7KSGhc.js → mcp-query-BtnuO4LF.js} +2 -2
  267. package/dashboard/dist/assets/{mcp-query-BP7KSGhc.js.map → mcp-query-BtnuO4LF.js.map} +1 -1
  268. package/dashboard/dist/assets/{personas-DclHdHKK.js → personas-C2-LgpHQ.js} +2 -2
  269. package/dashboard/dist/assets/{personas-DclHdHKK.js.map → personas-C2-LgpHQ.js.map} +1 -1
  270. package/dashboard/dist/assets/{pipelines-LwuKJfj-.js → pipelines-TuXQvUA-.js} +2 -2
  271. package/dashboard/dist/assets/{pipelines-LwuKJfj-.js.map → pipelines-TuXQvUA-.js.map} +1 -1
  272. package/dashboard/dist/assets/resolver-payload-C1dXB3n6.js +2 -0
  273. package/dashboard/dist/assets/resolver-payload-C1dXB3n6.js.map +1 -0
  274. package/dashboard/dist/assets/seed-form-json-DvPsISxD.js +2 -0
  275. package/dashboard/dist/assets/seed-form-json-DvPsISxD.js.map +1 -0
  276. package/dashboard/dist/assets/{tasks-CDs-Li2v.js → tasks-OUzpu__z.js} +2 -2
  277. package/dashboard/dist/assets/{tasks-CDs-Li2v.js.map → tasks-OUzpu__z.js.map} +1 -1
  278. package/dashboard/dist/assets/{topics-BeOSelBX.js → topics-B8bdrBaW.js} +2 -2
  279. package/dashboard/dist/assets/{topics-BeOSelBX.js.map → topics-B8bdrBaW.js.map} +1 -1
  280. package/dashboard/dist/assets/useDebouncedValue-Cp5ZOtVE.js +2 -0
  281. package/dashboard/dist/assets/{useDebouncedValue-DhhAKjDC.js.map → useDebouncedValue-Cp5ZOtVE.js.map} +1 -1
  282. package/dashboard/dist/assets/{useFilterParams-crmlBw_l.js → useFilterParams-DBRw1Hcv.js} +2 -2
  283. package/dashboard/dist/assets/{useFilterParams-crmlBw_l.js.map → useFilterParams-DBRw1Hcv.js.map} +1 -1
  284. package/dashboard/dist/assets/{useNamespace-C-E2gNEK.js → useNamespace-DtQe3wZ5.js} +2 -2
  285. package/dashboard/dist/assets/{useNamespace-C-E2gNEK.js.map → useNamespace-DtQe3wZ5.js.map} +1 -1
  286. package/dashboard/dist/assets/{useYamlActivityEvents-CmLzX3YU.js → useYamlActivityEvents-CS22c15X.js} +2 -2
  287. package/dashboard/dist/assets/{useYamlActivityEvents-CmLzX3YU.js.map → useYamlActivityEvents-CS22c15X.js.map} +1 -1
  288. package/dashboard/dist/assets/{vendor-icons-R9b9gQ04.js → vendor-icons-DeBdvyKJ.js} +368 -143
  289. package/dashboard/dist/assets/vendor-icons-DeBdvyKJ.js.map +1 -0
  290. package/dashboard/dist/assets/vendor-query-DvWWuNIB.js +18 -0
  291. package/dashboard/dist/assets/vendor-query-DvWWuNIB.js.map +1 -0
  292. package/dashboard/dist/assets/{vendor-react-CdqEC2zv.js → vendor-react-_9U4mKFr.js} +2 -2
  293. package/dashboard/dist/assets/{vendor-react-CdqEC2zv.js.map → vendor-react-_9U4mKFr.js.map} +1 -1
  294. package/dashboard/dist/assets/{yaml-workflows-BgAsc6-I.js → yaml-workflows-HQIki3hI.js} +2 -2
  295. package/dashboard/dist/assets/{yaml-workflows-BgAsc6-I.js.map → yaml-workflows-HQIki3hI.js.map} +1 -1
  296. package/dashboard/dist/index.html +5 -5
  297. package/docs/api/http/workflows.md +25 -1
  298. package/docs/code-owned-configuration.md +1 -1
  299. package/docs/dashboard.md +179 -80
  300. package/docs/events.md +3 -1
  301. package/docs/faceted-routing.md +5 -1
  302. package/docs/hitl/iframe.md +35 -6
  303. package/docs/hitl/invoke-form.md +98 -0
  304. package/docs/hitl/x-lt-list-schema.md +3 -0
  305. package/docs/hitl/x-lt-show-if.md +11 -0
  306. package/docs/hitl-guide.md +4 -2
  307. package/docs/iam.md +1 -1
  308. package/docs/operations.md +61 -60
  309. package/docs/scan-codes.md +30 -3
  310. package/docs/workflows.md +1 -1
  311. package/package.json +1 -1
  312. package/dashboard/dist/assets/AgentsPage-CLSjlyXy.js +0 -2
  313. package/dashboard/dist/assets/AvailableEscalationsPage-D2ukvuQh.js +0 -2
  314. package/dashboard/dist/assets/AvailableEscalationsPage-D2ukvuQh.js.map +0 -1
  315. package/dashboard/dist/assets/BulkAssignModal-CMSgvHIs.js +0 -2
  316. package/dashboard/dist/assets/BulkAssignModal-CMSgvHIs.js.map +0 -1
  317. package/dashboard/dist/assets/CountdownTimer-B5lM7PfE.js +0 -2
  318. package/dashboard/dist/assets/CountdownTimer-B5lM7PfE.js.map +0 -1
  319. package/dashboard/dist/assets/EntityTimelinePanel-B5NuHnPF.js +0 -2
  320. package/dashboard/dist/assets/EntityTimelinePanel-B5NuHnPF.js.map +0 -1
  321. package/dashboard/dist/assets/HomePage-8XsQFqKL.js +0 -2
  322. package/dashboard/dist/assets/HomePage-8XsQFqKL.js.map +0 -1
  323. package/dashboard/dist/assets/ListToolbar-DyHaJBTk.js +0 -2
  324. package/dashboard/dist/assets/McpQueryPage-BqqRF5cQ.js +0 -2
  325. package/dashboard/dist/assets/NamespacePill-CJikgGzE.js +0 -2
  326. package/dashboard/dist/assets/OperationsPage-Cj1mJLMC.js +0 -3
  327. package/dashboard/dist/assets/OperationsPage-Cj1mJLMC.js.map +0 -1
  328. package/dashboard/dist/assets/OperatorDashboard-C5rlijvh.js +0 -2
  329. package/dashboard/dist/assets/PersonasPage-Xp_Gt6El.js +0 -2
  330. package/dashboard/dist/assets/PersonasPage-Xp_Gt6El.js.map +0 -1
  331. package/dashboard/dist/assets/ProcessesListPage-DuXTS5-v.js +0 -2
  332. package/dashboard/dist/assets/RoleDetailPage-C9GGHNf4.js +0 -8
  333. package/dashboard/dist/assets/RoleDetailPage-C9GGHNf4.js.map +0 -1
  334. package/dashboard/dist/assets/RolesPage-h77-JOLd.js +0 -2
  335. package/dashboard/dist/assets/RunAsSelector-DoLFJ0mZ.js +0 -2
  336. package/dashboard/dist/assets/ScanCodesPage-b5NZM_-f.js +0 -2
  337. package/dashboard/dist/assets/ScanStationPage-r02hkTAG.js +0 -2
  338. package/dashboard/dist/assets/TasksListPage-Dor8LSc5.js +0 -2
  339. package/dashboard/dist/assets/TimeAgo-Dd8vmRnM.js +0 -2
  340. package/dashboard/dist/assets/ToolTestPanel-CEGY5jss.js +0 -2
  341. package/dashboard/dist/assets/UserName-Dmm456xT.js +0 -2
  342. package/dashboard/dist/assets/UserName-Dmm456xT.js.map +0 -1
  343. package/dashboard/dist/assets/WorkflowExecutionPage-e-Q57yiJ.js +0 -2
  344. package/dashboard/dist/assets/WorkflowPill-Dh3hIW1l.js.map +0 -1
  345. package/dashboard/dist/assets/WorkflowsDashboard-DLKzN80h.js +0 -2
  346. package/dashboard/dist/assets/WorkflowsOverview-J-ITQiO5.js +0 -2
  347. package/dashboard/dist/assets/YamlWorkflowsPage-DQNeERXU.js +0 -2
  348. package/dashboard/dist/assets/capabilities-BvjPXUcJ.js +0 -2
  349. package/dashboard/dist/assets/escalation-columns-Bo3PfIZj.js +0 -2
  350. package/dashboard/dist/assets/escalation-columns-Bo3PfIZj.js.map +0 -1
  351. package/dashboard/dist/assets/index-B8JfGtQB.js +0 -3
  352. package/dashboard/dist/assets/index-B8JfGtQB.js.map +0 -1
  353. package/dashboard/dist/assets/index-Bb9ZZUyB.js +0 -5
  354. package/dashboard/dist/assets/index-Bb9ZZUyB.js.map +0 -1
  355. package/dashboard/dist/assets/index-BhzsR_gZ.js +0 -2
  356. package/dashboard/dist/assets/index-D88VWEVp.js +0 -67
  357. package/dashboard/dist/assets/index-D88VWEVp.js.map +0 -1
  358. package/dashboard/dist/assets/index-DBvkaa-B.js +0 -6
  359. package/dashboard/dist/assets/index-DBvkaa-B.js.map +0 -1
  360. package/dashboard/dist/assets/index-cvmt1plS.js +0 -2
  361. package/dashboard/dist/assets/index-qU_dXqP4.css +0 -1
  362. package/dashboard/dist/assets/useDebouncedValue-DhhAKjDC.js +0 -2
  363. package/dashboard/dist/assets/vendor-icons-R9b9gQ04.js.map +0 -1
  364. package/dashboard/dist/assets/vendor-query-RUZdMvN6.js +0 -18
  365. package/dashboard/dist/assets/vendor-query-RUZdMvN6.js.map +0 -1
  366. package/dashboard/dist/assets/workflows-CYv1CTU0.js +0 -2
  367. package/dashboard/dist/assets/workflows-CYv1CTU0.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import{r as Ha,a as p,R as Ba}from"./vendor-query-RUZdMvN6.js";var kt={exports:{}},ie={};/**
1
+ import{r as Ha,a as p,R as Ba}from"./vendor-query-DvWWuNIB.js";var kt={exports:{}},ie={};/**
2
2
  * @license React
3
3
  * react-dom.production.js
4
4
  *
@@ -19,4 +19,4 @@ import{r as Ha,a as p,R as Ba}from"./vendor-query-RUZdMvN6.js";var kt={exports:{
19
19
  `,""):String(r.body);return{path:t,submission:{formMethod:o,formAction:i,formEncType:r.formEncType,formData:void 0,json:void 0,text:h}}}else if(r.formEncType==="application/json"){if(!le(o))return a();try{let h=typeof r.body=="string"?JSON.parse(r.body):r.body;return{path:t,submission:{formMethod:o,formAction:i,formEncType:r.formEncType,formData:void 0,json:h,text:void 0}}}catch{return a()}}}U(typeof FormData=="function","FormData is not available in this environment");let u,s;if(r.formData)u=Bt(r.formData),s=r.formData;else if(r.body instanceof FormData)u=Bt(r.body),s=r.body;else if(r.body instanceof URLSearchParams)u=r.body,s=Fr(u);else if(r.body==null)u=new URLSearchParams,s=new FormData;else try{u=new URLSearchParams(r.body),s=Fr(u)}catch{return a()}let l={formMethod:o,formAction:i,formEncType:r&&r.formEncType||"application/x-www-form-urlencoded",formData:s,json:void 0,text:void 0};if(le(l.formMethod))return{path:t,submission:l};let f=Te(t);return e&&f.search&&Jt(f.search)&&u.append("index",""),f.search=`?${u}`,{path:xe(f),submission:l}}function Cr(e,t,r,a,n,o,i,u,s,l,f,h,v,g,E,S,b,C,P,_,V){var Z;let $=_?fe(_[1])?_[1].error:_[1].data:void 0,H=n.createURL(o.location),Q=n.createURL(s),m;if(f&&o.errors){let Y=Object.keys(o.errors)[0];m=i.findIndex(J=>J.route.id===Y)}else if(_&&fe(_[1])){let Y=_[0];m=i.findIndex(J=>J.route.id===Y)-1}let B=_?_[1].statusCode:void 0,k=B&&B>=400,re={currentUrl:H,currentParams:((Z=o.matches[0])==null?void 0:Z.params)||{},nextUrl:Q,nextParams:i[0].params,...u,actionResult:$,actionStatus:B},I=ct(i),ue=i.map((Y,J)=>{let{route:me}=Y,j=null;if(m!=null&&J>m)j=!1;else if(me.lazy)j=!0;else if(!Kt(me))j=!1;else if(f){let{shouldLoad:ae}=oa(me,o.loaderData,o.errors);j=ae}else Un(o.loaderData,o.matches[J],Y)&&(j=!0);if(j!==null)return Ht(r,a,e,I,Y,l,t,j);let ee=!1;typeof V=="boolean"?ee=V:k?ee=!1:(h||H.pathname+H.search===Q.pathname+Q.search||H.search!==Q.search||Nn(o.matches[J],Y))&&(ee=!0);let ce={...re,defaultShouldRevalidate:ee},be=nt(Y,ce);return Ht(r,a,e,I,Y,l,t,be,ce,V)}),K=[];return E.forEach((Y,J)=>{if(f||!i.some(pe=>pe.route.id===Y.routeId)||g.has(J))return;let me=o.fetchers.get(J),j=me&&me.state!=="idle"&&me.data===void 0,ee=_e(b,Y.path,C);if(!ee){if(P&&j)return;K.push({key:J,routeId:Y.routeId,path:Y.path,matches:null,match:null,request:null,controller:null});return}if(S.has(J))return;let ce=St(ee,Y.path),be=new AbortController,ae=Ke(n,Y.path,be.signal),ye=null;if(v.has(J))v.delete(J),ye=Je(r,a,ae,ee,ce,l,t);else if(j)h&&(ye=Je(r,a,ae,ee,ce,l,t));else{let pe;typeof V=="boolean"?pe=V:k?pe=!1:pe=h;let de={...re,defaultShouldRevalidate:pe};nt(ce,de)&&(ye=Je(r,a,ae,ee,ce,l,t,de))}ye&&K.push({key:J,routeId:Y.routeId,path:Y.path,matches:ye,match:ce,request:ae,controller:be})}),{dsMatches:ue,revalidatingFetchers:K}}function Kt(e){return e.loader!=null||e.middleware!=null&&e.middleware.length>0}function oa(e,t,r){if(e.lazy)return{shouldLoad:!0,renderFallback:!0};if(!Kt(e))return{shouldLoad:!1,renderFallback:!1};let a=t!=null&&e.id in t,n=r!=null&&r[e.id]!==void 0;if(!a&&n)return{shouldLoad:!1,renderFallback:!1};if(typeof e.loader=="function"&&e.loader.hydrate===!0)return{shouldLoad:!0,renderFallback:!a};let o=!a&&!n;return{shouldLoad:o,renderFallback:o}}function Un(e,t,r){let a=!t||r.route.id!==t.route.id,n=!e.hasOwnProperty(r.route.id);return a||n}function Nn(e,t){let r=e.route.path;return e.pathname!==t.pathname||r!=null&&r.endsWith("*")&&e.params["*"]!==t.params["*"]}function nt(e,t){if(e.route.shouldRevalidate){let r=e.route.shouldRevalidate(t);if(typeof r=="boolean")return r}return t.defaultShouldRevalidate}function Dr(e,t,r,a,n,o){let i;if(e){let l=a[e];U(l,`No route found to patch children into: routeId = ${e}`),l.children||(l.children=[]),i=l.children}else i=r;let u=[],s=[];if(t.forEach(l=>{let f=i.find(h=>ia(l,h));f?s.push({existingRoute:f,newRoute:l}):u.push(l)}),u.length>0){let l=it(u,n,[e||"_","patch",String((i==null?void 0:i.length)||"0")],a);i.push(...l)}if(o&&s.length>0)for(let l=0;l<s.length;l++){let{existingRoute:f,newRoute:h}=s[l],v=f,[g]=it([h],n,[],{},!0);Object.assign(v,{element:g.element?g.element:v.element,errorElement:g.errorElement?g.errorElement:v.errorElement,hydrateFallbackElement:g.hydrateFallbackElement?g.hydrateFallbackElement:v.hydrateFallbackElement})}}function ia(e,t){var r;return"id"in e&&"id"in t&&e.id===t.id?!0:e.index===t.index&&e.path===t.path&&e.caseSensitive===t.caseSensitive?(!e.children||e.children.length===0)&&(!t.children||t.children.length===0)?!0:((r=e.children)==null?void 0:r.every((a,n)=>{var o;return(o=t.children)==null?void 0:o.some(i=>ia(a,i))}))??!1:!1}var Mr=new WeakMap,la=({key:e,route:t,manifest:r,mapRouteProperties:a})=>{let n=r[t.id];if(U(n,"No route found in manifest"),!n.lazy||typeof n.lazy!="object")return;let o=n.lazy[e];if(!o)return;let i=Mr.get(n);i||(i={},Mr.set(n,i));let u=i[e];if(u)return u;let s=(async()=>{let l=Qa(e),h=n[e]!==void 0&&e!=="hasErrorBoundary";if(l)X(!l,"Route property "+e+" is not a supported lazy route property. This property will be ignored."),i[e]=Promise.resolve();else if(h)X(!1,`Route "${n.id}" has a static property "${e}" defined. The lazy property will be ignored.`);else{let v=await o();v!=null&&(Object.assign(n,{[e]:v}),Object.assign(n,a(n)))}typeof n.lazy=="object"&&(n.lazy[e]=void 0,Object.values(n.lazy).every(v=>v===void 0)&&(n.lazy=void 0))})();return i[e]=s,s},Tr=new WeakMap;function $n(e,t,r,a,n){let o=r[e.id];if(U(o,"No route found in manifest"),!e.lazy)return{lazyRoutePromise:void 0,lazyHandlerPromise:void 0};if(typeof e.lazy=="function"){let f=Tr.get(o);if(f)return{lazyRoutePromise:f,lazyHandlerPromise:f};let h=(async()=>{U(typeof e.lazy=="function","No lazy route function found");let v=await e.lazy(),g={};for(let E in v){let S=v[E];if(S===void 0)continue;let b=en(E),P=o[E]!==void 0&&E!=="hasErrorBoundary";b?X(!b,"Route property "+E+" is not a supported property to be returned from a lazy route function. This property will be ignored."):P?X(!P,`Route "${o.id}" has a static property "${E}" defined but its lazy function is also returning a value for this property. The lazy route property "${E}" will be ignored.`):g[E]=S}Object.assign(o,g),Object.assign(o,{...a(o),lazy:void 0})})();return Tr.set(o,h),h.catch(()=>{}),{lazyRoutePromise:h,lazyHandlerPromise:h}}let i=Object.keys(e.lazy),u=[],s;for(let f of i){if(n&&n.includes(f))continue;let h=la({key:f,route:e,manifest:r,mapRouteProperties:a});h&&(u.push(h),f===t&&(s=h))}let l=u.length>0?Promise.all(u).then(()=>{}):void 0;return l==null||l.catch(()=>{}),s==null||s.catch(()=>{}),{lazyRoutePromise:l,lazyHandlerPromise:s}}async function Or(e){let t=e.matches.filter(n=>n.shouldLoad),r={};return(await Promise.all(t.map(n=>n.resolve()))).forEach((n,o)=>{r[t[o].route.id]=n}),r}async function An(e){return e.matches.some(t=>t.route.middleware)?sa(e,()=>Or(e)):Or(e)}function sa(e,t){return zn(e,t,a=>{if(Qn(a))throw a;return a},Jn,r);function r(a,n,o){if(o)return Promise.resolve(Object.assign(o.value,{[n]:{type:"error",result:a}}));{let{matches:i}=e,u=Math.min(Math.max(i.findIndex(l=>l.route.id===n),0),Math.max(i.findIndex(l=>l.shouldCallHandler()),0)),s=Fe(i,i[u].route.id).route.id;return Promise.resolve({[s]:{type:"error",result:a}})}}}async function zn(e,t,r,a,n){let{matches:o,request:i,params:u,context:s,unstable_pattern:l}=e,f=o.flatMap(v=>v.route.middleware?v.route.middleware.map(g=>[v.route.id,g]):[]);return await ua({request:i,params:u,context:s,unstable_pattern:l},f,t,r,a,n)}async function ua(e,t,r,a,n,o,i=0){let{request:u}=e;if(u.signal.aborted)throw u.signal.reason??new Error(`Request aborted: ${u.method} ${u.url}`);let s=t[i];if(!s)return await r();let[l,f]=s,h,v=async()=>{if(h)throw new Error("You may only call `next()` once per middleware");try{return h={value:await ua(e,t,r,a,n,o,i+1)},h.value}catch(g){return h={value:await o(g,l,h)},h.value}};try{let g=await f(e,v),E=g!=null?a(g):void 0;return n(E)?E:h?E??h.value:(h={value:await v()},h.value)}catch(g){return await o(g,l,h)}}function ca(e,t,r,a,n){let o=la({key:"middleware",route:a.route,manifest:t,mapRouteProperties:e}),i=$n(a.route,le(r.method)?"action":"loader",t,e,n);return{middleware:o,route:i.lazyRoutePromise,handler:i.lazyHandlerPromise}}function Ht(e,t,r,a,n,o,i,u,s=null,l){let f=!1,h=ca(e,t,r,n,o);return{...n,_lazyPromises:h,shouldLoad:u,shouldRevalidateArgs:s,shouldCallHandler(v){return f=!0,s?typeof l=="boolean"?nt(n,{...s,defaultShouldRevalidate:l}):typeof v=="boolean"?nt(n,{...s,defaultShouldRevalidate:v}):nt(n,s):u},resolve(v){let{lazy:g,loader:E,middleware:S}=n.route,b=f||u||v&&!le(r.method)&&(g||E),C=S&&S.length>0&&!E&&!g;return b&&(le(r.method)||!C)?jn({request:r,unstable_pattern:a,match:n,lazyHandlerPromise:h==null?void 0:h.handler,lazyRoutePromise:h==null?void 0:h.route,handlerOverride:v,scopedContext:i}):Promise.resolve({type:"data",result:void 0})}}}function Je(e,t,r,a,n,o,i,u=null){return a.map(s=>s.route.id!==n.route.id?{...s,shouldLoad:!1,shouldRevalidateArgs:u,shouldCallHandler:()=>!1,_lazyPromises:ca(e,t,r,s,o),resolve:()=>Promise.resolve({type:"data",result:void 0})}:Ht(e,t,r,ct(a),s,o,i,!0,u))}async function In(e,t,r,a,n,o){r.some(l=>{var f;return(f=l._lazyPromises)==null?void 0:f.middleware})&&await Promise.all(r.map(l=>{var f;return(f=l._lazyPromises)==null?void 0:f.middleware}));let i={request:t,unstable_pattern:ct(r),params:r[0].params,context:n,matches:r},s=await e({...i,fetcherKey:a,runClientMiddleware:l=>{let f=i;return sa(f,()=>l({...f,fetcherKey:a,runClientMiddleware:()=>{throw new Error("Cannot call `runClientMiddleware()` from within an `runClientMiddleware` handler")}}))}});try{await Promise.all(r.flatMap(l=>{var f,h;return[(f=l._lazyPromises)==null?void 0:f.handler,(h=l._lazyPromises)==null?void 0:h.route]}))}catch{}return s}async function jn({request:e,unstable_pattern:t,match:r,lazyHandlerPromise:a,lazyRoutePromise:n,handlerOverride:o,scopedContext:i}){let u,s,l=le(e.method),f=l?"action":"loader",h=v=>{let g,E=new Promise((C,P)=>g=P);s=()=>g(),e.signal.addEventListener("abort",s);let S=C=>typeof v!="function"?Promise.reject(new Error(`You cannot call the handler for a route which defines a boolean "${f}" [routeId: ${r.route.id}]`)):v({request:e,unstable_pattern:t,params:r.params,context:i},...C!==void 0?[C]:[]),b=(async()=>{try{return{type:"data",result:await(o?o(P=>S(P)):S())}}catch(C){return{type:"error",result:C}}})();return Promise.race([b,E])};try{let v=l?r.route.action:r.route.loader;if(a||n)if(v){let g,[E]=await Promise.all([h(v).catch(S=>{g=S}),a,n]);if(g!==void 0)throw g;u=E}else{await a;let g=l?r.route.action:r.route.loader;if(g)[u]=await Promise.all([h(g),n]);else if(f==="action"){let E=new URL(e.url),S=E.pathname+E.search;throw ge(405,{method:e.method,pathname:S,routeId:r.route.id})}else return{type:"data",result:void 0}}else if(v)u=await h(v);else{let g=new URL(e.url),E=g.pathname+g.search;throw ge(404,{pathname:E})}}catch(v){return{type:"error",result:v}}finally{s&&e.signal.removeEventListener("abort",s)}return u}async function Hn(e){let t=e.headers.get("Content-Type");return t&&/\bapplication\/json\b/.test(t)?e.body==null?null:e.json():e.text()}async function Bn(e){var a,n,o,i,u;let{result:t,type:r}=e;if(Yt(t)){let s;try{s=await Hn(t)}catch(l){return{type:"error",error:l}}return r==="error"?{type:"error",error:new ut(t.status,t.statusText,s),statusCode:t.status,headers:t.headers}:{type:"data",data:s,statusCode:t.status,headers:t.headers}}return r==="error"?$r(t)?t.data instanceof Error?{type:"error",error:t.data,statusCode:(a=t.init)==null?void 0:a.status,headers:(n=t.init)!=null&&n.headers?new Headers(t.init.headers):void 0}:{type:"error",error:Yn(t),statusCode:lt(t)?t.status:void 0,headers:(o=t.init)!=null&&o.headers?new Headers(t.init.headers):void 0}:{type:"error",error:t,statusCode:lt(t)?t.status:void 0}:$r(t)?{type:"data",data:t.data,statusCode:(i=t.init)==null?void 0:i.status,headers:(u=t.init)!=null&&u.headers?new Headers(t.init.headers):void 0}:{type:"data",data:t}}function Wn(e,t,r,a,n){let o=e.headers.get("Location");if(U(o,"Redirects returned/thrown from loaders/actions must have a Location header"),!Vt(o)){let i=a.slice(0,a.findIndex(u=>u.route.id===r)+1);o=jt(new URL(t.url),i,n,o),e.headers.set("Location",o)}return e}function _r(e,t,r,a){let n=["about:","blob:","chrome:","chrome-untrusted:","content:","data:","devtools:","file:","filesystem:","javascript:"];if(Vt(e)){let o=e,i=o.startsWith("//")?new URL(t.protocol+o):new URL(o);if(n.includes(i.protocol))throw new Error("Invalid redirect location");let u=we(i.pathname,r)!=null;if(i.origin===t.origin&&u)return i.pathname+i.search+i.hash}try{let o=a.createURL(e);if(n.includes(o.protocol))throw new Error("Invalid redirect location")}catch{}return e}function Ke(e,t,r,a){let n=e.createURL(da(t)).toString(),o={signal:r};if(a&&le(a.formMethod)){let{formMethod:i,formEncType:u}=a;o.method=i.toUpperCase(),u==="application/json"?(o.headers=new Headers({"Content-Type":u}),o.body=JSON.stringify(a.json)):u==="text/plain"?o.body=a.text:u==="application/x-www-form-urlencoded"&&a.formData?o.body=Bt(a.formData):o.body=a.formData}return new Request(n,o)}function Bt(e){let t=new URLSearchParams;for(let[r,a]of e.entries())t.append(r,typeof a=="string"?a:a.name);return t}function Fr(e){let t=new FormData;for(let[r,a]of e.entries())t.append(r,a);return t}function Vn(e,t,r,a=!1,n=!1){let o={},i=null,u,s=!1,l={},f=r&&fe(r[1])?r[1].error:void 0;return e.forEach(h=>{if(!(h.route.id in t))return;let v=h.route.id,g=t[v];if(U(!He(g),"Cannot handle redirect results in processLoaderData"),fe(g)){let E=g.error;if(f!==void 0&&(E=f,f=void 0),i=i||{},n)i[v]=E;else{let S=Fe(e,v);i[S.route.id]==null&&(i[S.route.id]=E)}a||(o[v]=na),s||(s=!0,u=lt(g.error)?g.error.status:500),g.headers&&(l[v]=g.headers)}else o[v]=g.data,g.statusCode&&g.statusCode!==200&&!s&&(u=g.statusCode),g.headers&&(l[v]=g.headers)}),f!==void 0&&r&&(i={[r[0]]:f},r[2]&&(o[r[2]]=void 0)),{loaderData:o,errors:i,statusCode:u||200,loaderHeaders:l}}function kr(e,t,r,a,n,o){let{loaderData:i,errors:u}=Vn(t,r,a);return n.filter(s=>!s.matches||s.matches.some(l=>l.shouldLoad)).forEach(s=>{let{key:l,match:f,controller:h}=s;if(h&&h.signal.aborted)return;let v=o[l];if(U(v,"Did not find corresponding fetcher result"),fe(v)){let g=Fe(e.matches,f==null?void 0:f.route.id);u&&u[g.route.id]||(u={...u,[g.route.id]:v.error}),e.fetchers.delete(l)}else if(He(v))U(!1,"Unhandled fetcher revalidation redirect");else{let g=Me(v.data);e.fetchers.set(l,g)}}),{loaderData:i,errors:u}}function Ur(e,t,r,a){let n=Object.entries(t).filter(([,o])=>o!==na).reduce((o,[i,u])=>(o[i]=u,o),{});for(let o of r){let i=o.route.id;if(!t.hasOwnProperty(i)&&e.hasOwnProperty(i)&&o.route.loader&&(n[i]=e[i]),a&&a.hasOwnProperty(i))break}return n}function Nr(e){return e?fe(e[1])?{actionData:{}}:{actionData:{[e[0]]:e[1].data}}:{}}function Fe(e,t){return(t?e.slice(0,e.findIndex(a=>a.route.id===t)+1):[...e]).reverse().find(a=>a.route.hasErrorBoundary===!0)||e[0]}function Rt(e){let t=e.length===1?e[0]:e.find(r=>r.index||!r.path||r.path==="/")||{id:"__shim-error-route__"};return{matches:[{params:{},pathname:"",pathnameBase:"",route:t}],route:t}}function ge(e,{pathname:t,routeId:r,method:a,type:n,message:o}={}){let i="Unknown Server Error",u="Unknown @remix-run/router error";return e===400?(i="Bad Request",a&&t&&r?u=`You made a ${a} request to "${t}" but did not provide a \`loader\` for route "${r}", so there is no way to handle the request.`:n==="invalid-body"&&(u="Unable to encode submission body")):e===403?(i="Forbidden",u=`Route "${r}" does not match URL "${t}"`):e===404?(i="Not Found",u=`No route matches URL "${t}"`):e===405&&(i="Method Not Allowed",a&&t&&r?u=`You made a ${a.toUpperCase()} request to "${t}" but did not provide an \`action\` for route "${r}", so there is no way to handle the request.`:a&&(u=`Invalid request method "${a.toUpperCase()}"`)),new ut(e||500,i,new Error(u),!0)}function bt(e){let t=Object.entries(e);for(let r=t.length-1;r>=0;r--){let[a,n]=t[r];if(He(n))return{key:a,result:n}}}function da(e){let t=typeof e=="string"?Te(e):e;return xe({...t,hash:""})}function Kn(e,t){return e.pathname!==t.pathname||e.search!==t.search?!1:e.hash===""?t.hash!=="":e.hash===t.hash?!0:t.hash!==""}function Yn(e){var t,r;return new ut(((t=e.init)==null?void 0:t.status)??500,((r=e.init)==null?void 0:r.statusText)??"Internal Server Error",e.data)}function Jn(e){return e!=null&&typeof e=="object"&&Object.entries(e).every(([t,r])=>typeof t=="string"&&Gn(r))}function Gn(e){return e!=null&&typeof e=="object"&&"type"in e&&"result"in e&&(e.type==="data"||e.type==="error")}function qn(e){return Yt(e.result)&&ra.has(e.result.status)}function fe(e){return e.type==="error"}function He(e){return(e&&e.type)==="redirect"}function $r(e){return typeof e=="object"&&e!=null&&"type"in e&&"data"in e&&"init"in e&&e.type==="DataWithResponseInit"}function Yt(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.headers=="object"&&typeof e.body<"u"}function Xn(e){return ra.has(e)}function Qn(e){return Yt(e)&&Xn(e.status)&&e.headers.has("Location")}function Zn(e){return Mn.has(e.toUpperCase())}function le(e){return Cn.has(e.toUpperCase())}function Jt(e){return new URLSearchParams(e).getAll("index").some(t=>t==="")}function St(e,t){let r=typeof t=="string"?Te(t).search:t.search;if(e[e.length-1].route.index&&Jt(r||""))return e[e.length-1];let a=Xr(e);return a[a.length-1]}function Ar(e){let{formMethod:t,formAction:r,formEncType:a,text:n,formData:o,json:i}=e;if(!(!t||!r||!a)){if(n!=null)return{formMethod:t,formAction:r,formEncType:a,formData:void 0,json:void 0,text:n};if(o!=null)return{formMethod:t,formAction:r,formEncType:a,formData:o,json:void 0,text:void 0};if(i!==void 0)return{formMethod:t,formAction:r,formEncType:a,formData:void 0,json:i,text:void 0}}}function At(e,t){return t?{state:"loading",location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}:{state:"loading",location:e,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0}}function eo(e,t){return{state:"submitting",location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}}function et(e,t){return e?{state:"loading",formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t}:{state:"loading",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:t}}function to(e,t){return{state:"submitting",formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t?t.data:void 0}}function Me(e){return{state:"idle",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:e}}function ro(e,t){try{let r=e.sessionStorage.getItem(aa);if(r){let a=JSON.parse(r);for(let[n,o]of Object.entries(a||{}))o&&Array.isArray(o)&&t.set(n,new Set(o||[]))}}catch{}}function ao(e,t){if(t.size>0){let r={};for(let[a,n]of t)r[a]=[...n];try{e.sessionStorage.setItem(aa,JSON.stringify(r))}catch(a){X(!1,`Failed to save applied view transitions in sessionStorage (${a}).`)}}}function zr(){let e,t,r=new Promise((a,n)=>{e=async o=>{a(o);try{await r}catch{}},t=async o=>{n(o);try{await r}catch{}}});return{promise:r,resolve:e,reject:t}}var Be=p.createContext(null);Be.displayName="DataRouter";var dt=p.createContext(null);dt.displayName="DataRouterState";var fa=p.createContext(!1);function no(){return p.useContext(fa)}var Gt=p.createContext({isTransitioning:!1});Gt.displayName="ViewTransition";var ha=p.createContext(new Map);ha.displayName="Fetchers";var oo=p.createContext(null);oo.displayName="Await";var he=p.createContext(null);he.displayName="Navigation";var Dt=p.createContext(null);Dt.displayName="Location";var Re=p.createContext({outlet:null,matches:[],isDataRoute:!1});Re.displayName="Route";var qt=p.createContext(null);qt.displayName="RouteError";var ma="REACT_ROUTER_ERROR",io="REDIRECT",lo="ROUTE_ERROR_RESPONSE";function so(e){if(e.startsWith(`${ma}:${io}:{`))try{let t=JSON.parse(e.slice(28));if(typeof t=="object"&&t&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.location=="string"&&typeof t.reloadDocument=="boolean"&&typeof t.replace=="boolean")return t}catch{}}function uo(e){if(e.startsWith(`${ma}:${lo}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t=="object"&&t&&typeof t.status=="number"&&typeof t.statusText=="string")return new ut(t.status,t.statusText,t.data)}catch{}}function co(e,{relative:t}={}){U(Ge(),"useHref() may be used only in the context of a <Router> component.");let{basename:r,navigator:a}=p.useContext(he),{hash:n,pathname:o,search:i}=ft(e,{relative:t}),u=o;return r!=="/"&&(u=o==="/"?r:Ee([r,o])),a.createHref({pathname:u,search:i,hash:n})}function Ge(){return p.useContext(Dt)!=null}function Le(){return U(Ge(),"useLocation() may be used only in the context of a <Router> component."),p.useContext(Dt).location}var ya="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function pa(e){p.useContext(he).static||p.useLayoutEffect(e)}function Xt(){let{isDataRoute:e}=p.useContext(Re);return e?Po():fo()}function fo(){U(Ge(),"useNavigate() may be used only in the context of a <Router> component.");let e=p.useContext(Be),{basename:t,navigator:r}=p.useContext(he),{matches:a}=p.useContext(Re),{pathname:n}=Le(),o=JSON.stringify(Ct(a)),i=p.useRef(!1);return pa(()=>{i.current=!0}),p.useCallback((s,l={})=>{if(X(i.current,ya),!i.current)return;if(typeof s=="number"){r.go(s);return}let f=st(s,JSON.parse(o),n,l.relative==="path");e==null&&t!=="/"&&(f.pathname=f.pathname==="/"?t:Ee([t,f.pathname])),(l.replace?r.replace:r.push)(f,l.state,l)},[t,r,o,n,e])}var ho=p.createContext(null);function mo(e){let t=p.useContext(Re).outlet;return p.useMemo(()=>t&&p.createElement(ho.Provider,{value:e},t),[t,e])}function Ri(){let{matches:e}=p.useContext(Re),t=e[e.length-1];return t?t.params:{}}function ft(e,{relative:t}={}){let{matches:r}=p.useContext(Re),{pathname:a}=Le(),n=JSON.stringify(Ct(r));return p.useMemo(()=>st(e,JSON.parse(n),a,t==="path"),[e,n,a,t])}function yo(e,t,r){U(Ge(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:a}=p.useContext(he),{matches:n}=p.useContext(Re),o=n[n.length-1],i=o?o.params:{},u=o?o.pathname:"/",s=o?o.pathnameBase:"/",l=o&&o.route;{let b=l&&l.path||"";ga(u,!l||b.endsWith("*")||b.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${u}" (under <Route path="${b}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
20
20
 
21
21
  Please change the parent <Route path="${b}"> to <Route path="${b==="/"?"*":`${b}/*`}">.`)}let f=Le(),h;h=f;let v=h.pathname||"/",g=v;if(s!=="/"){let b=s.replace(/^\//,"").split("/");g="/"+v.replace(/^\//,"").split("/").slice(b.length).join("/")}let E=_e(e,{pathname:g});return X(l||E!=null,`No routes matched location "${h.pathname}${h.search}${h.hash}" `),X(E==null||E[E.length-1].route.element!==void 0||E[E.length-1].route.Component!==void 0||E[E.length-1].route.lazy!==void 0,`Matched leaf route at location "${h.pathname}${h.search}${h.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`),Ro(E&&E.map(b=>Object.assign({},b,{params:Object.assign({},i,b.params),pathname:Ee([s,a.encodeLocation?a.encodeLocation(b.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:b.pathname]),pathnameBase:b.pathnameBase==="/"?s:Ee([s,a.encodeLocation?a.encodeLocation(b.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:b.pathnameBase])})),n,r)}function po(){let e=Lo(),t=lt(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null,a="rgba(200,200,200, 0.5)",n={padding:"0.5rem",backgroundColor:a},o={padding:"2px 4px",backgroundColor:a},i=null;return console.error("Error handled by React Router default ErrorBoundary:",e),i=p.createElement(p.Fragment,null,p.createElement("p",null,"💿 Hey developer 👋"),p.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",p.createElement("code",{style:o},"ErrorBoundary")," or"," ",p.createElement("code",{style:o},"errorElement")," prop on your route.")),p.createElement(p.Fragment,null,p.createElement("h2",null,"Unexpected Application Error!"),p.createElement("h3",{style:{fontStyle:"italic"}},t),r?p.createElement("pre",{style:n},r):null,i)}var vo=p.createElement(po,null),va=class extends p.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!=="idle"&&e.revalidation==="idle"?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error!==void 0?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error("React Router caught the following error during render",e)}render(){let e=this.state.error;if(this.context&&typeof e=="object"&&e&&"digest"in e&&typeof e.digest=="string"){const r=uo(e.digest);r&&(e=r)}let t=e!==void 0?p.createElement(Re.Provider,{value:this.props.routeContext},p.createElement(qt.Provider,{value:e,children:this.props.component})):this.props.children;return this.context?p.createElement(go,{error:e},t):t}};va.contextType=fa;var zt=new WeakMap;function go({children:e,error:t}){let{basename:r}=p.useContext(he);if(typeof t=="object"&&t&&"digest"in t&&typeof t.digest=="string"){let a=so(t.digest);if(a){let n=zt.get(t);if(n)throw n;let o=Zr(a.location,r);if(Qr&&!zt.get(t))if(o.isExternal||a.reloadDocument)window.location.href=o.absoluteURL||o.to;else{const i=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(o.to,{replace:a.replace}));throw zt.set(t,i),i}return p.createElement("meta",{httpEquiv:"refresh",content:`0;url=${o.absoluteURL||o.to}`})}}return e}function wo({routeContext:e,match:t,children:r}){let a=p.useContext(Be);return a&&a.static&&a.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=t.route.id),p.createElement(Re.Provider,{value:e},r)}function Ro(e,t=[],r){let a=r==null?void 0:r.state;if(e==null){if(!a)return null;if(a.errors)e=a.matches;else if(t.length===0&&!a.initialized&&a.matches.length>0)e=a.matches;else return null}let n=e,o=a==null?void 0:a.errors;if(o!=null){let f=n.findIndex(h=>h.route.id&&(o==null?void 0:o[h.route.id])!==void 0);U(f>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(o).join(",")}`),n=n.slice(0,Math.min(n.length,f+1))}let i=!1,u=-1;if(r&&a){i=a.renderFallback;for(let f=0;f<n.length;f++){let h=n[f];if((h.route.HydrateFallback||h.route.hydrateFallbackElement)&&(u=f),h.route.id){let{loaderData:v,errors:g}=a,E=h.route.loader&&!v.hasOwnProperty(h.route.id)&&(!g||g[h.route.id]===void 0);if(h.route.lazy||E){r.isStatic&&(i=!0),u>=0?n=n.slice(0,u+1):n=[n[0]];break}}}}let s=r==null?void 0:r.onError,l=a&&s?(f,h)=>{var v,g;s(f,{location:a.location,params:((g=(v=a.matches)==null?void 0:v[0])==null?void 0:g.params)??{},unstable_pattern:ct(a.matches),errorInfo:h})}:void 0;return n.reduceRight((f,h,v)=>{let g,E=!1,S=null,b=null;a&&(g=o&&h.route.id?o[h.route.id]:void 0,S=h.route.errorElement||vo,i&&(u<0&&v===0?(ga("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),E=!0,b=null):u===v&&(E=!0,b=h.route.hydrateFallbackElement||null)));let C=t.concat(n.slice(0,v+1)),P=()=>{let _;return g?_=S:E?_=b:h.route.Component?_=p.createElement(h.route.Component,null):h.route.element?_=h.route.element:_=f,p.createElement(wo,{match:h,routeContext:{outlet:f,matches:C,isDataRoute:a!=null},children:_})};return a&&(h.route.ErrorBoundary||h.route.errorElement||v===0)?p.createElement(va,{location:a.location,revalidation:a.revalidation,component:S,error:g,children:P(),routeContext:{outlet:null,matches:C,isDataRoute:!0},onError:l}):P()},null)}function Qt(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function bo(e){let t=p.useContext(Be);return U(t,Qt(e)),t}function Eo(e){let t=p.useContext(dt);return U(t,Qt(e)),t}function So(e){let t=p.useContext(Re);return U(t,Qt(e)),t}function Zt(e){let t=So(e),r=t.matches[t.matches.length-1];return U(r.route.id,`${e} can only be used on routes that contain a unique "id"`),r.route.id}function xo(){return Zt("useRouteId")}function Lo(){var a;let e=p.useContext(qt),t=Eo("useRouteError"),r=Zt("useRouteError");return e!==void 0?e:(a=t.errors)==null?void 0:a[r]}function Po(){let{router:e}=bo("useNavigate"),t=Zt("useNavigate"),r=p.useRef(!1);return pa(()=>{r.current=!0}),p.useCallback(async(n,o={})=>{X(r.current,ya),r.current&&(typeof n=="number"?await e.navigate(n):await e.navigate(n,{fromRouteId:t,...o}))},[e,t])}var Ir={};function ga(e,t,r){!t&&!Ir[e]&&(Ir[e]=!0,X(!1,r))}var jr={};function Hr(e,t){!e&&!jr[t]&&(jr[t]=!0,console.warn(t))}var Co="useOptimistic",Br=Ba[Co],Do=()=>{};function Mo(e){return Br?Br(e):[e,Do]}function To(e){let t={hasErrorBoundary:e.hasErrorBoundary||e.ErrorBoundary!=null||e.errorElement!=null};return e.Component&&(e.element&&X(!1,"You should not include both `Component` and `element` on your route - `Component` will be used."),Object.assign(t,{element:p.createElement(e.Component),Component:void 0})),e.HydrateFallback&&(e.hydrateFallbackElement&&X(!1,"You should not include both `HydrateFallback` and `hydrateFallbackElement` on your route - `HydrateFallback` will be used."),Object.assign(t,{hydrateFallbackElement:p.createElement(e.HydrateFallback),HydrateFallback:void 0})),e.ErrorBoundary&&(e.errorElement&&X(!1,"You should not include both `ErrorBoundary` and `errorElement` on your route - `ErrorBoundary` will be used."),Object.assign(t,{errorElement:p.createElement(e.ErrorBoundary),ErrorBoundary:void 0})),t}var Oo=["HydrateFallback","hydrateFallbackElement"],_o=class{constructor(){this.status="pending",this.promise=new Promise((e,t)=>{this.resolve=r=>{this.status==="pending"&&(this.status="resolved",e(r))},this.reject=r=>{this.status==="pending"&&(this.status="rejected",t(r))}})}};function Fo({router:e,flushSync:t,onError:r,unstable_useTransitions:a}){a=no()||a;let[o,i]=p.useState(e.state),[u,s]=Mo(o),[l,f]=p.useState(),[h,v]=p.useState({isTransitioning:!1}),[g,E]=p.useState(),[S,b]=p.useState(),[C,P]=p.useState(),_=p.useRef(new Map),V=p.useCallback((m,{deletedFetchers:B,newErrors:k,flushSync:re,viewTransitionOpts:I})=>{k&&r&&Object.values(k).forEach(K=>{var Z;return r(K,{location:m.location,params:((Z=m.matches[0])==null?void 0:Z.params)??{},unstable_pattern:ct(m.matches)})}),m.fetchers.forEach((K,Z)=>{K.data!==void 0&&_.current.set(Z,K.data)}),B.forEach(K=>_.current.delete(K)),Hr(re===!1||t!=null,'You provided the `flushSync` option to a router update, but you are not using the `<RouterProvider>` from `react-router/dom` so `ReactDOM.flushSync()` is unavailable. Please update your app to `import { RouterProvider } from "react-router/dom"` and ensure you have `react-dom` installed as a dependency to use the `flushSync` option.');let ue=e.window!=null&&e.window.document!=null&&typeof e.window.document.startViewTransition=="function";if(Hr(I==null||ue,"You provided the `viewTransition` option to a router update, but you do not appear to be running in a DOM environment as `window.startViewTransition` is not available."),!I||!ue){t&&re?t(()=>i(m)):a===!1?i(m):p.startTransition(()=>{a===!0&&s(K=>Wr(K,m)),i(m)});return}if(t&&re){t(()=>{S&&(g==null||g.resolve(),S.skipTransition()),v({isTransitioning:!0,flushSync:!0,currentLocation:I.currentLocation,nextLocation:I.nextLocation})});let K=e.window.document.startViewTransition(()=>{t(()=>i(m))});K.finished.finally(()=>{t(()=>{E(void 0),b(void 0),f(void 0),v({isTransitioning:!1})})}),t(()=>b(K));return}S?(g==null||g.resolve(),S.skipTransition(),P({state:m,currentLocation:I.currentLocation,nextLocation:I.nextLocation})):(f(m),v({isTransitioning:!0,flushSync:!1,currentLocation:I.currentLocation,nextLocation:I.nextLocation}))},[e.window,t,S,g,a,s,r]);p.useLayoutEffect(()=>e.subscribe(V),[e,V]),p.useEffect(()=>{h.isTransitioning&&!h.flushSync&&E(new _o)},[h]),p.useEffect(()=>{if(g&&l&&e.window){let m=l,B=g.promise,k=e.window.document.startViewTransition(async()=>{a===!1?i(m):p.startTransition(()=>{a===!0&&s(re=>Wr(re,m)),i(m)}),await B});k.finished.finally(()=>{E(void 0),b(void 0),f(void 0),v({isTransitioning:!1})}),b(k)}},[l,g,e.window,a,s]),p.useEffect(()=>{g&&l&&u.location.key===l.location.key&&g.resolve()},[g,S,u.location,l]),p.useEffect(()=>{!h.isTransitioning&&C&&(f(C.state),v({isTransitioning:!0,flushSync:!1,currentLocation:C.currentLocation,nextLocation:C.nextLocation}),P(void 0))},[h.isTransitioning,C]);let $=p.useMemo(()=>({createHref:e.createHref,encodeLocation:e.encodeLocation,go:m=>e.navigate(m),push:(m,B,k)=>e.navigate(m,{state:B,preventScrollReset:k==null?void 0:k.preventScrollReset}),replace:(m,B,k)=>e.navigate(m,{replace:!0,state:B,preventScrollReset:k==null?void 0:k.preventScrollReset})}),[e]),H=e.basename||"/",Q=p.useMemo(()=>({router:e,navigator:$,static:!1,basename:H,onError:r}),[e,$,H,r]);return p.createElement(p.Fragment,null,p.createElement(Be.Provider,{value:Q},p.createElement(dt.Provider,{value:u},p.createElement(ha.Provider,{value:_.current},p.createElement(Gt.Provider,{value:h},p.createElement(No,{basename:H,location:u.location,navigationType:u.historyAction,navigator:$,unstable_useTransitions:a},p.createElement(ko,{routes:e.routes,future:e.future,state:u,isStatic:!1,onError:r})))))),null)}function Wr(e,t){return{...e,navigation:t.navigation.state!=="idle"?t.navigation:e.navigation,revalidation:t.revalidation!=="idle"?t.revalidation:e.revalidation,actionData:t.navigation.state!=="submitting"?t.actionData:e.actionData,fetchers:t.fetchers}}var ko=p.memo(Uo);function Uo({routes:e,future:t,state:r,isStatic:a,onError:n}){return yo(e,void 0,{state:r,isStatic:a,onError:n})}function bi({to:e,replace:t,state:r,relative:a}){U(Ge(),"<Navigate> may be used only in the context of a <Router> component.");let{static:n}=p.useContext(he);X(!n,"<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.");let{matches:o}=p.useContext(Re),{pathname:i}=Le(),u=Xt(),s=st(e,Ct(o),i,a==="path"),l=JSON.stringify(s);return p.useEffect(()=>{u(JSON.parse(l),{replace:t,state:r,relative:a})},[u,l,a,t,r]),null}function Ei(e){return mo(e.context)}function No({basename:e="/",children:t=null,location:r,navigationType:a="POP",navigator:n,static:o=!1,unstable_useTransitions:i}){U(!Ge(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let u=e.replace(/^\/*/,"/"),s=p.useMemo(()=>({basename:u,navigator:n,static:o,unstable_useTransitions:i,future:{}}),[u,n,o,i]);typeof r=="string"&&(r=Te(r));let{pathname:l="/",search:f="",hash:h="",state:v=null,key:g="default",unstable_mask:E}=r,S=p.useMemo(()=>{let b=we(l,u);return b==null?null:{location:{pathname:b,search:f,hash:h,state:v,key:g,unstable_mask:E},navigationType:a}},[u,l,f,h,v,g,a,E]);return X(S!=null,`<Router basename="${u}"> is not able to match the URL "${l}${f}${h}" because it does not start with the basename, so the <Router> won't render anything.`),S==null?null:p.createElement(he.Provider,{value:s},p.createElement(Dt.Provider,{children:t,value:S}))}var xt="get",Lt="application/x-www-form-urlencoded";function Mt(e){return typeof HTMLElement<"u"&&e instanceof HTMLElement}function $o(e){return Mt(e)&&e.tagName.toLowerCase()==="button"}function Ao(e){return Mt(e)&&e.tagName.toLowerCase()==="form"}function zo(e){return Mt(e)&&e.tagName.toLowerCase()==="input"}function Io(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function jo(e,t){return e.button===0&&(!t||t==="_self")&&!Io(e)}function Wt(e=""){return new URLSearchParams(typeof e=="string"||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,r)=>{let a=e[r];return t.concat(Array.isArray(a)?a.map(n=>[r,n]):[[r,a]])},[]))}function Ho(e,t){let r=Wt(e);return t&&t.forEach((a,n)=>{r.has(n)||t.getAll(n).forEach(o=>{r.append(n,o)})}),r}var Et=null;function Bo(){if(Et===null)try{new FormData(document.createElement("form"),0),Et=!1}catch{Et=!0}return Et}var Wo=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function It(e){return e!=null&&!Wo.has(e)?(X(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${Lt}"`),null):e}function Vo(e,t){let r,a,n,o,i;if(Ao(e)){let u=e.getAttribute("action");a=u?we(u,t):null,r=e.getAttribute("method")||xt,n=It(e.getAttribute("enctype"))||Lt,o=new FormData(e)}else if($o(e)||zo(e)&&(e.type==="submit"||e.type==="image")){let u=e.form;if(u==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let s=e.getAttribute("formaction")||u.getAttribute("action");if(a=s?we(s,t):null,r=e.getAttribute("formmethod")||u.getAttribute("method")||xt,n=It(e.getAttribute("formenctype"))||It(u.getAttribute("enctype"))||Lt,o=new FormData(u,e),!Bo()){let{name:l,type:f,value:h}=e;if(f==="image"){let v=l?`${l}.`:"";o.append(`${v}x`,"0"),o.append(`${v}y`,"0")}else l&&o.append(l,h)}}else{if(Mt(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');r=xt,a=null,n=Lt,i=e}return o&&n==="text/plain"&&(i=o,o=void 0),{action:a,method:r.toLowerCase(),encType:n,formData:o,body:i}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");function er(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function Ko(e,t,r,a){let n=typeof e=="string"?new URL(e,typeof window>"u"?"server://singlefetch/":window.location.origin):e;return r?n.pathname.endsWith("/")?n.pathname=`${n.pathname}_.${a}`:n.pathname=`${n.pathname}.${a}`:n.pathname==="/"?n.pathname=`_root.${a}`:t&&we(n.pathname,t)==="/"?n.pathname=`${t.replace(/\/$/,"")}/_root.${a}`:n.pathname=`${n.pathname.replace(/\/$/,"")}.${a}`,n}async function Yo(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.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function Jo(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 Go(e,t,r){let a=await Promise.all(e.map(async n=>{let o=t.routes[n.route.id];if(o){let i=await Yo(o,r);return i.links?i.links():[]}return[]}));return Zo(a.flat(1).filter(Jo).filter(n=>n.rel==="stylesheet"||n.rel==="preload").map(n=>n.rel==="stylesheet"?{...n,rel:"prefetch",as:"style"}:{...n,rel:"prefetch"}))}function Vr(e,t,r,a,n,o){let i=(s,l)=>r[l]?s.route.id!==r[l].route.id:!0,u=(s,l)=>{var f;return r[l].pathname!==s.pathname||((f=r[l].route.path)==null?void 0:f.endsWith("*"))&&r[l].params["*"]!==s.params["*"]};return o==="assets"?t.filter((s,l)=>i(s,l)||u(s,l)):o==="data"?t.filter((s,l)=>{var h;let f=a.routes[s.route.id];if(!f||!f.hasLoader)return!1;if(i(s,l)||u(s,l))return!0;if(s.route.shouldRevalidate){let v=s.route.shouldRevalidate({currentUrl:new URL(n.pathname+n.search+n.hash,window.origin),currentParams:((h=r[0])==null?void 0:h.params)||{},nextUrl:new URL(e,window.origin),nextParams:s.params,defaultShouldRevalidate:!0});if(typeof v=="boolean")return v}return!0}):[]}function qo(e,t,{includeHydrateFallback:r}={}){return Xo(e.map(a=>{let n=t.routes[a.route.id];if(!n)return[];let o=[n.module];return n.clientActionModule&&(o=o.concat(n.clientActionModule)),n.clientLoaderModule&&(o=o.concat(n.clientLoaderModule)),r&&n.hydrateFallbackModule&&(o=o.concat(n.hydrateFallbackModule)),n.imports&&(o=o.concat(n.imports)),o}).flat(1))}function Xo(e){return[...new Set(e)]}function Qo(e){let t={},r=Object.keys(e).sort();for(let a of r)t[a]=e[a];return t}function Zo(e,t){let r=new Set;return new Set(t),e.reduce((a,n)=>{let o=JSON.stringify(Qo(n));return r.has(o)||(r.add(o),a.push({key:o,link:n})),a},[])}function wa(){let e=p.useContext(Be);return er(e,"You must render this element inside a <DataRouterContext.Provider> element"),e}function ei(){let e=p.useContext(dt);return er(e,"You must render this element inside a <DataRouterStateContext.Provider> element"),e}var tr=p.createContext(void 0);tr.displayName="FrameworkContext";function Ra(){let e=p.useContext(tr);return er(e,"You must render this element inside a <HydratedRouter> element"),e}function ti(e,t){let r=p.useContext(tr),[a,n]=p.useState(!1),[o,i]=p.useState(!1),{onFocus:u,onBlur:s,onMouseEnter:l,onMouseLeave:f,onTouchStart:h}=t,v=p.useRef(null);p.useEffect(()=>{if(e==="render"&&i(!0),e==="viewport"){let S=C=>{C.forEach(P=>{i(P.isIntersecting)})},b=new IntersectionObserver(S,{threshold:.5});return v.current&&b.observe(v.current),()=>{b.disconnect()}}},[e]),p.useEffect(()=>{if(a){let S=setTimeout(()=>{i(!0)},100);return()=>{clearTimeout(S)}}},[a]);let g=()=>{n(!0)},E=()=>{n(!1),i(!1)};return r?e!=="intent"?[o,v,{}]:[o,v,{onFocus:tt(u,g),onBlur:tt(s,E),onMouseEnter:tt(l,g),onMouseLeave:tt(f,E),onTouchStart:tt(h,g)}]:[!1,v,{}]}function tt(e,t){return r=>{e&&e(r),r.defaultPrevented||t(r)}}function ri({page:e,...t}){let{router:r}=wa(),a=p.useMemo(()=>_e(r.routes,e,r.basename),[r.routes,e,r.basename]);return a?p.createElement(ni,{page:e,matches:a,...t}):null}function ai(e){let{manifest:t,routeModules:r}=Ra(),[a,n]=p.useState([]);return p.useEffect(()=>{let o=!1;return Go(e,t,r).then(i=>{o||n(i)}),()=>{o=!0}},[e,t,r]),a}function ni({page:e,matches:t,...r}){let a=Le(),{future:n,manifest:o,routeModules:i}=Ra(),{basename:u}=wa(),{loaderData:s,matches:l}=ei(),f=p.useMemo(()=>Vr(e,t,l,o,a,"data"),[e,t,l,o,a]),h=p.useMemo(()=>Vr(e,t,l,o,a,"assets"),[e,t,l,o,a]),v=p.useMemo(()=>{if(e===a.pathname+a.search+a.hash)return[];let S=new Set,b=!1;if(t.forEach(P=>{var V;let _=o.routes[P.route.id];!_||!_.hasLoader||(!f.some($=>$.route.id===P.route.id)&&P.route.id in s&&((V=i[P.route.id])!=null&&V.shouldRevalidate)||_.hasClientLoader?b=!0:S.add(P.route.id))}),S.size===0)return[];let C=Ko(e,u,n.unstable_trailingSlashAwareDataRequests,"data");return b&&S.size>0&&C.searchParams.set("_routes",t.filter(P=>S.has(P.route.id)).map(P=>P.route.id).join(",")),[C.pathname+C.search]},[u,n.unstable_trailingSlashAwareDataRequests,s,a,o,f,t,e,i]),g=p.useMemo(()=>qo(h,o),[h,o]),E=ai(h);return p.createElement(p.Fragment,null,v.map(S=>p.createElement("link",{key:S,rel:"prefetch",as:"fetch",href:S,...r})),g.map(S=>p.createElement("link",{key:S,rel:"modulepreload",href:S,...r})),E.map(({key:S,link:b})=>p.createElement("link",{key:S,nonce:r.nonce,...b,crossOrigin:b.crossOrigin??r.crossOrigin})))}function oi(...e){return t=>{e.forEach(r=>{typeof r=="function"?r(t):r!=null&&(r.current=t)})}}var ii=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";try{ii&&(window.__reactRouterVersion="7.13.1")}catch{}function Si(e,t){return Fn({basename:t==null?void 0:t.basename,getContext:t==null?void 0:t.getContext,future:t==null?void 0:t.future,history:Ja({window:t==null?void 0:t.window}),hydrationData:(t==null?void 0:t.hydrationData)||li(),routes:e,mapRouteProperties:To,hydrationRouteProperties:Oo,dataStrategy:t==null?void 0:t.dataStrategy,patchRoutesOnNavigation:t==null?void 0:t.patchRoutesOnNavigation,window:t==null?void 0:t.window,unstable_instrumentations:t==null?void 0:t.unstable_instrumentations}).initialize()}function li(){let e=window==null?void 0:window.__staticRouterHydrationData;return e&&e.errors&&(e={...e,errors:si(e.errors)}),e}function si(e){if(!e)return null;let t=Object.entries(e),r={};for(let[a,n]of t)if(n&&n.__type==="RouteErrorResponse")r[a]=new ut(n.status,n.statusText,n.data,n.internal===!0);else if(n&&n.__type==="Error"){if(n.__subType){let o=window[n.__subType];if(typeof o=="function")try{let i=new o(n.message);i.stack="",r[a]=i}catch{}}if(r[a]==null){let o=new Error(n.message);o.stack="",r[a]=o}}else r[a]=n;return r}var ba=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Ea=p.forwardRef(function({onClick:t,discover:r="render",prefetch:a="none",relative:n,reloadDocument:o,replace:i,unstable_mask:u,state:s,target:l,to:f,preventScrollReset:h,viewTransition:v,unstable_defaultShouldRevalidate:g,...E},S){let{basename:b,navigator:C,unstable_useTransitions:P}=p.useContext(he),_=typeof f=="string"&&ba.test(f),V=Zr(f,b);f=V.to;let $=co(f,{relative:n}),H=Le(),Q=null;if(u){let Z=st(u,[],H.unstable_mask?H.unstable_mask.pathname:"/",!0);b!=="/"&&(Z.pathname=Z.pathname==="/"?b:Ee([b,Z.pathname])),Q=C.createHref(Z)}let[m,B,k]=ti(a,E),re=fi(f,{replace:i,unstable_mask:u,state:s,target:l,preventScrollReset:h,relative:n,viewTransition:v,unstable_defaultShouldRevalidate:g,unstable_useTransitions:P});function I(Z){t&&t(Z),Z.defaultPrevented||re(Z)}let ue=!(V.isExternal||o),K=p.createElement("a",{...E,...k,href:(ue?Q:void 0)||V.absoluteURL||$,onClick:ue?I:t,ref:oi(S,B),target:l,"data-discover":!_&&r==="render"?"true":void 0});return m&&!_?p.createElement(p.Fragment,null,K,p.createElement(ri,{page:$})):K});Ea.displayName="Link";var ui=p.forwardRef(function({"aria-current":t="page",caseSensitive:r=!1,className:a="",end:n=!1,style:o,to:i,viewTransition:u,children:s,...l},f){let h=ft(i,{relative:l.relative}),v=Le(),g=p.useContext(dt),{navigator:E,basename:S}=p.useContext(he),b=g!=null&&vi(h)&&u===!0,C=E.encodeLocation?E.encodeLocation(h).pathname:h.pathname,P=v.pathname,_=g&&g.navigation&&g.navigation.location?g.navigation.location.pathname:null;r||(P=P.toLowerCase(),_=_?_.toLowerCase():null,C=C.toLowerCase()),_&&S&&(_=we(_,S)||_);const V=C!=="/"&&C.endsWith("/")?C.length-1:C.length;let $=P===C||!n&&P.startsWith(C)&&P.charAt(V)==="/",H=_!=null&&(_===C||!n&&_.startsWith(C)&&_.charAt(C.length)==="/"),Q={isActive:$,isPending:H,isTransitioning:b},m=$?t:void 0,B;typeof a=="function"?B=a(Q):B=[a,$?"active":null,H?"pending":null,b?"transitioning":null].filter(Boolean).join(" ");let k=typeof o=="function"?o(Q):o;return p.createElement(Ea,{...l,"aria-current":m,className:B,ref:f,style:k,to:i,viewTransition:u},typeof s=="function"?s(Q):s)});ui.displayName="NavLink";var ci=p.forwardRef(({discover:e="render",fetcherKey:t,navigate:r,reloadDocument:a,replace:n,state:o,method:i=xt,action:u,onSubmit:s,relative:l,preventScrollReset:f,viewTransition:h,unstable_defaultShouldRevalidate:v,...g},E)=>{let{unstable_useTransitions:S}=p.useContext(he),b=yi(),C=pi(u,{relative:l}),P=i.toLowerCase()==="get"?"get":"post",_=typeof u=="string"&&ba.test(u),V=$=>{if(s&&s($),$.defaultPrevented)return;$.preventDefault();let H=$.nativeEvent.submitter,Q=(H==null?void 0:H.getAttribute("formmethod"))||i,m=()=>b(H||$.currentTarget,{fetcherKey:t,method:Q,navigate:r,replace:n,state:o,relative:l,preventScrollReset:f,viewTransition:h,unstable_defaultShouldRevalidate:v});S&&r!==!1?p.startTransition(()=>m()):m()};return p.createElement("form",{ref:E,method:P,action:C,onSubmit:a?s:V,...g,"data-discover":!_&&e==="render"?"true":void 0})});ci.displayName="Form";function di(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Sa(e){let t=p.useContext(Be);return U(t,di(e)),t}function fi(e,{target:t,replace:r,unstable_mask:a,state:n,preventScrollReset:o,relative:i,viewTransition:u,unstable_defaultShouldRevalidate:s,unstable_useTransitions:l}={}){let f=Xt(),h=Le(),v=ft(e,{relative:i});return p.useCallback(g=>{if(jo(g,t)){g.preventDefault();let E=r!==void 0?r:xe(h)===xe(v),S=()=>f(e,{replace:E,unstable_mask:a,state:n,preventScrollReset:o,relative:i,viewTransition:u,unstable_defaultShouldRevalidate:s});l?p.startTransition(()=>S()):S()}},[h,f,v,r,a,n,t,e,o,i,u,s,l])}function xi(e){X(typeof URLSearchParams<"u","You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=p.useRef(Wt(e)),r=p.useRef(!1),a=Le(),n=p.useMemo(()=>Ho(a.search,r.current?null:t.current),[a.search]),o=Xt(),i=p.useCallback((u,s)=>{const l=Wt(typeof u=="function"?u(new URLSearchParams(n)):u);r.current=!0,o("?"+l,s)},[o,n]);return[n,i]}var hi=0,mi=()=>`__${String(++hi)}__`;function yi(){let{router:e}=Sa("useSubmit"),{basename:t}=p.useContext(he),r=xo(),a=e.fetch,n=e.navigate;return p.useCallback(async(o,i={})=>{let{action:u,method:s,encType:l,formData:f,body:h}=Vo(o,t);if(i.navigate===!1){let v=i.fetcherKey||mi();await a(v,r,i.action||u,{unstable_defaultShouldRevalidate:i.unstable_defaultShouldRevalidate,preventScrollReset:i.preventScrollReset,formData:f,body:h,formMethod:i.method||s,formEncType:i.encType||l,flushSync:i.flushSync})}else await n(i.action||u,{unstable_defaultShouldRevalidate:i.unstable_defaultShouldRevalidate,preventScrollReset:i.preventScrollReset,formData:f,body:h,formMethod:i.method||s,formEncType:i.encType||l,replace:i.replace,state:i.state,fromRouteId:r,flushSync:i.flushSync,viewTransition:i.viewTransition})},[a,n,t,r])}function pi(e,{relative:t}={}){let{basename:r}=p.useContext(he),a=p.useContext(Re);U(a,"useFormAction must be used inside a RouteContext");let[n]=a.matches.slice(-1),o={...ft(e||".",{relative:t})},i=Le();if(e==null){o.search=i.search;let u=new URLSearchParams(o.search),s=u.getAll("index");if(s.some(f=>f==="")){u.delete("index"),s.filter(h=>h).forEach(h=>u.append("index",h));let f=u.toString();o.search=f?`?${f}`:""}}return(!e||e===".")&&n.route.index&&(o.search=o.search?o.search.replace(/^\?/,"?index&"):"?index"),r!=="/"&&(o.pathname=o.pathname==="/"?r:Ee([r,o.pathname])),xe(o)}function vi(e,{relative:t}={}){let r=p.useContext(Gt);U(r!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:a}=Sa("useViewTransitionState"),n=ft(e,{relative:t});if(!r.isTransitioning)return!1;let o=we(r.currentLocation.pathname,a)||r.currentLocation.pathname,i=we(r.nextLocation.pathname,a)||r.nextLocation.pathname;return Pt(n.pathname,i)!=null||Pt(n.pathname,o)!=null}var gi=Va();function Li(e){return p.createElement(Fo,{flushSync:gi.flushSync,...e})}export{Ea as L,ui as N,Ei as O,Li as R,Le as a,gi as b,bi as c,Si as d,Ri as e,xi as f,Va as r,Xt as u};
22
- //# sourceMappingURL=vendor-react-CdqEC2zv.js.map
22
+ //# sourceMappingURL=vendor-react-_9U4mKFr.js.map