decocms 4.400.5 → 4.401.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (417) hide show
  1. package/dist/client/assets/{AlertCircle-DAwsTYRk.js → AlertCircle-D1gV07Oe.js} +1 -1
  2. package/dist/client/assets/{AreaChart-CY-F46Be.js → AreaChart-lv4gftWl.js} +1 -1
  3. package/dist/client/assets/{ArrowLeft-tvLjkuWF.js → ArrowLeft-Bpb3sor7.js} +1 -1
  4. package/dist/client/assets/{ArrowRight-z0a_5OhC.js → ArrowRight-BFyYdKNd.js} +1 -1
  5. package/dist/client/assets/{ArrowUp-Lg4NvWzc.js → ArrowUp-COLR6KTW.js} +1 -1
  6. package/dist/client/assets/{CartesianChart-BoMqHHQt.js → CartesianChart-CJGGumCB.js} +1 -1
  7. package/dist/client/assets/{Check-BQZy9c_F.js → Check-C-Vn17o5.js} +1 -1
  8. package/dist/client/assets/{CheckCircle-Czw2y_F3.js → CheckCircle-CyKBJceB.js} +1 -1
  9. package/dist/client/assets/{ChevronUp-BYljQT_d.js → ChevronUp-Dto8qCq2.js} +1 -1
  10. package/dist/client/assets/{Copy01-6I1_Aion.js → Copy01-B2GuMU9Q.js} +1 -1
  11. package/dist/client/assets/{CreditCard01-DargNaAR.js → CreditCard01-CoMSE38C.js} +1 -1
  12. package/dist/client/assets/{DotsVertical-CN_Dg-j8.js → DotsVertical-R1tuLE9v.js} +1 -1
  13. package/dist/client/assets/{ErrorBarContext-BT3n9Mmx.js → ErrorBarContext-viPSAyu4.js} +1 -1
  14. package/dist/client/assets/{Eye-B4QzGCZN.js → Eye-BhTmzCKr.js} +1 -1
  15. package/dist/client/assets/{Globe04-CXTO7_iP.js → Globe04-BLoVxWaz.js} +1 -1
  16. package/dist/client/assets/{Image01-9AXWgviq.js → Image01-D02_x5mu.js} +1 -1
  17. package/dist/client/assets/{Key01-DFgwFBUs.js → Key01-BuudAO_W.js} +1 -1
  18. package/dist/client/assets/{LayoutLeft-SQ7j1egP.js → LayoutLeft-CuG2yJZR.js} +1 -1
  19. package/dist/client/assets/{Line-_W3oVo8E.js → Line-CsKmpStn.js} +1 -1
  20. package/dist/client/assets/{Link01-V3TqRs3C.js → Link01-CVUd8ZSz.js} +1 -1
  21. package/dist/client/assets/{LinkExternal01-CPO90J3S.js → LinkExternal01-Bo5cppL4.js} +1 -1
  22. package/dist/client/assets/{Monitor01-C9DSVDfs.js → Monitor01-Cj93oSbT.js} +1 -1
  23. package/dist/client/assets/{Palette-D0rqSgjT.js → Palette-CEa7GqA9.js} +1 -1
  24. package/dist/client/assets/{Plus-BU--LXol.js → Plus-Ch1uJBgh.js} +1 -1
  25. package/dist/client/assets/{SearchMd-BpFEap-1.js → SearchMd-B_MXZ22A.js} +1 -1
  26. package/dist/client/assets/{Sector-uvc125JQ.js → Sector-CNfzRqjQ.js} +1 -1
  27. package/dist/client/assets/{Share07-B29GBkjP.js → Share07-D6XgmppM.js} +1 -1
  28. package/dist/client/assets/{Sun-t-nvniXl.js → Sun-Dy_rDhHe.js} +1 -1
  29. package/dist/client/assets/{Tool01-B8crh1aV.js → Tool01-BoO1X0ZH.js} +1 -1
  30. package/dist/client/assets/{Trash01-DdWmWubI.js → Trash01-D4CwdSy9.js} +1 -1
  31. package/dist/client/assets/{Upload01-CsQlMBfP.js → Upload01-hQyKBWZL.js} +1 -1
  32. package/dist/client/assets/{User01-B4ccibs0.js → User01-gmEyKvLo.js} +1 -1
  33. package/dist/client/assets/{UserSquare-CAO2KcuZ.js → UserSquare-DXqYCX9F.js} +1 -1
  34. package/dist/client/assets/{Users01-D4csSmiF.js → Users01-BBb4-Wbt.js} +1 -1
  35. package/dist/client/assets/{X-lSFSs7wx.js → X-CEngH8b7.js} +1 -1
  36. package/dist/client/assets/{XClose-BEOYWQzz.js → XClose-Dvx_qcsQ.js} +1 -1
  37. package/dist/client/assets/{Zap-BZmnDtce.js → Zap-DkS3ccHw.js} +1 -1
  38. package/dist/client/assets/{ZoomOut-DwQzEWYf.js → ZoomOut-D3wne5dx.js} +1 -1
  39. package/dist/client/assets/{access-gate-CeyEk8D6.js → access-gate-D2mi3EXZ.js} +1 -1
  40. package/dist/client/assets/{add-connection-dialog-BwKHIeY0.js → add-connection-dialog-mm-WrmAR.js} +1 -1
  41. package/dist/client/assets/agent-analytics-IX3kP91L.js +2 -0
  42. package/dist/client/assets/agent-app-CliE0mM3.js +1 -0
  43. package/dist/client/assets/agent-assets-BbU_YrcZ.js +1 -0
  44. package/dist/client/assets/agent-automation-v13d06rk.js +20 -0
  45. package/dist/client/assets/agent-automations-yzTI8Hoc.js +1 -0
  46. package/dist/client/assets/agent-connect-sources-CEF4jbih.js +1 -0
  47. package/dist/client/assets/agent-deck-rRdXFIQU.js +1 -0
  48. package/dist/client/assets/agent-e2e-SKpj9Qv7.js +1 -0
  49. package/dist/client/assets/agent-experiments-DPD7MHX9.js +1 -0
  50. package/dist/client/assets/agent-file-CBIwfV0H.js +1 -0
  51. package/dist/client/assets/{agent-git-Dm-Aa993.js → agent-git-N-SzMySX.js} +2 -2
  52. package/dist/client/assets/agent-hosting-BnzsqBpZ.js +1 -0
  53. package/dist/client/assets/{agent-icon-Uyip_c6M.js → agent-icon-CjNFk4Bw.js} +1 -1
  54. package/dist/client/assets/agent-library-file-DHUyHSwO.js +1 -0
  55. package/dist/client/assets/agent-monitor-BeURekaz.js +1 -0
  56. package/dist/client/assets/agent-overview-By923wES.js +1 -0
  57. package/dist/client/assets/agent-settings-DiYW6DT3.js +1 -0
  58. package/dist/client/assets/{agent-site-editor-CisoB_8z.js → agent-site-editor-B7WR4KwZ.js} +13 -13
  59. package/dist/client/assets/agent-site-editor-code-A3lMFnBk.js +2 -0
  60. package/dist/client/assets/agent-site-editor-content-CTyxs9-E.js +9 -0
  61. package/dist/client/assets/agent-site-editor-preview-Db1buU8G.js +518 -0
  62. package/dist/client/assets/agent-view-Ct7YMMW7.js +1 -0
  63. package/dist/client/assets/{agent-view-guard-CW2E0Nya.js → agent-view-guard-BpwecHVM.js} +1 -1
  64. package/dist/client/assets/agents-list-XIrdiWMz.js +1 -0
  65. package/dist/client/assets/{ai-providers-aALsTmcr.js → ai-providers-CsYNRATt.js} +2 -2
  66. package/dist/client/assets/{alert-Cj3mDHfa.js → alert-BYraKSPm.js} +1 -1
  67. package/dist/client/assets/{alert-dialog-ScZSd_g9.js → alert-dialog-DpzgB-Ls.js} +1 -1
  68. package/dist/client/assets/analytics-sections-C2rbPWDv.js +1 -0
  69. package/dist/client/assets/api-keys-B9Lt-UrM.js +1 -0
  70. package/dist/client/assets/api-keys-CzlAuC7_.js +1 -0
  71. package/dist/client/assets/app-editor-tD7rn_1-.js +1 -0
  72. package/dist/client/assets/{asset-utils-zuPagV4t.js → asset-utils-4p52RC3c.js} +1 -1
  73. package/dist/client/assets/{auth-IJXSFSKo.js → auth-Dafjkfpj.js} +1 -1
  74. package/dist/client/assets/{auth-catchall-_ZlrnKe5.js → auth-catchall-DD401U-a.js} +1 -1
  75. package/dist/client/assets/auth-entry-CEr7Y2wf.js +1 -0
  76. package/dist/client/assets/{auth-split-layout-RzXa3xC3.js → auth-split-layout-DLRovWby.js} +1 -1
  77. package/dist/client/assets/{authenticate-and-persist-oauth-2rXUqvh1.js → authenticate-and-persist-oauth-DIl2N_8B.js} +1 -1
  78. package/dist/client/assets/{automation-list-row-DXlvb1Ba.js → automation-list-row-ueTfZfDa.js} +1 -1
  79. package/dist/client/assets/{automation-runs-bP6fMSYg.js → automation-runs-iTxxsepZ.js} +1 -1
  80. package/dist/client/assets/{automations-Cc87rLF5.js → automations-Cad12Ows.js} +1 -1
  81. package/dist/client/assets/{autosend-n3O0UdBS.js → autosend-DeYn5nkP.js} +1 -1
  82. package/dist/client/assets/{avatar-BdlFnSU8.js → avatar-B6HmPhM4.js} +1 -1
  83. package/dist/client/assets/{badge-Bhd7Yjxv.js → badge-4kURMy-V.js} +1 -1
  84. package/dist/client/assets/block-document-CgGOvOyl.js +3 -0
  85. package/dist/client/assets/{blocks-preview-workspace-context-CPHwvzb5.js → blocks-preview-workspace-context-Bm8P7H4k.js} +1 -1
  86. package/dist/client/assets/{buckets-D8dvVOSB.js → buckets-CK1WY8Rz.js} +1 -1
  87. package/dist/client/assets/{build-improve-prompt-doc-B6eWxg8K.js → build-improve-prompt-doc-BYdufdhy.js} +1 -1
  88. package/dist/client/assets/{calendar-BBDqyYcl.js → calendar-CZsGTekl.js} +1 -1
  89. package/dist/client/assets/{capability-load-error-DtKGgHck.js → capability-load-error-CaE4aliY.js} +1 -1
  90. package/dist/client/assets/{use-org-repo-syncs-DhQYfFtK.js → cards-DaNm0Rmg.js} +3 -3
  91. package/dist/client/assets/category-editor-CyFQk1RV.js +1 -0
  92. package/dist/client/assets/{chart-E7ehfHUF.js → chart-_YADtzsN.js} +1 -1
  93. package/dist/client/assets/{chat-context-SUJKu-XN.js → chat-context-v9O7Tar9.js} +5 -5
  94. package/dist/client/assets/{chat-draft-D9u5CYEW.js → chat-draft-BSL5UQWs.js} +1 -1
  95. package/dist/client/assets/{checkbox-CC9zkEff.js → checkbox-BMxilLAm.js} +1 -1
  96. package/dist/client/assets/{choose-editor-B5Rx7Zk5.js → choose-editor-TgQWBIvA.js} +1 -1
  97. package/dist/client/assets/{claim-phase-copy-Chi823Vj.js → claim-phase-copy-DHsomph6.js} +1 -1
  98. package/dist/client/assets/{cli-auth-success-QqvzIrWg.js → cli-auth-success-Bsu7TVxL.js} +1 -1
  99. package/dist/client/assets/{client-icons-CPgcSrwC.js → client-icons-PiLBRjl7.js} +1 -1
  100. package/dist/client/assets/{collapsible-CMMGBTfa.js → collapsible-bc19817o.js} +1 -1
  101. package/dist/client/assets/collection-detail-DpwCwzTH.js +1 -0
  102. package/dist/client/assets/{collection-display-button-c-WnLfEk.js → collection-display-button-BBRywDRf.js} +1 -1
  103. package/dist/client/assets/{collection-search-3XS3AdJ3.js → collection-search-kj64tBFw.js} +1 -1
  104. package/dist/client/assets/{collection-table-wrapper-DhxAGzgU.js → collection-table-wrapper-D2tmoW8T.js} +1 -1
  105. package/dist/client/assets/collection-tabs-DCLfzEOA.js +1 -0
  106. package/dist/client/assets/{combobox-q-ECrVO-.js → combobox-DlQnH8_N.js} +1 -1
  107. package/dist/client/assets/command-vKgGCoFF.js +1 -0
  108. package/dist/client/assets/{companion-mcps-section-DQRFd5L_.js → companion-mcps-section-Dpcawwvl.js} +1 -1
  109. package/dist/client/assets/connect-Dick3000.js +8 -0
  110. package/dist/client/assets/{connect-layout-DtbA5xEp.js → connect-layout-BfLs3zCI.js} +1 -1
  111. package/dist/client/assets/{connection-D_fwf_le.js → connection-CTAV5crm.js} +1 -1
  112. package/dist/client/assets/{connection-card-wq7ff65-.js → connection-card-DXWUKoxP.js} +1 -1
  113. package/dist/client/assets/connection-detail-BsIDB4zB.js +1 -0
  114. package/dist/client/assets/{connection-form-helpers-D8LXn1d-.js → connection-form-helpers-BrejHCrx.js} +1 -1
  115. package/dist/client/assets/connections-dBKfZKZY.js +1 -0
  116. package/dist/client/assets/{context-B092rba-.js → context-VbsY_yj4.js} +1 -1
  117. package/dist/client/assets/{create-organization-dialog-CyGYpJhs.js → create-organization-dialog-BCpMYw7e.js} +1 -1
  118. package/dist/client/assets/{decofile-api-BQi9jV2r.js → decofile-api-5Nr0-h_v.js} +1 -1
  119. package/dist/client/assets/{decopilot-D9YGMtj1.js → decopilot-DlmPNMn_.js} +2 -2
  120. package/dist/client/assets/dialog-CEiE0rPQ.js +1 -0
  121. package/dist/client/assets/discover-BvxkrONV.js +1 -0
  122. package/dist/client/assets/{domain-settings-BaQvjI4O.js → domain-settings-D1tynvCC.js} +1 -1
  123. package/dist/client/assets/{download-app-dialog-hSU8H3Vj.js → download-app-dialog-fmWolHKD.js} +1 -1
  124. package/dist/client/assets/{drawer-DeP9v70y.js → drawer-mNZA6mOf.js} +1 -1
  125. package/dist/client/assets/{editor-B7C6vwjS.js → editor-BGAJHie_.js} +1 -1
  126. package/dist/client/assets/{empty-state-CaK4RTlm.js → empty-state-BJxP56xq.js} +1 -1
  127. package/dist/client/assets/{empty-state-Bd7rwiDP.js → empty-state-BgjUu2bT.js} +1 -1
  128. package/dist/client/assets/{extract-connection-data-v71aWs18.js → extract-connection-data-erEsLv_0.js} +1 -1
  129. package/dist/client/assets/{feature-gate-LTW2kwcy.js → feature-gate-BdRUy7K_.js} +1 -1
  130. package/dist/client/assets/{feature-paywall-1lut-OZA.js → feature-paywall-Tj9HTPlX.js} +1 -1
  131. package/dist/client/assets/{file-explorer-CaKgHoMf.js → file-explorer-0KdYuesc.js} +2 -2
  132. package/dist/client/assets/{file-preview-DK07f0Bu.js → file-preview-i5I4Vmk2.js} +1 -1
  133. package/dist/client/assets/file-share-button-FS8XJyOj.js +3 -0
  134. package/dist/client/assets/{file-type-icon-BV5PHbD1.js → file-type-icon-Cv10yXI0.js} +1 -1
  135. package/dist/client/assets/{folder-icon-1-1m6gFV.js → folder-icon-DJuQAXN-.js} +1 -1
  136. package/dist/client/assets/{form-BT-p7abF.js → form-CCT2OtgN.js} +1 -1
  137. package/dist/client/assets/{gateway-client-Bunqz-v_.js → gateway-client-hbsOo-al.js} +1 -1
  138. package/dist/client/assets/{general-fOjVxBHu.js → general-B_HDEt1Q.js} +1 -1
  139. package/dist/client/assets/{github-icon-B7EzOW44.js → github-icon-BpCOzzV8.js} +1 -1
  140. package/dist/client/assets/home-CMRSzFNz.js +1 -0
  141. package/dist/client/assets/{hooks-ZDl1T3YR.js → hooks-CcmbiBeQ.js} +4 -4
  142. package/dist/client/assets/{icon-button-CH4FIKTp.js → icon-button-B8KzCtPE.js} +1 -1
  143. package/dist/client/assets/index-BeJdXzSv.css +1 -0
  144. package/dist/client/assets/{index-DGrB0yWK.js → index-BpvXUNGE.js} +27 -27
  145. package/dist/client/assets/index-BsLVRPrU.js +26 -0
  146. package/dist/client/assets/{index-C6jf5hj5.js → index-CDe2yrwT.js} +1 -1
  147. package/dist/client/assets/index-CGxhGPsv.js +5 -0
  148. package/dist/client/assets/{index-Cbxez_uk.js → index-CKZ6XrRd.js} +1 -1
  149. package/dist/client/assets/{index--xKIMIg3.js → index-CWksyNR9.js} +1 -1
  150. package/dist/client/assets/{index-4aLH0qvl.js → index-ClooW3Im.js} +1 -1
  151. package/dist/client/assets/{index-C_kk8c78.js → index-DVgj8U7g.js} +1 -1
  152. package/dist/client/assets/index-D_lD_4br.js +1 -0
  153. package/dist/client/assets/{index-Ck4x2-t2.js → index-De5sr9zh.js} +44 -44
  154. package/dist/client/assets/{index-Bg7kKf4r.js → index-Kwx27vNK.js} +1 -1
  155. package/dist/client/assets/index-bMw4G7-h.js +1 -0
  156. package/dist/client/assets/{index-Om_Krpb0.js → index-gldwodyc.js} +1 -1
  157. package/dist/client/assets/{index-nUsHjtAT.js → index-ldS2WUeM.js} +1 -1
  158. package/dist/client/assets/index-redirect-CfY3ykU_.js +1 -0
  159. package/dist/client/assets/{infiniteQueryObserver-DJPW5pCw.js → infiniteQueryObserver-CwgE9ndj.js} +1 -1
  160. package/dist/client/assets/{infra-billing-CHwTXFTp.js → infra-billing-TzlPUT1_.js} +1 -1
  161. package/dist/client/assets/{input-BBpmUhtR.js → input-B-DIEGoS.js} +1 -1
  162. package/dist/client/assets/{input-CsRLFWsE.js → input-CogQggtY.js} +1 -1
  163. package/dist/client/assets/input-DMbK8B2u.js +8 -0
  164. package/dist/client/assets/{integration-icon-CXxe2Nmz.js → integration-icon-CsYMgjoT.js} +1 -1
  165. package/dist/client/assets/{label-BasQfmGn.js → label-Baft7ecp.js} +1 -1
  166. package/dist/client/assets/{last-preview-page-tC_ec-8v.js → last-preview-page-DkIjQnDn.js} +1 -1
  167. package/dist/client/assets/{layout-BCBVVsx8.js → layout-CI3O4gkp.js} +1 -1
  168. package/dist/client/assets/{legacy-agents-deep-DJ3dRrzM.js → legacy-agents-deep-BvWpwcOc.js} +1 -1
  169. package/dist/client/assets/{legacy-main-redirect-C7QpzNdk.js → legacy-main-redirect-CQgWSIje.js} +1 -1
  170. package/dist/client/assets/library-CAwdTP4-.js +161 -0
  171. package/dist/client/assets/{login-BtJlygis.js → login-DJ5PeYOE.js} +1 -1
  172. package/dist/client/assets/{markdown-D9JYtNvk.js → markdown-UaZeehfy.js} +2 -2
  173. package/dist/client/assets/{mcp-app-renderer-CK8AdoIv.js → mcp-app-renderer-DVXFXjZU.js} +2 -2
  174. package/dist/client/assets/{mcp-oauth-CCvVH2OB.js → mcp-oauth-DpJ1IX9I.js} +1 -1
  175. package/dist/client/assets/members-CXM5jx_X.js +1 -0
  176. package/dist/client/assets/message-templates-54foej4h.js +1 -0
  177. package/dist/client/assets/{mini-report-page-CCQFv7lr.js → mini-report-page-B1sFW1ww.js} +1 -1
  178. package/dist/client/assets/mock-board-BbS_eZEl.js +10 -0
  179. package/dist/client/assets/{monaco-editor-CLYybS8B.js → monaco-editor-B9FUV1NZ.js} +2 -2
  180. package/dist/client/assets/{monitoring-stats-row-avCjcK0F.js → monitoring-stats-row-Cl5_OBZ5.js} +1 -1
  181. package/dist/client/assets/multi-select-VDMM47xB.js +1 -0
  182. package/dist/client/assets/{mustache-C9rsi357.js → mustache-DZ4FV0Nc.js} +1 -1
  183. package/dist/client/assets/{oauth-callback-ivL7RrDf.js → oauth-callback-OoZf3jL0.js} +1 -1
  184. package/dist/client/assets/{oauth-callback-ai-provider-DyQmwFrI.js → oauth-callback-ai-provider-foDaIFwI.js} +1 -1
  185. package/dist/client/assets/{onboarding-Bu2705eX.js → onboarding-Dq71FOpN.js} +1 -1
  186. package/dist/client/assets/{optimistic-project-sidebar-views-lIiVbcFU.js → optimistic-project-sidebar-views-CgB8Gy1s.js} +1 -1
  187. package/dist/client/assets/org-file-open-context-Mx8jC4-P.js +1 -0
  188. package/dist/client/assets/{organization-choice-Cqq6hiux.js → organization-choice-ZqNf00EY.js} +1 -1
  189. package/dist/client/assets/{orgs-DjPk91H4.js → orgs-B8y0HHqF.js} +1 -1
  190. package/dist/client/assets/page-seo-form-DPObRKD4.js +1 -0
  191. package/dist/client/assets/{pair-DW_WRb6G.js → pair-D39JYx1G.js} +5 -5
  192. package/dist/client/assets/{plan-ladder-BXJ0swZ2.js → plan-ladder-D85oNnSr.js} +1 -1
  193. package/dist/client/assets/{popover-K1ZrYG78.js → popover-DCaw39mN.js} +1 -1
  194. package/dist/client/assets/{post-calendar-2v4vqP8p.js → post-calendar-Dpixo2IP.js} +1 -1
  195. package/dist/client/assets/{post-editor-B2FiOFhN.js → post-editor-BivV74bZ.js} +1 -1
  196. package/dist/client/assets/{preview-content-CpPj1JH3.js → preview-content-ziDhpr9V.js} +1 -1
  197. package/dist/client/assets/{preview-dialog-Clu5ydVv.js → preview-dialog-DHJShsrA.js} +1 -1
  198. package/dist/client/assets/profile-C9xI3KvS.js +1 -0
  199. package/dist/client/assets/{project-app-view-1zY3x0YR.js → project-app-view-CFWAaKq_.js} +1 -1
  200. package/dist/client/assets/project-feed-D6D6bSHY.js +1 -0
  201. package/dist/client/assets/{project-icon-CjBJRgr0.js → project-icon-CXM68zVZ.js} +1 -1
  202. package/dist/client/assets/project-reports-8SYQbI2J.js +1 -0
  203. package/dist/client/assets/project-tasks-DrEyprGU.js +1 -0
  204. package/dist/client/assets/{prompts-rF3K-sXx.js → prompts-CVNAEIJB.js} +1 -1
  205. package/dist/client/assets/record-editor-CKxwz78L.js +1 -0
  206. package/dist/client/assets/{redirect-editor-C8SiyMIE.js → redirect-editor-Dy1UJRrv.js} +1 -1
  207. package/dist/client/assets/{reports-yWFVxw0Z.js → reports-BvZHk8Hk.js} +2 -2
  208. package/dist/client/assets/reports-DyvsxSR9.js +1 -0
  209. package/dist/client/assets/{reports-onboarding-N2pt6gNg.js → reports-onboarding-D4Uaui5Y.js} +1 -1
  210. package/dist/client/assets/reports-tab-CwwTWlIS.js +2 -0
  211. package/dist/client/assets/{repositories-CaSms5FF.js → repositories-CqbcdDdH.js} +1 -1
  212. package/dist/client/assets/{repository-import-picker-Kal2nH0n.js → repository-import-picker-BXQhU82J.js} +1 -1
  213. package/dist/client/assets/{repository-picker-DxgY__Tu.js → repository-picker-D1hSYB_G.js} +1 -1
  214. package/dist/client/assets/require-capability-Cab5QyjH.js +1 -0
  215. package/dist/client/assets/{required-auth-layout-BWh5q3u2.js → required-auth-layout-scRrBHKS.js} +1 -1
  216. package/dist/client/assets/{reset-password-aeaUD9hZ.js → reset-password-CDE1iX3h.js} +1 -1
  217. package/dist/client/assets/{resizable-C3GNt7qd.js → resizable-D2L182YF.js} +1 -1
  218. package/dist/client/assets/{review-settings-DTVyO-Pc.js → review-settings-B98rLFs_.js} +1 -1
  219. package/dist/client/assets/{rich-text-link-control-CWGtfixK.js → rich-text-link-control-DwRx0-0K.js} +1 -1
  220. package/dist/client/assets/roles-CZvYgdUZ.js +1 -0
  221. package/dist/client/assets/route-B9TApoqS.js +1 -0
  222. package/dist/client/assets/route-N926-QRJ.js +1 -0
  223. package/dist/client/assets/route-OKy5_TxY.js +1 -0
  224. package/dist/client/assets/route-page-header-ErgCCo2N.js +1 -0
  225. package/dist/client/assets/runnable-block-editor-C2YphDcL.js +17 -0
  226. package/dist/client/assets/{sandbox-lifecycle-context-DIc5m19C.js → sandbox-lifecycle-context-o4KKoGrI.js} +2 -2
  227. package/dist/client/assets/{schema-C2l7sv-S.js → schema-DkZUkArz.js} +1 -1
  228. package/dist/client/assets/{scroll-area-CTv9WE1l.js → scroll-area-Ca9Mo_QH.js} +1 -1
  229. package/dist/client/assets/{search-input-yrvqqqa5.js → search-input-DRWRYRPs.js} +1 -1
  230. package/dist/client/assets/{search-toggle-g6PUq9ya.js → search-toggle-B5FB44XX.js} +1 -1
  231. package/dist/client/assets/{secret-picker-BxxQ42cR.js → secret-picker-DLap6vTC.js} +1 -1
  232. package/dist/client/assets/secrets-jZp-bTCf.js +1 -0
  233. package/dist/client/assets/sections-editor-BFbkxXEt.js +1 -0
  234. package/dist/client/assets/{select-BoR29t6W.js → select-BZ6sktb7.js} +1 -1
  235. package/dist/client/assets/select-model-BIWsu5PV.js +1 -0
  236. package/dist/client/assets/{seo-editor-BMB6shx2.js → seo-editor-PDlEaSFK.js} +1 -1
  237. package/dist/client/assets/{separator-Di6srp9Z.js → separator-D_UVaWw6.js} +1 -1
  238. package/dist/client/assets/settings-tab-BBHI-Kul.js +5 -0
  239. package/dist/client/assets/{sheet-C9bl1oJW.js → sheet-Kja83qKC.js} +1 -1
  240. package/dist/client/assets/shell-layout-ynqF32RZ.js +1 -0
  241. package/dist/client/assets/{skill-preview-CjSzB6zf.js → skill-preview-BjeMKh94.js} +1 -1
  242. package/dist/client/assets/skills-BVNUFN8s.js +1 -0
  243. package/dist/client/assets/{sso-CT9ELyZE.js → sso-CbvzPnGh.js} +1 -1
  244. package/dist/client/assets/{suggestion-BSo5OP_j.js → suggestion-DMGPIg87.js} +1 -1
  245. package/dist/client/assets/{switch-wAm3D1I6.js → switch-CSgTLkLq.js} +1 -1
  246. package/dist/client/assets/synced-repos-DkDa4E03.js +1 -0
  247. package/dist/client/assets/{table-3nkTB4Np.js → table-BNlBwUw8.js} +1 -1
  248. package/dist/client/assets/{tabs-Z84fQLpa.js → tabs-DWl7SNDG.js} +1 -1
  249. package/dist/client/assets/{task-board-CIQEQ9gq.js → task-board-C6TTBmRS.js} +1 -1
  250. package/dist/client/assets/{task-route-BYXl_z5M.js → task-route-Bz3woGSP.js} +1 -1
  251. package/dist/client/assets/{task-status-B6zn5x63.js → task-status-CnFMIlt_.js} +1 -1
  252. package/dist/client/assets/taskboard-analytics-DoJw1Xfg.js +1 -0
  253. package/dist/client/assets/tasks-CIdMsSLJ.js +1 -0
  254. package/dist/client/assets/{tasks-3RHZzkFK.js → tasks-Cqz8mQiU.js} +2 -2
  255. package/dist/client/assets/{textarea-DmhWadvL.js → textarea-CufiKBr1.js} +1 -1
  256. package/dist/client/assets/thread-analytics-CC-_zVgm.js +1 -0
  257. package/dist/client/assets/thread-button-Ds-0KssI.js +1 -0
  258. package/dist/client/assets/{thread-intent-BuxfElu5.js → thread-intent-rbLXiRX-.js} +1 -1
  259. package/dist/client/assets/{thread-route-CmEEfnPs.js → thread-route-B3__WRb1.js} +1 -1
  260. package/dist/client/assets/thread-route-D_-4E_Qa.js +1 -0
  261. package/dist/client/assets/{thread-sheet-body-BpOJ-mpg.js → thread-sheet-body-C6Nvo-gY.js} +1 -1
  262. package/dist/client/assets/toggle-group-CEb1zCbt.js +1 -0
  263. package/dist/client/assets/toolbar-icon-button-B7ENG3u2.js +1 -0
  264. package/dist/client/assets/{tooltip-D_t5agRT.js → tooltip-Bdu4_ay-.js} +1 -1
  265. package/dist/client/assets/{track-CWcmFBdJ.js → track-DYcNrkYj.js} +1 -1
  266. package/dist/client/assets/{types-EnXetskt.js → types-C1lh-7rD.js} +3 -3
  267. package/dist/client/assets/{usage-stats-Gv-3x4Ta.js → usage-stats-C8kdutYl.js} +1 -1
  268. package/dist/client/assets/{use-ai-providers-BOtkBAHJ.js → use-ai-providers-DdvmCGxF.js} +1 -1
  269. package/dist/client/assets/{use-automations-C_H2RSDu.js → use-automations-By-N-e6c.js} +1 -1
  270. package/dist/client/assets/{use-autosave-CtwCn4lm.js → use-autosave-tkO4DMDZ.js} +1 -1
  271. package/dist/client/assets/use-connect-companion-CRgCDVPT.js +1 -0
  272. package/dist/client/assets/{use-connection-CK-5Lpbl.js → use-connection-CzhqmkxY.js} +1 -1
  273. package/dist/client/assets/{use-copy-CWcw9y0f.js → use-copy-D35bNj5j.js} +1 -1
  274. package/dist/client/assets/{use-create-virtual-mcp-0s6caXAs.js → use-create-virtual-mcp-DSS6KW-Y.js} +1 -1
  275. package/dist/client/assets/{use-date-fns-locale-DeGGdClH.js → use-date-fns-locale-B65-a3KP.js} +1 -1
  276. package/dist/client/assets/{use-debounced-autosave-l-fa5dGN.js → use-debounced-autosave-UCDN4Lw3.js} +1 -1
  277. package/dist/client/assets/{use-debounced-value-BAmcCwZ4.js → use-debounced-value-CWshbX7F.js} +1 -1
  278. package/dist/client/assets/{use-deco-credits-BAtSd5iZ.js → use-deco-credits-DTu_Qf20.js} +1 -1
  279. package/dist/client/assets/{use-decopilot-events-BzhXXQi3.js → use-decopilot-events-BvKgG5Ws.js} +1 -1
  280. package/dist/client/assets/{use-delete-connection-AWBlHZP0.js → use-delete-connection-1XhxmMPF.js} +1 -1
  281. package/dist/client/assets/{use-deployment-admin-sAUdKDqS.js → use-deployment-admin-DMXwbJU8.js} +1 -1
  282. package/dist/client/assets/{use-entitlements-Dql2buFj.js → use-entitlements-Da1bmf67.js} +1 -1
  283. package/dist/client/assets/{use-fast-preview-draft-url-BxezoKmd.js → use-fast-preview-draft-url-C7L3VsQn.js} +1 -1
  284. package/dist/client/assets/{use-file-configs-Dr0d27aT.js → use-file-configs-C7xVU8E2.js} +1 -1
  285. package/dist/client/assets/use-in-settings-icIKIpSR.js +1 -0
  286. package/dist/client/assets/{use-infinite-scroll-CAp6PiC0.js → use-infinite-scroll-7-m4dXi3.js} +1 -1
  287. package/dist/client/assets/{use-join-requests-CMqjWeBG.js → use-join-requests-D_x3dmzZ.js} +1 -1
  288. package/dist/client/assets/use-main-panel-tabs-B5g6e1MJ.js +1 -0
  289. package/dist/client/assets/{use-mcp-auth-status-CH7YPNve.js → use-mcp-auth-status-nDkEwx2c.js} +1 -1
  290. package/dist/client/assets/{use-mcp-client-DDIocHT6.js → use-mcp-client-CkjkRUta.js} +1 -1
  291. package/dist/client/assets/{use-mcp-prompts-D8MzpgAT.js → use-mcp-prompts-D2XJcis0.js} +1 -1
  292. package/dist/client/assets/{use-mcp-tools-CFGrhbrB.js → use-mcp-tools-DZlo67bQ.js} +1 -1
  293. package/dist/client/assets/{use-members-BtxsC9V3.js → use-members-CdPjttiy.js} +1 -1
  294. package/dist/client/assets/{use-mobile-CdzCnkMt.js → use-mobile-DVMuGaln.js} +1 -1
  295. package/dist/client/assets/{use-navigate-to-agent-CK2ojcHr.js → use-navigate-to-agent-BCcYux8q.js} +1 -1
  296. package/dist/client/assets/{use-open-billing-url-ptdTbbBm.js → use-open-billing-url-CJn1G7pV.js} +1 -1
  297. package/dist/client/assets/{use-org-auth-client-B2Mz39Ds.js → use-org-auth-client-D8dxsLtj.js} +1 -1
  298. package/dist/client/assets/{use-org-fs-B5SsMM_1.js → use-org-fs-3jzMRDSK.js} +1 -1
  299. package/dist/client/assets/{use-org-sso-Bg9XoWeE.js → use-org-sso-Bb_2_N0Z.js} +1 -1
  300. package/dist/client/assets/{use-organization-roles-Q61E1tJN.js → use-organization-roles-ixSaPxG5.js} +1 -1
  301. package/dist/client/assets/{use-organization-settings-DYk5FZJw.js → use-organization-settings-B0mobgxG.js} +1 -1
  302. package/dist/client/assets/{use-panel-navigate-wv77dcM5.js → use-panel-navigate-CjSWJCy4.js} +1 -1
  303. package/dist/client/assets/{use-project-native-view-presence-gzbdZMHU.js → use-project-native-view-presence-_PPun-xm.js} +1 -1
  304. package/dist/client/assets/{use-project-scope-DHDkFc-g.js → use-project-scope-CJnr8HCi.js} +1 -1
  305. package/dist/client/assets/{use-releases-h152tw9n.js → use-releases-CT-nVxtd.js} +1 -1
  306. package/dist/client/assets/{use-reports-diagnostic-DldYivxc.js → use-reports-diagnostic-AsJIEIvt.js} +1 -1
  307. package/dist/client/assets/{use-route-default-main-BWkjTfSK.js → use-route-default-main-CQGz2KW9.js} +1 -1
  308. package/dist/client/assets/{use-secrets-DQHJ4cVA.js → use-secrets-DgNcVRY9.js} +1 -1
  309. package/dist/client/assets/use-section-preview-base-mIL7vKdH.js +1 -0
  310. package/dist/client/assets/{use-session-runtime-D_Z0r9x6.js → use-session-runtime-B9eFlXyW.js} +1 -1
  311. package/dist/client/assets/{use-tags-DEpNJldS.js → use-tags-BM82Yu0K.js} +1 -1
  312. package/dist/client/assets/{use-task-board-analytics-Cw3-V-U_.js → use-task-board-analytics-D_ruF5p9.js} +1 -1
  313. package/dist/client/assets/{use-task-metadata-B8IWdSS_.js → use-task-metadata-qZ-qzNT-.js} +1 -1
  314. package/dist/client/assets/{use-thread-analytics-CW55-Xe0.js → use-thread-analytics-BcEpZDI1.js} +1 -1
  315. package/dist/client/assets/{use-thread-outputs-C4iYsVj1.js → use-thread-outputs-CIF4-tq_.js} +1 -1
  316. package/dist/client/assets/{use-virtual-mcp-CfvZlIda.js → use-virtual-mcp-BKP1YfD8.js} +1 -1
  317. package/dist/client/assets/useInfiniteQuery-DhVx-Xnv.js +1 -0
  318. package/dist/client/assets/{useQueries-Cd_bJN_E.js → useQueries-CbuhlNe5.js} +1 -1
  319. package/dist/client/assets/useSuspenseInfiniteQuery-CB90sByh.js +1 -0
  320. package/dist/client/assets/{users-DHJxjXSq.js → users-CDy-vhRi.js} +1 -1
  321. package/dist/client/assets/{utils-DMlJ8ARz.js → utils-VRidfAJX.js} +1 -1
  322. package/dist/client/assets/{variant-calendar-DghqPTU4.js → variant-calendar-C5Yhhu_f.js} +1 -1
  323. package/dist/client/assets/{variant-matcher-override-BL815r4E.js → variant-matcher-override-NRDTBNQG.js} +1 -1
  324. package/dist/client/assets/view-mode-toggle-P-VmNhrj.js +1 -0
  325. package/dist/client/assets/{virtual-mcp-CcUa7C54.js → virtual-mcp-DXr1jTLu.js} +1 -1
  326. package/dist/client/index.html +2 -2
  327. package/dist/server/cli.js +6 -6
  328. package/dist/server/server.js +6 -6
  329. package/package.json +1 -1
  330. package/dist/client/assets/agent-analytics-5H0k6n1D.js +0 -2
  331. package/dist/client/assets/agent-app-Cw9tbDuz.js +0 -1
  332. package/dist/client/assets/agent-assets-YP1dibLm.js +0 -1
  333. package/dist/client/assets/agent-automation-Bp39QN0z.js +0 -20
  334. package/dist/client/assets/agent-automations-CcIjwuOa.js +0 -1
  335. package/dist/client/assets/agent-connect-sources-gwlJwqxl.js +0 -1
  336. package/dist/client/assets/agent-deck-DjA8jeH7.js +0 -1
  337. package/dist/client/assets/agent-e2e-BiBmSSMh.js +0 -1
  338. package/dist/client/assets/agent-experiments-C0aMSCki.js +0 -1
  339. package/dist/client/assets/agent-file-C8oUDbru.js +0 -1
  340. package/dist/client/assets/agent-hosting-CrRHqit9.js +0 -1
  341. package/dist/client/assets/agent-library-file-DHksNut0.js +0 -1
  342. package/dist/client/assets/agent-monitor-BfRZolsZ.js +0 -1
  343. package/dist/client/assets/agent-overview-B71w2k7g.js +0 -1
  344. package/dist/client/assets/agent-settings-DLjV3KWn.js +0 -1
  345. package/dist/client/assets/agent-site-editor-code-HV34X_yY.js +0 -2
  346. package/dist/client/assets/agent-site-editor-content-BcZDuxlX.js +0 -9
  347. package/dist/client/assets/agent-site-editor-preview-B9JYzQCZ.js +0 -518
  348. package/dist/client/assets/agent-view-BTwtHRZF.js +0 -1
  349. package/dist/client/assets/agents-list-BOyqXgKJ.js +0 -1
  350. package/dist/client/assets/analytics-sections-DtS7EZgf.js +0 -1
  351. package/dist/client/assets/api-keys-CuyD-Z5R.js +0 -1
  352. package/dist/client/assets/api-keys-DrMp2tSJ.js +0 -1
  353. package/dist/client/assets/app-editor-CIFNTD8w.js +0 -1
  354. package/dist/client/assets/auth-entry-Bt2xP80T.js +0 -1
  355. package/dist/client/assets/block-document-B66z-LAv.js +0 -3
  356. package/dist/client/assets/breadcrumb-CTYBDQ2Q.js +0 -1
  357. package/dist/client/assets/category-editor-BzKSt8vB.js +0 -1
  358. package/dist/client/assets/collection-detail-CNH0TqEJ.js +0 -1
  359. package/dist/client/assets/collection-tabs-B6d-4IcJ.js +0 -1
  360. package/dist/client/assets/command-BNNuUVzL.js +0 -1
  361. package/dist/client/assets/connect-B67H5sTV.js +0 -8
  362. package/dist/client/assets/connection-detail-CGeE1NL9.js +0 -1
  363. package/dist/client/assets/connections-JoHYlluM.js +0 -1
  364. package/dist/client/assets/dialog-DP1MSxJH.js +0 -1
  365. package/dist/client/assets/discover-BV0HsgaI.js +0 -1
  366. package/dist/client/assets/file-share-button-rEL9QTqo.js +0 -3
  367. package/dist/client/assets/home-D2-wyRKJ.js +0 -1
  368. package/dist/client/assets/index-Cba7I4uA.js +0 -26
  369. package/dist/client/assets/index-DK8MJmup.js +0 -1
  370. package/dist/client/assets/index-DQQ8_5-n.css +0 -1
  371. package/dist/client/assets/index-g9QoTWAS.js +0 -1
  372. package/dist/client/assets/index-redirect-Cl6Yu5tU.js +0 -1
  373. package/dist/client/assets/index-xK_UxIbV.js +0 -5
  374. package/dist/client/assets/input-BpZKxjG2.js +0 -8
  375. package/dist/client/assets/library-B502b1z4.js +0 -161
  376. package/dist/client/assets/members-BoGXKcke.js +0 -1
  377. package/dist/client/assets/message-templates-D0vFWbXr.js +0 -1
  378. package/dist/client/assets/mock-board-CLLyx2N9.js +0 -10
  379. package/dist/client/assets/multi-select--1a2IkR7.js +0 -1
  380. package/dist/client/assets/org-file-open-context-BGwxOJ5f.js +0 -1
  381. package/dist/client/assets/page-seo-form-C1Rgy6PR.js +0 -1
  382. package/dist/client/assets/profile-r8hRIBVU.js +0 -1
  383. package/dist/client/assets/project-feed-DminiBzl.js +0 -1
  384. package/dist/client/assets/project-reports-JmbfgpKz.js +0 -1
  385. package/dist/client/assets/project-tasks-2GTKjWCp.js +0 -1
  386. package/dist/client/assets/record-editor-B-ETGxA0.js +0 -1
  387. package/dist/client/assets/reports-Dd7XY9fp.js +0 -1
  388. package/dist/client/assets/reports-tab-CoNw5u9A.js +0 -2
  389. package/dist/client/assets/require-capability-3QFnbaVg.js +0 -1
  390. package/dist/client/assets/roles-CesqgDGr.js +0 -1
  391. package/dist/client/assets/route-BXF3hfx7.js +0 -1
  392. package/dist/client/assets/route-CH1X1P-P.js +0 -1
  393. package/dist/client/assets/route-page-header-BHR-ItxW.js +0 -1
  394. package/dist/client/assets/route-utJJlEy1.js +0 -1
  395. package/dist/client/assets/runnable-block-editor-D_EKjpsM.js +0 -17
  396. package/dist/client/assets/secrets-CTexxl38.js +0 -1
  397. package/dist/client/assets/sections-editor-8OIVL9zx.js +0 -1
  398. package/dist/client/assets/select-model-baGNpvTB.js +0 -1
  399. package/dist/client/assets/settings-tab-DSJnx2cf.js +0 -5
  400. package/dist/client/assets/shell-layout-PUnaTk6G.js +0 -1
  401. package/dist/client/assets/sidebar-gH44_aFR.js +0 -1
  402. package/dist/client/assets/skills-CEarjmfu.js +0 -1
  403. package/dist/client/assets/synced-repos-B5N_C_En.js +0 -1
  404. package/dist/client/assets/taskboard-analytics-BDhMfBmv.js +0 -1
  405. package/dist/client/assets/tasks-L4O6RNHu.js +0 -1
  406. package/dist/client/assets/thread-analytics-CWolaSZq.js +0 -1
  407. package/dist/client/assets/thread-button-C353BNO6.js +0 -1
  408. package/dist/client/assets/thread-route-Bx6eqAUQ.js +0 -1
  409. package/dist/client/assets/toggle-group-WpqscYaw.js +0 -1
  410. package/dist/client/assets/toolbar-icon-button-DAFKD_pK.js +0 -1
  411. package/dist/client/assets/use-connect-companion-v6osDnhK.js +0 -1
  412. package/dist/client/assets/use-in-settings-BA5Od6zt.js +0 -1
  413. package/dist/client/assets/use-main-panel-tabs-CtoMsbfs.js +0 -1
  414. package/dist/client/assets/use-section-preview-base-CdEeBhgs.js +0 -1
  415. package/dist/client/assets/useInfiniteQuery-DfdWdULq.js +0 -1
  416. package/dist/client/assets/useSuspenseInfiniteQuery-ByyP6gL-.js +0 -1
  417. package/dist/client/assets/view-mode-toggle-Czn_wQOw.js +0 -1
