@qredence/fleet 0.6.0 → 0.6.2

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 (273) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/web/client/assets/agent-disclosure-CMrxF7L-.js +1 -0
  3. package/dist/web/client/assets/analytics-stub-C2vgmGm_.js +1 -0
  4. package/dist/web/client/assets/artifacts-panel-DmQghvw8.js +1 -0
  5. package/dist/web/client/assets/{bot-Bs7QWJ2q.js → bot-DbB9BKL0.js} +1 -1
  6. package/dist/web/client/assets/bundle-mjs-cJTHqqzI.js +1 -0
  7. package/dist/web/client/assets/button-Dl0ce3Y5.js +1 -0
  8. package/dist/web/client/assets/card-DCEnYd2G.js +1 -0
  9. package/dist/web/client/assets/chat-C24kD2SP.js +52 -0
  10. package/dist/web/client/assets/chat-command-palette-BIwjhE6s.js +1 -0
  11. package/dist/web/client/assets/check-B3LlvM65.js +1 -0
  12. package/dist/web/client/assets/{chevron-down-BEVGmnSb.js → chevron-down-DUUprRP5.js} +1 -1
  13. package/dist/web/client/assets/chevron-right-NVqQIoiO.js +1 -0
  14. package/dist/web/client/assets/{chunk-YOKDWASO-BAf618wr.js → chunk-YOKDWASO-Bte3iwlH.js} +6 -6
  15. package/dist/web/client/assets/citations-BUvM92nt.js +1 -0
  16. package/dist/web/client/assets/collapsible-CUxOjhDJ.js +1 -0
  17. package/dist/web/client/assets/command-Dv96gATQ.js +1 -0
  18. package/dist/web/client/assets/createBaseUIEventDetails-B58Jldei.js +1 -0
  19. package/dist/web/client/assets/createLucideIcon-_dfI7Arx.js +1 -0
  20. package/dist/web/client/assets/dialog-BCb4rQh0.js +1 -0
  21. package/dist/web/client/assets/dist-52wg4XPY.js +1 -0
  22. package/dist/web/client/assets/dist-DbHxXSgQ.js +41 -0
  23. package/dist/web/client/assets/ease-CMumuPlX.js +1 -0
  24. package/dist/web/client/assets/{eye-B0DFz5hL.js → eye-CDHqtVoE.js} +1 -1
  25. package/dist/web/client/assets/file-text-TmalmYrb.js +1 -0
  26. package/dist/web/client/assets/{folder-BC5p7qK7.js → folder-vuNT4shY.js} +1 -1
  27. package/dist/web/client/assets/{fork-picker-dialog-ByBOGVsa.js → fork-picker-dialog-CpwEwsxA.js} +1 -1
  28. package/dist/web/client/assets/gauge-BsDqNM1A.js +1 -0
  29. package/dist/web/client/assets/globals-DCtBkCSD.css +2 -0
  30. package/dist/web/client/assets/{hard-drive-CHqgr7VQ.js → hard-drive-BT7UxHQu.js} +1 -1
  31. package/dist/web/client/assets/highlighted-body-KPVGNVTW-CgT7gqvs.js +1 -0
  32. package/dist/web/client/assets/horizontal-resize-VLjLByUV.js +1 -0
  33. package/dist/web/client/assets/index-BGnQeUYE.js +12 -0
  34. package/dist/web/client/assets/input-CxZp56Im.js +1 -0
  35. package/dist/web/client/assets/input-group-D7lAfKHR.js +1 -0
  36. package/dist/web/client/assets/ipython-tool-CkHaO3PW.js +3 -0
  37. package/dist/web/client/assets/is-ref-object-BcRWZ4l7.js +1 -0
  38. package/dist/web/client/assets/{loader-circle-DjfHXUPB.js → loader-circle-B5GIZGxd.js} +1 -1
  39. package/dist/web/client/assets/markdown-BHkByC9K.js +2 -0
  40. package/dist/web/client/assets/{markdown-code-CuQcR3UO.js → markdown-code-CDTRq-HZ.js} +1 -1
  41. package/dist/web/client/assets/mermaid-HWGCJPDP-CY3N5ECk.js +1 -0
  42. package/dist/web/client/assets/message-queue-Dl8wbCOu.js +1 -0
  43. package/dist/web/client/assets/model-selector-list-CRZCXeBf.js +1 -0
  44. package/dist/web/client/assets/{notify-DgMKgZZW.js → notify-DjVixft7.js} +1 -1
  45. package/dist/web/client/assets/openui-renderer-Bkkx5kmA.js +378 -0
  46. package/dist/web/client/assets/{package-CdcJFPf2.js → package-BKBPgwMP.js} +1 -1
  47. package/dist/web/client/assets/{pencil-DcUwsKLn.js → pencil-CdO6qfv3.js} +1 -1
  48. package/dist/web/client/assets/{plug-Dt6VN0zF.js → plug-BRROUIw-.js} +1 -1
  49. package/dist/web/client/assets/prompt-input-WaGSKZCU.js +1 -0
  50. package/dist/web/client/assets/prompt-suggestions-BNyTcyWg.js +1 -0
  51. package/dist/web/client/assets/provider-catalog-C0XBIasJ.js +1 -0
  52. package/dist/web/client/assets/provider-label-Cka0ep0S.js +1 -0
  53. package/dist/web/client/assets/react-CwJFpaho.js +1 -0
  54. package/dist/web/client/assets/react-dom-DX3XddaT.js +1 -0
  55. package/dist/web/client/assets/{refresh-cw-IThTJ3j-.js → refresh-cw-l9WPHRkq.js} +1 -1
  56. package/dist/web/client/assets/repl-panel-L9dmPqio.js +1 -0
  57. package/dist/web/client/assets/{resource-helpers-Q2T0YCMO.js → resource-helpers-BuWybA8l.js} +1 -1
  58. package/dist/web/client/assets/resources-panel-mT-aMCvV.js +1 -0
  59. package/dist/web/client/assets/right-panel-context-CS8tJMzE.js +1 -0
  60. package/dist/web/client/assets/right-panel-registry-BCW7fQTG.js +2 -0
  61. package/dist/web/client/assets/{rotate-ccw-WNFNkKQD.js → rotate-ccw-CfGhzOv7.js} +1 -1
  62. package/dist/web/client/assets/routes-BWe5Iz-2.js +16 -0
  63. package/dist/web/client/assets/safe-external-url-BbAom7Bm.js +1 -0
  64. package/dist/web/client/assets/search-BjcXAUrI.js +1 -0
  65. package/dist/web/client/assets/session-insights-panel-B0rl37lo.js +1 -0
  66. package/dist/web/client/assets/session-reasoning-panel-8D2P7iaJ.js +1 -0
  67. package/dist/web/client/assets/{fleet-pi-tool-renderer-BEDIO3al.js → session-tool-renderer-3E3cv8D0.js} +30 -30
  68. package/dist/web/client/assets/settings-dialog-B8lHq2tT.js +2 -0
  69. package/dist/web/client/assets/{skeleton-CkR2VmWc.js → skeleton-C3mo31Qu.js} +1 -1
  70. package/dist/web/client/assets/skeleton-loaders-BMa_G4yX.js +1 -0
  71. package/dist/web/client/assets/{shield-check-CkA2viVW.js → sparkles-D8XIY8pN.js} +1 -1
  72. package/dist/web/client/assets/square-DQaQu9bp.js +1 -0
  73. package/dist/web/client/assets/{square-terminal-BYTN_I86.js → square-terminal-BsopiuN7.js} +1 -1
  74. package/dist/web/client/assets/{subagent-chat-panel-Yujplxpb.js → subagent-chat-panel-C5ukYiUx.js} +1 -1
  75. package/dist/web/client/assets/subagent-transcript-lqNcSVbH.js +1 -0
  76. package/dist/web/client/assets/subagents-panel-SJKhaVTr.js +1 -0
  77. package/dist/web/client/assets/{sun-BWiZFty0.js → sun-D0llhiMU.js} +1 -1
  78. package/dist/web/client/assets/surfaces-CpfsGAIA.js +1 -0
  79. package/dist/web/client/assets/switch-D3FhZU-S.js +1 -0
  80. package/dist/web/client/assets/terminal-BQAKkBY6.js +1 -0
  81. package/dist/web/client/assets/toast-lnCWGgSE.js +1 -0
  82. package/dist/web/client/assets/tokens-Ch5WqXC_.js +1 -0
  83. package/dist/web/client/assets/tool-result-B_yb2JoE.js +4 -0
  84. package/dist/web/client/assets/tool-timeline-VnMRQoLS.js +1 -0
  85. package/dist/web/client/assets/{triangle-alert-CU-gd7ui.js → triangle-alert-GAYh_5d3.js} +1 -1
  86. package/dist/web/client/assets/ui-preferences-aG2U2jjW.js +1 -0
  87. package/dist/web/client/assets/use-presence-7I2qv4qI.js +1 -0
  88. package/dist/web/client/assets/use-reduced-motion-BOcG709U.js +9 -0
  89. package/dist/web/client/assets/useBaseUiId-D9ZGPZ6f.js +1 -0
  90. package/dist/web/client/assets/useControlled-CgAAWIy9.js +1 -0
  91. package/dist/web/client/assets/utils-Brtgag-m.js +1 -0
  92. package/dist/web/client/assets/virtualized-turn-list-BgUgX6tM.js +6 -0
  93. package/dist/web/client/assets/workspace-panel-CKF5JQl2.js +1 -0
  94. package/dist/web/client/assets/workspace-path-nav-DqPbETfJ.js +2 -0
  95. package/dist/web/client/assets/{wrench-BJNNe07k.js → wrench-Myc12BTA.js} +1 -1
  96. package/dist/web/client/assets/x-BGsDD848.js +1 -0
  97. package/dist/web/client/bundle-budget.json +6 -6
  98. package/dist/web/launcher.mjs +10 -1
  99. package/dist/web/server/_tanstack-start-manifest_v-BDPifIFN-DTSNCHBX.js +91 -0
  100. package/dist/web/server/{artifacts-panel-CaKrX2XC-R37I4BHF.js → artifacts-panel-BN3DgqfV-N73J6N5Y.js} +39 -44
  101. package/dist/web/server/{chat-command-palette-7gbqEnm9-6XICQZN7.js → chat-command-palette-G8awyZRw-2QE7FXGT.js} +18 -18
  102. package/dist/web/server/{chunk-SALXCFVO.js → chunk-33QA7BQJ.js} +19 -1
  103. package/dist/web/server/{chunk-P6UMR32I.js → chunk-43S5N7SH.js} +80 -47
  104. package/dist/web/server/chunk-4EBSM4JR.js +74 -0
  105. package/dist/web/server/{chunk-BBBS5AS7.js → chunk-4OTHKQMG.js} +753 -677
  106. package/dist/web/server/{chunk-WM4PUT6M.js → chunk-6SOMNRAX.js} +535 -505
  107. package/dist/web/server/chunk-7E76R7MB.js +2138 -0
  108. package/dist/web/server/{chunk-K3BXQG3N.js → chunk-7FK6YEMA.js} +100 -95
  109. package/dist/web/server/chunk-7HXCGBUP.js +56 -0
  110. package/dist/web/server/{chunk-P66QQWUM.js → chunk-7NZ3FJDA.js} +14 -1
  111. package/dist/web/server/{chunk-WHBVQJ4K.js → chunk-7UTDOTOU.js} +11 -9
  112. package/dist/web/server/{chunk-OZO5ARFA.js → chunk-BQROC4PL.js} +11 -2
  113. package/dist/web/server/{chunk-WYL2DW5R.js → chunk-BUXJSBE3.js} +2 -2
  114. package/dist/web/server/{chunk-ZJFA4F5X.js → chunk-CAPTFJOC.js} +9 -7
  115. package/dist/web/server/{chunk-EH4BZ6QM.js → chunk-CCYLHNZJ.js} +1767 -52
  116. package/dist/web/server/{chunk-DJMHPJBP.js → chunk-CHEC7TWB.js} +3 -1
  117. package/dist/web/server/{chunk-PIOFZUOU.js → chunk-CW6KZUKT.js} +7 -6
  118. package/dist/web/server/chunk-DLA5TLKX.js +164 -0
  119. package/dist/web/server/{chunk-7SR6WDM2.js → chunk-E5HALE4M.js} +4 -4
  120. package/dist/web/server/{chunk-DZ2IC3FH.js → chunk-EDAWH2MT.js} +47 -46
  121. package/dist/web/server/{chunk-JQDLJ7KI.js → chunk-ENGEUJIH.js} +2288 -2438
  122. package/dist/web/server/{chunk-DI7XRK2H.js → chunk-ESM7OCRL.js} +4 -4
  123. package/dist/web/server/{chunk-KELEYPVK.js → chunk-FT74GAAH.js} +74861 -74854
  124. package/dist/web/server/{chunk-LZ4Q5KUJ.js → chunk-HQ5TEXHT.js} +40 -60
  125. package/dist/web/server/{chunk-YOM42BKD.js → chunk-IPV4GLJL.js} +16 -16
  126. package/dist/web/server/{chunk-KOUEJ3NU.js → chunk-IXGLKAPN.js} +54 -46
  127. package/dist/web/server/{chunk-EAE2QXRK.js → chunk-JPDRUSUD.js} +2 -3
  128. package/dist/web/server/{chunk-AGFRJQZ7.js → chunk-JVOW2NWC.js} +452 -450
  129. package/dist/web/server/chunk-K6PTNSCW.js +31 -0
  130. package/dist/web/server/{chunk-AR7O7JXD.js → chunk-KBWUBWVJ.js} +24 -1
  131. package/dist/web/server/{chunk-NXJ32VFR.js → chunk-MJXXVQNA.js} +91 -96
  132. package/dist/web/server/{chunk-N6NOTURM.js → chunk-NCK2FJAD.js} +30 -26
  133. package/dist/web/server/{chunk-LXJD6IGW.js → chunk-NMBH57JT.js} +94 -33
  134. package/dist/web/server/{chunk-EAJTWMK5.js → chunk-NZ6KQT2X.js} +2 -2
  135. package/dist/web/server/{chunk-CNXJN5HN.js → chunk-O2UYZT3Z.js} +11 -11
  136. package/dist/web/server/{chunk-YXXRP3NS.js → chunk-OMEDERPG.js} +21 -25
  137. package/dist/web/server/{chunk-BLSX7WHW.js → chunk-OSMP55KI.js} +23 -2
  138. package/dist/web/server/{chunk-S3PQ6HKH.js → chunk-OVJYUWSQ.js} +2 -2
  139. package/dist/web/server/{chunk-XLNCWZMZ.js → chunk-RXUMFFUV.js} +5 -3
  140. package/dist/web/server/{chunk-DO2O27B2.js → chunk-SDV3P3IW.js} +2 -2
  141. package/dist/web/server/chunk-TLNZNR7C.js +46 -0
  142. package/dist/web/server/{chunk-IJPCV6DH.js → chunk-UDD5W4CR.js} +32 -10
  143. package/dist/web/server/{chunk-HSJMLO36.js → chunk-UE32PAV2.js} +47 -57
  144. package/dist/web/server/{chunk-UAPNEWCA.js → chunk-WB2LJC3R.js} +29 -32
  145. package/dist/web/server/{chunk-ETTDO4UO.js → chunk-WTYNN6EV.js} +1 -26
  146. package/dist/web/server/{chunk-2ATMSG7U.js → chunk-WU6X3GPJ.js} +48 -5
  147. package/dist/web/server/{chunk-C5X6G26O.js → chunk-XJ6TGSUB.js} +45 -24
  148. package/dist/web/server/{chunk-YNUWKMNQ.js → chunk-YMPJMHXZ.js} +41 -155
  149. package/dist/web/server/{chunk-GETSIVNU.js → chunk-YVGCPUAW.js} +7 -7
  150. package/dist/web/server/{chunk-4UBOIY2S.js → chunk-ZNFXBGLK.js} +1 -1
  151. package/dist/web/server/chunk-ZOVXMNJM.js +477 -0
  152. package/dist/web/server/{fork-picker-dialog-DlINz9UQ-UWIXFDJX.js → fork-picker-dialog-YKlapaxN-DR5L74ST.js} +9 -8
  153. package/dist/web/server/{markdown-DTnMbD87-FXGGAPJD.js → markdown-BzNejPoZ-6ITTDAV6.js} +2 -3
  154. package/dist/web/server/{markdown-code-BStjFfsy-SSLWUT4S.js → markdown-code-DAwXuW6m-HHVELO6I.js} +3 -4
  155. package/dist/web/server/{fleet-message-queue-BS-cZ56r-GLZXUKDF.js → message-queue-Demph1x4-RBJUC3AT.js} +14 -10
  156. package/dist/web/server/{model-selector-list-jBTZc2Mu-OXJOS5NA.js → model-selector-list-BmzLiCx9-TK6JGGKU.js} +20 -19
  157. package/dist/web/server/{openui-renderer-Biyyjhjn-SJOEKPTJ.js → openui-renderer-moJGf0LA-QCU3PI6H.js} +17 -18
  158. package/dist/web/server/{prompt-suggestions-D4AEEY7K-RZSP7PWV.js → prompt-suggestions-yPZqX__K-3VGJC4IF.js} +7 -6
  159. package/dist/web/server/{repl-panel-D5KsoJik-BQKO53JO.js → repl-panel-CgUF1qUw-3DFD2V53.js} +10 -11
  160. package/dist/web/server/{resources-panel-CE5pD4vy-V5FXBTYC.js → resources-panel-ChUliWV--JITAGS6Q.js} +6 -7
  161. package/dist/web/server/{router-DWALoX_M-I5CBL7FQ.js → router-CPdFlpbe-LAD4MNZB.js} +3117 -241
  162. package/dist/web/server/{routes-BBVirYfL-5WXMOT7M.js → routes-hkom6S6L-DUPPQHPY.js} +8753 -7974
  163. package/dist/web/server/server.js +2 -2
  164. package/dist/web/server/{session-insights-panel-CUhdgvRt-VB2HUCQP.js → session-insights-panel-xgrkX1Rp-FDNURBXZ.js} +9 -9
  165. package/dist/web/server/{fleet-reasoning-panel-BxC2COxi-GPLMQSTT.js → session-reasoning-panel-m1RgcIph-NUXGXVKE.js} +39 -40
  166. package/dist/web/server/session-tool-renderer-CglQ2ky7-2JVYNZG2.js +45 -0
  167. package/dist/web/server/{settings-dialog-DndPbM-v-RFNXXEAN.js → settings-dialog-BCEfmgtP-T3WQEZHB.js} +1912 -3120
  168. package/dist/web/server/{subagent-chat-panel-C0RpnXav-J7VYO7QY.js → subagent-chat-panel-BTwI1kdB-LKBWA4GD.js} +32 -41
  169. package/dist/web/server/{subagents-panel-jDqIn9Nh-YEV6QLUY.js → subagents-panel-8Z9_csoV-HYMEEBHB.js} +37 -45
  170. package/dist/web/server/{fleet-tool-timeline-IB36_PB2-XJENTO6I.js → tool-timeline-QL9k5dzA-RLU26HXT.js} +6 -6
  171. package/dist/web/server/{workspace-panel-CX_Vo6As-EWO6AMPI.js → workspace-panel-BHEB9nRM-TS62SYBA.js} +64 -46
  172. package/package.json +1 -1
  173. package/dist/web/client/assets/action-swap-roll-BB8DFMuf.js +0 -1
  174. package/dist/web/client/assets/agent-activity-CwMDU7aP.js +0 -1
  175. package/dist/web/client/assets/agent-disclosure-B8SnhQXL.js +0 -1
  176. package/dist/web/client/assets/analytics-stub-Cas1He0w.js +0 -1
  177. package/dist/web/client/assets/artifacts-panel-CJ75gQub.js +0 -1
  178. package/dist/web/client/assets/artifacts-utils-N_kUFbz2.js +0 -1
  179. package/dist/web/client/assets/bundle-mjs-DKHVkVWu.js +0 -1
  180. package/dist/web/client/assets/button-BR2WWrFo.js +0 -1
  181. package/dist/web/client/assets/card-BKl76a3R.js +0 -1
  182. package/dist/web/client/assets/chat-Ci2cEQrR.js +0 -52
  183. package/dist/web/client/assets/chat-command-palette-CkISHfKE.js +0 -1
  184. package/dist/web/client/assets/check-JjHKAZas.js +0 -1
  185. package/dist/web/client/assets/chevron-right-DrJxToLs.js +0 -1
  186. package/dist/web/client/assets/chevron-up-CnSvySGH.js +0 -1
  187. package/dist/web/client/assets/circle-alert-CONlFReH.js +0 -1
  188. package/dist/web/client/assets/circle-x-CkKCB__4.js +0 -1
  189. package/dist/web/client/assets/citations-C_tPOJE_.js +0 -2
  190. package/dist/web/client/assets/cn-C8c0S2mI.js +0 -1
  191. package/dist/web/client/assets/collapsible-BoXtZZWN.js +0 -1
  192. package/dist/web/client/assets/command-_WjnervL.js +0 -1
  193. package/dist/web/client/assets/createBaseUIEventDetails-DV0dQrBX.js +0 -1
  194. package/dist/web/client/assets/createLucideIcon-DwxZHm0M.js +0 -1
  195. package/dist/web/client/assets/dialog-BEZuZhzk.js +0 -1
  196. package/dist/web/client/assets/dist-BPaFisIZ.js +0 -41
  197. package/dist/web/client/assets/earth-DGZXAN5r.js +0 -1
  198. package/dist/web/client/assets/ease-u56MhKYS.js +0 -1
  199. package/dist/web/client/assets/file-text-T-NcAlZs.js +0 -1
  200. package/dist/web/client/assets/fleet-message-queue-BCno4XP-.js +0 -1
  201. package/dist/web/client/assets/fleet-reasoning-panel-CbkO7u-v.js +0 -1
  202. package/dist/web/client/assets/fleet-subagent-list-iKUtLJKZ.js +0 -1
  203. package/dist/web/client/assets/fleet-tool-timeline-C8heL7ae.js +0 -1
  204. package/dist/web/client/assets/gauge-DNpstbBn.js +0 -1
  205. package/dist/web/client/assets/globals-B_I1Eq1u.css +0 -2
  206. package/dist/web/client/assets/highlighted-body-KPVGNVTW-sUCZ1fHv.js +0 -1
  207. package/dist/web/client/assets/horizontal-resize-CwoDojST.js +0 -1
  208. package/dist/web/client/assets/image-BbPmlw-n.js +0 -1
  209. package/dist/web/client/assets/index-DJ1fFbQu.js +0 -12
  210. package/dist/web/client/assets/input-0wwjWjKq.js +0 -1
  211. package/dist/web/client/assets/input-group-Tb5TYbzi.js +0 -1
  212. package/dist/web/client/assets/ipython-tool-ldJ9F1Cw.js +0 -3
  213. package/dist/web/client/assets/layout-gyLzPvVv.js +0 -1
  214. package/dist/web/client/assets/markdown-DInPmRUG.js +0 -2
  215. package/dist/web/client/assets/mermaid-HWGCJPDP-Bm7CuruA.js +0 -1
  216. package/dist/web/client/assets/message-square-hbDao-A1.js +0 -1
  217. package/dist/web/client/assets/model-selector-list-Ch05B2nZ.js +0 -1
  218. package/dist/web/client/assets/openui-renderer-Bf60nxNi.js +0 -378
  219. package/dist/web/client/assets/plus-DXN1Bg_z.js +0 -1
  220. package/dist/web/client/assets/prompt-input-qPIXZ-Rb.js +0 -1
  221. package/dist/web/client/assets/prompt-suggestions-Cc--lSNR.js +0 -1
  222. package/dist/web/client/assets/provider-catalog-D8G66gwc.js +0 -1
  223. package/dist/web/client/assets/provider-label-DDLRnZyC.js +0 -1
  224. package/dist/web/client/assets/react-dom-Bwxum3ti.js +0 -1
  225. package/dist/web/client/assets/repl-panel-DsPX04Xr.js +0 -1
  226. package/dist/web/client/assets/resources-panel-D867-goy.js +0 -1
  227. package/dist/web/client/assets/right-panel-context-DHlNWJsF.js +0 -1
  228. package/dist/web/client/assets/right-panel-registry-Dp8yX-oL.js +0 -2
  229. package/dist/web/client/assets/routes-DpgMJZ5n.js +0 -16
  230. package/dist/web/client/assets/safe-external-url-D3PJJIcM.js +0 -1
  231. package/dist/web/client/assets/search-eWVnAJsb.js +0 -1
  232. package/dist/web/client/assets/session-insights-panel-YnaXvTpi.js +0 -1
  233. package/dist/web/client/assets/settings-dialog-YJkvt5EB.js +0 -2
  234. package/dist/web/client/assets/skeleton-loaders-C9vHwAYV.js +0 -1
  235. package/dist/web/client/assets/sparkles-DuclzqlE.js +0 -1
  236. package/dist/web/client/assets/square-Bhn8gjr0.js +0 -1
  237. package/dist/web/client/assets/subagent-transcript-CnI-mqN0.js +0 -1
  238. package/dist/web/client/assets/subagent-utils-DDH5qm9Z.js +0 -1
  239. package/dist/web/client/assets/subagents-panel-CjXEdimj.js +0 -1
  240. package/dist/web/client/assets/surfaces-DI-U-_2a.js +0 -1
  241. package/dist/web/client/assets/switch-9rTeg6J6.js +0 -1
  242. package/dist/web/client/assets/terminal-DOS1s1gm.js +0 -1
  243. package/dist/web/client/assets/toast-Bt9p2OL4.js +0 -1
  244. package/dist/web/client/assets/tool-result-DfnPN0FQ.js +0 -4
  245. package/dist/web/client/assets/ui-preferences-CImQGZm_.js +0 -1
  246. package/dist/web/client/assets/use-reduced-motion-eORd7fqW.js +0 -9
  247. package/dist/web/client/assets/useBaseUiId-CHqXB2UQ.js +0 -1
  248. package/dist/web/client/assets/useControlled-CJJ9BOQB.js +0 -1
  249. package/dist/web/client/assets/utils-Eg7xtNmV.js +0 -1
  250. package/dist/web/client/assets/virtualized-turn-list--Vynre4D.js +0 -6
  251. package/dist/web/client/assets/workspace-panel-CPPIznT9.js +0 -1
  252. package/dist/web/client/assets/workspace-path-nav-C0AQNZyy.js +0 -1
  253. package/dist/web/client/assets/x-CsRC_tCI.js +0 -1
  254. package/dist/web/server/_tanstack-start-manifest_v-DS_CSIFQ-WB3VTKF3.js +0 -95
  255. package/dist/web/server/agent-activity-CS2rbF_C-A3R26CYH.js +0 -514
  256. package/dist/web/server/chunk-3JMESBAT.js +0 -35
  257. package/dist/web/server/chunk-42XU6WV7.js +0 -56
  258. package/dist/web/server/chunk-7SD2ZSEA.js +0 -86
  259. package/dist/web/server/chunk-AQ66E5OW.js +0 -33
  260. package/dist/web/server/chunk-BYXBJQAS.js +0 -0
  261. package/dist/web/server/chunk-FAGDMGLK.js +0 -6589
  262. package/dist/web/server/chunk-FJV6EQDW.js +0 -36
  263. package/dist/web/server/chunk-GL6HWDJB.js +0 -19
  264. package/dist/web/server/chunk-HFQTI7AX.js +0 -42
  265. package/dist/web/server/chunk-L46H6IDX.js +0 -13
  266. package/dist/web/server/chunk-ON33WDZX.js +0 -31
  267. package/dist/web/server/chunk-PVJCTQFK.js +0 -22
  268. package/dist/web/server/chunk-QPNUGF3V.js +0 -35
  269. package/dist/web/server/chunk-TWYHHG5N.js +0 -1196
  270. package/dist/web/server/chunk-YKVGQBZA.js +0 -1262
  271. package/dist/web/server/chunk-ZCVWADNW.js +0 -37
  272. package/dist/web/server/fleet-pi-tool-renderer-umKunT3K-O4GBH35V.js +0 -51
  273. package/dist/web/server/fleet-subagent-list-CpSYzCIq-JDH2LHSS.js +0 -18
