decocms 4.497.1 → 4.498.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 (368) hide show
  1. package/dist/client/assets/{ActiveShapeUtils-CyYu6nD0.js → ActiveShapeUtils-CEOSKof6.js} +1 -1
  2. package/dist/client/assets/{AlertCircle-CHrjAIcc.js → AlertCircle-yt_vxPJf.js} +1 -1
  3. package/dist/client/assets/{AreaChart-CwoOvJ2_.js → AreaChart-NgSbz1YU.js} +1 -1
  4. package/dist/client/assets/{ArrowLeft-CDSbOlKg.js → ArrowLeft-BoFdVIj0.js} +1 -1
  5. package/dist/client/assets/{ArrowUp-DVmGL0QN.js → ArrowUp-CIbRKXRd.js} +1 -1
  6. package/dist/client/assets/{BarChart-pYmYrRAw.js → BarChart-CZZfMdqS.js} +1 -1
  7. package/dist/client/assets/{Building02-Cjmi-E_Q.js → Building02-Grdt_-B9.js} +1 -1
  8. package/dist/client/assets/{CategoricalChart-J69_dr0s.js → CategoricalChart-DOyrhZnb.js} +1 -1
  9. package/dist/client/assets/{CheckCircle-DH3xbIup.js → CheckCircle-CZBNcseh.js} +1 -1
  10. package/dist/client/assets/{ChevronSelectorVertical-D3--DzuF.js → ChevronSelectorVertical-Cx7bXE4W.js} +1 -1
  11. package/dist/client/assets/{ChevronUp-fo2ERVlh.js → ChevronUp-D6IHSaQn.js} +1 -1
  12. package/dist/client/assets/{Copy01-C7JKQ2yo.js → Copy01-CEPiTf5t.js} +1 -1
  13. package/dist/client/assets/{CreditCard01-DuhJeWgL.js → CreditCard01-tiXWLEqR.js} +1 -1
  14. package/dist/client/assets/{DotsVertical-CdIsXudQ.js → DotsVertical-BuI2KBNC.js} +1 -1
  15. package/dist/client/assets/{ErrorBarContext-PRGTHaZ1.js → ErrorBarContext-z-eRCr-L.js} +1 -1
  16. package/dist/client/assets/{Globe04-CMhAsYW7.js → Globe04-C0XtFFMY.js} +1 -1
  17. package/dist/client/assets/{Image01-DQr5z6Eu.js → Image01-9sEHDLML.js} +1 -1
  18. package/dist/client/assets/{Key01-DkQjjPwv.js → Key01-yp2uNovQ.js} +1 -1
  19. package/dist/client/assets/{Link01-CBvOTEVq.js → Link01-EXdK0urZ.js} +1 -1
  20. package/dist/client/assets/{LinkBroken01-CWg3Xs9J.js → LinkBroken01-3c_toy9W.js} +1 -1
  21. package/dist/client/assets/{Monitor01-CawnpOBp.js → Monitor01-TfUbVR_O.js} +1 -1
  22. package/dist/client/assets/{Play-CHfHT47l.js → Play-CN_3v0Nc.js} +1 -1
  23. package/dist/client/assets/{Plus-Ch1sG4T5.js → Plus-BuHYG86K.js} +1 -1
  24. package/dist/client/assets/{SearchMd-D7CH4cEW.js → SearchMd-Dq3HFXQW.js} +1 -1
  25. package/dist/client/assets/{Sector-BdZY69jR.js → Sector-BZNZXef1.js} +1 -1
  26. package/dist/client/assets/{ShoppingBag01-CFzAExOe.js → ShoppingBag01-Cf6UKyjX.js} +1 -1
  27. package/dist/client/assets/{Sun-AXWLcql2.js → Sun-CO0EKSy7.js} +1 -1
  28. package/dist/client/assets/{SwitchHorizontal01-ZzQSxDu-.js → SwitchHorizontal01-Bu2dq40R.js} +1 -1
  29. package/dist/client/assets/{Tool01-D47UxjHr.js → Tool01-1QQRqWDa.js} +1 -1
  30. package/dist/client/assets/{Trash01-DjbVg-Gr.js → Trash01-B6NXmxPH.js} +1 -1
  31. package/dist/client/assets/{Upload01-CongSYMk.js → Upload01-D4HC2Tn9.js} +1 -1
  32. package/dist/client/assets/{User01-C0eJYwru.js → User01-j65IkD-p.js} +1 -1
  33. package/dist/client/assets/{UserSquare-D5hRO90M.js → UserSquare-BlEF03DB.js} +1 -1
  34. package/dist/client/assets/{Users01-C3nUQ4J2.js → Users01-DaolauCT.js} +1 -1
  35. package/dist/client/assets/{XAxis-CHmQK-au.js → XAxis-BEe_hkuD.js} +1 -1
  36. package/dist/client/assets/{XClose-CEtKIB7q.js → XClose-DR6y5rEy.js} +1 -1
  37. package/dist/client/assets/{ZoomOut-CrQxrOGW.js → ZoomOut-4Na-37_y.js} +1 -1
  38. package/dist/client/assets/{access-gate-rafBainF.js → access-gate-BkRaj5GE.js} +1 -1
  39. package/dist/client/assets/{add-connection-dialog-CvB_KcBa.js → add-connection-dialog-Clf3RGrh.js} +1 -1
  40. package/dist/client/assets/{agent-analytics-BVxR4_Uj.js → agent-analytics-DtOK7V_m.js} +1 -1
  41. package/dist/client/assets/agent-app-OaxZqeD_.js +1 -0
  42. package/dist/client/assets/{agent-assets-B1OqFMpj.js → agent-assets-eggmJ6AO.js} +1 -1
  43. package/dist/client/assets/{agent-automation-ClFLOq4I.js → agent-automation-DKjiKuGX.js} +3 -3
  44. package/dist/client/assets/{agent-automations-BFYTbfc-.js → agent-automations-D0TPMz58.js} +1 -1
  45. package/dist/client/assets/{agent-connect-sources-BRvuYQWx.js → agent-connect-sources-QM1x-Vlg.js} +1 -1
  46. package/dist/client/assets/agent-deck-B2nYR7Dm.js +1 -0
  47. package/dist/client/assets/{agent-e2e-B9CH2Mo6.js → agent-e2e-Ca7-yyUr.js} +1 -1
  48. package/dist/client/assets/{agent-experiments-DlztOCrU.js → agent-experiments-CShjLMy4.js} +1 -1
  49. package/dist/client/assets/{agent-file-CsIS9_4j.js → agent-file-CXnhLpHv.js} +1 -1
  50. package/dist/client/assets/{agent-hosting-Bknl93TE.js → agent-hosting-CJ7X3aoi.js} +1 -1
  51. package/dist/client/assets/{agent-icon-D25DK5wS.js → agent-icon-BWm1tEHf.js} +1 -1
  52. package/dist/client/assets/agent-library-BOKehDWH.js +1 -0
  53. package/dist/client/assets/agent-library-file-bZx6dPQZ.js +1 -0
  54. package/dist/client/assets/{agent-monitor-DyT5ig13.js → agent-monitor-aO-ZX72I.js} +1 -1
  55. package/dist/client/assets/{agent-overview-ButxU5iy.js → agent-overview-BdNqyANT.js} +1 -1
  56. package/dist/client/assets/agent-settings-C9O5P6Ac.js +1 -0
  57. package/dist/client/assets/{agent-site-editor-Dl99KrED.js → agent-site-editor-DpVUGFZO.js} +13 -13
  58. package/dist/client/assets/agent-site-editor-code-B6YFKzJn.js +2 -0
  59. package/dist/client/assets/{agent-site-editor-content-Df_6cDHk.js → agent-site-editor-content-Ch_W-XBW.js} +3 -3
  60. package/dist/client/assets/{agent-site-editor-preview-CltuQS-a.js → agent-site-editor-preview-B_IWatK1.js} +3 -3
  61. package/dist/client/assets/agent-view-B5RueEsw.js +1 -0
  62. package/dist/client/assets/{agent-view-guard-CVsz0TkU.js → agent-view-guard-BvLhIXrv.js} +1 -1
  63. package/dist/client/assets/{agents-list-CeTR5ulR.js → agents-list-C1mOaR5S.js} +1 -1
  64. package/dist/client/assets/{ai-providers-BZ2_pdED.js → ai-providers-Dl-M1PyL.js} +1 -1
  65. package/dist/client/assets/{alert-BK3mvJgc.js → alert-SBNacSkV.js} +1 -1
  66. package/dist/client/assets/{alert-dialog-CmV9dy9T.js → alert-dialog-jQtZ3ZzI.js} +1 -1
  67. package/dist/client/assets/{analytics-sections-BrCaGlQS.js → analytics-sections-ClrZtpv-.js} +1 -1
  68. package/dist/client/assets/{api-keys-BjhtfTv5.js → api-keys-CPJrFMqi.js} +1 -1
  69. package/dist/client/assets/api-keys-DBSJuVWB.js +1 -0
  70. package/dist/client/assets/app-editor-pad2zBVL.js +1 -0
  71. package/dist/client/assets/{asset-utils-CM76tGw5.js → asset-utils-D08Aoc_R.js} +1 -1
  72. package/dist/client/assets/{auth-catchall-BHpuDx65.js → auth-catchall-BeMyoBKu.js} +1 -1
  73. package/dist/client/assets/{auth-entry-DTqozZzK.js → auth-entry-DJaGJAjK.js} +1 -1
  74. package/dist/client/assets/{auth-mnJ9PW01.js → auth-mFhLeKMz.js} +1 -1
  75. package/dist/client/assets/{auth-split-layout-nnK4QA-M.js → auth-split-layout-ByDkAW2k.js} +1 -1
  76. package/dist/client/assets/{authenticate-and-persist-oauth-Bpiv3RO5.js → authenticate-and-persist-oauth-CeGbqgzS.js} +1 -1
  77. package/dist/client/assets/{automation-list-row-YpYqBxpc.js → automation-list-row-DVkYWn7-.js} +1 -1
  78. package/dist/client/assets/{automation-runs-Cjsz3sNl.js → automation-runs-ClsfcDj3.js} +1 -1
  79. package/dist/client/assets/{automations-K16w9IfU.js → automations-J6M9iOPe.js} +1 -1
  80. package/dist/client/assets/{autosend-BaSnPt7x.js → autosend-BMgG-yyo.js} +1 -1
  81. package/dist/client/assets/{avatar-Co-052cR.js → avatar-CGKHJJ29.js} +1 -1
  82. package/dist/client/assets/{badge-CSXpEa55.js → badge-e2QrlLU3.js} +1 -1
  83. package/dist/client/assets/{block-document-Dwi86oHf.js → block-document-CwvleIK5.js} +1 -1
  84. package/dist/client/assets/{blocks-preview-workspace-context-BOZf-loo.js → blocks-preview-workspace-context-CRfw600-.js} +1 -1
  85. package/dist/client/assets/{blog-schema-D-OKi5uD.js → blog-schema-9H1MsVja.js} +1 -1
  86. package/dist/client/assets/{board-analytics-Dtj7gftE.js → board-analytics-DJF9aWKh.js} +1 -1
  87. package/dist/client/assets/{buckets-Tw-Ph4JX.js → buckets-BP1Vhyhd.js} +1 -1
  88. package/dist/client/assets/{build-improve-prompt-doc-DSsqKodq.js → build-improve-prompt-doc-v8716goQ.js} +1 -1
  89. package/dist/client/assets/{calendar-DCoBKIit.js → calendar-Bk2o0YZw.js} +1 -1
  90. package/dist/client/assets/{capability-load-error-D4Y-1y8Z.js → capability-load-error-CIHPR5Gy.js} +1 -1
  91. package/dist/client/assets/{category-editor-15WhKdzJ.js → category-editor-BaQg02aW.js} +1 -1
  92. package/dist/client/assets/{chart-D8S5B3Fk.js → chart-HyDGBD-q.js} +1 -1
  93. package/dist/client/assets/{chat-context-BvnYD9Wb.js → chat-context-BbNDNUk9.js} +1 -1
  94. package/dist/client/assets/{chat-draft-BUwzbZEb.js → chat-draft-hlZVssEX.js} +1 -1
  95. package/dist/client/assets/{checkbox-CVokasRh.js → checkbox-C_2F1Cj3.js} +1 -1
  96. package/dist/client/assets/{choose-editor-B_kWfVxF.js → choose-editor-ChSwWWjo.js} +1 -1
  97. package/dist/client/assets/{claim-phase-copy-D7K6r9pB.js → claim-phase-copy-D269DINR.js} +1 -1
  98. package/dist/client/assets/{cli-auth-success-BjJ_-CPN.js → cli-auth-success-CmkX-i8P.js} +1 -1
  99. package/dist/client/assets/{client-icons-R8IUwnS4.js → client-icons-DSMjDL_L.js} +1 -1
  100. package/dist/client/assets/{collapsible-BpQWnMqu.js → collapsible-B9gzEACx.js} +1 -1
  101. package/dist/client/assets/{collection-detail-BTjqy1Rt.js → collection-detail-1UUQlOPW.js} +1 -1
  102. package/dist/client/assets/{collection-display-button-CwZjncaa.js → collection-display-button-Bfbynwrl.js} +1 -1
  103. package/dist/client/assets/{collection-search-CFCYIYsp.js → collection-search-B0uW5tI4.js} +1 -1
  104. package/dist/client/assets/{collection-table-wrapper-9DXb8a6f.js → collection-table-wrapper-ClFZOmuM.js} +1 -1
  105. package/dist/client/assets/{collection-tabs-D1MI1rbf.js → collection-tabs-Bkk1_mfm.js} +1 -1
  106. package/dist/client/assets/{column-rules-CKqZ2w7B.js → column-rules-DSDPtHpm.js} +1 -1
  107. package/dist/client/assets/{combobox-8uTSWM7x.js → combobox-CShUh4PQ.js} +1 -1
  108. package/dist/client/assets/{command-zNxZAzCt.js → command-nVyplWK_.js} +1 -1
  109. package/dist/client/assets/{companion-mcps-section-Dn6CWwBU.js → companion-mcps-section-kC08wD54.js} +1 -1
  110. package/dist/client/assets/{config-zAMyoP2u.js → config-0BiCejtE.js} +1 -1
  111. package/dist/client/assets/{connect-B0eXPnXO.js → connect-BBeQU_EJ.js} +1 -1
  112. package/dist/client/assets/{connect-layout-DiQFJtzW.js → connect-layout-Bwx9aBPg.js} +1 -1
  113. package/dist/client/assets/{connection-1bY4JOT7.js → connection-A7b7D2VS.js} +1 -1
  114. package/dist/client/assets/{connection-card-BPhgcvjc.js → connection-card-DE57XYjn.js} +1 -1
  115. package/dist/client/assets/{connection-detail-Bb0U2uNL.js → connection-detail-BTLWRKbY.js} +1 -1
  116. package/dist/client/assets/{connection-form-helpers-BHdjytOT.js → connection-form-helpers-DtAJchwc.js} +1 -1
  117. package/dist/client/assets/{connections-C9nogFwq.js → connections-DrngcRP8.js} +1 -1
  118. package/dist/client/assets/{context-l2XAj4L-.js → context-DaL6xhih.js} +1 -1
  119. package/dist/client/assets/{context-menu-BJ4Hqd4H.js → context-menu-BJwy_nFH.js} +1 -1
  120. package/dist/client/assets/{core.esm-l5VXFwhd.js → core.esm-DDBCWV0w.js} +1 -1
  121. package/dist/client/assets/{create-organization-dialog-BDaja_nV.js → create-organization-dialog-DB9rEtrK.js} +1 -1
  122. package/dist/client/assets/{daily-pulse-DOsYKARy.js → daily-pulse-CJrJLexW.js} +1 -1
  123. package/dist/client/assets/{device-hint-PXv02Ucu.js → device-hint-CvaTEhNc.js} +1 -1
  124. package/dist/client/assets/{discover-BiY2-MAZ.js → discover-Dw08zcmB.js} +1 -1
  125. package/dist/client/assets/{domain-settings-B2qAb04P.js → domain-settings-B0_IxtF3.js} +1 -1
  126. package/dist/client/assets/{drawer-DL5bFgNR.js → drawer-DcBsCtJm.js} +1 -1
  127. package/dist/client/assets/{editor-EMcWHln-.js → editor-BM9Si7NB.js} +1 -1
  128. package/dist/client/assets/{empty-state-Bk1ubmvv.js → empty-state-C3RzST0N.js} +1 -1
  129. package/dist/client/assets/{empty-state-Dl0uE1qg.js → empty-state-DLkkLJux.js} +1 -1
  130. package/dist/client/assets/{extract-connection-data-DIxd-Pe9.js → extract-connection-data-oAa1fXR4.js} +1 -1
  131. package/dist/client/assets/{feature-gate-D_5Zcern.js → feature-gate-r-cIsb_9.js} +1 -1
  132. package/dist/client/assets/{feature-paywall-uSo5NgIk.js → feature-paywall-nMZG76Hu.js} +1 -1
  133. package/dist/client/assets/{file-explorer-BLs0vfRV.js → file-explorer-Bom54db-.js} +1 -1
  134. package/dist/client/assets/{file-preview-C_zyLNU0.js → file-preview-CALjnZBa.js} +1 -1
  135. package/dist/client/assets/{file-share-button-DVm15sOV.js → file-share-button-CJ6c6rH7.js} +1 -1
  136. package/dist/client/assets/{file-type-icon-BFUya14p.js → file-type-icon-DUTtkOfJ.js} +1 -1
  137. package/dist/client/assets/flat-project-D87vZYtU.js +1 -0
  138. package/dist/client/assets/{folder-icon-aFp6Qaf_.js → folder-icon-BpHYuhb6.js} +1 -1
  139. package/dist/client/assets/{form-D_HjHR78.js → form-D6G00z5h.js} +1 -1
  140. package/dist/client/assets/{general-DWYlQqAU.js → general-B7xvTz9V.js} +1 -1
  141. package/dist/client/assets/{home-C39XJuuC.js → home-PELUmr4H.js} +1 -1
  142. package/dist/client/assets/{icon-button-CWnlJ_oZ.js → icon-button-DGINqU7U.js} +1 -1
  143. package/dist/client/assets/{index-Ah1SD4qu.js → index-45BC-IUR.js} +1 -1
  144. package/dist/client/assets/{index-DwYK88xA.js → index-BJiAXB1x.js} +1 -1
  145. package/dist/client/assets/{index-DqBs1i86.js → index-BOHdm5fb.js} +1 -1
  146. package/dist/client/assets/{index-zFizTRgJ.js → index-Bq_h7Umn.js} +4 -4
  147. package/dist/client/assets/{index-BBBK2Mw-.js → index-BqudK4-L.js} +1 -1
  148. package/dist/client/assets/{index-BGn4_CUT.js → index-BuDhwSVB.js} +1 -1
  149. package/dist/client/assets/{index-C8H_whn6.js → index-CakTkyAW.js} +3 -3
  150. package/dist/client/assets/{index-8oPwgK8U.js → index-CkoPmvjx.js} +1 -1
  151. package/dist/client/assets/{index-Cxl4iIy5.js → index-DdOq1jSd.js} +1 -1
  152. package/dist/client/assets/{index-TStkGKDV.js → index-DdQUASg3.js} +1 -1
  153. package/dist/client/assets/{index-Dbiuixsg.js → index-TQwnj3sP.js} +1 -1
  154. package/dist/client/assets/{index-DXJRwxmV.js → index-mX8QUf9o.js} +1 -1
  155. package/dist/client/assets/{index-redirect-qy-HGqdF.js → index-redirect-DNi4zMfa.js} +1 -1
  156. package/dist/client/assets/{index-B5s2AYv_.js → index-yMyEaAzH.js} +1 -1
  157. package/dist/client/assets/{infiniteQueryObserver-DR5G3_XI.js → infiniteQueryObserver-BGAJA7Os.js} +1 -1
  158. package/dist/client/assets/{infra-billing-DZ12o-of.js → infra-billing-CbbmB2V7.js} +1 -1
  159. package/dist/client/assets/{input-LrUKUue2.js → input-BKhewuuN.js} +1 -1
  160. package/dist/client/assets/{input-DrtuDHta.js → input-Box_WV2_.js} +3 -3
  161. package/dist/client/assets/{integration-icon-Bdyedi1P.js → integration-icon-DhOhrv7U.js} +1 -1
  162. package/dist/client/assets/{jira-icon-C5IDdjgJ.js → jira-icon-i4VUNyiL.js} +1 -1
  163. package/dist/client/assets/{label-CGeSw_vU.js → label-CsAQzNfl.js} +1 -1
  164. package/dist/client/assets/{layout-D3tajt2K.js → layout-CkHYkU9R.js} +1 -1
  165. package/dist/client/assets/{legacy-agents-deep-CfrBn8K6.js → legacy-agents-deep-C98RQKXI.js} +1 -1
  166. package/dist/client/assets/{legacy-main-redirect-BKFq0f1c.js → legacy-main-redirect-BIgyJ_Rn.js} +1 -1
  167. package/dist/client/assets/library-DFMSzKbO.js +1 -0
  168. package/dist/client/assets/{library-tab-CedtT6BF.js → library-tab-BPP4xFsL.js} +1 -1
  169. package/dist/client/assets/{login-Dxq0oJju.js → login-C9xo8gC-.js} +1 -1
  170. package/dist/client/assets/{markdown-Wp7WM_6R.js → markdown-Clwy6_tr.js} +1 -1
  171. package/dist/client/assets/{mcp-app-renderer-D4yJqapi.js → mcp-app-renderer-DArMX47N.js} +1 -1
  172. package/dist/client/assets/{mcp-oauth-BvraKhnX.js → mcp-oauth-CbvlD5SX.js} +1 -1
  173. package/dist/client/assets/{mcp-oauth-BWnNfhKY.js → mcp-oauth-Cea99ANT.js} +1 -1
  174. package/dist/client/assets/{members-NoAgJggW.js → members-wctf2Ubi.js} +1 -1
  175. package/dist/client/assets/{memory-DPCydpI9.js → memory-Jt-lr6yw.js} +1 -1
  176. package/dist/client/assets/{mini-report-page-CKiZSO3Y.js → mini-report-page-B13wqcgl.js} +1 -1
  177. package/dist/client/assets/{mock-board-ldzlXXTT.js → mock-board-B5RdDxLI.js} +1 -1
  178. package/dist/client/assets/{monaco-editor-Cw6bHZ9D.js → monaco-editor-dtwnOmjA.js} +1 -1
  179. package/dist/client/assets/{monitoring-stats-row-DUI3089C.js → monitoring-stats-row-DYDDyWu-.js} +1 -1
  180. package/dist/client/assets/{multi-select-C64565zf.js → multi-select-DdSpqudi.js} +1 -1
  181. package/dist/client/assets/{mustache-jBGE1x8P.js → mustache-CX4MpdBX.js} +1 -1
  182. package/dist/client/assets/{new-project-dialog-B0XejRtR.js → new-project-dialog-BGypGobH.js} +1 -1
  183. package/dist/client/assets/{oauth-callback-ai-provider-Az104D_B.js → oauth-callback-ai-provider-DWrRnAQa.js} +1 -1
  184. package/dist/client/assets/{oauth-callback-K1LG85n6.js → oauth-callback-kqzCIobn.js} +1 -1
  185. package/dist/client/assets/{onboarding-BStXwTJO.js → onboarding-CcYfi8WI.js} +1 -1
  186. package/dist/client/assets/{openai-conversation-63MRsej5.js → openai-conversation-DhlBv8-E.js} +1 -1
  187. package/dist/client/assets/{optimistic-project-sidebar-views-BPQEjG_5.js → optimistic-project-sidebar-views-zum4YfIs.js} +1 -1
  188. package/dist/client/assets/{organization-choice-CWJmmXl2.js → organization-choice-BfiXSZG8.js} +1 -1
  189. package/dist/client/assets/{orgs-RqN1nvSn.js → orgs-B5gFQq1F.js} +1 -1
  190. package/dist/client/assets/{page-seo-form-Dqs31MJ3.js → page-seo-form-JFwiZIT0.js} +1 -1
  191. package/dist/client/assets/{pair-BArWn6jb.js → pair-BGz-xvRt.js} +1 -1
  192. package/dist/client/assets/{plan-ladder-CFynazEn.js → plan-ladder-B7BcLgoM.js} +1 -1
  193. package/dist/client/assets/{popover-DTEHxwlD.js → popover-SThjTKkw.js} +1 -1
  194. package/dist/client/assets/{post-calendar-BoU1ZOL5.js → post-calendar-D2ZuozAK.js} +1 -1
  195. package/dist/client/assets/{post-editor-DijifWaY.js → post-editor-C5YzMvlA.js} +1 -1
  196. package/dist/client/assets/{preview-content-4n74nMkm.js → preview-content-D4UMh6Mw.js} +1 -1
  197. package/dist/client/assets/{preview-dialog-BfJBjitf.js → preview-dialog-CNlppihz.js} +1 -1
  198. package/dist/client/assets/{preview-panel-Ckv4GBo6.js → preview-panel-D1c2tSFa.js} +1 -1
  199. package/dist/client/assets/{product-picker-dialog-DegN_8hj.js → product-picker-dialog-Bg_wRS27.js} +1 -1
  200. package/dist/client/assets/{profile-BNI-FeGN.js → profile-BgOQ9aAb.js} +1 -1
  201. package/dist/client/assets/{project-app-view-BJKmTYP6.js → project-app-view-4rqXbkzF.js} +1 -1
  202. package/dist/client/assets/{project-feed-CthJ5cL5.js → project-feed-B9W-92Dz.js} +1 -1
  203. package/dist/client/assets/{project-icon-CLft8LNy.js → project-icon-CIwLSfgH.js} +1 -1
  204. package/dist/client/assets/project-reports-RELkMoLG.js +1 -0
  205. package/dist/client/assets/project-tasks-DNjdwI1k.js +1 -0
  206. package/dist/client/assets/{projects-CmeO8oT0.js → projects-CTer1OmE.js} +1 -1
  207. package/dist/client/assets/{projects-empty-state-Cu-dnKwc.js → projects-empty-state-Bdm7hEu4.js} +1 -1
  208. package/dist/client/assets/{prompts-DpC1en1o.js → prompts-BVzWI9A2.js} +1 -1
  209. package/dist/client/assets/record-editor-CJO9Opqj.js +1 -0
  210. package/dist/client/assets/redirect-editor-CU0aYdIn.js +1 -0
  211. package/dist/client/assets/reports-BAz1tWvD.js +1 -0
  212. package/dist/client/assets/{reports-ikhGH7I0.js → reports-DD5cz_RA.js} +1 -1
  213. package/dist/client/assets/{reports-onboarding-cozwetlX.js → reports-onboarding-BsU9VGgp.js} +1 -1
  214. package/dist/client/assets/{reports-tab-B2H0nIWm.js → reports-tab-Csnk5c_k.js} +2 -2
  215. package/dist/client/assets/{repositories-6dyicYgL.js → repositories-CpvdMs7E.js} +1 -1
  216. package/dist/client/assets/{repository-binding-D4HjFqUu.js → repository-binding-BRtfh-B2.js} +1 -1
  217. package/dist/client/assets/{repository-import-picker-D32RWglo.js → repository-import-picker-BHmiPnBI.js} +1 -1
  218. package/dist/client/assets/{repository-picker-BS8S1A4D.js → repository-picker-DvE9EG8b.js} +1 -1
  219. package/dist/client/assets/{require-capability-QNDooqDp.js → require-capability-CPXwUBF0.js} +1 -1
  220. package/dist/client/assets/{required-auth-layout-DV0YP59y.js → required-auth-layout-BndaENeT.js} +1 -1
  221. package/dist/client/assets/{reset-password-Bq3L1AQn.js → reset-password-BS360IO6.js} +1 -1
  222. package/dist/client/assets/{resizable-aYdS6ucz.js → resizable-DziF2F06.js} +1 -1
  223. package/dist/client/assets/{resolve-tab-icon-wP6kmFpV.js → resolve-tab-icon-DtE6yqkk.js} +1 -1
  224. package/dist/client/assets/{review-settings-VHbdYUwC.js → review-settings-C18UhQh3.js} +1 -1
  225. package/dist/client/assets/{rich-text-link-control-ZhLX7YkH.js → rich-text-link-control-DzTRiuLD.js} +1 -1
  226. package/dist/client/assets/{roles-DydRZQvS.js → roles-D2MdIBra.js} +1 -1
  227. package/dist/client/assets/{route-C0Fgh6Gu.js → route-DBgBZrOb.js} +1 -1
  228. package/dist/client/assets/{route-Dp89Dh0m.js → route-Dixxnj33.js} +1 -1
  229. package/dist/client/assets/route-IAz4JGQ1.js +1 -0
  230. package/dist/client/assets/{runnable-block-editor-C8XWqppj.js → runnable-block-editor-CIGu38ky.js} +1 -1
  231. package/dist/client/assets/{sandbox-lifecycle-context-DXFQTTJR.js → sandbox-lifecycle-context-CPCgb-_w.js} +1 -1
  232. package/dist/client/assets/{schema-6H-MEggI.js → schema-Du_TtumO.js} +1 -1
  233. package/dist/client/assets/{scroll-area-DsRpgTQ9.js → scroll-area-ms-tTzk1.js} +1 -1
  234. package/dist/client/assets/{search-input-BHgo2lGV.js → search-input-39xhlSYx.js} +1 -1
  235. package/dist/client/assets/{search-toggle-Dd-dflFz.js → search-toggle-CSuLKQ_Y.js} +1 -1
  236. package/dist/client/assets/{secret-picker-A2PMU4gO.js → secret-picker-CZCX6GO5.js} +1 -1
  237. package/dist/client/assets/{secrets-D9v5ukDd.js → secrets-CdI8V4V2.js} +1 -1
  238. package/dist/client/assets/{sections-editor-DWV3GkFv.js → sections-editor-DMeqz1oV.js} +1 -1
  239. package/dist/client/assets/{select-PUQ7cwv_.js → select-JLYSksJb.js} +1 -1
  240. package/dist/client/assets/{select-model-Benrx5ds.js → select-model-DKQUaD4e.js} +1 -1
  241. package/dist/client/assets/{seo-editor-DR6dMEeh.js → seo-editor-DsYvsfFz.js} +1 -1
  242. package/dist/client/assets/{separator-XSPXTmbD.js → separator-BmovFMP1.js} +1 -1
  243. package/dist/client/assets/{settings-tab-C9b_gZUS.js → settings-tab-txXR_zUN.js} +1 -1
  244. package/dist/client/assets/{sheet-CJnM8ySE.js → sheet-Jvnn431v.js} +1 -1
  245. package/dist/client/assets/{shell-layout-Dai0p-76.js → shell-layout-CJgfswow.js} +1 -1
  246. package/dist/client/assets/{skills-CpJ2yl_V.js → skills-DYFaqavF.js} +1 -1
  247. package/dist/client/assets/{slider-DOtGgAh5.js → slider-Bdt_gbvO.js} +1 -1
  248. package/dist/client/assets/{sortable.esm-igu-P_53.js → sortable.esm-Cj9zcuDX.js} +1 -1
  249. package/dist/client/assets/{sso-CpAigUKO.js → sso-BGnGFz0u.js} +1 -1
  250. package/dist/client/assets/{suggestion-kKk_djZn.js → suggestion-QLaiiEa4.js} +1 -1
  251. package/dist/client/assets/{switch-C4raYBaD.js → switch-Cr9OdHZR.js} +1 -1
  252. package/dist/client/assets/{symbol-DSyQEkVd.js → symbol-6XkBontZ.js} +1 -1
  253. package/dist/client/assets/{synced-repos-DhkSYvjz.js → synced-repos-nPJinKKB.js} +1 -1
  254. package/dist/client/assets/{tab-icon-glyph-DbT7H6I0.js → tab-icon-glyph-D-ycwvR2.js} +1 -1
  255. package/dist/client/assets/{table-ZhEY60SW.js → table-Cri4Xg02.js} +1 -1
  256. package/dist/client/assets/{tabs-sH7FADTj.js → tabs-D4q7kwbr.js} +1 -1
  257. package/dist/client/assets/{task-board-Cz8RAkVC.js → task-board-tSRaoKqm.js} +1 -1
  258. package/dist/client/assets/{task-route-dAZzlYHx.js → task-route-ZhU1PK_V.js} +1 -1
  259. package/dist/client/assets/{task-status-jzoHxLXE.js → task-status-BbeX0x8L.js} +1 -1
  260. package/dist/client/assets/taskboard-analytics-BBPxyOfm.js +1 -0
  261. package/dist/client/assets/tasks-BJbNG40I.js +1 -0
  262. package/dist/client/assets/{tasks-spnz6wGT.js → tasks-Byrbraao.js} +1 -1
  263. package/dist/client/assets/{textarea-Dh1uG6Oe.js → textarea-Dl_dkdBZ.js} +1 -1
  264. package/dist/client/assets/{thread-analytics-D7o3M7SE.js → thread-analytics-CXh2lNz9.js} +1 -1
  265. package/dist/client/assets/{thread-button-CVcG35Zp.js → thread-button-DXyx_ks_.js} +1 -1
  266. package/dist/client/assets/{thread-intent-DHio6v3T.js → thread-intent-D_WXT-Pe.js} +1 -1
  267. package/dist/client/assets/{thread-route-P2oNmklm.js → thread-route-CUc8muIW.js} +1 -1
  268. package/dist/client/assets/{thread-route-JC5U7UAP.js → thread-route-VI83l3tU.js} +1 -1
  269. package/dist/client/assets/{thread-sheet-body-Cb8plLTN.js → thread-sheet-body-jfLPV_BJ.js} +1 -1
  270. package/dist/client/assets/{time-range-picker-BXMVgeAS.js → time-range-picker-D6_PeFy6.js} +1 -1
  271. package/dist/client/assets/{toggle-group-BbN_e8eb.js → toggle-group-CMzFoK81.js} +1 -1
  272. package/dist/client/assets/{tool-namespace-CTfr8zMP.js → tool-namespace-CBl6r41H.js} +1 -1
  273. package/dist/client/assets/{toolbar-icon-button-NKHQPydk.js → toolbar-icon-button-4Lwb9IsI.js} +1 -1
  274. package/dist/client/assets/{tooltip-Ckfi6awk.js → tooltip-BwGAQHGK.js} +1 -1
  275. package/dist/client/assets/{tooltipContext-DNPFPGFA.js → tooltipContext-Dg_1ywjo.js} +1 -1
  276. package/dist/client/assets/{track-CteSCTlH.js → track-DRV0x9iD.js} +1 -1
  277. package/dist/client/assets/{types-BwEFq7Yg.js → types-CyBvFRGE.js} +1 -1
  278. package/dist/client/assets/{url-slug-xcarTcti.js → url-slug-DGtQ7HWv.js} +1 -1
  279. package/dist/client/assets/{usage-stats-Dpg2tIh9.js → usage-stats-BzAa1e6J.js} +1 -1
  280. package/dist/client/assets/{use-ai-providers-BdUdNx5z.js → use-ai-providers-Dzg7qOBB.js} +1 -1
  281. package/dist/client/assets/{use-automations-J4kPNxTM.js → use-automations-BmndfAFz.js} +1 -1
  282. package/dist/client/assets/{use-autosave-vvOEWidH.js → use-autosave-dIExvC1c.js} +1 -1
  283. package/dist/client/assets/{use-chat-layout-state-ooCEsZNA.js → use-chat-layout-state-Cu5VHCdn.js} +1 -1
  284. package/dist/client/assets/{use-chat-navigation-Cs9RLkky.js → use-chat-navigation-Dq4AID7c.js} +1 -1
  285. package/dist/client/assets/{use-clock-tick-CXFIi4J4.js → use-clock-tick-CVfWS6yM.js} +1 -1
  286. package/dist/client/assets/{use-connect-companion-DyLCP6sw.js → use-connect-companion-B8sGfDXf.js} +1 -1
  287. package/dist/client/assets/{use-connection-BWEGKt3t.js → use-connection-BOUIPY6t.js} +1 -1
  288. package/dist/client/assets/{use-copy-B3Z2bU9n.js → use-copy-Dvf6c8uG.js} +1 -1
  289. package/dist/client/assets/{use-create-virtual-mcp-CeEgD0KJ.js → use-create-virtual-mcp-DSn6yk0N.js} +1 -1
  290. package/dist/client/assets/{use-date-fns-locale-BwHZTp1d.js → use-date-fns-locale-CgGcC6Az.js} +1 -1
  291. package/dist/client/assets/{use-debounced-autosave-B-RYAOgV.js → use-debounced-autosave-CE2-QUqa.js} +1 -1
  292. package/dist/client/assets/{use-debounced-value-BPpgN-4m.js → use-debounced-value-BzsL07qR.js} +1 -1
  293. package/dist/client/assets/{use-deco-credits-DO7YD9IY.js → use-deco-credits-DkF5SY_h.js} +1 -1
  294. package/dist/client/assets/{use-decopilot-events-DRwe4roK.js → use-decopilot-events-Blhc-ndU.js} +1 -1
  295. package/dist/client/assets/{use-delete-connection-CP3eQN94.js → use-delete-connection-CYF8pz_F.js} +1 -1
  296. package/dist/client/assets/{use-deployment-admin-xj8zFarX.js → use-deployment-admin-CLpFZG4D.js} +1 -1
  297. package/dist/client/assets/{use-ensure-project-folder-_cAiUEgx.js → use-ensure-project-folder-BOYyvWFQ.js} +1 -1
  298. package/dist/client/assets/{use-fast-preview-draft-url-B4iSUSL0.js → use-fast-preview-draft-url-CIyiUthR.js} +1 -1
  299. package/dist/client/assets/{use-file-configs-CayvqTYD.js → use-file-configs-96Lf4lzD.js} +1 -1
  300. package/dist/client/assets/{use-infinite-scroll-Bs5bj_x4.js → use-infinite-scroll-Dm8NTnoo.js} +1 -1
  301. package/dist/client/assets/{use-join-requests-D0a7nWGC.js → use-join-requests-Cknb7py1.js} +1 -1
  302. package/dist/client/assets/{use-main-panel-tabs-BV3U-pk7.js → use-main-panel-tabs-BgFjt2aK.js} +1 -1
  303. package/dist/client/assets/{use-mcp-auth-status-CGqJtK6Y.js → use-mcp-auth-status-Y0skDQ3v.js} +1 -1
  304. package/dist/client/assets/{use-mcp-client-BpCQxGRA.js → use-mcp-client-CNAsaI5e.js} +1 -1
  305. package/dist/client/assets/{use-mcp-prompts-B6BIbud4.js → use-mcp-prompts-CmgQ14fY.js} +1 -1
  306. package/dist/client/assets/{use-mcp-tools-BBrUvrr2.js → use-mcp-tools-UtYane4F.js} +1 -1
  307. package/dist/client/assets/{use-members-BXZtT1Ge.js → use-members-BgejpANd.js} +1 -1
  308. package/dist/client/assets/{use-mobile-cnelp-tf.js → use-mobile-DnCFkPJO.js} +1 -1
  309. package/dist/client/assets/{use-navigate-to-agent-Yt28jbt_.js → use-navigate-to-agent-B0zcOk2z.js} +1 -1
  310. package/dist/client/assets/use-new-blocks-editor-67BT0BD6.js +1 -0
  311. package/dist/client/assets/{use-open-billing-url-Ch7hXR43.js → use-open-billing-url-CKWus2xS.js} +1 -1
  312. package/dist/client/assets/{use-org-auth-client-DQ_TpKIV.js → use-org-auth-client-CD-nyV-c.js} +1 -1
  313. package/dist/client/assets/{use-org-fs-Dd1pklx8.js → use-org-fs-DLNWZCr_.js} +1 -1
  314. package/dist/client/assets/{use-org-repo-syncs-a3Bo4Nwx.js → use-org-repo-syncs-DJwlGK__.js} +1 -1
  315. package/dist/client/assets/{use-org-sso-AbZWzz8J.js → use-org-sso-CRxV8p8t.js} +1 -1
  316. package/dist/client/assets/{use-organization-roles-BbdurYTP.js → use-organization-roles-BfBFRRgX.js} +1 -1
  317. package/dist/client/assets/{use-organization-settings-C9ru61wI.js → use-organization-settings-BNn0Gqay.js} +1 -1
  318. package/dist/client/assets/{use-panel-navigate-DlGjk1uT.js → use-panel-navigate-DwB1wmJM.js} +1 -1
  319. package/dist/client/assets/{use-project-scope-mUU3XQll.js → use-project-scope-4_AOQZp8.js} +1 -1
  320. package/dist/client/assets/{use-releases-Rs4UUF42.js → use-releases-Cx-VnR2N.js} +1 -1
  321. package/dist/client/assets/{use-reports-diagnostic-CmuuQULK.js → use-reports-diagnostic-CsqGKGh6.js} +1 -1
  322. package/dist/client/assets/{use-sandbox-events-B_Tbe66F.js → use-sandbox-events-CSD-klwz.js} +1 -1
  323. package/dist/client/assets/{use-secrets-zTdjn1K_.js → use-secrets-DXbIcS8Z.js} +1 -1
  324. package/dist/client/assets/{use-section-preview-base-CxaSIwgr.js → use-section-preview-base-BvT5dwZ-.js} +1 -1
  325. package/dist/client/assets/{use-tags-DcdzwPHe.js → use-tags-jhKYOldy.js} +1 -1
  326. package/dist/client/assets/{use-task-board-analytics-Cq5LBBkL.js → use-task-board-analytics-3nTgrvPC.js} +1 -1
  327. package/dist/client/assets/{use-task-board-events-DV0GzDSl.js → use-task-board-events-CqrXYzkU.js} +1 -1
  328. package/dist/client/assets/{use-task-board-item-prs-DWyfXvRg.js → use-task-board-item-prs-Dd1q_l-B.js} +1 -1
  329. package/dist/client/assets/{use-task-board-items-D-sN0nLG.js → use-task-board-items-C75zoD0D.js} +1 -1
  330. package/dist/client/assets/{use-task-metadata-DH7eHsp7.js → use-task-metadata-DdlcIqCj.js} +1 -1
  331. package/dist/client/assets/{use-thread-analytics-BcaFH3FR.js → use-thread-analytics-DCMrsmOZ.js} +1 -1
  332. package/dist/client/assets/{use-thread-outputs-BVWpj6Pt.js → use-thread-outputs-CvH5Vmni.js} +1 -1
  333. package/dist/client/assets/useInfiniteQuery-Dv-XATwg.js +1 -0
  334. package/dist/client/assets/{useQueries-DAsYe7-V.js → useQueries-Tky8WmoX.js} +1 -1
  335. package/dist/client/assets/useSuspenseInfiniteQuery-C_E-uilI.js +1 -0
  336. package/dist/client/assets/{users-BDKuEOgV.js → users-CVCcRfbM.js} +1 -1
  337. package/dist/client/assets/{utils-B26RJwPU.js → utils-BOsIAs_e.js} +1 -1
  338. package/dist/client/assets/{variant-calendar-B5hD6nTB.js → variant-calendar-Dk9EVqWx.js} +1 -1
  339. package/dist/client/assets/{variant-matcher-override-CQDkjZB9.js → variant-matcher-override-BpPqjUGk.js} +1 -1
  340. package/dist/client/assets/{view-mode-toggle-DgaXBu8I.js → view-mode-toggle-Dl2euStK.js} +1 -1
  341. package/dist/client/assets/{virtual-mcp-CPDSnrGy.js → virtual-mcp-5EzMLO01.js} +1 -1
  342. package/dist/client/assets/{watch-sse-pool-BFcKHKod.js → watch-sse-pool-CMD7Z7qL.js} +1 -1
  343. package/dist/client/index.html +1 -1
  344. package/dist/server/migrate.js +237 -230
  345. package/dist/server/server.js +585 -585
  346. package/package.json +1 -1
  347. package/dist/client/assets/agent-app-D15rL7SC.js +0 -1
  348. package/dist/client/assets/agent-deck-YSht4fJH.js +0 -1
  349. package/dist/client/assets/agent-library-De8yrcgK.js +0 -1
  350. package/dist/client/assets/agent-library-file-DSYip22s.js +0 -1
  351. package/dist/client/assets/agent-settings-DYAVsnNu.js +0 -1
  352. package/dist/client/assets/agent-site-editor-code-CPqEQaz5.js +0 -2
  353. package/dist/client/assets/agent-view-6MnvsGap.js +0 -1
  354. package/dist/client/assets/api-keys-CIOehITH.js +0 -1
  355. package/dist/client/assets/app-editor-jDyn4P31.js +0 -1
  356. package/dist/client/assets/flat-project-CcomIoqo.js +0 -1
  357. package/dist/client/assets/library-DoTX8yJa.js +0 -1
  358. package/dist/client/assets/project-reports-BPIYWSN5.js +0 -1
  359. package/dist/client/assets/project-tasks-D89Pcpsx.js +0 -1
  360. package/dist/client/assets/record-editor-rZo87T7s.js +0 -1
  361. package/dist/client/assets/redirect-editor-BebKUMtd.js +0 -1
  362. package/dist/client/assets/reports-DbXtySYc.js +0 -1
  363. package/dist/client/assets/route-B-Xt506d.js +0 -1
  364. package/dist/client/assets/taskboard-analytics-D4etS4F2.js +0 -1
  365. package/dist/client/assets/tasks-cUD-vzLP.js +0 -1
  366. package/dist/client/assets/use-new-blocks-editor-DleK5Imc.js +0 -1
  367. package/dist/client/assets/useInfiniteQuery-DTGbHHjG.js +0 -1
  368. package/dist/client/assets/useSuspenseInfiniteQuery-CGs3Z4Zs.js +0 -1