@@ -1,518 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/sections-editor-8OIVL9zx.js","assets/index-Ck4x2-t2.js","assets/index-DQQ8_5-n.css","assets/chat-context-SUJKu-XN.js","assets/use-panel-navigate-wv77dcM5.js","assets/thread-route-CmEEfnPs.js","assets/use-project-scope-DHDkFc-g.js","assets/use-virtual-mcp-CfvZlIda.js","assets/use-mcp-client-DDIocHT6.js","assets/auth-IJXSFSKo.js","assets/github-repo-BknN0SVI.js","assets/autosend-n3O0UdBS.js","assets/thread-intent-BuxfElu5.js","assets/slugify-CEUa2lfQ.js","assets/hooks-ZDl1T3YR.js","assets/backoff-8mStPHYB.js","assets/task-board-CIQEQ9gq.js","assets/schema-C2l7sv-S.js","assets/use-is-desktop-app-BNujXJc_.js","assets/use-entitlements-Dql2buFj.js","assets/use-ai-providers-BOtkBAHJ.js","assets/location-oTTXFrSF.js","assets/use-decopilot-events-BzhXXQi3.js","assets/use-organization-settings-DYk5FZJw.js","assets/runnable-block-editor-D_EKjpsM.js","assets/use-session-runtime-D_Z0r9x6.js","assets/claim-phase-copy-Chi823Vj.js","assets/agent-icon-Uyip_c6M.js","assets/AlertCircle-DAwsTYRk.js","assets/Tool01-B8crh1aV.js","assets/ArrowUp-Lg4NvWzc.js","assets/ArrowLeft-tvLjkuWF.js","assets/ArrowRight-z0a_5OhC.js","assets/ZoomOut-DwQzEWYf.js","assets/Globe04-CXTO7_iP.js","assets/CheckCircle-Czw2y_F3.js","assets/Check-BQZy9c_F.js","assets/ChevronUp-BYljQT_d.js","assets/UserSquare-CAO2KcuZ.js","assets/Copy01-6I1_Aion.js","assets/CreditCard01-DargNaAR.js","assets/DotsVertical-CN_Dg-j8.js","assets/Eye-B4QzGCZN.js","assets/Share07-B29GBkjP.js","assets/XClose-BEOYWQzz.js","assets/Image01-9AXWgviq.js","assets/Key01-DFgwFBUs.js","assets/LayoutLeft-SQ7j1egP.js","assets/Link01-V3TqRs3C.js","assets/LinkExternal01-CPO90J3S.js","assets/Monitor01-C9DSVDfs.js","assets/Sun-t-nvniXl.js","assets/Palette-D0rqSgjT.js","assets/Plus-BU--LXol.js","assets/SearchMd-BpFEap-1.js","assets/Trash01-DdWmWubI.js","assets/Upload01-CsQlMBfP.js","assets/User01-B4ccibs0.js","assets/Users01-D4csSmiF.js","assets/X-lSFSs7wx.js","assets/Zap-BZmnDtce.js","assets/sandbox-start-errors-BK_aDCyt.js","assets/pair-DW_WRb6G.js","assets/format-time-BtXRrtv4.js","assets/differenceInSeconds-C3x8sHUj.js","assets/collapsible-CMMGBTfa.js","assets/use-copy-CWcw9y0f.js","assets/usage-stats-Gv-3x4Ta.js","assets/markdown-D9JYtNvk.js","assets/dialog-DP1MSxJH.js","assets/org-file-open-context-BGwxOJ5f.js","assets/use-mobile-CdzCnkMt.js","assets/tooltip-D_t5agRT.js","assets/index-C_kk8c78.js","assets/shell-layout-PUnaTk6G.js","assets/avatar-BdlFnSU8.js","assets/download-app-dialog-hSU8H3Vj.js","assets/command-BNNuUVzL.js","assets/index-Bg7kKf4r.js","assets/integration-icon-CXxe2Nmz.js","assets/project-icon-CjBJRgr0.js","assets/required-auth-layout-BWh5q3u2.js","assets/use-org-sso-Bg9XoWeE.js","assets/shell-layout-CE2Eihra.css","assets/content-blocks-o63cs2vh.js","assets/mcp-app-renderer-CK8AdoIv.js","assets/types-EnXetskt.js","assets/omit-sandbox-map-jj4lCB2U.js","assets/gateway-client-Bunqz-v_.js","assets/tool-namespace-DmnQIdtF.js","assets/utils-CVEq3hMx.js","assets/sheet-C9bl1oJW.js","assets/use-connection-CK-5Lpbl.js","assets/use-navigate-to-agent-CK2ojcHr.js","assets/use-mcp-prompts-D8MzpgAT.js","assets/index--xKIMIg3.js","assets/form-BT-p7abF.js","assets/label-BasQfmGn.js","assets/input-BBpmUhtR.js","assets/use-thread-outputs-C4iYsVj1.js","assets/file-type-icon-BV5PHbD1.js","assets/popover-K1ZrYG78.js","assets/utils-DMlJ8ARz.js","assets/scroll-area-CTv9WE1l.js","assets/select-BoR29t6W.js","assets/monaco-editor-CLYybS8B.js","assets/editor-B7C6vwjS.js","assets/calendar-BBDqyYcl.js","assets/textarea-DmhWadvL.js","assets/rich-text-link-control-CWGtfixK.js","assets/switch-wAm3D1I6.js","assets/combobox-q-ECrVO-.js","assets/alert-dialog-ScZSd_g9.js","assets/sandbox-url-D3mC8qhT.js","assets/search-input-yrvqqqa5.js","assets/tabs-Z84fQLpa.js","assets/use-debounced-value-BAmcCwZ4.js","assets/use-file-configs-Dr0d27aT.js","assets/asset-utils-zuPagV4t.js","assets/useInfiniteQuery-DfdWdULq.js","assets/infiniteQueryObserver-DJPW5pCw.js","assets/match-site-slug-config-D3fUJ6vX.js","assets/toggle-group-WpqscYaw.js","assets/decofile-api-BQi9jV2r.js","assets/sandbox-git-api-B1R0585s.js","assets/mustache-C9rsi357.js","assets/page-seo-form-C1Rgy6PR.js","assets/use-section-preview-base-CdEeBhgs.js","assets/section-preview-url-Csj0_ZDg.js","assets/variant-matcher-override-BL815r4E.js"])))=>i.map(i=>d[i]);
2
- import{r as x,ao as Bt,aG as it,ap as je,c as me,b as Ae,j as n,K as ur,e as mr,h as $t,B as Xe,aH as fr,Y as gn,aI as pr,U as gs,l as Ue,aF as hr,P as en,q as gr,t as qn}from"./index-Ck4x2-t2.js";import{A as vr}from"./agent-view-guard-CW2E0Nya.js";import{F as xr}from"./feature-gate-LTW2kwcy.js";import{a as br,b as Ft}from"./chat-context-SUJKu-XN.js";import{t as Gn}from"./ChevronUp-BYljQT_d.js";import{z as vs,H as yr,I as wr,J as tn,K as Jn,L as Yn,M as Qn,E as Xn,N as nn,C as kr}from"./agent-icon-Uyip_c6M.js";import{i as sn}from"./Share07-B29GBkjP.js";import{n as mn}from"./LinkExternal01-CPO90J3S.js";import{s as Zn}from"./Plus-BU--LXol.js";import{i as Pr}from"./UserSquare-CAO2KcuZ.js";import{P as Sr,a as jr,b as Er}from"./popover-K1ZrYG78.js";import{a as vt,b as xt,c as xs,d as bs,e as ys,C as ws}from"./command-BNNuUVzL.js";import{d as Nr,a as Cr}from"./use-virtual-mcp-CfvZlIda.js";import{c as ks,d as vn,f as Rr}from"./sandbox-lifecycle-context-DIc5m19C.js";import{e as Tr,d as Lr}from"./backoff-8mStPHYB.js";import{a as Or}from"./thread-intent-BuxfElu5.js";import{u as Ps}from"./use-session-runtime-D_Z0r9x6.js";import{N as _r,b as Ar,s as ot,n as xn,c as Ss,f as He,v as js,h as Dr,u as Br,e as $r,d as Fr,j as Mr,k as es}from"./claim-phase-copy-Chi823Vj.js";import{u as zr}from"./use-mobile-CdzCnkMt.js";import{c as Ge,T as Je,a as Ye}from"./tooltip-D_t5agRT.js";import{T as Fe}from"./toolbar-icon-button-DAFKD_pK.js";import{b as Ir,a as Kr,u as Es,g as Ur,c as Hr,B as rn,P as Wr,r as Vr,R as qr,d as Gr,e as bn,f as Ns,h as Jr,i as Yr,j as Qr,l as Xr,m as Zr,k as ea,p as ta,n as na,S as an}from"./runnable-block-editor-D_EKjpsM.js";import{w as Ot}from"./variant-matcher-override-BL815r4E.js";import{r as sa,w as ra,D as aa,b as ts,a as ia}from"./section-preview-url-Csj0_ZDg.js";import{u as oa}from"./use-fast-preview-draft-url-BxezoKmd.js";import{r as Cs,l as Rs,u as la,w as ca}from"./last-preview-page-tC_ec-8v.js";import{u as da}from"./use-is-desktop-app-BNujXJc_.js";import{a as ua,d as Ts}from"./shell-layout-PUnaTk6G.js";import{u as fn}from"./useQueries-Cd_bJN_E.js";import{i as ma}from"./ArrowRight-z0a_5OhC.js";import{b as Ls,D as Os,c as _s,d as As,e as fa}from"./dialog-DP1MSxJH.js";import{I as ns}from"./input-BBpmUhtR.js";import{u as Ds}from"./blocks-preview-workspace-context-CPHwvzb5.js";import{i as pa}from"./AlertCircle-DAwsTYRk.js";import{E as yn}from"./empty-state-CaK4RTlm.js";import{i as ha}from"./X-lSFSs7wx.js";import{M as ga}from"./monaco-editor-CLYybS8B.js";import{a as va}from"./utils-DMlJ8ARz.js";import{R as ss,a as pt,b as on}from"./resizable-C3GNt7qd.js";import{r as xa}from"./virtual-mcp-CcUa7C54.js";import{b as ln}from"./use-project-scope-DHDkFc-g.js";import{G as rs}from"./github-icon-B7EzOW44.js";import{R as ba}from"./repository-import-picker-Kal2nH0n.js";import{r as ya}from"./use-main-panel-tabs-CtoMsbfs.js";import{u as wa}from"./use-task-metadata-B8IWdSS_.js";import{b as ka}from"./thread-route-CmEEfnPs.js";import"./use-panel-navigate-wv77dcM5.js";import"./feature-paywall-1lut-OZA.js";import"./Check-BQZy9c_F.js";import"./plan-ladder-BXJ0swZ2.js";import"./use-entitlements-Dql2buFj.js";import"./autosend-n3O0UdBS.js";import"./hooks-ZDl1T3YR.js";import"./use-mcp-client-DDIocHT6.js";import"./auth-IJXSFSKo.js";import"./task-board-CIQEQ9gq.js";import"./schema-C2l7sv-S.js";import"./use-ai-providers-BOtkBAHJ.js";import"./location-oTTXFrSF.js";import"./use-decopilot-events-BzhXXQi3.js";import"./use-organization-settings-DYk5FZJw.js";import"./Tool01-B8crh1aV.js";import"./ArrowUp-Lg4NvWzc.js";import"./ArrowLeft-tvLjkuWF.js";import"./ZoomOut-DwQzEWYf.js";import"./Globe04-CXTO7_iP.js";import"./CheckCircle-Czw2y_F3.js";import"./Copy01-6I1_Aion.js";import"./CreditCard01-DargNaAR.js";import"./DotsVertical-CN_Dg-j8.js";import"./Eye-B4QzGCZN.js";import"./XClose-BEOYWQzz.js";import"./Image01-9AXWgviq.js";import"./Key01-DFgwFBUs.js";import"./LayoutLeft-SQ7j1egP.js";import"./Link01-V3TqRs3C.js";import"./Monitor01-C9DSVDfs.js";import"./Sun-t-nvniXl.js";import"./Palette-D0rqSgjT.js";import"./SearchMd-BpFEap-1.js";import"./Trash01-DdWmWubI.js";import"./Upload01-CsQlMBfP.js";import"./User01-B4ccibs0.js";import"./Users01-D4csSmiF.js";import"./Zap-BZmnDtce.js";import"./index-Bg7kKf4r.js";import"./sandbox-url-D3mC8qhT.js";import"./sandbox-start-errors-BK_aDCyt.js";import"./slugify-CEUa2lfQ.js";import"./index-C_kk8c78.js";import"./pair-DW_WRb6G.js";import"./format-time-BtXRrtv4.js";import"./differenceInSeconds-C3x8sHUj.js";import"./collapsible-CMMGBTfa.js";import"./use-copy-CWcw9y0f.js";import"./usage-stats-Gv-3x4Ta.js";import"./markdown-D9JYtNvk.js";import"./org-file-open-context-BGwxOJ5f.js";import"./content-blocks-o63cs2vh.js";import"./mcp-app-renderer-CK8AdoIv.js";import"./types-EnXetskt.js";import"./omit-sandbox-map-jj4lCB2U.js";import"./gateway-client-Bunqz-v_.js";import"./tool-namespace-DmnQIdtF.js";import"./utils-CVEq3hMx.js";import"./sheet-C9bl1oJW.js";import"./integration-icon-CXxe2Nmz.js";import"./use-connection-CK-5Lpbl.js";import"./use-navigate-to-agent-CK2ojcHr.js";import"./github-repo-BknN0SVI.js";import"./use-mcp-prompts-D8MzpgAT.js";import"./index--xKIMIg3.js";import"./form-BT-p7abF.js";import"./label-BasQfmGn.js";import"./use-thread-outputs-C4iYsVj1.js";import"./file-type-icon-BV5PHbD1.js";import"./scroll-area-CTv9WE1l.js";import"./select-BoR29t6W.js";import"./calendar-BBDqyYcl.js";import"./textarea-DmhWadvL.js";import"./rich-text-link-control-CWGtfixK.js";import"./switch-wAm3D1I6.js";import"./combobox-q-ECrVO-.js";import"./alert-dialog-ScZSd_g9.js";import"./search-input-yrvqqqa5.js";import"./tabs-Z84fQLpa.js";import"./use-debounced-value-BAmcCwZ4.js";import"./use-file-configs-Dr0d27aT.js";import"./asset-utils-zuPagV4t.js";import"./useInfiniteQuery-DfdWdULq.js";import"./infiniteQueryObserver-DJPW5pCw.js";import"./match-site-slug-config-D3fUJ6vX.js";import"./toggle-group-WpqscYaw.js";import"./decofile-api-BQi9jV2r.js";import"./sandbox-git-api-B1R0585s.js";import"./avatar-BdlFnSU8.js";import"./download-app-dialog-hSU8H3Vj.js";import"./project-icon-CjBJRgr0.js";import"./required-auth-layout-BWh5q3u2.js";import"./use-org-sso-Bg9XoWeE.js";import"./editor-B7C6vwjS.js";import"./repository-picker-DxgY__Tu.js";import"./collection-search-3XS3AdJ3.js";import"./use-route-default-main-BWkjTfSK.js";import"./use-mcp-tools-CFGrhbrB.js";import"./index-g9QoTWAS.js";import"./drawer-DeP9v70y.js";import"./input-BpZKxjG2.js";import"./chat-draft-D9u5CYEW.js";import"./use-deco-credits-BAtSd5iZ.js";import"./use-open-billing-url-ptdTbbBm.js";import"./decopilot-D9YGMtj1.js";import"./checkbox-CC9zkEff.js";import"./ai-providers-logos-DD3qZ33J.js";import"./index-nUsHjtAT.js";import"./input-CsRLFWsE.js";import"./suggestion-BSo5OP_j.js";import"./use-org-fs-B5SsMM_1.js";import"./question-004-sINsf4GQ.js";import"./use-members-BtxsC9V3.js";import"./use-org-auth-client-B2Mz39Ds.js";import"./add-connection-dialog-BwKHIeY0.js";import"./extract-connection-data-v71aWs18.js";import"./metadata-D72DunRR.js";import"./connection-D_fwf_le.js";import"./connection-card-wq7ff65-.js";import"./connection-slug-CITJ0kGN.js";import"./connection-form-helpers-D8LXn1d-.js";import"./authenticate-and-persist-oauth-2rXUqvh1.js";import"./mcp-oauth-CCvVH2OB.js";import"./collection-tabs-B6d-4IcJ.js";import"./badge-Bhd7Yjxv.js";import"./use-infinite-scroll-CAp6PiC0.js";import"./useSuspenseInfiniteQuery-ByyP6gL-.js";import"./use-project-native-view-presence-gzbdZMHU.js";import"./site-slug-DebpOoQq.js";const Pa={mode:"none",iframeBase:null,showBlockingOverlay:!1,showWakingPill:!1};function Sa(t){const{previewState:e,progressStatus:r,fastPreviewActive:s=!1,fastPreviewReady:i=!1,codingSession:u=!1}=t,c=u?null:t.previewServerUrl;return t.localPreviewUrl?{mode:"sandbox",iframeBase:t.localPreviewUrl,showBlockingOverlay:!1,showWakingPill:!1}:e.kind==="suspended"||e.kind==="errored"?Pa:s&&i&&c?{mode:"production",iframeBase:c,showBlockingOverlay:!1,showWakingPill:!1}:!s&&e.kind==="iframe"&&r!=="doing"?{mode:"sandbox",iframeBase:e.previewUrl,showBlockingOverlay:!1,showWakingPill:!1}:c?{mode:"production",iframeBase:c,showBlockingOverlay:!1,showWakingPill:!0}:{mode:"none",iframeBase:null,showBlockingOverlay:!0,showWakingPill:!1}}const ja=1e4,Ea=1e3,Na=3e4;function Ca({iframeRef:t,src:e,active:r}){const s=x.useRef(0),i=x.useRef(null),u=x.useRef(null),c=x.useRef(e),d=x.useRef(r);c.current=e,d.current=r;const o=()=>{i.current&&clearTimeout(i.current),u.current&&clearTimeout(u.current),i.current=null,u.current=null},l=()=>{i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{i.current=null,h()},ja)},h=()=>{if(!d.current||!c.current)return;u.current&&clearTimeout(u.current);const P=Tr(Na,Ea,s.current,2,.5);s.current+=1,u.current=setTimeout(()=>{u.current=null;const g=t.current,k=c.current;!g||!k||!d.current||(g.src=k,l())},P)},f=()=>{s.current=0,o()},p=()=>{i.current&&(clearTimeout(i.current),i.current=null),h()};return x.useEffect(()=>{if(o(),s.current=0,!(!r||!e))return l(),o},[e,r]),{handleLoad:f,handleError:p}}var as;(function(t){t.WINDOW_RESIZED="tauri://resize",t.WINDOW_MOVED="tauri://move",t.WINDOW_CLOSE_REQUESTED="tauri://close-requested",t.WINDOW_DESTROYED="tauri://destroyed",t.WINDOW_FOCUS="tauri://focus",t.WINDOW_BLUR="tauri://blur",t.WINDOW_SCALE_FACTOR_CHANGED="tauri://scale-change",t.WINDOW_THEME_CHANGED="tauri://theme-changed",t.WINDOW_CREATED="tauri://window-created",t.WINDOW_SUSPENDED="tauri://suspended",t.WINDOW_RESUMED="tauri://resumed",t.WEBVIEW_CREATED="tauri://webview-created",t.DRAG_ENTER="tauri://drag-enter",t.DRAG_OVER="tauri://drag-over",t.DRAG_DROP="tauri://drag-drop",t.DRAG_LEAVE="tauri://drag-leave"})(as||(as={}));const Ra=Bt({tag:je(),id:je(),classes:je(),text:je(),html:je(),manifestKey:je().nullable(),componentName:je().nullable(),parents:je(),url:je(),path:je(),viewport:Bt({width:it(),height:it()}),position:Bt({x:it(),y:it()})}),Ta=`(function() {
3
- if (window.__visualEditorActive) return;
4
- window.__visualEditorActive = true;
5
-
6
- var cursorStyle = document.createElement("style");
7
- cursorStyle.textContent = "* { cursor: default !important; }";
8
- document.head.appendChild(cursorStyle);
9
-
10
- var highlight = document.createElement("div");
11
- highlight.style.cssText = "position:fixed;pointer-events:none;outline:2px solid #a855f7;background:rgba(168,85,247,0.08);border-radius:2px;z-index:2147483647;display:none;";
12
- document.body.appendChild(highlight);
13
-
14
- var badge = document.createElement("div");
15
- badge.style.cssText = "position:fixed;pointer-events:none;background:#a855f7;color:white;font:11px/1 monospace;padding:2px 6px;border-radius:2px;z-index:2147483647;display:none;white-space:nowrap;max-width:240px;overflow:hidden;text-overflow:ellipsis;";
16
- document.body.appendChild(badge);
17
-
18
- var lastTarget = null;
19
- var rafPending = false;
20
- var moveHandler = function(e) {
21
- if (rafPending) return;
22
- rafPending = true;
23
- var target = e.target;
24
- requestAnimationFrame(function() {
25
- rafPending = false;
26
- var el = target;
27
- if (!el || el === highlight || el === badge) return;
28
- if (el === lastTarget) return;
29
- lastTarget = el;
30
- var r = el.getBoundingClientRect();
31
- highlight.style.display = "block";
32
- highlight.style.top = r.top + "px";
33
- highlight.style.left = r.left + "px";
34
- highlight.style.width = r.width + "px";
35
- highlight.style.height = r.height + "px";
36
- var tag = el.tagName.toLowerCase();
37
- var id = el.id ? "#" + el.id : "";
38
- var cls = el.className && typeof el.className === "string"
39
- ? "." + el.className.trim().split(/\\s+/).slice(0, 2).join(".")
40
- : "";
41
- badge.textContent = tag + id + cls;
42
- badge.style.display = "block";
43
- badge.style.top = Math.max(0, r.top - 20) + "px";
44
- badge.style.left = r.left + "px";
45
- });
46
- };
47
- document.addEventListener("mousemove", moveHandler, true);
48
-
49
- var outHandler = function(e) {
50
- if (!e.relatedTarget || e.relatedTarget === document.documentElement) {
51
- highlight.style.display = "none";
52
- badge.style.display = "none";
53
- lastTarget = null;
54
- }
55
- };
56
- document.addEventListener("mouseout", outHandler, true);
57
-
58
- var clickHandler = function(e) {
59
- e.preventDefault();
60
- e.stopImmediatePropagation();
61
- var el = e.target;
62
- if (!el || el === highlight || el === badge) return;
63
-
64
- highlight.style.outline = "2px solid #a855f7";
65
- highlight.style.background = "rgba(168,85,247,0.15)";
66
- setTimeout(function() {
67
- highlight.style.outline = "2px solid #a855f7";
68
- highlight.style.background = "rgba(168,85,247,0.08)";
69
- }, 400);
70
-
71
- var tag = el.tagName.toLowerCase();
72
- var id = el.id || "";
73
- var classes = el.className && typeof el.className === "string" ? el.className.trim() : "";
74
- var text = (el.textContent || "").trim().slice(0, 200);
75
- var html = (el.outerHTML || "").slice(0, 800).replace(/\\svalue=("[^"]*"|'[^']*'|\\S+)/gi, "");
76
-
77
- var closestSection = el.closest("section[data-manifest-key]");
78
- var manifestKey = closestSection ? closestSection.getAttribute("data-manifest-key") : null;
79
-
80
- var ancestor = el;
81
- var componentName = null;
82
- for (var i = 0; i < 10 && ancestor; i++) {
83
- if (ancestor.dataset) componentName = ancestor.dataset.componentName || componentName;
84
- ancestor = ancestor.parentElement;
85
- }
86
-
87
- var parents = [];
88
- var p = el.parentElement;
89
- for (var j = 0; j < 4 && p && p !== document.body; j++) {
90
- var pTag = p.tagName ? p.tagName.toLowerCase() : "";
91
- var pId = p.id ? "#" + p.id : "";
92
- var pCls = p.className && typeof p.className === "string"
93
- ? "." + p.className.trim().split(/\\s+/)[0]
94
- : "";
95
- parents.unshift(pTag + pId + pCls);
96
- p = p.parentElement;
97
- }
98
-
99
- window.parent.postMessage({
100
- type: "visual-editor::element-clicked",
101
- payload: {
102
- tag: tag, id: id, classes: classes, text: text, html: html,
103
- manifestKey: manifestKey, componentName: componentName,
104
- parents: parents.join(" > "),
105
- url: window.location.href, path: window.location.pathname,
106
- viewport: { width: window.innerWidth, height: window.innerHeight },
107
- position: { x: Math.round(e.clientX), y: Math.round(e.clientY) }
108
- }
109
- }, "*");
110
- };
111
- document.addEventListener("click", clickHandler, true);
112
-
113
- window.addEventListener("message", function(e) {
114
- // Only Studio's own postMessage (source === this frame's parent) may drive the bridge — a nested/downstream frame's forged message can't deactivate the editor.
115
- if (e.source !== window.parent) return;
116
- // Parent-driven clear: the cross-origin iframe can't self-detect a frame exit.
117
- if (e.data && e.data.type === "visual-editor::clear-hover") {
118
- highlight.style.display = "none";
119
- badge.style.display = "none";
120
- lastTarget = null;
121
- return;
122
- }
123
- if (e.data && e.data.type === "visual-editor::deactivate") {
124
- highlight.remove();
125
- badge.remove();
126
- cursorStyle.remove();
127
- document.removeEventListener("mousemove", moveHandler, true);
128
- document.removeEventListener("mouseout", outHandler, true);
129
- document.removeEventListener("click", clickHandler, true);
130
- window.__visualEditorActive = false;
131
- }
132
- });
133
- })();`;function La(t,e){const r=t.map(()=>null),s=[];for(let p=0;p<t.length;p++)t[p]!==null&&s.push(p);const i=s.length,u=e.length;if(!i||!u)return r;const c=(p,P)=>{const g=t[s[p]??0];return!g||!g.length?1:g.indexOf(e[P]??"")>=0?2:0},d=[],o=[];for(let p=0;p<=i;p++)d.push(new Array(u+1).fill(0)),o.push(new Array(u+1).fill(2));for(let p=1;p<=i;p++){const P=d[p-1]??[],g=d[p]??[],k=o[p]??[];for(let b=1;b<=u;b++){let v=P[b]??0,C=2;const y=g[b-1]??0;y>v&&(v=y,C=0);const w=c(p-1,b-1),S=(P[b-1]??0)+w;w>0&&S>v&&(v=S,C=1),g[b]=v,k[b]=C}}let l=0,h=i,f=u;for(;h>0&&f>0;){const p=o[h]?.[f]??2;p===1?(r[s[h-1]??0]=f-1,l++,h--,f--):p===0?f--:h--}if(l===0&&u===i)for(let p=0;p<i;p++)r[s[p]??0]=p;return r}const Oa=Bt({sectionIndex:it(),manifestKey:je(),clickSeq:it()}),is=`(function() {
134
- if (window.__cmsEditorActive) return;
135
- window.__cmsEditorActive = true;
136
-
137
- // Preserve scroll across variant-override navigations and save-reloads.
138
- // Selecting a variant rebuilds the iframe src (new x-deco-matchers-override)
139
- // or reloads it, which would otherwise jump to the top. We persist the scroll
140
- // offset to sessionStorage (survives reload, same-origin) keyed by pathname
141
- // (the override only changes the query, so the key is stable), then restore it
142
- // on the next load — retried for ~1s so it outlasts re-hydration and lazy
143
- // sections that grow the page after load. The recency guard avoids restoring a
144
- // stale offset on a genuinely fresh visit.
145
- var SCROLL_KEY = "__cms_preview_scroll:" + location.pathname;
146
- var saveScroll = function() {
147
- try {
148
- sessionStorage.setItem(SCROLL_KEY, JSON.stringify({
149
- x: window.scrollX, y: window.scrollY, t: Date.now()
150
- }));
151
- } catch (_) {}
152
- };
153
- var saveScrollPending = false;
154
- window.addEventListener("scroll", function() {
155
- if (saveScrollPending) return;
156
- saveScrollPending = true;
157
- requestAnimationFrame(function() { saveScrollPending = false; saveScroll(); });
158
- }, { passive: true });
159
- (function restoreScroll() {
160
- var raw = null;
161
- try { raw = sessionStorage.getItem(SCROLL_KEY); } catch (_) {}
162
- if (!raw) return;
163
- var saved = null;
164
- try { saved = JSON.parse(raw); } catch (_) { return; }
165
- if (!saved || (Date.now() - saved.t) > 10000) return;
166
- if (!saved.x && !saved.y) return;
167
- var attempts = 0;
168
- var apply = function() {
169
- attempts++;
170
- window.scrollTo(saved.x || 0, saved.y || 0);
171
- if (attempts < 8) setTimeout(apply, 120);
172
- };
173
- apply();
174
- })();
175
-
176
- var highlight = document.createElement("div");
177
- highlight.style.cssText = "position:absolute;pointer-events:none;outline:2px solid #06b6d4;background:rgba(6,182,212,0.06);border-radius:2px;z-index:2147483647;display:none;";
178
- document.body.appendChild(highlight);
179
-
180
- var badge = document.createElement("div");
181
- badge.style.cssText = "position:absolute;pointer-events:none;background:#06b6d4;color:white;font:11px/1 monospace;padding:2px 6px;border-radius:2px;z-index:2147483647;display:none;white-space:nowrap;max-width:240px;overflow:hidden;text-overflow:ellipsis;";
182
- document.body.appendChild(badge);
183
-
184
- var isTopLevelSection = function(el) {
185
- return el && el.parentElement
186
- ? !el.parentElement.closest("section[data-manifest-key]")
187
- : true;
188
- };
189
-
190
- // All top-level page sections in DOM order (deco renders page sections as
191
- // <section data-manifest-key>; nested islands/sections carry the attribute
192
- // too, hence the top-level filter). This is the full DOM run, framework
193
- // sections included — getAllSections() narrows it to the editable window.
194
- var topLevelSections = function() {
195
- return Array.from(document.querySelectorAll("section[data-manifest-key]"))
196
- .filter(isTopLevelSection);
197
- };
198
-
199
- // Acceptable DOM keys per section; [] = wildcard, null = renders nothing.
200
- var sectionCandidates = [];
201
-
202
- // Stringified from section-alignment.ts so both sides share one copy.
203
- var alignSections = ${La.toString()};
204
-
205
- // Indexed like the decofile array; unmapped entries stay null (not clickable).
206
- var computeAlignment = function(tops) {
207
- var domKeys = tops.map(function(s) { return s.getAttribute("data-manifest-key"); });
208
- return alignSections(sectionCandidates, domKeys).map(function(idx) {
209
- return idx === null ? null : tops[idx];
210
- });
211
- };
212
-
213
- // Editable sections, indexed to match the decofile array the panel uses.
214
- // Recomputed from the live DOM each call (cheap, rAF-throttled) so it
215
- // self-heals as client-rendered/lazy sections mount. Until the editor sends
216
- // candidates, fall back to the full top-level run.
217
- var getAllSections = function() {
218
- var tops = topLevelSections();
219
- return sectionCandidates.length ? computeAlignment(tops) : tops;
220
- };
221
-
222
- // Resolve to the OUTERMOST page-level section (clicking nested content still
223
- // maps to the top-level section the panel indexes); null if it isn't in the
224
- // aligned editable set (a framework section deco injected).
225
- var findSection = function(el, out) {
226
- var node = el;
227
- var found = null;
228
- while (node && node !== document.body) {
229
- if (node.tagName === "SECTION" && node.hasAttribute && node.hasAttribute("data-manifest-key")) {
230
- found = node;
231
- }
232
- node = node.parentElement;
233
- }
234
- if (!found) return null;
235
- var sections = getAllSections();
236
- if (out) out.sections = sections;
237
- return sections.indexOf(found) >= 0 ? found : null;
238
- };
239
-
240
- // A Lazy wrapper's key is just the loader — show the inner section's instead.
241
- var LAZY_KEYS = [
242
- "website/sections/Rendering/Lazy.tsx",
243
- "website/sections/Rendering/SingleDeferred.tsx"
244
- ];
245
- var isLazyKey = function(key) {
246
- return LAZY_KEYS.some(function(s) { return key.endsWith(s); });
247
- };
248
- var displayKey = function(section) {
249
- var key = section.getAttribute("data-manifest-key") || "section";
250
- if (isLazyKey(key)) {
251
- var inner = section.querySelector("section[data-manifest-key]");
252
- if (inner) return inner.getAttribute("data-manifest-key") || key;
253
- }
254
- return key;
255
- };
256
-
257
- // Per-section metadata sent by the editor, aligned by index with
258
- // getAllSections(). labels: names the DOM can't carry (a global section or a
259
- // global inside async rendering); kinds: section type that drives the color.
260
- var sectionLabels = [];
261
- var sectionKinds = [];
262
- var labelFor = function(section, sections) {
263
- var idx = (sections || getAllSections()).indexOf(section);
264
- if (idx >= 0 && sectionLabels[idx]) return sectionLabels[idx];
265
- return displayKey(section);
266
- };
267
- var kindFor = function(section, sections) {
268
- var idx = (sections || getAllSections()).indexOf(section);
269
- return (idx >= 0 && sectionKinds[idx]) || "normal";
270
- };
271
-
272
- // Highlight palette by section kind: global = light purple, variant = green,
273
- // normal = blue.
274
- var COLORS = {
275
- normal: { solid: "#06b6d4", bg: "rgba(6,182,212,0.06)", active: "rgba(6,182,212,0.18)" },
276
- global: { solid: "#c084fc", bg: "rgba(192,132,252,0.10)", active: "rgba(192,132,252,0.22)" },
277
- variant: { solid: "#22c55e", bg: "rgba(34,197,94,0.08)", active: "rgba(34,197,94,0.20)" }
278
- };
279
- var applyColor = function(kind) {
280
- var c = COLORS[kind] || COLORS.normal;
281
- highlight.style.outline = "2px solid " + c.solid;
282
- highlight.style.background = c.bg;
283
- badge.style.background = c.solid;
284
- };
285
-
286
- var lastSection = null;
287
- var lastLabel = "";
288
- var lastKind = "normal";
289
- var rafPending = false;
290
- // True while an in-place render fetch/swap is in flight; suppresses hover so it can't re-show the overlay right before the swap snapshots it.
291
- var renderPending = false;
292
-
293
- // Document-relative coordinates (rect + scroll) on absolutely-positioned
294
- // nodes, so the browser scrolls the highlight together with the page
295
- // natively — no per-frame JS repositioning, no scroll lag.
296
- var positionHighlight = function(section) {
297
- var r = section.getBoundingClientRect();
298
- var top = r.top + window.scrollY;
299
- var left = r.left + window.scrollX;
300
- highlight.style.display = "block";
301
- highlight.style.top = top + "px";
302
- highlight.style.left = left + "px";
303
- highlight.style.width = r.width + "px";
304
- highlight.style.height = r.height + "px";
305
- badge.textContent = lastLabel || displayKey(section);
306
- badge.style.display = "block";
307
- badge.style.top = Math.max(0, top - 20) + "px";
308
- badge.style.left = left + "px";
309
- };
310
-
311
- var moveHandler = function(e) {
312
- if (renderPending || rafPending) return;
313
- rafPending = true;
314
- var target = e.target;
315
- requestAnimationFrame(function() {
316
- rafPending = false;
317
- if (renderPending) return;
318
- if (!target || target === highlight || target === badge) return;
319
- var out = {};
320
- var section = findSection(target, out);
321
- if (section === lastSection) return;
322
- lastSection = section;
323
- if (!section) {
324
- highlight.style.display = "none";
325
- badge.style.display = "none";
326
- return;
327
- }
328
- lastLabel = labelFor(section, out.sections);
329
- lastKind = kindFor(section, out.sections);
330
- applyColor(lastKind);
331
- positionHighlight(section);
332
- });
333
- };
334
- document.addEventListener("mousemove", moveHandler, true);
335
-
336
- // Window scroll is handled natively by the absolute positioning above; this
337
- // only re-syncs on resize and on scrolls inside nested scroll containers
338
- // (capture=true catches those), where document coordinates do shift.
339
- var reposition = function() {
340
- if (!lastSection || highlight.style.display === "none") return;
341
- if (rafPending) return;
342
- rafPending = true;
343
- requestAnimationFrame(function() {
344
- rafPending = false;
345
- if (lastSection && highlight.style.display !== "none") positionHighlight(lastSection);
346
- });
347
- };
348
- window.addEventListener("scroll", reposition, { capture: true, passive: true });
349
- window.addEventListener("resize", reposition, { passive: true });
350
-
351
- var outHandler = function(e) {
352
- if (!e.relatedTarget || e.relatedTarget === document.documentElement) {
353
- highlight.style.display = "none";
354
- badge.style.display = "none";
355
- lastSection = null;
356
- }
357
- };
358
- document.addEventListener("mouseout", outHandler, true);
359
-
360
- var clickSeq = 0;
361
-
362
- // Blocks observes clicks to select sections in the side panel; it must not
363
- // cancel the iframe page's own handlers or native control behavior.
364
- var clickHandler = function(e) {
365
- var target = e.target;
366
- if (!target || target === highlight || target === badge) return;
367
- var out = {};
368
- var section = findSection(target, out);
369
- if (!section) return;
370
-
371
- var sectionIndex = out.sections.indexOf(section);
372
- var manifestKey = section.getAttribute("data-manifest-key") || "";
373
-
374
- var c = COLORS[lastKind] || COLORS.normal;
375
- highlight.style.outline = "2px solid " + c.solid;
376
- highlight.style.background = c.active;
377
- setTimeout(function() {
378
- highlight.style.background = c.bg;
379
- }, 400);
380
-
381
- clickSeq++;
382
- window.parent.postMessage({
383
- type: "cms-editor::section-clicked",
384
- payload: { sectionIndex: sectionIndex, manifestKey: manifestKey, clickSeq: clickSeq }
385
- }, "*");
386
- };
387
- document.addEventListener("click", clickHandler, true);
388
-
389
- /**
390
- * Navigation is disabled while editing: leaving the page would leave the
391
- * panel editing the previous page's sections. Only the default action of a
392
- * real navigation is cancelled, never propagation — in-page controls must
393
- * keep working (#5567).
394
- */
395
- var isNavigatingAnchor = function(a) {
396
- if (!a) return false;
397
- var href = a.getAttribute("href");
398
- if (!href) return false;
399
- var trimmed = href.trim();
400
- if (!trimmed || trimmed.charAt(0) === "#") return false;
401
- if (/^javascript:/i.test(trimmed)) return false;
402
- // Same document + fragment only scrolls.
403
- try {
404
- var url = new URL(a.href, location.href);
405
- if (url.href.split("#")[0] === location.href.split("#")[0]) return false;
406
- } catch (_) {}
407
- return true;
408
- };
409
- var navBlocker = function(e) {
410
- var el = e.target;
411
- var a = el && el.closest ? el.closest("a") : null;
412
- if (!isNavigatingAnchor(a)) return;
413
- e.preventDefault();
414
- };
415
- document.addEventListener("click", navBlocker, true);
416
-
417
- var submitBlocker = function(e) { e.preventDefault(); };
418
- document.addEventListener("submit", submitBlocker, true);
419
-
420
- // Fast Preview in-place render: POST merged decofile to /live/previews, swap the HTML in (document/window listeners survive; overlay nodes get re-attached).
421
- var renderCtrl = null;
422
- var renderQueue = Promise.resolve();
423
- var TRANSITION_TAG =
424
- "<style id=\\"deco-disable-transitions\\">* { transition: none !important; }</style></head>";
425
- var renderInPlace = function(src, body) {
426
- if (renderCtrl) renderCtrl.abort();
427
- var ctrl = new AbortController();
428
- renderCtrl = ctrl;
429
- renderPending = true;
430
- highlight.style.display = "none";
431
- badge.style.display = "none";
432
- window.parent.postMessage({ type: "cms-editor::render-start" }, "*");
433
- renderQueue = renderQueue.then(function() {
434
- return fetch(src, {
435
- method: "POST",
436
- body: body,
437
- signal: ctrl.signal,
438
- headers: { accept: "text/html", "content-type": "application/json" }
439
- }).then(function(res) {
440
- if (!res.ok) throw new Error("render " + res.status);
441
- return res.text();
442
- }).then(function(html) {
443
- var swap = function() {
444
- document.documentElement.innerHTML = html.replace("</head>", TRANSITION_TAG);
445
- document.body.appendChild(highlight);
446
- document.body.appendChild(badge);
447
- // Old section is gone; hide the overlay until the next hover repositions it.
448
- highlight.style.display = "none";
449
- badge.style.display = "none";
450
- lastSection = null;
451
- };
452
- var headHtml = html.slice(html.indexOf("<head>"), html.indexOf("</head>") + 7);
453
- var doc = new DOMParser().parseFromString(headHtml, "text/html");
454
- var sheets = Array.prototype.map.call(
455
- doc.head.querySelectorAll("link[rel=\\"stylesheet\\"]"),
456
- function(el) { return el.href ? fetch(el.href).catch(function() {}) : null; }
457
- );
458
- return Promise.all(sheets).then(function() {
459
- if (typeof document.startViewTransition === "function") {
460
- return document.startViewTransition(swap).finished;
461
- }
462
- swap();
463
- });
464
- }).then(function() {
465
- var t = document.getElementById("deco-disable-transitions");
466
- if (t) t.remove();
467
- if (ctrl === renderCtrl) renderPending = false;
468
- window.parent.postMessage({ type: "cms-editor::render-end" }, "*");
469
- }).catch(function(err) {
470
- if (ctrl === renderCtrl) renderPending = false;
471
- if (err && err.name === "AbortError") return;
472
- window.parent.postMessage({ type: "cms-editor::render-error" }, "*");
473
- });
474
- });
475
- };
476
-
477
- window.addEventListener("message", function(e) {
478
- // Only Studio's own postMessage (source === this frame's parent) may drive the bridge — forged senders can't trigger the render fetch/swap.
479
- if (e.source !== window.parent) return;
480
- if (e.data && e.data.type === "cms-editor::render" && typeof e.data.src === "string") {
481
- renderInPlace(e.data.src, e.data.body);
482
- return;
483
- }
484
- if (e.data && e.data.type === "cms-editor::set-labels" && Array.isArray(e.data.labels)) {
485
- sectionLabels = e.data.labels;
486
- if (Array.isArray(e.data.kinds)) sectionKinds = e.data.kinds;
487
- if (Array.isArray(e.data.keys)) sectionCandidates = e.data.keys;
488
- if (lastSection) {
489
- lastLabel = labelFor(lastSection);
490
- lastKind = kindFor(lastSection);
491
- applyColor(lastKind);
492
- if (highlight.style.display !== "none") positionHighlight(lastSection);
493
- }
494
- return;
495
- }
496
- // Parent-driven clear: the cross-origin iframe can't self-detect a frame exit.
497
- if (e.data && e.data.type === "cms-editor::clear-hover") {
498
- highlight.style.display = "none";
499
- badge.style.display = "none";
500
- lastSection = null;
501
- return;
502
- }
503
- if (e.data && e.data.type === "cms-editor::deactivate") {
504
- highlight.remove();
505
- badge.remove();
506
- document.removeEventListener("mousemove", moveHandler, true);
507
- document.removeEventListener("mouseout", outHandler, true);
508
- document.removeEventListener("click", clickHandler, true);
509
- // Or the page stays unnavigable after leaving Blocks mode.
510
- document.removeEventListener("click", navBlocker, true);
511
- document.removeEventListener("submit", submitBlocker, true);
512
- window.removeEventListener("scroll", reposition, { capture: true });
513
- window.removeEventListener("resize", reposition);
514
- window.__cmsEditorActive = false;
515
- }
516
- });
517
- })();`;function pn(t,e){let r=t,s=typeof r?.__resolveType=="string"?r.__resolveType:"";for(let i=0;s&&i<5;i++){const u=e[s];if(u&&typeof u=="object"&&"__resolveType"in u){const c=u.__resolveType;if(typeof c=="string"&&c&&c!==s){r=u,s=c;continue}}break}if(!s)return[];if(s.includes("flags/multivariate")){const i=Array.isArray(r.variants)?r.variants:[];if(i.length===0||i.every(d=>d?.rule?.__resolveType===_r))return null;const c=[];for(const d of i){const o=d?.value;if(o&&typeof o=="object")for(const l of pn(o,e)??[])c.includes(l)||c.push(l)}return c}if(Ar(s)){const i=r.section&&typeof r.section=="object"?pn(r.section,e):[];return i===null?null:i.length?[s,...i]:[s]}return[s]}function rt(t){return t.replace(/[`*_]/g,"\\$&")}function _a(t,e){const r=[`The user selected an element on the live preview and asked: **"${rt(e.trim())}"**`,"","For text content changes, locate the correct source file and apply the change.","For code and CSS changes, understand which component the user is referring to and apply changes to the correct component.",""];t.manifestKey&&r.push(`**Section resolveType:** \`${rt(t.manifestKey)}\``,"","This is a Deco resolveType, not a literal file path. The leading segment is the app name, not a directory — the actual source file lives under a sections directory whose root varies by site (commonly `sections/`, `src/sections/`, or `site/sections/`). Locate the file by searching for the trailing path (e.g. the component filename), don't assume the resolveType is a valid path on disk.","");const s=`<${t.tag}${t.classes?` class="${rt(t.classes)}"`:""}>`;r.push(`**Clicked element:** \`${s}\``),t.parents&&r.push(`**DOM breadcrumb:** ${rt(t.parents)} > ${t.tag}`),t.text&&r.push(`**Text content:** "${rt(t.text)}"`),t.componentName&&r.push(`**Component name:** ${rt(t.componentName)}`);const i=t.html.replace(/```/g,"`` `");return r.push("","**HTML snippet:**","```html",i,"```"),r.push("","Please read the source file, locate the element, and apply the requested change."),r.join(`
518
- `)}function Aa(t,e,r=320,s=44,i=12){const{x:u,y:c}=t,{width:d,height:o}=e,l=Math.max(i,Math.min(u-r/2,d-r-i)),f=c/o>.68?Math.max(i,c-s-18):Math.min(c+18,o-s-i);return{leftPct:l/d*100,topPct:f/o*100}}function Da(t){const e=me.c(45),{element:r,onDismiss:s}=t,[i,u]=x.useState(""),c=x.useRef(null),{sendMessage:d}=br(),{openSidePanel:o}=ua(),l=Ae();let h;e[0]!==r||e[1]!==i||e[2]!==s||e[3]!==o||e[4]!==d?(h=()=>{if(!i.trim())return;const z=_a(r,i);o(),d({parts:[{type:"text",text:z}]}),s()},e[0]=r,e[1]=i,e[2]=s,e[3]=o,e[4]=d,e[5]=h):h=e[5];const f=h;let p;e[6]!==r.position||e[7]!==r.viewport?(p=Aa(r.position,r.viewport),e[6]=r.position,e[7]=r.viewport,e[8]=p):p=e[8];const P=p,g=`${P.leftPct}%`,k=`${P.topPct}%`;let b;e[9]!==g||e[10]!==k?(b={left:g,top:k,width:"320px"},e[9]=g,e[10]=k,e[11]=b):b=e[11];let v;e[12]!==f?(v=z=>{z.preventDefault(),f()},e[12]=f,e[13]=v):v=e[13];let C;e[14]===Symbol.for("react.memo_cache_sentinel")?(C=z=>u(z.target.value),e[14]=C):C=e[14];let y;e[15]!==s?(y=z=>{z.key==="Escape"&&s()},e[15]=s,e[16]=y):y=e[16];let w;e[17]!==l?(w=l("sandbox.visualEditorPrompt.inputPlaceholder"),e[17]=l,e[18]=w):w=e[18];let S;e[19]!==i||e[20]!==y||e[21]!==w?(S=n.jsx("input",{ref:c,autoFocus:!0,type:"text",value:i,onChange:C,onKeyDown:y,placeholder:w,className:"min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground"}),e[19]=i,e[20]=y,e[21]=w,e[22]=S):S=e[22];let j;e[23]!==i?(j=i.trim(),e[23]=i,e[24]=j):j=e[24];const R=!j;let E;e[25]!==l?(E=l("sandbox.visualEditorPrompt.sendButton"),e[25]=l,e[26]=E):E=e[26];let $;e[27]!==l?($=l("sandbox.visualEditorPrompt.sendButton"),e[27]=l,e[28]=$):$=e[28];let W;e[29]!==$?(W=n.jsx("title",{children:$}),e[29]=$,e[30]=W):W=e[30];let F;e[31]===Symbol.for("react.memo_cache_sentinel")?(F=n.jsx("path",{d:"M5 9V1M1 5l4-4 4 4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e[31]=F):F=e[31];let O;e[32]!==W?(O=n.jsxs("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none","aria-hidden":"true",children:[W,F]}),e[32]=W,e[33]=O):O=e[33];let A;e[34]!==R||e[35]!==E||e[36]!==O?(A=n.jsx("button",{type:"submit",disabled:R,className:"flex h-6 w-6 shrink-0 items-center justify-center classic:rounded-full compact:rounded-lg bg-foreground text-background transition-opacity disabled:opacity-30",title:E,children:O}),e[34]=R,e[35]=E,e[36]=O,e[37]=A):A=e[37];let B;e[38]!==S||e[39]!==A||e[40]!==v?(B=n.jsxs("form",{className:"pointer-events-auto flex w-full items-center gap-1.5 rounded-xl border border-border bg-background/95 px-3 py-1.5 shadow-lg backdrop-blur",onSubmit:v,children:[S,A]}),e[38]=S,e[39]=A,e[40]=v,e[41]=B):B=e[41];let V;return e[42]!==B||e[43]!==b?(V=n.jsx("div",{className:"absolute z-30 pointer-events-none",style:b,children:B}),e[42]=B,e[43]=b,e[44]=V):V=e[44],V}const os="site-links",Ba=/details?page|\bpdp\b/i,$a=/listingpage|\bplp\b/i;function Fa(t,e,r){const s=new Set;for(const d of r)Ba.test(d)&&s.add("product"),$a.test(d)&&s.add("category");const i=ot(xn(t)),u=i[i.length-1],c=i[i.length-2];return u?.type==="text"&&u.text==="/p"&&c?.type==="param"&&c.name===e&&s.add("product"),e==="*"&&i.some(d=>d.type==="param"&&d.name==="*")&&s.add("category"),s}const Ma=["rosa","preto","pink","black"];function _t(t,e){const r=e.trim();return r?t(r):Ma.flatMap(s=>t(s))}function za(t,e){const r=e.trim(),s=[];/^\d+$/.test(r)&&s.push({resolveType:t,props:{ids:[r]}});const u=r.includes("-")&&!/\s/.test(r)?r.replace(/-+/g," "):r;return s.push({resolveType:t,props:{query:u,count:10}}),s}const Bs=new Set(["vtex","shopify","shopify-mcp","magento","wake","linx","linx-impulse","nuvemshop","vnda","wap","salesforce"]);function wn(t){return t.split("/")[0]??""}function Ia(t){const e=new Set;for(const r of t){const s=wn(r);Bs.has(s)&&e.add(s)}return e}function Ka(t,e){const r=wn(t);return!Bs.has(r)||e.size===0?!0:e.has(r)}const Ua=[{kind:"product",test:t=>t==="vtex/loaders/intelligentSearch/productList.ts",clientFilter:!1,buildRequests:(t,e)=>_t(r=>za(t,r),e),optionsFromPayload:At},{kind:"product",test:t=>/magento\/.*products?\/list(\.tsx?)?$/i.test(t),clientFilter:!1,buildRequests:(t,e)=>_t(r=>[{resolveType:t,props:{props:{search:r,pageSize:10,currentPage:1}}}],e),optionsFromPayload:At},{kind:"product",test:t=>/algolia\/.*products?\/(list|suggestions)(\.tsx?)?$/i.test(t),clientFilter:!1,buildRequests:(t,e)=>_t(r=>[{resolveType:t,props:{term:r,hitsPerPage:10}}],e),optionsFromPayload:At},{kind:"product",test:t=>/products?\/list(\.tsx?)?$/i.test(t),clientFilter:!1,buildRequests:(t,e)=>_t(r=>[{resolveType:t,props:{query:r,term:r,count:10,hitsPerPage:10}}],e),optionsFromPayload:At},{kind:"category",test:t=>t==="vtex/loaders/categories/tree.ts"||/categor(y|ies).*tree/i.test(t),clientFilter:!0,buildRequests:t=>[{resolveType:t,props:{}}],optionsFromPayload:Ya}];function Ha(t,e,r=new Set){const s=[...e],i=d=>{const o=[];for(const l of Ua){if(l.kind!==d)continue;const h=s.find(f=>l.test(f)&&Ka(f,r));h&&o.push({cand:l,resolveType:h})}return o.find(l=>r.has(wn(l.resolveType)))??o[0]},u=(d,o,l)=>({kind:d.kind,id:`${d.kind}:${o}`,resolveType:o,clientFilter:d.clientFilter,isFallback:l,buildRequests:h=>d.buildRequests(o,h),optionsFromPayload:d.optionsFromPayload}),c=[];for(const d of["product","category"]){if(!t.has(d))continue;const o=i(d);o&&c.push(u(o.cand,o.resolveType,!1))}return t.size>0&&c.push(Wa(t.has("category")?"category":"product")),c}function Wa(t){return{kind:t,id:os,resolveType:os,clientFilter:!0,isFallback:!0,homepageLinks:!0,optionsFromPayload:(e,r)=>ti(e,r)}}function Qe(t){return t&&typeof t=="object"&&!Array.isArray(t)?t:null}function Va(t,e,r){const s=new Set,i=new Set,u=c=>{if(Array.isArray(c)){for(const l of c)u(l);return}const d=Qe(c);if(!d)return;const o=d.__resolveType;if(typeof o=="string"){if(r(o))s.add(o);else if(o in e&&!i.has(o)){i.add(o);const l=Qe(e[o])?.__resolveType;typeof l=="string"&&r(l)&&s.add(o),u(e[o])}}for(const l of Object.values(d))u(l)};return u(t),s}function $s(t){const e=new Set,r=[];for(const s of t)for(const i of s)e.has(i.value)||(e.add(i.value),r.push(i));return r}function Fs(t){try{return decodeURIComponent(t)}catch{return t}}function qa(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Ga(t){const e=[];let r="^";for(const s of t)s.type==="text"?r+=qa(s.text):(e.push(s.name),r+=s.name==="*"?"(.+)":"([^/]+)");return{pattern:new RegExp(`${r}$`),order:e}}function Ms(t,e,r){if(typeof t!="string"||!t)return null;let s;try{s=new URL(t,"https://placeholder.invalid").pathname}catch{return null}s=s.replace(/\/+$/,"");const i=ot(xn(e)),{pattern:u,order:c}=Ga(i),d=c.indexOf(r);if(d===-1)return null;const o=s.match(u);if(!o)return null;const l=o[d+1]?.replace(/^\/+|\/+$/g,"");return l?Fs(l):null}function At(t,e){const r=Qe(t),s=Array.isArray(t)?t:Array.isArray(r?.products)?r.products:Array.isArray(r?.list)?r.list:[],i=[],u=new Set;for(const c of s){const d=Qe(c);if(!d)continue;const o=Ms(d.url,e.template,e.paramName);if(!o||u.has(o))continue;u.add(o);const l=Qe(d.isVariantOf),h=typeof l?.name=="string"&&l.name||typeof d.name=="string"&&d.name||o,f=Array.isArray(d.image)?Qe(d.image[0]):null,p=typeof f?.url=="string"?f.url:void 0;i.push({value:o,label:h,image:p})}return i}function Ja(t){if(typeof t!="string"||!t)return null;let e;try{e=new URL(t,"https://placeholder.invalid").pathname}catch{return null}const r=e.replace(/^\/+|\/+$/g,"");return r?Fs(r):null}function Ya(t){const e=[],r=new Set,s=(i,u)=>{const c=Qe(i);if(!c)return;const d=typeof c.name=="string"&&c.name?c.name:"",o=d?[...u,d]:u,l=Ja(c.url);if(l&&!r.has(l)&&(r.add(l),e.push({value:l,label:o.join(" › ")||l})),Array.isArray(c.children))for(const h of c.children)s(h,o)};if(Array.isArray(t))for(const i of t)s(i,[]);return e}const Qa=new Set(["login","logout","signin","sign-in","signup","sign-up","register","account","myaccount","my-account","minha-conta","conta","cart","carrinho","checkout","wishlist","favoritos","favorites","orders","pedidos","help","hc","sac","atendimento","contato","contact","institucional","newsletter","customer","sales","catalogsearch","search","busca","privacy-policy-cookie-restriction-mode"]);function Xa(t){return(t.split("/").filter(Boolean).pop()??t).replace(/[-_]+/g," ").replace(/\s+/g," ").trim().replace(/\b\w/g,r=>r.toUpperCase())}function Za(t){if(typeof t!="string"||!t)return[];const e=[],r=/<a\b[^>]*?\bhref="([^"]+)"[^>]*>([\s\S]*?)<\/a>/gi;let s,i=0;for(;(s=r.exec(t))!==null&&i++<5e3;){const u=s[1]??"",c=(s[2]??"").replace(/<[^>]*>/g," ").replace(/\s+/g," ").trim();e.push({href:u,text:c})}return e}function ei(t){if(typeof t!="string"||!t)return[];const e=[],r=new Set,s=/"@type":"Product"[\s\S]{0,600}?(?:"url"|\burl):"([^"]+)"[\s\S]{0,300}?(?:"name"|\bname):"([^"]+)"/g,i=/(?:"image"|\bimage):\s*\[\s*\{[\s\S]{0,400}?(?:"url"|\burl):"([^"]+)"/;let u,c=0;for(;(u=s.exec(t))!==null&&c++<3e3;){const d=(u[1]??"").replace(/\\\//g,"/");if(!d||r.has(d))continue;r.add(d);const o=t.slice(u.index,u.index+900).match(i)?.[1]?.replace(/\\\//g,"/");e.push({url:d,name:u[2]??"",image:o||void 0})}return e}function ti(t,e){const r=[],s=new Set,i=(u,c,d,o)=>{if(r.length>=200)return;const l=Ms(u,e.template,e.paramName);!l||s.has(l)||e.paramName==="*"&&/(^|\/)p$/.test(l)||d==="category"&&Qa.has(l.split("/")[0]??"")||(s.add(l),r.push({value:l,label:c&&c.length<=80?c:Xa(l),kind:d,image:o}))};for(const{url:u,name:c,image:d}of ei(t))i(u,c,"product",d);for(const{href:u,text:c}of Za(t))u.startsWith("/")&&!u.startsWith("//")&&i(u,c,"category");return r}function ht(t,e,r=50){const s=e.trim().toLowerCase();return(s?t.filter(u=>u.label.toLowerCase().includes(s)||u.value.toLowerCase().includes(s)):t).slice(0,r)}const zs=1e4;function ni(t){return{product:{noun:t("sandbox.pathParamPickerChip.kindProductNoun"),heading:t("sandbox.pathParamPickerChip.kindProductHeading")},category:{noun:t("sandbox.pathParamPickerChip.kindCategoryNoun"),heading:t("sandbox.pathParamPickerChip.kindCategoryHeading")}}}async function si(t,{resolveType:e,props:r}){const s=await fetch(Ir(t),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({__resolveType:e,...r}),signal:AbortSignal.timeout(zs)});if(!s.ok)throw new Error(`Failed to fetch options: ${s.status}`);return s.json()}async function ls(t,e){const r=await fetch(Kr(t,e),{signal:AbortSignal.timeout(zs)});if(!r.ok)throw new Error(`Failed to fetch page: ${r.status}`);return r.text()}async function ri(t,e,r){const s=e.optionsFromPayload(await ls(t,"/"),r),i=s.find(c=>c.kind==="category");if(!i)return s;const u=He(r.template,{[r.paramName]:i.value});if(u==="/")return s;try{const c=e.optionsFromPayload(await ls(t,u),r).filter(d=>d.kind==="product");return $s([s,c])}catch{return s}}function ai(t,e,r){return ur.sandboxInvoke(`${t.orgSlug}/${t.virtualMcpId}/${t.branch}`,`path-param-${e.id}:${e.clientFilter?"":r}`)}async function ii(t,e,r,s){if(e.homepageLinks)return ri(t,e,s);const i=e.buildRequests?.(r)??[];if(i.length===0)return[];const u=await Promise.allSettled(i.map(d=>si(t,d))),c=u.filter(d=>d.status==="fulfilled").map(d=>d.value);if(c.length===0){const d=u.find(o=>o.status==="rejected");throw d?d.reason:new Error("Failed to fetch options")}return $s(c.map(d=>e.optionsFromPayload(d,s)))}function hn(t,e,r,s,i){return{queryKey:ai(t,e,r),queryFn:()=>ii(t,e,r,s),enabled:i,staleTime:6e4,retry:1}}function gt(t){const e=me.c(16),{heading:r,iconKind:s,options:i,template:u,paramName:c,keyPrefix:d,onSelect:o}=t;if(i.length===0)return null;let l;if(e[0]!==s||e[1]!==d||e[2]!==o||e[3]!==i||e[4]!==c||e[5]!==u){let f;e[7]!==s||e[8]!==d||e[9]!==o||e[10]!==c||e[11]!==u?(f=p=>n.jsxs(xt,{value:`${d}:${p.value}`,className:"gap-3 py-2",onSelect:()=>o(p.value),children:[s==="product"&&n.jsx("span",{className:"flex h-10 w-10 shrink-0 items-center justify-center overflow-hidden rounded-md border border-border bg-muted",children:p.image?n.jsx("img",{src:p.image,alt:"",referrerPolicy:"no-referrer",className:"h-full w-full object-cover"}):n.jsx(vs,{size:14,className:"text-muted-foreground"})}),n.jsxs("span",{className:"min-w-0 flex-1",children:[n.jsx("span",{className:"block truncate text-sm",children:p.label}),n.jsx("span",{className:"block truncate text-xs text-muted-foreground",children:He(u,{[c]:p.value})})]})]},`${d}:${p.value}`),e[7]=s,e[8]=d,e[9]=o,e[10]=c,e[11]=u,e[12]=f):f=e[12],l=i.map(f),e[0]=s,e[1]=d,e[2]=o,e[3]=i,e[4]=c,e[5]=u,e[6]=l}else l=e[6];let h;return e[13]!==r||e[14]!==l?(h=n.jsx(vt,{heading:r,children:l}),e[13]=r,e[14]=l,e[15]=h):h=e[15],h}function cs(t){const e=me.c(2),{text:r}=t;let s;return e[0]!==r?(s=n.jsx("div",{className:"px-2 py-2 text-xs text-muted-foreground",children:r}),e[0]=r,e[1]=s):s=e[1],s}function ds(t){const e=me.c(52),{sources:r,template:s,paramName:i,value:u,sandboxRef:c,onCommit:d}=t,o=Ae(),[l,h]=x.useState(!1),[f,p]=x.useState(""),[P,g]=x.useState(""),k=x.useRef(null),b=i==="*"?o("sandbox.preview.catchAllParamLabel"):`:${i}`,v=ni(o),y=[...new Set(r.map(H=>v[H.kind].noun))].join(" or ");let w;e[0]!==o||e[1]!==y?(w=o("sandbox.pathParamPickerChip.searchPlaceholder",{options:y}),e[0]=o,e[1]=y,e[2]=w):w=e[2];const S=w,j={template:s,paramName:i};let R;e[3]!==f?(R=(H,X)=>({source:H,query:X,options:H.clientFilter?ht(X.data??[],f):X.data??[]}),e[3]=f,e[4]=R):R=e[4];const E=R,$=r.filter(pi),W=r.filter(fi),F=fn({queries:$.map(H=>hn(c,H,P,j,l))});let O;e[5]!==F||e[6]!==E?(O=(H,X)=>E(H,F[X]),e[5]=F,e[6]=E,e[7]=O):O=e[7];const A=$.map(O),B=A.length===0||A.every(mi),V=fn({queries:W.map(H=>hn(c,H,P,j,l&&B))});let z;e[8]!==V||e[9]!==E?(z=(H,X)=>E(H,V[X]),e[8]=V,e[9]=E,e[10]=z):z=e[10];const Z=W.map(z),q=B?Z:A,D=q.length===1&&q[0]?.source.homepageLinks?q[0]:null,T=D&&!D.query.isLoading&&!D.query.isError?D?.query.data??[]:[],ie=ht(T.filter(ui),f),J=ht(T.filter(di),f),Ee=ie.length>0&&J.length>0,ee=H=>{h(H),k.current&&clearTimeout(k.current),p(H?u:""),g(H?u:"")};let M;e[11]===Symbol.for("react.memo_cache_sentinel")?(M=H=>{p(H),k.current&&clearTimeout(k.current),k.current=setTimeout(()=>{g(H)},300)},e[11]=M):M=e[11];const oe=M,G=H=>{d(H),ee(!1)},Q=Ss(f),ye=He(s,{[i]:Q}),te=Os,I=Ls,fe="flex h-[85svh] flex-col gap-0 overflow-hidden p-0 sm:h-[520px] sm:max-w-[560px]",pe=ci;let ne;e[12]!==b||e[13]!==o?(ne=o("sandbox.pathParamPickerChip.pickValueTitle",{paramLabel:b}),e[12]=b,e[13]=o,e[14]=ne):ne=e[14];let se;e[15]!==ne?(se=n.jsx(_s,{className:"sr-only",children:n.jsx(As,{children:ne})}),e[15]=ne,e[16]=se):se=e[16];let xe;e[17]===Symbol.for("react.memo_cache_sentinel")?(xe=n.jsx(vs,{size:16,className:"shrink-0 text-foreground"}),e[17]=xe):xe=e[17];let de;e[18]!==o?(de=o("sandbox.pathParamPickerChip.pickValueHeading"),e[18]=o,e[19]=de):de=e[19];let he;e[20]!==b?(he=n.jsx("span",{className:"rounded-sm bg-special/15 px-1 py-0.5 font-mono text-[12px] text-special",children:b}),e[20]=b,e[21]=he):he=e[21];let le;e[22]!==de||e[23]!==he?(le=n.jsxs("div",{className:"flex h-12 shrink-0 items-center gap-3 border-b border-border px-4",children:[xe,n.jsxs("span",{className:"text-sm font-medium text-foreground",children:[de," ",he]})]}),e[22]=de,e[23]=he,e[24]=le):le=e[24];const ge=bs,lt=!1,De="min-h-0 flex-1";let be;e[25]!==S||e[26]!==f?(be=n.jsx(ys,{autoFocus:!0,placeholder:S,value:f,onValueChange:oe}),e[25]=S,e[26]=f,e[27]=be):be=e[27];const Ne=xs,Mt="flex max-h-none min-h-0 flex-1 flex-col overflow-hidden";let Be;e[28]!==o?(Be=o("sandbox.pathParamPickerChip.noResults"),e[28]=o,e[29]=Be):Be=e[29];let re;e[30]!==Be?(re=n.jsx(ws,{children:Be}),e[30]=Be,e[31]=re):re=e[31];const Ce=Q&&n.jsx(vt,{className:"shrink-0",children:n.jsxs(xt,{value:`__raw__:${Q}`,className:"gap-3 py-2",onSelect:()=>G(Q),children:[n.jsx("span",{className:"flex h-10 w-10 shrink-0 items-center justify-center rounded-md border border-dashed border-border bg-muted",children:n.jsx(ma,{size:14,className:"text-muted-foreground"})}),n.jsxs("span",{className:"min-w-0 flex-1",children:[n.jsx("span",{className:"block truncate text-sm",children:o("sandbox.pathParamPickerChip.useRawValue",{rawTerm:Q,paramLabel:b})}),n.jsx("span",{className:"block truncate text-xs text-muted-foreground",children:ye})]})]})}),We=Ee?n.jsxs("div",{className:"flex min-h-0 flex-1",children:[n.jsx("div",{className:"min-w-0 flex-1 overflow-y-auto border-r border-border",children:n.jsx(gt,{heading:v.category.heading,iconKind:"category",options:ie,template:s,paramName:i,keyPrefix:`${D?.source.id}:cat`,onSelect:G})}),n.jsx("div",{className:"min-w-0 flex-1 overflow-y-auto",children:n.jsx(gt,{heading:v.product.heading,iconKind:"product",options:J,template:s,paramName:i,keyPrefix:`${D?.source.id}:prod`,onSelect:G})})]}):n.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto",children:q.map(H=>{const{source:X,query:Ze,options:Y}=H,{noun:ve}=v[X.kind];if(Ze.isLoading)return n.jsx(cs,{text:o("sandbox.pathParamPickerChip.loading",{noun:ve})},X.id);if(Ze.isError)return n.jsx(cs,{text:o("sandbox.pathParamPickerChip.couldNotLoad")},X.id);if(X.homepageLinks){const Le=Ze.data??[];return n.jsxs(x.Fragment,{children:[n.jsx(gt,{heading:v.category.heading,iconKind:"category",options:ht(Le.filter(li),f),template:s,paramName:i,keyPrefix:`${X.id}:cat`,onSelect:G}),n.jsx(gt,{heading:v.product.heading,iconKind:"product",options:ht(Le.filter(oi),f),template:s,paramName:i,keyPrefix:`${X.id}:prod`,onSelect:G})]},X.id)}return n.jsx(gt,{heading:q.length>1?v[X.kind].heading:void 0,iconKind:X.kind,options:Y,template:s,paramName:i,keyPrefix:X.id,onSelect:G},X.id)})});let Re;e[32]!==Ne||e[33]!==re||e[34]!==Ce||e[35]!==We?(Re=n.jsxs(Ne,{className:Mt,children:[re,Ce,We]}),e[32]=Ne,e[33]=re,e[34]=Ce,e[35]=We,e[36]=Re):Re=e[36];let we;e[37]!==ge||e[38]!==be||e[39]!==Re?(we=n.jsxs(ge,{shouldFilter:lt,className:De,children:[be,Re]}),e[37]=ge,e[38]=be,e[39]=Re,e[40]=we):we=e[40];let Me;e[41]!==I||e[42]!==se||e[43]!==le||e[44]!==we||e[45]!==pe?(Me=n.jsxs(I,{className:fe,onClick:pe,children:[se,le,we]}),e[41]=I,e[42]=se,e[43]=le,e[44]=we,e[45]=pe,e[46]=Me):Me=e[46];let Te;return e[47]!==te||e[48]!==ee||e[49]!==l||e[50]!==Me?(Te=n.jsx(te,{open:l,onOpenChange:ee,children:Me}),e[47]=te,e[48]=ee,e[49]=l,e[50]=Me,e[51]=Te):Te=e[51],n.jsxs(n.Fragment,{children:[n.jsx("button",{type:"button",title:o("sandbox.pathParamPickerChip.buttonTitle",{paramLabel:b}),className:"max-w-64 shrink-0 cursor-pointer truncate classic:rounded-sm compact:rounded-lg bg-special/15 px-1 py-0.5 text-[12px] text-special hover:bg-special/25",onClick:H=>{H.stopPropagation(),ee(!0)},children:u||b}),Te]})}function oi(t){return t.kind==="product"}function li(t){return t.kind!=="product"}function ci(t){return t.stopPropagation()}function di(t){return t.kind==="product"}function ui(t){return t.kind!=="product"}function mi(t){return!t.query.isLoading&&(t.query.isError||t.options.length===0)}function fi(t){return t.isFallback}function pi(t){return!t.isFallback}function hi(t){const e=me.c(8),{sources:r,template:s,paramName:i,sandboxRef:u,onFill:c}=t;let d,o;if(e[0]!==i||e[1]!==u||e[2]!==r||e[3]!==s){const P={template:s,paramName:i},g=r.filter(gi);o=fn,d=g.map(k=>hn(u,k,"",P,!0)),e[0]=i,e[1]=u,e[2]=r,e[3]=s,e[4]=d,e[5]=o}else d=e[4],o=e[5];let l;e[6]!==d?(l={queries:d},e[6]=d,e[7]=l):l=e[7];const h=o(l),[f,p]=x.useState(!1);if(!f)for(const P of h){if(P.isLoading)break;const g=P.data?.[0];if(g){p(!0),queueMicrotask(()=>c(g.value));break}}return null}function gi(t){return!t.isFallback}function us(t){const e=me.c(31),{name:r,value:s,onCommit:i}=t,u=Ae(),[c,d]=x.useState(s),[o,l]=x.useState(!1),h=x.useRef(!1);let f;e[0]!==r||e[1]!==u?(f=r==="*"?u("sandbox.preview.catchAllParamLabel"):`:${r}`,e[0]=r,e[1]=u,e[2]=f):f=e[2];const p=f,P=c||p;let g;e[3]!==P?(g=n.jsx("span",{"aria-hidden":!0,className:"invisible whitespace-pre px-1 py-0.5 text-[12px]",children:P}),e[3]=P,e[4]=g):g=e[4];let k;e[5]!==p||e[6]!==u?(k=u("sandbox.preview.valueForParam",{label:p}),e[5]=p,e[6]=u,e[7]=k):k=e[7];let b,v;e[8]===Symbol.for("react.memo_cache_sentinel")?(b=E=>d(E.target.value),v=()=>l(!0),e[8]=b,e[9]=v):(b=e[8],v=e[9]);let C;e[10]!==s?(C=E=>{E.key==="Enter"&&E.currentTarget.blur(),E.key==="Escape"&&(h.current=!0,d(s),E.currentTarget.blur())},e[10]=s,e[11]=C):C=e[11];let y;e[12]!==c||e[13]!==i||e[14]!==s?(y=()=>{if(l(!1),h.current){h.current=!1;return}const E=Ss(c);d(E),E!==s&&i(E)},e[12]=c,e[13]=i,e[14]=s,e[15]=y):y=e[15];let w;e[16]!==c||e[17]!==p||e[18]!==k||e[19]!==C||e[20]!==y?(w=n.jsx("input",{type:"text",value:c,placeholder:p,title:k,spellCheck:!1,className:"absolute inset-0 rounded-sm bg-special/15 px-1 text-[12px] text-special outline-none placeholder:text-special/60 focus:bg-special/25",onClick:vi,onChange:b,onFocus:v,onKeyDown:C,onBlur:y}),e[16]=c,e[17]=p,e[18]=k,e[19]=C,e[20]=y,e[21]=w):w=e[21];let S;e[22]!==g||e[23]!==w?(S=n.jsxs("span",{className:"relative inline-flex max-w-64 shrink-0 items-center overflow-hidden",children:[g,w]}),e[22]=g,e[23]=w,e[24]=S):S=e[24];let j;e[25]!==o||e[26]!==u?(j=o&&n.jsxs("span",{className:"pointer-events-none ml-1.5 flex shrink-0 items-center gap-1 whitespace-nowrap rounded-sm border border-border bg-muted px-1 py-0.5 text-[10px] text-muted-foreground",children:[n.jsx(yr,{size:10}),u("sandbox.preview.enterToGo")]}),e[25]=o,e[26]=u,e[27]=j):j=e[27];let R;return e[28]!==j||e[29]!==S?(R=n.jsxs(n.Fragment,{children:[S,j]}),e[28]=j,e[29]=S,e[30]=R):R=e[30],R}function vi(t){return t.stopPropagation()}function xi(t){if(t.activeGlobalSectionName)return t.activeGlobalSectionName;const e=t.iframeBase;if(!e)return t.noServerLabel;try{const r=new URL(e),s=t.resolvedPath==="/"?"":t.resolvedPath;return`${r.host}${s}`}catch{return e}}function bi(t){return t.showPreviewToolbar&&t.contentEditingEnabled}function yi(t){const e=me.c(5);let r;e[0]!==t?(r=t??{orgSlug:"",virtualMcpId:"",branch:""},e[0]=t,e[1]=r):r=e[1];const s=Es(r);let i;return e[2]!==t||e[3]!==s?(i={mutationFn:async u=>{const{name:c,path:d,template:o}=u;if(!t?.virtualMcpId||!t.branch)throw new Error("Sandbox not ready");const l=Ur(c),h=o?{...o,name:c,path:d}:Hr(c,d);return await s.mutateAsync({blockKey:l,data:h}),{key:l,name:c,path:d}}},e[2]=t,e[3]=s,e[4]=i):i=e[4],mr(i)}function wi(t){const e=me.c(89),{open:r,onOpenChange:s,isPending:i,error:u,templates:c,onSubmit:d}=t,o=i===void 0?!1:i,l=Ae();let h;e[0]!==l?(h=l("sectionsEditor.createPageModal.defaultPageName"),e[0]=l,e[1]=h):h=e[1];const[f,p]=x.useState(h);let P;e[2]!==l?(P=l("sectionsEditor.createPageModal.defaultPagePath"),e[2]=l,e[3]=P):P=e[3];const[g,k]=x.useState(P),[b,v]=x.useState(rn),[C,y]=x.useState(null),[w,S]=x.useState(r);r!==w&&(S(r),r&&(p(l("sectionsEditor.createPageModal.defaultPageName")),k(l("sectionsEditor.createPageModal.defaultPagePath")),v(rn),y(null)));const j=!!c?.length;let R;e[4]!==o||e[5]!==s?(R=de=>{!de&&!o&&(y(null),s(!1))},e[4]=o,e[5]=s,e[6]=R):R=e[6];const E=R;let $;e[7]!==o||e[8]!==f||e[9]!==d||e[10]!==g||e[11]!==j||e[12]!==b?($=async de=>{de.preventDefault();const he=f.trim(),le=g.trim();if(!he||!le||o)return;const ge=js(le);if(ge){y(ge);return}y(null),await d({name:he,path:le,templateKey:j&&b!==rn?b:null})},e[7]=o,e[8]=f,e[9]=d,e[10]=g,e[11]=j,e[12]=b,e[13]=$):$=e[13];const W=$,F=C??u;let O;e[14]!==l?(O=l("sectionsEditor.createPageModal.title"),e[14]=l,e[15]=O):O=e[15];let A;e[16]!==O?(A=n.jsx(_s,{children:n.jsx(As,{children:O})}),e[16]=O,e[17]=A):A=e[17];let B;e[18]!==l?(B=l("sectionsEditor.createPageModal.nameLabel"),e[18]=l,e[19]=B):B=e[19];let V;e[20]!==B?(V=n.jsx("label",{htmlFor:"new-page-name",className:"text-xs font-medium text-muted-foreground",children:B}),e[20]=B,e[21]=V):V=e[21];let z;e[22]===Symbol.for("react.memo_cache_sentinel")?(z=de=>p(de.target.value),e[22]=z):z=e[22];let Z;e[23]!==l?(Z=l("sectionsEditor.createPageModal.namePlaceholder"),e[23]=l,e[24]=Z):Z=e[24];let q;e[25]!==o||e[26]!==f||e[27]!==Z?(q=n.jsx(ns,{id:"new-page-name",value:f,onChange:z,placeholder:Z,autoFocus:!0,disabled:o}),e[25]=o,e[26]=f,e[27]=Z,e[28]=q):q=e[28];let D;e[29]!==q||e[30]!==V?(D=n.jsxs("div",{className:"space-y-1.5",children:[V,q]}),e[29]=q,e[30]=V,e[31]=D):D=e[31];let U;e[32]!==l?(U=l("sectionsEditor.createPageModal.pathLabel"),e[32]=l,e[33]=U):U=e[33];let T;e[34]!==U?(T=n.jsx("label",{htmlFor:"new-page-path",className:"text-xs font-medium text-muted-foreground",children:U}),e[34]=U,e[35]=T):T=e[35];let ie;e[36]===Symbol.for("react.memo_cache_sentinel")?(ie=de=>k(de.target.value),e[36]=ie):ie=e[36];let J;e[37]!==l?(J=l("sectionsEditor.createPageModal.pathPlaceholder"),e[37]=l,e[38]=J):J=e[38];let Ee;e[39]!==o||e[40]!==g||e[41]!==J?(Ee=n.jsx(ns,{id:"new-page-path",value:g,onChange:ie,placeholder:J,disabled:o}),e[39]=o,e[40]=g,e[41]=J,e[42]=Ee):Ee=e[42];let ee;e[43]!==T||e[44]!==Ee?(ee=n.jsxs("div",{className:"space-y-1.5",children:[T,Ee]}),e[43]=T,e[44]=Ee,e[45]=ee):ee=e[45];let M;e[46]!==o||e[47]!==j||e[48]!==l||e[49]!==b||e[50]!==c?(M=j&&n.jsxs("div",{className:"space-y-1.5",children:[n.jsx("label",{htmlFor:"new-page-template",className:"text-xs font-medium text-muted-foreground",children:l("sectionsEditor.createPageModal.templateLabel")}),n.jsx(Wr,{id:"new-page-template",value:b,onChange:v,templates:c??[],disabled:o})]}),e[46]=o,e[47]=j,e[48]=l,e[49]=b,e[50]=c,e[51]=M):M=e[51];let oe;e[52]!==F?(oe=F&&n.jsx("p",{className:"text-xs text-destructive",children:F}),e[52]=F,e[53]=oe):oe=e[53];let G;e[54]!==D||e[55]!==ee||e[56]!==M||e[57]!==oe?(G=n.jsxs("div",{className:"space-y-4 py-4",children:[D,ee,M,oe]}),e[54]=D,e[55]=ee,e[56]=M,e[57]=oe,e[58]=G):G=e[58];let Q;e[59]!==s?(Q=()=>s(!1),e[59]=s,e[60]=Q):Q=e[60];let ye;e[61]!==l?(ye=l("sectionsEditor.createPageModal.cancelButton"),e[61]=l,e[62]=ye):ye=e[62];let te;e[63]!==o||e[64]!==Q||e[65]!==ye?(te=n.jsx(Xe,{type:"button",variant:"outline",onClick:Q,disabled:o,children:ye}),e[63]=o,e[64]=Q,e[65]=ye,e[66]=te):te=e[66];let I;e[67]!==o||e[68]!==f||e[69]!==g?(I=!f.trim()||!g.trim()||o,e[67]=o,e[68]=f,e[69]=g,e[70]=I):I=e[70];let fe;e[71]!==o||e[72]!==l?(fe=o?n.jsxs(n.Fragment,{children:[n.jsx($t,{className:"size-3.5"}),l("sectionsEditor.createPageModal.creatingButton")]}):l("sectionsEditor.createPageModal.createButton"),e[71]=o,e[72]=l,e[73]=fe):fe=e[73];let pe;e[74]!==I||e[75]!==fe?(pe=n.jsx(Xe,{type:"submit",disabled:I,children:fe}),e[74]=I,e[75]=fe,e[76]=pe):pe=e[76];let ne;e[77]!==te||e[78]!==pe?(ne=n.jsxs(fa,{children:[te,pe]}),e[77]=te,e[78]=pe,e[79]=ne):ne=e[79];let se;e[80]!==W||e[81]!==G||e[82]!==ne||e[83]!==A?(se=n.jsx(Ls,{className:"sm:max-w-md",children:n.jsxs("form",{onSubmit:W,children:[A,G,ne]})}),e[80]=W,e[81]=G,e[82]=ne,e[83]=A,e[84]=se):se=e[84];let xe;return e[85]!==E||e[86]!==r||e[87]!==se?(xe=n.jsx(Os,{open:r,onOpenChange:E,children:se}),e[85]=E,e[86]=r,e[87]=se,e[88]=xe):xe=e[88],xe}function ki(t){const e=me.c(29),{orgSlug:r,virtualMcpId:s,branch:i,previewUrl:u,meta:c,decofile:d,blockKey:o}=t,l=Ae();let h;e[0]!==i||e[1]!==r||e[2]!==s?(h={orgSlug:r,virtualMcpId:s,branch:i},e[0]=i,e[1]=r,e[2]=s,e[3]=h):h=e[3];const f=Es(h);let p;e[4]!==f?(p=Gr((S,j)=>f.mutate({blockKey:S,data:j})),e[4]=f,e[5]=p):p=e[5];const P=p;let g;e[6]!==o||e[7]!==d?(g=Vr(d,o),e[6]=o,e[7]=d,e[8]=g):g=e[8];const{resolveType:k,props:b,title:v}=g;if(!k){let S;e[9]!==l?(S=l("sandbox.preview.loaderNoLongerExists"),e[9]=l,e[10]=S):S=e[10];let j;return e[11]!==S?(j=n.jsx("div",{className:"flex h-full items-center justify-center px-6 text-center text-sm text-muted-foreground",children:S}),e[11]=S,e[12]=j):j=e[12],j}const C=`loader:${o}`;let y;e[13]!==o||e[14]!==k||e[15]!==v?(y={mode:"saved",blockKey:o,resolveType:k,title:v},e[13]=o,e[14]=k,e[15]=v,e[16]=y):y=e[16];let w;return e[17]!==i||e[18]!==d||e[19]!==c||e[20]!==r||e[21]!==u||e[22]!==b||e[23]!==f.isPending||e[24]!==P||e[25]!==C||e[26]!==y||e[27]!==s?(w=n.jsx(qr,{orgSlug:r,virtualMcpId:s,branch:i,previewUrl:u,meta:c,decofile:d,kind:"loaders",target:y,initialValue:b,isCreating:f.isPending,onCreate:Pi,onSaveReferencedBlock:P,showRun:!1},C),e[17]=i,e[18]=d,e[19]=c,e[20]=r,e[21]=u,e[22]=b,e[23]=f.isPending,e[24]=P,e[25]=C,e[26]=y,e[27]=s,e[28]=w):w=e[28],w}async function Pi(){}function Si(t){if(t instanceof Error&&"status"in t&&typeof t.status=="number")return t.status}function ms(t){return{status:t.status,hasData:t.data!==void 0,errorStatus:Si(t.error)}}function ji(t){switch(t){case"clone-failed":case"install-failed":case"start-failed":return"terminal-error";case"idle":case"cloning":return"booting";case"checking-out":case"installing":case"starting":case"running":case"crashed":return"snapshot-readable"}}function Ei(t){if(t.fastPreviewActive)return t.decofile.status==="error"&&!t.decofile.hasData||t.meta.status==="error"&&!t.meta.hasData?{kind:"error",source:"data"}:!t.decofile.hasData||!t.meta.hasData?{kind:"loading"}:t.hasEditableContent?{kind:"content"}:{kind:"empty",reason:"no-content"};const e=ji(t.lifecyclePhase);if(e==="terminal-error")return{kind:"error",source:"sandbox"};if(e==="booting")return{kind:"loading"};const r=t.decofile.status==="error"&&!t.decofile.hasData||t.meta.status==="error"&&!t.meta.hasData;return r&&t.lifecyclePhase==="checking-out"?{kind:"loading"}:[t.decofile,t.meta].some(i=>i.status==="error"&&!i.hasData&&i.errorStatus===404)?{kind:"empty",reason:"framework-missing"}:r?t.lifecyclePhase==="running"||t.lifecyclePhase==="crashed"?{kind:"error",source:"data"}:{kind:"loading"}:!t.decofile.hasData||!t.meta.hasData?{kind:"loading"}:t.hasEditableContent?{kind:"content"}:{kind:"empty",reason:"no-content"}}const Ni="https://github.com/decocms/blocks";function Ci(){const t=me.c(14),e=Ae();let r;t[0]===Symbol.for("react.memo_cache_sentinel")?(r=n.jsx(wr,{size:48,className:"text-muted-foreground"}),t[0]=r):r=t[0];let s;t[1]!==e?(s=e("mainPanelTabs.blocksTabStates.emptyStateTitle"),t[1]=e,t[2]=s):s=t[2];let i;t[3]!==e?(i=e("mainPanelTabs.blocksTabStates.emptyStateDescription"),t[3]=e,t[4]=i):i=t[4];let u;t[5]!==e?(u=e("mainPanelTabs.blocksTabStates.setupContentEditing"),t[5]=e,t[6]=u):u=t[6];let c;t[7]===Symbol.for("react.memo_cache_sentinel")?(c=n.jsx(mn,{size:14}),t[7]=c):c=t[7];let d;t[8]!==u?(d=n.jsx(Xe,{size:"sm",asChild:!0,children:n.jsxs("a",{href:Ni,target:"_blank",rel:"noreferrer",children:[u,c]})}),t[8]=u,t[9]=d):d=t[9];let o;return t[10]!==s||t[11]!==i||t[12]!==d?(o=n.jsx(yn,{className:"h-full w-full",image:r,title:s,description:i,actions:d}),t[10]=s,t[11]=i,t[12]=d,t[13]=o):o=t[13],o}function Ri(t){const e=me.c(15),{source:r,onRetry:s}=t,i=Ae();let u;e[0]!==r||e[1]!==i?(u=i(r==="sandbox"?"mainPanelTabs.blocksTabStates.errorStateSandbox":"mainPanelTabs.blocksTabStates.errorStateData"),e[0]=r,e[1]=i,e[2]=u):u=e[2];const c=u;let d;e[3]===Symbol.for("react.memo_cache_sentinel")?(d=n.jsx(pa,{size:48,className:"text-muted-foreground"}),e[3]=d):d=e[3];let o;e[4]!==i?(o=i("mainPanelTabs.blocksTabStates.errorStateTitle"),e[4]=i,e[5]=o):o=e[5];let l;e[6]!==i?(l=i("mainPanelTabs.blocksTabStates.retry"),e[6]=i,e[7]=l):l=e[7];let h;e[8]!==s||e[9]!==l?(h=n.jsx(Xe,{variant:"outline",size:"sm",onClick:s,children:l}),e[8]=s,e[9]=l,e[10]=h):h=e[10];let f;return e[11]!==c||e[12]!==o||e[13]!==h?(f=n.jsx(yn,{image:d,title:o,description:c,actions:h}),e[11]=c,e[12]=o,e[13]=h,e[14]=f):f=e[14],f}const Ti=x.lazy(()=>fr(()=>import("./sections-editor-8OIVL9zx.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129])).then(t=>({default:t.SectionsEditor})));function fs(t){const e=me.c(50),{virtualMcpId:r,externalSelection:s,onViewJsonFile:i}=t,u=s===void 0?null:s,{org:c}=gn(),{currentBranch:d,taskId:o}=Ft(),l=ks(),h=vn(),f=Ds(),p=l.lifecycle.phase==="running",P=h.previewUrl;let g;e[0]!==d||e[1]!==c||e[2]!==P||e[3]!==o||e[4]!==r?(g=d?{orgSlug:c.slug,virtualMcpId:r,branch:d,threadId:o??null,previewUrl:P}:null,e[0]=d,e[1]=c,e[2]=P,e[3]=o,e[4]=r,e[5]=g):g=e[5];const k=g;let b;e[6]!==p?(b={fetchEnabled:p},e[6]=p,e[7]=b):b=e[7];const v=bn(k,b);let C;e[8]!==p?(C={fetchEnabled:p},e[8]=p,e[9]=C):C=e[9];const y=Ns(k,C),w=Ei({lifecyclePhase:l.lifecycle.phase,decofile:ms(v),meta:ms(y),hasEditableContent:Dr(v.data,y.data),fastPreviewActive:Ps(r).runtime==="cms"}),S=Li;if(w.kind==="loading"){let T;return e[10]===Symbol.for("react.memo_cache_sentinel")?(T=S(n.jsx(pr,{})),e[10]=T):T=e[10],T}if(w.kind==="empty"){let T;return e[11]===Symbol.for("react.memo_cache_sentinel")?(T=S(n.jsx(Ci,{})),e[11]=T):T=e[11],T}if(w.kind==="error"){let T;e[12]!==v||e[13]!==h||e[14]!==y||e[15]!==w.source?(T=()=>{if(w.source==="sandbox"){h.retry();return}Promise.all([v.refetch(),y.refetch()])},e[12]=v,e[13]=h,e[14]=y,e[15]=w.source,e[16]=T):T=e[16];const ie=T;let J;return e[17]!==ie||e[18]!==w.source?(J=S(n.jsx(Ri,{source:w.source,onRetry:ie})),e[17]=ie,e[18]=w.source,e[19]=J):J=e[19],J}let j;e[20]===Symbol.for("react.memo_cache_sentinel")?(j=T=>S(n.jsx("div",{className:"h-full min-h-0",children:T})),e[20]=j):j=e[20];const R=j,E=f.state.target;if(E?.kind==="loader"&&v.data&&y.data){const T=d??"",ie=P??null;let J;return e[21]!==v.data||e[22]!==y.data||e[23]!==c.slug||e[24]!==T||e[25]!==ie||e[26]!==E.key||e[27]!==r?(J=R(n.jsx(ki,{orgSlug:c.slug,virtualMcpId:r,branch:T,previewUrl:ie,meta:y.data,decofile:v.data,blockKey:E.key})),e[21]=v.data,e[22]=y.data,e[23]=c.slug,e[24]=T,e[25]=ie,e[26]=E.key,e[27]=r,e[28]=J):J=e[28],J}let $;e[29]!==d||e[30]!==c.slug||e[31]!==E||e[32]!==r?($=E||!d?null:Cs(Rs(c.slug,r,d)),e[29]=d,e[30]=c.slug,e[31]=E,e[32]=r,e[33]=$):$=e[33];const W=$;let F="/",O=null,A=null;E?.kind==="page"?(F=E.path,O=E.key):E?.kind==="section"?A=E.key:W&&(F=W.path,O=W.pageKey);const B=O?`page:${O}`:A?`section:${A}`:`path:${F}`;let V;e[34]===Symbol.for("react.memo_cache_sentinel")?(V=n.jsx("div",{className:"h-full flex items-center justify-center",children:n.jsx($t,{className:"size-5 text-muted-foreground"})}),e[34]=V):V=e[34];const z=d??"",Z=P??void 0,q=A?null:u,D=!!O&&f.state.editSeoPageKey===O;let U;return e[35]!==A||e[36]!==O||e[37]!==F||e[38]!==B||e[39]!==i||e[40]!==c.slug||e[41]!==q||e[42]!==D||e[43]!==z||e[44]!==Z||e[45]!==r||e[46]!==f.consumeEditSeo||e[47]!==f.setFocusedBlock||e[48]!==f.setVariantOverride?(U=R(n.jsx(x.Suspense,{fallback:V,children:n.jsx(Ti,{orgSlug:c.slug,virtualMcpId:r,branch:z,previewReady:!0,previewUrl:Z,currentPath:F,activePageBlockKey:O,activeGlobalBlockKey:A,externalSelection:q,initialEditSeo:D,onExitSeo:f.consumeEditSeo,onVariantPreviewOverride:f.setVariantOverride,onFocusedBlockChange:f.setFocusedBlock,onViewJsonFile:i},B)})),e[35]=A,e[36]=O,e[37]=F,e[38]=B,e[39]=i,e[40]=c.slug,e[41]=q,e[42]=D,e[43]=z,e[44]=Z,e[45]=r,e[46]=f.consumeEditSeo,e[47]=f.setFocusedBlock,e[48]=f.setVariantOverride,e[49]=U):U=e[49],U}function Li(t){return n.jsx("div",{"data-testid":"blocks-panel",className:"h-full min-h-0 overflow-hidden",children:t})}function cn(t){const e=me.c(39),{virtualMcpId:r,pageKey:s,onClose:i,ref:u}=t,c=Ae(),d=gs(),o=Jr(r);let l;e[0]!==o||e[1]!==s?(l=Yr(o,va(s)),e[0]=o,e[1]=s,e[2]=l):l=e[2];const h=l,{org:f}=gn(),{currentBranch:p,taskId:P}=Ft(),k=vn().previewUrl;let b;e[3]!==p||e[4]!==f.slug||e[5]!==k||e[6]!==P||e[7]!==r?(b=p?{orgSlug:f.slug,virtualMcpId:r,branch:p,threadId:P??null,previewUrl:k}:null,e[3]=p,e[4]=f.slug,e[5]=k,e[6]=P,e[7]=r,e[8]=b):b=e[8];const C=bn(b),y=p??"";let w;e[9]!==f.slug||e[10]!==y||e[11]!==r?(w={orgSlug:f.slug,virtualMcpId:r,branch:y},e[9]=f.slug,e[10]=y,e[11]=r,e[12]=w):w=e[12];const{save:S,flush:j}=Qr(w),R=C.data?.[s],E=C.data===void 0&&C.isLoading,$=C.data!==void 0&&R===void 0,W=!p||$||E;let F;e[13]!==R?(F=R===void 0?"":JSON.stringify(R,null,2),e[13]=R,e[14]=F):F=e[14];const O=F;let A;e[15]!==s||e[16]!==W||e[17]!==S?(A=D=>{if(W)return;let U;try{U=JSON.parse(D)}catch{return}U===null||typeof U!="object"||Array.isArray(U)||S(s,U)},e[15]=s,e[16]=W,e[17]=S,e[18]=A):A=e[18];const B=A;let V;e[19]!==j?(V=()=>({flush:j}),e[19]=j,e[20]=V):V=e[20],x.useImperativeHandle(u,V);let z;e[21]!==h||e[22]!==d||e[23]!==i||e[24]!==c?(z=d?n.jsx("div",{className:"flex shrink-0 items-center border-b px-3 py-2.5",children:n.jsx("span",{title:h,className:"min-w-0 flex-1 truncate font-mono text-xs text-muted-foreground",children:h})}):n.jsxs("div",{className:"flex shrink-0 items-center gap-2 border-b px-3 py-2.5",children:[n.jsx("div",{className:"min-w-0 flex-1 truncate text-sm font-semibold",children:c("sectionsEditor.pageJsonDialog.titleShort")}),n.jsx(Xe,{variant:"ghost",size:"icon",onClick:i,"aria-label":c("sectionsEditor.pageJsonDialog.close"),className:"size-7 shrink-0",children:n.jsx(ha,{size:14})})]}),e[21]=h,e[22]=d,e[23]=i,e[24]=c,e[25]=z):z=e[25];let Z;e[26]!==C.data||e[27]!==j||e[28]!==O||e[29]!==E||e[30]!==$||e[31]!==s||e[32]!==W||e[33]!==B||e[34]!==c?(Z=E?n.jsx("div",{className:"flex flex-1 items-center justify-center",children:n.jsx($t,{className:"size-5 text-muted-foreground"})}):$?n.jsxs("div",{className:"p-4 text-xs font-mono text-foreground/60",children:["// ",c("sectionsEditor.pageJsonDialog.pageNotFound")]}):n.jsx("div",{className:"min-h-0 flex-1",children:n.jsx(ga,{code:O,language:"json",readOnly:W,height:"100%",onChange:D=>B(D??""),onSave:D=>{B(D),j()}},`${s}:${C.data===void 0?"loading":"ready"}`)}),e[26]=C.data,e[27]=j,e[28]=O,e[29]=E,e[30]=$,e[31]=s,e[32]=W,e[33]=B,e[34]=c,e[35]=Z):Z=e[35];let q;return e[36]!==z||e[37]!==Z?(q=n.jsxs("div",{className:"flex h-full min-h-0 flex-col overflow-hidden bg-background",children:[z,Z]}),e[36]=z,e[37]=Z,e[38]=q):q=e[38],q}function Is(t){return t.contentEditingEnabled&&!t.isMobile}function Oi(t,e){return t!=="visual"?"visual":e?"blocks":"preview"}function _i(t,e){return t==="blocks"?"preview":e?"blocks":t}function Ai(t){return Is({contentEditingEnabled:Ts(t.cmsMode),isMobile:t.isMobile})?"blocks":"preview"}function Di(t){return t.editingMode==="blocks"&&!t.blocksEditingEnabled||t.editingMode==="visual"&&!t.sandboxDisplay?"preview":t.editingMode}const Bi=500,$i={mobile:{width:412,height:823},tablet:{width:1024,height:1366},desktop:{width:1280,height:800}},ps=1,dn=["desktop","mobile","tablet"],Dt={mobile:"sandbox.preview.deviceMobile",tablet:"sandbox.preview.deviceTablet",desktop:"sandbox.preview.deviceDesktop"};function hs(t,e){try{const r=new URL(t,window.location.href);return r.searchParams.set("deviceHint",e),r.href}catch{return t}}function Fi(t){if(!t)return null;try{const e=new URL(t,window.location.href);return e.searchParams.set("__decoFBT","0"),e.searchParams.set("__deco_ssr","1"),e.href}catch{return t}}function at(t){if(!t)return null;try{return new URL(t,window.location.href).origin}catch{return null}}function un(t,e){try{return new URL(t,e).href}catch{return null}}function Mi(t,e){if(!e.inPlaceRenderActive)return{pin:e.draftPreviewUrl?{path:e.resolvedPath,url:e.draftPreviewUrl}:null,effective:e.draftPreviewUrl};if(e.draftPreviewUrl!==null&&t?.path!==e.resolvedPath){const r={path:e.resolvedPath,url:e.draftPreviewUrl};return{pin:r,effective:r.url}}return{pin:t,effective:t?.url??null}}function zi(t,e){return!t||t.nav!==e.nav?!1:t.content!==e.content}function Ii(t,e,r){const s=t.toLowerCase(),i=e.toLowerCase(),u=i.split("/").filter(Boolean),c=o=>{if(o===r)return 100;const l=o.indexOf(r);if(l===-1)return 0;let h=40;return l===0?h+=30:/[\s/-]/.test(o[l-1]??"")&&(h+=20),h+=Math.round(r.length/o.length*20),h};let d=Math.max(c(s),c(i));return u.at(-1)===r?d=Math.max(d,95):u.includes(r)&&(d=Math.max(d,90)),d}function Ki(t,e){try{t.contentWindow?.location.reload()}catch{e&&(t.src=e)}}function Ui({virtualMcpId:t}){const e=gs(),r=x.useRef(null),s=Ae(),i=da(),u=zr(),{currentBranch:c,taskId:d,virtualMcpId:o}=Ft(),l=Ds(),h=Nr(o===t?t:null),f=Ps(t),p=xa(h?.metadata?.ui?.layout??null),P=Ts(p),g=Is({contentEditingEnabled:P,isMobile:u}),[k,b]=x.useState(()=>Ai({cmsMode:p,isMobile:u})),[v,C]=x.useState("desktop"),[y,w]=x.useState(null),[S,j]=x.useState(null),R=x.useRef(null),E=x.useRef(null),[$,W]=x.useState(!1),F=x.useRef(null),O=()=>{F.current?.flush(),W(!1)},A=()=>W(a=>(a&&F.current?.flush(),!a)),[B,V]=x.useState({width:0,height:0}),[z,Z]=x.useState(null),[q,D]=x.useState(!1),[U,T]=x.useState(""),[ie,J]=x.useState(!1),[Ee,ee]=x.useState(),[M,oe]=x.useState(null),[G,Q]=x.useState(null),[ye,te]=x.useState(null),[I,fe]=x.useState(()=>l.state.target?.kind==="page"?l.state.target.path:"/"),[pe,ne]=x.useState(()=>l.state.target?.kind==="page"?l.state.target.key:null),[se,xe]=x.useState({}),[de,he]=x.useState(!1),le=x.useRef(null),ge=()=>{he(!0),le.current&&clearTimeout(le.current),le.current=setTimeout(()=>he(!1),15e3)},lt=()=>{le.current&&(clearTimeout(le.current),le.current=null),he(!1)},{org:De}=gn(),be=ks(),Ne=vn(),Mt=Ne.vmEntry,Be=be.lifecycle.phase,{url:re}=Br(t),Ce=re??Ne.previewUrl,We=!!re||Be==="running",Re=h?.id===t?Or(h.metadata):null,we=!re&&h?.id===t&&f.runtime==="cms",Me=f.projectDefault==="cms",Te=sa({sandboxUrl:Ce,previewServerUrl:Re,fastPreviewActive:we}),H=t&&c?{orgSlug:De.slug,virtualMcpId:t,branch:c,threadId:d??null,previewUrl:Ce}:null,X=bn(H,{fetchEnabled:We}),Ze=Ns(H,{fetchEnabled:We}),Y=X.data,ve=Ze.data,Le=Y?$r(Y).sort((a,m)=>a.name.localeCompare(m.name)):[],Ks=t&&c?{orgSlug:De.slug,virtualMcpId:t,branch:c}:null,kn=yi(Ks),bt=Y&&ve?Fr(Y,ve):[],Pn=Y&&ve?Xr(ve,Y,"loaders"):[],ze=U?(()=>{const a=U.toLowerCase();return Le.map(m=>({page:m,score:Ii(m.name,m.path,a)})).filter(({score:m})=>m>0).sort((m,N)=>N.score-m.score||m.page.path.length-N.page.path.length).map(({page:m})=>m)})():Le,et=bt.filter(a=>{if(!U)return!0;const m=U.toLowerCase();return a.name.toLowerCase().includes(m)||a.key.toLowerCase().includes(m)||a.resolveType.toLowerCase().includes(m)}),zt=g?Pn:[],ct=zt.filter(a=>{if(!U)return!0;const m=U.toLowerCase();return a.title.toLowerCase().includes(m)||a.key.toLowerCase().includes(m)||a.resolveType.toLowerCase().includes(m)}),tt=G?Pn.find(a=>a.key===G)??null:null,Oe=xn,yt=M||G?null:Mr(Le,I,pe),It=M?M.name:tt?.title??yt?.name,K=yt?.key??null,Ie=l.state.target?.kind==="section"?l.state.target.key:l.state.focusedBlockKey??K,wt=yt?.path??null,Ke=(K?se[K]:void 0)??{},ke=He(I,Ke),kt={};if(We&&Ce&&ve&&Y){const a=Zr(ve,"loaders"),m=K?Y[K]:void 0,N=Va(m,Y,ce=>a.has(ce)),L=Ia(N);for(const ce of ot(I)){if(ce.type!=="param")continue;const $e=Fa(I,ce.name,N),Se=Ha($e,a,L);Se.length>0&&(kt[ce.name]=Se)}}const nt=t&&c?{orgSlug:De.slug,virtualMcpId:t,branch:c,threadId:d??null}:null,Sn=Y&&K?ea(Y,K,0):[],jn=Y?ta(Sn,Y):[],Kt=jn.map(a=>a.isSavedBlock?a.label:""),Ut=jn.map(a=>a.isSavedBlock?"global":a.isMultivariate?"variant":"normal"),Ht=Sn.map(a=>pn(a,Y??{})),En=x.useRef(null),_e=x.useRef(null),Us=be.status.state==="paused",Wt=be.phase,Nn=na({claimPhase:Wt,lifecycle:be.lifecycle}),Ve=Ne.previewState,Hs=Ne.userStopped,Ws=la(De.slug,t??"",c??""),{url:qe}=oa(we&&t&&c?{orgSlug:De.slug,virtualMcpId:t,branch:c,previewServerUrl:Re??null,path:ke}:null),Vs=Me&&f.runtime==="sandbox",_=Sa({previewState:Ve,progressStatus:Nn.status,previewServerUrl:Re,fastPreviewActive:we,fastPreviewReady:!!qe,codingSession:Vs,localPreviewUrl:re}),dt=_.mode!=="none",Cn=_.mode==="production"&&_.iframeBase?at(_.iframeBase):null,qs=Cn??(re&&_.mode==="sandbox"&&_.iframeBase?at(_.iframeBase):null),Rn=!i,st=_.mode==="production"?Cn:at(Ce),Gs=h?.id===t&&h.metadata?.fastPreviewInPlace===!0,ut=re?_.mode==="sandbox"&&g&&k==="blocks":_.mode==="production"&&we&&Gs&&g&&k==="blocks",Tn=x.useRef(null),{pin:Js,effective:Ys}=Mi(Tn.current,{inPlaceRenderActive:ut,draftPreviewUrl:qe,resolvedPath:ke});Tn.current=Js;const Pe=Fi(_.mode==="sandbox"&&Rn?Ot(hs(ye??un(ke,_.iframeBase)??_.iframeBase,v),l.state.variantOverride??[]):_.mode==="production"&&Rn?Ot(hs(ra(ye??Ys??un(ke,_.iframeBase)??_.iframeBase,_.showWakingPill?aa:null),v),l.state.variantOverride??[]):null);x.useEffect(()=>{},[i,qs,z]);const Vt="sandbox.preview.openInNewTab",Ln=qe??(_.iframeBase?un(ke,_.iframeBase):null),Qs=_.mode==="production"?Ln?Ot(Ln,l.state.variantOverride??[]):null:Pe??_.iframeBase,On=async()=>{const a=Qs;if(a){window.open(a,"_blank","noopener");return}},Pt=t&&c?Rs(De.slug,t,c):null,St=a=>{Pt&&ca(Pt,a)},ue=l.state.target;x.useEffect(()=>{if(!(!ue||!Te||!ve))if(ue.kind==="page"){const a=se[ue.key]??{};_e.current=He(ue.path,a),oe(null),Q(null),te(null),ne(ue.key),fe(ue.path),St({path:ue.path,pageKey:ue.key,params:a})}else if(ue.kind==="loader")_e.current=null,oe(null),Q(ue.key),te(null);else{const a=bt.find(m=>m.key===ue.key);if(a){_e.current=null;const m=es(ve);Q(null),oe(a),te(ts(Te,m,a.key))}}},[ue,Te,ve,se]),x.useEffect(()=>{!K||wt===null||ue?.kind==="page"&&ue.key===K&&ue.path===wt||l.selectTarget({kind:"page",key:K,path:wt})},[K,wt,ue]);const[_n,Xs]=x.useState(null);if(Ve.kind==="iframe"&&_n!==Ve.previewUrl){const a=_n!==null;Xs(Ve.previewUrl);const m=Pt?Cs(Pt):null;if(m){if(_e.current=He(m.path,m.params),fe(m.path),ne(m.pageKey),te(null),oe(null),Q(null),m.pageKey&&Object.keys(m.params).length>0){const N=m.pageKey;xe(L=>({...L,[N]:m.params}))}}else a&&(_e.current=null,fe("/"),te(null),ne(null),oe(null),Q(null))}En.current=Pe;const An=Ca({iframeRef:R,src:_.mode==="sandbox"?Pe:null,active:_.mode==="sandbox"}),Dn=x.useRef(null);x.useEffect(()=>{if(!qe||!Pe||Dn.current===qe)return;Dn.current=qe;const a=R.current;a&&a.getAttribute("src")!==Pe&&(ge(),a.src=Pe)},[qe,Pe]);const Bn=()=>{const a=R.current?.contentWindow,m=st;if(!a||!m||!Y||!K)return;const N=Y[K];if(!N||typeof N!="object")return;const L=ia({previewBaseUrl:m,pageBlock:N,decofile:Y,path:ke,pathTemplate:I});if(!L)return;const ce=Ot(L.src,l.state.variantOverride??[]);a.postMessage({type:"cms-editor::render",src:ce,body:L.body},m)},qt=x.useRef(null);x.useEffect(()=>{if(!ut||M||G||!K||!Y){qt.current=null;return}const a={nav:JSON.stringify({page:K,path:ke,pathTemplate:I}),content:JSON.stringify(Y)},m=zi(qt.current,a);qt.current=a,m&&Bn()},[Y,ut,M,G,K,ke,I]);const Gt=x.useRef(null);x.useEffect(()=>{if(!ut||M||G||!K||!Y){Gt.current=null;return}const a=JSON.stringify(l.state.variantOverride??null),m=Gt.current;Gt.current={page:K,sig:a},!(!m||m.page!==K||m.sig===a)&&Bn()},[l.state.variantOverride,ut,M,G,K]);const Zs=!!t&&!!c&&!be.notFound&&!Hs&&!Us&&(Wt?.kind==="ready"||Be!=="idle"),ae=Di({editingMode:k,sandboxDisplay:_.mode==="sandbox",blocksEditingEnabled:g});x.useEffect(()=>{const a=st;if(!a)return;const m=N=>{if(N.origin===a)if(N.data?.type==="visual-editor::element-clicked"){const L=Ra.safeParse(N.data.payload);L.success&&w(L.data)}else if(N.data?.type==="cms-editor::section-clicked"){const L=Oa.safeParse(N.data.payload);L.success&&j({index:L.data.sectionIndex,seq:L.data.clickSeq})}else N.data?.type==="cms-editor::render-start"?ge():N.data?.type==="cms-editor::render-end"?(lt(),R.current?.contentWindow?.postMessage({type:"cms-editor::set-labels",labels:Kt,kinds:Ut,keys:Ht},a)):N.data?.type==="cms-editor::render-error"&&lt()};return window.addEventListener("message",m),()=>window.removeEventListener("message",m)},[st,Kt,Ut,Ht]);const $n=()=>{const a=R.current?.contentWindow,m=at(Ce);!a||!m||a.postMessage({type:"visual-editor::activate",script:Ta},m)},er=()=>{const a=R.current?.contentWindow,m=at(Ce);!a||!m||a.postMessage({type:"visual-editor::deactivate"},m)},Jt=()=>{const a=R.current?.contentWindow,m=st;!a||!m||(a.postMessage(_.mode==="production"||re?{type:"editor::inject",args:{script:is}}:{type:"visual-editor::activate",script:is},m),a.postMessage({type:"cms-editor::set-labels",labels:Kt,kinds:Ut,keys:Ht},m))},tr=()=>{const a=R.current?.contentWindow,m=st;!a||!m||a.postMessage({type:"cms-editor::deactivate"},m)},nr=()=>{const a=R.current?.contentWindow,m=st;!a||!m||(a.postMessage({type:"cms-editor::clear-hover"},m),a.postMessage({type:"visual-editor::clear-hover"},m))},jt=a=>{if(a==="blocks"&&!g)return;const m=k;!u&&a!==m&&(a==="blocks"?E.current?.resize("30%"):E.current?.collapse()),b(a),w(null),j(null),a!=="blocks"&&Q(null),m==="visual"&&er(),a==="visual"&&$n(),m==="blocks"&&a!=="blocks"&&tr(),a==="blocks"&&Jt()},Fn=()=>{jt(Oi(k,g))},sr=()=>{jt(_i(k,g))},rr=()=>{if(!R.current||!Pe)return;ge();const a=R.current;a.src=Pe};Rr(()=>{const a=R.current;if(!a)return;ge();const m=document.activeElement,N=a.tabIndex;a.tabIndex=-1,a.style.pointerEvents="none",a.blur(),Ki(a,En.current);let L;const ce=()=>{clearTimeout(L),a.tabIndex=N,a.style.pointerEvents="";const $e=document.activeElement;(!$e||$e===document.body||$e===a)&&m?.focus(),a.removeEventListener("load",ce)};a.addEventListener("load",ce),L=setTimeout(ce,3e3)});const Mn=()=>{const a=dn.indexOf(v);C(dn[(a+1)%dn.length])},mt=(a,m)=>{if(!K)return;const N=K,L={...Ke,[a]:m};_e.current=He(I,L),xe(ce=>({...ce,[N]:L})),St({path:I,pageKey:N,params:L})},Yt=xi({iframeBase:_.iframeBase,resolvedPath:ke,activeGlobalSectionName:M?.name??null,noServerLabel:s("sandbox.preview.noServerRunning")}),Et=a=>{const m=se[a.key]??{},N=He(a.path,m);(M||Oe(N)!==Oe(ke))&&ge(),_e.current=N,oe(null),Q(null),te(null),j(null),ne(a.key),fe(a.path),St({path:a.path,pageKey:a.key,params:m}),l.selectTarget({kind:"page",key:a.key,path:a.path})},zn=a=>{if(!Te||!ve){qn.error(s("sandbox.preview.previewMetadataNotReady"));return}ge(),_e.current=null;const m=es(ve),N=ts(Te,m,a.key);oe(a),Q(null),te(N),j(null),l.selectTarget({kind:"section",key:a.key})},In=a=>{g&&(oe(null),Q(a.key),te(null),jt("blocks"),l.selectTarget({kind:"loader",key:a.key}))},ar=async({name:a,path:m,templateKey:N})=>{if(!t||!c)return;const L=js(m);if(L){ee(L);return}const ce=m.trim().startsWith("/")?m.trim():`/${m.trim()}`;if(Le.some(Se=>Oe(Se.path)===Oe(ce))){ee(s("sandbox.preview.pageAlreadyExists",{path:ce}));return}let $e;if(N&&($e=Y?.[N],!$e)){ee(s("sandbox.preview.templateNoLongerExists"));return}ee(void 0);try{const Se=await kn.mutateAsync({name:a,path:ce,template:$e});J(!1),qn.success(s("sandbox.preview.pageCreated",{name:a})),await Lr(Bi),Et({key:Se.key,name:Se.name,path:Se.path}),jt("blocks")}catch(Se){ee(Se instanceof Error?Se.message:s("sandbox.preview.failedToCreatePage"))}},ft=dt&&(Zs||_.mode==="production"),Kn=bi({showPreviewToolbar:ft,contentEditingEnabled:P}),Nt=()=>{D(!1),T("")},Qt=M?.name??tt?.title??yt?.name,Xt=X.isPending||Ze.isPending,Zt=Xt?at(_.iframeBase):Qt,Ct=M?`section:${M.key}`:G?`loader:${G}`:K?`page:${K}`:void 0,ir=ft?Kn?n.jsxs(Sr,{open:q,onOpenChange:a=>{D(a),a||T("")},children:[n.jsx(jr,{asChild:!0,children:n.jsx("button",{type:"button","aria-label":s("sandbox.preview.choosePage"),"data-testid":"preview-page-picker",title:Xt?Zt??void 0:M||tt?Qt:[Qt,I].filter(Boolean).join(" · "),className:"group/page-picker flex h-7 w-fit min-w-[320px] items-stretch overflow-hidden whitespace-nowrap rounded-[var(--studio-button-radius,calc(var(--radius)*1.333))] border border-border/60 bg-background text-left text-xs text-muted-foreground transition-colors hover:border-border focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:n.jsxs("span",{className:"flex min-w-0 flex-1 items-center gap-1.5 px-2 transition-colors group-hover/page-picker:bg-accent/50 group-data-[state=open]/page-picker:bg-accent/50",children:[M&&n.jsxs("span",{className:"inline-flex shrink-0 items-center gap-1 rounded bg-global-section/14 px-1.5 py-0.5 text-[11px] font-medium text-global-section-fg dark:text-global-section-fg-dark",children:[n.jsx(sn,{size:11}),s("sandbox.preview.globalBadge")]}),tt&&n.jsxs("span",{className:"inline-flex shrink-0 items-center gap-1 rounded bg-muted px-1.5 py-0.5 text-[11px] font-medium text-muted-foreground",children:[n.jsx(tn,{size:11}),s("sandbox.preview.loaderBadge")]}),Zt&&n.jsx("span",{className:"min-w-0 flex-1 truncate font-medium text-foreground",children:Zt}),!Xt&&!M&&!tt&&n.jsx("span",{"data-testid":"preview-page-path",className:"ml-auto min-w-0 truncate text-right font-mono text-muted-foreground",children:I}),n.jsx(Gn,{size:12,className:Ue("shrink-0 transition-transform",q&&"rotate-180")})]})})}),n.jsxs(Er,{className:"w-112 max-w-[calc(100vw-2rem)] p-0",align:"center",sideOffset:8,children:[n.jsxs(bs,{shouldFilter:!1,defaultValue:Ct,children:[n.jsx(ys,{value:U,onValueChange:T,placeholder:s("sandbox.preview.searchPagesAndComponents")}),n.jsxs(xs,{className:"max-h-80",children:[n.jsx(ws,{children:Le.length===0&&bt.length===0&&zt.length===0?s("sandbox.preview.noPagesFound"):s("sandbox.preview.noSearchResults")}),ze.length>0&&n.jsx(vt,{children:ze.map(a=>n.jsxs(xt,{value:`page:${a.key}`,"aria-current":Ct===`page:${a.key}`||void 0,title:`${a.name} · ${a.path}`,onSelect:()=>{Nt(),Et(a)},className:"gap-3 px-3 py-2.5 aria-[current=true]:bg-accent aria-[current=true]:text-accent-foreground",children:[n.jsx("span",{className:"min-w-0 flex-1 truncate text-sm",children:a.name}),n.jsx("span",{className:"min-w-0 max-w-1/2 truncate text-right font-mono text-xs text-muted-foreground",children:a.path})]},a.key))}),et.length>0&&n.jsx(vt,{heading:s("sandbox.preview.globalComponents"),children:et.map(a=>n.jsx(xt,{value:`section:${a.key}`,"aria-current":Ct===`section:${a.key}`||void 0,className:"aria-[current=true]:bg-accent aria-[current=true]:text-accent-foreground",onSelect:()=>{Nt(),zn(a)},children:n.jsx("span",{className:"truncate",children:a.name})},a.key))}),ct.length>0&&n.jsx(vt,{heading:s("sandbox.preview.globalLoaders"),children:ct.map(a=>n.jsx(xt,{value:`loader:${a.key}`,"aria-current":Ct===`loader:${a.key}`||void 0,className:"aria-[current=true]:bg-accent aria-[current=true]:text-accent-foreground",onSelect:()=>{Nt(),In(a)},children:n.jsx("span",{className:"truncate",children:a.title})},a.key))})]})]}),!M&&!G&&ot(I).some(a=>a.type!=="text")&&n.jsx("div",{className:"flex flex-wrap items-center gap-1 border-t px-3 py-3 text-xs text-muted-foreground",children:ot(I).map((a,m)=>{if(a.type==="text")return n.jsx("span",{children:a.text},`text-${m}`);const N=kt[a.name];return N&&nt?n.jsx(ds,{sources:N,template:I,paramName:a.name,value:Ke[a.name]??"",sandboxRef:nt,onCommit:L=>mt(a.name,L)},`${K}:${a.name}`):n.jsx(us,{name:a.name,value:Ke[a.name]??"",onCommit:L=>mt(a.name,L)},`${K}:${a.name}`)})}),n.jsx("div",{className:"border-t p-1.5",children:n.jsxs(Xe,{variant:"ghost",className:"w-full justify-start",onClick:()=>{Nt(),ee(void 0),J(!0)},children:[n.jsx(Zn,{size:16}),s("sandbox.preview.createNewPage")]})})]})]}):n.jsx("span",{className:"min-w-0 truncate text-xs text-muted-foreground",children:Yt}):null,Un=ft||P?n.jsxs("div",{className:"flex min-w-0 items-center gap-1",children:[n.jsxs(Ge,{children:[n.jsx(Je,{asChild:!0,children:n.jsx(Fe,{onClick:Mn,"aria-label":s(Dt[v]),children:v==="mobile"?n.jsx(Jn,{size:16}):v==="tablet"?n.jsx(Yn,{size:16}):n.jsx(Qn,{size:16})})}),n.jsx(Ye,{children:s(Dt[v])})]}),ir,n.jsx("div",{className:"flex shrink-0 items-center gap-1",children:n.jsx(Fe,{onClick:()=>{On()},"aria-label":s(Vt),children:n.jsx(mn,{size:16})})})]}):null,Rt=!e&&ft?n.jsxs(n.Fragment,{children:[n.jsxs(Ge,{children:[n.jsx(Je,{asChild:!0,children:n.jsx(Fe,{onClick:rr,"aria-label":s("sandbox.preview.refresh"),children:n.jsx(hr,{size:16})})}),n.jsx(Ye,{side:"bottom",children:s("sandbox.preview.refresh")})]}),Kn?n.jsxs("div",{ref:r,className:"relative min-w-0 w-64 shrink",children:[n.jsxs("div",{className:"flex h-7 w-full min-w-0 items-center rounded-md border border-border bg-background transition-colors duration-200 hover:bg-accent",children:[n.jsxs("div",{className:"flex h-full min-w-0 flex-1 cursor-pointer items-center gap-1 pl-2 pr-1",onClick:()=>D(a=>!a),children:[M&&n.jsxs("span",{className:"shrink-0 inline-flex items-center gap-1 rounded bg-global-section/14 px-1.5 py-0.5 text-[11px] font-medium text-global-section-fg dark:text-global-section-fg-dark",children:[n.jsx(sn,{size:11}),s("sandbox.preview.globalBadge")]}),tt&&n.jsxs("span",{className:"shrink-0 inline-flex items-center gap-1 rounded bg-muted px-1.5 py-0.5 text-[11px] font-medium text-muted-foreground",children:[n.jsx(tn,{size:11}),s("sandbox.preview.loaderBadge")]}),n.jsx("span",{className:Ue("text-[13px] font-medium text-foreground",It==null?"min-w-0 flex-1 truncate":"min-w-0 shrink truncate"),children:It??Yt}),!M&&!G&&It!=null&&I&&n.jsx("span",{className:"flex min-w-0 flex-1 items-center overflow-hidden whitespace-nowrap text-[12px] text-muted-foreground",children:ot(I).map((a,m)=>{if(a.type==="text")return n.jsx("span",{className:Ue(m===0?"min-w-0 truncate":"shrink-0"),children:a.text},`text-${m}`);const N=kt[a.name];return N&&nt?n.jsx(ds,{sources:N,template:I,paramName:a.name,value:Ke[a.name]??"",sandboxRef:nt,onCommit:L=>mt(a.name,L)},`${K}:${a.name}`):n.jsx(us,{name:a.name,value:Ke[a.name]??"",onCommit:L=>mt(a.name,L)},`${K}:${a.name}`)})})]}),n.jsx("button",{type:"button",className:"flex h-full shrink-0 items-center pl-1 pr-2",onClick:()=>D(a=>!a),"aria-label":s("sandbox.preview.choosePage"),"aria-expanded":q,children:n.jsx(Gn,{size:12,className:Ue("shrink-0 text-muted-foreground transition-transform",q&&"rotate-180")})})]}),q&&n.jsxs("div",{className:"absolute left-1/2 top-full z-50 mt-1.5 w-[500px] max-w-[calc(100vw-2rem)] -translate-x-1/2 overflow-hidden rounded-lg border bg-popover shadow-lg",children:[n.jsxs("div",{className:"px-2 h-10 flex items-center gap-2 border-b",children:[n.jsx(Pr,{size:14,className:"shrink-0 text-muted-foreground","aria-hidden":!0}),n.jsx("input",{type:"text",value:U,onChange:a=>T(a.target.value),onKeyDown:a=>{if(a.key!=="Enter")return;const m=U.trim();if(!m)return;const N=ze.find(L=>Oe(L.path)===Oe(m));N&&(a.preventDefault(),D(!1),T(""),Et(N))},placeholder:s("sandbox.preview.searchPagesAndComponents"),className:"w-full bg-transparent text-sm outline-none placeholder:text-muted-foreground",autoFocus:!0})]}),n.jsx("div",{className:"p-1.5 border-b",children:n.jsxs("button",{type:"button",className:"flex w-full items-center gap-2.5 rounded-md px-3 py-2.5 text-left text-sm hover:bg-accent hover:text-accent-foreground",onMouseDown:a=>{a.preventDefault(),D(!1),T(""),ee(void 0),J(!0)},children:[n.jsx(Zn,{size:16,className:"shrink-0 text-muted-foreground"}),n.jsx("span",{className:"flex-1 font-medium",children:s("sandbox.preview.createNewPage")})]})}),ze.length===0&&et.length===0&&ct.length===0?n.jsx("div",{className:"px-4 py-5 text-center text-xs text-muted-foreground",children:Le.length===0&&bt.length===0&&zt.length===0?s("sandbox.preview.noPagesFound"):s("sandbox.preview.noSearchResults")}):n.jsxs("div",{className:"max-h-80 overflow-y-auto overscroll-contain",children:[ze.length>0&&n.jsx("div",{className:"p-1.5",children:ze.map(a=>n.jsxs("button",{type:"button",className:"flex w-full items-center gap-3 rounded-md px-3 py-2.5 text-left text-sm hover:bg-accent hover:text-accent-foreground",onMouseDown:m=>{m.preventDefault(),D(!1),T(""),Et(a)},children:[n.jsx(Xn,{size:16,className:"shrink-0 text-muted-foreground"}),n.jsx("span",{className:"min-w-0 flex-1 truncate font-medium",children:a.name}),n.jsx("span",{className:"shrink-0 text-xs text-muted-foreground",children:a.path})]},a.key))}),et.length>0&&n.jsxs("div",{className:Ue("p-1.5",ze.length>0&&"border-t"),children:[n.jsx("div",{className:"px-3 py-2 text-xs font-medium text-muted-foreground",children:s("sandbox.preview.globalComponents")}),et.map(a=>n.jsxs("button",{type:"button",className:"flex w-full items-center gap-3 rounded-md px-3 py-2.5 text-left text-sm hover:bg-accent hover:text-accent-foreground",onMouseDown:m=>{m.preventDefault(),D(!1),T(""),zn(a)},children:[n.jsx(sn,{size:16,className:"shrink-0 text-muted-foreground"}),n.jsx("span",{className:"min-w-0 flex-1 truncate font-medium",children:a.name}),n.jsx("span",{className:"shrink-0 text-xs text-muted-foreground",children:a.resolveType.split("/").pop()?.replace(/\.tsx?$/,"")})]},a.key))]}),ct.length>0&&n.jsxs("div",{className:Ue("p-1.5",(ze.length>0||et.length>0)&&"border-t"),children:[n.jsx("div",{className:"px-3 py-2 text-xs font-medium text-muted-foreground",children:s("sandbox.preview.globalLoaders")}),ct.map(a=>n.jsxs("button",{type:"button",className:"flex w-full items-center gap-3 rounded-md px-3 py-2.5 text-left text-sm hover:bg-accent hover:text-accent-foreground",onMouseDown:m=>{m.preventDefault(),D(!1),T(""),In(a)},children:[n.jsx(tn,{size:16,className:"shrink-0 text-muted-foreground"}),n.jsx("span",{className:"min-w-0 flex-1 truncate font-medium",children:a.title}),n.jsx("span",{className:"shrink-0 text-xs text-muted-foreground",children:a.resolveType.split("/").pop()?.replace(/\.tsx?$/,"")})]},a.key))]})]})]})]}):n.jsx("span",{className:"min-w-0 truncate px-2 text-[13px] text-muted-foreground",children:Yt}),n.jsxs(Ge,{children:[n.jsx(Je,{asChild:!0,children:n.jsx(Fe,{"aria-label":s(Vt),onClick:()=>{On()},children:n.jsx(mn,{size:16})})}),n.jsx(Ye,{side:"bottom",children:s(Vt)})]})]}):null,or=Rt?n.jsx("div",{className:"flex min-w-0 items-center gap-0.5",children:Rt}):null,Hn=_.mode==="sandbox",Tt=$i[v],Lt=v==="desktop"&&(B.width===0||B.width>=Tt.width+2*ps),Wn=Lt?1:Math.min(B.width>0?B.width/(Tt.width+2*ps):1,1),lr=Lt?{width:"100%",height:"100%"}:{width:`${Tt.width}px`,height:B.height>0?`${B.height/Wn}px`:`${Tt.height}px`,transform:`scale(${Wn})`,transformOrigin:"top center"},Vn=n.jsxs(n.Fragment,{children:[Hn&&(ft||P)&&n.jsx(Fe,{onClick:Fn,"aria-pressed":ae==="visual","aria-label":s("sandbox.preview.visualEditor"),active:ae==="visual",children:n.jsx(nn,{size:16})}),g&&n.jsxs(Ge,{children:[n.jsx(Je,{asChild:!0,children:n.jsx(Fe,{onClick:sr,"aria-pressed":ae==="blocks","aria-label":s("sandbox.preview.blocksEditor"),active:ae==="blocks",children:n.jsx(Xn,{size:16})})}),n.jsx(Ye,{children:s("sandbox.preview.blocksEditor")})]}),Ie&&n.jsxs(Ge,{children:[n.jsx(Je,{asChild:!0,children:n.jsx(Fe,{onClick:A,"aria-pressed":$,"aria-label":s("sectionsEditor.sectionsEditor.viewJson"),active:$,children:n.jsx(kr,{size:16})})}),n.jsx(Ye,{children:s("sectionsEditor.sectionsEditor.viewJson")})]})]}),cr=!e&&dt?n.jsx("div",{className:"absolute bottom-4 left-1/2 z-20 -translate-x-1/2 scale-125",children:n.jsxs("div",{className:"flex items-center gap-0.5 rounded-full border bg-background/60 p-1 shadow-lg backdrop-blur-md",children:[Hn&&n.jsxs(n.Fragment,{children:[n.jsxs(Ge,{children:[n.jsx(Je,{asChild:!0,children:n.jsx(Fe,{onClick:Fn,"aria-pressed":ae==="visual","aria-label":s("sandbox.preview.visualEditor"),active:ae==="visual",className:"rounded-full",children:n.jsx(nn,{size:16})})}),n.jsx(Ye,{side:"top",children:s("sandbox.preview.visualEditor")})]}),n.jsx("div",{className:"mx-0.5 h-5 w-px bg-border"})]}),n.jsxs(Ge,{children:[n.jsx(Je,{asChild:!0,children:n.jsx(Fe,{onClick:Mn,"aria-label":s(Dt[v]),className:"rounded-full",children:n.jsxs("span",{className:"flex items-center justify-center animate-device-icon-pop",children:[v==="mobile"&&n.jsx(Jn,{size:16}),v==="tablet"&&n.jsx(Yn,{size:16}),v==="desktop"&&n.jsx(Qn,{size:16})]},v)})}),n.jsx(Ye,{side:"top",children:s(Dt[v])})]})]})}):null,dr=!!G&&ae==="blocks";return n.jsxs("div",{className:"flex flex-col w-full h-full",children:[nt&&Object.entries(kt).map(([a,m])=>(Ke[a]??"")===""?n.jsx(hi,{sources:m,template:I,paramName:a,sandboxRef:nt,onFill:N=>mt(a,N)},`${K}:${a}`):null),e?n.jsxs(n.Fragment,{children:[n.jsx(en.Toolbar.Center.Portal,{fallback:n.jsx("div",{className:"flex min-w-0 items-center justify-center border-b p-2",children:Un}),children:Un}),n.jsx(en.Toolbar.Right.Portal,{fallback:Vn,children:Vn})]}):n.jsx(n.Fragment,{children:n.jsx(en.Topbar.Center.Portal,{fallback:Rt&&n.jsxs("div",{className:"@container/panel-header relative flex h-12 shrink-0 items-center gap-2 border-b border-border/60 px-3 md:px-4",children:[n.jsx("div",{className:"flex-1"}),n.jsx("div",{className:"flex min-w-0 shrink items-center justify-center gap-0.5",children:Rt}),n.jsx("div",{className:"flex-1"})]}),children:or})}),n.jsx("div",{className:"flex-1 overflow-hidden compact:relative",children:dr?n.jsxs("div",{className:"relative h-full min-h-0 overflow-hidden",children:[n.jsx(fs,{virtualMcpId:t,externalSelection:S,onViewJsonFile:A}),$&&Ie&&n.jsx("div",{className:"absolute inset-0 z-10",children:n.jsx(cn,{ref:F,virtualMcpId:t,pageKey:Ie,onClose:O})})]}):n.jsxs(ss,{orientation:"horizontal",disabled:ae!=="blocks",className:"relative isolate",children:[n.jsx(pt,{ref:E,id:"preview-blocks-editor",defaultSize:ae==="blocks"?"30%":"0%",minSize:"20%",collapsible:!0,collapsedSize:"0%",className:"min-w-0 overflow-hidden",children:ae==="blocks"&&n.jsx(fs,{virtualMcpId:t,externalSelection:S,onViewJsonFile:A})}),ae==="blocks"&&n.jsx(on,{withHandle:!0}),n.jsx(pt,{id:"preview-canvas",defaultSize:ae==="blocks"?"70%":"100%",minSize:"35%",className:"min-w-0 overflow-hidden compact:relative compact:z-0",children:n.jsxs(ss,{orientation:"horizontal",disabled:!($&&Ie),children:[!e&&$&&Ie&&n.jsxs(n.Fragment,{children:[n.jsx(pt,{id:"preview-json-editor",defaultSize:"43%",minSize:"20%",className:"min-w-0 overflow-hidden",children:n.jsx(cn,{ref:F,virtualMcpId:t,pageKey:Ie,onClose:O})}),n.jsx(on,{withHandle:!0})]}),n.jsx(pt,{id:"preview-canvas-inner",minSize:"30%",className:"min-w-0 overflow-hidden",children:n.jsxs("div",{ref:a=>{if(!a)return;const m=()=>V(L=>L.width===a.clientWidth&&L.height===a.clientHeight?L:{width:a.clientWidth,height:a.clientHeight});m();const N=new ResizeObserver(m);return N.observe(a),()=>N.disconnect()},className:Ue("h-full relative overflow-clip flex justify-center",dt&&!Lt&&"bg-muted/30"),children:[(de||Ws)&&dt&&n.jsx("div",{className:"absolute inset-x-0 top-0 z-40 h-1 overflow-hidden",children:n.jsx("div",{className:"absolute inset-y-0 left-0 rounded-r-full bg-brand shadow-[0_0_6px] shadow-brand/60 animate-preview-ramp"})}),_.showBlockingOverlay&&n.jsx("div",{className:"absolute inset-0 z-30",children:n.jsx(an,{kind:"starting",progress:Nn,claimPhase:Wt})}),!re&&Ve.kind==="suspended"&&n.jsx("div",{className:"absolute inset-0 z-30",children:n.jsx(an,{kind:"suspended",onResume:Ne.resume})}),!re&&Ve.kind==="errored"&&n.jsx("div",{className:"absolute inset-0 z-30",children:n.jsx(an,{kind:"errored",error:Ve.error,onRetry:Ne.retry,connectionsHref:`/${De.slug}/settings/connections`})}),_.showWakingPill&&n.jsxs("div",{className:"absolute top-4 left-1/2 z-20 flex max-w-md -translate-x-1/2 items-start gap-3 rounded-xl border border-border bg-muted px-4 py-3 shadow-lg pointer-events-none select-none",children:[n.jsx($t,{className:"size-4.5 mt-0.5 shrink-0 text-muted-foreground"}),n.jsxs("div",{className:"flex flex-col gap-0.5",children:[n.jsx("span",{className:"text-sm font-medium text-foreground",children:s("sandbox.preview.startingPreview")}),n.jsx("span",{className:"text-xs text-muted-foreground",children:s("sandbox.preview.startingPreviewHint")})]})]}),ae==="visual"&&!y&&n.jsxs("div",{className:"absolute top-2 left-1/2 -translate-x-1/2 z-20 flex items-center gap-1.5 rounded-full border border-violet-400/40 bg-violet-500/90 px-3 py-1 text-xs font-medium text-white shadow-md backdrop-blur-sm pointer-events-none select-none",children:[n.jsx(nn,{size:12}),s("sandbox.preview.clickElementToAsk")]}),ae==="visual"&&y&&n.jsx(Da,{element:y,onDismiss:()=>w(null)}),cr,dt&&Pe&&n.jsx("div",{className:Ue("shrink-0",!Lt&&"border-x border-border bg-background shadow-sm"),style:lr,onMouseLeave:nr,children:n.jsx("iframe",{ref:R,src:Pe,className:"w-full h-full border-0",title:s("sandbox.preview.devServerPreviewTitle"),onError:An.handleError,onLoad:()=>{if(An.handleLoad(),lt(),_.mode!=="sandbox"||re){(_.mode==="production"&&!_.showWakingPill||re)&&ae==="blocks"&&Jt();return}if(gr("vm_preview_loaded",{view_mode:ae,vm_id:Mt?.sandboxHandle??null}),!M)try{const a=R.current?.contentWindow?.location?.pathname;if(!a)return;const m=_e.current;if(m!==null&&(_e.current=null,Oe(a)!==Oe(m))||Oe(a)===Oe(ke))return;fe(a),St({path:a,pageKey:pe,params:Ke})}catch{}ae==="visual"&&$n(),ae==="blocks"&&Jt()}},_.iframeBase)})]})}),e&&$&&Ie&&n.jsxs(n.Fragment,{children:[n.jsx(on,{withHandle:!0}),n.jsx(pt,{id:"preview-json-editor",defaultSize:"43%",minSize:"20%",className:"min-w-0 overflow-hidden",children:n.jsx(cn,{ref:F,virtualMcpId:t,pageKey:Ie,onClose:O})})]})]})})]})}),n.jsx(wi,{open:ie,onOpenChange:J,isPending:kn.isPending,error:Ee,templates:Le,onSubmit:ar})]})}function Hi(t){const e=me.c(22),{virtualMcpId:r}=t,s=Ae(),i=Cr(r),{activeTask:u,taskId:c,currentBranch:d}=Ft(),o=wa(c),[l,h]=x.useState(!1);if(ya({threadId:c,sandboxBranch:u?.branch??d,agentHasRepo:ln(i?.metadata),threadHasRepo:ln(o)||ln(u?.metadata)})==="none"){let P;e[0]===Symbol.for("react.memo_cache_sentinel")?(P=n.jsx("div",{className:"flex size-14 items-center justify-center rounded-full bg-muted",children:n.jsx(rs,{className:"size-7 text-foreground"})}),e[0]=P):P=e[0];let g;e[1]!==s?(g=s("mainPanelTabs.previewTab.noSourceToPreview"),e[1]=s,e[2]=g):g=e[2];let k;e[3]!==s?(k=s("mainPanelTabs.previewTab.connectGithubDescription"),e[3]=s,e[4]=k):k=e[4];let b,v;e[5]===Symbol.for("react.memo_cache_sentinel")?(b=()=>h(!0),v=n.jsx(rs,{className:"size-4"}),e[5]=b,e[6]=v):(b=e[5],v=e[6]);let C;e[7]!==s?(C=s("mainPanelTabs.previewTab.connectGithub"),e[7]=s,e[8]=C):C=e[8];let y;e[9]!==C?(y=n.jsxs(Xe,{onClick:b,children:[v,C]}),e[9]=C,e[10]=y):y=e[10];let w;e[11]!==g||e[12]!==k||e[13]!==y?(w=n.jsx(yn,{className:"h-full",image:P,title:g,description:k,actions:y}),e[11]=g,e[12]=k,e[13]=y,e[14]=w):w=e[14];let S;e[15]!==l?(S=n.jsx(ba,{open:l,onOpenChange:h,mode:"agent"}),e[15]=l,e[16]=S):S=e[16];let j;return e[17]!==w||e[18]!==S?(j=n.jsxs(n.Fragment,{children:[w,S]}),e[17]=w,e[18]=S,e[19]=j):j=e[19],j}let p;return e[20]!==r?(p=n.jsx(Ui,{virtualMcpId:r}),e[20]=r,e[21]=p):p=e[21],p}function od(){const t=me.c(2),e=ka();let r;return t[0]!==e?(r=n.jsx(vr,{tabId:"site-editor",children:n.jsx(xr,{feature:"cms",children:n.jsx(Hi,{virtualMcpId:e})})}),t[0]=e,t[1]=r):r=t[1],r}export{od as default};