@@ -9,6 +9,7 @@ import {
9
9
  android,
10
10
  contains,
11
11
  createAttribute,
12
+ fastComponent,
12
13
  focusable,
13
14
  getFloatingFocusElement,
14
15
  getNextTabbable,
@@ -26,24 +27,25 @@ import {
26
27
  jsdom,
27
28
  mergeCleanups,
28
29
  ownerDocument,
30
+ popupOpen$1,
31
+ pressed,
29
32
  tabbable,
30
33
  usePortalContext,
31
34
  useTimeout,
32
35
  webkit
33
- } from "./chunk-LZ4Q5KUJ.js";
36
+ } from "./chunk-HQ5TEXHT.js";
37
+ import {
38
+ X
39
+ } from "./chunk-JBLHIEVG.js";
34
40
  import {
35
41
  useBaseUiId,
36
42
  useTransitionStatus,
37
43
  useValueAsRef
38
- } from "./chunk-7SR6WDM2.js";
39
- import {
40
- X
41
- } from "./chunk-JBLHIEVG.js";
44
+ } from "./chunk-E5HALE4M.js";
42
45
  import {
43
46
  AnimationFrame,
44
47
  EMPTY_OBJECT,
45
48
  NOOP,
46
- TransitionStatusDataAttributes,
47
49
  addEventListener,
48
50
  closePress,
49
51
  createChangeEventDetails,
@@ -64,7 +66,6 @@ import {
64
66
  outsidePress,
65
67
  resolveRef,
66
68
  transitionStatusMapping,
67
- triggerHover,
68
69
  triggerPress,
69
70
  useAnimationFrame,
70
71
  useButton,
@@ -75,16 +76,49 @@ import {
75
76
  useRefWithInit,
76
77
  useRenderElement,
77
78
  useStableCallback
78
- } from "./chunk-C5X6G26O.js";
79
+ } from "./chunk-XJ6TGSUB.js";
79
80
  import {
80
81
  cn
81
- } from "./chunk-DJMHPJBP.js";
82
+ } from "./chunk-CHEC7TWB.js";
82
83
 