@@ -1 +1 @@
1
- import{a as $,$ as Ne,r as b,e as ae,y as M,j as t,l as f,B as X,I as G,c as Ie,b as Ce,h as Ue}from"./index-zFizTRgJ.js";import{e as qe}from"./backoff-CrEUbyZT.js";import{d as De}from"./delay-CnY5UFtP.js";class Pe extends Error{constructor(e,o){super(`Retrying exceeded the maxAttempts (${o}).`),this.name="RetryError",this.cause=e}}async function ze(i,e){const{multiplier:o=2,maxTimeout:l=6e4,maxAttempts:v=5,minTimeout:g=1e3,jitter:r=1,isRetriable:u=()=>!0,signal:d}=e??{};if(!Number.isInteger(v)||v<1)throw new RangeError(`Cannot retry as 'maxAttempts' must be a positive integer: current value is ${v}`);if(!Number.isFinite(o)||o<1)throw new RangeError(`Cannot retry as 'multiplier' must be a finite number >= 1: current value is ${o}`);if(Number.isNaN(l)||l<=0)throw new RangeError(`Cannot retry as 'maxTimeout' must be a positive number: current value is ${l}`);if(Number.isNaN(g)||g<0)throw new RangeError(`Cannot retry as 'minTimeout' must be >= 0: current value is ${g}`);if(g>l)throw new RangeError(`Cannot retry as 'minTimeout' must be <= 'maxTimeout': current values 'minTimeout=${g}', 'maxTimeout=${l}'`);if(Number.isNaN(r)||r<0||r>1)throw new RangeError(`Cannot retry as 'jitter' must be between 0 and 1: current value is ${r}`);let P=0;for(;;){d?.throwIfAborted();try{return await i()}catch(A){if(!u(A))throw A;if(P+1>=v)throw new Pe(A,v);const O=qe(l,g,P,o,r);await De(O,d?{signal:d}:void 0)}P++}}const Ae={submitEmailPassword:({mode:i,email:e,password:o,name:l})=>i==="sign_up"?$.signUp.email({email:e,password:o,name:l||""}):$.signIn.email({email:e,password:o}),requestPasswordReset:({email:i,redirectTo:e})=>$.requestPasswordReset({email:i,redirectTo:e}),sendOtp:({email:i})=>$.emailOtp.sendVerificationOtp({email:i,type:"sign-in"}),submitOtp:({email:i,otp:e})=>$.signIn.emailOtp({email:i,otp:e}),socialSignIn:({provider:i,callbackURL:e})=>$.signIn.social({provider:i,callbackURL:e}),ssoSignIn:({providerId:i,callbackURL:e})=>$.signIn.sso({providerId:i,callbackURL:e}),onAuthenticated:i=>{window.location.href=i}},ie="font-medium text-[#8CAA25] hover:underline disabled:opacity-50",Be={signUpFailed:"Sign up failed",signInFailed:"Sign in failed",authenticationFailed:"Authentication failed",resetEmailFailed:"Failed to send reset email",otpSendFailed:"Failed to send code",invalidCode:"Invalid code",invalidEmail:"Invalid email address",invalidEmailOrPassword:"Invalid email or password. Please try again.",accountExists:"An account with this email already exists. Try signing in instead.",networkError:"Network error. Please check your connection and try again.",tooManyAttempts:"Too many attempts. Please wait a moment and try again.",invalidOrExpiredCode:"Invalid or expired code. Please try again.",genericError:"An error occurred. Please try again.",resetPasswordTitle:"Reset your password",verificationCodeTitle:"Enter verification code",welcomeTitle:"Welcome to deco",resetPasswordSubtitle:"We'll send you a reset link",codeSentTo:i=>`Code sent to ${i}`,defaultSubtitle:"Sign in or create a new account",resetEmailSent:"Check your email for a password reset link.",continueWith:i=>`Continue with ${i}`,divider:"or",emailLabel:"Email",emailPlaceholder:"Email address",sending:"Sending...",sendCode:"Send code",verificationCodeLabel:"Verification code",enterCodePlaceholder:"Enter code",verifying:"Verifying...",verify:"Verify",useDifferentEmail:"Use a different email",sendResetLink:"Send reset link",nameLabel:"Name",namePlaceholder:"Your name",passwordLabel:"Password",forgotPassword:"Forgot password?",creatingAccount:"Creating account...",signingIn:"Signing in...",continue:"Continue",backToSignIn:"Back to sign in",signInWithPassword:"Sign in with password instead",alreadyHaveAccount:"Already have an account? ",dontHaveAccount:"Don't have an account? ",signIn:"Sign in",signUp:"Sign up",signInWithEmailCode:"Sign in with email code"};function Ve({redirectUrl:i,callbackUrl:e="/",title:o,subtitle:l,brand:v,copy:g,variant:r="default",allowedSocialProviders:u,allowPassword:d=!0,onAuthEvent:P,actions:A}){const{emailAndPassword:O,resetPassword:S,emailOtp:E,socialProviders:F}=Ne(),j={...Ae,...A},h=s=>{try{P?.(s)}catch{}},p=r==="compact",Z=u?F.providers.filter(s=>u.includes(s.name)):F.providers,ee=F.enabled&&Z.length>0,ne=O.enabled&&(d||!E.enabled&&!ee),te=F.enabled&&F.providers.length>0&&!ee&&!E.enabled&&!ne?F.providers:Z,I=F.enabled&&te.length>0,C=O.enabled&&(d||!E.enabled&&!I),[c,N]=b.useState(""),[_,x]=b.useState(""),[re,ge]=b.useState(""),[oe,le]=b.useState(""),[W,de]=b.useState(!1),[ce,_e]=b.useState(()=>E.enabled?"emailOtp":globalThis.localStorage?.getItem("hasLoggedIn")!=="true"?"signUp":"signIn"),[y,U]=b.useState(""),[he,pe]=b.useState(!1),[ke,me]=b.useState(null),a={...Be,...g},Y=b.useId(),q=`${Y}-email`,D=`${Y}-email-error`,fe=`${Y}-name`,xe=`${Y}-password`,be=`${Y}-otp`,w=ce==="signUp",R=ce==="forgotPassword",k=ce==="emailOtp",J=ae({mutationFn:async({email:s,password:n,name:L})=>{try{const H=await j.submitEmailPassword({mode:w?"sign_up":"sign_in",email:s,password:n,name:L});if(H.error)throw new Error(H.error.message||(w?a.signUpFailed:a.signInFailed));return H}catch(H){throw H instanceof Error?H:new Error(a.authenticationFailed)}},onMutate:()=>{h({type:"started",method:"email_password",mode:w?"sign_up":"sign_in"})},onSuccess:()=>{h({type:"succeeded",method:"email_password",mode:w?"sign_up":"sign_in"}),globalThis.localStorage?.setItem("hasLoggedIn","true"),j.onAuthenticated(i??e)},onError:s=>{h({type:"failed",method:"email_password",mode:w?"sign_up":"sign_in",stage:"authenticate",error:s instanceof Error?s.message:String(s)}),M(w?"user_signup_failed":"user_signin_failed",{error:s instanceof Error?s.message:String(s)})}}),K=ae({mutationFn:async({email:s})=>{const n=await j.requestPasswordReset({email:s,redirectTo:"/reset-password"});if(n.error)throw new Error(n.error.message||a.resetEmailFailed);return n},onSuccess:()=>{M("password_reset_requested"),pe(!0)},onError:s=>{M("password_reset_request_failed",{error:s instanceof Error?s.message:String(s)})}}),z=ae({mutationFn:async({email:s})=>{const n=await j.sendOtp({email:s});if(n.error)throw new Error(n.error.message||a.otpSendFailed);return n},onMutate:()=>{h({type:"started",method:"email_otp"})},onSuccess:()=>{h({type:"otp_sent",method:"email_otp"}),M("email_otp_sent"),de(!0)},onError:s=>{h({type:"failed",method:"email_otp",stage:"send_otp",error:s instanceof Error?s.message:String(s)}),M("email_otp_send_failed",{error:s instanceof Error?s.message:String(s)})}}),B=ae({mutationFn:async({email:s,otp:n})=>{const L=await j.submitOtp({email:s,otp:n});if(L.error)throw new Error(L.error.message||a.invalidCode);return L},onMutate:()=>{h({type:"otp_submitted",method:"email_otp"})},onSuccess:()=>{h({type:"succeeded",method:"email_otp"}),globalThis.localStorage?.setItem("hasLoggedIn","true"),j.onAuthenticated(i??e)},onError:s=>{h({type:"failed",method:"email_otp",stage:"verify_otp",error:s instanceof Error?s.message:String(s)}),M("email_otp_verify_failed",{error:s instanceof Error?s.message:String(s)})}}),se=s=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(s),ue=()=>{c.trim()&&!se(c)&&U(a.invalidEmail)},Le=s=>{if(s.preventDefault(),!se(c)){U(a.invalidEmail),h({type:"failed",method:"email_password",mode:w?"sign_up":"sign_in",stage:"validation",error:"invalid_email"});return}J.mutate({email:c,password:_,name:re})},Oe=s=>{if(s.preventDefault(),!se(c)){U(a.invalidEmail);return}K.mutate({email:c})},Re=s=>{if(s.preventDefault(),!se(c)){U(a.invalidEmail),h({type:"failed",method:"email_otp",stage:"validation",error:"invalid_email"});return}z.mutate({email:c})},Te=s=>{s.preventDefault(),B.mutate({email:c,otp:oe})},V=s=>n=>{s(n.target.value),ve&&J.reset(),we&&K.reset(),ye&&(z.reset(),B.reset()),s===N&&y&&U("")},Q=s=>{_e(s),ge(""),le(""),de(!1),U(""),pe(!1),me(null),J.reset(),K.reset(),z.reset(),B.reset()},m=J.isPending||K.isPending||z.isPending||B.isPending,ve=J.error,we=K.error,ye=z.error||B.error,T=w?c.trim()&&_.trim()&&re.trim():R?c.trim():k?W?oe.trim():c.trim():c.trim()&&_.trim(),$e=s=>{if(!s)return null;const n=s.message.toLowerCase();return n.includes("unauthorized")||n.includes("401")?a.invalidEmailOrPassword:n.includes("already exists")||n.includes("409")?a.accountExists:n.includes("network")||n.includes("fetch")?a.networkError:n.includes("rate limit")||n.includes("429")?a.tooManyAttempts:n.includes("invalid")&&n.includes("otp")?a.invalidOrExpiredCode:s.message||a.genericError},Ee=ve||we||ye||ke,Me=async s=>{h({type:"started",method:"social",provider:s}),me(null);try{const n=await j.socialSignIn({provider:s,callbackURL:i??e});if(n.error)throw new Error(n.error.message||a.authenticationFailed)}catch(n){const L=n instanceof Error?n.message:String(n);h({type:"failed",method:"social",provider:s,stage:"redirect",error:L}),M("social_signin_failed",{provider:s,error:L}),me(n instanceof Error?n:new Error(L))}},We=R?a.resetPasswordTitle:k&&W?a.verificationCodeTitle:o??a.welcomeTitle,Se=R?a.resetPasswordSubtitle:k&&W?a.codeSentTo(c):l===void 0?a.defaultSubtitle:l;return t.jsxs("div",{className:f("grid w-full",p?"gap-5":"gap-10"),children:[v??t.jsxs("div",{children:[t.jsx("img",{src:"/logos/deco logo.svg",alt:"Deco",className:"h-12 w-12 dark:hidden"}),t.jsx("img",{src:"/logos/deco logo negative.svg",alt:"Deco",className:"h-12 w-12 hidden dark:block"})]}),t.jsxs("div",{className:"space-y-2",children:[t.jsx("h1",{className:f("font-medium",p?"text-xl leading-7":"text-2xl leading-8"),children:We}),Se&&t.jsx("p",{className:f("text-muted-foreground",p?"text-sm leading-5":"text-base leading-6"),children:Se})]}),Ee&&t.jsx("div",{role:"alert",className:"rounded-xl bg-destructive/10 p-3 text-sm text-destructive text-center",children:$e(Ee)}),he&&t.jsx("div",{role:"status",className:"rounded-xl bg-success/10 p-3 text-sm text-success text-center",children:a.resetEmailSent}),!R&&!(k&&W)&&I&&t.jsx("div",{className:"grid gap-2",children:te.map(s=>t.jsxs(X,{type:"button",variant:"outline",size:p?"lg":"xl",disabled:m,onClick:()=>{Me(s.name)},className:f("flex w-full items-center justify-center gap-3 bg-background px-3 text-sm font-medium text-foreground card-shadow transition-colors hover:bg-accent hover:text-accent-foreground disabled:pointer-events-none disabled:opacity-50 dark:bg-input/30 dark:hover:bg-input/50 rounded-lg",p?"h-11":"h-12"),children:[s.icon&&t.jsx("img",{src:s.icon,alt:"",className:f("h-5 w-5",s.name==="github"&&"dark:invert"),"aria-hidden":"true"}),a.continueWith(s.name.charAt(0).toUpperCase()+s.name.slice(1))]},s.name))}),!R&&!(k&&W)&&I&&(C||E.enabled)&&t.jsxs("div",{className:f("flex items-center gap-2.5",p?"my-0":"-my-4"),children:[t.jsx("div",{className:"h-px flex-1 bg-border"}),t.jsx("span",{className:f("text-muted-foreground",p?"text-sm":"text-base"),children:a.divider}),t.jsx("div",{className:"h-px flex-1 bg-border"})]}),k&&E.enabled&&t.jsx(t.Fragment,{children:W?t.jsxs("form",{onSubmit:Te,className:f("grid gap-2",p&&"sm:grid-cols-[minmax(0,1fr)_auto] sm:items-start"),children:[t.jsxs("div",{className:"grid gap-2",children:[t.jsx("label",{htmlFor:be,className:f("text-sm font-medium text-foreground",p&&"sr-only"),children:a.verificationCodeLabel}),t.jsx(G,{id:be,type:"text",placeholder:a.enterCodePlaceholder,value:oe,onChange:V(le),required:!0,disabled:m,autoFocus:!0,inputMode:"numeric",autoComplete:"one-time-code",className:"h-11 rounded-lg"})]}),t.jsx(X,{type:"submit",size:p?"lg":"xl",disabled:m||!T,className:f(p?"sm:w-auto":"w-full"),children:m?a.verifying:a.verify}),t.jsx("button",{type:"button",onClick:()=>{de(!1),le(""),z.reset(),B.reset()},disabled:m,className:f("mt-1 text-sm text-muted-foreground transition-colors hover:text-foreground",p&&"sm:col-span-2"),children:a.useDifferentEmail})]}):t.jsxs("form",{onSubmit:Re,className:f("grid gap-2",p&&"sm:grid-cols-[minmax(0,1fr)_auto] sm:items-start"),children:[t.jsxs("div",{className:"grid gap-2",children:[t.jsx("label",{htmlFor:q,className:f("text-sm font-medium text-foreground",p&&"sr-only"),children:a.emailLabel}),t.jsx(G,{id:q,type:"email",placeholder:a.emailPlaceholder,value:c,onChange:V(N),onBlur:ue,required:!0,disabled:m,autoComplete:"email","aria-invalid":!!y,"aria-describedby":y?D:void 0,className:"h-11 rounded-lg"}),y&&t.jsx("p",{id:D,role:"alert",className:"text-xs text-destructive",children:y})]}),t.jsx(X,{type:"submit",size:p?"lg":"xl",disabled:m||!T,className:f(p?"sm:w-auto":"w-full"),children:m?a.sending:a.sendCode})]})}),R&&C&&!he&&t.jsxs("form",{onSubmit:Oe,className:"grid gap-4",children:[t.jsxs("div",{children:[t.jsx("label",{htmlFor:q,className:"block text-sm font-medium text-foreground mb-2",children:a.emailLabel}),t.jsx(G,{id:q,type:"email",placeholder:"you@example.com",value:c,onChange:V(N),onBlur:ue,required:!0,disabled:m,autoComplete:"email","aria-invalid":!!y,"aria-describedby":y?D:void 0,className:"h-11 rounded-lg"}),y&&t.jsx("p",{id:D,role:"alert",className:"text-xs text-destructive mt-1.5",children:y})]}),t.jsx(X,{type:"submit",disabled:m||!T,className:"w-full font-semibold",size:"xl",children:m?a.sending:a.sendResetLink})]}),!R&&!k&&C&&t.jsxs("form",{onSubmit:Le,className:"grid gap-5",children:[w&&t.jsxs("div",{children:[t.jsx("label",{htmlFor:fe,className:"block text-sm font-medium text-foreground mb-2",children:a.nameLabel}),t.jsx(G,{id:fe,type:"text",placeholder:a.namePlaceholder,value:re,onChange:V(ge),required:!0,disabled:m,autoComplete:"name",className:"h-11 rounded-lg"})]}),t.jsxs("div",{children:[t.jsx("label",{htmlFor:q,className:"block text-sm font-medium text-foreground mb-2",children:a.emailLabel}),t.jsx(G,{id:q,type:"email",placeholder:"you@example.com",value:c,onChange:V(N),onBlur:ue,required:!0,disabled:m,autoComplete:"email","aria-invalid":!!y,"aria-describedby":y?D:void 0,className:"h-11 rounded-lg"}),y&&t.jsx("p",{id:D,role:"alert",className:"text-xs text-destructive mt-1.5",children:y})]}),t.jsxs("div",{children:[t.jsxs("div",{className:"flex items-center justify-between mb-2",children:[t.jsx("label",{htmlFor:xe,className:"block text-sm font-medium text-foreground",children:a.passwordLabel}),!w&&S.enabled&&t.jsx("button",{type:"button",onClick:()=>Q("forgotPassword"),className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:a.forgotPassword})]}),t.jsx(G,{id:xe,type:"password",placeholder:"••••••••",value:_,onChange:V(x),required:!0,disabled:m,autoComplete:w?"new-password":"current-password",className:"h-11 rounded-lg"})]}),t.jsx("div",{className:f("overflow-hidden transition-all duration-300 ease-[cubic-bezier(0.075,0.82,0.165,1)]",T?"max-h-[100px] opacity-100 translate-y-0":"max-h-0 opacity-0 -translate-y-2"),children:t.jsx("div",{className:f("p-1",!T&&"pointer-events-none"),children:t.jsx(X,{type:"submit",disabled:m||!T,className:f("w-full font-semibold"),size:"xl","aria-hidden":!T,children:m?w?a.creatingAccount:a.signingIn:a.continue})})})]}),t.jsx("div",{className:"text-sm text-muted-foreground",children:R?t.jsx("button",{type:"button",onClick:()=>Q("signIn"),disabled:m,className:ie,children:a.backToSignIn}):k&&C?t.jsx("button",{type:"button",onClick:()=>Q("signIn"),disabled:m,className:ie,children:a.signInWithPassword}):!k&&C?t.jsxs(t.Fragment,{children:[w?a.alreadyHaveAccount:a.dontHaveAccount,t.jsx("button",{type:"button",onClick:()=>Q(w?"signIn":"signUp"),disabled:m,className:ie,children:w?a.signIn:a.signUp}),E.enabled&&t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"mx-2",children:"·"}),t.jsx("button",{type:"button",onClick:()=>Q("emailOtp"),disabled:m,className:ie,children:a.signInWithEmailCode})]})]}):null})]})}class je{constructor(e){this.response=e}response}function He(i){return i.startsWith("/")&&!i.startsWith("//")?i:"/"}function Ge({redirectTo:i,onAuthEvent:e}){const o=Ce(),[l,v]=b.useState(null),g=b.useEffectEvent(r=>{try{e?.(r)}catch{}});return b.useEffect(()=>{let r=!1;return(async()=>{g({type:"started",method:"local"});try{let u;try{u=await ze(async()=>{const d=await fetch("/api/auth/custom/local-session",{method:"POST",credentials:"include"});if(d.status>=500)throw new je(d);return d},{maxAttempts:5,minTimeout:1e3,maxTimeout:1e4,multiplier:2,jitter:0})}catch(d){if(d instanceof Pe&&d.cause instanceof je)u=d.cause.response;else throw d}if(!u.ok){const d=await u.json().catch(()=>({}));throw new Error(d?.error||o("common.authEntry.autoLoginFailed"))}r||(g({type:"succeeded",method:"local"}),window.location.href=He(i))}catch(u){r||(g({type:"failed",method:"local",stage:"authenticate",error:u instanceof Error?u.message:String(u)}),v(u instanceof Error?u.message:o("common.authEntry.autoLoginFailed")))}})(),()=>{r=!0}},[i]),l?t.jsx("div",{className:"flex min-h-screen items-center justify-center",children:t.jsxs("div",{className:"text-center",children:[t.jsx("p",{className:"text-destructive mb-2",children:o("common.authEntry.autoLoginFailedWithError",{error:l})}),t.jsx("p",{className:"text-muted-foreground text-sm",children:o("common.authEntry.tryRestartingServer")})]})}):t.jsx(Fe,{})}function Fe(){const i=Ie.c(1);let e;return i[0]===Symbol.for("react.memo_cache_sentinel")?(e=t.jsx("div",{className:"flex min-h-screen items-center justify-center",children:t.jsx(Ue,{size:"lg",label:"Signing in"})}),i[0]=e):e=i[0],e}function Ye({callbackURL:i,providerId:e,ssoSignIn:o,onAuthEvent:l}){const v=b.useEffectEvent(r=>{try{l?.(r)}catch{}}),g=b.useEffectEvent(o);return b.useEffect(()=>{(async()=>{v({type:"started",method:"sso",provider:e});try{const r=await g({providerId:e,callbackURL:i});if(r.error)throw new Error(r.error.message||"SSO redirect failed")}catch(r){v({type:"failed",method:"sso",provider:e,stage:"redirect",error:r instanceof Error?r.message:String(r)})}})()},[e,i]),t.jsx(Fe,{})}function Xe(i){const e=Ie.c(25),{callbackUrl:o,redirectUrl:l,allowAutoLogin:v,title:g,subtitle:r,brand:u,copy:d,variant:P,allowedSocialProviders:A,allowPassword:O,onAuthEvent:S,onAuthenticated:E}=i,F=v===void 0?!0:v,j=Ce(),{sso:h,emailAndPassword:p,magicLink:Z,emailOtp:ee,socialProviders:ne,localMode:te}=Ne(),I=l||o;let C;e[0]!==E?(C=E?{onAuthenticated:E}:void 0,e[0]=E,e[1]=C):C=e[1];const c=C;if(te&&F){let x;return e[2]!==S||e[3]!==I?(x=t.jsx(Ge,{redirectTo:I,onAuthEvent:S}),e[2]=S,e[3]=I,e[4]=x):x=e[4],x}if(h.enabled){let x;return e[5]!==S||e[6]!==I||e[7]!==h.providerId?(x=t.jsx(Ye,{callbackURL:I,providerId:h.providerId,ssoSignIn:Ae.ssoSignIn,onAuthEvent:S}),e[5]=S,e[6]=I,e[7]=h.providerId,e[8]=x):x=e[8],x}if(p.enabled||Z.enabled||ee.enabled||ne.enabled){let x;return e[9]!==O||e[10]!==A||e[11]!==u||e[12]!==o||e[13]!==c||e[14]!==d||e[15]!==S||e[16]!==l||e[17]!==r||e[18]!==g||e[19]!==P?(x=t.jsx(Ve,{redirectUrl:l,callbackUrl:o,title:g,subtitle:r,brand:u,copy:d,variant:P,allowedSocialProviders:A,allowPassword:O,onAuthEvent:S,actions:c}),e[9]=O,e[10]=A,e[11]=u,e[12]=o,e[13]=c,e[14]=d,e[15]=S,e[16]=l,e[17]=r,e[18]=g,e[19]=P,e[20]=x):x=e[20],x}let N;e[21]!==j?(N=j("common.authEntry.noLoginOptions"),e[21]=j,e[22]=N):N=e[22];let _;return e[23]!==N?(_=t.jsx("div",{children:N}),e[23]=N,e[24]=_):_=e[24],_}export{Fe as A,Xe as a};
1
+ import{a as $,$ as Ne,r as b,e as ae,y as M,j as t,l as f,B as X,I as G,c as Ie,b as Ce,h as Ue}from"./index-Bq_h7Umn.js";import{e as qe}from"./backoff-CrEUbyZT.js";import{d as De}from"./delay-CnY5UFtP.js";class Pe extends Error{constructor(e,o){super(`Retrying exceeded the maxAttempts (${o}).`),this.name="RetryError",this.cause=e}}async function ze(i,e){const{multiplier:o=2,maxTimeout:l=6e4,maxAttempts:v=5,minTimeout:g=1e3,jitter:r=1,isRetriable:u=()=>!0,signal:d}=e??{};if(!Number.isInteger(v)||v<1)throw new RangeError(`Cannot retry as 'maxAttempts' must be a positive integer: current value is ${v}`);if(!Number.isFinite(o)||o<1)throw new RangeError(`Cannot retry as 'multiplier' must be a finite number >= 1: current value is ${o}`);if(Number.isNaN(l)||l<=0)throw new RangeError(`Cannot retry as 'maxTimeout' must be a positive number: current value is ${l}`);if(Number.isNaN(g)||g<0)throw new RangeError(`Cannot retry as 'minTimeout' must be >= 0: current value is ${g}`);if(g>l)throw new RangeError(`Cannot retry as 'minTimeout' must be <= 'maxTimeout': current values 'minTimeout=${g}', 'maxTimeout=${l}'`);if(Number.isNaN(r)||r<0||r>1)throw new RangeError(`Cannot retry as 'jitter' must be between 0 and 1: current value is ${r}`);let P=0;for(;;){d?.throwIfAborted();try{return await i()}catch(A){if(!u(A))throw A;if(P+1>=v)throw new Pe(A,v);const O=qe(l,g,P,o,r);await De(O,d?{signal:d}:void 0)}P++}}const Ae={submitEmailPassword:({mode:i,email:e,password:o,name:l})=>i==="sign_up"?$.signUp.email({email:e,password:o,name:l||""}):$.signIn.email({email:e,password:o}),requestPasswordReset:({email:i,redirectTo:e})=>$.requestPasswordReset({email:i,redirectTo:e}),sendOtp:({email:i})=>$.emailOtp.sendVerificationOtp({email:i,type:"sign-in"}),submitOtp:({email:i,otp:e})=>$.signIn.emailOtp({email:i,otp:e}),socialSignIn:({provider:i,callbackURL:e})=>$.signIn.social({provider:i,callbackURL:e}),ssoSignIn:({providerId:i,callbackURL:e})=>$.signIn.sso({providerId:i,callbackURL:e}),onAuthenticated:i=>{window.location.href=i}},ie="font-medium text-[#8CAA25] hover:underline disabled:opacity-50",Be={signUpFailed:"Sign up failed",signInFailed:"Sign in failed",authenticationFailed:"Authentication failed",resetEmailFailed:"Failed to send reset email",otpSendFailed:"Failed to send code",invalidCode:"Invalid code",invalidEmail:"Invalid email address",invalidEmailOrPassword:"Invalid email or password. Please try again.",accountExists:"An account with this email already exists. Try signing in instead.",networkError:"Network error. Please check your connection and try again.",tooManyAttempts:"Too many attempts. Please wait a moment and try again.",invalidOrExpiredCode:"Invalid or expired code. Please try again.",genericError:"An error occurred. Please try again.",resetPasswordTitle:"Reset your password",verificationCodeTitle:"Enter verification code",welcomeTitle:"Welcome to deco",resetPasswordSubtitle:"We'll send you a reset link",codeSentTo:i=>`Code sent to ${i}`,defaultSubtitle:"Sign in or create a new account",resetEmailSent:"Check your email for a password reset link.",continueWith:i=>`Continue with ${i}`,divider:"or",emailLabel:"Email",emailPlaceholder:"Email address",sending:"Sending...",sendCode:"Send code",verificationCodeLabel:"Verification code",enterCodePlaceholder:"Enter code",verifying:"Verifying...",verify:"Verify",useDifferentEmail:"Use a different email",sendResetLink:"Send reset link",nameLabel:"Name",namePlaceholder:"Your name",passwordLabel:"Password",forgotPassword:"Forgot password?",creatingAccount:"Creating account...",signingIn:"Signing in...",continue:"Continue",backToSignIn:"Back to sign in",signInWithPassword:"Sign in with password instead",alreadyHaveAccount:"Already have an account? ",dontHaveAccount:"Don't have an account? ",signIn:"Sign in",signUp:"Sign up",signInWithEmailCode:"Sign in with email code"};function Ve({redirectUrl:i,callbackUrl:e="/",title:o,subtitle:l,brand:v,copy:g,variant:r="default",allowedSocialProviders:u,allowPassword:d=!0,onAuthEvent:P,actions:A}){const{emailAndPassword:O,resetPassword:S,emailOtp:E,socialProviders:F}=Ne(),j={...Ae,...A},h=s=>{try{P?.(s)}catch{}},p=r==="compact",Z=u?F.providers.filter(s=>u.includes(s.name)):F.providers,ee=F.enabled&&Z.length>0,ne=O.enabled&&(d||!E.enabled&&!ee),te=F.enabled&&F.providers.length>0&&!ee&&!E.enabled&&!ne?F.providers:Z,I=F.enabled&&te.length>0,C=O.enabled&&(d||!E.enabled&&!I),[c,N]=b.useState(""),[_,x]=b.useState(""),[re,ge]=b.useState(""),[oe,le]=b.useState(""),[W,de]=b.useState(!1),[ce,_e]=b.useState(()=>E.enabled?"emailOtp":globalThis.localStorage?.getItem("hasLoggedIn")!=="true"?"signUp":"signIn"),[y,U]=b.useState(""),[he,pe]=b.useState(!1),[ke,me]=b.useState(null),a={...Be,...g},Y=b.useId(),q=`${Y}-email`,D=`${Y}-email-error`,fe=`${Y}-name`,xe=`${Y}-password`,be=`${Y}-otp`,w=ce==="signUp",R=ce==="forgotPassword",k=ce==="emailOtp",J=ae({mutationFn:async({email:s,password:n,name:L})=>{try{const H=await j.submitEmailPassword({mode:w?"sign_up":"sign_in",email:s,password:n,name:L});if(H.error)throw new Error(H.error.message||(w?a.signUpFailed:a.signInFailed));return H}catch(H){throw H instanceof Error?H:new Error(a.authenticationFailed)}},onMutate:()=>{h({type:"started",method:"email_password",mode:w?"sign_up":"sign_in"})},onSuccess:()=>{h({type:"succeeded",method:"email_password",mode:w?"sign_up":"sign_in"}),globalThis.localStorage?.setItem("hasLoggedIn","true"),j.onAuthenticated(i??e)},onError:s=>{h({type:"failed",method:"email_password",mode:w?"sign_up":"sign_in",stage:"authenticate",error:s instanceof Error?s.message:String(s)}),M(w?"user_signup_failed":"user_signin_failed",{error:s instanceof Error?s.message:String(s)})}}),K=ae({mutationFn:async({email:s})=>{const n=await j.requestPasswordReset({email:s,redirectTo:"/reset-password"});if(n.error)throw new Error(n.error.message||a.resetEmailFailed);return n},onSuccess:()=>{M("password_reset_requested"),pe(!0)},onError:s=>{M("password_reset_request_failed",{error:s instanceof Error?s.message:String(s)})}}),z=ae({mutationFn:async({email:s})=>{const n=await j.sendOtp({email:s});if(n.error)throw new Error(n.error.message||a.otpSendFailed);return n},onMutate:()=>{h({type:"started",method:"email_otp"})},onSuccess:()=>{h({type:"otp_sent",method:"email_otp"}),M("email_otp_sent"),de(!0)},onError:s=>{h({type:"failed",method:"email_otp",stage:"send_otp",error:s instanceof Error?s.message:String(s)}),M("email_otp_send_failed",{error:s instanceof Error?s.message:String(s)})}}),B=ae({mutationFn:async({email:s,otp:n})=>{const L=await j.submitOtp({email:s,otp:n});if(L.error)throw new Error(L.error.message||a.invalidCode);return L},onMutate:()=>{h({type:"otp_submitted",method:"email_otp"})},onSuccess:()=>{h({type:"succeeded",method:"email_otp"}),globalThis.localStorage?.setItem("hasLoggedIn","true"),j.onAuthenticated(i??e)},onError:s=>{h({type:"failed",method:"email_otp",stage:"verify_otp",error:s instanceof Error?s.message:String(s)}),M("email_otp_verify_failed",{error:s instanceof Error?s.message:String(s)})}}),se=s=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(s),ue=()=>{c.trim()&&!se(c)&&U(a.invalidEmail)},Le=s=>{if(s.preventDefault(),!se(c)){U(a.invalidEmail),h({type:"failed",method:"email_password",mode:w?"sign_up":"sign_in",stage:"validation",error:"invalid_email"});return}J.mutate({email:c,password:_,name:re})},Oe=s=>{if(s.preventDefault(),!se(c)){U(a.invalidEmail);return}K.mutate({email:c})},Re=s=>{if(s.preventDefault(),!se(c)){U(a.invalidEmail),h({type:"failed",method:"email_otp",stage:"validation",error:"invalid_email"});return}z.mutate({email:c})},Te=s=>{s.preventDefault(),B.mutate({email:c,otp:oe})},V=s=>n=>{s(n.target.value),ve&&J.reset(),we&&K.reset(),ye&&(z.reset(),B.reset()),s===N&&y&&U("")},Q=s=>{_e(s),ge(""),le(""),de(!1),U(""),pe(!1),me(null),J.reset(),K.reset(),z.reset(),B.reset()},m=J.isPending||K.isPending||z.isPending||B.isPending,ve=J.error,we=K.error,ye=z.error||B.error,T=w?c.trim()&&_.trim()&&re.trim():R?c.trim():k?W?oe.trim():c.trim():c.trim()&&_.trim(),$e=s=>{if(!s)return null;const n=s.message.toLowerCase();return n.includes("unauthorized")||n.includes("401")?a.invalidEmailOrPassword:n.includes("already exists")||n.includes("409")?a.accountExists:n.includes("network")||n.includes("fetch")?a.networkError:n.includes("rate limit")||n.includes("429")?a.tooManyAttempts:n.includes("invalid")&&n.includes("otp")?a.invalidOrExpiredCode:s.message||a.genericError},Ee=ve||we||ye||ke,Me=async s=>{h({type:"started",method:"social",provider:s}),me(null);try{const n=await j.socialSignIn({provider:s,callbackURL:i??e});if(n.error)throw new Error(n.error.message||a.authenticationFailed)}catch(n){const L=n instanceof Error?n.message:String(n);h({type:"failed",method:"social",provider:s,stage:"redirect",error:L}),M("social_signin_failed",{provider:s,error:L}),me(n instanceof Error?n:new Error(L))}},We=R?a.resetPasswordTitle:k&&W?a.verificationCodeTitle:o??a.welcomeTitle,Se=R?a.resetPasswordSubtitle:k&&W?a.codeSentTo(c):l===void 0?a.defaultSubtitle:l;return t.jsxs("div",{className:f("grid w-full",p?"gap-5":"gap-10"),children:[v??t.jsxs("div",{children:[t.jsx("img",{src:"/logos/deco logo.svg",alt:"Deco",className:"h-12 w-12 dark:hidden"}),t.jsx("img",{src:"/logos/deco logo negative.svg",alt:"Deco",className:"h-12 w-12 hidden dark:block"})]}),t.jsxs("div",{className:"space-y-2",children:[t.jsx("h1",{className:f("font-medium",p?"text-xl leading-7":"text-2xl leading-8"),children:We}),Se&&t.jsx("p",{className:f("text-muted-foreground",p?"text-sm leading-5":"text-base leading-6"),children:Se})]}),Ee&&t.jsx("div",{role:"alert",className:"rounded-xl bg-destructive/10 p-3 text-sm text-destructive text-center",children:$e(Ee)}),he&&t.jsx("div",{role:"status",className:"rounded-xl bg-success/10 p-3 text-sm text-success text-center",children:a.resetEmailSent}),!R&&!(k&&W)&&I&&t.jsx("div",{className:"grid gap-2",children:te.map(s=>t.jsxs(X,{type:"button",variant:"outline",size:p?"lg":"xl",disabled:m,onClick:()=>{Me(s.name)},className:f("flex w-full items-center justify-center gap-3 bg-background px-3 text-sm font-medium text-foreground card-shadow transition-colors hover:bg-accent hover:text-accent-foreground disabled:pointer-events-none disabled:opacity-50 dark:bg-input/30 dark:hover:bg-input/50 rounded-lg",p?"h-11":"h-12"),children:[s.icon&&t.jsx("img",{src:s.icon,alt:"",className:f("h-5 w-5",s.name==="github"&&"dark:invert"),"aria-hidden":"true"}),a.continueWith(s.name.charAt(0).toUpperCase()+s.name.slice(1))]},s.name))}),!R&&!(k&&W)&&I&&(C||E.enabled)&&t.jsxs("div",{className:f("flex items-center gap-2.5",p?"my-0":"-my-4"),children:[t.jsx("div",{className:"h-px flex-1 bg-border"}),t.jsx("span",{className:f("text-muted-foreground",p?"text-sm":"text-base"),children:a.divider}),t.jsx("div",{className:"h-px flex-1 bg-border"})]}),k&&E.enabled&&t.jsx(t.Fragment,{children:W?t.jsxs("form",{onSubmit:Te,className:f("grid gap-2",p&&"sm:grid-cols-[minmax(0,1fr)_auto] sm:items-start"),children:[t.jsxs("div",{className:"grid gap-2",children:[t.jsx("label",{htmlFor:be,className:f("text-sm font-medium text-foreground",p&&"sr-only"),children:a.verificationCodeLabel}),t.jsx(G,{id:be,type:"text",placeholder:a.enterCodePlaceholder,value:oe,onChange:V(le),required:!0,disabled:m,autoFocus:!0,inputMode:"numeric",autoComplete:"one-time-code",className:"h-11 rounded-lg"})]}),t.jsx(X,{type:"submit",size:p?"lg":"xl",disabled:m||!T,className:f(p?"sm:w-auto":"w-full"),children:m?a.verifying:a.verify}),t.jsx("button",{type:"button",onClick:()=>{de(!1),le(""),z.reset(),B.reset()},disabled:m,className:f("mt-1 text-sm text-muted-foreground transition-colors hover:text-foreground",p&&"sm:col-span-2"),children:a.useDifferentEmail})]}):t.jsxs("form",{onSubmit:Re,className:f("grid gap-2",p&&"sm:grid-cols-[minmax(0,1fr)_auto] sm:items-start"),children:[t.jsxs("div",{className:"grid gap-2",children:[t.jsx("label",{htmlFor:q,className:f("text-sm font-medium text-foreground",p&&"sr-only"),children:a.emailLabel}),t.jsx(G,{id:q,type:"email",placeholder:a.emailPlaceholder,value:c,onChange:V(N),onBlur:ue,required:!0,disabled:m,autoComplete:"email","aria-invalid":!!y,"aria-describedby":y?D:void 0,className:"h-11 rounded-lg"}),y&&t.jsx("p",{id:D,role:"alert",className:"text-xs text-destructive",children:y})]}),t.jsx(X,{type:"submit",size:p?"lg":"xl",disabled:m||!T,className:f(p?"sm:w-auto":"w-full"),children:m?a.sending:a.sendCode})]})}),R&&C&&!he&&t.jsxs("form",{onSubmit:Oe,className:"grid gap-4",children:[t.jsxs("div",{children:[t.jsx("label",{htmlFor:q,className:"block text-sm font-medium text-foreground mb-2",children:a.emailLabel}),t.jsx(G,{id:q,type:"email",placeholder:"you@example.com",value:c,onChange:V(N),onBlur:ue,required:!0,disabled:m,autoComplete:"email","aria-invalid":!!y,"aria-describedby":y?D:void 0,className:"h-11 rounded-lg"}),y&&t.jsx("p",{id:D,role:"alert",className:"text-xs text-destructive mt-1.5",children:y})]}),t.jsx(X,{type:"submit",disabled:m||!T,className:"w-full font-semibold",size:"xl",children:m?a.sending:a.sendResetLink})]}),!R&&!k&&C&&t.jsxs("form",{onSubmit:Le,className:"grid gap-5",children:[w&&t.jsxs("div",{children:[t.jsx("label",{htmlFor:fe,className:"block text-sm font-medium text-foreground mb-2",children:a.nameLabel}),t.jsx(G,{id:fe,type:"text",placeholder:a.namePlaceholder,value:re,onChange:V(ge),required:!0,disabled:m,autoComplete:"name",className:"h-11 rounded-lg"})]}),t.jsxs("div",{children:[t.jsx("label",{htmlFor:q,className:"block text-sm font-medium text-foreground mb-2",children:a.emailLabel}),t.jsx(G,{id:q,type:"email",placeholder:"you@example.com",value:c,onChange:V(N),onBlur:ue,required:!0,disabled:m,autoComplete:"email","aria-invalid":!!y,"aria-describedby":y?D:void 0,className:"h-11 rounded-lg"}),y&&t.jsx("p",{id:D,role:"alert",className:"text-xs text-destructive mt-1.5",children:y})]}),t.jsxs("div",{children:[t.jsxs("div",{className:"flex items-center justify-between mb-2",children:[t.jsx("label",{htmlFor:xe,className:"block text-sm font-medium text-foreground",children:a.passwordLabel}),!w&&S.enabled&&t.jsx("button",{type:"button",onClick:()=>Q("forgotPassword"),className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:a.forgotPassword})]}),t.jsx(G,{id:xe,type:"password",placeholder:"••••••••",value:_,onChange:V(x),required:!0,disabled:m,autoComplete:w?"new-password":"current-password",className:"h-11 rounded-lg"})]}),t.jsx("div",{className:f("overflow-hidden transition-all duration-300 ease-[cubic-bezier(0.075,0.82,0.165,1)]",T?"max-h-[100px] opacity-100 translate-y-0":"max-h-0 opacity-0 -translate-y-2"),children:t.jsx("div",{className:f("p-1",!T&&"pointer-events-none"),children:t.jsx(X,{type:"submit",disabled:m||!T,className:f("w-full font-semibold"),size:"xl","aria-hidden":!T,children:m?w?a.creatingAccount:a.signingIn:a.continue})})})]}),t.jsx("div",{className:"text-sm text-muted-foreground",children:R?t.jsx("button",{type:"button",onClick:()=>Q("signIn"),disabled:m,className:ie,children:a.backToSignIn}):k&&C?t.jsx("button",{type:"button",onClick:()=>Q("signIn"),disabled:m,className:ie,children:a.signInWithPassword}):!k&&C?t.jsxs(t.Fragment,{children:[w?a.alreadyHaveAccount:a.dontHaveAccount,t.jsx("button",{type:"button",onClick:()=>Q(w?"signIn":"signUp"),disabled:m,className:ie,children:w?a.signIn:a.signUp}),E.enabled&&t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"mx-2",children:"·"}),t.jsx("button",{type:"button",onClick:()=>Q("emailOtp"),disabled:m,className:ie,children:a.signInWithEmailCode})]})]}):null})]})}class je{constructor(e){this.response=e}response}function He(i){return i.startsWith("/")&&!i.startsWith("//")?i:"/"}function Ge({redirectTo:i,onAuthEvent:e}){const o=Ce(),[l,v]=b.useState(null),g=b.useEffectEvent(r=>{try{e?.(r)}catch{}});return b.useEffect(()=>{let r=!1;return(async()=>{g({type:"started",method:"local"});try{let u;try{u=await ze(async()=>{const d=await fetch("/api/auth/custom/local-session",{method:"POST",credentials:"include"});if(d.status>=500)throw new je(d);return d},{maxAttempts:5,minTimeout:1e3,maxTimeout:1e4,multiplier:2,jitter:0})}catch(d){if(d instanceof Pe&&d.cause instanceof je)u=d.cause.response;else throw d}if(!u.ok){const d=await u.json().catch(()=>({}));throw new Error(d?.error||o("common.authEntry.autoLoginFailed"))}r||(g({type:"succeeded",method:"local"}),window.location.href=He(i))}catch(u){r||(g({type:"failed",method:"local",stage:"authenticate",error:u instanceof Error?u.message:String(u)}),v(u instanceof Error?u.message:o("common.authEntry.autoLoginFailed")))}})(),()=>{r=!0}},[i]),l?t.jsx("div",{className:"flex min-h-screen items-center justify-center",children:t.jsxs("div",{className:"text-center",children:[t.jsx("p",{className:"text-destructive mb-2",children:o("common.authEntry.autoLoginFailedWithError",{error:l})}),t.jsx("p",{className:"text-muted-foreground text-sm",children:o("common.authEntry.tryRestartingServer")})]})}):t.jsx(Fe,{})}function Fe(){const i=Ie.c(1);let e;return i[0]===Symbol.for("react.memo_cache_sentinel")?(e=t.jsx("div",{className:"flex min-h-screen items-center justify-center",children:t.jsx(Ue,{size:"lg",label:"Signing in"})}),i[0]=e):e=i[0],e}function Ye({callbackURL:i,providerId:e,ssoSignIn:o,onAuthEvent:l}){const v=b.useEffectEvent(r=>{try{l?.(r)}catch{}}),g=b.useEffectEvent(o);return b.useEffect(()=>{(async()=>{v({type:"started",method:"sso",provider:e});try{const r=await g({providerId:e,callbackURL:i});if(r.error)throw new Error(r.error.message||"SSO redirect failed")}catch(r){v({type:"failed",method:"sso",provider:e,stage:"redirect",error:r instanceof Error?r.message:String(r)})}})()},[e,i]),t.jsx(Fe,{})}function Xe(i){const e=Ie.c(25),{callbackUrl:o,redirectUrl:l,allowAutoLogin:v,title:g,subtitle:r,brand:u,copy:d,variant:P,allowedSocialProviders:A,allowPassword:O,onAuthEvent:S,onAuthenticated:E}=i,F=v===void 0?!0:v,j=Ce(),{sso:h,emailAndPassword:p,magicLink:Z,emailOtp:ee,socialProviders:ne,localMode:te}=Ne(),I=l||o;let C;e[0]!==E?(C=E?{onAuthenticated:E}:void 0,e[0]=E,e[1]=C):C=e[1];const c=C;if(te&&F){let x;return e[2]!==S||e[3]!==I?(x=t.jsx(Ge,{redirectTo:I,onAuthEvent:S}),e[2]=S,e[3]=I,e[4]=x):x=e[4],x}if(h.enabled){let x;return e[5]!==S||e[6]!==I||e[7]!==h.providerId?(x=t.jsx(Ye,{callbackURL:I,providerId:h.providerId,ssoSignIn:Ae.ssoSignIn,onAuthEvent:S}),e[5]=S,e[6]=I,e[7]=h.providerId,e[8]=x):x=e[8],x}if(p.enabled||Z.enabled||ee.enabled||ne.enabled){let x;return e[9]!==O||e[10]!==A||e[11]!==u||e[12]!==o||e[13]!==c||e[14]!==d||e[15]!==S||e[16]!==l||e[17]!==r||e[18]!==g||e[19]!==P?(x=t.jsx(Ve,{redirectUrl:l,callbackUrl:o,title:g,subtitle:r,brand:u,copy:d,variant:P,allowedSocialProviders:A,allowPassword:O,onAuthEvent:S,actions:c}),e[9]=O,e[10]=A,e[11]=u,e[12]=o,e[13]=c,e[14]=d,e[15]=S,e[16]=l,e[17]=r,e[18]=g,e[19]=P,e[20]=x):x=e[20],x}let N;e[21]!==j?(N=j("common.authEntry.noLoginOptions"),e[21]=j,e[22]=N):N=e[22];let _;return e[23]!==N?(_=t.jsx("div",{children:N}),e[23]=N,e[24]=_):_=e[24],_}export{Fe as A,Xe as a};
@@ -1 +1 @@
1
- import{ba as v,bb as $,bc as W,bd as H,be as D,bf as y,bg as V,bh as x,bi as E,bj as j,bk as q,bl as N,bm as B,bn as Z,bo as F}from"./index-zFizTRgJ.js";function G(e){const t=typeof e=="string"?new URL(e):new URL(e.href);return t.hash="",t}function J({requestedResource:e,configuredResource:t}){const n=typeof e=="string"?new URL(e):new URL(e.href),r=typeof t=="string"?new URL(t):new URL(t.href);if(n.origin!==r.origin||n.pathname.length<r.pathname.length)return!1;const a=n.pathname.endsWith("/")?n.pathname:n.pathname+"/",i=r.pathname.endsWith("/")?r.pathname:r.pathname+"/";return a.startsWith(i)}class pe extends Error{constructor(t){super(t??"Unauthorized")}}function Y(e){return["client_secret_basic","client_secret_post","none"].includes(e)}const p="code",_="S256";function K(e,t){const n=e.client_secret!==void 0;return"token_endpoint_auth_method"in e&&e.token_endpoint_auth_method&&Y(e.token_endpoint_auth_method)&&(t.length===0||t.includes(e.token_endpoint_auth_method))?e.token_endpoint_auth_method:t.length===0?n?"client_secret_basic":"none":n&&t.includes("client_secret_basic")?"client_secret_basic":n&&t.includes("client_secret_post")?"client_secret_post":t.includes("none")?"none":n?"client_secret_post":"none"}function Q(e,t,n,r){const{client_id:a,client_secret:i}=t;switch(e){case"client_secret_basic":X(a,i,n);return;case"client_secret_post":ee(a,i,r);return;case"none":te(a,r);return;default:throw new Error(`Unsupported client authentication method: ${e}`)}}function X(e,t,n){if(!t)throw new Error("client_secret_basic authentication requires a client_secret");const r=btoa(`${e}:${t}`);n.set("Authorization",`Basic ${r}`)}function ee(e,t,n){n.set("client_id",e),t&&n.set("client_secret",t)}function te(e,t){t.set("client_id",e)}async function L(e){const t=e instanceof Response?e.status:void 0,n=e instanceof Response?await e.text():e;try{const r=B.parse(JSON.parse(n)),{error:a,error_description:i,error_uri:s}=r,o=Z[a]||y;return new o(i||"",s)}catch(r){const a=`${t?`HTTP ${t}: `:""}Invalid OAuth error response: ${r}. Raw body: ${n}`;return new y(a)}}async function _e(e,t){try{return await U(e,t)}catch(n){if(n instanceof v||n instanceof $)return await e.invalidateCredentials?.("all"),await U(e,t);if(n instanceof W)return await e.invalidateCredentials?.("tokens"),await U(e,t);throw n}}async function U(e,{serverUrl:t,authorizationCode:n,scope:r,resourceMetadataUrl:a,fetchFn:i}){const s=await e.discoveryState?.();let o,c,u,h=a;if(!h&&s?.resourceMetadataUrl&&(h=new URL(s.resourceMetadataUrl)),s?.authorizationServerUrl){if(c=s.authorizationServerUrl,o=s.resourceMetadata,u=s.authorizationServerMetadata??await T(c,{fetchFn:i}),!o)try{o=await M(t,{resourceMetadataUrl:h},i)}catch{}(u!==s.authorizationServerMetadata||o!==s.resourceMetadata)&&await e.saveDiscoveryState?.({authorizationServerUrl:String(c),resourceMetadataUrl:h?.toString(),resourceMetadata:o,authorizationServerMetadata:u})}else{const l=await ce(t,{resourceMetadataUrl:h,fetchFn:i});c=l.authorizationServerUrl,u=l.authorizationServerMetadata,o=l.resourceMetadata,await e.saveDiscoveryState?.({authorizationServerUrl:String(c),resourceMetadataUrl:h?.toString(),resourceMetadata:o,authorizationServerMetadata:u})}const f=await re(t,e,o),A=r||o?.scopes_supported?.join(" ")||e.clientMetadata.scope;let d=await Promise.resolve(e.clientInformation());if(!d){if(n!==void 0)throw new Error("Existing OAuth client information is required when exchanging an authorization code");const l=u?.client_id_metadata_document_supported===!0,w=e.clientMetadataUrl;if(w&&!ne(w))throw new H(`clientMetadataUrl must be a valid HTTPS URL with a non-root pathname, got: ${w}`);if(l&&w)d={client_id:w},await e.saveClientInformation?.(d);else{if(!e.saveClientInformation)throw new Error("OAuth client information must be saveable for dynamic registration");const S=await de(c,{metadata:u,clientMetadata:e.clientMetadata,scope:A,fetchFn:i});await e.saveClientInformation(S),d=S}}const O=!e.redirectUrl;if(n!==void 0||O){const l=await he(e,c,{metadata:u,resource:f,authorizationCode:n,fetchFn:i});return await e.saveTokens(l),"AUTHORIZED"}const k=await e.tokens();if(k?.refresh_token)try{const l=await le(c,{metadata:u,clientInformation:d,refreshToken:k.refresh_token,resource:f,addClientAuthentication:e.addClientAuthentication,fetchFn:i});return await e.saveTokens(l),"AUTHORIZED"}catch(l){if(!(!(l instanceof D)||l instanceof y))throw l}const C=e.state?await e.state():void 0,{authorizationUrl:z,codeVerifier:I}=await ue(c,{metadata:u,clientInformation:d,state:C,redirectUrl:e.redirectUrl,scope:A,resource:f});return await e.saveCodeVerifier(I),await e.redirectToAuthorization(z),"REDIRECT"}function ne(e){if(!e)return!1;try{const t=new URL(e);return t.protocol==="https:"&&t.pathname!=="/"}catch{return!1}}async function re(e,t,n){const r=G(e);if(t.validateResourceURL)return await t.validateResourceURL(r,n?.resource);if(n){if(!J({requestedResource:r,configuredResource:n.resource}))throw new Error(`Protected resource ${n.resource} does not match expected ${r} (or origin)`);return new URL(n.resource)}}function Ue(e){const t=e.headers.get("WWW-Authenticate");if(!t)return{};const[n,r]=t.split(" ");if(n.toLowerCase()!=="bearer"||!r)return{};const a=m(e,"resource_metadata")||void 0;let i;if(a)try{i=new URL(a)}catch{}const s=m(e,"scope")||void 0,o=m(e,"error")||void 0;return{resourceMetadataUrl:i,scope:s,error:o}}function m(e,t){const n=e.headers.get("WWW-Authenticate");if(!n)return null;const r=new RegExp(`${t}=(?:"([^"]+)"|([^\\s,]+))`),a=n.match(r);return a?a[1]||a[2]:null}async function M(e,t,n=fetch){const r=await ie(e,"oauth-protected-resource",n,{protocolVersion:t?.protocolVersion,metadataUrl:t?.resourceMetadataUrl});if(!r||r.status===404)throw await r?.body?.cancel(),new Error("Resource server does not implement OAuth 2.0 Protected Resource Metadata.");if(!r.ok)throw await r.body?.cancel(),new Error(`HTTP ${r.status} trying to load well-known OAuth protected resource metadata.`);return j.parse(await r.json())}async function R(e,t,n=fetch){try{return await n(e,{headers:t})}catch(r){if(r instanceof TypeError)return t?R(e,void 0,n):void 0;throw r}}function ae(e,t="",n={}){return t.endsWith("/")&&(t=t.slice(0,-1)),n.prependPathname?`${t}/.well-known/${e}`:`/.well-known/${e}${t}`}async function b(e,t,n=fetch){return await R(e,{"MCP-Protocol-Version":t},n)}function oe(e,t){return!e||e.status>=400&&e.status<500&&t!=="/"}async function ie(e,t,n,r){const a=new URL(e),i=r?.protocolVersion??E;let s;if(r?.metadataUrl)s=new URL(r.metadataUrl);else{const c=ae(t,a.pathname);s=new URL(c,r?.metadataServerUrl??a),s.search=a.search}let o=await b(s,i,n);if(!r?.metadataUrl&&oe(o,a.pathname)){const c=new URL(`/.well-known/${t}`,a);o=await b(c,i,n)}return o}function se(e){const t=typeof e=="string"?new URL(e):e,n=t.pathname!=="/",r=[];if(!n)return r.push({url:new URL("/.well-known/oauth-authorization-server",t.origin),type:"oauth"}),r.push({url:new URL("/.well-known/openid-configuration",t.origin),type:"oidc"}),r;let a=t.pathname;return a.endsWith("/")&&(a=a.slice(0,-1)),r.push({url:new URL(`/.well-known/oauth-authorization-server${a}`,t.origin),type:"oauth"}),r.push({url:new URL(`/.well-known/openid-configuration${a}`,t.origin),type:"oidc"}),r.push({url:new URL(`${a}/.well-known/openid-configuration`,t.origin),type:"oidc"}),r}async function T(e,{fetchFn:t=fetch,protocolVersion:n=E}={}){const r={"MCP-Protocol-Version":n,Accept:"application/json"},a=se(e);for(const{url:i,type:s}of a){const o=await R(i,r,t);if(o){if(!o.ok){if(await o.body?.cancel(),o.status>=400&&o.status<500)continue;throw new Error(`HTTP ${o.status} trying to load ${s==="oauth"?"OAuth":"OpenID provider"} metadata from ${i}`)}return s==="oauth"?V.parse(await o.json()):x.parse(await o.json())}}}async function ce(e,t){let n,r;try{n=await M(e,{resourceMetadataUrl:t?.resourceMetadataUrl},t?.fetchFn),n.authorization_servers&&n.authorization_servers.length>0&&(r=n.authorization_servers[0])}catch{}r||(r=String(new URL("/",e)));const a=await T(r,{fetchFn:t?.fetchFn});return{authorizationServerUrl:r,authorizationServerMetadata:a,resourceMetadata:n}}async function ue(e,{metadata:t,clientInformation:n,redirectUrl:r,scope:a,state:i,resource:s}){let o;if(t){if(o=new URL(t.authorization_endpoint),!t.response_types_supported.includes(p))throw new Error(`Incompatible auth server: does not support response type ${p}`);if(t.code_challenge_methods_supported&&!t.code_challenge_methods_supported.includes(_))throw new Error(`Incompatible auth server: does not support code challenge method ${_}`)}else o=new URL("/authorize",e);const c=await N(),u=c.code_verifier,h=c.code_challenge;return o.searchParams.set("response_type",p),o.searchParams.set("client_id",n.client_id),o.searchParams.set("code_challenge",h),o.searchParams.set("code_challenge_method",_),o.searchParams.set("redirect_uri",String(r)),i&&o.searchParams.set("state",i),a&&o.searchParams.set("scope",a),a?.includes("offline_access")&&o.searchParams.append("prompt","consent"),s&&o.searchParams.set("resource",s.href),{authorizationUrl:o,codeVerifier:u}}function P(e,t,n){return new URLSearchParams({grant_type:"authorization_code",code:e,code_verifier:t,redirect_uri:String(n)})}async function g(e,{metadata:t,tokenRequestParams:n,clientInformation:r,addClientAuthentication:a,resource:i,fetchFn:s}){const o=t?.token_endpoint?new URL(t.token_endpoint):new URL("/token",e),c=new Headers({"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"});if(i&&n.set("resource",i.href),a)await a(c,n,o,t);else if(r){const h=t?.token_endpoint_auth_methods_supported??[],f=K(r,h);Q(f,r,c,n)}const u=await(s??fetch)(o,{method:"POST",headers:c,body:n});if(!u.ok)throw await L(u);return F.parse(await u.json())}async function me(e,{metadata:t,clientInformation:n,authorizationCode:r,codeVerifier:a,redirectUri:i,resource:s,addClientAuthentication:o,fetchFn:c}){const u=P(r,a,i);return g(e,{metadata:t,tokenRequestParams:u,clientInformation:n,addClientAuthentication:o,resource:s,fetchFn:c})}async function le(e,{metadata:t,clientInformation:n,refreshToken:r,resource:a,addClientAuthentication:i,fetchFn:s}){const o=new URLSearchParams({grant_type:"refresh_token",refresh_token:r}),c=await g(e,{metadata:t,tokenRequestParams:o,clientInformation:n,addClientAuthentication:i,resource:a,fetchFn:s});return{refresh_token:r,...c}}async function he(e,t,{metadata:n,resource:r,authorizationCode:a,fetchFn:i}={}){const s=e.clientMetadata.scope;let o;if(e.prepareTokenRequest&&(o=await e.prepareTokenRequest(s)),!o){if(!a)throw new Error("Either provider.prepareTokenRequest() or authorizationCode is required");if(!e.redirectUrl)throw new Error("redirectUrl is required for authorization_code flow");const u=await e.codeVerifier();o=P(a,u,e.redirectUrl)}const c=await e.clientInformation();return g(t,{metadata:n,tokenRequestParams:o,clientInformation:c??void 0,addClientAuthentication:e.addClientAuthentication,resource:r,fetchFn:i})}async function de(e,{metadata:t,clientMetadata:n,scope:r,fetchFn:a}){let i;if(t){if(!t.registration_endpoint)throw new Error("Incompatible auth server: does not support dynamic client registration");i=new URL(t.registration_endpoint)}else i=new URL("/register",e);const s=await(a??fetch)(i,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...n,...r!==void 0?{scope:r}:{}})});if(!s.ok)throw await L(s);return q.parse(await s.json())}export{pe as U,T as a,_e as b,Ue as c,M as d,me as e};
1
+ import{ba as v,bb as $,bc as W,bd as H,be as D,bf as y,bg as V,bh as x,bi as E,bj as j,bk as q,bl as N,bm as B,bn as Z,bo as F}from"./index-Bq_h7Umn.js";function G(e){const t=typeof e=="string"?new URL(e):new URL(e.href);return t.hash="",t}function J({requestedResource:e,configuredResource:t}){const n=typeof e=="string"?new URL(e):new URL(e.href),r=typeof t=="string"?new URL(t):new URL(t.href);if(n.origin!==r.origin||n.pathname.length<r.pathname.length)return!1;const a=n.pathname.endsWith("/")?n.pathname:n.pathname+"/",i=r.pathname.endsWith("/")?r.pathname:r.pathname+"/";return a.startsWith(i)}class pe extends Error{constructor(t){super(t??"Unauthorized")}}function Y(e){return["client_secret_basic","client_secret_post","none"].includes(e)}const p="code",_="S256";function K(e,t){const n=e.client_secret!==void 0;return"token_endpoint_auth_method"in e&&e.token_endpoint_auth_method&&Y(e.token_endpoint_auth_method)&&(t.length===0||t.includes(e.token_endpoint_auth_method))?e.token_endpoint_auth_method:t.length===0?n?"client_secret_basic":"none":n&&t.includes("client_secret_basic")?"client_secret_basic":n&&t.includes("client_secret_post")?"client_secret_post":t.includes("none")?"none":n?"client_secret_post":"none"}function Q(e,t,n,r){const{client_id:a,client_secret:i}=t;switch(e){case"client_secret_basic":X(a,i,n);return;case"client_secret_post":ee(a,i,r);return;case"none":te(a,r);return;default:throw new Error(`Unsupported client authentication method: ${e}`)}}function X(e,t,n){if(!t)throw new Error("client_secret_basic authentication requires a client_secret");const r=btoa(`${e}:${t}`);n.set("Authorization",`Basic ${r}`)}function ee(e,t,n){n.set("client_id",e),t&&n.set("client_secret",t)}function te(e,t){t.set("client_id",e)}async function L(e){const t=e instanceof Response?e.status:void 0,n=e instanceof Response?await e.text():e;try{const r=B.parse(JSON.parse(n)),{error:a,error_description:i,error_uri:s}=r,o=Z[a]||y;return new o(i||"",s)}catch(r){const a=`${t?`HTTP ${t}: `:""}Invalid OAuth error response: ${r}. Raw body: ${n}`;return new y(a)}}async function _e(e,t){try{return await U(e,t)}catch(n){if(n instanceof v||n instanceof $)return await e.invalidateCredentials?.("all"),await U(e,t);if(n instanceof W)return await e.invalidateCredentials?.("tokens"),await U(e,t);throw n}}async function U(e,{serverUrl:t,authorizationCode:n,scope:r,resourceMetadataUrl:a,fetchFn:i}){const s=await e.discoveryState?.();let o,c,u,h=a;if(!h&&s?.resourceMetadataUrl&&(h=new URL(s.resourceMetadataUrl)),s?.authorizationServerUrl){if(c=s.authorizationServerUrl,o=s.resourceMetadata,u=s.authorizationServerMetadata??await T(c,{fetchFn:i}),!o)try{o=await M(t,{resourceMetadataUrl:h},i)}catch{}(u!==s.authorizationServerMetadata||o!==s.resourceMetadata)&&await e.saveDiscoveryState?.({authorizationServerUrl:String(c),resourceMetadataUrl:h?.toString(),resourceMetadata:o,authorizationServerMetadata:u})}else{const l=await ce(t,{resourceMetadataUrl:h,fetchFn:i});c=l.authorizationServerUrl,u=l.authorizationServerMetadata,o=l.resourceMetadata,await e.saveDiscoveryState?.({authorizationServerUrl:String(c),resourceMetadataUrl:h?.toString(),resourceMetadata:o,authorizationServerMetadata:u})}const f=await re(t,e,o),A=r||o?.scopes_supported?.join(" ")||e.clientMetadata.scope;let d=await Promise.resolve(e.clientInformation());if(!d){if(n!==void 0)throw new Error("Existing OAuth client information is required when exchanging an authorization code");const l=u?.client_id_metadata_document_supported===!0,w=e.clientMetadataUrl;if(w&&!ne(w))throw new H(`clientMetadataUrl must be a valid HTTPS URL with a non-root pathname, got: ${w}`);if(l&&w)d={client_id:w},await e.saveClientInformation?.(d);else{if(!e.saveClientInformation)throw new Error("OAuth client information must be saveable for dynamic registration");const S=await de(c,{metadata:u,clientMetadata:e.clientMetadata,scope:A,fetchFn:i});await e.saveClientInformation(S),d=S}}const O=!e.redirectUrl;if(n!==void 0||O){const l=await he(e,c,{metadata:u,resource:f,authorizationCode:n,fetchFn:i});return await e.saveTokens(l),"AUTHORIZED"}const k=await e.tokens();if(k?.refresh_token)try{const l=await le(c,{metadata:u,clientInformation:d,refreshToken:k.refresh_token,resource:f,addClientAuthentication:e.addClientAuthentication,fetchFn:i});return await e.saveTokens(l),"AUTHORIZED"}catch(l){if(!(!(l instanceof D)||l instanceof y))throw l}const C=e.state?await e.state():void 0,{authorizationUrl:z,codeVerifier:I}=await ue(c,{metadata:u,clientInformation:d,state:C,redirectUrl:e.redirectUrl,scope:A,resource:f});return await e.saveCodeVerifier(I),await e.redirectToAuthorization(z),"REDIRECT"}function ne(e){if(!e)return!1;try{const t=new URL(e);return t.protocol==="https:"&&t.pathname!=="/"}catch{return!1}}async function re(e,t,n){const r=G(e);if(t.validateResourceURL)return await t.validateResourceURL(r,n?.resource);if(n){if(!J({requestedResource:r,configuredResource:n.resource}))throw new Error(`Protected resource ${n.resource} does not match expected ${r} (or origin)`);return new URL(n.resource)}}function Ue(e){const t=e.headers.get("WWW-Authenticate");if(!t)return{};const[n,r]=t.split(" ");if(n.toLowerCase()!=="bearer"||!r)return{};const a=m(e,"resource_metadata")||void 0;let i;if(a)try{i=new URL(a)}catch{}const s=m(e,"scope")||void 0,o=m(e,"error")||void 0;return{resourceMetadataUrl:i,scope:s,error:o}}function m(e,t){const n=e.headers.get("WWW-Authenticate");if(!n)return null;const r=new RegExp(`${t}=(?:"([^"]+)"|([^\\s,]+))`),a=n.match(r);return a?a[1]||a[2]:null}async function M(e,t,n=fetch){const r=await ie(e,"oauth-protected-resource",n,{protocolVersion:t?.protocolVersion,metadataUrl:t?.resourceMetadataUrl});if(!r||r.status===404)throw await r?.body?.cancel(),new Error("Resource server does not implement OAuth 2.0 Protected Resource Metadata.");if(!r.ok)throw await r.body?.cancel(),new Error(`HTTP ${r.status} trying to load well-known OAuth protected resource metadata.`);return j.parse(await r.json())}async function R(e,t,n=fetch){try{return await n(e,{headers:t})}catch(r){if(r instanceof TypeError)return t?R(e,void 0,n):void 0;throw r}}function ae(e,t="",n={}){return t.endsWith("/")&&(t=t.slice(0,-1)),n.prependPathname?`${t}/.well-known/${e}`:`/.well-known/${e}${t}`}async function b(e,t,n=fetch){return await R(e,{"MCP-Protocol-Version":t},n)}function oe(e,t){return!e||e.status>=400&&e.status<500&&t!=="/"}async function ie(e,t,n,r){const a=new URL(e),i=r?.protocolVersion??E;let s;if(r?.metadataUrl)s=new URL(r.metadataUrl);else{const c=ae(t,a.pathname);s=new URL(c,r?.metadataServerUrl??a),s.search=a.search}let o=await b(s,i,n);if(!r?.metadataUrl&&oe(o,a.pathname)){const c=new URL(`/.well-known/${t}`,a);o=await b(c,i,n)}return o}function se(e){const t=typeof e=="string"?new URL(e):e,n=t.pathname!=="/",r=[];if(!n)return r.push({url:new URL("/.well-known/oauth-authorization-server",t.origin),type:"oauth"}),r.push({url:new URL("/.well-known/openid-configuration",t.origin),type:"oidc"}),r;let a=t.pathname;return a.endsWith("/")&&(a=a.slice(0,-1)),r.push({url:new URL(`/.well-known/oauth-authorization-server${a}`,t.origin),type:"oauth"}),r.push({url:new URL(`/.well-known/openid-configuration${a}`,t.origin),type:"oidc"}),r.push({url:new URL(`${a}/.well-known/openid-configuration`,t.origin),type:"oidc"}),r}async function T(e,{fetchFn:t=fetch,protocolVersion:n=E}={}){const r={"MCP-Protocol-Version":n,Accept:"application/json"},a=se(e);for(const{url:i,type:s}of a){const o=await R(i,r,t);if(o){if(!o.ok){if(await o.body?.cancel(),o.status>=400&&o.status<500)continue;throw new Error(`HTTP ${o.status} trying to load ${s==="oauth"?"OAuth":"OpenID provider"} metadata from ${i}`)}return s==="oauth"?V.parse(await o.json()):x.parse(await o.json())}}}async function ce(e,t){let n,r;try{n=await M(e,{resourceMetadataUrl:t?.resourceMetadataUrl},t?.fetchFn),n.authorization_servers&&n.authorization_servers.length>0&&(r=n.authorization_servers[0])}catch{}r||(r=String(new URL("/",e)));const a=await T(r,{fetchFn:t?.fetchFn});return{authorizationServerUrl:r,authorizationServerMetadata:a,resourceMetadata:n}}async function ue(e,{metadata:t,clientInformation:n,redirectUrl:r,scope:a,state:i,resource:s}){let o;if(t){if(o=new URL(t.authorization_endpoint),!t.response_types_supported.includes(p))throw new Error(`Incompatible auth server: does not support response type ${p}`);if(t.code_challenge_methods_supported&&!t.code_challenge_methods_supported.includes(_))throw new Error(`Incompatible auth server: does not support code challenge method ${_}`)}else o=new URL("/authorize",e);const c=await N(),u=c.code_verifier,h=c.code_challenge;return o.searchParams.set("response_type",p),o.searchParams.set("client_id",n.client_id),o.searchParams.set("code_challenge",h),o.searchParams.set("code_challenge_method",_),o.searchParams.set("redirect_uri",String(r)),i&&o.searchParams.set("state",i),a&&o.searchParams.set("scope",a),a?.includes("offline_access")&&o.searchParams.append("prompt","consent"),s&&o.searchParams.set("resource",s.href),{authorizationUrl:o,codeVerifier:u}}function P(e,t,n){return new URLSearchParams({grant_type:"authorization_code",code:e,code_verifier:t,redirect_uri:String(n)})}async function g(e,{metadata:t,tokenRequestParams:n,clientInformation:r,addClientAuthentication:a,resource:i,fetchFn:s}){const o=t?.token_endpoint?new URL(t.token_endpoint):new URL("/token",e),c=new Headers({"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"});if(i&&n.set("resource",i.href),a)await a(c,n,o,t);else if(r){const h=t?.token_endpoint_auth_methods_supported??[],f=K(r,h);Q(f,r,c,n)}const u=await(s??fetch)(o,{method:"POST",headers:c,body:n});if(!u.ok)throw await L(u);return F.parse(await u.json())}async function me(e,{metadata:t,clientInformation:n,authorizationCode:r,codeVerifier:a,redirectUri:i,resource:s,addClientAuthentication:o,fetchFn:c}){const u=P(r,a,i);return g(e,{metadata:t,tokenRequestParams:u,clientInformation:n,addClientAuthentication:o,resource:s,fetchFn:c})}async function le(e,{metadata:t,clientInformation:n,refreshToken:r,resource:a,addClientAuthentication:i,fetchFn:s}){const o=new URLSearchParams({grant_type:"refresh_token",refresh_token:r}),c=await g(e,{metadata:t,tokenRequestParams:o,clientInformation:n,addClientAuthentication:i,resource:a,fetchFn:s});return{refresh_token:r,...c}}async function he(e,t,{metadata:n,resource:r,authorizationCode:a,fetchFn:i}={}){const s=e.clientMetadata.scope;let o;if(e.prepareTokenRequest&&(o=await e.prepareTokenRequest(s)),!o){if(!a)throw new Error("Either provider.prepareTokenRequest() or authorizationCode is required");if(!e.redirectUrl)throw new Error("redirectUrl is required for authorization_code flow");const u=await e.codeVerifier();o=P(a,u,e.redirectUrl)}const c=await e.clientInformation();return g(t,{metadata:n,tokenRequestParams:o,clientInformation:c??void 0,addClientAuthentication:e.addClientAuthentication,resource:r,fetchFn:i})}async function de(e,{metadata:t,clientMetadata:n,scope:r,fetchFn:a}){let i;if(t){if(!t.registration_endpoint)throw new Error("Incompatible auth server: does not support dynamic client registration");i=new URL(t.registration_endpoint)}else i=new URL("/register",e);const s=await(a??fetch)(i,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...n,...r!==void 0?{scope:r}:{}})});if(!s.ok)throw await L(s);return q.parse(await s.json())}export{pe as U,T as a,_e as b,Ue as c,M as d,me as e};
@@ -1 +1 @@
1
- import{c as g,l as p,j as f}from"./index-zFizTRgJ.js";function w(b){const e=g.c(20),{children:m,visual:r,align:j}=b,d=(j===void 0?"center":j)==="fill",x=d?"min-h-[100dvh] md:min-h-screen":"min-h-screen";let l;e[0]!==x?(l=p("flex w-full",x),e[0]=x,e[1]=l):l=e[1];const h=d?"h-[100dvh] justify-start pt-4 pb-8 md:h-auto":"justify-center py-6";let t;e[2]!==h?(t=p("flex flex-1 flex-col items-center bg-sidebar px-6 md:justify-center md:px-10 md:py-10",h),e[2]=h,e[3]=t):t=e[3];const u=d&&"flex min-h-0 flex-1 flex-col md:block md:flex-none";let s;e[4]!==u?(s=p("w-full max-w-[440px]",u),e[4]=u,e[5]=s):s=e[5];let i;e[6]!==m||e[7]!==s?(i=f.jsx("div",{className:s,children:m}),e[6]=m,e[7]=s,e[8]=i):i=e[8];let n;e[9]!==t||e[10]!==i?(n=f.jsx("section",{className:t,children:i}),e[9]=t,e[10]=i,e[11]=n):n=e[11];let c;e[12]!==r?(c=r??f.jsx("img",{src:"/onboarding-placeholder.png",alt:"",className:"absolute inset-0 h-full w-full object-cover"}),e[12]=r,e[13]=c):c=e[13];let a;e[14]!==c?(a=f.jsx("aside",{className:"relative hidden flex-1 overflow-hidden bg-muted md:flex",children:c}),e[14]=c,e[15]=a):a=e[15];let o;return e[16]!==a||e[17]!==l||e[18]!==n?(o=f.jsxs("main",{className:l,children:[n,a]}),e[16]=a,e[17]=l,e[18]=n,e[19]=o):o=e[19],o}export{w as A};
1
+ import{c as g,l as p,j as f}from"./index-Bq_h7Umn.js";function w(b){const e=g.c(20),{children:m,visual:r,align:j}=b,d=(j===void 0?"center":j)==="fill",x=d?"min-h-[100dvh] md:min-h-screen":"min-h-screen";let l;e[0]!==x?(l=p("flex w-full",x),e[0]=x,e[1]=l):l=e[1];const h=d?"h-[100dvh] justify-start pt-4 pb-8 md:h-auto":"justify-center py-6";let t;e[2]!==h?(t=p("flex flex-1 flex-col items-center bg-sidebar px-6 md:justify-center md:px-10 md:py-10",h),e[2]=h,e[3]=t):t=e[3];const u=d&&"flex min-h-0 flex-1 flex-col md:block md:flex-none";let s;e[4]!==u?(s=p("w-full max-w-[440px]",u),e[4]=u,e[5]=s):s=e[5];let i;e[6]!==m||e[7]!==s?(i=f.jsx("div",{className:s,children:m}),e[6]=m,e[7]=s,e[8]=i):i=e[8];let n;e[9]!==t||e[10]!==i?(n=f.jsx("section",{className:t,children:i}),e[9]=t,e[10]=i,e[11]=n):n=e[11];let c;e[12]!==r?(c=r??f.jsx("img",{src:"/onboarding-placeholder.png",alt:"",className:"absolute inset-0 h-full w-full object-cover"}),e[12]=r,e[13]=c):c=e[13];let a;e[14]!==c?(a=f.jsx("aside",{className:"relative hidden flex-1 overflow-hidden bg-muted md:flex",children:c}),e[14]=c,e[15]=a):a=e[15];let o;return e[16]!==a||e[17]!==l||e[18]!==n?(o=f.jsxs("main",{className:l,children:[n,a]}),e[16]=a,e[17]=l,e[18]=n,e[19]=o):o=e[19],o}export{w as A};
@@ -1 +1 @@
1
- import{a as u}from"./mcp-oauth-BvraKhnX.js";import{i as p}from"./mcp-oauth-BWnNfhKY.js";async function k({connectionId:n,orgId:s,orgSlug:o,persistFallback:r}){const c=new URL(`/api/${o}/mcp/${n}`,window.location.origin),i=await p({url:c.href,token:null,orgId:s});if(!i.supportsOAuth||i.isAuthenticated)return{ran:!1,ok:!0,error:null};const{token:t,tokenInfo:e,error:a}=await u({connectionId:n,orgSlug:o,scope:"offline_access"});if(a||!t)return{ran:!0,ok:!1,error:a??"no token received"};if(e)try{(await fetch(`/api/${o}/connections/${n}/oauth-token`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({accessToken:e.accessToken,refreshToken:e.refreshToken,expiresIn:e.expiresIn,scope:e.scope,clientId:e.clientId,clientSecret:e.clientSecret,tokenEndpoint:e.tokenEndpoint})})).ok||await r(t)}catch{await r(t)}else await r(t);return{ran:!0,ok:!0,error:null}}export{k as a};
1
+ import{a as u}from"./mcp-oauth-CbvlD5SX.js";import{i as p}from"./mcp-oauth-Cea99ANT.js";async function k({connectionId:n,orgId:s,orgSlug:o,persistFallback:r}){const c=new URL(`/api/${o}/mcp/${n}`,window.location.origin),i=await p({url:c.href,token:null,orgId:s});if(!i.supportsOAuth||i.isAuthenticated)return{ran:!1,ok:!0,error:null};const{token:t,tokenInfo:e,error:a}=await u({connectionId:n,orgSlug:o,scope:"offline_access"});if(a||!t)return{ran:!0,ok:!1,error:a??"no token received"};if(e)try{(await fetch(`/api/${o}/connections/${n}/oauth-token`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({accessToken:e.accessToken,refreshToken:e.refreshToken,expiresIn:e.expiresIn,scope:e.scope,clientId:e.clientId,clientSecret:e.clientSecret,tokenEndpoint:e.tokenEndpoint})})).ok||await r(t)}catch{await r(t)}else await r(t);return{ran:!0,ok:!0,error:null}}export{k as a};
@@ -1 +1 @@
1
- import{c as W,b as Y,r as ee,l as Q,j as t,T as te,B as se,X as ie,V as ne,U as oe}from"./index-zFizTRgJ.js";import{B as ae}from"./badge-CSXpEa55.js";import{A as re,a as le,b as ce,c as me,g as ue,d as de,e as fe,f as ge}from"./alert-dialog-CmV9dy9T.js";import{A as xe,M as pe}from"./agent-icon-D25DK5wS.js";import{i as he}from"./DotsVertical-CdIsXudQ.js";import{s as je}from"./Trash01-DjbVg-Gr.js";import{i as ve}from"./ZoomOut-CrQxrOGW.js";import{c as we}from"./repository-binding-D4HjFqUu.js";import{a as _e}from"./use-automations-J4kPNxTM.js";function Be(c){const e=W.c(89),{automation:s,showAgent:a,onClick:n}=c,i=Y(),{remove:o}=_e(),[l,H]=ee.useState(!1),r=we(a?s.virtual_mcp_id:void 0);let F;e[0]!==s.id||e[1]!==o?(F=()=>{o.mutate(s.id),H(!1)},e[0]=s.id,e[1]=o,e[2]=F):F=e[2];const U=F;let $;e[3]!==n?($=m=>{m.target===m.currentTarget&&(m.key==="Enter"||m.key===" ")&&(m.preventDefault(),n())},e[3]=n,e[4]=$):$=e[4];const X=$,q=s.active&&s.trigger_count>0?"bg-success":"bg-muted-foreground/40";let u;e[5]!==q?(u=Q("inline-block size-2 rounded-full shrink-0",q),e[5]=q,e[6]=u):u=e[6];const G=s.active&&s.trigger_count>0?"automations.automationListRow.ariaActive":s.active?"automations.automationListRow.ariaNoTriggers":"automations.automationListRow.ariaPaused";let d;e[7]!==i||e[8]!==G?(d=i(G),e[7]=i,e[8]=G,e[9]=d):d=e[9];let f;e[10]!==u||e[11]!==d?(f=t.jsx("span",{className:u,"aria-label":d}),e[10]=u,e[11]=d,e[12]=f):f=e[12];let g;e[13]!==r?.icon||e[14]!==r?.title||e[15]!==s.name||e[16]!==a?(g=a&&t.jsx(xe,{icon:r?.icon??null,name:r?.title??s.name,size:"xs",className:"shrink-0"}),e[13]=r?.icon,e[14]=r?.title,e[15]=s.name,e[16]=a,e[17]=g):g=e[17];let x;e[18]!==s.name?(x=t.jsx("span",{className:"text-sm font-medium text-foreground truncate",children:s.name}),e[18]=s.name,e[19]=x):x=e[19];let p;e[20]!==s.system_key||e[21]!==i?(p=s.system_key&&t.jsx(ae,{variant:"muted",children:i("automations.builtin.badge")}),e[20]=s.system_key,e[21]=i,e[22]=p):p=e[22];let h;e[23]!==r||e[24]!==a?(h=a&&r&&t.jsxs("span",{className:"text-xs text-muted-foreground truncate",children:["· ",r.title]}),e[23]=r,e[24]=a,e[25]=h):h=e[25];let j;e[26]!==p||e[27]!==h||e[28]!==x?(j=t.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[x,p,h]}),e[26]=p,e[27]=h,e[28]=x,e[29]=j):j=e[29];let v;e[30]!==s.nearest_next_run_at||e[31]!==s.trigger_count?(v=t.jsx(Ae,{triggerCount:s.trigger_count,nextRunAt:s.nearest_next_run_at}),e[30]=s.nearest_next_run_at,e[31]=s.trigger_count,e[32]=v):v=e[32];let w;e[33]!==j||e[34]!==v?(w=t.jsxs("div",{className:"flex-1 min-w-0 flex flex-col gap-0.5",children:[j,v]}),e[33]=j,e[34]=v,e[35]=w):w=e[35];const J=s.system_key&&"invisible";let _;e[36]!==J?(_=Q("shrink-0",J),e[36]=J,e[37]=_):_=e[37];let K;e[38]===Symbol.for("react.memo_cache_sentinel")?(K=t.jsx(te,{asChild:!0,children:t.jsx(se,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0 opacity-0 group-hover:opacity-100 data-[state=open]:opacity-100 transition-opacity",children:t.jsx(he,{size:16})})}),e[38]=K):K=e[38];let O,I;e[39]===Symbol.for("react.memo_cache_sentinel")?(O=m=>{m.stopPropagation(),H(!0)},I=t.jsx(je,{size:16}),e[39]=O,e[40]=I):(O=e[39],I=e[40]);let b;e[41]!==i?(b=i("automations.automationListRow.delete"),e[41]=i,e[42]=b):b=e[42];let y;e[43]!==b?(y=t.jsxs(ie,{children:[K,t.jsx(ne,{align:"end",children:t.jsxs(oe,{variant:"destructive",onClick:O,children:[I,b]})})]}),e[43]=b,e[44]=y):y=e[44];let A;e[45]!==_||e[46]!==y?(A=t.jsx("div",{onClick:ye,onKeyDown:be,role:"presentation",className:_,children:y}),e[45]=_,e[46]=y,e[47]=A):A=e[47];let D;e[48]!==X||e[49]!==n||e[50]!==w||e[51]!==A||e[52]!==f||e[53]!==g?(D=t.jsxs("div",{role:"button",tabIndex:0,onClick:n,onKeyDown:X,className:"group w-full flex items-center gap-3 px-4 py-3 border-b border-border text-left hover:bg-muted/50 transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:[f,g,w,A]}),e[48]=X,e[49]=n,e[50]=w,e[51]=A,e[52]=f,e[53]=g,e[54]=D):D=e[54];let N;e[55]!==i?(N=i("automations.automationListRow.deleteTitle"),e[55]=i,e[56]=N):N=e[56];let k;e[57]!==N?(k=t.jsx(re,{children:N}),e[57]=N,e[58]=k):k=e[58];let R;e[59]!==s.name||e[60]!==i?(R=i("automations.automationListRow.deleteDescription",{name:s.name}),e[59]=s.name,e[60]=i,e[61]=R):R=e[61];let C;e[62]!==R?(C=t.jsx(le,{children:R}),e[62]=R,e[63]=C):C=e[63];let L;e[64]!==k||e[65]!==C?(L=t.jsxs(ce,{children:[k,C]}),e[64]=k,e[65]=C,e[66]=L):L=e[66];let T;e[67]!==i?(T=i("automations.automationListRow.cancel"),e[67]=i,e[68]=T):T=e[68];let P;e[69]!==T?(P=t.jsx(me,{children:T}),e[69]=T,e[70]=P):P=e[70];const Z=o.isPending;let z;e[71]!==i?(z=i("automations.automationListRow.deleteButton"),e[71]=i,e[72]=z):z=e[72];let B;e[73]!==U||e[74]!==o.isPending||e[75]!==z?(B=t.jsx(ue,{onClick:U,disabled:Z,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:z}),e[73]=U,e[74]=o.isPending,e[75]=z,e[76]=B):B=e[76];let M;e[77]!==P||e[78]!==B?(M=t.jsxs(de,{children:[P,B]}),e[77]=P,e[78]=B,e[79]=M):M=e[79];let S;e[80]!==L||e[81]!==M?(S=t.jsxs(fe,{children:[L,M]}),e[80]=L,e[81]=M,e[82]=S):S=e[82];let E;e[83]!==l||e[84]!==S?(E=t.jsx(ge,{open:l,onOpenChange:H,children:S}),e[83]=l,e[84]=S,e[85]=E):E=e[85];let V;return e[86]!==D||e[87]!==E?(V=t.jsxs(t.Fragment,{children:[D,E]}),e[86]=D,e[87]=E,e[88]=V):V=e[88],V}function be(c){return c.stopPropagation()}function ye(c){return c.stopPropagation()}function Ae(c){const e=W.c(8),{triggerCount:s,nextRunAt:a}=c,n=Y();if(s===0){let o;e[0]!==n?(o=n("automations.automationListRow.noTriggers"),e[0]=n,e[1]=o):o=e[1];let l;return e[2]!==o?(l=t.jsx("span",{className:"text-xs text-muted-foreground",children:o}),e[2]=o,e[3]=l):l=e[3],l}let i;return e[4]!==a||e[5]!==n||e[6]!==s?(i=t.jsx("span",{className:"flex items-center gap-1.5 text-xs text-muted-foreground min-w-0",children:a?t.jsxs(t.Fragment,{children:[t.jsx(pe,{size:12,className:"shrink-0"}),t.jsx("span",{className:"truncate",children:n("automations.automationListRow.nextRun",{date:new Date(a).toLocaleString()})})]}):t.jsxs(t.Fragment,{children:[t.jsx(ve,{size:12,className:"shrink-0"}),t.jsx("span",{className:"truncate",children:n("automations.automationListRow.triggers",{count:s})})]})}),e[4]=a,e[5]=n,e[6]=s,e[7]=i):i=e[7],i}export{Be as A};
1
+ import{c as W,b as Y,r as ee,l as Q,j as t,T as te,B as se,X as ie,V as ne,U as oe}from"./index-Bq_h7Umn.js";import{B as ae}from"./badge-e2QrlLU3.js";import{A as re,a as le,b as ce,c as me,g as ue,d as de,e as fe,f as ge}from"./alert-dialog-jQtZ3ZzI.js";import{A as xe,M as pe}from"./agent-icon-BWm1tEHf.js";import{i as he}from"./DotsVertical-BuI2KBNC.js";import{s as je}from"./Trash01-B6NXmxPH.js";import{i as ve}from"./ZoomOut-4Na-37_y.js";import{c as we}from"./repository-binding-BRtfh-B2.js";import{a as _e}from"./use-automations-BmndfAFz.js";function Be(c){const e=W.c(89),{automation:s,showAgent:a,onClick:n}=c,i=Y(),{remove:o}=_e(),[l,H]=ee.useState(!1),r=we(a?s.virtual_mcp_id:void 0);let F;e[0]!==s.id||e[1]!==o?(F=()=>{o.mutate(s.id),H(!1)},e[0]=s.id,e[1]=o,e[2]=F):F=e[2];const U=F;let $;e[3]!==n?($=m=>{m.target===m.currentTarget&&(m.key==="Enter"||m.key===" ")&&(m.preventDefault(),n())},e[3]=n,e[4]=$):$=e[4];const X=$,q=s.active&&s.trigger_count>0?"bg-success":"bg-muted-foreground/40";let u;e[5]!==q?(u=Q("inline-block size-2 rounded-full shrink-0",q),e[5]=q,e[6]=u):u=e[6];const G=s.active&&s.trigger_count>0?"automations.automationListRow.ariaActive":s.active?"automations.automationListRow.ariaNoTriggers":"automations.automationListRow.ariaPaused";let d;e[7]!==i||e[8]!==G?(d=i(G),e[7]=i,e[8]=G,e[9]=d):d=e[9];let f;e[10]!==u||e[11]!==d?(f=t.jsx("span",{className:u,"aria-label":d}),e[10]=u,e[11]=d,e[12]=f):f=e[12];let g;e[13]!==r?.icon||e[14]!==r?.title||e[15]!==s.name||e[16]!==a?(g=a&&t.jsx(xe,{icon:r?.icon??null,name:r?.title??s.name,size:"xs",className:"shrink-0"}),e[13]=r?.icon,e[14]=r?.title,e[15]=s.name,e[16]=a,e[17]=g):g=e[17];let x;e[18]!==s.name?(x=t.jsx("span",{className:"text-sm font-medium text-foreground truncate",children:s.name}),e[18]=s.name,e[19]=x):x=e[19];let p;e[20]!==s.system_key||e[21]!==i?(p=s.system_key&&t.jsx(ae,{variant:"muted",children:i("automations.builtin.badge")}),e[20]=s.system_key,e[21]=i,e[22]=p):p=e[22];let h;e[23]!==r||e[24]!==a?(h=a&&r&&t.jsxs("span",{className:"text-xs text-muted-foreground truncate",children:["· ",r.title]}),e[23]=r,e[24]=a,e[25]=h):h=e[25];let j;e[26]!==p||e[27]!==h||e[28]!==x?(j=t.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[x,p,h]}),e[26]=p,e[27]=h,e[28]=x,e[29]=j):j=e[29];let v;e[30]!==s.nearest_next_run_at||e[31]!==s.trigger_count?(v=t.jsx(Ae,{triggerCount:s.trigger_count,nextRunAt:s.nearest_next_run_at}),e[30]=s.nearest_next_run_at,e[31]=s.trigger_count,e[32]=v):v=e[32];let w;e[33]!==j||e[34]!==v?(w=t.jsxs("div",{className:"flex-1 min-w-0 flex flex-col gap-0.5",children:[j,v]}),e[33]=j,e[34]=v,e[35]=w):w=e[35];const J=s.system_key&&"invisible";let _;e[36]!==J?(_=Q("shrink-0",J),e[36]=J,e[37]=_):_=e[37];let K;e[38]===Symbol.for("react.memo_cache_sentinel")?(K=t.jsx(te,{asChild:!0,children:t.jsx(se,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0 opacity-0 group-hover:opacity-100 data-[state=open]:opacity-100 transition-opacity",children:t.jsx(he,{size:16})})}),e[38]=K):K=e[38];let O,I;e[39]===Symbol.for("react.memo_cache_sentinel")?(O=m=>{m.stopPropagation(),H(!0)},I=t.jsx(je,{size:16}),e[39]=O,e[40]=I):(O=e[39],I=e[40]);let b;e[41]!==i?(b=i("automations.automationListRow.delete"),e[41]=i,e[42]=b):b=e[42];let y;e[43]!==b?(y=t.jsxs(ie,{children:[K,t.jsx(ne,{align:"end",children:t.jsxs(oe,{variant:"destructive",onClick:O,children:[I,b]})})]}),e[43]=b,e[44]=y):y=e[44];let A;e[45]!==_||e[46]!==y?(A=t.jsx("div",{onClick:ye,onKeyDown:be,role:"presentation",className:_,children:y}),e[45]=_,e[46]=y,e[47]=A):A=e[47];let D;e[48]!==X||e[49]!==n||e[50]!==w||e[51]!==A||e[52]!==f||e[53]!==g?(D=t.jsxs("div",{role:"button",tabIndex:0,onClick:n,onKeyDown:X,className:"group w-full flex items-center gap-3 px-4 py-3 border-b border-border text-left hover:bg-muted/50 transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:[f,g,w,A]}),e[48]=X,e[49]=n,e[50]=w,e[51]=A,e[52]=f,e[53]=g,e[54]=D):D=e[54];let N;e[55]!==i?(N=i("automations.automationListRow.deleteTitle"),e[55]=i,e[56]=N):N=e[56];let k;e[57]!==N?(k=t.jsx(re,{children:N}),e[57]=N,e[58]=k):k=e[58];let R;e[59]!==s.name||e[60]!==i?(R=i("automations.automationListRow.deleteDescription",{name:s.name}),e[59]=s.name,e[60]=i,e[61]=R):R=e[61];let C;e[62]!==R?(C=t.jsx(le,{children:R}),e[62]=R,e[63]=C):C=e[63];let L;e[64]!==k||e[65]!==C?(L=t.jsxs(ce,{children:[k,C]}),e[64]=k,e[65]=C,e[66]=L):L=e[66];let T;e[67]!==i?(T=i("automations.automationListRow.cancel"),e[67]=i,e[68]=T):T=e[68];let P;e[69]!==T?(P=t.jsx(me,{children:T}),e[69]=T,e[70]=P):P=e[70];const Z=o.isPending;let z;e[71]!==i?(z=i("automations.automationListRow.deleteButton"),e[71]=i,e[72]=z):z=e[72];let B;e[73]!==U||e[74]!==o.isPending||e[75]!==z?(B=t.jsx(ue,{onClick:U,disabled:Z,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:z}),e[73]=U,e[74]=o.isPending,e[75]=z,e[76]=B):B=e[76];let M;e[77]!==P||e[78]!==B?(M=t.jsxs(de,{children:[P,B]}),e[77]=P,e[78]=B,e[79]=M):M=e[79];let S;e[80]!==L||e[81]!==M?(S=t.jsxs(fe,{children:[L,M]}),e[80]=L,e[81]=M,e[82]=S):S=e[82];let E;e[83]!==l||e[84]!==S?(E=t.jsx(ge,{open:l,onOpenChange:H,children:S}),e[83]=l,e[84]=S,e[85]=E):E=e[85];let V;return e[86]!==D||e[87]!==E?(V=t.jsxs(t.Fragment,{children:[D,E]}),e[86]=D,e[87]=E,e[88]=V):V=e[88],V}function be(c){return c.stopPropagation()}function ye(c){return c.stopPropagation()}function Ae(c){const e=W.c(8),{triggerCount:s,nextRunAt:a}=c,n=Y();if(s===0){let o;e[0]!==n?(o=n("automations.automationListRow.noTriggers"),e[0]=n,e[1]=o):o=e[1];let l;return e[2]!==o?(l=t.jsx("span",{className:"text-xs text-muted-foreground",children:o}),e[2]=o,e[3]=l):l=e[3],l}let i;return e[4]!==a||e[5]!==n||e[6]!==s?(i=t.jsx("span",{className:"flex items-center gap-1.5 text-xs text-muted-foreground min-w-0",children:a?t.jsxs(t.Fragment,{children:[t.jsx(pe,{size:12,className:"shrink-0"}),t.jsx("span",{className:"truncate",children:n("automations.automationListRow.nextRun",{date:new Date(a).toLocaleString()})})]}):t.jsxs(t.Fragment,{children:[t.jsx(ve,{size:12,className:"shrink-0"}),t.jsx("span",{className:"truncate",children:n("automations.automationListRow.triggers",{count:s})})]})}),e[4]=a,e[5]=n,e[6]=s,e[7]=i):i=e[7],i}export{Be as A};
@@ -1 +1 @@
1
- import{c as V,r as lt,b as X,a2 as it,J as rt,aa as ct,K as tt,j as s,l as ut,m as dt,ff as mt}from"./index-zFizTRgJ.js";import{u as ft}from"./useInfiniteQuery-DTGbHHjG.js";import{u as xt}from"./use-connection-BWEGKt3t.js";import{u as pt}from"./use-mcp-client-BpCQxGRA.js";import{b as gt}from"./repository-binding-D4HjFqUu.js";import{b as ht,a as Rt}from"./sheet-CJnM8ySE.js";import{e as jt,a as Nt,b as st,T as G,d as bt,c as Q}from"./table-ZhEY60SW.js";import{E as et}from"./empty-state-Dl0uE1qg.js";import{u as Tt}from"./use-infinite-scroll-Bs5bj_x4.js";import{u as St}from"./use-members-BXZtT1Ge.js";import{g as vt}from"./task-status-jzoHxLXE.js";import{e as wt}from"./use-automations-J4kPNxTM.js";import{T as Ct,f as at,a as nt}from"./thread-sheet-body-Cb8plLTN.js";function It(c){const t=V.c(15),[i,r]=lt.useState(null);let e;t[0]!==c||t[1]!==i?(e=i!==null?c.findIndex(u=>u.id===i):-1,t[0]=c,t[1]=i,t[2]=e):e=t[2];const a=e,o=a!==-1?c[a]:null,n=o!==null;let l,w;t[3]===Symbol.for("react.memo_cache_sentinel")?(l=u=>r(u),w=()=>r(null),t[3]=l,t[4]=w):(l=t[3],w=t[4]);let f,x;t[5]!==a||t[6]!==c?(f=()=>{const u=c[a-1];a>0&&u&&r(u.id)},x=()=>{const u=c[a+1];a!==-1&&u&&r(u.id)},t[5]=a,t[6]=c,t[7]=f,t[8]=x):(f=t[7],x=t[8]);let m;return t[9]!==a||t[10]!==o||t[11]!==n||t[12]!==f||t[13]!==x?(m={selected:o,index:a,isOpen:n,select:l,close:w,prev:f,next:x},t[9]=a,t[10]=o,t[11]=n,t[12]=f,t[13]=x,t[14]=m):m=t[14],m}const W=50;function Y(c){const t=V.c(10),{title:i,value:r,subtitle:e}=c;let a;t[0]!==i?(a=s.jsx("span",{className:"text-sm text-foreground/70",children:i}),t[0]=i,t[1]=a):a=t[1];let o;t[2]!==r?(o=s.jsx("span",{className:"text-3xl font-normal tabular-nums",children:r}),t[2]=r,t[3]=o):o=t[3];let n;t[4]!==e?(n=e&&s.jsx("span",{className:"text-xs text-muted-foreground",children:e}),t[4]=e,t[5]=n):n=t[5];let l;return t[6]!==a||t[7]!==o||t[8]!==n?(l=s.jsxs(mt,{className:"pt-4 px-4 pb-5 gap-1",children:[a,o,n]}),t[6]=a,t[7]=o,t[8]=n,t[9]=l):l=t[9],l}function yt(c){const t=V.c(45),{automationId:i,range:r}=c,e=X(),{data:a,isLoading:o}=wt(i,r),n=a?.runs,l=a?.usage;let w;t[0]!==n?(w=n&&n.total>0?`${Math.round(n.completed/n.total*100)}%`:"—",t[0]=n,t[1]=w):w=t[1];const f=w;let x;t[2]!==e||t[3]!==l?(x=l&&l.truncated?e("automations.automationRuns.lastRunsSubtitle",{count:l.sampledRuns}):void 0,t[2]=e,t[3]=l,t[4]=x):x=t[4];const m=x;let u;t[5]!==e?(u=e("automations.automationRuns.runsTitle"),t[5]=e,t[6]=u):u=t[6];let g;t[7]!==o||t[8]!==n?.total?(g=o?"…":n?.total.toLocaleString()??"0",t[7]=o,t[8]=n?.total,t[9]=g):g=t[9];let h;t[10]!==n||t[11]!==e?(h=n?`${n.completed} ${e("automations.automationRuns.ok")} · ${n.failed} ${e("automations.automationRuns.failed")}${n.inProgress>0?` · ${n.inProgress} ${e("automations.automationRuns.running")}`:""}`:void 0,t[10]=n,t[11]=e,t[12]=h):h=t[12];let R;t[13]!==u||t[14]!==g||t[15]!==h?(R=s.jsx(Y,{title:u,value:g,subtitle:h}),t[13]=u,t[14]=g,t[15]=h,t[16]=R):R=t[16];let T;t[17]!==e?(T=e("automations.automationRuns.successRateTitle"),t[17]=e,t[18]=T):T=t[18];const y=o?"…":f;let C;t[19]!==T||t[20]!==y?(C=s.jsx(Y,{title:T,value:y}),t[19]=T,t[20]=y,t[21]=C):C=t[21];let S;t[22]!==e?(S=e("automations.automationRuns.tokensTitle"),t[22]=e,t[23]=S):S=t[23];let p;t[24]!==o||t[25]!==l?.totalTokens?(p=o?"…":at(l?.totalTokens??0),t[24]=o,t[25]=l?.totalTokens,t[26]=p):p=t[26];let I;t[27]!==S||t[28]!==p||t[29]!==m?(I=s.jsx(Y,{title:S,value:p,subtitle:m}),t[27]=S,t[28]=p,t[29]=m,t[30]=I):I=t[30];let d;t[31]!==e?(d=e("automations.automationRuns.costTitle"),t[31]=e,t[32]=d):d=t[32];let j;t[33]!==o||t[34]!==l?(j=o?"…":l&&l.costUsd>0?nt(l.costUsd):"—",t[33]=o,t[34]=l,t[35]=j):j=t[35];let v;t[36]!==d||t[37]!==j||t[38]!==m?(v=s.jsx(Y,{title:d,value:j,subtitle:m}),t[36]=d,t[37]=j,t[38]=m,t[39]=v):v=t[39];let N;return t[40]!==I||t[41]!==v||t[42]!==R||t[43]!==C?(N=s.jsxs("div",{className:"grid grid-cols-2 lg:grid-cols-4 gap-3",children:[R,C,I,v]}),t[40]=I,t[41]=v,t[42]=R,t[43]=C,t[44]=N):N=t[44],N}function kt(c){const t=V.c(57),{run:i,usage:r,onClick:e,lastRowRef:a}=c,o=X();let n,l;if(t[0]!==i.created_at){const P=new Date(i.created_at);n=P.toLocaleDateString("en-US",{month:"short",day:"numeric"}),l=P.toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit"}),t[0]=i.created_at,t[1]=n,t[2]=l}else n=t[1],l=t[2];const w=l;let f,x,m,u,g,h,R,T,y,C,S;if(t[3]!==a||t[4]!==e||t[5]!==i.status||t[6]!==i.title||t[7]!==o){const P=vt(i.status),U=P.icon;x=st,y=a,C="h-14 cursor-pointer hover:bg-muted/40 transition-colors border-b-0",S=e,t[19]!==i.title?(m=s.jsx(Q,{className:"min-w-0 pr-2 pl-4 md:pr-4",children:s.jsx("div",{className:"font-medium text-foreground truncate",children:i.title})}),t[19]=i.title,t[20]=m):m=t[20],f=Q,T="w-28 px-3",h="flex items-center gap-1.5",R=s.jsx(U,{size:14,className:P.iconClassName}),u=ut("text-sm",P.labelColor),g=o(P.labelKey),t[3]=a,t[4]=e,t[5]=i.status,t[6]=i.title,t[7]=o,t[8]=f,t[9]=x,t[10]=m,t[11]=u,t[12]=g,t[13]=h,t[14]=R,t[15]=T,t[16]=y,t[17]=C,t[18]=S}else f=t[8],x=t[9],m=t[10],u=t[11],g=t[12],h=t[13],R=t[14],T=t[15],y=t[16],C=t[17],S=t[18];let p;t[21]!==u||t[22]!==g?(p=s.jsx("span",{className:u,children:g}),t[21]=u,t[22]=g,t[23]=p):p=t[23];let I;t[24]!==p||t[25]!==h||t[26]!==R?(I=s.jsxs("div",{className:h,children:[R,p]}),t[24]=p,t[25]=h,t[26]=R,t[27]=I):I=t[27];let d;t[28]!==f||t[29]!==I||t[30]!==T?(d=s.jsx(f,{className:T,children:I}),t[28]=f,t[29]=I,t[30]=T,t[31]=d):d=t[31];let j;t[32]!==r?(j=r?at(r.totalTokens):"—",t[32]=r,t[33]=j):j=t[33];let v;t[34]!==j?(v=s.jsx(Q,{className:"w-24 px-3 text-right tabular-nums text-muted-foreground",children:j}),t[34]=j,t[35]=v):v=t[35];let N;t[36]!==r?(N=r&&r.costUsd>0?nt(r.costUsd):"—",t[36]=r,t[37]=N):N=t[37];let k;t[38]!==N?(k=s.jsx(Q,{className:"w-24 px-3 text-right tabular-nums text-muted-foreground",children:N}),t[38]=N,t[39]=k):k=t[39];let D;t[40]!==n?(D=s.jsx("div",{children:n}),t[40]=n,t[41]=D):D=t[41];let _;t[42]!==w?(_=s.jsx("div",{className:"text-xs text-muted-foreground/60",children:w}),t[42]=w,t[43]=_):_=t[43];let E;t[44]!==D||t[45]!==_?(E=s.jsxs(Q,{className:"w-32 px-3 pr-5 text-muted-foreground",children:[D,_]}),t[44]=D,t[45]=_,t[46]=E):E=t[46];let $;return t[47]!==x||t[48]!==m||t[49]!==d||t[50]!==v||t[51]!==k||t[52]!==E||t[53]!==y||t[54]!==C||t[55]!==S?($=s.jsxs(x,{ref:y,className:C,onClick:S,children:[m,d,v,k,E]}),t[47]=x,t[48]=m,t[49]=d,t[50]=v,t[51]=k,t[52]=E,t[53]=y,t[54]=C,t[55]=S,t[56]=$):$=t[56],$}function Bt(c){const t=V.c(73),{automationId:i,triggerIds:r,range:e}=c,a=X(),{org:o,locator:n}=it();let l;t[0]!==o.id||t[1]!==o.slug?(l={connectionId:rt,orgId:o.id,orgSlug:o.slug},t[0]=o.id,t[1]=o.slug,t[2]=l):l=t[2];const w=pt(l),f=ct(),x=xt(),m=gt(),{data:u}=St(),g=r.length>0;let h;t[3]!==i||t[4]!==o.id||t[5]!==r?(h=tt.automationRuns(o.id,i,r),t[3]=i,t[4]=o.id,t[5]=r,t[6]=h):h=t[6];let R;t[7]!==f||t[8]!==r?(R=async M=>{const{pageParam:z}=M,ot=z===void 0?0:z;return await f.call("COLLECTION_THREADS_LIST",{limit:W,offset:ot,where:{trigger_ids:r}})},t[7]=f,t[8]=r,t[9]=R):R=t[9];let T;t[10]!==g||t[11]!==h||t[12]!==R?(T={queryKey:h,queryFn:R,initialPageParam:0,getNextPageParam:Et,enabled:g,staleTime:3e4},t[10]=g,t[11]=h,t[12]=R,t[13]=T):T=t[13];const{data:y,fetchNextPage:C,hasNextPage:S,isFetchingNextPage:p,isLoading:I}=ft(T);let d,j,v,N;t[14]!==y?.pages||t[15]!==n||t[16]!==e?(d=(y?.pages??[]).flatMap(Dt),N=d.map(Pt),v=dt,j=tt.monitoringThreadUsage(n,JSON.stringify({ids:N,...e})),t[14]=y?.pages,t[15]=n,t[16]=e,t[17]=d,t[18]=j,t[19]=v,t[20]=N):(d=t[17],j=t[18],v=t[19],N=t[20]);let k;t[21]!==e||t[22]!==f||t[23]!==N?(k=async()=>await f.call("MONITORING_THREAD_USAGE",{threadIds:N,...e.startDate?{startDate:e.startDate}:{},...e.endDate?{endDate:e.endDate}:{}}),t[21]=e,t[22]=f,t[23]=N,t[24]=k):k=t[24];const D=N.length>0;let _;t[25]!==j||t[26]!==k||t[27]!==D?(_={queryKey:j,queryFn:k,enabled:D,staleTime:3e4},t[25]=j,t[26]=k,t[27]=D,t[28]=_):_=t[28];const{data:E}=v(_);let $;t[29]!==E?.items?($=new Map((E?.items??[]).map(_t)),t[29]=E?.items,t[30]=$):$=t[30];const P=$;let U;t[31]!==C||t[32]!==S||t[33]!==p?(U=()=>{S&&!p&&C()},t[31]=C,t[32]=S,t[33]=p,t[34]=U):U=t[34];const Z=Tt(U,S??!1,p),b=It(d),B=b.selected;let L;t[35]!==i||t[36]!==e?(L=s.jsx(yt,{automationId:i,range:e}),t[35]=i,t[36]=e,t[37]=L):L=t[37];let O;t[38]!==g||t[39]!==I||t[40]!==Z||t[41]!==d||t[42]!==b||t[43]!==a||t[44]!==P?(O=g?I?s.jsx("div",{className:"py-16 text-center text-sm text-muted-foreground",children:a("automations.automationRuns.loadingRuns")}):d.length===0?s.jsx("div",{className:"py-16",children:s.jsx(et,{title:a("automations.automationRuns.noRunsTitle"),description:a("automations.automationRuns.noRunsDescription")})}):s.jsxs(jt,{className:"w-full border-collapse",children:[s.jsx(Nt,{className:"border-b-0",children:s.jsxs(st,{className:"h-9 hover:bg-transparent border-b border-border",children:[s.jsx(G,{className:"pl-4 text-xs font-mono font-normal text-muted-foreground uppercase tracking-wide",children:a("automations.automationRuns.runHeader")}),s.jsx(G,{className:"w-28 px-3 text-xs font-mono font-normal text-muted-foreground uppercase tracking-wide",children:a("automations.automationRuns.statusHeader")}),s.jsx(G,{className:"w-24 px-3 text-xs font-mono font-normal text-muted-foreground uppercase tracking-wide text-right",children:a("automations.automationRuns.tokensHeader")}),s.jsx(G,{className:"w-24 px-3 text-xs font-mono font-normal text-muted-foreground uppercase tracking-wide text-right",children:a("automations.automationRuns.costHeader")}),s.jsx(G,{className:"w-32 px-3 pr-5 text-xs font-mono font-normal text-muted-foreground uppercase tracking-wide",children:a("automations.automationRuns.startedHeader")})]})}),s.jsx(bt,{children:d.map((M,z)=>s.jsx(kt,{run:M,usage:P.get(M.id),onClick:()=>b.select(M.id),lastRowRef:z===d.length-1?Z:void 0},M.id))})]}):s.jsx("div",{className:"py-16",children:s.jsx(et,{title:a("automations.automationRuns.noStartersTitle"),description:a("automations.automationRuns.noStartersDescription")})}),t[38]=g,t[39]=I,t[40]=Z,t[41]=d,t[42]=b,t[43]=a,t[44]=P,t[45]=O):O=t[45];let A;t[46]!==p||t[47]!==a?(A=p&&s.jsx("div",{className:"py-4 text-center text-sm text-muted-foreground",children:a("automations.automationRuns.loadingMore")}),t[46]=p,t[47]=a,t[48]=A):A=t[48];let H;t[49]!==b?(H=M=>{M||b.close()},t[49]=b,t[50]=H):H=t[50];let K;t[51]!==x||t[52]!==m||t[53]!==w||t[54]!==n||t[55]!==u||t[56]!==d||t[57]!==B||t[58]!==b.index||t[59]!==b.next||t[60]!==b.prev?(K=B&&s.jsx(Ct,{thread:B,client:w,locator:n,connections:x,virtualMcps:m,members:u,nav:{index:b.index,total:d.length,onPrev:b.prev,onNext:b.next}}),t[51]=x,t[52]=m,t[53]=w,t[54]=n,t[55]=u,t[56]=d,t[57]=B,t[58]=b.index,t[59]=b.next,t[60]=b.prev,t[61]=K):K=t[61];let q;t[62]!==K?(q=s.jsx(Rt,{className:"sm:max-w-2xl flex flex-col p-0 gap-0",children:K}),t[62]=K,t[63]=q):q=t[63];let F;t[64]!==b.isOpen||t[65]!==H||t[66]!==q?(F=s.jsx(ht,{open:b.isOpen,onOpenChange:H,children:q}),t[64]=b.isOpen,t[65]=H,t[66]=q,t[67]=F):F=t[67];let J;return t[68]!==L||t[69]!==O||t[70]!==A||t[71]!==F?(J=s.jsxs("div",{className:"flex flex-col gap-5",children:[L,O,A,F]}),t[68]=L,t[69]=O,t[70]=A,t[71]=F,t[72]=J):J=t[72],J}function _t(c){return[c.threadId,{calls:c.calls,inputTokens:c.inputTokens,outputTokens:c.outputTokens,totalTokens:c.totalTokens,costUsd:c.costUsd}]}function Pt(c){return c.id}function Dt(c){return c.items??[]}function Et(c,t){const i=c,r=t;if(!((i?.items?.length??0)<W))return r.length*W}export{Bt as A,It as u};
1
+ import{c as V,r as lt,b as X,a2 as it,J as rt,aa as ct,K as tt,j as s,l as ut,m as dt,ff as mt}from"./index-Bq_h7Umn.js";import{u as ft}from"./useInfiniteQuery-Dv-XATwg.js";import{u as xt}from"./use-connection-BOUIPY6t.js";import{u as pt}from"./use-mcp-client-CNAsaI5e.js";import{b as gt}from"./repository-binding-BRtfh-B2.js";import{b as ht,a as Rt}from"./sheet-Jvnn431v.js";import{e as jt,a as Nt,b as st,T as G,d as bt,c as Q}from"./table-Cri4Xg02.js";import{E as et}from"./empty-state-DLkkLJux.js";import{u as Tt}from"./use-infinite-scroll-Dm8NTnoo.js";import{u as St}from"./use-members-BgejpANd.js";import{g as vt}from"./task-status-BbeX0x8L.js";import{e as wt}from"./use-automations-BmndfAFz.js";import{T as Ct,f as at,a as nt}from"./thread-sheet-body-jfLPV_BJ.js";function It(c){const t=V.c(15),[i,r]=lt.useState(null);let e;t[0]!==c||t[1]!==i?(e=i!==null?c.findIndex(u=>u.id===i):-1,t[0]=c,t[1]=i,t[2]=e):e=t[2];const a=e,o=a!==-1?c[a]:null,n=o!==null;let l,w;t[3]===Symbol.for("react.memo_cache_sentinel")?(l=u=>r(u),w=()=>r(null),t[3]=l,t[4]=w):(l=t[3],w=t[4]);let f,x;t[5]!==a||t[6]!==c?(f=()=>{const u=c[a-1];a>0&&u&&r(u.id)},x=()=>{const u=c[a+1];a!==-1&&u&&r(u.id)},t[5]=a,t[6]=c,t[7]=f,t[8]=x):(f=t[7],x=t[8]);let m;return t[9]!==a||t[10]!==o||t[11]!==n||t[12]!==f||t[13]!==x?(m={selected:o,index:a,isOpen:n,select:l,close:w,prev:f,next:x},t[9]=a,t[10]=o,t[11]=n,t[12]=f,t[13]=x,t[14]=m):m=t[14],m}const W=50;function Y(c){const t=V.c(10),{title:i,value:r,subtitle:e}=c;let a;t[0]!==i?(a=s.jsx("span",{className:"text-sm text-foreground/70",children:i}),t[0]=i,t[1]=a):a=t[1];let o;t[2]!==r?(o=s.jsx("span",{className:"text-3xl font-normal tabular-nums",children:r}),t[2]=r,t[3]=o):o=t[3];let n;t[4]!==e?(n=e&&s.jsx("span",{className:"text-xs text-muted-foreground",children:e}),t[4]=e,t[5]=n):n=t[5];let l;return t[6]!==a||t[7]!==o||t[8]!==n?(l=s.jsxs(mt,{className:"pt-4 px-4 pb-5 gap-1",children:[a,o,n]}),t[6]=a,t[7]=o,t[8]=n,t[9]=l):l=t[9],l}function yt(c){const t=V.c(45),{automationId:i,range:r}=c,e=X(),{data:a,isLoading:o}=wt(i,r),n=a?.runs,l=a?.usage;let w;t[0]!==n?(w=n&&n.total>0?`${Math.round(n.completed/n.total*100)}%`:"—",t[0]=n,t[1]=w):w=t[1];const f=w;let x;t[2]!==e||t[3]!==l?(x=l&&l.truncated?e("automations.automationRuns.lastRunsSubtitle",{count:l.sampledRuns}):void 0,t[2]=e,t[3]=l,t[4]=x):x=t[4];const m=x;let u;t[5]!==e?(u=e("automations.automationRuns.runsTitle"),t[5]=e,t[6]=u):u=t[6];let g;t[7]!==o||t[8]!==n?.total?(g=o?"…":n?.total.toLocaleString()??"0",t[7]=o,t[8]=n?.total,t[9]=g):g=t[9];let h;t[10]!==n||t[11]!==e?(h=n?`${n.completed} ${e("automations.automationRuns.ok")} · ${n.failed} ${e("automations.automationRuns.failed")}${n.inProgress>0?` · ${n.inProgress} ${e("automations.automationRuns.running")}`:""}`:void 0,t[10]=n,t[11]=e,t[12]=h):h=t[12];let R;t[13]!==u||t[14]!==g||t[15]!==h?(R=s.jsx(Y,{title:u,value:g,subtitle:h}),t[13]=u,t[14]=g,t[15]=h,t[16]=R):R=t[16];let T;t[17]!==e?(T=e("automations.automationRuns.successRateTitle"),t[17]=e,t[18]=T):T=t[18];const y=o?"…":f;let C;t[19]!==T||t[20]!==y?(C=s.jsx(Y,{title:T,value:y}),t[19]=T,t[20]=y,t[21]=C):C=t[21];let S;t[22]!==e?(S=e("automations.automationRuns.tokensTitle"),t[22]=e,t[23]=S):S=t[23];let p;t[24]!==o||t[25]!==l?.totalTokens?(p=o?"…":at(l?.totalTokens??0),t[24]=o,t[25]=l?.totalTokens,t[26]=p):p=t[26];let I;t[27]!==S||t[28]!==p||t[29]!==m?(I=s.jsx(Y,{title:S,value:p,subtitle:m}),t[27]=S,t[28]=p,t[29]=m,t[30]=I):I=t[30];let d;t[31]!==e?(d=e("automations.automationRuns.costTitle"),t[31]=e,t[32]=d):d=t[32];let j;t[33]!==o||t[34]!==l?(j=o?"…":l&&l.costUsd>0?nt(l.costUsd):"—",t[33]=o,t[34]=l,t[35]=j):j=t[35];let v;t[36]!==d||t[37]!==j||t[38]!==m?(v=s.jsx(Y,{title:d,value:j,subtitle:m}),t[36]=d,t[37]=j,t[38]=m,t[39]=v):v=t[39];let N;return t[40]!==I||t[41]!==v||t[42]!==R||t[43]!==C?(N=s.jsxs("div",{className:"grid grid-cols-2 lg:grid-cols-4 gap-3",children:[R,C,I,v]}),t[40]=I,t[41]=v,t[42]=R,t[43]=C,t[44]=N):N=t[44],N}function kt(c){const t=V.c(57),{run:i,usage:r,onClick:e,lastRowRef:a}=c,o=X();let n,l;if(t[0]!==i.created_at){const P=new Date(i.created_at);n=P.toLocaleDateString("en-US",{month:"short",day:"numeric"}),l=P.toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit"}),t[0]=i.created_at,t[1]=n,t[2]=l}else n=t[1],l=t[2];const w=l;let f,x,m,u,g,h,R,T,y,C,S;if(t[3]!==a||t[4]!==e||t[5]!==i.status||t[6]!==i.title||t[7]!==o){const P=vt(i.status),U=P.icon;x=st,y=a,C="h-14 cursor-pointer hover:bg-muted/40 transition-colors border-b-0",S=e,t[19]!==i.title?(m=s.jsx(Q,{className:"min-w-0 pr-2 pl-4 md:pr-4",children:s.jsx("div",{className:"font-medium text-foreground truncate",children:i.title})}),t[19]=i.title,t[20]=m):m=t[20],f=Q,T="w-28 px-3",h="flex items-center gap-1.5",R=s.jsx(U,{size:14,className:P.iconClassName}),u=ut("text-sm",P.labelColor),g=o(P.labelKey),t[3]=a,t[4]=e,t[5]=i.status,t[6]=i.title,t[7]=o,t[8]=f,t[9]=x,t[10]=m,t[11]=u,t[12]=g,t[13]=h,t[14]=R,t[15]=T,t[16]=y,t[17]=C,t[18]=S}else f=t[8],x=t[9],m=t[10],u=t[11],g=t[12],h=t[13],R=t[14],T=t[15],y=t[16],C=t[17],S=t[18];let p;t[21]!==u||t[22]!==g?(p=s.jsx("span",{className:u,children:g}),t[21]=u,t[22]=g,t[23]=p):p=t[23];let I;t[24]!==p||t[25]!==h||t[26]!==R?(I=s.jsxs("div",{className:h,children:[R,p]}),t[24]=p,t[25]=h,t[26]=R,t[27]=I):I=t[27];let d;t[28]!==f||t[29]!==I||t[30]!==T?(d=s.jsx(f,{className:T,children:I}),t[28]=f,t[29]=I,t[30]=T,t[31]=d):d=t[31];let j;t[32]!==r?(j=r?at(r.totalTokens):"—",t[32]=r,t[33]=j):j=t[33];let v;t[34]!==j?(v=s.jsx(Q,{className:"w-24 px-3 text-right tabular-nums text-muted-foreground",children:j}),t[34]=j,t[35]=v):v=t[35];let N;t[36]!==r?(N=r&&r.costUsd>0?nt(r.costUsd):"—",t[36]=r,t[37]=N):N=t[37];let k;t[38]!==N?(k=s.jsx(Q,{className:"w-24 px-3 text-right tabular-nums text-muted-foreground",children:N}),t[38]=N,t[39]=k):k=t[39];let D;t[40]!==n?(D=s.jsx("div",{children:n}),t[40]=n,t[41]=D):D=t[41];let _;t[42]!==w?(_=s.jsx("div",{className:"text-xs text-muted-foreground/60",children:w}),t[42]=w,t[43]=_):_=t[43];let E;t[44]!==D||t[45]!==_?(E=s.jsxs(Q,{className:"w-32 px-3 pr-5 text-muted-foreground",children:[D,_]}),t[44]=D,t[45]=_,t[46]=E):E=t[46];let $;return t[47]!==x||t[48]!==m||t[49]!==d||t[50]!==v||t[51]!==k||t[52]!==E||t[53]!==y||t[54]!==C||t[55]!==S?($=s.jsxs(x,{ref:y,className:C,onClick:S,children:[m,d,v,k,E]}),t[47]=x,t[48]=m,t[49]=d,t[50]=v,t[51]=k,t[52]=E,t[53]=y,t[54]=C,t[55]=S,t[56]=$):$=t[56],$}function Bt(c){const t=V.c(73),{automationId:i,triggerIds:r,range:e}=c,a=X(),{org:o,locator:n}=it();let l;t[0]!==o.id||t[1]!==o.slug?(l={connectionId:rt,orgId:o.id,orgSlug:o.slug},t[0]=o.id,t[1]=o.slug,t[2]=l):l=t[2];const w=pt(l),f=ct(),x=xt(),m=gt(),{data:u}=St(),g=r.length>0;let h;t[3]!==i||t[4]!==o.id||t[5]!==r?(h=tt.automationRuns(o.id,i,r),t[3]=i,t[4]=o.id,t[5]=r,t[6]=h):h=t[6];let R;t[7]!==f||t[8]!==r?(R=async M=>{const{pageParam:z}=M,ot=z===void 0?0:z;return await f.call("COLLECTION_THREADS_LIST",{limit:W,offset:ot,where:{trigger_ids:r}})},t[7]=f,t[8]=r,t[9]=R):R=t[9];let T;t[10]!==g||t[11]!==h||t[12]!==R?(T={queryKey:h,queryFn:R,initialPageParam:0,getNextPageParam:Et,enabled:g,staleTime:3e4},t[10]=g,t[11]=h,t[12]=R,t[13]=T):T=t[13];const{data:y,fetchNextPage:C,hasNextPage:S,isFetchingNextPage:p,isLoading:I}=ft(T);let d,j,v,N;t[14]!==y?.pages||t[15]!==n||t[16]!==e?(d=(y?.pages??[]).flatMap(Dt),N=d.map(Pt),v=dt,j=tt.monitoringThreadUsage(n,JSON.stringify({ids:N,...e})),t[14]=y?.pages,t[15]=n,t[16]=e,t[17]=d,t[18]=j,t[19]=v,t[20]=N):(d=t[17],j=t[18],v=t[19],N=t[20]);let k;t[21]!==e||t[22]!==f||t[23]!==N?(k=async()=>await f.call("MONITORING_THREAD_USAGE",{threadIds:N,...e.startDate?{startDate:e.startDate}:{},...e.endDate?{endDate:e.endDate}:{}}),t[21]=e,t[22]=f,t[23]=N,t[24]=k):k=t[24];const D=N.length>0;let _;t[25]!==j||t[26]!==k||t[27]!==D?(_={queryKey:j,queryFn:k,enabled:D,staleTime:3e4},t[25]=j,t[26]=k,t[27]=D,t[28]=_):_=t[28];const{data:E}=v(_);let $;t[29]!==E?.items?($=new Map((E?.items??[]).map(_t)),t[29]=E?.items,t[30]=$):$=t[30];const P=$;let U;t[31]!==C||t[32]!==S||t[33]!==p?(U=()=>{S&&!p&&C()},t[31]=C,t[32]=S,t[33]=p,t[34]=U):U=t[34];const Z=Tt(U,S??!1,p),b=It(d),B=b.selected;let L;t[35]!==i||t[36]!==e?(L=s.jsx(yt,{automationId:i,range:e}),t[35]=i,t[36]=e,t[37]=L):L=t[37];let O;t[38]!==g||t[39]!==I||t[40]!==Z||t[41]!==d||t[42]!==b||t[43]!==a||t[44]!==P?(O=g?I?s.jsx("div",{className:"py-16 text-center text-sm text-muted-foreground",children:a("automations.automationRuns.loadingRuns")}):d.length===0?s.jsx("div",{className:"py-16",children:s.jsx(et,{title:a("automations.automationRuns.noRunsTitle"),description:a("automations.automationRuns.noRunsDescription")})}):s.jsxs(jt,{className:"w-full border-collapse",children:[s.jsx(Nt,{className:"border-b-0",children:s.jsxs(st,{className:"h-9 hover:bg-transparent border-b border-border",children:[s.jsx(G,{className:"pl-4 text-xs font-mono font-normal text-muted-foreground uppercase tracking-wide",children:a("automations.automationRuns.runHeader")}),s.jsx(G,{className:"w-28 px-3 text-xs font-mono font-normal text-muted-foreground uppercase tracking-wide",children:a("automations.automationRuns.statusHeader")}),s.jsx(G,{className:"w-24 px-3 text-xs font-mono font-normal text-muted-foreground uppercase tracking-wide text-right",children:a("automations.automationRuns.tokensHeader")}),s.jsx(G,{className:"w-24 px-3 text-xs font-mono font-normal text-muted-foreground uppercase tracking-wide text-right",children:a("automations.automationRuns.costHeader")}),s.jsx(G,{className:"w-32 px-3 pr-5 text-xs font-mono font-normal text-muted-foreground uppercase tracking-wide",children:a("automations.automationRuns.startedHeader")})]})}),s.jsx(bt,{children:d.map((M,z)=>s.jsx(kt,{run:M,usage:P.get(M.id),onClick:()=>b.select(M.id),lastRowRef:z===d.length-1?Z:void 0},M.id))})]}):s.jsx("div",{className:"py-16",children:s.jsx(et,{title:a("automations.automationRuns.noStartersTitle"),description:a("automations.automationRuns.noStartersDescription")})}),t[38]=g,t[39]=I,t[40]=Z,t[41]=d,t[42]=b,t[43]=a,t[44]=P,t[45]=O):O=t[45];let A;t[46]!==p||t[47]!==a?(A=p&&s.jsx("div",{className:"py-4 text-center text-sm text-muted-foreground",children:a("automations.automationRuns.loadingMore")}),t[46]=p,t[47]=a,t[48]=A):A=t[48];let H;t[49]!==b?(H=M=>{M||b.close()},t[49]=b,t[50]=H):H=t[50];let K;t[51]!==x||t[52]!==m||t[53]!==w||t[54]!==n||t[55]!==u||t[56]!==d||t[57]!==B||t[58]!==b.index||t[59]!==b.next||t[60]!==b.prev?(K=B&&s.jsx(Ct,{thread:B,client:w,locator:n,connections:x,virtualMcps:m,members:u,nav:{index:b.index,total:d.length,onPrev:b.prev,onNext:b.next}}),t[51]=x,t[52]=m,t[53]=w,t[54]=n,t[55]=u,t[56]=d,t[57]=B,t[58]=b.index,t[59]=b.next,t[60]=b.prev,t[61]=K):K=t[61];let q;t[62]!==K?(q=s.jsx(Rt,{className:"sm:max-w-2xl flex flex-col p-0 gap-0",children:K}),t[62]=K,t[63]=q):q=t[63];let F;t[64]!==b.isOpen||t[65]!==H||t[66]!==q?(F=s.jsx(ht,{open:b.isOpen,onOpenChange:H,children:q}),t[64]=b.isOpen,t[65]=H,t[66]=q,t[67]=F):F=t[67];let J;return t[68]!==L||t[69]!==O||t[70]!==A||t[71]!==F?(J=s.jsxs("div",{className:"flex flex-col gap-5",children:[L,O,A,F]}),t[68]=L,t[69]=O,t[70]=A,t[71]=F,t[72]=J):J=t[72],J}function _t(c){return[c.threadId,{calls:c.calls,inputTokens:c.inputTokens,outputTokens:c.outputTokens,totalTokens:c.totalTokens,costUsd:c.costUsd}]}function Pt(c){return c.id}function Dt(c){return c.items??[]}function Et(c,t){const i=c,r=t;if(!((i?.items?.length??0)<W))return r.length*W}export{Bt as A,It as u};
@@ -1 +1 @@
1
- import{c as k,j as e,b as $,a2 as D,d as M,r as q,n as d,B as V,fo as F,y as R}from"./index-zFizTRgJ.js";import{s as G}from"./Plus-Ch1sG4T5.js";import{i as S}from"./ZoomOut-CrQxrOGW.js";import{S as H}from"./search-input-BHgo2lGV.js";import{E as T}from"./empty-state-Dl0uE1qg.js";import{u as J}from"./use-automations-J4kPNxTM.js";import{u as K}from"./use-navigate-to-agent-Yt28jbt_.js";import{A as O}from"./automation-list-row-YpYqBxpc.js";import{b as Q}from"./repository-binding-D4HjFqUu.js";import{R as U}from"./require-capability-QNDooqDp.js";import"./SearchMd-D7CH4cEW.js";import"./use-mcp-client-BpCQxGRA.js";import"./auth-mnJ9PW01.js";import"./thread-intent-DHio6v3T.js";import"./delay-CnY5UFtP.js";import"./backoff-CrEUbyZT.js";import"./watch-sse-pool-BFcKHKod.js";import"./task-board-Cz8RAkVC.js";import"./schema-6H-MEggI.js";import"./slugify-CEUa2lfQ.js";import"./badge-CSXpEa55.js";import"./alert-dialog-CmV9dy9T.js";import"./agent-icon-D25DK5wS.js";import"./AlertCircle-CHrjAIcc.js";import"./Tool01-D47UxjHr.js";import"./ArrowUp-DVmGL0QN.js";import"./ArrowLeft-CDSbOlKg.js";import"./LinkBroken01-CWg3Xs9J.js";import"./ShoppingBag01-CFzAExOe.js";import"./Building02-Cjmi-E_Q.js";import"./CheckCircle-DH3xbIup.js";import"./ChevronUp-fo2ERVlh.js";import"./ChevronSelectorVertical-D3--DzuF.js";import"./UserSquare-D5hRO90M.js";import"./Copy01-C7JKQ2yo.js";import"./CreditCard01-DuhJeWgL.js";import"./DotsVertical-CdIsXudQ.js";import"./Image01-DQr5z6Eu.js";import"./Globe04-CMhAsYW7.js";import"./SwitchHorizontal01-ZzQSxDu-.js";import"./Key01-DkQjjPwv.js";import"./Link01-CBvOTEVq.js";import"./Monitor01-CawnpOBp.js";import"./Sun-AXWLcql2.js";import"./Play-CHfHT47l.js";import"./Trash01-DjbVg-Gr.js";import"./Upload01-CongSYMk.js";import"./User01-C0eJYwru.js";import"./Users01-C3nUQ4J2.js";import"./XClose-CEtKIB7q.js";import"./access-gate-rafBainF.js";import"./capability-load-error-D4Y-1y8Z.js";function W(){const t=k.c(20),o=$(),{org:p}=D(),{data:y}=J(void 0),g=y===void 0?[]:y,E=Q(),P=K(),f=M(),[x,z]=q.useState(""),h=x.toLowerCase(),b=new Map(E.map(X)),A=g.filter(i=>{if(!h||i.name.toLowerCase().includes(h))return!0;if(i.virtual_mcp_id){const l=b.get(i.virtual_mcp_id);if(l&&l.title.toLowerCase().includes(h))return!0}return!1}),B=(i,l)=>{const N=l&&b.has(l)?l:F(p.id);R("automations_list_row_clicked",{automation_id:i,agent_id:N,source:"settings_automations"}),P(N,{panel:`automation:${i}`})};let c;t[0]!==f||t[1]!==p.slug?(c=()=>{R("automations_empty_state_browse_agents_clicked"),f({to:"/$org/settings/projects",params:{org:p.slug}})},t[0]=f,t[1]=p.slug,t[2]=c):c=t[2];const L=c,j=d,C=d,v=d;let s;t[3]!==o?(s=o("settings.automations.pageTitle"),t[3]=o,t[4]=s):s=t[4];let r;t[5]!==s?(r=e.jsx(d.Title,{children:s}),t[5]=s,t[6]=r):r=t[6];const w=g.length>0&&e.jsx(H,{value:x,onChange:z,placeholder:o("settings.automations.searchPlaceholder"),className:"w-full md:w-[375px]"});let n;t[7]!==r||t[8]!==w?(n=e.jsxs("div",{className:"flex flex-col gap-6",children:[r,w]}),t[7]=r,t[8]=w,t[9]=n):n=t[9];const _=g.length===0?e.jsx("div",{className:"flex items-center justify-center py-20",children:e.jsx(T,{image:e.jsx(S,{size:48,className:"text-muted-foreground"}),title:o("settings.automations.emptyTitle"),description:o("settings.automations.emptyDescription"),actions:e.jsxs(V,{size:"sm",onClick:L,children:[e.jsx(G,{size:14}),o("settings.automations.browseAgentsButton")]})})}):A.length===0?e.jsx("div",{className:"flex items-center justify-center py-20",children:e.jsx(T,{image:e.jsx(S,{size:48,className:"text-muted-foreground"}),title:o("settings.automations.noResultsTitle"),description:o("settings.automations.noResultsDescription",{search:x})})}):e.jsx("div",{className:"mt-6 rounded-xl border border-border overflow-hidden",children:A.map(i=>e.jsx(O,{automation:i,showAgent:!0,onClick:()=>B(i.id,i.virtual_mcp_id)},i.id))});let a;t[10]!==v.Container||t[11]!==n||t[12]!==_?(a=e.jsxs(v.Container,{children:[n,_]}),t[10]=v.Container,t[11]=n,t[12]=_,t[13]=a):a=t[13];let m;t[14]!==C.Content||t[15]!==a?(m=e.jsx(C.Content,{children:a}),t[14]=C.Content,t[15]=a,t[16]=m):m=t[16];let u;return t[17]!==j||t[18]!==m?(u=e.jsx(j,{children:m}),t[17]=j,t[18]=m,t[19]=u):u=t[19],u}function X(t){return[t.id,t]}function Wt(){const t=k.c(1);let o;return t[0]===Symbol.for("react.memo_cache_sentinel")?(o=e.jsx(U,{capability:"automations:manage",area:"automations",children:e.jsx(W,{})}),t[0]=o):o=t[0],o}export{Wt as default};
1
+ import{c as k,j as e,b as $,a2 as D,d as M,r as q,n as d,B as V,fo as F,y as R}from"./index-Bq_h7Umn.js";import{s as G}from"./Plus-BuHYG86K.js";import{i as S}from"./ZoomOut-4Na-37_y.js";import{S as H}from"./search-input-39xhlSYx.js";import{E as T}from"./empty-state-DLkkLJux.js";import{u as J}from"./use-automations-BmndfAFz.js";import{u as K}from"./use-navigate-to-agent-B0zcOk2z.js";import{A as O}from"./automation-list-row-DVkYWn7-.js";import{b as Q}from"./repository-binding-BRtfh-B2.js";import{R as U}from"./require-capability-CPXwUBF0.js";import"./SearchMd-Dq3HFXQW.js";import"./use-mcp-client-CNAsaI5e.js";import"./auth-mFhLeKMz.js";import"./thread-intent-D_WXT-Pe.js";import"./delay-CnY5UFtP.js";import"./backoff-CrEUbyZT.js";import"./watch-sse-pool-CMD7Z7qL.js";import"./task-board-tSRaoKqm.js";import"./schema-Du_TtumO.js";import"./slugify-CEUa2lfQ.js";import"./badge-e2QrlLU3.js";import"./alert-dialog-jQtZ3ZzI.js";import"./agent-icon-BWm1tEHf.js";import"./AlertCircle-yt_vxPJf.js";import"./Tool01-1QQRqWDa.js";import"./ArrowUp-CIbRKXRd.js";import"./ArrowLeft-BoFdVIj0.js";import"./LinkBroken01-3c_toy9W.js";import"./ShoppingBag01-Cf6UKyjX.js";import"./Building02-Grdt_-B9.js";import"./CheckCircle-CZBNcseh.js";import"./ChevronUp-D6IHSaQn.js";import"./ChevronSelectorVertical-Cx7bXE4W.js";import"./UserSquare-BlEF03DB.js";import"./Copy01-CEPiTf5t.js";import"./CreditCard01-tiXWLEqR.js";import"./DotsVertical-BuI2KBNC.js";import"./Image01-9sEHDLML.js";import"./Globe04-C0XtFFMY.js";import"./SwitchHorizontal01-Bu2dq40R.js";import"./Key01-yp2uNovQ.js";import"./Link01-EXdK0urZ.js";import"./Monitor01-TfUbVR_O.js";import"./Sun-CO0EKSy7.js";import"./Play-CN_3v0Nc.js";import"./Trash01-B6NXmxPH.js";import"./Upload01-D4HC2Tn9.js";import"./User01-j65IkD-p.js";import"./Users01-DaolauCT.js";import"./XClose-DR6y5rEy.js";import"./access-gate-BkRaj5GE.js";import"./capability-load-error-CIHPR5Gy.js";function W(){const t=k.c(20),o=$(),{org:p}=D(),{data:y}=J(void 0),g=y===void 0?[]:y,E=Q(),P=K(),f=M(),[x,z]=q.useState(""),h=x.toLowerCase(),b=new Map(E.map(X)),A=g.filter(i=>{if(!h||i.name.toLowerCase().includes(h))return!0;if(i.virtual_mcp_id){const l=b.get(i.virtual_mcp_id);if(l&&l.title.toLowerCase().includes(h))return!0}return!1}),B=(i,l)=>{const N=l&&b.has(l)?l:F(p.id);R("automations_list_row_clicked",{automation_id:i,agent_id:N,source:"settings_automations"}),P(N,{panel:`automation:${i}`})};let c;t[0]!==f||t[1]!==p.slug?(c=()=>{R("automations_empty_state_browse_agents_clicked"),f({to:"/$org/settings/projects",params:{org:p.slug}})},t[0]=f,t[1]=p.slug,t[2]=c):c=t[2];const L=c,j=d,C=d,v=d;let s;t[3]!==o?(s=o("settings.automations.pageTitle"),t[3]=o,t[4]=s):s=t[4];let r;t[5]!==s?(r=e.jsx(d.Title,{children:s}),t[5]=s,t[6]=r):r=t[6];const w=g.length>0&&e.jsx(H,{value:x,onChange:z,placeholder:o("settings.automations.searchPlaceholder"),className:"w-full md:w-[375px]"});let n;t[7]!==r||t[8]!==w?(n=e.jsxs("div",{className:"flex flex-col gap-6",children:[r,w]}),t[7]=r,t[8]=w,t[9]=n):n=t[9];const _=g.length===0?e.jsx("div",{className:"flex items-center justify-center py-20",children:e.jsx(T,{image:e.jsx(S,{size:48,className:"text-muted-foreground"}),title:o("settings.automations.emptyTitle"),description:o("settings.automations.emptyDescription"),actions:e.jsxs(V,{size:"sm",onClick:L,children:[e.jsx(G,{size:14}),o("settings.automations.browseAgentsButton")]})})}):A.length===0?e.jsx("div",{className:"flex items-center justify-center py-20",children:e.jsx(T,{image:e.jsx(S,{size:48,className:"text-muted-foreground"}),title:o("settings.automations.noResultsTitle"),description:o("settings.automations.noResultsDescription",{search:x})})}):e.jsx("div",{className:"mt-6 rounded-xl border border-border overflow-hidden",children:A.map(i=>e.jsx(O,{automation:i,showAgent:!0,onClick:()=>B(i.id,i.virtual_mcp_id)},i.id))});let a;t[10]!==v.Container||t[11]!==n||t[12]!==_?(a=e.jsxs(v.Container,{children:[n,_]}),t[10]=v.Container,t[11]=n,t[12]=_,t[13]=a):a=t[13];let m;t[14]!==C.Content||t[15]!==a?(m=e.jsx(C.Content,{children:a}),t[14]=C.Content,t[15]=a,t[16]=m):m=t[16];let u;return t[17]!==j||t[18]!==m?(u=e.jsx(j,{children:m}),t[17]=j,t[18]=m,t[19]=u):u=t[19],u}function X(t){return[t.id,t]}function Wt(){const t=k.c(1);let o;return t[0]===Symbol.for("react.memo_cache_sentinel")?(o=e.jsx(U,{capability:"automations:manage",area:"automations",children:e.jsx(W,{})}),t[0]=o):o=t[0],o}export{Wt as default};
@@ -1 +1 @@
1
- import{a1 as d}from"./index-zFizTRgJ.js";const m=1e4,y="true",i=2;function a(t,n){return d.chatAutosend(t,n)}function l(t){return t==="pending"||t==="sending"}function f(t){if(!t)return null;let n;try{n=JSON.parse(t)}catch{return null}if(!n||typeof n!="object")return null;const e=n;let o=0;e.status==="sending"?o=e.retryAt===void 0?1:i:e.retryAt!==void 0&&(o=1);const r=e.attempt===void 0?o:e.attempt;return typeof e.createdAt!="number"||typeof e.message!="object"||!l(e.status)||e.retryAt!==void 0&&typeof e.retryAt!="number"||typeof r!="number"||!Number.isInteger(r)||r<0||r>i?null:{...n,attempt:r}}function S(t,n,e,o,r=Date.now()){const s={message:o,createdAt:r,status:"pending",attempt:0};return t.setItem(a(n,e),JSON.stringify(s)),s}function p(t,n,e){const o=a(n,e),r=f(t.getItem(o));return r||(t.removeItem(o),null)}function g(t,n,e,o=Date.now()){const r=a(n,e),s=p(t,n,e);if(!s||s.status!=="pending")return null;if(s.attempt>=i)return t.removeItem(r),null;const c=s.retryAt??s.createdAt;if(o-c>=m)return t.removeItem(r),null;const u={...s,status:"sending",attempt:s.attempt+1};return t.setItem(r,JSON.stringify(u)),{message:u.message,createdAt:u.createdAt,attempt:u.attempt}}function T(t,n,e){t.removeItem(a(n,e))}export{y as A,T as a,g as c,S as w};
1
+ import{a1 as d}from"./index-Bq_h7Umn.js";const m=1e4,y="true",i=2;function a(t,n){return d.chatAutosend(t,n)}function l(t){return t==="pending"||t==="sending"}function f(t){if(!t)return null;let n;try{n=JSON.parse(t)}catch{return null}if(!n||typeof n!="object")return null;const e=n;let o=0;e.status==="sending"?o=e.retryAt===void 0?1:i:e.retryAt!==void 0&&(o=1);const r=e.attempt===void 0?o:e.attempt;return typeof e.createdAt!="number"||typeof e.message!="object"||!l(e.status)||e.retryAt!==void 0&&typeof e.retryAt!="number"||typeof r!="number"||!Number.isInteger(r)||r<0||r>i?null:{...n,attempt:r}}function S(t,n,e,o,r=Date.now()){const s={message:o,createdAt:r,status:"pending",attempt:0};return t.setItem(a(n,e),JSON.stringify(s)),s}function p(t,n,e){const o=a(n,e),r=f(t.getItem(o));return r||(t.removeItem(o),null)}function g(t,n,e,o=Date.now()){const r=a(n,e),s=p(t,n,e);if(!s||s.status!=="pending")return null;if(s.attempt>=i)return t.removeItem(r),null;const c=s.retryAt??s.createdAt;if(o-c>=m)return t.removeItem(r),null;const u={...s,status:"sending",attempt:s.attempt+1};return t.setItem(r,JSON.stringify(u)),{message:u.message,createdAt:u.createdAt,attempt:u.attempt}}function T(t,n,e){t.removeItem(a(n,e))}export{y as A,T as a,g as c,S as w};
@@ -1 +1 @@
1
- import{c as k,j as i,l as f,aS as R,bp as V,bq as I,br as $}from"./index-zFizTRgJ.js";import{s as O}from"./User01-C0eJYwru.js";function U(r){const e=k.c(8);let s,t;e[0]!==r?({className:s,...t}=r,e[0]=r,e[1]=s,e[2]=t):(s=e[1],t=e[2]);let o;e[3]!==s?(o=f("relative flex size-8 shrink-0 overflow-hidden rounded-full",s),e[3]=s,e[4]=o):o=e[4];let a;return e[5]!==t||e[6]!==o?(a=i.jsx($,{"data-slot":"avatar",className:o,...t}),e[5]=t,e[6]=o,e[7]=a):a=e[7],a}function E(r){const e=k.c(8);let s,t;e[0]!==r?({className:s,...t}=r,e[0]=r,e[1]=s,e[2]=t):(s=e[1],t=e[2]);let o;e[3]!==s?(o=f("aspect-square size-full",s),e[3]=s,e[4]=o):o=e[4];let a;return e[5]!==t||e[6]!==o?(a=i.jsx(V,{"data-slot":"avatar-image",className:o,...t}),e[5]=t,e[6]=o,e[7]=a):a=e[7],a}function M(r){const e=k.c(8);let s,t;e[0]!==r?({className:s,...t}=r,e[0]=r,e[1]=s,e[2]=t):(s=e[1],t=e[2]);let o;e[3]!==s?(o=f("bg-muted flex size-full items-center justify-center rounded-full",s),e[3]=s,e[4]=o):o=e[4];let a;return e[5]!==t||e[6]!==o?(a=i.jsx(I,{"data-slot":"avatar-fallback",className:o,...t}),e[5]=t,e[6]=o,e[7]=a):a=e[7],a}const C=["drop-shadow-lg bg-gradient-to-br from-red-100 to-red-300 text-red-800 shadow-lg shadow-red-300/40 ring-1 ring-red-300/30","drop-shadow-lg bg-gradient-to-br from-lime-100 to-lime-300 text-lime-800 shadow-lg shadow-lime-300/40 ring-1 ring-lime-300/30","drop-shadow-lg bg-gradient-to-br from-emerald-100 to-emerald-300 text-emerald-800 shadow-lg shadow-emerald-300/40 ring-1 ring-emerald-300/30","drop-shadow-lg bg-gradient-to-br from-orange-100 to-orange-300 text-orange-800 shadow-lg shadow-orange-300/40 ring-1 ring-orange-300/30","drop-shadow-lg bg-gradient-to-br from-amber-100 to-amber-300 text-amber-800 shadow-lg shadow-amber-300/40 ring-1 ring-amber-300/30","drop-shadow-lg bg-gradient-to-br from-yellow-100 to-yellow-300 text-yellow-800 shadow-lg shadow-yellow-300/40 ring-1 ring-yellow-300/30","drop-shadow-lg bg-gradient-to-br from-green-100 to-green-300 text-green-800 shadow-lg shadow-green-300/40 ring-1 ring-green-300/30","drop-shadow-lg bg-gradient-to-br from-teal-100 to-teal-300 text-teal-800 shadow-lg shadow-teal-300/40 ring-1 ring-teal-300/30","drop-shadow-lg bg-gradient-to-br from-cyan-100 to-cyan-300 text-cyan-800 shadow-lg shadow-cyan-300/40 ring-1 ring-cyan-300/30","drop-shadow-lg bg-gradient-to-br from-sky-100 to-sky-300 text-sky-800 shadow-lg shadow-sky-300/40 ring-1 ring-sky-300/30","drop-shadow-lg bg-gradient-to-br from-blue-100 to-blue-300 text-blue-800 shadow-lg shadow-blue-300/40 ring-1 ring-blue-300/30","drop-shadow-lg bg-gradient-to-br from-indigo-100 to-indigo-300 text-indigo-800 shadow-lg shadow-indigo-300/40 ring-1 ring-indigo-300/30","drop-shadow-lg bg-gradient-to-br from-violet-100 to-violet-300 text-violet-800 shadow-lg shadow-violet-300/40 ring-1 ring-violet-300/30","drop-shadow-lg bg-gradient-to-br from-purple-100 to-purple-300 text-purple-800 shadow-lg shadow-purple-300/40 ring-1 ring-purple-300/30","drop-shadow-lg bg-gradient-to-br from-fuchsia-100 to-fuchsia-300 text-fuchsia-800 shadow-lg shadow-fuchsia-300/40 ring-1 ring-fuchsia-300/30","drop-shadow-lg bg-gradient-to-br from-pink-100 to-pink-300 text-pink-800 shadow-lg shadow-pink-300/40 ring-1 ring-pink-300/30","drop-shadow-lg bg-gradient-to-br from-rose-100 to-rose-300 text-rose-800 shadow-lg shadow-rose-300/40 ring-1 ring-rose-300/30"],L="drop-shadow-lg text-muted-foreground bg-muted shadow-lg";function T(r){let e=0;for(let t=0;t<r.length;t++)e=r.charCodeAt(t)+((e<<5)-e);const s=Math.abs(e)%C.length;return C[s]}const S=R("border border-border",{variants:{shape:{circle:"rounded-full",square:""},size:{"3xs":"w-3 h-3 text-[7px] font-semibold","2xs":"w-4 h-4 text-[9px] font-semibold",xs:"w-6 h-6 text-sm font-semibold",sm:"w-8 h-8 text-lg font-semibold",base:"w-10 h-10 text-2xl font-semibold",lg:"w-12 h-12 text-3xl font-semibold",xl:"w-16 h-16 text-4xl font-semibold","2xl":"w-20 h-20 text-5xl font-semibold","3xl":"w-32 h-32 text-7xl font-semibold"}},compoundVariants:[{shape:"square",size:"xs",class:"rounded-lg"},{shape:"square",size:"sm",class:"rounded-xl"},{shape:"square",size:"base",class:"rounded-xl"},{shape:"square",size:"lg",class:"rounded-xl"},{shape:"square",size:"xl",class:"rounded-2xl"},{shape:"square",size:"2xl",class:"rounded-3xl"},{shape:"square",size:"3xl",class:"rounded-[40px]"}],defaultVariants:{shape:"square",size:"base"}}),_=R("",{variants:{objectFit:{contain:"object-contain",cover:"object-cover"}},defaultVariants:{objectFit:"cover"}}),D=r=>{const e={"3xs":8,"2xs":8,xs:12,sm:16,base:24,lg:28,xl:36,"2xl":48,"3xl":80};return e[r]||e.base};function W(r){const e=k.c(34);let s,t,o,a,n,d,g,l;e[0]!==r?({url:l,fallback:t,shape:a,size:n,objectFit:d,className:s,muted:g,...o}=r,e[0]=r,e[1]=s,e[2]=t,e[3]=o,e[4]=a,e[5]=n,e[6]=d,e[7]=g,e[8]=l):(s=e[1],t=e[2],o=e[3],a=e[4],n=e[5],d=e[6],g=e[7],l=e[8]);const m=a===void 0?"square":a,h=n===void 0?"base":n,u=d===void 0?"cover":d,j=g===void 0?!1:g;let x;e:{if(typeof t=="string"){let c;e[9]!==t?(c=t.trim().slice(0,2).toUpperCase(),e[9]=t,e[10]=c):c=e[10],x=c;break e}x=t}const b=x;let y;e:{if(j){y=L;break e}if(typeof t=="string"){let c;e[11]!==t?(c=T(t),e[11]=t,e[12]=c):c=e[12],y=c;break e}y=C[0]}const z=y;let q;e[13]!==l?(q=l?.startsWith("icon://"),e[13]=l,e[14]=q):q=e[14];const p=q;let N;e[15]!==p||e[16]!==l?(N=p?l?.replace("icon://",""):void 0,e[15]=p,e[16]=l,e[17]=N):N=e[17];const F=N;let w;e[18]!==s||e[19]!==m||e[20]!==h?(w=f(S({shape:m,size:h}),s),e[18]=s,e[19]=m,e[20]=h,e[21]=w):w=e[21];let v;e[22]!==z||e[23]!==b||e[24]!==F||e[25]!==p||e[26]!==u||e[27]!==h||e[28]!==l?(v=p&&F?i.jsx("div",{className:f("flex items-center justify-center w-full h-full",z),children:i.jsx(O,{size:D(h)})}):i.jsxs(i.Fragment,{children:[l&&i.jsx(E,{src:l,loading:"lazy",alt:"Avatar",className:f(_({objectFit:u}))}),i.jsx(M,{className:f(z,"rounded-none"),delayMs:l?600:0,children:b})]}),e[22]=z,e[23]=b,e[24]=F,e[25]=p,e[26]=u,e[27]=h,e[28]=l,e[29]=v):v=e[29];let A;return e[30]!==o||e[31]!==v||e[32]!==w?(A=i.jsx(U,{className:w,...o,children:v}),e[30]=o,e[31]=v,e[32]=w,e[33]=A):A=e[33],A}function B(r){const e=k.c(18);let s,t,o,a,n,d,g,l;e[0]!==r?({shape:a,size:n,url:l,fallback:t,objectFit:d,className:s,muted:g,...o}=r,e[0]=r,e[1]=s,e[2]=t,e[3]=o,e[4]=a,e[5]=n,e[6]=d,e[7]=g,e[8]=l):(s=e[1],t=e[2],o=e[3],a=e[4],n=e[5],d=e[6],g=e[7],l=e[8]);const m=a===void 0?"square":a,h=n===void 0?"base":n,u=d===void 0?"cover":d,j=g===void 0?!1:g,x=h??"base";let b;return e[9]!==s||e[10]!==t||e[11]!==j||e[12]!==u||e[13]!==o||e[14]!==m||e[15]!==x||e[16]!==l?(b=i.jsx(W,{shape:m,url:l,fallback:t,size:x,objectFit:u,className:s,muted:j,...o}),e[9]=s,e[10]=t,e[11]=j,e[12]=u,e[13]=o,e[14]=m,e[15]=x,e[16]=l,e[17]=b):b=e[17],b}B.Skeleton=function({shape:e="square",size:s="base",className:t}){return i.jsx("div",{className:f(S({shape:e,size:s}),"bg-muted animate-pulse",t)})};export{B as A};
1
+ import{c as k,j as i,l as f,aS as R,bp as V,bq as I,br as $}from"./index-Bq_h7Umn.js";import{s as O}from"./User01-j65IkD-p.js";function U(r){const e=k.c(8);let s,t;e[0]!==r?({className:s,...t}=r,e[0]=r,e[1]=s,e[2]=t):(s=e[1],t=e[2]);let o;e[3]!==s?(o=f("relative flex size-8 shrink-0 overflow-hidden rounded-full",s),e[3]=s,e[4]=o):o=e[4];let a;return e[5]!==t||e[6]!==o?(a=i.jsx($,{"data-slot":"avatar",className:o,...t}),e[5]=t,e[6]=o,e[7]=a):a=e[7],a}function E(r){const e=k.c(8);let s,t;e[0]!==r?({className:s,...t}=r,e[0]=r,e[1]=s,e[2]=t):(s=e[1],t=e[2]);let o;e[3]!==s?(o=f("aspect-square size-full",s),e[3]=s,e[4]=o):o=e[4];let a;return e[5]!==t||e[6]!==o?(a=i.jsx(V,{"data-slot":"avatar-image",className:o,...t}),e[5]=t,e[6]=o,e[7]=a):a=e[7],a}function M(r){const e=k.c(8);let s,t;e[0]!==r?({className:s,...t}=r,e[0]=r,e[1]=s,e[2]=t):(s=e[1],t=e[2]);let o;e[3]!==s?(o=f("bg-muted flex size-full items-center justify-center rounded-full",s),e[3]=s,e[4]=o):o=e[4];let a;return e[5]!==t||e[6]!==o?(a=i.jsx(I,{"data-slot":"avatar-fallback",className:o,...t}),e[5]=t,e[6]=o,e[7]=a):a=e[7],a}const C=["drop-shadow-lg bg-gradient-to-br from-red-100 to-red-300 text-red-800 shadow-lg shadow-red-300/40 ring-1 ring-red-300/30","drop-shadow-lg bg-gradient-to-br from-lime-100 to-lime-300 text-lime-800 shadow-lg shadow-lime-300/40 ring-1 ring-lime-300/30","drop-shadow-lg bg-gradient-to-br from-emerald-100 to-emerald-300 text-emerald-800 shadow-lg shadow-emerald-300/40 ring-1 ring-emerald-300/30","drop-shadow-lg bg-gradient-to-br from-orange-100 to-orange-300 text-orange-800 shadow-lg shadow-orange-300/40 ring-1 ring-orange-300/30","drop-shadow-lg bg-gradient-to-br from-amber-100 to-amber-300 text-amber-800 shadow-lg shadow-amber-300/40 ring-1 ring-amber-300/30","drop-shadow-lg bg-gradient-to-br from-yellow-100 to-yellow-300 text-yellow-800 shadow-lg shadow-yellow-300/40 ring-1 ring-yellow-300/30","drop-shadow-lg bg-gradient-to-br from-green-100 to-green-300 text-green-800 shadow-lg shadow-green-300/40 ring-1 ring-green-300/30","drop-shadow-lg bg-gradient-to-br from-teal-100 to-teal-300 text-teal-800 shadow-lg shadow-teal-300/40 ring-1 ring-teal-300/30","drop-shadow-lg bg-gradient-to-br from-cyan-100 to-cyan-300 text-cyan-800 shadow-lg shadow-cyan-300/40 ring-1 ring-cyan-300/30","drop-shadow-lg bg-gradient-to-br from-sky-100 to-sky-300 text-sky-800 shadow-lg shadow-sky-300/40 ring-1 ring-sky-300/30","drop-shadow-lg bg-gradient-to-br from-blue-100 to-blue-300 text-blue-800 shadow-lg shadow-blue-300/40 ring-1 ring-blue-300/30","drop-shadow-lg bg-gradient-to-br from-indigo-100 to-indigo-300 text-indigo-800 shadow-lg shadow-indigo-300/40 ring-1 ring-indigo-300/30","drop-shadow-lg bg-gradient-to-br from-violet-100 to-violet-300 text-violet-800 shadow-lg shadow-violet-300/40 ring-1 ring-violet-300/30","drop-shadow-lg bg-gradient-to-br from-purple-100 to-purple-300 text-purple-800 shadow-lg shadow-purple-300/40 ring-1 ring-purple-300/30","drop-shadow-lg bg-gradient-to-br from-fuchsia-100 to-fuchsia-300 text-fuchsia-800 shadow-lg shadow-fuchsia-300/40 ring-1 ring-fuchsia-300/30","drop-shadow-lg bg-gradient-to-br from-pink-100 to-pink-300 text-pink-800 shadow-lg shadow-pink-300/40 ring-1 ring-pink-300/30","drop-shadow-lg bg-gradient-to-br from-rose-100 to-rose-300 text-rose-800 shadow-lg shadow-rose-300/40 ring-1 ring-rose-300/30"],L="drop-shadow-lg text-muted-foreground bg-muted shadow-lg";function T(r){let e=0;for(let t=0;t<r.length;t++)e=r.charCodeAt(t)+((e<<5)-e);const s=Math.abs(e)%C.length;return C[s]}const S=R("border border-border",{variants:{shape:{circle:"rounded-full",square:""},size:{"3xs":"w-3 h-3 text-[7px] font-semibold","2xs":"w-4 h-4 text-[9px] font-semibold",xs:"w-6 h-6 text-sm font-semibold",sm:"w-8 h-8 text-lg font-semibold",base:"w-10 h-10 text-2xl font-semibold",lg:"w-12 h-12 text-3xl font-semibold",xl:"w-16 h-16 text-4xl font-semibold","2xl":"w-20 h-20 text-5xl font-semibold","3xl":"w-32 h-32 text-7xl font-semibold"}},compoundVariants:[{shape:"square",size:"xs",class:"rounded-lg"},{shape:"square",size:"sm",class:"rounded-xl"},{shape:"square",size:"base",class:"rounded-xl"},{shape:"square",size:"lg",class:"rounded-xl"},{shape:"square",size:"xl",class:"rounded-2xl"},{shape:"square",size:"2xl",class:"rounded-3xl"},{shape:"square",size:"3xl",class:"rounded-[40px]"}],defaultVariants:{shape:"square",size:"base"}}),_=R("",{variants:{objectFit:{contain:"object-contain",cover:"object-cover"}},defaultVariants:{objectFit:"cover"}}),D=r=>{const e={"3xs":8,"2xs":8,xs:12,sm:16,base:24,lg:28,xl:36,"2xl":48,"3xl":80};return e[r]||e.base};function W(r){const e=k.c(34);let s,t,o,a,n,d,g,l;e[0]!==r?({url:l,fallback:t,shape:a,size:n,objectFit:d,className:s,muted:g,...o}=r,e[0]=r,e[1]=s,e[2]=t,e[3]=o,e[4]=a,e[5]=n,e[6]=d,e[7]=g,e[8]=l):(s=e[1],t=e[2],o=e[3],a=e[4],n=e[5],d=e[6],g=e[7],l=e[8]);const m=a===void 0?"square":a,h=n===void 0?"base":n,u=d===void 0?"cover":d,j=g===void 0?!1:g;let x;e:{if(typeof t=="string"){let c;e[9]!==t?(c=t.trim().slice(0,2).toUpperCase(),e[9]=t,e[10]=c):c=e[10],x=c;break e}x=t}const b=x;let y;e:{if(j){y=L;break e}if(typeof t=="string"){let c;e[11]!==t?(c=T(t),e[11]=t,e[12]=c):c=e[12],y=c;break e}y=C[0]}const z=y;let q;e[13]!==l?(q=l?.startsWith("icon://"),e[13]=l,e[14]=q):q=e[14];const p=q;let N;e[15]!==p||e[16]!==l?(N=p?l?.replace("icon://",""):void 0,e[15]=p,e[16]=l,e[17]=N):N=e[17];const F=N;let w;e[18]!==s||e[19]!==m||e[20]!==h?(w=f(S({shape:m,size:h}),s),e[18]=s,e[19]=m,e[20]=h,e[21]=w):w=e[21];let v;e[22]!==z||e[23]!==b||e[24]!==F||e[25]!==p||e[26]!==u||e[27]!==h||e[28]!==l?(v=p&&F?i.jsx("div",{className:f("flex items-center justify-center w-full h-full",z),children:i.jsx(O,{size:D(h)})}):i.jsxs(i.Fragment,{children:[l&&i.jsx(E,{src:l,loading:"lazy",alt:"Avatar",className:f(_({objectFit:u}))}),i.jsx(M,{className:f(z,"rounded-none"),delayMs:l?600:0,children:b})]}),e[22]=z,e[23]=b,e[24]=F,e[25]=p,e[26]=u,e[27]=h,e[28]=l,e[29]=v):v=e[29];let A;return e[30]!==o||e[31]!==v||e[32]!==w?(A=i.jsx(U,{className:w,...o,children:v}),e[30]=o,e[31]=v,e[32]=w,e[33]=A):A=e[33],A}function B(r){const e=k.c(18);let s,t,o,a,n,d,g,l;e[0]!==r?({shape:a,size:n,url:l,fallback:t,objectFit:d,className:s,muted:g,...o}=r,e[0]=r,e[1]=s,e[2]=t,e[3]=o,e[4]=a,e[5]=n,e[6]=d,e[7]=g,e[8]=l):(s=e[1],t=e[2],o=e[3],a=e[4],n=e[5],d=e[6],g=e[7],l=e[8]);const m=a===void 0?"square":a,h=n===void 0?"base":n,u=d===void 0?"cover":d,j=g===void 0?!1:g,x=h??"base";let b;return e[9]!==s||e[10]!==t||e[11]!==j||e[12]!==u||e[13]!==o||e[14]!==m||e[15]!==x||e[16]!==l?(b=i.jsx(W,{shape:m,url:l,fallback:t,size:x,objectFit:u,className:s,muted:j,...o}),e[9]=s,e[10]=t,e[11]=j,e[12]=u,e[13]=o,e[14]=m,e[15]=x,e[16]=l,e[17]=b):b=e[17],b}B.Skeleton=function({shape:e="square",size:s="base",className:t}){return i.jsx("div",{className:f(S({shape:e,size:s}),"bg-muted animate-pulse",t)})};export{B as A};
@@ -1 +1 @@
1
- import{c as u,l as g,j as l,bs as v,aS as b}from"./index-zFizTRgJ.js";const f=b("inline-flex items-center justify-center rounded-full border text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/20 focus-visible:ring-[2px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",success:"border-transparent bg-success text-success-foreground [a&]:hover:bg-success/90 focus-visible:ring-success/20 dark:focus-visible:ring-success/40",warning:"border-transparent bg-warning text-warning-foreground [a&]:hover:bg-warning/90 focus-visible:ring-warning/20 dark:focus-visible:ring-warning/40",outline:"text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",muted:"border-transparent bg-muted text-muted-foreground [a&]:hover:bg-muted/80"},size:{default:"px-2 py-0.5",icon:"size-5",segmented:"h-7 gap-0 rounded-lg border-transparent bg-card p-0 card-shadow"}},defaultVariants:{variant:"default",size:"default"}});function x(d){const e=u.c(14);let r,s,t,n,a;e[0]!==d?({className:r,variant:a,size:t,asChild:n,...s}=d,e[0]=d,e[1]=r,e[2]=s,e[3]=t,e[4]=n,e[5]=a):(r=e[1],s=e[2],t=e[3],n=e[4],a=e[5]);const c=(n===void 0?!1:n)?v:"span";let i;e[6]!==r||e[7]!==t||e[8]!==a?(i=g(f({variant:a,size:t}),r),e[6]=r,e[7]=t,e[8]=a,e[9]=i):i=e[9];let o;return e[10]!==c||e[11]!==s||e[12]!==i?(o=l.jsx(c,{"data-slot":"badge",className:i,...s}),e[10]=c,e[11]=s,e[12]=i,e[13]=o):o=e[13],o}export{x as B};
1
+ import{c as u,l as g,j as l,bs as v,aS as b}from"./index-Bq_h7Umn.js";const f=b("inline-flex items-center justify-center rounded-full border text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/20 focus-visible:ring-[2px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",success:"border-transparent bg-success text-success-foreground [a&]:hover:bg-success/90 focus-visible:ring-success/20 dark:focus-visible:ring-success/40",warning:"border-transparent bg-warning text-warning-foreground [a&]:hover:bg-warning/90 focus-visible:ring-warning/20 dark:focus-visible:ring-warning/40",outline:"text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",muted:"border-transparent bg-muted text-muted-foreground [a&]:hover:bg-muted/80"},size:{default:"px-2 py-0.5",icon:"size-5",segmented:"h-7 gap-0 rounded-lg border-transparent bg-card p-0 card-shadow"}},defaultVariants:{variant:"default",size:"default"}});function x(d){const e=u.c(14);let r,s,t,n,a;e[0]!==d?({className:r,variant:a,size:t,asChild:n,...s}=d,e[0]=d,e[1]=r,e[2]=s,e[3]=t,e[4]=n,e[5]=a):(r=e[1],s=e[2],t=e[3],n=e[4],a=e[5]);const c=(n===void 0?!1:n)?v:"span";let i;e[6]!==r||e[7]!==t||e[8]!==a?(i=g(f({variant:a,size:t}),r),e[6]=r,e[7]=t,e[8]=a,e[9]=i):i=e[9];let o;return e[10]!==c||e[11]!==s||e[12]!==i?(o=l.jsx(c,{"data-slot":"badge",className:i,...s}),e[10]=c,e[11]=s,e[12]=i,e[13]=o):o=e[13],o}export{x as B};