decocms 4.493.0 → 4.495.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 (369) hide show
  1. package/dist/client/assets/{ActiveShapeUtils-5xWWHSL1.js → ActiveShapeUtils-DCHlcSOh.js} +1 -1
  2. package/dist/client/assets/{AlertCircle-B5gBB9h_.js → AlertCircle-9YsZUjmj.js} +1 -1
  3. package/dist/client/assets/{AreaChart-BTyzss2a.js → AreaChart-CeW2QCC3.js} +1 -1
  4. package/dist/client/assets/{ArrowLeft-B7455tPl.js → ArrowLeft-ZHARsvy9.js} +1 -1
  5. package/dist/client/assets/{ArrowUp-CP6XCJnB.js → ArrowUp-D1danNae.js} +1 -1
  6. package/dist/client/assets/{BarChart-Ch51NWPz.js → BarChart-DdrNiWaE.js} +1 -1
  7. package/dist/client/assets/{Building02-BZItaEYx.js → Building02-ssxWkdBl.js} +1 -1
  8. package/dist/client/assets/{CategoricalChart-DqN5Jy74.js → CategoricalChart-ClYHeQF6.js} +1 -1
  9. package/dist/client/assets/{CheckCircle-C3CiaCW4.js → CheckCircle-DiKVJkkJ.js} +1 -1
  10. package/dist/client/assets/{ChevronSelectorVertical-DIPs2sw-.js → ChevronSelectorVertical-Dkzqp5pp.js} +1 -1
  11. package/dist/client/assets/{ChevronUp-nynZHATg.js → ChevronUp-wLOc_NTT.js} +1 -1
  12. package/dist/client/assets/{Copy01-CdRMK9o7.js → Copy01-Cr5x9Tlu.js} +1 -1
  13. package/dist/client/assets/{CreditCard01-DVQTLvKO.js → CreditCard01-DCL7xzU2.js} +1 -1
  14. package/dist/client/assets/{DotsVertical-3XBYz4yU.js → DotsVertical-DZE2ktIm.js} +1 -1
  15. package/dist/client/assets/{ErrorBarContext-Csmpy3UX.js → ErrorBarContext-D4j8kFWO.js} +1 -1
  16. package/dist/client/assets/{Globe04-DoxNod_i.js → Globe04-DLL93yaf.js} +1 -1
  17. package/dist/client/assets/{Image01-DdBetDCI.js → Image01-Doh_epPd.js} +1 -1
  18. package/dist/client/assets/{Key01-DcSonP-G.js → Key01-rqwReuZQ.js} +1 -1
  19. package/dist/client/assets/{Link01-3BacRGrf.js → Link01-DiFWbMaR.js} +1 -1
  20. package/dist/client/assets/{LinkBroken01-BZFZ6N-h.js → LinkBroken01-DGQh_3WZ.js} +1 -1
  21. package/dist/client/assets/{Monitor01-DU19-CHk.js → Monitor01-Cp7iEwN0.js} +1 -1
  22. package/dist/client/assets/{Play-B7i_-ibU.js → Play-C2hvYOyw.js} +1 -1
  23. package/dist/client/assets/{Plus-XYNDZJ4s.js → Plus-v0YpByfM.js} +1 -1
  24. package/dist/client/assets/{SearchMd-BFitEH5z.js → SearchMd-Bendi2p8.js} +1 -1
  25. package/dist/client/assets/{Sector-CYOl8Efm.js → Sector-Clpc9eH-.js} +1 -1
  26. package/dist/client/assets/{ShoppingBag01-Ci8H67G0.js → ShoppingBag01-BG-1Jwuh.js} +1 -1
  27. package/dist/client/assets/{Sun-D1Mdg8Cq.js → Sun-CJr96mBh.js} +1 -1
  28. package/dist/client/assets/{SwitchHorizontal01-BHr8jCjb.js → SwitchHorizontal01-Dv53_XOE.js} +1 -1
  29. package/dist/client/assets/{Tool01-DQnW-zjg.js → Tool01-B-kpMrMZ.js} +1 -1
  30. package/dist/client/assets/{Trash01-DZ8laRwu.js → Trash01-3M9m1iIs.js} +1 -1
  31. package/dist/client/assets/{Upload01-CrRTpeMX.js → Upload01-DBgIGKf8.js} +1 -1
  32. package/dist/client/assets/{User01-9bZ-cKa7.js → User01-CT2R-iHD.js} +1 -1
  33. package/dist/client/assets/{UserSquare-CuRnLJZ6.js → UserSquare-BuJqx7Ns.js} +1 -1
  34. package/dist/client/assets/{Users01-cUGZjxDe.js → Users01-gQNjKybb.js} +1 -1
  35. package/dist/client/assets/{XAxis-DDG3qYHW.js → XAxis-DBRxAeUY.js} +1 -1
  36. package/dist/client/assets/{XClose-DjFCAP5F.js → XClose-Bpws6cjk.js} +1 -1
  37. package/dist/client/assets/{ZoomOut-BggitXDv.js → ZoomOut-CVwCO-_8.js} +1 -1
  38. package/dist/client/assets/{access-gate-Cu8JZecz.js → access-gate-DlhD9I9N.js} +1 -1
  39. package/dist/client/assets/{add-connection-dialog-DBnkMFp9.js → add-connection-dialog-CQiSl-Qe.js} +1 -1
  40. package/dist/client/assets/{agent-analytics-B1wni80p.js → agent-analytics-Dlpy_544.js} +1 -1
  41. package/dist/client/assets/agent-app-DtmEOrmX.js +1 -0
  42. package/dist/client/assets/{agent-assets-B18leh3z.js → agent-assets-Ba_4hhfI.js} +1 -1
  43. package/dist/client/assets/{agent-automation-CWXHzvtY.js → agent-automation-DuF9ZiWS.js} +1 -1
  44. package/dist/client/assets/{agent-automations-C0tbQ1R9.js → agent-automations-BV2eTHQr.js} +1 -1
  45. package/dist/client/assets/{agent-connect-sources-CKiU44XZ.js → agent-connect-sources-C_fgxaTV.js} +1 -1
  46. package/dist/client/assets/agent-deck--kR-tnhH.js +1 -0
  47. package/dist/client/assets/{agent-e2e-LdVq-drf.js → agent-e2e-CgGLFkHe.js} +1 -1
  48. package/dist/client/assets/{agent-experiments-ClDYYnWj.js → agent-experiments-CpXLJckI.js} +1 -1
  49. package/dist/client/assets/{agent-file-CjZFekiU.js → agent-file-Cak5KHUl.js} +1 -1
  50. package/dist/client/assets/{agent-hosting-zrg11_-A.js → agent-hosting-2pI_IIlr.js} +1 -1
  51. package/dist/client/assets/{agent-icon-BewGjsar.js → agent-icon-BTsTGfvr.js} +1 -1
  52. package/dist/client/assets/agent-library-CGtmUhYD.js +1 -0
  53. package/dist/client/assets/agent-library-file-CZlCJsi6.js +1 -0
  54. package/dist/client/assets/{agent-monitor-CKpvG_Lm.js → agent-monitor-BRq8qrkU.js} +1 -1
  55. package/dist/client/assets/{agent-overview-Di3y0uXp.js → agent-overview-UU6Y44eX.js} +1 -1
  56. package/dist/client/assets/agent-settings-_tzBjLDX.js +1 -0
  57. package/dist/client/assets/{agent-site-editor-16duoEZY.js → agent-site-editor-LLur_-_o.js} +1 -1
  58. package/dist/client/assets/agent-site-editor-code-DA20Pk7L.js +2 -0
  59. package/dist/client/assets/{agent-site-editor-content-B64VGP55.js → agent-site-editor-content-DXvV_eiy.js} +3 -3
  60. package/dist/client/assets/agent-site-editor-preview-5ii-TR0s.js +518 -0
  61. package/dist/client/assets/agent-view-CgtvUhvS.js +1 -0
  62. package/dist/client/assets/{agent-view-guard-CoiTTfLB.js → agent-view-guard-CyNRuQw7.js} +1 -1
  63. package/dist/client/assets/{agents-list-CFQQdh1t.js → agents-list-BVqV3SYd.js} +1 -1
  64. package/dist/client/assets/{ai-providers-CTzk8MgQ.js → ai-providers-jNZBkRl5.js} +1 -1
  65. package/dist/client/assets/{alert-Dyx5I-Y3.js → alert-B2FW115A.js} +1 -1
  66. package/dist/client/assets/{alert-dialog-BXEG2ySJ.js → alert-dialog-Dr31Gqkz.js} +1 -1
  67. package/dist/client/assets/{analytics-sections-BeEYJnmv.js → analytics-sections-DOFncpfM.js} +1 -1
  68. package/dist/client/assets/{api-keys-JMxYvHms.js → api-keys-DPKcfTUa.js} +1 -1
  69. package/dist/client/assets/api-keys-DXlZlPNT.js +1 -0
  70. package/dist/client/assets/app-editor-BlHRP4Rp.js +1 -0
  71. package/dist/client/assets/{asset-utils-Euq8y8zU.js → asset-utils-CX1te1rQ.js} +1 -1
  72. package/dist/client/assets/{auth-Dwu4WH32.js → auth-CM-DdMTE.js} +1 -1
  73. package/dist/client/assets/{auth-catchall-D9Xe8fii.js → auth-catchall-D9Jl5rTX.js} +1 -1
  74. package/dist/client/assets/{auth-entry-CCIy-Mhs.js → auth-entry-Cn0jyyw6.js} +1 -1
  75. package/dist/client/assets/{auth-split-layout-DXUbMgnq.js → auth-split-layout-DiVs6WJ3.js} +1 -1
  76. package/dist/client/assets/{authenticate-and-persist-oauth-BEdNWkUl.js → authenticate-and-persist-oauth-DEaKhdcs.js} +1 -1
  77. package/dist/client/assets/{automation-list-row-Du4blVfm.js → automation-list-row-CG7kU51M.js} +1 -1
  78. package/dist/client/assets/{automation-runs-BsFnE3d4.js → automation-runs-CGQu-nIx.js} +1 -1
  79. package/dist/client/assets/{automations-Cpff9O08.js → automations-D9LXua4J.js} +1 -1
  80. package/dist/client/assets/{autosend-BaKgBZDQ.js → autosend-B7QA12Tw.js} +1 -1
  81. package/dist/client/assets/{avatar-BEl6nltF.js → avatar-ByGDtOvp.js} +1 -1
  82. package/dist/client/assets/{badge-DFdotQFQ.js → badge-XA4dRNYq.js} +1 -1
  83. package/dist/client/assets/{block-document-BlUE8Eks.js → block-document-B0n4B4IP.js} +1 -1
  84. package/dist/client/assets/{blocks-preview-workspace-context-DSOKao_H.js → blocks-preview-workspace-context-C7bCK2dG.js} +1 -1
  85. package/dist/client/assets/{blog-schema-B_yGbArL.js → blog-schema-D2K9lxFN.js} +1 -1
  86. package/dist/client/assets/{board-analytics-UmA2i-Sq.js → board-analytics-B5mmzmBe.js} +1 -1
  87. package/dist/client/assets/{buckets-CJ11qX_5.js → buckets-Qu8B15tT.js} +1 -1
  88. package/dist/client/assets/{build-improve-prompt-doc-QS7b7hRr.js → build-improve-prompt-doc-on-tpDMo.js} +1 -1
  89. package/dist/client/assets/{calendar-CT7cVD7N.js → calendar-CRpUCA4p.js} +1 -1
  90. package/dist/client/assets/{capability-load-error-yZzl8b80.js → capability-load-error-Cwp75ry8.js} +1 -1
  91. package/dist/client/assets/{category-editor-CTdWf8oW.js → category-editor-B9myg9lh.js} +1 -1
  92. package/dist/client/assets/{chart-C-785ZEj.js → chart-CvxQFl1V.js} +1 -1
  93. package/dist/client/assets/{chat-context-DJGYyGlB.js → chat-context-Cwuqjrlx.js} +1 -1
  94. package/dist/client/assets/{chat-draft-DbBgaLY_.js → chat-draft-D0btcSjz.js} +1 -1
  95. package/dist/client/assets/{checkbox-DmaIcPoL.js → checkbox-DSNt2gzr.js} +1 -1
  96. package/dist/client/assets/{choose-editor-CirVpDXw.js → choose-editor-BKZj3uPE.js} +1 -1
  97. package/dist/client/assets/{claim-phase-copy-BnoHLlrM.js → claim-phase-copy-DWZtPw6h.js} +1 -1
  98. package/dist/client/assets/{cli-auth-success-XcMuETZQ.js → cli-auth-success-C6o7zJ2p.js} +1 -1
  99. package/dist/client/assets/{client-icons-DLhjrwzL.js → client-icons-BpKVWun3.js} +1 -1
  100. package/dist/client/assets/{collapsible-CgZ4-XuF.js → collapsible-DOY0YL_H.js} +1 -1
  101. package/dist/client/assets/{collection-detail-gYU6aRKx.js → collection-detail--7z4uSdQ.js} +1 -1
  102. package/dist/client/assets/{collection-display-button-YyNX5Efp.js → collection-display-button-Dtu1j77F.js} +1 -1
  103. package/dist/client/assets/{collection-search-BC0JMMNp.js → collection-search-DdqYzjim.js} +1 -1
  104. package/dist/client/assets/{collection-table-wrapper-DFn43mg0.js → collection-table-wrapper-8VyRclLN.js} +1 -1
  105. package/dist/client/assets/{collection-tabs-DeQ7zbGh.js → collection-tabs-CWwn3uMq.js} +1 -1
  106. package/dist/client/assets/{column-rules-b8eo73o4.js → column-rules-_Ma8ZWf4.js} +1 -1
  107. package/dist/client/assets/{combobox-DeXU4vSR.js → combobox-D7N8SC25.js} +1 -1
  108. package/dist/client/assets/{command-D2QlwSrW.js → command-Crl7raeC.js} +1 -1
  109. package/dist/client/assets/{companion-mcps-section-DtzaYg0J.js → companion-mcps-section-DkjOETuc.js} +1 -1
  110. package/dist/client/assets/{config-DP6xvcYW.js → config-YLu1LJhW.js} +1 -1
  111. package/dist/client/assets/{connect-ClKIaF8K.js → connect-BbV6U_hr.js} +1 -1
  112. package/dist/client/assets/{connect-layout-CyyX0xPx.js → connect-layout-CQuvObDD.js} +1 -1
  113. package/dist/client/assets/{connection-BjzBHJVc.js → connection-BVvM5npe.js} +1 -1
  114. package/dist/client/assets/{connection-card-BVD8Ppl9.js → connection-card-sWgF9uUo.js} +1 -1
  115. package/dist/client/assets/{connection-detail-DfYF7TR9.js → connection-detail-AG67uG4I.js} +1 -1
  116. package/dist/client/assets/{connection-form-helpers-5EXuPZ4G.js → connection-form-helpers-Je0bq7c_.js} +1 -1
  117. package/dist/client/assets/{connections-D1tC1_hB.js → connections-Dc6s7_rq.js} +1 -1
  118. package/dist/client/assets/{context-DzTTGbcd.js → context-DgLSgDvh.js} +1 -1
  119. package/dist/client/assets/{context-menu-Can7-rLt.js → context-menu-JVsCdcDt.js} +1 -1
  120. package/dist/client/assets/{core.esm-Cvui6jds.js → core.esm-CIWIcR9H.js} +1 -1
  121. package/dist/client/assets/{create-organization-dialog-CD66iA3E.js → create-organization-dialog-Ddjs5dmA.js} +1 -1
  122. package/dist/client/assets/{daily-pulse-Bz92WYIP.js → daily-pulse-Dpe4FA_b.js} +1 -1
  123. package/dist/client/assets/{device-hint-DZcinuip.js → device-hint-D9SLM9ag.js} +1 -1
  124. package/dist/client/assets/{discover-BRALl0mU.js → discover-DlwaiXCQ.js} +1 -1
  125. package/dist/client/assets/{domain-settings-DiitZO4z.js → domain-settings-CwEiepSy.js} +1 -1
  126. package/dist/client/assets/{drawer-BPz4t5dt.js → drawer-3zPC7EI9.js} +1 -1
  127. package/dist/client/assets/{editor-2jNHgdUN.js → editor-BMb1eAhF.js} +1 -1
  128. package/dist/client/assets/{empty-state-Zf0MeIMv.js → empty-state-DUChmUAz.js} +1 -1
  129. package/dist/client/assets/{empty-state-D8iC8fkc.js → empty-state-DuauqtRJ.js} +1 -1
  130. package/dist/client/assets/{extract-connection-data-BTBLhbEe.js → extract-connection-data-DQ0ThsQw.js} +1 -1
  131. package/dist/client/assets/{feature-gate-Dhf-LwS1.js → feature-gate-DGH8G4ta.js} +1 -1
  132. package/dist/client/assets/{feature-paywall-CHcwEHRJ.js → feature-paywall-Cdd2Shxl.js} +1 -1
  133. package/dist/client/assets/{file-explorer-BhYSdjXu.js → file-explorer-DPT-Gdf2.js} +1 -1
  134. package/dist/client/assets/{file-preview-DvxQuX3P.js → file-preview-wTY5J2MC.js} +1 -1
  135. package/dist/client/assets/{file-share-button-C1EB3dOc.js → file-share-button-D4Hp3Pwr.js} +1 -1
  136. package/dist/client/assets/{file-type-icon-DzYK4NqY.js → file-type-icon-7-3yF331.js} +1 -1
  137. package/dist/client/assets/flat-project-CNnQaq5E.js +1 -0
  138. package/dist/client/assets/{folder-icon-C_Jv4E7N.js → folder-icon-H82laJL_.js} +1 -1
  139. package/dist/client/assets/{form-BCYpCYIL.js → form-BUOiUceD.js} +1 -1
  140. package/dist/client/assets/{general-D8kDc8NB.js → general-BHuT0FSK.js} +1 -1
  141. package/dist/client/assets/{home-CiV29kW5.js → home-BZZrU9O7.js} +1 -1
  142. package/dist/client/assets/{icon-button-sHj7Q6Fp.js → icon-button-DMzM4KWP.js} +1 -1
  143. package/dist/client/assets/{index-s6P2p4h7.js → index-BVCIU8Mk.js} +1 -1
  144. package/dist/client/assets/{index-YEKHk89C.js → index-BmBVOCXW.js} +1 -1
  145. package/dist/client/assets/{index-wABYnbOM.js → index-CerQwuGf.js} +1 -1
  146. package/dist/client/assets/{index-D2iZ6syL.js → index-CvkEcM9-.js} +1 -1
  147. package/dist/client/assets/{index-GgiP6YIr.js → index-D5kx2mq6.js} +1 -1
  148. package/dist/client/assets/{index-DmfwrRER.js → index-DIbARVXx.js} +3 -3
  149. package/dist/client/assets/{index-BVmIdqXu.js → index-D_C9gk4l.js} +1 -1
  150. package/dist/client/assets/{index-CspW_Aw1.js → index-D_aXURjc.js} +1 -1
  151. package/dist/client/assets/{index-6UUldwCZ.js → index-PaA2bHVT.js} +1 -1
  152. package/dist/client/assets/{index-Bm9FTdjr.js → index-V8pRA7Xy.js} +5 -5
  153. package/dist/client/assets/{index-CuOTEpMz.js → index-eP3gZugt.js} +1 -1
  154. package/dist/client/assets/{index-KCu_K9eF.js → index-gHDeYn5U.js} +1 -1
  155. package/dist/client/assets/{index-redirect-C_FoZNOn.js → index-redirect-6gCqz6Y5.js} +1 -1
  156. package/dist/client/assets/{index-BhyQWjoM.js → index-x-BjYR-J.js} +1 -1
  157. package/dist/client/assets/{infiniteQueryObserver-zxl9Rj5F.js → infiniteQueryObserver-Bni-1Rrc.js} +1 -1
  158. package/dist/client/assets/{infra-billing-heizZxEC.js → infra-billing-hHO33Bt1.js} +1 -1
  159. package/dist/client/assets/{input-Bvc3OT4I.js → input-C7fKNsaf.js} +1 -1
  160. package/dist/client/assets/{input-BkQDO0Ef.js → input-ynU6Ij5H.js} +3 -3
  161. package/dist/client/assets/{integration-icon-DoYtKqdf.js → integration-icon-D-qpZQt8.js} +1 -1
  162. package/dist/client/assets/{jira-icon-BeORJXLw.js → jira-icon-B4wDBFAC.js} +1 -1
  163. package/dist/client/assets/{label-BL2W0Pcn.js → label-3hwvsVXP.js} +1 -1
  164. package/dist/client/assets/{layout-vy24lHLj.js → layout-DHC2Bj1E.js} +1 -1
  165. package/dist/client/assets/{legacy-agents-deep-B5L4MOtR.js → legacy-agents-deep-BSzJqFgZ.js} +1 -1
  166. package/dist/client/assets/{legacy-main-redirect-Pp-THt9D.js → legacy-main-redirect-R36lgGCg.js} +1 -1
  167. package/dist/client/assets/library-BfEEZWGX.js +1 -0
  168. package/dist/client/assets/{library-tab-2usQWRYi.js → library-tab-DiWbCdAf.js} +1 -1
  169. package/dist/client/assets/{login-CwsPhEpC.js → login-BPcnReJQ.js} +1 -1
  170. package/dist/client/assets/{markdown-B3PJYX-4.js → markdown-C_bpsjlQ.js} +1 -1
  171. package/dist/client/assets/{mcp-app-renderer-BLT3VM-G.js → mcp-app-renderer-DSXHJ5Wt.js} +1 -1
  172. package/dist/client/assets/{mcp-oauth-BTa4N28L.js → mcp-oauth-7pqu8EiB.js} +1 -1
  173. package/dist/client/assets/{mcp-oauth-4gmyTyah.js → mcp-oauth-DLnUq2f9.js} +1 -1
  174. package/dist/client/assets/{members-Dba6HROK.js → members-Bunz7e6B.js} +1 -1
  175. package/dist/client/assets/{memory-DAV2Pmj2.js → memory-BLa9O78J.js} +1 -1
  176. package/dist/client/assets/{mini-report-page-B9WE5YW-.js → mini-report-page-BVO6pALW.js} +1 -1
  177. package/dist/client/assets/{mock-board-D9i0Vi9l.js → mock-board-B5k1LNJu.js} +1 -1
  178. package/dist/client/assets/{monaco-editor-DANiMmsL.js → monaco-editor-DMfRj7kt.js} +1 -1
  179. package/dist/client/assets/{monitoring-stats-row-B1hQA0Lu.js → monitoring-stats-row-Bkq-86wh.js} +1 -1
  180. package/dist/client/assets/{multi-select-BJgtMlC2.js → multi-select-BwXBmTlI.js} +1 -1
  181. package/dist/client/assets/{mustache-GMlXm0yl.js → mustache-CEXj2Yiz.js} +1 -1
  182. package/dist/client/assets/{new-project-dialog-C-thpPQ-.js → new-project-dialog-BZdoOBOz.js} +1 -1
  183. package/dist/client/assets/{oauth-callback-ai-provider-B7d3QWP4.js → oauth-callback-ai-provider-CbuzeLlJ.js} +1 -1
  184. package/dist/client/assets/{oauth-callback-DZwrYGu7.js → oauth-callback-z1ZK2Q1I.js} +1 -1
  185. package/dist/client/assets/{onboarding-DK0DTXli.js → onboarding-BGszMdtv.js} +1 -1
  186. package/dist/client/assets/{openai-conversation-BMdPtMrp.js → openai-conversation-B5OySV1i.js} +1 -1
  187. package/dist/client/assets/{optimistic-project-sidebar-views-B4v48qUS.js → optimistic-project-sidebar-views-C2x-Aaxu.js} +1 -1
  188. package/dist/client/assets/{organization-choice-BIWVNvRP.js → organization-choice-xhN7Yznf.js} +1 -1
  189. package/dist/client/assets/{orgs-D5AZUxP6.js → orgs-CEeF7hFm.js} +1 -1
  190. package/dist/client/assets/{page-seo-form-gaHyPBMV.js → page-seo-form-J-VUwESz.js} +1 -1
  191. package/dist/client/assets/{pair-DXTFiJNl.js → pair-Dha2uqa_.js} +1 -1
  192. package/dist/client/assets/{plan-ladder-BUDRjzbj.js → plan-ladder-BNRju_Rr.js} +1 -1
  193. package/dist/client/assets/{popover-jNB4XciF.js → popover-CZB8RxoJ.js} +1 -1
  194. package/dist/client/assets/{post-calendar-D8EAMZvz.js → post-calendar-CfLX9e_7.js} +1 -1
  195. package/dist/client/assets/{post-editor-BQa57f7n.js → post-editor-BBmmo40q.js} +1 -1
  196. package/dist/client/assets/{preview-content-B6K8Jkd_.js → preview-content-DCZG-NtD.js} +1 -1
  197. package/dist/client/assets/{preview-dialog-Dl22mWwN.js → preview-dialog-DZmQ4_OU.js} +1 -1
  198. package/dist/client/assets/{preview-panel-LWLVsrdx.js → preview-panel-BOJOfHU6.js} +1 -1
  199. package/dist/client/assets/{product-picker-dialog-RglVwX1Q.js → product-picker-dialog-BRcRXNTc.js} +1 -1
  200. package/dist/client/assets/{profile-BWcfZQ7V.js → profile-CtDXcfuO.js} +1 -1
  201. package/dist/client/assets/{project-app-view-qeunpPC-.js → project-app-view-Cnchb-Ig.js} +1 -1
  202. package/dist/client/assets/{project-feed-Dm758F3_.js → project-feed-Ctubs6D8.js} +1 -1
  203. package/dist/client/assets/{project-icon-D2vCEWQy.js → project-icon-DXev8VIW.js} +1 -1
  204. package/dist/client/assets/project-reports-Ci_iYRrd.js +1 -0
  205. package/dist/client/assets/project-tasks-CzZdSRDI.js +1 -0
  206. package/dist/client/assets/{projects-DyGysCyv.js → projects-DfF5wpqY.js} +1 -1
  207. package/dist/client/assets/{projects-empty-state-BuMMPopD.js → projects-empty-state-Bkvn9wBz.js} +1 -1
  208. package/dist/client/assets/{prompts-BrbpQc3X.js → prompts-JCRZXZfZ.js} +1 -1
  209. package/dist/client/assets/record-editor-BmUK9heP.js +1 -0
  210. package/dist/client/assets/{redirect-editor-Dc4HBQwl.js → redirect-editor-DARWO6oY.js} +1 -1
  211. package/dist/client/assets/{reports-D7gOlgZm.js → reports-BiB14-w5.js} +1 -1
  212. package/dist/client/assets/reports-CJkqLIIg.js +1 -0
  213. package/dist/client/assets/{reports-onboarding-DGmwN9iV.js → reports-onboarding-Ci2eFzgb.js} +1 -1
  214. package/dist/client/assets/{reports-tab-Bb7ApLUW.js → reports-tab-CfLfXENf.js} +2 -2
  215. package/dist/client/assets/{repositories-GlkzQQVy.js → repositories-Ddu7D_dm.js} +1 -1
  216. package/dist/client/assets/{repository-binding-D2wL-4Vr.js → repository-binding-CGM8Ow1W.js} +1 -1
  217. package/dist/client/assets/{repository-import-picker-DtM7QfYh.js → repository-import-picker-DpjUG5YI.js} +1 -1
  218. package/dist/client/assets/{repository-picker-28zwGBgK.js → repository-picker-XHsJQrRg.js} +1 -1
  219. package/dist/client/assets/{require-capability-Dm4XTD9Y.js → require-capability-D5tJwX6A.js} +1 -1
  220. package/dist/client/assets/{required-auth-layout-CbgA2xIU.js → required-auth-layout-BKYCK4WE.js} +1 -1
  221. package/dist/client/assets/{reset-password-15IQ61HR.js → reset-password-BDIEd0mg.js} +1 -1
  222. package/dist/client/assets/{resizable-CGWosOTw.js → resizable-DBUNvXp7.js} +1 -1
  223. package/dist/client/assets/{resolve-tab-icon-BEIojUgL.js → resolve-tab-icon-C3-zJZHp.js} +1 -1
  224. package/dist/client/assets/{review-settings-BAqWAPVV.js → review-settings-iKeIZIxh.js} +1 -1
  225. package/dist/client/assets/{rich-text-link-control-CE4nCWAz.js → rich-text-link-control-B-mX9xD1.js} +1 -1
  226. package/dist/client/assets/roles-B4ZkD532.js +1 -0
  227. package/dist/client/assets/{route-DCLsEeq7.js → route-Dbrk4VYq.js} +1 -1
  228. package/dist/client/assets/route-DmXxzobK.js +1 -0
  229. package/dist/client/assets/{route-CdaJ86mX.js → route-lCR_XMKF.js} +1 -1
  230. package/dist/client/assets/{runnable-block-editor-xVvcrNA2.js → runnable-block-editor-aENhZJE9.js} +1 -1
  231. package/dist/client/assets/{sandbox-lifecycle-context-BKjyczlw.js → sandbox-lifecycle-context-BrrAiqEe.js} +1 -1
  232. package/dist/client/assets/{schema-C_wSANSe.js → schema-DstuA0HH.js} +1 -1
  233. package/dist/client/assets/{scroll-area-BT00diUA.js → scroll-area-NCHj5pvE.js} +1 -1
  234. package/dist/client/assets/{search-input-D-uP0R3f.js → search-input-CdXxg7YI.js} +1 -1
  235. package/dist/client/assets/{search-toggle-Hgq_Klme.js → search-toggle-BepIBc_s.js} +1 -1
  236. package/dist/client/assets/{secret-picker-BitsdCaD.js → secret-picker-C6OYpb8W.js} +1 -1
  237. package/dist/client/assets/{secrets-C_yZKBHs.js → secrets-CZl02iRQ.js} +1 -1
  238. package/dist/client/assets/{sections-editor-DrNkE-5_.js → sections-editor-C91NghHX.js} +1 -1
  239. package/dist/client/assets/{select-BVEgIanS.js → select-XceA90ql.js} +1 -1
  240. package/dist/client/assets/{select-model-CTmCsZzT.js → select-model-Cn7hOiT6.js} +1 -1
  241. package/dist/client/assets/{seo-editor-Cr-VPdNi.js → seo-editor-BFWV0Cx1.js} +1 -1
  242. package/dist/client/assets/{separator-CJOPtNz-.js → separator-BTLDrzUc.js} +1 -1
  243. package/dist/client/assets/{settings-tab-zoRR23UC.js → settings-tab-BqJQ3uPx.js} +1 -1
  244. package/dist/client/assets/{sheet-D-h-caij.js → sheet-wemU-aZ9.js} +1 -1
  245. package/dist/client/assets/{shell-layout-Ckss0QqA.js → shell-layout-C7bQvu8M.js} +1 -1
  246. package/dist/client/assets/{skills-Dx8G-x-T.js → skills-BqpJ6duC.js} +1 -1
  247. package/dist/client/assets/{slider-DtTzb8JT.js → slider-INBQ4Ci_.js} +1 -1
  248. package/dist/client/assets/{sortable.esm-DCsYtWcb.js → sortable.esm-jUEYWtPl.js} +1 -1
  249. package/dist/client/assets/{sso-DDpjWaoO.js → sso-D804RM9B.js} +1 -1
  250. package/dist/client/assets/{suggestion-Bso4uBRF.js → suggestion-DIwPOBWx.js} +1 -1
  251. package/dist/client/assets/{switch-DZo6rAtc.js → switch-J8K3vNdb.js} +1 -1
  252. package/dist/client/assets/{symbol-Co3D-iSE.js → symbol-lUKWgdXD.js} +1 -1
  253. package/dist/client/assets/{synced-repos-B1f0culo.js → synced-repos-gT4FkxhN.js} +1 -1
  254. package/dist/client/assets/{tab-icon-glyph-ClCao4gx.js → tab-icon-glyph-DF33b7XO.js} +1 -1
  255. package/dist/client/assets/{table-Gm-jWCpy.js → table-Bgls4vq9.js} +1 -1
  256. package/dist/client/assets/{tabs-CXsAC8nO.js → tabs-Duy7ODee.js} +1 -1
  257. package/dist/client/assets/{task-board-Bgw_xVJW.js → task-board-DPQxW0jP.js} +1 -1
  258. package/dist/client/assets/{task-route-BxRkc6kt.js → task-route-BQDNl_5C.js} +1 -1
  259. package/dist/client/assets/{task-status-B92ESgef.js → task-status-BGLLtgDf.js} +1 -1
  260. package/dist/client/assets/taskboard-analytics-2fBMPAxC.js +1 -0
  261. package/dist/client/assets/tasks-CqyFd60l.js +1 -0
  262. package/dist/client/assets/{tasks-BS9sXVdl.js → tasks-IL-LS75-.js} +1 -1
  263. package/dist/client/assets/{textarea-bcNEcwC6.js → textarea-NyzjT40N.js} +1 -1
  264. package/dist/client/assets/{thread-analytics-BE8EaB4a.js → thread-analytics-CtoXhN32.js} +1 -1
  265. package/dist/client/assets/{thread-button-BdyWFdme.js → thread-button-BdG_noMn.js} +1 -1
  266. package/dist/client/assets/{thread-intent-DzHkd78g.js → thread-intent-k2Km9Dmr.js} +1 -1
  267. package/dist/client/assets/{thread-route-CIiqv6HG.js → thread-route-Cx-o2xCf.js} +1 -1
  268. package/dist/client/assets/{thread-route-mhniW_q8.js → thread-route-DbJLUn3d.js} +1 -1
  269. package/dist/client/assets/{thread-sheet-body-C1CJm0mZ.js → thread-sheet-body-_3hMbQ_o.js} +1 -1
  270. package/dist/client/assets/{time-range-picker-BUGifbSV.js → time-range-picker-CH7-gioV.js} +1 -1
  271. package/dist/client/assets/{toggle-group-5iPAspL-.js → toggle-group-m6bc6yjp.js} +1 -1
  272. package/dist/client/assets/{tool-namespace-CYa7zzrf.js → tool-namespace-CPm912_s.js} +1 -1
  273. package/dist/client/assets/{toolbar-icon-button-CZBCq2Ko.js → toolbar-icon-button-BxO5B0Sy.js} +1 -1
  274. package/dist/client/assets/{tooltip-XZmQWwgB.js → tooltip-C2m8ePE-.js} +1 -1
  275. package/dist/client/assets/{tooltipContext-BpyR0oly.js → tooltipContext-CxUJkkTI.js} +1 -1
  276. package/dist/client/assets/{track-Ba2I9E5t.js → track-C5Z44Ul6.js} +1 -1
  277. package/dist/client/assets/{types-2TlDAuAc.js → types-ZqGSA7tu.js} +1 -1
  278. package/dist/client/assets/{url-slug-B-L2Z8me.js → url-slug-DEN8nCcZ.js} +1 -1
  279. package/dist/client/assets/{usage-stats-BihPbkIg.js → usage-stats-Dn2OeFoS.js} +1 -1
  280. package/dist/client/assets/{use-ai-providers-BP69qr77.js → use-ai-providers-jw2MMLa5.js} +1 -1
  281. package/dist/client/assets/{use-automations-Biu6cV7d.js → use-automations-D20-ruPj.js} +1 -1
  282. package/dist/client/assets/{use-autosave-9jHQ-y1f.js → use-autosave-BYt2BXBs.js} +1 -1
  283. package/dist/client/assets/{use-chat-layout-state-J-94EUwt.js → use-chat-layout-state-WRaaYm0y.js} +1 -1
  284. package/dist/client/assets/{use-chat-navigation-BXZpM5MQ.js → use-chat-navigation-FGqN2bea.js} +1 -1
  285. package/dist/client/assets/{use-clock-tick-rPXqIJP8.js → use-clock-tick-DWBHoA2Q.js} +1 -1
  286. package/dist/client/assets/{use-connect-companion-BupOmQ7x.js → use-connect-companion-m9MlzSIA.js} +1 -1
  287. package/dist/client/assets/{use-connection-DUF3XC9E.js → use-connection-B2P9vQF_.js} +1 -1
  288. package/dist/client/assets/{use-copy-B01v9eRq.js → use-copy-Cu3Byc8S.js} +1 -1
  289. package/dist/client/assets/{use-create-virtual-mcp-BxoXyDoq.js → use-create-virtual-mcp-C8rAImjt.js} +1 -1
  290. package/dist/client/assets/{use-date-fns-locale-CPtrEugx.js → use-date-fns-locale-Beq3354R.js} +1 -1
  291. package/dist/client/assets/{use-debounced-autosave-C__Xzre-.js → use-debounced-autosave-DrUzoxBu.js} +1 -1
  292. package/dist/client/assets/{use-debounced-value-D5_QO1dT.js → use-debounced-value-SDDhu8Id.js} +1 -1
  293. package/dist/client/assets/{use-deco-credits-DkZSWK0d.js → use-deco-credits-sdJPRntH.js} +1 -1
  294. package/dist/client/assets/{use-decopilot-events-1iPDcTcf.js → use-decopilot-events-CvdvLxq8.js} +1 -1
  295. package/dist/client/assets/{use-delete-connection-DUG0172F.js → use-delete-connection-BOHbZqa4.js} +1 -1
  296. package/dist/client/assets/{use-deployment-admin-COeWRtXj.js → use-deployment-admin-C-HUVf8B.js} +1 -1
  297. package/dist/client/assets/{use-ensure-project-folder-A0But3O1.js → use-ensure-project-folder-BS99-Vhk.js} +1 -1
  298. package/dist/client/assets/{use-fast-preview-draft-url-BRdebqFC.js → use-fast-preview-draft-url-C5x2lifG.js} +1 -1
  299. package/dist/client/assets/{use-file-configs-B8mqylSR.js → use-file-configs-CfW92ECv.js} +1 -1
  300. package/dist/client/assets/{use-infinite-scroll-DewChEmc.js → use-infinite-scroll-lPN0NCUm.js} +1 -1
  301. package/dist/client/assets/{use-join-requests-CDGwHERc.js → use-join-requests-ChCzkc7_.js} +1 -1
  302. package/dist/client/assets/{use-main-panel-tabs-D7q-AygO.js → use-main-panel-tabs-Dsv5nepq.js} +1 -1
  303. package/dist/client/assets/{use-mcp-auth-status-CUurQWMq.js → use-mcp-auth-status-DRKL-P8f.js} +1 -1
  304. package/dist/client/assets/{use-mcp-client-Dh_4AZgb.js → use-mcp-client-CqsBL7uD.js} +1 -1
  305. package/dist/client/assets/{use-mcp-prompts-LJf01t7x.js → use-mcp-prompts-1ZUYIWAu.js} +1 -1
  306. package/dist/client/assets/{use-mcp-tools-p8MJKmfB.js → use-mcp-tools-D_yHtzDx.js} +1 -1
  307. package/dist/client/assets/{use-members-DQe3FYGy.js → use-members-BTcdjICA.js} +1 -1
  308. package/dist/client/assets/{use-mobile-UYmsi-dp.js → use-mobile-D2A_YY4A.js} +1 -1
  309. package/dist/client/assets/{use-navigate-to-agent-DDZo26Jw.js → use-navigate-to-agent-RUWGGNCj.js} +1 -1
  310. package/dist/client/assets/use-new-blocks-editor-APcQuu-Z.js +1 -0
  311. package/dist/client/assets/{use-open-billing-url-C0JU6CzN.js → use-open-billing-url-tDUbFoyb.js} +1 -1
  312. package/dist/client/assets/{use-org-auth-client-CPbs0OVW.js → use-org-auth-client-qz-rdd-6.js} +1 -1
  313. package/dist/client/assets/{use-org-fs-gQ0RuIPK.js → use-org-fs-Bpw1hkjS.js} +1 -1
  314. package/dist/client/assets/{use-org-repo-syncs-KkmagwRy.js → use-org-repo-syncs-Dgz3AX_E.js} +1 -1
  315. package/dist/client/assets/{use-org-sso-DWtbATGD.js → use-org-sso-FN6Hp6_O.js} +1 -1
  316. package/dist/client/assets/use-organization-roles-lOM-6Cks.js +1 -0
  317. package/dist/client/assets/{use-organization-settings-xcc5-6DS.js → use-organization-settings-CvwbmZME.js} +1 -1
  318. package/dist/client/assets/{use-panel-navigate-A1obvdVI.js → use-panel-navigate-BcP-4Jk4.js} +1 -1
  319. package/dist/client/assets/{use-project-scope-BxCbtcTE.js → use-project-scope-Ds7ag806.js} +1 -1
  320. package/dist/client/assets/{use-releases-G79MSxhR.js → use-releases-DedSt3np.js} +1 -1
  321. package/dist/client/assets/{use-reports-diagnostic-a7ERyr_7.js → use-reports-diagnostic-CO2atgBG.js} +1 -1
  322. package/dist/client/assets/{use-sandbox-events-CSN74_aC.js → use-sandbox-events-Cqb_Ym4F.js} +1 -1
  323. package/dist/client/assets/{use-secrets-CmTpPaF9.js → use-secrets-BjvGVY7t.js} +1 -1
  324. package/dist/client/assets/{use-section-preview-base-DbQlCGNR.js → use-section-preview-base-CoG0-wMI.js} +1 -1
  325. package/dist/client/assets/{use-tags-Ch6_1it4.js → use-tags-ja0CaL2g.js} +1 -1
  326. package/dist/client/assets/{use-task-board-analytics-v7nFgyEB.js → use-task-board-analytics-Dx24ixKr.js} +1 -1
  327. package/dist/client/assets/{use-task-board-events-DHjlo-9e.js → use-task-board-events-CZieAk2g.js} +1 -1
  328. package/dist/client/assets/{use-task-board-item-prs-CoXnP9ys.js → use-task-board-item-prs-C_5W7zcg.js} +1 -1
  329. package/dist/client/assets/{use-task-board-items-erbHwxMh.js → use-task-board-items-CkoW6-bn.js} +1 -1
  330. package/dist/client/assets/{use-task-metadata-DmWCG43J.js → use-task-metadata-C-eJemLF.js} +1 -1
  331. package/dist/client/assets/{use-thread-analytics-DJfFmK1j.js → use-thread-analytics-B8zFfdhr.js} +1 -1
  332. package/dist/client/assets/{use-thread-outputs-7J4Ek_Zs.js → use-thread-outputs-CHIrdXyI.js} +1 -1
  333. package/dist/client/assets/useInfiniteQuery-Cyz1DFAa.js +1 -0
  334. package/dist/client/assets/{useQueries-DoURbZYb.js → useQueries-Dpxh6EqM.js} +1 -1
  335. package/dist/client/assets/useSuspenseInfiniteQuery-B0qRbG8m.js +1 -0
  336. package/dist/client/assets/{users-BfQBxfCk.js → users-xDH1jmUT.js} +1 -1
  337. package/dist/client/assets/{utils-DAEMarMy.js → utils-BBHV2kqf.js} +1 -1
  338. package/dist/client/assets/{variant-calendar-DNADqO99.js → variant-calendar-BJGksOpn.js} +1 -1
  339. package/dist/client/assets/{variant-matcher-override-BDRgB-Pq.js → variant-matcher-override-3KgTJsm9.js} +1 -1
  340. package/dist/client/assets/{view-mode-toggle-DPJfZa3C.js → view-mode-toggle-5lUXeBq8.js} +1 -1
  341. package/dist/client/assets/{virtual-mcp-C54PVPPw.js → virtual-mcp-CKveTc8W.js} +1 -1
  342. package/dist/client/assets/{watch-sse-pool-DmOqvBBq.js → watch-sse-pool-SMEeDp6D.js} +1 -1
  343. package/dist/client/index.html +1 -1
  344. package/dist/server/server.js +598 -598
  345. package/package.json +1 -1
  346. package/dist/client/assets/agent-app-DY95_zYY.js +0 -1
  347. package/dist/client/assets/agent-deck-C8T7Jj3o.js +0 -1
  348. package/dist/client/assets/agent-library-BAUPDsyD.js +0 -1
  349. package/dist/client/assets/agent-library-file-CHlnBg90.js +0 -1
  350. package/dist/client/assets/agent-settings-C-kNuurj.js +0 -1
  351. package/dist/client/assets/agent-site-editor-code-BUJylH9_.js +0 -2
  352. package/dist/client/assets/agent-site-editor-preview-DIihiuj0.js +0 -518
  353. package/dist/client/assets/agent-view-SjLiGW-o.js +0 -1
  354. package/dist/client/assets/api-keys-CH5G5_Qp.js +0 -1
  355. package/dist/client/assets/app-editor-DqEmpUhy.js +0 -1
  356. package/dist/client/assets/flat-project-D2zrr-4_.js +0 -1
  357. package/dist/client/assets/library-DZte0T9-.js +0 -1
  358. package/dist/client/assets/project-reports-6TMbK6-4.js +0 -1
  359. package/dist/client/assets/project-tasks-3mU9NrZf.js +0 -1
  360. package/dist/client/assets/record-editor-hwH5zZn-.js +0 -1
  361. package/dist/client/assets/reports-DPHZG4Rx.js +0 -1
  362. package/dist/client/assets/roles-etRZjRQM.js +0 -1
  363. package/dist/client/assets/route-BCQ2a7UE.js +0 -1
  364. package/dist/client/assets/taskboard-analytics-BEBBYmzN.js +0 -1
  365. package/dist/client/assets/tasks-DckB4c8m.js +0 -1
  366. package/dist/client/assets/use-new-blocks-editor-nCMzaJ9Q.js +0 -1
  367. package/dist/client/assets/use-organization-roles-BKQWBZmO.js +0 -1
  368. package/dist/client/assets/useInfiniteQuery-vZqvTY4f.js +0 -1
  369. package/dist/client/assets/useSuspenseInfiniteQuery-DdGuWYX3.js +0 -1