83
- // web/app/dist/server/assets/dialog-D2wc3OZf.js
84
+ // web/app/dist/server/assets/dialog-Dhhlzx6r.js
84
85
  import * as React$1 from "react";
85
86
  import { createContext as createContext2, useContext as useContext2 } from "react";
86
87
  import { jsx, jsxs } from "react/jsx-runtime";
87
- import * as ReactDOM from "react-dom";
88
+ import "react-dom";
89
+ var open$1 = "data-open";
90
+ var closed$1 = "data-closed";
91
+ var anchorHidden = "data-anchor-hidden";
92
+ var TRIGGER_HOOK = { [popupOpen$1]: "" };
93
+ var PRESSABLE_TRIGGER_HOOK = {
94
+ [popupOpen$1]: "",
95
+ [pressed]: ""
96
+ };
97
+ var POPUP_OPEN_HOOK = { [open$1]: "" };
98
+ var POPUP_CLOSED_HOOK = { [closed$1]: "" };
99
+ var ANCHOR_HIDDEN_HOOK = { [anchorHidden]: "" };
100
+ var triggerOpenStateMapping = { open(value) {
101
+ if (value) return TRIGGER_HOOK;
102
+ return null;
103
+ } };
104
+ var pressableTriggerOpenStateMapping = { open(value) {
105
+ if (value) return PRESSABLE_TRIGGER_HOOK;
106
+ return null;
107
+ } };
108
+ var popupStateMapping = {
109
+ open(value) {
110
+ if (value) return POPUP_OPEN_HOOK;
111
+ return POPUP_CLOSED_HOOK;
112
+ },
113
+ anchorHidden(value) {
114
+ if (value) return ANCHOR_HIDDEN_HOOK;
115
+ return null;
116
+ }
117
+ };
118
+ var popupTransitionStateMapping = {
119
+ ...popupStateMapping,
120
+ ...transitionStatusMapping
121
+ };
88
122
  function getNodeChildren(nodes, id, onlyOpenChildren = true) {
89
123
  return nodes.filter((node) => node.parentId === id).flatMap((child) => [...!onlyOpenChildren || child.context?.open ? [child] : [], ...getNodeChildren(nodes, child.id, onlyOpenChildren)]);
90
124
  }
