@marimo-team/frontend 0.20.3-dev94 → 0.20.3-dev96

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 (582) hide show
  1. package/dist/assets/{CellStatus-DT32GPB2.js → CellStatus-CofFdpAe.js} +1 -1
  2. package/dist/assets/{ConnectedDataExplorerComponent-BJPiMTXX.js → ConnectedDataExplorerComponent-D0LXEdja.js} +1 -1
  3. package/dist/assets/{DeferredRequestRegistry-TekxUirp.js → DeferredRequestRegistry-CMZsNx4R.js} +1 -1
  4. package/dist/assets/{ImperativeModal-MjC9Owmv.js → ImperativeModal-CRNJOvqT.js} +1 -1
  5. package/dist/assets/{JsonOutput-uf7OFaDU.js → JsonOutput-DKjq8WkX.js} +3 -3
  6. package/dist/assets/LazyAnyLanguageCodeMirror-D8Y5EdeE.js +2 -0
  7. package/dist/assets/{MarimoErrorOutput-BJkHPKWK.js → MarimoErrorOutput-DDEWmSYt.js} +1 -1
  8. package/dist/assets/{RenderHTML-CjCJ1DT4.js → RenderHTML-BKdgJWBR.js} +1 -1
  9. package/dist/assets/{add-cell-with-ai-DJ9tuL4g.js → add-cell-with-ai--93MrwWW.js} +11 -11
  10. package/dist/assets/add-connection-dialog-DwmwDRdR.js +133 -0
  11. package/dist/assets/{agent-panel-DYFbOZ0f.js → agent-panel-C8ZeX_CD.js} +1 -1
  12. package/dist/assets/{ai-model-dropdown-BnQGs6GF.js → ai-model-dropdown-DQy6lXPg.js} +2 -2
  13. package/dist/assets/{alert-dialog-DEeW2awP.js → alert-dialog-DsNfSYaw.js} +1 -1
  14. package/dist/assets/{any-language-editor-gG2nw5Di.js → any-language-editor-BAgyNkKP.js} +1 -1
  15. package/dist/assets/apl-3xKEEmjQ.js +1 -0
  16. package/dist/assets/app-config-button-C_j4LbLr.js +1 -0
  17. package/dist/assets/{architectureDiagram-VXUJARFQ-XoreuVlu.js → architectureDiagram-VXUJARFQ-C6cEIHcZ.js} +1 -1
  18. package/dist/assets/asciiarmor-BCugLX69.js +1 -0
  19. package/dist/assets/asn1-B8ndG_Ze.js +1 -0
  20. package/dist/assets/azure-BOn6W9-m.js +1 -0
  21. package/dist/assets/{blockDiagram-VD42YOAC-D88a3p2S.js → blockDiagram-VD42YOAC-DO4PXhE0.js} +1 -1
  22. package/dist/assets/brainfuck-h1OIoSEo.js +1 -0
  23. package/dist/assets/{c4Diagram-YG6GDRKO-liP4M7aa.js → c4Diagram-YG6GDRKO-CgecOfcG.js} +1 -1
  24. package/dist/assets/{cache-panel-BCMChSTr.js → cache-panel-DRhH4wqG.js} +1 -1
  25. package/dist/assets/{cell-editor-BDJGt0PK.js → cell-editor-B9yTITVj.js} +7 -7
  26. package/dist/assets/{cell-link-CiQrWiPA.js → cell-link-CZP6Kzmf.js} +1 -1
  27. package/dist/assets/{cells-DD42bsu7.js → cells-CigkzIKH.js} +3 -3
  28. package/dist/assets/channel-veQhTJol.js +1 -0
  29. package/dist/assets/{chat-display-DN0dzai8.js → chat-display-C1J9G6Cr.js} +1 -1
  30. package/dist/assets/{chat-panel--gsbOxYb.js → chat-panel-CFDW5ZSi.js} +1 -1
  31. package/dist/assets/{chunk-55IACEB6-Bq5hFuyg.js → chunk-55IACEB6-Du0kncVN.js} +1 -1
  32. package/dist/assets/{chunk-5FQGJX7Z-CKJM3d7z.js → chunk-5FQGJX7Z-XpIxSaxK.js} +3 -3
  33. package/dist/assets/{chunk-ABZYJK2D-B_EusRlI.js → chunk-ABZYJK2D-I6IoK8vx.js} +3 -3
  34. package/dist/assets/{chunk-ATLVNIR6-YSXtuHxk.js → chunk-ATLVNIR6-D9BH6KNI.js} +1 -1
  35. package/dist/assets/{chunk-B4BG7PRW-4H0bTT06.js → chunk-B4BG7PRW-DRGcwRAu.js} +1 -1
  36. package/dist/assets/{chunk-DI55MBZ5-Qa7VdYYC.js → chunk-DI55MBZ5-Drx_rxsy.js} +1 -1
  37. package/dist/assets/{chunk-EXTU4WIE-Dm7JTwJS.js → chunk-EXTU4WIE-eWy-F27y.js} +1 -1
  38. package/dist/assets/{chunk-JA3XYJ7Z-DlWIdoh6.js → chunk-JA3XYJ7Z-CewgnlHS.js} +1 -1
  39. package/dist/assets/{chunk-JZLCHNYA-BjCNnsxN.js → chunk-JZLCHNYA-C66i8G_X.js} +1 -1
  40. package/dist/assets/{chunk-N4CR4FBY-DvejWNHh.js → chunk-N4CR4FBY-C2LW_Vp6.js} +2 -2
  41. package/dist/assets/{chunk-QN33PNHL-D40wYAAe.js → chunk-QN33PNHL-DQKUj-aV.js} +1 -1
  42. package/dist/assets/{chunk-QXUST7PY-CPnoUHx5.js → chunk-QXUST7PY-D0e1KIKP.js} +1 -1
  43. package/dist/assets/{chunk-S3R3BYOJ-BXcnEOaZ.js → chunk-S3R3BYOJ-BhABoI-y.js} +1 -1
  44. package/dist/assets/{chunk-TZMSLE5B-B4dWntTK.js → chunk-TZMSLE5B-B8nFe5cR.js} +1 -1
  45. package/dist/assets/classDiagram-2ON5EDUG-CE34m6Vp.js +1 -0
  46. package/dist/assets/classDiagram-v2-WZHVMYZB-5UcCc04z.js +1 -0
  47. package/dist/assets/{clike-bdcjLdZ4.js → clike-DPuzjNcL.js} +1 -1
  48. package/dist/assets/clojure-yGQavt_D.js +1 -0
  49. package/dist/assets/cmake-yLKyOybp.js +1 -0
  50. package/dist/assets/cobol-C5qkyUSJ.js +1 -0
  51. package/dist/assets/{code-block-37QAKDTI-DfxyEg-6.js → code-block-37QAKDTI-C_PlFQZQ.js} +1 -1
  52. package/dist/assets/coffeescript-CtR3eWCa.js +1 -0
  53. package/dist/assets/{column-preview-BtKDi4j6.js → column-preview-BHAQ5EN7.js} +1 -1
  54. package/dist/assets/{command-2Li9iWG_.js → command-C8WcXqB5.js} +1 -1
  55. package/dist/assets/{command-palette-Ce_7Eh4G.js → command-palette-DzEDXP8h.js} +1 -1
  56. package/dist/assets/{common-BOraucV9.js → common-BsEiWPTg.js} +1 -1
  57. package/dist/assets/commonlisp-D-heOGa1.js +1 -0
  58. package/dist/assets/{components-Bl0CtJtz.js → components-Bis36Fco.js} +1 -1
  59. package/dist/assets/{components-Dv0WjPQ-.js → components-C_r2KU__.js} +1 -1
  60. package/dist/assets/{config-CBwelk8k.js → config-D9X9QKiL.js} +1 -1
  61. package/dist/assets/{context-CRApIvpB.js → context-B1_BdDTF.js} +1 -1
  62. package/dist/assets/{context-aware-panel-DMHGbB_b.js → context-aware-panel-CdVqO_AM.js} +1 -1
  63. package/dist/assets/{copy-icon-HFU_6E8O.js → copy-icon-6RnnFDPt.js} +1 -1
  64. package/dist/assets/{cose-bilkent-S5V4N54A-C5YtuUQc.js → cose-bilkent-S5V4N54A-VDjV6QSR.js} +1 -1
  65. package/dist/assets/crystal-PRx3aORZ.js +1 -0
  66. package/dist/assets/{css-ACAb8MRM.js → css-COQFxLQn.js} +1 -1
  67. package/dist/assets/cypher-whf3KLcn.js +1 -0
  68. package/dist/assets/d-Rxavm_nZ.js +1 -0
  69. package/dist/assets/{dagre-6UL2VRFP-DRNnviF_.js → dagre-6UL2VRFP-DT3YVlhy.js} +1 -1
  70. package/dist/assets/{data-grid-overlay-editor-BEE_UOd2.js → data-grid-overlay-editor-yGRyEuzx.js} +1 -1
  71. package/dist/assets/{datasource-Cturxb4x.js → datasource-B3MFUEL6.js} +1 -1
  72. package/dist/assets/{dates-_ZWMvHpG.js → dates-CzBDvj6R.js} +1 -1
  73. package/dist/assets/{dependency-graph-panel-B8UpJDl-.js → dependency-graph-panel-D4bT9In2.js} +1 -1
  74. package/dist/assets/{diagram-PSM6KHXK-CJ_YTtTV.js → diagram-PSM6KHXK-BLcYlt62.js} +1 -1
  75. package/dist/assets/{diagram-QEK2KX5R-CfHsxOB8.js → diagram-QEK2KX5R-DZlFt2JV.js} +1 -1
  76. package/dist/assets/{diagram-S2PKOQOG-C9iLu9In.js → diagram-S2PKOQOG-C0VzVTxb.js} +1 -1
  77. package/dist/assets/{dialog-D_1x0b57.js → dialog-BXzvlof-.js} +1 -1
  78. package/dist/assets/diff-BuBMfzxS.js +1 -0
  79. package/dist/assets/{dist-BfsJ2nor.js → dist-6ygzAjca.js} +1 -1
  80. package/dist/assets/{dist-Vc8ZMKz4.js → dist-B0_AowCW.js} +1 -1
  81. package/dist/assets/{dist-CLFvKo6g.js → dist-BA8siKK6.js} +1 -1
  82. package/dist/assets/{dist-DTVn6XkJ.js → dist-BMdir9yf.js} +1 -1
  83. package/dist/assets/dist-BRjtiDLy.js +1 -0
  84. package/dist/assets/{dist-CjHEN42s.js → dist-BkKLXyVM.js} +1 -1
  85. package/dist/assets/{dist-CAqJ9n-7.js → dist-BmupR6hJ.js} +1 -1
  86. package/dist/assets/dist-BveopvhJ.js +1 -0
  87. package/dist/assets/dist-Bw5sFnNi.js +1 -0
  88. package/dist/assets/{dist-DcJyOwtT.js → dist-C0GaLmeM.js} +1 -1
  89. package/dist/assets/{dist-CFJh28wG.js → dist-CD1ARvPf.js} +1 -1
  90. package/dist/assets/{dist-DsQvo-tW.js → dist-CIU0Lack.js} +1 -1
  91. package/dist/assets/{dist-BFzRlyBI.js → dist-CRVvx8nD.js} +1 -1
  92. package/dist/assets/{dist-o3bslLiM.js → dist-CTarqYcj.js} +1 -1
  93. package/dist/assets/{dist-VhPaW6Nu.js → dist-CqnPIH_S.js} +1 -1
  94. package/dist/assets/{dist-CCHC36f2.js → dist-CtKltiBh.js} +1 -1
  95. package/dist/assets/dist-CwLG6Za2.js +1 -0
  96. package/dist/assets/dist-D1GHSZQ_.js +1 -0
  97. package/dist/assets/{dist-C83X_psd.js → dist-DArucAWW.js} +1 -1
  98. package/dist/assets/{dist-DjwvucXe.js → dist-DUYSgv8L.js} +1 -1
  99. package/dist/assets/dist-DZhm7iRc.js +1 -0
  100. package/dist/assets/{dist-BOEbbZQx.js → dist-DfBASypd.js} +1 -1
  101. package/dist/assets/dist-DiZV-TgQ.js +1 -0
  102. package/dist/assets/{dist-D-iyTPWR.js → dist-DoVqkx6-.js} +1 -1
  103. package/dist/assets/{dist-DotE4D06.js → dist-Dq_iQ08e.js} +1 -1
  104. package/dist/assets/{dist-Ojy3l4de.js → dist-DwtQnQ8D.js} +1 -1
  105. package/dist/assets/dist-Dz7aLgyk.js +1 -0
  106. package/dist/assets/dist-OAWl1fS6.js +1 -0
  107. package/dist/assets/{dist-YWDQ5GDh.js → dist-gm5AeuIM.js} +1 -1
  108. package/dist/assets/dist-x2aGlNO5.js +1 -0
  109. package/dist/assets/{dockerfile-BaMK2CWc.js → dockerfile-DGts-2Fo.js} +1 -1
  110. package/dist/assets/{documentation-panel-BuGA-sMW.js → documentation-panel-BMnKc5yI.js} +1 -1
  111. package/dist/assets/{download-CmObLKP6.js → download-C35SWaj3.js} +2 -2
  112. package/dist/assets/{dropdown-menu-D9u7_h0R.js → dropdown-menu-CKhrfxsx.js} +1 -1
  113. package/dist/assets/dtd-Byyl3ADK.js +1 -0
  114. package/dist/assets/dylan-zE-fWZ95.js +1 -0
  115. package/dist/assets/ecl-oGqPqdsN.js +1 -0
  116. package/dist/assets/{edit-page-BNA8A6Ux.js → edit-page-BeR5IEJ-.js} +7 -7
  117. package/dist/assets/eiffel-C_tzASKk.js +1 -0
  118. package/dist/assets/elm-DowGsQrq.js +1 -0
  119. package/dist/assets/{erDiagram-Q2GNP2WA-Ci9jIB40.js → erDiagram-Q2GNP2WA-BXdtj02B.js} +1 -1
  120. package/dist/assets/erlang-DXj5Mety.js +1 -0
  121. package/dist/assets/{error-banner-DsP3CCH3.js → error-banner-R2OkQKR0.js} +1 -1
  122. package/dist/assets/{error-panel-CK2L5ciF.js → error-panel-jpJowHuz.js} +1 -1
  123. package/dist/assets/{es-DwwU_CO-.js → es-1hBRXVlM.js} +1 -1
  124. package/dist/assets/{esm-Dm5bJp7V.js → esm-BQUzYly2.js} +1 -1
  125. package/dist/assets/{esm-CqpQNGcZ.js → esm-ByPyfncv.js} +1 -1
  126. package/dist/assets/factor-BBRGvEpt.js +1 -0
  127. package/dist/assets/{factor-C-_cRSDM.js → factor-CkLnJXKV.js} +1 -1
  128. package/dist/assets/{field-Cgpys-pp.js → field-DGtw6Lae.js} +1 -1
  129. package/dist/assets/file-code-D9wtWSiR.js +1 -0
  130. package/dist/assets/file-explorer-panel-BHVDv16o.js +1 -0
  131. package/dist/assets/{floating-outline-BPv4P2vV.js → floating-outline-BxQvjarL.js} +1 -1
  132. package/dist/assets/{flowDiagram-NV44I4VS-CUdl_uoe.js → flowDiagram-NV44I4VS-DX757-U8.js} +1 -1
  133. package/dist/assets/{focus-DiPb_hn6.js → focus-Bci_MkMH.js} +1 -1
  134. package/dist/assets/form-DmsYuKMH.js +2 -0
  135. package/dist/assets/{formats-B4v3ZpGs.js → formats-C3K3rlAZ.js} +1 -1
  136. package/dist/assets/{formatting-BBp_M8-h.js → formatting-8bP-RDnl.js} +1 -1
  137. package/dist/assets/forth-ir5Q2myN.js +1 -0
  138. package/dist/assets/fortran-Ckvuc18T.js +1 -0
  139. package/dist/assets/{gallery-page-Dwy7ttw7.js → gallery-page-BBBIk2lD.js} +1 -1
  140. package/dist/assets/{ganttDiagram-JELNMOA3-D2jWBuvf.js → ganttDiagram-JELNMOA3-BwyL4uqk.js} +1 -1
  141. package/dist/assets/gas-IcbZgopn.js +1 -0
  142. package/dist/assets/gherkin-BUQFbyhq.js +1 -0
  143. package/dist/assets/{gitGraphDiagram-V2S2FVAM-CkEqRLnD.js → gitGraphDiagram-V2S2FVAM-eu9QdpAO.js} +1 -1
  144. package/dist/assets/github-BrsjF9dp.js +1 -0
  145. package/dist/assets/{glide-data-editor-CfedLJF1.js → glide-data-editor-DoJMFmFp.js} +4 -4
  146. package/dist/assets/{globals-Dk7VGE85.js → globals-BIlQtd9Z.js} +1 -1
  147. package/dist/assets/groovy-CPRpPrR6.js +1 -0
  148. package/dist/assets/haskell-BZ64_L1W.js +1 -0
  149. package/dist/assets/haxe-u0gVVSGf.js +1 -0
  150. package/dist/assets/home-page-Dw1bl_Le.js +4 -0
  151. package/dist/assets/html-to-image-DkwDXZ7Q.js +2 -0
  152. package/dist/assets/idl-D6vrTcdT.js +1 -0
  153. package/dist/assets/{index-B-ghuCiq.js → index-D0SHqLyU.js} +9 -9
  154. package/dist/assets/{index-jvqQ7cxf.css → index-DrPzoH7F.css} +1 -1
  155. package/dist/assets/{infoDiagram-HS3SLOUP-Cf_pYPyI.js → infoDiagram-HS3SLOUP-CMZnTs9S.js} +1 -1
  156. package/dist/assets/{input-B49Srsl9.js → input-BPldEXfy.js} +1 -1
  157. package/dist/assets/javascript-DtGa6W6u.js +1 -0
  158. package/dist/assets/{journeyDiagram-XKPGCS4Q-DHw_OuoX.js → journeyDiagram-XKPGCS4Q-Btvq5lIn.js} +1 -1
  159. package/dist/assets/julia-ChDcWdzF.js +1 -0
  160. package/dist/assets/{kanban-definition-3W4ZIXB7-CgJY0dyI.js → kanban-definition-3W4ZIXB7-AW8rZM9d.js} +1 -1
  161. package/dist/assets/katex-YDobqqVd.js +1 -0
  162. package/dist/assets/{kiosk-mode-hbpM_a-j.js → kiosk-mode-BXfU4SPi.js} +1 -1
  163. package/dist/assets/{label-OL3StKg2.js → label-DmqkEXI4.js} +1 -1
  164. package/dist/assets/{layout-D1VtP7GQ.js → layout-Cn07VnUl.js} +3 -3
  165. package/dist/assets/{linear-S_2Z0W1R.js → linear-Dgv6-MEk.js} +1 -1
  166. package/dist/assets/links-syPBpTLO.js +1 -0
  167. package/dist/assets/livescript-D3x57DP6.js +1 -0
  168. package/dist/assets/{logs-panel-CDBBW9DI.js → logs-panel-CNI5XQZv.js} +1 -1
  169. package/dist/assets/{loro_wasm_bg-D0L2fcEg.js → loro_wasm_bg-CvVVQqkx.js} +1 -1
  170. package/dist/assets/lua-CfeyF-5c.js +1 -0
  171. package/dist/assets/{markdown-renderer-YOedNAkc.js → markdown-renderer-DHgbXKHX.js} +4 -4
  172. package/dist/assets/mathematica-CAUFFTVp.js +1 -0
  173. package/dist/assets/mbox-Duq1SQ_k.js +1 -0
  174. package/dist/assets/{menu-items-BpKTKw9I.js → menu-items-Bs2e3wuf.js} +1 -1
  175. package/dist/assets/{mermaid-Dq45ZTSR.js → mermaid-1T_6J8nz.js} +3 -3
  176. package/dist/assets/mermaid-4DMBBIKO-DjCipOuD.js +1 -0
  177. package/dist/assets/{mermaid-parser.core-kXAMYbo2.js → mermaid-parser.core-BSEscn4U.js} +1 -1
  178. package/dist/assets/{mhchem-DYHJI636.js → mhchem-CfNkyXzI.js} +1 -1
  179. package/dist/assets/{mindmap-definition-VGOIOE7T-Dob0y7_P.js → mindmap-definition-VGOIOE7T-BeLI48jR.js} +1 -1
  180. package/dist/assets/mirc-B8ay9N_G.js +1 -0
  181. package/dist/assets/mllike-Cdk-SxrR.js +1 -0
  182. package/dist/assets/modelica-cErGJ40J.js +1 -0
  183. package/dist/assets/mscgen-jRCec7TG.js +1 -0
  184. package/dist/assets/{multi-map-BHEewz4D.js → multi-map-kCmlVJ-5.js} +1 -1
  185. package/dist/assets/mumps-CPuZtknR.js +1 -0
  186. package/dist/assets/{name-cell-input-HEC8dShQ.js → name-cell-input-BVNjrC55.js} +1 -1
  187. package/dist/assets/{nsis-BGZ5EB-j.js → nsis-DLIsIma3.js} +1 -1
  188. package/dist/assets/nsis-ggFWkoqT.js +1 -0
  189. package/dist/assets/ntriples-eQBrW6tI.js +1 -0
  190. package/dist/assets/{number-overlay-editor-knCMh2M3.js → number-overlay-editor-CsBFzyQn.js} +1 -1
  191. package/dist/assets/octave-CcpumlkH.js +1 -0
  192. package/dist/assets/{outline-panel-DzWl_avL.js → outline-panel-DDzSswIl.js} +1 -1
  193. package/dist/assets/oz-D3u6XBI4.js +1 -0
  194. package/dist/assets/{packages-panel-cSLWScXy.js → packages-panel-oV7XPDLu.js} +1 -1
  195. package/dist/assets/{panels-903Vandk.js → panels-OYOPaJTw.js} +1 -1
  196. package/dist/assets/pascal-COvFIqNx.js +1 -0
  197. package/dist/assets/perl-BSxTN_bc.js +1 -0
  198. package/dist/assets/{pieDiagram-ADFJNKIX-CTk6T8fb.js → pieDiagram-ADFJNKIX-CdEk8h7G.js} +1 -1
  199. package/dist/assets/pig-B5SEJPfW.js +1 -0
  200. package/dist/assets/{popover-C7N9RyXk.js → popover-Cvl9xY6R.js} +1 -1
  201. package/dist/assets/powershell-T0AiDBtK.js +1 -0
  202. package/dist/assets/{precisionRound-CCOoIlcP.js → precisionRound-BOmLQIKI.js} +1 -1
  203. package/dist/assets/{process-output-B2WHFsM0.js → process-output-B27UYd5L.js} +1 -1
  204. package/dist/assets/properties-CEyxcWzr.js +1 -0
  205. package/dist/assets/protobuf-BgP8VdyX.js +1 -0
  206. package/dist/assets/pug-D1MIs29p.js +1 -0
  207. package/dist/assets/{pug-CYW0agOo.js → pug-qZYhFFj7.js} +1 -1
  208. package/dist/assets/puppet-DQ0s94I4.js +1 -0
  209. package/dist/assets/python-jVWqyNLt.js +1 -0
  210. package/dist/assets/q-Ddp_9iFq.js +1 -0
  211. package/dist/assets/{quadrantDiagram-AYHSOK5B-BVdFx5wF.js → quadrantDiagram-AYHSOK5B-VU_D3kbi.js} +1 -1
  212. package/dist/assets/r-WnM9HAaQ.js +1 -0
  213. package/dist/assets/react-vega--8ms0ndM.js +1 -0
  214. package/dist/assets/{react-vega-BYVwP1iN.js → react-vega-CfAAc1Op.js} +1 -1
  215. package/dist/assets/{readonly-python-code-XphqxCq8.js → readonly-python-code-CyraFlMm.js} +1 -1
  216. package/dist/assets/{renderShortcut-_nl5_jRy.js → renderShortcut-BJEd-iA7.js} +1 -1
  217. package/dist/assets/{request-registry-D-vPSm0g.js → request-registry-CN4oD1xn.js} +1 -1
  218. package/dist/assets/{requirementDiagram-UZGBJVZJ-DY-OcLwF.js → requirementDiagram-UZGBJVZJ-B_M384Hj.js} +1 -1
  219. package/dist/assets/rpm-Cpb0cYbF.js +1 -0
  220. package/dist/assets/ruby-npoQJqOj.js +1 -0
  221. package/dist/assets/{run-page-DzsjMR6O.js → run-page-DDaD2g7X.js} +1 -1
  222. package/dist/assets/{sankeyDiagram-TZEHDZUN-6t9CRTL3.js → sankeyDiagram-TZEHDZUN-DOz58sVj.js} +1 -1
  223. package/dist/assets/sas-D5R_hCoQ.js +1 -0
  224. package/dist/assets/scheme-oK64G5wG.js +1 -0
  225. package/dist/assets/{scratchpad-panel-DA77C7Q0.js → scratchpad-panel-Bj7X2Na5.js} +1 -1
  226. package/dist/assets/{secrets-panel-CMZi-lXZ.js → secrets-panel-ddOS7gEx.js} +1 -1
  227. package/dist/assets/{select-BRK_BOoG.js → select-DygbgNTD.js} +1 -1
  228. package/dist/assets/{sequenceDiagram-WL72ISMW-BjZ_K9eY.js → sequenceDiagram-WL72ISMW-C4Swv4l1.js} +1 -1
  229. package/dist/assets/session-panel-BCymMoxC.js +1 -0
  230. package/dist/assets/{share-BpyH3qLa.js → share-sD4fbzpH.js} +1 -1
  231. package/dist/assets/shell-D-C8eGy_.js +1 -0
  232. package/dist/assets/sieve-DPRpRdV2.js +1 -0
  233. package/dist/assets/{slides-component-Bf8iP5zM.js → slides-component-uBqtPHL3.js} +1 -1
  234. package/dist/assets/smalltalk-bsl5ZJOd.js +1 -0
  235. package/dist/assets/{snippets-panel-CLQT_rb9.js → snippets-panel-CSczB-sT.js} +1 -1
  236. package/dist/assets/sparql-CJUH6gR2.js +1 -0
  237. package/dist/assets/{spec-CcvA_Vlj.js → spec-Be-iRLAY.js} +1 -1
  238. package/dist/assets/{src-Bp_72rVO.js → src-lcGySDV2.js} +1 -1
  239. package/dist/assets/{state-QwNqaRCk.js → state-B_fNn_z_.js} +1 -1
  240. package/dist/assets/{state-DRCtQIWh.js → state-LFRjhpk7.js} +1 -1
  241. package/dist/assets/{state-C5z8LHqe.js → state-Xu6bDsJl.js} +1 -1
  242. package/dist/assets/{stateDiagram-FKZM4ZOC-NMBeN6_k.js → stateDiagram-FKZM4ZOC-y1h6ccpz.js} +1 -1
  243. package/dist/assets/stateDiagram-v2-4FDKWEC3-BuQ9opQp.js +1 -0
  244. package/dist/assets/stex-pjf-hOob.js +1 -0
  245. package/dist/assets/stylus-Dz-M3k6z.js +1 -0
  246. package/dist/assets/swift-BZHzeogd.js +1 -0
  247. package/dist/assets/{switch-CA8la81g.js → switch-Cp5eQmZx.js} +1 -1
  248. package/dist/assets/tcl-CjjnKQKi.js +1 -0
  249. package/dist/assets/{terminal--Et332AA.js → terminal-Cve2fyoB.js} +1 -1
  250. package/dist/assets/textile-C6DxVHfN.js +1 -0
  251. package/dist/assets/{time-CoU4QCVK.js → time-CW4WrC86.js} +1 -1
  252. package/dist/assets/{timeline-definition-IT6M3QCI-BGiQZTGi.js → timeline-definition-IT6M3QCI-Crfvw3Ai.js} +1 -1
  253. package/dist/assets/{toggle-MO7vjfkt.js → toggle-BhEcsHTu.js} +1 -1
  254. package/dist/assets/toml-DTuUvOIE.js +1 -0
  255. package/dist/assets/{tooltip-oM-h2ZN1.js → tooltip-DOQlecCr.js} +1 -1
  256. package/dist/assets/{tooltip-CcOqovrC.js → tooltip-D_HRHf_c.js} +1 -1
  257. package/dist/assets/{tracing-Bdx3rdWM.js → tracing-DVa-Q9aK.js} +1 -1
  258. package/dist/assets/{tracing-panel-BNSSHFIf.js → tracing-panel-DFqVXy46.js} +2 -2
  259. package/dist/assets/{tree-DKsPUdeu.js → tree-D0AxVJ_I.js} +1 -1
  260. package/dist/assets/triangle-alert-n1-FF7zs.js +1 -0
  261. package/dist/assets/troff-yA83BgDZ.js +1 -0
  262. package/dist/assets/ttcn-F0FnYTMB.js +1 -0
  263. package/dist/assets/ttcn-cfg-CSr0YVH7.js +1 -0
  264. package/dist/assets/turtle-DaAbI02L.js +1 -0
  265. package/dist/assets/types-B737EDbu.js +17 -0
  266. package/dist/assets/{useAddCell-DVMY6vkv.js → useAddCell-CZ1y3fpl.js} +1 -1
  267. package/dist/assets/{useBoolean-Den0ZqeZ.js → useBoolean-eWwLICkT.js} +1 -1
  268. package/dist/assets/useCellActionButton-CGxzkJch.js +1 -0
  269. package/dist/assets/{useDateFormatter-DfEfyPT1.js → useDateFormatter-CmtFqjqu.js} +1 -1
  270. package/dist/assets/{useDeleteCell-CrSQfQw4.js → useDeleteCell-Dok0-XOi.js} +1 -1
  271. package/dist/assets/{useDependencyPanelTab-BqqmAAW7.js → useDependencyPanelTab-CYOtvc7A.js} +1 -1
  272. package/dist/assets/{useInstallPackage-chfmZzat.js → useInstallPackage-jGxNsOWc.js} +1 -1
  273. package/dist/assets/useNotebookActions-C8fdJ-I2.js +1 -0
  274. package/dist/assets/{useNumberFormatter-DQd-h5xR.js → useNumberFormatter-DMA_kIIZ.js} +1 -1
  275. package/dist/assets/{usePress-DcdVsIfA.js → usePress-DsLftN-x.js} +1 -1
  276. package/dist/assets/{useSplitCell-BL-Sir7Y.js → useSplitCell-CEPcLfYT.js} +1 -1
  277. package/dist/assets/vb-BYziWQVS.js +1 -0
  278. package/dist/assets/vbscript-CP_qFLQN.js +1 -0
  279. package/dist/assets/{vega-component-BYA7vCZO.js → vega-component-Ce_zhbUD.js} +1 -1
  280. package/dist/assets/{vega-loader.browser-BJ9oKrvH.js → vega-loader.browser-CZV6_g2i.js} +1 -1
  281. package/dist/assets/velocity-etCBW8YB.js +1 -0
  282. package/dist/assets/verilog-DO_FdUQ9.js +1 -0
  283. package/dist/assets/vhdl-CtT4O7WT.js +1 -0
  284. package/dist/assets/webidl-DUTo0zWa.js +1 -0
  285. package/dist/assets/{write-secret-modal-CkhGEn3N.js → write-secret-modal-DuxmGjDn.js} +1 -1
  286. package/dist/assets/xquery-B0wH9AmB.js +1 -0
  287. package/dist/assets/{xychartDiagram-PRI3JC2R-Cb4TioN6.js → xychartDiagram-PRI3JC2R-BCbKQcrl.js} +1 -1
  288. package/dist/assets/yacas-UtDKR_RQ.js +1 -0
  289. package/dist/assets/z80-gTLyuPxz.js +1 -0
  290. package/dist/index.html +117 -118
  291. package/package.json +1 -1
  292. package/src/components/databases/icons/google-drive.svg +8 -0
  293. package/src/components/datasources/datasources.tsx +5 -5
  294. package/src/components/editor/actions/useNotebookActions.tsx +15 -2
  295. package/src/components/editor/connections/add-connection-dialog.tsx +83 -0
  296. package/src/components/editor/connections/components.tsx +177 -0
  297. package/src/components/editor/{database → connections/database}/__tests__/as-code.test.ts +1 -1
  298. package/src/components/editor/connections/database/add-database-form.tsx +303 -0
  299. package/src/components/editor/{database → connections/database}/as-code.ts +1 -1
  300. package/src/components/editor/connections/storage/__tests__/__snapshots__/as-code.test.ts.snap +100 -0
  301. package/src/components/editor/connections/storage/__tests__/as-code.test.ts +166 -0
  302. package/src/components/editor/connections/storage/add-storage-form.tsx +135 -0
  303. package/src/components/editor/connections/storage/as-code.ts +188 -0
  304. package/src/components/editor/connections/storage/schemas.ts +141 -0
  305. package/src/components/storage/components.tsx +9 -3
  306. package/src/components/storage/storage-inspector.tsx +20 -1
  307. package/src/core/codemirror/__tests__/format.test.ts +9 -1
  308. package/src/core/storage/types.ts +1 -0
  309. package/dist/assets/LazyAnyLanguageCodeMirror-DIzh1FyL.js +0 -2
  310. package/dist/assets/add-database-form-D06OUuSg.js +0 -111
  311. package/dist/assets/apl-EAxnZS_5.js +0 -1
  312. package/dist/assets/app-config-button-Btys3Cin.js +0 -1
  313. package/dist/assets/asciiarmor-zxnaShQE.js +0 -1
  314. package/dist/assets/asn1-7i28Os5R.js +0 -1
  315. package/dist/assets/azure-B7oWrJc_.js +0 -1
  316. package/dist/assets/brainfuck-BZegPsXK.js +0 -1
  317. package/dist/assets/channel-8l73B3Du.js +0 -1
  318. package/dist/assets/classDiagram-2ON5EDUG-DCHm2P5j.js +0 -1
  319. package/dist/assets/classDiagram-v2-WZHVMYZB-BCGAyQvL.js +0 -1
  320. package/dist/assets/clojure-VUVi7fTV.js +0 -1
  321. package/dist/assets/cmake-DZJIDbjY.js +0 -1
  322. package/dist/assets/cobol-klCRwlLm.js +0 -1
  323. package/dist/assets/coffeescript-C9foD9ub.js +0 -1
  324. package/dist/assets/commonlisp-tHxoA35J.js +0 -1
  325. package/dist/assets/crystal-CQ11GdrX.js +0 -1
  326. package/dist/assets/cypher-CJ0Uzw29.js +0 -1
  327. package/dist/assets/d-DP0SUIt1.js +0 -1
  328. package/dist/assets/diff-CNs8MB38.js +0 -1
  329. package/dist/assets/dist-B8Knp6QM.js +0 -1
  330. package/dist/assets/dist-BThe47rt.js +0 -1
  331. package/dist/assets/dist-C6prIILx.js +0 -1
  332. package/dist/assets/dist-CHwE2nmM.js +0 -1
  333. package/dist/assets/dist-CPi-6Hei.js +0 -1
  334. package/dist/assets/dist-CX2pe9zu.js +0 -1
  335. package/dist/assets/dist-Cf_g6O8K.js +0 -1
  336. package/dist/assets/dist-ChxQzK4j.js +0 -1
  337. package/dist/assets/dist-D3fVt494.js +0 -1
  338. package/dist/assets/dist-DNtP2rJw.js +0 -1
  339. package/dist/assets/dtd-BsD0uJw0.js +0 -1
  340. package/dist/assets/dylan-DbrGP1IP.js +0 -1
  341. package/dist/assets/ecl-C0rZlhHw.js +0 -1
  342. package/dist/assets/eiffel-2ZX-OpSJ.js +0 -1
  343. package/dist/assets/elm-CbOSKldD.js +0 -1
  344. package/dist/assets/erlang-BWiOgHIX.js +0 -1
  345. package/dist/assets/factor-CUwFIMOP.js +0 -1
  346. package/dist/assets/file-explorer-panel-BeOWee6Z.js +0 -1
  347. package/dist/assets/form-ibH0eKd-.js +0 -2
  348. package/dist/assets/forth-BEQA4QQL.js +0 -1
  349. package/dist/assets/fortran-DoPpOZgG.js +0 -1
  350. package/dist/assets/gas-BYovsvOE.js +0 -1
  351. package/dist/assets/gherkin-CFiRc1Pf.js +0 -1
  352. package/dist/assets/globe-B68kre4p.js +0 -1
  353. package/dist/assets/groovy-DJNH7evt.js +0 -1
  354. package/dist/assets/haskell-duZvcePm.js +0 -1
  355. package/dist/assets/haxe-B2l95qvB.js +0 -1
  356. package/dist/assets/home-page-Bs5_UsFC.js +0 -4
  357. package/dist/assets/html-to-image-CojwvW9z.js +0 -2
  358. package/dist/assets/idl-CZ_xwU8I.js +0 -1
  359. package/dist/assets/image-CBwHq93J.js +0 -1
  360. package/dist/assets/javascript-CF5KGSAj.js +0 -1
  361. package/dist/assets/julia-BQlq5iZn.js +0 -1
  362. package/dist/assets/katex-BalO4WMU.js +0 -1
  363. package/dist/assets/links-cVjWsr05.js +0 -1
  364. package/dist/assets/livescript-sRMenfqS.js +0 -1
  365. package/dist/assets/lua-a56ITumN.js +0 -1
  366. package/dist/assets/mathematica-B3m4jXeH.js +0 -1
  367. package/dist/assets/mbox-BtL7aO2I.js +0 -1
  368. package/dist/assets/mermaid-4DMBBIKO-DHX6rzjo.js +0 -1
  369. package/dist/assets/mirc-S27kuZ31.js +0 -1
  370. package/dist/assets/mllike-B3kx3KeF.js +0 -1
  371. package/dist/assets/modelica-DgbW4dSi.js +0 -1
  372. package/dist/assets/mscgen-BIa_4d-0.js +0 -1
  373. package/dist/assets/mumps-4fnELyHs.js +0 -1
  374. package/dist/assets/nsis-BfGyMssE.js +0 -1
  375. package/dist/assets/ntriples-DeY1n_tC.js +0 -1
  376. package/dist/assets/octave-7Qn21jzx.js +0 -1
  377. package/dist/assets/oz-CiPFl3Ni.js +0 -1
  378. package/dist/assets/pascal-BH9yQLzw.js +0 -1
  379. package/dist/assets/perl-DfMCx2i2.js +0 -1
  380. package/dist/assets/pig-D9CNebQN.js +0 -1
  381. package/dist/assets/powershell-Dss0bU9F.js +0 -1
  382. package/dist/assets/properties-CHADYQUL.js +0 -1
  383. package/dist/assets/protobuf-DFN-V4SD.js +0 -1
  384. package/dist/assets/pug-DOI9FnEk.js +0 -1
  385. package/dist/assets/puppet-BV0HAkDS.js +0 -1
  386. package/dist/assets/python-C83Db0-4.js +0 -1
  387. package/dist/assets/q-D84S4YaJ.js +0 -1
  388. package/dist/assets/r-jmqrRzXv.js +0 -1
  389. package/dist/assets/react-vega-Dg8Pw8lR.js +0 -1
  390. package/dist/assets/rpm-DUjG0xRk.js +0 -1
  391. package/dist/assets/ruby-SP4FIzir.js +0 -1
  392. package/dist/assets/sas-BxaPz2EX.js +0 -1
  393. package/dist/assets/scheme-HBseLApj.js +0 -1
  394. package/dist/assets/session-panel-DwTnfeqw.js +0 -1
  395. package/dist/assets/shell-w8ATY_lQ.js +0 -1
  396. package/dist/assets/sieve-Dyq0LGDO.js +0 -1
  397. package/dist/assets/smalltalk-D7mAtumc.js +0 -1
  398. package/dist/assets/sparql-DAeEYE_u.js +0 -1
  399. package/dist/assets/stateDiagram-v2-4FDKWEC3-wXzPY2i9.js +0 -1
  400. package/dist/assets/stex-BBWVYm-R.js +0 -1
  401. package/dist/assets/stylus-Cw3Ugan7.js +0 -1
  402. package/dist/assets/swift-CPsNOBsX.js +0 -1
  403. package/dist/assets/tcl-BfWyQdZa.js +0 -1
  404. package/dist/assets/textarea-noyX_YEw.js +0 -1
  405. package/dist/assets/textile-BKgaSzSN.js +0 -1
  406. package/dist/assets/toml-BSOdv04W.js +0 -1
  407. package/dist/assets/troff-C0hD9kig.js +0 -1
  408. package/dist/assets/ttcn-DEqPxhoh.js +0 -1
  409. package/dist/assets/ttcn-cfg-B-7jSlUe.js +0 -1
  410. package/dist/assets/turtle-BTtgFsu8.js +0 -1
  411. package/dist/assets/types-DYD6UxTH.js +0 -17
  412. package/dist/assets/useCellActionButton-HNTLhSrv.js +0 -1
  413. package/dist/assets/useNotebookActions-Bzt5O8Yy.js +0 -1
  414. package/dist/assets/vb-DfRPk_ji.js +0 -1
  415. package/dist/assets/vbscript-C8D4uv5N.js +0 -1
  416. package/dist/assets/velocity-DxKr2FFC.js +0 -1
  417. package/dist/assets/verilog-CxVhamiH.js +0 -1
  418. package/dist/assets/vhdl-B-IpBNOA.js +0 -1
  419. package/dist/assets/webidl-CBjKmBwO.js +0 -1
  420. package/dist/assets/xquery-ABGCbLv0.js +0 -1
  421. package/dist/assets/yacas-Ckyxh7oh.js +0 -1
  422. package/dist/assets/z80-Dr5sQweg.js +0 -1
  423. package/src/components/editor/database/add-database-form.tsx +0 -420
  424. /package/dist/assets/{Combination-BioTNpLP.js → Combination-tjZP3FH6.js} +0 -0
  425. /package/dist/assets/{Deferred-BMfCOLaw.js → Deferred-D2igisxY.js} +0 -0
  426. /package/dist/assets/{SSRProvider-CwqN9FWV.js → SSRProvider-DC7ElCZZ.js} +0 -0
  427. /package/dist/assets/{alert-Bs8tbZo_.js → alert-0YTlkh9P.js} +0 -0
  428. /package/dist/assets/{apl-Byte72fT.js → apl-_OaVDIdj.js} +0 -0
  429. /package/dist/assets/{asciiarmor-BU-VnG1Y.js → asciiarmor-C9F03XGV.js} +0 -0
  430. /package/dist/assets/{asn1-hTvH3S4T.js → asn1-BnyFT2xh.js} +0 -0
  431. /package/dist/assets/{badge-BUFDGZ04.js → badge-CNBv2dAU.js} +0 -0
  432. /package/dist/assets/{blob-DgooIGjS.js → blob-CObhN-9g.js} +0 -0
  433. /package/dist/assets/{brainfuck-C-q1Rv8J.js → brainfuck-BDCj_8tQ.js} +0 -0
  434. /package/dist/assets/{clear-button-jiwoSELH.js → clear-button-BA9qcQQg.js} +0 -0
  435. /package/dist/assets/{clike-BE-9Ct_H.js → clike-CoedqJfF.js} +0 -0
  436. /package/dist/assets/{clojure-Co-TLeNo.js → clojure-BEClvbJJ.js} +0 -0
  437. /package/dist/assets/{cmake-B-Nm_Opd.js → cmake-CCoJFsI7.js} +0 -0
  438. /package/dist/assets/{cobol-BGdihAZT.js → cobol-CrncQb9J.js} +0 -0
  439. /package/dist/assets/{coffeescript-BUZXkMUO.js → coffeescript-DwVkfncu.js} +0 -0
  440. /package/dist/assets/{commonlisp-CFkPbxvX.js → commonlisp-CJ40YQuw.js} +0 -0
  441. /package/dist/assets/{copy-CgddLxfF.js → copy-DMCkK2TI.js} +0 -0
  442. /package/dist/assets/{crystal-CqfqDl34.js → crystal-YUhScjFU.js} +0 -0
  443. /package/dist/assets/{css-DPEtZWJi.js → css-BpYxrU6m.js} +0 -0
  444. /package/dist/assets/{cypher-B0t8FJvU.js → cypher-DtBx1FxP.js} +0 -0
  445. /package/dist/assets/{d-DRa_XRSB.js → d-Dah-rTjO.js} +0 -0
  446. /package/dist/assets/{defaultLocale-CGfP-Ye3.js → defaultLocale-DK1MWd7f.js} +0 -0
  447. /package/dist/assets/{defaultLocale-CuYNS33t.js → defaultLocale-OkOxlkkM.js} +0 -0
  448. /package/dist/assets/{diff-GLneonpD.js → diff-CbRoYxJw.js} +0 -0
  449. /package/dist/assets/{dist-Cr2srKZ5.js → dist-0qXxt1VF.js} +0 -0
  450. /package/dist/assets/{dist-C4QdWMCE.js → dist-51xFOPFs.js} +0 -0
  451. /package/dist/assets/{dist-DBYXupB9.js → dist-BDJDjQTP.js} +0 -0
  452. /package/dist/assets/{dist-jtXWG2b1.js → dist-BTEPE6IB.js} +0 -0
  453. /package/dist/assets/{dist-CX4tr6LY.js → dist-BYbeMVLN.js} +0 -0
  454. /package/dist/assets/{dist-WaT7BL5t.js → dist-BjtLy-VA.js} +0 -0
  455. /package/dist/assets/{dist-DrewQ3CS.js → dist-C9Tymsam.js} +0 -0
  456. /package/dist/assets/{dist-DvNh3ph0.js → dist-CPbQEKNx.js} +0 -0
  457. /package/dist/assets/{dist-CW4ZrmuX.js → dist-DDs9pMUo.js} +0 -0
  458. /package/dist/assets/{dist-DgIBu6pZ.js → dist-DU2EJ7el.js} +0 -0
  459. /package/dist/assets/{dist-DkUBUEhC.js → dist-DnkvqAMq.js} +0 -0
  460. /package/dist/assets/{dist-DWi0RsIc.js → dist-DpVoU5lF.js} +0 -0
  461. /package/dist/assets/{dist-BoFVJhwF.js → dist-odxAaH5Z.js} +0 -0
  462. /package/dist/assets/{dtd-uVrZNVF0.js → dtd-DnxzgohM.js} +0 -0
  463. /package/dist/assets/{dylan-DkNeA4FZ.js → dylan-DV-GV0Um.js} +0 -0
  464. /package/dist/assets/{ecl-CldUgvc9.js → ecl-D5jDMU68.js} +0 -0
  465. /package/dist/assets/{eiffel-CoMDRbRL.js → eiffel-DKJu2v1N.js} +0 -0
  466. /package/dist/assets/{elm-Cb5XC6ev.js → elm-jc1dahX5.js} +0 -0
  467. /package/dist/assets/{emotion-is-prop-valid.esm-lG8j6oqk.js → emotion-is-prop-valid.esm-D7FeWASw.js} +0 -0
  468. /package/dist/assets/{empty-state-BNyDvg_Q.js → empty-state-DFr2pZOz.js} +0 -0
  469. /package/dist/assets/{en-US-k6sS5Nab.js → en-US-DBqDb4Nb.js} +0 -0
  470. /package/dist/assets/{erlang-8H3fTZ3L.js → erlang-xV-AfkqS.js} +0 -0
  471. /package/dist/assets/{errors-0IrrdfSG.js → errors-Bfogio62.js} +0 -0
  472. /package/dist/assets/{extends-B9D0JO9U.js → extends-aq1t6BkR.js} +0 -0
  473. /package/dist/assets/{forth-B8kC4npz.js → forth-C9zvylLL.js} +0 -0
  474. /package/dist/assets/{fortran-CNWGEL3c.js → fortran-CyOyVtLP.js} +0 -0
  475. /package/dist/assets/{gas-DnZQNTHK.js → gas-B3PseLpk.js} +0 -0
  476. /package/dist/assets/{gherkin-JfGcGvci.js → gherkin-BJegP8jG.js} +0 -0
  477. /package/dist/assets/{groovy-D0FWiAVm.js → groovy-B7OnG3ZU.js} +0 -0
  478. /package/dist/assets/{haskell-wUB3uX-G.js → haskell-BtINGz8b.js} +0 -0
  479. /package/dist/assets/{haxe-g0JY6eL-.js → haxe-DG3vLZ0S.js} +0 -0
  480. /package/dist/assets/{idl-CV2cLkPc.js → idl-ARaXQ5Lo.js} +0 -0
  481. /package/dist/assets/{isValid-CUXKlcrM.js → isValid-D3F4nmET.js} +0 -0
  482. /package/dist/assets/{javascript-CT6okXEZ.js → javascript-DbuC-gIm.js} +0 -0
  483. /package/dist/assets/{julia-CKC48ufo.js → julia-C2ly3uah.js} +0 -0
  484. /package/dist/assets/{katex-FSdXOW5Y.js → katex-rvFxOCU-.js} +0 -0
  485. /package/dist/assets/{kbd-Rn7tWvNg.js → kbd-CVbqSkT8.js} +0 -0
  486. /package/dist/assets/{link-BmtFffTv.js → link-Cpo6yhBB.js} +0 -0
  487. /package/dist/assets/{links-MkDbmF2p.js → links-BKV6zi_7.js} +0 -0
  488. /package/dist/assets/{livescript-C43pZ6Ue.js → livescript-BHGtnzZk.js} +0 -0
  489. /package/dist/assets/{loro_wasm_bg-DNKZeVyM.js → loro_wasm_bg-Bj93RhA2.js} +0 -0
  490. /package/dist/assets/{lua-Cs2mb10K.js → lua-0hHWC4O5.js} +0 -0
  491. /package/dist/assets/{marimo-icons-DcMouEVW.js → marimo-icons-BDAuIiW5.js} +0 -0
  492. /package/dist/assets/{mathematica-B5FMK3ma.js → mathematica-BeUaygJp.js} +0 -0
  493. /package/dist/assets/{mbox-36Zrn5Bd.js → mbox-CR4_Euk_.js} +0 -0
  494. /package/dist/assets/{mirc-BKTAABSX.js → mirc-Cc0cHJWO.js} +0 -0
  495. /package/dist/assets/{mllike-DbuClUqc.js → mllike-D58Jm9uo.js} +0 -0
  496. /package/dist/assets/{modelica-CKRvBm7N.js → modelica-CVUPArJj.js} +0 -0
  497. /package/dist/assets/{mscgen-B4BRgnCi.js → mscgen-B_Av7U7x.js} +0 -0
  498. /package/dist/assets/{multi-icon-BFa-He80.js → multi-icon-OxLi6M3I.js} +0 -0
  499. /package/dist/assets/{mumps-BFiMcyFV.js → mumps-CSXER37P.js} +0 -0
  500. /package/dist/assets/{ntriples-QQAkJYAR.js → ntriples-BH96LyUh.js} +0 -0
  501. /package/dist/assets/{numbers-CPeFd6mm.js → numbers-44Cj1Me-.js} +0 -0
  502. /package/dist/assets/{objectWithoutPropertiesLoose-CboCOq4o.js → objectWithoutPropertiesLoose-Dxmp_Bd_.js} +0 -0
  503. /package/dist/assets/{octave-DsTphmGZ.js → octave-MtIOg8Xr.js} +0 -0
  504. /package/dist/assets/{ordinal-CIZb_ice.js → ordinal-Cn9sg_-a.js} +0 -0
  505. /package/dist/assets/{oz-CD9rr5Iz.js → oz-CQSW4u2r.js} +0 -0
  506. /package/dist/assets/{panel-context-D8PoMwqS.js → panel-context-ICWm_stq.js} +0 -0
  507. /package/dist/assets/{pascal-DdHEIlJE.js → pascal-kJIfJeBL.js} +0 -0
  508. /package/dist/assets/{paths-D2lG83Oh.js → paths-bMgYkaP2.js} +0 -0
  509. /package/dist/assets/{perl-DHPJBQ1u.js → perl-DDhi21z2.js} +0 -0
  510. /package/dist/assets/{pig-Yz7ERgca.js → pig-BdUzMo_O.js} +0 -0
  511. /package/dist/assets/{play-CkqWG85-.js → play-D4Tdvkms.js} +0 -0
  512. /package/dist/assets/{plus-C9B_qWUi.js → plus-B-s-VRHt.js} +0 -0
  513. /package/dist/assets/{powershell-CHPZ_bsU.js → powershell-D_qEipPM.js} +0 -0
  514. /package/dist/assets/{preload-helper-BW0IMuFq.js → preload-helper-TXkS1QI3.js} +0 -0
  515. /package/dist/assets/{prop-types-C638SUfx.js → prop-types-DRf51_gT.js} +0 -0
  516. /package/dist/assets/{properties-CI9nc7K4.js → properties-CS6vA6nt.js} +0 -0
  517. /package/dist/assets/{protobuf-BYSIv2pY.js → protobuf-COtqlKri.js} +0 -0
  518. /package/dist/assets/{puppet-CEpLafZX.js → puppet-Ctozq3R1.js} +0 -0
  519. /package/dist/assets/{purify.es-DTgMcyNc.js → purify.es-CPplrWRQ.js} +0 -0
  520. /package/dist/assets/{python-BndVuwG1.js → python-D9pCSume.js} +0 -0
  521. /package/dist/assets/{q-L_cetpiW.js → q-CKhLXEtL.js} +0 -0
  522. /package/dist/assets/{r-Dd37AKWk.js → r-BvAfMHMS.js} +0 -0
  523. /package/dist/assets/{range-ClqUI25v.js → range-DNqFcYmr.js} +0 -0
  524. /package/dist/assets/{react-resizable-panels.browser.esm-DDRqG5ui.js → react-resizable-panels.browser.esm-RgA6v8U3.js} +0 -0
  525. /package/dist/assets/{refresh-ccw-B3lGEyQm.js → refresh-ccw-BOzRCrXK.js} +0 -0
  526. /package/dist/assets/{refresh-cw-fLeDriQe.js → refresh-cw-DeCFDX1B.js} +0 -0
  527. /package/dist/assets/{requests-BtlCsvG4.js → requests-KFvRjaaN.js} +0 -0
  528. /package/dist/assets/{rotate-ccw-DgH8qERb.js → rotate-ccw-BG5BZyzw.js} +0 -0
  529. /package/dist/assets/{rpm-CHrvhtlN.js → rpm-CUTjLkz_.js} +0 -0
  530. /package/dist/assets/{ruby-BPOowfX6.js → ruby-jDDZwg5-.js} +0 -0
  531. /package/dist/assets/{sas-BsEFSvEP.js → sas-mA9119dU.js} +0 -0
  532. /package/dist/assets/{save-C91FTnFa.js → save-I_RGv5p0.js} +0 -0
  533. /package/dist/assets/{scheme-B42INBu7.js → scheme-Bw6sYvQh.js} +0 -0
  534. /package/dist/assets/{session-Deuv0Lgh.js → session-DnMOyddG.js} +0 -0
  535. /package/dist/assets/{settings-DRfuuLRT.js → settings-DD8FJvQ_.js} +0 -0
  536. /package/dist/assets/{shell-BPea12OI.js → shell-BSG_6EVv.js} +0 -0
  537. /package/dist/assets/{sieve-C-yPcLw5.js → sieve-BvqlFANQ.js} +0 -0
  538. /package/dist/assets/{simple-mode-CFlvn0Mm.js → simple-mode-C0eLpHUg.js} +0 -0
  539. /package/dist/assets/{smalltalk-e7OO1ATb.js → smalltalk-CarfjYvX.js} +0 -0
  540. /package/dist/assets/{sparql-B4I2Ledx.js → sparql-DpdbGHkw.js} +0 -0
  541. /package/dist/assets/{spinner-Dt4SmUsI.js → spinner-DCSoZZhh.js} +0 -0
  542. /package/dist/assets/{square-function-DEp1ozoA.js → square-function-4zY5Dv0P.js} +0 -0
  543. /package/dist/assets/{square-DZpWT_hp.js → square-oV8Csj8Y.js} +0 -0
  544. /package/dist/assets/{stex-0ac7Aukl.js → stex-FMMSUPAS.js} +0 -0
  545. /package/dist/assets/{stylus-CBRbZwhN.js → stylus-DwqF5JX3.js} +0 -0
  546. /package/dist/assets/{swift-B2hnU7ha.js → swift-XQW_3Dnq.js} +0 -0
  547. /package/dist/assets/{tcl-BtyamtaZ.js → tcl-DSytfKxX.js} +0 -0
  548. /package/dist/assets/{textile-M9mhyNE9.js → textile-C0sJ895O.js} +0 -0
  549. /package/dist/assets/{timer-CPT_vXom.js → timer-BEJidwwG.js} +0 -0
  550. /package/dist/assets/{toml-YxyxhyRy.js → toml-Bduwr9FD.js} +0 -0
  551. /package/dist/assets/{trash-2-CrA4LwJ2.js → trash-2-DtQaB9NM.js} +0 -0
  552. /package/dist/assets/{trash-ZGxZ3QGq.js → trash-Basz0Kvc.js} +0 -0
  553. /package/dist/assets/{troff-C7xpi05X.js → troff-DhuvYLXE.js} +0 -0
  554. /package/dist/assets/{ttcn-D3YytrJU.js → ttcn-C2K9hXYD.js} +0 -0
  555. /package/dist/assets/{ttcn-cfg-DlZ5vA9E.js → ttcn-cfg-DWjJYHn-.js} +0 -0
  556. /package/dist/assets/{turtle-BSHvAsUe.js → turtle-q-WiynB8.js} +0 -0
  557. /package/dist/assets/{types-CswNghXe.js → types-BhvWC48z.js} +0 -0
  558. /package/dist/assets/{use-toast-Hc8CXlvz.js → use-toast-BhMe50aT.js} +0 -0
  559. /package/dist/assets/{useAsyncData-CI3ntihq.js → useAsyncData-DVm0BCFt.js} +0 -0
  560. /package/dist/assets/{useDebounce-S9zaMzrr.js → useDebounce-BUC67G8E.js} +0 -0
  561. /package/dist/assets/{useDeepCompareMemoize-yyiB9aJX.js → useDeepCompareMemoize-D1hTncYV.js} +0 -0
  562. /package/dist/assets/{useIframeCapabilities-Ba0L-TQN.js → useIframeCapabilities-T3alJPda.js} +0 -0
  563. /package/dist/assets/{useInterval-C2RcswPt.js → useInterval-Bpy5zYCc.js} +0 -0
  564. /package/dist/assets/{useTheme-CAolwY4Q.js → useTheme-CwdqVOYu.js} +0 -0
  565. /package/dist/assets/{uuid-ClFZlR7U.js → uuid-ImXS-885.js} +0 -0
  566. /package/dist/assets/{vb-DdkIDLlO.js → vb-BzUPMIAg.js} +0 -0
  567. /package/dist/assets/{vbscript-DhYGmk_p.js → vbscript-CUBxk5hi.js} +0 -0
  568. /package/dist/assets/{velocity-DAXJNEw4.js → velocity-CFrdKnJ-.js} +0 -0
  569. /package/dist/assets/{verilog-jmuT_L3b.js → verilog-uIU1FX2_.js} +0 -0
  570. /package/dist/assets/{vhdl-DcVQ97RU.js → vhdl-Ca2_GOin.js} +0 -0
  571. /package/dist/assets/{webidl-B-YB_4OQ.js → webidl-Fd2zBPO0.js} +0 -0
  572. /package/dist/assets/{workflow-DgZ_19fF.js → workflow-CU6kAL_h.js} +0 -0
  573. /package/dist/assets/{ws-Sb1KIggW.js → ws-D2eS61zr.js} +0 -0
  574. /package/dist/assets/{xquery-DOmY3Oe8.js → xquery-S8ffVcwS.js} +0 -0
  575. /package/dist/assets/{yacas-pL3kJRXV.js → yacas-BFgZPXn6.js} +0 -0
  576. /package/dist/assets/{youtube-DfMgNU9-.js → youtube-fKFch587.js} +0 -0
  577. /package/dist/assets/{z80-VwVuI_MT.js → z80-P5o2E6_C.js} +0 -0
  578. /package/src/components/editor/{database → connections}/__tests__/secrets.test.ts +0 -0
  579. /package/src/components/editor/{database → connections/database}/__tests__/__snapshots__/as-code.test.ts.snap +0 -0
  580. /package/src/components/editor/{database → connections/database}/schemas.ts +0 -0
  581. /package/src/components/editor/{database → connections}/form-renderers.tsx +0 -0
  582. /package/src/components/editor/{database → connections}/secrets.ts +0 -0
@@ -1,4 +1,4 @@
1
- var Zr=Object.defineProperty;var Kr=(t,e,n)=>e in t?Zr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var ie=(t,e,n)=>Kr(t,typeof e!="symbol"?e+"":e,n);import{s as _t,t as q}from"./chunk-LvLJmgfZ.js";import{i as jt,l as bn,n as Gr,p as Pt,u as It}from"./useEvent-WUlsM6MC.js";import{t as Ur}from"./react-Bj1aDYRI.js";import{A as Rt,An as xn,D as qr,E as Qr,Ft as wn,In as Jr,Ln as ea,Mn as ta,N as na,T as oa,a as ra,dn as aa,er as En,f as ia,h as sa,jt as la}from"./cells-DD42bsu7.js";import{t as da}from"./react-dom-CSu739Rf.js";import{t as De}from"./compiler-runtime-B3qBwwSJ.js";import{t as ca}from"./jsx-runtime-CP2fAiZX.js";import{r as ua,t as rt}from"./button-BmOH9agK.js";import{t as Ve}from"./cn-d_A4rA-x.js";import"./dist-DUY6xZX8.js";import{r as ha}from"./once-DRC4SgqY.js";import"./cjs-CVt8hZ5L.js";import"./main-Cmx6WhDY.js";import"./useNonce-BY4jV7Yb.js";import{t as Dt}from"./createLucideIcon-BvP5LBIs.js";import{a as ga,i as fa,t as pa}from"./useDependencyPanelTab-BqqmAAW7.js";import{t as ma}from"./x-yqLqiq5Q.js";import{m as ya,p as va}from"./download-CmObLKP6.js";import{t as ba}from"./ellipsis-vertical-CqcBoxmi.js";import{t as xa}from"./settings-DRfuuLRT.js";import{t as wa}from"./square-function-DEp1ozoA.js";import{t as Ea}from"./workflow-DgZ_19fF.js";import"./dist-BOEbbZQx.js";import"./dist-DotE4D06.js";import"./dist-WaT7BL5t.js";import"./dist-BoFVJhwF.js";import"./dist-C4QdWMCE.js";import"./session-Deuv0Lgh.js";import"./Combination-BioTNpLP.js";import{t as Sa}from"./tooltip-oM-h2ZN1.js";import"./purify.es-DTgMcyNc.js";import{i as Ca,l as Na,r as ka,s as Ma,t as Oa,u as Sn}from"./popover-C7N9RyXk.js";import{n as _a}from"./useDebounce-S9zaMzrr.js";import{i as ja,t as At}from"./cell-link-CiQrWiPA.js";import"./html-to-image-CojwvW9z.js";import{a as Pa,i as Ia,t as Ra}from"./focus-DiPb_hn6.js";import{t as Cn}from"./label-OL3StKg2.js";import"./esm-Dm5bJp7V.js";import{b as Da}from"./timer-CPT_vXom.js";import{a as Bt,c as zt,i as Aa,l as Lt,n as Fe,o as Ba,r as za,s as Nn,t as La,u as ht}from"./src-Bp_72rVO.js";import{r as $a}from"./name-cell-input-HEC8dShQ.js";import"./multi-icon-BFa-He80.js";import{n as Ta,t as kn}from"./common-BOraucV9.js";import{r as Ha}from"./panel-context-D8PoMwqS.js";var Va=Dt("arrow-right-from-line",[["path",{d:"M3 5v14",key:"1nt18q"}],["path",{d:"M21 12H7",key:"13ipq5"}],["path",{d:"m15 18 6-6-6-6",key:"6tx3qv"}]]),Fa=Dt("arrow-right-to-line",[["path",{d:"M17 12H3",key:"8awo09"}],["path",{d:"m11 18 6-6-6-6",key:"8c2y43"}],["path",{d:"M21 5v14",key:"nzette"}]]),Wa=Dt("map-pin",[["path",{d:"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0",key:"1r0f0z"}],["circle",{cx:"12",cy:"10",r:"3",key:"ilqhr7"}]]);function he(t){if(typeof t=="string"||typeof t=="number")return""+t;let e="";if(Array.isArray(t))for(let n=0,o;n<t.length;n++)(o=he(t[n]))!==""&&(e+=(e&&" ")+o);else for(let n in t)t[n]&&(e+=(e&&" ")+n);return e}var v=_t(Ur(),1),Xa=_t(va(),1),{useDebugValue:Ya}=v.default,{useSyncExternalStoreWithSelector:Za}=Xa.default,Ka=t=>t;function Mn(t,e=Ka,n){let o=Za(t.subscribe,t.getState,t.getServerState||t.getInitialState,e,n);return Ya(o),o}var On=(t,e)=>{let n=ya(t),o=(i,d=e)=>Mn(n,i,d);return Object.assign(o,n),o},Ga=(t,e)=>t?On(t,e):On;function ue(t,e){if(Object.is(t,e))return!0;if(typeof t!="object"||!t||typeof e!="object"||!e)return!1;if(t instanceof Map&&e instanceof Map){if(t.size!==e.size)return!1;for(let[o,i]of t)if(!Object.is(i,e.get(o)))return!1;return!0}if(t instanceof Set&&e instanceof Set){if(t.size!==e.size)return!1;for(let o of t)if(!e.has(o))return!1;return!0}let n=Object.keys(t);if(n.length!==Object.keys(e).length)return!1;for(let o of n)if(!Object.prototype.hasOwnProperty.call(e,o)||!Object.is(t[o],e[o]))return!1;return!0}var gt=t=>()=>t;function $t(t,{sourceEvent:e,subject:n,target:o,identifier:i,active:d,x:a,y:l,dx:s,dy:c,dispatch:u}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:d,enumerable:!0,configurable:!0},x:{value:a,enumerable:!0,configurable:!0},y:{value:l,enumerable:!0,configurable:!0},dx:{value:s,enumerable:!0,configurable:!0},dy:{value:c,enumerable:!0,configurable:!0},_:{value:u}})}$t.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};function Ua(t){return!t.ctrlKey&&!t.button}function qa(){return this.parentNode}function Qa(t,e){return e??{x:t.x,y:t.y}}function Ja(){return navigator.maxTouchPoints||"ontouchstart"in this}function ei(){var t=Ua,e=qa,n=Qa,o=Ja,i={},d=Da("start","drag","end"),a=0,l,s,c,u,r=0;function g(m){m.on("mousedown.drag",h).filter(o).on("touchstart.drag",y).on("touchmove.drag",x,Ba).on("touchend.drag touchcancel.drag",b).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function h(m,C){if(!(u||!t.call(this,m,C))){var M=N(this,e.call(this,m,C),m,C,"mouse");M&&(ht(m.view).on("mousemove.drag",p,Nn).on("mouseup.drag",f,Nn),za(m.view),zt(m),c=!1,l=m.clientX,s=m.clientY,M("start",m))}}function p(m){if(Bt(m),!c){var C=m.clientX-l,M=m.clientY-s;c=C*C+M*M>r}i.mouse("drag",m)}function f(m){ht(m.view).on("mousemove.drag mouseup.drag",null),Aa(m.view,c),Bt(m),i.mouse("end",m)}function y(m,C){if(t.call(this,m,C)){var M=m.changedTouches,_=e.call(this,m,C),P=M.length,j,w;for(j=0;j<P;++j)(w=N(this,_,m,C,M[j].identifier,M[j]))&&(zt(m),w("start",m,M[j]))}}function x(m){var C=m.changedTouches,M=C.length,_,P;for(_=0;_<M;++_)(P=i[C[_].identifier])&&(Bt(m),P("drag",m,C[_]))}function b(m){var C=m.changedTouches,M=C.length,_,P;for(u&&clearTimeout(u),u=setTimeout(function(){u=null},500),_=0;_<M;++_)(P=i[C[_].identifier])&&(zt(m),P("end",m,C[_]))}function N(m,C,M,_,P,j){var w=d.copy(),E=Lt(j||M,C),O,k,S;if((S=n.call(m,new $t("beforestart",{sourceEvent:M,target:g,identifier:P,active:a,x:E[0],y:E[1],dx:0,dy:0,dispatch:w}),_))!=null)return O=S.x-E[0]||0,k=S.y-E[1]||0,function D(L,$,W){var R=E,T;switch(L){case"start":i[P]=D,T=a++;break;case"end":delete i[P],--a;case"drag":E=Lt(W||$,C),T=a;break}w.call(L,m,new $t(L,{sourceEvent:$,subject:S,target:g,identifier:P,active:T,x:E[0]+O,y:E[1]+k,dx:E[0]-R[0],dy:E[1]-R[1],dispatch:w}),_)}}return g.filter=function(m){return arguments.length?(t=typeof m=="function"?m:gt(!!m),g):t},g.container=function(m){return arguments.length?(e=typeof m=="function"?m:gt(m),g):e},g.subject=function(m){return arguments.length?(n=typeof m=="function"?m:gt(m),g):n},g.touchable=function(m){return arguments.length?(o=typeof m=="function"?m:gt(!!m),g):o},g.on=function(){var m=d.on.apply(d,arguments);return m===d?g:m},g.clickDistance=function(m){return arguments.length?(r=(m=+m)*m,g):Math.sqrt(r)},g}da();var ft=(0,v.createContext)(null),ti=ft.Provider,xe={error001:()=>"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:t=>`Node type "${t}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:t=>`The old edge with id=${t} does not exist.`,error009:t=>`Marker type "${t}" doesn't exist.`,error008:(t,e)=>`Couldn't create edge for ${t?"target":"source"} handle id: "${t?e.targetHandle:e.sourceHandle}", edge id: ${e.id}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:t=>`Edge type "${t}" not found. Using fallback type "default".`,error012:t=>`Node with id "${t}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`},_n=xe.error001();function ne(t,e){let n=(0,v.useContext)(ft);if(n===null)throw Error(_n);return Mn(n,t,e)}var le=()=>{let t=(0,v.useContext)(ft);if(t===null)throw Error(_n);return(0,v.useMemo)(()=>({getState:t.getState,setState:t.setState,subscribe:t.subscribe,destroy:t.destroy}),[t])},ni=t=>t.userSelectionActive?"none":"all";function pt({position:t,children:e,className:n,style:o,...i}){let d=ne(ni),a=`${t}`.split("-");return v.createElement("div",{className:he(["react-flow__panel",n,...a]),style:{...o,pointerEvents:d},...i},e)}function oi({proOptions:t,position:e="bottom-right"}){return t!=null&&t.hideAttribution?null:v.createElement(pt,{position:e,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://reactflow.dev/pro"},v.createElement("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution"},"React Flow"))}var ri=(0,v.memo)(({x:t,y:e,label:n,labelStyle:o={},labelShowBg:i=!0,labelBgStyle:d={},labelBgPadding:a=[2,4],labelBgBorderRadius:l=2,children:s,className:c,...u})=>{let r=(0,v.useRef)(null),[g,h]=(0,v.useState)({x:0,y:0,width:0,height:0}),p=he(["react-flow__edge-textwrapper",c]);return(0,v.useEffect)(()=>{if(r.current){let f=r.current.getBBox();h({x:f.x,y:f.y,width:f.width,height:f.height})}},[n]),n===void 0||!n?null:v.createElement("g",{transform:`translate(${t-g.width/2} ${e-g.height/2})`,className:p,visibility:g.width?"visible":"hidden",...u},i&&v.createElement("rect",{width:g.width+2*a[0],x:-a[0],y:-a[1],height:g.height+2*a[1],className:"react-flow__edge-textbg",style:d,rx:l,ry:l}),v.createElement("text",{className:"react-flow__edge-text",y:g.height/2,dy:"0.3em",ref:r,style:o},n),s)}),Tt=t=>({width:t.offsetWidth,height:t.offsetHeight}),We=(t,e=0,n=1)=>Math.min(Math.max(t,e),n),Ht=(t={x:0,y:0},e)=>({x:We(t.x,e[0][0],e[1][0]),y:We(t.y,e[0][1],e[1][1])}),jn=(t,e,n)=>t<e?We(Math.abs(t-e),1,50)/50:t>n?-We(Math.abs(t-n),1,50)/50:0,Pn=(t,e)=>[jn(t.x,35,e.width-35)*20,jn(t.y,35,e.height-35)*20],In=t=>{var e;return((e=t.getRootNode)==null?void 0:e.call(t))||(window==null?void 0:window.document)},ai=(t,e)=>({x:Math.min(t.x,e.x),y:Math.min(t.y,e.y),x2:Math.max(t.x2,e.x2),y2:Math.max(t.y2,e.y2)}),Vt=({x:t,y:e,width:n,height:o})=>({x:t,y:e,x2:t+n,y2:e+o}),ii=({x:t,y:e,x2:n,y2:o})=>({x:t,y:e,width:n-t,height:o-e}),Rn=t=>({...t.positionAbsolute||{x:0,y:0},width:t.width||0,height:t.height||0}),Ft=(t,e)=>{let n=Math.max(0,Math.min(t.x+t.width,e.x+e.width)-Math.max(t.x,e.x)),o=Math.max(0,Math.min(t.y+t.height,e.y+e.height)-Math.max(t.y,e.y));return Math.ceil(n*o)},si=t=>me(t.width)&&me(t.height)&&me(t.x)&&me(t.y),me=t=>!isNaN(t)&&isFinite(t),re=Symbol.for("internals"),Dn=["Enter"," ","Escape"],li=(t,e)=>{},di=t=>"nativeEvent"in t;function Wt(t){var n,o,i;let e=((i=(o=(n=di(t)?t.nativeEvent:t).composedPath)==null?void 0:o.call(n))==null?void 0:i[0])||t.target;return["INPUT","SELECT","TEXTAREA"].includes(e==null?void 0:e.nodeName)||(e==null?void 0:e.hasAttribute("contenteditable"))||!!(e!=null&&e.closest(".nokey"))}var An=t=>"clientX"in t,Se=(t,e)=>{var d,a;let n=An(t),o=n?t.clientX:(d=t.touches)==null?void 0:d[0].clientX,i=n?t.clientY:(a=t.touches)==null?void 0:a[0].clientY;return{x:o-((e==null?void 0:e.left)??0),y:i-((e==null?void 0:e.top)??0)}},mt=()=>{var t;return typeof navigator<"u"&&((t=navigator==null?void 0:navigator.userAgent)==null?void 0:t.indexOf("Mac"))>=0},at=({id:t,path:e,labelX:n,labelY:o,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,markerEnd:r,markerStart:g,interactionWidth:h=20})=>v.createElement(v.Fragment,null,v.createElement("path",{id:t,style:u,d:e,fill:"none",className:"react-flow__edge-path",markerEnd:r,markerStart:g}),h&&v.createElement("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:h,className:"react-flow__edge-interaction"}),i&&me(n)&&me(o)?v.createElement(ri,{x:n,y:o,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c}):null);at.displayName="BaseEdge";function it(t,e,n){return n===void 0?n:o=>{let i=e().edges.find(d=>d.id===t);i&&n(o,{...i})}}function Bn({sourceX:t,sourceY:e,targetX:n,targetY:o}){let i=Math.abs(n-t)/2,d=n<t?n+i:n-i,a=Math.abs(o-e)/2;return[d,o<e?o+a:o-a,i,a]}function zn({sourceX:t,sourceY:e,targetX:n,targetY:o,sourceControlX:i,sourceControlY:d,targetControlX:a,targetControlY:l}){let s=t*.125+i*.375+a*.375+n*.125,c=e*.125+d*.375+l*.375+o*.125;return[s,c,Math.abs(s-t),Math.abs(c-e)]}var Xe;(function(t){t.Strict="strict",t.Loose="loose"})(Xe||(Xe={}));var Ye;(function(t){t.Free="free",t.Vertical="vertical",t.Horizontal="horizontal"})(Ye||(Ye={}));var yt;(function(t){t.Partial="partial",t.Full="full"})(yt||(yt={}));var Ae;(function(t){t.Bezier="default",t.Straight="straight",t.Step="step",t.SmoothStep="smoothstep",t.SimpleBezier="simplebezier"})(Ae||(Ae={}));var vt;(function(t){t.Arrow="arrow",t.ArrowClosed="arrowclosed"})(vt||(vt={}));var X;(function(t){t.Left="left",t.Top="top",t.Right="right",t.Bottom="bottom"})(X||(X={}));function Ln({pos:t,x1:e,y1:n,x2:o,y2:i}){return t===X.Left||t===X.Right?[.5*(e+o),n]:[e,.5*(n+i)]}function $n({sourceX:t,sourceY:e,sourcePosition:n=X.Bottom,targetX:o,targetY:i,targetPosition:d=X.Top}){let[a,l]=Ln({pos:n,x1:t,y1:e,x2:o,y2:i}),[s,c]=Ln({pos:d,x1:o,y1:i,x2:t,y2:e}),[u,r,g,h]=zn({sourceX:t,sourceY:e,targetX:o,targetY:i,sourceControlX:a,sourceControlY:l,targetControlX:s,targetControlY:c});return[`M${t},${e} C${a},${l} ${s},${c} ${o},${i}`,u,r,g,h]}var Xt=(0,v.memo)(({sourceX:t,sourceY:e,targetX:n,targetY:o,sourcePosition:i=X.Bottom,targetPosition:d=X.Top,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:r,style:g,markerEnd:h,markerStart:p,interactionWidth:f})=>{let[y,x,b]=$n({sourceX:t,sourceY:e,sourcePosition:i,targetX:n,targetY:o,targetPosition:d});return v.createElement(at,{path:y,labelX:x,labelY:b,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:r,style:g,markerEnd:h,markerStart:p,interactionWidth:f})});Xt.displayName="SimpleBezierEdge";var Tn={[X.Left]:{x:-1,y:0},[X.Right]:{x:1,y:0},[X.Top]:{x:0,y:-1},[X.Bottom]:{x:0,y:1}},ci=({source:t,sourcePosition:e=X.Bottom,target:n})=>e===X.Left||e===X.Right?t.x<n.x?{x:1,y:0}:{x:-1,y:0}:t.y<n.y?{x:0,y:1}:{x:0,y:-1},Hn=(t,e)=>Math.sqrt((e.x-t.x)**2+(e.y-t.y)**2);function ui({source:t,sourcePosition:e=X.Bottom,target:n,targetPosition:o=X.Top,center:i,offset:d}){let a=Tn[e],l=Tn[o],s={x:t.x+a.x*d,y:t.y+a.y*d},c={x:n.x+l.x*d,y:n.y+l.y*d},u=ci({source:s,sourcePosition:e,target:c}),r=u.x===0?"y":"x",g=u[r],h=[],p,f,y={x:0,y:0},x={x:0,y:0},[b,N,m,C]=Bn({sourceX:t.x,sourceY:t.y,targetX:n.x,targetY:n.y});if(a[r]*l[r]===-1){p=i.x??b,f=i.y??N;let M=[{x:p,y:s.y},{x:p,y:c.y}],_=[{x:s.x,y:f},{x:c.x,y:f}];h=a[r]===g?r==="x"?M:_:r==="x"?_:M}else{let M=[{x:s.x,y:c.y}],_=[{x:c.x,y:s.y}];if(h=r==="x"?a.x===g?_:M:a.y===g?M:_,e===o){let w=Math.abs(t[r]-n[r]);if(w<=d){let E=Math.min(d-1,d-w);a[r]===g?y[r]=(s[r]>t[r]?-1:1)*E:x[r]=(c[r]>n[r]?-1:1)*E}}if(e!==o){let w=r==="x"?"y":"x",E=a[r]===l[w],O=s[w]>c[w],k=s[w]<c[w];(a[r]===1&&(!E&&O||E&&k)||a[r]!==1&&(!E&&k||E&&O))&&(h=r==="x"?M:_)}let P={x:s.x+y.x,y:s.y+y.y},j={x:c.x+x.x,y:c.y+x.y};Math.max(Math.abs(P.x-h[0].x),Math.abs(j.x-h[0].x))>=Math.max(Math.abs(P.y-h[0].y),Math.abs(j.y-h[0].y))?(p=(P.x+j.x)/2,f=h[0].y):(p=h[0].x,f=(P.y+j.y)/2)}return[[t,{x:s.x+y.x,y:s.y+y.y},...h,{x:c.x+x.x,y:c.y+x.y},n],p,f,m,C]}function hi(t,e,n,o){let i=Math.min(Hn(t,e)/2,Hn(e,n)/2,o),{x:d,y:a}=e;if(t.x===d&&d===n.x||t.y===a&&a===n.y)return`L${d} ${a}`;if(t.y===a){let s=t.x<n.x?-1:1,c=t.y<n.y?1:-1;return`L ${d+i*s},${a}Q ${d},${a} ${d},${a+i*c}`}let l=t.x<n.x?1:-1;return`L ${d},${a+i*(t.y<n.y?-1:1)}Q ${d},${a} ${d+i*l},${a}`}function Yt({sourceX:t,sourceY:e,sourcePosition:n=X.Bottom,targetX:o,targetY:i,targetPosition:d=X.Top,borderRadius:a=5,centerX:l,centerY:s,offset:c=20}){let[u,r,g,h,p]=ui({source:{x:t,y:e},sourcePosition:n,target:{x:o,y:i},targetPosition:d,center:{x:l,y:s},offset:c});return[u.reduce((f,y,x)=>{let b="";return b=x>0&&x<u.length-1?hi(u[x-1],y,u[x+1],a):`${x===0?"M":"L"}${y.x} ${y.y}`,f+=b,f},""),r,g,h,p]}var bt=(0,v.memo)(({sourceX:t,sourceY:e,targetX:n,targetY:o,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,sourcePosition:r=X.Bottom,targetPosition:g=X.Top,markerEnd:h,markerStart:p,pathOptions:f,interactionWidth:y})=>{let[x,b,N]=Yt({sourceX:t,sourceY:e,sourcePosition:r,targetX:n,targetY:o,targetPosition:g,borderRadius:f==null?void 0:f.borderRadius,offset:f==null?void 0:f.offset});return v.createElement(at,{path:x,labelX:b,labelY:N,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,markerEnd:h,markerStart:p,interactionWidth:y})});bt.displayName="SmoothStepEdge";var Zt=(0,v.memo)(t=>{var e;return v.createElement(bt,{...t,pathOptions:(0,v.useMemo)(()=>{var n;return{borderRadius:0,offset:(n=t.pathOptions)==null?void 0:n.offset}},[(e=t.pathOptions)==null?void 0:e.offset])})});Zt.displayName="StepEdge";function gi({sourceX:t,sourceY:e,targetX:n,targetY:o}){let[i,d,a,l]=Bn({sourceX:t,sourceY:e,targetX:n,targetY:o});return[`M ${t},${e}L ${n},${o}`,i,d,a,l]}var Kt=(0,v.memo)(({sourceX:t,sourceY:e,targetX:n,targetY:o,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,markerEnd:r,markerStart:g,interactionWidth:h})=>{let[p,f,y]=gi({sourceX:t,sourceY:e,targetX:n,targetY:o});return v.createElement(at,{path:p,labelX:f,labelY:y,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,markerEnd:r,markerStart:g,interactionWidth:h})});Kt.displayName="StraightEdge";function xt(t,e){return t>=0?.5*t:e*25*Math.sqrt(-t)}function Vn({pos:t,x1:e,y1:n,x2:o,y2:i,c:d}){switch(t){case X.Left:return[e-xt(e-o,d),n];case X.Right:return[e+xt(o-e,d),n];case X.Top:return[e,n-xt(n-i,d)];case X.Bottom:return[e,n+xt(i-n,d)]}}function Fn({sourceX:t,sourceY:e,sourcePosition:n=X.Bottom,targetX:o,targetY:i,targetPosition:d=X.Top,curvature:a=.25}){let[l,s]=Vn({pos:n,x1:t,y1:e,x2:o,y2:i,c:a}),[c,u]=Vn({pos:d,x1:o,y1:i,x2:t,y2:e,c:a}),[r,g,h,p]=zn({sourceX:t,sourceY:e,targetX:o,targetY:i,sourceControlX:l,sourceControlY:s,targetControlX:c,targetControlY:u});return[`M${t},${e} C${l},${s} ${c},${u} ${o},${i}`,r,g,h,p]}var wt=(0,v.memo)(({sourceX:t,sourceY:e,targetX:n,targetY:o,sourcePosition:i=X.Bottom,targetPosition:d=X.Top,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:r,style:g,markerEnd:h,markerStart:p,pathOptions:f,interactionWidth:y})=>{let[x,b,N]=Fn({sourceX:t,sourceY:e,sourcePosition:i,targetX:n,targetY:o,targetPosition:d,curvature:f==null?void 0:f.curvature});return v.createElement(at,{path:x,labelX:b,labelY:N,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:r,style:g,markerEnd:h,markerStart:p,interactionWidth:y})});wt.displayName="BezierEdge";var Gt=(0,v.createContext)(null),fi=Gt.Provider;Gt.Consumer;var pi=()=>(0,v.useContext)(Gt),mi=t=>"id"in t&&"source"in t&&"target"in t,yi=({source:t,sourceHandle:e,target:n,targetHandle:o})=>`reactflow__edge-${t}${e||""}-${n}${o||""}`,Ut=(t,e)=>t===void 0?"":typeof t=="string"?t:`${e?`${e}__`:""}${Object.keys(t).sort().map(n=>`${n}=${t[n]}`).join("&")}`,vi=(t,e)=>e.some(n=>n.source===t.source&&n.target===t.target&&(n.sourceHandle===t.sourceHandle||!n.sourceHandle&&!t.sourceHandle)&&(n.targetHandle===t.targetHandle||!n.targetHandle&&!t.targetHandle)),bi=(t,e)=>{if(!t.source||!t.target)return xe.error006(),e;let n;return n=mi(t)?{...t}:{...t,id:yi(t)},vi(n,e)?e:e.concat(n)},qt=({x:t,y:e},[n,o,i],d,[a,l])=>{let s={x:(t-n)/i,y:(e-o)/i};return d?{x:a*Math.round(s.x/a),y:l*Math.round(s.y/l)}:s},Wn=({x:t,y:e},[n,o,i])=>({x:t*i+n,y:e*i+o}),Ze=(t,e=[0,0])=>{if(!t)return{x:0,y:0,positionAbsolute:{x:0,y:0}};let n=(t.width??0)*e[0],o=(t.height??0)*e[1],i={x:t.position.x-n,y:t.position.y-o};return{...i,positionAbsolute:t.positionAbsolute?{x:t.positionAbsolute.x-n,y:t.positionAbsolute.y-o}:i}},Qt=(t,e=[0,0])=>t.length===0?{x:0,y:0,width:0,height:0}:ii(t.reduce((n,o)=>{let{x:i,y:d}=Ze(o,e).positionAbsolute;return ai(n,Vt({x:i,y:d,width:o.width||0,height:o.height||0}))},{x:1/0,y:1/0,x2:-1/0,y2:-1/0})),Xn=(t,e,[n,o,i]=[0,0,1],d=!1,a=!1,l=[0,0])=>{let s={x:(e.x-n)/i,y:(e.y-o)/i,width:e.width/i,height:e.height/i},c=[];return t.forEach(u=>{let{width:r,height:g,selectable:h=!0,hidden:p=!1}=u;if(a&&!h||p)return!1;let{positionAbsolute:f}=Ze(u,l),y=Ft(s,{x:f.x,y:f.y,width:r||0,height:g||0}),x=r===void 0||g===void 0||r===null||g===null,b=d&&y>0,N=(r||0)*(g||0);(x||b||y>=N||u.dragging)&&c.push(u)}),c},Yn=(t,e)=>{let n=t.map(o=>o.id);return e.filter(o=>n.includes(o.source)||n.includes(o.target))},Zn=(t,e,n,o,i,d=.1)=>{let a=e/(t.width*(1+d)),l=n/(t.height*(1+d)),s=We(Math.min(a,l),o,i),c=t.x+t.width/2,u=t.y+t.height/2;return{x:e/2-c*s,y:n/2-u*s,zoom:s}},Be=(t,e=0)=>t.transition().duration(e);function Kn(t,e,n,o){return(e[n]||[]).reduce((i,d)=>{var a,l;return`${t.id}-${d.id}-${n}`!==o&&i.push({id:d.id||null,type:n,nodeId:t.id,x:(((a=t.positionAbsolute)==null?void 0:a.x)??0)+d.x+d.width/2,y:(((l=t.positionAbsolute)==null?void 0:l.y)??0)+d.y+d.height/2}),i},[])}function xi(t,e,n,o,i,d){let{x:a,y:l}=Se(t),s=e.elementsFromPoint(a,l).find(h=>h.classList.contains("react-flow__handle"));if(s){let h=s.getAttribute("data-nodeid");if(h){let p=Jt(void 0,s),f=s.getAttribute("data-handleid"),y=d({nodeId:h,id:f,type:p});if(y){let x=i.find(b=>b.nodeId===h&&b.type===p&&b.id===f);return{handle:{id:f,type:p,nodeId:h,x:(x==null?void 0:x.x)||n.x,y:(x==null?void 0:x.y)||n.y},validHandleResult:y}}}}let c=[],u=1/0;if(i.forEach(h=>{let p=Math.sqrt((h.x-n.x)**2+(h.y-n.y)**2);if(p<=o){let f=d(h);p<=u&&(p<u?c=[{handle:h,validHandleResult:f}]:p===u&&c.push({handle:h,validHandleResult:f}),u=p)}}),!c.length)return{handle:null,validHandleResult:Gn()};if(c.length===1)return c[0];let r=c.some(({validHandleResult:h})=>h.isValid),g=c.some(({handle:h})=>h.type==="target");return c.find(({handle:h,validHandleResult:p})=>g?h.type==="target":r?p.isValid:!0)||c[0]}var wi={source:null,target:null,sourceHandle:null,targetHandle:null},Gn=()=>({handleDomNode:null,isValid:!1,connection:wi,endHandle:null});function Un(t,e,n,o,i,d,a){let l=i==="target",s=a.querySelector(`.react-flow__handle[data-id="${t==null?void 0:t.nodeId}-${t==null?void 0:t.id}-${t==null?void 0:t.type}"]`),c={...Gn(),handleDomNode:s};if(s){let u=Jt(void 0,s),r=s.getAttribute("data-nodeid"),g=s.getAttribute("data-handleid"),h=s.classList.contains("connectable"),p=s.classList.contains("connectableend"),f={source:l?r:n,sourceHandle:l?g:o,target:l?n:r,targetHandle:l?o:g};c.connection=f,h&&p&&(e===Xe.Strict?l&&u==="source"||!l&&u==="target":r!==n||g!==o)&&(c.endHandle={nodeId:r,handleId:g,type:u},c.isValid=d(f))}return c}function Ei({nodes:t,nodeId:e,handleId:n,handleType:o}){return t.reduce((i,d)=>{if(d[re]){let{handleBounds:a}=d[re],l=[],s=[];a&&(l=Kn(d,a,"source",`${e}-${n}-${o}`),s=Kn(d,a,"target",`${e}-${n}-${o}`)),i.push(...l,...s)}return i},[])}function Jt(t,e){return t||(e!=null&&e.classList.contains("target")?"target":e!=null&&e.classList.contains("source")?"source":null)}function en(t){t==null||t.classList.remove("valid","connecting","react-flow__handle-valid","react-flow__handle-connecting")}function Si(t,e){let n=null;return e?n="valid":t&&!e&&(n="invalid"),n}function qn({event:t,handleId:e,nodeId:n,onConnect:o,isTarget:i,getState:d,setState:a,isValidConnection:l,edgeUpdaterType:s,onReconnectEnd:c}){let u=In(t.target),{connectionMode:r,domNode:g,autoPanOnConnect:h,connectionRadius:p,onConnectStart:f,panBy:y,getNodes:x,cancelConnection:b}=d(),N=0,m,{x:C,y:M}=Se(t),_=u==null?void 0:u.elementFromPoint(C,M),P=Jt(s,_),j=g==null?void 0:g.getBoundingClientRect();if(!j||!P)return;let w,E=Se(t,j),O=!1,k=null,S=!1,D=null,L=Ei({nodes:x(),nodeId:n,handleId:e,handleType:P}),$=()=>{if(!h)return;let[T,V]=Pn(E,j);y({x:T,y:V}),N=requestAnimationFrame($)};a({connectionPosition:E,connectionStatus:null,connectionNodeId:n,connectionHandleId:e,connectionHandleType:P,connectionStartHandle:{nodeId:n,handleId:e,type:P},connectionEndHandle:null}),f==null||f(t,{nodeId:n,handleId:e,handleType:P});function W(T){let{transform:V}=d();E=Se(T,j);let{handle:F,validHandleResult:Z}=xi(T,u,qt(E,V,!1,[1,1]),p,L,U=>Un(U,r,n,e,i?"target":"source",l,u));if(m=F,O||(O=($(),!0)),D=Z.handleDomNode,k=Z.connection,S=Z.isValid,a({connectionPosition:m&&S?Wn({x:m.x,y:m.y},V):E,connectionStatus:Si(!!m,S),connectionEndHandle:Z.endHandle}),!m&&!S&&!D)return en(w);k.source!==k.target&&D&&(en(w),w=D,D.classList.add("connecting","react-flow__handle-connecting"),D.classList.toggle("valid",S),D.classList.toggle("react-flow__handle-valid",S))}function R(T){var V,F;(m||D)&&k&&S&&(o==null||o(k)),(F=(V=d()).onConnectEnd)==null||F.call(V,T),s&&(c==null||c(T)),en(w),b(),cancelAnimationFrame(N),O=!1,S=!1,k=null,D=null,u.removeEventListener("mousemove",W),u.removeEventListener("mouseup",R),u.removeEventListener("touchmove",W),u.removeEventListener("touchend",R)}u.addEventListener("mousemove",W),u.addEventListener("mouseup",R),u.addEventListener("touchmove",W),u.addEventListener("touchend",R)}var Qn=()=>!0,Ci=t=>({connectionStartHandle:t.connectionStartHandle,connectOnClick:t.connectOnClick,noPanClassName:t.noPanClassName}),Ni=(t,e,n)=>o=>{let{connectionStartHandle:i,connectionEndHandle:d,connectionClickStartHandle:a}=o;return{connecting:(i==null?void 0:i.nodeId)===t&&(i==null?void 0:i.handleId)===e&&(i==null?void 0:i.type)===n||(d==null?void 0:d.nodeId)===t&&(d==null?void 0:d.handleId)===e&&(d==null?void 0:d.type)===n,clickConnecting:(a==null?void 0:a.nodeId)===t&&(a==null?void 0:a.handleId)===e&&(a==null?void 0:a.type)===n}},Jn=(0,v.forwardRef)(({type:t="source",position:e=X.Top,isValidConnection:n,isConnectable:o=!0,isConnectableStart:i=!0,isConnectableEnd:d=!0,id:a,onConnect:l,children:s,className:c,onMouseDown:u,onTouchStart:r,...g},h)=>{var j,w;let p=a||null,f=t==="target",y=le(),x=pi(),{connectOnClick:b,noPanClassName:N}=ne(Ci,ue),{connecting:m,clickConnecting:C}=ne(Ni(x,p,t),ue);x||((w=(j=y.getState()).onError)==null||w.call(j,"010",xe.error010()));let M=E=>{let{defaultEdgeOptions:O,onConnect:k,hasDefaultEdges:S}=y.getState(),D={...O,...E};if(S){let{edges:L,setEdges:$}=y.getState();$(bi(D,L))}k==null||k(D),l==null||l(D)},_=E=>{if(!x)return;let O=An(E);i&&(O&&E.button===0||!O)&&qn({event:E,handleId:p,nodeId:x,onConnect:M,isTarget:f,getState:y.getState,setState:y.setState,isValidConnection:n||y.getState().isValidConnection||Qn}),O?u==null||u(E):r==null||r(E)},P=E=>{let{onClickConnectStart:O,onClickConnectEnd:k,connectionClickStartHandle:S,connectionMode:D,isValidConnection:L}=y.getState();if(!x||!S&&!i)return;if(!S){O==null||O(E,{nodeId:x,handleId:p,handleType:t}),y.setState({connectionClickStartHandle:{nodeId:x,type:t,handleId:p}});return}let $=In(E.target),W=n||L||Qn,{connection:R,isValid:T}=Un({nodeId:x,id:p,type:t},D,S.nodeId,S.handleId||null,S.type,W,$);T&&M(R),k==null||k(E),y.setState({connectionClickStartHandle:null})};return v.createElement("div",{"data-handleid":p,"data-nodeid":x,"data-handlepos":e,"data-id":`${x}-${p}-${t}`,className:he(["react-flow__handle",`react-flow__handle-${e}`,"nodrag",N,c,{source:!f,target:f,connectable:o,connectablestart:i,connectableend:d,connecting:C,connectionindicator:o&&(i&&!m||d&&m)}]),onMouseDown:_,onTouchStart:_,onClick:b?P:void 0,ref:h,...g},s)});Jn.displayName="Handle";var Ce=(0,v.memo)(Jn),eo=({data:t,isConnectable:e,targetPosition:n=X.Top,sourcePosition:o=X.Bottom})=>v.createElement(v.Fragment,null,v.createElement(Ce,{type:"target",position:n,isConnectable:e}),t==null?void 0:t.label,v.createElement(Ce,{type:"source",position:o,isConnectable:e}));eo.displayName="DefaultNode";var tn=(0,v.memo)(eo),to=({data:t,isConnectable:e,sourcePosition:n=X.Bottom})=>v.createElement(v.Fragment,null,t==null?void 0:t.label,v.createElement(Ce,{type:"source",position:n,isConnectable:e}));to.displayName="InputNode";var no=(0,v.memo)(to),oo=({data:t,isConnectable:e,targetPosition:n=X.Top})=>v.createElement(v.Fragment,null,v.createElement(Ce,{type:"target",position:n,isConnectable:e}),t==null?void 0:t.label);oo.displayName="OutputNode";var ro=(0,v.memo)(oo),nn=()=>null;nn.displayName="GroupNode";var ki=t=>({selectedNodes:t.getNodes().filter(e=>e.selected),selectedEdges:t.edges.filter(e=>e.selected).map(e=>({...e}))}),Et=t=>t.id;function Mi(t,e){return ue(t.selectedNodes.map(Et),e.selectedNodes.map(Et))&&ue(t.selectedEdges.map(Et),e.selectedEdges.map(Et))}var ao=(0,v.memo)(({onSelectionChange:t})=>{let e=le(),{selectedNodes:n,selectedEdges:o}=ne(ki,Mi);return(0,v.useEffect)(()=>{let i={nodes:n,edges:o};t==null||t(i),e.getState().onSelectionChange.forEach(d=>d(i))},[n,o,t]),null});ao.displayName="SelectionListener";var Oi=t=>!!t.onSelectionChange;function _i({onSelectionChange:t}){let e=ne(Oi);return t||e?v.createElement(ao,{onSelectionChange:t}):null}var ji=t=>({setNodes:t.setNodes,setEdges:t.setEdges,setDefaultNodesAndEdges:t.setDefaultNodesAndEdges,setMinZoom:t.setMinZoom,setMaxZoom:t.setMaxZoom,setTranslateExtent:t.setTranslateExtent,setNodeExtent:t.setNodeExtent,reset:t.reset});function Ke(t,e){(0,v.useEffect)(()=>{t!==void 0&&e(t)},[t])}function Q(t,e,n){(0,v.useEffect)(()=>{e!==void 0&&n({[t]:e})},[e])}var Pi=({nodes:t,edges:e,defaultNodes:n,defaultEdges:o,onConnect:i,onConnectStart:d,onConnectEnd:a,onClickConnectStart:l,onClickConnectEnd:s,nodesDraggable:c,nodesConnectable:u,nodesFocusable:r,edgesFocusable:g,edgesUpdatable:h,elevateNodesOnSelect:p,minZoom:f,maxZoom:y,nodeExtent:x,onNodesChange:b,onEdgesChange:N,elementsSelectable:m,connectionMode:C,snapGrid:M,snapToGrid:_,translateExtent:P,connectOnClick:j,defaultEdgeOptions:w,fitView:E,fitViewOptions:O,onNodesDelete:k,onEdgesDelete:S,onNodeDrag:D,onNodeDragStart:L,onNodeDragStop:$,onSelectionDrag:W,onSelectionDragStart:R,onSelectionDragStop:T,noPanClassName:V,nodeOrigin:F,rfId:Z,autoPanOnConnect:U,autoPanOnNodeDrag:I,onError:A,connectionRadius:z,isValidConnection:H,nodeDragThreshold:Y})=>{let{setNodes:G,setEdges:ee,setDefaultNodesAndEdges:ae,setMinZoom:ge,setMaxZoom:oe,setTranslateExtent:J,setNodeExtent:de,reset:te}=ne(ji,ue),K=le();return(0,v.useEffect)(()=>{let fe=o==null?void 0:o.map(Me=>({...Me,...w}));return ae(n,fe),()=>{te()}},[]),Q("defaultEdgeOptions",w,K.setState),Q("connectionMode",C,K.setState),Q("onConnect",i,K.setState),Q("onConnectStart",d,K.setState),Q("onConnectEnd",a,K.setState),Q("onClickConnectStart",l,K.setState),Q("onClickConnectEnd",s,K.setState),Q("nodesDraggable",c,K.setState),Q("nodesConnectable",u,K.setState),Q("nodesFocusable",r,K.setState),Q("edgesFocusable",g,K.setState),Q("edgesUpdatable",h,K.setState),Q("elementsSelectable",m,K.setState),Q("elevateNodesOnSelect",p,K.setState),Q("snapToGrid",_,K.setState),Q("snapGrid",M,K.setState),Q("onNodesChange",b,K.setState),Q("onEdgesChange",N,K.setState),Q("connectOnClick",j,K.setState),Q("fitViewOnInit",E,K.setState),Q("fitViewOnInitOptions",O,K.setState),Q("onNodesDelete",k,K.setState),Q("onEdgesDelete",S,K.setState),Q("onNodeDrag",D,K.setState),Q("onNodeDragStart",L,K.setState),Q("onNodeDragStop",$,K.setState),Q("onSelectionDrag",W,K.setState),Q("onSelectionDragStart",R,K.setState),Q("onSelectionDragStop",T,K.setState),Q("noPanClassName",V,K.setState),Q("nodeOrigin",F,K.setState),Q("rfId",Z,K.setState),Q("autoPanOnConnect",U,K.setState),Q("autoPanOnNodeDrag",I,K.setState),Q("onError",A,K.setState),Q("connectionRadius",z,K.setState),Q("isValidConnection",H,K.setState),Q("nodeDragThreshold",Y,K.setState),Ke(t,G),Ke(e,ee),Ke(f,ge),Ke(y,oe),Ke(P,J),Ke(x,de),null},io={display:"none"},Ii={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},so="react-flow__node-desc",lo="react-flow__edge-desc",Ri="react-flow__aria-live",Di=t=>t.ariaLiveMessage;function Ai({rfId:t}){let e=ne(Di);return v.createElement("div",{id:`${Ri}-${t}`,"aria-live":"assertive","aria-atomic":"true",style:Ii},e)}function Bi({rfId:t,disableKeyboardA11y:e}){return v.createElement(v.Fragment,null,v.createElement("div",{id:`${so}-${t}`,style:io},"Press enter or space to select a node.",!e&&"You can then use the arrow keys to move the node around."," Press delete to remove it and escape to cancel."," "),v.createElement("div",{id:`${lo}-${t}`,style:io},"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel."),!e&&v.createElement(Ai,{rfId:t}))}var st=(t=null,e={actInsideInputWithModifier:!0})=>{let[n,o]=(0,v.useState)(!1),i=(0,v.useRef)(!1),d=(0,v.useRef)(new Set([])),[a,l]=(0,v.useMemo)(()=>{if(t!==null){let s=(Array.isArray(t)?t:[t]).filter(c=>typeof c=="string").map(c=>c.split("+"));return[s,s.reduce((c,u)=>c.concat(...u),[])]}return[[],[]]},[t]);return(0,v.useEffect)(()=>{let s=typeof document<"u"?document:null,c=(e==null?void 0:e.target)||s;if(t!==null){let u=h=>{if(i.current=h.ctrlKey||h.metaKey||h.shiftKey,(!i.current||i.current&&!e.actInsideInputWithModifier)&&Wt(h))return!1;let p=uo(h.code,l);d.current.add(h[p]),co(a,d.current,!1)&&(h.preventDefault(),o(!0))},r=h=>{if((!i.current||i.current&&!e.actInsideInputWithModifier)&&Wt(h))return!1;let p=uo(h.code,l);co(a,d.current,!0)?(o(!1),d.current.clear()):d.current.delete(h[p]),h.key==="Meta"&&d.current.clear(),i.current=!1},g=()=>{d.current.clear(),o(!1)};return c==null||c.addEventListener("keydown",u),c==null||c.addEventListener("keyup",r),window.addEventListener("blur",g),()=>{c==null||c.removeEventListener("keydown",u),c==null||c.removeEventListener("keyup",r),window.removeEventListener("blur",g)}}},[t,o]),n};function co(t,e,n){return t.filter(o=>n||o.length===e.size).some(o=>o.every(i=>e.has(i)))}function uo(t,e){return e.includes(t)?"code":"key"}function ho(t,e,n,o){var l,s;let i=t.parentNode||t.parentId;if(!i)return n;let d=e.get(i),a=Ze(d,o);return ho(d,e,{x:(n.x??0)+a.x,y:(n.y??0)+a.y,z:(((l=d[re])==null?void 0:l.z)??0)>(n.z??0)?((s=d[re])==null?void 0:s.z)??0:n.z??0},o)}function go(t,e,n){t.forEach(o=>{var d;let i=o.parentNode||o.parentId;if(i&&!t.has(i))throw Error(`Parent node ${i} not found`);if(i||n!=null&&n[o.id]){let{x:a,y:l,z:s}=ho(o,t,{...o.position,z:((d=o[re])==null?void 0:d.z)??0},e);o.positionAbsolute={x:a,y:l},o[re].z=s,n!=null&&n[o.id]&&(o[re].isParent=!0)}})}function on(t,e,n,o){let i=new Map,d={},a=o?1e3:0;return t.forEach(l=>{var h;let s=(me(l.zIndex)?l.zIndex:0)+(l.selected?a:0),c=e.get(l.id),u={...l,positionAbsolute:{x:l.position.x,y:l.position.y}},r=l.parentNode||l.parentId;r&&(d[r]=!0);let g=(c==null?void 0:c.type)&&(c==null?void 0:c.type)!==l.type;Object.defineProperty(u,re,{enumerable:!1,value:{handleBounds:g||(h=c==null?void 0:c[re])==null?void 0:h.handleBounds,z:s}}),i.set(l.id,u)}),go(i,n,d),i}function fo(t,e={}){let{getNodes:n,width:o,height:i,minZoom:d,maxZoom:a,d3Zoom:l,d3Selection:s,fitViewOnInitDone:c,fitViewOnInit:u,nodeOrigin:r}=t(),g=e.initial&&!c&&u;if(l&&s&&(g||!e.initial)){let h=n().filter(f=>{var x;let y=e.includeHiddenNodes?f.width&&f.height:!f.hidden;return(x=e.nodes)!=null&&x.length?y&&e.nodes.some(b=>b.id===f.id):y}),p=h.every(f=>f.width&&f.height);if(h.length>0&&p){let{x:f,y,zoom:x}=Zn(Qt(h,r),o,i,e.minZoom??d,e.maxZoom??a,e.padding??.1),b=Fe.translate(f,y).scale(x);return typeof e.duration=="number"&&e.duration>0?l.transform(Be(s,e.duration),b):l.transform(s,b),!0}}return!1}function zi(t,e){return t.forEach(n=>{let o=e.get(n.id);o&&e.set(o.id,{...o,[re]:o[re],selected:n.selected})}),new Map(e)}function Li(t,e){return e.map(n=>{let o=t.find(i=>i.id===n.id);return o&&(n.selected=o.selected),n})}function St({changedNodes:t,changedEdges:e,get:n,set:o}){let{nodeInternals:i,edges:d,onNodesChange:a,onEdgesChange:l,hasDefaultNodes:s,hasDefaultEdges:c}=n();t!=null&&t.length&&(s&&o({nodeInternals:zi(t,i)}),a==null||a(t)),e!=null&&e.length&&(c&&o({edges:Li(e,d)}),l==null||l(e))}var Ge=()=>{},$i={zoomIn:Ge,zoomOut:Ge,zoomTo:Ge,getZoom:()=>1,setViewport:Ge,getViewport:()=>({x:0,y:0,zoom:1}),fitView:()=>!1,setCenter:Ge,fitBounds:Ge,project:t=>t,screenToFlowPosition:t=>t,flowToScreenPosition:t=>t,viewportInitialized:!1},Ti=t=>({d3Zoom:t.d3Zoom,d3Selection:t.d3Selection}),Hi=()=>{let t=le(),{d3Zoom:e,d3Selection:n}=ne(Ti,ue);return(0,v.useMemo)(()=>n&&e?{zoomIn:o=>e.scaleBy(Be(n,o==null?void 0:o.duration),1.2),zoomOut:o=>e.scaleBy(Be(n,o==null?void 0:o.duration),1/1.2),zoomTo:(o,i)=>e.scaleTo(Be(n,i==null?void 0:i.duration),o),getZoom:()=>t.getState().transform[2],setViewport:(o,i)=>{let[d,a,l]=t.getState().transform,s=Fe.translate(o.x??d,o.y??a).scale(o.zoom??l);e.transform(Be(n,i==null?void 0:i.duration),s)},getViewport:()=>{let[o,i,d]=t.getState().transform;return{x:o,y:i,zoom:d}},fitView:o=>fo(t.getState,o),setCenter:(o,i,d)=>{let{width:a,height:l,maxZoom:s}=t.getState(),c=(d==null?void 0:d.zoom)===void 0?s:d.zoom,u=a/2-o*c,r=l/2-i*c,g=Fe.translate(u,r).scale(c);e.transform(Be(n,d==null?void 0:d.duration),g)},fitBounds:(o,i)=>{let{width:d,height:a,minZoom:l,maxZoom:s}=t.getState(),{x:c,y:u,zoom:r}=Zn(o,d,a,l,s,(i==null?void 0:i.padding)??.1),g=Fe.translate(c,u).scale(r);e.transform(Be(n,i==null?void 0:i.duration),g)},project:o=>{let{transform:i,snapToGrid:d,snapGrid:a}=t.getState();return console.warn("[DEPRECATED] `project` is deprecated. Instead use `screenToFlowPosition`. There is no need to subtract the react flow bounds anymore! https://reactflow.dev/api-reference/types/react-flow-instance#screen-to-flow-position"),qt(o,i,d,a)},screenToFlowPosition:o=>{let{transform:i,snapToGrid:d,snapGrid:a,domNode:l}=t.getState();if(!l)return o;let{x:s,y:c}=l.getBoundingClientRect();return qt({x:o.x-s,y:o.y-c},i,d,a)},flowToScreenPosition:o=>{let{transform:i,domNode:d}=t.getState();if(!d)return o;let{x:a,y:l}=d.getBoundingClientRect(),s=Wn(o,i);return{x:s.x+a,y:s.y+l}},viewportInitialized:!0}:$i,[e,n])};function lt(){let t=Hi(),e=le(),n=(0,v.useCallback)(()=>e.getState().getNodes().map(f=>({...f})),[]),o=(0,v.useCallback)(f=>e.getState().nodeInternals.get(f),[]),i=(0,v.useCallback)(()=>{let{edges:f=[]}=e.getState();return f.map(y=>({...y}))},[]),d=(0,v.useCallback)(f=>{let{edges:y=[]}=e.getState();return y.find(x=>x.id===f)},[]),a=(0,v.useCallback)(f=>{let{getNodes:y,setNodes:x,hasDefaultNodes:b,onNodesChange:N}=e.getState(),m=y(),C=typeof f=="function"?f(m):f;b?x(C):N&&N(C.length===0?m.map(M=>({type:"remove",id:M.id})):C.map(M=>({item:M,type:"reset"})))},[]),l=(0,v.useCallback)(f=>{let{edges:y=[],setEdges:x,hasDefaultEdges:b,onEdgesChange:N}=e.getState(),m=typeof f=="function"?f(y):f;b?x(m):N&&N(m.length===0?y.map(C=>({type:"remove",id:C.id})):m.map(C=>({item:C,type:"reset"})))},[]),s=(0,v.useCallback)(f=>{let y=Array.isArray(f)?f:[f],{getNodes:x,setNodes:b,hasDefaultNodes:N,onNodesChange:m}=e.getState();N?b([...x(),...y]):m&&m(y.map(C=>({item:C,type:"add"})))},[]),c=(0,v.useCallback)(f=>{let y=Array.isArray(f)?f:[f],{edges:x=[],setEdges:b,hasDefaultEdges:N,onEdgesChange:m}=e.getState();N?b([...x,...y]):m&&m(y.map(C=>({item:C,type:"add"})))},[]),u=(0,v.useCallback)(()=>{let{getNodes:f,edges:y=[],transform:x}=e.getState(),[b,N,m]=x;return{nodes:f().map(C=>({...C})),edges:y.map(C=>({...C})),viewport:{x:b,y:N,zoom:m}}},[]),r=(0,v.useCallback)(({nodes:f,edges:y})=>{let{nodeInternals:x,getNodes:b,edges:N,hasDefaultNodes:m,hasDefaultEdges:C,onNodesDelete:M,onEdgesDelete:_,onNodesChange:P,onEdgesChange:j}=e.getState(),w=(f||[]).map(D=>D.id),E=(y||[]).map(D=>D.id),O=b().reduce((D,L)=>{let $=L.parentNode||L.parentId,W=!w.includes(L.id)&&$&&D.find(R=>R.id===$);return(typeof L.deletable!="boolean"||L.deletable)&&(w.includes(L.id)||W)&&D.push(L),D},[]),k=N.filter(D=>typeof D.deletable=="boolean"?D.deletable:!0),S=k.filter(D=>E.includes(D.id));if(O||S){let D=Yn(O,k),L=[...S,...D],$=L.reduce((W,R)=>(W.includes(R.id)||W.push(R.id),W),[]);(C||m)&&(C&&e.setState({edges:N.filter(W=>!$.includes(W.id))}),m&&(O.forEach(W=>{x.delete(W.id)}),e.setState({nodeInternals:new Map(x)}))),$.length>0&&(_==null||_(L),j&&j($.map(W=>({id:W,type:"remove"})))),O.length>0&&(M==null||M(O),P&&P(O.map(W=>({id:W.id,type:"remove"}))))}},[]),g=(0,v.useCallback)(f=>{let y=si(f),x=y?null:e.getState().nodeInternals.get(f.id);return!y&&!x?[null,null,y]:[y?f:Rn(x),x,y]},[]),h=(0,v.useCallback)((f,y=!0,x)=>{let[b,N,m]=g(f);return b?(x||e.getState().getNodes()).filter(C=>{if(!m&&(C.id===N.id||!C.positionAbsolute))return!1;let M=Ft(Rn(C),b);return y&&M>0||M>=b.width*b.height}):[]},[]),p=(0,v.useCallback)((f,y,x=!0)=>{let[b]=g(f);if(!b)return!1;let N=Ft(b,y);return x&&N>0||N>=b.width*b.height},[]);return(0,v.useMemo)(()=>({...t,getNodes:n,getNode:o,getEdges:i,getEdge:d,setNodes:a,setEdges:l,addNodes:s,addEdges:c,toObject:u,deleteElements:r,getIntersectingNodes:h,isNodeIntersecting:p}),[t,n,o,i,d,a,l,s,c,u,r,h,p])}var Vi={actInsideInputWithModifier:!1},Fi=({deleteKeyCode:t,multiSelectionKeyCode:e})=>{let n=le(),{deleteElements:o}=lt(),i=st(t,Vi),d=st(e);(0,v.useEffect)(()=>{if(i){let{edges:a,getNodes:l}=n.getState();o({nodes:l().filter(s=>s.selected),edges:a.filter(s=>s.selected)}),n.setState({nodesSelectionActive:!1})}},[i]),(0,v.useEffect)(()=>{n.setState({multiSelectionActive:d})},[d])};function Wi(t){let e=le();(0,v.useEffect)(()=>{let n,o=()=>{var d,a;if(!t.current)return;let i=Tt(t.current);(i.height===0||i.width===0)&&((a=(d=e.getState()).onError)==null||a.call(d,"004",xe.error004())),e.setState({width:i.width||500,height:i.height||500})};return o(),window.addEventListener("resize",o),t.current&&(n=new ResizeObserver(()=>o()),n.observe(t.current)),()=>{window.removeEventListener("resize",o),n&&t.current&&n.unobserve(t.current)}},[])}var rn={position:"absolute",width:"100%",height:"100%",top:0,left:0},Xi=(t,e)=>t.x!==e.x||t.y!==e.y||t.zoom!==e.k,Ct=t=>({x:t.x,y:t.y,zoom:t.k}),Ue=(t,e)=>t.target.closest(`.${e}`),po=(t,e)=>e===2&&Array.isArray(t)&&t.includes(2),mo=t=>{let e=t.ctrlKey&&mt()?10:1;return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*e},Yi=t=>({d3Zoom:t.d3Zoom,d3Selection:t.d3Selection,d3ZoomHandler:t.d3ZoomHandler,userSelectionActive:t.userSelectionActive}),Zi=({onMove:t,onMoveStart:e,onMoveEnd:n,onPaneContextMenu:o,zoomOnScroll:i=!0,zoomOnPinch:d=!0,panOnScroll:a=!1,panOnScrollSpeed:l=.5,panOnScrollMode:s=Ye.Free,zoomOnDoubleClick:c=!0,elementsSelectable:u,panOnDrag:r=!0,defaultViewport:g,translateExtent:h,minZoom:p,maxZoom:f,zoomActivationKeyCode:y,preventScrolling:x=!0,children:b,noWheelClassName:N,noPanClassName:m})=>{let C=(0,v.useRef)(),M=le(),_=(0,v.useRef)(!1),P=(0,v.useRef)(!1),j=(0,v.useRef)(null),w=(0,v.useRef)({x:0,y:0,zoom:0}),{d3Zoom:E,d3Selection:O,d3ZoomHandler:k,userSelectionActive:S}=ne(Yi,ue),D=st(y),L=(0,v.useRef)(0),$=(0,v.useRef)(!1),W=(0,v.useRef)();return Wi(j),(0,v.useEffect)(()=>{if(j.current){let R=j.current.getBoundingClientRect(),T=La().scaleExtent([p,f]).translateExtent(h),V=ht(j.current).call(T),F=Fe.translate(g.x,g.y).scale(We(g.zoom,p,f)),Z=[[0,0],[R.width,R.height]],U=T.constrain()(F,Z,h);T.transform(V,U),T.wheelDelta(mo),M.setState({d3Zoom:T,d3Selection:V,d3ZoomHandler:V.on("wheel.zoom"),transform:[U.x,U.y,U.k],domNode:j.current.closest(".react-flow")})}},[]),(0,v.useEffect)(()=>{O&&E&&(a&&!D&&!S?O.on("wheel.zoom",R=>{if(Ue(R,N))return!1;R.preventDefault(),R.stopImmediatePropagation();let T=O.property("__zoom").k||1;if(R.ctrlKey&&d){let H=Lt(R),Y=T*2**mo(R);E.scaleTo(O,Y,H,R);return}let V=R.deltaMode===1?20:1,F=s===Ye.Vertical?0:R.deltaX*V,Z=s===Ye.Horizontal?0:R.deltaY*V;!mt()&&R.shiftKey&&s!==Ye.Vertical&&(F=R.deltaY*V,Z=0),E.translateBy(O,-(F/T)*l,-(Z/T)*l,{internal:!0});let U=Ct(O.property("__zoom")),{onViewportChangeStart:I,onViewportChange:A,onViewportChangeEnd:z}=M.getState();clearTimeout(W.current),$.current||($.current=!0,e==null||e(R,U),I==null||I(U)),$.current&&(t==null||t(R,U),A==null||A(U),W.current=setTimeout(()=>{n==null||n(R,U),z==null||z(U),$.current=!1},150))},{passive:!1}):k!==void 0&&O.on("wheel.zoom",function(R,T){if(!x&&R.type==="wheel"&&!R.ctrlKey||Ue(R,N))return null;R.preventDefault(),k.call(this,R,T)},{passive:!1}))},[S,a,s,O,E,k,D,d,x,N,e,t,n]),(0,v.useEffect)(()=>{E&&E.on("start",R=>{var F,Z;if(!R.sourceEvent||R.sourceEvent.internal)return null;L.current=(F=R.sourceEvent)==null?void 0:F.button;let{onViewportChangeStart:T}=M.getState(),V=Ct(R.transform);_.current=!0,w.current=V,((Z=R.sourceEvent)==null?void 0:Z.type)==="mousedown"&&M.setState({paneDragging:!0}),T==null||T(V),e==null||e(R.sourceEvent,V)})},[E,e]),(0,v.useEffect)(()=>{E&&(S&&!_.current?E.on("zoom",null):S||E.on("zoom",R=>{var V;let{onViewportChange:T}=M.getState();if(M.setState({transform:[R.transform.x,R.transform.y,R.transform.k]}),P.current=!!(o&&po(r,L.current??0)),(t||T)&&!((V=R.sourceEvent)!=null&&V.internal)){let F=Ct(R.transform);T==null||T(F),t==null||t(R.sourceEvent,F)}}))},[S,E,t,r,o]),(0,v.useEffect)(()=>{E&&E.on("end",R=>{if(!R.sourceEvent||R.sourceEvent.internal)return null;let{onViewportChangeEnd:T}=M.getState();if(_.current=!1,M.setState({paneDragging:!1}),o&&po(r,L.current??0)&&!P.current&&o(R.sourceEvent),P.current=!1,(n||T)&&Xi(w.current,R.transform)){let V=Ct(R.transform);w.current=V,clearTimeout(C.current),C.current=setTimeout(()=>{T==null||T(V),n==null||n(R.sourceEvent,V)},a?150:0)}})},[E,a,r,n,o]),(0,v.useEffect)(()=>{E&&E.filter(R=>{let T=D||i,V=d&&R.ctrlKey;if((r===!0||Array.isArray(r)&&r.includes(1))&&R.button===1&&R.type==="mousedown"&&(Ue(R,"react-flow__node")||Ue(R,"react-flow__edge")))return!0;if(!r&&!T&&!a&&!c&&!d||S||!c&&R.type==="dblclick"||Ue(R,N)&&R.type==="wheel"||Ue(R,m)&&(R.type!=="wheel"||a&&R.type==="wheel"&&!D)||!d&&R.ctrlKey&&R.type==="wheel"||!T&&!a&&!V&&R.type==="wheel"||!r&&(R.type==="mousedown"||R.type==="touchstart")||Array.isArray(r)&&!r.includes(R.button)&&R.type==="mousedown")return!1;let F=Array.isArray(r)&&r.includes(R.button)||!R.button||R.button<=1;return(!R.ctrlKey||R.type==="wheel")&&F})},[S,E,i,d,a,c,r,u,D]),v.createElement("div",{className:"react-flow__renderer",ref:j,style:rn},b)},Ki=t=>({userSelectionActive:t.userSelectionActive,userSelectionRect:t.userSelectionRect});function Gi(){let{userSelectionActive:t,userSelectionRect:e}=ne(Ki,ue);return t&&e?v.createElement("div",{className:"react-flow__selection react-flow__container",style:{width:e.width,height:e.height,transform:`translate(${e.x}px, ${e.y}px)`}}):null}function yo(t,e){let n=e.parentNode||e.parentId,o=t.find(i=>i.id===n);if(o){let i=e.position.x+e.width-o.width,d=e.position.y+e.height-o.height;if(i>0||d>0||e.position.x<0||e.position.y<0){if(o.style={...o.style},o.style.width=o.style.width??o.width,o.style.height=o.style.height??o.height,i>0&&(o.style.width+=i),d>0&&(o.style.height+=d),e.position.x<0){let a=Math.abs(e.position.x);o.position.x=o.position.x-a,o.style.width+=a,e.position.x=0}if(e.position.y<0){let a=Math.abs(e.position.y);o.position.y=o.position.y-a,o.style.height+=a,e.position.y=0}o.width=o.style.width,o.height=o.style.height}}}function vo(t,e){if(t.some(o=>o.type==="reset"))return t.filter(o=>o.type==="reset").map(o=>o.item);let n=t.filter(o=>o.type==="add").map(o=>o.item);return e.reduce((o,i)=>{let d=t.filter(l=>l.id===i.id);if(d.length===0)return o.push(i),o;let a={...i};for(let l of d)if(l)switch(l.type){case"select":a.selected=l.selected;break;case"position":l.position!==void 0&&(a.position=l.position),l.positionAbsolute!==void 0&&(a.positionAbsolute=l.positionAbsolute),l.dragging!==void 0&&(a.dragging=l.dragging),a.expandParent&&yo(o,a);break;case"dimensions":l.dimensions!==void 0&&(a.width=l.dimensions.width,a.height=l.dimensions.height),l.updateStyle!==void 0&&(a.style={...a.style||{},...l.dimensions}),typeof l.resizing=="boolean"&&(a.resizing=l.resizing),a.expandParent&&yo(o,a);break;case"remove":return o}return o.push(a),o},n)}function bo(t,e){return vo(t,e)}function Ui(t,e){return vo(t,e)}var Ne=(t,e)=>({id:t,type:"select",selected:e});function qe(t,e){return t.reduce((n,o)=>{let i=e.includes(o.id);return!o.selected&&i?(o.selected=!0,n.push(Ne(o.id,!0))):o.selected&&!i&&(o.selected=!1,n.push(Ne(o.id,!1))),n},[])}var an=(t,e)=>n=>{n.target===e.current&&(t==null||t(n))},qi=t=>({userSelectionActive:t.userSelectionActive,elementsSelectable:t.elementsSelectable,dragging:t.paneDragging}),xo=(0,v.memo)(({isSelecting:t,selectionMode:e=yt.Full,panOnDrag:n,onSelectionStart:o,onSelectionEnd:i,onPaneClick:d,onPaneContextMenu:a,onPaneScroll:l,onPaneMouseEnter:s,onPaneMouseMove:c,onPaneMouseLeave:u,children:r})=>{let g=(0,v.useRef)(null),h=le(),p=(0,v.useRef)(0),f=(0,v.useRef)(0),y=(0,v.useRef)(),{userSelectionActive:x,elementsSelectable:b,dragging:N}=ne(qi,ue),m=()=>{h.setState({userSelectionActive:!1,userSelectionRect:null}),p.current=0,f.current=0},C=k=>{d==null||d(k),h.getState().resetSelectedElements(),h.setState({nodesSelectionActive:!1})},M=k=>{if(Array.isArray(n)&&(n!=null&&n.includes(2))){k.preventDefault();return}a==null||a(k)},_=l?k=>l(k):void 0,P=k=>{let{resetSelectedElements:S,domNode:D}=h.getState();if(y.current=D==null?void 0:D.getBoundingClientRect(),!b||!t||k.button!==0||k.target!==g.current||!y.current)return;let{x:L,y:$}=Se(k,y.current);S(),h.setState({userSelectionRect:{width:0,height:0,startX:L,startY:$,x:L,y:$}}),o==null||o(k)},j=k=>{let{userSelectionRect:S,nodeInternals:D,edges:L,transform:$,onNodesChange:W,onEdgesChange:R,nodeOrigin:T,getNodes:V}=h.getState();if(!t||!y.current||!S)return;h.setState({userSelectionActive:!0,nodesSelectionActive:!1});let F=Se(k,y.current),Z=S.startX??0,U=S.startY??0,I={...S,x:F.x<Z?F.x:Z,y:F.y<U?F.y:U,width:Math.abs(F.x-Z),height:Math.abs(F.y-U)},A=V(),z=Xn(D,I,$,e===yt.Partial,!0,T),H=Yn(z,L).map(G=>G.id),Y=z.map(G=>G.id);if(p.current!==Y.length){p.current=Y.length;let G=qe(A,Y);G.length&&(W==null||W(G))}if(f.current!==H.length){f.current=H.length;let G=qe(L,H);G.length&&(R==null||R(G))}h.setState({userSelectionRect:I})},w=k=>{if(k.button!==0)return;let{userSelectionRect:S}=h.getState();!x&&S&&k.target===g.current&&(C==null||C(k)),h.setState({nodesSelectionActive:p.current>0}),m(),i==null||i(k)},E=k=>{x&&(h.setState({nodesSelectionActive:p.current>0}),i==null||i(k)),m()},O=b&&(t||x);return v.createElement("div",{className:he(["react-flow__pane",{dragging:N,selection:t}]),onClick:O?void 0:an(C,g),onContextMenu:an(M,g),onWheel:an(_,g),onMouseEnter:O?void 0:s,onMouseDown:O?P:void 0,onMouseMove:O?j:c,onMouseUp:O?w:void 0,onMouseLeave:O?E:u,ref:g,style:rn},r,v.createElement(Gi,null))});xo.displayName="Pane";function wo(t,e){let n=t.parentNode||t.parentId;if(!n)return!1;let o=e.get(n);return o?o.selected?!0:wo(o,e):!1}function Eo(t,e,n){let o=t;do{if(o!=null&&o.matches(e))return!0;if(o===n.current)return!1;o=o.parentElement}while(o);return!1}function Qi(t,e,n,o){return Array.from(t.values()).filter(i=>(i.selected||i.id===o)&&(!i.parentNode||i.parentId||!wo(i,t))&&(i.draggable||e&&i.draggable===void 0)).map(i=>{var d,a;return{id:i.id,position:i.position||{x:0,y:0},positionAbsolute:i.positionAbsolute||{x:0,y:0},distance:{x:n.x-(((d=i.positionAbsolute)==null?void 0:d.x)??0),y:n.y-(((a=i.positionAbsolute)==null?void 0:a.y)??0)},delta:{x:0,y:0},extent:i.extent,parentNode:i.parentNode||i.parentId,parentId:i.parentNode||i.parentId,width:i.width,height:i.height,expandParent:i.expandParent}})}function Ji(t,e){return!e||e==="parent"?e:[e[0],[e[1][0]-(t.width||0),e[1][1]-(t.height||0)]]}function So(t,e,n,o,i=[0,0],d){let a=Ji(t,t.extent||o),l=a,s=t.parentNode||t.parentId;if(t.extent==="parent"&&!t.expandParent)if(s&&t.width&&t.height){let r=n.get(s),{x:g,y:h}=Ze(r,i).positionAbsolute;l=r&&me(g)&&me(h)&&me(r.width)&&me(r.height)?[[g+t.width*i[0],h+t.height*i[1]],[g+r.width-t.width+t.width*i[0],h+r.height-t.height+t.height*i[1]]]:l}else d==null||d("005",xe.error005()),l=a;else if(t.extent&&s&&t.extent!=="parent"){let{x:r,y:g}=Ze(n.get(s),i).positionAbsolute;l=[[t.extent[0][0]+r,t.extent[0][1]+g],[t.extent[1][0]+r,t.extent[1][1]+g]]}let c={x:0,y:0};s&&(c=Ze(n.get(s),i).positionAbsolute);let u=l&&l!=="parent"?Ht(e,l):e;return{position:{x:u.x-c.x,y:u.y-c.y},positionAbsolute:u}}function sn({nodeId:t,dragItems:e,nodeInternals:n}){let o=e.map(i=>({...n.get(i.id),position:i.position,positionAbsolute:i.positionAbsolute}));return[t?o.find(i=>i.id===t):o[0],o]}var Co=(t,e,n,o)=>{let i=e.querySelectorAll(t);if(!i||!i.length)return null;let d=Array.from(i),a=e.getBoundingClientRect(),l={x:a.width*o[0],y:a.height*o[1]};return d.map(s=>{let c=s.getBoundingClientRect();return{id:s.getAttribute("data-handleid"),position:s.getAttribute("data-handlepos"),x:(c.left-a.left-l.x)/n,y:(c.top-a.top-l.y)/n,...Tt(s)}})};function dt(t,e,n){return n===void 0?n:o=>{let i=e().nodeInternals.get(t);i&&n(o,{...i})}}function ln({id:t,store:e,unselect:n=!1,nodeRef:o}){let{addSelectedNodes:i,unselectNodesAndEdges:d,multiSelectionActive:a,nodeInternals:l,onError:s}=e.getState(),c=l.get(t);if(!c){s==null||s("012",xe.error012(t));return}e.setState({nodesSelectionActive:!1}),c.selected?(n||c.selected&&a)&&(d({nodes:[c],edges:[]}),requestAnimationFrame(()=>{var u;return(u=o==null?void 0:o.current)==null?void 0:u.blur()})):i([t])}function es(){let t=le();return(0,v.useCallback)(({sourceEvent:e})=>{let{transform:n,snapGrid:o,snapToGrid:i}=t.getState(),d=e.touches?e.touches[0].clientX:e.clientX,a=e.touches?e.touches[0].clientY:e.clientY,l={x:(d-n[0])/n[2],y:(a-n[1])/n[2]};return{xSnapped:i?o[0]*Math.round(l.x/o[0]):l.x,ySnapped:i?o[1]*Math.round(l.y/o[1]):l.y,...l}},[])}function dn(t){return(e,n,o)=>t==null?void 0:t(e,o)}function No({nodeRef:t,disabled:e=!1,noDragClassName:n,handleSelector:o,nodeId:i,isSelectable:d,selectNodesOnDrag:a}){let l=le(),[s,c]=(0,v.useState)(!1),u=(0,v.useRef)([]),r=(0,v.useRef)({x:null,y:null}),g=(0,v.useRef)(0),h=(0,v.useRef)(null),p=(0,v.useRef)({x:0,y:0}),f=(0,v.useRef)(null),y=(0,v.useRef)(!1),x=(0,v.useRef)(!1),b=(0,v.useRef)(!1),N=es();return(0,v.useEffect)(()=>{if(t!=null&&t.current){let m=ht(t.current),C=({x:P,y:j})=>{let{nodeInternals:w,onNodeDrag:E,onSelectionDrag:O,updateNodePositions:k,nodeExtent:S,snapGrid:D,snapToGrid:L,nodeOrigin:$,onError:W}=l.getState();r.current={x:P,y:j};let R=!1,T={x:0,y:0,x2:0,y2:0};if(u.current.length>1&&S&&(T=Vt(Qt(u.current,$))),u.current=u.current.map(F=>{let Z={x:P-F.distance.x,y:j-F.distance.y};L&&(Z.x=D[0]*Math.round(Z.x/D[0]),Z.y=D[1]*Math.round(Z.y/D[1]));let U=[[S[0][0],S[0][1]],[S[1][0],S[1][1]]];u.current.length>1&&S&&!F.extent&&(U[0][0]=F.positionAbsolute.x-T.x+S[0][0],U[1][0]=F.positionAbsolute.x+(F.width??0)-T.x2+S[1][0],U[0][1]=F.positionAbsolute.y-T.y+S[0][1],U[1][1]=F.positionAbsolute.y+(F.height??0)-T.y2+S[1][1]);let I=So(F,Z,w,U,$,W);return R=R||F.position.x!==I.position.x||F.position.y!==I.position.y,F.position=I.position,F.positionAbsolute=I.positionAbsolute,F}),!R)return;k(u.current,!0,!0),c(!0);let V=i?E:dn(O);if(V&&f.current){let[F,Z]=sn({nodeId:i,dragItems:u.current,nodeInternals:w});V(f.current,F,Z)}},M=()=>{if(!h.current)return;let[P,j]=Pn(p.current,h.current);if(P!==0||j!==0){let{transform:w,panBy:E}=l.getState();r.current.x=(r.current.x??0)-P/w[2],r.current.y=(r.current.y??0)-j/w[2],E({x:P,y:j})&&C(r.current)}g.current=requestAnimationFrame(M)},_=P=>{var $;let{nodeInternals:j,multiSelectionActive:w,nodesDraggable:E,unselectNodesAndEdges:O,onNodeDragStart:k,onSelectionDragStart:S}=l.getState();x.current=!0;let D=i?k:dn(S);(!a||!d)&&!w&&i&&(($=j.get(i))!=null&&$.selected||O()),i&&d&&a&&ln({id:i,store:l,nodeRef:t});let L=N(P);if(r.current=L,u.current=Qi(j,E,L,i),D&&u.current){let[W,R]=sn({nodeId:i,dragItems:u.current,nodeInternals:j});D(P.sourceEvent,W,R)}};if(e)m.on(".drag",null);else{let P=ei().on("start",j=>{let{domNode:w,nodeDragThreshold:E}=l.getState();E===0&&_(j),b.current=!1,r.current=N(j),h.current=(w==null?void 0:w.getBoundingClientRect())||null,p.current=Se(j.sourceEvent,h.current)}).on("drag",j=>{var k,S;let w=N(j),{autoPanOnNodeDrag:E,nodeDragThreshold:O}=l.getState();if(j.sourceEvent.type==="touchmove"&&j.sourceEvent.touches.length>1&&(b.current=!0),!b.current){if(!y.current&&x.current&&E&&(y.current=!0,M()),!x.current){let D=w.xSnapped-(((k=r==null?void 0:r.current)==null?void 0:k.x)??0),L=w.ySnapped-(((S=r==null?void 0:r.current)==null?void 0:S.y)??0);Math.sqrt(D*D+L*L)>O&&_(j)}(r.current.x!==w.xSnapped||r.current.y!==w.ySnapped)&&u.current&&x.current&&(f.current=j.sourceEvent,p.current=Se(j.sourceEvent,h.current),C(w))}}).on("end",j=>{if(!(!x.current||b.current)&&(c(!1),y.current=!1,x.current=!1,cancelAnimationFrame(g.current),u.current)){let{updateNodePositions:w,nodeInternals:E,onNodeDragStop:O,onSelectionDragStop:k}=l.getState(),S=i?O:dn(k);if(w(u.current,!1,!1),S){let[D,L]=sn({nodeId:i,dragItems:u.current,nodeInternals:E});S(j.sourceEvent,D,L)}}}).filter(j=>{let w=j.target;return!j.button&&(!n||!Eo(w,`.${n}`,t))&&(!o||Eo(w,o,t))});return m.call(P),()=>{m.on(".drag",null)}}}},[t,e,n,o,d,l,i,a,N]),s}function ko(){let t=le();return(0,v.useCallback)(e=>{let{nodeInternals:n,nodeExtent:o,updateNodePositions:i,getNodes:d,snapToGrid:a,snapGrid:l,onError:s,nodesDraggable:c}=t.getState(),u=d().filter(y=>y.selected&&(y.draggable||c&&y.draggable===void 0)),r=a?l[0]:5,g=a?l[1]:5,h=e.isShiftPressed?4:1,p=e.x*r*h,f=e.y*g*h;i(u.map(y=>{if(y.positionAbsolute){let x={x:y.positionAbsolute.x+p,y:y.positionAbsolute.y+f};a&&(x.x=l[0]*Math.round(x.x/l[0]),x.y=l[1]*Math.round(x.y/l[1]));let{positionAbsolute:b,position:N}=So(y,x,n,o,void 0,s);y.position=N,y.positionAbsolute=b}return y}),!0,!1)},[])}var Qe={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},ct=t=>{let e=({id:n,type:o,data:i,xPos:d,yPos:a,xPosOrigin:l,yPosOrigin:s,selected:c,onClick:u,onMouseEnter:r,onMouseMove:g,onMouseLeave:h,onContextMenu:p,onDoubleClick:f,style:y,className:x,isDraggable:b,isSelectable:N,isConnectable:m,isFocusable:C,selectNodesOnDrag:M,sourcePosition:_,targetPosition:P,hidden:j,resizeObserver:w,dragHandle:E,zIndex:O,isParent:k,noDragClassName:S,noPanClassName:D,initialized:L,disableKeyboardA11y:$,ariaLabel:W,rfId:R,hasHandleBounds:T})=>{let V=le(),F=(0,v.useRef)(null),Z=(0,v.useRef)(null),U=(0,v.useRef)(_),I=(0,v.useRef)(P),A=(0,v.useRef)(o),z=N||b||u||r||g||h,H=ko(),Y=dt(n,V.getState,r),G=dt(n,V.getState,g),ee=dt(n,V.getState,h),ae=dt(n,V.getState,p),ge=dt(n,V.getState,f),oe=te=>{let{nodeDragThreshold:K}=V.getState();if(N&&(!M||!b||K>0)&&ln({id:n,store:V,nodeRef:F}),u){let fe=V.getState().nodeInternals.get(n);fe&&u(te,{...fe})}},J=te=>{Wt(te)||$||(Dn.includes(te.key)&&N?ln({id:n,store:V,unselect:te.key==="Escape",nodeRef:F}):b&&c&&Object.prototype.hasOwnProperty.call(Qe,te.key)&&(V.setState({ariaLiveMessage:`Moved selected node ${te.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~d}, y: ${~~a}`}),H({x:Qe[te.key].x,y:Qe[te.key].y,isShiftPressed:te.shiftKey})))};(0,v.useEffect)(()=>()=>{Z.current&&(Z.current=(w==null||w.unobserve(Z.current),null))},[]),(0,v.useEffect)(()=>{if(F.current&&!j){let te=F.current;(!L||!T||Z.current!==te)&&(Z.current&&(w==null||w.unobserve(Z.current)),w==null||w.observe(te),Z.current=te)}},[j,L,T]),(0,v.useEffect)(()=>{let te=A.current!==o,K=U.current!==_,fe=I.current!==P;F.current&&(te||K||fe)&&(te&&(A.current=o),K&&(U.current=_),fe&&(I.current=P),V.getState().updateNodeDimensions([{id:n,nodeElement:F.current,forceUpdate:!0}]))},[n,o,_,P]);let de=No({nodeRef:F,disabled:j||!b,noDragClassName:S,handleSelector:E,nodeId:n,isSelectable:N,selectNodesOnDrag:M});return j?null:v.createElement("div",{className:he(["react-flow__node",`react-flow__node-${o}`,{[D]:b},x,{selected:c,selectable:N,parent:k,dragging:de}]),ref:F,style:{zIndex:O,transform:`translate(${l}px,${s}px)`,pointerEvents:z?"all":"none",visibility:L?"visible":"hidden",...y},"data-id":n,"data-testid":`rf__node-${n}`,onMouseEnter:Y,onMouseMove:G,onMouseLeave:ee,onContextMenu:ae,onClick:oe,onDoubleClick:ge,onKeyDown:C?J:void 0,tabIndex:C?0:void 0,role:C?"button":void 0,"aria-describedby":$?void 0:`${so}-${R}`,"aria-label":W},v.createElement(fi,{value:n},v.createElement(t,{id:n,data:i,type:o,xPos:d,yPos:a,selected:c,isConnectable:m,sourcePosition:_,targetPosition:P,dragging:de,dragHandle:E,zIndex:O})))};return e.displayName="NodeWrapper",(0,v.memo)(e)},ts=t=>({...Qt(t.getNodes().filter(e=>e.selected),t.nodeOrigin),transformString:`translate(${t.transform[0]}px,${t.transform[1]}px) scale(${t.transform[2]})`,userSelectionActive:t.userSelectionActive});function ns({onSelectionContextMenu:t,noPanClassName:e,disableKeyboardA11y:n}){let o=le(),{width:i,height:d,x:a,y:l,transformString:s,userSelectionActive:c}=ne(ts,ue),u=ko(),r=(0,v.useRef)(null);if((0,v.useEffect)(()=>{var h;n||((h=r.current)==null||h.focus({preventScroll:!0}))},[n]),No({nodeRef:r}),c||!i||!d)return null;let g=t?h=>{t(h,o.getState().getNodes().filter(p=>p.selected))}:void 0;return v.createElement("div",{className:he(["react-flow__nodesselection","react-flow__container",e]),style:{transform:s}},v.createElement("div",{ref:r,className:"react-flow__nodesselection-rect",onContextMenu:g,tabIndex:n?void 0:-1,onKeyDown:n?void 0:h=>{Object.prototype.hasOwnProperty.call(Qe,h.key)&&u({x:Qe[h.key].x,y:Qe[h.key].y,isShiftPressed:h.shiftKey})},style:{width:i,height:d,top:l,left:a}}))}var os=(0,v.memo)(ns),rs=t=>t.nodesSelectionActive,Mo=({children:t,onPaneClick:e,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:i,onPaneContextMenu:d,onPaneScroll:a,deleteKeyCode:l,onMove:s,onMoveStart:c,onMoveEnd:u,selectionKeyCode:r,selectionOnDrag:g,selectionMode:h,onSelectionStart:p,onSelectionEnd:f,multiSelectionKeyCode:y,panActivationKeyCode:x,zoomActivationKeyCode:b,elementsSelectable:N,zoomOnScroll:m,zoomOnPinch:C,panOnScroll:M,panOnScrollSpeed:_,panOnScrollMode:P,zoomOnDoubleClick:j,panOnDrag:w,defaultViewport:E,translateExtent:O,minZoom:k,maxZoom:S,preventScrolling:D,onSelectionContextMenu:L,noWheelClassName:$,noPanClassName:W,disableKeyboardA11y:R})=>{let T=ne(rs),V=st(r),F=st(x),Z=F||w,U=F||M,I=V||g&&Z!==!0;return Fi({deleteKeyCode:l,multiSelectionKeyCode:y}),v.createElement(Zi,{onMove:s,onMoveStart:c,onMoveEnd:u,onPaneContextMenu:d,elementsSelectable:N,zoomOnScroll:m,zoomOnPinch:C,panOnScroll:U,panOnScrollSpeed:_,panOnScrollMode:P,zoomOnDoubleClick:j,panOnDrag:!V&&Z,defaultViewport:E,translateExtent:O,minZoom:k,maxZoom:S,zoomActivationKeyCode:b,preventScrolling:D,noWheelClassName:$,noPanClassName:W},v.createElement(xo,{onSelectionStart:p,onSelectionEnd:f,onPaneClick:e,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:i,onPaneContextMenu:d,onPaneScroll:a,panOnDrag:Z,isSelecting:!!I,selectionMode:h},t,T&&v.createElement(os,{onSelectionContextMenu:L,noPanClassName:W,disableKeyboardA11y:R})))};Mo.displayName="FlowRenderer";var as=(0,v.memo)(Mo);function is(t){return ne((0,v.useCallback)(e=>t?Xn(e.nodeInternals,{x:0,y:0,width:e.width,height:e.height},e.transform,!0):e.getNodes(),[t]))}function ss(t){let e={input:ct(t.input||no),default:ct(t.default||tn),output:ct(t.output||ro),group:ct(t.group||nn)},n=Object.keys(t).filter(o=>!["input","default","output","group"].includes(o)).reduce((o,i)=>(o[i]=ct(t[i]||tn),o),{});return{...e,...n}}var ls=({x:t,y:e,width:n,height:o,origin:i})=>!n||!o||i[0]<0||i[1]<0||i[0]>1||i[1]>1?{x:t,y:e}:{x:t-n*i[0],y:e-o*i[1]},ds=t=>({nodesDraggable:t.nodesDraggable,nodesConnectable:t.nodesConnectable,nodesFocusable:t.nodesFocusable,elementsSelectable:t.elementsSelectable,updateNodeDimensions:t.updateNodeDimensions,onError:t.onError}),Oo=t=>{let{nodesDraggable:e,nodesConnectable:n,nodesFocusable:o,elementsSelectable:i,updateNodeDimensions:d,onError:a}=ne(ds,ue),l=is(t.onlyRenderVisibleElements),s=(0,v.useRef)(),c=(0,v.useMemo)(()=>{if(typeof ResizeObserver>"u")return null;let u=new ResizeObserver(r=>{d(r.map(g=>({id:g.target.getAttribute("data-id"),nodeElement:g.target,forceUpdate:!0})))});return s.current=u,u},[]);return(0,v.useEffect)(()=>()=>{var u;(u=s==null?void 0:s.current)==null||u.disconnect()},[]),v.createElement("div",{className:"react-flow__nodes",style:rn},l.map(u=>{var C,M,_;let r=u.type||"default";t.nodeTypes[r]||(a==null||a("003",xe.error003(r)),r="default");let g=t.nodeTypes[r]||t.nodeTypes.default,h=!!(u.draggable||e&&u.draggable===void 0),p=!!(u.selectable||i&&u.selectable===void 0),f=!!(u.connectable||n&&u.connectable===void 0),y=!!(u.focusable||o&&u.focusable===void 0),x=t.nodeExtent?Ht(u.positionAbsolute,t.nodeExtent):u.positionAbsolute,b=(x==null?void 0:x.x)??0,N=(x==null?void 0:x.y)??0,m=ls({x:b,y:N,width:u.width??0,height:u.height??0,origin:t.nodeOrigin});return v.createElement(g,{key:u.id,id:u.id,className:u.className,style:u.style,type:r,data:u.data,sourcePosition:u.sourcePosition||X.Bottom,targetPosition:u.targetPosition||X.Top,hidden:u.hidden,xPos:b,yPos:N,xPosOrigin:m.x,yPosOrigin:m.y,selectNodesOnDrag:t.selectNodesOnDrag,onClick:t.onNodeClick,onMouseEnter:t.onNodeMouseEnter,onMouseMove:t.onNodeMouseMove,onMouseLeave:t.onNodeMouseLeave,onContextMenu:t.onNodeContextMenu,onDoubleClick:t.onNodeDoubleClick,selected:!!u.selected,isDraggable:h,isSelectable:p,isConnectable:f,isFocusable:y,resizeObserver:c,dragHandle:u.dragHandle,zIndex:((C=u[re])==null?void 0:C.z)??0,isParent:!!((M=u[re])!=null&&M.isParent),noDragClassName:t.noDragClassName,noPanClassName:t.noPanClassName,initialized:!!u.width&&!!u.height,rfId:t.rfId,disableKeyboardA11y:t.disableKeyboardA11y,ariaLabel:u.ariaLabel,hasHandleBounds:!!((_=u[re])!=null&&_.handleBounds)})}))};Oo.displayName="NodeRenderer";var cs=(0,v.memo)(Oo),us=(t,e,n)=>n===X.Left?t-e:n===X.Right?t+e:t,hs=(t,e,n)=>n===X.Top?t-e:n===X.Bottom?t+e:t,_o="react-flow__edgeupdater",jo=({position:t,centerX:e,centerY:n,radius:o=10,onMouseDown:i,onMouseEnter:d,onMouseOut:a,type:l})=>v.createElement("circle",{onMouseDown:i,onMouseEnter:d,onMouseOut:a,className:he([_o,`${_o}-${l}`]),cx:us(e,o,t),cy:hs(n,o,t),r:o,stroke:"transparent",fill:"transparent"}),gs=()=>!0,Je=t=>{let e=({id:n,className:o,type:i,data:d,onClick:a,onEdgeDoubleClick:l,selected:s,animated:c,label:u,labelStyle:r,labelShowBg:g,labelBgStyle:h,labelBgPadding:p,labelBgBorderRadius:f,style:y,source:x,target:b,sourceX:N,sourceY:m,targetX:C,targetY:M,sourcePosition:_,targetPosition:P,elementsSelectable:j,hidden:w,sourceHandleId:E,targetHandleId:O,onContextMenu:k,onMouseEnter:S,onMouseMove:D,onMouseLeave:L,reconnectRadius:$,onReconnect:W,onReconnectStart:R,onReconnectEnd:T,markerEnd:V,markerStart:F,rfId:Z,ariaLabel:U,isFocusable:I,isReconnectable:A,pathOptions:z,interactionWidth:H,disableKeyboardA11y:Y})=>{let G=(0,v.useRef)(null),[ee,ae]=(0,v.useState)(!1),[ge,oe]=(0,v.useState)(!1),J=le(),de=(0,v.useMemo)(()=>`url('#${Ut(F,Z)}')`,[F,Z]),te=(0,v.useMemo)(()=>`url('#${Ut(V,Z)}')`,[V,Z]);if(w)return null;let K=ce=>{var Ee;let{edges:pe,addSelectedEdges:je,unselectNodesAndEdges:Pe,multiSelectionActive:Ie}=J.getState(),be=pe.find(nt=>nt.id===n);be&&(j&&(J.setState({nodesSelectionActive:!1}),be.selected&&Ie?(Pe({nodes:[],edges:[be]}),(Ee=G.current)==null||Ee.blur()):je([n])),a&&a(ce,be))},fe=it(n,J.getState,l),Me=it(n,J.getState,k),tt=it(n,J.getState,S),ze=it(n,J.getState,D),Le=it(n,J.getState,L),we=(ce,pe)=>{if(ce.button!==0)return;let{edges:je,isValidConnection:Pe}=J.getState(),Ie=pe?b:x,be=(pe?O:E)||null,Ee=pe?"target":"source",nt=Pe||gs,Mt=pe,ot=je.find(Re=>Re.id===n);oe(!0),R==null||R(ce,ot,Ee),qn({event:ce,handleId:be,nodeId:Ie,onConnect:Re=>W==null?void 0:W(ot,Re),isTarget:Mt,getState:J.getState,setState:J.setState,isValidConnection:nt,edgeUpdaterType:Ee,onReconnectEnd:Re=>{oe(!1),T==null||T(Re,ot,Ee)}})},$e=ce=>we(ce,!0),Oe=ce=>we(ce,!1),_e=()=>ae(!0),Te=()=>ae(!1),He=!j&&!a;return v.createElement("g",{className:he(["react-flow__edge",`react-flow__edge-${i}`,o,{selected:s,animated:c,inactive:He,updating:ee}]),onClick:K,onDoubleClick:fe,onContextMenu:Me,onMouseEnter:tt,onMouseMove:ze,onMouseLeave:Le,onKeyDown:I?ce=>{var pe;if(!Y&&Dn.includes(ce.key)&&j){let{unselectNodesAndEdges:je,addSelectedEdges:Pe,edges:Ie}=J.getState();ce.key==="Escape"?((pe=G.current)==null||pe.blur(),je({edges:[Ie.find(be=>be.id===n)]})):Pe([n])}}:void 0,tabIndex:I?0:void 0,role:I?"button":"img","data-testid":`rf__edge-${n}`,"aria-label":U===null?void 0:U||`Edge from ${x} to ${b}`,"aria-describedby":I?`${lo}-${Z}`:void 0,ref:G},!ge&&v.createElement(t,{id:n,source:x,target:b,selected:s,animated:c,label:u,labelStyle:r,labelShowBg:g,labelBgStyle:h,labelBgPadding:p,labelBgBorderRadius:f,data:d,style:y,sourceX:N,sourceY:m,targetX:C,targetY:M,sourcePosition:_,targetPosition:P,sourceHandleId:E,targetHandleId:O,markerStart:de,markerEnd:te,pathOptions:z,interactionWidth:H}),A&&v.createElement(v.Fragment,null,(A==="source"||A===!0)&&v.createElement(jo,{position:_,centerX:N,centerY:m,radius:$,onMouseDown:$e,onMouseEnter:_e,onMouseOut:Te,type:"source"}),(A==="target"||A===!0)&&v.createElement(jo,{position:P,centerX:C,centerY:M,radius:$,onMouseDown:Oe,onMouseEnter:_e,onMouseOut:Te,type:"target"})))};return e.displayName="EdgeWrapper",(0,v.memo)(e)};function fs(t){let e={default:Je(t.default||wt),straight:Je(t.bezier||Kt),step:Je(t.step||Zt),smoothstep:Je(t.step||bt),simplebezier:Je(t.simplebezier||Xt)},n=Object.keys(t).filter(o=>!["default","bezier"].includes(o)).reduce((o,i)=>(o[i]=Je(t[i]||wt),o),{});return{...e,...n}}function Po(t,e,n=null){let o=((n==null?void 0:n.x)||0)+e.x,i=((n==null?void 0:n.y)||0)+e.y,d=(n==null?void 0:n.width)||e.width,a=(n==null?void 0:n.height)||e.height;switch(t){case X.Top:return{x:o+d/2,y:i};case X.Right:return{x:o+d,y:i+a/2};case X.Bottom:return{x:o+d/2,y:i+a};case X.Left:return{x:o,y:i+a/2}}}function Io(t,e){return t?t.length===1||!e?t[0]:e&&t.find(n=>n.id===e)||null:null}var ps=(t,e,n,o,i,d)=>{let a=Po(n,t,e),l=Po(d,o,i);return{sourceX:a.x,sourceY:a.y,targetX:l.x,targetY:l.y}};function ms({sourcePos:t,targetPos:e,sourceWidth:n,sourceHeight:o,targetWidth:i,targetHeight:d,width:a,height:l,transform:s}){let c={x:Math.min(t.x,e.x),y:Math.min(t.y,e.y),x2:Math.max(t.x+n,e.x+i),y2:Math.max(t.y+o,e.y+d)};c.x===c.x2&&(c.x2+=1),c.y===c.y2&&(c.y2+=1);let u=Vt({x:(0-s[0])/s[2],y:(0-s[1])/s[2],width:a/s[2],height:l/s[2]}),r=Math.max(0,Math.min(u.x2,c.x2)-Math.max(u.x,c.x)),g=Math.max(0,Math.min(u.y2,c.y2)-Math.max(u.y,c.y));return Math.ceil(r*g)>0}function Ro(t){var o,i,d,a,l;let e=((o=t==null?void 0:t[re])==null?void 0:o.handleBounds)||null,n=e&&(t==null?void 0:t.width)&&(t==null?void 0:t.height)&&((i=t==null?void 0:t.positionAbsolute)==null?void 0:i.x)!==void 0&&((d=t==null?void 0:t.positionAbsolute)==null?void 0:d.y)!==void 0;return[{x:((a=t==null?void 0:t.positionAbsolute)==null?void 0:a.x)||0,y:((l=t==null?void 0:t.positionAbsolute)==null?void 0:l.y)||0,width:(t==null?void 0:t.width)||0,height:(t==null?void 0:t.height)||0},e,!!n]}var ys=[{level:0,isMaxLevel:!0,edges:[]}];function vs(t,e,n=!1){let o=-1,i=t.reduce((a,l)=>{var u,r;let s=me(l.zIndex),c=s?l.zIndex:0;if(n){let g=e.get(l.target),h=e.get(l.source),p=l.selected||(g==null?void 0:g.selected)||(h==null?void 0:h.selected),f=Math.max(((u=h==null?void 0:h[re])==null?void 0:u.z)||0,((r=g==null?void 0:g[re])==null?void 0:r.z)||0,1e3);c=(s?l.zIndex:0)+(p?f:0)}return a[c]?a[c].push(l):a[c]=[l],o=c>o?c:o,a},{}),d=Object.entries(i).map(([a,l])=>{let s=+a;return{edges:l,level:s,isMaxLevel:s===o}});return d.length===0?ys:d}function bs(t,e,n){return vs(ne((0,v.useCallback)(o=>t?o.edges.filter(i=>{let d=e.get(i.source),a=e.get(i.target);return(d==null?void 0:d.width)&&(d==null?void 0:d.height)&&(a==null?void 0:a.width)&&(a==null?void 0:a.height)&&ms({sourcePos:d.positionAbsolute||{x:0,y:0},targetPos:a.positionAbsolute||{x:0,y:0},sourceWidth:d.width,sourceHeight:d.height,targetWidth:a.width,targetHeight:a.height,width:o.width,height:o.height,transform:o.transform})}):o.edges,[t,e])),e,n)}var xs=({color:t="none",strokeWidth:e=1})=>v.createElement("polyline",{style:{stroke:t,strokeWidth:e},strokeLinecap:"round",strokeLinejoin:"round",fill:"none",points:"-5,-4 0,0 -5,4"}),ws=({color:t="none",strokeWidth:e=1})=>v.createElement("polyline",{style:{stroke:t,fill:t,strokeWidth:e},strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"}),Do={[vt.Arrow]:xs,[vt.ArrowClosed]:ws};function Es(t){let e=le();return(0,v.useMemo)(()=>{var n,o;return Object.prototype.hasOwnProperty.call(Do,t)?Do[t]:((o=(n=e.getState()).onError)==null||o.call(n,"009",xe.error009(t)),null)},[t])}var Ss=({id:t,type:e,color:n,width:o=12.5,height:i=12.5,markerUnits:d="strokeWidth",strokeWidth:a,orient:l="auto-start-reverse"})=>{let s=Es(e);return s?v.createElement("marker",{className:"react-flow__arrowhead",id:t,markerWidth:`${o}`,markerHeight:`${i}`,viewBox:"-10 -10 20 20",markerUnits:d,orient:l,refX:"0",refY:"0"},v.createElement(s,{color:n,strokeWidth:a})):null},Cs=({defaultColor:t,rfId:e})=>n=>{let o=[];return n.edges.reduce((i,d)=>([d.markerStart,d.markerEnd].forEach(a=>{if(a&&typeof a=="object"){let l=Ut(a,e);o.includes(l)||(i.push({id:l,color:a.color||t,...a}),o.push(l))}}),i),[]).sort((i,d)=>i.id.localeCompare(d.id))},Ao=({defaultColor:t,rfId:e})=>{let n=ne((0,v.useCallback)(Cs({defaultColor:t,rfId:e}),[t,e]),(o,i)=>!(o.length!==i.length||o.some((d,a)=>d.id!==i[a].id)));return v.createElement("defs",null,n.map(o=>v.createElement(Ss,{id:o.id,key:o.id,type:o.type,color:o.color,width:o.width,height:o.height,markerUnits:o.markerUnits,strokeWidth:o.strokeWidth,orient:o.orient})))};Ao.displayName="MarkerDefinitions";var Ns=(0,v.memo)(Ao),ks=t=>({nodesConnectable:t.nodesConnectable,edgesFocusable:t.edgesFocusable,edgesUpdatable:t.edgesUpdatable,elementsSelectable:t.elementsSelectable,width:t.width,height:t.height,connectionMode:t.connectionMode,nodeInternals:t.nodeInternals,onError:t.onError}),Bo=({defaultMarkerColor:t,onlyRenderVisibleElements:e,elevateEdgesOnSelect:n,rfId:o,edgeTypes:i,noPanClassName:d,onEdgeContextMenu:a,onEdgeMouseEnter:l,onEdgeMouseMove:s,onEdgeMouseLeave:c,onEdgeClick:u,onEdgeDoubleClick:r,onReconnect:g,onReconnectStart:h,onReconnectEnd:p,reconnectRadius:f,children:y,disableKeyboardA11y:x})=>{let{edgesFocusable:b,edgesUpdatable:N,elementsSelectable:m,width:C,height:M,connectionMode:_,nodeInternals:P,onError:j}=ne(ks,ue),w=bs(e,P,n);return C?v.createElement(v.Fragment,null,w.map(({level:E,edges:O,isMaxLevel:k})=>v.createElement("svg",{key:E,style:{zIndex:E},width:C,height:M,className:"react-flow__edges react-flow__container"},k&&v.createElement(Ns,{defaultColor:t,rfId:o}),v.createElement("g",null,O.map(S=>{let[D,L,$]=Ro(P.get(S.source)),[W,R,T]=Ro(P.get(S.target));if(!$||!T)return null;let V=S.type||"default";i[V]||(j==null||j("011",xe.error011(V)),V="default");let F=i[V]||i.default,Z=_===Xe.Strict?R.target:(R.target??[]).concat(R.source??[]),U=Io(L.source,S.sourceHandle),I=Io(Z,S.targetHandle),A=(U==null?void 0:U.position)||X.Bottom,z=(I==null?void 0:I.position)||X.Top,H=!!(S.focusable||b&&S.focusable===void 0),Y=S.reconnectable||S.updatable,G=g!==void 0&&(Y||N&&Y===void 0);if(!U||!I)return j==null||j("008",xe.error008(U,S)),null;let{sourceX:ee,sourceY:ae,targetX:ge,targetY:oe}=ps(D,U,A,W,I,z);return v.createElement(F,{key:S.id,id:S.id,className:he([S.className,d]),type:V,data:S.data,selected:!!S.selected,animated:!!S.animated,hidden:!!S.hidden,label:S.label,labelStyle:S.labelStyle,labelShowBg:S.labelShowBg,labelBgStyle:S.labelBgStyle,labelBgPadding:S.labelBgPadding,labelBgBorderRadius:S.labelBgBorderRadius,style:S.style,source:S.source,target:S.target,sourceHandleId:S.sourceHandle,targetHandleId:S.targetHandle,markerEnd:S.markerEnd,markerStart:S.markerStart,sourceX:ee,sourceY:ae,targetX:ge,targetY:oe,sourcePosition:A,targetPosition:z,elementsSelectable:m,onContextMenu:a,onMouseEnter:l,onMouseMove:s,onMouseLeave:c,onClick:u,onEdgeDoubleClick:r,onReconnect:g,onReconnectStart:h,onReconnectEnd:p,reconnectRadius:f,rfId:o,ariaLabel:S.ariaLabel,isFocusable:H,isReconnectable:G,pathOptions:"pathOptions"in S?S.pathOptions:void 0,interactionWidth:S.interactionWidth,disableKeyboardA11y:x})})))),y):null};Bo.displayName="EdgeRenderer";var Ms=(0,v.memo)(Bo),Os=t=>`translate(${t.transform[0]}px,${t.transform[1]}px) scale(${t.transform[2]})`;function _s({children:t}){let e=ne(Os);return v.createElement("div",{className:"react-flow__viewport react-flow__container",style:{transform:e}},t)}function js(t){let e=lt(),n=(0,v.useRef)(!1);(0,v.useEffect)(()=>{!n.current&&e.viewportInitialized&&t&&(setTimeout(()=>t(e),1),n.current=!0)},[t,e.viewportInitialized])}var Ps={[X.Left]:X.Right,[X.Right]:X.Left,[X.Top]:X.Bottom,[X.Bottom]:X.Top},zo=({nodeId:t,handleType:e,style:n,type:o=Ae.Bezier,CustomComponent:i,connectionStatus:d})=>{var M,_,P;let{fromNode:a,handleId:l,toX:s,toY:c,connectionMode:u}=ne((0,v.useCallback)(j=>({fromNode:j.nodeInternals.get(t),handleId:j.connectionHandleId,toX:(j.connectionPosition.x-j.transform[0])/j.transform[2],toY:(j.connectionPosition.y-j.transform[1])/j.transform[2],connectionMode:j.connectionMode}),[t]),ue),r=(M=a==null?void 0:a[re])==null?void 0:M.handleBounds,g=r==null?void 0:r[e];if(u===Xe.Loose&&(g||(g=r==null?void 0:r[e==="source"?"target":"source"])),!a||!g)return null;let h=l?g.find(j=>j.id===l):g[0],p=h?h.x+h.width/2:(a.width??0)/2,f=h?h.y+h.height/2:a.height??0,y=(((_=a.positionAbsolute)==null?void 0:_.x)??0)+p,x=(((P=a.positionAbsolute)==null?void 0:P.y)??0)+f,b=h==null?void 0:h.position,N=b?Ps[b]:null;if(!b||!N)return null;if(i)return v.createElement(i,{connectionLineType:o,connectionLineStyle:n,fromNode:a,fromHandle:h,fromX:y,fromY:x,toX:s,toY:c,fromPosition:b,toPosition:N,connectionStatus:d});let m="",C={sourceX:y,sourceY:x,sourcePosition:b,targetX:s,targetY:c,targetPosition:N};return o===Ae.Bezier?[m]=Fn(C):o===Ae.Step?[m]=Yt({...C,borderRadius:0}):o===Ae.SmoothStep?[m]=Yt(C):o===Ae.SimpleBezier?[m]=$n(C):m=`M${y},${x} ${s},${c}`,v.createElement("path",{d:m,fill:"none",className:"react-flow__connection-path",style:n})};zo.displayName="ConnectionLine";var Is=t=>({nodeId:t.connectionNodeId,handleType:t.connectionHandleType,nodesConnectable:t.nodesConnectable,connectionStatus:t.connectionStatus,width:t.width,height:t.height});function Rs({containerStyle:t,style:e,type:n,component:o}){let{nodeId:i,handleType:d,nodesConnectable:a,width:l,height:s,connectionStatus:c}=ne(Is,ue);return i&&d&&l&&a?v.createElement("svg",{style:t,width:l,height:s,className:"react-flow__edges react-flow__connectionline react-flow__container"},v.createElement("g",{className:he(["react-flow__connection",c])},v.createElement(zo,{nodeId:i,handleType:d,style:e,type:n,CustomComponent:o,connectionStatus:c}))):null}function Lo(t,e){return(0,v.useRef)(null),le(),(0,v.useMemo)(()=>e(t),[t])}var $o=({nodeTypes:t,edgeTypes:e,onMove:n,onMoveStart:o,onMoveEnd:i,onInit:d,onNodeClick:a,onEdgeClick:l,onNodeDoubleClick:s,onEdgeDoubleClick:c,onNodeMouseEnter:u,onNodeMouseMove:r,onNodeMouseLeave:g,onNodeContextMenu:h,onSelectionContextMenu:p,onSelectionStart:f,onSelectionEnd:y,connectionLineType:x,connectionLineStyle:b,connectionLineComponent:N,connectionLineContainerStyle:m,selectionKeyCode:C,selectionOnDrag:M,selectionMode:_,multiSelectionKeyCode:P,panActivationKeyCode:j,zoomActivationKeyCode:w,deleteKeyCode:E,onlyRenderVisibleElements:O,elementsSelectable:k,selectNodesOnDrag:S,defaultViewport:D,translateExtent:L,minZoom:$,maxZoom:W,preventScrolling:R,defaultMarkerColor:T,zoomOnScroll:V,zoomOnPinch:F,panOnScroll:Z,panOnScrollSpeed:U,panOnScrollMode:I,zoomOnDoubleClick:A,panOnDrag:z,onPaneClick:H,onPaneMouseEnter:Y,onPaneMouseMove:G,onPaneMouseLeave:ee,onPaneScroll:ae,onPaneContextMenu:ge,onEdgeContextMenu:oe,onEdgeMouseEnter:J,onEdgeMouseMove:de,onEdgeMouseLeave:te,onReconnect:K,onReconnectStart:fe,onReconnectEnd:Me,reconnectRadius:tt,noDragClassName:ze,noWheelClassName:Le,noPanClassName:we,elevateEdgesOnSelect:$e,disableKeyboardA11y:Oe,nodeOrigin:_e,nodeExtent:Te,rfId:He})=>{let ce=Lo(t,ss),pe=Lo(e,fs);return js(d),v.createElement(as,{onPaneClick:H,onPaneMouseEnter:Y,onPaneMouseMove:G,onPaneMouseLeave:ee,onPaneContextMenu:ge,onPaneScroll:ae,deleteKeyCode:E,selectionKeyCode:C,selectionOnDrag:M,selectionMode:_,onSelectionStart:f,onSelectionEnd:y,multiSelectionKeyCode:P,panActivationKeyCode:j,zoomActivationKeyCode:w,elementsSelectable:k,onMove:n,onMoveStart:o,onMoveEnd:i,zoomOnScroll:V,zoomOnPinch:F,zoomOnDoubleClick:A,panOnScroll:Z,panOnScrollSpeed:U,panOnScrollMode:I,panOnDrag:z,defaultViewport:D,translateExtent:L,minZoom:$,maxZoom:W,onSelectionContextMenu:p,preventScrolling:R,noDragClassName:ze,noWheelClassName:Le,noPanClassName:we,disableKeyboardA11y:Oe},v.createElement(_s,null,v.createElement(Ms,{edgeTypes:pe,onEdgeClick:l,onEdgeDoubleClick:c,onlyRenderVisibleElements:O,onEdgeContextMenu:oe,onEdgeMouseEnter:J,onEdgeMouseMove:de,onEdgeMouseLeave:te,onReconnect:K,onReconnectStart:fe,onReconnectEnd:Me,reconnectRadius:tt,defaultMarkerColor:T,noPanClassName:we,elevateEdgesOnSelect:!!$e,disableKeyboardA11y:Oe,rfId:He},v.createElement(Rs,{style:b,type:x,component:N,containerStyle:m})),v.createElement("div",{className:"react-flow__edgelabel-renderer"}),v.createElement(cs,{nodeTypes:ce,onNodeClick:a,onNodeDoubleClick:s,onNodeMouseEnter:u,onNodeMouseMove:r,onNodeMouseLeave:g,onNodeContextMenu:h,selectNodesOnDrag:S,onlyRenderVisibleElements:O,noPanClassName:we,noDragClassName:ze,disableKeyboardA11y:Oe,nodeOrigin:_e,nodeExtent:Te,rfId:He})))};$o.displayName="GraphView";var Ds=(0,v.memo)($o),cn=[[-1/0,-1/0],[1/0,1/0]],ke={rfId:"1",width:0,height:0,transform:[0,0,1],nodeInternals:new Map,edges:[],onNodesChange:null,onEdgesChange:null,hasDefaultNodes:!1,hasDefaultEdges:!1,d3Zoom:null,d3Selection:null,d3ZoomHandler:void 0,minZoom:.5,maxZoom:2,translateExtent:cn,nodeExtent:cn,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionNodeId:null,connectionHandleId:null,connectionHandleType:"source",connectionPosition:{x:0,y:0},connectionStatus:null,connectionMode:Xe.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:[0,0],nodeDragThreshold:0,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesUpdatable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,fitViewOnInit:!1,fitViewOnInitDone:!1,fitViewOnInitOptions:void 0,onSelectionChange:[],multiSelectionActive:!1,connectionStartHandle:null,connectionEndHandle:null,connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,connectionRadius:20,onError:li,isValidConnection:void 0},As=()=>Ga((t,e)=>({...ke,setNodes:n=>{let{nodeInternals:o,nodeOrigin:i,elevateNodesOnSelect:d}=e();t({nodeInternals:on(n,o,i,d)})},getNodes:()=>Array.from(e().nodeInternals.values()),setEdges:n=>{let{defaultEdgeOptions:o={}}=e();t({edges:n.map(i=>({...o,...i}))})},setDefaultNodesAndEdges:(n,o)=>{let i=n!==void 0,d=o!==void 0;t({nodeInternals:i?on(n,new Map,e().nodeOrigin,e().elevateNodesOnSelect):new Map,edges:d?o:[],hasDefaultNodes:i,hasDefaultEdges:d})},updateNodeDimensions:n=>{let{onNodesChange:o,nodeInternals:i,fitViewOnInit:d,fitViewOnInitDone:a,fitViewOnInitOptions:l,domNode:s,nodeOrigin:c}=e(),u=s==null?void 0:s.querySelector(".react-flow__viewport");if(!u)return;let r=window.getComputedStyle(u),{m22:g}=new window.DOMMatrixReadOnly(r.transform),h=n.reduce((f,y)=>{let x=i.get(y.id);if(x!=null&&x.hidden)i.set(x.id,{...x,[re]:{...x[re],handleBounds:void 0}});else if(x){let b=Tt(y.nodeElement);b.width&&b.height&&(x.width!==b.width||x.height!==b.height||y.forceUpdate)&&(i.set(x.id,{...x,[re]:{...x[re],handleBounds:{source:Co(".source",y.nodeElement,g,c),target:Co(".target",y.nodeElement,g,c)}},...b}),f.push({id:x.id,type:"dimensions",dimensions:b}))}return f},[]);go(i,c);let p=a||d&&!a&&fo(e,{initial:!0,...l});t({nodeInternals:new Map(i),fitViewOnInitDone:p}),(h==null?void 0:h.length)>0&&(o==null||o(h))},updateNodePositions:(n,o=!0,i=!1)=>{let{triggerNodeChanges:d}=e();d(n.map(a=>{let l={id:a.id,type:"position",dragging:i};return o&&(l.positionAbsolute=a.positionAbsolute,l.position=a.position),l}))},triggerNodeChanges:n=>{let{onNodesChange:o,nodeInternals:i,hasDefaultNodes:d,nodeOrigin:a,getNodes:l,elevateNodesOnSelect:s}=e();n!=null&&n.length&&(d&&t({nodeInternals:on(bo(n,l()),i,a,s)}),o==null||o(n))},addSelectedNodes:n=>{let{multiSelectionActive:o,edges:i,getNodes:d}=e(),a,l=null;o?a=n.map(s=>Ne(s,!0)):(a=qe(d(),n),l=qe(i,[])),St({changedNodes:a,changedEdges:l,get:e,set:t})},addSelectedEdges:n=>{let{multiSelectionActive:o,edges:i,getNodes:d}=e(),a,l=null;o?a=n.map(s=>Ne(s,!0)):(a=qe(i,n),l=qe(d(),[])),St({changedNodes:l,changedEdges:a,get:e,set:t})},unselectNodesAndEdges:({nodes:n,edges:o}={})=>{let{edges:i,getNodes:d}=e(),a=n||d(),l=o||i;St({changedNodes:a.map(s=>(s.selected=!1,Ne(s.id,!1))),changedEdges:l.map(s=>Ne(s.id,!1)),get:e,set:t})},setMinZoom:n=>{let{d3Zoom:o,maxZoom:i}=e();o==null||o.scaleExtent([n,i]),t({minZoom:n})},setMaxZoom:n=>{let{d3Zoom:o,minZoom:i}=e();o==null||o.scaleExtent([i,n]),t({maxZoom:n})},setTranslateExtent:n=>{var o;(o=e().d3Zoom)==null||o.translateExtent(n),t({translateExtent:n})},resetSelectedElements:()=>{let{edges:n,getNodes:o}=e();St({changedNodes:o().filter(i=>i.selected).map(i=>Ne(i.id,!1)),changedEdges:n.filter(i=>i.selected).map(i=>Ne(i.id,!1)),get:e,set:t})},setNodeExtent:n=>{let{nodeInternals:o}=e();o.forEach(i=>{i.positionAbsolute=Ht(i.position,n)}),t({nodeExtent:n,nodeInternals:new Map(o)})},panBy:n=>{let{transform:o,width:i,height:d,d3Zoom:a,d3Selection:l,translateExtent:s}=e();if(!a||!l||!n.x&&!n.y)return!1;let c=Fe.translate(o[0]+n.x,o[1]+n.y).scale(o[2]),u=[[0,0],[i,d]],r=a==null?void 0:a.constrain()(c,u,s);return a.transform(l,r),o[0]!==r.x||o[1]!==r.y||o[2]!==r.k},cancelConnection:()=>t({connectionNodeId:ke.connectionNodeId,connectionHandleId:ke.connectionHandleId,connectionHandleType:ke.connectionHandleType,connectionStatus:ke.connectionStatus,connectionStartHandle:ke.connectionStartHandle,connectionEndHandle:ke.connectionEndHandle}),reset:()=>t({...ke})}),Object.is),un=({children:t})=>{let e=(0,v.useRef)(null);return e.current||(e.current=As()),v.createElement(ti,{value:e.current},t)};un.displayName="ReactFlowProvider";var To=({children:t})=>(0,v.useContext)(ft)?v.createElement(v.Fragment,null,t):v.createElement(un,null,t);To.displayName="ReactFlowWrapper";var Bs={input:no,default:tn,output:ro,group:nn},zs={default:wt,straight:Kt,step:Zt,smoothstep:bt,simplebezier:Xt},Ls=[0,0],$s=[15,15],Ts={x:0,y:0,zoom:1},Hs={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0},Ho=(0,v.forwardRef)(({nodes:t,edges:e,defaultNodes:n,defaultEdges:o,className:i,nodeTypes:d=Bs,edgeTypes:a=zs,onNodeClick:l,onEdgeClick:s,onInit:c,onMove:u,onMoveStart:r,onMoveEnd:g,onConnect:h,onConnectStart:p,onConnectEnd:f,onClickConnectStart:y,onClickConnectEnd:x,onNodeMouseEnter:b,onNodeMouseMove:N,onNodeMouseLeave:m,onNodeContextMenu:C,onNodeDoubleClick:M,onNodeDragStart:_,onNodeDrag:P,onNodeDragStop:j,onNodesDelete:w,onEdgesDelete:E,onSelectionChange:O,onSelectionDragStart:k,onSelectionDrag:S,onSelectionDragStop:D,onSelectionContextMenu:L,onSelectionStart:$,onSelectionEnd:W,connectionMode:R=Xe.Strict,connectionLineType:T=Ae.Bezier,connectionLineStyle:V,connectionLineComponent:F,connectionLineContainerStyle:Z,deleteKeyCode:U="Backspace",selectionKeyCode:I="Shift",selectionOnDrag:A=!1,selectionMode:z=yt.Full,panActivationKeyCode:H="Space",multiSelectionKeyCode:Y=mt()?"Meta":"Control",zoomActivationKeyCode:G=mt()?"Meta":"Control",snapToGrid:ee=!1,snapGrid:ae=$s,onlyRenderVisibleElements:ge=!1,selectNodesOnDrag:oe=!0,nodesDraggable:J,nodesConnectable:de,nodesFocusable:te,nodeOrigin:K=Ls,edgesFocusable:fe,edgesUpdatable:Me,elementsSelectable:tt,defaultViewport:ze=Ts,minZoom:Le=.5,maxZoom:we=2,translateExtent:$e=cn,preventScrolling:Oe=!0,nodeExtent:_e,defaultMarkerColor:Te="#b1b1b7",zoomOnScroll:He=!0,zoomOnPinch:ce=!0,panOnScroll:pe=!1,panOnScrollSpeed:je=.5,panOnScrollMode:Pe=Ye.Free,zoomOnDoubleClick:Ie=!0,panOnDrag:be=!0,onPaneClick:Ee,onPaneMouseEnter:nt,onPaneMouseMove:Mt,onPaneMouseLeave:ot,onPaneScroll:Re,onPaneContextMenu:ur,children:hr,onEdgeContextMenu:gr,onEdgeDoubleClick:fr,onEdgeMouseEnter:pr,onEdgeMouseMove:mr,onEdgeMouseLeave:yr,onEdgeUpdate:vr,onEdgeUpdateStart:br,onEdgeUpdateEnd:xr,onReconnect:wr,onReconnectStart:Er,onReconnectEnd:Sr,reconnectRadius:Cr=10,edgeUpdaterRadius:Nr=10,onNodesChange:kr,onEdgesChange:Mr,noDragClassName:Or="nodrag",noWheelClassName:_r="nowheel",noPanClassName:mn="nopan",fitView:jr=!1,fitViewOptions:Pr,connectOnClick:Ir=!0,attributionPosition:Rr,proOptions:Dr,defaultEdgeOptions:Ar,elevateNodesOnSelect:Br=!0,elevateEdgesOnSelect:zr=!1,disableKeyboardA11y:yn=!1,autoPanOnConnect:Lr=!0,autoPanOnNodeDrag:$r=!0,connectionRadius:Tr=20,isValidConnection:Hr,onError:Vr,style:Fr,id:vn,nodeDragThreshold:Wr,...Xr},Yr)=>{let Ot=vn||"1";return v.createElement("div",{...Xr,style:{...Fr,...Hs},ref:Yr,className:he(["react-flow",i]),"data-testid":"rf__wrapper",id:vn},v.createElement(To,null,v.createElement(Ds,{onInit:c,onMove:u,onMoveStart:r,onMoveEnd:g,onNodeClick:l,onEdgeClick:s,onNodeMouseEnter:b,onNodeMouseMove:N,onNodeMouseLeave:m,onNodeContextMenu:C,onNodeDoubleClick:M,nodeTypes:d,edgeTypes:a,connectionLineType:T,connectionLineStyle:V,connectionLineComponent:F,connectionLineContainerStyle:Z,selectionKeyCode:I,selectionOnDrag:A,selectionMode:z,deleteKeyCode:U,multiSelectionKeyCode:Y,panActivationKeyCode:H,zoomActivationKeyCode:G,onlyRenderVisibleElements:ge,selectNodesOnDrag:oe,defaultViewport:ze,translateExtent:$e,minZoom:Le,maxZoom:we,preventScrolling:Oe,zoomOnScroll:He,zoomOnPinch:ce,zoomOnDoubleClick:Ie,panOnScroll:pe,panOnScrollSpeed:je,panOnScrollMode:Pe,panOnDrag:be,onPaneClick:Ee,onPaneMouseEnter:nt,onPaneMouseMove:Mt,onPaneMouseLeave:ot,onPaneScroll:Re,onPaneContextMenu:ur,onSelectionContextMenu:L,onSelectionStart:$,onSelectionEnd:W,onEdgeContextMenu:gr,onEdgeDoubleClick:fr,onEdgeMouseEnter:pr,onEdgeMouseMove:mr,onEdgeMouseLeave:yr,onReconnect:wr??vr,onReconnectStart:Er??br,onReconnectEnd:Sr??xr,reconnectRadius:Cr??Nr,defaultMarkerColor:Te,noDragClassName:Or,noWheelClassName:_r,noPanClassName:mn,elevateEdgesOnSelect:zr,rfId:Ot,disableKeyboardA11y:yn,nodeOrigin:K,nodeExtent:_e}),v.createElement(Pi,{nodes:t,edges:e,defaultNodes:n,defaultEdges:o,onConnect:h,onConnectStart:p,onConnectEnd:f,onClickConnectStart:y,onClickConnectEnd:x,nodesDraggable:J,nodesConnectable:de,nodesFocusable:te,edgesFocusable:fe,edgesUpdatable:Me,elementsSelectable:tt,elevateNodesOnSelect:Br,minZoom:Le,maxZoom:we,nodeExtent:_e,onNodesChange:kr,onEdgesChange:Mr,snapToGrid:ee,snapGrid:ae,connectionMode:R,translateExtent:$e,connectOnClick:Ir,defaultEdgeOptions:Ar,fitView:jr,fitViewOptions:Pr,onNodesDelete:w,onEdgesDelete:E,onNodeDragStart:_,onNodeDrag:P,onNodeDragStop:j,onSelectionDrag:S,onSelectionDragStart:k,onSelectionDragStop:D,noPanClassName:mn,nodeOrigin:K,rfId:Ot,autoPanOnConnect:Lr,autoPanOnNodeDrag:$r,onError:Vr,connectionRadius:Tr,isValidConnection:Hr,nodeDragThreshold:Wr}),v.createElement(_i,{onSelectionChange:O}),hr,v.createElement(oi,{proOptions:Dr,position:Rr}),v.createElement(Bi,{rfId:Ot,disableKeyboardA11y:yn})))});Ho.displayName="ReactFlow";function Vo(t){return e=>{let[n,o]=(0,v.useState)(e);return[n,o,(0,v.useCallback)(i=>o(d=>t(i,d)),[])]}}var Vs=Vo(bo),Fs=Vo(Ui);function Ws(){return v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},v.createElement("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"}))}function Xs(){return v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},v.createElement("path",{d:"M0 0h32v4.2H0z"}))}function Ys(){return v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},v.createElement("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"}))}function Zs(){return v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},v.createElement("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"}))}function Ks(){return v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},v.createElement("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"}))}var et=({children:t,className:e,...n})=>v.createElement("button",{type:"button",className:he(["react-flow__controls-button",e]),...n},t);et.displayName="ControlButton";var Gs=t=>({isInteractive:t.nodesDraggable||t.nodesConnectable||t.elementsSelectable,minZoomReached:t.transform[2]<=t.minZoom,maxZoomReached:t.transform[2]>=t.maxZoom}),Fo=({style:t,showZoom:e=!0,showFitView:n=!0,showInteractive:o=!0,fitViewOptions:i,onZoomIn:d,onZoomOut:a,onFitView:l,onInteractiveChange:s,className:c,children:u,position:r="bottom-left"})=>{let g=le(),[h,p]=(0,v.useState)(!1),{isInteractive:f,minZoomReached:y,maxZoomReached:x}=ne(Gs,ue),{zoomIn:b,zoomOut:N,fitView:m}=lt();if((0,v.useEffect)(()=>{p(!0)},[]),!h)return null;let C=()=>{b(),d==null||d()},M=()=>{N(),a==null||a()},_=()=>{m(i),l==null||l()},P=()=>{g.setState({nodesDraggable:!f,nodesConnectable:!f,elementsSelectable:!f}),s==null||s(!f)};return v.createElement(pt,{className:he(["react-flow__controls",c]),position:r,style:t,"data-testid":"rf__controls"},e&&v.createElement(v.Fragment,null,v.createElement(et,{onClick:C,className:"react-flow__controls-zoomin",title:"zoom in","aria-label":"zoom in",disabled:x},v.createElement(Ws,null)),v.createElement(et,{onClick:M,className:"react-flow__controls-zoomout",title:"zoom out","aria-label":"zoom out",disabled:y},v.createElement(Xs,null))),n&&v.createElement(et,{className:"react-flow__controls-fitview",onClick:_,title:"fit view","aria-label":"fit view"},v.createElement(Ys,null)),o&&v.createElement(et,{className:"react-flow__controls-interactive",onClick:P,title:"toggle interactivity","aria-label":"toggle interactivity"},f?v.createElement(Ks,null):v.createElement(Zs,null)),u)};Fo.displayName="Controls";var Us=(0,v.memo)(Fo),ye;(function(t){t.Lines="lines",t.Dots="dots",t.Cross="cross"})(ye||(ye={}));function qs({color:t,dimensions:e,lineWidth:n}){return v.createElement("path",{stroke:t,strokeWidth:n,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`})}function Qs({color:t,radius:e}){return v.createElement("circle",{cx:e,cy:e,r:e,fill:t})}var Js={[ye.Dots]:"#91919a",[ye.Lines]:"#eee",[ye.Cross]:"#e2e2e2"},el={[ye.Dots]:1,[ye.Lines]:1,[ye.Cross]:6},tl=t=>({transform:t.transform,patternId:`pattern-${t.rfId}`});function Wo({id:t,variant:e=ye.Dots,gap:n=20,size:o,lineWidth:i=1,offset:d=2,color:a,style:l,className:s}){let c=(0,v.useRef)(null),{transform:u,patternId:r}=ne(tl,ue),g=a||Js[e],h=o||el[e],p=e===ye.Dots,f=e===ye.Cross,y=Array.isArray(n)?n:[n,n],x=[y[0]*u[2]||1,y[1]*u[2]||1],b=h*u[2],N=f?[b,b]:x,m=p?[b/d,b/d]:[N[0]/d,N[1]/d];return v.createElement("svg",{className:he(["react-flow__background",s]),style:{...l,position:"absolute",width:"100%",height:"100%",top:0,left:0},ref:c,"data-testid":"rf__background"},v.createElement("pattern",{id:r+t,x:u[0]%x[0],y:u[1]%x[1],width:x[0],height:x[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${m[0]},-${m[1]})`},p?v.createElement(Qs,{color:g,radius:b/d}):v.createElement(qs,{dimensions:N,color:g,lineWidth:i})),v.createElement("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${r+t})`}))}Wo.displayName="Background";var nl=(0,v.memo)(Wo),ol=De();function Xo(t){return Math.min(t*11+35,200)}const hn="outputs",gn="inputs";var rl=class{createEdge(t,e){return{animated:!0,markerEnd:{type:vt.ArrowClosed},id:`${t}-${e}`,style:{strokeWidth:2},source:t,sourceHandle:hn,targetHandle:gn,target:e}}createNode(t,e){let n=jt.get(e).code.trim().split(`
1
+ var Zr=Object.defineProperty;var Kr=(t,e,n)=>e in t?Zr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var ie=(t,e,n)=>Kr(t,typeof e!="symbol"?e+"":e,n);import{s as _t,t as q}from"./chunk-LvLJmgfZ.js";import{i as jt,l as bn,n as Gr,p as Pt,u as It}from"./useEvent-WUlsM6MC.js";import{t as Ur}from"./react-Bj1aDYRI.js";import{A as Rt,An as xn,D as qr,E as Qr,Ft as wn,In as Jr,Ln as ea,Mn as ta,N as na,T as oa,a as ra,dn as aa,er as En,f as ia,h as sa,jt as la}from"./cells-CigkzIKH.js";import{t as da}from"./react-dom-CSu739Rf.js";import{t as De}from"./compiler-runtime-B3qBwwSJ.js";import{t as ca}from"./jsx-runtime-CP2fAiZX.js";import{r as ua,t as rt}from"./button-BmOH9agK.js";import{t as Ve}from"./cn-d_A4rA-x.js";import"./dist-DUY6xZX8.js";import{r as ha}from"./once-DRC4SgqY.js";import"./cjs-CVt8hZ5L.js";import"./main-Cmx6WhDY.js";import"./useNonce-BY4jV7Yb.js";import{t as Dt}from"./createLucideIcon-BvP5LBIs.js";import{a as ga,i as fa,t as pa}from"./useDependencyPanelTab-CYOtvc7A.js";import{t as ma}from"./x-yqLqiq5Q.js";import{m as ya,p as va}from"./download-C35SWaj3.js";import{t as ba}from"./ellipsis-vertical-CqcBoxmi.js";import"./html-to-image-DkwDXZ7Q.js";import{t as xa}from"./settings-DD8FJvQ_.js";import{t as wa}from"./square-function-4zY5Dv0P.js";import{t as Ea}from"./workflow-CU6kAL_h.js";import"./dist-DfBASypd.js";import"./dist-Dq_iQ08e.js";import"./dist-BjtLy-VA.js";import"./dist-odxAaH5Z.js";import"./dist-51xFOPFs.js";import"./session-DnMOyddG.js";import"./Combination-tjZP3FH6.js";import{t as Sa}from"./tooltip-DOQlecCr.js";import"./purify.es-CPplrWRQ.js";import{i as Ca,l as Na,r as ka,s as Ma,t as Oa,u as Sn}from"./popover-Cvl9xY6R.js";import{n as _a}from"./useDebounce-BUC67G8E.js";import{i as ja,t as At}from"./cell-link-CZP6Kzmf.js";import{a as Pa,i as Ia,t as Ra}from"./focus-Bci_MkMH.js";import{t as Cn}from"./label-DmqkEXI4.js";import"./esm-BQUzYly2.js";import{b as Da}from"./timer-BEJidwwG.js";import{a as Bt,c as zt,i as Aa,l as Lt,n as Fe,o as Ba,r as za,s as Nn,t as La,u as ht}from"./src-lcGySDV2.js";import{r as $a}from"./name-cell-input-BVNjrC55.js";import"./multi-icon-OxLi6M3I.js";import{n as Ta,t as kn}from"./common-BsEiWPTg.js";import{r as Ha}from"./panel-context-ICWm_stq.js";var Va=Dt("arrow-right-from-line",[["path",{d:"M3 5v14",key:"1nt18q"}],["path",{d:"M21 12H7",key:"13ipq5"}],["path",{d:"m15 18 6-6-6-6",key:"6tx3qv"}]]),Fa=Dt("arrow-right-to-line",[["path",{d:"M17 12H3",key:"8awo09"}],["path",{d:"m11 18 6-6-6-6",key:"8c2y43"}],["path",{d:"M21 5v14",key:"nzette"}]]),Wa=Dt("map-pin",[["path",{d:"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0",key:"1r0f0z"}],["circle",{cx:"12",cy:"10",r:"3",key:"ilqhr7"}]]);function he(t){if(typeof t=="string"||typeof t=="number")return""+t;let e="";if(Array.isArray(t))for(let n=0,o;n<t.length;n++)(o=he(t[n]))!==""&&(e+=(e&&" ")+o);else for(let n in t)t[n]&&(e+=(e&&" ")+n);return e}var v=_t(Ur(),1),Xa=_t(va(),1),{useDebugValue:Ya}=v.default,{useSyncExternalStoreWithSelector:Za}=Xa.default,Ka=t=>t;function Mn(t,e=Ka,n){let o=Za(t.subscribe,t.getState,t.getServerState||t.getInitialState,e,n);return Ya(o),o}var On=(t,e)=>{let n=ya(t),o=(i,d=e)=>Mn(n,i,d);return Object.assign(o,n),o},Ga=(t,e)=>t?On(t,e):On;function ue(t,e){if(Object.is(t,e))return!0;if(typeof t!="object"||!t||typeof e!="object"||!e)return!1;if(t instanceof Map&&e instanceof Map){if(t.size!==e.size)return!1;for(let[o,i]of t)if(!Object.is(i,e.get(o)))return!1;return!0}if(t instanceof Set&&e instanceof Set){if(t.size!==e.size)return!1;for(let o of t)if(!e.has(o))return!1;return!0}let n=Object.keys(t);if(n.length!==Object.keys(e).length)return!1;for(let o of n)if(!Object.prototype.hasOwnProperty.call(e,o)||!Object.is(t[o],e[o]))return!1;return!0}var gt=t=>()=>t;function $t(t,{sourceEvent:e,subject:n,target:o,identifier:i,active:d,x:a,y:l,dx:s,dy:c,dispatch:u}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:d,enumerable:!0,configurable:!0},x:{value:a,enumerable:!0,configurable:!0},y:{value:l,enumerable:!0,configurable:!0},dx:{value:s,enumerable:!0,configurable:!0},dy:{value:c,enumerable:!0,configurable:!0},_:{value:u}})}$t.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};function Ua(t){return!t.ctrlKey&&!t.button}function qa(){return this.parentNode}function Qa(t,e){return e??{x:t.x,y:t.y}}function Ja(){return navigator.maxTouchPoints||"ontouchstart"in this}function ei(){var t=Ua,e=qa,n=Qa,o=Ja,i={},d=Da("start","drag","end"),a=0,l,s,c,u,r=0;function g(m){m.on("mousedown.drag",h).filter(o).on("touchstart.drag",y).on("touchmove.drag",x,Ba).on("touchend.drag touchcancel.drag",b).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function h(m,C){if(!(u||!t.call(this,m,C))){var M=N(this,e.call(this,m,C),m,C,"mouse");M&&(ht(m.view).on("mousemove.drag",p,Nn).on("mouseup.drag",f,Nn),za(m.view),zt(m),c=!1,l=m.clientX,s=m.clientY,M("start",m))}}function p(m){if(Bt(m),!c){var C=m.clientX-l,M=m.clientY-s;c=C*C+M*M>r}i.mouse("drag",m)}function f(m){ht(m.view).on("mousemove.drag mouseup.drag",null),Aa(m.view,c),Bt(m),i.mouse("end",m)}function y(m,C){if(t.call(this,m,C)){var M=m.changedTouches,_=e.call(this,m,C),P=M.length,j,w;for(j=0;j<P;++j)(w=N(this,_,m,C,M[j].identifier,M[j]))&&(zt(m),w("start",m,M[j]))}}function x(m){var C=m.changedTouches,M=C.length,_,P;for(_=0;_<M;++_)(P=i[C[_].identifier])&&(Bt(m),P("drag",m,C[_]))}function b(m){var C=m.changedTouches,M=C.length,_,P;for(u&&clearTimeout(u),u=setTimeout(function(){u=null},500),_=0;_<M;++_)(P=i[C[_].identifier])&&(zt(m),P("end",m,C[_]))}function N(m,C,M,_,P,j){var w=d.copy(),E=Lt(j||M,C),O,k,S;if((S=n.call(m,new $t("beforestart",{sourceEvent:M,target:g,identifier:P,active:a,x:E[0],y:E[1],dx:0,dy:0,dispatch:w}),_))!=null)return O=S.x-E[0]||0,k=S.y-E[1]||0,function D(L,$,W){var R=E,T;switch(L){case"start":i[P]=D,T=a++;break;case"end":delete i[P],--a;case"drag":E=Lt(W||$,C),T=a;break}w.call(L,m,new $t(L,{sourceEvent:$,subject:S,target:g,identifier:P,active:T,x:E[0]+O,y:E[1]+k,dx:E[0]-R[0],dy:E[1]-R[1],dispatch:w}),_)}}return g.filter=function(m){return arguments.length?(t=typeof m=="function"?m:gt(!!m),g):t},g.container=function(m){return arguments.length?(e=typeof m=="function"?m:gt(m),g):e},g.subject=function(m){return arguments.length?(n=typeof m=="function"?m:gt(m),g):n},g.touchable=function(m){return arguments.length?(o=typeof m=="function"?m:gt(!!m),g):o},g.on=function(){var m=d.on.apply(d,arguments);return m===d?g:m},g.clickDistance=function(m){return arguments.length?(r=(m=+m)*m,g):Math.sqrt(r)},g}da();var ft=(0,v.createContext)(null),ti=ft.Provider,xe={error001:()=>"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:t=>`Node type "${t}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:t=>`The old edge with id=${t} does not exist.`,error009:t=>`Marker type "${t}" doesn't exist.`,error008:(t,e)=>`Couldn't create edge for ${t?"target":"source"} handle id: "${t?e.targetHandle:e.sourceHandle}", edge id: ${e.id}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:t=>`Edge type "${t}" not found. Using fallback type "default".`,error012:t=>`Node with id "${t}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`},_n=xe.error001();function ne(t,e){let n=(0,v.useContext)(ft);if(n===null)throw Error(_n);return Mn(n,t,e)}var le=()=>{let t=(0,v.useContext)(ft);if(t===null)throw Error(_n);return(0,v.useMemo)(()=>({getState:t.getState,setState:t.setState,subscribe:t.subscribe,destroy:t.destroy}),[t])},ni=t=>t.userSelectionActive?"none":"all";function pt({position:t,children:e,className:n,style:o,...i}){let d=ne(ni),a=`${t}`.split("-");return v.createElement("div",{className:he(["react-flow__panel",n,...a]),style:{...o,pointerEvents:d},...i},e)}function oi({proOptions:t,position:e="bottom-right"}){return t!=null&&t.hideAttribution?null:v.createElement(pt,{position:e,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://reactflow.dev/pro"},v.createElement("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution"},"React Flow"))}var ri=(0,v.memo)(({x:t,y:e,label:n,labelStyle:o={},labelShowBg:i=!0,labelBgStyle:d={},labelBgPadding:a=[2,4],labelBgBorderRadius:l=2,children:s,className:c,...u})=>{let r=(0,v.useRef)(null),[g,h]=(0,v.useState)({x:0,y:0,width:0,height:0}),p=he(["react-flow__edge-textwrapper",c]);return(0,v.useEffect)(()=>{if(r.current){let f=r.current.getBBox();h({x:f.x,y:f.y,width:f.width,height:f.height})}},[n]),n===void 0||!n?null:v.createElement("g",{transform:`translate(${t-g.width/2} ${e-g.height/2})`,className:p,visibility:g.width?"visible":"hidden",...u},i&&v.createElement("rect",{width:g.width+2*a[0],x:-a[0],y:-a[1],height:g.height+2*a[1],className:"react-flow__edge-textbg",style:d,rx:l,ry:l}),v.createElement("text",{className:"react-flow__edge-text",y:g.height/2,dy:"0.3em",ref:r,style:o},n),s)}),Tt=t=>({width:t.offsetWidth,height:t.offsetHeight}),We=(t,e=0,n=1)=>Math.min(Math.max(t,e),n),Ht=(t={x:0,y:0},e)=>({x:We(t.x,e[0][0],e[1][0]),y:We(t.y,e[0][1],e[1][1])}),jn=(t,e,n)=>t<e?We(Math.abs(t-e),1,50)/50:t>n?-We(Math.abs(t-n),1,50)/50:0,Pn=(t,e)=>[jn(t.x,35,e.width-35)*20,jn(t.y,35,e.height-35)*20],In=t=>{var e;return((e=t.getRootNode)==null?void 0:e.call(t))||(window==null?void 0:window.document)},ai=(t,e)=>({x:Math.min(t.x,e.x),y:Math.min(t.y,e.y),x2:Math.max(t.x2,e.x2),y2:Math.max(t.y2,e.y2)}),Vt=({x:t,y:e,width:n,height:o})=>({x:t,y:e,x2:t+n,y2:e+o}),ii=({x:t,y:e,x2:n,y2:o})=>({x:t,y:e,width:n-t,height:o-e}),Rn=t=>({...t.positionAbsolute||{x:0,y:0},width:t.width||0,height:t.height||0}),Ft=(t,e)=>{let n=Math.max(0,Math.min(t.x+t.width,e.x+e.width)-Math.max(t.x,e.x)),o=Math.max(0,Math.min(t.y+t.height,e.y+e.height)-Math.max(t.y,e.y));return Math.ceil(n*o)},si=t=>me(t.width)&&me(t.height)&&me(t.x)&&me(t.y),me=t=>!isNaN(t)&&isFinite(t),re=Symbol.for("internals"),Dn=["Enter"," ","Escape"],li=(t,e)=>{},di=t=>"nativeEvent"in t;function Wt(t){var n,o,i;let e=((i=(o=(n=di(t)?t.nativeEvent:t).composedPath)==null?void 0:o.call(n))==null?void 0:i[0])||t.target;return["INPUT","SELECT","TEXTAREA"].includes(e==null?void 0:e.nodeName)||(e==null?void 0:e.hasAttribute("contenteditable"))||!!(e!=null&&e.closest(".nokey"))}var An=t=>"clientX"in t,Se=(t,e)=>{var d,a;let n=An(t),o=n?t.clientX:(d=t.touches)==null?void 0:d[0].clientX,i=n?t.clientY:(a=t.touches)==null?void 0:a[0].clientY;return{x:o-((e==null?void 0:e.left)??0),y:i-((e==null?void 0:e.top)??0)}},mt=()=>{var t;return typeof navigator<"u"&&((t=navigator==null?void 0:navigator.userAgent)==null?void 0:t.indexOf("Mac"))>=0},at=({id:t,path:e,labelX:n,labelY:o,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,markerEnd:r,markerStart:g,interactionWidth:h=20})=>v.createElement(v.Fragment,null,v.createElement("path",{id:t,style:u,d:e,fill:"none",className:"react-flow__edge-path",markerEnd:r,markerStart:g}),h&&v.createElement("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:h,className:"react-flow__edge-interaction"}),i&&me(n)&&me(o)?v.createElement(ri,{x:n,y:o,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c}):null);at.displayName="BaseEdge";function it(t,e,n){return n===void 0?n:o=>{let i=e().edges.find(d=>d.id===t);i&&n(o,{...i})}}function Bn({sourceX:t,sourceY:e,targetX:n,targetY:o}){let i=Math.abs(n-t)/2,d=n<t?n+i:n-i,a=Math.abs(o-e)/2;return[d,o<e?o+a:o-a,i,a]}function zn({sourceX:t,sourceY:e,targetX:n,targetY:o,sourceControlX:i,sourceControlY:d,targetControlX:a,targetControlY:l}){let s=t*.125+i*.375+a*.375+n*.125,c=e*.125+d*.375+l*.375+o*.125;return[s,c,Math.abs(s-t),Math.abs(c-e)]}var Xe;(function(t){t.Strict="strict",t.Loose="loose"})(Xe||(Xe={}));var Ye;(function(t){t.Free="free",t.Vertical="vertical",t.Horizontal="horizontal"})(Ye||(Ye={}));var yt;(function(t){t.Partial="partial",t.Full="full"})(yt||(yt={}));var Ae;(function(t){t.Bezier="default",t.Straight="straight",t.Step="step",t.SmoothStep="smoothstep",t.SimpleBezier="simplebezier"})(Ae||(Ae={}));var vt;(function(t){t.Arrow="arrow",t.ArrowClosed="arrowclosed"})(vt||(vt={}));var X;(function(t){t.Left="left",t.Top="top",t.Right="right",t.Bottom="bottom"})(X||(X={}));function Ln({pos:t,x1:e,y1:n,x2:o,y2:i}){return t===X.Left||t===X.Right?[.5*(e+o),n]:[e,.5*(n+i)]}function $n({sourceX:t,sourceY:e,sourcePosition:n=X.Bottom,targetX:o,targetY:i,targetPosition:d=X.Top}){let[a,l]=Ln({pos:n,x1:t,y1:e,x2:o,y2:i}),[s,c]=Ln({pos:d,x1:o,y1:i,x2:t,y2:e}),[u,r,g,h]=zn({sourceX:t,sourceY:e,targetX:o,targetY:i,sourceControlX:a,sourceControlY:l,targetControlX:s,targetControlY:c});return[`M${t},${e} C${a},${l} ${s},${c} ${o},${i}`,u,r,g,h]}var Xt=(0,v.memo)(({sourceX:t,sourceY:e,targetX:n,targetY:o,sourcePosition:i=X.Bottom,targetPosition:d=X.Top,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:r,style:g,markerEnd:h,markerStart:p,interactionWidth:f})=>{let[y,x,b]=$n({sourceX:t,sourceY:e,sourcePosition:i,targetX:n,targetY:o,targetPosition:d});return v.createElement(at,{path:y,labelX:x,labelY:b,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:r,style:g,markerEnd:h,markerStart:p,interactionWidth:f})});Xt.displayName="SimpleBezierEdge";var Tn={[X.Left]:{x:-1,y:0},[X.Right]:{x:1,y:0},[X.Top]:{x:0,y:-1},[X.Bottom]:{x:0,y:1}},ci=({source:t,sourcePosition:e=X.Bottom,target:n})=>e===X.Left||e===X.Right?t.x<n.x?{x:1,y:0}:{x:-1,y:0}:t.y<n.y?{x:0,y:1}:{x:0,y:-1},Hn=(t,e)=>Math.sqrt((e.x-t.x)**2+(e.y-t.y)**2);function ui({source:t,sourcePosition:e=X.Bottom,target:n,targetPosition:o=X.Top,center:i,offset:d}){let a=Tn[e],l=Tn[o],s={x:t.x+a.x*d,y:t.y+a.y*d},c={x:n.x+l.x*d,y:n.y+l.y*d},u=ci({source:s,sourcePosition:e,target:c}),r=u.x===0?"y":"x",g=u[r],h=[],p,f,y={x:0,y:0},x={x:0,y:0},[b,N,m,C]=Bn({sourceX:t.x,sourceY:t.y,targetX:n.x,targetY:n.y});if(a[r]*l[r]===-1){p=i.x??b,f=i.y??N;let M=[{x:p,y:s.y},{x:p,y:c.y}],_=[{x:s.x,y:f},{x:c.x,y:f}];h=a[r]===g?r==="x"?M:_:r==="x"?_:M}else{let M=[{x:s.x,y:c.y}],_=[{x:c.x,y:s.y}];if(h=r==="x"?a.x===g?_:M:a.y===g?M:_,e===o){let w=Math.abs(t[r]-n[r]);if(w<=d){let E=Math.min(d-1,d-w);a[r]===g?y[r]=(s[r]>t[r]?-1:1)*E:x[r]=(c[r]>n[r]?-1:1)*E}}if(e!==o){let w=r==="x"?"y":"x",E=a[r]===l[w],O=s[w]>c[w],k=s[w]<c[w];(a[r]===1&&(!E&&O||E&&k)||a[r]!==1&&(!E&&k||E&&O))&&(h=r==="x"?M:_)}let P={x:s.x+y.x,y:s.y+y.y},j={x:c.x+x.x,y:c.y+x.y};Math.max(Math.abs(P.x-h[0].x),Math.abs(j.x-h[0].x))>=Math.max(Math.abs(P.y-h[0].y),Math.abs(j.y-h[0].y))?(p=(P.x+j.x)/2,f=h[0].y):(p=h[0].x,f=(P.y+j.y)/2)}return[[t,{x:s.x+y.x,y:s.y+y.y},...h,{x:c.x+x.x,y:c.y+x.y},n],p,f,m,C]}function hi(t,e,n,o){let i=Math.min(Hn(t,e)/2,Hn(e,n)/2,o),{x:d,y:a}=e;if(t.x===d&&d===n.x||t.y===a&&a===n.y)return`L${d} ${a}`;if(t.y===a){let s=t.x<n.x?-1:1,c=t.y<n.y?1:-1;return`L ${d+i*s},${a}Q ${d},${a} ${d},${a+i*c}`}let l=t.x<n.x?1:-1;return`L ${d},${a+i*(t.y<n.y?-1:1)}Q ${d},${a} ${d+i*l},${a}`}function Yt({sourceX:t,sourceY:e,sourcePosition:n=X.Bottom,targetX:o,targetY:i,targetPosition:d=X.Top,borderRadius:a=5,centerX:l,centerY:s,offset:c=20}){let[u,r,g,h,p]=ui({source:{x:t,y:e},sourcePosition:n,target:{x:o,y:i},targetPosition:d,center:{x:l,y:s},offset:c});return[u.reduce((f,y,x)=>{let b="";return b=x>0&&x<u.length-1?hi(u[x-1],y,u[x+1],a):`${x===0?"M":"L"}${y.x} ${y.y}`,f+=b,f},""),r,g,h,p]}var bt=(0,v.memo)(({sourceX:t,sourceY:e,targetX:n,targetY:o,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,sourcePosition:r=X.Bottom,targetPosition:g=X.Top,markerEnd:h,markerStart:p,pathOptions:f,interactionWidth:y})=>{let[x,b,N]=Yt({sourceX:t,sourceY:e,sourcePosition:r,targetX:n,targetY:o,targetPosition:g,borderRadius:f==null?void 0:f.borderRadius,offset:f==null?void 0:f.offset});return v.createElement(at,{path:x,labelX:b,labelY:N,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,markerEnd:h,markerStart:p,interactionWidth:y})});bt.displayName="SmoothStepEdge";var Zt=(0,v.memo)(t=>{var e;return v.createElement(bt,{...t,pathOptions:(0,v.useMemo)(()=>{var n;return{borderRadius:0,offset:(n=t.pathOptions)==null?void 0:n.offset}},[(e=t.pathOptions)==null?void 0:e.offset])})});Zt.displayName="StepEdge";function gi({sourceX:t,sourceY:e,targetX:n,targetY:o}){let[i,d,a,l]=Bn({sourceX:t,sourceY:e,targetX:n,targetY:o});return[`M ${t},${e}L ${n},${o}`,i,d,a,l]}var Kt=(0,v.memo)(({sourceX:t,sourceY:e,targetX:n,targetY:o,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,markerEnd:r,markerStart:g,interactionWidth:h})=>{let[p,f,y]=gi({sourceX:t,sourceY:e,targetX:n,targetY:o});return v.createElement(at,{path:p,labelX:f,labelY:y,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,markerEnd:r,markerStart:g,interactionWidth:h})});Kt.displayName="StraightEdge";function xt(t,e){return t>=0?.5*t:e*25*Math.sqrt(-t)}function Vn({pos:t,x1:e,y1:n,x2:o,y2:i,c:d}){switch(t){case X.Left:return[e-xt(e-o,d),n];case X.Right:return[e+xt(o-e,d),n];case X.Top:return[e,n-xt(n-i,d)];case X.Bottom:return[e,n+xt(i-n,d)]}}function Fn({sourceX:t,sourceY:e,sourcePosition:n=X.Bottom,targetX:o,targetY:i,targetPosition:d=X.Top,curvature:a=.25}){let[l,s]=Vn({pos:n,x1:t,y1:e,x2:o,y2:i,c:a}),[c,u]=Vn({pos:d,x1:o,y1:i,x2:t,y2:e,c:a}),[r,g,h,p]=zn({sourceX:t,sourceY:e,targetX:o,targetY:i,sourceControlX:l,sourceControlY:s,targetControlX:c,targetControlY:u});return[`M${t},${e} C${l},${s} ${c},${u} ${o},${i}`,r,g,h,p]}var wt=(0,v.memo)(({sourceX:t,sourceY:e,targetX:n,targetY:o,sourcePosition:i=X.Bottom,targetPosition:d=X.Top,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:r,style:g,markerEnd:h,markerStart:p,pathOptions:f,interactionWidth:y})=>{let[x,b,N]=Fn({sourceX:t,sourceY:e,sourcePosition:i,targetX:n,targetY:o,targetPosition:d,curvature:f==null?void 0:f.curvature});return v.createElement(at,{path:x,labelX:b,labelY:N,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:r,style:g,markerEnd:h,markerStart:p,interactionWidth:y})});wt.displayName="BezierEdge";var Gt=(0,v.createContext)(null),fi=Gt.Provider;Gt.Consumer;var pi=()=>(0,v.useContext)(Gt),mi=t=>"id"in t&&"source"in t&&"target"in t,yi=({source:t,sourceHandle:e,target:n,targetHandle:o})=>`reactflow__edge-${t}${e||""}-${n}${o||""}`,Ut=(t,e)=>t===void 0?"":typeof t=="string"?t:`${e?`${e}__`:""}${Object.keys(t).sort().map(n=>`${n}=${t[n]}`).join("&")}`,vi=(t,e)=>e.some(n=>n.source===t.source&&n.target===t.target&&(n.sourceHandle===t.sourceHandle||!n.sourceHandle&&!t.sourceHandle)&&(n.targetHandle===t.targetHandle||!n.targetHandle&&!t.targetHandle)),bi=(t,e)=>{if(!t.source||!t.target)return xe.error006(),e;let n;return n=mi(t)?{...t}:{...t,id:yi(t)},vi(n,e)?e:e.concat(n)},qt=({x:t,y:e},[n,o,i],d,[a,l])=>{let s={x:(t-n)/i,y:(e-o)/i};return d?{x:a*Math.round(s.x/a),y:l*Math.round(s.y/l)}:s},Wn=({x:t,y:e},[n,o,i])=>({x:t*i+n,y:e*i+o}),Ze=(t,e=[0,0])=>{if(!t)return{x:0,y:0,positionAbsolute:{x:0,y:0}};let n=(t.width??0)*e[0],o=(t.height??0)*e[1],i={x:t.position.x-n,y:t.position.y-o};return{...i,positionAbsolute:t.positionAbsolute?{x:t.positionAbsolute.x-n,y:t.positionAbsolute.y-o}:i}},Qt=(t,e=[0,0])=>t.length===0?{x:0,y:0,width:0,height:0}:ii(t.reduce((n,o)=>{let{x:i,y:d}=Ze(o,e).positionAbsolute;return ai(n,Vt({x:i,y:d,width:o.width||0,height:o.height||0}))},{x:1/0,y:1/0,x2:-1/0,y2:-1/0})),Xn=(t,e,[n,o,i]=[0,0,1],d=!1,a=!1,l=[0,0])=>{let s={x:(e.x-n)/i,y:(e.y-o)/i,width:e.width/i,height:e.height/i},c=[];return t.forEach(u=>{let{width:r,height:g,selectable:h=!0,hidden:p=!1}=u;if(a&&!h||p)return!1;let{positionAbsolute:f}=Ze(u,l),y=Ft(s,{x:f.x,y:f.y,width:r||0,height:g||0}),x=r===void 0||g===void 0||r===null||g===null,b=d&&y>0,N=(r||0)*(g||0);(x||b||y>=N||u.dragging)&&c.push(u)}),c},Yn=(t,e)=>{let n=t.map(o=>o.id);return e.filter(o=>n.includes(o.source)||n.includes(o.target))},Zn=(t,e,n,o,i,d=.1)=>{let a=e/(t.width*(1+d)),l=n/(t.height*(1+d)),s=We(Math.min(a,l),o,i),c=t.x+t.width/2,u=t.y+t.height/2;return{x:e/2-c*s,y:n/2-u*s,zoom:s}},Be=(t,e=0)=>t.transition().duration(e);function Kn(t,e,n,o){return(e[n]||[]).reduce((i,d)=>{var a,l;return`${t.id}-${d.id}-${n}`!==o&&i.push({id:d.id||null,type:n,nodeId:t.id,x:(((a=t.positionAbsolute)==null?void 0:a.x)??0)+d.x+d.width/2,y:(((l=t.positionAbsolute)==null?void 0:l.y)??0)+d.y+d.height/2}),i},[])}function xi(t,e,n,o,i,d){let{x:a,y:l}=Se(t),s=e.elementsFromPoint(a,l).find(h=>h.classList.contains("react-flow__handle"));if(s){let h=s.getAttribute("data-nodeid");if(h){let p=Jt(void 0,s),f=s.getAttribute("data-handleid"),y=d({nodeId:h,id:f,type:p});if(y){let x=i.find(b=>b.nodeId===h&&b.type===p&&b.id===f);return{handle:{id:f,type:p,nodeId:h,x:(x==null?void 0:x.x)||n.x,y:(x==null?void 0:x.y)||n.y},validHandleResult:y}}}}let c=[],u=1/0;if(i.forEach(h=>{let p=Math.sqrt((h.x-n.x)**2+(h.y-n.y)**2);if(p<=o){let f=d(h);p<=u&&(p<u?c=[{handle:h,validHandleResult:f}]:p===u&&c.push({handle:h,validHandleResult:f}),u=p)}}),!c.length)return{handle:null,validHandleResult:Gn()};if(c.length===1)return c[0];let r=c.some(({validHandleResult:h})=>h.isValid),g=c.some(({handle:h})=>h.type==="target");return c.find(({handle:h,validHandleResult:p})=>g?h.type==="target":r?p.isValid:!0)||c[0]}var wi={source:null,target:null,sourceHandle:null,targetHandle:null},Gn=()=>({handleDomNode:null,isValid:!1,connection:wi,endHandle:null});function Un(t,e,n,o,i,d,a){let l=i==="target",s=a.querySelector(`.react-flow__handle[data-id="${t==null?void 0:t.nodeId}-${t==null?void 0:t.id}-${t==null?void 0:t.type}"]`),c={...Gn(),handleDomNode:s};if(s){let u=Jt(void 0,s),r=s.getAttribute("data-nodeid"),g=s.getAttribute("data-handleid"),h=s.classList.contains("connectable"),p=s.classList.contains("connectableend"),f={source:l?r:n,sourceHandle:l?g:o,target:l?n:r,targetHandle:l?o:g};c.connection=f,h&&p&&(e===Xe.Strict?l&&u==="source"||!l&&u==="target":r!==n||g!==o)&&(c.endHandle={nodeId:r,handleId:g,type:u},c.isValid=d(f))}return c}function Ei({nodes:t,nodeId:e,handleId:n,handleType:o}){return t.reduce((i,d)=>{if(d[re]){let{handleBounds:a}=d[re],l=[],s=[];a&&(l=Kn(d,a,"source",`${e}-${n}-${o}`),s=Kn(d,a,"target",`${e}-${n}-${o}`)),i.push(...l,...s)}return i},[])}function Jt(t,e){return t||(e!=null&&e.classList.contains("target")?"target":e!=null&&e.classList.contains("source")?"source":null)}function en(t){t==null||t.classList.remove("valid","connecting","react-flow__handle-valid","react-flow__handle-connecting")}function Si(t,e){let n=null;return e?n="valid":t&&!e&&(n="invalid"),n}function qn({event:t,handleId:e,nodeId:n,onConnect:o,isTarget:i,getState:d,setState:a,isValidConnection:l,edgeUpdaterType:s,onReconnectEnd:c}){let u=In(t.target),{connectionMode:r,domNode:g,autoPanOnConnect:h,connectionRadius:p,onConnectStart:f,panBy:y,getNodes:x,cancelConnection:b}=d(),N=0,m,{x:C,y:M}=Se(t),_=u==null?void 0:u.elementFromPoint(C,M),P=Jt(s,_),j=g==null?void 0:g.getBoundingClientRect();if(!j||!P)return;let w,E=Se(t,j),O=!1,k=null,S=!1,D=null,L=Ei({nodes:x(),nodeId:n,handleId:e,handleType:P}),$=()=>{if(!h)return;let[T,V]=Pn(E,j);y({x:T,y:V}),N=requestAnimationFrame($)};a({connectionPosition:E,connectionStatus:null,connectionNodeId:n,connectionHandleId:e,connectionHandleType:P,connectionStartHandle:{nodeId:n,handleId:e,type:P},connectionEndHandle:null}),f==null||f(t,{nodeId:n,handleId:e,handleType:P});function W(T){let{transform:V}=d();E=Se(T,j);let{handle:F,validHandleResult:Z}=xi(T,u,qt(E,V,!1,[1,1]),p,L,U=>Un(U,r,n,e,i?"target":"source",l,u));if(m=F,O||(O=($(),!0)),D=Z.handleDomNode,k=Z.connection,S=Z.isValid,a({connectionPosition:m&&S?Wn({x:m.x,y:m.y},V):E,connectionStatus:Si(!!m,S),connectionEndHandle:Z.endHandle}),!m&&!S&&!D)return en(w);k.source!==k.target&&D&&(en(w),w=D,D.classList.add("connecting","react-flow__handle-connecting"),D.classList.toggle("valid",S),D.classList.toggle("react-flow__handle-valid",S))}function R(T){var V,F;(m||D)&&k&&S&&(o==null||o(k)),(F=(V=d()).onConnectEnd)==null||F.call(V,T),s&&(c==null||c(T)),en(w),b(),cancelAnimationFrame(N),O=!1,S=!1,k=null,D=null,u.removeEventListener("mousemove",W),u.removeEventListener("mouseup",R),u.removeEventListener("touchmove",W),u.removeEventListener("touchend",R)}u.addEventListener("mousemove",W),u.addEventListener("mouseup",R),u.addEventListener("touchmove",W),u.addEventListener("touchend",R)}var Qn=()=>!0,Ci=t=>({connectionStartHandle:t.connectionStartHandle,connectOnClick:t.connectOnClick,noPanClassName:t.noPanClassName}),Ni=(t,e,n)=>o=>{let{connectionStartHandle:i,connectionEndHandle:d,connectionClickStartHandle:a}=o;return{connecting:(i==null?void 0:i.nodeId)===t&&(i==null?void 0:i.handleId)===e&&(i==null?void 0:i.type)===n||(d==null?void 0:d.nodeId)===t&&(d==null?void 0:d.handleId)===e&&(d==null?void 0:d.type)===n,clickConnecting:(a==null?void 0:a.nodeId)===t&&(a==null?void 0:a.handleId)===e&&(a==null?void 0:a.type)===n}},Jn=(0,v.forwardRef)(({type:t="source",position:e=X.Top,isValidConnection:n,isConnectable:o=!0,isConnectableStart:i=!0,isConnectableEnd:d=!0,id:a,onConnect:l,children:s,className:c,onMouseDown:u,onTouchStart:r,...g},h)=>{var j,w;let p=a||null,f=t==="target",y=le(),x=pi(),{connectOnClick:b,noPanClassName:N}=ne(Ci,ue),{connecting:m,clickConnecting:C}=ne(Ni(x,p,t),ue);x||((w=(j=y.getState()).onError)==null||w.call(j,"010",xe.error010()));let M=E=>{let{defaultEdgeOptions:O,onConnect:k,hasDefaultEdges:S}=y.getState(),D={...O,...E};if(S){let{edges:L,setEdges:$}=y.getState();$(bi(D,L))}k==null||k(D),l==null||l(D)},_=E=>{if(!x)return;let O=An(E);i&&(O&&E.button===0||!O)&&qn({event:E,handleId:p,nodeId:x,onConnect:M,isTarget:f,getState:y.getState,setState:y.setState,isValidConnection:n||y.getState().isValidConnection||Qn}),O?u==null||u(E):r==null||r(E)},P=E=>{let{onClickConnectStart:O,onClickConnectEnd:k,connectionClickStartHandle:S,connectionMode:D,isValidConnection:L}=y.getState();if(!x||!S&&!i)return;if(!S){O==null||O(E,{nodeId:x,handleId:p,handleType:t}),y.setState({connectionClickStartHandle:{nodeId:x,type:t,handleId:p}});return}let $=In(E.target),W=n||L||Qn,{connection:R,isValid:T}=Un({nodeId:x,id:p,type:t},D,S.nodeId,S.handleId||null,S.type,W,$);T&&M(R),k==null||k(E),y.setState({connectionClickStartHandle:null})};return v.createElement("div",{"data-handleid":p,"data-nodeid":x,"data-handlepos":e,"data-id":`${x}-${p}-${t}`,className:he(["react-flow__handle",`react-flow__handle-${e}`,"nodrag",N,c,{source:!f,target:f,connectable:o,connectablestart:i,connectableend:d,connecting:C,connectionindicator:o&&(i&&!m||d&&m)}]),onMouseDown:_,onTouchStart:_,onClick:b?P:void 0,ref:h,...g},s)});Jn.displayName="Handle";var Ce=(0,v.memo)(Jn),eo=({data:t,isConnectable:e,targetPosition:n=X.Top,sourcePosition:o=X.Bottom})=>v.createElement(v.Fragment,null,v.createElement(Ce,{type:"target",position:n,isConnectable:e}),t==null?void 0:t.label,v.createElement(Ce,{type:"source",position:o,isConnectable:e}));eo.displayName="DefaultNode";var tn=(0,v.memo)(eo),to=({data:t,isConnectable:e,sourcePosition:n=X.Bottom})=>v.createElement(v.Fragment,null,t==null?void 0:t.label,v.createElement(Ce,{type:"source",position:n,isConnectable:e}));to.displayName="InputNode";var no=(0,v.memo)(to),oo=({data:t,isConnectable:e,targetPosition:n=X.Top})=>v.createElement(v.Fragment,null,v.createElement(Ce,{type:"target",position:n,isConnectable:e}),t==null?void 0:t.label);oo.displayName="OutputNode";var ro=(0,v.memo)(oo),nn=()=>null;nn.displayName="GroupNode";var ki=t=>({selectedNodes:t.getNodes().filter(e=>e.selected),selectedEdges:t.edges.filter(e=>e.selected).map(e=>({...e}))}),Et=t=>t.id;function Mi(t,e){return ue(t.selectedNodes.map(Et),e.selectedNodes.map(Et))&&ue(t.selectedEdges.map(Et),e.selectedEdges.map(Et))}var ao=(0,v.memo)(({onSelectionChange:t})=>{let e=le(),{selectedNodes:n,selectedEdges:o}=ne(ki,Mi);return(0,v.useEffect)(()=>{let i={nodes:n,edges:o};t==null||t(i),e.getState().onSelectionChange.forEach(d=>d(i))},[n,o,t]),null});ao.displayName="SelectionListener";var Oi=t=>!!t.onSelectionChange;function _i({onSelectionChange:t}){let e=ne(Oi);return t||e?v.createElement(ao,{onSelectionChange:t}):null}var ji=t=>({setNodes:t.setNodes,setEdges:t.setEdges,setDefaultNodesAndEdges:t.setDefaultNodesAndEdges,setMinZoom:t.setMinZoom,setMaxZoom:t.setMaxZoom,setTranslateExtent:t.setTranslateExtent,setNodeExtent:t.setNodeExtent,reset:t.reset});function Ke(t,e){(0,v.useEffect)(()=>{t!==void 0&&e(t)},[t])}function Q(t,e,n){(0,v.useEffect)(()=>{e!==void 0&&n({[t]:e})},[e])}var Pi=({nodes:t,edges:e,defaultNodes:n,defaultEdges:o,onConnect:i,onConnectStart:d,onConnectEnd:a,onClickConnectStart:l,onClickConnectEnd:s,nodesDraggable:c,nodesConnectable:u,nodesFocusable:r,edgesFocusable:g,edgesUpdatable:h,elevateNodesOnSelect:p,minZoom:f,maxZoom:y,nodeExtent:x,onNodesChange:b,onEdgesChange:N,elementsSelectable:m,connectionMode:C,snapGrid:M,snapToGrid:_,translateExtent:P,connectOnClick:j,defaultEdgeOptions:w,fitView:E,fitViewOptions:O,onNodesDelete:k,onEdgesDelete:S,onNodeDrag:D,onNodeDragStart:L,onNodeDragStop:$,onSelectionDrag:W,onSelectionDragStart:R,onSelectionDragStop:T,noPanClassName:V,nodeOrigin:F,rfId:Z,autoPanOnConnect:U,autoPanOnNodeDrag:I,onError:A,connectionRadius:z,isValidConnection:H,nodeDragThreshold:Y})=>{let{setNodes:G,setEdges:ee,setDefaultNodesAndEdges:ae,setMinZoom:ge,setMaxZoom:oe,setTranslateExtent:J,setNodeExtent:de,reset:te}=ne(ji,ue),K=le();return(0,v.useEffect)(()=>{let fe=o==null?void 0:o.map(Me=>({...Me,...w}));return ae(n,fe),()=>{te()}},[]),Q("defaultEdgeOptions",w,K.setState),Q("connectionMode",C,K.setState),Q("onConnect",i,K.setState),Q("onConnectStart",d,K.setState),Q("onConnectEnd",a,K.setState),Q("onClickConnectStart",l,K.setState),Q("onClickConnectEnd",s,K.setState),Q("nodesDraggable",c,K.setState),Q("nodesConnectable",u,K.setState),Q("nodesFocusable",r,K.setState),Q("edgesFocusable",g,K.setState),Q("edgesUpdatable",h,K.setState),Q("elementsSelectable",m,K.setState),Q("elevateNodesOnSelect",p,K.setState),Q("snapToGrid",_,K.setState),Q("snapGrid",M,K.setState),Q("onNodesChange",b,K.setState),Q("onEdgesChange",N,K.setState),Q("connectOnClick",j,K.setState),Q("fitViewOnInit",E,K.setState),Q("fitViewOnInitOptions",O,K.setState),Q("onNodesDelete",k,K.setState),Q("onEdgesDelete",S,K.setState),Q("onNodeDrag",D,K.setState),Q("onNodeDragStart",L,K.setState),Q("onNodeDragStop",$,K.setState),Q("onSelectionDrag",W,K.setState),Q("onSelectionDragStart",R,K.setState),Q("onSelectionDragStop",T,K.setState),Q("noPanClassName",V,K.setState),Q("nodeOrigin",F,K.setState),Q("rfId",Z,K.setState),Q("autoPanOnConnect",U,K.setState),Q("autoPanOnNodeDrag",I,K.setState),Q("onError",A,K.setState),Q("connectionRadius",z,K.setState),Q("isValidConnection",H,K.setState),Q("nodeDragThreshold",Y,K.setState),Ke(t,G),Ke(e,ee),Ke(f,ge),Ke(y,oe),Ke(P,J),Ke(x,de),null},io={display:"none"},Ii={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},so="react-flow__node-desc",lo="react-flow__edge-desc",Ri="react-flow__aria-live",Di=t=>t.ariaLiveMessage;function Ai({rfId:t}){let e=ne(Di);return v.createElement("div",{id:`${Ri}-${t}`,"aria-live":"assertive","aria-atomic":"true",style:Ii},e)}function Bi({rfId:t,disableKeyboardA11y:e}){return v.createElement(v.Fragment,null,v.createElement("div",{id:`${so}-${t}`,style:io},"Press enter or space to select a node.",!e&&"You can then use the arrow keys to move the node around."," Press delete to remove it and escape to cancel."," "),v.createElement("div",{id:`${lo}-${t}`,style:io},"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel."),!e&&v.createElement(Ai,{rfId:t}))}var st=(t=null,e={actInsideInputWithModifier:!0})=>{let[n,o]=(0,v.useState)(!1),i=(0,v.useRef)(!1),d=(0,v.useRef)(new Set([])),[a,l]=(0,v.useMemo)(()=>{if(t!==null){let s=(Array.isArray(t)?t:[t]).filter(c=>typeof c=="string").map(c=>c.split("+"));return[s,s.reduce((c,u)=>c.concat(...u),[])]}return[[],[]]},[t]);return(0,v.useEffect)(()=>{let s=typeof document<"u"?document:null,c=(e==null?void 0:e.target)||s;if(t!==null){let u=h=>{if(i.current=h.ctrlKey||h.metaKey||h.shiftKey,(!i.current||i.current&&!e.actInsideInputWithModifier)&&Wt(h))return!1;let p=uo(h.code,l);d.current.add(h[p]),co(a,d.current,!1)&&(h.preventDefault(),o(!0))},r=h=>{if((!i.current||i.current&&!e.actInsideInputWithModifier)&&Wt(h))return!1;let p=uo(h.code,l);co(a,d.current,!0)?(o(!1),d.current.clear()):d.current.delete(h[p]),h.key==="Meta"&&d.current.clear(),i.current=!1},g=()=>{d.current.clear(),o(!1)};return c==null||c.addEventListener("keydown",u),c==null||c.addEventListener("keyup",r),window.addEventListener("blur",g),()=>{c==null||c.removeEventListener("keydown",u),c==null||c.removeEventListener("keyup",r),window.removeEventListener("blur",g)}}},[t,o]),n};function co(t,e,n){return t.filter(o=>n||o.length===e.size).some(o=>o.every(i=>e.has(i)))}function uo(t,e){return e.includes(t)?"code":"key"}function ho(t,e,n,o){var l,s;let i=t.parentNode||t.parentId;if(!i)return n;let d=e.get(i),a=Ze(d,o);return ho(d,e,{x:(n.x??0)+a.x,y:(n.y??0)+a.y,z:(((l=d[re])==null?void 0:l.z)??0)>(n.z??0)?((s=d[re])==null?void 0:s.z)??0:n.z??0},o)}function go(t,e,n){t.forEach(o=>{var d;let i=o.parentNode||o.parentId;if(i&&!t.has(i))throw Error(`Parent node ${i} not found`);if(i||n!=null&&n[o.id]){let{x:a,y:l,z:s}=ho(o,t,{...o.position,z:((d=o[re])==null?void 0:d.z)??0},e);o.positionAbsolute={x:a,y:l},o[re].z=s,n!=null&&n[o.id]&&(o[re].isParent=!0)}})}function on(t,e,n,o){let i=new Map,d={},a=o?1e3:0;return t.forEach(l=>{var h;let s=(me(l.zIndex)?l.zIndex:0)+(l.selected?a:0),c=e.get(l.id),u={...l,positionAbsolute:{x:l.position.x,y:l.position.y}},r=l.parentNode||l.parentId;r&&(d[r]=!0);let g=(c==null?void 0:c.type)&&(c==null?void 0:c.type)!==l.type;Object.defineProperty(u,re,{enumerable:!1,value:{handleBounds:g||(h=c==null?void 0:c[re])==null?void 0:h.handleBounds,z:s}}),i.set(l.id,u)}),go(i,n,d),i}function fo(t,e={}){let{getNodes:n,width:o,height:i,minZoom:d,maxZoom:a,d3Zoom:l,d3Selection:s,fitViewOnInitDone:c,fitViewOnInit:u,nodeOrigin:r}=t(),g=e.initial&&!c&&u;if(l&&s&&(g||!e.initial)){let h=n().filter(f=>{var x;let y=e.includeHiddenNodes?f.width&&f.height:!f.hidden;return(x=e.nodes)!=null&&x.length?y&&e.nodes.some(b=>b.id===f.id):y}),p=h.every(f=>f.width&&f.height);if(h.length>0&&p){let{x:f,y,zoom:x}=Zn(Qt(h,r),o,i,e.minZoom??d,e.maxZoom??a,e.padding??.1),b=Fe.translate(f,y).scale(x);return typeof e.duration=="number"&&e.duration>0?l.transform(Be(s,e.duration),b):l.transform(s,b),!0}}return!1}function zi(t,e){return t.forEach(n=>{let o=e.get(n.id);o&&e.set(o.id,{...o,[re]:o[re],selected:n.selected})}),new Map(e)}function Li(t,e){return e.map(n=>{let o=t.find(i=>i.id===n.id);return o&&(n.selected=o.selected),n})}function St({changedNodes:t,changedEdges:e,get:n,set:o}){let{nodeInternals:i,edges:d,onNodesChange:a,onEdgesChange:l,hasDefaultNodes:s,hasDefaultEdges:c}=n();t!=null&&t.length&&(s&&o({nodeInternals:zi(t,i)}),a==null||a(t)),e!=null&&e.length&&(c&&o({edges:Li(e,d)}),l==null||l(e))}var Ge=()=>{},$i={zoomIn:Ge,zoomOut:Ge,zoomTo:Ge,getZoom:()=>1,setViewport:Ge,getViewport:()=>({x:0,y:0,zoom:1}),fitView:()=>!1,setCenter:Ge,fitBounds:Ge,project:t=>t,screenToFlowPosition:t=>t,flowToScreenPosition:t=>t,viewportInitialized:!1},Ti=t=>({d3Zoom:t.d3Zoom,d3Selection:t.d3Selection}),Hi=()=>{let t=le(),{d3Zoom:e,d3Selection:n}=ne(Ti,ue);return(0,v.useMemo)(()=>n&&e?{zoomIn:o=>e.scaleBy(Be(n,o==null?void 0:o.duration),1.2),zoomOut:o=>e.scaleBy(Be(n,o==null?void 0:o.duration),1/1.2),zoomTo:(o,i)=>e.scaleTo(Be(n,i==null?void 0:i.duration),o),getZoom:()=>t.getState().transform[2],setViewport:(o,i)=>{let[d,a,l]=t.getState().transform,s=Fe.translate(o.x??d,o.y??a).scale(o.zoom??l);e.transform(Be(n,i==null?void 0:i.duration),s)},getViewport:()=>{let[o,i,d]=t.getState().transform;return{x:o,y:i,zoom:d}},fitView:o=>fo(t.getState,o),setCenter:(o,i,d)=>{let{width:a,height:l,maxZoom:s}=t.getState(),c=(d==null?void 0:d.zoom)===void 0?s:d.zoom,u=a/2-o*c,r=l/2-i*c,g=Fe.translate(u,r).scale(c);e.transform(Be(n,d==null?void 0:d.duration),g)},fitBounds:(o,i)=>{let{width:d,height:a,minZoom:l,maxZoom:s}=t.getState(),{x:c,y:u,zoom:r}=Zn(o,d,a,l,s,(i==null?void 0:i.padding)??.1),g=Fe.translate(c,u).scale(r);e.transform(Be(n,i==null?void 0:i.duration),g)},project:o=>{let{transform:i,snapToGrid:d,snapGrid:a}=t.getState();return console.warn("[DEPRECATED] `project` is deprecated. Instead use `screenToFlowPosition`. There is no need to subtract the react flow bounds anymore! https://reactflow.dev/api-reference/types/react-flow-instance#screen-to-flow-position"),qt(o,i,d,a)},screenToFlowPosition:o=>{let{transform:i,snapToGrid:d,snapGrid:a,domNode:l}=t.getState();if(!l)return o;let{x:s,y:c}=l.getBoundingClientRect();return qt({x:o.x-s,y:o.y-c},i,d,a)},flowToScreenPosition:o=>{let{transform:i,domNode:d}=t.getState();if(!d)return o;let{x:a,y:l}=d.getBoundingClientRect(),s=Wn(o,i);return{x:s.x+a,y:s.y+l}},viewportInitialized:!0}:$i,[e,n])};function lt(){let t=Hi(),e=le(),n=(0,v.useCallback)(()=>e.getState().getNodes().map(f=>({...f})),[]),o=(0,v.useCallback)(f=>e.getState().nodeInternals.get(f),[]),i=(0,v.useCallback)(()=>{let{edges:f=[]}=e.getState();return f.map(y=>({...y}))},[]),d=(0,v.useCallback)(f=>{let{edges:y=[]}=e.getState();return y.find(x=>x.id===f)},[]),a=(0,v.useCallback)(f=>{let{getNodes:y,setNodes:x,hasDefaultNodes:b,onNodesChange:N}=e.getState(),m=y(),C=typeof f=="function"?f(m):f;b?x(C):N&&N(C.length===0?m.map(M=>({type:"remove",id:M.id})):C.map(M=>({item:M,type:"reset"})))},[]),l=(0,v.useCallback)(f=>{let{edges:y=[],setEdges:x,hasDefaultEdges:b,onEdgesChange:N}=e.getState(),m=typeof f=="function"?f(y):f;b?x(m):N&&N(m.length===0?y.map(C=>({type:"remove",id:C.id})):m.map(C=>({item:C,type:"reset"})))},[]),s=(0,v.useCallback)(f=>{let y=Array.isArray(f)?f:[f],{getNodes:x,setNodes:b,hasDefaultNodes:N,onNodesChange:m}=e.getState();N?b([...x(),...y]):m&&m(y.map(C=>({item:C,type:"add"})))},[]),c=(0,v.useCallback)(f=>{let y=Array.isArray(f)?f:[f],{edges:x=[],setEdges:b,hasDefaultEdges:N,onEdgesChange:m}=e.getState();N?b([...x,...y]):m&&m(y.map(C=>({item:C,type:"add"})))},[]),u=(0,v.useCallback)(()=>{let{getNodes:f,edges:y=[],transform:x}=e.getState(),[b,N,m]=x;return{nodes:f().map(C=>({...C})),edges:y.map(C=>({...C})),viewport:{x:b,y:N,zoom:m}}},[]),r=(0,v.useCallback)(({nodes:f,edges:y})=>{let{nodeInternals:x,getNodes:b,edges:N,hasDefaultNodes:m,hasDefaultEdges:C,onNodesDelete:M,onEdgesDelete:_,onNodesChange:P,onEdgesChange:j}=e.getState(),w=(f||[]).map(D=>D.id),E=(y||[]).map(D=>D.id),O=b().reduce((D,L)=>{let $=L.parentNode||L.parentId,W=!w.includes(L.id)&&$&&D.find(R=>R.id===$);return(typeof L.deletable!="boolean"||L.deletable)&&(w.includes(L.id)||W)&&D.push(L),D},[]),k=N.filter(D=>typeof D.deletable=="boolean"?D.deletable:!0),S=k.filter(D=>E.includes(D.id));if(O||S){let D=Yn(O,k),L=[...S,...D],$=L.reduce((W,R)=>(W.includes(R.id)||W.push(R.id),W),[]);(C||m)&&(C&&e.setState({edges:N.filter(W=>!$.includes(W.id))}),m&&(O.forEach(W=>{x.delete(W.id)}),e.setState({nodeInternals:new Map(x)}))),$.length>0&&(_==null||_(L),j&&j($.map(W=>({id:W,type:"remove"})))),O.length>0&&(M==null||M(O),P&&P(O.map(W=>({id:W.id,type:"remove"}))))}},[]),g=(0,v.useCallback)(f=>{let y=si(f),x=y?null:e.getState().nodeInternals.get(f.id);return!y&&!x?[null,null,y]:[y?f:Rn(x),x,y]},[]),h=(0,v.useCallback)((f,y=!0,x)=>{let[b,N,m]=g(f);return b?(x||e.getState().getNodes()).filter(C=>{if(!m&&(C.id===N.id||!C.positionAbsolute))return!1;let M=Ft(Rn(C),b);return y&&M>0||M>=b.width*b.height}):[]},[]),p=(0,v.useCallback)((f,y,x=!0)=>{let[b]=g(f);if(!b)return!1;let N=Ft(b,y);return x&&N>0||N>=b.width*b.height},[]);return(0,v.useMemo)(()=>({...t,getNodes:n,getNode:o,getEdges:i,getEdge:d,setNodes:a,setEdges:l,addNodes:s,addEdges:c,toObject:u,deleteElements:r,getIntersectingNodes:h,isNodeIntersecting:p}),[t,n,o,i,d,a,l,s,c,u,r,h,p])}var Vi={actInsideInputWithModifier:!1},Fi=({deleteKeyCode:t,multiSelectionKeyCode:e})=>{let n=le(),{deleteElements:o}=lt(),i=st(t,Vi),d=st(e);(0,v.useEffect)(()=>{if(i){let{edges:a,getNodes:l}=n.getState();o({nodes:l().filter(s=>s.selected),edges:a.filter(s=>s.selected)}),n.setState({nodesSelectionActive:!1})}},[i]),(0,v.useEffect)(()=>{n.setState({multiSelectionActive:d})},[d])};function Wi(t){let e=le();(0,v.useEffect)(()=>{let n,o=()=>{var d,a;if(!t.current)return;let i=Tt(t.current);(i.height===0||i.width===0)&&((a=(d=e.getState()).onError)==null||a.call(d,"004",xe.error004())),e.setState({width:i.width||500,height:i.height||500})};return o(),window.addEventListener("resize",o),t.current&&(n=new ResizeObserver(()=>o()),n.observe(t.current)),()=>{window.removeEventListener("resize",o),n&&t.current&&n.unobserve(t.current)}},[])}var rn={position:"absolute",width:"100%",height:"100%",top:0,left:0},Xi=(t,e)=>t.x!==e.x||t.y!==e.y||t.zoom!==e.k,Ct=t=>({x:t.x,y:t.y,zoom:t.k}),Ue=(t,e)=>t.target.closest(`.${e}`),po=(t,e)=>e===2&&Array.isArray(t)&&t.includes(2),mo=t=>{let e=t.ctrlKey&&mt()?10:1;return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*e},Yi=t=>({d3Zoom:t.d3Zoom,d3Selection:t.d3Selection,d3ZoomHandler:t.d3ZoomHandler,userSelectionActive:t.userSelectionActive}),Zi=({onMove:t,onMoveStart:e,onMoveEnd:n,onPaneContextMenu:o,zoomOnScroll:i=!0,zoomOnPinch:d=!0,panOnScroll:a=!1,panOnScrollSpeed:l=.5,panOnScrollMode:s=Ye.Free,zoomOnDoubleClick:c=!0,elementsSelectable:u,panOnDrag:r=!0,defaultViewport:g,translateExtent:h,minZoom:p,maxZoom:f,zoomActivationKeyCode:y,preventScrolling:x=!0,children:b,noWheelClassName:N,noPanClassName:m})=>{let C=(0,v.useRef)(),M=le(),_=(0,v.useRef)(!1),P=(0,v.useRef)(!1),j=(0,v.useRef)(null),w=(0,v.useRef)({x:0,y:0,zoom:0}),{d3Zoom:E,d3Selection:O,d3ZoomHandler:k,userSelectionActive:S}=ne(Yi,ue),D=st(y),L=(0,v.useRef)(0),$=(0,v.useRef)(!1),W=(0,v.useRef)();return Wi(j),(0,v.useEffect)(()=>{if(j.current){let R=j.current.getBoundingClientRect(),T=La().scaleExtent([p,f]).translateExtent(h),V=ht(j.current).call(T),F=Fe.translate(g.x,g.y).scale(We(g.zoom,p,f)),Z=[[0,0],[R.width,R.height]],U=T.constrain()(F,Z,h);T.transform(V,U),T.wheelDelta(mo),M.setState({d3Zoom:T,d3Selection:V,d3ZoomHandler:V.on("wheel.zoom"),transform:[U.x,U.y,U.k],domNode:j.current.closest(".react-flow")})}},[]),(0,v.useEffect)(()=>{O&&E&&(a&&!D&&!S?O.on("wheel.zoom",R=>{if(Ue(R,N))return!1;R.preventDefault(),R.stopImmediatePropagation();let T=O.property("__zoom").k||1;if(R.ctrlKey&&d){let H=Lt(R),Y=T*2**mo(R);E.scaleTo(O,Y,H,R);return}let V=R.deltaMode===1?20:1,F=s===Ye.Vertical?0:R.deltaX*V,Z=s===Ye.Horizontal?0:R.deltaY*V;!mt()&&R.shiftKey&&s!==Ye.Vertical&&(F=R.deltaY*V,Z=0),E.translateBy(O,-(F/T)*l,-(Z/T)*l,{internal:!0});let U=Ct(O.property("__zoom")),{onViewportChangeStart:I,onViewportChange:A,onViewportChangeEnd:z}=M.getState();clearTimeout(W.current),$.current||($.current=!0,e==null||e(R,U),I==null||I(U)),$.current&&(t==null||t(R,U),A==null||A(U),W.current=setTimeout(()=>{n==null||n(R,U),z==null||z(U),$.current=!1},150))},{passive:!1}):k!==void 0&&O.on("wheel.zoom",function(R,T){if(!x&&R.type==="wheel"&&!R.ctrlKey||Ue(R,N))return null;R.preventDefault(),k.call(this,R,T)},{passive:!1}))},[S,a,s,O,E,k,D,d,x,N,e,t,n]),(0,v.useEffect)(()=>{E&&E.on("start",R=>{var F,Z;if(!R.sourceEvent||R.sourceEvent.internal)return null;L.current=(F=R.sourceEvent)==null?void 0:F.button;let{onViewportChangeStart:T}=M.getState(),V=Ct(R.transform);_.current=!0,w.current=V,((Z=R.sourceEvent)==null?void 0:Z.type)==="mousedown"&&M.setState({paneDragging:!0}),T==null||T(V),e==null||e(R.sourceEvent,V)})},[E,e]),(0,v.useEffect)(()=>{E&&(S&&!_.current?E.on("zoom",null):S||E.on("zoom",R=>{var V;let{onViewportChange:T}=M.getState();if(M.setState({transform:[R.transform.x,R.transform.y,R.transform.k]}),P.current=!!(o&&po(r,L.current??0)),(t||T)&&!((V=R.sourceEvent)!=null&&V.internal)){let F=Ct(R.transform);T==null||T(F),t==null||t(R.sourceEvent,F)}}))},[S,E,t,r,o]),(0,v.useEffect)(()=>{E&&E.on("end",R=>{if(!R.sourceEvent||R.sourceEvent.internal)return null;let{onViewportChangeEnd:T}=M.getState();if(_.current=!1,M.setState({paneDragging:!1}),o&&po(r,L.current??0)&&!P.current&&o(R.sourceEvent),P.current=!1,(n||T)&&Xi(w.current,R.transform)){let V=Ct(R.transform);w.current=V,clearTimeout(C.current),C.current=setTimeout(()=>{T==null||T(V),n==null||n(R.sourceEvent,V)},a?150:0)}})},[E,a,r,n,o]),(0,v.useEffect)(()=>{E&&E.filter(R=>{let T=D||i,V=d&&R.ctrlKey;if((r===!0||Array.isArray(r)&&r.includes(1))&&R.button===1&&R.type==="mousedown"&&(Ue(R,"react-flow__node")||Ue(R,"react-flow__edge")))return!0;if(!r&&!T&&!a&&!c&&!d||S||!c&&R.type==="dblclick"||Ue(R,N)&&R.type==="wheel"||Ue(R,m)&&(R.type!=="wheel"||a&&R.type==="wheel"&&!D)||!d&&R.ctrlKey&&R.type==="wheel"||!T&&!a&&!V&&R.type==="wheel"||!r&&(R.type==="mousedown"||R.type==="touchstart")||Array.isArray(r)&&!r.includes(R.button)&&R.type==="mousedown")return!1;let F=Array.isArray(r)&&r.includes(R.button)||!R.button||R.button<=1;return(!R.ctrlKey||R.type==="wheel")&&F})},[S,E,i,d,a,c,r,u,D]),v.createElement("div",{className:"react-flow__renderer",ref:j,style:rn},b)},Ki=t=>({userSelectionActive:t.userSelectionActive,userSelectionRect:t.userSelectionRect});function Gi(){let{userSelectionActive:t,userSelectionRect:e}=ne(Ki,ue);return t&&e?v.createElement("div",{className:"react-flow__selection react-flow__container",style:{width:e.width,height:e.height,transform:`translate(${e.x}px, ${e.y}px)`}}):null}function yo(t,e){let n=e.parentNode||e.parentId,o=t.find(i=>i.id===n);if(o){let i=e.position.x+e.width-o.width,d=e.position.y+e.height-o.height;if(i>0||d>0||e.position.x<0||e.position.y<0){if(o.style={...o.style},o.style.width=o.style.width??o.width,o.style.height=o.style.height??o.height,i>0&&(o.style.width+=i),d>0&&(o.style.height+=d),e.position.x<0){let a=Math.abs(e.position.x);o.position.x=o.position.x-a,o.style.width+=a,e.position.x=0}if(e.position.y<0){let a=Math.abs(e.position.y);o.position.y=o.position.y-a,o.style.height+=a,e.position.y=0}o.width=o.style.width,o.height=o.style.height}}}function vo(t,e){if(t.some(o=>o.type==="reset"))return t.filter(o=>o.type==="reset").map(o=>o.item);let n=t.filter(o=>o.type==="add").map(o=>o.item);return e.reduce((o,i)=>{let d=t.filter(l=>l.id===i.id);if(d.length===0)return o.push(i),o;let a={...i};for(let l of d)if(l)switch(l.type){case"select":a.selected=l.selected;break;case"position":l.position!==void 0&&(a.position=l.position),l.positionAbsolute!==void 0&&(a.positionAbsolute=l.positionAbsolute),l.dragging!==void 0&&(a.dragging=l.dragging),a.expandParent&&yo(o,a);break;case"dimensions":l.dimensions!==void 0&&(a.width=l.dimensions.width,a.height=l.dimensions.height),l.updateStyle!==void 0&&(a.style={...a.style||{},...l.dimensions}),typeof l.resizing=="boolean"&&(a.resizing=l.resizing),a.expandParent&&yo(o,a);break;case"remove":return o}return o.push(a),o},n)}function bo(t,e){return vo(t,e)}function Ui(t,e){return vo(t,e)}var Ne=(t,e)=>({id:t,type:"select",selected:e});function qe(t,e){return t.reduce((n,o)=>{let i=e.includes(o.id);return!o.selected&&i?(o.selected=!0,n.push(Ne(o.id,!0))):o.selected&&!i&&(o.selected=!1,n.push(Ne(o.id,!1))),n},[])}var an=(t,e)=>n=>{n.target===e.current&&(t==null||t(n))},qi=t=>({userSelectionActive:t.userSelectionActive,elementsSelectable:t.elementsSelectable,dragging:t.paneDragging}),xo=(0,v.memo)(({isSelecting:t,selectionMode:e=yt.Full,panOnDrag:n,onSelectionStart:o,onSelectionEnd:i,onPaneClick:d,onPaneContextMenu:a,onPaneScroll:l,onPaneMouseEnter:s,onPaneMouseMove:c,onPaneMouseLeave:u,children:r})=>{let g=(0,v.useRef)(null),h=le(),p=(0,v.useRef)(0),f=(0,v.useRef)(0),y=(0,v.useRef)(),{userSelectionActive:x,elementsSelectable:b,dragging:N}=ne(qi,ue),m=()=>{h.setState({userSelectionActive:!1,userSelectionRect:null}),p.current=0,f.current=0},C=k=>{d==null||d(k),h.getState().resetSelectedElements(),h.setState({nodesSelectionActive:!1})},M=k=>{if(Array.isArray(n)&&(n!=null&&n.includes(2))){k.preventDefault();return}a==null||a(k)},_=l?k=>l(k):void 0,P=k=>{let{resetSelectedElements:S,domNode:D}=h.getState();if(y.current=D==null?void 0:D.getBoundingClientRect(),!b||!t||k.button!==0||k.target!==g.current||!y.current)return;let{x:L,y:$}=Se(k,y.current);S(),h.setState({userSelectionRect:{width:0,height:0,startX:L,startY:$,x:L,y:$}}),o==null||o(k)},j=k=>{let{userSelectionRect:S,nodeInternals:D,edges:L,transform:$,onNodesChange:W,onEdgesChange:R,nodeOrigin:T,getNodes:V}=h.getState();if(!t||!y.current||!S)return;h.setState({userSelectionActive:!0,nodesSelectionActive:!1});let F=Se(k,y.current),Z=S.startX??0,U=S.startY??0,I={...S,x:F.x<Z?F.x:Z,y:F.y<U?F.y:U,width:Math.abs(F.x-Z),height:Math.abs(F.y-U)},A=V(),z=Xn(D,I,$,e===yt.Partial,!0,T),H=Yn(z,L).map(G=>G.id),Y=z.map(G=>G.id);if(p.current!==Y.length){p.current=Y.length;let G=qe(A,Y);G.length&&(W==null||W(G))}if(f.current!==H.length){f.current=H.length;let G=qe(L,H);G.length&&(R==null||R(G))}h.setState({userSelectionRect:I})},w=k=>{if(k.button!==0)return;let{userSelectionRect:S}=h.getState();!x&&S&&k.target===g.current&&(C==null||C(k)),h.setState({nodesSelectionActive:p.current>0}),m(),i==null||i(k)},E=k=>{x&&(h.setState({nodesSelectionActive:p.current>0}),i==null||i(k)),m()},O=b&&(t||x);return v.createElement("div",{className:he(["react-flow__pane",{dragging:N,selection:t}]),onClick:O?void 0:an(C,g),onContextMenu:an(M,g),onWheel:an(_,g),onMouseEnter:O?void 0:s,onMouseDown:O?P:void 0,onMouseMove:O?j:c,onMouseUp:O?w:void 0,onMouseLeave:O?E:u,ref:g,style:rn},r,v.createElement(Gi,null))});xo.displayName="Pane";function wo(t,e){let n=t.parentNode||t.parentId;if(!n)return!1;let o=e.get(n);return o?o.selected?!0:wo(o,e):!1}function Eo(t,e,n){let o=t;do{if(o!=null&&o.matches(e))return!0;if(o===n.current)return!1;o=o.parentElement}while(o);return!1}function Qi(t,e,n,o){return Array.from(t.values()).filter(i=>(i.selected||i.id===o)&&(!i.parentNode||i.parentId||!wo(i,t))&&(i.draggable||e&&i.draggable===void 0)).map(i=>{var d,a;return{id:i.id,position:i.position||{x:0,y:0},positionAbsolute:i.positionAbsolute||{x:0,y:0},distance:{x:n.x-(((d=i.positionAbsolute)==null?void 0:d.x)??0),y:n.y-(((a=i.positionAbsolute)==null?void 0:a.y)??0)},delta:{x:0,y:0},extent:i.extent,parentNode:i.parentNode||i.parentId,parentId:i.parentNode||i.parentId,width:i.width,height:i.height,expandParent:i.expandParent}})}function Ji(t,e){return!e||e==="parent"?e:[e[0],[e[1][0]-(t.width||0),e[1][1]-(t.height||0)]]}function So(t,e,n,o,i=[0,0],d){let a=Ji(t,t.extent||o),l=a,s=t.parentNode||t.parentId;if(t.extent==="parent"&&!t.expandParent)if(s&&t.width&&t.height){let r=n.get(s),{x:g,y:h}=Ze(r,i).positionAbsolute;l=r&&me(g)&&me(h)&&me(r.width)&&me(r.height)?[[g+t.width*i[0],h+t.height*i[1]],[g+r.width-t.width+t.width*i[0],h+r.height-t.height+t.height*i[1]]]:l}else d==null||d("005",xe.error005()),l=a;else if(t.extent&&s&&t.extent!=="parent"){let{x:r,y:g}=Ze(n.get(s),i).positionAbsolute;l=[[t.extent[0][0]+r,t.extent[0][1]+g],[t.extent[1][0]+r,t.extent[1][1]+g]]}let c={x:0,y:0};s&&(c=Ze(n.get(s),i).positionAbsolute);let u=l&&l!=="parent"?Ht(e,l):e;return{position:{x:u.x-c.x,y:u.y-c.y},positionAbsolute:u}}function sn({nodeId:t,dragItems:e,nodeInternals:n}){let o=e.map(i=>({...n.get(i.id),position:i.position,positionAbsolute:i.positionAbsolute}));return[t?o.find(i=>i.id===t):o[0],o]}var Co=(t,e,n,o)=>{let i=e.querySelectorAll(t);if(!i||!i.length)return null;let d=Array.from(i),a=e.getBoundingClientRect(),l={x:a.width*o[0],y:a.height*o[1]};return d.map(s=>{let c=s.getBoundingClientRect();return{id:s.getAttribute("data-handleid"),position:s.getAttribute("data-handlepos"),x:(c.left-a.left-l.x)/n,y:(c.top-a.top-l.y)/n,...Tt(s)}})};function dt(t,e,n){return n===void 0?n:o=>{let i=e().nodeInternals.get(t);i&&n(o,{...i})}}function ln({id:t,store:e,unselect:n=!1,nodeRef:o}){let{addSelectedNodes:i,unselectNodesAndEdges:d,multiSelectionActive:a,nodeInternals:l,onError:s}=e.getState(),c=l.get(t);if(!c){s==null||s("012",xe.error012(t));return}e.setState({nodesSelectionActive:!1}),c.selected?(n||c.selected&&a)&&(d({nodes:[c],edges:[]}),requestAnimationFrame(()=>{var u;return(u=o==null?void 0:o.current)==null?void 0:u.blur()})):i([t])}function es(){let t=le();return(0,v.useCallback)(({sourceEvent:e})=>{let{transform:n,snapGrid:o,snapToGrid:i}=t.getState(),d=e.touches?e.touches[0].clientX:e.clientX,a=e.touches?e.touches[0].clientY:e.clientY,l={x:(d-n[0])/n[2],y:(a-n[1])/n[2]};return{xSnapped:i?o[0]*Math.round(l.x/o[0]):l.x,ySnapped:i?o[1]*Math.round(l.y/o[1]):l.y,...l}},[])}function dn(t){return(e,n,o)=>t==null?void 0:t(e,o)}function No({nodeRef:t,disabled:e=!1,noDragClassName:n,handleSelector:o,nodeId:i,isSelectable:d,selectNodesOnDrag:a}){let l=le(),[s,c]=(0,v.useState)(!1),u=(0,v.useRef)([]),r=(0,v.useRef)({x:null,y:null}),g=(0,v.useRef)(0),h=(0,v.useRef)(null),p=(0,v.useRef)({x:0,y:0}),f=(0,v.useRef)(null),y=(0,v.useRef)(!1),x=(0,v.useRef)(!1),b=(0,v.useRef)(!1),N=es();return(0,v.useEffect)(()=>{if(t!=null&&t.current){let m=ht(t.current),C=({x:P,y:j})=>{let{nodeInternals:w,onNodeDrag:E,onSelectionDrag:O,updateNodePositions:k,nodeExtent:S,snapGrid:D,snapToGrid:L,nodeOrigin:$,onError:W}=l.getState();r.current={x:P,y:j};let R=!1,T={x:0,y:0,x2:0,y2:0};if(u.current.length>1&&S&&(T=Vt(Qt(u.current,$))),u.current=u.current.map(F=>{let Z={x:P-F.distance.x,y:j-F.distance.y};L&&(Z.x=D[0]*Math.round(Z.x/D[0]),Z.y=D[1]*Math.round(Z.y/D[1]));let U=[[S[0][0],S[0][1]],[S[1][0],S[1][1]]];u.current.length>1&&S&&!F.extent&&(U[0][0]=F.positionAbsolute.x-T.x+S[0][0],U[1][0]=F.positionAbsolute.x+(F.width??0)-T.x2+S[1][0],U[0][1]=F.positionAbsolute.y-T.y+S[0][1],U[1][1]=F.positionAbsolute.y+(F.height??0)-T.y2+S[1][1]);let I=So(F,Z,w,U,$,W);return R=R||F.position.x!==I.position.x||F.position.y!==I.position.y,F.position=I.position,F.positionAbsolute=I.positionAbsolute,F}),!R)return;k(u.current,!0,!0),c(!0);let V=i?E:dn(O);if(V&&f.current){let[F,Z]=sn({nodeId:i,dragItems:u.current,nodeInternals:w});V(f.current,F,Z)}},M=()=>{if(!h.current)return;let[P,j]=Pn(p.current,h.current);if(P!==0||j!==0){let{transform:w,panBy:E}=l.getState();r.current.x=(r.current.x??0)-P/w[2],r.current.y=(r.current.y??0)-j/w[2],E({x:P,y:j})&&C(r.current)}g.current=requestAnimationFrame(M)},_=P=>{var $;let{nodeInternals:j,multiSelectionActive:w,nodesDraggable:E,unselectNodesAndEdges:O,onNodeDragStart:k,onSelectionDragStart:S}=l.getState();x.current=!0;let D=i?k:dn(S);(!a||!d)&&!w&&i&&(($=j.get(i))!=null&&$.selected||O()),i&&d&&a&&ln({id:i,store:l,nodeRef:t});let L=N(P);if(r.current=L,u.current=Qi(j,E,L,i),D&&u.current){let[W,R]=sn({nodeId:i,dragItems:u.current,nodeInternals:j});D(P.sourceEvent,W,R)}};if(e)m.on(".drag",null);else{let P=ei().on("start",j=>{let{domNode:w,nodeDragThreshold:E}=l.getState();E===0&&_(j),b.current=!1,r.current=N(j),h.current=(w==null?void 0:w.getBoundingClientRect())||null,p.current=Se(j.sourceEvent,h.current)}).on("drag",j=>{var k,S;let w=N(j),{autoPanOnNodeDrag:E,nodeDragThreshold:O}=l.getState();if(j.sourceEvent.type==="touchmove"&&j.sourceEvent.touches.length>1&&(b.current=!0),!b.current){if(!y.current&&x.current&&E&&(y.current=!0,M()),!x.current){let D=w.xSnapped-(((k=r==null?void 0:r.current)==null?void 0:k.x)??0),L=w.ySnapped-(((S=r==null?void 0:r.current)==null?void 0:S.y)??0);Math.sqrt(D*D+L*L)>O&&_(j)}(r.current.x!==w.xSnapped||r.current.y!==w.ySnapped)&&u.current&&x.current&&(f.current=j.sourceEvent,p.current=Se(j.sourceEvent,h.current),C(w))}}).on("end",j=>{if(!(!x.current||b.current)&&(c(!1),y.current=!1,x.current=!1,cancelAnimationFrame(g.current),u.current)){let{updateNodePositions:w,nodeInternals:E,onNodeDragStop:O,onSelectionDragStop:k}=l.getState(),S=i?O:dn(k);if(w(u.current,!1,!1),S){let[D,L]=sn({nodeId:i,dragItems:u.current,nodeInternals:E});S(j.sourceEvent,D,L)}}}).filter(j=>{let w=j.target;return!j.button&&(!n||!Eo(w,`.${n}`,t))&&(!o||Eo(w,o,t))});return m.call(P),()=>{m.on(".drag",null)}}}},[t,e,n,o,d,l,i,a,N]),s}function ko(){let t=le();return(0,v.useCallback)(e=>{let{nodeInternals:n,nodeExtent:o,updateNodePositions:i,getNodes:d,snapToGrid:a,snapGrid:l,onError:s,nodesDraggable:c}=t.getState(),u=d().filter(y=>y.selected&&(y.draggable||c&&y.draggable===void 0)),r=a?l[0]:5,g=a?l[1]:5,h=e.isShiftPressed?4:1,p=e.x*r*h,f=e.y*g*h;i(u.map(y=>{if(y.positionAbsolute){let x={x:y.positionAbsolute.x+p,y:y.positionAbsolute.y+f};a&&(x.x=l[0]*Math.round(x.x/l[0]),x.y=l[1]*Math.round(x.y/l[1]));let{positionAbsolute:b,position:N}=So(y,x,n,o,void 0,s);y.position=N,y.positionAbsolute=b}return y}),!0,!1)},[])}var Qe={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},ct=t=>{let e=({id:n,type:o,data:i,xPos:d,yPos:a,xPosOrigin:l,yPosOrigin:s,selected:c,onClick:u,onMouseEnter:r,onMouseMove:g,onMouseLeave:h,onContextMenu:p,onDoubleClick:f,style:y,className:x,isDraggable:b,isSelectable:N,isConnectable:m,isFocusable:C,selectNodesOnDrag:M,sourcePosition:_,targetPosition:P,hidden:j,resizeObserver:w,dragHandle:E,zIndex:O,isParent:k,noDragClassName:S,noPanClassName:D,initialized:L,disableKeyboardA11y:$,ariaLabel:W,rfId:R,hasHandleBounds:T})=>{let V=le(),F=(0,v.useRef)(null),Z=(0,v.useRef)(null),U=(0,v.useRef)(_),I=(0,v.useRef)(P),A=(0,v.useRef)(o),z=N||b||u||r||g||h,H=ko(),Y=dt(n,V.getState,r),G=dt(n,V.getState,g),ee=dt(n,V.getState,h),ae=dt(n,V.getState,p),ge=dt(n,V.getState,f),oe=te=>{let{nodeDragThreshold:K}=V.getState();if(N&&(!M||!b||K>0)&&ln({id:n,store:V,nodeRef:F}),u){let fe=V.getState().nodeInternals.get(n);fe&&u(te,{...fe})}},J=te=>{Wt(te)||$||(Dn.includes(te.key)&&N?ln({id:n,store:V,unselect:te.key==="Escape",nodeRef:F}):b&&c&&Object.prototype.hasOwnProperty.call(Qe,te.key)&&(V.setState({ariaLiveMessage:`Moved selected node ${te.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~d}, y: ${~~a}`}),H({x:Qe[te.key].x,y:Qe[te.key].y,isShiftPressed:te.shiftKey})))};(0,v.useEffect)(()=>()=>{Z.current&&(Z.current=(w==null||w.unobserve(Z.current),null))},[]),(0,v.useEffect)(()=>{if(F.current&&!j){let te=F.current;(!L||!T||Z.current!==te)&&(Z.current&&(w==null||w.unobserve(Z.current)),w==null||w.observe(te),Z.current=te)}},[j,L,T]),(0,v.useEffect)(()=>{let te=A.current!==o,K=U.current!==_,fe=I.current!==P;F.current&&(te||K||fe)&&(te&&(A.current=o),K&&(U.current=_),fe&&(I.current=P),V.getState().updateNodeDimensions([{id:n,nodeElement:F.current,forceUpdate:!0}]))},[n,o,_,P]);let de=No({nodeRef:F,disabled:j||!b,noDragClassName:S,handleSelector:E,nodeId:n,isSelectable:N,selectNodesOnDrag:M});return j?null:v.createElement("div",{className:he(["react-flow__node",`react-flow__node-${o}`,{[D]:b},x,{selected:c,selectable:N,parent:k,dragging:de}]),ref:F,style:{zIndex:O,transform:`translate(${l}px,${s}px)`,pointerEvents:z?"all":"none",visibility:L?"visible":"hidden",...y},"data-id":n,"data-testid":`rf__node-${n}`,onMouseEnter:Y,onMouseMove:G,onMouseLeave:ee,onContextMenu:ae,onClick:oe,onDoubleClick:ge,onKeyDown:C?J:void 0,tabIndex:C?0:void 0,role:C?"button":void 0,"aria-describedby":$?void 0:`${so}-${R}`,"aria-label":W},v.createElement(fi,{value:n},v.createElement(t,{id:n,data:i,type:o,xPos:d,yPos:a,selected:c,isConnectable:m,sourcePosition:_,targetPosition:P,dragging:de,dragHandle:E,zIndex:O})))};return e.displayName="NodeWrapper",(0,v.memo)(e)},ts=t=>({...Qt(t.getNodes().filter(e=>e.selected),t.nodeOrigin),transformString:`translate(${t.transform[0]}px,${t.transform[1]}px) scale(${t.transform[2]})`,userSelectionActive:t.userSelectionActive});function ns({onSelectionContextMenu:t,noPanClassName:e,disableKeyboardA11y:n}){let o=le(),{width:i,height:d,x:a,y:l,transformString:s,userSelectionActive:c}=ne(ts,ue),u=ko(),r=(0,v.useRef)(null);if((0,v.useEffect)(()=>{var h;n||((h=r.current)==null||h.focus({preventScroll:!0}))},[n]),No({nodeRef:r}),c||!i||!d)return null;let g=t?h=>{t(h,o.getState().getNodes().filter(p=>p.selected))}:void 0;return v.createElement("div",{className:he(["react-flow__nodesselection","react-flow__container",e]),style:{transform:s}},v.createElement("div",{ref:r,className:"react-flow__nodesselection-rect",onContextMenu:g,tabIndex:n?void 0:-1,onKeyDown:n?void 0:h=>{Object.prototype.hasOwnProperty.call(Qe,h.key)&&u({x:Qe[h.key].x,y:Qe[h.key].y,isShiftPressed:h.shiftKey})},style:{width:i,height:d,top:l,left:a}}))}var os=(0,v.memo)(ns),rs=t=>t.nodesSelectionActive,Mo=({children:t,onPaneClick:e,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:i,onPaneContextMenu:d,onPaneScroll:a,deleteKeyCode:l,onMove:s,onMoveStart:c,onMoveEnd:u,selectionKeyCode:r,selectionOnDrag:g,selectionMode:h,onSelectionStart:p,onSelectionEnd:f,multiSelectionKeyCode:y,panActivationKeyCode:x,zoomActivationKeyCode:b,elementsSelectable:N,zoomOnScroll:m,zoomOnPinch:C,panOnScroll:M,panOnScrollSpeed:_,panOnScrollMode:P,zoomOnDoubleClick:j,panOnDrag:w,defaultViewport:E,translateExtent:O,minZoom:k,maxZoom:S,preventScrolling:D,onSelectionContextMenu:L,noWheelClassName:$,noPanClassName:W,disableKeyboardA11y:R})=>{let T=ne(rs),V=st(r),F=st(x),Z=F||w,U=F||M,I=V||g&&Z!==!0;return Fi({deleteKeyCode:l,multiSelectionKeyCode:y}),v.createElement(Zi,{onMove:s,onMoveStart:c,onMoveEnd:u,onPaneContextMenu:d,elementsSelectable:N,zoomOnScroll:m,zoomOnPinch:C,panOnScroll:U,panOnScrollSpeed:_,panOnScrollMode:P,zoomOnDoubleClick:j,panOnDrag:!V&&Z,defaultViewport:E,translateExtent:O,minZoom:k,maxZoom:S,zoomActivationKeyCode:b,preventScrolling:D,noWheelClassName:$,noPanClassName:W},v.createElement(xo,{onSelectionStart:p,onSelectionEnd:f,onPaneClick:e,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:i,onPaneContextMenu:d,onPaneScroll:a,panOnDrag:Z,isSelecting:!!I,selectionMode:h},t,T&&v.createElement(os,{onSelectionContextMenu:L,noPanClassName:W,disableKeyboardA11y:R})))};Mo.displayName="FlowRenderer";var as=(0,v.memo)(Mo);function is(t){return ne((0,v.useCallback)(e=>t?Xn(e.nodeInternals,{x:0,y:0,width:e.width,height:e.height},e.transform,!0):e.getNodes(),[t]))}function ss(t){let e={input:ct(t.input||no),default:ct(t.default||tn),output:ct(t.output||ro),group:ct(t.group||nn)},n=Object.keys(t).filter(o=>!["input","default","output","group"].includes(o)).reduce((o,i)=>(o[i]=ct(t[i]||tn),o),{});return{...e,...n}}var ls=({x:t,y:e,width:n,height:o,origin:i})=>!n||!o||i[0]<0||i[1]<0||i[0]>1||i[1]>1?{x:t,y:e}:{x:t-n*i[0],y:e-o*i[1]},ds=t=>({nodesDraggable:t.nodesDraggable,nodesConnectable:t.nodesConnectable,nodesFocusable:t.nodesFocusable,elementsSelectable:t.elementsSelectable,updateNodeDimensions:t.updateNodeDimensions,onError:t.onError}),Oo=t=>{let{nodesDraggable:e,nodesConnectable:n,nodesFocusable:o,elementsSelectable:i,updateNodeDimensions:d,onError:a}=ne(ds,ue),l=is(t.onlyRenderVisibleElements),s=(0,v.useRef)(),c=(0,v.useMemo)(()=>{if(typeof ResizeObserver>"u")return null;let u=new ResizeObserver(r=>{d(r.map(g=>({id:g.target.getAttribute("data-id"),nodeElement:g.target,forceUpdate:!0})))});return s.current=u,u},[]);return(0,v.useEffect)(()=>()=>{var u;(u=s==null?void 0:s.current)==null||u.disconnect()},[]),v.createElement("div",{className:"react-flow__nodes",style:rn},l.map(u=>{var C,M,_;let r=u.type||"default";t.nodeTypes[r]||(a==null||a("003",xe.error003(r)),r="default");let g=t.nodeTypes[r]||t.nodeTypes.default,h=!!(u.draggable||e&&u.draggable===void 0),p=!!(u.selectable||i&&u.selectable===void 0),f=!!(u.connectable||n&&u.connectable===void 0),y=!!(u.focusable||o&&u.focusable===void 0),x=t.nodeExtent?Ht(u.positionAbsolute,t.nodeExtent):u.positionAbsolute,b=(x==null?void 0:x.x)??0,N=(x==null?void 0:x.y)??0,m=ls({x:b,y:N,width:u.width??0,height:u.height??0,origin:t.nodeOrigin});return v.createElement(g,{key:u.id,id:u.id,className:u.className,style:u.style,type:r,data:u.data,sourcePosition:u.sourcePosition||X.Bottom,targetPosition:u.targetPosition||X.Top,hidden:u.hidden,xPos:b,yPos:N,xPosOrigin:m.x,yPosOrigin:m.y,selectNodesOnDrag:t.selectNodesOnDrag,onClick:t.onNodeClick,onMouseEnter:t.onNodeMouseEnter,onMouseMove:t.onNodeMouseMove,onMouseLeave:t.onNodeMouseLeave,onContextMenu:t.onNodeContextMenu,onDoubleClick:t.onNodeDoubleClick,selected:!!u.selected,isDraggable:h,isSelectable:p,isConnectable:f,isFocusable:y,resizeObserver:c,dragHandle:u.dragHandle,zIndex:((C=u[re])==null?void 0:C.z)??0,isParent:!!((M=u[re])!=null&&M.isParent),noDragClassName:t.noDragClassName,noPanClassName:t.noPanClassName,initialized:!!u.width&&!!u.height,rfId:t.rfId,disableKeyboardA11y:t.disableKeyboardA11y,ariaLabel:u.ariaLabel,hasHandleBounds:!!((_=u[re])!=null&&_.handleBounds)})}))};Oo.displayName="NodeRenderer";var cs=(0,v.memo)(Oo),us=(t,e,n)=>n===X.Left?t-e:n===X.Right?t+e:t,hs=(t,e,n)=>n===X.Top?t-e:n===X.Bottom?t+e:t,_o="react-flow__edgeupdater",jo=({position:t,centerX:e,centerY:n,radius:o=10,onMouseDown:i,onMouseEnter:d,onMouseOut:a,type:l})=>v.createElement("circle",{onMouseDown:i,onMouseEnter:d,onMouseOut:a,className:he([_o,`${_o}-${l}`]),cx:us(e,o,t),cy:hs(n,o,t),r:o,stroke:"transparent",fill:"transparent"}),gs=()=>!0,Je=t=>{let e=({id:n,className:o,type:i,data:d,onClick:a,onEdgeDoubleClick:l,selected:s,animated:c,label:u,labelStyle:r,labelShowBg:g,labelBgStyle:h,labelBgPadding:p,labelBgBorderRadius:f,style:y,source:x,target:b,sourceX:N,sourceY:m,targetX:C,targetY:M,sourcePosition:_,targetPosition:P,elementsSelectable:j,hidden:w,sourceHandleId:E,targetHandleId:O,onContextMenu:k,onMouseEnter:S,onMouseMove:D,onMouseLeave:L,reconnectRadius:$,onReconnect:W,onReconnectStart:R,onReconnectEnd:T,markerEnd:V,markerStart:F,rfId:Z,ariaLabel:U,isFocusable:I,isReconnectable:A,pathOptions:z,interactionWidth:H,disableKeyboardA11y:Y})=>{let G=(0,v.useRef)(null),[ee,ae]=(0,v.useState)(!1),[ge,oe]=(0,v.useState)(!1),J=le(),de=(0,v.useMemo)(()=>`url('#${Ut(F,Z)}')`,[F,Z]),te=(0,v.useMemo)(()=>`url('#${Ut(V,Z)}')`,[V,Z]);if(w)return null;let K=ce=>{var Ee;let{edges:pe,addSelectedEdges:je,unselectNodesAndEdges:Pe,multiSelectionActive:Ie}=J.getState(),be=pe.find(nt=>nt.id===n);be&&(j&&(J.setState({nodesSelectionActive:!1}),be.selected&&Ie?(Pe({nodes:[],edges:[be]}),(Ee=G.current)==null||Ee.blur()):je([n])),a&&a(ce,be))},fe=it(n,J.getState,l),Me=it(n,J.getState,k),tt=it(n,J.getState,S),ze=it(n,J.getState,D),Le=it(n,J.getState,L),we=(ce,pe)=>{if(ce.button!==0)return;let{edges:je,isValidConnection:Pe}=J.getState(),Ie=pe?b:x,be=(pe?O:E)||null,Ee=pe?"target":"source",nt=Pe||gs,Mt=pe,ot=je.find(Re=>Re.id===n);oe(!0),R==null||R(ce,ot,Ee),qn({event:ce,handleId:be,nodeId:Ie,onConnect:Re=>W==null?void 0:W(ot,Re),isTarget:Mt,getState:J.getState,setState:J.setState,isValidConnection:nt,edgeUpdaterType:Ee,onReconnectEnd:Re=>{oe(!1),T==null||T(Re,ot,Ee)}})},$e=ce=>we(ce,!0),Oe=ce=>we(ce,!1),_e=()=>ae(!0),Te=()=>ae(!1),He=!j&&!a;return v.createElement("g",{className:he(["react-flow__edge",`react-flow__edge-${i}`,o,{selected:s,animated:c,inactive:He,updating:ee}]),onClick:K,onDoubleClick:fe,onContextMenu:Me,onMouseEnter:tt,onMouseMove:ze,onMouseLeave:Le,onKeyDown:I?ce=>{var pe;if(!Y&&Dn.includes(ce.key)&&j){let{unselectNodesAndEdges:je,addSelectedEdges:Pe,edges:Ie}=J.getState();ce.key==="Escape"?((pe=G.current)==null||pe.blur(),je({edges:[Ie.find(be=>be.id===n)]})):Pe([n])}}:void 0,tabIndex:I?0:void 0,role:I?"button":"img","data-testid":`rf__edge-${n}`,"aria-label":U===null?void 0:U||`Edge from ${x} to ${b}`,"aria-describedby":I?`${lo}-${Z}`:void 0,ref:G},!ge&&v.createElement(t,{id:n,source:x,target:b,selected:s,animated:c,label:u,labelStyle:r,labelShowBg:g,labelBgStyle:h,labelBgPadding:p,labelBgBorderRadius:f,data:d,style:y,sourceX:N,sourceY:m,targetX:C,targetY:M,sourcePosition:_,targetPosition:P,sourceHandleId:E,targetHandleId:O,markerStart:de,markerEnd:te,pathOptions:z,interactionWidth:H}),A&&v.createElement(v.Fragment,null,(A==="source"||A===!0)&&v.createElement(jo,{position:_,centerX:N,centerY:m,radius:$,onMouseDown:$e,onMouseEnter:_e,onMouseOut:Te,type:"source"}),(A==="target"||A===!0)&&v.createElement(jo,{position:P,centerX:C,centerY:M,radius:$,onMouseDown:Oe,onMouseEnter:_e,onMouseOut:Te,type:"target"})))};return e.displayName="EdgeWrapper",(0,v.memo)(e)};function fs(t){let e={default:Je(t.default||wt),straight:Je(t.bezier||Kt),step:Je(t.step||Zt),smoothstep:Je(t.step||bt),simplebezier:Je(t.simplebezier||Xt)},n=Object.keys(t).filter(o=>!["default","bezier"].includes(o)).reduce((o,i)=>(o[i]=Je(t[i]||wt),o),{});return{...e,...n}}function Po(t,e,n=null){let o=((n==null?void 0:n.x)||0)+e.x,i=((n==null?void 0:n.y)||0)+e.y,d=(n==null?void 0:n.width)||e.width,a=(n==null?void 0:n.height)||e.height;switch(t){case X.Top:return{x:o+d/2,y:i};case X.Right:return{x:o+d,y:i+a/2};case X.Bottom:return{x:o+d/2,y:i+a};case X.Left:return{x:o,y:i+a/2}}}function Io(t,e){return t?t.length===1||!e?t[0]:e&&t.find(n=>n.id===e)||null:null}var ps=(t,e,n,o,i,d)=>{let a=Po(n,t,e),l=Po(d,o,i);return{sourceX:a.x,sourceY:a.y,targetX:l.x,targetY:l.y}};function ms({sourcePos:t,targetPos:e,sourceWidth:n,sourceHeight:o,targetWidth:i,targetHeight:d,width:a,height:l,transform:s}){let c={x:Math.min(t.x,e.x),y:Math.min(t.y,e.y),x2:Math.max(t.x+n,e.x+i),y2:Math.max(t.y+o,e.y+d)};c.x===c.x2&&(c.x2+=1),c.y===c.y2&&(c.y2+=1);let u=Vt({x:(0-s[0])/s[2],y:(0-s[1])/s[2],width:a/s[2],height:l/s[2]}),r=Math.max(0,Math.min(u.x2,c.x2)-Math.max(u.x,c.x)),g=Math.max(0,Math.min(u.y2,c.y2)-Math.max(u.y,c.y));return Math.ceil(r*g)>0}function Ro(t){var o,i,d,a,l;let e=((o=t==null?void 0:t[re])==null?void 0:o.handleBounds)||null,n=e&&(t==null?void 0:t.width)&&(t==null?void 0:t.height)&&((i=t==null?void 0:t.positionAbsolute)==null?void 0:i.x)!==void 0&&((d=t==null?void 0:t.positionAbsolute)==null?void 0:d.y)!==void 0;return[{x:((a=t==null?void 0:t.positionAbsolute)==null?void 0:a.x)||0,y:((l=t==null?void 0:t.positionAbsolute)==null?void 0:l.y)||0,width:(t==null?void 0:t.width)||0,height:(t==null?void 0:t.height)||0},e,!!n]}var ys=[{level:0,isMaxLevel:!0,edges:[]}];function vs(t,e,n=!1){let o=-1,i=t.reduce((a,l)=>{var u,r;let s=me(l.zIndex),c=s?l.zIndex:0;if(n){let g=e.get(l.target),h=e.get(l.source),p=l.selected||(g==null?void 0:g.selected)||(h==null?void 0:h.selected),f=Math.max(((u=h==null?void 0:h[re])==null?void 0:u.z)||0,((r=g==null?void 0:g[re])==null?void 0:r.z)||0,1e3);c=(s?l.zIndex:0)+(p?f:0)}return a[c]?a[c].push(l):a[c]=[l],o=c>o?c:o,a},{}),d=Object.entries(i).map(([a,l])=>{let s=+a;return{edges:l,level:s,isMaxLevel:s===o}});return d.length===0?ys:d}function bs(t,e,n){return vs(ne((0,v.useCallback)(o=>t?o.edges.filter(i=>{let d=e.get(i.source),a=e.get(i.target);return(d==null?void 0:d.width)&&(d==null?void 0:d.height)&&(a==null?void 0:a.width)&&(a==null?void 0:a.height)&&ms({sourcePos:d.positionAbsolute||{x:0,y:0},targetPos:a.positionAbsolute||{x:0,y:0},sourceWidth:d.width,sourceHeight:d.height,targetWidth:a.width,targetHeight:a.height,width:o.width,height:o.height,transform:o.transform})}):o.edges,[t,e])),e,n)}var xs=({color:t="none",strokeWidth:e=1})=>v.createElement("polyline",{style:{stroke:t,strokeWidth:e},strokeLinecap:"round",strokeLinejoin:"round",fill:"none",points:"-5,-4 0,0 -5,4"}),ws=({color:t="none",strokeWidth:e=1})=>v.createElement("polyline",{style:{stroke:t,fill:t,strokeWidth:e},strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"}),Do={[vt.Arrow]:xs,[vt.ArrowClosed]:ws};function Es(t){let e=le();return(0,v.useMemo)(()=>{var n,o;return Object.prototype.hasOwnProperty.call(Do,t)?Do[t]:((o=(n=e.getState()).onError)==null||o.call(n,"009",xe.error009(t)),null)},[t])}var Ss=({id:t,type:e,color:n,width:o=12.5,height:i=12.5,markerUnits:d="strokeWidth",strokeWidth:a,orient:l="auto-start-reverse"})=>{let s=Es(e);return s?v.createElement("marker",{className:"react-flow__arrowhead",id:t,markerWidth:`${o}`,markerHeight:`${i}`,viewBox:"-10 -10 20 20",markerUnits:d,orient:l,refX:"0",refY:"0"},v.createElement(s,{color:n,strokeWidth:a})):null},Cs=({defaultColor:t,rfId:e})=>n=>{let o=[];return n.edges.reduce((i,d)=>([d.markerStart,d.markerEnd].forEach(a=>{if(a&&typeof a=="object"){let l=Ut(a,e);o.includes(l)||(i.push({id:l,color:a.color||t,...a}),o.push(l))}}),i),[]).sort((i,d)=>i.id.localeCompare(d.id))},Ao=({defaultColor:t,rfId:e})=>{let n=ne((0,v.useCallback)(Cs({defaultColor:t,rfId:e}),[t,e]),(o,i)=>!(o.length!==i.length||o.some((d,a)=>d.id!==i[a].id)));return v.createElement("defs",null,n.map(o=>v.createElement(Ss,{id:o.id,key:o.id,type:o.type,color:o.color,width:o.width,height:o.height,markerUnits:o.markerUnits,strokeWidth:o.strokeWidth,orient:o.orient})))};Ao.displayName="MarkerDefinitions";var Ns=(0,v.memo)(Ao),ks=t=>({nodesConnectable:t.nodesConnectable,edgesFocusable:t.edgesFocusable,edgesUpdatable:t.edgesUpdatable,elementsSelectable:t.elementsSelectable,width:t.width,height:t.height,connectionMode:t.connectionMode,nodeInternals:t.nodeInternals,onError:t.onError}),Bo=({defaultMarkerColor:t,onlyRenderVisibleElements:e,elevateEdgesOnSelect:n,rfId:o,edgeTypes:i,noPanClassName:d,onEdgeContextMenu:a,onEdgeMouseEnter:l,onEdgeMouseMove:s,onEdgeMouseLeave:c,onEdgeClick:u,onEdgeDoubleClick:r,onReconnect:g,onReconnectStart:h,onReconnectEnd:p,reconnectRadius:f,children:y,disableKeyboardA11y:x})=>{let{edgesFocusable:b,edgesUpdatable:N,elementsSelectable:m,width:C,height:M,connectionMode:_,nodeInternals:P,onError:j}=ne(ks,ue),w=bs(e,P,n);return C?v.createElement(v.Fragment,null,w.map(({level:E,edges:O,isMaxLevel:k})=>v.createElement("svg",{key:E,style:{zIndex:E},width:C,height:M,className:"react-flow__edges react-flow__container"},k&&v.createElement(Ns,{defaultColor:t,rfId:o}),v.createElement("g",null,O.map(S=>{let[D,L,$]=Ro(P.get(S.source)),[W,R,T]=Ro(P.get(S.target));if(!$||!T)return null;let V=S.type||"default";i[V]||(j==null||j("011",xe.error011(V)),V="default");let F=i[V]||i.default,Z=_===Xe.Strict?R.target:(R.target??[]).concat(R.source??[]),U=Io(L.source,S.sourceHandle),I=Io(Z,S.targetHandle),A=(U==null?void 0:U.position)||X.Bottom,z=(I==null?void 0:I.position)||X.Top,H=!!(S.focusable||b&&S.focusable===void 0),Y=S.reconnectable||S.updatable,G=g!==void 0&&(Y||N&&Y===void 0);if(!U||!I)return j==null||j("008",xe.error008(U,S)),null;let{sourceX:ee,sourceY:ae,targetX:ge,targetY:oe}=ps(D,U,A,W,I,z);return v.createElement(F,{key:S.id,id:S.id,className:he([S.className,d]),type:V,data:S.data,selected:!!S.selected,animated:!!S.animated,hidden:!!S.hidden,label:S.label,labelStyle:S.labelStyle,labelShowBg:S.labelShowBg,labelBgStyle:S.labelBgStyle,labelBgPadding:S.labelBgPadding,labelBgBorderRadius:S.labelBgBorderRadius,style:S.style,source:S.source,target:S.target,sourceHandleId:S.sourceHandle,targetHandleId:S.targetHandle,markerEnd:S.markerEnd,markerStart:S.markerStart,sourceX:ee,sourceY:ae,targetX:ge,targetY:oe,sourcePosition:A,targetPosition:z,elementsSelectable:m,onContextMenu:a,onMouseEnter:l,onMouseMove:s,onMouseLeave:c,onClick:u,onEdgeDoubleClick:r,onReconnect:g,onReconnectStart:h,onReconnectEnd:p,reconnectRadius:f,rfId:o,ariaLabel:S.ariaLabel,isFocusable:H,isReconnectable:G,pathOptions:"pathOptions"in S?S.pathOptions:void 0,interactionWidth:S.interactionWidth,disableKeyboardA11y:x})})))),y):null};Bo.displayName="EdgeRenderer";var Ms=(0,v.memo)(Bo),Os=t=>`translate(${t.transform[0]}px,${t.transform[1]}px) scale(${t.transform[2]})`;function _s({children:t}){let e=ne(Os);return v.createElement("div",{className:"react-flow__viewport react-flow__container",style:{transform:e}},t)}function js(t){let e=lt(),n=(0,v.useRef)(!1);(0,v.useEffect)(()=>{!n.current&&e.viewportInitialized&&t&&(setTimeout(()=>t(e),1),n.current=!0)},[t,e.viewportInitialized])}var Ps={[X.Left]:X.Right,[X.Right]:X.Left,[X.Top]:X.Bottom,[X.Bottom]:X.Top},zo=({nodeId:t,handleType:e,style:n,type:o=Ae.Bezier,CustomComponent:i,connectionStatus:d})=>{var M,_,P;let{fromNode:a,handleId:l,toX:s,toY:c,connectionMode:u}=ne((0,v.useCallback)(j=>({fromNode:j.nodeInternals.get(t),handleId:j.connectionHandleId,toX:(j.connectionPosition.x-j.transform[0])/j.transform[2],toY:(j.connectionPosition.y-j.transform[1])/j.transform[2],connectionMode:j.connectionMode}),[t]),ue),r=(M=a==null?void 0:a[re])==null?void 0:M.handleBounds,g=r==null?void 0:r[e];if(u===Xe.Loose&&(g||(g=r==null?void 0:r[e==="source"?"target":"source"])),!a||!g)return null;let h=l?g.find(j=>j.id===l):g[0],p=h?h.x+h.width/2:(a.width??0)/2,f=h?h.y+h.height/2:a.height??0,y=(((_=a.positionAbsolute)==null?void 0:_.x)??0)+p,x=(((P=a.positionAbsolute)==null?void 0:P.y)??0)+f,b=h==null?void 0:h.position,N=b?Ps[b]:null;if(!b||!N)return null;if(i)return v.createElement(i,{connectionLineType:o,connectionLineStyle:n,fromNode:a,fromHandle:h,fromX:y,fromY:x,toX:s,toY:c,fromPosition:b,toPosition:N,connectionStatus:d});let m="",C={sourceX:y,sourceY:x,sourcePosition:b,targetX:s,targetY:c,targetPosition:N};return o===Ae.Bezier?[m]=Fn(C):o===Ae.Step?[m]=Yt({...C,borderRadius:0}):o===Ae.SmoothStep?[m]=Yt(C):o===Ae.SimpleBezier?[m]=$n(C):m=`M${y},${x} ${s},${c}`,v.createElement("path",{d:m,fill:"none",className:"react-flow__connection-path",style:n})};zo.displayName="ConnectionLine";var Is=t=>({nodeId:t.connectionNodeId,handleType:t.connectionHandleType,nodesConnectable:t.nodesConnectable,connectionStatus:t.connectionStatus,width:t.width,height:t.height});function Rs({containerStyle:t,style:e,type:n,component:o}){let{nodeId:i,handleType:d,nodesConnectable:a,width:l,height:s,connectionStatus:c}=ne(Is,ue);return i&&d&&l&&a?v.createElement("svg",{style:t,width:l,height:s,className:"react-flow__edges react-flow__connectionline react-flow__container"},v.createElement("g",{className:he(["react-flow__connection",c])},v.createElement(zo,{nodeId:i,handleType:d,style:e,type:n,CustomComponent:o,connectionStatus:c}))):null}function Lo(t,e){return(0,v.useRef)(null),le(),(0,v.useMemo)(()=>e(t),[t])}var $o=({nodeTypes:t,edgeTypes:e,onMove:n,onMoveStart:o,onMoveEnd:i,onInit:d,onNodeClick:a,onEdgeClick:l,onNodeDoubleClick:s,onEdgeDoubleClick:c,onNodeMouseEnter:u,onNodeMouseMove:r,onNodeMouseLeave:g,onNodeContextMenu:h,onSelectionContextMenu:p,onSelectionStart:f,onSelectionEnd:y,connectionLineType:x,connectionLineStyle:b,connectionLineComponent:N,connectionLineContainerStyle:m,selectionKeyCode:C,selectionOnDrag:M,selectionMode:_,multiSelectionKeyCode:P,panActivationKeyCode:j,zoomActivationKeyCode:w,deleteKeyCode:E,onlyRenderVisibleElements:O,elementsSelectable:k,selectNodesOnDrag:S,defaultViewport:D,translateExtent:L,minZoom:$,maxZoom:W,preventScrolling:R,defaultMarkerColor:T,zoomOnScroll:V,zoomOnPinch:F,panOnScroll:Z,panOnScrollSpeed:U,panOnScrollMode:I,zoomOnDoubleClick:A,panOnDrag:z,onPaneClick:H,onPaneMouseEnter:Y,onPaneMouseMove:G,onPaneMouseLeave:ee,onPaneScroll:ae,onPaneContextMenu:ge,onEdgeContextMenu:oe,onEdgeMouseEnter:J,onEdgeMouseMove:de,onEdgeMouseLeave:te,onReconnect:K,onReconnectStart:fe,onReconnectEnd:Me,reconnectRadius:tt,noDragClassName:ze,noWheelClassName:Le,noPanClassName:we,elevateEdgesOnSelect:$e,disableKeyboardA11y:Oe,nodeOrigin:_e,nodeExtent:Te,rfId:He})=>{let ce=Lo(t,ss),pe=Lo(e,fs);return js(d),v.createElement(as,{onPaneClick:H,onPaneMouseEnter:Y,onPaneMouseMove:G,onPaneMouseLeave:ee,onPaneContextMenu:ge,onPaneScroll:ae,deleteKeyCode:E,selectionKeyCode:C,selectionOnDrag:M,selectionMode:_,onSelectionStart:f,onSelectionEnd:y,multiSelectionKeyCode:P,panActivationKeyCode:j,zoomActivationKeyCode:w,elementsSelectable:k,onMove:n,onMoveStart:o,onMoveEnd:i,zoomOnScroll:V,zoomOnPinch:F,zoomOnDoubleClick:A,panOnScroll:Z,panOnScrollSpeed:U,panOnScrollMode:I,panOnDrag:z,defaultViewport:D,translateExtent:L,minZoom:$,maxZoom:W,onSelectionContextMenu:p,preventScrolling:R,noDragClassName:ze,noWheelClassName:Le,noPanClassName:we,disableKeyboardA11y:Oe},v.createElement(_s,null,v.createElement(Ms,{edgeTypes:pe,onEdgeClick:l,onEdgeDoubleClick:c,onlyRenderVisibleElements:O,onEdgeContextMenu:oe,onEdgeMouseEnter:J,onEdgeMouseMove:de,onEdgeMouseLeave:te,onReconnect:K,onReconnectStart:fe,onReconnectEnd:Me,reconnectRadius:tt,defaultMarkerColor:T,noPanClassName:we,elevateEdgesOnSelect:!!$e,disableKeyboardA11y:Oe,rfId:He},v.createElement(Rs,{style:b,type:x,component:N,containerStyle:m})),v.createElement("div",{className:"react-flow__edgelabel-renderer"}),v.createElement(cs,{nodeTypes:ce,onNodeClick:a,onNodeDoubleClick:s,onNodeMouseEnter:u,onNodeMouseMove:r,onNodeMouseLeave:g,onNodeContextMenu:h,selectNodesOnDrag:S,onlyRenderVisibleElements:O,noPanClassName:we,noDragClassName:ze,disableKeyboardA11y:Oe,nodeOrigin:_e,nodeExtent:Te,rfId:He})))};$o.displayName="GraphView";var Ds=(0,v.memo)($o),cn=[[-1/0,-1/0],[1/0,1/0]],ke={rfId:"1",width:0,height:0,transform:[0,0,1],nodeInternals:new Map,edges:[],onNodesChange:null,onEdgesChange:null,hasDefaultNodes:!1,hasDefaultEdges:!1,d3Zoom:null,d3Selection:null,d3ZoomHandler:void 0,minZoom:.5,maxZoom:2,translateExtent:cn,nodeExtent:cn,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionNodeId:null,connectionHandleId:null,connectionHandleType:"source",connectionPosition:{x:0,y:0},connectionStatus:null,connectionMode:Xe.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:[0,0],nodeDragThreshold:0,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesUpdatable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,fitViewOnInit:!1,fitViewOnInitDone:!1,fitViewOnInitOptions:void 0,onSelectionChange:[],multiSelectionActive:!1,connectionStartHandle:null,connectionEndHandle:null,connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,connectionRadius:20,onError:li,isValidConnection:void 0},As=()=>Ga((t,e)=>({...ke,setNodes:n=>{let{nodeInternals:o,nodeOrigin:i,elevateNodesOnSelect:d}=e();t({nodeInternals:on(n,o,i,d)})},getNodes:()=>Array.from(e().nodeInternals.values()),setEdges:n=>{let{defaultEdgeOptions:o={}}=e();t({edges:n.map(i=>({...o,...i}))})},setDefaultNodesAndEdges:(n,o)=>{let i=n!==void 0,d=o!==void 0;t({nodeInternals:i?on(n,new Map,e().nodeOrigin,e().elevateNodesOnSelect):new Map,edges:d?o:[],hasDefaultNodes:i,hasDefaultEdges:d})},updateNodeDimensions:n=>{let{onNodesChange:o,nodeInternals:i,fitViewOnInit:d,fitViewOnInitDone:a,fitViewOnInitOptions:l,domNode:s,nodeOrigin:c}=e(),u=s==null?void 0:s.querySelector(".react-flow__viewport");if(!u)return;let r=window.getComputedStyle(u),{m22:g}=new window.DOMMatrixReadOnly(r.transform),h=n.reduce((f,y)=>{let x=i.get(y.id);if(x!=null&&x.hidden)i.set(x.id,{...x,[re]:{...x[re],handleBounds:void 0}});else if(x){let b=Tt(y.nodeElement);b.width&&b.height&&(x.width!==b.width||x.height!==b.height||y.forceUpdate)&&(i.set(x.id,{...x,[re]:{...x[re],handleBounds:{source:Co(".source",y.nodeElement,g,c),target:Co(".target",y.nodeElement,g,c)}},...b}),f.push({id:x.id,type:"dimensions",dimensions:b}))}return f},[]);go(i,c);let p=a||d&&!a&&fo(e,{initial:!0,...l});t({nodeInternals:new Map(i),fitViewOnInitDone:p}),(h==null?void 0:h.length)>0&&(o==null||o(h))},updateNodePositions:(n,o=!0,i=!1)=>{let{triggerNodeChanges:d}=e();d(n.map(a=>{let l={id:a.id,type:"position",dragging:i};return o&&(l.positionAbsolute=a.positionAbsolute,l.position=a.position),l}))},triggerNodeChanges:n=>{let{onNodesChange:o,nodeInternals:i,hasDefaultNodes:d,nodeOrigin:a,getNodes:l,elevateNodesOnSelect:s}=e();n!=null&&n.length&&(d&&t({nodeInternals:on(bo(n,l()),i,a,s)}),o==null||o(n))},addSelectedNodes:n=>{let{multiSelectionActive:o,edges:i,getNodes:d}=e(),a,l=null;o?a=n.map(s=>Ne(s,!0)):(a=qe(d(),n),l=qe(i,[])),St({changedNodes:a,changedEdges:l,get:e,set:t})},addSelectedEdges:n=>{let{multiSelectionActive:o,edges:i,getNodes:d}=e(),a,l=null;o?a=n.map(s=>Ne(s,!0)):(a=qe(i,n),l=qe(d(),[])),St({changedNodes:l,changedEdges:a,get:e,set:t})},unselectNodesAndEdges:({nodes:n,edges:o}={})=>{let{edges:i,getNodes:d}=e(),a=n||d(),l=o||i;St({changedNodes:a.map(s=>(s.selected=!1,Ne(s.id,!1))),changedEdges:l.map(s=>Ne(s.id,!1)),get:e,set:t})},setMinZoom:n=>{let{d3Zoom:o,maxZoom:i}=e();o==null||o.scaleExtent([n,i]),t({minZoom:n})},setMaxZoom:n=>{let{d3Zoom:o,minZoom:i}=e();o==null||o.scaleExtent([i,n]),t({maxZoom:n})},setTranslateExtent:n=>{var o;(o=e().d3Zoom)==null||o.translateExtent(n),t({translateExtent:n})},resetSelectedElements:()=>{let{edges:n,getNodes:o}=e();St({changedNodes:o().filter(i=>i.selected).map(i=>Ne(i.id,!1)),changedEdges:n.filter(i=>i.selected).map(i=>Ne(i.id,!1)),get:e,set:t})},setNodeExtent:n=>{let{nodeInternals:o}=e();o.forEach(i=>{i.positionAbsolute=Ht(i.position,n)}),t({nodeExtent:n,nodeInternals:new Map(o)})},panBy:n=>{let{transform:o,width:i,height:d,d3Zoom:a,d3Selection:l,translateExtent:s}=e();if(!a||!l||!n.x&&!n.y)return!1;let c=Fe.translate(o[0]+n.x,o[1]+n.y).scale(o[2]),u=[[0,0],[i,d]],r=a==null?void 0:a.constrain()(c,u,s);return a.transform(l,r),o[0]!==r.x||o[1]!==r.y||o[2]!==r.k},cancelConnection:()=>t({connectionNodeId:ke.connectionNodeId,connectionHandleId:ke.connectionHandleId,connectionHandleType:ke.connectionHandleType,connectionStatus:ke.connectionStatus,connectionStartHandle:ke.connectionStartHandle,connectionEndHandle:ke.connectionEndHandle}),reset:()=>t({...ke})}),Object.is),un=({children:t})=>{let e=(0,v.useRef)(null);return e.current||(e.current=As()),v.createElement(ti,{value:e.current},t)};un.displayName="ReactFlowProvider";var To=({children:t})=>(0,v.useContext)(ft)?v.createElement(v.Fragment,null,t):v.createElement(un,null,t);To.displayName="ReactFlowWrapper";var Bs={input:no,default:tn,output:ro,group:nn},zs={default:wt,straight:Kt,step:Zt,smoothstep:bt,simplebezier:Xt},Ls=[0,0],$s=[15,15],Ts={x:0,y:0,zoom:1},Hs={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0},Ho=(0,v.forwardRef)(({nodes:t,edges:e,defaultNodes:n,defaultEdges:o,className:i,nodeTypes:d=Bs,edgeTypes:a=zs,onNodeClick:l,onEdgeClick:s,onInit:c,onMove:u,onMoveStart:r,onMoveEnd:g,onConnect:h,onConnectStart:p,onConnectEnd:f,onClickConnectStart:y,onClickConnectEnd:x,onNodeMouseEnter:b,onNodeMouseMove:N,onNodeMouseLeave:m,onNodeContextMenu:C,onNodeDoubleClick:M,onNodeDragStart:_,onNodeDrag:P,onNodeDragStop:j,onNodesDelete:w,onEdgesDelete:E,onSelectionChange:O,onSelectionDragStart:k,onSelectionDrag:S,onSelectionDragStop:D,onSelectionContextMenu:L,onSelectionStart:$,onSelectionEnd:W,connectionMode:R=Xe.Strict,connectionLineType:T=Ae.Bezier,connectionLineStyle:V,connectionLineComponent:F,connectionLineContainerStyle:Z,deleteKeyCode:U="Backspace",selectionKeyCode:I="Shift",selectionOnDrag:A=!1,selectionMode:z=yt.Full,panActivationKeyCode:H="Space",multiSelectionKeyCode:Y=mt()?"Meta":"Control",zoomActivationKeyCode:G=mt()?"Meta":"Control",snapToGrid:ee=!1,snapGrid:ae=$s,onlyRenderVisibleElements:ge=!1,selectNodesOnDrag:oe=!0,nodesDraggable:J,nodesConnectable:de,nodesFocusable:te,nodeOrigin:K=Ls,edgesFocusable:fe,edgesUpdatable:Me,elementsSelectable:tt,defaultViewport:ze=Ts,minZoom:Le=.5,maxZoom:we=2,translateExtent:$e=cn,preventScrolling:Oe=!0,nodeExtent:_e,defaultMarkerColor:Te="#b1b1b7",zoomOnScroll:He=!0,zoomOnPinch:ce=!0,panOnScroll:pe=!1,panOnScrollSpeed:je=.5,panOnScrollMode:Pe=Ye.Free,zoomOnDoubleClick:Ie=!0,panOnDrag:be=!0,onPaneClick:Ee,onPaneMouseEnter:nt,onPaneMouseMove:Mt,onPaneMouseLeave:ot,onPaneScroll:Re,onPaneContextMenu:ur,children:hr,onEdgeContextMenu:gr,onEdgeDoubleClick:fr,onEdgeMouseEnter:pr,onEdgeMouseMove:mr,onEdgeMouseLeave:yr,onEdgeUpdate:vr,onEdgeUpdateStart:br,onEdgeUpdateEnd:xr,onReconnect:wr,onReconnectStart:Er,onReconnectEnd:Sr,reconnectRadius:Cr=10,edgeUpdaterRadius:Nr=10,onNodesChange:kr,onEdgesChange:Mr,noDragClassName:Or="nodrag",noWheelClassName:_r="nowheel",noPanClassName:mn="nopan",fitView:jr=!1,fitViewOptions:Pr,connectOnClick:Ir=!0,attributionPosition:Rr,proOptions:Dr,defaultEdgeOptions:Ar,elevateNodesOnSelect:Br=!0,elevateEdgesOnSelect:zr=!1,disableKeyboardA11y:yn=!1,autoPanOnConnect:Lr=!0,autoPanOnNodeDrag:$r=!0,connectionRadius:Tr=20,isValidConnection:Hr,onError:Vr,style:Fr,id:vn,nodeDragThreshold:Wr,...Xr},Yr)=>{let Ot=vn||"1";return v.createElement("div",{...Xr,style:{...Fr,...Hs},ref:Yr,className:he(["react-flow",i]),"data-testid":"rf__wrapper",id:vn},v.createElement(To,null,v.createElement(Ds,{onInit:c,onMove:u,onMoveStart:r,onMoveEnd:g,onNodeClick:l,onEdgeClick:s,onNodeMouseEnter:b,onNodeMouseMove:N,onNodeMouseLeave:m,onNodeContextMenu:C,onNodeDoubleClick:M,nodeTypes:d,edgeTypes:a,connectionLineType:T,connectionLineStyle:V,connectionLineComponent:F,connectionLineContainerStyle:Z,selectionKeyCode:I,selectionOnDrag:A,selectionMode:z,deleteKeyCode:U,multiSelectionKeyCode:Y,panActivationKeyCode:H,zoomActivationKeyCode:G,onlyRenderVisibleElements:ge,selectNodesOnDrag:oe,defaultViewport:ze,translateExtent:$e,minZoom:Le,maxZoom:we,preventScrolling:Oe,zoomOnScroll:He,zoomOnPinch:ce,zoomOnDoubleClick:Ie,panOnScroll:pe,panOnScrollSpeed:je,panOnScrollMode:Pe,panOnDrag:be,onPaneClick:Ee,onPaneMouseEnter:nt,onPaneMouseMove:Mt,onPaneMouseLeave:ot,onPaneScroll:Re,onPaneContextMenu:ur,onSelectionContextMenu:L,onSelectionStart:$,onSelectionEnd:W,onEdgeContextMenu:gr,onEdgeDoubleClick:fr,onEdgeMouseEnter:pr,onEdgeMouseMove:mr,onEdgeMouseLeave:yr,onReconnect:wr??vr,onReconnectStart:Er??br,onReconnectEnd:Sr??xr,reconnectRadius:Cr??Nr,defaultMarkerColor:Te,noDragClassName:Or,noWheelClassName:_r,noPanClassName:mn,elevateEdgesOnSelect:zr,rfId:Ot,disableKeyboardA11y:yn,nodeOrigin:K,nodeExtent:_e}),v.createElement(Pi,{nodes:t,edges:e,defaultNodes:n,defaultEdges:o,onConnect:h,onConnectStart:p,onConnectEnd:f,onClickConnectStart:y,onClickConnectEnd:x,nodesDraggable:J,nodesConnectable:de,nodesFocusable:te,edgesFocusable:fe,edgesUpdatable:Me,elementsSelectable:tt,elevateNodesOnSelect:Br,minZoom:Le,maxZoom:we,nodeExtent:_e,onNodesChange:kr,onEdgesChange:Mr,snapToGrid:ee,snapGrid:ae,connectionMode:R,translateExtent:$e,connectOnClick:Ir,defaultEdgeOptions:Ar,fitView:jr,fitViewOptions:Pr,onNodesDelete:w,onEdgesDelete:E,onNodeDragStart:_,onNodeDrag:P,onNodeDragStop:j,onSelectionDrag:S,onSelectionDragStart:k,onSelectionDragStop:D,noPanClassName:mn,nodeOrigin:K,rfId:Ot,autoPanOnConnect:Lr,autoPanOnNodeDrag:$r,onError:Vr,connectionRadius:Tr,isValidConnection:Hr,nodeDragThreshold:Wr}),v.createElement(_i,{onSelectionChange:O}),hr,v.createElement(oi,{proOptions:Dr,position:Rr}),v.createElement(Bi,{rfId:Ot,disableKeyboardA11y:yn})))});Ho.displayName="ReactFlow";function Vo(t){return e=>{let[n,o]=(0,v.useState)(e);return[n,o,(0,v.useCallback)(i=>o(d=>t(i,d)),[])]}}var Vs=Vo(bo),Fs=Vo(Ui);function Ws(){return v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},v.createElement("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"}))}function Xs(){return v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},v.createElement("path",{d:"M0 0h32v4.2H0z"}))}function Ys(){return v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},v.createElement("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"}))}function Zs(){return v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},v.createElement("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"}))}function Ks(){return v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},v.createElement("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"}))}var et=({children:t,className:e,...n})=>v.createElement("button",{type:"button",className:he(["react-flow__controls-button",e]),...n},t);et.displayName="ControlButton";var Gs=t=>({isInteractive:t.nodesDraggable||t.nodesConnectable||t.elementsSelectable,minZoomReached:t.transform[2]<=t.minZoom,maxZoomReached:t.transform[2]>=t.maxZoom}),Fo=({style:t,showZoom:e=!0,showFitView:n=!0,showInteractive:o=!0,fitViewOptions:i,onZoomIn:d,onZoomOut:a,onFitView:l,onInteractiveChange:s,className:c,children:u,position:r="bottom-left"})=>{let g=le(),[h,p]=(0,v.useState)(!1),{isInteractive:f,minZoomReached:y,maxZoomReached:x}=ne(Gs,ue),{zoomIn:b,zoomOut:N,fitView:m}=lt();if((0,v.useEffect)(()=>{p(!0)},[]),!h)return null;let C=()=>{b(),d==null||d()},M=()=>{N(),a==null||a()},_=()=>{m(i),l==null||l()},P=()=>{g.setState({nodesDraggable:!f,nodesConnectable:!f,elementsSelectable:!f}),s==null||s(!f)};return v.createElement(pt,{className:he(["react-flow__controls",c]),position:r,style:t,"data-testid":"rf__controls"},e&&v.createElement(v.Fragment,null,v.createElement(et,{onClick:C,className:"react-flow__controls-zoomin",title:"zoom in","aria-label":"zoom in",disabled:x},v.createElement(Ws,null)),v.createElement(et,{onClick:M,className:"react-flow__controls-zoomout",title:"zoom out","aria-label":"zoom out",disabled:y},v.createElement(Xs,null))),n&&v.createElement(et,{className:"react-flow__controls-fitview",onClick:_,title:"fit view","aria-label":"fit view"},v.createElement(Ys,null)),o&&v.createElement(et,{className:"react-flow__controls-interactive",onClick:P,title:"toggle interactivity","aria-label":"toggle interactivity"},f?v.createElement(Ks,null):v.createElement(Zs,null)),u)};Fo.displayName="Controls";var Us=(0,v.memo)(Fo),ye;(function(t){t.Lines="lines",t.Dots="dots",t.Cross="cross"})(ye||(ye={}));function qs({color:t,dimensions:e,lineWidth:n}){return v.createElement("path",{stroke:t,strokeWidth:n,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`})}function Qs({color:t,radius:e}){return v.createElement("circle",{cx:e,cy:e,r:e,fill:t})}var Js={[ye.Dots]:"#91919a",[ye.Lines]:"#eee",[ye.Cross]:"#e2e2e2"},el={[ye.Dots]:1,[ye.Lines]:1,[ye.Cross]:6},tl=t=>({transform:t.transform,patternId:`pattern-${t.rfId}`});function Wo({id:t,variant:e=ye.Dots,gap:n=20,size:o,lineWidth:i=1,offset:d=2,color:a,style:l,className:s}){let c=(0,v.useRef)(null),{transform:u,patternId:r}=ne(tl,ue),g=a||Js[e],h=o||el[e],p=e===ye.Dots,f=e===ye.Cross,y=Array.isArray(n)?n:[n,n],x=[y[0]*u[2]||1,y[1]*u[2]||1],b=h*u[2],N=f?[b,b]:x,m=p?[b/d,b/d]:[N[0]/d,N[1]/d];return v.createElement("svg",{className:he(["react-flow__background",s]),style:{...l,position:"absolute",width:"100%",height:"100%",top:0,left:0},ref:c,"data-testid":"rf__background"},v.createElement("pattern",{id:r+t,x:u[0]%x[0],y:u[1]%x[1],width:x[0],height:x[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${m[0]},-${m[1]})`},p?v.createElement(Qs,{color:g,radius:b/d}):v.createElement(qs,{dimensions:N,color:g,lineWidth:i})),v.createElement("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${r+t})`}))}Wo.displayName="Background";var nl=(0,v.memo)(Wo),ol=De();function Xo(t){return Math.min(t*11+35,200)}const hn="outputs",gn="inputs";var rl=class{createEdge(t,e){return{animated:!0,markerEnd:{type:vt.ArrowClosed},id:`${t}-${e}`,style:{strokeWidth:2},source:t,sourceHandle:hn,targetHandle:gn,target:e}}createNode(t,e){let n=jt.get(e).code.trim().split(`
2
2
  `).length,o=Xo(n);return{id:t,data:{atom:e,forceWidth:300},width:300,type:"custom",height:o,position:{x:0,y:0}}}createElements(t,e,n,o,i){var u,r;let d=[],a=[],l=new Set,s=new Set;for(let g of Object.values(n)){if(g.value==="marimo"&&g.name==="mo")continue;let{declaredBy:h,usedBy:p}=g;for(let f of h)for(let y of p){let x=`${f}-${y}`;s.has(x)||(s.add(x),l.add(f),l.add(y),a.push(this.createEdge(f,y)))}}let c=sa().cellRuntime;for(let[g,h]of ha.zip(t,e)){let p=jt.get(h).code.trim(),f=l.has(g),y=p.startsWith("mo.md"),x=((r=(u=c[g])==null?void 0:u.serialization)==null?void 0:r.toLowerCase())==="valid";o&&y&&!f||i&&x&&!f||d.push(this.createNode(g,h))}return{nodes:d,edges:a}}},B=_t(ca(),1);function al(t){return Math.min(Math.max(t-100,100),400)}const Yo=v.createContext("LR"),Zo=(0,v.memo)(t=>{let e=(0,ol.c)(51),{data:n,selected:o}=t,i=It(n.atom),d=Rt().inOrderIds.indexOf(i.id),a=o?"var(--gray-9)":"var(--gray-3)",l=ne(sl),s=(0,v.use)(Yo),c,u,r,g;if(e[0]!==i.code||e[1]!==a||e[2]!==s||e[3]!==o){let w=i.code.split(`
3
3
  `).length,E=s==="LR"?X.Left:X.Top,O;e[8]===a?O=e[9]:(O={background:a},e[8]=a,e[9]=O),e[10]!==E||e[11]!==O?(r=(0,B.jsx)(Ce,{type:"target",id:gn,"data-testid":"input-one",position:E,style:O}),e[10]=E,e[11]=O,e[12]=r):r=e[12];let k=s==="LR"?X.Left:X.Top,S;e[13]===a?S=e[14]:(S={background:a},e[13]=a,e[14]=S),e[15]!==k||e[16]!==S?(g=(0,B.jsx)(Ce,{type:"source",id:gn,"data-testid":"input-two",position:k,style:S}),e[15]=k,e[16]=S,e[17]=g):g=e[17];let D=o&&"border-primary";e[18]===D?u=e[19]:(u=Ve("flex flex-col bg-card border border-input/50 rounded-md mx-[2px] overflow-hidden",D),e[18]=D,e[19]=u),c=Xo(w),e[0]=i.code,e[1]=a,e[2]=s,e[3]=o,e[4]=c,e[5]=u,e[6]=r,e[7]=g}else c=e[4],u=e[5],r=e[6],g=e[7];let h;e[20]!==n.forceWidth||e[21]!==l?(h=n.forceWidth||al(l),e[20]=n.forceWidth,e[21]=l,e[22]=h):h=e[22];let p;e[23]!==c||e[24]!==h?(p={height:c,width:h},e[23]=c,e[24]=h,e[25]=p):p=e[25];let f=la(i.name,d),y;e[26]===f?y=e[27]:(y=(0,B.jsx)("div",{className:"text-muted-foreground font-semibold text-xs py-1 px-2 bg-muted border-b",children:f}),e[26]=f,e[27]=y);let x;e[28]===i.code?x=e[29]:(x=(0,B.jsx)($a,{code:i.code}),e[28]=i.code,e[29]=x);let b;e[30]!==u||e[31]!==p||e[32]!==y||e[33]!==x?(b=(0,B.jsxs)("div",{className:u,style:p,children:[y,x]}),e[30]=u,e[31]=p,e[32]=y,e[33]=x,e[34]=b):b=e[34];let N=s==="LR"?X.Right:X.Bottom,m;e[35]===a?m=e[36]:(m={background:a},e[35]=a,e[36]=m);let C;e[37]!==N||e[38]!==m?(C=(0,B.jsx)(Ce,{type:"source",id:hn,"data-testid":"output-one",position:N,style:m}),e[37]=N,e[38]=m,e[39]=C):C=e[39];let M=s==="LR"?X.Right:X.Bottom,_;e[40]===a?_=e[41]:(_={background:a},e[40]=a,e[41]=_);let P;e[42]!==M||e[43]!==_?(P=(0,B.jsx)(Ce,{type:"target",id:hn,"data-testid":"output-two",position:M,style:_}),e[42]=M,e[43]=_,e[44]=P):P=e[44];let j;return e[45]!==b||e[46]!==C||e[47]!==P||e[48]!==r||e[49]!==g?(j=(0,B.jsxs)("div",{children:[r,g,b,C,P]}),e[45]=b,e[46]=C,e[47]=P,e[48]=r,e[49]=g,e[50]=j):j=e[50],j},(t,e)=>["data","selected","id"].every(n=>t[n]===e[n]));Zo.displayName="CustomNode";const il={custom:Zo};function sl(t){let{width:e}=t;return e}var Ko=De();const Go=(0,v.memo)(t=>{let e=(0,Ko.c)(48),{onChange:n,view:o,settings:i,onSettingsChange:d}=t,a;e[0]!==d||e[1]!==i?(a=(L,$)=>{d({...i,[L]:$})},e[0]=d,e[1]=i,e[2]=a):a=e[2];let l=a,s=(0,v.useId)(),c=(0,v.useId)(),u;e[3]===Symbol.for("react.memo_cache_sentinel")?(u=(0,B.jsx)(Ca,{asChild:!0,children:(0,B.jsx)(rt,{variant:"text",size:"xs",children:(0,B.jsx)(xa,{className:"w-4 h-4"})})}),e[3]=u):u=e[3];let r;e[4]===Symbol.for("react.memo_cache_sentinel")?(r=(0,B.jsx)("div",{className:"font-semibold pb-4",children:"Settings"}),e[4]=r):r=e[4];let g;e[5]===l?g=e[6]:(g=L=>l("hidePureMarkdown",!!L),e[5]=l,e[6]=g);let h;e[7]!==s||e[8]!==i.hidePureMarkdown||e[9]!==g?(h=(0,B.jsx)(wn,{"data-testid":"hide-pure-markdown-checkbox",id:s,checked:i.hidePureMarkdown,onCheckedChange:g}),e[7]=s,e[8]=i.hidePureMarkdown,e[9]=g,e[10]=h):h=e[10];let p;e[11]===s?p=e[12]:(p=(0,B.jsx)(Cn,{htmlFor:s,children:"Hide pure markdown"}),e[11]=s,e[12]=p);let f;e[13]!==h||e[14]!==p?(f=(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[h,p]}),e[13]=h,e[14]=p,e[15]=f):f=e[15];let y;e[16]===l?y=e[17]:(y=L=>l("hideReusableFunctions",!!L),e[16]=l,e[17]=y);let x;e[18]!==c||e[19]!==i.hideReusableFunctions||e[20]!==y?(x=(0,B.jsx)(wn,{"data-testid":"hide-reusable-functions-checkbox",id:c,checked:i.hideReusableFunctions,onCheckedChange:y}),e[18]=c,e[19]=i.hideReusableFunctions,e[20]=y,e[21]=x):x=e[21];let b;e[22]===c?b=e[23]:(b=(0,B.jsx)(Cn,{htmlFor:c,children:"Hide reusable functions"}),e[22]=c,e[23]=b);let N;e[24]!==b||e[25]!==x?(N=(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[x,b]}),e[24]=b,e[25]=x,e[26]=N):N=e[26];let m;e[27]!==N||e[28]!==f?(m=(0,B.jsxs)(Oa,{children:[u,(0,B.jsxs)(ka,{className:"w-auto p-2 text-muted-foreground",children:[r,(0,B.jsxs)("div",{className:"flex flex-col gap-2",children:[f,N]})]})]}),e[27]=N,e[28]=f,e[29]=m):m=e[29];let C=m,M=o==="TB",_;e[30]===n?_=e[31]:(_=()=>n("TB"),e[30]=n,e[31]=_);let P;e[32]===Symbol.for("react.memo_cache_sentinel")?(P=(0,B.jsx)(En,{className:"w-4 h-4 mr-1"}),e[32]=P):P=e[32];let j;e[33]!==M||e[34]!==_?(j=(0,B.jsxs)(rt,{variant:"outline",className:"bg-background","aria-selected":M,size:"xs",onClick:_,children:[P,"Vertical Tree"]}),e[33]=M,e[34]=_,e[35]=j):j=e[35];let w=o==="LR",E;e[36]===n?E=e[37]:(E=()=>n("LR"),e[36]=n,e[37]=E);let O;e[38]===Symbol.for("react.memo_cache_sentinel")?(O=(0,B.jsx)(En,{className:"w-4 h-4 mr-1 transform -rotate-90"}),e[38]=O):O=e[38];let k;e[39]!==w||e[40]!==E?(k=(0,B.jsxs)(rt,{variant:"outline",className:"bg-background","aria-selected":w,size:"xs",onClick:E,children:[O," ","Horizontal Tree"]}),e[39]=w,e[40]=E,e[41]=k):k=e[41];let S;e[42]!==j||e[43]!==k?(S=(0,B.jsxs)("div",{className:"flex gap-2",children:[j,k]}),e[42]=j,e[43]=k,e[44]=S):S=e[44];let D;return e[45]!==C||e[46]!==S?(D=(0,B.jsxs)(pt,{position:"top-right",className:"flex flex-col items-end gap-2",children:[S,C]}),e[45]=C,e[46]=S,e[47]=D):D=e[47],D});Go.displayName="GraphToolbar";const Uo=(0,v.memo)(t=>{let e=(0,Ko.c)(11),{selection:n,variables:o,onClearSelection:i}=t;if(!n)return null;let d=ll,a;e[0]!==i||e[1]!==n.id||e[2]!==n.source||e[3]!==n.target||e[4]!==n.type||e[5]!==o?(a=()=>{if(n.type==="node"){let u=Object.values(o).filter(h=>h.usedBy.includes(n.id)),r=Object.values(o).filter(h=>h.declaredBy.includes(n.id)),g=(h,p)=>(0,B.jsxs)(B.Fragment,{children:[h.length===0&&(0,B.jsx)("div",{className:"text-muted-foreground text-sm text-center",children:"--"}),(0,B.jsx)("div",{className:"grid grid-cols-5 gap-3 items-center text-sm py-1 flex-1 empty:hidden",children:h.map(f=>(0,B.jsxs)(v.Fragment,{children:[(0,B.jsx)(kn,{declaredBy:f.declaredBy,name:f.name}),(0,B.jsxs)("div",{className:"truncate col-span-2",title:f.value??"",children:[f.value,(0,B.jsxs)("span",{className:"ml-1 truncate text-foreground/60 font-mono",children:["(",f.dataType,")"]})]}),(0,B.jsx)("div",{className:"truncate col-span-2 gap-1 items-center",children:(0,B.jsx)(Ta,{skipScroll:!0,onClick:()=>d(p==="in"?f.declaredBy[0]:f.usedBy[0],f.name),maxCount:3,cellIds:f.usedBy})})]},f.name))})]});return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)("div",{className:"font-bold py-2 flex items-center gap-2 border-b px-3",children:[(0,B.jsx)(wa,{className:"w-5 h-5"}),(0,B.jsx)(At,{cellId:n.id}),(0,B.jsx)("div",{className:"flex-1"}),(0,B.jsx)(fa,{cellId:n.id,children:(0,B.jsx)(rt,{variant:"ghost",size:"icon",children:(0,B.jsx)(ba,{className:"w-4 h-4"})})}),(0,B.jsx)(rt,{variant:"text",size:"icon",onClick:()=>{i()},children:(0,B.jsx)(ma,{className:"w-4 h-4"})})]}),(0,B.jsxs)("div",{className:"text-sm flex flex-col py-3 pl-2 pr-4 flex-1 justify-center",children:[(0,B.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,B.jsxs)("span",{className:"flex items-center gap-2 font-semibold",children:[(0,B.jsx)(Va,{className:"w-4 h-4"}),"Outputs"]}),g(r,"out")]}),(0,B.jsx)("hr",{className:"border-divider my-3"}),(0,B.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,B.jsxs)("span",{className:"flex items-center gap-2 font-semibold",children:[(0,B.jsx)(Fa,{className:"w-4 h-4"}),"Inputs"]}),g(u,"in")]})]})]})}if(n.type==="edge"){let u=Object.values(o).filter(r=>r.declaredBy.includes(n.source)&&r.usedBy.includes(n.target));return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)("div",{className:"font-bold py-2 flex items-center gap-2 border-b px-3",children:[(0,B.jsx)(Ea,{className:"w-4 h-4"}),(0,B.jsx)(At,{cellId:n.source}),(0,B.jsx)(ga,{className:"w-4 h-4"}),(0,B.jsx)(At,{cellId:n.target})]}),(0,B.jsx)("div",{className:"grid grid-cols-4 gap-3 max-w-[350px] items-center text-sm p-3 flex-1",children:u.map(r=>(0,B.jsxs)(v.Fragment,{children:[(0,B.jsx)(kn,{declaredBy:r.declaredBy,name:r.name,onClick:()=>{d(r.declaredBy[0],r.name)}}),(0,B.jsx)("div",{className:"truncate text-foreground/60 font-mono",children:r.dataType}),(0,B.jsx)("div",{className:"truncate col-span-2",title:r.value??"",children:r.value})]},r.name))})]})}},e[0]=i,e[1]=n.id,e[2]=n.source,e[3]=n.target,e[4]=n.type,e[5]=o,e[6]=a):a=e[6];let l=a,s;e[7]===l?s=e[8]:(s=l(),e[7]=l,e[8]=s);let c;return e[9]===s?c=e[10]:(c=(0,B.jsx)(pt,{position:"bottom-left",className:"max-h-[90%] flex flex-col w-[calc(100%-5rem)]",children:(0,B.jsx)("div",{className:"min-h-[100px] shadow-md rounded-md border max-w-[550px] border-primary/40 my-4 min-w-[240px] bg-(--slate-1) text-muted-foreground/80 flex flex-col overflow-y-auto",children:s})}),e[9]=s,e[10]=c),c});Uo.displayName="GraphSelectionPanel";function ll(t,e){let n=ia(t);n&&aa(n,e)}var fn=q(((t,e)=>{var n="\0",o="\0",i="",d=class{constructor(r){ie(this,"_isDirected",!0);ie(this,"_isMultigraph",!1);ie(this,"_isCompound",!1);ie(this,"_label");ie(this,"_defaultNodeLabelFn",()=>{});ie(this,"_defaultEdgeLabelFn",()=>{});ie(this,"_nodes",{});ie(this,"_in",{});ie(this,"_preds",{});ie(this,"_out",{});ie(this,"_sucs",{});ie(this,"_edgeObjs",{});ie(this,"_edgeLabels",{});ie(this,"_nodeCount",0);ie(this,"_edgeCount",0);ie(this,"_parent");ie(this,"_children");r&&(this._isDirected=Object.hasOwn(r,"directed")?r.directed:!0,this._isMultigraph=Object.hasOwn(r,"multigraph")?r.multigraph:!1,this._isCompound=Object.hasOwn(r,"compound")?r.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[o]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(r){return this._label=r,this}graph(){return this._label}setDefaultNodeLabel(r){return this._defaultNodeLabelFn=r,typeof r!="function"&&(this._defaultNodeLabelFn=()=>r),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var r=this;return this.nodes().filter(g=>Object.keys(r._in[g]).length===0)}sinks(){var r=this;return this.nodes().filter(g=>Object.keys(r._out[g]).length===0)}setNodes(r,g){var h=arguments,p=this;return r.forEach(function(f){h.length>1?p.setNode(f,g):p.setNode(f)}),this}setNode(r,g){return Object.hasOwn(this._nodes,r)?(arguments.length>1&&(this._nodes[r]=g),this):(this._nodes[r]=arguments.length>1?g:this._defaultNodeLabelFn(r),this._isCompound&&(this._parent[r]=o,this._children[r]={},this._children[o][r]=!0),this._in[r]={},this._preds[r]={},this._out[r]={},this._sucs[r]={},++this._nodeCount,this)}node(r){return this._nodes[r]}hasNode(r){return Object.hasOwn(this._nodes,r)}removeNode(r){var g=this;if(Object.hasOwn(this._nodes,r)){var h=p=>g.removeEdge(g._edgeObjs[p]);delete this._nodes[r],this._isCompound&&(this._removeFromParentsChildList(r),delete this._parent[r],this.children(r).forEach(function(p){g.setParent(p)}),delete this._children[r]),Object.keys(this._in[r]).forEach(h),delete this._in[r],delete this._preds[r],Object.keys(this._out[r]).forEach(h),delete this._out[r],delete this._sucs[r],--this._nodeCount}return this}setParent(r,g){if(!this._isCompound)throw Error("Cannot set parent in a non-compound graph");if(g===void 0)g=o;else{g+="";for(var h=g;h!==void 0;h=this.parent(h))if(h===r)throw Error("Setting "+g+" as parent of "+r+" would create a cycle");this.setNode(g)}return this.setNode(r),this._removeFromParentsChildList(r),this._parent[r]=g,this._children[g][r]=!0,this}_removeFromParentsChildList(r){delete this._children[this._parent[r]][r]}parent(r){if(this._isCompound){var g=this._parent[r];if(g!==o)return g}}children(r=o){if(this._isCompound){var g=this._children[r];if(g)return Object.keys(g)}else{if(r===o)return this.nodes();if(this.hasNode(r))return[]}}predecessors(r){var g=this._preds[r];if(g)return Object.keys(g)}successors(r){var g=this._sucs[r];if(g)return Object.keys(g)}neighbors(r){var g=this.predecessors(r);if(g){let p=new Set(g);for(var h of this.successors(r))p.add(h);return Array.from(p.values())}}isLeaf(r){return(this.isDirected()?this.successors(r):this.neighbors(r)).length===0}filterNodes(r){var g=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});g.setGraph(this.graph());var h=this;Object.entries(this._nodes).forEach(function([y,x]){r(y)&&g.setNode(y,x)}),Object.values(this._edgeObjs).forEach(function(y){g.hasNode(y.v)&&g.hasNode(y.w)&&g.setEdge(y,h.edge(y))});var p={};function f(y){var x=h.parent(y);return x===void 0||g.hasNode(x)?(p[y]=x,x):x in p?p[x]:f(x)}return this._isCompound&&g.nodes().forEach(y=>g.setParent(y,f(y))),g}setDefaultEdgeLabel(r){return this._defaultEdgeLabelFn=r,typeof r!="function"&&(this._defaultEdgeLabelFn=()=>r),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(r,g){var h=this,p=arguments;return r.reduce(function(f,y){return p.length>1?h.setEdge(f,y,g):h.setEdge(f,y),y}),this}setEdge(){var r,g,h,p,f=!1,y=arguments[0];typeof y=="object"&&y&&"v"in y?(r=y.v,g=y.w,h=y.name,arguments.length===2&&(p=arguments[1],f=!0)):(r=y,g=arguments[1],h=arguments[3],arguments.length>2&&(p=arguments[2],f=!0)),r=""+r,g=""+g,h!==void 0&&(h=""+h);var x=s(this._isDirected,r,g,h);if(Object.hasOwn(this._edgeLabels,x))return f&&(this._edgeLabels[x]=p),this;if(h!==void 0&&!this._isMultigraph)throw Error("Cannot set a named edge when isMultigraph = false");this.setNode(r),this.setNode(g),this._edgeLabels[x]=f?p:this._defaultEdgeLabelFn(r,g,h);var b=c(this._isDirected,r,g,h);return r=b.v,g=b.w,Object.freeze(b),this._edgeObjs[x]=b,a(this._preds[g],r),a(this._sucs[r],g),this._in[g][x]=b,this._out[r][x]=b,this._edgeCount++,this}edge(r,g,h){var p=arguments.length===1?u(this._isDirected,arguments[0]):s(this._isDirected,r,g,h);return this._edgeLabels[p]}edgeAsObj(){let r=this.edge(...arguments);return typeof r=="object"?r:{label:r}}hasEdge(r,g,h){var p=arguments.length===1?u(this._isDirected,arguments[0]):s(this._isDirected,r,g,h);return Object.hasOwn(this._edgeLabels,p)}removeEdge(r,g,h){var p=arguments.length===1?u(this._isDirected,arguments[0]):s(this._isDirected,r,g,h),f=this._edgeObjs[p];return f&&(r=f.v,g=f.w,delete this._edgeLabels[p],delete this._edgeObjs[p],l(this._preds[g],r),l(this._sucs[r],g),delete this._in[g][p],delete this._out[r][p],this._edgeCount--),this}inEdges(r,g){var h=this._in[r];if(h){var p=Object.values(h);return g?p.filter(f=>f.v===g):p}}outEdges(r,g){var h=this._out[r];if(h){var p=Object.values(h);return g?p.filter(f=>f.w===g):p}}nodeEdges(r,g){var h=this.inEdges(r,g);if(h)return h.concat(this.outEdges(r,g))}};function a(r,g){r[g]?r[g]++:r[g]=1}function l(r,g){--r[g]||delete r[g]}function s(r,g,h,p){var f=""+g,y=""+h;if(!r&&f>y){var x=f;f=y,y=x}return f+i+y+i+(p===void 0?n:p)}function c(r,g,h,p){var f=""+g,y=""+h;if(!r&&f>y){var x=f;f=y,y=x}var b={v:f,w:y};return p&&(b.name=p),b}function u(r,g){return s(r,g.v,g.w,g.name)}e.exports=d})),dl=q(((t,e)=>{e.exports="2.2.4"})),cl=q(((t,e)=>{e.exports={Graph:fn(),version:dl()}})),ul=q(((t,e)=>{var n=fn();e.exports={write:o,read:a};function o(l){var s={options:{directed:l.isDirected(),multigraph:l.isMultigraph(),compound:l.isCompound()},nodes:i(l),edges:d(l)};return l.graph()!==void 0&&(s.value=structuredClone(l.graph())),s}function i(l){return l.nodes().map(function(s){var c=l.node(s),u=l.parent(s),r={v:s};return c!==void 0&&(r.value=c),u!==void 0&&(r.parent=u),r})}function d(l){return l.edges().map(function(s){var c=l.edge(s),u={v:s.v,w:s.w};return s.name!==void 0&&(u.name=s.name),c!==void 0&&(u.value=c),u})}function a(l){var s=new n(l.options).setGraph(l.value);return l.nodes.forEach(function(c){s.setNode(c.v,c.value),c.parent&&s.setParent(c.v,c.parent)}),l.edges.forEach(function(c){s.setEdge({v:c.v,w:c.w,name:c.name},c.value)}),s}})),hl=q(((t,e)=>{e.exports=n;function n(o){var i={},d=[],a;function l(s){Object.hasOwn(i,s)||(i[s]=!0,a.push(s),o.successors(s).forEach(l),o.predecessors(s).forEach(l))}return o.nodes().forEach(function(s){a=[],l(s),a.length&&d.push(a)}),d}})),qo=q(((t,e)=>{e.exports=class{constructor(){ie(this,"_arr",[]);ie(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var o=this._keyIndices[n];if(o!==void 0)return this._arr[o].priority}min(){if(this.size()===0)throw Error("Queue underflow");return this._arr[0].key}add(n,o){var i=this._keyIndices;if(n=String(n),!Object.hasOwn(i,n)){var d=this._arr,a=d.length;return i[n]=a,d.push({key:n,priority:o}),this._decrease(a),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var n=this._arr.pop();return delete this._keyIndices[n.key],this._heapify(0),n.key}decrease(n,o){var i=this._keyIndices[n];if(o>this._arr[i].priority)throw Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[i].priority+" New: "+o);this._arr[i].priority=o,this._decrease(i)}_heapify(n){var o=this._arr,i=2*n,d=i+1,a=n;i<o.length&&(a=o[i].priority<o[a].priority?i:a,d<o.length&&(a=o[d].priority<o[a].priority?d:a),a!==n&&(this._swap(n,a),this._heapify(a)))}_decrease(n){for(var o=this._arr,i=o[n].priority,d;n!==0&&(d=n>>1,!(o[d].priority<i));)this._swap(n,d),n=d}_swap(n,o){var i=this._arr,d=this._keyIndices,a=i[n],l=i[o];i[n]=l,i[o]=a,d[l.key]=n,d[a.key]=o}}})),Qo=q(((t,e)=>{var n=qo();e.exports=i;var o=()=>1;function i(a,l,s,c){return d(a,String(l),s||o,c||function(u){return a.outEdges(u)})}function d(a,l,s,c){var u={},r=new n,g,h,p=function(f){var y=f.v===g?f.w:f.v,x=u[y],b=s(f),N=h.distance+b;if(b<0)throw Error("dijkstra does not allow negative edge weights. Bad edge: "+f+" Weight: "+b);N<x.distance&&(x.distance=N,x.predecessor=g,r.decrease(y,N))};for(a.nodes().forEach(function(f){var y=f===l?0:1/0;u[f]={distance:y},r.add(f,y)});r.size()>0&&(g=r.removeMin(),h=u[g],h.distance!==1/0);)c(g).forEach(p);return u}})),gl=q(((t,e)=>{var n=Qo();e.exports=o;function o(i,d,a){return i.nodes().reduce(function(l,s){return l[s]=n(i,s,d,a),l},{})}})),Jo=q(((t,e)=>{e.exports=n;function n(o){var i=0,d=[],a={},l=[];function s(c){var u=a[c]={onStack:!0,lowlink:i,index:i++};if(d.push(c),o.successors(c).forEach(function(h){Object.hasOwn(a,h)?a[h].onStack&&(u.lowlink=Math.min(u.lowlink,a[h].index)):(s(h),u.lowlink=Math.min(u.lowlink,a[h].lowlink))}),u.lowlink===u.index){var r=[],g;do g=d.pop(),a[g].onStack=!1,r.push(g);while(c!==g);l.push(r)}}return o.nodes().forEach(function(c){Object.hasOwn(a,c)||s(c)}),l}})),fl=q(((t,e)=>{var n=Jo();e.exports=o;function o(i){return n(i).filter(function(d){return d.length>1||d.length===1&&i.hasEdge(d[0],d[0])})}})),pl=q(((t,e)=>{e.exports=o;var n=()=>1;function o(d,a,l){return i(d,a||n,l||function(s){return d.outEdges(s)})}function i(d,a,l){var s={},c=d.nodes();return c.forEach(function(u){s[u]={},s[u][u]={distance:0},c.forEach(function(r){u!==r&&(s[u][r]={distance:1/0})}),l(u).forEach(function(r){var g=r.v===u?r.w:r.v,h=a(r);s[u][g]={distance:h,predecessor:u}})}),c.forEach(function(u){var r=s[u];c.forEach(function(g){var h=s[g];c.forEach(function(p){var f=h[u],y=r[p],x=h[p],b=f.distance+y.distance;b<x.distance&&(x.distance=b,x.predecessor=y.predecessor)})})}),s}})),er=q(((t,e)=>{function n(i){var d={},a={},l=[];function s(c){if(Object.hasOwn(a,c))throw new o;Object.hasOwn(d,c)||(a[c]=!0,d[c]=!0,i.predecessors(c).forEach(s),delete a[c],l.push(c))}if(i.sinks().forEach(s),Object.keys(d).length!==i.nodeCount())throw new o;return l}var o=class extends Error{constructor(){super(...arguments)}};e.exports=n,n.CycleException=o})),ml=q(((t,e)=>{var n=er();e.exports=o;function o(i){try{n(i)}catch(d){if(d instanceof n.CycleException)return!1;throw d}return!0}})),tr=q(((t,e)=>{e.exports=n;function n(a,l,s){Array.isArray(l)||(l=[l]);var c=a.isDirected()?h=>a.successors(h):h=>a.neighbors(h),u=s==="post"?o:i,r=[],g={};return l.forEach(h=>{if(!a.hasNode(h))throw Error("Graph does not have node: "+h);u(h,c,g,r)}),r}function o(a,l,s,c){for(var u=[[a,!1]];u.length>0;){var r=u.pop();r[1]?c.push(r[0]):Object.hasOwn(s,r[0])||(s[r[0]]=!0,u.push([r[0],!0]),d(l(r[0]),g=>u.push([g,!1])))}}function i(a,l,s,c){for(var u=[a];u.length>0;){var r=u.pop();Object.hasOwn(s,r)||(s[r]=!0,c.push(r),d(l(r),g=>u.push(g)))}}function d(a,l){for(var s=a.length;s--;)l(a[s],s,a);return a}})),yl=q(((t,e)=>{var n=tr();e.exports=o;function o(i,d){return n(i,d,"post")}})),vl=q(((t,e)=>{var n=tr();e.exports=o;function o(i,d){return n(i,d,"pre")}})),bl=q(((t,e)=>{var n=fn(),o=qo();e.exports=i;function i(d,a){var l=new n,s={},c=new o,u;function r(h){var p=h.v===u?h.w:h.v,f=c.priority(p);if(f!==void 0){var y=a(h);y<f&&(s[p]=u,c.decrease(p,y))}}if(d.nodeCount()===0)return l;d.nodes().forEach(function(h){c.add(h,1/0),l.setNode(h)}),c.decrease(d.nodes()[0],0);for(var g=!1;c.size()>0;){if(u=c.removeMin(),Object.hasOwn(s,u))l.setEdge(u,s[u]);else{if(g)throw Error("Input graph is not connected: "+d);g=!0}d.nodeEdges(u).forEach(r)}return l}})),xl=q(((t,e)=>{e.exports={components:hl(),dijkstra:Qo(),dijkstraAll:gl(),findCycles:fl(),floydWarshall:pl(),isAcyclic:ml(),postorder:yl(),preorder:vl(),prim:bl(),tarjan:Jo(),topsort:er()}})),ve=q(((t,e)=>{var n=cl();e.exports={Graph:n.Graph,json:ul(),alg:xl(),version:n.version}})),wl=q(((t,e)=>{var n=class{constructor(){let d={};d._next=d._prev=d,this._sentinel=d}dequeue(){let d=this._sentinel,a=d._prev;if(a!==d)return o(a),a}enqueue(d){let a=this._sentinel;d._prev&&d._next&&o(d),d._next=a._next,a._next._prev=d,a._next=d,d._prev=a}toString(){let d=[],a=this._sentinel,l=a._prev;for(;l!==a;)d.push(JSON.stringify(l,i)),l=l._prev;return"["+d.join(", ")+"]"}};function o(d){d._prev._next=d._next,d._next._prev=d._prev,delete d._next,delete d._prev}function i(d,a){if(d!=="_next"&&d!=="_prev")return a}e.exports=n})),El=q(((t,e)=>{var n=ve().Graph,o=wl();e.exports=d;var i=()=>1;function d(r,g){if(r.nodeCount()<=1)return[];let h=s(r,g||i);return a(h.graph,h.buckets,h.zeroIdx).flatMap(p=>r.outEdges(p.v,p.w))}function a(r,g,h){let p=[],f=g[g.length-1],y=g[0],x;for(;r.nodeCount();){for(;x=y.dequeue();)l(r,g,h,x);for(;x=f.dequeue();)l(r,g,h,x);if(r.nodeCount()){for(let b=g.length-2;b>0;--b)if(x=g[b].dequeue(),x){p=p.concat(l(r,g,h,x,!0));break}}}return p}function l(r,g,h,p,f){let y=f?[]:void 0;return r.inEdges(p.v).forEach(x=>{let b=r.edge(x),N=r.node(x.v);f&&y.push({v:x.v,w:x.w}),N.out-=b,c(g,h,N)}),r.outEdges(p.v).forEach(x=>{let b=r.edge(x),N=x.w,m=r.node(N);m.in-=b,c(g,h,m)}),r.removeNode(p.v),y}function s(r,g){let h=new n,p=0,f=0;r.nodes().forEach(b=>{h.setNode(b,{v:b,in:0,out:0})}),r.edges().forEach(b=>{let N=h.edge(b.v,b.w)||0,m=g(b),C=N+m;h.setEdge(b.v,b.w,C),f=Math.max(f,h.node(b.v).out+=m),p=Math.max(p,h.node(b.w).in+=m)});let y=u(f+p+3).map(()=>new o),x=p+1;return h.nodes().forEach(b=>{c(y,x,h.node(b))}),{graph:h,buckets:y,zeroIdx:x}}function c(r,g,h){h.out?h.in?r[h.out-h.in+g].enqueue(h):r[r.length-1].enqueue(h):r[0].enqueue(h)}function u(r){let g=[];for(let h=0;h<r;h++)g.push(h);return g}})),se=q(((t,e)=>{var n=ve().Graph;e.exports={addBorderNode:g,addDummyNode:o,applyWithChunking:f,asNonCompoundGraph:d,buildLayerMatrix:c,intersectRect:s,mapValues:P,maxRank:y,normalizeRanks:u,notime:N,partition:x,pick:_,predecessorWeights:l,range:M,removeEmptyRanks:r,simplify:i,successorWeights:a,time:b,uniqueId:C,zipObject:j};function o(w,E,O,k){for(var S=k;w.hasNode(S);)S=C(k);return O.dummy=E,w.setNode(S,O),S}function i(w){let E=new n().setGraph(w.graph());return w.nodes().forEach(O=>E.setNode(O,w.node(O))),w.edges().forEach(O=>{let k=E.edge(O.v,O.w)||{weight:0,minlen:1},S=w.edge(O);E.setEdge(O.v,O.w,{weight:k.weight+S.weight,minlen:Math.max(k.minlen,S.minlen)})}),E}function d(w){let E=new n({multigraph:w.isMultigraph()}).setGraph(w.graph());return w.nodes().forEach(O=>{w.children(O).length||E.setNode(O,w.node(O))}),w.edges().forEach(O=>{E.setEdge(O,w.edge(O))}),E}function a(w){let E=w.nodes().map(O=>{let k={};return w.outEdges(O).forEach(S=>{k[S.w]=(k[S.w]||0)+w.edge(S).weight}),k});return j(w.nodes(),E)}function l(w){let E=w.nodes().map(O=>{let k={};return w.inEdges(O).forEach(S=>{k[S.v]=(k[S.v]||0)+w.edge(S).weight}),k});return j(w.nodes(),E)}function s(w,E){let O=w.x,k=w.y,S=E.x-O,D=E.y-k,L=w.width/2,$=w.height/2;if(!S&&!D)throw Error("Not possible to find intersection inside of the rectangle");let W,R;return Math.abs(D)*L>Math.abs(S)*$?(D<0&&($=-$),W=$*S/D,R=$):(S<0&&(L=-L),W=L,R=L*D/S),{x:O+W,y:k+R}}function c(w){let E=M(y(w)+1).map(()=>[]);return w.nodes().forEach(O=>{let k=w.node(O),S=k.rank;S!==void 0&&(E[S][k.order]=O)}),E}function u(w){let E=w.nodes().map(k=>{let S=w.node(k).rank;return S===void 0?Number.MAX_VALUE:S}),O=f(Math.min,E);w.nodes().forEach(k=>{let S=w.node(k);Object.hasOwn(S,"rank")&&(S.rank-=O)})}function r(w){let E=w.nodes().map(L=>w.node(L).rank),O=f(Math.min,E),k=[];w.nodes().forEach(L=>{let $=w.node(L).rank-O;k[$]||(k[$]=[]),k[$].push(L)});let S=0,D=w.graph().nodeRankFactor;Array.from(k).forEach((L,$)=>{L===void 0&&$%D!==0?--S:L!==void 0&&S&&L.forEach(W=>w.node(W).rank+=S)})}function g(w,E,O,k){let S={width:0,height:0};return arguments.length>=4&&(S.rank=O,S.order=k),o(w,"border",S,E)}function h(w,E=p){let O=[];for(let k=0;k<w.length;k+=E){let S=w.slice(k,k+E);O.push(S)}return O}var p=65535;function f(w,E){if(E.length>p){let O=h(E);return w.apply(null,O.map(k=>w.apply(null,k)))}else return w.apply(null,E)}function y(w){let E=w.nodes().map(O=>{let k=w.node(O).rank;return k===void 0?Number.MIN_VALUE:k});return f(Math.max,E)}function x(w,E){let O={lhs:[],rhs:[]};return w.forEach(k=>{E(k)?O.lhs.push(k):O.rhs.push(k)}),O}function b(w,E){let O=Date.now();try{return E()}finally{console.log(w+" time: "+(Date.now()-O)+"ms")}}function N(w,E){return E()}var m=0;function C(w){return w+(""+ ++m)}function M(w,E,O=1){E??(E=w,w=0);let k=D=>D<E;O<0&&(k=D=>E<D);let S=[];for(let D=w;k(D);D+=O)S.push(D);return S}function _(w,E){let O={};for(let k of E)w[k]!==void 0&&(O[k]=w[k]);return O}function P(w,E){let O=E;return typeof E=="string"&&(O=k=>k[E]),Object.entries(w).reduce((k,[S,D])=>(k[S]=O(D,S),k),{})}function j(w,E){return w.reduce((O,k,S)=>(O[k]=E[S],O),{})}})),Sl=q(((t,e)=>{var n=El(),o=se().uniqueId;e.exports={run:i,undo:a};function i(l){(l.graph().acyclicer==="greedy"?n(l,s(l)):d(l)).forEach(c=>{let u=l.edge(c);l.removeEdge(c),u.forwardName=c.name,u.reversed=!0,l.setEdge(c.w,c.v,u,o("rev"))});function s(c){return u=>c.edge(u).weight}}function d(l){let s=[],c={},u={};function r(g){Object.hasOwn(u,g)||(u[g]=!0,c[g]=!0,l.outEdges(g).forEach(h=>{Object.hasOwn(c,h.w)?s.push(h):r(h.w)}),delete c[g])}return l.nodes().forEach(r),s}function a(l){l.edges().forEach(s=>{let c=l.edge(s);if(c.reversed){l.removeEdge(s);let u=c.forwardName;delete c.reversed,delete c.forwardName,l.setEdge(s.w,s.v,c,u)}})}})),Cl=q(((t,e)=>{var n=se();e.exports={run:o,undo:d};function o(a){a.graph().dummyChains=[],a.edges().forEach(l=>i(a,l))}function i(a,l){let s=l.v,c=a.node(s).rank,u=l.w,r=a.node(u).rank,g=l.name,h=a.edge(l),p=h.labelRank;if(r===c+1)return;a.removeEdge(l);let f,y,x;for(x=0,++c;c<r;++x,++c)h.points=[],y={width:0,height:0,edgeLabel:h,edgeObj:l,rank:c},f=n.addDummyNode(a,"edge",y,"_d"),c===p&&(y.width=h.width,y.height=h.height,y.dummy="edge-label",y.labelpos=h.labelpos),a.setEdge(s,f,{weight:h.weight},g),x===0&&a.graph().dummyChains.push(f),s=f;a.setEdge(s,u,{weight:h.weight},g)}function d(a){a.graph().dummyChains.forEach(l=>{let s=a.node(l),c=s.edgeLabel,u;for(a.setEdge(s.edgeObj,c);s.dummy;)u=a.successors(l)[0],a.removeNode(l),c.points.push({x:s.x,y:s.y}),s.dummy==="edge-label"&&(c.x=s.x,c.y=s.y,c.width=s.width,c.height=s.height),l=u,s=a.node(l)})}})),Nt=q(((t,e)=>{var{applyWithChunking:n}=se();e.exports={longestPath:o,slack:i};function o(d){var a={};function l(s){var c=d.node(s);if(Object.hasOwn(a,s))return c.rank;a[s]=!0;let u=d.outEdges(s).map(g=>g==null?1/0:l(g.w)-d.edge(g).minlen);var r=n(Math.min,u);return r===1/0&&(r=0),c.rank=r}d.sources().forEach(l)}function i(d,a){return d.node(a.w).rank-d.node(a.v).rank-d.edge(a).minlen}})),nr=q(((t,e)=>{var n=ve().Graph,o=Nt().slack;e.exports=i;function i(s){var c=new n({directed:!1}),u=s.nodes()[0],r=s.nodeCount();c.setNode(u,{});for(var g,h;d(c,s)<r;)g=a(c,s),h=c.hasNode(g.v)?o(s,g):-o(s,g),l(c,s,h);return c}function d(s,c){function u(r){c.nodeEdges(r).forEach(g=>{var h=g.v,p=r===h?g.w:h;!s.hasNode(p)&&!o(c,g)&&(s.setNode(p,{}),s.setEdge(r,p,{}),u(p))})}return s.nodes().forEach(u),s.nodeCount()}function a(s,c){return c.edges().reduce((u,r)=>{let g=1/0;return s.hasNode(r.v)!==s.hasNode(r.w)&&(g=o(c,r)),g<u[0]?[g,r]:u},[1/0,null])[1]}function l(s,c,u){s.nodes().forEach(r=>c.node(r).rank+=u)}})),Nl=q(((t,e)=>{var n=nr(),o=Nt().slack,i=Nt().longestPath,d=ve().alg.preorder,a=ve().alg.postorder,l=se().simplify;e.exports=s,s.initLowLimValues=g,s.initCutValues=c,s.calcCutValue=r,s.leaveEdge=p,s.enterEdge=f,s.exchangeEdges=y;function s(m){m=l(m),i(m);var C=n(m);g(C),c(C,m);for(var M,_;M=p(C);)_=f(C,m,M),y(C,m,M,_)}function c(m,C){var M=a(m,m.nodes());M=M.slice(0,M.length-1),M.forEach(_=>u(m,C,_))}function u(m,C,M){var _=m.node(M).parent;m.edge(M,_).cutvalue=r(m,C,M)}function r(m,C,M){var _=m.node(M).parent,P=!0,j=C.edge(M,_),w=0;return j||(j=(P=!1,C.edge(_,M))),w=j.weight,C.nodeEdges(M).forEach(E=>{var O=E.v===M,k=O?E.w:E.v;if(k!==_){var S=O===P,D=C.edge(E).weight;if(w+=S?D:-D,b(m,M,k)){var L=m.edge(M,k).cutvalue;w+=S?-L:L}}}),w}function g(m,C){arguments.length<2&&(C=m.nodes()[0]),h(m,{},1,C)}function h(m,C,M,_,P){var j=M,w=m.node(_);return C[_]=!0,m.neighbors(_).forEach(E=>{Object.hasOwn(C,E)||(M=h(m,C,M,E,_))}),w.low=j,w.lim=M++,P?w.parent=P:delete w.parent,M}function p(m){return m.edges().find(C=>m.edge(C).cutvalue<0)}function f(m,C,M){var _=M.v,P=M.w;C.hasEdge(_,P)||(_=M.w,P=M.v);var j=m.node(_),w=m.node(P),E=j,O=!1;return j.lim>w.lim&&(E=w,O=!0),C.edges().filter(k=>O===N(m,m.node(k.v),E)&&O!==N(m,m.node(k.w),E)).reduce((k,S)=>o(C,S)<o(C,k)?S:k)}function y(m,C,M,_){var P=M.v,j=M.w;m.removeEdge(P,j),m.setEdge(_.v,_.w,{}),g(m),c(m,C),x(m,C)}function x(m,C){var M=d(m,m.nodes().find(_=>!C.node(_).parent));M=M.slice(1),M.forEach(_=>{var P=m.node(_).parent,j=C.edge(_,P),w=!1;j||(j=C.edge(P,_),w=!0),C.node(_).rank=C.node(P).rank+(w?j.minlen:-j.minlen)})}function b(m,C,M){return m.hasEdge(C,M)}function N(m,C,M){return M.low<=C.lim&&C.lim<=M.lim}})),kl=q(((t,e)=>{var n=Nt().longestPath,o=nr(),i=Nl();e.exports=d;function d(c){var u=c.graph().ranker;if(u instanceof Function)return u(c);switch(c.graph().ranker){case"network-simplex":s(c);break;case"tight-tree":l(c);break;case"longest-path":a(c);break;case"none":break;default:s(c)}}var a=n;function l(c){n(c),o(c)}function s(c){i(c)}})),Ml=q(((t,e)=>{e.exports=n;function n(d){let a=i(d);d.graph().dummyChains.forEach(l=>{let s=d.node(l),c=s.edgeObj,u=o(d,a,c.v,c.w),r=u.path,g=u.lca,h=0,p=r[h],f=!0;for(;l!==c.w;){if(s=d.node(l),f){for(;(p=r[h])!==g&&d.node(p).maxRank<s.rank;)h++;p===g&&(f=!1)}if(!f){for(;h<r.length-1&&d.node(p=r[h+1]).minRank<=s.rank;)h++;p=r[h]}d.setParent(l,p),l=d.successors(l)[0]}})}function o(d,a,l,s){let c=[],u=[],r=Math.min(a[l].low,a[s].low),g=Math.max(a[l].lim,a[s].lim),h,p;h=l;do h=d.parent(h),c.push(h);while(h&&(a[h].low>r||g>a[h].lim));for(p=h,h=s;(h=d.parent(h))!==p;)u.push(h);return{path:c.concat(u.reverse()),lca:p}}function i(d){let a={},l=0;function s(c){let u=l;d.children(c).forEach(s),a[c]={low:u,lim:l++}}return d.children().forEach(s),a}})),Ol=q(((t,e)=>{var n=se();e.exports={run:o,cleanup:l};function o(s){let c=n.addDummyNode(s,"root",{},"_root"),u=d(s),r=Object.values(u),g=n.applyWithChunking(Math.max,r)-1,h=2*g+1;s.graph().nestingRoot=c,s.edges().forEach(f=>s.edge(f).minlen*=h);let p=a(s)+1;s.children().forEach(f=>i(s,c,h,p,g,u,f)),s.graph().nodeRankFactor=h}function i(s,c,u,r,g,h,p){let f=s.children(p);if(!f.length){p!==c&&s.setEdge(c,p,{weight:0,minlen:u});return}let y=n.addBorderNode(s,"_bt"),x=n.addBorderNode(s,"_bb"),b=s.node(p);s.setParent(y,p),b.borderTop=y,s.setParent(x,p),b.borderBottom=x,f.forEach(N=>{i(s,c,u,r,g,h,N);let m=s.node(N),C=m.borderTop?m.borderTop:N,M=m.borderBottom?m.borderBottom:N,_=m.borderTop?r:2*r,P=C===M?g-h[p]+1:1;s.setEdge(y,C,{weight:_,minlen:P,nestingEdge:!0}),s.setEdge(M,x,{weight:_,minlen:P,nestingEdge:!0})}),s.parent(p)||s.setEdge(c,y,{weight:0,minlen:g+h[p]})}function d(s){var c={};function u(r,g){var h=s.children(r);h&&h.length&&h.forEach(p=>u(p,g+1)),c[r]=g}return s.children().forEach(r=>u(r,1)),c}function a(s){return s.edges().reduce((c,u)=>c+s.edge(u).weight,0)}function l(s){var c=s.graph();s.removeNode(c.nestingRoot),delete c.nestingRoot,s.edges().forEach(u=>{s.edge(u).nestingEdge&&s.removeEdge(u)})}})),_l=q(((t,e)=>{var n=se();e.exports=o;function o(d){function a(l){let s=d.children(l),c=d.node(l);if(s.length&&s.forEach(a),Object.hasOwn(c,"minRank")){c.borderLeft=[],c.borderRight=[];for(let u=c.minRank,r=c.maxRank+1;u<r;++u)i(d,"borderLeft","_bl",l,c,u),i(d,"borderRight","_br",l,c,u)}}d.children().forEach(a)}function i(d,a,l,s,c,u){let r={width:0,height:0,rank:u,borderType:a},g=c[a][u-1],h=n.addDummyNode(d,"border",r,l);c[a][u]=h,d.setParent(h,s),g&&d.setEdge(g,h,{weight:1})}})),jl=q(((t,e)=>{e.exports={adjust:n,undo:o};function n(u){let r=u.graph().rankdir.toLowerCase();(r==="lr"||r==="rl")&&i(u)}function o(u){let r=u.graph().rankdir.toLowerCase();(r==="bt"||r==="rl")&&a(u),(r==="lr"||r==="rl")&&(s(u),i(u))}function i(u){u.nodes().forEach(r=>d(u.node(r))),u.edges().forEach(r=>d(u.edge(r)))}function d(u){let r=u.width;u.width=u.height,u.height=r}function a(u){u.nodes().forEach(r=>l(u.node(r))),u.edges().forEach(r=>{let g=u.edge(r);g.points.forEach(l),Object.hasOwn(g,"y")&&l(g)})}function l(u){u.y=-u.y}function s(u){u.nodes().forEach(r=>c(u.node(r))),u.edges().forEach(r=>{let g=u.edge(r);g.points.forEach(c),Object.hasOwn(g,"x")&&c(g)})}function c(u){let r=u.x;u.x=u.y,u.y=r}})),Pl=q(((t,e)=>{var n=se();e.exports=o;function o(i){let d={},a=i.nodes().filter(r=>!i.children(r).length),l=a.map(r=>i.node(r).rank),s=n.applyWithChunking(Math.max,l),c=n.range(s+1).map(()=>[]);function u(r){d[r]||(d[r]=!0,c[i.node(r).rank].push(r),i.successors(r).forEach(u))}return a.sort((r,g)=>i.node(r).rank-i.node(g).rank).forEach(u),c}})),Il=q(((t,e)=>{var n=se().zipObject;e.exports=o;function o(d,a){let l=0;for(let s=1;s<a.length;++s)l+=i(d,a[s-1],a[s]);return l}function i(d,a,l){let s=n(l,l.map((p,f)=>f)),c=a.flatMap(p=>d.outEdges(p).map(f=>({pos:s[f.w],weight:d.edge(f).weight})).sort((f,y)=>f.pos-y.pos)),u=1;for(;u<l.length;)u<<=1;let r=2*u-1;--u;let g=Array(r).fill(0),h=0;return c.forEach(p=>{let f=p.pos+u;g[f]+=p.weight;let y=0;for(;f>0;)f%2&&(y+=g[f+1]),f=f-1>>1,g[f]+=p.weight;h+=p.weight*y}),h}})),Rl=q(((t,e)=>{e.exports=n;function n(o,i=[]){return i.map(d=>{let a=o.inEdges(d);if(a.length){let l=a.reduce((s,c)=>{let u=o.edge(c),r=o.node(c.v);return{sum:s.sum+u.weight*r.order,weight:s.weight+u.weight}},{sum:0,weight:0});return{v:d,barycenter:l.sum/l.weight,weight:l.weight}}else return{v:d}})}})),Dl=q(((t,e)=>{var n=se();e.exports=o;function o(a,l){let s={};return a.forEach((c,u)=>{let r=s[c.v]={indegree:0,in:[],out:[],vs:[c.v],i:u};c.barycenter!==void 0&&(r.barycenter=c.barycenter,r.weight=c.weight)}),l.edges().forEach(c=>{let u=s[c.v],r=s[c.w];u!==void 0&&r!==void 0&&(r.indegree++,u.out.push(s[c.w]))}),i(Object.values(s).filter(c=>!c.indegree))}function i(a){let l=[];function s(u){return r=>{r.merged||(r.barycenter===void 0||u.barycenter===void 0||r.barycenter>=u.barycenter)&&d(u,r)}}function c(u){return r=>{r.in.push(u),--r.indegree===0&&a.push(r)}}for(;a.length;){let u=a.pop();l.push(u),u.in.reverse().forEach(s(u)),u.out.forEach(c(u))}return l.filter(u=>!u.merged).map(u=>n.pick(u,["vs","i","barycenter","weight"]))}function d(a,l){let s=0,c=0;a.weight&&(s+=a.barycenter*a.weight,c+=a.weight),l.weight&&(s+=l.barycenter*l.weight,c+=l.weight),a.vs=l.vs.concat(a.vs),a.barycenter=s/c,a.weight=c,a.i=Math.min(l.i,a.i),l.merged=!0}})),Al=q(((t,e)=>{var n=se();e.exports=o;function o(a,l){let s=n.partition(a,y=>Object.hasOwn(y,"barycenter")),c=s.lhs,u=s.rhs.sort((y,x)=>x.i-y.i),r=[],g=0,h=0,p=0;c.sort(d(!!l)),p=i(r,u,p),c.forEach(y=>{p+=y.vs.length,r.push(y.vs),g+=y.barycenter*y.weight,h+=y.weight,p=i(r,u,p)});let f={vs:r.flat(!0)};return h&&(f.barycenter=g/h,f.weight=h),f}function i(a,l,s){let c;for(;l.length&&(c=l[l.length-1]).i<=s;)l.pop(),a.push(c.vs),s++;return s}function d(a){return(l,s)=>l.barycenter<s.barycenter?-1:l.barycenter>s.barycenter?1:a?s.i-l.i:l.i-s.i}})),Bl=q(((t,e)=>{var n=Rl(),o=Dl(),i=Al();e.exports=d;function d(s,c,u,r){let g=s.children(c),h=s.node(c),p=h?h.borderLeft:void 0,f=h?h.borderRight:void 0,y={};p&&(g=g.filter(m=>m!==p&&m!==f));let x=n(s,g);x.forEach(m=>{if(s.children(m.v).length){let C=d(s,m.v,u,r);y[m.v]=C,Object.hasOwn(C,"barycenter")&&l(m,C)}});let b=o(x,u);a(b,y);let N=i(b,r);if(p&&(N.vs=[p,N.vs,f].flat(!0),s.predecessors(p).length)){let m=s.node(s.predecessors(p)[0]),C=s.node(s.predecessors(f)[0]);Object.hasOwn(N,"barycenter")||(N.barycenter=0,N.weight=0),N.barycenter=(N.barycenter*N.weight+m.order+C.order)/(N.weight+2),N.weight+=2}return N}function a(s,c){s.forEach(u=>{u.vs=u.vs.flatMap(r=>c[r]?c[r].vs:r)})}function l(s,c){s.barycenter===void 0?(s.barycenter=c.barycenter,s.weight=c.weight):(s.barycenter=(s.barycenter*s.weight+c.barycenter*c.weight)/(s.weight+c.weight),s.weight+=c.weight)}})),zl=q(((t,e)=>{var n=ve().Graph,o=se();e.exports=i;function i(a,l,s,c){c||(c=a.nodes());let u=d(a),r=new n({compound:!0}).setGraph({root:u}).setDefaultNodeLabel(g=>a.node(g));return c.forEach(g=>{let h=a.node(g),p=a.parent(g);(h.rank===l||h.minRank<=l&&l<=h.maxRank)&&(r.setNode(g),r.setParent(g,p||u),a[s](g).forEach(f=>{let y=f.v===g?f.w:f.v,x=r.edge(y,g),b=x===void 0?0:x.weight;r.setEdge(y,g,{weight:a.edge(f).weight+b})}),Object.hasOwn(h,"minRank")&&r.setNode(g,{borderLeft:h.borderLeft[l],borderRight:h.borderRight[l]}))}),r}function d(a){for(var l;a.hasNode(l=o.uniqueId("_root")););return l}})),Ll=q(((t,e)=>{e.exports=n;function n(o,i,d){let a={},l;d.forEach(s=>{let c=o.parent(s),u,r;for(;c;){if(u=o.parent(c),u?(r=a[u],a[u]=c):(r=l,l=c),r&&r!==c){i.setEdge(r,c);return}c=u}})}})),$l=q(((t,e)=>{var n=Pl(),o=Il(),i=Bl(),d=zl(),a=Ll(),l=ve().Graph,s=se();e.exports=c;function c(h,p){if(p&&typeof p.customOrder=="function"){p.customOrder(h,c);return}let f=s.maxRank(h),y=u(h,s.range(1,f+1),"inEdges"),x=u(h,s.range(f-1,-1,-1),"outEdges"),b=n(h);if(g(h,b),p&&p.disableOptimalOrderHeuristic)return;let N=1/0,m;for(let C=0,M=0;M<4;++C,++M){r(C%2?y:x,C%4>=2),b=s.buildLayerMatrix(h);let _=o(h,b);_<N&&(M=0,m=Object.assign({},b),N=_)}g(h,m)}function u(h,p,f){let y=new Map,x=(b,N)=>{y.has(b)||y.set(b,[]),y.get(b).push(N)};for(let b of h.nodes()){let N=h.node(b);if(typeof N.rank=="number"&&x(N.rank,b),typeof N.minRank=="number"&&typeof N.maxRank=="number")for(let m=N.minRank;m<=N.maxRank;m++)m!==N.rank&&x(m,b)}return p.map(function(b){return d(h,b,f,y.get(b)||[])})}function r(h,p){let f=new l;h.forEach(function(y){let x=y.graph().root,b=i(y,x,f,p);b.vs.forEach((N,m)=>y.node(N).order=m),a(y,f,b.vs)})}function g(h,p){Object.values(p).forEach(f=>f.forEach((y,x)=>h.node(y).order=x))}})),Tl=q(((t,e)=>{var n=ve().Graph,o=se();e.exports={positionX:f,findType1Conflicts:i,findType2Conflicts:d,addConflict:l,hasConflict:s,verticalAlignment:c,horizontalCompaction:u,alignCoordinates:h,findSmallestWidthAlignment:g,balance:p};function i(b,N){let m={};function C(M,_){let P=0,j=0,w=M.length,E=_[_.length-1];return _.forEach((O,k)=>{let S=a(b,O),D=S?b.node(S).order:w;(S||O===E)&&(_.slice(j,k+1).forEach(L=>{b.predecessors(L).forEach($=>{let W=b.node($),R=W.order;(R<P||D<R)&&!(W.dummy&&b.node(L).dummy)&&l(m,$,L)})}),j=k+1,P=D)}),_}return N.length&&N.reduce(C),m}function d(b,N){let m={};function C(_,P,j,w,E){let O;o.range(P,j).forEach(k=>{O=_[k],b.node(O).dummy&&b.predecessors(O).forEach(S=>{let D=b.node(S);D.dummy&&(D.order<w||D.order>E)&&l(m,S,O)})})}function M(_,P){let j=-1,w,E=0;return P.forEach((O,k)=>{if(b.node(O).dummy==="border"){let S=b.predecessors(O);S.length&&(w=b.node(S[0]).order,C(P,E,k,j,w),E=k,j=w)}C(P,E,P.length,w,_.length)}),P}return N.length&&N.reduce(M),m}function a(b,N){if(b.node(N).dummy)return b.predecessors(N).find(m=>b.node(m).dummy)}function l(b,N,m){if(N>m){let M=N;N=m,m=M}let C=b[N];C||(b[N]=C={}),C[m]=!0}function s(b,N,m){if(N>m){let C=N;N=m,m=C}return!!b[N]&&Object.hasOwn(b[N],m)}function c(b,N,m,C){let M={},_={},P={};return N.forEach(j=>{j.forEach((w,E)=>{M[w]=w,_[w]=w,P[w]=E})}),N.forEach(j=>{let w=-1;j.forEach(E=>{let O=C(E);if(O.length){O=O.sort((S,D)=>P[S]-P[D]);let k=(O.length-1)/2;for(let S=Math.floor(k),D=Math.ceil(k);S<=D;++S){let L=O[S];_[E]===E&&w<P[L]&&!s(m,E,L)&&(_[L]=E,_[E]=M[E]=M[L],w=P[L])}}})}),{root:M,align:_}}function u(b,N,m,C,M){let _={},P=r(b,N,m,M),j=M?"borderLeft":"borderRight";function w(k,S){let D=P.nodes(),L=D.pop(),$={};for(;L;)$[L]?k(L):($[L]=!0,D.push(L),D=D.concat(S(L))),L=D.pop()}function E(k){_[k]=P.inEdges(k).reduce((S,D)=>Math.max(S,_[D.v]+P.edge(D)),0)}function O(k){let S=P.outEdges(k).reduce((L,$)=>Math.min(L,_[$.w]-P.edge($)),1/0),D=b.node(k);S!==1/0&&D.borderType!==j&&(_[k]=Math.max(_[k],S))}return w(E,P.predecessors.bind(P)),w(O,P.successors.bind(P)),Object.keys(C).forEach(k=>_[k]=_[m[k]]),_}function r(b,N,m,C){let M=new n,_=b.graph(),P=y(_.nodesep,_.edgesep,C);return N.forEach(j=>{let w;j.forEach(E=>{let O=m[E];if(M.setNode(O),w){var k=m[w],S=M.edge(k,O);M.setEdge(k,O,Math.max(P(b,E,w),S||0))}w=E})}),M}function g(b,N){return Object.values(N).reduce((m,C)=>{let M=-1/0,_=1/0;Object.entries(C).forEach(([j,w])=>{let E=x(b,j)/2;M=Math.max(w+E,M),_=Math.min(w-E,_)});let P=M-_;return P<m[0]&&(m=[P,C]),m},[1/0,null])[1]}function h(b,N){let m=Object.values(N),C=o.applyWithChunking(Math.min,m),M=o.applyWithChunking(Math.max,m);["u","d"].forEach(_=>{["l","r"].forEach(P=>{let j=_+P,w=b[j];if(w===N)return;let E=Object.values(w),O=C-o.applyWithChunking(Math.min,E);P!=="l"&&(O=M-o.applyWithChunking(Math.max,E)),O&&(b[j]=o.mapValues(w,k=>k+O))})})}function p(b,N){return o.mapValues(b.ul,(m,C)=>{if(N)return b[N.toLowerCase()][C];{let M=Object.values(b).map(_=>_[C]).sort((_,P)=>_-P);return(M[1]+M[2])/2}})}function f(b){let N=o.buildLayerMatrix(b),m=Object.assign(i(b,N),d(b,N)),C={},M;return["u","d"].forEach(_=>{M=_==="u"?N:Object.values(N).reverse(),["l","r"].forEach(P=>{P==="r"&&(M=M.map(O=>Object.values(O).reverse()));let j=(_==="u"?b.predecessors:b.successors).bind(b),w=c(b,M,m,j),E=u(b,M,w.root,w.align,P==="r");P==="r"&&(E=o.mapValues(E,O=>-O)),C[_+P]=E})}),h(C,g(b,C)),p(C,b.graph().align)}function y(b,N,m){return(C,M,_)=>{let P=C.node(M),j=C.node(_),w=0,E;if(w+=P.width/2,Object.hasOwn(P,"labelpos"))switch(P.labelpos.toLowerCase()){case"l":E=-P.width/2;break;case"r":E=P.width/2;break}if(E&&(w+=m?E:-E),E=0,w+=(P.dummy?N:b)/2,w+=(j.dummy?N:b)/2,w+=j.width/2,Object.hasOwn(j,"labelpos"))switch(j.labelpos.toLowerCase()){case"l":E=j.width/2;break;case"r":E=-j.width/2;break}return E&&(w+=m?E:-E),E=0,w}}function x(b,N){return b.node(N).width}})),Hl=q(((t,e)=>{var n=se(),o=Tl().positionX;e.exports=i;function i(a){a=n.asNonCompoundGraph(a),d(a),Object.entries(o(a)).forEach(([l,s])=>a.node(l).x=s)}function d(a){let l=n.buildLayerMatrix(a),s=a.graph().ranksep,c=0;l.forEach(u=>{let r=u.reduce((g,h)=>{let p=a.node(h).height;return g>p?g:p},0);u.forEach(g=>a.node(g).y=c+r/2),c+=r+s})}})),Vl=q(((t,e)=>{var n=Sl(),o=Cl(),i=kl(),d=se().normalizeRanks,a=Ml(),l=se().removeEmptyRanks,s=Ol(),c=_l(),u=jl(),r=$l(),g=Hl(),h=se(),p=ve().Graph;e.exports=f;function f(I,A){let z=A&&A.debugTiming?h.time:h.notime;z("layout",()=>{let H=z(" buildLayoutGraph",()=>w(I));z(" runLayout",()=>y(H,z,A)),z(" updateInputGraph",()=>x(I,H))})}function y(I,A,z){A(" makeSpaceForEdgeLabels",()=>E(I)),A(" removeSelfEdges",()=>T(I)),A(" acyclic",()=>n.run(I)),A(" nestingGraph.run",()=>s.run(I)),A(" rank",()=>i(h.asNonCompoundGraph(I))),A(" injectEdgeLabelProxies",()=>O(I)),A(" removeEmptyRanks",()=>l(I)),A(" nestingGraph.cleanup",()=>s.cleanup(I)),A(" normalizeRanks",()=>d(I)),A(" assignRankMinMax",()=>k(I)),A(" removeEdgeLabelProxies",()=>S(I)),A(" normalize.run",()=>o.run(I)),A(" parentDummyChains",()=>a(I)),A(" addBorderSegments",()=>c(I)),A(" order",()=>r(I,z)),A(" insertSelfEdges",()=>V(I)),A(" adjustCoordinateSystem",()=>u.adjust(I)),A(" position",()=>g(I)),A(" positionSelfEdges",()=>F(I)),A(" removeBorderNodes",()=>R(I)),A(" normalize.undo",()=>o.undo(I)),A(" fixupEdgeLabelCoords",()=>$(I)),A(" undoCoordinateSystem",()=>u.undo(I)),A(" translateGraph",()=>D(I)),A(" assignNodeIntersects",()=>L(I)),A(" reversePoints",()=>W(I)),A(" acyclic.undo",()=>n.undo(I))}function x(I,A){I.nodes().forEach(z=>{let H=I.node(z),Y=A.node(z);H&&(H.x=Y.x,H.y=Y.y,H.rank=Y.rank,A.children(z).length&&(H.width=Y.width,H.height=Y.height))}),I.edges().forEach(z=>{let H=I.edge(z),Y=A.edge(z);H.points=Y.points,Object.hasOwn(Y,"x")&&(H.x=Y.x,H.y=Y.y)}),I.graph().width=A.graph().width,I.graph().height=A.graph().height}var b=["nodesep","edgesep","ranksep","marginx","marginy"],N={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},m=["acyclicer","ranker","rankdir","align"],C=["width","height","rank"],M={width:0,height:0},_=["minlen","weight","width","height","labeloffset"],P={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},j=["labelpos"];function w(I){let A=new p({multigraph:!0,compound:!0}),z=U(I.graph());return A.setGraph(Object.assign({},N,Z(z,b),h.pick(z,m))),I.nodes().forEach(H=>{let Y=Z(U(I.node(H)),C);Object.keys(M).forEach(G=>{Y[G]===void 0&&(Y[G]=M[G])}),A.setNode(H,Y),A.setParent(H,I.parent(H))}),I.edges().forEach(H=>{let Y=U(I.edge(H));A.setEdge(H,Object.assign({},P,Z(Y,_),h.pick(Y,j)))}),A}function E(I){let A=I.graph();A.ranksep/=2,I.edges().forEach(z=>{let H=I.edge(z);H.minlen*=2,H.labelpos.toLowerCase()!=="c"&&(A.rankdir==="TB"||A.rankdir==="BT"?H.width+=H.labeloffset:H.height+=H.labeloffset)})}function O(I){I.edges().forEach(A=>{let z=I.edge(A);if(z.width&&z.height){let H=I.node(A.v),Y={rank:(I.node(A.w).rank-H.rank)/2+H.rank,e:A};h.addDummyNode(I,"edge-proxy",Y,"_ep")}})}function k(I){let A=0;I.nodes().forEach(z=>{let H=I.node(z);H.borderTop&&(H.minRank=I.node(H.borderTop).rank,H.maxRank=I.node(H.borderBottom).rank,A=Math.max(A,H.maxRank))}),I.graph().maxRank=A}function S(I){I.nodes().forEach(A=>{let z=I.node(A);z.dummy==="edge-proxy"&&(I.edge(z.e).labelRank=z.rank,I.removeNode(A))})}function D(I){let A=1/0,z=0,H=1/0,Y=0,G=I.graph(),ee=G.marginx||0,ae=G.marginy||0;function ge(oe){let J=oe.x,de=oe.y,te=oe.width,K=oe.height;A=Math.min(A,J-te/2),z=Math.max(z,J+te/2),H=Math.min(H,de-K/2),Y=Math.max(Y,de+K/2)}I.nodes().forEach(oe=>ge(I.node(oe))),I.edges().forEach(oe=>{let J=I.edge(oe);Object.hasOwn(J,"x")&&ge(J)}),A-=ee,H-=ae,I.nodes().forEach(oe=>{let J=I.node(oe);J.x-=A,J.y-=H}),I.edges().forEach(oe=>{let J=I.edge(oe);J.points.forEach(de=>{de.x-=A,de.y-=H}),Object.hasOwn(J,"x")&&(J.x-=A),Object.hasOwn(J,"y")&&(J.y-=H)}),G.width=z-A+ee,G.height=Y-H+ae}function L(I){I.edges().forEach(A=>{let z=I.edge(A),H=I.node(A.v),Y=I.node(A.w),G,ee;z.points?(G=z.points[0],ee=z.points[z.points.length-1]):(z.points=[],G=Y,ee=H),z.points.unshift(h.intersectRect(H,G)),z.points.push(h.intersectRect(Y,ee))})}function $(I){I.edges().forEach(A=>{let z=I.edge(A);if(Object.hasOwn(z,"x"))switch((z.labelpos==="l"||z.labelpos==="r")&&(z.width-=z.labeloffset),z.labelpos){case"l":z.x-=z.width/2+z.labeloffset;break;case"r":z.x+=z.width/2+z.labeloffset;break}})}function W(I){I.edges().forEach(A=>{let z=I.edge(A);z.reversed&&z.points.reverse()})}function R(I){I.nodes().forEach(A=>{if(I.children(A).length){let z=I.node(A),H=I.node(z.borderTop),Y=I.node(z.borderBottom),G=I.node(z.borderLeft[z.borderLeft.length-1]),ee=I.node(z.borderRight[z.borderRight.length-1]);z.width=Math.abs(ee.x-G.x),z.height=Math.abs(Y.y-H.y),z.x=G.x+z.width/2,z.y=H.y+z.height/2}}),I.nodes().forEach(A=>{I.node(A).dummy==="border"&&I.removeNode(A)})}function T(I){I.edges().forEach(A=>{if(A.v===A.w){var z=I.node(A.v);z.selfEdges||(z.selfEdges=[]),z.selfEdges.push({e:A,label:I.edge(A)}),I.removeEdge(A)}})}function V(I){h.buildLayerMatrix(I).forEach(A=>{var z=0;A.forEach((H,Y)=>{var G=I.node(H);G.order=Y+z,(G.selfEdges||[]).forEach(ee=>{h.addDummyNode(I,"selfedge",{width:ee.label.width,height:ee.label.height,rank:G.rank,order:Y+ ++z,e:ee.e,label:ee.label},"_se")}),delete G.selfEdges})})}function F(I){I.nodes().forEach(A=>{var z=I.node(A);if(z.dummy==="selfedge"){var H=I.node(z.e.v),Y=H.x+H.width/2,G=H.y,ee=z.x-Y,ae=H.height/2;I.setEdge(z.e,z.label),I.removeNode(A),z.label.points=[{x:Y+2*ee/3,y:G-ae},{x:Y+5*ee/6,y:G-ae},{x:Y+ee,y:G},{x:Y+5*ee/6,y:G+ae},{x:Y+2*ee/3,y:G+ae}],z.label.x=z.x,z.label.y=z.y}})}function Z(I,A){return h.mapValues(h.pick(I,A),Number)}function U(I){var A={};return I&&Object.entries(I).forEach(([z,H])=>{typeof z=="string"&&(z=z.toLowerCase()),A[z]=H}),A}})),Fl=q(((t,e)=>{var n=se(),o=ve().Graph;e.exports={debugOrdering:i};function i(d){let a=n.buildLayerMatrix(d),l=new o({compound:!0,multigraph:!0}).setGraph({});return d.nodes().forEach(s=>{l.setNode(s,{label:s}),l.setParent(s,"layer"+d.node(s).rank)}),d.edges().forEach(s=>l.setEdge(s.v,s.w,{},s.name)),a.forEach((s,c)=>{let u="layer"+c;l.setNode(u,{rank:"same"}),s.reduce((r,g)=>(l.setEdge(r,g,{style:"invis"}),g))}),l}})),Wl=q(((t,e)=>{e.exports="1.1.8"})),or=q(((t,e)=>{e.exports={graphlib:ve(),layout:Vl(),debug:Fl(),util:{time:se().time,notime:se().notime},version:Wl()}}))(),ut=new or.graphlib.Graph().setDefaultEdgeLabel(()=>({}));const rr=({nodes:t,edges:e,direction:n})=>(ut.setGraph({rankdir:n,nodesep:150,ranksep:200,ranker:"longest-path"}),e.forEach(o=>ut.setEdge(o.source,o.target)),t.forEach(o=>ut.setNode(o.id,{...o,width:o.width??0,height:o.height??0})),(0,or.layout)(ut),{nodes:t.map(o=>{let{x:i,y:d}=ut.node(o.id);return{...o,position:{x:i,y:d}}}),edges:e});var Xl=De();function Yl(){let t=(0,Xl.c)(7),e=lt(),n=ne(Kl),o=ne(Zl),i;t[0]===e?i=t[1]:(i=()=>{e.fitView({duration:100})},t[0]=e,t[1]=i);let d=_a(i,100),a,l;t[2]!==d||t[3]!==o||t[4]!==n?(a=()=>{!n||!o||d()},l=[n,o,d],t[2]=d,t[3]=o,t[4]=n,t[5]=a,t[6]=l):(a=t[5],l=t[6]),(0,v.useEffect)(a,l)}function Zl(t){let{height:e}=t;return e}function Kl(t){let{width:e}=t;return e}var Gl=De(),ar=new rl;const Ul=t=>{let e=(0,Gl.c)(45),{cellIds:n,variables:o,cellAtoms:i,children:d,layoutDirection:a,settings:l}=t,s;e[0]!==i||e[1]!==n||e[2]!==a||e[3]!==l.hidePureMarkdown||e[4]!==l.hideReusableFunctions||e[5]!==o?(s=()=>{let R=ar.createElements(n,i,o,l.hidePureMarkdown,l.hideReusableFunctions);return R=rr({nodes:R.nodes,edges:R.edges,direction:a}),R},e[0]=i,e[1]=n,e[2]=a,e[3]=l.hidePureMarkdown,e[4]=l.hideReusableFunctions,e[5]=o,e[6]=s):s=e[6];let[c]=(0,v.useState)(s),[u,r,g]=Vs(c.nodes),[h,p,f]=Fs(c.edges),y=lt(),x;e[7]!==a||e[8]!==p||e[9]!==r?(x=R=>{let T=rr({nodes:R.nodes,edges:R.edges,direction:a});r(T.nodes),p(T.edges)},e[7]=a,e[8]=p,e[9]=r,e[10]=x):x=e[10];let b=Gr(x),N,m;e[11]!==i||e[12]!==n||e[13]!==l.hidePureMarkdown||e[14]!==l.hideReusableFunctions||e[15]!==b||e[16]!==o?(N=()=>{b(ar.createElements(n,i,o,l.hidePureMarkdown,l.hideReusableFunctions))},m=[n,o,i,b,l.hidePureMarkdown,l.hideReusableFunctions],e[11]=i,e[12]=n,e[13]=l.hidePureMarkdown,e[14]=l.hideReusableFunctions,e[15]=b,e[16]=o,e[17]=N,e[18]=m):(N=e[17],m=e[18]),(0,v.useEffect)(N,m);let[C,M]=(0,v.useState)();Yl();let _;e[19]===Symbol.for("react.memo_cache_sentinel")?(_=()=>{M(void 0)},e[19]=_):_=e[19];let P=_,j,w,E;e[20]===Symbol.for("react.memo_cache_sentinel")?(j={minZoom:.5,maxZoom:1.5},w=(R,T)=>{M({type:"node",id:T.id})},E=(R,T)=>{let{source:V,target:F}=T;M({type:"edge",source:V,target:F})},e[20]=j,e[21]=w,e[22]=E):(j=e[20],w=e[21],E=e[22]);let O;e[23]===Symbol.for("react.memo_cache_sentinel")?(O=(0,B.jsx)(nl,{color:"#ccc",variant:ye.Dots}),e[23]=O):O=e[23];let k;e[24]!==y||e[25]!==u?(k=()=>{let R=jt.get(Ia);if(R){let T=u.find(V=>V.id===R);T&&(y.fitView({padding:1,duration:600,nodes:[T]}),M({type:"node",id:R}))}},e[24]=y,e[25]=u,e[26]=k):k=e[26];let S;e[27]===Symbol.for("react.memo_cache_sentinel")?(S=(0,B.jsx)(Wa,{className:"size-4"}),e[27]=S):S=e[27];let D;e[28]===k?D=e[29]:(D=(0,B.jsx)(Us,{position:"bottom-right",showInteractive:!1,children:(0,B.jsx)(Sa,{content:"Jump to focused cell",delayDuration:200,side:"left",asChild:!1,children:(0,B.jsx)(et,{onMouseDown:ua.preventFocus,onClick:k,children:S})})}),e[28]=k,e[29]=D);let L;e[30]!==h||e[31]!==C||e[32]!==o?(L=(0,B.jsx)(Uo,{selection:C,variables:o,edges:h,onClearSelection:P}),e[30]=h,e[31]=C,e[32]=o,e[33]=L):L=e[33];let $;e[34]!==d||e[35]!==h||e[36]!==u||e[37]!==f||e[38]!==g||e[39]!==D||e[40]!==L?($=(0,B.jsxs)(Ho,{nodes:u,edges:h,nodeTypes:il,minZoom:.2,fitViewOptions:j,onNodeClick:w,onEdgeClick:E,onNodeDoubleClick:ql,fitView:!0,onNodesChange:g,onEdgesChange:f,zoomOnDoubleClick:!1,nodesConnectable:!1,children:[O,D,L,d]}),e[34]=d,e[35]=h,e[36]=u,e[37]=f,e[38]=g,e[39]=D,e[40]=L,e[41]=$):$=e[41];let W;return e[42]!==a||e[43]!==$?(W=(0,B.jsx)(Yo,{value:a,children:$}),e[42]=a,e[43]=$,e[44]=W):W=e[44],W};function ql(t,e){ja(e.id,"focus")}var Ql=De(),Jl=Pt("TB"),ed=Pt({hidePureMarkdown:!0,hideReusableFunctions:!1});const td=t=>{let e=(0,Ql.c)(13),[n,o]=bn(Jl),[i,d]=bn(ed),a;e[0]!==n||e[1]!==o||e[2]!==d||e[3]!==i?(a=(0,B.jsx)(Go,{settings:i,onSettingsChange:d,view:n,onChange:o}),e[0]=n,e[1]=o,e[2]=d,e[3]=i,e[4]=a):a=e[4];let l;e[5]!==n||e[6]!==t||e[7]!==i||e[8]!==a?(l=(0,B.jsx)(Ul,{...t,settings:i,layoutDirection:n,children:a}),e[5]=n,e[6]=t,e[7]=i,e[8]=a,e[9]=l):l=e[9];let s;return e[10]!==n||e[11]!==l?(s=(0,B.jsx)(un,{children:l},n),e[10]=n,e[11]=l,e[12]=s):s=e[12],s};function pn(t,e,n=new Set){if(n.has(t))return new Set;n.add(t);let o=new Set;for(let i of e(t)){o.add(i);for(let d of pn(i,e,n))o.add(d)}return o}function nd(t,e){var i,d,a;let n=new Map;for(let l of t)n.set(l,{variables:new Set,parents:new Set,children:new Set});for(let l of Object.values(e))if(l.dataType!=="module")for(let s of l.declaredBy){(i=n.get(s))==null||i.variables.add(l.name);for(let c of l.usedBy)s!==c&&((d=n.get(c))==null||d.parents.add(s),(a=n.get(s))==null||a.children.add(c))}let o={};for(let[l,s]of n.entries())o[l]={parents:s.parents,children:s.children,variables:[...s.variables],ancestors:pn(l,c=>{var u;return((u=n.get(c))==null?void 0:u.parents)??new Set}),descendants:pn(l,c=>{var u;return((u=n.get(c))==null?void 0:u.children)??new Set})};return o}const od=Pt(t=>{let e=t(ra),n=t(ta);return nd(e.inOrderIds,n)});function rd(t,e){return e?t.usedBy.includes(e.id)||t.declaredBy.includes(e.id)?!0:t.declaredBy.some(n=>e.graph.parents.has(n))?t.usedBy.some(n=>e.graph.parents.has(n)):!!t.declaredBy.some(n=>e.graph.children.has(n)):!1}var ir=new ea,sr=new Jr;function lr(t){for(let e of t.split(`
4
4
  `)){let n=e.trim();if(n.length>0)return n}}function ad(t){var n;let e=t.trim();if(ir.isSupported(e)){let{code:o}=ir.transformIn(e);return{text:lr(o),type:"markdown"}}if(sr.isSupported(e)){let{code:o}=sr.transformIn(e);return{text:lr(o),type:"sql"}}return{text:((n=e.split(`