@@ -0,0 +1,518 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/sections-editor-C91NghHX.js","assets/index-V8pRA7Xy.js","assets/index-D7k-FSss.css","assets/chat-context-Cwuqjrlx.js","assets/use-panel-navigate-BcP-4Jk4.js","assets/thread-route-DbJLUn3d.js","assets/use-project-scope-Ds7ag806.js","assets/repository-binding-CGM8Ow1W.js","assets/use-mcp-client-CqsBL7uD.js","assets/auth-CM-DdMTE.js","assets/autosend-B7QA12Tw.js","assets/thread-intent-k2Km9Dmr.js","assets/delay-CnY5UFtP.js","assets/backoff-CrEUbyZT.js","assets/watch-sse-pool-SMEeDp6D.js","assets/task-board-DPQxW0jP.js","assets/schema-DstuA0HH.js","assets/slugify-CEUa2lfQ.js","assets/use-decopilot-events-CvdvLxq8.js","assets/use-ai-providers-jw2MMLa5.js","assets/use-chat-navigation-FGqN2bea.js","assets/location-BjlyegC2.js","assets/use-organization-settings-CvwbmZME.js","assets/use-new-blocks-editor-APcQuu-Z.js","assets/runnable-block-editor-aENhZJE9.js","assets/input-ynU6Ij5H.js","assets/usage-stats-Dn2OeFoS.js","assets/tool-namespace-CPm912_s.js","assets/form-BUOiUceD.js","assets/label-3hwvsVXP.js","assets/utils-CVEq3hMx.js","assets/markdown-C_bpsjlQ.js","assets/use-copy-Cu3Byc8S.js","assets/Copy01-Cr5x9Tlu.js","assets/ZoomOut-CVwCO-_8.js","assets/use-mobile-D2A_YY4A.js","assets/tooltip-C2m8ePE-.js","assets/index-CvkEcM9-.js","assets/agent-icon-BTsTGfvr.js","assets/AlertCircle-9YsZUjmj.js","assets/Tool01-B-kpMrMZ.js","assets/ArrowUp-D1danNae.js","assets/ArrowLeft-ZHARsvy9.js","assets/LinkBroken01-DGQh_3WZ.js","assets/ShoppingBag01-BG-1Jwuh.js","assets/Building02-ssxWkdBl.js","assets/CheckCircle-DiKVJkkJ.js","assets/ChevronUp-wLOc_NTT.js","assets/ChevronSelectorVertical-Dkzqp5pp.js","assets/UserSquare-BuJqx7Ns.js","assets/CreditCard01-DCL7xzU2.js","assets/DotsVertical-DZE2ktIm.js","assets/Image01-Doh_epPd.js","assets/Globe04-DLL93yaf.js","assets/SwitchHorizontal01-Dv53_XOE.js","assets/Key01-rqwReuZQ.js","assets/Link01-DiFWbMaR.js","assets/Monitor01-Cp7iEwN0.js","assets/Sun-CJr96mBh.js","assets/Play-C2hvYOyw.js","assets/Plus-v0YpByfM.js","assets/SearchMd-Bendi2p8.js","assets/Trash01-3M9m1iIs.js","assets/Upload01-DBgIGKf8.js","assets/User01-CT2R-iHD.js","assets/Users01-gQNjKybb.js","assets/XClose-Bpws6cjk.js","assets/format-time-CjIPQhCN.js","assets/differenceInSeconds-C3x8sHUj.js","assets/icon-button-DMzM4KWP.js","assets/file-type-icon-7-3yF331.js","assets/shell-layout-C7bQvu8M.js","assets/avatar-ByGDtOvp.js","assets/use-clock-tick-DWBHoA2Q.js","assets/command-Crl7raeC.js","assets/index-BVCIU8Mk.js","assets/integration-icon-D-qpZQt8.js","assets/project-icon-DXev8VIW.js","assets/new-project-dialog-BZdoOBOz.js","assets/repository-import-picker-DpjUG5YI.js","assets/use-navigate-to-agent-RUWGGNCj.js","assets/repository-picker-XHsJQrRg.js","assets/useInfiniteQuery-Cyz1DFAa.js","assets/infiniteQueryObserver-Bni-1Rrc.js","assets/collection-search-DdqYzjim.js","assets/use-debounced-value-SDDhu8Id.js","assets/required-auth-layout-BKYCK4WE.js","assets/use-org-sso-FN6Hp6_O.js","assets/shell-layout-CE2Eihra.css","assets/chat-draft-D0btcSjz.js","assets/select-XceA90ql.js","assets/index-BdQq_4o_.js","assets/tabs-Duy7ODee.js","assets/use-deco-credits-sdJPRntH.js","assets/toggle-group-m6bc6yjp.js","assets/use-open-billing-url-tDUbFoyb.js","assets/index-eP3gZugt.js","assets/checkbox-DSNt2gzr.js","assets/ai-providers-logos-DD3qZ33J.js","assets/popover-CZB8RxoJ.js","assets/drawer-3zPC7EI9.js","assets/input-C7fKNsaf.js","assets/suggestion-DIwPOBWx.js","assets/use-chat-layout-state-WRaaYm0y.js","assets/use-file-configs-CfW92ECv.js","assets/site-slug-DebpOoQq.js","assets/use-mcp-prompts-1ZUYIWAu.js","assets/use-org-fs-Bpw1hkjS.js","assets/question-004-sINsf4GQ.js","assets/use-members-BTcdjICA.js","assets/use-org-auth-client-qz-rdd-6.js","assets/feature-paywall-Cdd2Shxl.js","assets/plan-ladder-BNRju_Rr.js","assets/add-connection-dialog-CQiSl-Qe.js","assets/extract-connection-data-DQ0ThsQw.js","assets/metadata-D72DunRR.js","assets/connection-BVvM5npe.js","assets/url-slug-DEN8nCcZ.js","assets/connection-card-sWgF9uUo.js","assets/connection-slug-CITJ0kGN.js","assets/textarea-NyzjT40N.js","assets/use-connection-B2P9vQF_.js","assets/connection-form-helpers-Je0bq7c_.js","assets/authenticate-and-persist-oauth-DEaKhdcs.js","assets/mcp-oauth-DLnUq2f9.js","assets/mcp-oauth-7pqu8EiB.js","assets/collection-tabs-CWwn3uMq.js","assets/badge-XA4dRNYq.js","assets/use-infinite-scroll-lPN0NCUm.js","assets/useSuspenseInfiniteQuery-B0qRbG8m.js","assets/use-task-board-events-CZieAk2g.js","assets/input-Bwd_JSM8.css","assets/claim-phase-copy-DWZtPw6h.js","assets/sandbox-start-errors-BK_aDCyt.js","assets/pair-Dha2uqa_.js","assets/collapsible-DOY0YL_H.js","assets/content-blocks-o63cs2vh.js","assets/mcp-app-renderer-DSXHJ5Wt.js","assets/types-ZqGSA7tu.js","assets/omit-sandbox-map-jj4lCB2U.js","assets/sheet-wemU-aZ9.js","assets/use-thread-outputs-CHIrdXyI.js","assets/utils-BBHV2kqf.js","assets/scroll-area-NCHj5pvE.js","assets/monaco-editor-DMfRj7kt.js","assets/editor-BMb1eAhF.js","assets/calendar-CRpUCA4p.js","assets/rich-text-link-control-B-mX9xD1.js","assets/switch-J8K3vNdb.js","assets/core.esm-CIWIcR9H.js","assets/sortable.esm-jUEYWtPl.js","assets/combobox-D7N8SC25.js","assets/alert-dialog-Dr31Gqkz.js","assets/sandbox-url-D3mC8qhT.js","assets/search-input-CdXxg7YI.js","assets/asset-utils-CX1te1rQ.js","assets/sandbox-git-api-C7JbVL7R.js","assets/mustache-CEXj2Yiz.js","assets/page-seo-form-J-VUwESz.js","assets/use-section-preview-base-CoG0-wMI.js","assets/section-preview-url-7zfngvgW.js","assets/variant-matcher-override-3KgTJsm9.js"])))=>i.map(i=>d[i]);
2
+ import{r as v,aD as Pt,aW as Ye,aE as je,c as fe,b as Te,j as s,q as qn,D as Wn,K as Vs,s as Gn,v as Jn,e as qs,h as St,I as jn,B as He,w as Ws,a6 as Yn,aX as Gs,a2 as Xt,aY as Js,aV as Ys,a0 as En,a1 as Nn,l as zt,P as Tn,y as Qs,t as Cn}from"./index-V8pRA7Xy.js";import{A as Xs}from"./agent-view-guard-CyNRuQw7.js";import{F as Zs}from"./feature-gate-DGH8G4ta.js";import{a as er,b as jt,r as Qn,l as Xn,f as tr,w as nr}from"./chat-context-Cwuqjrlx.js";import{t as sr}from"./ChevronUp-wLOc_NTT.js";import{I as Zn,R as rr,S as ar,d as ir,T as or,U as lr,V as cr,W as dr,X as Rn,K as ur}from"./agent-icon-BTsTGfvr.js";import{a as mr}from"./UserSquare-BuJqx7Ns.js";import{s as fr}from"./Plus-v0YpByfM.js";import{P as pr,a as hr,b as gr}from"./popover-CZB8RxoJ.js";import{e as at,b as it,c as es,f as ts,C as ns,a as ss}from"./command-Crl7raeC.js";import{c as vr,a as br}from"./repository-binding-CGM8Ow1W.js";import{b as Zt}from"./sandbox-lifecycle-context-BrrAiqEe.js";import{e as xr}from"./backoff-CrEUbyZT.js";import{f as yr}from"./thread-intent-k2Km9Dmr.js";import{a as rs}from"./input-ynU6Ij5H.js";import{N as wr,c as kr,s as ot,n as en,d as as,f as Fe,v as is,h as Pr,u as Sr,j as jr,k as Er,l as Nr,m as Tr,o as Ln}from"./claim-phase-copy-DWZtPw6h.js";import{u as Cr}from"./use-mobile-D2A_YY4A.js";import{b as It,T as Ut,a as Ht}from"./tooltip-C2m8ePE-.js";import{T as tt}from"./toolbar-icon-button-BxO5B0Sy.js";import{b as Rr,a as Lr,u as os,g as Or,c as _r,B as Vt,P as Ar,r as Br,R as $r,d as Fr,e as tn,f as ls,h as Mr,i as Dr,j as Kr,l as zr,m as Ir,p as Ur,k as Hr,S as qt}from"./runnable-block-editor-aENhZJE9.js";import{w as bt,i as Vr}from"./variant-matcher-override-3KgTJsm9.js";import{r as qr,w as Wr,D as Gr,b as On,a as Jr}from"./section-preview-url-7zfngvgW.js";import{u as Yr}from"./use-fast-preview-draft-url-C5x2lifG.js";import{u as Qr,w as _n}from"./device-hint-D9SLM9ag.js";import{a as Xr,c as cs}from"./shell-layout-C7bQvu8M.js";import{u as ds,b as Zr}from"./use-sandbox-events-Cqb_Ym4F.js";import{u as Jt}from"./useQueries-Dpxh6EqM.js";import{i as ea}from"./LinkBroken01-DGQh_3WZ.js";import{u as us}from"./blocks-preview-workspace-context-C7bCK2dG.js";import{i as ta}from"./AlertCircle-9YsZUjmj.js";import{E as nn}from"./empty-state-DUChmUAz.js";import{M as na}from"./monaco-editor-DMfRj7kt.js";import{u as sa}from"./use-new-blocks-editor-APcQuu-Z.js";import{a as ra}from"./utils-BBHV2kqf.js";import{R as An,a as xt,b as Bn}from"./resizable-DBUNvXp7.js";import{r as aa}from"./virtual-mcp-CKveTc8W.js";import{d as ia}from"./delay-CnY5UFtP.js";import{a as Wt}from"./use-chat-layout-state-WRaaYm0y.js";import{G as $n}from"./repository-picker-XHsJQrRg.js";import{R as oa}from"./repository-import-picker-DpjUG5YI.js";import{r as la}from"./use-main-panel-tabs-Dsv5nepq.js";import{u as ca}from"./use-task-metadata-C-eJemLF.js";import{b as da}from"./thread-route-DbJLUn3d.js";import"./use-panel-navigate-BcP-4Jk4.js";import"./use-project-scope-Ds7ag806.js";import"./feature-paywall-Cdd2Shxl.js";import"./plan-ladder-BNRju_Rr.js";import"./use-decopilot-events-CvdvLxq8.js";import"./watch-sse-pool-SMEeDp6D.js";import"./task-board-DPQxW0jP.js";import"./schema-DstuA0HH.js";import"./autosend-B7QA12Tw.js";import"./use-mcp-client-CqsBL7uD.js";import"./auth-CM-DdMTE.js";import"./use-ai-providers-jw2MMLa5.js";import"./use-chat-navigation-FGqN2bea.js";import"./location-BjlyegC2.js";import"./use-organization-settings-CvwbmZME.js";import"./Tool01-B-kpMrMZ.js";import"./ArrowUp-D1danNae.js";import"./ArrowLeft-ZHARsvy9.js";import"./ShoppingBag01-BG-1Jwuh.js";import"./ZoomOut-CVwCO-_8.js";import"./Building02-ssxWkdBl.js";import"./CheckCircle-DiKVJkkJ.js";import"./ChevronSelectorVertical-Dkzqp5pp.js";import"./Copy01-Cr5x9Tlu.js";import"./CreditCard01-DCL7xzU2.js";import"./DotsVertical-DZE2ktIm.js";import"./Image01-Doh_epPd.js";import"./Globe04-DLL93yaf.js";import"./SwitchHorizontal01-Dv53_XOE.js";import"./Key01-rqwReuZQ.js";import"./Link01-DiFWbMaR.js";import"./Monitor01-Cp7iEwN0.js";import"./Sun-CJr96mBh.js";import"./Play-C2hvYOyw.js";import"./SearchMd-Bendi2p8.js";import"./Trash01-3M9m1iIs.js";import"./Upload01-DBgIGKf8.js";import"./User01-CT2R-iHD.js";import"./Users01-gQNjKybb.js";import"./XClose-Bpws6cjk.js";import"./index-BVCIU8Mk.js";import"./sandbox-start-errors-BK_aDCyt.js";import"./slugify-CEUa2lfQ.js";import"./usage-stats-Dn2OeFoS.js";import"./tool-namespace-CPm912_s.js";import"./form-BUOiUceD.js";import"./label-3hwvsVXP.js";import"./utils-CVEq3hMx.js";import"./markdown-C_bpsjlQ.js";import"./use-copy-Cu3Byc8S.js";import"./format-time-CjIPQhCN.js";import"./differenceInSeconds-C3x8sHUj.js";import"./icon-button-DMzM4KWP.js";import"./file-type-icon-7-3yF331.js";import"./chat-draft-D0btcSjz.js";import"./select-XceA90ql.js";import"./index-BdQq_4o_.js";import"./index-CvkEcM9-.js";import"./tabs-Duy7ODee.js";import"./use-deco-credits-sdJPRntH.js";import"./toggle-group-m6bc6yjp.js";import"./use-open-billing-url-tDUbFoyb.js";import"./index-eP3gZugt.js";import"./checkbox-DSNt2gzr.js";import"./ai-providers-logos-DD3qZ33J.js";import"./avatar-ByGDtOvp.js";import"./drawer-3zPC7EI9.js";import"./input-C7fKNsaf.js";import"./suggestion-DIwPOBWx.js";import"./use-mcp-prompts-1ZUYIWAu.js";import"./use-org-fs-Bpw1hkjS.js";import"./useInfiniteQuery-Cyz1DFAa.js";import"./infiniteQueryObserver-Bni-1Rrc.js";import"./question-004-sINsf4GQ.js";import"./use-members-BTcdjICA.js";import"./use-org-auth-client-qz-rdd-6.js";import"./add-connection-dialog-CQiSl-Qe.js";import"./collection-search-DdqYzjim.js";import"./extract-connection-data-DQ0ThsQw.js";import"./metadata-D72DunRR.js";import"./connection-BVvM5npe.js";import"./url-slug-DEN8nCcZ.js";import"./connection-card-sWgF9uUo.js";import"./connection-slug-CITJ0kGN.js";import"./integration-icon-D-qpZQt8.js";import"./textarea-NyzjT40N.js";import"./use-connection-B2P9vQF_.js";import"./connection-form-helpers-Je0bq7c_.js";import"./authenticate-and-persist-oauth-DEaKhdcs.js";import"./mcp-oauth-DLnUq2f9.js";import"./mcp-oauth-7pqu8EiB.js";import"./collection-tabs-CWwn3uMq.js";import"./badge-XA4dRNYq.js";import"./use-infinite-scroll-lPN0NCUm.js";import"./useSuspenseInfiniteQuery-B0qRbG8m.js";import"./use-task-board-events-CZieAk2g.js";import"./pair-Dha2uqa_.js";import"./collapsible-DOY0YL_H.js";import"./use-clock-tick-DWBHoA2Q.js";import"./content-blocks-o63cs2vh.js";import"./mcp-app-renderer-DSXHJ5Wt.js";import"./types-ZqGSA7tu.js";import"./omit-sandbox-map-jj4lCB2U.js";import"./sheet-wemU-aZ9.js";import"./use-navigate-to-agent-RUWGGNCj.js";import"./use-thread-outputs-CHIrdXyI.js";import"./scroll-area-NCHj5pvE.js";import"./calendar-CRpUCA4p.js";import"./rich-text-link-control-B-mX9xD1.js";import"./switch-J8K3vNdb.js";import"./core.esm-CIWIcR9H.js";import"./sortable.esm-jUEYWtPl.js";import"./combobox-D7N8SC25.js";import"./alert-dialog-Dr31Gqkz.js";import"./sandbox-url-D3mC8qhT.js";import"./search-input-CdXxg7YI.js";import"./use-debounced-value-SDDhu8Id.js";import"./use-file-configs-CfW92ECv.js";import"./asset-utils-CX1te1rQ.js";import"./sandbox-git-api-C7JbVL7R.js";import"./project-icon-DXev8VIW.js";import"./new-project-dialog-BZdoOBOz.js";import"./required-auth-layout-BKYCK4WE.js";import"./use-org-sso-FN6Hp6_O.js";import"./editor-BMb1eAhF.js";import"./site-slug-DebpOoQq.js";import"./use-mcp-tools-D_yHtzDx.js";import"./resolve-tab-icon-C3-zJZHp.js";const ua={mode:"none",iframeBase:null,showBlockingOverlay:!1,showWakingPill:!1};function ma(t){const{previewState:e,progressStatus:n,fastPreviewActive:r=!1,fastPreviewReady:i=!1,codingSession:u=!1}=t,l=u?null:t.previewServerUrl;return t.localPreviewUrl?{mode:"sandbox",iframeBase:t.localPreviewUrl,showBlockingOverlay:!1,showWakingPill:!1}:e.kind==="suspended"||e.kind==="errored"?ua:r&&i&&l?{mode:"production",iframeBase:l,showBlockingOverlay:!1,showWakingPill:!1}:!r&&e.kind==="iframe"&&n!=="doing"?{mode:"sandbox",iframeBase:e.previewUrl,showBlockingOverlay:!1,showWakingPill:!1}:l?{mode:"production",iframeBase:l,showBlockingOverlay:!1,showWakingPill:!0}:{mode:"none",iframeBase:null,showBlockingOverlay:!0,showWakingPill:!1}}const fa=1e4,pa=1e3,ha=3e4;function ga({iframeRef:t,src:e,active:n}){const r=v.useRef(0),i=v.useRef(null),u=v.useRef(null),l=v.useRef(e),c=v.useRef(n);l.current=e,c.current=n;const o=()=>{i.current&&clearTimeout(i.current),u.current&&clearTimeout(u.current),i.current=null,u.current=null},d=()=>{i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{i.current=null,h()},fa)},h=()=>{if(!c.current||!l.current)return;u.current&&clearTimeout(u.current);const E=xr(ha,pa,r.current,2,.5);r.current+=1,u.current=setTimeout(()=>{u.current=null;const b=t.current,P=l.current;!b||!P||!c.current||(b.src=P,d())},E)},m=()=>{r.current=0,o()},p=()=>{i.current&&(clearTimeout(i.current),i.current=null),h()};return v.useEffect(()=>{if(o(),r.current=0,!(!n||!e))return d(),o},[e,n]),{handleLoad:m,handleError:p}}const va=Pt({tag:je(),id:je(),classes:je(),text:je(),html:je(),manifestKey:je().nullable(),componentName:je().nullable(),parents:je(),url:je(),path:je(),viewport:Pt({width:Ye(),height:Ye()}),position:Pt({x:Ye(),y:Ye()})}),ba=`(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 xa(t,e){const n=t.map(()=>null),r=[];for(let p=0;p<t.length;p++)t[p]!==null&&r.push(p);const i=r.length,u=e.length;if(!i||!u)return n;const l=(p,E)=>{const b=t[r[p]??0];return!b||!b.length?1:b.indexOf(e[E]??"")>=0?2:0},c=[],o=[];for(let p=0;p<=i;p++)c.push(new Array(u+1).fill(0)),o.push(new Array(u+1).fill(2));for(let p=1;p<=i;p++){const E=c[p-1]??[],b=c[p]??[],P=o[p]??[];for(let g=1;g<=u;g++){let j=E[g]??0,N=2;const y=b[g-1]??0;y>j&&(j=y,N=0);const w=l(p-1,g-1),k=(E[g-1]??0)+w;w>0&&k>j&&(j=k,N=1),b[g]=j,P[g]=N}}let d=0,h=i,m=u;for(;h>0&&m>0;){const p=o[h]?.[m]??2;p===1?(n[r[h-1]??0]=m-1,d++,h--,m--):p===0?m--:h--}if(d===0&&u===i)for(let p=0;p<i;p++)n[r[p]??0]=p;return n}const ya=Pt({sectionIndex:Ye(),manifestKey:je(),clickSeq:Ye()}),Fn=`(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 = ${xa.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 Yt(t,e){let n=t,r=typeof n?.__resolveType=="string"?n.__resolveType:"";for(let i=0;r&&i<5;i++){const u=e[r];if(u&&typeof u=="object"&&"__resolveType"in u){const l=u.__resolveType;if(typeof l=="string"&&l&&l!==r){n=u,r=l;continue}}break}if(!r)return[];if(r.includes("flags/multivariate")){const i=Array.isArray(n.variants)?n.variants:[];if(i.length===0||i.every(c=>c?.rule?.__resolveType===wr))return null;const l=[];for(const c of i){const o=c?.value;if(o&&typeof o=="object")for(const d of Yt(o,e)??[])l.includes(d)||l.push(d)}return l}if(kr(r)){const i=n.section&&typeof n.section=="object"?Yt(n.section,e):[];return i===null?null:i.length?[r,...i]:[r]}return[r]}function Je(t){return t.replace(/[`*_]/g,"\\$&")}function wa(t,e){const n=[`The user selected an element on the live preview and asked: **"${Je(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&&n.push(`**Section resolveType:** \`${Je(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 r=`<${t.tag}${t.classes?` class="${Je(t.classes)}"`:""}>`;n.push(`**Clicked element:** \`${r}\``),t.parents&&n.push(`**DOM breadcrumb:** ${Je(t.parents)} > ${t.tag}`),t.text&&n.push(`**Text content:** "${Je(t.text)}"`),t.componentName&&n.push(`**Component name:** ${Je(t.componentName)}`);const i=t.html.replace(/```/g,"`` `");return n.push("","**HTML snippet:**","```html",i,"```"),n.push("","Please read the source file, locate the element, and apply the requested change."),n.join(`
518
+ `)}function ka(t,e,n=320,r=44,i=12){const{x:u,y:l}=t,{width:c,height:o}=e,d=Math.max(i,Math.min(u-n/2,c-n-i)),m=l/o>.68?Math.max(i,l-r-18):Math.min(l+18,o-r-i);return{leftPct:d/c*100,topPct:m/o*100}}function Pa(t){const e=fe.c(45),{element:n,onDismiss:r}=t,[i,u]=v.useState(""),l=v.useRef(null),{sendMessage:c}=er(),{openSidePanel:o}=Xr(),d=Te();let h;e[0]!==n||e[1]!==i||e[2]!==r||e[3]!==o||e[4]!==c?(h=()=>{if(!i.trim())return;const $=wa(n,i);o(),c({parts:[{type:"text",text:$}]}),r()},e[0]=n,e[1]=i,e[2]=r,e[3]=o,e[4]=c,e[5]=h):h=e[5];const m=h;let p;e[6]!==n.position||e[7]!==n.viewport?(p=ka(n.position,n.viewport),e[6]=n.position,e[7]=n.viewport,e[8]=p):p=e[8];const E=p,b=`${E.leftPct}%`,P=`${E.topPct}%`;let g;e[9]!==b||e[10]!==P?(g={left:b,top:P,width:"320px"},e[9]=b,e[10]=P,e[11]=g):g=e[11];let j;e[12]!==m?(j=$=>{$.preventDefault(),m()},e[12]=m,e[13]=j):j=e[13];let N;e[14]===Symbol.for("react.memo_cache_sentinel")?(N=$=>u($.target.value),e[14]=N):N=e[14];let y;e[15]!==r?(y=$=>{$.key==="Escape"&&r()},e[15]=r,e[16]=y):y=e[16];let w;e[17]!==d?(w=d("sandbox.visualEditorPrompt.inputPlaceholder"),e[17]=d,e[18]=w):w=e[18];let k;e[19]!==i||e[20]!==y||e[21]!==w?(k=s.jsx("input",{ref:l,autoFocus:!0,type:"text",value:i,onChange:N,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]=k):k=e[22];let x;e[23]!==i?(x=i.trim(),e[23]=i,e[24]=x):x=e[24];const B=!x;let S;e[25]!==d?(S=d("sandbox.visualEditorPrompt.sendButton"),e[25]=d,e[26]=S):S=e[26];let I;e[27]!==d?(I=d("sandbox.visualEditorPrompt.sendButton"),e[27]=d,e[28]=I):I=e[28];let F;e[29]!==I?(F=s.jsx("title",{children:I}),e[29]=I,e[30]=F):F=e[30];let M;e[31]===Symbol.for("react.memo_cache_sentinel")?(M=s.jsx("path",{d:"M5 9V1M1 5l4-4 4 4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e[31]=M):M=e[31];let L;e[32]!==F?(L=s.jsxs("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none","aria-hidden":"true",children:[F,M]}),e[32]=F,e[33]=L):L=e[33];let R;e[34]!==B||e[35]!==S||e[36]!==L?(R=s.jsx("button",{type:"submit",disabled:B,className:"flex h-6 w-6 shrink-0 items-center justify-center rounded-lg bg-foreground text-background transition-opacity disabled:opacity-30",title:S,children:L}),e[34]=B,e[35]=S,e[36]=L,e[37]=R):R=e[37];let U;e[38]!==k||e[39]!==R||e[40]!==j?(U=s.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:j,children:[k,R]}),e[38]=k,e[39]=R,e[40]=j,e[41]=U):U=e[41];let D;return e[42]!==U||e[43]!==g?(D=s.jsx("div",{className:"absolute z-30 pointer-events-none",style:g,children:U}),e[42]=U,e[43]=g,e[44]=D):D=e[44],D}const Mn="site-links",Sa=/details?page|\bpdp\b/i,ja=/listingpage|\bplp\b/i;function Ea(t,e,n){const r=new Set;for(const c of n)Sa.test(c)&&r.add("product"),ja.test(c)&&r.add("category");const i=ot(en(t)),u=i[i.length-1],l=i[i.length-2];return u?.type==="text"&&u.text==="/p"&&l?.type==="param"&&l.name===e&&r.add("product"),e==="*"&&i.some(c=>c.type==="param"&&c.name==="*")&&r.add("category"),r}const Na=["rosa","preto","pink","black"];function yt(t,e){const n=e.trim();return n?t(n):Na.flatMap(r=>t(r))}function Ta(t,e){const n=e.trim(),r=[];/^\d+$/.test(n)&&r.push({resolveType:t,props:{ids:[n]}});const u=n.includes("-")&&!/\s/.test(n)?n.replace(/-+/g," "):n;return r.push({resolveType:t,props:{query:u,count:10}}),r}const ms=new Set(["vtex","shopify","shopify-mcp","magento","wake","linx","linx-impulse","nuvemshop","vnda","wap","salesforce"]);function sn(t){return t.split("/")[0]??""}function Ca(t){const e=new Set;for(const n of t){const r=sn(n);ms.has(r)&&e.add(r)}return e}function Ra(t,e){const n=sn(t);return!ms.has(n)||e.size===0?!0:e.has(n)}const La=[{kind:"product",test:t=>t==="vtex/loaders/intelligentSearch/productList.ts",clientFilter:!1,buildRequests:(t,e)=>yt(n=>Ta(t,n),e),optionsFromPayload:wt},{kind:"product",test:t=>/magento\/.*products?\/list(\.tsx?)?$/i.test(t),clientFilter:!1,buildRequests:(t,e)=>yt(n=>[{resolveType:t,props:{props:{search:n,pageSize:10,currentPage:1}}}],e),optionsFromPayload:wt},{kind:"product",test:t=>/algolia\/.*products?\/(list|suggestions)(\.tsx?)?$/i.test(t),clientFilter:!1,buildRequests:(t,e)=>yt(n=>[{resolveType:t,props:{term:n,hitsPerPage:10}}],e),optionsFromPayload:wt},{kind:"product",test:t=>/products?\/list(\.tsx?)?$/i.test(t),clientFilter:!1,buildRequests:(t,e)=>yt(n=>[{resolveType:t,props:{query:n,term:n,count:10,hitsPerPage:10}}],e),optionsFromPayload:wt},{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:Ma}];function Oa(t,e,n=new Set){const r=[...e],i=c=>{const o=[];for(const d of La){if(d.kind!==c)continue;const h=r.find(m=>d.test(m)&&Ra(m,n));h&&o.push({cand:d,resolveType:h})}return o.find(d=>n.has(sn(d.resolveType)))??o[0]},u=(c,o,d)=>({kind:c.kind,id:`${c.kind}:${o}`,resolveType:o,clientFilter:c.clientFilter,isFallback:d,buildRequests:h=>c.buildRequests(o,h),optionsFromPayload:c.optionsFromPayload}),l=[];for(const c of["product","category"]){if(!t.has(c))continue;const o=i(c);o&&l.push(u(o.cand,o.resolveType,!1))}return t.size>0&&l.push(_a(t.has("category")?"category":"product")),l}function _a(t){return{kind:t,id:Mn,resolveType:Mn,clientFilter:!0,isFallback:!0,homepageLinks:!0,optionsFromPayload:(e,n)=>Ua(e,n)}}function Ue(t){return t&&typeof t=="object"&&!Array.isArray(t)?t:null}function Aa(t,e,n){const r=new Set,i=new Set,u=l=>{if(Array.isArray(l)){for(const d of l)u(d);return}const c=Ue(l);if(!c)return;const o=c.__resolveType;if(typeof o=="string"){if(n(o))r.add(o);else if(o in e&&!i.has(o)){i.add(o);const d=Ue(e[o])?.__resolveType;typeof d=="string"&&n(d)&&r.add(o),u(e[o])}}for(const d of Object.values(c))u(d)};return u(t),r}function fs(t){const e=new Set,n=[];for(const r of t)for(const i of r)e.has(i.value)||(e.add(i.value),n.push(i));return n}function ps(t){try{return decodeURIComponent(t)}catch{return t}}function Ba(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function $a(t){const e=[];let n="^";for(const r of t)r.type==="text"?n+=Ba(r.text):(e.push(r.name),n+=r.name==="*"?"(.+)":"([^/]+)");return{pattern:new RegExp(`${n}$`),order:e}}function hs(t,e,n){if(typeof t!="string"||!t)return null;let r;try{r=new URL(t,"https://placeholder.invalid").pathname}catch{return null}r=r.replace(/\/+$/,"");const i=ot(en(e)),{pattern:u,order:l}=$a(i),c=l.indexOf(n);if(c===-1)return null;const o=r.match(u);if(!o)return null;const d=o[c+1]?.replace(/^\/+|\/+$/g,"");return d?ps(d):null}function wt(t,e){const n=Ue(t),r=Array.isArray(t)?t:Array.isArray(n?.products)?n.products:Array.isArray(n?.list)?n.list:[],i=[],u=new Set;for(const l of r){const c=Ue(l);if(!c)continue;const o=hs(c.url,e.template,e.paramName);if(!o||u.has(o))continue;u.add(o);const d=Ue(c.isVariantOf),h=typeof d?.name=="string"&&d.name||typeof c.name=="string"&&c.name||o,m=Array.isArray(c.image)?Ue(c.image[0]):null,p=typeof m?.url=="string"?m.url:void 0;i.push({value:o,label:h,image:p})}return i}function Fa(t){if(typeof t!="string"||!t)return null;let e;try{e=new URL(t,"https://placeholder.invalid").pathname}catch{return null}const n=e.replace(/^\/+|\/+$/g,"");return n?ps(n):null}function Ma(t){const e=[],n=new Set,r=(i,u)=>{const l=Ue(i);if(!l)return;const c=typeof l.name=="string"&&l.name?l.name:"",o=c?[...u,c]:u,d=Fa(l.url);if(d&&!n.has(d)&&(n.add(d),e.push({value:d,label:o.join(" › ")||d})),Array.isArray(l.children))for(const h of l.children)r(h,o)};if(Array.isArray(t))for(const i of t)r(i,[]);return e}const Da=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 Ka(t){return(t.split("/").filter(Boolean).pop()??t).replace(/[-_]+/g," ").replace(/\s+/g," ").trim().replace(/\b\w/g,n=>n.toUpperCase())}function za(t){if(typeof t!="string"||!t)return[];const e=[],n=/<a\b[^>]*?\bhref="([^"]+)"[^>]*>([\s\S]*?)<\/a>/gi;let r,i=0;for(;(r=n.exec(t))!==null&&i++<5e3;){const u=r[1]??"",l=(r[2]??"").replace(/<[^>]*>/g," ").replace(/\s+/g," ").trim();e.push({href:u,text:l})}return e}function Ia(t){if(typeof t!="string"||!t)return[];const e=[],n=new Set,r=/"@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,l=0;for(;(u=r.exec(t))!==null&&l++<3e3;){const c=(u[1]??"").replace(/\\\//g,"/");if(!c||n.has(c))continue;n.add(c);const o=t.slice(u.index,u.index+900).match(i)?.[1]?.replace(/\\\//g,"/");e.push({url:c,name:u[2]??"",image:o||void 0})}return e}function Ua(t,e){const n=[],r=new Set,i=(u,l,c,o)=>{if(n.length>=200)return;const d=hs(u,e.template,e.paramName);!d||r.has(d)||e.paramName==="*"&&/(^|\/)p$/.test(d)||c==="category"&&Da.has(d.split("/")[0]??"")||(r.add(d),n.push({value:d,label:l&&l.length<=80?l:Ka(d),kind:c,image:o}))};for(const{url:u,name:l,image:c}of Ia(t))i(u,l,"product",c);for(const{href:u,text:l}of za(t))u.startsWith("/")&&!u.startsWith("//")&&i(u,l,"category");return n}function nt(t,e,n=50){const r=e.trim().toLowerCase();return(r?t.filter(u=>u.label.toLowerCase().includes(r)||u.value.toLowerCase().includes(r)):t).slice(0,n)}const gs=1e4;function Ha(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 Va(t,{resolveType:e,props:n}){const r=await fetch(Rr(t),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({__resolveType:e,...n}),signal:AbortSignal.timeout(gs)});if(!r.ok)throw new Error(`Failed to fetch options: ${r.status}`);return r.json()}async function Dn(t,e){const n=await fetch(Lr(t,e),{signal:AbortSignal.timeout(gs)});if(!n.ok)throw new Error(`Failed to fetch page: ${n.status}`);return n.text()}async function qa(t,e,n){const r=e.optionsFromPayload(await Dn(t,"/"),n),i=r.find(l=>l.kind==="category");if(!i)return r;const u=Fe(n.template,{[n.paramName]:i.value});if(u==="/")return r;try{const l=e.optionsFromPayload(await Dn(t,u),n).filter(c=>c.kind==="product");return fs([r,l])}catch{return r}}function Wa(t,e,n){return Vs.sandboxInvoke(`${t.orgSlug}/${t.virtualMcpId}/${t.branch}`,`path-param-${e.id}:${e.clientFilter?"":n}`)}async function Ga(t,e,n,r){if(e.homepageLinks)return qa(t,e,r);const i=e.buildRequests?.(n)??[];if(i.length===0)return[];const u=await Promise.allSettled(i.map(c=>Va(t,c))),l=u.filter(c=>c.status==="fulfilled").map(c=>c.value);if(l.length===0){const c=u.find(o=>o.status==="rejected");throw c?c.reason:new Error("Failed to fetch options")}return fs(l.map(c=>e.optionsFromPayload(c,r)))}function Qt(t,e,n,r,i){return{queryKey:Wa(t,e,n),queryFn:()=>Ga(t,e,n,r),enabled:i,staleTime:6e4,retry:1}}function st(t){const e=fe.c(16),{heading:n,iconKind:r,options:i,template:u,paramName:l,keyPrefix:c,onSelect:o}=t;if(i.length===0)return null;let d;if(e[0]!==r||e[1]!==c||e[2]!==o||e[3]!==i||e[4]!==l||e[5]!==u){let m;e[7]!==r||e[8]!==c||e[9]!==o||e[10]!==l||e[11]!==u?(m=p=>s.jsxs(it,{value:`${c}:${p.value}`,className:"gap-3 py-2",onSelect:()=>o(p.value),children:[r==="product"&&s.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?s.jsx("img",{src:p.image,alt:"",referrerPolicy:"no-referrer",className:"h-full w-full object-cover"}):s.jsx(Zn,{size:14,className:"text-muted-foreground"})}),s.jsxs("span",{className:"min-w-0 flex-1",children:[s.jsx("span",{className:"block truncate text-sm",children:p.label}),s.jsx("span",{className:"block truncate text-xs text-muted-foreground",children:Fe(u,{[l]:p.value})})]})]},`${c}:${p.value}`),e[7]=r,e[8]=c,e[9]=o,e[10]=l,e[11]=u,e[12]=m):m=e[12],d=i.map(m),e[0]=r,e[1]=c,e[2]=o,e[3]=i,e[4]=l,e[5]=u,e[6]=d}else d=e[6];let h;return e[13]!==n||e[14]!==d?(h=s.jsx(at,{heading:n,children:d}),e[13]=n,e[14]=d,e[15]=h):h=e[15],h}function Kn(t){const e=fe.c(2),{text:n}=t;let r;return e[0]!==n?(r=s.jsx("div",{className:"px-2 py-2 text-xs text-muted-foreground",children:n}),e[0]=n,e[1]=r):r=e[1],r}function Ja(t){const e=fe.c(52),{sources:n,template:r,paramName:i,value:u,sandboxRef:l,onCommit:c}=t,o=Te(),[d,h]=v.useState(!1),[m,p]=v.useState(""),[E,b]=v.useState(""),P=v.useRef(null),g=i==="*"?o("sandbox.preview.catchAllParamLabel"):`:${i}`,j=Ha(o),y=[...new Set(n.map(K=>j[K.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 k=w,x={template:r,paramName:i};let B;e[3]!==m?(B=(K,T)=>({source:K,query:T,options:K.clientFilter?nt(T.data??[],m):T.data??[]}),e[3]=m,e[4]=B):B=e[4];const S=B,I=n.filter(si),F=n.filter(ni),M=Jt({queries:I.map(K=>Qt(l,K,E,x,d))});let L;e[5]!==M||e[6]!==S?(L=(K,T)=>S(K,M[T]),e[5]=M,e[6]=S,e[7]=L):L=e[7];const R=I.map(L),U=R.length===0||R.every(ti),D=Jt({queries:F.map(K=>Qt(l,K,E,x,d&&U))});let $;e[8]!==D||e[9]!==S?($=(K,T)=>S(K,D[T]),e[8]=D,e[9]=S,e[10]=$):$=e[10];const H=F.map($),W=U?H:R,V=W.length===1&&W[0]?.source.homepageLinks?W[0]:null,O=V&&!V.query.isLoading&&!V.query.isError?V?.query.data??[]:[],ne=nt(O.filter(ei),m),q=nt(O.filter(Za),m),G=ne.length>0&&q.length>0,Q=K=>{h(K),P.current&&clearTimeout(P.current),p(K?u:""),b(K?u:"")};let Y;e[11]===Symbol.for("react.memo_cache_sentinel")?(Y=K=>{p(K),P.current&&clearTimeout(P.current),P.current=setTimeout(()=>{b(K)},300)},e[11]=Y):Y=e[11];const te=Y,ae=K=>{c(K),Q(!1)},X=as(m),J=Fe(r,{[i]:X}),se=Wn,ve=qn,pe="flex h-[85svh] flex-col gap-0 overflow-hidden p-0 sm:h-[520px] sm:max-w-[560px]",de=Xa;let ie;e[12]!==g||e[13]!==o?(ie=o("sandbox.pathParamPickerChip.pickValueTitle",{paramLabel:g}),e[12]=g,e[13]=o,e[14]=ie):ie=e[14];let ue;e[15]!==ie?(ue=s.jsx(Gn,{className:"sr-only",children:s.jsx(Jn,{children:ie})}),e[15]=ie,e[16]=ue):ue=e[16];let be;e[17]===Symbol.for("react.memo_cache_sentinel")?(be=s.jsx(Zn,{size:16,className:"shrink-0 text-foreground"}),e[17]=be):be=e[17];let Z;e[18]!==o?(Z=o("sandbox.pathParamPickerChip.pickValueHeading"),e[18]=o,e[19]=Z):Z=e[19];let oe;e[20]!==g?(oe=s.jsx("span",{className:"rounded-sm bg-special/15 px-1 py-0.5 font-mono text-[12px] text-special",children:g}),e[20]=g,e[21]=oe):oe=e[21];let he;e[22]!==Z||e[23]!==oe?(he=s.jsxs("div",{className:"flex h-12 shrink-0 items-center gap-3 border-b border-border px-4",children:[be,s.jsxs("span",{className:"text-sm font-medium text-foreground",children:[Z," ",oe]})]}),e[22]=Z,e[23]=oe,e[24]=he):he=e[24];const ge=ts,Me=!1,Oe="min-h-0 flex-1";let _e;e[25]!==k||e[26]!==m?(_e=s.jsx(ns,{autoFocus:!0,placeholder:k,value:m,onValueChange:te}),e[25]=k,e[26]=m,e[27]=_e):_e=e[27];const Ve=es,ye="flex max-h-none min-h-0 flex-1 flex-col overflow-hidden";let xe;e[28]!==o?(xe=o("sandbox.pathParamPickerChip.noResults"),e[28]=o,e[29]=xe):xe=e[29];let Ee;e[30]!==xe?(Ee=s.jsx(ss,{children:xe}),e[30]=xe,e[31]=Ee):Ee=e[31];const De=X&&s.jsx(at,{className:"shrink-0",children:s.jsxs(it,{value:`__raw__:${X}`,className:"gap-3 py-2",onSelect:()=>ae(X),children:[s.jsx("span",{className:"flex h-10 w-10 shrink-0 items-center justify-center rounded-md border border-dashed border-border bg-muted",children:s.jsx(ea,{size:14,className:"text-muted-foreground"})}),s.jsxs("span",{className:"min-w-0 flex-1",children:[s.jsx("span",{className:"block truncate text-sm",children:o("sandbox.pathParamPickerChip.useRawValue",{rawTerm:X,paramLabel:g})}),s.jsx("span",{className:"block truncate text-xs text-muted-foreground",children:J})]})]})}),Ae=G?s.jsxs("div",{className:"flex min-h-0 flex-1",children:[s.jsx("div",{className:"min-w-0 flex-1 overflow-y-auto border-r border-border",children:s.jsx(st,{heading:j.category.heading,iconKind:"category",options:ne,template:r,paramName:i,keyPrefix:`${V?.source.id}:cat`,onSelect:ae})}),s.jsx("div",{className:"min-w-0 flex-1 overflow-y-auto",children:s.jsx(st,{heading:j.product.heading,iconKind:"product",options:q,template:r,paramName:i,keyPrefix:`${V?.source.id}:prod`,onSelect:ae})})]}):s.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto",children:W.map(K=>{const{source:T,query:me,options:$e}=K,{noun:Et}=j[T.kind];if(me.isLoading)return s.jsx(Kn,{text:o("sandbox.pathParamPickerChip.loading",{noun:Et})},T.id);if(me.isError)return s.jsx(Kn,{text:o("sandbox.pathParamPickerChip.couldNotLoad")},T.id);if(T.homepageLinks){const Qe=me.data??[];return s.jsxs(v.Fragment,{children:[s.jsx(st,{heading:j.category.heading,iconKind:"category",options:nt(Qe.filter(Qa),m),template:r,paramName:i,keyPrefix:`${T.id}:cat`,onSelect:ae}),s.jsx(st,{heading:j.product.heading,iconKind:"product",options:nt(Qe.filter(Ya),m),template:r,paramName:i,keyPrefix:`${T.id}:prod`,onSelect:ae})]},T.id)}return s.jsx(st,{heading:W.length>1?j[T.kind].heading:void 0,iconKind:T.kind,options:$e,template:r,paramName:i,keyPrefix:T.id,onSelect:ae},T.id)})});let Be;e[32]!==Ve||e[33]!==Ee||e[34]!==De||e[35]!==Ae?(Be=s.jsxs(Ve,{className:ye,children:[Ee,De,Ae]}),e[32]=Ve,e[33]=Ee,e[34]=De,e[35]=Ae,e[36]=Be):Be=e[36];let we;e[37]!==ge||e[38]!==_e||e[39]!==Be?(we=s.jsxs(ge,{shouldFilter:Me,className:Oe,children:[_e,Be]}),e[37]=ge,e[38]=_e,e[39]=Be,e[40]=we):we=e[40];let Ce;e[41]!==ve||e[42]!==ue||e[43]!==he||e[44]!==we||e[45]!==de?(Ce=s.jsxs(ve,{className:pe,onClick:de,children:[ue,he,we]}),e[41]=ve,e[42]=ue,e[43]=he,e[44]=we,e[45]=de,e[46]=Ce):Ce=e[46];let Ke;return e[47]!==se||e[48]!==Q||e[49]!==d||e[50]!==Ce?(Ke=s.jsx(se,{open:d,onOpenChange:Q,children:Ce}),e[47]=se,e[48]=Q,e[49]=d,e[50]=Ce,e[51]=Ke):Ke=e[51],s.jsxs(s.Fragment,{children:[s.jsx("button",{type:"button",title:o("sandbox.pathParamPickerChip.buttonTitle",{paramLabel:g}),className:"max-w-64 shrink-0 cursor-pointer truncate rounded-lg bg-special/15 px-1 py-0.5 text-[12px] text-special hover:bg-special/25",onClick:K=>{K.stopPropagation(),Q(!0)},children:u||g}),Ke]})}function Ya(t){return t.kind==="product"}function Qa(t){return t.kind!=="product"}function Xa(t){return t.stopPropagation()}function Za(t){return t.kind==="product"}function ei(t){return t.kind!=="product"}function ti(t){return!t.query.isLoading&&(t.query.isError||t.options.length===0)}function ni(t){return t.isFallback}function si(t){return!t.isFallback}function ri(t){const e=fe.c(8),{sources:n,template:r,paramName:i,sandboxRef:u,onFill:l}=t;let c,o;if(e[0]!==i||e[1]!==u||e[2]!==n||e[3]!==r){const E={template:r,paramName:i},b=n.filter(ai);o=Jt,c=b.map(P=>Qt(u,P,"",E,!0)),e[0]=i,e[1]=u,e[2]=n,e[3]=r,e[4]=c,e[5]=o}else c=e[4],o=e[5];let d;e[6]!==c?(d={queries:c},e[6]=c,e[7]=d):d=e[7];const h=o(d),[m,p]=v.useState(!1);if(!m)for(const E of h){if(E.isLoading)break;const b=E.data?.[0];if(b){p(!0),queueMicrotask(()=>l(b.value));break}}return null}function ai(t){return!t.isFallback}function ii(t){const e=fe.c(31),{name:n,value:r,onCommit:i}=t,u=Te(),[l,c]=v.useState(r),[o,d]=v.useState(!1),h=v.useRef(!1);let m;e[0]!==n||e[1]!==u?(m=n==="*"?u("sandbox.preview.catchAllParamLabel"):`:${n}`,e[0]=n,e[1]=u,e[2]=m):m=e[2];const p=m,E=l||p;let b;e[3]!==E?(b=s.jsx("span",{"aria-hidden":!0,className:"invisible whitespace-pre px-1 py-0.5 text-[12px]",children:E}),e[3]=E,e[4]=b):b=e[4];let P;e[5]!==p||e[6]!==u?(P=u("sandbox.preview.valueForParam",{label:p}),e[5]=p,e[6]=u,e[7]=P):P=e[7];let g,j;e[8]===Symbol.for("react.memo_cache_sentinel")?(g=S=>c(S.target.value),j=()=>d(!0),e[8]=g,e[9]=j):(g=e[8],j=e[9]);let N;e[10]!==r?(N=S=>{S.key==="Enter"&&S.currentTarget.blur(),S.key==="Escape"&&(h.current=!0,c(r),S.currentTarget.blur())},e[10]=r,e[11]=N):N=e[11];let y;e[12]!==l||e[13]!==i||e[14]!==r?(y=()=>{if(d(!1),h.current){h.current=!1;return}const S=as(l);c(S),S!==r&&i(S)},e[12]=l,e[13]=i,e[14]=r,e[15]=y):y=e[15];let w;e[16]!==l||e[17]!==p||e[18]!==P||e[19]!==N||e[20]!==y?(w=s.jsx("input",{type:"text",value:l,placeholder:p,title:P,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:oi,onChange:g,onFocus:j,onKeyDown:N,onBlur:y}),e[16]=l,e[17]=p,e[18]=P,e[19]=N,e[20]=y,e[21]=w):w=e[21];let k;e[22]!==b||e[23]!==w?(k=s.jsxs("span",{className:"relative inline-flex max-w-64 shrink-0 items-center overflow-hidden",children:[b,w]}),e[22]=b,e[23]=w,e[24]=k):k=e[24];let x;e[25]!==o||e[26]!==u?(x=o&&s.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:[s.jsx(rr,{size:10}),u("sandbox.preview.enterToGo")]}),e[25]=o,e[26]=u,e[27]=x):x=e[27];let B;return e[28]!==x||e[29]!==k?(B=s.jsxs(s.Fragment,{children:[k,x]}),e[28]=x,e[29]=k,e[30]=B):B=e[30],B}function oi(t){return t.stopPropagation()}function li(t){if(t.activeGlobalSectionName)return t.activeGlobalSectionName;const e=t.iframeBase;if(!e)return t.noServerLabel;try{const n=new URL(e),r=t.resolvedPath==="/"?"":t.resolvedPath;return`${n.host}${r}`}catch{return e}}function ci(t){return t.showPreviewToolbar&&t.contentEditingEnabled}function di(t){const e=fe.c(5);let n;e[0]!==t?(n=t??{orgSlug:"",virtualMcpId:"",branch:""},e[0]=t,e[1]=n):n=e[1];const r=os(n);let i;return e[2]!==t||e[3]!==r?(i={mutationFn:async u=>{const{name:l,path:c,template:o}=u;if(!t?.virtualMcpId||!t.branch)throw new Error("Sandbox not ready");const d=Or(l),h=o?{...o,name:l,path:c}:_r(l,c);return await r.mutateAsync({blockKey:d,data:h}),{key:d,name:l,path:c}}},e[2]=t,e[3]=r,e[4]=i):i=e[4],qs(i)}function ui(t){const e=fe.c(89),{open:n,onOpenChange:r,isPending:i,error:u,templates:l,onSubmit:c}=t,o=i===void 0?!1:i,d=Te();let h;e[0]!==d?(h=d("sectionsEditor.createPageModal.defaultPageName"),e[0]=d,e[1]=h):h=e[1];const[m,p]=v.useState(h);let E;e[2]!==d?(E=d("sectionsEditor.createPageModal.defaultPagePath"),e[2]=d,e[3]=E):E=e[3];const[b,P]=v.useState(E),[g,j]=v.useState(Vt),[N,y]=v.useState(null),[w,k]=v.useState(n);n!==w&&(k(n),n&&(p(d("sectionsEditor.createPageModal.defaultPageName")),P(d("sectionsEditor.createPageModal.defaultPagePath")),j(Vt),y(null)));const x=!!l?.length;let B;e[4]!==o||e[5]!==r?(B=Z=>{!Z&&!o&&(y(null),r(!1))},e[4]=o,e[5]=r,e[6]=B):B=e[6];const S=B;let I;e[7]!==o||e[8]!==m||e[9]!==c||e[10]!==b||e[11]!==x||e[12]!==g?(I=async Z=>{Z.preventDefault();const oe=m.trim(),he=b.trim();if(!oe||!he||o)return;const ge=is(he);if(ge){y(ge);return}y(null),await c({name:oe,path:he,templateKey:x&&g!==Vt?g:null})},e[7]=o,e[8]=m,e[9]=c,e[10]=b,e[11]=x,e[12]=g,e[13]=I):I=e[13];const F=I,M=N??u;let L;e[14]!==d?(L=d("sectionsEditor.createPageModal.title"),e[14]=d,e[15]=L):L=e[15];let R;e[16]!==L?(R=s.jsx(Gn,{children:s.jsx(Jn,{children:L})}),e[16]=L,e[17]=R):R=e[17];let U;e[18]!==d?(U=d("sectionsEditor.createPageModal.nameLabel"),e[18]=d,e[19]=U):U=e[19];let D;e[20]!==U?(D=s.jsx("label",{htmlFor:"new-page-name",className:"text-xs font-medium text-muted-foreground",children:U}),e[20]=U,e[21]=D):D=e[21];let $;e[22]===Symbol.for("react.memo_cache_sentinel")?($=Z=>p(Z.target.value),e[22]=$):$=e[22];let H;e[23]!==d?(H=d("sectionsEditor.createPageModal.namePlaceholder"),e[23]=d,e[24]=H):H=e[24];let W;e[25]!==o||e[26]!==m||e[27]!==H?(W=s.jsx(jn,{id:"new-page-name",value:m,onChange:$,placeholder:H,autoFocus:!0,disabled:o}),e[25]=o,e[26]=m,e[27]=H,e[28]=W):W=e[28];let V;e[29]!==W||e[30]!==D?(V=s.jsxs("div",{className:"space-y-1.5",children:[D,W]}),e[29]=W,e[30]=D,e[31]=V):V=e[31];let ee;e[32]!==d?(ee=d("sectionsEditor.createPageModal.pathLabel"),e[32]=d,e[33]=ee):ee=e[33];let O;e[34]!==ee?(O=s.jsx("label",{htmlFor:"new-page-path",className:"text-xs font-medium text-muted-foreground",children:ee}),e[34]=ee,e[35]=O):O=e[35];let ne;e[36]===Symbol.for("react.memo_cache_sentinel")?(ne=Z=>P(Z.target.value),e[36]=ne):ne=e[36];let q;e[37]!==d?(q=d("sectionsEditor.createPageModal.pathPlaceholder"),e[37]=d,e[38]=q):q=e[38];let G;e[39]!==o||e[40]!==b||e[41]!==q?(G=s.jsx(jn,{id:"new-page-path",value:b,onChange:ne,placeholder:q,disabled:o}),e[39]=o,e[40]=b,e[41]=q,e[42]=G):G=e[42];let Q;e[43]!==O||e[44]!==G?(Q=s.jsxs("div",{className:"space-y-1.5",children:[O,G]}),e[43]=O,e[44]=G,e[45]=Q):Q=e[45];let Y;e[46]!==o||e[47]!==x||e[48]!==d||e[49]!==g||e[50]!==l?(Y=x&&s.jsxs("div",{className:"space-y-1.5",children:[s.jsx("label",{htmlFor:"new-page-template",className:"text-xs font-medium text-muted-foreground",children:d("sectionsEditor.createPageModal.templateLabel")}),s.jsx(Ar,{id:"new-page-template",value:g,onChange:j,templates:l??[],disabled:o})]}),e[46]=o,e[47]=x,e[48]=d,e[49]=g,e[50]=l,e[51]=Y):Y=e[51];let te;e[52]!==M?(te=M&&s.jsx("p",{className:"text-xs text-destructive",children:M}),e[52]=M,e[53]=te):te=e[53];let ae;e[54]!==V||e[55]!==Q||e[56]!==Y||e[57]!==te?(ae=s.jsxs("div",{className:"space-y-4 py-4",children:[V,Q,Y,te]}),e[54]=V,e[55]=Q,e[56]=Y,e[57]=te,e[58]=ae):ae=e[58];let X;e[59]!==r?(X=()=>r(!1),e[59]=r,e[60]=X):X=e[60];let J;e[61]!==d?(J=d("sectionsEditor.createPageModal.cancelButton"),e[61]=d,e[62]=J):J=e[62];let se;e[63]!==o||e[64]!==X||e[65]!==J?(se=s.jsx(He,{type:"button",variant:"outline",onClick:X,disabled:o,children:J}),e[63]=o,e[64]=X,e[65]=J,e[66]=se):se=e[66];let ve;e[67]!==o||e[68]!==m||e[69]!==b?(ve=!m.trim()||!b.trim()||o,e[67]=o,e[68]=m,e[69]=b,e[70]=ve):ve=e[70];let pe;e[71]!==o||e[72]!==d?(pe=o?s.jsxs(s.Fragment,{children:[s.jsx(St,{className:"size-3.5"}),d("sectionsEditor.createPageModal.creatingButton")]}):d("sectionsEditor.createPageModal.createButton"),e[71]=o,e[72]=d,e[73]=pe):pe=e[73];let de;e[74]!==ve||e[75]!==pe?(de=s.jsx(He,{type:"submit",disabled:ve,children:pe}),e[74]=ve,e[75]=pe,e[76]=de):de=e[76];let ie;e[77]!==se||e[78]!==de?(ie=s.jsxs(Ws,{children:[se,de]}),e[77]=se,e[78]=de,e[79]=ie):ie=e[79];let ue;e[80]!==F||e[81]!==ae||e[82]!==ie||e[83]!==R?(ue=s.jsx(qn,{className:"sm:max-w-md",children:s.jsxs("form",{onSubmit:F,children:[R,ae,ie]})}),e[80]=F,e[81]=ae,e[82]=ie,e[83]=R,e[84]=ue):ue=e[84];let be;return e[85]!==S||e[86]!==n||e[87]!==ue?(be=s.jsx(Wn,{open:n,onOpenChange:S,children:ue}),e[85]=S,e[86]=n,e[87]=ue,e[88]=be):be=e[88],be}function mi(t){const e=fe.c(29),{orgSlug:n,virtualMcpId:r,branch:i,previewUrl:u,meta:l,decofile:c,blockKey:o}=t,d=Te();let h;e[0]!==i||e[1]!==n||e[2]!==r?(h={orgSlug:n,virtualMcpId:r,branch:i},e[0]=i,e[1]=n,e[2]=r,e[3]=h):h=e[3];const m=os(h);let p;e[4]!==m?(p=Fr((k,x)=>m.mutate({blockKey:k,data:x})),e[4]=m,e[5]=p):p=e[5];const E=p;let b;e[6]!==o||e[7]!==c?(b=Br(c,o),e[6]=o,e[7]=c,e[8]=b):b=e[8];const{resolveType:P,props:g,title:j}=b;if(!P){let k;e[9]!==d?(k=d("sandbox.preview.loaderNoLongerExists"),e[9]=d,e[10]=k):k=e[10];let x;return e[11]!==k?(x=s.jsx("div",{className:"flex h-full items-center justify-center px-6 text-center text-sm text-muted-foreground",children:k}),e[11]=k,e[12]=x):x=e[12],x}const N=`loader:${o}`;let y;e[13]!==o||e[14]!==P||e[15]!==j?(y={mode:"saved",blockKey:o,resolveType:P,title:j},e[13]=o,e[14]=P,e[15]=j,e[16]=y):y=e[16];let w;return e[17]!==i||e[18]!==c||e[19]!==l||e[20]!==n||e[21]!==u||e[22]!==g||e[23]!==m.isPending||e[24]!==E||e[25]!==N||e[26]!==y||e[27]!==r?(w=s.jsx($r,{orgSlug:n,virtualMcpId:r,branch:i,previewUrl:u,meta:l,decofile:c,kind:"loaders",target:y,initialValue:g,isCreating:m.isPending,onCreate:fi,onSaveReferencedBlock:E,showRun:!1},N),e[17]=i,e[18]=c,e[19]=l,e[20]=n,e[21]=u,e[22]=g,e[23]=m.isPending,e[24]=E,e[25]=N,e[26]=y,e[27]=r,e[28]=w):w=e[28],w}async function fi(){}function pi(t){if(t instanceof Error&&"status"in t&&typeof t.status=="number")return t.status}function zn(t){return{status:t.status,hasData:t.data!==void 0,errorStatus:pi(t.error)}}function hi(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 gi(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=hi(t.lifecyclePhase);if(e==="terminal-error")return{kind:"error",source:"sandbox"};if(e==="booting")return{kind:"loading"};const n=t.decofile.status==="error"&&!t.decofile.hasData||t.meta.status==="error"&&!t.meta.hasData;return n&&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"}:n?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 vi="https://github.com/decocms/blocks";function bi(){const t=fe.c(14),e=Te();let n;t[0]===Symbol.for("react.memo_cache_sentinel")?(n=s.jsx(ar,{size:48,className:"text-muted-foreground"}),t[0]=n):n=t[0];let r;t[1]!==e?(r=e("mainPanelTabs.blocksTabStates.emptyStateTitle"),t[1]=e,t[2]=r):r=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 l;t[7]===Symbol.for("react.memo_cache_sentinel")?(l=s.jsx(Yn,{size:14}),t[7]=l):l=t[7];let c;t[8]!==u?(c=s.jsx(He,{size:"sm",asChild:!0,children:s.jsxs("a",{href:vi,target:"_blank",rel:"noreferrer",children:[u,l]})}),t[8]=u,t[9]=c):c=t[9];let o;return t[10]!==r||t[11]!==i||t[12]!==c?(o=s.jsx(nn,{className:"h-full w-full",image:n,title:r,description:i,actions:c}),t[10]=r,t[11]=i,t[12]=c,t[13]=o):o=t[13],o}function xi(t){const e=fe.c(15),{source:n,onRetry:r}=t,i=Te();let u;e[0]!==n||e[1]!==i?(u=i(n==="sandbox"?"mainPanelTabs.blocksTabStates.errorStateSandbox":"mainPanelTabs.blocksTabStates.errorStateData"),e[0]=n,e[1]=i,e[2]=u):u=e[2];const l=u;let c;e[3]===Symbol.for("react.memo_cache_sentinel")?(c=s.jsx(ta,{size:48,className:"text-muted-foreground"}),e[3]=c):c=e[3];let o;e[4]!==i?(o=i("mainPanelTabs.blocksTabStates.errorStateTitle"),e[4]=i,e[5]=o):o=e[5];let d;e[6]!==i?(d=i("mainPanelTabs.blocksTabStates.retry"),e[6]=i,e[7]=d):d=e[7];let h;e[8]!==r||e[9]!==d?(h=s.jsx(He,{variant:"outline",size:"sm",onClick:r,children:d}),e[8]=r,e[9]=d,e[10]=h):h=e[10];let m;return e[11]!==l||e[12]!==o||e[13]!==h?(m=s.jsx(nn,{image:c,title:o,description:l,actions:h}),e[11]=l,e[12]=o,e[13]=h,e[14]=m):m=e[14],m}const yi=v.lazy(()=>Gs(()=>import("./sections-editor-C91NghHX.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,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161])).then(t=>({default:t.SectionsEditor})));function In(t){const e=fe.c(50),{virtualMcpId:n,externalSelection:r,onViewJsonFile:i}=t,u=r===void 0?null:r,{org:l}=Xt(),{currentBranch:c,taskId:o}=jt(),d=ds(),h=Zt(),m=us(),p=d.lifecycle.phase==="running",E=h.previewUrl;let b;e[0]!==c||e[1]!==l||e[2]!==E||e[3]!==o||e[4]!==n?(b=c?{orgSlug:l.slug,virtualMcpId:n,branch:c,threadId:o??null,previewUrl:E}:null,e[0]=c,e[1]=l,e[2]=E,e[3]=o,e[4]=n,e[5]=b):b=e[5];const P=b;let g;e[6]!==p?(g={fetchEnabled:p},e[6]=p,e[7]=g):g=e[7];const j=tn(P,g);let N;e[8]!==p?(N={fetchEnabled:p},e[8]=p,e[9]=N):N=e[9];const y=ls(P,N),w=gi({lifecyclePhase:d.lifecycle.phase,decofile:zn(j),meta:zn(y),hasEditableContent:Pr(j.data,y.data),fastPreviewActive:rs(n).runtime==="cms"}),k=wi;if(w.kind==="loading"){let O;return e[10]===Symbol.for("react.memo_cache_sentinel")?(O=k(s.jsx(Js,{})),e[10]=O):O=e[10],O}if(w.kind==="empty"){let O;return e[11]===Symbol.for("react.memo_cache_sentinel")?(O=k(s.jsx(bi,{})),e[11]=O):O=e[11],O}if(w.kind==="error"){let O;e[12]!==j||e[13]!==h||e[14]!==y||e[15]!==w.source?(O=()=>{if(w.source==="sandbox"){h.retry();return}Promise.all([j.refetch(),y.refetch()])},e[12]=j,e[13]=h,e[14]=y,e[15]=w.source,e[16]=O):O=e[16];const ne=O;let q;return e[17]!==ne||e[18]!==w.source?(q=k(s.jsx(xi,{source:w.source,onRetry:ne})),e[17]=ne,e[18]=w.source,e[19]=q):q=e[19],q}let x;e[20]===Symbol.for("react.memo_cache_sentinel")?(x=O=>k(s.jsx("div",{className:"h-full min-h-0",children:O})),e[20]=x):x=e[20];const B=x,S=m.state.target;if(S?.kind==="loader"&&j.data&&y.data){const O=c??"",ne=E??null;let q;return e[21]!==j.data||e[22]!==y.data||e[23]!==l.slug||e[24]!==O||e[25]!==ne||e[26]!==S.key||e[27]!==n?(q=B(s.jsx(mi,{orgSlug:l.slug,virtualMcpId:n,branch:O,previewUrl:ne,meta:y.data,decofile:j.data,blockKey:S.key})),e[21]=j.data,e[22]=y.data,e[23]=l.slug,e[24]=O,e[25]=ne,e[26]=S.key,e[27]=n,e[28]=q):q=e[28],q}let I;e[29]!==c||e[30]!==l.slug||e[31]!==S||e[32]!==n?(I=S||!c?null:Qn(Xn(l.slug,n,c)),e[29]=c,e[30]=l.slug,e[31]=S,e[32]=n,e[33]=I):I=e[33];const F=I;let M="/",L=null,R=null;S?.kind==="page"?(M=S.path,L=S.key):S?.kind==="section"?R=S.key:F&&(M=F.path,L=F.pageKey);const U=L?`page:${L}`:R?`section:${R}`:`path:${M}`;let D;e[34]===Symbol.for("react.memo_cache_sentinel")?(D=s.jsx("div",{className:"h-full flex items-center justify-center",children:s.jsx(St,{className:"size-5 text-muted-foreground"})}),e[34]=D):D=e[34];const $=c??"",H=E??void 0,W=R?null:u,V=!!L&&m.state.editSeoPageKey===L;let ee;return e[35]!==R||e[36]!==L||e[37]!==M||e[38]!==U||e[39]!==i||e[40]!==l.slug||e[41]!==W||e[42]!==V||e[43]!==$||e[44]!==H||e[45]!==n||e[46]!==m.consumeEditSeo||e[47]!==m.setFocusedBlock||e[48]!==m.setVariantOverride?(ee=B(s.jsx(v.Suspense,{fallback:D,children:s.jsx(yi,{orgSlug:l.slug,virtualMcpId:n,branch:$,previewReady:!0,previewUrl:H,currentPath:M,activePageBlockKey:L,activeGlobalBlockKey:R,externalSelection:W,initialEditSeo:V,onExitSeo:m.consumeEditSeo,onVariantPreviewOverride:m.setVariantOverride,onFocusedBlockChange:m.setFocusedBlock,onViewJsonFile:i},U)})),e[35]=R,e[36]=L,e[37]=M,e[38]=U,e[39]=i,e[40]=l.slug,e[41]=W,e[42]=V,e[43]=$,e[44]=H,e[45]=n,e[46]=m.consumeEditSeo,e[47]=m.setFocusedBlock,e[48]=m.setVariantOverride,e[49]=ee):ee=e[49],ee}function wi(t){return s.jsx("div",{"data-testid":"blocks-panel",className:"h-full min-h-0 overflow-hidden",children:t})}function Un(t){const e=fe.c(39),{virtualMcpId:n,pageKey:r,onClose:i,ref:u}=t,l=Te(),c=sa(),o=Mr(n);let d;e[0]!==o||e[1]!==r?(d=Dr(o,ra(r)),e[0]=o,e[1]=r,e[2]=d):d=e[2];const h=d,{org:m}=Xt(),{currentBranch:p,taskId:E}=jt(),P=Zt().previewUrl;let g;e[3]!==p||e[4]!==m.slug||e[5]!==P||e[6]!==E||e[7]!==n?(g=p?{orgSlug:m.slug,virtualMcpId:n,branch:p,threadId:E??null,previewUrl:P}:null,e[3]=p,e[4]=m.slug,e[5]=P,e[6]=E,e[7]=n,e[8]=g):g=e[8];const N=tn(g),y=p??"";let w;e[9]!==m.slug||e[10]!==y||e[11]!==n?(w={orgSlug:m.slug,virtualMcpId:n,branch:y},e[9]=m.slug,e[10]=y,e[11]=n,e[12]=w):w=e[12];const{save:k,flush:x}=Kr(w),B=N.data?.[r],S=N.data===void 0&&N.isLoading,I=N.data!==void 0&&B===void 0,F=!p||I||S;let M;e[13]!==B?(M=B===void 0?"":JSON.stringify(B,null,2),e[13]=B,e[14]=M):M=e[14];const L=M;let R;e[15]!==r||e[16]!==F||e[17]!==k?(R=V=>{if(F)return;let ee;try{ee=JSON.parse(V)}catch{return}ee===null||typeof ee!="object"||Array.isArray(ee)||k(r,ee)},e[15]=r,e[16]=F,e[17]=k,e[18]=R):R=e[18];const U=R;let D;e[19]!==x?(D=()=>({flush:x}),e[19]=x,e[20]=D):D=e[20],v.useImperativeHandle(u,D);let $;e[21]!==h||e[22]!==c||e[23]!==i||e[24]!==l?($=c?s.jsx("div",{className:"flex shrink-0 items-center border-b px-3 py-2.5",children:s.jsx("span",{title:h,className:"min-w-0 flex-1 truncate font-mono text-xs text-muted-foreground",children:h})}):s.jsxs("div",{className:"flex shrink-0 items-center gap-2 border-b px-3 py-2.5",children:[s.jsx("div",{className:"min-w-0 flex-1 truncate text-sm font-semibold",children:l("sectionsEditor.pageJsonDialog.titleShort")}),s.jsx(He,{variant:"ghost",size:"icon",onClick:i,"aria-label":l("sectionsEditor.pageJsonDialog.close"),className:"size-7 shrink-0",children:s.jsx(Ys,{size:14})})]}),e[21]=h,e[22]=c,e[23]=i,e[24]=l,e[25]=$):$=e[25];let H;e[26]!==N.data||e[27]!==x||e[28]!==L||e[29]!==S||e[30]!==I||e[31]!==r||e[32]!==F||e[33]!==U||e[34]!==l?(H=S?s.jsx("div",{className:"flex flex-1 items-center justify-center",children:s.jsx(St,{className:"size-5 text-muted-foreground"})}):I?s.jsxs("div",{className:"p-4 text-xs font-mono text-foreground/60",children:["// ",l("sectionsEditor.pageJsonDialog.pageNotFound")]}):s.jsx("div",{className:"min-h-0 flex-1",children:s.jsx(na,{code:L,language:"json",readOnly:F,height:"100%",onChange:V=>U(V??""),onSave:V=>{U(V),x()}},`${r}:${N.data===void 0?"loading":"ready"}`)}),e[26]=N.data,e[27]=x,e[28]=L,e[29]=S,e[30]=I,e[31]=r,e[32]=F,e[33]=U,e[34]=l,e[35]=H):H=e[35];let W;return e[36]!==$||e[37]!==H?(W=s.jsxs("div",{className:"flex h-full min-h-0 flex-col overflow-hidden bg-background",children:[$,H]}),e[36]=$,e[37]=H,e[38]=W):W=e[38],W}function vs(t){return t.contentEditingEnabled&&!t.isMobile}function ki(t,e){return t!=="visual"?"visual":e?"blocks":"preview"}function Pi(t,e){return t==="blocks"?"preview":e?"blocks":t}function Si(t){return vs({contentEditingEnabled:cs(t.cmsMode),isMobile:t.isMobile})?"blocks":"preview"}function ji(t){return t.editingMode==="blocks"&&!t.blocksEditingEnabled||t.editingMode==="visual"&&!t.sandboxDisplay?"preview":t.editingMode}const Ei=500,Ni={mobile:{width:412,height:823},tablet:{width:1024,height:1366},desktop:{width:1280,height:800}},Hn=1,kt=["desktop","mobile","tablet"],Ti=["preview","visual","blocks"],Vn={mobile:"sandbox.preview.deviceMobile",tablet:"sandbox.preview.deviceTablet",desktop:"sandbox.preview.deviceDesktop"};function Ci(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 rt(t){if(!t)return null;try{return new URL(t,window.location.href).origin}catch{return null}}function Gt(t,e){try{return new URL(t,e).href}catch{return null}}function Ri(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 n={path:e.resolvedPath,url:e.draftPreviewUrl};return{pin:n,effective:n.url}}return{pin:t,effective:t?.url??null}}function Li(t,e){return!t||t.nav!==e.nav?!1:t.content!==e.content}function Oi(t,e,n){const r=t.toLowerCase(),i=e.toLowerCase(),u=i.split("/").filter(Boolean),l=o=>{if(o===n)return 100;const d=o.indexOf(n);if(d===-1)return 0;let h=40;return d===0?h+=30:/[\s/-]/.test(o[d-1]??"")&&(h+=20),h+=Math.round(n.length/o.length*20),h};let c=Math.max(l(r),l(i));return u.at(-1)===n?c=Math.max(c,95):u.includes(n)&&(c=Math.max(c,90)),c}function _i(t,e){try{t.contentWindow?.location.reload()}catch{e&&(t.src=e)}}function Ai({virtualMcpId:t}){const e=Te(),n=Cr(),{currentBranch:r,taskId:i,virtualMcpId:u}=jt(),l=us(),c=vr(u===t?t:null),o=rs(t),d=aa(c?.metadata?.ui?.layout??null),h=cs(d),m=vs({contentEditingEnabled:h,isMobile:n}),[p]=v.useState(()=>Si({cmsMode:d,isMobile:n})),[E,b]=En(Nn.previewEditingMode(t),a=>a&&Ti.includes(a)?a:null),P=E??p,[g,j]=En(Nn.previewDeviceSize(t),a=>a&&kt.includes(a)?a:"desktop"),[N,y]=v.useState(null),[w,k]=v.useState(null),x=v.useRef(null),B=v.useRef(null),[S,I]=v.useState(!1),F=v.useRef(null),M=()=>{F.current?.flush(),I(!1)},L=()=>I(a=>(a&&F.current?.flush(),!a)),[R,U]=v.useState({width:0,height:0}),[D,$]=v.useState(!1),[H,W]=v.useState(""),V=v.useRef(null),[ee,O]=v.useState(!1),[ne,q]=v.useState(),[G,Q]=v.useState(null),[Y,te]=v.useState(null),[ae,X]=v.useState(null),[J,se]=v.useState(()=>l.state.target?.kind==="page"?l.state.target.path:"/"),[ve,pe]=v.useState(()=>l.state.target?.kind==="page"?l.state.target.key:null),[de,ie]=v.useState({}),[ue,be]=v.useState(!1),Z=v.useRef(null),oe=()=>{be(!0),Z.current&&clearTimeout(Z.current),Z.current=setTimeout(()=>be(!1),15e3)},he=()=>{Z.current&&(clearTimeout(Z.current),Z.current=null),be(!1)},{org:ge}=Xt(),Me=ds(),Oe=Zt(),_e=Oe.vmEntry,Ve=Me.lifecycle.phase,{url:ye}=Sr(t),xe=ye??Oe.previewUrl,Ee=!!ye||Ve==="running",De=c?.id===t?yr(c.metadata):null,Ae=!ye&&c?.id===t&&o.runtime==="cms",Be=o.projectDefault==="cms",we=qr({sandboxUrl:xe,previewServerUrl:De,fastPreviewActive:Ae}),Ce=t&&r?{orgSlug:ge.slug,virtualMcpId:t,branch:r,threadId:i??null,previewUrl:xe}:null,Ke=tn(Ce,{fetchEnabled:Ee}),K=ls(Ce,{fetchEnabled:Ee}),T=Ke.data,me=K.data,$e=T?jr(T).sort((a,f)=>a.name.localeCompare(f.name)):[],Et=t&&r?{orgSlug:ge.slug,virtualMcpId:t,branch:r}:null,Qe=di(Et),Nt=T&&me?Er(T,me):[],rn=T&&me?zr(me,T,"loaders"):[],an=H?(()=>{const a=H.toLowerCase();return $e.map(f=>({page:f,score:Oi(f.name,f.path,a)})).filter(({score:f})=>f>0).sort((f,C)=>C.score-f.score||f.page.path.length-C.page.path.length).map(({page:f})=>f)})():$e,on=Nt.filter(a=>{if(!H)return!0;const f=H.toLowerCase();return a.name.toLowerCase().includes(f)||a.key.toLowerCase().includes(f)||a.resolveType.toLowerCase().includes(f)}),ln=m?rn:[],cn=ln.filter(a=>{if(!H)return!0;const f=H.toLowerCase();return a.title.toLowerCase().includes(f)||a.key.toLowerCase().includes(f)||a.resolveType.toLowerCase().includes(f)}),lt=Y?rn.find(a=>a.key===Y)??null:null,Ne=en,Tt=G||Y?null:Nr($e,J,ve),z=Tt?.key??null,qe=l.state.target?.kind==="section"?l.state.target.key:l.state.focusedBlockKey??z,ct=Tt?.path??null,We=(z?de[z]:void 0)??{},ke=Fe(J,We),Ct={};if(Ee&&xe&&me&&T){const a=Ir(me,"loaders"),f=z?T[z]:void 0,C=Aa(f,T,re=>a.has(re)),_=Ca(C);for(const re of ot(J)){if(re.type!=="param")continue;const Le=Ea(J,re.name,C),Se=Oa(Le,a,_);Se.length>0&&(Ct[re.name]=Se)}}const dt=t&&r?{orgSlug:ge.slug,virtualMcpId:t,branch:r,threadId:i??null}:null,dn=T&&z?Tr(T,z,0):[],un=T?Ur(dn,T):[],Rt=un.map(a=>a.isSavedBlock?a.label:""),Lt=un.map(a=>a.isSavedBlock?"global":a.isMultivariate?"variant":"normal"),Ot=dn.map(a=>Yt(a,T??{})),mn=v.useRef(null),Pe=v.useRef(null),bs=Me.status.state==="paused",_t=Me.phase,fn=Hr({claimPhase:_t,lifecycle:Me.lifecycle}),ze=Oe.previewState,xs=Oe.userStopped,ys=Qr(ge.slug,t??"",r??""),{url:Ie}=Yr(Ae&&t&&r?{orgSlug:ge.slug,virtualMcpId:t,branch:r,previewServerUrl:De??null,path:ke}:null),ws=Be&&o.runtime==="sandbox",A=ma({previewState:ze,progressStatus:fn.status,previewServerUrl:De,fastPreviewActive:Ae,fastPreviewReady:!!Ie,codingSession:ws,localPreviewUrl:ye}),ut=A.mode!=="none",ks=A.mode==="production"&&A.iframeBase?rt(A.iframeBase):null,Ge=A.mode==="production"?ks:rt(xe),Ps=c?.id===t&&c.metadata?.fastPreviewInPlace===!0,Xe=ye?A.mode==="sandbox"&&m&&P==="blocks":A.mode==="production"&&Ae&&Ps&&m&&P==="blocks",pn=v.useRef(null),{pin:Ss,effective:js}=Ri(pn.current,{inPlaceRenderActive:Xe,draftPreviewUrl:Ie,resolvedPath:ke});pn.current=Ss;const Re=Ci(A.mode==="sandbox"?bt(_n(ae??Gt(ke,A.iframeBase)??A.iframeBase,g),l.state.variantOverride??[]):A.mode==="production"?bt(_n(Wr(ae??js??Gt(ke,A.iframeBase)??A.iframeBase,A.showWakingPill?Gr:null),g),l.state.variantOverride??[]):null),hn=Ie??(A.iframeBase?Gt(ke,A.iframeBase):null),Es=A.mode==="production"?hn?bt(hn,l.state.variantOverride??[]):null:Re??A.iframeBase,Ns=()=>{const a=Es;a&&window.open(a,"_blank","noopener")},Ze=t&&r?Xn(ge.slug,t,r):null,et=a=>{Ze&&nr(Ze,a)},le=l.state.target;v.useEffect(()=>{if(!(!le||!we||!me))if(le.kind==="page"){const a=de[le.key]??{};Pe.current=Fe(le.path,a),Q(null),te(null),X(null),pe(le.key),se(le.path),et({path:le.path,pageKey:le.key,params:a})}else if(le.kind==="loader")Pe.current=null,Q(null),te(le.key),X(null);else{const a=Nt.find(f=>f.key===le.key);if(a){Pe.current=null;const f=Ln(me);te(null),Q(a),X(On(we,f,a.key))}}},[le,we,me,de]),v.useEffect(()=>{!z||ct===null||le?.kind==="page"&&le.key===z&&le.path===ct||l.selectTarget({kind:"page",key:z,path:ct})},[z,ct,le]);const[gn,Ts]=v.useState(null);if(ze.kind==="iframe"&&gn!==ze.previewUrl){const a=gn!==null;Ts(ze.previewUrl);const f=Ze?Qn(Ze):null;if(f){if(Pe.current=Fe(f.path,f.params),se(f.path),pe(f.pageKey),X(null),Q(null),te(null),f.pageKey&&Object.keys(f.params).length>0){const C=f.pageKey;ie(_=>({..._,[C]:f.params}))}}else a&&(Pe.current=null,se("/"),X(null),pe(null),Q(null),te(null))}mn.current=Re;const vn=ga({iframeRef:x,src:A.mode==="sandbox"?Re:null,active:A.mode==="sandbox"}),bn=v.useRef(null);v.useEffect(()=>{if(!Ie||!Re||bn.current===Ie)return;bn.current=Ie;const a=x.current;a&&a.getAttribute("src")!==Re&&(oe(),a.src=Re)},[Ie,Re]);const xn=()=>{const a=x.current?.contentWindow,f=Ge;if(!a||!f||!T||!z)return;const C=T[z];if(!C||typeof C!="object")return;const _=Jr({previewBaseUrl:f,pageBlock:C,decofile:T,path:ke,pathTemplate:J});if(!_)return;const re=bt(_.src,Vr(l.state.variantOverride??[],z));a.postMessage({type:"cms-editor::render",src:re,body:_.body},f)},At=v.useRef(null);v.useEffect(()=>{if(!Xe||G||Y||!z||!T){At.current=null;return}const a={nav:JSON.stringify({page:z,path:ke,pathTemplate:J}),content:JSON.stringify(T)},f=Li(At.current,a);At.current=a,f&&xn()},[T,Xe,G,Y,z,ke,J]);const Bt=v.useRef(null);v.useEffect(()=>{if(!Xe||G||Y||!z||!T){Bt.current=null;return}const a=JSON.stringify(l.state.variantOverride??null),f=Bt.current;Bt.current={page:z,sig:a},!(!f||f.page!==z||f.sig===a)&&xn()},[l.state.variantOverride,Xe,G,Y,z]);const Cs=!!t&&!!r&&!Me.notFound&&!xs&&!bs&&(_t?.kind==="ready"||Ve!=="idle"),ce=ji({editingMode:P,sandboxDisplay:A.mode==="sandbox",blocksEditingEnabled:m});v.useEffect(()=>{const a=Ge;if(!a)return;const f=C=>{if(C.origin===a)if(C.data?.type==="visual-editor::element-clicked"){const _=va.safeParse(C.data.payload);_.success&&y(_.data)}else if(C.data?.type==="cms-editor::section-clicked"){const _=ya.safeParse(C.data.payload);_.success&&k({index:_.data.sectionIndex,seq:_.data.clickSeq})}else C.data?.type==="cms-editor::render-start"?oe():C.data?.type==="cms-editor::render-end"?(he(),x.current?.contentWindow?.postMessage({type:"cms-editor::set-labels",labels:Rt,kinds:Lt,keys:Ot},a)):C.data?.type==="cms-editor::render-error"&&he()};return window.addEventListener("message",f),()=>window.removeEventListener("message",f)},[Ge,Rt,Lt,Ot]);const yn=()=>{const a=x.current?.contentWindow,f=rt(xe);!a||!f||a.postMessage({type:"visual-editor::activate",script:ba},f)},Rs=()=>{const a=x.current?.contentWindow,f=rt(xe);!a||!f||a.postMessage({type:"visual-editor::deactivate"},f)},$t=()=>{const a=x.current?.contentWindow,f=Ge;!a||!f||(a.postMessage(A.mode==="production"||ye?{type:"editor::inject",args:{script:Fn}}:{type:"visual-editor::activate",script:Fn},f),a.postMessage({type:"cms-editor::set-labels",labels:Rt,kinds:Lt,keys:Ot},f))},Ls=()=>{const a=x.current?.contentWindow,f=Ge;!a||!f||a.postMessage({type:"cms-editor::deactivate"},f)},Os=()=>{const a=x.current?.contentWindow,f=Ge;!a||!f||(a.postMessage({type:"cms-editor::clear-hover"},f),a.postMessage({type:"visual-editor::clear-hover"},f))},mt=a=>{if(a==="blocks"&&!m)return;const f=P;!n&&a!==f&&(a==="blocks"?B.current?.resize("30%"):B.current?.collapse()),b(a),y(null),k(null),a!=="blocks"&&te(null),f==="visual"&&Rs(),a==="visual"&&yn(),f==="blocks"&&a!=="blocks"&&Ls(),a==="blocks"&&$t()},_s=()=>{mt(ki(P,m))},As=()=>{mt(Pi(P,m))};Zr(()=>{const a=x.current;if(!a)return;oe();const f=document.activeElement,C=a.tabIndex;a.tabIndex=-1,a.style.pointerEvents="none",a.blur(),_i(a,mn.current);let _;const re=()=>{clearTimeout(_),a.tabIndex=C,a.style.pointerEvents="";const Le=document.activeElement;(!Le||Le===document.body||Le===a)&&f?.focus(),a.removeEventListener("load",re)};a.addEventListener("load",re),_=setTimeout(re,3e3)});const Bs=()=>{const a=kt.indexOf(g);j(kt[(a+1)%kt.length])},Ft=(a,f)=>{if(!z)return;const C=z,_={...We,[a]:f};Pe.current=Fe(J,_),ie(re=>({...re,[C]:_})),et({path:J,pageKey:C,params:_})},$s=li({iframeBase:A.iframeBase,resolvedPath:ke,activeGlobalSectionName:G?.name??null,noServerLabel:e("sandbox.preview.noServerRunning")}),wn=a=>{const f=de[a.key]??{},C=Fe(a.path,f);(G||Ne(C)!==Ne(ke))&&oe(),Pe.current=C,Q(null),te(null),X(null),k(null),pe(a.key),se(a.path),et({path:a.path,pageKey:a.key,params:f}),l.selectTarget({kind:"page",key:a.key,path:a.path})};tr(Ze,a=>{(G||Ne(a)!==Ne(ke))&&oe(),Pe.current=a,Q(null),te(null),X(null),k(null),pe(null),se(a),et({path:a,pageKey:null,params:{}})});const Fs=a=>{if(!we||!me){Cn.error(e("sandbox.preview.previewMetadataNotReady"));return}oe(),Pe.current=null;const f=Ln(me),C=On(we,f,a.key);Q(a),te(null),X(C),k(null),l.selectTarget({kind:"section",key:a.key})},Ms=a=>{m&&(Q(null),te(a.key),X(null),mt("blocks"),l.selectTarget({kind:"loader",key:a.key}))},Ds=async({name:a,path:f,templateKey:C})=>{if(!t||!r)return;const _=is(f);if(_){q(_);return}const re=f.trim().startsWith("/")?f.trim():`/${f.trim()}`;if($e.some(Se=>Ne(Se.path)===Ne(re))){q(e("sandbox.preview.pageAlreadyExists",{path:re}));return}let Le;if(C&&(Le=T?.[C],!Le)){q(e("sandbox.preview.templateNoLongerExists"));return}q(void 0);try{const Se=await Qe.mutateAsync({name:a,path:re,template:Le});O(!1),Cn.success(e("sandbox.preview.pageCreated",{name:a})),await ia(Ei),wn({key:Se.key,name:Se.name,path:Se.path}),mt("blocks")}catch(Se){q(Se instanceof Error?Se.message:e("sandbox.preview.failedToCreatePage"))}},ft=ut&&(Cs||A.mode==="production"),Ks=ci({showPreviewToolbar:ft,contentEditingEnabled:h}),pt=()=>{$(!1),W("")},Mt=G?.name??lt?.title??Tt?.name,Dt=Ke.isPending||K.isPending,Kt=Dt?rt(A.iframeBase):Mt,ht=G?`section:${G.key}`:Y?`loader:${Y}`:z?`page:${z}`:void 0,zs=ft?Ks?s.jsxs(pr,{open:D,onOpenChange:a=>{$(a),a||W("")},children:[s.jsx(hr,{asChild:!0,children:s.jsx("button",{type:"button","aria-label":e("sandbox.preview.choosePage"),"data-testid":"preview-page-picker",title:Dt?Kt??void 0:G||lt?Mt:[Mt,J].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:s.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:[G&&s.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:[s.jsx(ir,{size:11}),e("sandbox.preview.globalBadge")]}),lt&&s.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:[s.jsx(or,{size:11}),e("sandbox.preview.loaderBadge")]}),Kt&&s.jsx("span",{className:"min-w-0 flex-1 truncate font-medium text-foreground",children:Kt}),!Dt&&!G&&!lt&&s.jsx("span",{"data-testid":"preview-page-path",className:"ml-auto min-w-0 truncate text-right font-mono text-muted-foreground",children:J}),s.jsx(sr,{size:12,className:zt("shrink-0 transition-transform",D&&"rotate-180")})]})})}),s.jsxs(gr,{className:"w-112 max-w-[calc(100vw-2rem)] p-0",align:"center",sideOffset:8,children:[s.jsxs(ts,{shouldFilter:!1,defaultValue:ht,children:[s.jsx(ns,{value:H,onValueChange:a=>{W(a),V.current?.scrollTo({top:0})},placeholder:e("sandbox.preview.searchPagesAndComponents")}),s.jsxs(es,{ref:V,className:"max-h-80",children:[s.jsx(ss,{children:$e.length===0&&Nt.length===0&&ln.length===0?e("sandbox.preview.noPagesFound"):e("sandbox.preview.noSearchResults")}),an.length>0&&s.jsx(at,{children:an.map(a=>s.jsxs(it,{value:`page:${a.key}`,"aria-current":ht===`page:${a.key}`||void 0,title:`${a.name} · ${a.path}`,onSelect:()=>{pt(),wn(a)},className:"gap-3 px-3 py-2.5 aria-[current=true]:bg-accent aria-[current=true]:text-accent-foreground",children:[s.jsx("span",{className:"min-w-0 flex-1 truncate text-sm",children:a.name}),s.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))}),on.length>0&&s.jsx(at,{heading:e("sandbox.preview.globalComponents"),children:on.map(a=>s.jsx(it,{value:`section:${a.key}`,"aria-current":ht===`section:${a.key}`||void 0,className:"aria-[current=true]:bg-accent aria-[current=true]:text-accent-foreground",onSelect:()=>{pt(),Fs(a)},children:s.jsx("span",{className:"truncate",children:a.name})},a.key))}),cn.length>0&&s.jsx(at,{heading:e("sandbox.preview.globalLoaders"),children:cn.map(a=>s.jsx(it,{value:`loader:${a.key}`,"aria-current":ht===`loader:${a.key}`||void 0,className:"aria-[current=true]:bg-accent aria-[current=true]:text-accent-foreground",onSelect:()=>{pt(),Ms(a)},children:s.jsx("span",{className:"truncate",children:a.title})},a.key))})]})]}),!G&&!Y&&ot(J).some(a=>a.type!=="text")&&s.jsx("div",{className:"flex flex-wrap items-center gap-1 border-t px-3 py-3 text-xs text-muted-foreground",children:ot(J).map((a,f)=>{if(a.type==="text")return s.jsx("span",{children:a.text},`text-${f}`);const C=Ct[a.name];return C&&dt?s.jsx(Ja,{sources:C,template:J,paramName:a.name,value:We[a.name]??"",sandboxRef:dt,onCommit:_=>Ft(a.name,_)},`${z}:${a.name}`):s.jsx(ii,{name:a.name,value:We[a.name]??"",onCommit:_=>Ft(a.name,_)},`${z}:${a.name}`)})}),s.jsx("div",{className:"border-t p-1.5",children:s.jsxs(He,{variant:"ghost",className:"w-full justify-start",onClick:()=>{pt(),q(void 0),O(!0)},children:[s.jsx(fr,{size:16}),e("sandbox.preview.createNewPage")]})})]})]}):s.jsx("span",{className:"min-w-0 truncate text-xs text-muted-foreground",children:$s}):null,kn=ft||h?s.jsxs("div",{className:"flex min-w-0 items-center gap-1",children:[s.jsxs(It,{children:[s.jsx(Ut,{asChild:!0,children:s.jsx(tt,{onClick:Bs,"aria-label":e(Vn[g]),children:g==="mobile"?s.jsx(lr,{size:16}):g==="tablet"?s.jsx(cr,{size:16}):s.jsx(dr,{size:16})})}),s.jsx(Ht,{children:e(Vn[g])})]}),zs,s.jsx("div",{className:"flex shrink-0 items-center gap-1",children:s.jsx(tt,{onClick:Ns,"aria-label":e("sandbox.preview.openInNewTab"),children:s.jsx(Yn,{size:16})})})]}):null,Is=A.mode==="sandbox",gt=Ni[g],vt=g==="desktop"&&(R.width===0||R.width>=gt.width+2*Hn),Pn=vt?1:Math.min(R.width>0?R.width/(gt.width+2*Hn):1,1),Us=vt?{width:"100%",height:"100%"}:{width:`${gt.width}px`,height:R.height>0?`${R.height/Pn}px`:`${gt.height}px`,transform:`scale(${Pn})`,transformOrigin:"top center"},Sn=s.jsxs(s.Fragment,{children:[Is&&(ft||h)&&s.jsx(tt,{onClick:_s,"aria-pressed":ce==="visual","aria-label":e("sandbox.preview.visualEditor"),active:ce==="visual",children:s.jsx(Rn,{size:16})}),m&&s.jsxs(It,{children:[s.jsx(Ut,{asChild:!0,children:s.jsx(tt,{onClick:As,"aria-pressed":ce==="blocks","aria-label":e("sandbox.preview.blocksEditor"),active:ce==="blocks",children:s.jsx(mr,{size:16})})}),s.jsx(Ht,{children:e("sandbox.preview.blocksEditor")})]}),qe&&s.jsxs(It,{children:[s.jsx(Ut,{asChild:!0,children:s.jsx(tt,{onClick:L,"aria-pressed":S,"aria-label":e("sectionsEditor.sectionsEditor.viewJson"),active:S,children:s.jsx(ur,{size:16})})}),s.jsx(Ht,{children:e("sectionsEditor.sectionsEditor.viewJson")})]})]}),Hs=!!Y&&ce==="blocks";return s.jsxs("div",{className:"flex flex-col w-full h-full",children:[dt&&Object.entries(Ct).map(([a,f])=>(We[a]??"")===""?s.jsx(ri,{sources:f,template:J,paramName:a,sandboxRef:dt,onFill:C=>Ft(a,C)},`${z}:${a}`):null),s.jsxs(s.Fragment,{children:[s.jsx(Tn.Toolbar.Center.Portal,{fallback:s.jsx("div",{className:"flex min-w-0 items-center justify-center border-b p-2",children:kn}),children:kn}),s.jsx(Tn.Toolbar.Right.Portal,{fallback:Sn,children:Sn})]}),s.jsx("div",{className:"flex-1 overflow-hidden relative",children:Hs?s.jsxs("div",{className:"relative h-full min-h-0 overflow-hidden",children:[s.jsx(In,{virtualMcpId:t,externalSelection:w,onViewJsonFile:L}),S&&qe&&s.jsx("div",{className:"absolute inset-0 z-10",children:s.jsx(Un,{ref:F,virtualMcpId:t,pageKey:qe,onClose:M})})]}):s.jsxs(An,{orientation:"horizontal",disabled:ce!=="blocks",className:"relative isolate",children:[s.jsx(xt,{ref:B,id:"preview-blocks-editor",defaultSize:ce==="blocks"?"30%":"0%",minSize:"20%",collapsible:!0,collapsedSize:"0%",className:"min-w-0 overflow-hidden",children:ce==="blocks"&&s.jsx(In,{virtualMcpId:t,externalSelection:w,onViewJsonFile:L})}),ce==="blocks"&&s.jsx(Bn,{withHandle:!0}),s.jsx(xt,{id:"preview-canvas",defaultSize:ce==="blocks"?"70%":"100%",minSize:"35%",className:"min-w-0 overflow-hidden relative z-0",children:s.jsxs(An,{orientation:"horizontal",disabled:!(S&&qe),children:[s.jsx(xt,{id:"preview-canvas-inner",minSize:"30%",className:"min-w-0 overflow-hidden",children:s.jsxs("div",{ref:a=>{if(!a)return;const f=()=>U(_=>_.width===a.clientWidth&&_.height===a.clientHeight?_:{width:a.clientWidth,height:a.clientHeight});f();const C=new ResizeObserver(f);return C.observe(a),()=>C.disconnect()},className:zt("h-full relative overflow-clip flex justify-center",ut&&!vt&&"bg-muted/30"),children:[(ue||ys)&&ut&&s.jsx("div",{className:"absolute inset-x-0 top-0 z-40 h-1 overflow-hidden",children:s.jsx("div",{className:"absolute inset-y-0 left-0 rounded-r-full bg-brand shadow-[0_0_6px] shadow-brand/60 animate-preview-ramp"})}),A.showBlockingOverlay&&s.jsx("div",{className:"absolute inset-0 z-30",children:s.jsx(qt,{kind:"starting",progress:fn,claimPhase:_t})}),!ye&&ze.kind==="suspended"&&s.jsx("div",{className:"absolute inset-0 z-30",children:s.jsx(qt,{kind:"suspended",onResume:Oe.resume})}),!ye&&ze.kind==="errored"&&s.jsx("div",{className:"absolute inset-0 z-30",children:s.jsx(qt,{kind:"errored",error:ze.error,onRetry:Oe.retry,connectionsHref:`/${ge.slug}/settings/connections`})}),A.showWakingPill&&s.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:[s.jsx(St,{className:"size-4.5 mt-0.5 shrink-0 text-muted-foreground"}),s.jsxs("div",{className:"flex flex-col gap-0.5",children:[s.jsx("span",{className:"text-sm font-medium text-foreground",children:e("sandbox.preview.startingPreview")}),s.jsx("span",{className:"text-xs text-muted-foreground",children:e("sandbox.preview.startingPreviewHint")})]})]}),ce==="visual"&&!N&&s.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:[s.jsx(Rn,{size:12}),e("sandbox.preview.clickElementToAsk")]}),ce==="visual"&&N&&s.jsx(Pa,{element:N,onDismiss:()=>y(null)}),ut&&Re&&s.jsx("div",{className:zt("shrink-0",!vt&&"border-x border-border bg-background shadow-sm"),style:Us,onMouseLeave:Os,children:s.jsx("iframe",{ref:x,src:Re,className:"w-full h-full border-0",title:e("sandbox.preview.devServerPreviewTitle"),onError:vn.handleError,onLoad:()=>{if(vn.handleLoad(),he(),A.mode!=="sandbox"||ye){(A.mode==="production"&&!A.showWakingPill||ye)&&ce==="blocks"&&$t();return}if(Qs("vm_preview_loaded",{view_mode:ce,vm_id:_e?.sandboxHandle??null}),!G)try{const a=x.current?.contentWindow?.location?.pathname;if(!a)return;const f=Pe.current;if(f!==null&&(Pe.current=null,Ne(a)!==Ne(f))||Ne(a)===Ne(ke))return;se(a),et({path:a,pageKey:ve,params:We})}catch{}ce==="visual"&&yn(),ce==="blocks"&&$t()}},A.iframeBase)})]})}),S&&qe&&s.jsxs(s.Fragment,{children:[s.jsx(Bn,{withHandle:!0}),s.jsx(xt,{id:"preview-json-editor",defaultSize:"43%",minSize:"20%",className:"min-w-0 overflow-hidden",children:s.jsx(Un,{ref:F,virtualMcpId:t,pageKey:qe,onClose:M})})]})]})})]})}),s.jsx(ui,{open:ee,onOpenChange:O,isPending:Qe.isPending,error:ne,templates:$e,onSubmit:Ds})]})}function Bi(t){const e=fe.c(22),{virtualMcpId:n}=t,r=Te(),i=br(n),{activeTask:u,taskId:l,currentBranch:c}=jt(),o=ca(l),[d,h]=v.useState(!1);if(la({threadId:l,sandboxBranch:u?.branch??c,agentHasRepo:Wt(i?.metadata),threadHasRepo:Wt(o)||Wt(u?.metadata)})==="none"){let E;e[0]===Symbol.for("react.memo_cache_sentinel")?(E=s.jsx("div",{className:"flex size-14 items-center justify-center rounded-full bg-muted",children:s.jsx($n,{className:"size-7 text-foreground"})}),e[0]=E):E=e[0];let b;e[1]!==r?(b=r("mainPanelTabs.previewTab.noSourceToPreview"),e[1]=r,e[2]=b):b=e[2];let P;e[3]!==r?(P=r("mainPanelTabs.previewTab.connectGithubDescription"),e[3]=r,e[4]=P):P=e[4];let g,j;e[5]===Symbol.for("react.memo_cache_sentinel")?(g=()=>h(!0),j=s.jsx($n,{className:"size-4"}),e[5]=g,e[6]=j):(g=e[5],j=e[6]);let N;e[7]!==r?(N=r("mainPanelTabs.previewTab.connectGithub"),e[7]=r,e[8]=N):N=e[8];let y;e[9]!==N?(y=s.jsxs(He,{onClick:g,children:[j,N]}),e[9]=N,e[10]=y):y=e[10];let w;e[11]!==b||e[12]!==P||e[13]!==y?(w=s.jsx(nn,{className:"h-full",image:E,title:b,description:P,actions:y}),e[11]=b,e[12]=P,e[13]=y,e[14]=w):w=e[14];let k;e[15]!==d?(k=s.jsx(oa,{open:d,onOpenChange:h,mode:"agent"}),e[15]=d,e[16]=k):k=e[16];let x;return e[17]!==w||e[18]!==k?(x=s.jsxs(s.Fragment,{children:[w,k]}),e[17]=w,e[18]=k,e[19]=x):x=e[19],x}let p;return e[20]!==n?(p=s.jsx(Ai,{virtualMcpId:n}),e[20]=n,e[21]=p):p=e[21],p}function Gc(){const t=fe.c(2),e=da();let n;return t[0]!==e?(n=s.jsx(Xs,{tabId:"site-editor",children:s.jsx(Zs,{feature:"cms",children:s.jsx(Bi,{virtualMcpId:e})})}),t[0]=e,t[1]=n):n=t[1],n}export{Gc as default};