@@ -779,7 +813,7 @@ function useDismiss(context, props = {}) {
779
813
  const store = "rootStore" in context ? context.rootStore : context;
780
814
  const open = store.useState("open");
781
815
  const floatingElement = store.useState("floatingElement");
782
- const { dataRef } = store.context;
816
+ const { dataRef, events } = store.context;
783
817
  const tree = useFloatingTree(externalTree);
784
818
  const outsidePressFn = useStableCallback(typeof outsidePressProp === "function" ? outsidePressProp : () => false);
785
819
  const outsidePress$1 = typeof outsidePressProp === "function" ? outsidePressFn : outsidePressProp;
@@ -789,6 +823,7 @@ function useDismiss(context, props = {}) {
789
823
  const pressStartedInsideRef = React$1.useRef(false);
790
824
  const pressStartPreventedRef = React$1.useRef(false);
791
825
  const suppressNextOutsideClickRef = React$1.useRef(false);
826
+ const sawPressWhileOpenRef = React$1.useRef(false);
792
827
  const isComposingRef = React$1.useRef(false);
793
828
  const currentPointerTypeRef = React$1.useRef("");
794
829
  const touchStateRef = React$1.useRef(null);
@@ -838,11 +873,24 @@ function useDismiss(context, props = {}) {
838
873
  if (pressStartedInsideRef.current) pressStartPreventedRef.current = true;
839
874
  });
840
875
  React$1.useEffect(() => {
841
- if (!open || !enabled) return clearInsideReactTree;
876
+ function handleOpenChange(details) {
877
+ if (!details.open) sawPressWhileOpenRef.current = false;
878
+ }
879
+ events.on("openchange", handleOpenChange);
880
+ return () => {
881
+ events.off("openchange", handleOpenChange);
882
+ };
883
+ }, [events]);
884
+ React$1.useEffect(() => {
885
+ if (!open || !enabled) {
886
+ if (!open) sawPressWhileOpenRef.current = false;
887
+ return clearInsideReactTree;
888
+ }
842
889
  dataRef.current.__escapeKeyBubbles = escapeKeyBubbles;
843
890
  dataRef.current.__outsidePressBubbles = outsidePressBubbles;
844
891
  const compositionTimeout = new Timeout();
845
892
  const preventedPressSuppressionTimeout = new Timeout();
893
+ const doc = ownerDocument(floatingElement);
846
894
  function handleCompositionStart() {
847
895
  compositionTimeout.clear();
848
896
  isComposingRef.current = true;
@@ -919,10 +967,13 @@ function useDismiss(context, props = {}) {
919
967
  if (pressedVerticalScrollbar || pressedHorizontalScrollbar) return;
920
968
  }
921
969
  if (isEventWithinFloatingTree(event)) return;
922
- if (getOutsidePressEvent() === "intentional" && suppressNextOutsideClickRef.current) {
923
- preventedPressSuppressionTimeout.clear();
924
- suppressNextOutsideClickRef.current = false;
925
- return;
970
+ if (getOutsidePressEvent() === "intentional") {
971
+ if (event.detail !== 0 && !isVirtualClick(event) && !sawPressWhileOpenRef.current) return;
972
+ if (suppressNextOutsideClickRef.current) {
973
+ preventedPressSuppressionTimeout.clear();
974
+ suppressNextOutsideClickRef.current = false;
975
+ return;
976
+ }
926
977
  }
927
978
  if (typeof outsidePress$1 === "function" && !outsidePress$1(event)) return;
928
979
  if (hasBlockingChild("__outsidePressBubbles")) return;
@@ -966,7 +1017,10 @@ function useDismiss(context, props = {}) {
966
1017
  }
967
1018
  function closeOnPressOutsideCapture(event) {
968
1019
  cancelDismissOnEndTimeout.clear();
969
- if (event.type === "pointerdown") currentPointerTypeRef.current = event.pointerType;
1020
+ if (event.type === "pointerdown") {
1021
+ if (event.button === 0) sawPressWhileOpenRef.current = true;
1022
+ currentPointerTypeRef.current = event.pointerType;
1023
+ }
970
1024
  if (event.type === "mousedown" && touchStateRef.current && !touchStateRef.current.dismissOnMouseDown) return;
971
1025
  addTargetEventListenerOnce(event, (targetEvent) => {
972
1026
  if (targetEvent.type === "pointerdown") handlePointerDown(targetEvent);
@@ -974,6 +1028,7 @@ function useDismiss(context, props = {}) {
974
1028
  });
975
1029
  }
976
1030
  function handlePressEndCapture(event) {
1031
+ if (event.type === "pointercancel") sawPressWhileOpenRef.current = false;
977
1032
  if (!pressStartedInsideRef.current) return;
978
1033
  const pressStartedInsideDefaultPrevented = pressStartPreventedRef.current;
979
1034
  resetPressStartState();
@@ -1018,8 +1073,16 @@ function useDismiss(context, props = {}) {
1018
1073
  function handleTouchEndCapture(event) {
1019
1074
  addTargetEventListenerOnce(event, handleTouchEnd);
1020
1075
  }
1021
- const doc = ownerDocument(floatingElement);
1022
- const unsubscribe = mergeCleanups(escapeKey$1 && mergeCleanups(addEventListener(doc, "keydown", closeOnEscapeKeyDown), addEventListener(doc, "compositionstart", handleCompositionStart), addEventListener(doc, "compositionend", handleCompositionEnd)), outsidePressEnabled && mergeCleanups(addEventListener(doc, "click", closeOnPressOutsideCapture, true), addEventListener(doc, "pointerdown", closeOnPressOutsideCapture, true), addEventListener(doc, "pointerup", handlePressEndCapture, true), addEventListener(doc, "pointercancel", handlePressEndCapture, true), addEventListener(doc, "mousedown", closeOnPressOutsideCapture, true), addEventListener(doc, "mouseup", handlePressEndCapture, true), addEventListener(doc, "touchstart", handleTouchStartCapture, true), addEventListener(doc, "touchmove", handleTouchMoveCapture, true), addEventListener(doc, "touchend", handleTouchEndCapture, true)));
1076
+ const unsubscribe = mergeCleanups(escapeKey$1 && mergeCleanups(addEventListener(doc, "keydown", closeOnEscapeKeyDown), addEventListener(doc, "compositionstart", handleCompositionStart), addEventListener(doc, "compositionend", handleCompositionEnd)), outsidePressEnabled && mergeCleanups(addEventListener(doc, "click", closeOnPressOutsideCapture, true), addEventListener(doc, "pointerdown", closeOnPressOutsideCapture, true), addEventListener(doc, "pointerup", handlePressEndCapture, true), addEventListener(doc, "pointercancel", handlePressEndCapture, true), addEventListener(doc, "mousedown", closeOnPressOutsideCapture, true), addEventListener(doc, "mouseup", handlePressEndCapture, true), addEventListener(doc, "touchstart", handleTouchStartCapture, {
1077
+ capture: true,
1078
+ passive: true
1079
+ }), addEventListener(doc, "touchmove", handleTouchMoveCapture, {
1080
+ capture: true,
1081
+ passive: true
1082
+ }), addEventListener(doc, "touchend", handleTouchEndCapture, {
1083
+ capture: true,
1084
+ passive: true
1085
+ })));
1023
1086
  return () => {
1024
1087
  unsubscribe();
1025
1088
  compositionTimeout.clear();
@@ -1212,43 +1275,51 @@ function PopupHandleAttachment({ handle, store }) {
1212
1275
  }, [handle, store]);
1213
1276
  return null;
1214
1277
  }
1278
+ function syncTriggerCount(store) {
1279
+ const triggerCount = store.context.triggerElements.size;
1280
+ if (store.select("open") && store.state.triggerCount !== triggerCount) store.set("triggerCount", triggerCount);
1281
+ }
1215
1282
  function useTriggerRegistration(id, store) {
1216
- const registeredElementIdRef = React$1.useRef(null);
1217
- const registeredElementRef = React$1.useRef(null);
1218
- return React$1.useCallback((element) => {
1219
- if (id === void 0) return;
1220
- let shouldSyncTriggerCount = false;
1221
- if (registeredElementIdRef.current !== null) {
1222
- const registeredId = registeredElementIdRef.current;
1223
- const registeredElement = registeredElementRef.current;
1224
- const currentElement = store.context.triggerElements.getById(registeredId);
1225
- if (registeredElement && currentElement === registeredElement) {
1226
- store.context.triggerElements.delete(registeredId);
1227
- shouldSyncTriggerCount = true;
1283
+ const registrationRef = React$1.useRef(null);
1284
+ return useStableCallback((element) => {
1285
+ const registration = registrationRef.current;
1286
+ if (registration !== null) {
1287
+ if (registration.element === element && registration.store === store && registration.id === id) return;
1288
+ registrationRef.current = null;
1289
+ const registeredStore = registration.store;
1290
+ if (registeredStore.context.triggerElements.getById(registration.id) === registration.element) {
1291
+ registeredStore.context.triggerElements.delete(registration.id);
1292
+ syncTriggerCount(registeredStore);
1228
1293
  }
1229
- registeredElementIdRef.current = null;
1230
- registeredElementRef.current = null;
1231
1294
  }
1232
- if (element !== null) {
1233
- registeredElementIdRef.current = id;
1234
- registeredElementRef.current = element;
1295
+ if (element !== null && id !== void 0) {
1296
+ registrationRef.current = {
1297
+ store,
1298
+ id,
1299
+ element
1300
+ };
1235
1301
  store.context.triggerElements.add(id, element);
1236
- shouldSyncTriggerCount = true;
1237
- }
1238
- if (shouldSyncTriggerCount) {
1239
- const triggerCount = store.context.triggerElements.size;
1240
- if (store.select("open") && store.state.triggerCount !== triggerCount) store.set("triggerCount", triggerCount);
1302
+ syncTriggerCount(store);
1241
1303
  }
1242
- }, [store, id]);
1304
+ });
1243
1305
  }
1244
- function setPopupOpenState(state, open, trigger, preventUnmountOnClose = false) {
1245
- if (open) state.preventUnmountingOnClose = false;
1246
- else if (preventUnmountOnClose) state.preventUnmountingOnClose = true;
1306
+ function createPopupOpenState(state, open, trigger, preventUnmountOnClose = false) {
1307
+ let preventUnmountingOnClose = state.preventUnmountingOnClose;
1308
+ if (open) preventUnmountingOnClose = false;
1309
+ else if (preventUnmountOnClose) preventUnmountingOnClose = true;
1247
1310
  const triggerId = trigger?.id ?? null;
1311
+ let activeTriggerId = state.activeTriggerId;
1312
+ let activeTriggerElement = state.activeTriggerElement;
1248
1313
  if (triggerId || open) {
1249
- state.activeTriggerId = triggerId;
1250
- state.activeTriggerElement = trigger ?? null;
1314
+ activeTriggerId = triggerId;
1315
+ activeTriggerElement = trigger ?? null;
1251
1316
  }
1317
+ return {
1318
+ open,
1319
+ preventUnmountingOnClose,
1320
+ activeTriggerId,
1321
+ activeTriggerElement
1322
+ };
1252
1323
  }
1253
1324
  function attachPreventUnmountOnClose(eventDetails) {
1254
1325
  let preventUnmountOnClose = false;
@@ -1257,30 +1328,6 @@ function attachPreventUnmountOnClose(eventDetails) {
1257
1328
  };
1258
1329
  return () => preventUnmountOnClose;
1259
1330
  }
1260
- function applyPopupOpenChange(store, nextOpen, eventDetails, options = {}) {
1261
- const reason = eventDetails.reason;
1262
- const isHover = reason === triggerHover;
1263
- const isFocusOpen = nextOpen && reason === "trigger-focus";
1264
- const isDismissClose = !nextOpen && (reason === "trigger-press" || reason === "escape-key");
1265
- const shouldPreventUnmountOnClose = attachPreventUnmountOnClose(eventDetails);
1266
- store.context.onOpenChange?.(nextOpen, eventDetails);
1267
- if (eventDetails.isCanceled) return;
1268
- options.onBeforeDispatch?.();
1269
- store.state.floatingRootContext.dispatchOpenChange(nextOpen, eventDetails);
1270
- const changeState = () => {
1271
- const updatedState = {
1272
- ...options.extraState,
1273
- open: nextOpen
1274
- };
1275
- if (isFocusOpen) updatedState.instantType = "focus";
1276
- else if (isDismissClose) updatedState.instantType = "dismiss";
1277
- else if (isHover) updatedState.instantType = void 0;
1278
- setPopupOpenState(updatedState, nextOpen, eventDetails.trigger, shouldPreventUnmountOnClose());
1279
- store.update(updatedState);
1280
- };
1281
- if (isHover) ReactDOM.flushSync(changeState);
1282
- else changeState();
1283
- }
1284
1331
  function useTriggerDataForwarding(triggerId, triggerElementRef, store, stateUpdates) {
1285
1332
  const isMountedByThisTrigger = store.useState("isMountedByTrigger", triggerId);
1286
1333
  const baseRegisterTrigger = useTriggerRegistration(triggerId, store);
@@ -1288,27 +1335,43 @@ function useTriggerDataForwarding(triggerId, triggerElementRef, store, stateUpda
1288
1335
  const open = store.select("open");
1289
1336
  const activeTriggerId = store.select("activeTriggerId");
1290
1337
  if (activeTriggerId === triggerId) {
1291
- store.update({
1338
+ const changes = {
1292
1339
  activeTriggerElement: element,
1293
1340
  ...open ? stateUpdates : null
1294
- });
1341
+ };
1342
+ store.update(changes);
1295
1343
  return;
1296
1344
  }
1297
- if (activeTriggerId == null && open) store.update({
1298
- activeTriggerId: triggerId,
1299
- activeTriggerElement: element,
1300
- ...stateUpdates
1301
- });
1345
+ if (activeTriggerId == null && open) {
1346
+ const changes = {
1347
+ activeTriggerId: triggerId ?? null,
1348
+ activeTriggerElement: element,
1349
+ ...stateUpdates
1350
+ };
1351
+ store.update(changes);
1352
+ }
1302
1353
  });
1303
- const registerTrigger = React$1.useCallback((element) => {
1354
+ const registerTrigger = useStableCallback((element) => {
1304
1355
  baseRegisterTrigger(element);
1305
1356
  if (element) applyTriggerData(element);
1306
- }, [baseRegisterTrigger, applyTriggerData]);
1357
+ });
1307
1358
  useIsoLayoutEffect(() => {
1308
- if (isMountedByThisTrigger) store.update({
1309
- activeTriggerElement: triggerElementRef.current,
1310
- ...stateUpdates
1311
- });
1359
+ registerTrigger(triggerElementRef.current);
1360
+ return () => registerTrigger(null);
1361
+ }, [
1362
+ registerTrigger,
1363
+ triggerElementRef,
1364
+ store,
1365
+ triggerId
1366
+ ]);
1367
+ useIsoLayoutEffect(() => {
1368
+ if (isMountedByThisTrigger) {
1369
+ const changes = {
1370
+ activeTriggerElement: triggerElementRef.current,
1371
+ ...stateUpdates
1372
+ };
1373
+ store.update(changes);
1374
+ }
1312
1375
  }, [
1313
1376
  isMountedByThisTrigger,
1314
1377
  store,
@@ -1387,8 +1450,8 @@ function useImplicitActiveTrigger(store, options = {}) {
1387
1450
  closeOnActiveTriggerUnmount
1388
1451
  ]);
1389
1452
  }
1390
- function useOpenStateTransitions(open, store, onUnmount) {
1391
- const { mounted, setMounted, transitionStatus } = useTransitionStatus(open);
1453
+ function useOpenStateTransitions(open, store, onUnmount, animateInitialOpen) {
1454
+ const { mounted, setMounted, transitionStatus } = useTransitionStatus(open, false, false, animateInitialOpen);
1392
1455
  const preventUnmountingOnClose = store.useState("preventUnmountingOnClose");
1393
1456
  const syncedPreventUnmountingOnClose = open ? false : preventUnmountingOnClose;
1394
1457
  store.useSyncedValues({
@@ -1495,27 +1558,24 @@ var PopupTriggerMap = class {
1495
1558
  return this.idMap.size;
1496
1559
  }
1497
1560
  };
1498
- function getEmptyRootContext() {
1499
- return new FloatingRootStore({
1500
- open: false,
1501
- transitionStatus: void 0,
1502
- floatingElement: null,
1503
- referenceElement: null,
1504
- triggerElements: new PopupTriggerMap(),
1505
- floatingId: void 0,
1506
- syncOnly: false,
1507
- nested: false,
1508
- onOpenChange: void 0
1509
- });
1510
- }
1511
- function createInitialPopupStoreState() {
1561
+ function createInitialPopupStoreState(triggerElements, floatingId, nested = false) {
1512
1562
  return {
1513
1563
  open: false,
1514
1564
  openProp: void 0,
1515
1565
  mounted: false,
1516
1566
  transitionStatus: void 0,
1517
- floatingRootContext: getEmptyRootContext(),
1518
- floatingId: void 0,
1567
+ floatingRootContext: new FloatingRootStore({
1568
+ open: false,
1569
+ transitionStatus: void 0,
1570
+ floatingElement: null,
1571
+ referenceElement: null,
1572
+ triggerElements,
1573
+ floatingId,
1574
+ syncOnly: true,
1575
+ nested,
1576
+ onOpenChange: void 0
1577
+ }),
1578
+ floatingId,
1519
1579
  triggerCount: 0,
1520
1580
  preventUnmountingOnClose: false,
1521
1581
  payload: void 0,
@@ -1529,19 +1589,6 @@ function createInitialPopupStoreState() {
1529
1589
  popupProps: EMPTY_OBJECT
1530
1590
  };
1531
1591
  }
1532
- function createPopupFloatingRootContext(triggerElements, floatingId, nested = false) {
1533
- return new FloatingRootStore({
1534
- open: false,
1535
- transitionStatus: void 0,
1536
- floatingElement: null,
1537
- referenceElement: null,
1538
- triggerElements,
1539
- floatingId,
1540
- syncOnly: true,
1541
- nested,
1542
- onOpenChange: void 0
1543
- });
1544
- }
1545
1592
  var activeTriggerIdSelector = (state) => state.triggerIdProp ?? state.activeTriggerId;
1546
1593
  var openSelector = (state) => state.openProp ?? state.open;
1547
1594
  var popupIdSelector = (state) => {
@@ -1586,128 +1633,6 @@ var popupStoreSelectors = {
1586
1633
  popupElement: (state) => state.popupElement,
1587
1634
  positionerElement: (state) => state.positionerElement
1588
1635
  };
1589
- (function(CommonPopupDataAttributes) {
1590
- CommonPopupDataAttributes["open"] = "data-open";
1591
- CommonPopupDataAttributes["closed"] = "data-closed";
1592
- CommonPopupDataAttributes[CommonPopupDataAttributes["startingStyle"] = TransitionStatusDataAttributes.startingStyle] = "startingStyle";
1593
- CommonPopupDataAttributes[CommonPopupDataAttributes["endingStyle"] = TransitionStatusDataAttributes.endingStyle] = "endingStyle";
1594
- CommonPopupDataAttributes["anchorHidden"] = "data-anchor-hidden";
1595
- CommonPopupDataAttributes["side"] = "data-side";
1596
- CommonPopupDataAttributes["align"] = "data-align";
1597
- return CommonPopupDataAttributes;
1598
- })({});
1599
- var TRIGGER_HOOK = { "data-popup-open": "" };
1600
- var PRESSABLE_TRIGGER_HOOK = {
1601
- "data-popup-open": "",
1602
- "data-pressed": ""
1603
- };
1604
- var POPUP_OPEN_HOOK = { "data-open": "" };
1605
- var POPUP_CLOSED_HOOK = { "data-closed": "" };
1606
- var ANCHOR_HIDDEN_HOOK = { "data-anchor-hidden": "" };
1607
- var triggerOpenStateMapping = { open(value) {
1608
- if (value) return TRIGGER_HOOK;
1609
- return null;
1610
- } };
1611
- var pressableTriggerOpenStateMapping = { open(value) {
1612
- if (value) return PRESSABLE_TRIGGER_HOOK;
1613
- return null;
1614
- } };
1615
- var popupStateMapping = {
1616
- open(value) {
1617
- if (value) return POPUP_OPEN_HOOK;
1618
- return POPUP_CLOSED_HOOK;
1619
- },
1620
- anchorHidden(value) {
1621
- if (value) return ANCHOR_HIDDEN_HOOK;
1622
- return null;
1623
- }
1624
- };
1625
- var popupTransitionStateMapping = {
1626
- ...popupStateMapping,
1627
- ...transitionStatusMapping
1628
- };
1629
- var ARROW_UP = "ArrowUp";
1630
- var ARROW_DOWN = "ArrowDown";
1631
- var ARROW_LEFT = "ArrowLeft";
1632
- var ARROW_RIGHT = "ArrowRight";
1633
- var HOME = "Home";
1634
- var COMPOSITE_KEYS = /* @__PURE__ */ new Set([
1635
- ARROW_UP,
1636
- ARROW_DOWN,
1637
- ARROW_LEFT,
1638
- ARROW_RIGHT,
1639
- HOME,
1640
- "End"
1641
- ]);
1642
- var MODIFIER_KEYS = [
1643
- "Shift",
1644
- "Control",
1645
- "Alt",
1646
- "Meta"
1647
- ];
1648
- function isInputElement(element) {
1649
- return isHTMLElement(element) && element.tagName === "INPUT";
1650
- }
1651
- function isNativeInput(element) {
1652
- if (isInputElement(element) && element.selectionStart != null) return true;
1653
- if (isHTMLElement(element) && element.tagName === "TEXTAREA") return true;
1654
- return false;
1655
- }
1656
- function scrollIntoViewIfNeeded(scrollContainer, element, direction, orientation) {
1657
- if (!scrollContainer || !element || !element.scrollTo) return;
1658
- let targetX = scrollContainer.scrollLeft;
1659
- let targetY = scrollContainer.scrollTop;
1660
- const isOverflowingX = scrollContainer.clientWidth < scrollContainer.scrollWidth;
1661
- const isOverflowingY = scrollContainer.clientHeight < scrollContainer.scrollHeight;
1662
- if (isOverflowingX && orientation !== "vertical") {
1663
- const elementOffsetLeft = getOffset(scrollContainer, element, "left");
1664
- const containerStyles = getStyles(scrollContainer);
1665
- const elementStyles = getStyles(element);
1666
- if (direction === "ltr") {
1667
- if (elementOffsetLeft + element.offsetWidth + elementStyles.scrollMarginRight > scrollContainer.scrollLeft + scrollContainer.clientWidth - containerStyles.scrollPaddingRight) targetX = elementOffsetLeft + element.offsetWidth + elementStyles.scrollMarginRight - scrollContainer.clientWidth + containerStyles.scrollPaddingRight;
1668
- else if (elementOffsetLeft - elementStyles.scrollMarginLeft < scrollContainer.scrollLeft + containerStyles.scrollPaddingLeft) targetX = elementOffsetLeft - elementStyles.scrollMarginLeft - containerStyles.scrollPaddingLeft;
1669
- }
1670
- if (direction === "rtl") {
1671
- if (elementOffsetLeft - elementStyles.scrollMarginLeft < scrollContainer.scrollLeft + containerStyles.scrollPaddingLeft) targetX = elementOffsetLeft - elementStyles.scrollMarginLeft - containerStyles.scrollPaddingLeft;
1672
- else if (elementOffsetLeft + element.offsetWidth + elementStyles.scrollMarginRight > scrollContainer.scrollLeft + scrollContainer.clientWidth - containerStyles.scrollPaddingRight) targetX = elementOffsetLeft + element.offsetWidth + elementStyles.scrollMarginRight - scrollContainer.clientWidth + containerStyles.scrollPaddingRight;
1673
- }
1674
- }
1675
- if (isOverflowingY && orientation !== "horizontal") {
1676
- const elementOffsetTop = getOffset(scrollContainer, element, "top");
1677
- const containerStyles = getStyles(scrollContainer);
1678
- const elementStyles = getStyles(element);
1679
- if (elementOffsetTop - elementStyles.scrollMarginTop < scrollContainer.scrollTop + containerStyles.scrollPaddingTop) targetY = elementOffsetTop - elementStyles.scrollMarginTop - containerStyles.scrollPaddingTop;
1680
- else if (elementOffsetTop + element.offsetHeight + elementStyles.scrollMarginBottom > scrollContainer.scrollTop + scrollContainer.clientHeight - containerStyles.scrollPaddingBottom) targetY = elementOffsetTop + element.offsetHeight + elementStyles.scrollMarginBottom - scrollContainer.clientHeight + containerStyles.scrollPaddingBottom;
1681
- }
1682
- scrollContainer.scrollTo({
1683
- left: targetX,
1684
- top: targetY,
1685
- behavior: "auto"
1686
- });
1687
- }
1688
- function getOffset(ancestor, element, side) {
1689
- const propName = side === "left" ? "offsetLeft" : "offsetTop";
1690
- let result = 0;
1691
- while (element.offsetParent) {
1692
- result += element[propName];
1693
- if (element.offsetParent === ancestor) break;
1694
- element = element.offsetParent;
1695
- }
1696
- return result;
1697
- }
1698
- function getStyles(element) {
1699
- const styles = getComputedStyle(element);
1700
- return {
1701
- scrollMarginTop: parseFloat(styles.scrollMarginTop) || 0,
1702
- scrollMarginRight: parseFloat(styles.scrollMarginRight) || 0,
1703
- scrollMarginBottom: parseFloat(styles.scrollMarginBottom) || 0,
1704
- scrollMarginLeft: parseFloat(styles.scrollMarginLeft) || 0,
1705
- scrollPaddingTop: parseFloat(styles.scrollPaddingTop) || 0,
1706
- scrollPaddingRight: parseFloat(styles.scrollPaddingRight) || 0,
1707
- scrollPaddingBottom: parseFloat(styles.scrollPaddingBottom) || 0,
1708
- scrollPaddingLeft: parseFloat(styles.scrollPaddingLeft) || 0
1709
- };
1710
- }
1711
1636
  var InternalBackdrop = /* @__PURE__ */ React$1.forwardRef(function InternalBackdrop2(props, ref) {
1712
1637
  const { cutout, ...otherProps } = props;
1713
1638
  let clipPath;
@@ -1918,206 +1843,123 @@ function useScrollLock(enabled = true, referenceElement = null) {
1918
1843
  return SCROLL_LOCKER.acquire(referenceElement);
1919
1844
  }, [enabled, referenceElement]);
1920
1845
  }
1921
- var SURFACE_BG = {
1922
- 1: "bg-surface-1",
1923
- 2: "bg-surface-2",
1924
- 3: "bg-surface-3",
1925
- 4: "bg-surface-4",
1926
- 5: "bg-surface-5",
1927
- 6: "bg-surface-6",
1928
- 7: "bg-surface-7",
1929
- 8: "bg-surface-8"
1930
- };
1931
- var SURFACE_SHADOW = {
1932
- 1: "shadow-surface-1",
1933
- 2: "shadow-surface-2",
1934
- 3: "shadow-surface-3",
1935
- 4: "shadow-surface-4",
1936
- 5: "shadow-surface-5",
1937
- 6: "shadow-surface-6",
1938
- 7: "shadow-surface-7",
1939
- 8: "shadow-surface-8"
1940
- };
1941
- function surfaceClasses(bgLevel, shadowLevel = bgLevel) {
1942
- const bg = Math.round(Math.max(1, Math.min(8, bgLevel)));
1943
- const shadow = Math.round(Math.max(1, Math.min(8, shadowLevel)));
1944
- return `${SURFACE_BG[bg]} ${SURFACE_SHADOW[shadow]}`;
1945
- }
1946
- var SurfaceContext = createContext2(1);
1947
- function useSurface() {
1948
- return useContext2(SurfaceContext);
1846
+ var ARROW_UP = "ArrowUp";
1847
+ var ARROW_DOWN = "ArrowDown";
1848
+ var ARROW_LEFT = "ArrowLeft";
1849
+ var ARROW_RIGHT = "ArrowRight";
1850
+ var HOME = "Home";
1851
+ var COMPOSITE_KEYS = /* @__PURE__ */ new Set([
1852
+ ARROW_UP,
1853
+ ARROW_DOWN,
1854
+ ARROW_LEFT,
1855
+ ARROW_RIGHT,
1856
+ HOME,
1857
+ "End"
1858
+ ]);
1859
+ var MODIFIER_KEYS = [
1860
+ "Shift",
1861
+ "Control",
1862
+ "Alt",
1863
+ "Meta"
1864
+ ];
1865
+ function isInputElement(element) {
1866
+ return isHTMLElement(element) && element.tagName === "INPUT";
1949
1867
  }
1950
- function SurfaceProvider({ value, children }) {
1951
- return /* @__PURE__ */ jsx(SurfaceContext.Provider, {
1952
- value: Math.max(1, Math.min(8, value)),
1953
- children
1954
- });
1868
+ function isNativeInput(element) {
1869
+ if (isInputElement(element) && element.selectionStart != null) return true;
1870
+ if (isHTMLElement(element) && element.tagName === "TEXTAREA") return true;
1871
+ return false;
1955
1872
  }
1956
- var DialogRootContext = /* @__PURE__ */ React$1.createContext(void 0);
1957
- function useDialogRootContext(optional) {
1958
- const store = React$1.useContext(DialogRootContext);
1959
- if (!optional && store === void 0) throw new Error(formatErrorMessage(27));
1960
- return store;
1961
- }
1962
- var DialogBackdrop = /* @__PURE__ */ React$1.forwardRef(function DialogBackdrop2(componentProps, forwardedRef) {
1963
- const { render, className, style, forceRender = false, ...elementProps } = componentProps;
1964
- const store = useDialogRootContext();
1965
- const open = store.useState("open");
1966
- const nested = store.useState("nested");
1967
- const mounted = store.useState("mounted");
1968
- const state = {
1969
- open,
1970
- transitionStatus: store.useState("transitionStatus")
1971
- };
1972
- return useRenderElement("div", componentProps, {
1973
- state,
1974
- ref: [store.context.backdropRef, forwardedRef],
1975
- stateAttributesMapping: popupTransitionStateMapping,
1976
- props: [{
1977
- role: "presentation",
1978
- hidden: !mounted,
1979
- style: {
1980
- userSelect: "none",
1981
- WebkitUserSelect: "none"
1982
- }
1983
- }, elementProps],
1984
- enabled: forceRender || !nested
1985
- });
1986
- });
1987
- var DialogClose = /* @__PURE__ */ React$1.forwardRef(function DialogClose2(componentProps, forwardedRef) {
1988
- const { render, className, style, disabled = false, nativeButton = true, ...elementProps } = componentProps;
1989
- const store = useDialogRootContext();
1990
- const open = store.useState("open");
1991
- const { getButtonProps, buttonRef } = useButton({
1992
- disabled,
1993
- native: nativeButton
1994
- });
1995
- const state = { disabled };
1996
- function handleClick(event) {
1997
- if (open) store.setOpen(false, createChangeEventDetails(closePress, event.nativeEvent));
1873
+ function scrollIntoViewIfNeeded(scrollContainer, element, direction, orientation) {
1874
+ if (!scrollContainer || !element || !element.scrollTo) return;
1875
+ let targetX = scrollContainer.scrollLeft;
1876
+ let targetY = scrollContainer.scrollTop;
1877
+ const isOverflowingX = scrollContainer.clientWidth < scrollContainer.scrollWidth;
1878
+ const isOverflowingY = scrollContainer.clientHeight < scrollContainer.scrollHeight;
1879
+ if (isOverflowingX && orientation !== "vertical") {
1880
+ const elementOffsetLeft = getOffset(scrollContainer, element, "left");
1881
+ const containerStyles = getStyles(scrollContainer);
1882
+ const elementStyles = getStyles(element);
1883
+ if (direction === "ltr") {
1884
+ if (elementOffsetLeft + element.offsetWidth + elementStyles.scrollMarginRight > scrollContainer.scrollLeft + scrollContainer.clientWidth - containerStyles.scrollPaddingRight) targetX = elementOffsetLeft + element.offsetWidth + elementStyles.scrollMarginRight - scrollContainer.clientWidth + containerStyles.scrollPaddingRight;
1885
+ else if (elementOffsetLeft - elementStyles.scrollMarginLeft < scrollContainer.scrollLeft + containerStyles.scrollPaddingLeft) targetX = elementOffsetLeft - elementStyles.scrollMarginLeft - containerStyles.scrollPaddingLeft;
1886
+ }
1887
+ if (direction === "rtl") {
1888
+ if (elementOffsetLeft - elementStyles.scrollMarginLeft < scrollContainer.scrollLeft + containerStyles.scrollPaddingLeft) targetX = elementOffsetLeft - elementStyles.scrollMarginLeft - containerStyles.scrollPaddingLeft;
1889
+ else if (elementOffsetLeft + element.offsetWidth + elementStyles.scrollMarginRight > scrollContainer.scrollLeft + scrollContainer.clientWidth - containerStyles.scrollPaddingRight) targetX = elementOffsetLeft + element.offsetWidth + elementStyles.scrollMarginRight - scrollContainer.clientWidth + containerStyles.scrollPaddingRight;
1890
+ }
1998
1891
  }
1999
- return useRenderElement("button", componentProps, {
2000
- state,
2001
- ref: [forwardedRef, buttonRef],
2002
- props: [
2003
- { onClick: handleClick },
2004
- elementProps,
2005
- getButtonProps
2006
- ]
2007
- });
2008
- });
2009
- var DialogDescription$1 = /* @__PURE__ */ React$1.forwardRef(function DialogDescription(componentProps, forwardedRef) {
2010
- const { render, className, style, id: idProp, ...elementProps } = componentProps;
2011
- const store = useDialogRootContext();
2012
- const id = useBaseUiId(idProp);
2013
- store.useSyncedValueWithCleanup("descriptionElementId", id);
2014
- return useRenderElement("p", componentProps, {
2015
- ref: forwardedRef,
2016
- props: [{ id }, elementProps]
1892
+ if (isOverflowingY && orientation !== "horizontal") {
1893
+ const elementOffsetTop = getOffset(scrollContainer, element, "top");
1894
+ const containerStyles = getStyles(scrollContainer);
1895
+ const elementStyles = getStyles(element);
1896
+ if (elementOffsetTop - elementStyles.scrollMarginTop < scrollContainer.scrollTop + containerStyles.scrollPaddingTop) targetY = elementOffsetTop - elementStyles.scrollMarginTop - containerStyles.scrollPaddingTop;
1897
+ else if (elementOffsetTop + element.offsetHeight + elementStyles.scrollMarginBottom > scrollContainer.scrollTop + scrollContainer.clientHeight - containerStyles.scrollPaddingBottom) targetY = elementOffsetTop + element.offsetHeight + elementStyles.scrollMarginBottom - scrollContainer.clientHeight + containerStyles.scrollPaddingBottom;
1898
+ }
1899
+ scrollContainer.scrollTo({
1900
+ left: targetX,
1901
+ top: targetY,
1902
+ behavior: "auto"
2017
1903
  });
2018
- });
2019
- var DialogPortalContext = /* @__PURE__ */ React$1.createContext(void 0);
2020
- function useDialogPortalContext() {
2021
- const value = React$1.useContext(DialogPortalContext);
2022
- if (value === void 0) throw new Error(formatErrorMessage(26));
2023
- return value;
2024
1904
  }
2025
- var dialogStateAttributesMapping = {
2026
- ...popupStateMapping,
2027
- ...transitionStatusMapping,
2028
- nestedDialogOpen(value) {
2029
- return value ? { "data-nested-dialog-open": "" } : null;
1905
+ function getOffset(ancestor, element, side) {
1906
+ const propName = side === "left" ? "offsetLeft" : "offsetTop";
1907
+ let result = 0;
1908
+ while (element.offsetParent) {
1909
+ result += element[propName];
1910
+ if (element.offsetParent === ancestor) break;
1911
+ element = element.offsetParent;
2030
1912
  }
1913
+ return result;
1914
+ }
1915
+ function getStyles(element) {
1916
+ const styles = getComputedStyle(element);
1917
+ return {
1918
+ scrollMarginTop: parseFloat(styles.scrollMarginTop) || 0,
1919
+ scrollMarginRight: parseFloat(styles.scrollMarginRight) || 0,
1920
+ scrollMarginBottom: parseFloat(styles.scrollMarginBottom) || 0,
1921
+ scrollMarginLeft: parseFloat(styles.scrollMarginLeft) || 0,
1922
+ scrollPaddingTop: parseFloat(styles.scrollPaddingTop) || 0,
1923
+ scrollPaddingRight: parseFloat(styles.scrollPaddingRight) || 0,
1924
+ scrollPaddingBottom: parseFloat(styles.scrollPaddingBottom) || 0,
1925
+ scrollPaddingLeft: parseFloat(styles.scrollPaddingLeft) || 0
1926
+ };
1927
+ }
1928
+ var SURFACE_BG = {
1929
+ 1: "bg-surface-1",
1930
+ 2: "bg-surface-2",
1931
+ 3: "bg-surface-3",
1932
+ 4: "bg-surface-4",
1933
+ 5: "bg-surface-5",
1934
+ 6: "bg-surface-6",
1935
+ 7: "bg-surface-7",
1936
+ 8: "bg-surface-8"
2031
1937
  };
2032
- var DialogPopup = /* @__PURE__ */ React$1.forwardRef(function DialogPopup2(componentProps, forwardedRef) {
2033
- const { render, className, style, finalFocus, initialFocus, ...elementProps } = componentProps;
2034
- const store = useDialogRootContext();
2035
- const descriptionElementId = store.useState("descriptionElementId");
2036
- const disablePointerDismissal = store.useState("disablePointerDismissal");
2037
- const floatingRootContext = store.useState("floatingRootContext");
2038
- const rootPopupProps = store.useState("popupProps");
2039
- const modal = store.useState("modal");
2040
- const mounted = store.useState("mounted");
2041
- const nested = store.useState("nested");
2042
- const nestedOpenDialogCount = store.useState("nestedOpenDialogCount");
2043
- const open = store.useState("open");
2044
- const openMethod = store.useState("openMethod");
2045
- const titleElementId = store.useState("titleElementId");
2046
- const transitionStatus = store.useState("transitionStatus");
2047
- const role = store.useState("role");
2048
- const floatingId = floatingRootContext.useState("floatingId");
2049
- useDialogPortalContext();
2050
- useOpenChangeComplete({
2051
- open,
2052
- ref: store.context.popupRef,
2053
- onComplete() {
2054
- if (open) store.context.onOpenChangeComplete?.(true);
2055
- }
2056
- });
2057
- const resolvedInitialFocus = initialFocus === void 0 ? createDefaultInitialFocus(store.context.popupRef) : initialFocus;
2058
- const nestedDialogOpen = nestedOpenDialogCount > 0;
2059
- const setPopupElement = store.useStateSetter("popupElement");
2060
- const element = useRenderElement("div", componentProps, {
2061
- state: {
2062
- open,
2063
- nested,
2064
- transitionStatus,
2065
- nestedDialogOpen
2066
- },
2067
- props: [
2068
- rootPopupProps,
2069
- {
2070
- id: floatingId,
2071
- "aria-labelledby": titleElementId,
2072
- "aria-describedby": descriptionElementId,
2073
- role,
2074
- ...FOCUSABLE_POPUP_PROPS,
2075
- hidden: !mounted,
2076
- onKeyDown(event) {
2077
- if (COMPOSITE_KEYS.has(event.key)) event.stopPropagation();
2078
- },
2079
- style: { "--nested-dialogs": nestedOpenDialogCount }
2080
- },
2081
- elementProps
2082
- ],
2083
- ref: [
2084
- forwardedRef,
2085
- store.context.popupRef,
2086
- setPopupElement
2087
- ],
2088
- stateAttributesMapping: dialogStateAttributesMapping
2089
- });
2090
- return /* @__PURE__ */ jsx(FloatingFocusManager, {
2091
- context: floatingRootContext,
2092
- openInteractionType: openMethod,
2093
- disabled: !mounted,
2094
- closeOnFocusOut: !disablePointerDismissal,
2095
- initialFocus: resolvedInitialFocus,
2096
- returnFocus: finalFocus,
2097
- modal: modal !== false,
2098
- restoreFocus: "popup",
2099
- children: element
2100
- });
2101
- });
2102
- var DialogPortal$1 = /* @__PURE__ */ React$1.forwardRef(function DialogPortal(props, forwardedRef) {
2103
- const { keepMounted = false, ...portalProps } = props;
2104
- const store = useDialogRootContext();
2105
- const mounted = store.useState("mounted");
2106
- const modal = store.useState("modal");
2107
- const open = store.useState("open");
2108
- if (!(mounted || keepMounted)) return null;
2109
- return /* @__PURE__ */ jsx(DialogPortalContext.Provider, {
2110
- value: keepMounted,
2111
- children: /* @__PURE__ */ jsxs(FloatingPortal, {
2112
- ref: forwardedRef,
2113
- ...portalProps,
2114
- children: [mounted && modal === true && /* @__PURE__ */ jsx(InternalBackdrop, {
2115
- ref: store.context.internalBackdropRef,
2116
- inert: inertValue(!open)
2117
- }), props.children]
2118
- })
1938
+ var SURFACE_SHADOW = {
1939
+ 1: "shadow-surface-1",
1940
+ 2: "shadow-surface-2",
1941
+ 3: "shadow-surface-3",
1942
+ 4: "shadow-surface-4",
1943
+ 5: "shadow-surface-5",
1944
+ 6: "shadow-surface-6",
1945
+ 7: "shadow-surface-7",
1946
+ 8: "shadow-surface-8"
1947
+ };
1948
+ function surfaceClasses(bgLevel, shadowLevel = bgLevel) {
1949
+ const bg = Math.round(Math.max(1, Math.min(8, bgLevel)));
1950
+ const shadow = Math.round(Math.max(1, Math.min(8, shadowLevel)));
1951
+ return `${SURFACE_BG[bg]} ${SURFACE_SHADOW[shadow]}`;
1952
+ }
1953
+ var SurfaceContext = createContext2(1);
1954
+ function useSurface() {
1955
+ return useContext2(SurfaceContext);
1956
+ }
1957
+ function SurfaceProvider({ value, children }) {
1958
+ return /* @__PURE__ */ jsx(SurfaceContext.Provider, {
1959
+ value: Math.max(1, Math.min(8, value)),
1960
+ children
2119
1961
  });
2120
- });
1962
+ }
2121
1963
  function DialogInteractions({ store, parentContext, isDrawer }) {
2122
1964
  const open = store.useState("open");
2123
1965
  const disablePointerDismissal = store.useState("disablePointerDismissal");
@@ -2185,6 +2027,12 @@ function DialogInteractions({ store, parentContext, isDrawer }) {
2185
2027
  });
2186
2028
  return null;
2187
2029
  }
2030
+ var DialogRootContext = /* @__PURE__ */ React$1.createContext(void 0);
2031
+ function useDialogRootContext(optional) {
2032
+ const store = React$1.useContext(DialogRootContext);
2033
+ if (!optional && store === void 0) throw new Error(formatErrorMessage(27));
2034
+ return store;
2035
+ }
2188
2036
  var selectors = {
2189
2037
  ...popupStoreSelectors,
2190
2038
  modal: (state) => state.modal,
@@ -2212,14 +2060,12 @@ var DialogStore = class extends ReactStore {
2212
2060
  this.context.onOpenChange?.(nextOpen, eventDetails);
2213
2061
  if (eventDetails.isCanceled) return;
2214
2062
  this.state.floatingRootContext.dispatchOpenChange(nextOpen, eventDetails);
2215
- const updatedState = { open: nextOpen };
2216
- setPopupOpenState(updatedState, nextOpen, eventDetails.trigger);
2217
- this.update(updatedState);
2063
+ this.update(createPopupOpenState(this.state, nextOpen, eventDetails.trigger));
2218
2064
  };
2219
2065
  };
2220
2066
  function createInitialState(initialState, triggerElements, floatingId, nested = false) {
2221
- const state = {
2222
- ...createInitialPopupStoreState(),
2067
+ return {
2068
+ ...createInitialPopupStoreState(triggerElements, floatingId, nested),
2223
2069
  modal: true,
2224
2070
  disablePointerDismissal: false,
2225
2071
  viewportElement: null,
@@ -2232,8 +2078,6 @@ function createInitialState(initialState, triggerElements, floatingId, nested =
2232
2078
  role: "dialog",
2233
2079
  ...initialState
2234
2080
  };
2235
- state.floatingRootContext = createPopupFloatingRootContext(triggerElements, floatingId, nested);
2236
- return state;
2237
2081
  }
2238
2082
  function createInitialContext(triggerElements) {
2239
2083
  return {
@@ -2299,9 +2143,167 @@ function useRenderDialogRoot(mode, props) {
2299
2143
  ]
2300
2144
  });
2301
2145
  }
2302
- function DialogRoot(props) {
2303
- return useRenderDialogRoot("dialog", props);
2146
+ var DialogBackdrop = /* @__PURE__ */ React$1.forwardRef(function DialogBackdrop2(componentProps, forwardedRef) {
2147
+ const { render, className, style, forceRender = false, ...elementProps } = componentProps;
2148
+ const store = useDialogRootContext();
2149
+ const open = store.useState("open");
2150
+ const nested = store.useState("nested");
2151
+ const mounted = store.useState("mounted");
2152
+ const state = {
2153
+ open,
2154
+ transitionStatus: store.useState("transitionStatus")
2155
+ };
2156
+ return useRenderElement("div", componentProps, {
2157
+ state,
2158
+ ref: [store.context.backdropRef, forwardedRef],
2159
+ stateAttributesMapping: popupTransitionStateMapping,
2160
+ props: [{
2161
+ role: "presentation",
2162
+ hidden: !mounted,
2163
+ style: {
2164
+ userSelect: "none",
2165
+ WebkitUserSelect: "none"
2166
+ }
2167
+ }, elementProps],
2168
+ enabled: forceRender || !nested
2169
+ });
2170
+ });
2171
+ var DialogClose = /* @__PURE__ */ React$1.forwardRef(function DialogClose2(componentProps, forwardedRef) {
2172
+ const { render, className, style, disabled = false, nativeButton = true, ...elementProps } = componentProps;
2173
+ const store = useDialogRootContext();
2174
+ const open = store.useState("open");
2175
+ const { getButtonProps, buttonRef } = useButton({
2176
+ disabled,
2177
+ native: nativeButton
2178
+ });
2179
+ const state = { disabled };
2180
+ function handleClick(event) {
2181
+ if (open) store.setOpen(false, createChangeEventDetails(closePress, event.nativeEvent));
2182
+ }
2183
+ return useRenderElement("button", componentProps, {
2184
+ state,
2185
+ ref: [forwardedRef, buttonRef],
2186
+ props: [
2187
+ { onClick: handleClick },
2188
+ elementProps,
2189
+ getButtonProps
2190
+ ]
2191
+ });
2192
+ });
2193
+ var DialogDescription$1 = /* @__PURE__ */ React$1.forwardRef(function DialogDescription(componentProps, forwardedRef) {
2194
+ const { render, className, style, id: idProp, ...elementProps } = componentProps;
2195
+ const store = useDialogRootContext();
2196
+ const id = useBaseUiId(idProp);
2197
+ store.useSyncedValueWithCleanup("descriptionElementId", id);
2198
+ return useRenderElement("p", componentProps, {
2199
+ ref: forwardedRef,
2200
+ props: [{ id }, elementProps]
2201
+ });
2202
+ });
2203
+ var DialogPortalContext = /* @__PURE__ */ React$1.createContext(void 0);
2204
+ function useDialogPortalContext() {
2205
+ const value = React$1.useContext(DialogPortalContext);
2206
+ if (value === void 0) throw new Error(formatErrorMessage(26));
2207
+ return value;
2304
2208
  }
2209
+ var nestedDialogs = "--nested-dialogs";
2210
+ var nestedDialogOpen = "data-nested-dialog-open";
2211
+ var dialogStateAttributesMapping = {
2212
+ ...popupStateMapping,
2213
+ ...transitionStatusMapping,
2214
+ nestedDialogOpen(value) {
2215
+ return value ? { [nestedDialogOpen]: "" } : null;
2216
+ }
2217
+ };
2218
+ var DialogPopup = /* @__PURE__ */ React$1.forwardRef(function DialogPopup2(componentProps, forwardedRef) {
2219
+ const { render, className, style, finalFocus, initialFocus, ...elementProps } = componentProps;
2220
+ const store = useDialogRootContext();
2221
+ const descriptionElementId = store.useState("descriptionElementId");
2222
+ const disablePointerDismissal = store.useState("disablePointerDismissal");
2223
+ const floatingRootContext = store.useState("floatingRootContext");
2224
+ const rootPopupProps = store.useState("popupProps");
2225
+ const modal = store.useState("modal");
2226
+ const mounted = store.useState("mounted");
2227
+ const nested = store.useState("nested");
2228
+ const nestedOpenDialogCount = store.useState("nestedOpenDialogCount");
2229
+ const open = store.useState("open");
2230
+ const openMethod = store.useState("openMethod");
2231
+ const titleElementId = store.useState("titleElementId");
2232
+ const transitionStatus = store.useState("transitionStatus");
2233
+ const role = store.useState("role");
2234
+ const floatingId = floatingRootContext.useState("floatingId");
2235
+ useDialogPortalContext();
2236
+ useOpenChangeComplete({
2237
+ open,
2238
+ ref: store.context.popupRef,
2239
+ onComplete() {
2240
+ if (open) store.context.onOpenChangeComplete?.(true);
2241
+ }
2242
+ });
2243
+ const resolvedInitialFocus = initialFocus === void 0 ? createDefaultInitialFocus(store.context.popupRef) : initialFocus;
2244
+ const nestedDialogOpen2 = nestedOpenDialogCount > 0;
2245
+ const setPopupElement = store.useStateSetter("popupElement");
2246
+ const element = useRenderElement("div", componentProps, {
2247
+ state: {
2248
+ open,
2249
+ nested,
2250
+ transitionStatus,
2251
+ nestedDialogOpen: nestedDialogOpen2
2252
+ },
2253
+ props: [
2254
+ rootPopupProps,
2255
+ {
2256
+ id: floatingId,
2257
+ "aria-labelledby": titleElementId,
2258
+ "aria-describedby": descriptionElementId,
2259
+ role,
2260
+ ...FOCUSABLE_POPUP_PROPS,
2261
+ hidden: !mounted,
2262
+ onKeyDown(event) {
2263
+ if (COMPOSITE_KEYS.has(event.key)) event.stopPropagation();
2264
+ },
2265
+ style: { [nestedDialogs]: nestedOpenDialogCount }
2266
+ },
2267
+ elementProps
2268
+ ],
2269
+ ref: [
2270
+ forwardedRef,
2271
+ store.context.popupRef,
2272
+ setPopupElement
2273
+ ],
2274
+ stateAttributesMapping: dialogStateAttributesMapping
2275
+ });
2276
+ return /* @__PURE__ */ jsx(FloatingFocusManager, {
2277
+ context: floatingRootContext,
2278
+ openInteractionType: openMethod,
2279
+ disabled: !mounted,
2280
+ closeOnFocusOut: !disablePointerDismissal,
2281
+ initialFocus: resolvedInitialFocus,
2282
+ returnFocus: finalFocus,
2283
+ modal: modal !== false,
2284
+ restoreFocus: "popup",
2285
+ children: element
2286
+ });
2287
+ });
2288
+ var DialogPortal$1 = /* @__PURE__ */ React$1.forwardRef(function DialogPortal(props, forwardedRef) {
2289
+ const { keepMounted = false, ...portalProps } = props;
2290
+ const store = useDialogRootContext();
2291
+ const mounted = store.useState("mounted");
2292
+ const modal = store.useState("modal");
2293
+ const open = store.useState("open");
2294
+ if (!(mounted || keepMounted)) return null;
2295
+ return /* @__PURE__ */ jsx(DialogPortalContext.Provider, {
2296
+ value: keepMounted,
2297
+ children: /* @__PURE__ */ jsxs(FloatingPortal, {
2298
+ ref: forwardedRef,
2299
+ ...portalProps,
2300
+ children: [mounted && modal === true && /* @__PURE__ */ jsx(InternalBackdrop, {
2301
+ ref: store.context.internalBackdropRef,
2302
+ inert: inertValue(!open)
2303
+ }), props.children]
2304
+ })
2305
+ });
2306
+ });
2305
2307
  var DialogTitle$1 = /* @__PURE__ */ React$1.forwardRef(function DialogTitle(componentProps, forwardedRef) {
2306
2308
  const { render, className, style, id: idProp, ...elementProps } = componentProps;
2307
2309
  const store = useDialogRootContext();
@@ -2312,6 +2314,9 @@ var DialogTitle$1 = /* @__PURE__ */ React$1.forwardRef(function DialogTitle(comp
2312
2314
  props: [{ id }, elementProps]
2313
2315
  });
2314
2316
  });
2317
+ var DialogRoot = fastComponent(function DialogRoot2(props) {
2318
+ return useRenderDialogRoot("dialog", props);
2319
+ });
2315
2320
  var DIALOG_SURFACE_OFFSET = 4;
2316
2321
  function Dialog({ ...props }) {
2317
2322
  return /* @__PURE__ */ jsx(DialogRoot, {
@@ -2390,6 +2395,10 @@ function DialogDescription2({ className, ...props }) {
2390
2395
  }
2391
2396
 
2392
2397
  export {
2398
+ triggerOpenStateMapping,
2399
+ pressableTriggerOpenStateMapping,
2400
+ popupStateMapping,
2401
+ popupTransitionStateMapping,
2393
2402
  getNodeChildren,
2394
2403
  stopEvent,
2395
2404
  isVirtualClick,
@@ -2408,9 +2417,8 @@ export {
2408
2417
  createDefaultInitialFocus,
2409
2418
  usePopupRootStore,
2410
2419
  PopupHandleAttachment,
2411
- setPopupOpenState,
2420
+ createPopupOpenState,
2412
2421
  attachPreventUnmountOnClose,
2413
- applyPopupOpenChange,
2414
2422
  useTriggerDataForwarding,
2415
2423
  useImplicitActiveTrigger,
2416
2424
  useOpenStateTransitions,
@@ -2418,12 +2426,9 @@ export {
2418
2426
  usePopupRootSync,
2419
2427
  PopupTriggerMap,
2420
2428
  createInitialPopupStoreState,
2421
- createPopupFloatingRootContext,
2422
2429
  popupStoreSelectors,
2423
- triggerOpenStateMapping,
2424
- pressableTriggerOpenStateMapping,
2425
- popupStateMapping,
2426
- popupTransitionStateMapping,
2430
+ InternalBackdrop,
2431
+ useScrollLock,
2427
2432
  ARROW_UP,
2428
2433
  ARROW_DOWN,
2429
2434
  ARROW_LEFT,
@@ -2432,18 +2437,15 @@ export {
2432
2437
  MODIFIER_KEYS,
2433
2438
  isNativeInput,
2434
2439
  scrollIntoViewIfNeeded,
2435
- InternalBackdrop,
2436
- useScrollLock,
2437
2440
  surfaceClasses,
2438
2441
  useSurface,
2439
2442
  SurfaceProvider,
2443
+ useRenderDialogRoot,
2440
2444
  DialogBackdrop,
2441
2445
  DialogClose,
2442
2446
  DialogDescription$1,
2443
2447
  DialogPopup,
2444
2448
  DialogPortal$1,
2445
- useRenderDialogRoot,
2446
- DialogRoot,
2447
2449
  DialogTitle$1,
2448
2450
  Dialog,
2449
2451
  DialogContent,