db-studio 1.22.0 → 1.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/dist/index.js +73 -73
  2. package/dist/index.js.map +1 -1
  3. package/dist/web-dist/assets/{_pathlessLayout-B1Kz-W33.js → _pathlessLayout-DSa9oCv7.js} +2 -2
  4. package/dist/web-dist/assets/{_pathlessLayout-VlxJ22m7.js → _pathlessLayout-cWL0DLLP.js} +1 -1
  5. package/dist/web-dist/assets/{_queryId-Dbj-IcwP.js → _queryId-BpuDZLTe.js} +1 -1
  6. package/dist/web-dist/assets/{_table-BX2mnK0X.js → _table-2zBt4xqy.js} +1 -1
  7. package/dist/web-dist/assets/{_table-zomRrDzJ.js → _table-CeHfinOA.js} +1 -1
  8. package/dist/web-dist/assets/{_table-C51xDj3B.js → _table-DBhcrzbS.js} +1 -1
  9. package/dist/web-dist/assets/{abap-WFOkJ0Iq.js → abap-DzlCVsad.js} +1 -1
  10. package/dist/web-dist/assets/{apex-YVFiOjrR.js → apex-C_Pm42rA.js} +1 -1
  11. package/dist/web-dist/assets/{azcli-CNCyjR-l.js → azcli-DwTZ9rLW.js} +1 -1
  12. package/dist/web-dist/assets/{badge-toiaU9we.js → badge-CICZ5YYl.js} +1 -1
  13. package/dist/web-dist/assets/{bat-MCIBQfPZ.js → bat-CcSGFJ07.js} +1 -1
  14. package/dist/web-dist/assets/{bicep-dF6uY2qF.js → bicep-CV25SKpm.js} +1 -1
  15. package/dist/web-dist/assets/{browser-tIWI45_M.js → browser-65-7v1wD.js} +1 -1
  16. package/dist/web-dist/assets/{bundle-mjs-D0ioGaqI.js → bundle-mjs-BILTDsu3.js} +1 -1
  17. package/dist/web-dist/assets/{cameligo-BQUsXhaa.js → cameligo-C3sXLv6w.js} +1 -1
  18. package/dist/web-dist/assets/{chat-sidebar-DgxY1Pbe.js → chat-sidebar-D1MXISzU.js} +4 -4
  19. package/dist/web-dist/assets/{clojure-BhZRzslc.js → clojure-CY5eMzac.js} +1 -1
  20. package/dist/web-dist/assets/{code-editor-BZb9MYGN.js → code-editor-BlEG6Tv7.js} +1 -1
  21. package/dist/web-dist/assets/{coffee-C8HNjPDJ.js → coffee-DjvFxh9v.js} +1 -1
  22. package/dist/web-dist/assets/{connect-D1_593bU.js → connect-DEJ-wzu_.js} +1 -1
  23. package/dist/web-dist/assets/{constants-BQTFFySQ.js → constants-CWI44Fpb.js} +3 -3
  24. package/dist/web-dist/assets/{cpp-B8qti7_b.js → cpp-D2TewJLS.js} +1 -1
  25. package/dist/web-dist/assets/{csharp-C0cZzzkE.js → csharp-zmJyg7IQ.js} +1 -1
  26. package/dist/web-dist/assets/{csp-MhIFVcNf.js → csp-DAnwxP42.js} +1 -1
  27. package/dist/web-dist/assets/{css-DBN9tA4J.js → css-CHWvPVnU.js} +1 -1
  28. package/dist/web-dist/assets/{cssMode-BWRNCxOx.js → cssMode-BfGbLIoh.js} +1 -1
  29. package/dist/web-dist/assets/{cypher-DJ_pw7h5.js → cypher-DFxF3P6w.js} +1 -1
  30. package/dist/web-dist/assets/{dart-F3nMHSfK.js → dart-BzCCWEJY.js} +1 -1
  31. package/dist/web-dist/assets/{database.store-B1rRjEg4.js → database.store-C7UybiY8.js} +9 -9
  32. package/dist/web-dist/assets/{dist-ChADfney.js → dist-BklmFc40.js} +1 -1
  33. package/dist/web-dist/assets/{dist-CVJtjQTa.js → dist-hEU4yATV.js} +1 -1
  34. package/dist/web-dist/assets/{dockerfile-CysYjGrO.js → dockerfile-DkONesga.js} +1 -1
  35. package/dist/web-dist/assets/{ecl-DIUXSvGP.js → ecl-47mbb6Zb.js} +1 -1
  36. package/dist/web-dist/assets/{editor.api-CuMlpyu0.js → editor.api-u7KJNncE.js} +1 -1
  37. package/dist/web-dist/assets/{elixir-B7ult7Ux.js → elixir-Dz9Hcike.js} +1 -1
  38. package/dist/web-dist/assets/{esm-BknY1CA1.js → esm-t4cW-Cjg.js} +1 -1
  39. package/dist/web-dist/assets/{flow9-BFvvZ9ik.js → flow9-gLS9fYAo.js} +1 -1
  40. package/dist/web-dist/assets/{format-cell-value-DqIzj4LE.js → format-cell-value-CutsoTsV.js} +1 -1
  41. package/dist/web-dist/assets/{freemarker2-BhR2Ql4x.js → freemarker2-ivsFK9ku.js} +1 -1
  42. package/dist/web-dist/assets/{fsharp-BdsIEhwp.js → fsharp-Cpm-ad4z.js} +1 -1
  43. package/dist/web-dist/assets/{go-DWe2xaHS.js → go-1_yFg3Lt.js} +1 -1
  44. package/dist/web-dist/assets/{graphql-kWxQb-iM.js → graphql-mVcTUiKl.js} +1 -1
  45. package/dist/web-dist/assets/{handlebars-CUcn1o_r.js → handlebars-CWBM0u1D.js} +1 -1
  46. package/dist/web-dist/assets/{hcl-JeQo50WC.js → hcl-r_X8u7_T.js} +1 -1
  47. package/dist/web-dist/assets/{highlighted-body-OFNGDK62-BdEluyYo.js → highlighted-body-OFNGDK62-hBrh0VBQ.js} +1 -1
  48. package/dist/web-dist/assets/{html-C_JUNAt1.js → html-D5Y3F0jr.js} +1 -1
  49. package/dist/web-dist/assets/{htmlMode-EwQz6V0Q.js → htmlMode-CRbiOTqG.js} +1 -1
  50. package/dist/web-dist/assets/{icons-GcbEpn9M.js → icons-DqpsVskx.js} +1 -1
  51. package/dist/web-dist/assets/{index-C5X9j38l.js → index-AQMdz5bn.js} +4 -4
  52. package/dist/web-dist/assets/{indexes-DLb1Uw4h.js → indexes-CLT0DKih.js} +1 -1
  53. package/dist/web-dist/assets/{ini-BxF77OPh.js → ini-Wam-eFkS.js} +1 -1
  54. package/dist/web-dist/assets/{java-35HWAIfL.js → java-Dc0-4NBY.js} +1 -1
  55. package/dist/web-dist/assets/{javascript-EhgBTSbU.js → javascript-CDFuqIFx.js} +1 -1
  56. package/dist/web-dist/assets/{json-editor-ByvySVR1.js → json-editor-BB8Hth6U.js} +1 -1
  57. package/dist/web-dist/assets/{jsonMode-Dcapyp_k.js → jsonMode-DvNGK1B1.js} +1 -1
  58. package/dist/web-dist/assets/{julia-BNuPscTy.js → julia-D-jimn6E.js} +1 -1
  59. package/dist/web-dist/assets/{keys-IL-jue3e.js → keys-CFLK1AV2.js} +1 -1
  60. package/dist/web-dist/assets/{kotlin-WhqpDSL9.js → kotlin-6vuHYksB.js} +1 -1
  61. package/dist/web-dist/assets/{label-DnmSND3X.js → label-RC_Cv8kc.js} +1 -1
  62. package/dist/web-dist/assets/{less-B7ZalX3Q.js → less-BfuEnTz4.js} +1 -1
  63. package/dist/web-dist/assets/{lexon-Dv-iKJBo.js → lexon-BNO_-sEN.js} +1 -1
  64. package/dist/web-dist/assets/{liquid-xjLeLKWY.js → liquid-C--NvHHn.js} +1 -1
  65. package/dist/web-dist/assets/{logs-Dgscz_qB.js → logs-BJlOZTBf.js} +1 -1
  66. package/dist/web-dist/assets/{lspLanguageFeatures-txWi423T.js → lspLanguageFeatures-Dllbtf83.js} +1 -1
  67. package/dist/web-dist/assets/{lua-Dw0Ng6_o.js → lua-B4ZIp3-L.js} +1 -1
  68. package/dist/web-dist/assets/{m3-BzTFxX8n.js → m3-B--HZxsC.js} +1 -1
  69. package/dist/web-dist/assets/{markdown-DH-yzTwm.js → markdown-C6gUsLH4.js} +1 -1
  70. package/dist/web-dist/assets/{mdx-DDFyRire.js → mdx-_P5aZcFG.js} +1 -1
  71. package/dist/web-dist/assets/{mermaid-GHXKKRXX-BZrvxC2B.js → mermaid-GHXKKRXX-BJQtasqs.js} +1 -1
  72. package/dist/web-dist/assets/{middleware-5iFNnPjv.js → middleware-UkjejqwX.js} +1 -1
  73. package/dist/web-dist/assets/{mips-CzaU_zzk.js → mips-CskcJPXz.js} +1 -1
  74. package/dist/web-dist/assets/{module-DUcNetq9.js → module-BmmU89-p.js} +1 -1
  75. package/dist/web-dist/assets/{monaco-theme-CbhwGI2X.js → monaco-theme-COQ8oULH.js} +4 -4
  76. package/dist/web-dist/assets/{msdax-DFJmYuq_.js → msdax-CJeMITWa.js} +1 -1
  77. package/dist/web-dist/assets/{mysql-BCChwFZe.js → mysql-CAuSn9_z.js} +1 -1
  78. package/dist/web-dist/assets/{objective-c-H6bRbDo4.js → objective-c-D-WdbcBP.js} +1 -1
  79. package/dist/web-dist/assets/{pascal-tUfSUg9_.js → pascal-C7LyqozK.js} +1 -1
  80. package/dist/web-dist/assets/{pascaligo-BRyiH7-C.js → pascaligo-BOIH6wav.js} +1 -1
  81. package/dist/web-dist/assets/{perl-2nv9yZa2.js → perl-3EwTw4Jw.js} +1 -1
  82. package/dist/web-dist/assets/{personal-preferences.store-Bn1jjoS7.js → personal-preferences.store-BMBctLhq.js} +1 -1
  83. package/dist/web-dist/assets/{pgsql-Y8XdTuXS.js → pgsql-BJRqMZ1U.js} +1 -1
  84. package/dist/web-dist/assets/{php-DLR7NjyO.js → php-CfRASVKV.js} +1 -1
  85. package/dist/web-dist/assets/{pla-t-iWqHXX.js → pla-NA0wLuQy.js} +1 -1
  86. package/dist/web-dist/assets/{postiats-DdliQ1Xg.js → postiats-BGjHHMRu.js} +1 -1
  87. package/dist/web-dist/assets/{powerquery-DBzKYhdM.js → powerquery-D3AJHrLl.js} +1 -1
  88. package/dist/web-dist/assets/{powershell-BYjZe9jw.js → powershell-BlID8L0E.js} +1 -1
  89. package/dist/web-dist/assets/{preload-helper-BKGvvwaw.js → preload-helper-BrUSzZH1.js} +1 -1
  90. package/dist/web-dist/assets/{protobuf-BMpz808_.js → protobuf-DLttbrfJ.js} +1 -1
  91. package/dist/web-dist/assets/{pug-m-9DaP5r.js → pug-D4Qkf_wn.js} +1 -1
  92. package/dist/web-dist/assets/{python-ByM6owOE.js → python-3U_5XAVl.js} +1 -1
  93. package/dist/web-dist/assets/{qsharp-C722_gk8.js → qsharp-BUWZ8vX2.js} +1 -1
  94. package/dist/web-dist/assets/{queries.store-DvoUxjik.js → queries.store-C70M3Vmz.js} +1 -1
  95. package/dist/web-dist/assets/{query-runner-JR3riBgI.js → query-runner-C6cgirly.js} +3 -3
  96. package/dist/web-dist/assets/{r-MN5LGctm.js → r-0aMiebCw.js} +1 -1
  97. package/dist/web-dist/assets/{radix-ui-C_RxnUOP.js → radix-ui-O7fUb8xo.js} +1 -1
  98. package/dist/web-dist/assets/{razor-DWh-N5ct.js → razor-VHVyPSVZ.js} +1 -1
  99. package/dist/web-dist/assets/{react-DbIG49vF.js → react-CvQHOIeW.js} +1 -1
  100. package/dist/web-dist/assets/{react-dom-C2TrwR2T.js → react-dom-DfLaW97o.js} +1 -1
  101. package/dist/web-dist/assets/{redis-BD0-ddb4.js → redis-B_ZdA8_C.js} +1 -1
  102. package/dist/web-dist/assets/{redis-value-BuCNWzYH.js → redis-value-rEw2L5Jz.js} +1 -1
  103. package/dist/web-dist/assets/{redshift-CYs4no-J.js → redshift-D032qGzI.js} +1 -1
  104. package/dist/web-dist/assets/{restructuredtext-_ytOx-UI.js → restructuredtext-CPXtBkad.js} +1 -1
  105. package/dist/web-dist/assets/{rolldown-runtime-Di8pEKbV.js → rolldown-runtime-gZ9xeEJX.js} +1 -1
  106. package/dist/web-dist/assets/{ruby-CAgA9FIu.js → ruby-Cc58AEkc.js} +1 -1
  107. package/dist/web-dist/assets/{runner-BCzRHwKz.js → runner-Cbm_B5Yc.js} +1 -1
  108. package/dist/web-dist/assets/{rust-PbfiuCov.js → rust-nhSrY6y0.js} +1 -1
  109. package/dist/web-dist/assets/{sb-Sia-CghV.js → sb-B189dO30.js} +1 -1
  110. package/dist/web-dist/assets/{scala-ZImQRTRc.js → scala-ByY1N9jf.js} +1 -1
  111. package/dist/web-dist/assets/{schema-fFTe1BzV.js → schema-BeVOGgm9.js} +1 -1
  112. package/dist/web-dist/assets/{schema-A-a9is-Y.js → schema-CA8HRQn4.js} +1 -1
  113. package/dist/web-dist/assets/{scheme-BoZtbC5A.js → scheme-Cr6WKXQ2.js} +1 -1
  114. package/dist/web-dist/assets/{scss-BjhuhmFV.js → scss-B6IvVxZs.js} +1 -1
  115. package/dist/web-dist/assets/{select-M2uunOZt.js → select-Dlg0EO2A.js} +1 -1
  116. package/dist/web-dist/assets/{separator-DB8KbaN1.js → separator-5JMh-AIn.js} +1 -1
  117. package/dist/web-dist/assets/{sheet-sidebar-xMAbhIed.js → sheet-sidebar-CQuumF-m.js} +1 -1
  118. package/dist/web-dist/assets/{shell-D3tqEZva.js → shell-DvVcLEeW.js} +1 -1
  119. package/dist/web-dist/assets/{solidity-CkleyNm-.js → solidity-Dtgy_5l0.js} +1 -1
  120. package/dist/web-dist/assets/{sophia-DE5Yfv56.js → sophia-KMMSK0sk.js} +1 -1
  121. package/dist/web-dist/assets/{sparql-CqGQVKaz.js → sparql-05Qryz5Y.js} +1 -1
  122. package/dist/web-dist/assets/{spinner-2NEuRz3N.js → spinner-es6eKuYv.js} +1 -1
  123. package/dist/web-dist/assets/{sql-DRhhaTM-.js → sql-BaBGIzuh.js} +1 -1
  124. package/dist/web-dist/assets/{st-BEzw-XCi.js → st-BuU8wU7S.js} +1 -1
  125. package/dist/web-dist/assets/{swift-BUCDz8m3.js → swift-DGDt1Lla.js} +1 -1
  126. package/dist/web-dist/assets/{systemverilog-CleMVTkC.js → systemverilog-BgYZ6FQj.js} +1 -1
  127. package/dist/web-dist/assets/{table-CdX2vE_K.js → table-qUuVeP3A.js} +1 -1
  128. package/dist/web-dist/assets/{tables-DXy1sCpY.js → tables-pmCHvPGP.js} +4 -4
  129. package/dist/web-dist/assets/{tanstack-BA1WGGtm.js → tanstack-D3kotKHJ.js} +1 -1
  130. package/dist/web-dist/assets/{tcl-DWM_3q8Z.js → tcl-BJSoaCxE.js} +1 -1
  131. package/dist/web-dist/assets/{tooltip-H8tZ3i8c.js → tooltip-iEHDw5ij.js} +1 -1
  132. package/dist/web-dist/assets/{tsMode-DiuMLMwz.js → tsMode-DMhImvd8.js} +1 -1
  133. package/dist/web-dist/assets/{twig-C-X1D37B.js → twig-s2ga9poj.js} +1 -1
  134. package/dist/web-dist/assets/{typescript-Bfr8I-2Y.js → typescript-CLLk4yHV.js} +1 -1
  135. package/dist/web-dist/assets/{typespec-C7OUJVKC.js → typespec-BQelfI_J.js} +1 -1
  136. package/dist/web-dist/assets/{use-database-engine-OQf6N706.js → use-database-engine-DxYqFY4d.js} +1 -1
  137. package/dist/web-dist/assets/{use-theme-DWjF47vb.js → use-theme-93QM-Vlr.js} +1 -1
  138. package/dist/web-dist/assets/{utils-nVh8q9zh.js → utils-BAOO2O6e.js} +1 -1
  139. package/dist/web-dist/assets/{vb-DyBFoTZO.js → vb-C4lfujQq.js} +1 -1
  140. package/dist/web-dist/assets/{visualizer-iAzNS5sw.js → visualizer-BdAHr0UX.js} +1 -1
  141. package/dist/web-dist/assets/{vscode-C1sSF23w.js → vscode-DcjbmH2j.js} +1 -1
  142. package/dist/web-dist/assets/{wgsl-5-zJj1gX.js → wgsl-B-ihAMM9.js} +1 -1
  143. package/dist/web-dist/assets/{workers-CzfLEsle.js → workers-Boc2D1Ms.js} +1 -1
  144. package/dist/web-dist/assets/{xml-CJ62tlSX.js → xml-gzkQkYEl.js} +1 -1
  145. package/dist/web-dist/assets/{yaml-DCMtlpln.js → yaml-DtxYcXp8.js} +1 -1
  146. package/dist/web-dist/index.html +30 -30
  147. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/json-editor-ByvySVR1.js","assets/rolldown-runtime-Di8pEKbV.js","assets/icons-GcbEpn9M.js","assets/radix-ui-C_RxnUOP.js","assets/utils-nVh8q9zh.js","assets/bundle-mjs-D0ioGaqI.js","assets/personal-preferences.store-Bn1jjoS7.js","assets/react-DbIG49vF.js","assets/middleware-5iFNnPjv.js","assets/use-theme-DWjF47vb.js","assets/editor.api-CuMlpyu0.js","assets/preload-helper-BKGvvwaw.js","assets/editor-1FQrmyyI.css","assets/monaco-theme-CbhwGI2X.js","assets/monaco-theme-BnSsSzUH.css","assets/_table-C51xDj3B.js"])))=>i.map(i=>d[i]);
2
- import{n as xr,r as zs}from"./rolldown-runtime-Di8pEKbV.js";import{C as ot,E as Je,a as ia,i as la,l as Ys,m as Bs,n as ca,o as Ls,p as $s,r as nn,v as Ks,w as yr}from"./tanstack-BA1WGGtm.js";import{B as ua,Ct as Vs,E as Us,It as Hs,Mt as qs,Nt as Js,Pt as Gs,St as an,T as da,Tt as Qs,U as Zs,Y as fa,b as Xs,bt as ma,ct as eo,et as to,jt as no,kt as ro,n as Mn,pt as Jn,q as ao,s as ha,vt as so,w as oo,wt as io,xt as pa,y as lo,yt as vr}from"./icons-GcbEpn9M.js";import{Ct as co,Et as uo,St as fo,Tt as mo,_ as ga,bt as ho,g as po,h as xa,jt as go,m as ya,wt as xo,xt as yo,yt as vo}from"./radix-ui-C_RxnUOP.js";import{n as Ae}from"./dist-CVJtjQTa.js";import{t as z}from"./utils-nVh8q9zh.js";import{t as br}from"./spinner-2NEuRz3N.js";import{n as J,t as Ft}from"./dist-ChADfney.js";import{A as va,G as bo,J as wo,K as Co,M as ba,N as wr,W as So,Y as jo,_ as Nn,b as Do,c as Cr,d as ko,h as Sr,k as No,l as To,n as wa,q as Eo,s as jr,u as $e,v as ce,w as Ce,x as Oo,y as Ca}from"./schema-A-a9is-Y.js";import{n as ve,r as Mo,t as we}from"./label-DnmSND3X.js";import{a as he,i as nt,n as rt,o as W,r as Ut,s as Ir,t as at}from"./tooltip-H8tZ3i8c.js";import{f as He,r as sn,t as bt}from"./sheet-sidebar-xMAbhIed.js";import{t as on}from"./react-DbIG49vF.js";import{D as Ro,E as _o,O as Ao,V as Po,_ as Fo,d as Wo,k as Sa,l as Io,m as zo,n as Yo,t as L,y as Bo}from"./constants-BQTFFySQ.js";import{i as ln,t as pe}from"./database.store-B1rRjEg4.js";import{t as ja}from"./preload-helper-BKGvvwaw.js";import{a as cn,c as Tt,d as Et,f as Ot,i as it,l as Mt,m as me,n as Yt,o as Rt,p as _t,r as Lo,s as At,t as $o,u as Pt}from"./badge-toiaU9we.js";import{a as Pe,i as Fe,n as We,r as Q,t as Ie}from"./select-M2uunOZt.js";import{t as Rn}from"./use-database-engine-OQf6N706.js";import{s as ue}from"./keys-IL-jue3e.js";import{t as qe}from"./format-cell-value-DqIzj4LE.js";import{n as Ko,r as Vo,t as zr}from"./separator-DB8KbaN1.js";import{t as Uo}from"./middleware-5iFNnPjv.js";import{r as Ho}from"./personal-preferences.store-Bn1jjoS7.js";import{n as qo,t as Jo}from"./vscode-C1sSF23w.js";import{t as Go}from"./use-theme-DWjF47vb.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{};e.SENTRY_RELEASE={id:"db-studio@1.22.0"};var t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="6f8f7919-78e0-4eb9-8738-db445396b302",e._sentryDebugIdIdentifier="sentry-dbid-6f8f7919-78e0-4eb9-8738-db445396b302")}catch{}})();var u=zs(Hs(),1),a=go();function Ne({className:e,...t}){return(0,a.jsx)("kbd",{"data-slot":"kbd",className:z("bg-muted text-muted-foreground border [[data-slot=tooltip-content]_&]:bg-background/20 [[data-slot=tooltip-content]_&]:text-background dark:[[data-slot=tooltip-content]_&]:bg-background/10 h-5 w-fit min-w-5 gap-1 rounded-xs px-1 font-sans text-[0.625rem] font-medium [&_svg:not([class*='size-'])]:size-3 pointer-events-none inline-flex items-center justify-center select-none",e),...t})}var Ff=()=>{const e=Je(),{selectedDatabase:t}=pe(),{mutateAsync:n,isPending:r,reset:s}=ot({mutationFn:async({tableName:c,schemaName:i,cascade:f=!1})=>(await Io({tableName:c,schemaName:i,db:t,cascade:f})).data.data,onSuccess:async()=>{await e.invalidateQueries({queryKey:ue.lists()})}});return{deleteTable:async(c,i)=>{const f=n({tableName:c,schemaName:i,cascade:!1});return Ae.promise(f,{loading:"Deleting table...",success:d=>d.fkViolation?`Table "${c}" has related records`:`Deleted table "${c}" with ${d.deletedCount} rows`,error:d=>d.message||"Failed to delete table"}),f},forceDeleteTable:async(c,i)=>{const f=n({tableName:c,schemaName:i,cascade:!0});return Ae.promise(f,{loading:"Deleting table...",success:d=>`Force deleted table "${c}" with ${d.deletedCount} rows`,error:d=>d.message||"Failed to delete table"}),f},isDeletingTable:r,resetDeleteResult:s}},Wf=()=>{const{selectedDatabase:e,dbType:t}=pe(),{mutateAsync:n,isPending:r}=ot({mutationFn:async({tableName:o,schemaName:l,format:c})=>{const i=await Wo({tableName:o,schemaName:l,format:c,db:e}),f=i.headers["content-disposition"],d=(typeof f=="string"?f:void 0)?.match(/filename="(.+)"/)?.[1]||`${o}_export.${c}`,m=i.headers["content-type"],p=typeof m=="string"?m:"application/octet-stream",g=new Blob([i.data],{type:p}),w=window.URL.createObjectURL(g),S=document.createElement("a");S.href=w,S.download=d,document.body.appendChild(S),S.click(),document.body.removeChild(S),window.URL.revokeObjectURL(w),t&&ln.capture("record_exported",{db_type:t,format:c})}});return{exportFile:async o=>Ae.promise(n(o),{loading:"Exporting file...",success:"File exported successfully",error:l=>l.message||"Failed to export file"}),isExportingFile:r}},If=({tableName:e,schemaName:t})=>{const n=Je(),{selectedDatabase:r}=pe(),{mutateAsync:s,isPending:o}=ot({mutationFn:async c=>(await Bo({tableName:e,data:{...c,schemaName:t},db:r})).data.data,onSuccess:async()=>{await n.invalidateQueries({queryKey:ue.lists()}),await n.removeQueries({queryKey:[L.CACHE_KEYS.TABLE_DATA,e]}),await n.removeQueries({queryKey:[L.CACHE_KEYS.TABLE_COLUMNS,e]})}});return{renameTable:async(c,i)=>{const f=s(c,i);return Ae.promise(f,{loading:"Renaming table...",success:d=>d||"Table renamed successfully",error:d=>typeof d.details=="string"&&d.details||d.message||"Failed to rename table"}),f},isRenamingTable:o}},zf=()=>{const{selectedDatabase:e}=pe(),{data:t,isLoading:n,error:r}=yr({queryKey:ue.list(e),queryFn:()=>Fo(e),select:s=>s.data.data,enabled:!!e});return{tablesList:t,isLoadingTablesList:n,errorTablesList:r}},Qo=365.2425,Zo=Math.pow(10,8)*24*60*60*1e3,Yf=-Zo,Da=6048e5,Xo=864e5,ei=3600,ka=ei*24,Bf=ka*7,ti=ka*Qo,ni=ti/12,Lf=ni*3,Yr=Symbol.for("constructDateFrom");function ie(e,t){return typeof e=="function"?e(t):e&&typeof e=="object"&&Yr in e?e[Yr](t):e instanceof Date?new e.constructor(t):new Date(t)}function te(e,t){return ie(t||e,e)}function Tn(e,t,n){const r=te(e,n?.in);return isNaN(t)?ie(n?.in||e,NaN):(t&&r.setDate(r.getDate()+t),r)}function Na(e,t,n){const r=te(e,n?.in);if(isNaN(t))return ie(n?.in||e,NaN);if(!t)return r;const s=r.getDate(),o=ie(n?.in||e,r.getTime());return o.setMonth(r.getMonth()+t+1,0),s>=o.getDate()?o:(r.setFullYear(o.getFullYear(),o.getMonth(),s),r)}var ri={};function un(){return ri}function Wt(e,t){const n=un(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,s=te(e,t?.in),o=s.getDay(),l=(o<r?7:0)+o-r;return s.setDate(s.getDate()-l),s.setHours(0,0,0,0),s}function rn(e,t){return Wt(e,{...t,weekStartsOn:1})}function Ta(e,t){const n=te(e,t?.in),r=n.getFullYear(),s=ie(n,0);s.setFullYear(r+1,0,4),s.setHours(0,0,0,0);const o=rn(s),l=ie(n,0);l.setFullYear(r,0,4),l.setHours(0,0,0,0);const c=rn(l);return n.getTime()>=o.getTime()?r+1:n.getTime()>=c.getTime()?r:r-1}function Br(e){const t=te(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),+e-+n}function Bt(e,...t){const n=ie.bind(null,e||t.find(r=>typeof r=="object"));return t.map(n)}function It(e,t){const n=te(e,t?.in);return n.setHours(0,0,0,0),n}function Dr(e,t,n){const[r,s]=Bt(n?.in,e,t),o=It(r),l=It(s),c=+o-Br(o),i=+l-Br(l);return Math.round((c-i)/Xo)}function ai(e,t){const n=Ta(e,t),r=ie(t?.in||e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),rn(r)}function si(e,t,n){return Tn(e,t*7,n)}function oi(e,t,n){return Na(e,t*12,n)}function ii(e,t){let n,r=t?.in;return e.forEach(s=>{!r&&typeof s=="object"&&(r=ie.bind(null,s));const o=te(s,r);(!n||n<o||isNaN(+o))&&(n=o)}),ie(r,n||NaN)}function li(e,t){let n,r=t?.in;return e.forEach(s=>{!r&&typeof s=="object"&&(r=ie.bind(null,s));const o=te(s,r);(!n||n>o||isNaN(+o))&&(n=o)}),ie(r,n||NaN)}function ci(e,t,n){const[r,s]=Bt(n?.in,e,t);return+It(r)==+It(s)}function Ea(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function ui(e){return!(!Ea(e)&&typeof e!="number"||isNaN(+te(e)))}function Oa(e,t,n){const[r,s]=Bt(n?.in,e,t),o=r.getFullYear()-s.getFullYear(),l=r.getMonth()-s.getMonth();return o*12+l}function di(e,t){const n=te(e,t?.in),r=n.getMonth();return n.setFullYear(n.getFullYear(),r+1,0),n.setHours(23,59,59,999),n}function Ma(e,t){const[n,r]=Bt(e,t.start,t.end);return{start:n,end:r}}function fi(e,t){const{start:n,end:r}=Ma(t?.in,e);let s=+n>+r;const o=s?+n:+r,l=s?r:n;l.setHours(0,0,0,0),l.setDate(1);let c=t?.step??1;if(!c)return[];c<0&&(c=-c,s=!s);const i=[];for(;+l<=o;)i.push(ie(n,l)),l.setMonth(l.getMonth()+c);return s?i.reverse():i}function mi(e,t){const n=te(e,t?.in);return n.setDate(1),n.setHours(0,0,0,0),n}function hi(e,t){const n=te(e,t?.in),r=n.getFullYear();return n.setFullYear(r+1,0,0),n.setHours(23,59,59,999),n}function Ra(e,t){const n=te(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}function pi(e,t){const{start:n,end:r}=Ma(t?.in,e);let s=+n>+r;const o=s?+n:+r,l=s?r:n;l.setHours(0,0,0,0),l.setMonth(0,1);let c=t?.step??1;if(!c)return[];c<0&&(c=-c,s=!s);const i=[];for(;+l<=o;)i.push(ie(n,l)),l.setFullYear(l.getFullYear()+c);return s?i.reverse():i}function _a(e,t){const n=un(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,s=te(e,t?.in),o=s.getDay(),l=(o<r?-7:0)+6-(o-r);return s.setDate(s.getDate()+l),s.setHours(23,59,59,999),s}function gi(e,t){return _a(e,{...t,weekStartsOn:1})}var xi={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},yi=(e,t,n)=>{let r;const s=xi[e];return typeof s=="string"?r=s:t===1?r=s.one:r=s.other.replace("{{count}}",t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function Gn(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}var vi={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},bi={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},wi={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Ci={date:Gn({formats:vi,defaultWidth:"full"}),time:Gn({formats:bi,defaultWidth:"full"}),dateTime:Gn({formats:wi,defaultWidth:"full"})},Si={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},ji=(e,t,n,r)=>Si[e];function Ht(e){return(t,n)=>{const r=n?.context?String(n.context):"standalone";let s;if(r==="formatting"&&e.formattingValues){const l=e.defaultFormattingWidth||e.defaultWidth,c=n?.width?String(n.width):l;s=e.formattingValues[c]||e.formattingValues[l]}else{const l=e.defaultWidth,c=n?.width?String(n.width):e.defaultWidth;s=e.values[c]||e.values[l]}const o=e.argumentCallback?e.argumentCallback(t):t;return s[o]}}var Di={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},ki={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Ni={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},Ti={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},Ei={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},Oi={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},Mi=(e,t)=>{const n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},Ri={ordinalNumber:Mi,era:Ht({values:Di,defaultWidth:"wide"}),quarter:Ht({values:ki,defaultWidth:"wide",argumentCallback:e=>e-1}),month:Ht({values:Ni,defaultWidth:"wide"}),day:Ht({values:Ti,defaultWidth:"wide"}),dayPeriod:Ht({values:Ei,defaultWidth:"wide",formattingValues:Oi,defaultFormattingWidth:"wide"})};function qt(e){return(t,n={})=>{const r=n.width,s=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],o=t.match(s);if(!o)return null;const l=o[0],c=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],i=Array.isArray(c)?Ai(c,m=>m.test(l)):_i(c,m=>m.test(l));let f;f=e.valueCallback?e.valueCallback(i):i,f=n.valueCallback?n.valueCallback(f):f;const d=t.slice(l.length);return{value:f,rest:d}}}function _i(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function Ai(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function Pi(e){return(t,n={})=>{const r=t.match(e.matchPattern);if(!r)return null;const s=r[0],o=t.match(e.parsePattern);if(!o)return null;let l=e.valueCallback?e.valueCallback(o[0]):o[0];l=n.valueCallback?n.valueCallback(l):l;const c=t.slice(s.length);return{value:l,rest:c}}}var Fi=/^(\d+)(th|st|nd|rd)?/i,Wi=/\d+/i,Ii={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},zi={any:[/^b/i,/^(a|c)/i]},Yi={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},Bi={any:[/1/i,/2/i,/3/i,/4/i]},Li={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},$i={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},Ki={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},Vi={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},Ui={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},Hi={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},qi={ordinalNumber:Pi({matchPattern:Fi,parsePattern:Wi,valueCallback:e=>parseInt(e,10)}),era:qt({matchPatterns:Ii,defaultMatchWidth:"wide",parsePatterns:zi,defaultParseWidth:"any"}),quarter:qt({matchPatterns:Yi,defaultMatchWidth:"wide",parsePatterns:Bi,defaultParseWidth:"any",valueCallback:e=>e+1}),month:qt({matchPatterns:Li,defaultMatchWidth:"wide",parsePatterns:$i,defaultParseWidth:"any"}),day:qt({matchPatterns:Ki,defaultMatchWidth:"wide",parsePatterns:Vi,defaultParseWidth:"any"}),dayPeriod:qt({matchPatterns:Ui,defaultMatchWidth:"any",parsePatterns:Hi,defaultParseWidth:"any"})},Nt={code:"en-US",formatDistance:yi,formatLong:Ci,formatRelative:ji,localize:Ri,match:qi,options:{weekStartsOn:0,firstWeekContainsDate:1}};function Ji(e,t){const n=te(e,t?.in);return Dr(n,Ra(n))+1}function kr(e,t){const n=te(e,t?.in),r=+rn(n)-+ai(n);return Math.round(r/Da)+1}function Aa(e,t){const n=te(e,t?.in),r=n.getFullYear(),s=un(),o=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??s.firstWeekContainsDate??s.locale?.options?.firstWeekContainsDate??1,l=ie(t?.in||e,0);l.setFullYear(r+1,0,o),l.setHours(0,0,0,0);const c=Wt(l,t),i=ie(t?.in||e,0);i.setFullYear(r,0,o),i.setHours(0,0,0,0);const f=Wt(i,t);return+n>=+c?r+1:+n>=+f?r:r-1}function Gi(e,t){const n=un(),r=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,s=Aa(e,t),o=ie(t?.in||e,0);return o.setFullYear(s,0,r),o.setHours(0,0,0,0),Wt(o,t)}function Nr(e,t){const n=te(e,t?.in),r=+Wt(n,t)-+Gi(n,t);return Math.round(r/Da)+1}function ee(e,t){return(e<0?"-":"")+Math.abs(e).toString().padStart(t,"0")}var tt={y(e,t){const n=e.getFullYear(),r=n>0?n:1-n;return ee(t==="yy"?r%100:r,t.length)},M(e,t){const n=e.getMonth();return t==="M"?String(n+1):ee(n+1,2)},d(e,t){return ee(e.getDate(),t.length)},a(e,t){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];default:return n==="am"?"a.m.":"p.m."}},h(e,t){return ee(e.getHours()%12||12,t.length)},H(e,t){return ee(e.getHours(),t.length)},m(e,t){return ee(e.getMinutes(),t.length)},s(e,t){return ee(e.getSeconds(),t.length)},S(e,t){const n=t.length,r=e.getMilliseconds(),s=Math.trunc(r*Math.pow(10,n-3));return ee(s,t.length)}},Dt={am:"am",pm:"pm",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},Lr={G:function(e,t,n){const r=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if(t==="yo"){const r=e.getFullYear(),s=r>0?r:1-r;return n.ordinalNumber(s,{unit:"year"})}return tt.y(e,t)},Y:function(e,t,n,r){const s=Aa(e,r),o=s>0?s:1-s;if(t==="YY"){const l=o%100;return ee(l,2)}return t==="Yo"?n.ordinalNumber(o,{unit:"year"}):ee(o,t.length)},R:function(e,t){const n=Ta(e);return ee(n,t.length)},u:function(e,t){const n=e.getFullYear();return ee(n,t.length)},Q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return ee(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return ee(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){const r=e.getMonth();switch(t){case"M":case"MM":return tt.M(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){const r=e.getMonth();switch(t){case"L":return String(r+1);case"LL":return ee(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){const s=Nr(e,r);return t==="wo"?n.ordinalNumber(s,{unit:"week"}):ee(s,t.length)},I:function(e,t,n){const r=kr(e);return t==="Io"?n.ordinalNumber(r,{unit:"week"}):ee(r,t.length)},d:function(e,t,n){return t==="do"?n.ordinalNumber(e.getDate(),{unit:"date"}):tt.d(e,t)},D:function(e,t,n){const r=Ji(e);return t==="Do"?n.ordinalNumber(r,{unit:"dayOfYear"}):ee(r,t.length)},E:function(e,t,n){const r=e.getDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){const s=e.getDay(),o=(s-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(o);case"ee":return ee(o,2);case"eo":return n.ordinalNumber(o,{unit:"day"});case"eee":return n.day(s,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(s,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(s,{width:"short",context:"formatting"});default:return n.day(s,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){const s=e.getDay(),o=(s-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(o);case"cc":return ee(o,t.length);case"co":return n.ordinalNumber(o,{unit:"day"});case"ccc":return n.day(s,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(s,{width:"narrow",context:"standalone"});case"cccccc":return n.day(s,{width:"short",context:"standalone"});default:return n.day(s,{width:"wide",context:"standalone"})}},i:function(e,t,n){const r=e.getDay(),s=r===0?7:r;switch(t){case"i":return String(s);case"ii":return ee(s,t.length);case"io":return n.ordinalNumber(s,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){const r=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},b:function(e,t,n){const r=e.getHours();let s;switch(r===12?s=Dt.noon:r===0?s=Dt.midnight:s=r/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(s,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(s,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(s,{width:"narrow",context:"formatting"});default:return n.dayPeriod(s,{width:"wide",context:"formatting"})}},B:function(e,t,n){const r=e.getHours();let s;switch(r>=17?s=Dt.evening:r>=12?s=Dt.afternoon:r>=4?s=Dt.morning:s=Dt.night,t){case"B":case"BB":case"BBB":return n.dayPeriod(s,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(s,{width:"narrow",context:"formatting"});default:return n.dayPeriod(s,{width:"wide",context:"formatting"})}},h:function(e,t,n){if(t==="ho"){let r=e.getHours()%12;return r===0&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return tt.h(e,t)},H:function(e,t,n){return t==="Ho"?n.ordinalNumber(e.getHours(),{unit:"hour"}):tt.H(e,t)},K:function(e,t,n){const r=e.getHours()%12;return t==="Ko"?n.ordinalNumber(r,{unit:"hour"}):ee(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t==="ko"?n.ordinalNumber(r,{unit:"hour"}):ee(r,t.length)},m:function(e,t,n){return t==="mo"?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):tt.m(e,t)},s:function(e,t,n){return t==="so"?n.ordinalNumber(e.getSeconds(),{unit:"second"}):tt.s(e,t)},S:function(e,t){return tt.S(e,t)},X:function(e,t,n){const r=e.getTimezoneOffset();if(r===0)return"Z";switch(t){case"X":return Kr(r);case"XXXX":case"XX":return ft(r);default:return ft(r,":")}},x:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"x":return Kr(r);case"xxxx":case"xx":return ft(r);default:return ft(r,":")}},O:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+$r(r,":");default:return"GMT"+ft(r,":")}},z:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+$r(r,":");default:return"GMT"+ft(r,":")}},t:function(e,t,n){const r=Math.trunc(+e/1e3);return ee(r,t.length)},T:function(e,t,n){return ee(+e,t.length)}};function $r(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),s=Math.trunc(r/60),o=r%60;return o===0?n+String(s):n+String(s)+t+ee(o,2)}function Kr(e,t){return e%60===0?(e>0?"-":"+")+ee(Math.abs(e)/60,2):ft(e,t)}function ft(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),s=ee(Math.trunc(r/60),2),o=ee(r%60,2);return n+s+t+o}var Vr=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});default:return t.date({width:"full"})}},Pa=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});default:return t.time({width:"full"})}},Qi=(e,t)=>{const n=e.match(/(P+)(p+)?/)||[],r=n[1],s=n[2];if(!s)return Vr(e,t);let o;switch(r){case"P":o=t.dateTime({width:"short"});break;case"PP":o=t.dateTime({width:"medium"});break;case"PPP":o=t.dateTime({width:"long"});break;default:o=t.dateTime({width:"full"})}return o.replace("{{date}}",Vr(r,t)).replace("{{time}}",Pa(s,t))},Zi={p:Pa,P:Qi},Xi=/^D+$/,el=/^Y+$/,tl=["D","DD","YY","YYYY"];function nl(e){return Xi.test(e)}function rl(e){return el.test(e)}function al(e,t,n){const r=sl(e,t,n);if(console.warn(r),tl.includes(e))throw new RangeError(r)}function sl(e,t,n){const r=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}var ol=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,il=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,ll=/^'([^]*?)'?$/,cl=/''/g,ul=/[a-zA-Z]/;function _e(e,t,n){const r=un(),s=n?.locale??r.locale??Nt,o=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,l=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,c=te(e,n?.in);if(!ui(c))throw new RangeError("Invalid time value");let i=t.match(il).map(d=>{const m=d[0];if(m==="p"||m==="P"){const p=Zi[m];return p(d,s.formatLong)}return d}).join("").match(ol).map(d=>{if(d==="''")return{isToken:!1,value:"'"};const m=d[0];if(m==="'")return{isToken:!1,value:dl(d)};if(Lr[m])return{isToken:!0,value:d};if(m.match(ul))throw new RangeError("Format string contains an unescaped latin alphabet character `"+m+"`");return{isToken:!1,value:d}});s.localize.preprocessor&&(i=s.localize.preprocessor(c,i));const f={firstWeekContainsDate:o,weekStartsOn:l,locale:s};return i.map(d=>{if(!d.isToken)return d.value;const m=d.value;(!n?.useAdditionalWeekYearTokens&&rl(m)||!n?.useAdditionalDayOfYearTokens&&nl(m))&&al(m,t,String(e));const p=Lr[m[0]];return p(c,m,s.localize,f)}).join("")}function dl(e){const t=e.match(ll);return t?t[1].replace(cl,"'"):e}function fl(e,t){const n=te(e,t?.in),r=n.getFullYear(),s=n.getMonth(),o=ie(n,0);return o.setFullYear(r,s+1,0),o.setHours(0,0,0,0),o.getDate()}function ml(e,t){return te(e,t?.in).getMonth()}function hl(e,t){return te(e,t?.in).getFullYear()}function pl(e,t){return+te(e)>+te(t)}function gl(e,t){return+te(e)<+te(t)}function xl(e,t,n){const[r,s]=Bt(n?.in,e,t);return r.getFullYear()===s.getFullYear()&&r.getMonth()===s.getMonth()}function yl(e,t,n){const[r,s]=Bt(n?.in,e,t);return r.getFullYear()===s.getFullYear()}function vl(e,t,n){const r=te(e,n?.in),s=r.getFullYear(),o=r.getDate(),l=ie(n?.in||e,0);l.setFullYear(s,t,15),l.setHours(0,0,0,0);const c=fl(l);return r.setMonth(t,Math.min(o,c)),r}function bl(e,t,n){const r=te(e,n?.in);return isNaN(+r)?ie(n?.in||e,NaN):(r.setFullYear(t),r)}function wl(e,t,n="long"){return new Intl.DateTimeFormat("en-US",{hour:"numeric",timeZone:e,timeZoneName:n}).format(t).split(/\s/g).slice(2).join(" ")}var Cl={},Qt={};function ht(e,t){try{const n=(Cl[e]||=new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"longOffset"}).format)(t).split("GMT")[1];return n in Qt?Qt[n]:Ur(n,n.split(":"))}catch{if(e in Qt)return Qt[e];const n=e?.match(Sl);return n?Ur(e,n.slice(1)):NaN}}var Sl=/([+-]\d\d):?(\d\d)?/;function Ur(e,t){const n=+(t[0]||0),r=+(t[1]||0),s=+(t[2]||0)/60;return Qt[e]=n*60+r>0?n*60+r+s:n*60-r-s}var Zt=class Xt extends Date{constructor(...t){super(),t.length>1&&typeof t[t.length-1]=="string"&&(this.timeZone=t.pop()),this.internal=new Date,isNaN(ht(this.timeZone,this))?this.setTime(NaN):t.length?typeof t[0]=="number"&&(t.length===1||t.length===2&&typeof t[1]!="number")?this.setTime(t[0]):typeof t[0]=="string"?this.setTime(+new Date(t[0])):t[0]instanceof Date?this.setTime(+t[0]):(this.setTime(+new Date(...t)),Fa(this,NaN),dr(this)):this.setTime(Date.now())}static tz(t,...n){return n.length?new Xt(...n,t):new Xt(Date.now(),t)}withTimeZone(t){return new Xt(+this,t)}getTimezoneOffset(){const t=-ht(this.timeZone,this);return t>0?Math.floor(t):Math.ceil(t)}setTime(t){return Date.prototype.setTime.apply(this,arguments),dr(this),+this}[Symbol.for("constructDateFrom")](t){return new Xt(+new Date(t),this.timeZone)}},Hr=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!Hr.test(e))return;const t=e.replace(Hr,"$1UTC");Zt.prototype[t]&&(e.startsWith("get")?Zt.prototype[e]=function(){return this.internal[t]()}:(Zt.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),jl(this),+this},Zt.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),dr(this),+this}))});function dr(e){e.internal.setTime(+e),e.internal.setUTCSeconds(e.internal.getUTCSeconds()-Math.round(-ht(e.timeZone,e)*60))}function jl(e){Date.prototype.setFullYear.call(e,e.internal.getUTCFullYear(),e.internal.getUTCMonth(),e.internal.getUTCDate()),Date.prototype.setHours.call(e,e.internal.getUTCHours(),e.internal.getUTCMinutes(),e.internal.getUTCSeconds(),e.internal.getUTCMilliseconds()),Fa(e)}function Fa(e){const t=ht(e.timeZone,e),n=t>0?Math.floor(t):Math.ceil(t),r=new Date(+e);r.setUTCHours(r.getUTCHours()-1);const s=-new Date(+e).getTimezoneOffset(),o=s- -new Date(+r).getTimezoneOffset(),l=Date.prototype.getHours.apply(e)!==e.internal.getUTCHours();o&&l&&e.internal.setUTCMinutes(e.internal.getUTCMinutes()+o);const c=s-n;c&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+c);const i=new Date(+e);i.setUTCSeconds(0);const f=s>0?i.getSeconds():(i.getSeconds()-60)%60,d=Math.round(-(ht(e.timeZone,e)*60))%60;(d||f)&&(e.internal.setUTCSeconds(e.internal.getUTCSeconds()+d),Date.prototype.setUTCSeconds.call(e,Date.prototype.getUTCSeconds.call(e)+d+f));const m=ht(e.timeZone,e),p=m>0?Math.floor(m):Math.ceil(m),g=-new Date(+e).getTimezoneOffset()-p,w=p!==n,S=g-c;if(w&&S){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+S);const v=ht(e.timeZone,e),D=p-(v>0?Math.floor(v):Math.ceil(v));D&&(e.internal.setUTCMinutes(e.internal.getUTCMinutes()+D),Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+D))}}var be=class en extends Zt{static tz(t,...n){return n.length?new en(...n,t):new en(Date.now(),t)}toISOString(){const[t,n,r]=this.tzComponents(),s=`${t}${n}:${r}`;return this.internal.toISOString().slice(0,-1)+s}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[t,n,r,s]=this.internal.toUTCString().split(" ");return`${t?.slice(0,-1)} ${r} ${n} ${s}`}toTimeString(){const t=this.internal.toUTCString().split(" ")[4],[n,r,s]=this.tzComponents();return`${t} GMT${n}${r}${s} (${wl(this.timeZone,this)})`}toLocaleString(t,n){return Date.prototype.toLocaleString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}toLocaleDateString(t,n){return Date.prototype.toLocaleDateString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}toLocaleTimeString(t,n){return Date.prototype.toLocaleTimeString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}tzComponents(){const t=this.getTimezoneOffset();return[t>0?"-":"+",String(Math.floor(Math.abs(t)/60)).padStart(2,"0"),String(Math.abs(t)%60).padStart(2,"0")]}withTimeZone(t){return new en(+this,t)}[Symbol.for("constructDateFrom")](t){return new en(+new Date(t),this.timeZone)}},Dl=5,kl=4;function Nl(e,t){const n=t.startOfMonth(e),r=n.getDay()>0?n.getDay():7,s=t.addDays(e,-r+1),o=t.addDays(s,34);return t.getMonth(e)===t.getMonth(o)?Dl:kl}function Wa(e,t){const n=t.startOfMonth(e),r=n.getDay();return r===1?n:r===0?t.addDays(n,-6):t.addDays(n,-1*(r-1))}function Tl(e,t){const n=Wa(e,t),r=Nl(e,t);return t.addDays(n,r*7-1)}var Ia={...Nt,labels:{labelDayButton:(e,t,n,r)=>{let s;r&&typeof r.format=="function"?s=r.format.bind(r):s=(l,c)=>_e(l,c,{locale:Nt,...n});let o=s(e,"PPPP");return t.today&&(o=`Today, ${o}`),t.selected&&(o=`${o}, selected`),o},labelMonthDropdown:"Choose the Month",labelNext:"Go to the Next Month",labelPrevious:"Go to the Previous Month",labelWeekNumber:e=>`Week ${e}`,labelYearDropdown:"Choose the Year",labelGrid:(e,t,n)=>{let r;return n&&typeof n.format=="function"?r=n.format.bind(n):r=(s,o)=>_e(s,o,{locale:Nt,...t}),r(e,"LLLL yyyy")},labelGridcell:(e,t,n,r)=>{let s;r&&typeof r.format=="function"?s=r.format.bind(r):s=(l,c)=>_e(l,c,{locale:Nt,...n});let o=s(e,"PPPP");return t?.today&&(o=`Today, ${o}`),o},labelNav:"Navigation bar",labelWeekNumberHeader:"Week Number",labelWeekday:(e,t,n)=>{let r;return n&&typeof n.format=="function"?r=n.format.bind(n):r=(s,o)=>_e(s,o,{locale:Nt,...t}),r(e,"cccc")}}},ze=class fr{constructor(t,n){this.today=()=>this.overrides?.today?this.overrides.today():this.options.timeZone?be.tz(this.options.timeZone):new(this.options.Date??Date),this.newDate=(r,s,o)=>this.overrides?.newDate?this.overrides.newDate(r,s,o):this.options.timeZone?new be(r,s,o,this.options.timeZone):new Date(r,s,o),this.addDays=(r,s)=>this.overrides?.addDays?this.overrides.addDays(r,s):Tn(r,s),this.addMonths=(r,s)=>this.overrides?.addMonths?this.overrides.addMonths(r,s):Na(r,s),this.addWeeks=(r,s)=>this.overrides?.addWeeks?this.overrides.addWeeks(r,s):si(r,s),this.addYears=(r,s)=>this.overrides?.addYears?this.overrides.addYears(r,s):oi(r,s),this.differenceInCalendarDays=(r,s)=>this.overrides?.differenceInCalendarDays?this.overrides.differenceInCalendarDays(r,s):Dr(r,s),this.differenceInCalendarMonths=(r,s)=>this.overrides?.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(r,s):Oa(r,s),this.eachMonthOfInterval=r=>this.overrides?.eachMonthOfInterval?this.overrides.eachMonthOfInterval(r):fi(r),this.eachYearOfInterval=r=>{const s=this.overrides?.eachYearOfInterval?this.overrides.eachYearOfInterval(r):pi(r),o=new Set(s.map(c=>this.getYear(c)));if(o.size===s.length)return s;const l=[];return o.forEach(c=>{l.push(new Date(c,0,1))}),l},this.endOfBroadcastWeek=r=>this.overrides?.endOfBroadcastWeek?this.overrides.endOfBroadcastWeek(r):Tl(r,this),this.endOfISOWeek=r=>this.overrides?.endOfISOWeek?this.overrides.endOfISOWeek(r):gi(r),this.endOfMonth=r=>this.overrides?.endOfMonth?this.overrides.endOfMonth(r):di(r),this.endOfWeek=(r,s)=>this.overrides?.endOfWeek?this.overrides.endOfWeek(r,s):_a(r,this.options),this.endOfYear=r=>this.overrides?.endOfYear?this.overrides.endOfYear(r):hi(r),this.format=(r,s,o)=>{const l=this.overrides?.format?this.overrides.format(r,s,this.options):_e(r,s,this.options);return this.options.numerals&&this.options.numerals!=="latn"?this.replaceDigits(l):l},this.getISOWeek=r=>this.overrides?.getISOWeek?this.overrides.getISOWeek(r):kr(r),this.getMonth=(r,s)=>this.overrides?.getMonth?this.overrides.getMonth(r,this.options):ml(r,this.options),this.getYear=(r,s)=>this.overrides?.getYear?this.overrides.getYear(r,this.options):hl(r,this.options),this.getWeek=(r,s)=>this.overrides?.getWeek?this.overrides.getWeek(r,this.options):Nr(r,this.options),this.isAfter=(r,s)=>this.overrides?.isAfter?this.overrides.isAfter(r,s):pl(r,s),this.isBefore=(r,s)=>this.overrides?.isBefore?this.overrides.isBefore(r,s):gl(r,s),this.isDate=r=>this.overrides?.isDate?this.overrides.isDate(r):Ea(r),this.isSameDay=(r,s)=>this.overrides?.isSameDay?this.overrides.isSameDay(r,s):ci(r,s),this.isSameMonth=(r,s)=>this.overrides?.isSameMonth?this.overrides.isSameMonth(r,s):xl(r,s),this.isSameYear=(r,s)=>this.overrides?.isSameYear?this.overrides.isSameYear(r,s):yl(r,s),this.max=r=>this.overrides?.max?this.overrides.max(r):ii(r),this.min=r=>this.overrides?.min?this.overrides.min(r):li(r),this.setMonth=(r,s)=>this.overrides?.setMonth?this.overrides.setMonth(r,s):vl(r,s),this.setYear=(r,s)=>this.overrides?.setYear?this.overrides.setYear(r,s):bl(r,s),this.startOfBroadcastWeek=(r,s)=>this.overrides?.startOfBroadcastWeek?this.overrides.startOfBroadcastWeek(r,this):Wa(r,this),this.startOfDay=r=>this.overrides?.startOfDay?this.overrides.startOfDay(r):It(r),this.startOfISOWeek=r=>this.overrides?.startOfISOWeek?this.overrides.startOfISOWeek(r):rn(r),this.startOfMonth=r=>this.overrides?.startOfMonth?this.overrides.startOfMonth(r):mi(r),this.startOfWeek=(r,s)=>this.overrides?.startOfWeek?this.overrides.startOfWeek(r,this.options):Wt(r,this.options),this.startOfYear=r=>this.overrides?.startOfYear?this.overrides.startOfYear(r):Ra(r),this.options={locale:Ia,...t},this.overrides=n}getDigitMap(){const{numerals:t="latn"}=this.options,n=new Intl.NumberFormat("en-US",{numberingSystem:t}),r={};for(let s=0;s<10;s++)r[s.toString()]=n.format(s);return r}replaceDigits(t){const n=this.getDigitMap();return t.replace(/\d/g,r=>n[r]||r)}formatNumber(t){return this.replaceDigits(t.toString())}getMonthYearOrder(){const t=this.options.locale?.code;return t&&fr.yearFirstLocales.has(t)?"year-first":"month-first"}formatMonthYear(t){const{locale:n,timeZone:r,numerals:s}=this.options,o=n?.code;if(o&&fr.yearFirstLocales.has(o))try{return new Intl.DateTimeFormat(o,{month:"long",year:"numeric",timeZone:r,numberingSystem:s}).format(t)}catch{}const l=this.getMonthYearOrder()==="year-first"?"y LLLL":"LLLL y";return this.format(t,l)}};ze.yearFirstLocales=new Set(["eu","hu","ja","ja-Hira","ja-JP","ko","ko-KR","lt","lt-LT","lv","lv-LV","mn","mn-MN","zh","zh-CN","zh-HK","zh-TW"]);var Ye=new ze,za=class{constructor(e,t,n=Ye){this.date=e,this.displayMonth=t,this.outside=!!(t&&!n.isSameMonth(e,t)),this.dateLib=n,this.isoDate=n.format(e,"yyyy-MM-dd"),this.displayMonthId=n.format(t,"yyyy-MM"),this.dateMonthId=n.format(e,"yyyy-MM")}isEqualTo(e){return this.dateLib.isSameDay(e.date,this.date)&&this.dateLib.isSameMonth(e.displayMonth,this.displayMonth)}},El=class{constructor(e,t){this.date=e,this.weeks=t}},Ol=class{constructor(e,t){this.days=t,this.weekNumber=e}};function Ml(e){return u.createElement("span",{...e})}function Rl(e){const{size:t=24,orientation:n="left",className:r,style:s}=e;return u.createElement("svg",{className:r,style:s,width:t,height:t,viewBox:"0 0 24 24"},n==="up"&&u.createElement("polygon",{points:"6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28"}),n==="down"&&u.createElement("polygon",{points:"6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72"}),n==="left"&&u.createElement("polygon",{points:"16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20"}),n==="right"&&u.createElement("polygon",{points:"8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20"}))}function _l(e){const{day:t,modifiers:n,...r}=e;return u.createElement("td",{...r})}function Al(e){const{day:t,modifiers:n,...r}=e,s=u.useRef(null);return u.useEffect(()=>{n.focused&&s.current?.focus()},[n.focused]),u.createElement("button",{ref:s,...r})}var P;(function(e){e.Root="root",e.Chevron="chevron",e.Day="day",e.DayButton="day_button",e.CaptionLabel="caption_label",e.Dropdowns="dropdowns",e.Dropdown="dropdown",e.DropdownRoot="dropdown_root",e.Footer="footer",e.MonthGrid="month_grid",e.MonthCaption="month_caption",e.MonthsDropdown="months_dropdown",e.Month="month",e.Months="months",e.Nav="nav",e.NextMonthButton="button_next",e.PreviousMonthButton="button_previous",e.Week="week",e.Weeks="weeks",e.Weekday="weekday",e.Weekdays="weekdays",e.WeekNumber="week_number",e.WeekNumberHeader="week_number_header",e.YearsDropdown="years_dropdown"})(P||(P={}));var ae;(function(e){e.disabled="disabled",e.hidden="hidden",e.outside="outside",e.focused="focused",e.today="today"})(ae||(ae={}));var De;(function(e){e.range_end="range_end",e.range_middle="range_middle",e.range_start="range_start",e.selected="selected"})(De||(De={}));var ye;(function(e){e.weeks_before_enter="weeks_before_enter",e.weeks_before_exit="weeks_before_exit",e.weeks_after_enter="weeks_after_enter",e.weeks_after_exit="weeks_after_exit",e.caption_after_enter="caption_after_enter",e.caption_after_exit="caption_after_exit",e.caption_before_enter="caption_before_enter",e.caption_before_exit="caption_before_exit"})(ye||(ye={}));var Ya=(0,u.createContext)(void 0);function _n(){const e=(0,u.useContext)(Ya);if(e===void 0)throw new Error("useDayPicker() must be used within a custom component.");return e}function Pl(e){const{options:t,className:n,...r}=e,{classNames:s,components:o,styles:l}=_n(),c=[s[P.Dropdown],n].join(" "),i=t?.find(({value:f})=>f===r.value);return u.createElement("span",{"data-disabled":r.disabled,className:s[P.DropdownRoot],style:l?.[P.DropdownRoot]},u.createElement(o.Select,{className:c,...r},t?.map(({value:f,label:d,disabled:m})=>u.createElement(o.Option,{key:f,value:f,disabled:m},d))),u.createElement("span",{className:s[P.CaptionLabel],style:l?.[P.CaptionLabel],"aria-hidden":!0},i?.label,u.createElement(o.Chevron,{orientation:"down",size:18,className:s[P.Chevron],style:l?.[P.Chevron]})))}function Fl(e){return u.createElement("div",{...e})}function Wl(e){return u.createElement("div",{...e})}function Il(e){const{calendarMonth:t,displayIndex:n,...r}=e;return u.createElement("div",{...r},e.children)}function zl(e){const{calendarMonth:t,displayIndex:n,...r}=e;return u.createElement("div",{...r})}function Yl(e){return u.createElement("table",{...e})}function Bl(e){return u.createElement("div",{...e})}function Ll(e){const{components:t}=_n();return u.createElement(t.Dropdown,{...e})}function $l(e){const{onPreviousClick:t,onNextClick:n,previousMonth:r,nextMonth:s,...o}=e,{components:l,classNames:c,styles:i,labels:{labelPrevious:f,labelNext:d}}=_n(),m=(0,u.useCallback)(g=>{s&&n?.(g)},[s,n]),p=(0,u.useCallback)(g=>{r&&t?.(g)},[r,t]);return u.createElement("nav",{...o},u.createElement(l.PreviousMonthButton,{type:"button",className:c[P.PreviousMonthButton],style:i?.[P.PreviousMonthButton],tabIndex:r?void 0:-1,"aria-disabled":r?void 0:!0,"aria-label":f(r),onClick:p},u.createElement(l.Chevron,{disabled:r?void 0:!0,className:c[P.Chevron],style:i?.[P.Chevron],orientation:"left"})),u.createElement(l.NextMonthButton,{type:"button",className:c[P.NextMonthButton],style:i?.[P.NextMonthButton],tabIndex:s?void 0:-1,"aria-disabled":s?void 0:!0,"aria-label":d(s),onClick:m},u.createElement(l.Chevron,{disabled:s?void 0:!0,orientation:"right",className:c[P.Chevron],style:i?.[P.Chevron]})))}function Kl(e){return u.createElement("button",{...e})}function Vl(e){return u.createElement("option",{...e})}function Ul(e){return u.createElement("button",{...e})}function Hl(e){const{rootRef:t,...n}=e;return u.createElement("div",{...n,ref:t})}function ql(e){return u.createElement("select",{...e})}function Jl(e){const{week:t,...n}=e;return u.createElement("tr",{...n})}function Gl(e){return u.createElement("th",{...e})}function Ql(e){return u.createElement("thead",{"aria-hidden":!0},u.createElement("tr",{...e}))}function Zl(e){const{week:t,...n}=e;return u.createElement("th",{...n})}function Xl(e){return u.createElement("th",{...e})}function ec(e){return u.createElement("tbody",{...e})}function tc(e){const{components:t}=_n();return u.createElement(t.Dropdown,{...e})}var nc=xr({CaptionLabel:()=>Ml,Chevron:()=>Rl,Day:()=>_l,DayButton:()=>Al,Dropdown:()=>Pl,DropdownNav:()=>Fl,Footer:()=>Wl,Month:()=>Il,MonthCaption:()=>zl,MonthGrid:()=>Yl,Months:()=>Bl,MonthsDropdown:()=>Ll,Nav:()=>$l,NextMonthButton:()=>Kl,Option:()=>Vl,PreviousMonthButton:()=>Ul,Root:()=>Hl,Select:()=>ql,Week:()=>Jl,WeekNumber:()=>Zl,WeekNumberHeader:()=>Xl,Weekday:()=>Gl,Weekdays:()=>Ql,Weeks:()=>ec,YearsDropdown:()=>tc});function Ke(e,t,n=!1,r=Ye){let{from:s,to:o}=e;const{differenceInCalendarDays:l,isSameDay:c}=r;return s&&o?(l(o,s)<0&&([s,o]=[o,s]),l(t,s)>=(n?1:0)&&l(o,t)>=(n?1:0)):!n&&o?c(o,t):!n&&s?c(s,t):!1}function Tr(e){return!!(e&&typeof e=="object"&&"before"in e&&"after"in e)}function An(e){return!!(e&&typeof e=="object"&&"from"in e)}function Er(e){return!!(e&&typeof e=="object"&&"after"in e)}function Or(e){return!!(e&&typeof e=="object"&&"before"in e)}function Ba(e){return!!(e&&typeof e=="object"&&"dayOfWeek"in e)}function La(e,t){return Array.isArray(e)&&e.every(t.isDate)}function Ve(e,t,n=Ye){const r=Array.isArray(t)?t:[t],{isSameDay:s,differenceInCalendarDays:o,isAfter:l}=n;return r.some(c=>{if(typeof c=="boolean")return c;if(n.isDate(c))return s(e,c);if(La(c,n))return c.some(i=>s(e,i));if(An(c))return Ke(c,e,!1,n);if(Ba(c))return Array.isArray(c.dayOfWeek)?c.dayOfWeek.includes(e.getDay()):c.dayOfWeek===e.getDay();if(Tr(c)){const i=o(c.before,e),f=o(c.after,e),d=i>0,m=f<0;return l(c.before,c.after)?m&&d:d||m}return Er(c)?o(e,c.after)>0:Or(c)?o(c.before,e)>0:typeof c=="function"?c(e):!1})}function rc(e,t,n,r,s){const{disabled:o,hidden:l,modifiers:c,showOutsideDays:i,broadcastCalendar:f,today:d=s.today()}=t,{isSameDay:m,isSameMonth:p,startOfMonth:g,isBefore:w,endOfMonth:S,isAfter:v}=s,D=n&&g(n),C=r&&S(r),x={[ae.focused]:[],[ae.outside]:[],[ae.disabled]:[],[ae.hidden]:[],[ae.today]:[]},h={};for(const y of e){const{date:b,displayMonth:N}=y,j=!!(N&&!p(b,N)),k=!!(D&&w(b,D)),O=!!(C&&v(b,C)),T=!!(o&&Ve(b,o,s)),M=!!(l&&Ve(b,l,s))||k||O||!f&&!i&&j||f&&i===!1&&j,E=m(b,d);j&&x.outside.push(y),T&&x.disabled.push(y),M&&x.hidden.push(y),E&&x.today.push(y),c&&Object.keys(c).forEach(I=>{const R=c?.[I];R&&Ve(b,R,s)&&(h[I]?h[I].push(y):h[I]=[y])})}return y=>{const b={[ae.focused]:!1,[ae.disabled]:!1,[ae.hidden]:!1,[ae.outside]:!1,[ae.today]:!1},N={};for(const j in x)b[j]=x[j].some(k=>k===y);for(const j in h)N[j]=h[j].some(k=>k===y);return{...b,...N}}}function ac(e,t,n={}){return Object.entries(e).filter(([,r])=>r===!0).reduce((r,[s])=>(n[s]?r.push(n[s]):t[ae[s]]?r.push(t[ae[s]]):t[De[s]]&&r.push(t[De[s]]),r),[t[P.Day]])}function sc(e){return{...nc,...e}}function oc(e){const t={"data-mode":e.mode??void 0,"data-required":"required"in e?e.required:void 0,"data-multiple-months":e.numberOfMonths&&e.numberOfMonths>1||void 0,"data-week-numbers":e.showWeekNumber||void 0,"data-broadcast-calendar":e.broadcastCalendar||void 0,"data-nav-layout":e.navLayout||void 0};return Object.entries(e).forEach(([n,r])=>{n.startsWith("data-")&&(t[n]=r)}),t}function Mr(){const e={};for(const t in P)e[P[t]]=`rdp-${P[t]}`;for(const t in ae)e[ae[t]]=`rdp-${ae[t]}`;for(const t in De)e[De[t]]=`rdp-${De[t]}`;for(const t in ye)e[ye[t]]=`rdp-${ye[t]}`;return e}function ic(e,t,n){return(n??new ze(t)).formatMonthYear(e)}function lc(e,t,n){return(n??new ze(t)).format(e,"d")}function cc(e,t=Ye){return t.format(e,"LLLL")}function uc(e,t,n){return(n??new ze(t)).format(e,"cccccc")}function dc(e,t=Ye){return e<10?t.formatNumber(`0${e.toLocaleString()}`):t.formatNumber(`${e.toLocaleString()}`)}function fc(){return""}function mc(e,t=Ye){return t.format(e,"yyyy")}var hc=xr({formatCaption:()=>ic,formatDay:()=>lc,formatMonthDropdown:()=>cc,formatWeekNumber:()=>dc,formatWeekNumberHeader:()=>fc,formatWeekdayName:()=>uc,formatYearDropdown:()=>mc});function pc(e){return{...hc,...e}}function $a(e,t,n,r){let s=(r??new ze(n)).format(e,"PPPP");return t.today&&(s=`Today, ${s}`),t.selected&&(s=`${s}, selected`),s}function Ka(e,t,n){return(n??new ze(t)).formatMonthYear(e)}function Va(e,t,n,r){let s=(r??new ze(n)).format(e,"PPPP");return t?.today&&(s=`Today, ${s}`),s}function Ua(e){return"Choose the Month"}function Ha(){return""}var gc="Go to the Next Month";function qa(e,t){return gc}function Ja(e){return"Go to the Previous Month"}function Ga(e,t,n){return(n??new ze(t)).format(e,"cccc")}function Qa(e,t){return`Week ${e}`}function Za(e){return"Week Number"}function Xa(e){return"Choose the Year"}var xc=xr({labelDayButton:()=>$a,labelGrid:()=>Ka,labelGridcell:()=>Va,labelMonthDropdown:()=>Ua,labelNav:()=>Ha,labelNext:()=>qa,labelPrevious:()=>Ja,labelWeekNumber:()=>Qa,labelWeekNumberHeader:()=>Za,labelWeekday:()=>Ga,labelYearDropdown:()=>Xa}),je=(e,t,n)=>t||(n?typeof n=="function"?n:(...r)=>n:e);function yc(e,t){const n=t.locale?.labels??{};return{...xc,...e??{},labelDayButton:je($a,e?.labelDayButton,n.labelDayButton),labelMonthDropdown:je(Ua,e?.labelMonthDropdown,n.labelMonthDropdown),labelNext:je(qa,e?.labelNext,n.labelNext),labelPrevious:je(Ja,e?.labelPrevious,n.labelPrevious),labelWeekNumber:je(Qa,e?.labelWeekNumber,n.labelWeekNumber),labelYearDropdown:je(Xa,e?.labelYearDropdown,n.labelYearDropdown),labelGrid:je(Ka,e?.labelGrid,n.labelGrid),labelGridcell:je(Va,e?.labelGridcell,n.labelGridcell),labelNav:je(Ha,e?.labelNav,n.labelNav),labelWeekNumberHeader:je(Za,e?.labelWeekNumberHeader,n.labelWeekNumberHeader),labelWeekday:je(Ga,e?.labelWeekday,n.labelWeekday)}}function vc(e,t,n,r,s){const{startOfMonth:o,startOfYear:l,endOfYear:c,eachMonthOfInterval:i,getMonth:f}=s;return i({start:l(e),end:c(e)}).map(d=>{const m=r.formatMonthDropdown(d,s);return{value:f(d),label:m,disabled:t&&d<o(t)||n&&d>o(n)||!1}})}function bc(e,t={},n={}){let r={...t?.[P.Day]};return Object.entries(e).filter(([,s])=>s===!0).forEach(([s])=>{r={...r,...n?.[s]}}),r}function wc(e,t,n,r){const s=r??e.today(),o=n?e.startOfBroadcastWeek(s,e):t?e.startOfISOWeek(s):e.startOfWeek(s),l=[];for(let c=0;c<7;c++){const i=e.addDays(o,c);l.push(i)}return l}function Cc(e,t,n,r,s=!1){if(!e||!t)return;const{startOfYear:o,endOfYear:l,eachYearOfInterval:c,getYear:i}=r,f=c({start:o(e),end:l(t)});return s&&f.reverse(),f.map(d=>{const m=n.formatYearDropdown(d,r);return{value:i(d),label:m,disabled:!1}})}function Sc(e,t={}){const{weekStartsOn:n,locale:r}=t,s=n??r?.options?.weekStartsOn??0,o=c=>{const i=typeof c=="number"||typeof c=="string"?new Date(c):c;return new be(i.getFullYear(),i.getMonth(),i.getDate(),12,0,0,e)},l=c=>{const i=o(c);return new Date(i.getFullYear(),i.getMonth(),i.getDate(),0,0,0,0)};return{today:()=>o(be.tz(e)),newDate:(c,i,f)=>new be(c,i,f,12,0,0,e),startOfDay:c=>o(c),startOfWeek:(c,i)=>{const f=o(c),d=i?.weekStartsOn??s,m=(f.getDay()-d+7)%7;return f.setDate(f.getDate()-m),f},startOfISOWeek:c=>{const i=o(c),f=(i.getDay()-1+7)%7;return i.setDate(i.getDate()-f),i},startOfMonth:c=>{const i=o(c);return i.setDate(1),i},startOfYear:c=>{const i=o(c);return i.setMonth(0,1),i},endOfWeek:(c,i)=>{const f=o(c),d=(((i?.weekStartsOn??s)+6)%7-f.getDay()+7)%7;return f.setDate(f.getDate()+d),f},endOfISOWeek:c=>{const i=o(c),f=(7-i.getDay())%7;return i.setDate(i.getDate()+f),i},endOfMonth:c=>{const i=o(c);return i.setMonth(i.getMonth()+1,0),i},endOfYear:c=>{const i=o(c);return i.setMonth(11,31),i},eachMonthOfInterval:c=>{const i=o(c.start),f=o(c.end),d=[],m=new be(i.getFullYear(),i.getMonth(),1,12,0,0,e),p=f.getFullYear()*12+f.getMonth();for(;m.getFullYear()*12+m.getMonth()<=p;)d.push(new be(m,e)),m.setMonth(m.getMonth()+1,1);return d},addDays:(c,i)=>{const f=o(c);return f.setDate(f.getDate()+i),f},addWeeks:(c,i)=>{const f=o(c);return f.setDate(f.getDate()+i*7),f},addMonths:(c,i)=>{const f=o(c);return f.setMonth(f.getMonth()+i),f},addYears:(c,i)=>{const f=o(c);return f.setFullYear(f.getFullYear()+i),f},eachYearOfInterval:c=>{const i=o(c.start),f=o(c.end),d=[],m=new be(i.getFullYear(),0,1,12,0,0,e);for(;m.getFullYear()<=f.getFullYear();)d.push(new be(m,e)),m.setFullYear(m.getFullYear()+1,0,1);return d},getWeek:(c,i)=>{const f=l(c);return Nr(f,{weekStartsOn:i?.weekStartsOn??s,firstWeekContainsDate:i?.firstWeekContainsDate??r?.options?.firstWeekContainsDate??1})},getISOWeek:c=>{const i=l(c);return kr(i)},differenceInCalendarDays:(c,i)=>{const f=l(c),d=l(i);return Dr(f,d)},differenceInCalendarMonths:(c,i)=>{const f=l(c),d=l(i);return Oa(f,d)}}}var dn=e=>e instanceof HTMLElement?e:null,Qn=e=>[...e.querySelectorAll("[data-animated-month]")??[]],jc=e=>dn(e.querySelector("[data-animated-month]")),Zn=e=>dn(e.querySelector("[data-animated-caption]")),Xn=e=>dn(e.querySelector("[data-animated-weeks]")),Dc=e=>dn(e.querySelector("[data-animated-nav]")),kc=e=>dn(e.querySelector("[data-animated-weekdays]"));function Nc(e,t,{classNames:n,months:r,focused:s,dateLib:o}){const l=(0,u.useRef)(null),c=(0,u.useRef)(r),i=(0,u.useRef)(!1);(0,u.useLayoutEffect)(()=>{const f=c.current;if(c.current=r,!t||!e.current||!(e.current instanceof HTMLElement)||r.length===0||f.length===0||r.length!==f.length)return;const d=o.isSameMonth(r[0].date,f[0].date),m=o.isAfter(r[0].date,f[0].date),p=m?n[ye.caption_after_enter]:n[ye.caption_before_enter],g=m?n[ye.weeks_after_enter]:n[ye.weeks_before_enter],w=l.current,S=e.current.cloneNode(!0);if(S instanceof HTMLElement?(Qn(S).forEach(C=>{if(!(C instanceof HTMLElement))return;const x=jc(C);x&&C.contains(x)&&C.removeChild(x);const h=Zn(C);h&&h.classList.remove(p);const y=Xn(C);y&&y.classList.remove(g)}),l.current=S):l.current=null,i.current||d||s)return;const v=w instanceof HTMLElement?Qn(w):[],D=Qn(e.current);if(D?.every(C=>C instanceof HTMLElement)&&v?.every(C=>C instanceof HTMLElement)){i.current=!0;const C=[];e.current.style.isolation="isolate";const x=Dc(e.current);x&&(x.style.zIndex="1"),D.forEach((h,y)=>{const b=v[y];if(!b)return;h.style.position="relative",h.style.overflow="hidden";const N=Zn(h);N&&N.classList.add(p);const j=Xn(h);j&&j.classList.add(g);const k=()=>{i.current=!1,e.current&&(e.current.style.isolation=""),x&&(x.style.zIndex=""),N&&N.classList.remove(p),j&&j.classList.remove(g),h.style.position="",h.style.overflow="",h.contains(b)&&h.removeChild(b)};C.push(k),b.style.pointerEvents="none",b.style.position="absolute",b.style.overflow="hidden",b.setAttribute("aria-hidden","true");const O=kc(b);O&&(O.style.opacity="0");const T=Zn(b);T&&(T.classList.add(m?n[ye.caption_before_exit]:n[ye.caption_after_exit]),T.addEventListener("animationend",k));const M=Xn(b);M&&M.classList.add(m?n[ye.weeks_before_exit]:n[ye.weeks_after_exit]),h.insertBefore(b,h.firstChild)})}})}function Tc(e,t,n,r){const s=e[0],o=e[e.length-1],{ISOWeek:l,fixedWeeks:c,broadcastCalendar:i}=n??{},{addDays:f,differenceInCalendarDays:d,differenceInCalendarMonths:m,endOfBroadcastWeek:p,endOfISOWeek:g,endOfMonth:w,endOfWeek:S,isAfter:v,startOfBroadcastWeek:D,startOfISOWeek:C,startOfWeek:x}=r,h=i?D(s,r):l?C(s):x(s),y=i?p(o):l?g(w(o)):S(w(o)),b=t&&(i?p(t):l?g(t):S(t)),N=d(b&&v(y,b)?b:y,h),j=m(o,s)+1,k=[];for(let T=0;T<=N;T++){const M=f(h,T);k.push(M)}const O=(i?35:42)*j;if(c&&k.length<O){const T=O-k.length;for(let M=0;M<T;M++){const E=f(k[k.length-1],1);k.push(E)}}return k}function Ec(e){const t=[];return e.reduce((n,r)=>{const s=r.weeks.reduce((o,l)=>o.concat(l.days.slice()),t.slice());return n.concat(s.slice())},t.slice())}function Oc(e,t,n,r){const{numberOfMonths:s=1}=n,o=[];for(let l=0;l<s;l++){const c=r.addMonths(e,l);if(t&&c>t)break;o.push(c)}return o}function qr(e,t,n,r){const{month:s,defaultMonth:o,today:l=r.today(),numberOfMonths:c=1}=e;let i=s||o||l;const{differenceInCalendarMonths:f,addMonths:d,startOfMonth:m}=r;return n&&f(n,i)<c-1&&(i=d(n,-1*(c-1))),t&&f(i,t)<0&&(i=t),m(i)}function Mc(e,t,n,r){const{addDays:s,endOfBroadcastWeek:o,endOfISOWeek:l,endOfMonth:c,endOfWeek:i,getISOWeek:f,getWeek:d,startOfBroadcastWeek:m,startOfISOWeek:p,startOfWeek:g}=r,w=e.reduce((S,v)=>{const D=n.broadcastCalendar?m(v,r):n.ISOWeek?p(v):g(v),C=n.broadcastCalendar?o(v):n.ISOWeek?l(c(v)):i(c(v)),x=t.filter(N=>N>=D&&N<=C),h=n.broadcastCalendar?35:42;if(n.fixedWeeks&&x.length<h){const N=t.filter(j=>{const k=h-x.length;return j>C&&j<=s(C,k)});x.push(...N)}const y=x.reduce((N,j)=>{const k=n.ISOWeek?f(j):d(j),O=N.find(M=>M.weekNumber===k),T=new za(j,v,r);return O?O.days.push(T):N.push(new Ol(k,[T])),N},[]),b=new El(v,y);return S.push(b),S},[]);return n.reverseMonths?w.reverse():w}function Rc(e,t){let{startMonth:n,endMonth:r}=e;const{startOfYear:s,startOfDay:o,startOfMonth:l,endOfMonth:c,addYears:i,endOfYear:f,today:d}=t,m=e.captionLayout==="dropdown"||e.captionLayout==="dropdown-years";return n?n=l(n):!n&&m&&(n=s(i(e.today??d(),-100))),r?r=c(r):!r&&m&&(r=f(e.today??d())),[n&&o(n),r&&o(r)]}function _c(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:s,numberOfMonths:o=1}=n,{startOfMonth:l,addMonths:c,differenceInCalendarMonths:i}=r,f=s?o:1,d=l(e);if(!t)return c(d,f);if(!(i(t,e)<o))return c(d,f)}function Ac(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:s,numberOfMonths:o}=n,{startOfMonth:l,addMonths:c,differenceInCalendarMonths:i}=r,f=s?o??1:1,d=l(e);if(!t)return c(d,-f);if(!(i(d,t)<=0))return c(d,-f)}function Pc(e){return e.reduce((t,n)=>t.concat(n.weeks.slice()),[].slice())}function Pn(e,t){const[n,r]=(0,u.useState)(e);return[t===void 0?n:t,r]}function Fc(e,t){const[n,r]=Rc(e,t),{startOfMonth:s,endOfMonth:o}=t,l=qr(e,n,r,t),[c,i]=Pn(l,e.month?l:void 0);(0,u.useEffect)(()=>{const x=qr(e,n,r,t);i(x)},[e.timeZone]);const{months:f,weeks:d,days:m,previousMonth:p,nextMonth:g}=(0,u.useMemo)(()=>{const x=Oc(c,r,{numberOfMonths:e.numberOfMonths},t),h=Tc(x,e.endMonth?o(e.endMonth):void 0,{ISOWeek:e.ISOWeek,fixedWeeks:e.fixedWeeks,broadcastCalendar:e.broadcastCalendar},t),y=Mc(x,h,{broadcastCalendar:e.broadcastCalendar,fixedWeeks:e.fixedWeeks,ISOWeek:e.ISOWeek,reverseMonths:e.reverseMonths},t);return{months:y,weeks:Pc(y),days:Ec(y),previousMonth:Ac(c,n,e,t),nextMonth:_c(c,r,e,t)}},[t,c.getTime(),r?.getTime(),n?.getTime(),e.disableNavigation,e.broadcastCalendar,e.endMonth?.getTime(),e.fixedWeeks,e.ISOWeek,e.numberOfMonths,e.pagedNavigation,e.reverseMonths]),{disableNavigation:w,onMonthChange:S}=e,v=x=>d.some(h=>h.days.some(y=>y.isEqualTo(x))),D=x=>{if(w)return;let h=s(x);n&&h<s(n)&&(h=s(n)),r&&h>s(r)&&(h=s(r)),i(h),S?.(h)};return{months:f,weeks:d,days:m,navStart:n,navEnd:r,previousMonth:p,nextMonth:g,goToMonth:D,goToDay:x=>{v(x)||D(x.date)}}}var Re;(function(e){e[e.Today=0]="Today",e[e.Selected=1]="Selected",e[e.LastFocused=2]="LastFocused",e[e.FocusedModifier=3]="FocusedModifier"})(Re||(Re={}));function Jr(e){return!e[ae.disabled]&&!e[ae.hidden]&&!e[ae.outside]}function Wc(e,t,n,r){let s,o=-1;for(const l of e){const c=t(l);Jr(c)&&(c[ae.focused]&&o<Re.FocusedModifier?(s=l,o=Re.FocusedModifier):r?.isEqualTo(l)&&o<Re.LastFocused?(s=l,o=Re.LastFocused):n(l.date)&&o<Re.Selected?(s=l,o=Re.Selected):c[ae.today]&&o<Re.Today&&(s=l,o=Re.Today))}return s||(s=e.find(l=>Jr(t(l)))),s}function Ic(e,t,n,r,s,o,l){const{ISOWeek:c,broadcastCalendar:i}=o,{addDays:f,addMonths:d,addWeeks:m,addYears:p,endOfBroadcastWeek:g,endOfISOWeek:w,endOfWeek:S,max:v,min:D,startOfBroadcastWeek:C,startOfISOWeek:x,startOfWeek:h}=l;let y={day:f,week:m,month:d,year:p,startOfWeek:b=>i?C(b,l):c?x(b):h(b),endOfWeek:b=>i?g(b):c?w(b):S(b)}[e](n,t==="after"?1:-1);return t==="before"&&r?y=v([r,y]):t==="after"&&s&&(y=D([s,y])),y}function es(e,t,n,r,s,o,l,c=0){if(c>365)return;const i=Ic(e,t,n.date,r,s,o,l),f=!!(o.disabled&&Ve(i,o.disabled,l)),d=!!(o.hidden&&Ve(i,o.hidden,l)),m=new za(i,i,l);return!f&&!d?m:es(e,t,m,r,s,o,l,c+1)}function zc(e,t,n,r,s){const{autoFocus:o}=e,[l,c]=(0,u.useState)(),i=Wc(t.days,n,r||(()=>!1),l),[f,d]=(0,u.useState)(o?i:void 0);return{isFocusTarget:w=>!!i?.isEqualTo(w),setFocused:d,focused:f,blur:()=>{c(f),d(void 0)},moveFocus:(w,S)=>{if(!f)return;const v=es(w,S,f,t.navStart,t.navEnd,e,s);v&&(e.disableNavigation&&!t.days.some(D=>D.isEqualTo(v))||(t.goToDay(v),d(v)))}}}function Yc(e,t){const{selected:n,required:r,onSelect:s}=e,[o,l]=Pn(n,s?n:void 0),c=s?n:o,{isSameDay:i}=t,f=g=>c?.some(w=>i(w,g))??!1,{min:d,max:m}=e;return{selected:c,select:(g,w,S)=>{let v=[...c??[]];if(f(g)){if(c?.length===d||r&&c?.length===1)return;v=c?.filter(D=>!i(D,g))}else c?.length===m?v=[g]:v=[...v,g];return s||l(v),s?.(v,g,w,S),v},isSelected:f}}function Bc(e,t,n=0,r=0,s=!1,o=Ye){const{from:l,to:c}=t||{},{isSameDay:i,isAfter:f,isBefore:d}=o;let m;if(!l&&!c)m={from:e,to:n>0?void 0:e};else if(l&&!c)i(l,e)?n===0?m={from:l,to:e}:s?m={from:l,to:void 0}:m=void 0:d(e,l)?m={from:e,to:l}:m={from:l,to:e};else if(l&&c)if(i(l,e)&&i(c,e))s?m={from:l,to:c}:m=void 0;else if(i(l,e))m={from:l,to:n>0?void 0:e};else if(i(c,e))m={from:e,to:n>0?void 0:e};else if(d(e,l))m={from:e,to:c};else if(f(e,l))m={from:l,to:e};else if(f(e,c))m={from:l,to:e};else throw new Error("Invalid range");if(m?.from&&m?.to){const p=o.differenceInCalendarDays(m.to,m.from);r>0&&p>r?m={from:e,to:void 0}:n>1&&p<n&&(m={from:e,to:void 0})}return m}function Lc(e,t,n=Ye){const r=Array.isArray(t)?t:[t];let s=e.from;const o=n.differenceInCalendarDays(e.to,e.from),l=Math.min(o,6);for(let c=0;c<=l;c++){if(r.includes(s.getDay()))return!0;s=n.addDays(s,1)}return!1}function Gr(e,t,n=Ye){return Ke(e,t.from,!1,n)||Ke(e,t.to,!1,n)||Ke(t,e.from,!1,n)||Ke(t,e.to,!1,n)}function $c(e,t,n=Ye){const r=Array.isArray(t)?t:[t];if(r.filter(o=>typeof o!="function").some(o=>typeof o=="boolean"?o:n.isDate(o)?Ke(e,o,!1,n):La(o,n)?o.some(l=>Ke(e,l,!1,n)):An(o)?o.from&&o.to?Gr(e,{from:o.from,to:o.to},n):!1:Ba(o)?Lc(e,o.dayOfWeek,n):Tr(o)?n.isAfter(o.before,o.after)?Gr(e,{from:n.addDays(o.after,1),to:n.addDays(o.before,-1)},n):Ve(e.from,o,n)||Ve(e.to,o,n):Er(o)||Or(o)?Ve(e.from,o,n)||Ve(e.to,o,n):!1))return!0;const s=r.filter(o=>typeof o=="function");if(s.length){let o=e.from;const l=n.differenceInCalendarDays(e.to,e.from);for(let c=0;c<=l;c++){if(s.some(i=>i(o)))return!0;o=n.addDays(o,1)}}return!1}function Kc(e,t){const{disabled:n,excludeDisabled:r,resetOnSelect:s,selected:o,required:l,onSelect:c}=e,[i,f]=Pn(o,c?o:void 0),d=c?o:i;return{selected:d,select:(g,w,S)=>{const{min:v,max:D}=e;let C;if(g){const x=d?.from,h=d?.to,y=!!x&&!!h,b=!!x&&!!h&&t.isSameDay(x,h)&&t.isSameDay(g,x);s&&(y||!d?.from)?!l&&b?C=void 0:C={from:g,to:void 0}:C=Bc(g,d,v,D,l,t)}return r&&n&&C?.from&&C.to&&$c({from:C.from,to:C.to},n,t)&&(C.from=g,C.to=void 0),c||f(C),c?.(C,g,w,S),C},isSelected:g=>d&&Ke(d,g,!1,t)}}function Vc(e,t){const{selected:n,required:r,onSelect:s}=e,[o,l]=Pn(n,s?n:void 0),c=s?n:o,{isSameDay:i}=t;return{selected:c,select:(m,p,g)=>{let w=m;return!r&&c&&c&&i(m,c)&&(w=void 0),s||l(w),s?.(w,m,p,g),w},isSelected:m=>c?i(c,m):!1}}function Uc(e,t){const n=Vc(e,t),r=Yc(e,t),s=Kc(e,t);switch(e.mode){case"single":return n;case"multiple":return r;case"range":return s;default:return}}function xe(e,t){return e instanceof be&&e.timeZone===t?e:new be(e,t)}function kt(e,t,n){if(!n)return xe(e,t);const r=xe(e,t),s=new be(r.getFullYear(),r.getMonth(),r.getDate(),12,0,0,t);return new Date(s.getTime())}function Qr(e,t,n){return typeof e=="boolean"||typeof e=="function"?e:e instanceof Date?kt(e,t,n):Array.isArray(e)?e.map(r=>r instanceof Date?kt(r,t,n):r):An(e)?{...e,from:e.from?xe(e.from,t):e.from,to:e.to?xe(e.to,t):e.to}:Tr(e)?{before:kt(e.before,t,n),after:kt(e.after,t,n)}:Er(e)?{after:kt(e.after,t,n)}:Or(e)?{before:kt(e.before,t,n)}:e}function er(e,t,n){return e&&(Array.isArray(e)?e.map(r=>Qr(r,t,n)):Qr(e,t,n))}function Hc(e){let t=e;const n=t.timeZone;if(n&&(t={...e,timeZone:n},t.today&&(t.today=xe(t.today,n)),t.month&&(t.month=xe(t.month,n)),t.defaultMonth&&(t.defaultMonth=xe(t.defaultMonth,n)),t.startMonth&&(t.startMonth=xe(t.startMonth,n)),t.endMonth&&(t.endMonth=xe(t.endMonth,n)),t.mode==="single"&&t.selected?t.selected=xe(t.selected,n):t.mode==="multiple"&&t.selected?t.selected=t.selected?.map(A=>xe(A,n)):t.mode==="range"&&t.selected&&(t.selected={from:t.selected.from?xe(t.selected.from,n):t.selected.from,to:t.selected.to?xe(t.selected.to,n):t.selected.to}),t.disabled!==void 0&&(t.disabled=er(t.disabled,n)),t.hidden!==void 0&&(t.hidden=er(t.hidden,n)),t.modifiers)){const A={};Object.keys(t.modifiers).forEach(F=>{A[F]=er(t.modifiers?.[F],n)}),t.modifiers=A}const{components:r,formatters:s,labels:o,dateLib:l,locale:c,classNames:i}=(0,u.useMemo)(()=>{const A={...Ia,...t.locale},F=t.broadcastCalendar?1:t.weekStartsOn,Y=t.noonSafe&&t.timeZone?Sc(t.timeZone,{weekStartsOn:F,locale:A}):void 0,G=t.dateLib&&Y?{...Y,...t.dateLib}:t.dateLib??Y,K=new ze({locale:A,weekStartsOn:F,firstWeekContainsDate:t.firstWeekContainsDate,useAdditionalWeekYearTokens:t.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:t.useAdditionalDayOfYearTokens,timeZone:t.timeZone,numerals:t.numerals},G);return{dateLib:K,components:sc(t.components),formatters:pc(t.formatters),labels:yc(t.labels,K.options),locale:A,classNames:{...Mr(),...t.classNames}}},[t.locale,t.broadcastCalendar,t.weekStartsOn,t.firstWeekContainsDate,t.useAdditionalWeekYearTokens,t.useAdditionalDayOfYearTokens,t.timeZone,t.numerals,t.dateLib,t.noonSafe,t.components,t.formatters,t.labels,t.classNames]);t.today||(t={...t,today:l.today()});const{captionLayout:f,mode:d,navLayout:m,numberOfMonths:p=1,onDayBlur:g,onDayClick:w,onDayFocus:S,onDayKeyDown:v,onDayMouseEnter:D,onDayMouseLeave:C,onNextClick:x,onPrevClick:h,showWeekNumber:y,styles:b}=t,{formatCaption:N,formatDay:j,formatMonthDropdown:k,formatWeekNumber:O,formatWeekNumberHeader:T,formatWeekdayName:M,formatYearDropdown:E}=s,I=Fc(t,l),{days:R,months:_,navStart:H,navEnd:se,previousMonth:Z,nextMonth:V,goToMonth:de}=I,Ge=rc(R,t,H,se,l),{isSelected:ge,select:Te,selected:Ee}=Uc(t,l)??{},{blur:Qe,focused:Oe,isFocusTarget:$,moveFocus:Be,setFocused:Ze}=zc(t,I,Ge,ge??(()=>!1),l),{labelDayButton:Xe,labelGridcell:mn,labelGrid:hn,labelMonthDropdown:U,labelNav:$t,labelPrevious:pn,labelNext:Kt,labelWeekday:zn,labelWeekNumber:et,labelWeekNumberHeader:gn,labelYearDropdown:Yn}=o,ct=(0,u.useMemo)(()=>wc(l,t.ISOWeek,t.broadcastCalendar,t.today),[l,t.ISOWeek,t.broadcastCalendar,t.today]),xn=d!==void 0||w!==void 0,wt=(0,u.useCallback)(()=>{Z&&(de(Z),h?.(Z))},[Z,de,h]),Vt=(0,u.useCallback)(()=>{V&&(de(V),x?.(V))},[de,V,x]),Bn=(0,u.useCallback)((A,F)=>Y=>{Y.preventDefault(),Y.stopPropagation(),Ze(A),!F.disabled&&(Te?.(A.date,F,Y),w?.(A.date,F,Y))},[Te,w,Ze]),Ct=(0,u.useCallback)((A,F)=>Y=>{Ze(A),S?.(A.date,F,Y)},[S,Ze]),Ln=(0,u.useCallback)((A,F)=>Y=>{Qe(),g?.(A.date,F,Y)},[Qe,g]),yn=(0,u.useCallback)((A,F)=>Y=>{const G={ArrowLeft:[Y.shiftKey?"month":"day",t.dir==="rtl"?"after":"before"],ArrowRight:[Y.shiftKey?"month":"day",t.dir==="rtl"?"before":"after"],ArrowDown:[Y.shiftKey?"year":"week","after"],ArrowUp:[Y.shiftKey?"year":"week","before"],PageUp:[Y.shiftKey?"year":"month","before"],PageDown:[Y.shiftKey?"year":"month","after"],Home:["startOfWeek","before"],End:["endOfWeek","after"]};if(G[Y.key]){Y.preventDefault(),Y.stopPropagation();const[K,ne]=G[Y.key];Be(K,ne)}v?.(A.date,F,Y)},[Be,v,t.dir]),$n=(0,u.useCallback)((A,F)=>Y=>{D?.(A.date,F,Y)},[D]),ut=(0,u.useCallback)((A,F)=>Y=>{C?.(A.date,F,Y)},[C]),vn=(0,u.useCallback)((A,F)=>Y=>{const G=Number(Y.target.value),K=l.setMonth(l.startOfMonth(A),G);de(l.addMonths(K,-F))},[l,de]),Kn=(0,u.useCallback)((A,F)=>Y=>{const G=Number(Y.target.value),K=l.setYear(l.startOfMonth(A),G);de(l.addMonths(K,-F))},[l,de]),{className:Vn,style:Un}=(0,u.useMemo)(()=>({className:[i[P.Root],t.className].filter(Boolean).join(" "),style:{...b?.[P.Root],...t.style}}),[i,t.className,t.style,b]),Hn=oc(t),bn=A=>{const F=b?.[P.Dropdown],Y=b?.[A];if(!(!F&&!Y))return{...F,...Y}},B=(0,u.useRef)(null);Nc(B,!!t.animate,{classNames:i,months:_,focused:Oe,dateLib:l});const X={dayPickerProps:t,selected:Ee,select:Te,isSelected:ge,months:_,nextMonth:V,previousMonth:Z,goToMonth:de,getModifiers:Ge,components:r,classNames:i,styles:b,labels:o,formatters:s};return u.createElement(Ya.Provider,{value:X},u.createElement(r.Root,{rootRef:t.animate?B:void 0,className:Vn,style:Un,dir:t.dir,id:t.id,lang:t.lang??c.code,nonce:t.nonce,title:t.title,role:t.role,"aria-label":t["aria-label"],"aria-labelledby":t["aria-labelledby"],...Hn},u.createElement(r.Months,{className:i[P.Months],style:b?.[P.Months]},!t.hideNavigation&&!m&&u.createElement(r.Nav,{"data-animated-nav":t.animate?"true":void 0,className:i[P.Nav],style:b?.[P.Nav],"aria-label":$t(),onPreviousClick:wt,onNextClick:Vt,previousMonth:Z,nextMonth:V}),_.map((A,F)=>{const Y=t.reverseMonths?_.length-1-F:F;return u.createElement(r.Month,{"data-animated-month":t.animate?"true":void 0,className:i[P.Month],style:b?.[P.Month],key:F,displayIndex:F,calendarMonth:A},m==="around"&&!t.hideNavigation&&F===0&&u.createElement(r.PreviousMonthButton,{type:"button",className:i[P.PreviousMonthButton],style:b?.[P.PreviousMonthButton],tabIndex:Z?void 0:-1,"aria-disabled":Z?void 0:!0,"aria-label":pn(Z),onClick:wt,"data-animated-button":t.animate?"true":void 0},u.createElement(r.Chevron,{disabled:Z?void 0:!0,className:i[P.Chevron],style:b?.[P.Chevron],orientation:t.dir==="rtl"?"right":"left"})),u.createElement(r.MonthCaption,{"data-animated-caption":t.animate?"true":void 0,className:i[P.MonthCaption],style:b?.[P.MonthCaption],calendarMonth:A,displayIndex:F},f?.startsWith("dropdown")?u.createElement(r.DropdownNav,{className:i[P.Dropdowns],style:b?.[P.Dropdowns]},(()=>{const G=f==="dropdown"||f==="dropdown-months"?u.createElement(r.MonthsDropdown,{key:"month",className:i[P.MonthsDropdown],"aria-label":U(),disabled:!!t.disableNavigation,onChange:vn(A.date,Y),options:vc(A.date,H,se,s,l),style:bn(P.MonthsDropdown),value:l.getMonth(A.date)}):u.createElement("span",{key:"month"},k(A.date,l)),K=f==="dropdown"||f==="dropdown-years"?u.createElement(r.YearsDropdown,{key:"year",className:i[P.YearsDropdown],"aria-label":Yn(l.options),disabled:!!t.disableNavigation,onChange:Kn(A.date,Y),options:Cc(H,se,s,l,!!t.reverseYears),style:bn(P.YearsDropdown),value:l.getYear(A.date)}):u.createElement("span",{key:"year"},E(A.date,l));return l.getMonthYearOrder()==="year-first"?[K,G]:[G,K]})(),u.createElement("span",{role:"status","aria-live":"polite",style:{border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"absolute",width:"1px",whiteSpace:"nowrap",wordWrap:"normal"}},N(A.date,l.options,l))):u.createElement(r.CaptionLabel,{className:i[P.CaptionLabel],style:b?.[P.CaptionLabel],role:"status","aria-live":"polite"},N(A.date,l.options,l))),m==="around"&&!t.hideNavigation&&F===p-1&&u.createElement(r.NextMonthButton,{type:"button",className:i[P.NextMonthButton],style:b?.[P.NextMonthButton],tabIndex:V?void 0:-1,"aria-disabled":V?void 0:!0,"aria-label":Kt(V),onClick:Vt,"data-animated-button":t.animate?"true":void 0},u.createElement(r.Chevron,{disabled:V?void 0:!0,className:i[P.Chevron],style:b?.[P.Chevron],orientation:t.dir==="rtl"?"left":"right"})),F===p-1&&m==="after"&&!t.hideNavigation&&u.createElement(r.Nav,{"data-animated-nav":t.animate?"true":void 0,className:i[P.Nav],style:b?.[P.Nav],"aria-label":$t(),onPreviousClick:wt,onNextClick:Vt,previousMonth:Z,nextMonth:V}),u.createElement(r.MonthGrid,{role:"grid","aria-multiselectable":d==="multiple"||d==="range","aria-label":hn(A.date,l.options,l)||void 0,className:i[P.MonthGrid],style:b?.[P.MonthGrid]},!t.hideWeekdays&&u.createElement(r.Weekdays,{"data-animated-weekdays":t.animate?"true":void 0,className:i[P.Weekdays],style:b?.[P.Weekdays]},y&&u.createElement(r.WeekNumberHeader,{"aria-label":gn(l.options),className:i[P.WeekNumberHeader],style:b?.[P.WeekNumberHeader],scope:"col"},T()),ct.map(G=>u.createElement(r.Weekday,{"aria-label":zn(G,l.options,l),className:i[P.Weekday],key:String(G),style:b?.[P.Weekday],scope:"col"},M(G,l.options,l)))),u.createElement(r.Weeks,{"data-animated-weeks":t.animate?"true":void 0,className:i[P.Weeks],style:b?.[P.Weeks]},A.weeks.map(G=>u.createElement(r.Week,{className:i[P.Week],key:G.weekNumber,style:b?.[P.Week],week:G},y&&u.createElement(r.WeekNumber,{week:G,style:b?.[P.WeekNumber],"aria-label":et(G.weekNumber,{locale:c}),className:i[P.WeekNumber],scope:"row",role:"rowheader"},O(G.weekNumber,l)),G.days.map(K=>{const{date:ne}=K,q=Ge(K);if(q[ae.focused]=!q.hidden&&!!Oe?.isEqualTo(K),q[De.selected]=ge?.(ne)||q.selected,An(Ee)){const{from:jt,to:qn}=Ee;q[De.range_start]=!!(jt&&qn&&l.isSameDay(ne,jt)),q[De.range_end]=!!(jt&&qn&&l.isSameDay(ne,qn)),q[De.range_middle]=Ke(Ee,ne,!0,l)}const St=bc(q,b,t.modifiersStyles),fe=ac(q,i,t.modifiersClassNames),Le=!xn&&!q.hidden?mn(ne,q,l.options,l):void 0;return u.createElement(r.Day,{key:`${K.isoDate}_${K.displayMonthId}`,day:K,modifiers:q,className:fe.join(" "),style:St,role:"gridcell","aria-selected":q.selected||void 0,"aria-label":Le,"data-day":K.isoDate,"data-month":K.outside?K.dateMonthId:void 0,"data-selected":q.selected||void 0,"data-disabled":q.disabled||void 0,"data-hidden":q.hidden||void 0,"data-outside":K.outside||void 0,"data-focused":q.focused||void 0,"data-today":q.today||void 0},!q.hidden&&xn?u.createElement(r.DayButton,{className:i[P.DayButton],style:b?.[P.DayButton],type:"button",day:K,modifiers:q,disabled:!q.focused&&q.disabled||void 0,"aria-disabled":q.focused&&q.disabled||void 0,tabIndex:$(K)?0:-1,"aria-label":Xe(ne,q,l.options,l),onClick:Bn(K,q),onBlur:Ln(K,q),onFocus:Ct(K,q),onKeyDown:yn(K,q),onMouseEnter:$n(K,q),onMouseLeave:ut(K,q)},j(ne,l.options,l)):!q.hidden&&j(K.date,l.options,l))}))))))})),t.footer&&u.createElement(r.Footer,{className:i[P.Footer],style:b?.[P.Footer],role:"status","aria-live":"polite"},t.footer)))}function qc({className:e,classNames:t,showOutsideDays:n=!0,captionLayout:r="label",buttonVariant:s="ghost",formatters:o,components:l,...c}){const i=Mr();return(0,a.jsx)(Hc,{showOutsideDays:n,className:z("p-3 [--cell-radius:var(--radius-md)] [--cell-size:--spacing(6)] bg-background group/calendar [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent",String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,e),captionLayout:r,formatters:{formatMonthDropdown:f=>f.toLocaleString("default",{month:"short"}),...o},classNames:{root:z("w-fit",i.root),months:z("flex gap-4 flex-col md:flex-row relative",i.months),month:z("flex flex-col w-full gap-4",i.month),nav:z("flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between",i.nav),button_previous:z(Ir({variant:s}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",i.button_previous),button_next:z(Ir({variant:s}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",i.button_next),month_caption:z("flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)",i.month_caption),dropdowns:z("w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5",i.dropdowns),dropdown_root:z("relative cn-calendar-dropdown-root rounded-(--cell-radius)",i.dropdown_root),dropdown:z("absolute bg-popover inset-0 opacity-0",i.dropdown),caption_label:z("select-none font-medium",r==="label"?"text-sm":"cn-calendar-caption-label rounded-(--cell-radius) flex items-center gap-1 text-sm [&>svg]:text-muted-foreground [&>svg]:size-3.5",i.caption_label),month_grid:z("w-full border-collapse",i.month_grid),weekdays:z("flex",i.weekdays),weekday:z("text-muted-foreground rounded-(--cell-radius) flex-1 font-normal text-[0.8rem] select-none",i.weekday),week:z("flex w-full mt-2",i.week),week_number_header:z("select-none w-(--cell-size)",i.week_number_header),week_number:z("text-[0.8rem] select-none text-muted-foreground",i.week_number),day:z("relative w-full rounded-(--cell-radius) h-full p-0 text-center [&:last-child[data-selected=true]_button]:rounded-r-(--cell-radius) group/day aspect-square select-none",c.showWeekNumber?"[&:nth-child(2)[data-selected=true]_button]:rounded-l-(--cell-radius)":"[&:first-child[data-selected=true]_button]:rounded-l-(--cell-radius)",i.day),range_start:z("rounded-l-(--cell-radius) bg-muted elative after:bg-muted after:absolute after:inset-y-0 after:w-4 after:right-0 -z-0 isolate",i.range_start),range_middle:z("rounded-none",i.range_middle),range_end:z("rounded-r-(--cell-radius) bg-muted relative after:bg-muted-200 after:absolute after:inset-y-0 after:w-4 after:left-0 -z-0 isolate",i.range_end),today:z("bg-muted text-foreground rounded-(--cell-radius) data-[selected=true]:rounded-none",i.today),outside:z("text-muted-foreground aria-selected:text-muted-foreground",i.outside),disabled:z("text-muted-foreground opacity-50",i.disabled),hidden:z("invisible",i.hidden),...t},components:{Root:({className:f,rootRef:d,...m})=>(0,a.jsx)("div",{"data-slot":"calendar",ref:d,className:z(f),...m}),Chevron:({className:f,orientation:d,...m})=>d==="left"?(0,a.jsx)(pa,{className:z("size-4",f),...m}):d==="right"?(0,a.jsx)(ma,{className:z("size-4",f),...m}):(0,a.jsx)(an,{className:z("size-4",f),...m}),DayButton:Jc,WeekNumber:({children:f,...d})=>(0,a.jsx)("td",{...d,children:(0,a.jsx)("div",{className:"flex size-(--cell-size) items-center justify-center text-center",children:f})}),...l},...c})}function Jc({className:e,day:t,modifiers:n,...r}){const s=Mr(),o=u.useRef(null);return u.useEffect(()=>{n.focused&&o.current?.focus()},[n.focused]),(0,a.jsx)(W,{ref:o,variant:"ghost",size:"icon","data-day":t.date.toLocaleDateString(),"data-selected-single":n.selected&&!n.range_start&&!n.range_end&&!n.range_middle,"data-range-start":n.range_start,"data-range-end":n.range_end,"data-range-middle":n.range_middle,className:z("data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-muted data-[range-middle=true]:text-foreground data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 dark:hover:text-foreground relative isolate z-10 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 border-0 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] data-[range-end=true]:rounded-(--cell-radius) data-[range-end=true]:rounded-r-(--cell-radius) data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-(--cell-radius) data-[range-start=true]:rounded-l-(--cell-radius) [&>span]:text-xs [&>span]:opacity-70",s.day,e),...r})}function mt({value:e,onChange:t,placeholder:n="Pick a date",className:r,disabled:s,startYear:o=1980,endYear:l=new Date().getFullYear()+10,icon:c=!0,isFormatted:i=!0,showTime:f=!1,modal:d,open:m,onOpenChange:p}){const[g,w]=(0,u.useState)(!1),S=m??g,v=E=>{w(E),p?.(E)},[D]=(0,u.useState)(()=>new Date),C=e?e.getHours():0,x=e?e.getMinutes():0,h=e?e.getSeconds():0,y=(E,I)=>{I({target:{value:String(E)}})},b=E=>{E&&e&&(E.setHours(e.getHours()),E.setMinutes(e.getMinutes()),E.setSeconds(e.getSeconds())),t?.(E),f||v(!1)},N=(E,I)=>{const R=e?new Date(e):new Date;E==="hours"&&R.setHours(I),E==="minutes"&&R.setMinutes(I),E==="seconds"&&R.setSeconds(I),t?.(R)},j=E=>{const I=It(new Date);switch(E){case"NULL":t?.(null);break;case"NOW":t?.(new Date);break;case"TODAY":t?.(I);break;case"YESTERDAY":t?.(Tn(I,-1));break;case"TOMORROW":t?.(Tn(I,1))}},k=Array.from({length:24},(E,I)=>I),O=Array.from({length:60},(E,I)=>I),T=Array.from({length:60},(E,I)=>I),M=e&&e instanceof Date&&!Number.isNaN(e.getTime())?i?f?_e(e,"dd/MM/yyyy HH:mm:ss"):_e(e,"dd/MM/yyyy"):f?_e(e,"yyyy-MM-dd HH:mm:ss"):_e(e,"yyyy-MM-dd"):e===null?"NULL":n;return(0,a.jsxs)(Yt,{modal:d,open:S,onOpenChange:v,children:[(0,a.jsx)(cn,{asChild:!0,children:(0,a.jsxs)(W,{variant:"outline",className:z("w-full justify-start text-left font-normal",!e&&"text-muted-foreground",r),disabled:s,children:[c&&(0,a.jsx)(Qs,{className:"mr-2 size-4"}),M]})}),(0,a.jsx)(it,{className:"w-auto p-0",align:"end",children:(0,a.jsxs)("div",{className:"flex",children:[(0,a.jsxs)("div",{className:"flex flex-col gap-1 p-2 border-r",children:[(0,a.jsx)(W,{variant:"ghost",size:"sm",className:"justify-start text-xs h-7",onClick:()=>j("NULL"),children:"NULL"}),(0,a.jsx)(W,{variant:"ghost",size:"sm",className:"justify-start text-xs h-7",onClick:()=>j("NOW"),children:"NOW"}),(0,a.jsx)(W,{variant:"ghost",size:"sm",className:"justify-start text-xs h-7",onClick:()=>j("TODAY"),children:"TODAY"}),(0,a.jsx)(W,{variant:"ghost",size:"sm",className:"justify-start text-xs h-7",onClick:()=>j("YESTERDAY"),children:"YESTERDAY"}),(0,a.jsx)(W,{variant:"ghost",size:"sm",className:"justify-start text-xs h-7",onClick:()=>j("TOMORROW"),children:"TOMORROW"})]}),(0,a.jsx)(qc,{components:{Dropdown:E=>(0,a.jsxs)(Ie,{onValueChange:I=>{E.onChange&&y(I,E.onChange)},value:String(E.value),children:[(0,a.jsx)(Fe,{className:"h-8 w-fit font-medium first-letter:capitalize focus:ring-0 focus:ring-offset-0",children:(0,a.jsx)(Pe,{})}),(0,a.jsx)(We,{children:E.options?.map(I=>(0,a.jsx)(Q,{value:String(I.value),children:I.label},I.value))})]}),DropdownNav:E=>(0,a.jsx)("div",{className:"flex w-full items-center gap-2",children:E.children})},defaultMonth:e||D,hideNavigation:!0,mode:"single",onSelect:b,selected:e||void 0,startMonth:new Date(o,0),endMonth:new Date(l,11)}),f&&(0,a.jsxs)("div",{className:"flex border-l",children:[(0,a.jsx)(tr,{label:"H",values:k,selected:C,onChange:E=>N("hours",E)}),(0,a.jsx)(tr,{label:"M",values:O,selected:x,onChange:E=>N("minutes",E)}),(0,a.jsx)(tr,{label:"S",values:T,selected:h,onChange:E=>N("seconds",E)})]})]})})]})}function tr({label:e,values:t,selected:n,onChange:r}){const s=(0,u.useRef)(new Map);return(0,u.useEffect)(()=>{const o=s.current.get(n);o&&o.scrollIntoView({block:"center",behavior:"auto"})},[n]),(0,a.jsxs)("div",{className:"flex flex-col",children:[(0,a.jsx)("div",{className:"px-3 py-2 text-xs font-medium text-muted-foreground text-center border-b",children:e}),(0,a.jsx)(Vo,{className:"h-[224px]",children:(0,a.jsx)("div",{className:"flex flex-col p-1",children:t.map(o=>(0,a.jsx)("button",{ref:l=>{l&&s.current.set(o,l)},type:"button",onClick:()=>r(o),className:z("w-10 h-8 text-sm rounded-md hover:bg-accent flex items-center justify-center",n===o&&"bg-primary text-primary-foreground hover:bg-primary"),children:o.toString().padStart(2,"0")},o))})})]})}var ts=on()(e=>({tableName:null,columnName:null,referencedColumn:null,setRecordReference:(t,n,r)=>e({tableName:t,columnName:n,referencedColumn:r}),clearRecordReference:()=>e({tableName:null,columnName:null,referencedColumn:null})})),wn=e=>String(e).padStart(2,"0"),nr=e=>`${e.getFullYear()}-${wn(e.getMonth()+1)}-${wn(e.getDate())}T${wn(e.getHours())}:${wn(e.getMinutes())}`,ns=({columnName:e,dataTypeLabel:t,columnDefault:n,enumValues:r,isForeignKey:s,referencedTable:o,referencedColumn:l,hideLabel:c=!1})=>{const[,i]=J(L.REFERENCED_TABLE_STATE_KEYS.ACTIVE_TABLE),{control:f}=wr(),{openOverlay:d}=he(),{setRecordReference:m}=ts(),p=g=>{const w={...g,value:g.value??""},S=c?e:void 0;if(s)return(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsxs)("div",{className:"flex",children:[(0,a.jsx)(ve,{id:e,"aria-label":S,placeholder:n??"",className:"-me-px flex-1 rounded-e-none shadow-none focus-visible:z-10",...w}),(0,a.jsx)(Ut,{delayDuration:0,children:(0,a.jsxs)(at,{children:[(0,a.jsx)(nt,{asChild:!0,children:(0,a.jsx)("button",{"aria-label":"Go to table",className:"inline-flex w-9 items-center justify-center rounded-e-md border border-input bg-background text-muted-foreground/80 text-sm outline-none transition-[color,box-shadow] hover:text-accent-foreground focus:z-10 focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",type:"button",onClick:()=>{o&&e&&l&&m(o,e,l),d("records.record-reference"),i(o)},children:(0,a.jsx)(ua,{"aria-hidden":"true",className:"size-4",size:16})})}),(0,a.jsx)(rt,{className:"px-2 py-1 text-xs",children:"Go to table"})]})})]}),(0,a.jsxs)("span",{className:"text-xs text-muted-foreground",children:["Has a foreign key relation to"," ",(0,a.jsx)("button",{type:"button",className:"font-mono text-primary",onClick:()=>{o&&e&&l&&m(o,e,l),d("records.record-reference"),i(o)},children:o})," ","table"]})]});if(t==="int"||t==="bigint"||t==="smallint"||t==="numeric"||t==="float"||t==="double"||t==="money")return(0,a.jsx)(ve,{id:e,"aria-label":S,type:"number",placeholder:n??"0",...w});if(t==="boolean")return(0,a.jsxs)(Ie,{value:g.value,onValueChange:v=>g.onChange(v),children:[(0,a.jsx)(Fe,{"aria-label":S,className:"w-full",children:(0,a.jsx)(Pe,{placeholder:n??"true"})}),(0,a.jsxs)(We,{children:[(0,a.jsx)(Q,{value:"true",children:"true"}),(0,a.jsx)(Q,{value:"false",children:"false"})]})]});if(t==="text"||t==="xml")return(0,a.jsx)(He,{id:e,"aria-label":S,placeholder:n??"",rows:4,...w});if(t==="json"||t==="jsonb")return(0,a.jsx)(He,{id:e,"aria-label":S,placeholder:n??'{"key": "value"}',rows:6,...w});if(t==="date")return n?.toLowerCase().includes("current_date")||n?.toLowerCase().includes("now()")||n?.toLowerCase().includes("curdate()")?(0,a.jsxs)("div",{className:"flex",children:[(0,a.jsx)(mt,{value:g.value?new Date(g.value):g.value===""?null:void 0,onChange:v=>g.onChange(v?v.toISOString().split("T")[0]:""),placeholder:n??"Select a date",className:"-me-px flex-1 rounded-e-none shadow-none focus-visible:z-10"}),(0,a.jsx)(Ut,{delayDuration:0,children:(0,a.jsxs)(at,{children:[(0,a.jsx)(nt,{asChild:!0,children:(0,a.jsx)("button",{"aria-label":"Set to now",className:"inline-flex w-7 items-center justify-center rounded-e-md border border-input bg-background text-muted-foreground/80 text-sm outline-none transition-[color,box-shadow] hover:text-accent-foreground focus:z-10 focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",type:"button",onClick:()=>{const v=new Date().toISOString().split("T")[0];g.onChange(v)},children:(0,a.jsx)(Jn,{"aria-hidden":"true",className:"size-4",size:16})})}),(0,a.jsx)(rt,{className:"px-2 py-1 text-xs",children:"Set to now"})]})})]}):(0,a.jsx)(mt,{value:g.value?new Date(g.value):g.value===""?null:void 0,onChange:v=>g.onChange(v?v.toISOString().split("T")[0]:""),placeholder:n??"Select a date"});if(t==="timestamptz")return n?.toLowerCase().includes("current_timestamp")||n?.toLowerCase().includes("now()")||n?.toLowerCase().includes("localtimestamp")?(0,a.jsxs)("div",{className:"flex",children:[(0,a.jsx)(mt,{value:g.value?new Date(g.value):g.value===""?null:void 0,onChange:v=>g.onChange(v?v.toISOString():""),showTime:!0,isFormatted:!1,placeholder:n??"Select a date and time",className:"-me-px flex-1 rounded-e-none shadow-none focus-visible:z-10"}),(0,a.jsx)(Ut,{delayDuration:0,children:(0,a.jsxs)(at,{children:[(0,a.jsx)(nt,{asChild:!0,children:(0,a.jsx)("button",{"aria-label":"Set to now",className:"inline-flex w-7 items-center justify-center rounded-e-md border border-input bg-background text-muted-foreground/80 text-sm outline-none transition-[color,box-shadow] hover:text-accent-foreground focus:z-10 focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",type:"button",onClick:()=>{const v=new Date().toISOString();g.onChange(v)},children:(0,a.jsx)(Jn,{"aria-hidden":"true",className:"size-4",size:16})})}),(0,a.jsx)(rt,{className:"px-2 py-1 text-xs",children:"Set to now"})]})})]}):(0,a.jsx)(mt,{value:g.value?new Date(g.value):g.value===""?null:void 0,onChange:v=>g.onChange(v?v.toISOString():""),showTime:!0,isFormatted:!1,placeholder:n??"Select a date and time"});if(t==="timestamp")return n?.toLowerCase().includes("current_timestamp")||n?.toLowerCase().includes("now()")||n?.toLowerCase().includes("localtimestamp")?(0,a.jsxs)("div",{className:"flex",children:[(0,a.jsx)(mt,{value:g.value?new Date(g.value):g.value===""?null:void 0,onChange:v=>g.onChange(v?nr(v):""),showTime:!0,isFormatted:!1,placeholder:n??"Select a date and time",className:"-me-px flex-1 rounded-e-none shadow-none focus-visible:z-10"}),(0,a.jsx)(Ut,{delayDuration:0,children:(0,a.jsxs)(at,{children:[(0,a.jsx)(nt,{asChild:!0,children:(0,a.jsx)("button",{"aria-label":"Set to now",className:"inline-flex w-7 items-center justify-center rounded-e-md border border-input bg-background text-muted-foreground/80 text-sm outline-none transition-[color,box-shadow] hover:text-accent-foreground focus:z-10 focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",type:"button",onClick:()=>{g.onChange(nr(new Date))},children:(0,a.jsx)(Jn,{"aria-hidden":"true",className:"size-4",size:16})})}),(0,a.jsx)(rt,{className:"px-2 py-1 text-xs",children:"Set to now"})]})})]}):(0,a.jsx)(mt,{value:g.value?new Date(g.value):g.value===""?null:void 0,onChange:v=>g.onChange(v?nr(v):""),showTime:!0,isFormatted:!1,placeholder:n??"Select a date and time"});if(t==="uuid")return(0,a.jsxs)("div",{className:"flex",children:[(0,a.jsx)(ve,{id:e,"aria-label":S,type:"text",placeholder:n??"",pattern:"[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}",className:"-me-px flex-1 rounded-e-none shadow-none focus-visible:z-10",...w}),(0,a.jsx)(Ut,{delayDuration:0,children:(0,a.jsxs)(at,{children:[(0,a.jsx)(nt,{asChild:!0,children:(0,a.jsx)("button",{"aria-label":"Generate UUID",className:"inline-flex w-9 items-center justify-center rounded-e-md border border-input bg-background text-muted-foreground/80 text-sm outline-none transition-[color,box-shadow] hover:text-accent-foreground focus:z-10 focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",type:"button",onClick:()=>{const v=crypto.randomUUID();g.onChange(v)},children:(0,a.jsx)(da,{"aria-hidden":"true",className:"size-4",size:16})})}),(0,a.jsx)(rt,{className:"px-2 py-1 text-xs",children:"Generate UUID"})]})})]});if(t==="array")return(0,a.jsx)(He,{id:e,"aria-label":S,placeholder:n??'["item1", "item2"]',rows:3,...w});if(t==="enum")return r&&r.length>0?(0,a.jsxs)(Ie,{value:g.value,onValueChange:v=>g.onChange(v),children:[(0,a.jsx)(Fe,{"aria-label":S,className:"w-full",children:(0,a.jsx)(Pe,{placeholder:n??"Select a value"})}),(0,a.jsx)(We,{children:r.map(v=>(0,a.jsx)(Q,{value:v,children:v},v))})]}):(0,a.jsx)(ve,{id:e,"aria-label":S,placeholder:n??"",...w});if(t==="interval")return(0,a.jsx)(ve,{id:e,"aria-label":S,type:"text",placeholder:n??"1 day",...w});if(t==="bytea"){const{value:v,...D}=w,C=typeof v=="string"?v:"";return(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[C&&(0,a.jsx)("div",{role:"group","aria-label":`${e} stored value`,className:"truncate rounded-md border border-input bg-muted/40 px-3 py-2 font-mono text-xs",children:C}),(0,a.jsx)(ve,{id:e,"aria-label":S,type:"file",...D})]})}return t==="inet"||t==="cidr"||t==="macaddr"||t==="macaddr8"?(0,a.jsx)(ve,{id:e,"aria-label":S,type:"text",placeholder:t==="inet"?"192.168.1.1":t==="cidr"?"192.168.1.0/24":t==="macaddr"?"08:00:2b:01:02:03":"08:00:2b:01:02:03:04:05",...w}):t==="point"||t==="line"||t==="polygon"?(0,a.jsx)(ve,{id:e,"aria-label":S,type:"text",placeholder:t==="point"?"(x,y)":t==="line"?"{A,B,C}":"((x1,y1),(x2,y2),...)",...w}):(0,a.jsx)(ve,{id:e,"aria-label":S,type:"text",placeholder:n??"",...w})};return(0,a.jsx)(No,{control:f,name:e,render:({field:g})=>c?(0,a.jsx)("div",{role:"group","aria-label":e,children:p(g)}):(0,a.jsxs)("div",{className:"grid grid-cols-3 gap-4",children:[(0,a.jsxs)("div",{className:"col-span-1 flex flex-col gap-1",children:[(0,a.jsx)(we,{htmlFor:e,children:e}),(0,a.jsx)("span",{className:"text-xs text-muted-foreground",children:t})]}),(0,a.jsx)("div",{className:"col-span-2 w-full",children:p(g)})]})},e)},Gc=({tableName:e,schemaName:t})=>{const n=Je(),{closeOverlay:r}=he(),{selectedDatabase:s,dbType:o}=pe(),{mutateAsync:l,isPending:c}=ot({mutationFn:async f=>(await Ro({tableName:e,schemaName:t,data:f,db:s})).data.data,onSuccess:async()=>{await Promise.all([n.invalidateQueries({queryKey:ue.dataByTable(e),exact:!1}),n.invalidateQueries({queryKey:ue.lists()})]),r("records.add-record"),o&&ln.capture("record_created",{db_type:o})}});return{createRecord:async(f,d)=>{if(!f||Object.keys(f).length===0)throw new Error("At least one field is required");return Ae.promise(l(f,d),{loading:"Creating record...",success:m=>m||"Record created successfully",error:m=>m.detail||m.message||"Failed to create record"})},isCreatingRecord:c}};function Qc({className:e,...t}){return(0,a.jsx)("div",{"data-slot":"table-container",className:"relative w-full overflow-x-auto",children:(0,a.jsx)("table",{"data-slot":"table",className:z("w-full caption-bottom text-xs",e),...t})})}function Zc({className:e,...t}){return(0,a.jsx)("thead",{"data-slot":"table-header",className:z("[&_tr]:border-b",e),...t})}function Xc({className:e,...t}){return(0,a.jsx)("tbody",{"data-slot":"table-body",className:z("[&_tr:last-child]:border-0",e),...t})}function rr({className:e,...t}){return(0,a.jsx)("tr",{"data-slot":"table-row",className:z("hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors",e),...t})}function eu({className:e,...t}){return(0,a.jsx)("th",{"data-slot":"table-head",className:z("text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0",e),...t})}function Zr({className:e,...t}){return(0,a.jsx)("td",{"data-slot":"table-cell",className:z("p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0",e),...t})}var Fn=({tableName:e,schemaName:t,isReferencedTable:n=!1})=>{const{selectedDatabase:r}=pe(),[s]=J(L.REFERENCED_TABLE_STATE_KEYS.ACTIVE_TABLE),o=e||s||"",[l]=J(n?L.REFERENCED_TABLE_STATE_KEYS.CURSOR:L.TABLE_STATE_KEYS.CURSOR),[c]=J(n?L.REFERENCED_TABLE_STATE_KEYS.LIMIT.toString():L.TABLE_STATE_KEYS.LIMIT),[i]=J(n?L.REFERENCED_TABLE_STATE_KEYS.DIRECTION:L.TABLE_STATE_KEYS.DIRECTION),[f]=J(L.REFERENCED_TABLE_STATE_KEYS.SORT,Ft(b=>b).withDefault([]).withOptions({history:"push"})),[d]=J(L.TABLE_STATE_KEYS.SORT),[m]=J(L.TABLE_STATE_KEYS.ORDER),[p]=J(n?L.REFERENCED_TABLE_STATE_KEYS.FILTERS:L.TABLE_STATE_KEYS.FILTERS,Ft(b=>b).withDefault([]).withOptions({history:"push"})),g={tableName:o,cursor:l,limit:c,direction:i,sort:n&&f?.length>0?JSON.stringify(f):d,order:m,filters:p?.length>0?JSON.stringify(p):void 0,db:r,schemaName:t},w=b=>zo({tableName:b.tableName,schemaName:b.schemaName,limit:b.limit?.toString()||L.CACHE_KEYS.TABLE_DEFAULT_LIMIT.toString(),db:b.db??void 0,cursor:b.cursor,direction:b.direction,sort:b.sort??void 0,order:b.order,filters:b.filters}),{data:S,isLoading:v,isRefetching:D,refetch:C,error:x}=yr({queryKey:ue.data(g),queryFn:()=>w(g),select:b=>b.data.data,enabled:!!o}),h=Je();return{tableData:S,prefetchPage:(b,N)=>{const j={...g,cursor:b,direction:N};h.prefetchQuery({queryKey:ue.data(j),queryFn:()=>w(j)})},pageKey:JSON.stringify(ue.data(g)),isLoadingTableData:v,isRefetchingTableData:D,errorTableData:x,refetchTableData:C}},tu=({tableName:e})=>{const[t,n]=J(L.REFERENCED_TABLE_STATE_KEYS.FILTERS,Ft(x=>x).withDefault([]).withOptions({history:"push"})),[,r]=J(L.REFERENCED_TABLE_STATE_KEYS.CURSOR),[,s]=J(L.REFERENCED_TABLE_STATE_KEYS.DIRECTION),{tableCols:o}=Ce({tableName:e,schemaName:ce()}),[l,c]=(0,u.useState)(!1),[i,f]=(0,u.useState)([]),d=()=>{const x=o?.[0]?.columnName??"";f(h=>[...h,{columnName:x,operator:"=",value:""}])},m=x=>{f(i.filter((h,y)=>y!==x))},p=(x,h)=>{f(i.map((y,b)=>b===x?{...y,columnName:h}:y))},g=(x,h)=>{f(i.map((y,b)=>b===x?{...y,value:h}:y))},w=(x,h)=>{f(i.map((y,b)=>b===x?{...y,operator:h}:y))},S=()=>{f([]),n([]),r(null),s(null),c(!1)},v=()=>{const x=i.filter(h=>h.columnName&&h.operator&&h.value!=="");n(x),r(null),s(null),c(!1)},D=t.length>0,C=x=>{x&&f(t),c(x)};return(0,a.jsxs)(Yt,{modal:!0,open:l,onOpenChange:C,children:[(0,a.jsx)(cn,{asChild:!0,children:(0,a.jsxs)(W,{type:"button",variant:"ghost",className:"border-r border-l-0 border-y-0 border-border rounded-none text-xs h-full text-muted-foreground hover:text-foreground hover:bg-muted/60 transition-colors","aria-label":"Filter table data","data-active":D,children:[(0,a.jsx)(fa,{className:"size-4"}),"Filter",D&&(0,a.jsx)(Ne,{className:"text-[10px] font-normal text-primary bg-primary/10 border border-primary/30 px-1.5 py-0.5",children:t.length})]})}),(0,a.jsxs)(it,{className:"w-md space-y-2",align:"start",children:[(0,a.jsx)("div",{className:"flex items-center gap-4",children:(0,a.jsxs)(W,{variant:"outline",size:"lg",className:"text-sm",onClick:d,children:["Add filter",i&&i.length>0&&(0,a.jsx)(Ne,{className:"text-xs font-normal text-primary bg-primary/10 border border-primary/30 px-1.5 py-0.5",children:i.length})]})}),(0,a.jsx)("div",{className:"flex flex-col gap-4",children:i.length>0?i.map((x,h)=>(0,a.jsxs)("div",{className:"flex-1 flex h-9 gap-2",children:[(0,a.jsxs)(Ie,{value:x.columnName,onValueChange:y=>p(h,y),children:[(0,a.jsx)(Fe,{className:"w-full flex-1",children:(0,a.jsx)(Pe,{placeholder:"Select column"})}),(0,a.jsx)(We,{children:o?.map(y=>(0,a.jsx)(Q,{value:y.columnName,children:y.columnName},y.columnName))})]}),(0,a.jsxs)(Ie,{value:x.operator,onValueChange:y=>w(h,y),children:[(0,a.jsx)(Fe,{children:(0,a.jsx)(Pe,{placeholder:"Op"})}),(0,a.jsxs)(We,{children:[(0,a.jsx)(Q,{value:"=",children:"="}),(0,a.jsx)(Q,{value:"!=",children:"!="}),(0,a.jsx)(Q,{value:">",children:">"}),(0,a.jsx)(Q,{value:">=",children:">="}),(0,a.jsx)(Q,{value:"<",children:"<"}),(0,a.jsx)(Q,{value:"<=",children:"<="}),(0,a.jsx)(Q,{value:"is",children:"is"}),(0,a.jsx)(Q,{value:"is not",children:"is not"}),(0,a.jsx)(Q,{value:"like",children:"like"}),(0,a.jsx)(Q,{value:"not like",children:"not like"}),(0,a.jsx)(Q,{value:"ilike",children:"ilike"}),(0,a.jsx)(Q,{value:"not ilike",children:"not ilike"})]})]}),(0,a.jsx)(ve,{type:"text",placeholder:"Value",value:x.value,onChange:y=>g(h,y.target.value)}),(0,a.jsx)(W,{variant:"ghost",size:"icon",className:"text-xs",onClick:()=>m(h),children:(0,a.jsx)(Mn,{className:"size-4"})})]},`${x.columnName}-${h}`)):(0,a.jsx)("div",{className:"flex-1 flex h-9 gap-2 items-center justify-center",children:(0,a.jsx)("p",{className:"text-sm text-muted-foreground text-center",children:"No filters applied"})})}),(0,a.jsxs)("div",{className:"gap-2 flex justify-end",children:[(0,a.jsx)(W,{variant:"outline",size:"lg",className:"text-sm",onClick:S,children:"Reset"}),(0,a.jsx)(W,{variant:"default",size:"lg",className:"text-sm",onClick:v,children:"Apply"})]})]})]})},nu=({tableName:e})=>{const{tableCols:t}=Ce({tableName:e,schemaName:ce()}),[n,r]=J(L.REFERENCED_TABLE_STATE_KEYS.SORT,Ft(C=>C).withDefault([]).withOptions({history:"push"})),[,s]=J(L.REFERENCED_TABLE_STATE_KEYS.CURSOR),[,o]=J(L.REFERENCED_TABLE_STATE_KEYS.DIRECTION),[l,c]=(0,u.useState)(!1),[i,f]=(0,u.useState)([]),d=()=>{const C=t?.[0]?.columnName??"";f(x=>[...x,{columnName:C,direction:"asc"}])},m=C=>{f(i.filter((x,h)=>h!==C))},p=(C,x)=>{f(i.map((h,y)=>y===C?{...h,columnName:x}:h))},g=(C,x)=>{f(i.map((h,y)=>y===C?{...h,direction:x}:h))},w=()=>{f([]),r([]),s(null),o(null),c(!1)},S=()=>{const C=i.filter(x=>x.columnName);r(C),s(null),o(null),c(!1)},v=n.length>0,D=C=>{C&&f(n),c(C)};return(0,a.jsxs)(Yt,{modal:!0,open:l,onOpenChange:D,children:[(0,a.jsx)(cn,{asChild:!0,children:(0,a.jsxs)(W,{variant:"ghost",className:"border-r border-l-0 border-y-0 border-border rounded-none text-xs h-full text-muted-foreground hover:text-foreground hover:bg-muted/60 transition-colors",children:[(0,a.jsx)(no,{className:"size-4"}),"Sort",v&&(0,a.jsx)(Ne,{className:"text-[10px] font-normal text-primary bg-primary/10 border border-primary/30 px-1.5 py-0.5",children:n.length})]})}),(0,a.jsxs)(it,{className:"w-md space-y-2",align:"start",children:[(0,a.jsx)("div",{className:"flex items-center gap-4",children:(0,a.jsxs)(W,{variant:"outline",size:"lg",className:"text-sm",onClick:d,children:["Add sort",i&&i.length>0&&(0,a.jsx)(Ne,{className:"text-xs font-normal text-primary bg-primary/10 border border-primary/30 px-1.5 py-0.5",children:i.length})]})}),(0,a.jsx)("div",{className:"flex flex-col gap-4",children:i.length>0?i.map((C,x)=>(0,a.jsxs)("div",{className:"flex-1 flex h-9 gap-2 items-center",children:[(0,a.jsxs)(Ie,{value:C.columnName,onValueChange:h=>p(x,h),children:[(0,a.jsx)(Fe,{className:"w-full flex-1",children:(0,a.jsx)(Pe,{placeholder:"Select column"})}),(0,a.jsx)(We,{children:t?.map(h=>(0,a.jsx)(Q,{value:h.columnName,children:h.columnName},h.columnName))})]}),(0,a.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,a.jsx)(we,{htmlFor:`sort-direction-${x}`,children:"Asc"}),(0,a.jsx)(Ko,{id:`sort-direction-${x}`,checked:C.direction==="desc",onCheckedChange:h=>g(x,h?"desc":"asc")}),(0,a.jsx)(we,{htmlFor:`sort-direction-${x}`,children:"Desc"})]}),(0,a.jsx)(W,{variant:"ghost",size:"icon",className:"text-xs",onClick:()=>m(x),children:(0,a.jsx)(Mn,{className:"size-4"})})]},`${C.columnName}-${x}`)):(0,a.jsx)("div",{className:"flex-1 flex h-9 gap-2 items-center justify-center",children:(0,a.jsx)("p",{className:"text-sm text-muted-foreground text-center",children:"No sorts applied"})})}),(0,a.jsxs)("div",{className:"gap-2 flex justify-end",children:[(0,a.jsx)(W,{variant:"outline",size:"lg",className:"text-sm",onClick:w,children:"Reset"}),(0,a.jsx)(W,{variant:"default",size:"lg",className:"text-sm",onClick:S,children:"Apply"})]})]})]})},ru=({tableName:e,referencedColumn:t,columnName:n})=>{const{setValue:r}=wr(),{closeOverlay:s}=he(),o=ce(),{tableCols:l,isLoadingTableCols:c}=Ce({tableName:e,schemaName:o}),[i,f]=J(L.REFERENCED_TABLE_STATE_KEYS.ACTIVE_TABLE),{tableData:d,isLoadingTableData:m}=Fn({tableName:e,schemaName:o,isReferencedTable:!0}),[,p]=J(L.REFERENCED_TABLE_STATE_KEYS.CURSOR),[,g]=J(L.REFERENCED_TABLE_STATE_KEYS.DIRECTION),[w,S]=J(L.REFERENCED_TABLE_STATE_KEYS.LIMIT.toString());(0,u.useEffect)(()=>{e&&i!==e&&f(e),e&&!w&&S(L.REFERENCED_TABLE_STATE_KEYS.DEFAULT_LIMIT.toString())},[e,i,w,f,S]);const v=()=>{d?.meta?.nextCursor&&(p(d.meta.nextCursor),g("forward"))},D=()=>{d?.meta?.prevCursor&&(p(d.meta.prevCursor),g("backward"))},C=(0,u.useMemo)(()=>l?.map(y=>({id:y.columnName,accessorKey:y.columnName,header:y.columnName,cell:({row:b})=>(0,a.jsx)("div",{className:"font-medium max-w-[200px] truncate",children:qe(b.getValue(y.columnName))})}))??[],[l]),x=la({columns:C??[],data:d?.data??[],getCoreRowModel:ia()}),h=y=>{r(n??"",y.original[t??""]),s("records.record-reference")};return c||m?(0,a.jsx)("div",{className:"flex items-center justify-center h-full",children:(0,a.jsx)(br,{size:"size-8"})}):(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"sticky top-0 left-0 right-0 h-8 border-b border-border w-full flex items-center justify-between bg-background z-50",children:[(0,a.jsxs)("div",{className:"flex items-center h-full",children:[(0,a.jsx)(tu,{tableName:e}),(0,a.jsx)(nu,{tableName:e})]}),(0,a.jsxs)("div",{className:"flex items-center h-full",children:[(0,a.jsx)(W,{variant:"ghost",size:"icon",className:"border-l border-r-0 border-y-0 border-border rounded-none text-xs h-full aspect-square size-8 text-muted-foreground hover:text-foreground hover:bg-muted/60 transition-colors",onClick:D,disabled:!d?.meta?.hasPreviousPage,children:(0,a.jsx)(Js,{className:"size-3"})}),(0,a.jsx)(W,{variant:"ghost",size:"icon",className:"border-r border-l border-y-0 border-border rounded-none text-xs h-full aspect-square size-8 text-muted-foreground hover:text-foreground hover:bg-muted/60 transition-colors",onClick:v,disabled:!d?.meta?.hasNextPage,children:(0,a.jsx)(qs,{className:"size-3"})})]})]}),(0,a.jsxs)(Qc,{children:[(0,a.jsx)(Zc,{children:x.getHeaderGroups().map(y=>(0,a.jsx)(rr,{className:"hover:bg-transparent text-xs sticky top-0 right-0 left-0 supports-backdrop-filter:backdrop-blur-sm",children:y.headers.map(b=>(0,a.jsx)(eu,{className:"border-r border-border",children:b.isPlaceholder?null:nn(b.column.columnDef.header,b.getContext())},b.id))},y.id))}),(0,a.jsx)(Xc,{children:x.getRowModel().rows?.length?x.getRowModel().rows.map(y=>(0,a.jsx)(rr,{className:"text-xs cursor-pointer",onClick:()=>h(y),children:y.getVisibleCells().map(b=>(0,a.jsx)(Zr,{className:"border-r border-border",children:nn(b.column.columnDef.cell,b.getContext())},b.id))},y.id)):(0,a.jsx)(rr,{children:(0,a.jsx)(Zr,{className:"h-24 text-center",colSpan:C.length,children:"No results."})})})]})]})},rs=()=>{const{closeOverlay:e,isOverlayOpen:t}=he(),{tableName:n,referencedColumn:r,columnName:s,clearRecordReference:o}=ts(),[,l]=J(L.REFERENCED_TABLE_STATE_KEYS.ACTIVE_TABLE),[,c]=J(L.REFERENCED_TABLE_STATE_KEYS.CURSOR),[,i]=J(L.REFERENCED_TABLE_STATE_KEYS.DIRECTION),[,f]=J(L.REFERENCED_TABLE_STATE_KEYS.LIMIT.toString()),[,d]=J(L.REFERENCED_TABLE_STATE_KEYS.SORT.toString()),[,m]=J(L.REFERENCED_TABLE_STATE_KEYS.ORDER.toString()),[,p]=J(L.REFERENCED_TABLE_STATE_KEYS.FILTERS,Ft(w=>w).withDefault([]).withOptions({history:"push"}));if(!n||!r)return null;const g=()=>{e("records.record-reference"),o(),l(null),c(null),i(null),f(null),d(null),m(null),p(null)};return(0,a.jsx)(bt,{title:`View records in the table ${n}`,size:"max-w-lg!",contentClassName:"p-0",open:t("records.record-reference"),onOpenChange:w=>{w||g()},children:(0,a.jsx)(ru,{tableName:n,referencedColumn:r,columnName:s??""})})},au=({tableName:e})=>{const{closeOverlay:t,isOverlayOpen:n}=he(),r=ce(),{tableCols:s,isLoadingTableCols:o}=Ce({tableName:e,schemaName:r}),{createRecord:l,isCreatingRecord:c}=Gc({tableName:e,schemaName:r}),i=ba(),f=async p=>{l(p,{onSuccess:()=>{i.reset(),t("records.add-record")},onError:g=>{console.error("Failed to create record:",g)}})},d=()=>{i.reset(),t("records.add-record")},m=()=>s&&s.length>0?(0,a.jsxs)(va,{...i,children:[(0,a.jsxs)("form",{onSubmit:i.handleSubmit(f),className:"flex flex-col h-full",children:[(0,a.jsx)("div",{className:"space-y-6",children:s&&s.length>0&&!o?s.map(p=>(0,a.jsx)(ns,{...p},p.columnName)):null}),(0,a.jsxs)("div",{className:"flex justify-end gap-2 py-6",children:[(0,a.jsx)(sn,{asChild:!0,onClick:d,disabled:c,children:(0,a.jsx)(W,{variant:"outline",size:"lg",children:"Close"})}),(0,a.jsx)(W,{type:"submit",size:"lg",disabled:c||!i.formState.isDirty,children:"Save"})]})]}),(0,a.jsx)(rs,{})]}):(0,a.jsx)("div",{className:"flex flex-col h-full",children:(0,a.jsx)("div",{className:"space-y-6",children:(0,a.jsx)(me,{variant:"info",title:"No columns found",message:"Please add at least one column to the table before adding a record."})})});return(0,a.jsx)(bt,{title:`Add a new record to the table: ${e}`,open:n("records.add-record"),onOpenChange:p=>{p||d()},children:m()})},Rr=po,Wn=({className:e,ref:t,...n})=>(0,a.jsx)(xa,{ref:t,className:z("inline-flex h-10 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",e),...n});Wn.displayName=xa.displayName;var pt=({className:e,ref:t,...n})=>(0,a.jsx)(ga,{ref:t,className:z("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",e),...n});pt.displayName=ga.displayName;var gt=({className:e,ref:t,...n})=>(0,a.jsx)(ya,{ref:t,className:z("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",e),...n});gt.displayName=ya.displayName;var xt=e=>{const t=e.trim();if(t.startsWith("[")||t.startsWith("{"))try{const n=JSON.parse(t);if(Array.isArray(n))return n;if(typeof n=="object"&&n!==null)return[n];throw new Error("Invalid JSON format")}catch(n){throw n instanceof SyntaxError?new Error(`Invalid JSON format: ${n.message.replace("JSON.","")}`):n}return su(t)},su=e=>{const t=e.split(`
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/json-editor-BB8Hth6U.js","assets/rolldown-runtime-gZ9xeEJX.js","assets/icons-DqpsVskx.js","assets/radix-ui-O7fUb8xo.js","assets/utils-BAOO2O6e.js","assets/bundle-mjs-BILTDsu3.js","assets/personal-preferences.store-BMBctLhq.js","assets/react-CvQHOIeW.js","assets/middleware-UkjejqwX.js","assets/use-theme-93QM-Vlr.js","assets/editor.api-u7KJNncE.js","assets/preload-helper-BrUSzZH1.js","assets/editor-1FQrmyyI.css","assets/monaco-theme-COQ8oULH.js","assets/monaco-theme-BnSsSzUH.css","assets/_table-DBhcrzbS.js"])))=>i.map(i=>d[i]);
2
+ import{n as xr,r as zs}from"./rolldown-runtime-gZ9xeEJX.js";import{C as ot,E as Je,a as ia,i as la,l as Ys,m as Bs,n as ca,o as Ls,p as $s,r as nn,v as Ks,w as yr}from"./tanstack-D3kotKHJ.js";import{B as ua,Ct as Vs,E as Us,It as Hs,Mt as qs,Nt as Js,Pt as Gs,St as an,T as da,Tt as Qs,U as Zs,Y as fa,b as Xs,bt as ma,ct as eo,et as to,jt as no,kt as ro,n as Mn,pt as Jn,q as ao,s as ha,vt as so,w as oo,wt as io,xt as pa,y as lo,yt as vr}from"./icons-DqpsVskx.js";import{Ct as co,Et as uo,St as fo,Tt as mo,_ as ga,bt as ho,g as po,h as xa,jt as go,m as ya,wt as xo,xt as yo,yt as vo}from"./radix-ui-O7fUb8xo.js";import{n as Ae}from"./dist-hEU4yATV.js";import{t as z}from"./utils-BAOO2O6e.js";import{t as br}from"./spinner-es6eKuYv.js";import{n as J,t as Ft}from"./dist-BklmFc40.js";import{A as va,G as bo,J as wo,K as Co,M as ba,N as wr,W as So,Y as jo,_ as Nn,b as Do,c as Cr,d as ko,h as Sr,k as No,l as To,n as wa,q as Eo,s as jr,u as $e,v as ce,w as Ce,x as Oo,y as Ca}from"./schema-CA8HRQn4.js";import{n as ve,r as Mo,t as we}from"./label-RC_Cv8kc.js";import{a as he,i as nt,n as rt,o as W,r as Ut,s as Ir,t as at}from"./tooltip-iEHDw5ij.js";import{f as He,r as sn,t as bt}from"./sheet-sidebar-CQuumF-m.js";import{t as on}from"./react-CvQHOIeW.js";import{D as Ro,E as _o,O as Ao,V as Po,_ as Fo,d as Wo,k as Sa,l as Io,m as zo,n as Yo,t as L,y as Bo}from"./constants-CWI44Fpb.js";import{i as ln,t as pe}from"./database.store-C7UybiY8.js";import{t as ja}from"./preload-helper-BrUSzZH1.js";import{a as cn,c as Tt,d as Et,f as Ot,i as it,l as Mt,m as me,n as Yt,o as Rt,p as _t,r as Lo,s as At,t as $o,u as Pt}from"./badge-CICZ5YYl.js";import{a as Pe,i as Fe,n as We,r as Q,t as Ie}from"./select-Dlg0EO2A.js";import{t as Rn}from"./use-database-engine-DxYqFY4d.js";import{s as ue}from"./keys-CFLK1AV2.js";import{t as qe}from"./format-cell-value-CutsoTsV.js";import{n as Ko,r as Vo,t as zr}from"./separator-5JMh-AIn.js";import{t as Uo}from"./middleware-UkjejqwX.js";import{r as Ho}from"./personal-preferences.store-BMBctLhq.js";import{n as qo,t as Jo}from"./vscode-DcjbmH2j.js";import{t as Go}from"./use-theme-93QM-Vlr.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{};e.SENTRY_RELEASE={id:"db-studio@1.23.0"};var t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="6f8f7919-78e0-4eb9-8738-db445396b302",e._sentryDebugIdIdentifier="sentry-dbid-6f8f7919-78e0-4eb9-8738-db445396b302")}catch{}})();var u=zs(Hs(),1),a=go();function Ne({className:e,...t}){return(0,a.jsx)("kbd",{"data-slot":"kbd",className:z("bg-muted text-muted-foreground border [[data-slot=tooltip-content]_&]:bg-background/20 [[data-slot=tooltip-content]_&]:text-background dark:[[data-slot=tooltip-content]_&]:bg-background/10 h-5 w-fit min-w-5 gap-1 rounded-xs px-1 font-sans text-[0.625rem] font-medium [&_svg:not([class*='size-'])]:size-3 pointer-events-none inline-flex items-center justify-center select-none",e),...t})}var Ff=()=>{const e=Je(),{selectedDatabase:t}=pe(),{mutateAsync:n,isPending:r,reset:s}=ot({mutationFn:async({tableName:c,schemaName:i,cascade:f=!1})=>(await Io({tableName:c,schemaName:i,db:t,cascade:f})).data.data,onSuccess:async()=>{await e.invalidateQueries({queryKey:ue.lists()})}});return{deleteTable:async(c,i)=>{const f=n({tableName:c,schemaName:i,cascade:!1});return Ae.promise(f,{loading:"Deleting table...",success:d=>d.fkViolation?`Table "${c}" has related records`:`Deleted table "${c}" with ${d.deletedCount} rows`,error:d=>d.message||"Failed to delete table"}),f},forceDeleteTable:async(c,i)=>{const f=n({tableName:c,schemaName:i,cascade:!0});return Ae.promise(f,{loading:"Deleting table...",success:d=>`Force deleted table "${c}" with ${d.deletedCount} rows`,error:d=>d.message||"Failed to delete table"}),f},isDeletingTable:r,resetDeleteResult:s}},Wf=()=>{const{selectedDatabase:e,dbType:t}=pe(),{mutateAsync:n,isPending:r}=ot({mutationFn:async({tableName:o,schemaName:l,format:c})=>{const i=await Wo({tableName:o,schemaName:l,format:c,db:e}),f=i.headers["content-disposition"],d=(typeof f=="string"?f:void 0)?.match(/filename="(.+)"/)?.[1]||`${o}_export.${c}`,m=i.headers["content-type"],p=typeof m=="string"?m:"application/octet-stream",g=new Blob([i.data],{type:p}),w=window.URL.createObjectURL(g),S=document.createElement("a");S.href=w,S.download=d,document.body.appendChild(S),S.click(),document.body.removeChild(S),window.URL.revokeObjectURL(w),t&&ln.capture("record_exported",{db_type:t,format:c})}});return{exportFile:async o=>Ae.promise(n(o),{loading:"Exporting file...",success:"File exported successfully",error:l=>l.message||"Failed to export file"}),isExportingFile:r}},If=({tableName:e,schemaName:t})=>{const n=Je(),{selectedDatabase:r}=pe(),{mutateAsync:s,isPending:o}=ot({mutationFn:async c=>(await Bo({tableName:e,data:{...c,schemaName:t},db:r})).data.data,onSuccess:async()=>{await n.invalidateQueries({queryKey:ue.lists()}),await n.removeQueries({queryKey:[L.CACHE_KEYS.TABLE_DATA,e]}),await n.removeQueries({queryKey:[L.CACHE_KEYS.TABLE_COLUMNS,e]})}});return{renameTable:async(c,i)=>{const f=s(c,i);return Ae.promise(f,{loading:"Renaming table...",success:d=>d||"Table renamed successfully",error:d=>typeof d.details=="string"&&d.details||d.message||"Failed to rename table"}),f},isRenamingTable:o}},zf=()=>{const{selectedDatabase:e}=pe(),{data:t,isLoading:n,error:r}=yr({queryKey:ue.list(e),queryFn:()=>Fo(e),select:s=>s.data.data,enabled:!!e});return{tablesList:t,isLoadingTablesList:n,errorTablesList:r}},Qo=365.2425,Zo=Math.pow(10,8)*24*60*60*1e3,Yf=-Zo,Da=6048e5,Xo=864e5,ei=3600,ka=ei*24,Bf=ka*7,ti=ka*Qo,ni=ti/12,Lf=ni*3,Yr=Symbol.for("constructDateFrom");function ie(e,t){return typeof e=="function"?e(t):e&&typeof e=="object"&&Yr in e?e[Yr](t):e instanceof Date?new e.constructor(t):new Date(t)}function te(e,t){return ie(t||e,e)}function Tn(e,t,n){const r=te(e,n?.in);return isNaN(t)?ie(n?.in||e,NaN):(t&&r.setDate(r.getDate()+t),r)}function Na(e,t,n){const r=te(e,n?.in);if(isNaN(t))return ie(n?.in||e,NaN);if(!t)return r;const s=r.getDate(),o=ie(n?.in||e,r.getTime());return o.setMonth(r.getMonth()+t+1,0),s>=o.getDate()?o:(r.setFullYear(o.getFullYear(),o.getMonth(),s),r)}var ri={};function un(){return ri}function Wt(e,t){const n=un(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,s=te(e,t?.in),o=s.getDay(),l=(o<r?7:0)+o-r;return s.setDate(s.getDate()-l),s.setHours(0,0,0,0),s}function rn(e,t){return Wt(e,{...t,weekStartsOn:1})}function Ta(e,t){const n=te(e,t?.in),r=n.getFullYear(),s=ie(n,0);s.setFullYear(r+1,0,4),s.setHours(0,0,0,0);const o=rn(s),l=ie(n,0);l.setFullYear(r,0,4),l.setHours(0,0,0,0);const c=rn(l);return n.getTime()>=o.getTime()?r+1:n.getTime()>=c.getTime()?r:r-1}function Br(e){const t=te(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),+e-+n}function Bt(e,...t){const n=ie.bind(null,e||t.find(r=>typeof r=="object"));return t.map(n)}function It(e,t){const n=te(e,t?.in);return n.setHours(0,0,0,0),n}function Dr(e,t,n){const[r,s]=Bt(n?.in,e,t),o=It(r),l=It(s),c=+o-Br(o),i=+l-Br(l);return Math.round((c-i)/Xo)}function ai(e,t){const n=Ta(e,t),r=ie(t?.in||e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),rn(r)}function si(e,t,n){return Tn(e,t*7,n)}function oi(e,t,n){return Na(e,t*12,n)}function ii(e,t){let n,r=t?.in;return e.forEach(s=>{!r&&typeof s=="object"&&(r=ie.bind(null,s));const o=te(s,r);(!n||n<o||isNaN(+o))&&(n=o)}),ie(r,n||NaN)}function li(e,t){let n,r=t?.in;return e.forEach(s=>{!r&&typeof s=="object"&&(r=ie.bind(null,s));const o=te(s,r);(!n||n>o||isNaN(+o))&&(n=o)}),ie(r,n||NaN)}function ci(e,t,n){const[r,s]=Bt(n?.in,e,t);return+It(r)==+It(s)}function Ea(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function ui(e){return!(!Ea(e)&&typeof e!="number"||isNaN(+te(e)))}function Oa(e,t,n){const[r,s]=Bt(n?.in,e,t),o=r.getFullYear()-s.getFullYear(),l=r.getMonth()-s.getMonth();return o*12+l}function di(e,t){const n=te(e,t?.in),r=n.getMonth();return n.setFullYear(n.getFullYear(),r+1,0),n.setHours(23,59,59,999),n}function Ma(e,t){const[n,r]=Bt(e,t.start,t.end);return{start:n,end:r}}function fi(e,t){const{start:n,end:r}=Ma(t?.in,e);let s=+n>+r;const o=s?+n:+r,l=s?r:n;l.setHours(0,0,0,0),l.setDate(1);let c=t?.step??1;if(!c)return[];c<0&&(c=-c,s=!s);const i=[];for(;+l<=o;)i.push(ie(n,l)),l.setMonth(l.getMonth()+c);return s?i.reverse():i}function mi(e,t){const n=te(e,t?.in);return n.setDate(1),n.setHours(0,0,0,0),n}function hi(e,t){const n=te(e,t?.in),r=n.getFullYear();return n.setFullYear(r+1,0,0),n.setHours(23,59,59,999),n}function Ra(e,t){const n=te(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}function pi(e,t){const{start:n,end:r}=Ma(t?.in,e);let s=+n>+r;const o=s?+n:+r,l=s?r:n;l.setHours(0,0,0,0),l.setMonth(0,1);let c=t?.step??1;if(!c)return[];c<0&&(c=-c,s=!s);const i=[];for(;+l<=o;)i.push(ie(n,l)),l.setFullYear(l.getFullYear()+c);return s?i.reverse():i}function _a(e,t){const n=un(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,s=te(e,t?.in),o=s.getDay(),l=(o<r?-7:0)+6-(o-r);return s.setDate(s.getDate()+l),s.setHours(23,59,59,999),s}function gi(e,t){return _a(e,{...t,weekStartsOn:1})}var xi={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},yi=(e,t,n)=>{let r;const s=xi[e];return typeof s=="string"?r=s:t===1?r=s.one:r=s.other.replace("{{count}}",t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function Gn(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}var vi={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},bi={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},wi={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Ci={date:Gn({formats:vi,defaultWidth:"full"}),time:Gn({formats:bi,defaultWidth:"full"}),dateTime:Gn({formats:wi,defaultWidth:"full"})},Si={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},ji=(e,t,n,r)=>Si[e];function Ht(e){return(t,n)=>{const r=n?.context?String(n.context):"standalone";let s;if(r==="formatting"&&e.formattingValues){const l=e.defaultFormattingWidth||e.defaultWidth,c=n?.width?String(n.width):l;s=e.formattingValues[c]||e.formattingValues[l]}else{const l=e.defaultWidth,c=n?.width?String(n.width):e.defaultWidth;s=e.values[c]||e.values[l]}const o=e.argumentCallback?e.argumentCallback(t):t;return s[o]}}var Di={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},ki={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Ni={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},Ti={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},Ei={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},Oi={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},Mi=(e,t)=>{const n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},Ri={ordinalNumber:Mi,era:Ht({values:Di,defaultWidth:"wide"}),quarter:Ht({values:ki,defaultWidth:"wide",argumentCallback:e=>e-1}),month:Ht({values:Ni,defaultWidth:"wide"}),day:Ht({values:Ti,defaultWidth:"wide"}),dayPeriod:Ht({values:Ei,defaultWidth:"wide",formattingValues:Oi,defaultFormattingWidth:"wide"})};function qt(e){return(t,n={})=>{const r=n.width,s=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],o=t.match(s);if(!o)return null;const l=o[0],c=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],i=Array.isArray(c)?Ai(c,m=>m.test(l)):_i(c,m=>m.test(l));let f;f=e.valueCallback?e.valueCallback(i):i,f=n.valueCallback?n.valueCallback(f):f;const d=t.slice(l.length);return{value:f,rest:d}}}function _i(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function Ai(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function Pi(e){return(t,n={})=>{const r=t.match(e.matchPattern);if(!r)return null;const s=r[0],o=t.match(e.parsePattern);if(!o)return null;let l=e.valueCallback?e.valueCallback(o[0]):o[0];l=n.valueCallback?n.valueCallback(l):l;const c=t.slice(s.length);return{value:l,rest:c}}}var Fi=/^(\d+)(th|st|nd|rd)?/i,Wi=/\d+/i,Ii={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},zi={any:[/^b/i,/^(a|c)/i]},Yi={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},Bi={any:[/1/i,/2/i,/3/i,/4/i]},Li={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},$i={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},Ki={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},Vi={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},Ui={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},Hi={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},qi={ordinalNumber:Pi({matchPattern:Fi,parsePattern:Wi,valueCallback:e=>parseInt(e,10)}),era:qt({matchPatterns:Ii,defaultMatchWidth:"wide",parsePatterns:zi,defaultParseWidth:"any"}),quarter:qt({matchPatterns:Yi,defaultMatchWidth:"wide",parsePatterns:Bi,defaultParseWidth:"any",valueCallback:e=>e+1}),month:qt({matchPatterns:Li,defaultMatchWidth:"wide",parsePatterns:$i,defaultParseWidth:"any"}),day:qt({matchPatterns:Ki,defaultMatchWidth:"wide",parsePatterns:Vi,defaultParseWidth:"any"}),dayPeriod:qt({matchPatterns:Ui,defaultMatchWidth:"any",parsePatterns:Hi,defaultParseWidth:"any"})},Nt={code:"en-US",formatDistance:yi,formatLong:Ci,formatRelative:ji,localize:Ri,match:qi,options:{weekStartsOn:0,firstWeekContainsDate:1}};function Ji(e,t){const n=te(e,t?.in);return Dr(n,Ra(n))+1}function kr(e,t){const n=te(e,t?.in),r=+rn(n)-+ai(n);return Math.round(r/Da)+1}function Aa(e,t){const n=te(e,t?.in),r=n.getFullYear(),s=un(),o=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??s.firstWeekContainsDate??s.locale?.options?.firstWeekContainsDate??1,l=ie(t?.in||e,0);l.setFullYear(r+1,0,o),l.setHours(0,0,0,0);const c=Wt(l,t),i=ie(t?.in||e,0);i.setFullYear(r,0,o),i.setHours(0,0,0,0);const f=Wt(i,t);return+n>=+c?r+1:+n>=+f?r:r-1}function Gi(e,t){const n=un(),r=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,s=Aa(e,t),o=ie(t?.in||e,0);return o.setFullYear(s,0,r),o.setHours(0,0,0,0),Wt(o,t)}function Nr(e,t){const n=te(e,t?.in),r=+Wt(n,t)-+Gi(n,t);return Math.round(r/Da)+1}function ee(e,t){return(e<0?"-":"")+Math.abs(e).toString().padStart(t,"0")}var tt={y(e,t){const n=e.getFullYear(),r=n>0?n:1-n;return ee(t==="yy"?r%100:r,t.length)},M(e,t){const n=e.getMonth();return t==="M"?String(n+1):ee(n+1,2)},d(e,t){return ee(e.getDate(),t.length)},a(e,t){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];default:return n==="am"?"a.m.":"p.m."}},h(e,t){return ee(e.getHours()%12||12,t.length)},H(e,t){return ee(e.getHours(),t.length)},m(e,t){return ee(e.getMinutes(),t.length)},s(e,t){return ee(e.getSeconds(),t.length)},S(e,t){const n=t.length,r=e.getMilliseconds(),s=Math.trunc(r*Math.pow(10,n-3));return ee(s,t.length)}},Dt={am:"am",pm:"pm",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},Lr={G:function(e,t,n){const r=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if(t==="yo"){const r=e.getFullYear(),s=r>0?r:1-r;return n.ordinalNumber(s,{unit:"year"})}return tt.y(e,t)},Y:function(e,t,n,r){const s=Aa(e,r),o=s>0?s:1-s;if(t==="YY"){const l=o%100;return ee(l,2)}return t==="Yo"?n.ordinalNumber(o,{unit:"year"}):ee(o,t.length)},R:function(e,t){const n=Ta(e);return ee(n,t.length)},u:function(e,t){const n=e.getFullYear();return ee(n,t.length)},Q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return ee(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return ee(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){const r=e.getMonth();switch(t){case"M":case"MM":return tt.M(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){const r=e.getMonth();switch(t){case"L":return String(r+1);case"LL":return ee(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){const s=Nr(e,r);return t==="wo"?n.ordinalNumber(s,{unit:"week"}):ee(s,t.length)},I:function(e,t,n){const r=kr(e);return t==="Io"?n.ordinalNumber(r,{unit:"week"}):ee(r,t.length)},d:function(e,t,n){return t==="do"?n.ordinalNumber(e.getDate(),{unit:"date"}):tt.d(e,t)},D:function(e,t,n){const r=Ji(e);return t==="Do"?n.ordinalNumber(r,{unit:"dayOfYear"}):ee(r,t.length)},E:function(e,t,n){const r=e.getDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){const s=e.getDay(),o=(s-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(o);case"ee":return ee(o,2);case"eo":return n.ordinalNumber(o,{unit:"day"});case"eee":return n.day(s,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(s,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(s,{width:"short",context:"formatting"});default:return n.day(s,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){const s=e.getDay(),o=(s-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(o);case"cc":return ee(o,t.length);case"co":return n.ordinalNumber(o,{unit:"day"});case"ccc":return n.day(s,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(s,{width:"narrow",context:"standalone"});case"cccccc":return n.day(s,{width:"short",context:"standalone"});default:return n.day(s,{width:"wide",context:"standalone"})}},i:function(e,t,n){const r=e.getDay(),s=r===0?7:r;switch(t){case"i":return String(s);case"ii":return ee(s,t.length);case"io":return n.ordinalNumber(s,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){const r=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},b:function(e,t,n){const r=e.getHours();let s;switch(r===12?s=Dt.noon:r===0?s=Dt.midnight:s=r/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(s,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(s,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(s,{width:"narrow",context:"formatting"});default:return n.dayPeriod(s,{width:"wide",context:"formatting"})}},B:function(e,t,n){const r=e.getHours();let s;switch(r>=17?s=Dt.evening:r>=12?s=Dt.afternoon:r>=4?s=Dt.morning:s=Dt.night,t){case"B":case"BB":case"BBB":return n.dayPeriod(s,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(s,{width:"narrow",context:"formatting"});default:return n.dayPeriod(s,{width:"wide",context:"formatting"})}},h:function(e,t,n){if(t==="ho"){let r=e.getHours()%12;return r===0&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return tt.h(e,t)},H:function(e,t,n){return t==="Ho"?n.ordinalNumber(e.getHours(),{unit:"hour"}):tt.H(e,t)},K:function(e,t,n){const r=e.getHours()%12;return t==="Ko"?n.ordinalNumber(r,{unit:"hour"}):ee(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t==="ko"?n.ordinalNumber(r,{unit:"hour"}):ee(r,t.length)},m:function(e,t,n){return t==="mo"?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):tt.m(e,t)},s:function(e,t,n){return t==="so"?n.ordinalNumber(e.getSeconds(),{unit:"second"}):tt.s(e,t)},S:function(e,t){return tt.S(e,t)},X:function(e,t,n){const r=e.getTimezoneOffset();if(r===0)return"Z";switch(t){case"X":return Kr(r);case"XXXX":case"XX":return ft(r);default:return ft(r,":")}},x:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"x":return Kr(r);case"xxxx":case"xx":return ft(r);default:return ft(r,":")}},O:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+$r(r,":");default:return"GMT"+ft(r,":")}},z:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+$r(r,":");default:return"GMT"+ft(r,":")}},t:function(e,t,n){const r=Math.trunc(+e/1e3);return ee(r,t.length)},T:function(e,t,n){return ee(+e,t.length)}};function $r(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),s=Math.trunc(r/60),o=r%60;return o===0?n+String(s):n+String(s)+t+ee(o,2)}function Kr(e,t){return e%60===0?(e>0?"-":"+")+ee(Math.abs(e)/60,2):ft(e,t)}function ft(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),s=ee(Math.trunc(r/60),2),o=ee(r%60,2);return n+s+t+o}var Vr=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});default:return t.date({width:"full"})}},Pa=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});default:return t.time({width:"full"})}},Qi=(e,t)=>{const n=e.match(/(P+)(p+)?/)||[],r=n[1],s=n[2];if(!s)return Vr(e,t);let o;switch(r){case"P":o=t.dateTime({width:"short"});break;case"PP":o=t.dateTime({width:"medium"});break;case"PPP":o=t.dateTime({width:"long"});break;default:o=t.dateTime({width:"full"})}return o.replace("{{date}}",Vr(r,t)).replace("{{time}}",Pa(s,t))},Zi={p:Pa,P:Qi},Xi=/^D+$/,el=/^Y+$/,tl=["D","DD","YY","YYYY"];function nl(e){return Xi.test(e)}function rl(e){return el.test(e)}function al(e,t,n){const r=sl(e,t,n);if(console.warn(r),tl.includes(e))throw new RangeError(r)}function sl(e,t,n){const r=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}var ol=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,il=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,ll=/^'([^]*?)'?$/,cl=/''/g,ul=/[a-zA-Z]/;function _e(e,t,n){const r=un(),s=n?.locale??r.locale??Nt,o=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,l=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,c=te(e,n?.in);if(!ui(c))throw new RangeError("Invalid time value");let i=t.match(il).map(d=>{const m=d[0];if(m==="p"||m==="P"){const p=Zi[m];return p(d,s.formatLong)}return d}).join("").match(ol).map(d=>{if(d==="''")return{isToken:!1,value:"'"};const m=d[0];if(m==="'")return{isToken:!1,value:dl(d)};if(Lr[m])return{isToken:!0,value:d};if(m.match(ul))throw new RangeError("Format string contains an unescaped latin alphabet character `"+m+"`");return{isToken:!1,value:d}});s.localize.preprocessor&&(i=s.localize.preprocessor(c,i));const f={firstWeekContainsDate:o,weekStartsOn:l,locale:s};return i.map(d=>{if(!d.isToken)return d.value;const m=d.value;(!n?.useAdditionalWeekYearTokens&&rl(m)||!n?.useAdditionalDayOfYearTokens&&nl(m))&&al(m,t,String(e));const p=Lr[m[0]];return p(c,m,s.localize,f)}).join("")}function dl(e){const t=e.match(ll);return t?t[1].replace(cl,"'"):e}function fl(e,t){const n=te(e,t?.in),r=n.getFullYear(),s=n.getMonth(),o=ie(n,0);return o.setFullYear(r,s+1,0),o.setHours(0,0,0,0),o.getDate()}function ml(e,t){return te(e,t?.in).getMonth()}function hl(e,t){return te(e,t?.in).getFullYear()}function pl(e,t){return+te(e)>+te(t)}function gl(e,t){return+te(e)<+te(t)}function xl(e,t,n){const[r,s]=Bt(n?.in,e,t);return r.getFullYear()===s.getFullYear()&&r.getMonth()===s.getMonth()}function yl(e,t,n){const[r,s]=Bt(n?.in,e,t);return r.getFullYear()===s.getFullYear()}function vl(e,t,n){const r=te(e,n?.in),s=r.getFullYear(),o=r.getDate(),l=ie(n?.in||e,0);l.setFullYear(s,t,15),l.setHours(0,0,0,0);const c=fl(l);return r.setMonth(t,Math.min(o,c)),r}function bl(e,t,n){const r=te(e,n?.in);return isNaN(+r)?ie(n?.in||e,NaN):(r.setFullYear(t),r)}function wl(e,t,n="long"){return new Intl.DateTimeFormat("en-US",{hour:"numeric",timeZone:e,timeZoneName:n}).format(t).split(/\s/g).slice(2).join(" ")}var Cl={},Qt={};function ht(e,t){try{const n=(Cl[e]||=new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"longOffset"}).format)(t).split("GMT")[1];return n in Qt?Qt[n]:Ur(n,n.split(":"))}catch{if(e in Qt)return Qt[e];const n=e?.match(Sl);return n?Ur(e,n.slice(1)):NaN}}var Sl=/([+-]\d\d):?(\d\d)?/;function Ur(e,t){const n=+(t[0]||0),r=+(t[1]||0),s=+(t[2]||0)/60;return Qt[e]=n*60+r>0?n*60+r+s:n*60-r-s}var Zt=class Xt extends Date{constructor(...t){super(),t.length>1&&typeof t[t.length-1]=="string"&&(this.timeZone=t.pop()),this.internal=new Date,isNaN(ht(this.timeZone,this))?this.setTime(NaN):t.length?typeof t[0]=="number"&&(t.length===1||t.length===2&&typeof t[1]!="number")?this.setTime(t[0]):typeof t[0]=="string"?this.setTime(+new Date(t[0])):t[0]instanceof Date?this.setTime(+t[0]):(this.setTime(+new Date(...t)),Fa(this,NaN),dr(this)):this.setTime(Date.now())}static tz(t,...n){return n.length?new Xt(...n,t):new Xt(Date.now(),t)}withTimeZone(t){return new Xt(+this,t)}getTimezoneOffset(){const t=-ht(this.timeZone,this);return t>0?Math.floor(t):Math.ceil(t)}setTime(t){return Date.prototype.setTime.apply(this,arguments),dr(this),+this}[Symbol.for("constructDateFrom")](t){return new Xt(+new Date(t),this.timeZone)}},Hr=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!Hr.test(e))return;const t=e.replace(Hr,"$1UTC");Zt.prototype[t]&&(e.startsWith("get")?Zt.prototype[e]=function(){return this.internal[t]()}:(Zt.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),jl(this),+this},Zt.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),dr(this),+this}))});function dr(e){e.internal.setTime(+e),e.internal.setUTCSeconds(e.internal.getUTCSeconds()-Math.round(-ht(e.timeZone,e)*60))}function jl(e){Date.prototype.setFullYear.call(e,e.internal.getUTCFullYear(),e.internal.getUTCMonth(),e.internal.getUTCDate()),Date.prototype.setHours.call(e,e.internal.getUTCHours(),e.internal.getUTCMinutes(),e.internal.getUTCSeconds(),e.internal.getUTCMilliseconds()),Fa(e)}function Fa(e){const t=ht(e.timeZone,e),n=t>0?Math.floor(t):Math.ceil(t),r=new Date(+e);r.setUTCHours(r.getUTCHours()-1);const s=-new Date(+e).getTimezoneOffset(),o=s- -new Date(+r).getTimezoneOffset(),l=Date.prototype.getHours.apply(e)!==e.internal.getUTCHours();o&&l&&e.internal.setUTCMinutes(e.internal.getUTCMinutes()+o);const c=s-n;c&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+c);const i=new Date(+e);i.setUTCSeconds(0);const f=s>0?i.getSeconds():(i.getSeconds()-60)%60,d=Math.round(-(ht(e.timeZone,e)*60))%60;(d||f)&&(e.internal.setUTCSeconds(e.internal.getUTCSeconds()+d),Date.prototype.setUTCSeconds.call(e,Date.prototype.getUTCSeconds.call(e)+d+f));const m=ht(e.timeZone,e),p=m>0?Math.floor(m):Math.ceil(m),g=-new Date(+e).getTimezoneOffset()-p,w=p!==n,S=g-c;if(w&&S){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+S);const v=ht(e.timeZone,e),D=p-(v>0?Math.floor(v):Math.ceil(v));D&&(e.internal.setUTCMinutes(e.internal.getUTCMinutes()+D),Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+D))}}var be=class en extends Zt{static tz(t,...n){return n.length?new en(...n,t):new en(Date.now(),t)}toISOString(){const[t,n,r]=this.tzComponents(),s=`${t}${n}:${r}`;return this.internal.toISOString().slice(0,-1)+s}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[t,n,r,s]=this.internal.toUTCString().split(" ");return`${t?.slice(0,-1)} ${r} ${n} ${s}`}toTimeString(){const t=this.internal.toUTCString().split(" ")[4],[n,r,s]=this.tzComponents();return`${t} GMT${n}${r}${s} (${wl(this.timeZone,this)})`}toLocaleString(t,n){return Date.prototype.toLocaleString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}toLocaleDateString(t,n){return Date.prototype.toLocaleDateString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}toLocaleTimeString(t,n){return Date.prototype.toLocaleTimeString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}tzComponents(){const t=this.getTimezoneOffset();return[t>0?"-":"+",String(Math.floor(Math.abs(t)/60)).padStart(2,"0"),String(Math.abs(t)%60).padStart(2,"0")]}withTimeZone(t){return new en(+this,t)}[Symbol.for("constructDateFrom")](t){return new en(+new Date(t),this.timeZone)}},Dl=5,kl=4;function Nl(e,t){const n=t.startOfMonth(e),r=n.getDay()>0?n.getDay():7,s=t.addDays(e,-r+1),o=t.addDays(s,34);return t.getMonth(e)===t.getMonth(o)?Dl:kl}function Wa(e,t){const n=t.startOfMonth(e),r=n.getDay();return r===1?n:r===0?t.addDays(n,-6):t.addDays(n,-1*(r-1))}function Tl(e,t){const n=Wa(e,t),r=Nl(e,t);return t.addDays(n,r*7-1)}var Ia={...Nt,labels:{labelDayButton:(e,t,n,r)=>{let s;r&&typeof r.format=="function"?s=r.format.bind(r):s=(l,c)=>_e(l,c,{locale:Nt,...n});let o=s(e,"PPPP");return t.today&&(o=`Today, ${o}`),t.selected&&(o=`${o}, selected`),o},labelMonthDropdown:"Choose the Month",labelNext:"Go to the Next Month",labelPrevious:"Go to the Previous Month",labelWeekNumber:e=>`Week ${e}`,labelYearDropdown:"Choose the Year",labelGrid:(e,t,n)=>{let r;return n&&typeof n.format=="function"?r=n.format.bind(n):r=(s,o)=>_e(s,o,{locale:Nt,...t}),r(e,"LLLL yyyy")},labelGridcell:(e,t,n,r)=>{let s;r&&typeof r.format=="function"?s=r.format.bind(r):s=(l,c)=>_e(l,c,{locale:Nt,...n});let o=s(e,"PPPP");return t?.today&&(o=`Today, ${o}`),o},labelNav:"Navigation bar",labelWeekNumberHeader:"Week Number",labelWeekday:(e,t,n)=>{let r;return n&&typeof n.format=="function"?r=n.format.bind(n):r=(s,o)=>_e(s,o,{locale:Nt,...t}),r(e,"cccc")}}},ze=class fr{constructor(t,n){this.today=()=>this.overrides?.today?this.overrides.today():this.options.timeZone?be.tz(this.options.timeZone):new(this.options.Date??Date),this.newDate=(r,s,o)=>this.overrides?.newDate?this.overrides.newDate(r,s,o):this.options.timeZone?new be(r,s,o,this.options.timeZone):new Date(r,s,o),this.addDays=(r,s)=>this.overrides?.addDays?this.overrides.addDays(r,s):Tn(r,s),this.addMonths=(r,s)=>this.overrides?.addMonths?this.overrides.addMonths(r,s):Na(r,s),this.addWeeks=(r,s)=>this.overrides?.addWeeks?this.overrides.addWeeks(r,s):si(r,s),this.addYears=(r,s)=>this.overrides?.addYears?this.overrides.addYears(r,s):oi(r,s),this.differenceInCalendarDays=(r,s)=>this.overrides?.differenceInCalendarDays?this.overrides.differenceInCalendarDays(r,s):Dr(r,s),this.differenceInCalendarMonths=(r,s)=>this.overrides?.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(r,s):Oa(r,s),this.eachMonthOfInterval=r=>this.overrides?.eachMonthOfInterval?this.overrides.eachMonthOfInterval(r):fi(r),this.eachYearOfInterval=r=>{const s=this.overrides?.eachYearOfInterval?this.overrides.eachYearOfInterval(r):pi(r),o=new Set(s.map(c=>this.getYear(c)));if(o.size===s.length)return s;const l=[];return o.forEach(c=>{l.push(new Date(c,0,1))}),l},this.endOfBroadcastWeek=r=>this.overrides?.endOfBroadcastWeek?this.overrides.endOfBroadcastWeek(r):Tl(r,this),this.endOfISOWeek=r=>this.overrides?.endOfISOWeek?this.overrides.endOfISOWeek(r):gi(r),this.endOfMonth=r=>this.overrides?.endOfMonth?this.overrides.endOfMonth(r):di(r),this.endOfWeek=(r,s)=>this.overrides?.endOfWeek?this.overrides.endOfWeek(r,s):_a(r,this.options),this.endOfYear=r=>this.overrides?.endOfYear?this.overrides.endOfYear(r):hi(r),this.format=(r,s,o)=>{const l=this.overrides?.format?this.overrides.format(r,s,this.options):_e(r,s,this.options);return this.options.numerals&&this.options.numerals!=="latn"?this.replaceDigits(l):l},this.getISOWeek=r=>this.overrides?.getISOWeek?this.overrides.getISOWeek(r):kr(r),this.getMonth=(r,s)=>this.overrides?.getMonth?this.overrides.getMonth(r,this.options):ml(r,this.options),this.getYear=(r,s)=>this.overrides?.getYear?this.overrides.getYear(r,this.options):hl(r,this.options),this.getWeek=(r,s)=>this.overrides?.getWeek?this.overrides.getWeek(r,this.options):Nr(r,this.options),this.isAfter=(r,s)=>this.overrides?.isAfter?this.overrides.isAfter(r,s):pl(r,s),this.isBefore=(r,s)=>this.overrides?.isBefore?this.overrides.isBefore(r,s):gl(r,s),this.isDate=r=>this.overrides?.isDate?this.overrides.isDate(r):Ea(r),this.isSameDay=(r,s)=>this.overrides?.isSameDay?this.overrides.isSameDay(r,s):ci(r,s),this.isSameMonth=(r,s)=>this.overrides?.isSameMonth?this.overrides.isSameMonth(r,s):xl(r,s),this.isSameYear=(r,s)=>this.overrides?.isSameYear?this.overrides.isSameYear(r,s):yl(r,s),this.max=r=>this.overrides?.max?this.overrides.max(r):ii(r),this.min=r=>this.overrides?.min?this.overrides.min(r):li(r),this.setMonth=(r,s)=>this.overrides?.setMonth?this.overrides.setMonth(r,s):vl(r,s),this.setYear=(r,s)=>this.overrides?.setYear?this.overrides.setYear(r,s):bl(r,s),this.startOfBroadcastWeek=(r,s)=>this.overrides?.startOfBroadcastWeek?this.overrides.startOfBroadcastWeek(r,this):Wa(r,this),this.startOfDay=r=>this.overrides?.startOfDay?this.overrides.startOfDay(r):It(r),this.startOfISOWeek=r=>this.overrides?.startOfISOWeek?this.overrides.startOfISOWeek(r):rn(r),this.startOfMonth=r=>this.overrides?.startOfMonth?this.overrides.startOfMonth(r):mi(r),this.startOfWeek=(r,s)=>this.overrides?.startOfWeek?this.overrides.startOfWeek(r,this.options):Wt(r,this.options),this.startOfYear=r=>this.overrides?.startOfYear?this.overrides.startOfYear(r):Ra(r),this.options={locale:Ia,...t},this.overrides=n}getDigitMap(){const{numerals:t="latn"}=this.options,n=new Intl.NumberFormat("en-US",{numberingSystem:t}),r={};for(let s=0;s<10;s++)r[s.toString()]=n.format(s);return r}replaceDigits(t){const n=this.getDigitMap();return t.replace(/\d/g,r=>n[r]||r)}formatNumber(t){return this.replaceDigits(t.toString())}getMonthYearOrder(){const t=this.options.locale?.code;return t&&fr.yearFirstLocales.has(t)?"year-first":"month-first"}formatMonthYear(t){const{locale:n,timeZone:r,numerals:s}=this.options,o=n?.code;if(o&&fr.yearFirstLocales.has(o))try{return new Intl.DateTimeFormat(o,{month:"long",year:"numeric",timeZone:r,numberingSystem:s}).format(t)}catch{}const l=this.getMonthYearOrder()==="year-first"?"y LLLL":"LLLL y";return this.format(t,l)}};ze.yearFirstLocales=new Set(["eu","hu","ja","ja-Hira","ja-JP","ko","ko-KR","lt","lt-LT","lv","lv-LV","mn","mn-MN","zh","zh-CN","zh-HK","zh-TW"]);var Ye=new ze,za=class{constructor(e,t,n=Ye){this.date=e,this.displayMonth=t,this.outside=!!(t&&!n.isSameMonth(e,t)),this.dateLib=n,this.isoDate=n.format(e,"yyyy-MM-dd"),this.displayMonthId=n.format(t,"yyyy-MM"),this.dateMonthId=n.format(e,"yyyy-MM")}isEqualTo(e){return this.dateLib.isSameDay(e.date,this.date)&&this.dateLib.isSameMonth(e.displayMonth,this.displayMonth)}},El=class{constructor(e,t){this.date=e,this.weeks=t}},Ol=class{constructor(e,t){this.days=t,this.weekNumber=e}};function Ml(e){return u.createElement("span",{...e})}function Rl(e){const{size:t=24,orientation:n="left",className:r,style:s}=e;return u.createElement("svg",{className:r,style:s,width:t,height:t,viewBox:"0 0 24 24"},n==="up"&&u.createElement("polygon",{points:"6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28"}),n==="down"&&u.createElement("polygon",{points:"6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72"}),n==="left"&&u.createElement("polygon",{points:"16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20"}),n==="right"&&u.createElement("polygon",{points:"8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20"}))}function _l(e){const{day:t,modifiers:n,...r}=e;return u.createElement("td",{...r})}function Al(e){const{day:t,modifiers:n,...r}=e,s=u.useRef(null);return u.useEffect(()=>{n.focused&&s.current?.focus()},[n.focused]),u.createElement("button",{ref:s,...r})}var P;(function(e){e.Root="root",e.Chevron="chevron",e.Day="day",e.DayButton="day_button",e.CaptionLabel="caption_label",e.Dropdowns="dropdowns",e.Dropdown="dropdown",e.DropdownRoot="dropdown_root",e.Footer="footer",e.MonthGrid="month_grid",e.MonthCaption="month_caption",e.MonthsDropdown="months_dropdown",e.Month="month",e.Months="months",e.Nav="nav",e.NextMonthButton="button_next",e.PreviousMonthButton="button_previous",e.Week="week",e.Weeks="weeks",e.Weekday="weekday",e.Weekdays="weekdays",e.WeekNumber="week_number",e.WeekNumberHeader="week_number_header",e.YearsDropdown="years_dropdown"})(P||(P={}));var ae;(function(e){e.disabled="disabled",e.hidden="hidden",e.outside="outside",e.focused="focused",e.today="today"})(ae||(ae={}));var De;(function(e){e.range_end="range_end",e.range_middle="range_middle",e.range_start="range_start",e.selected="selected"})(De||(De={}));var ye;(function(e){e.weeks_before_enter="weeks_before_enter",e.weeks_before_exit="weeks_before_exit",e.weeks_after_enter="weeks_after_enter",e.weeks_after_exit="weeks_after_exit",e.caption_after_enter="caption_after_enter",e.caption_after_exit="caption_after_exit",e.caption_before_enter="caption_before_enter",e.caption_before_exit="caption_before_exit"})(ye||(ye={}));var Ya=(0,u.createContext)(void 0);function _n(){const e=(0,u.useContext)(Ya);if(e===void 0)throw new Error("useDayPicker() must be used within a custom component.");return e}function Pl(e){const{options:t,className:n,...r}=e,{classNames:s,components:o,styles:l}=_n(),c=[s[P.Dropdown],n].join(" "),i=t?.find(({value:f})=>f===r.value);return u.createElement("span",{"data-disabled":r.disabled,className:s[P.DropdownRoot],style:l?.[P.DropdownRoot]},u.createElement(o.Select,{className:c,...r},t?.map(({value:f,label:d,disabled:m})=>u.createElement(o.Option,{key:f,value:f,disabled:m},d))),u.createElement("span",{className:s[P.CaptionLabel],style:l?.[P.CaptionLabel],"aria-hidden":!0},i?.label,u.createElement(o.Chevron,{orientation:"down",size:18,className:s[P.Chevron],style:l?.[P.Chevron]})))}function Fl(e){return u.createElement("div",{...e})}function Wl(e){return u.createElement("div",{...e})}function Il(e){const{calendarMonth:t,displayIndex:n,...r}=e;return u.createElement("div",{...r},e.children)}function zl(e){const{calendarMonth:t,displayIndex:n,...r}=e;return u.createElement("div",{...r})}function Yl(e){return u.createElement("table",{...e})}function Bl(e){return u.createElement("div",{...e})}function Ll(e){const{components:t}=_n();return u.createElement(t.Dropdown,{...e})}function $l(e){const{onPreviousClick:t,onNextClick:n,previousMonth:r,nextMonth:s,...o}=e,{components:l,classNames:c,styles:i,labels:{labelPrevious:f,labelNext:d}}=_n(),m=(0,u.useCallback)(g=>{s&&n?.(g)},[s,n]),p=(0,u.useCallback)(g=>{r&&t?.(g)},[r,t]);return u.createElement("nav",{...o},u.createElement(l.PreviousMonthButton,{type:"button",className:c[P.PreviousMonthButton],style:i?.[P.PreviousMonthButton],tabIndex:r?void 0:-1,"aria-disabled":r?void 0:!0,"aria-label":f(r),onClick:p},u.createElement(l.Chevron,{disabled:r?void 0:!0,className:c[P.Chevron],style:i?.[P.Chevron],orientation:"left"})),u.createElement(l.NextMonthButton,{type:"button",className:c[P.NextMonthButton],style:i?.[P.NextMonthButton],tabIndex:s?void 0:-1,"aria-disabled":s?void 0:!0,"aria-label":d(s),onClick:m},u.createElement(l.Chevron,{disabled:s?void 0:!0,orientation:"right",className:c[P.Chevron],style:i?.[P.Chevron]})))}function Kl(e){return u.createElement("button",{...e})}function Vl(e){return u.createElement("option",{...e})}function Ul(e){return u.createElement("button",{...e})}function Hl(e){const{rootRef:t,...n}=e;return u.createElement("div",{...n,ref:t})}function ql(e){return u.createElement("select",{...e})}function Jl(e){const{week:t,...n}=e;return u.createElement("tr",{...n})}function Gl(e){return u.createElement("th",{...e})}function Ql(e){return u.createElement("thead",{"aria-hidden":!0},u.createElement("tr",{...e}))}function Zl(e){const{week:t,...n}=e;return u.createElement("th",{...n})}function Xl(e){return u.createElement("th",{...e})}function ec(e){return u.createElement("tbody",{...e})}function tc(e){const{components:t}=_n();return u.createElement(t.Dropdown,{...e})}var nc=xr({CaptionLabel:()=>Ml,Chevron:()=>Rl,Day:()=>_l,DayButton:()=>Al,Dropdown:()=>Pl,DropdownNav:()=>Fl,Footer:()=>Wl,Month:()=>Il,MonthCaption:()=>zl,MonthGrid:()=>Yl,Months:()=>Bl,MonthsDropdown:()=>Ll,Nav:()=>$l,NextMonthButton:()=>Kl,Option:()=>Vl,PreviousMonthButton:()=>Ul,Root:()=>Hl,Select:()=>ql,Week:()=>Jl,WeekNumber:()=>Zl,WeekNumberHeader:()=>Xl,Weekday:()=>Gl,Weekdays:()=>Ql,Weeks:()=>ec,YearsDropdown:()=>tc});function Ke(e,t,n=!1,r=Ye){let{from:s,to:o}=e;const{differenceInCalendarDays:l,isSameDay:c}=r;return s&&o?(l(o,s)<0&&([s,o]=[o,s]),l(t,s)>=(n?1:0)&&l(o,t)>=(n?1:0)):!n&&o?c(o,t):!n&&s?c(s,t):!1}function Tr(e){return!!(e&&typeof e=="object"&&"before"in e&&"after"in e)}function An(e){return!!(e&&typeof e=="object"&&"from"in e)}function Er(e){return!!(e&&typeof e=="object"&&"after"in e)}function Or(e){return!!(e&&typeof e=="object"&&"before"in e)}function Ba(e){return!!(e&&typeof e=="object"&&"dayOfWeek"in e)}function La(e,t){return Array.isArray(e)&&e.every(t.isDate)}function Ve(e,t,n=Ye){const r=Array.isArray(t)?t:[t],{isSameDay:s,differenceInCalendarDays:o,isAfter:l}=n;return r.some(c=>{if(typeof c=="boolean")return c;if(n.isDate(c))return s(e,c);if(La(c,n))return c.some(i=>s(e,i));if(An(c))return Ke(c,e,!1,n);if(Ba(c))return Array.isArray(c.dayOfWeek)?c.dayOfWeek.includes(e.getDay()):c.dayOfWeek===e.getDay();if(Tr(c)){const i=o(c.before,e),f=o(c.after,e),d=i>0,m=f<0;return l(c.before,c.after)?m&&d:d||m}return Er(c)?o(e,c.after)>0:Or(c)?o(c.before,e)>0:typeof c=="function"?c(e):!1})}function rc(e,t,n,r,s){const{disabled:o,hidden:l,modifiers:c,showOutsideDays:i,broadcastCalendar:f,today:d=s.today()}=t,{isSameDay:m,isSameMonth:p,startOfMonth:g,isBefore:w,endOfMonth:S,isAfter:v}=s,D=n&&g(n),C=r&&S(r),x={[ae.focused]:[],[ae.outside]:[],[ae.disabled]:[],[ae.hidden]:[],[ae.today]:[]},h={};for(const y of e){const{date:b,displayMonth:N}=y,j=!!(N&&!p(b,N)),k=!!(D&&w(b,D)),O=!!(C&&v(b,C)),T=!!(o&&Ve(b,o,s)),M=!!(l&&Ve(b,l,s))||k||O||!f&&!i&&j||f&&i===!1&&j,E=m(b,d);j&&x.outside.push(y),T&&x.disabled.push(y),M&&x.hidden.push(y),E&&x.today.push(y),c&&Object.keys(c).forEach(I=>{const R=c?.[I];R&&Ve(b,R,s)&&(h[I]?h[I].push(y):h[I]=[y])})}return y=>{const b={[ae.focused]:!1,[ae.disabled]:!1,[ae.hidden]:!1,[ae.outside]:!1,[ae.today]:!1},N={};for(const j in x)b[j]=x[j].some(k=>k===y);for(const j in h)N[j]=h[j].some(k=>k===y);return{...b,...N}}}function ac(e,t,n={}){return Object.entries(e).filter(([,r])=>r===!0).reduce((r,[s])=>(n[s]?r.push(n[s]):t[ae[s]]?r.push(t[ae[s]]):t[De[s]]&&r.push(t[De[s]]),r),[t[P.Day]])}function sc(e){return{...nc,...e}}function oc(e){const t={"data-mode":e.mode??void 0,"data-required":"required"in e?e.required:void 0,"data-multiple-months":e.numberOfMonths&&e.numberOfMonths>1||void 0,"data-week-numbers":e.showWeekNumber||void 0,"data-broadcast-calendar":e.broadcastCalendar||void 0,"data-nav-layout":e.navLayout||void 0};return Object.entries(e).forEach(([n,r])=>{n.startsWith("data-")&&(t[n]=r)}),t}function Mr(){const e={};for(const t in P)e[P[t]]=`rdp-${P[t]}`;for(const t in ae)e[ae[t]]=`rdp-${ae[t]}`;for(const t in De)e[De[t]]=`rdp-${De[t]}`;for(const t in ye)e[ye[t]]=`rdp-${ye[t]}`;return e}function ic(e,t,n){return(n??new ze(t)).formatMonthYear(e)}function lc(e,t,n){return(n??new ze(t)).format(e,"d")}function cc(e,t=Ye){return t.format(e,"LLLL")}function uc(e,t,n){return(n??new ze(t)).format(e,"cccccc")}function dc(e,t=Ye){return e<10?t.formatNumber(`0${e.toLocaleString()}`):t.formatNumber(`${e.toLocaleString()}`)}function fc(){return""}function mc(e,t=Ye){return t.format(e,"yyyy")}var hc=xr({formatCaption:()=>ic,formatDay:()=>lc,formatMonthDropdown:()=>cc,formatWeekNumber:()=>dc,formatWeekNumberHeader:()=>fc,formatWeekdayName:()=>uc,formatYearDropdown:()=>mc});function pc(e){return{...hc,...e}}function $a(e,t,n,r){let s=(r??new ze(n)).format(e,"PPPP");return t.today&&(s=`Today, ${s}`),t.selected&&(s=`${s}, selected`),s}function Ka(e,t,n){return(n??new ze(t)).formatMonthYear(e)}function Va(e,t,n,r){let s=(r??new ze(n)).format(e,"PPPP");return t?.today&&(s=`Today, ${s}`),s}function Ua(e){return"Choose the Month"}function Ha(){return""}var gc="Go to the Next Month";function qa(e,t){return gc}function Ja(e){return"Go to the Previous Month"}function Ga(e,t,n){return(n??new ze(t)).format(e,"cccc")}function Qa(e,t){return`Week ${e}`}function Za(e){return"Week Number"}function Xa(e){return"Choose the Year"}var xc=xr({labelDayButton:()=>$a,labelGrid:()=>Ka,labelGridcell:()=>Va,labelMonthDropdown:()=>Ua,labelNav:()=>Ha,labelNext:()=>qa,labelPrevious:()=>Ja,labelWeekNumber:()=>Qa,labelWeekNumberHeader:()=>Za,labelWeekday:()=>Ga,labelYearDropdown:()=>Xa}),je=(e,t,n)=>t||(n?typeof n=="function"?n:(...r)=>n:e);function yc(e,t){const n=t.locale?.labels??{};return{...xc,...e??{},labelDayButton:je($a,e?.labelDayButton,n.labelDayButton),labelMonthDropdown:je(Ua,e?.labelMonthDropdown,n.labelMonthDropdown),labelNext:je(qa,e?.labelNext,n.labelNext),labelPrevious:je(Ja,e?.labelPrevious,n.labelPrevious),labelWeekNumber:je(Qa,e?.labelWeekNumber,n.labelWeekNumber),labelYearDropdown:je(Xa,e?.labelYearDropdown,n.labelYearDropdown),labelGrid:je(Ka,e?.labelGrid,n.labelGrid),labelGridcell:je(Va,e?.labelGridcell,n.labelGridcell),labelNav:je(Ha,e?.labelNav,n.labelNav),labelWeekNumberHeader:je(Za,e?.labelWeekNumberHeader,n.labelWeekNumberHeader),labelWeekday:je(Ga,e?.labelWeekday,n.labelWeekday)}}function vc(e,t,n,r,s){const{startOfMonth:o,startOfYear:l,endOfYear:c,eachMonthOfInterval:i,getMonth:f}=s;return i({start:l(e),end:c(e)}).map(d=>{const m=r.formatMonthDropdown(d,s);return{value:f(d),label:m,disabled:t&&d<o(t)||n&&d>o(n)||!1}})}function bc(e,t={},n={}){let r={...t?.[P.Day]};return Object.entries(e).filter(([,s])=>s===!0).forEach(([s])=>{r={...r,...n?.[s]}}),r}function wc(e,t,n,r){const s=r??e.today(),o=n?e.startOfBroadcastWeek(s,e):t?e.startOfISOWeek(s):e.startOfWeek(s),l=[];for(let c=0;c<7;c++){const i=e.addDays(o,c);l.push(i)}return l}function Cc(e,t,n,r,s=!1){if(!e||!t)return;const{startOfYear:o,endOfYear:l,eachYearOfInterval:c,getYear:i}=r,f=c({start:o(e),end:l(t)});return s&&f.reverse(),f.map(d=>{const m=n.formatYearDropdown(d,r);return{value:i(d),label:m,disabled:!1}})}function Sc(e,t={}){const{weekStartsOn:n,locale:r}=t,s=n??r?.options?.weekStartsOn??0,o=c=>{const i=typeof c=="number"||typeof c=="string"?new Date(c):c;return new be(i.getFullYear(),i.getMonth(),i.getDate(),12,0,0,e)},l=c=>{const i=o(c);return new Date(i.getFullYear(),i.getMonth(),i.getDate(),0,0,0,0)};return{today:()=>o(be.tz(e)),newDate:(c,i,f)=>new be(c,i,f,12,0,0,e),startOfDay:c=>o(c),startOfWeek:(c,i)=>{const f=o(c),d=i?.weekStartsOn??s,m=(f.getDay()-d+7)%7;return f.setDate(f.getDate()-m),f},startOfISOWeek:c=>{const i=o(c),f=(i.getDay()-1+7)%7;return i.setDate(i.getDate()-f),i},startOfMonth:c=>{const i=o(c);return i.setDate(1),i},startOfYear:c=>{const i=o(c);return i.setMonth(0,1),i},endOfWeek:(c,i)=>{const f=o(c),d=(((i?.weekStartsOn??s)+6)%7-f.getDay()+7)%7;return f.setDate(f.getDate()+d),f},endOfISOWeek:c=>{const i=o(c),f=(7-i.getDay())%7;return i.setDate(i.getDate()+f),i},endOfMonth:c=>{const i=o(c);return i.setMonth(i.getMonth()+1,0),i},endOfYear:c=>{const i=o(c);return i.setMonth(11,31),i},eachMonthOfInterval:c=>{const i=o(c.start),f=o(c.end),d=[],m=new be(i.getFullYear(),i.getMonth(),1,12,0,0,e),p=f.getFullYear()*12+f.getMonth();for(;m.getFullYear()*12+m.getMonth()<=p;)d.push(new be(m,e)),m.setMonth(m.getMonth()+1,1);return d},addDays:(c,i)=>{const f=o(c);return f.setDate(f.getDate()+i),f},addWeeks:(c,i)=>{const f=o(c);return f.setDate(f.getDate()+i*7),f},addMonths:(c,i)=>{const f=o(c);return f.setMonth(f.getMonth()+i),f},addYears:(c,i)=>{const f=o(c);return f.setFullYear(f.getFullYear()+i),f},eachYearOfInterval:c=>{const i=o(c.start),f=o(c.end),d=[],m=new be(i.getFullYear(),0,1,12,0,0,e);for(;m.getFullYear()<=f.getFullYear();)d.push(new be(m,e)),m.setFullYear(m.getFullYear()+1,0,1);return d},getWeek:(c,i)=>{const f=l(c);return Nr(f,{weekStartsOn:i?.weekStartsOn??s,firstWeekContainsDate:i?.firstWeekContainsDate??r?.options?.firstWeekContainsDate??1})},getISOWeek:c=>{const i=l(c);return kr(i)},differenceInCalendarDays:(c,i)=>{const f=l(c),d=l(i);return Dr(f,d)},differenceInCalendarMonths:(c,i)=>{const f=l(c),d=l(i);return Oa(f,d)}}}var dn=e=>e instanceof HTMLElement?e:null,Qn=e=>[...e.querySelectorAll("[data-animated-month]")??[]],jc=e=>dn(e.querySelector("[data-animated-month]")),Zn=e=>dn(e.querySelector("[data-animated-caption]")),Xn=e=>dn(e.querySelector("[data-animated-weeks]")),Dc=e=>dn(e.querySelector("[data-animated-nav]")),kc=e=>dn(e.querySelector("[data-animated-weekdays]"));function Nc(e,t,{classNames:n,months:r,focused:s,dateLib:o}){const l=(0,u.useRef)(null),c=(0,u.useRef)(r),i=(0,u.useRef)(!1);(0,u.useLayoutEffect)(()=>{const f=c.current;if(c.current=r,!t||!e.current||!(e.current instanceof HTMLElement)||r.length===0||f.length===0||r.length!==f.length)return;const d=o.isSameMonth(r[0].date,f[0].date),m=o.isAfter(r[0].date,f[0].date),p=m?n[ye.caption_after_enter]:n[ye.caption_before_enter],g=m?n[ye.weeks_after_enter]:n[ye.weeks_before_enter],w=l.current,S=e.current.cloneNode(!0);if(S instanceof HTMLElement?(Qn(S).forEach(C=>{if(!(C instanceof HTMLElement))return;const x=jc(C);x&&C.contains(x)&&C.removeChild(x);const h=Zn(C);h&&h.classList.remove(p);const y=Xn(C);y&&y.classList.remove(g)}),l.current=S):l.current=null,i.current||d||s)return;const v=w instanceof HTMLElement?Qn(w):[],D=Qn(e.current);if(D?.every(C=>C instanceof HTMLElement)&&v?.every(C=>C instanceof HTMLElement)){i.current=!0;const C=[];e.current.style.isolation="isolate";const x=Dc(e.current);x&&(x.style.zIndex="1"),D.forEach((h,y)=>{const b=v[y];if(!b)return;h.style.position="relative",h.style.overflow="hidden";const N=Zn(h);N&&N.classList.add(p);const j=Xn(h);j&&j.classList.add(g);const k=()=>{i.current=!1,e.current&&(e.current.style.isolation=""),x&&(x.style.zIndex=""),N&&N.classList.remove(p),j&&j.classList.remove(g),h.style.position="",h.style.overflow="",h.contains(b)&&h.removeChild(b)};C.push(k),b.style.pointerEvents="none",b.style.position="absolute",b.style.overflow="hidden",b.setAttribute("aria-hidden","true");const O=kc(b);O&&(O.style.opacity="0");const T=Zn(b);T&&(T.classList.add(m?n[ye.caption_before_exit]:n[ye.caption_after_exit]),T.addEventListener("animationend",k));const M=Xn(b);M&&M.classList.add(m?n[ye.weeks_before_exit]:n[ye.weeks_after_exit]),h.insertBefore(b,h.firstChild)})}})}function Tc(e,t,n,r){const s=e[0],o=e[e.length-1],{ISOWeek:l,fixedWeeks:c,broadcastCalendar:i}=n??{},{addDays:f,differenceInCalendarDays:d,differenceInCalendarMonths:m,endOfBroadcastWeek:p,endOfISOWeek:g,endOfMonth:w,endOfWeek:S,isAfter:v,startOfBroadcastWeek:D,startOfISOWeek:C,startOfWeek:x}=r,h=i?D(s,r):l?C(s):x(s),y=i?p(o):l?g(w(o)):S(w(o)),b=t&&(i?p(t):l?g(t):S(t)),N=d(b&&v(y,b)?b:y,h),j=m(o,s)+1,k=[];for(let T=0;T<=N;T++){const M=f(h,T);k.push(M)}const O=(i?35:42)*j;if(c&&k.length<O){const T=O-k.length;for(let M=0;M<T;M++){const E=f(k[k.length-1],1);k.push(E)}}return k}function Ec(e){const t=[];return e.reduce((n,r)=>{const s=r.weeks.reduce((o,l)=>o.concat(l.days.slice()),t.slice());return n.concat(s.slice())},t.slice())}function Oc(e,t,n,r){const{numberOfMonths:s=1}=n,o=[];for(let l=0;l<s;l++){const c=r.addMonths(e,l);if(t&&c>t)break;o.push(c)}return o}function qr(e,t,n,r){const{month:s,defaultMonth:o,today:l=r.today(),numberOfMonths:c=1}=e;let i=s||o||l;const{differenceInCalendarMonths:f,addMonths:d,startOfMonth:m}=r;return n&&f(n,i)<c-1&&(i=d(n,-1*(c-1))),t&&f(i,t)<0&&(i=t),m(i)}function Mc(e,t,n,r){const{addDays:s,endOfBroadcastWeek:o,endOfISOWeek:l,endOfMonth:c,endOfWeek:i,getISOWeek:f,getWeek:d,startOfBroadcastWeek:m,startOfISOWeek:p,startOfWeek:g}=r,w=e.reduce((S,v)=>{const D=n.broadcastCalendar?m(v,r):n.ISOWeek?p(v):g(v),C=n.broadcastCalendar?o(v):n.ISOWeek?l(c(v)):i(c(v)),x=t.filter(N=>N>=D&&N<=C),h=n.broadcastCalendar?35:42;if(n.fixedWeeks&&x.length<h){const N=t.filter(j=>{const k=h-x.length;return j>C&&j<=s(C,k)});x.push(...N)}const y=x.reduce((N,j)=>{const k=n.ISOWeek?f(j):d(j),O=N.find(M=>M.weekNumber===k),T=new za(j,v,r);return O?O.days.push(T):N.push(new Ol(k,[T])),N},[]),b=new El(v,y);return S.push(b),S},[]);return n.reverseMonths?w.reverse():w}function Rc(e,t){let{startMonth:n,endMonth:r}=e;const{startOfYear:s,startOfDay:o,startOfMonth:l,endOfMonth:c,addYears:i,endOfYear:f,today:d}=t,m=e.captionLayout==="dropdown"||e.captionLayout==="dropdown-years";return n?n=l(n):!n&&m&&(n=s(i(e.today??d(),-100))),r?r=c(r):!r&&m&&(r=f(e.today??d())),[n&&o(n),r&&o(r)]}function _c(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:s,numberOfMonths:o=1}=n,{startOfMonth:l,addMonths:c,differenceInCalendarMonths:i}=r,f=s?o:1,d=l(e);if(!t)return c(d,f);if(!(i(t,e)<o))return c(d,f)}function Ac(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:s,numberOfMonths:o}=n,{startOfMonth:l,addMonths:c,differenceInCalendarMonths:i}=r,f=s?o??1:1,d=l(e);if(!t)return c(d,-f);if(!(i(d,t)<=0))return c(d,-f)}function Pc(e){return e.reduce((t,n)=>t.concat(n.weeks.slice()),[].slice())}function Pn(e,t){const[n,r]=(0,u.useState)(e);return[t===void 0?n:t,r]}function Fc(e,t){const[n,r]=Rc(e,t),{startOfMonth:s,endOfMonth:o}=t,l=qr(e,n,r,t),[c,i]=Pn(l,e.month?l:void 0);(0,u.useEffect)(()=>{const x=qr(e,n,r,t);i(x)},[e.timeZone]);const{months:f,weeks:d,days:m,previousMonth:p,nextMonth:g}=(0,u.useMemo)(()=>{const x=Oc(c,r,{numberOfMonths:e.numberOfMonths},t),h=Tc(x,e.endMonth?o(e.endMonth):void 0,{ISOWeek:e.ISOWeek,fixedWeeks:e.fixedWeeks,broadcastCalendar:e.broadcastCalendar},t),y=Mc(x,h,{broadcastCalendar:e.broadcastCalendar,fixedWeeks:e.fixedWeeks,ISOWeek:e.ISOWeek,reverseMonths:e.reverseMonths},t);return{months:y,weeks:Pc(y),days:Ec(y),previousMonth:Ac(c,n,e,t),nextMonth:_c(c,r,e,t)}},[t,c.getTime(),r?.getTime(),n?.getTime(),e.disableNavigation,e.broadcastCalendar,e.endMonth?.getTime(),e.fixedWeeks,e.ISOWeek,e.numberOfMonths,e.pagedNavigation,e.reverseMonths]),{disableNavigation:w,onMonthChange:S}=e,v=x=>d.some(h=>h.days.some(y=>y.isEqualTo(x))),D=x=>{if(w)return;let h=s(x);n&&h<s(n)&&(h=s(n)),r&&h>s(r)&&(h=s(r)),i(h),S?.(h)};return{months:f,weeks:d,days:m,navStart:n,navEnd:r,previousMonth:p,nextMonth:g,goToMonth:D,goToDay:x=>{v(x)||D(x.date)}}}var Re;(function(e){e[e.Today=0]="Today",e[e.Selected=1]="Selected",e[e.LastFocused=2]="LastFocused",e[e.FocusedModifier=3]="FocusedModifier"})(Re||(Re={}));function Jr(e){return!e[ae.disabled]&&!e[ae.hidden]&&!e[ae.outside]}function Wc(e,t,n,r){let s,o=-1;for(const l of e){const c=t(l);Jr(c)&&(c[ae.focused]&&o<Re.FocusedModifier?(s=l,o=Re.FocusedModifier):r?.isEqualTo(l)&&o<Re.LastFocused?(s=l,o=Re.LastFocused):n(l.date)&&o<Re.Selected?(s=l,o=Re.Selected):c[ae.today]&&o<Re.Today&&(s=l,o=Re.Today))}return s||(s=e.find(l=>Jr(t(l)))),s}function Ic(e,t,n,r,s,o,l){const{ISOWeek:c,broadcastCalendar:i}=o,{addDays:f,addMonths:d,addWeeks:m,addYears:p,endOfBroadcastWeek:g,endOfISOWeek:w,endOfWeek:S,max:v,min:D,startOfBroadcastWeek:C,startOfISOWeek:x,startOfWeek:h}=l;let y={day:f,week:m,month:d,year:p,startOfWeek:b=>i?C(b,l):c?x(b):h(b),endOfWeek:b=>i?g(b):c?w(b):S(b)}[e](n,t==="after"?1:-1);return t==="before"&&r?y=v([r,y]):t==="after"&&s&&(y=D([s,y])),y}function es(e,t,n,r,s,o,l,c=0){if(c>365)return;const i=Ic(e,t,n.date,r,s,o,l),f=!!(o.disabled&&Ve(i,o.disabled,l)),d=!!(o.hidden&&Ve(i,o.hidden,l)),m=new za(i,i,l);return!f&&!d?m:es(e,t,m,r,s,o,l,c+1)}function zc(e,t,n,r,s){const{autoFocus:o}=e,[l,c]=(0,u.useState)(),i=Wc(t.days,n,r||(()=>!1),l),[f,d]=(0,u.useState)(o?i:void 0);return{isFocusTarget:w=>!!i?.isEqualTo(w),setFocused:d,focused:f,blur:()=>{c(f),d(void 0)},moveFocus:(w,S)=>{if(!f)return;const v=es(w,S,f,t.navStart,t.navEnd,e,s);v&&(e.disableNavigation&&!t.days.some(D=>D.isEqualTo(v))||(t.goToDay(v),d(v)))}}}function Yc(e,t){const{selected:n,required:r,onSelect:s}=e,[o,l]=Pn(n,s?n:void 0),c=s?n:o,{isSameDay:i}=t,f=g=>c?.some(w=>i(w,g))??!1,{min:d,max:m}=e;return{selected:c,select:(g,w,S)=>{let v=[...c??[]];if(f(g)){if(c?.length===d||r&&c?.length===1)return;v=c?.filter(D=>!i(D,g))}else c?.length===m?v=[g]:v=[...v,g];return s||l(v),s?.(v,g,w,S),v},isSelected:f}}function Bc(e,t,n=0,r=0,s=!1,o=Ye){const{from:l,to:c}=t||{},{isSameDay:i,isAfter:f,isBefore:d}=o;let m;if(!l&&!c)m={from:e,to:n>0?void 0:e};else if(l&&!c)i(l,e)?n===0?m={from:l,to:e}:s?m={from:l,to:void 0}:m=void 0:d(e,l)?m={from:e,to:l}:m={from:l,to:e};else if(l&&c)if(i(l,e)&&i(c,e))s?m={from:l,to:c}:m=void 0;else if(i(l,e))m={from:l,to:n>0?void 0:e};else if(i(c,e))m={from:e,to:n>0?void 0:e};else if(d(e,l))m={from:e,to:c};else if(f(e,l))m={from:l,to:e};else if(f(e,c))m={from:l,to:e};else throw new Error("Invalid range");if(m?.from&&m?.to){const p=o.differenceInCalendarDays(m.to,m.from);r>0&&p>r?m={from:e,to:void 0}:n>1&&p<n&&(m={from:e,to:void 0})}return m}function Lc(e,t,n=Ye){const r=Array.isArray(t)?t:[t];let s=e.from;const o=n.differenceInCalendarDays(e.to,e.from),l=Math.min(o,6);for(let c=0;c<=l;c++){if(r.includes(s.getDay()))return!0;s=n.addDays(s,1)}return!1}function Gr(e,t,n=Ye){return Ke(e,t.from,!1,n)||Ke(e,t.to,!1,n)||Ke(t,e.from,!1,n)||Ke(t,e.to,!1,n)}function $c(e,t,n=Ye){const r=Array.isArray(t)?t:[t];if(r.filter(o=>typeof o!="function").some(o=>typeof o=="boolean"?o:n.isDate(o)?Ke(e,o,!1,n):La(o,n)?o.some(l=>Ke(e,l,!1,n)):An(o)?o.from&&o.to?Gr(e,{from:o.from,to:o.to},n):!1:Ba(o)?Lc(e,o.dayOfWeek,n):Tr(o)?n.isAfter(o.before,o.after)?Gr(e,{from:n.addDays(o.after,1),to:n.addDays(o.before,-1)},n):Ve(e.from,o,n)||Ve(e.to,o,n):Er(o)||Or(o)?Ve(e.from,o,n)||Ve(e.to,o,n):!1))return!0;const s=r.filter(o=>typeof o=="function");if(s.length){let o=e.from;const l=n.differenceInCalendarDays(e.to,e.from);for(let c=0;c<=l;c++){if(s.some(i=>i(o)))return!0;o=n.addDays(o,1)}}return!1}function Kc(e,t){const{disabled:n,excludeDisabled:r,resetOnSelect:s,selected:o,required:l,onSelect:c}=e,[i,f]=Pn(o,c?o:void 0),d=c?o:i;return{selected:d,select:(g,w,S)=>{const{min:v,max:D}=e;let C;if(g){const x=d?.from,h=d?.to,y=!!x&&!!h,b=!!x&&!!h&&t.isSameDay(x,h)&&t.isSameDay(g,x);s&&(y||!d?.from)?!l&&b?C=void 0:C={from:g,to:void 0}:C=Bc(g,d,v,D,l,t)}return r&&n&&C?.from&&C.to&&$c({from:C.from,to:C.to},n,t)&&(C.from=g,C.to=void 0),c||f(C),c?.(C,g,w,S),C},isSelected:g=>d&&Ke(d,g,!1,t)}}function Vc(e,t){const{selected:n,required:r,onSelect:s}=e,[o,l]=Pn(n,s?n:void 0),c=s?n:o,{isSameDay:i}=t;return{selected:c,select:(m,p,g)=>{let w=m;return!r&&c&&c&&i(m,c)&&(w=void 0),s||l(w),s?.(w,m,p,g),w},isSelected:m=>c?i(c,m):!1}}function Uc(e,t){const n=Vc(e,t),r=Yc(e,t),s=Kc(e,t);switch(e.mode){case"single":return n;case"multiple":return r;case"range":return s;default:return}}function xe(e,t){return e instanceof be&&e.timeZone===t?e:new be(e,t)}function kt(e,t,n){if(!n)return xe(e,t);const r=xe(e,t),s=new be(r.getFullYear(),r.getMonth(),r.getDate(),12,0,0,t);return new Date(s.getTime())}function Qr(e,t,n){return typeof e=="boolean"||typeof e=="function"?e:e instanceof Date?kt(e,t,n):Array.isArray(e)?e.map(r=>r instanceof Date?kt(r,t,n):r):An(e)?{...e,from:e.from?xe(e.from,t):e.from,to:e.to?xe(e.to,t):e.to}:Tr(e)?{before:kt(e.before,t,n),after:kt(e.after,t,n)}:Er(e)?{after:kt(e.after,t,n)}:Or(e)?{before:kt(e.before,t,n)}:e}function er(e,t,n){return e&&(Array.isArray(e)?e.map(r=>Qr(r,t,n)):Qr(e,t,n))}function Hc(e){let t=e;const n=t.timeZone;if(n&&(t={...e,timeZone:n},t.today&&(t.today=xe(t.today,n)),t.month&&(t.month=xe(t.month,n)),t.defaultMonth&&(t.defaultMonth=xe(t.defaultMonth,n)),t.startMonth&&(t.startMonth=xe(t.startMonth,n)),t.endMonth&&(t.endMonth=xe(t.endMonth,n)),t.mode==="single"&&t.selected?t.selected=xe(t.selected,n):t.mode==="multiple"&&t.selected?t.selected=t.selected?.map(A=>xe(A,n)):t.mode==="range"&&t.selected&&(t.selected={from:t.selected.from?xe(t.selected.from,n):t.selected.from,to:t.selected.to?xe(t.selected.to,n):t.selected.to}),t.disabled!==void 0&&(t.disabled=er(t.disabled,n)),t.hidden!==void 0&&(t.hidden=er(t.hidden,n)),t.modifiers)){const A={};Object.keys(t.modifiers).forEach(F=>{A[F]=er(t.modifiers?.[F],n)}),t.modifiers=A}const{components:r,formatters:s,labels:o,dateLib:l,locale:c,classNames:i}=(0,u.useMemo)(()=>{const A={...Ia,...t.locale},F=t.broadcastCalendar?1:t.weekStartsOn,Y=t.noonSafe&&t.timeZone?Sc(t.timeZone,{weekStartsOn:F,locale:A}):void 0,G=t.dateLib&&Y?{...Y,...t.dateLib}:t.dateLib??Y,K=new ze({locale:A,weekStartsOn:F,firstWeekContainsDate:t.firstWeekContainsDate,useAdditionalWeekYearTokens:t.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:t.useAdditionalDayOfYearTokens,timeZone:t.timeZone,numerals:t.numerals},G);return{dateLib:K,components:sc(t.components),formatters:pc(t.formatters),labels:yc(t.labels,K.options),locale:A,classNames:{...Mr(),...t.classNames}}},[t.locale,t.broadcastCalendar,t.weekStartsOn,t.firstWeekContainsDate,t.useAdditionalWeekYearTokens,t.useAdditionalDayOfYearTokens,t.timeZone,t.numerals,t.dateLib,t.noonSafe,t.components,t.formatters,t.labels,t.classNames]);t.today||(t={...t,today:l.today()});const{captionLayout:f,mode:d,navLayout:m,numberOfMonths:p=1,onDayBlur:g,onDayClick:w,onDayFocus:S,onDayKeyDown:v,onDayMouseEnter:D,onDayMouseLeave:C,onNextClick:x,onPrevClick:h,showWeekNumber:y,styles:b}=t,{formatCaption:N,formatDay:j,formatMonthDropdown:k,formatWeekNumber:O,formatWeekNumberHeader:T,formatWeekdayName:M,formatYearDropdown:E}=s,I=Fc(t,l),{days:R,months:_,navStart:H,navEnd:se,previousMonth:Z,nextMonth:V,goToMonth:de}=I,Ge=rc(R,t,H,se,l),{isSelected:ge,select:Te,selected:Ee}=Uc(t,l)??{},{blur:Qe,focused:Oe,isFocusTarget:$,moveFocus:Be,setFocused:Ze}=zc(t,I,Ge,ge??(()=>!1),l),{labelDayButton:Xe,labelGridcell:mn,labelGrid:hn,labelMonthDropdown:U,labelNav:$t,labelPrevious:pn,labelNext:Kt,labelWeekday:zn,labelWeekNumber:et,labelWeekNumberHeader:gn,labelYearDropdown:Yn}=o,ct=(0,u.useMemo)(()=>wc(l,t.ISOWeek,t.broadcastCalendar,t.today),[l,t.ISOWeek,t.broadcastCalendar,t.today]),xn=d!==void 0||w!==void 0,wt=(0,u.useCallback)(()=>{Z&&(de(Z),h?.(Z))},[Z,de,h]),Vt=(0,u.useCallback)(()=>{V&&(de(V),x?.(V))},[de,V,x]),Bn=(0,u.useCallback)((A,F)=>Y=>{Y.preventDefault(),Y.stopPropagation(),Ze(A),!F.disabled&&(Te?.(A.date,F,Y),w?.(A.date,F,Y))},[Te,w,Ze]),Ct=(0,u.useCallback)((A,F)=>Y=>{Ze(A),S?.(A.date,F,Y)},[S,Ze]),Ln=(0,u.useCallback)((A,F)=>Y=>{Qe(),g?.(A.date,F,Y)},[Qe,g]),yn=(0,u.useCallback)((A,F)=>Y=>{const G={ArrowLeft:[Y.shiftKey?"month":"day",t.dir==="rtl"?"after":"before"],ArrowRight:[Y.shiftKey?"month":"day",t.dir==="rtl"?"before":"after"],ArrowDown:[Y.shiftKey?"year":"week","after"],ArrowUp:[Y.shiftKey?"year":"week","before"],PageUp:[Y.shiftKey?"year":"month","before"],PageDown:[Y.shiftKey?"year":"month","after"],Home:["startOfWeek","before"],End:["endOfWeek","after"]};if(G[Y.key]){Y.preventDefault(),Y.stopPropagation();const[K,ne]=G[Y.key];Be(K,ne)}v?.(A.date,F,Y)},[Be,v,t.dir]),$n=(0,u.useCallback)((A,F)=>Y=>{D?.(A.date,F,Y)},[D]),ut=(0,u.useCallback)((A,F)=>Y=>{C?.(A.date,F,Y)},[C]),vn=(0,u.useCallback)((A,F)=>Y=>{const G=Number(Y.target.value),K=l.setMonth(l.startOfMonth(A),G);de(l.addMonths(K,-F))},[l,de]),Kn=(0,u.useCallback)((A,F)=>Y=>{const G=Number(Y.target.value),K=l.setYear(l.startOfMonth(A),G);de(l.addMonths(K,-F))},[l,de]),{className:Vn,style:Un}=(0,u.useMemo)(()=>({className:[i[P.Root],t.className].filter(Boolean).join(" "),style:{...b?.[P.Root],...t.style}}),[i,t.className,t.style,b]),Hn=oc(t),bn=A=>{const F=b?.[P.Dropdown],Y=b?.[A];if(!(!F&&!Y))return{...F,...Y}},B=(0,u.useRef)(null);Nc(B,!!t.animate,{classNames:i,months:_,focused:Oe,dateLib:l});const X={dayPickerProps:t,selected:Ee,select:Te,isSelected:ge,months:_,nextMonth:V,previousMonth:Z,goToMonth:de,getModifiers:Ge,components:r,classNames:i,styles:b,labels:o,formatters:s};return u.createElement(Ya.Provider,{value:X},u.createElement(r.Root,{rootRef:t.animate?B:void 0,className:Vn,style:Un,dir:t.dir,id:t.id,lang:t.lang??c.code,nonce:t.nonce,title:t.title,role:t.role,"aria-label":t["aria-label"],"aria-labelledby":t["aria-labelledby"],...Hn},u.createElement(r.Months,{className:i[P.Months],style:b?.[P.Months]},!t.hideNavigation&&!m&&u.createElement(r.Nav,{"data-animated-nav":t.animate?"true":void 0,className:i[P.Nav],style:b?.[P.Nav],"aria-label":$t(),onPreviousClick:wt,onNextClick:Vt,previousMonth:Z,nextMonth:V}),_.map((A,F)=>{const Y=t.reverseMonths?_.length-1-F:F;return u.createElement(r.Month,{"data-animated-month":t.animate?"true":void 0,className:i[P.Month],style:b?.[P.Month],key:F,displayIndex:F,calendarMonth:A},m==="around"&&!t.hideNavigation&&F===0&&u.createElement(r.PreviousMonthButton,{type:"button",className:i[P.PreviousMonthButton],style:b?.[P.PreviousMonthButton],tabIndex:Z?void 0:-1,"aria-disabled":Z?void 0:!0,"aria-label":pn(Z),onClick:wt,"data-animated-button":t.animate?"true":void 0},u.createElement(r.Chevron,{disabled:Z?void 0:!0,className:i[P.Chevron],style:b?.[P.Chevron],orientation:t.dir==="rtl"?"right":"left"})),u.createElement(r.MonthCaption,{"data-animated-caption":t.animate?"true":void 0,className:i[P.MonthCaption],style:b?.[P.MonthCaption],calendarMonth:A,displayIndex:F},f?.startsWith("dropdown")?u.createElement(r.DropdownNav,{className:i[P.Dropdowns],style:b?.[P.Dropdowns]},(()=>{const G=f==="dropdown"||f==="dropdown-months"?u.createElement(r.MonthsDropdown,{key:"month",className:i[P.MonthsDropdown],"aria-label":U(),disabled:!!t.disableNavigation,onChange:vn(A.date,Y),options:vc(A.date,H,se,s,l),style:bn(P.MonthsDropdown),value:l.getMonth(A.date)}):u.createElement("span",{key:"month"},k(A.date,l)),K=f==="dropdown"||f==="dropdown-years"?u.createElement(r.YearsDropdown,{key:"year",className:i[P.YearsDropdown],"aria-label":Yn(l.options),disabled:!!t.disableNavigation,onChange:Kn(A.date,Y),options:Cc(H,se,s,l,!!t.reverseYears),style:bn(P.YearsDropdown),value:l.getYear(A.date)}):u.createElement("span",{key:"year"},E(A.date,l));return l.getMonthYearOrder()==="year-first"?[K,G]:[G,K]})(),u.createElement("span",{role:"status","aria-live":"polite",style:{border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"absolute",width:"1px",whiteSpace:"nowrap",wordWrap:"normal"}},N(A.date,l.options,l))):u.createElement(r.CaptionLabel,{className:i[P.CaptionLabel],style:b?.[P.CaptionLabel],role:"status","aria-live":"polite"},N(A.date,l.options,l))),m==="around"&&!t.hideNavigation&&F===p-1&&u.createElement(r.NextMonthButton,{type:"button",className:i[P.NextMonthButton],style:b?.[P.NextMonthButton],tabIndex:V?void 0:-1,"aria-disabled":V?void 0:!0,"aria-label":Kt(V),onClick:Vt,"data-animated-button":t.animate?"true":void 0},u.createElement(r.Chevron,{disabled:V?void 0:!0,className:i[P.Chevron],style:b?.[P.Chevron],orientation:t.dir==="rtl"?"left":"right"})),F===p-1&&m==="after"&&!t.hideNavigation&&u.createElement(r.Nav,{"data-animated-nav":t.animate?"true":void 0,className:i[P.Nav],style:b?.[P.Nav],"aria-label":$t(),onPreviousClick:wt,onNextClick:Vt,previousMonth:Z,nextMonth:V}),u.createElement(r.MonthGrid,{role:"grid","aria-multiselectable":d==="multiple"||d==="range","aria-label":hn(A.date,l.options,l)||void 0,className:i[P.MonthGrid],style:b?.[P.MonthGrid]},!t.hideWeekdays&&u.createElement(r.Weekdays,{"data-animated-weekdays":t.animate?"true":void 0,className:i[P.Weekdays],style:b?.[P.Weekdays]},y&&u.createElement(r.WeekNumberHeader,{"aria-label":gn(l.options),className:i[P.WeekNumberHeader],style:b?.[P.WeekNumberHeader],scope:"col"},T()),ct.map(G=>u.createElement(r.Weekday,{"aria-label":zn(G,l.options,l),className:i[P.Weekday],key:String(G),style:b?.[P.Weekday],scope:"col"},M(G,l.options,l)))),u.createElement(r.Weeks,{"data-animated-weeks":t.animate?"true":void 0,className:i[P.Weeks],style:b?.[P.Weeks]},A.weeks.map(G=>u.createElement(r.Week,{className:i[P.Week],key:G.weekNumber,style:b?.[P.Week],week:G},y&&u.createElement(r.WeekNumber,{week:G,style:b?.[P.WeekNumber],"aria-label":et(G.weekNumber,{locale:c}),className:i[P.WeekNumber],scope:"row",role:"rowheader"},O(G.weekNumber,l)),G.days.map(K=>{const{date:ne}=K,q=Ge(K);if(q[ae.focused]=!q.hidden&&!!Oe?.isEqualTo(K),q[De.selected]=ge?.(ne)||q.selected,An(Ee)){const{from:jt,to:qn}=Ee;q[De.range_start]=!!(jt&&qn&&l.isSameDay(ne,jt)),q[De.range_end]=!!(jt&&qn&&l.isSameDay(ne,qn)),q[De.range_middle]=Ke(Ee,ne,!0,l)}const St=bc(q,b,t.modifiersStyles),fe=ac(q,i,t.modifiersClassNames),Le=!xn&&!q.hidden?mn(ne,q,l.options,l):void 0;return u.createElement(r.Day,{key:`${K.isoDate}_${K.displayMonthId}`,day:K,modifiers:q,className:fe.join(" "),style:St,role:"gridcell","aria-selected":q.selected||void 0,"aria-label":Le,"data-day":K.isoDate,"data-month":K.outside?K.dateMonthId:void 0,"data-selected":q.selected||void 0,"data-disabled":q.disabled||void 0,"data-hidden":q.hidden||void 0,"data-outside":K.outside||void 0,"data-focused":q.focused||void 0,"data-today":q.today||void 0},!q.hidden&&xn?u.createElement(r.DayButton,{className:i[P.DayButton],style:b?.[P.DayButton],type:"button",day:K,modifiers:q,disabled:!q.focused&&q.disabled||void 0,"aria-disabled":q.focused&&q.disabled||void 0,tabIndex:$(K)?0:-1,"aria-label":Xe(ne,q,l.options,l),onClick:Bn(K,q),onBlur:Ln(K,q),onFocus:Ct(K,q),onKeyDown:yn(K,q),onMouseEnter:$n(K,q),onMouseLeave:ut(K,q)},j(ne,l.options,l)):!q.hidden&&j(K.date,l.options,l))}))))))})),t.footer&&u.createElement(r.Footer,{className:i[P.Footer],style:b?.[P.Footer],role:"status","aria-live":"polite"},t.footer)))}function qc({className:e,classNames:t,showOutsideDays:n=!0,captionLayout:r="label",buttonVariant:s="ghost",formatters:o,components:l,...c}){const i=Mr();return(0,a.jsx)(Hc,{showOutsideDays:n,className:z("p-3 [--cell-radius:var(--radius-md)] [--cell-size:--spacing(6)] bg-background group/calendar [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent",String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,e),captionLayout:r,formatters:{formatMonthDropdown:f=>f.toLocaleString("default",{month:"short"}),...o},classNames:{root:z("w-fit",i.root),months:z("flex gap-4 flex-col md:flex-row relative",i.months),month:z("flex flex-col w-full gap-4",i.month),nav:z("flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between",i.nav),button_previous:z(Ir({variant:s}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",i.button_previous),button_next:z(Ir({variant:s}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",i.button_next),month_caption:z("flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)",i.month_caption),dropdowns:z("w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5",i.dropdowns),dropdown_root:z("relative cn-calendar-dropdown-root rounded-(--cell-radius)",i.dropdown_root),dropdown:z("absolute bg-popover inset-0 opacity-0",i.dropdown),caption_label:z("select-none font-medium",r==="label"?"text-sm":"cn-calendar-caption-label rounded-(--cell-radius) flex items-center gap-1 text-sm [&>svg]:text-muted-foreground [&>svg]:size-3.5",i.caption_label),month_grid:z("w-full border-collapse",i.month_grid),weekdays:z("flex",i.weekdays),weekday:z("text-muted-foreground rounded-(--cell-radius) flex-1 font-normal text-[0.8rem] select-none",i.weekday),week:z("flex w-full mt-2",i.week),week_number_header:z("select-none w-(--cell-size)",i.week_number_header),week_number:z("text-[0.8rem] select-none text-muted-foreground",i.week_number),day:z("relative w-full rounded-(--cell-radius) h-full p-0 text-center [&:last-child[data-selected=true]_button]:rounded-r-(--cell-radius) group/day aspect-square select-none",c.showWeekNumber?"[&:nth-child(2)[data-selected=true]_button]:rounded-l-(--cell-radius)":"[&:first-child[data-selected=true]_button]:rounded-l-(--cell-radius)",i.day),range_start:z("rounded-l-(--cell-radius) bg-muted elative after:bg-muted after:absolute after:inset-y-0 after:w-4 after:right-0 -z-0 isolate",i.range_start),range_middle:z("rounded-none",i.range_middle),range_end:z("rounded-r-(--cell-radius) bg-muted relative after:bg-muted-200 after:absolute after:inset-y-0 after:w-4 after:left-0 -z-0 isolate",i.range_end),today:z("bg-muted text-foreground rounded-(--cell-radius) data-[selected=true]:rounded-none",i.today),outside:z("text-muted-foreground aria-selected:text-muted-foreground",i.outside),disabled:z("text-muted-foreground opacity-50",i.disabled),hidden:z("invisible",i.hidden),...t},components:{Root:({className:f,rootRef:d,...m})=>(0,a.jsx)("div",{"data-slot":"calendar",ref:d,className:z(f),...m}),Chevron:({className:f,orientation:d,...m})=>d==="left"?(0,a.jsx)(pa,{className:z("size-4",f),...m}):d==="right"?(0,a.jsx)(ma,{className:z("size-4",f),...m}):(0,a.jsx)(an,{className:z("size-4",f),...m}),DayButton:Jc,WeekNumber:({children:f,...d})=>(0,a.jsx)("td",{...d,children:(0,a.jsx)("div",{className:"flex size-(--cell-size) items-center justify-center text-center",children:f})}),...l},...c})}function Jc({className:e,day:t,modifiers:n,...r}){const s=Mr(),o=u.useRef(null);return u.useEffect(()=>{n.focused&&o.current?.focus()},[n.focused]),(0,a.jsx)(W,{ref:o,variant:"ghost",size:"icon","data-day":t.date.toLocaleDateString(),"data-selected-single":n.selected&&!n.range_start&&!n.range_end&&!n.range_middle,"data-range-start":n.range_start,"data-range-end":n.range_end,"data-range-middle":n.range_middle,className:z("data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-muted data-[range-middle=true]:text-foreground data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 dark:hover:text-foreground relative isolate z-10 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 border-0 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] data-[range-end=true]:rounded-(--cell-radius) data-[range-end=true]:rounded-r-(--cell-radius) data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-(--cell-radius) data-[range-start=true]:rounded-l-(--cell-radius) [&>span]:text-xs [&>span]:opacity-70",s.day,e),...r})}function mt({value:e,onChange:t,placeholder:n="Pick a date",className:r,disabled:s,startYear:o=1980,endYear:l=new Date().getFullYear()+10,icon:c=!0,isFormatted:i=!0,showTime:f=!1,modal:d,open:m,onOpenChange:p}){const[g,w]=(0,u.useState)(!1),S=m??g,v=E=>{w(E),p?.(E)},[D]=(0,u.useState)(()=>new Date),C=e?e.getHours():0,x=e?e.getMinutes():0,h=e?e.getSeconds():0,y=(E,I)=>{I({target:{value:String(E)}})},b=E=>{E&&e&&(E.setHours(e.getHours()),E.setMinutes(e.getMinutes()),E.setSeconds(e.getSeconds())),t?.(E),f||v(!1)},N=(E,I)=>{const R=e?new Date(e):new Date;E==="hours"&&R.setHours(I),E==="minutes"&&R.setMinutes(I),E==="seconds"&&R.setSeconds(I),t?.(R)},j=E=>{const I=It(new Date);switch(E){case"NULL":t?.(null);break;case"NOW":t?.(new Date);break;case"TODAY":t?.(I);break;case"YESTERDAY":t?.(Tn(I,-1));break;case"TOMORROW":t?.(Tn(I,1))}},k=Array.from({length:24},(E,I)=>I),O=Array.from({length:60},(E,I)=>I),T=Array.from({length:60},(E,I)=>I),M=e&&e instanceof Date&&!Number.isNaN(e.getTime())?i?f?_e(e,"dd/MM/yyyy HH:mm:ss"):_e(e,"dd/MM/yyyy"):f?_e(e,"yyyy-MM-dd HH:mm:ss"):_e(e,"yyyy-MM-dd"):e===null?"NULL":n;return(0,a.jsxs)(Yt,{modal:d,open:S,onOpenChange:v,children:[(0,a.jsx)(cn,{asChild:!0,children:(0,a.jsxs)(W,{variant:"outline",className:z("w-full justify-start text-left font-normal",!e&&"text-muted-foreground",r),disabled:s,children:[c&&(0,a.jsx)(Qs,{className:"mr-2 size-4"}),M]})}),(0,a.jsx)(it,{className:"w-auto p-0",align:"end",children:(0,a.jsxs)("div",{className:"flex",children:[(0,a.jsxs)("div",{className:"flex flex-col gap-1 p-2 border-r",children:[(0,a.jsx)(W,{variant:"ghost",size:"sm",className:"justify-start text-xs h-7",onClick:()=>j("NULL"),children:"NULL"}),(0,a.jsx)(W,{variant:"ghost",size:"sm",className:"justify-start text-xs h-7",onClick:()=>j("NOW"),children:"NOW"}),(0,a.jsx)(W,{variant:"ghost",size:"sm",className:"justify-start text-xs h-7",onClick:()=>j("TODAY"),children:"TODAY"}),(0,a.jsx)(W,{variant:"ghost",size:"sm",className:"justify-start text-xs h-7",onClick:()=>j("YESTERDAY"),children:"YESTERDAY"}),(0,a.jsx)(W,{variant:"ghost",size:"sm",className:"justify-start text-xs h-7",onClick:()=>j("TOMORROW"),children:"TOMORROW"})]}),(0,a.jsx)(qc,{components:{Dropdown:E=>(0,a.jsxs)(Ie,{onValueChange:I=>{E.onChange&&y(I,E.onChange)},value:String(E.value),children:[(0,a.jsx)(Fe,{className:"h-8 w-fit font-medium first-letter:capitalize focus:ring-0 focus:ring-offset-0",children:(0,a.jsx)(Pe,{})}),(0,a.jsx)(We,{children:E.options?.map(I=>(0,a.jsx)(Q,{value:String(I.value),children:I.label},I.value))})]}),DropdownNav:E=>(0,a.jsx)("div",{className:"flex w-full items-center gap-2",children:E.children})},defaultMonth:e||D,hideNavigation:!0,mode:"single",onSelect:b,selected:e||void 0,startMonth:new Date(o,0),endMonth:new Date(l,11)}),f&&(0,a.jsxs)("div",{className:"flex border-l",children:[(0,a.jsx)(tr,{label:"H",values:k,selected:C,onChange:E=>N("hours",E)}),(0,a.jsx)(tr,{label:"M",values:O,selected:x,onChange:E=>N("minutes",E)}),(0,a.jsx)(tr,{label:"S",values:T,selected:h,onChange:E=>N("seconds",E)})]})]})})]})}function tr({label:e,values:t,selected:n,onChange:r}){const s=(0,u.useRef)(new Map);return(0,u.useEffect)(()=>{const o=s.current.get(n);o&&o.scrollIntoView({block:"center",behavior:"auto"})},[n]),(0,a.jsxs)("div",{className:"flex flex-col",children:[(0,a.jsx)("div",{className:"px-3 py-2 text-xs font-medium text-muted-foreground text-center border-b",children:e}),(0,a.jsx)(Vo,{className:"h-[224px]",children:(0,a.jsx)("div",{className:"flex flex-col p-1",children:t.map(o=>(0,a.jsx)("button",{ref:l=>{l&&s.current.set(o,l)},type:"button",onClick:()=>r(o),className:z("w-10 h-8 text-sm rounded-md hover:bg-accent flex items-center justify-center",n===o&&"bg-primary text-primary-foreground hover:bg-primary"),children:o.toString().padStart(2,"0")},o))})})]})}var ts=on()(e=>({tableName:null,columnName:null,referencedColumn:null,setRecordReference:(t,n,r)=>e({tableName:t,columnName:n,referencedColumn:r}),clearRecordReference:()=>e({tableName:null,columnName:null,referencedColumn:null})})),wn=e=>String(e).padStart(2,"0"),nr=e=>`${e.getFullYear()}-${wn(e.getMonth()+1)}-${wn(e.getDate())}T${wn(e.getHours())}:${wn(e.getMinutes())}`,ns=({columnName:e,dataTypeLabel:t,columnDefault:n,enumValues:r,isForeignKey:s,referencedTable:o,referencedColumn:l,hideLabel:c=!1})=>{const[,i]=J(L.REFERENCED_TABLE_STATE_KEYS.ACTIVE_TABLE),{control:f}=wr(),{openOverlay:d}=he(),{setRecordReference:m}=ts(),p=g=>{const w={...g,value:g.value??""},S=c?e:void 0;if(s)return(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsxs)("div",{className:"flex",children:[(0,a.jsx)(ve,{id:e,"aria-label":S,placeholder:n??"",className:"-me-px flex-1 rounded-e-none shadow-none focus-visible:z-10",...w}),(0,a.jsx)(Ut,{delayDuration:0,children:(0,a.jsxs)(at,{children:[(0,a.jsx)(nt,{asChild:!0,children:(0,a.jsx)("button",{"aria-label":"Go to table",className:"inline-flex w-9 items-center justify-center rounded-e-md border border-input bg-background text-muted-foreground/80 text-sm outline-none transition-[color,box-shadow] hover:text-accent-foreground focus:z-10 focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",type:"button",onClick:()=>{o&&e&&l&&m(o,e,l),d("records.record-reference"),i(o)},children:(0,a.jsx)(ua,{"aria-hidden":"true",className:"size-4",size:16})})}),(0,a.jsx)(rt,{className:"px-2 py-1 text-xs",children:"Go to table"})]})})]}),(0,a.jsxs)("span",{className:"text-xs text-muted-foreground",children:["Has a foreign key relation to"," ",(0,a.jsx)("button",{type:"button",className:"font-mono text-primary",onClick:()=>{o&&e&&l&&m(o,e,l),d("records.record-reference"),i(o)},children:o})," ","table"]})]});if(t==="int"||t==="bigint"||t==="smallint"||t==="numeric"||t==="float"||t==="double"||t==="money")return(0,a.jsx)(ve,{id:e,"aria-label":S,type:"number",placeholder:n??"0",...w});if(t==="boolean")return(0,a.jsxs)(Ie,{value:g.value,onValueChange:v=>g.onChange(v),children:[(0,a.jsx)(Fe,{"aria-label":S,className:"w-full",children:(0,a.jsx)(Pe,{placeholder:n??"true"})}),(0,a.jsxs)(We,{children:[(0,a.jsx)(Q,{value:"true",children:"true"}),(0,a.jsx)(Q,{value:"false",children:"false"})]})]});if(t==="text"||t==="xml")return(0,a.jsx)(He,{id:e,"aria-label":S,placeholder:n??"",rows:4,...w});if(t==="json"||t==="jsonb")return(0,a.jsx)(He,{id:e,"aria-label":S,placeholder:n??'{"key": "value"}',rows:6,...w});if(t==="date")return n?.toLowerCase().includes("current_date")||n?.toLowerCase().includes("now()")||n?.toLowerCase().includes("curdate()")?(0,a.jsxs)("div",{className:"flex",children:[(0,a.jsx)(mt,{value:g.value?new Date(g.value):g.value===""?null:void 0,onChange:v=>g.onChange(v?v.toISOString().split("T")[0]:""),placeholder:n??"Select a date",className:"-me-px flex-1 rounded-e-none shadow-none focus-visible:z-10"}),(0,a.jsx)(Ut,{delayDuration:0,children:(0,a.jsxs)(at,{children:[(0,a.jsx)(nt,{asChild:!0,children:(0,a.jsx)("button",{"aria-label":"Set to now",className:"inline-flex w-7 items-center justify-center rounded-e-md border border-input bg-background text-muted-foreground/80 text-sm outline-none transition-[color,box-shadow] hover:text-accent-foreground focus:z-10 focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",type:"button",onClick:()=>{const v=new Date().toISOString().split("T")[0];g.onChange(v)},children:(0,a.jsx)(Jn,{"aria-hidden":"true",className:"size-4",size:16})})}),(0,a.jsx)(rt,{className:"px-2 py-1 text-xs",children:"Set to now"})]})})]}):(0,a.jsx)(mt,{value:g.value?new Date(g.value):g.value===""?null:void 0,onChange:v=>g.onChange(v?v.toISOString().split("T")[0]:""),placeholder:n??"Select a date"});if(t==="timestamptz")return n?.toLowerCase().includes("current_timestamp")||n?.toLowerCase().includes("now()")||n?.toLowerCase().includes("localtimestamp")?(0,a.jsxs)("div",{className:"flex",children:[(0,a.jsx)(mt,{value:g.value?new Date(g.value):g.value===""?null:void 0,onChange:v=>g.onChange(v?v.toISOString():""),showTime:!0,isFormatted:!1,placeholder:n??"Select a date and time",className:"-me-px flex-1 rounded-e-none shadow-none focus-visible:z-10"}),(0,a.jsx)(Ut,{delayDuration:0,children:(0,a.jsxs)(at,{children:[(0,a.jsx)(nt,{asChild:!0,children:(0,a.jsx)("button",{"aria-label":"Set to now",className:"inline-flex w-7 items-center justify-center rounded-e-md border border-input bg-background text-muted-foreground/80 text-sm outline-none transition-[color,box-shadow] hover:text-accent-foreground focus:z-10 focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",type:"button",onClick:()=>{const v=new Date().toISOString();g.onChange(v)},children:(0,a.jsx)(Jn,{"aria-hidden":"true",className:"size-4",size:16})})}),(0,a.jsx)(rt,{className:"px-2 py-1 text-xs",children:"Set to now"})]})})]}):(0,a.jsx)(mt,{value:g.value?new Date(g.value):g.value===""?null:void 0,onChange:v=>g.onChange(v?v.toISOString():""),showTime:!0,isFormatted:!1,placeholder:n??"Select a date and time"});if(t==="timestamp")return n?.toLowerCase().includes("current_timestamp")||n?.toLowerCase().includes("now()")||n?.toLowerCase().includes("localtimestamp")?(0,a.jsxs)("div",{className:"flex",children:[(0,a.jsx)(mt,{value:g.value?new Date(g.value):g.value===""?null:void 0,onChange:v=>g.onChange(v?nr(v):""),showTime:!0,isFormatted:!1,placeholder:n??"Select a date and time",className:"-me-px flex-1 rounded-e-none shadow-none focus-visible:z-10"}),(0,a.jsx)(Ut,{delayDuration:0,children:(0,a.jsxs)(at,{children:[(0,a.jsx)(nt,{asChild:!0,children:(0,a.jsx)("button",{"aria-label":"Set to now",className:"inline-flex w-7 items-center justify-center rounded-e-md border border-input bg-background text-muted-foreground/80 text-sm outline-none transition-[color,box-shadow] hover:text-accent-foreground focus:z-10 focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",type:"button",onClick:()=>{g.onChange(nr(new Date))},children:(0,a.jsx)(Jn,{"aria-hidden":"true",className:"size-4",size:16})})}),(0,a.jsx)(rt,{className:"px-2 py-1 text-xs",children:"Set to now"})]})})]}):(0,a.jsx)(mt,{value:g.value?new Date(g.value):g.value===""?null:void 0,onChange:v=>g.onChange(v?nr(v):""),showTime:!0,isFormatted:!1,placeholder:n??"Select a date and time"});if(t==="uuid")return(0,a.jsxs)("div",{className:"flex",children:[(0,a.jsx)(ve,{id:e,"aria-label":S,type:"text",placeholder:n??"",pattern:"[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}",className:"-me-px flex-1 rounded-e-none shadow-none focus-visible:z-10",...w}),(0,a.jsx)(Ut,{delayDuration:0,children:(0,a.jsxs)(at,{children:[(0,a.jsx)(nt,{asChild:!0,children:(0,a.jsx)("button",{"aria-label":"Generate UUID",className:"inline-flex w-9 items-center justify-center rounded-e-md border border-input bg-background text-muted-foreground/80 text-sm outline-none transition-[color,box-shadow] hover:text-accent-foreground focus:z-10 focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",type:"button",onClick:()=>{const v=crypto.randomUUID();g.onChange(v)},children:(0,a.jsx)(da,{"aria-hidden":"true",className:"size-4",size:16})})}),(0,a.jsx)(rt,{className:"px-2 py-1 text-xs",children:"Generate UUID"})]})})]});if(t==="array")return(0,a.jsx)(He,{id:e,"aria-label":S,placeholder:n??'["item1", "item2"]',rows:3,...w});if(t==="enum")return r&&r.length>0?(0,a.jsxs)(Ie,{value:g.value,onValueChange:v=>g.onChange(v),children:[(0,a.jsx)(Fe,{"aria-label":S,className:"w-full",children:(0,a.jsx)(Pe,{placeholder:n??"Select a value"})}),(0,a.jsx)(We,{children:r.map(v=>(0,a.jsx)(Q,{value:v,children:v},v))})]}):(0,a.jsx)(ve,{id:e,"aria-label":S,placeholder:n??"",...w});if(t==="interval")return(0,a.jsx)(ve,{id:e,"aria-label":S,type:"text",placeholder:n??"1 day",...w});if(t==="bytea"){const{value:v,...D}=w,C=typeof v=="string"?v:"";return(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[C&&(0,a.jsx)("div",{role:"group","aria-label":`${e} stored value`,className:"truncate rounded-md border border-input bg-muted/40 px-3 py-2 font-mono text-xs",children:C}),(0,a.jsx)(ve,{id:e,"aria-label":S,type:"file",...D})]})}return t==="inet"||t==="cidr"||t==="macaddr"||t==="macaddr8"?(0,a.jsx)(ve,{id:e,"aria-label":S,type:"text",placeholder:t==="inet"?"192.168.1.1":t==="cidr"?"192.168.1.0/24":t==="macaddr"?"08:00:2b:01:02:03":"08:00:2b:01:02:03:04:05",...w}):t==="point"||t==="line"||t==="polygon"?(0,a.jsx)(ve,{id:e,"aria-label":S,type:"text",placeholder:t==="point"?"(x,y)":t==="line"?"{A,B,C}":"((x1,y1),(x2,y2),...)",...w}):(0,a.jsx)(ve,{id:e,"aria-label":S,type:"text",placeholder:n??"",...w})};return(0,a.jsx)(No,{control:f,name:e,render:({field:g})=>c?(0,a.jsx)("div",{role:"group","aria-label":e,children:p(g)}):(0,a.jsxs)("div",{className:"grid grid-cols-3 gap-4",children:[(0,a.jsxs)("div",{className:"col-span-1 flex flex-col gap-1",children:[(0,a.jsx)(we,{htmlFor:e,children:e}),(0,a.jsx)("span",{className:"text-xs text-muted-foreground",children:t})]}),(0,a.jsx)("div",{className:"col-span-2 w-full",children:p(g)})]})},e)},Gc=({tableName:e,schemaName:t})=>{const n=Je(),{closeOverlay:r}=he(),{selectedDatabase:s,dbType:o}=pe(),{mutateAsync:l,isPending:c}=ot({mutationFn:async f=>(await Ro({tableName:e,schemaName:t,data:f,db:s})).data.data,onSuccess:async()=>{await Promise.all([n.invalidateQueries({queryKey:ue.dataByTable(e),exact:!1}),n.invalidateQueries({queryKey:ue.lists()})]),r("records.add-record"),o&&ln.capture("record_created",{db_type:o})}});return{createRecord:async(f,d)=>{if(!f||Object.keys(f).length===0)throw new Error("At least one field is required");return Ae.promise(l(f,d),{loading:"Creating record...",success:m=>m||"Record created successfully",error:m=>m.detail||m.message||"Failed to create record"})},isCreatingRecord:c}};function Qc({className:e,...t}){return(0,a.jsx)("div",{"data-slot":"table-container",className:"relative w-full overflow-x-auto",children:(0,a.jsx)("table",{"data-slot":"table",className:z("w-full caption-bottom text-xs",e),...t})})}function Zc({className:e,...t}){return(0,a.jsx)("thead",{"data-slot":"table-header",className:z("[&_tr]:border-b",e),...t})}function Xc({className:e,...t}){return(0,a.jsx)("tbody",{"data-slot":"table-body",className:z("[&_tr:last-child]:border-0",e),...t})}function rr({className:e,...t}){return(0,a.jsx)("tr",{"data-slot":"table-row",className:z("hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors",e),...t})}function eu({className:e,...t}){return(0,a.jsx)("th",{"data-slot":"table-head",className:z("text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0",e),...t})}function Zr({className:e,...t}){return(0,a.jsx)("td",{"data-slot":"table-cell",className:z("p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0",e),...t})}var Fn=({tableName:e,schemaName:t,isReferencedTable:n=!1})=>{const{selectedDatabase:r}=pe(),[s]=J(L.REFERENCED_TABLE_STATE_KEYS.ACTIVE_TABLE),o=e||s||"",[l]=J(n?L.REFERENCED_TABLE_STATE_KEYS.CURSOR:L.TABLE_STATE_KEYS.CURSOR),[c]=J(n?L.REFERENCED_TABLE_STATE_KEYS.LIMIT.toString():L.TABLE_STATE_KEYS.LIMIT),[i]=J(n?L.REFERENCED_TABLE_STATE_KEYS.DIRECTION:L.TABLE_STATE_KEYS.DIRECTION),[f]=J(L.REFERENCED_TABLE_STATE_KEYS.SORT,Ft(b=>b).withDefault([]).withOptions({history:"push"})),[d]=J(L.TABLE_STATE_KEYS.SORT),[m]=J(L.TABLE_STATE_KEYS.ORDER),[p]=J(n?L.REFERENCED_TABLE_STATE_KEYS.FILTERS:L.TABLE_STATE_KEYS.FILTERS,Ft(b=>b).withDefault([]).withOptions({history:"push"})),g={tableName:o,cursor:l,limit:c,direction:i,sort:n&&f?.length>0?JSON.stringify(f):d,order:m,filters:p?.length>0?JSON.stringify(p):void 0,db:r,schemaName:t},w=b=>zo({tableName:b.tableName,schemaName:b.schemaName,limit:b.limit?.toString()||L.CACHE_KEYS.TABLE_DEFAULT_LIMIT.toString(),db:b.db??void 0,cursor:b.cursor,direction:b.direction,sort:b.sort??void 0,order:b.order,filters:b.filters}),{data:S,isLoading:v,isRefetching:D,refetch:C,error:x}=yr({queryKey:ue.data(g),queryFn:()=>w(g),select:b=>b.data.data,enabled:!!o}),h=Je();return{tableData:S,prefetchPage:(b,N)=>{const j={...g,cursor:b,direction:N};h.prefetchQuery({queryKey:ue.data(j),queryFn:()=>w(j)})},pageKey:JSON.stringify(ue.data(g)),isLoadingTableData:v,isRefetchingTableData:D,errorTableData:x,refetchTableData:C}},tu=({tableName:e})=>{const[t,n]=J(L.REFERENCED_TABLE_STATE_KEYS.FILTERS,Ft(x=>x).withDefault([]).withOptions({history:"push"})),[,r]=J(L.REFERENCED_TABLE_STATE_KEYS.CURSOR),[,s]=J(L.REFERENCED_TABLE_STATE_KEYS.DIRECTION),{tableCols:o}=Ce({tableName:e,schemaName:ce()}),[l,c]=(0,u.useState)(!1),[i,f]=(0,u.useState)([]),d=()=>{const x=o?.[0]?.columnName??"";f(h=>[...h,{columnName:x,operator:"=",value:""}])},m=x=>{f(i.filter((h,y)=>y!==x))},p=(x,h)=>{f(i.map((y,b)=>b===x?{...y,columnName:h}:y))},g=(x,h)=>{f(i.map((y,b)=>b===x?{...y,value:h}:y))},w=(x,h)=>{f(i.map((y,b)=>b===x?{...y,operator:h}:y))},S=()=>{f([]),n([]),r(null),s(null),c(!1)},v=()=>{const x=i.filter(h=>h.columnName&&h.operator&&h.value!=="");n(x),r(null),s(null),c(!1)},D=t.length>0,C=x=>{x&&f(t),c(x)};return(0,a.jsxs)(Yt,{modal:!0,open:l,onOpenChange:C,children:[(0,a.jsx)(cn,{asChild:!0,children:(0,a.jsxs)(W,{type:"button",variant:"ghost",className:"border-r border-l-0 border-y-0 border-border rounded-none text-xs h-full text-muted-foreground hover:text-foreground hover:bg-muted/60 transition-colors","aria-label":"Filter table data","data-active":D,children:[(0,a.jsx)(fa,{className:"size-4"}),"Filter",D&&(0,a.jsx)(Ne,{className:"text-[10px] font-normal text-primary bg-primary/10 border border-primary/30 px-1.5 py-0.5",children:t.length})]})}),(0,a.jsxs)(it,{className:"w-md space-y-2",align:"start",children:[(0,a.jsx)("div",{className:"flex items-center gap-4",children:(0,a.jsxs)(W,{variant:"outline",size:"lg",className:"text-sm",onClick:d,children:["Add filter",i&&i.length>0&&(0,a.jsx)(Ne,{className:"text-xs font-normal text-primary bg-primary/10 border border-primary/30 px-1.5 py-0.5",children:i.length})]})}),(0,a.jsx)("div",{className:"flex flex-col gap-4",children:i.length>0?i.map((x,h)=>(0,a.jsxs)("div",{className:"flex-1 flex h-9 gap-2",children:[(0,a.jsxs)(Ie,{value:x.columnName,onValueChange:y=>p(h,y),children:[(0,a.jsx)(Fe,{className:"w-full flex-1",children:(0,a.jsx)(Pe,{placeholder:"Select column"})}),(0,a.jsx)(We,{children:o?.map(y=>(0,a.jsx)(Q,{value:y.columnName,children:y.columnName},y.columnName))})]}),(0,a.jsxs)(Ie,{value:x.operator,onValueChange:y=>w(h,y),children:[(0,a.jsx)(Fe,{children:(0,a.jsx)(Pe,{placeholder:"Op"})}),(0,a.jsxs)(We,{children:[(0,a.jsx)(Q,{value:"=",children:"="}),(0,a.jsx)(Q,{value:"!=",children:"!="}),(0,a.jsx)(Q,{value:">",children:">"}),(0,a.jsx)(Q,{value:">=",children:">="}),(0,a.jsx)(Q,{value:"<",children:"<"}),(0,a.jsx)(Q,{value:"<=",children:"<="}),(0,a.jsx)(Q,{value:"is",children:"is"}),(0,a.jsx)(Q,{value:"is not",children:"is not"}),(0,a.jsx)(Q,{value:"like",children:"like"}),(0,a.jsx)(Q,{value:"not like",children:"not like"}),(0,a.jsx)(Q,{value:"ilike",children:"ilike"}),(0,a.jsx)(Q,{value:"not ilike",children:"not ilike"})]})]}),(0,a.jsx)(ve,{type:"text",placeholder:"Value",value:x.value,onChange:y=>g(h,y.target.value)}),(0,a.jsx)(W,{variant:"ghost",size:"icon",className:"text-xs",onClick:()=>m(h),children:(0,a.jsx)(Mn,{className:"size-4"})})]},`${x.columnName}-${h}`)):(0,a.jsx)("div",{className:"flex-1 flex h-9 gap-2 items-center justify-center",children:(0,a.jsx)("p",{className:"text-sm text-muted-foreground text-center",children:"No filters applied"})})}),(0,a.jsxs)("div",{className:"gap-2 flex justify-end",children:[(0,a.jsx)(W,{variant:"outline",size:"lg",className:"text-sm",onClick:S,children:"Reset"}),(0,a.jsx)(W,{variant:"default",size:"lg",className:"text-sm",onClick:v,children:"Apply"})]})]})]})},nu=({tableName:e})=>{const{tableCols:t}=Ce({tableName:e,schemaName:ce()}),[n,r]=J(L.REFERENCED_TABLE_STATE_KEYS.SORT,Ft(C=>C).withDefault([]).withOptions({history:"push"})),[,s]=J(L.REFERENCED_TABLE_STATE_KEYS.CURSOR),[,o]=J(L.REFERENCED_TABLE_STATE_KEYS.DIRECTION),[l,c]=(0,u.useState)(!1),[i,f]=(0,u.useState)([]),d=()=>{const C=t?.[0]?.columnName??"";f(x=>[...x,{columnName:C,direction:"asc"}])},m=C=>{f(i.filter((x,h)=>h!==C))},p=(C,x)=>{f(i.map((h,y)=>y===C?{...h,columnName:x}:h))},g=(C,x)=>{f(i.map((h,y)=>y===C?{...h,direction:x}:h))},w=()=>{f([]),r([]),s(null),o(null),c(!1)},S=()=>{const C=i.filter(x=>x.columnName);r(C),s(null),o(null),c(!1)},v=n.length>0,D=C=>{C&&f(n),c(C)};return(0,a.jsxs)(Yt,{modal:!0,open:l,onOpenChange:D,children:[(0,a.jsx)(cn,{asChild:!0,children:(0,a.jsxs)(W,{variant:"ghost",className:"border-r border-l-0 border-y-0 border-border rounded-none text-xs h-full text-muted-foreground hover:text-foreground hover:bg-muted/60 transition-colors",children:[(0,a.jsx)(no,{className:"size-4"}),"Sort",v&&(0,a.jsx)(Ne,{className:"text-[10px] font-normal text-primary bg-primary/10 border border-primary/30 px-1.5 py-0.5",children:n.length})]})}),(0,a.jsxs)(it,{className:"w-md space-y-2",align:"start",children:[(0,a.jsx)("div",{className:"flex items-center gap-4",children:(0,a.jsxs)(W,{variant:"outline",size:"lg",className:"text-sm",onClick:d,children:["Add sort",i&&i.length>0&&(0,a.jsx)(Ne,{className:"text-xs font-normal text-primary bg-primary/10 border border-primary/30 px-1.5 py-0.5",children:i.length})]})}),(0,a.jsx)("div",{className:"flex flex-col gap-4",children:i.length>0?i.map((C,x)=>(0,a.jsxs)("div",{className:"flex-1 flex h-9 gap-2 items-center",children:[(0,a.jsxs)(Ie,{value:C.columnName,onValueChange:h=>p(x,h),children:[(0,a.jsx)(Fe,{className:"w-full flex-1",children:(0,a.jsx)(Pe,{placeholder:"Select column"})}),(0,a.jsx)(We,{children:t?.map(h=>(0,a.jsx)(Q,{value:h.columnName,children:h.columnName},h.columnName))})]}),(0,a.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,a.jsx)(we,{htmlFor:`sort-direction-${x}`,children:"Asc"}),(0,a.jsx)(Ko,{id:`sort-direction-${x}`,checked:C.direction==="desc",onCheckedChange:h=>g(x,h?"desc":"asc")}),(0,a.jsx)(we,{htmlFor:`sort-direction-${x}`,children:"Desc"})]}),(0,a.jsx)(W,{variant:"ghost",size:"icon",className:"text-xs",onClick:()=>m(x),children:(0,a.jsx)(Mn,{className:"size-4"})})]},`${C.columnName}-${x}`)):(0,a.jsx)("div",{className:"flex-1 flex h-9 gap-2 items-center justify-center",children:(0,a.jsx)("p",{className:"text-sm text-muted-foreground text-center",children:"No sorts applied"})})}),(0,a.jsxs)("div",{className:"gap-2 flex justify-end",children:[(0,a.jsx)(W,{variant:"outline",size:"lg",className:"text-sm",onClick:w,children:"Reset"}),(0,a.jsx)(W,{variant:"default",size:"lg",className:"text-sm",onClick:S,children:"Apply"})]})]})]})},ru=({tableName:e,referencedColumn:t,columnName:n})=>{const{setValue:r}=wr(),{closeOverlay:s}=he(),o=ce(),{tableCols:l,isLoadingTableCols:c}=Ce({tableName:e,schemaName:o}),[i,f]=J(L.REFERENCED_TABLE_STATE_KEYS.ACTIVE_TABLE),{tableData:d,isLoadingTableData:m}=Fn({tableName:e,schemaName:o,isReferencedTable:!0}),[,p]=J(L.REFERENCED_TABLE_STATE_KEYS.CURSOR),[,g]=J(L.REFERENCED_TABLE_STATE_KEYS.DIRECTION),[w,S]=J(L.REFERENCED_TABLE_STATE_KEYS.LIMIT.toString());(0,u.useEffect)(()=>{e&&i!==e&&f(e),e&&!w&&S(L.REFERENCED_TABLE_STATE_KEYS.DEFAULT_LIMIT.toString())},[e,i,w,f,S]);const v=()=>{d?.meta?.nextCursor&&(p(d.meta.nextCursor),g("forward"))},D=()=>{d?.meta?.prevCursor&&(p(d.meta.prevCursor),g("backward"))},C=(0,u.useMemo)(()=>l?.map(y=>({id:y.columnName,accessorKey:y.columnName,header:y.columnName,cell:({row:b})=>(0,a.jsx)("div",{className:"font-medium max-w-[200px] truncate",children:qe(b.getValue(y.columnName))})}))??[],[l]),x=la({columns:C??[],data:d?.data??[],getCoreRowModel:ia()}),h=y=>{r(n??"",y.original[t??""]),s("records.record-reference")};return c||m?(0,a.jsx)("div",{className:"flex items-center justify-center h-full",children:(0,a.jsx)(br,{size:"size-8"})}):(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"sticky top-0 left-0 right-0 h-8 border-b border-border w-full flex items-center justify-between bg-background z-50",children:[(0,a.jsxs)("div",{className:"flex items-center h-full",children:[(0,a.jsx)(tu,{tableName:e}),(0,a.jsx)(nu,{tableName:e})]}),(0,a.jsxs)("div",{className:"flex items-center h-full",children:[(0,a.jsx)(W,{variant:"ghost",size:"icon",className:"border-l border-r-0 border-y-0 border-border rounded-none text-xs h-full aspect-square size-8 text-muted-foreground hover:text-foreground hover:bg-muted/60 transition-colors",onClick:D,disabled:!d?.meta?.hasPreviousPage,children:(0,a.jsx)(Js,{className:"size-3"})}),(0,a.jsx)(W,{variant:"ghost",size:"icon",className:"border-r border-l border-y-0 border-border rounded-none text-xs h-full aspect-square size-8 text-muted-foreground hover:text-foreground hover:bg-muted/60 transition-colors",onClick:v,disabled:!d?.meta?.hasNextPage,children:(0,a.jsx)(qs,{className:"size-3"})})]})]}),(0,a.jsxs)(Qc,{children:[(0,a.jsx)(Zc,{children:x.getHeaderGroups().map(y=>(0,a.jsx)(rr,{className:"hover:bg-transparent text-xs sticky top-0 right-0 left-0 supports-backdrop-filter:backdrop-blur-sm",children:y.headers.map(b=>(0,a.jsx)(eu,{className:"border-r border-border",children:b.isPlaceholder?null:nn(b.column.columnDef.header,b.getContext())},b.id))},y.id))}),(0,a.jsx)(Xc,{children:x.getRowModel().rows?.length?x.getRowModel().rows.map(y=>(0,a.jsx)(rr,{className:"text-xs cursor-pointer",onClick:()=>h(y),children:y.getVisibleCells().map(b=>(0,a.jsx)(Zr,{className:"border-r border-border",children:nn(b.column.columnDef.cell,b.getContext())},b.id))},y.id)):(0,a.jsx)(rr,{children:(0,a.jsx)(Zr,{className:"h-24 text-center",colSpan:C.length,children:"No results."})})})]})]})},rs=()=>{const{closeOverlay:e,isOverlayOpen:t}=he(),{tableName:n,referencedColumn:r,columnName:s,clearRecordReference:o}=ts(),[,l]=J(L.REFERENCED_TABLE_STATE_KEYS.ACTIVE_TABLE),[,c]=J(L.REFERENCED_TABLE_STATE_KEYS.CURSOR),[,i]=J(L.REFERENCED_TABLE_STATE_KEYS.DIRECTION),[,f]=J(L.REFERENCED_TABLE_STATE_KEYS.LIMIT.toString()),[,d]=J(L.REFERENCED_TABLE_STATE_KEYS.SORT.toString()),[,m]=J(L.REFERENCED_TABLE_STATE_KEYS.ORDER.toString()),[,p]=J(L.REFERENCED_TABLE_STATE_KEYS.FILTERS,Ft(w=>w).withDefault([]).withOptions({history:"push"}));if(!n||!r)return null;const g=()=>{e("records.record-reference"),o(),l(null),c(null),i(null),f(null),d(null),m(null),p(null)};return(0,a.jsx)(bt,{title:`View records in the table ${n}`,size:"max-w-lg!",contentClassName:"p-0",open:t("records.record-reference"),onOpenChange:w=>{w||g()},children:(0,a.jsx)(ru,{tableName:n,referencedColumn:r,columnName:s??""})})},au=({tableName:e})=>{const{closeOverlay:t,isOverlayOpen:n}=he(),r=ce(),{tableCols:s,isLoadingTableCols:o}=Ce({tableName:e,schemaName:r}),{createRecord:l,isCreatingRecord:c}=Gc({tableName:e,schemaName:r}),i=ba(),f=async p=>{l(p,{onSuccess:()=>{i.reset(),t("records.add-record")},onError:g=>{console.error("Failed to create record:",g)}})},d=()=>{i.reset(),t("records.add-record")},m=()=>s&&s.length>0?(0,a.jsxs)(va,{...i,children:[(0,a.jsxs)("form",{onSubmit:i.handleSubmit(f),className:"flex flex-col h-full",children:[(0,a.jsx)("div",{className:"space-y-6",children:s&&s.length>0&&!o?s.map(p=>(0,a.jsx)(ns,{...p},p.columnName)):null}),(0,a.jsxs)("div",{className:"flex justify-end gap-2 py-6",children:[(0,a.jsx)(sn,{asChild:!0,onClick:d,disabled:c,children:(0,a.jsx)(W,{variant:"outline",size:"lg",children:"Close"})}),(0,a.jsx)(W,{type:"submit",size:"lg",disabled:c||!i.formState.isDirty,children:"Save"})]})]}),(0,a.jsx)(rs,{})]}):(0,a.jsx)("div",{className:"flex flex-col h-full",children:(0,a.jsx)("div",{className:"space-y-6",children:(0,a.jsx)(me,{variant:"info",title:"No columns found",message:"Please add at least one column to the table before adding a record."})})});return(0,a.jsx)(bt,{title:`Add a new record to the table: ${e}`,open:n("records.add-record"),onOpenChange:p=>{p||d()},children:m()})},Rr=po,Wn=({className:e,ref:t,...n})=>(0,a.jsx)(xa,{ref:t,className:z("inline-flex h-10 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",e),...n});Wn.displayName=xa.displayName;var pt=({className:e,ref:t,...n})=>(0,a.jsx)(ga,{ref:t,className:z("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",e),...n});pt.displayName=ga.displayName;var gt=({className:e,ref:t,...n})=>(0,a.jsx)(ya,{ref:t,className:z("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",e),...n});gt.displayName=ya.displayName;var xt=e=>{const t=e.trim();if(t.startsWith("[")||t.startsWith("{"))try{const n=JSON.parse(t);if(Array.isArray(n))return n;if(typeof n=="object"&&n!==null)return[n];throw new Error("Invalid JSON format")}catch(n){throw n instanceof SyntaxError?new Error(`Invalid JSON format: ${n.message.replace("JSON.","")}`):n}return su(t)},su=e=>{const t=e.split(`
3
3
  `).filter(l=>l.trim());if(t.length<1)throw new Error("No data to parse");const n=t[0],r=iu(n),s=Xr(n,r).map(l=>l.trim());if(s.length===0)throw new Error("No headers found in CSV");const o=[];for(let l=1;l<t.length;l++){const c=Xr(t[l],r);c.length!==s.length&&console.warn(`Row ${l+1} has ${c.length} values but ${s.length} headers expected`);const i={};s.forEach((f,d)=>{const m=c[d]?.trim()??"";i[f]=lu(m)}),o.push(i)}if(o.length===0)throw new Error("No records found in CSV");return o},ou={",":/,/g," ":/\t/g,";":/;/g},iu=e=>{const t=[","," ",";"];let n=0,r=",";for(const s of t){const o=(e.match(ou[s])||[]).length;o>n&&(n=o,r=s)}return r},Xr=(e,t)=>{const n=[];let r="",s=!1;for(let o=0;o<e.length;o++){const l=e[o],c=e[o+1];l==='"'?s&&c==='"'?(r+='"',o++):s=!s:l===t&&!s?(n.push(r),r=""):r+=l}return n.push(r),n},lu=e=>{if(e===""||e==="null")return null;if(e==="true")return!0;if(e==="false")return!1;if(!Number.isNaN(Number(e))&&e!==""){const t=Number(e);if(String(t)===e||e.includes(".")&&!Number.isNaN(parseFloat(e)))return t}if(e.startsWith("{")&&e.endsWith("}")||e.startsWith("[")&&e.endsWith("]"))try{return JSON.parse(e)}catch{}return e},In=({tableName:e,schemaName:t})=>{const n=Je(),{selectedDatabase:r,dbType:s}=pe(),{mutateAsync:o,isPending:l}=ot({mutationFn:async i=>(await _o({tableName:e,schemaName:t,records:i,db:r})).data.data,onSuccess:async()=>{await Promise.all([n.invalidateQueries({queryKey:ue.dataByTable(e),exact:!1}),n.invalidateQueries({queryKey:ue.lists(),exact:!1}),n.invalidateQueries({queryKey:ue.columnsByTable(e),exact:!1})])}});return{bulkInsertRecords:async(i,f)=>{if(!i||i.length===0)throw new Error("At least one record is required");return Ae.promise(o(i),{loading:`Inserting ${i.length} record${i.length!==1?"s":""}...`,success:d=>(f?.onSuccess?.(d),s&&f?.format&&ln.capture("bulk_insert",{db_type:s,format:f.format}),d.failureCount>0?`${d.successCount} records inserted, ${d.failureCount} failed`:d.message),error:d=>(f?.onError?.(d),d.detail||d.message||"Failed to insert records")})},isInserting:l}},cu=({tableName:e})=>{const{closeOverlay:t,isOverlayOpen:n}=he(),{bulkInsertRecords:r,isInserting:s}=In({tableName:e,schemaName:ce()}),o=(0,u.useRef)(null),[l,c]=(0,u.useState)(""),[i,f]=(0,u.useState)(null),[d,m]=(0,u.useState)([]),[p,g]=(0,u.useState)(null),[w,S]=(0,u.useState)("file"),v=h=>{const y=h.target.files?.[0];y&&(f(y),m([]),g(null))},D=(0,u.useCallback)(()=>{g(null),m([]);try{if(w==="file"&&i){const h=new FileReader;h.onload=y=>{try{const b=y.target?.result,N=xt(b);m(N)}catch(b){g(b instanceof Error?b.message:"Failed to parse file")}},h.readAsText(i)}else if(l.trim()){const h=xt(l);m(h)}else g(w==="file"?"No file selected":"Input is empty")}catch(h){g(h instanceof Error?h.message:"Failed to format data")}},[l,i,w]),C=async()=>{if(d.length===0){g("No records to insert");return}try{await r(d,{format:"csv",onSuccess:()=>{c(""),f(null),m([]),g(null),t("records.bulk-insert-csv")}})}catch(h){console.error("Error inserting records:",h)}},x=()=>{c(""),f(null),m([]),g(null),t("records.bulk-insert-csv")};return(0,a.jsx)(bt,{title:`Add data from CSV into: ${e}`,open:n("records.bulk-insert-csv"),onOpenChange:h=>{h||x()},children:(0,a.jsxs)("div",{className:"flex flex-col h-full gap-4",children:[(0,a.jsx)(me,{variant:"info",title:"CSV Import",message:"Enter CSV data with headers. Supports comma, tab, or semicolon delimiters. First row should be column names."}),(0,a.jsxs)(Rr,{value:w,onValueChange:h=>S(h),children:[(0,a.jsxs)(Wn,{className:"grid w-full grid-cols-2",children:[(0,a.jsx)(pt,{value:"file",children:"File"}),(0,a.jsx)(pt,{value:"text",children:"Text"})]}),(0,a.jsx)(gt,{value:"file",className:"flex-1 flex flex-col gap-4",children:(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsx)(we,{htmlFor:"file-input",className:"mb-2 text-sm font-medium text-foreground",children:"Select CSV file"}),(0,a.jsx)("input",{id:"file-input",ref:o,type:"file",accept:".csv",onChange:v,disabled:s,className:"text-sm text-muted-foreground file:mr-4 file:py-2 file:px-4 file:rounded-md file:border-0 file:text-sm file:font-semibold file:bg-primary file:text-primary-foreground hover:file:bg-primary/90 cursor-pointer disabled:opacity-50"})]})}),(0,a.jsx)(gt,{value:"text",className:"flex-1 flex flex-col gap-4",children:(0,a.jsxs)("div",{className:"flex-1 flex flex-col",children:[(0,a.jsx)(we,{htmlFor:"text-input",className:"text-sm font-medium mb-2 text-foreground",children:"Data Input"}),(0,a.jsx)(He,{id:"text-input",value:l,onChange:h=>{c(h.target.value),m([]),g(null)},placeholder:`column1,column2,column3
4
4
  value1,value2,value3
5
5
  value4,value5,value6`,className:"flex-1 resize-none font-mono text-sm",disabled:s})]})})]}),p&&(0,a.jsx)(me,{variant:"error",title:"Parse Error",message:p}),d.length>0&&(0,a.jsx)(me,{variant:"success",title:"Ready to Insert",message:`${d.length} record${d.length!==1?"s":""} parsed successfully`}),(0,a.jsxs)("div",{className:"flex justify-between gap-2",children:[(0,a.jsx)(W,{variant:"secondary",size:"lg",onClick:D,disabled:w==="file"?!i:!l.trim()||s,children:"Format"}),(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)(sn,{asChild:!0,onClick:x,disabled:s,children:(0,a.jsx)(W,{variant:"outline",size:"lg",children:"Close"})}),(0,a.jsx)(W,{type:"button",size:"lg",onClick:C,disabled:d.length===0||s,children:s?"Inserting...":"Insert"})]})]})]})})},uu=({tableName:e})=>{const{closeOverlay:t,isOverlayOpen:n}=he(),{bulkInsertRecords:r,isInserting:s}=In({tableName:e,schemaName:ce()}),o=(0,u.useRef)(null),[l,c]=(0,u.useState)(""),[i,f]=(0,u.useState)(null),[d,m]=(0,u.useState)([]),[p,g]=(0,u.useState)(null),[w,S]=(0,u.useState)("file"),v=h=>{const y=h.target.files?.[0];y&&(f(y),m([]),g(null))},D=(0,u.useCallback)(()=>{g(null),m([]);try{if(w==="file"&&i){const h=new FileReader;h.onload=y=>{try{const b=y.target?.result,N=xt(b);m(N)}catch(b){g(b instanceof Error?b.message:"Failed to parse file")}},h.readAsText(i)}else if(l.trim()){const h=xt(l);m(h)}else g(w==="file"?"No file selected":"Input is empty")}catch(h){g(h instanceof Error?h.message:"Failed to format data")}},[l,i,w]),C=async()=>{if(d.length===0){g("No records to insert");return}try{await r(d,{format:"excel",onSuccess:()=>{c(""),f(null),m([]),g(null),t("records.bulk-insert-excel")}})}catch(h){console.error("Error inserting records:",h)}},x=()=>{c(""),f(null),m([]),g(null),t("records.bulk-insert-excel")};return(0,a.jsx)(bt,{title:`Add data from Excel into: ${e}`,open:n("records.bulk-insert-excel"),onOpenChange:h=>{h||x()},children:(0,a.jsxs)("div",{className:"flex flex-col h-full gap-4",children:[(0,a.jsx)(me,{variant:"info",title:"Excel Import",message:"Upload an Excel file (.xlsx, .xls) with headers in the first row. Column names should match your table schema."}),(0,a.jsxs)(Rr,{value:w,onValueChange:h=>S(h),children:[(0,a.jsxs)(Wn,{className:"grid w-full grid-cols-2",children:[(0,a.jsx)(pt,{value:"file",children:"File"}),(0,a.jsx)(pt,{value:"text",children:"Text"})]}),(0,a.jsx)(gt,{value:"file",className:"flex-1 flex flex-col gap-4",children:(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsx)(we,{htmlFor:"file-input",className:"mb-2 text-sm font-medium text-foreground",children:"Select Excel file"}),(0,a.jsx)("input",{id:"file-input",ref:o,type:"file",accept:".xlsx,.xls",onChange:v,disabled:s,className:"text-sm text-muted-foreground file:mr-4 file:py-2 file:px-4 file:rounded-md file:border-0 file:text-sm file:font-semibold file:bg-primary file:text-primary-foreground hover:file:bg-primary/90 cursor-pointer disabled:opacity-50"})]})}),(0,a.jsx)(gt,{value:"text",className:"flex-1 flex flex-col gap-4",children:(0,a.jsxs)("div",{className:"flex-1 flex flex-col",children:[(0,a.jsx)(we,{htmlFor:"text-input",className:"mb-2 text-sm font-medium text-foreground",children:"Data Input"}),(0,a.jsx)(He,{id:"text-input",value:l,onChange:h=>{c(h.target.value),m([]),g(null)},placeholder:`column1 column2 column3
@@ -8,5 +8,5 @@ value4 value5 value6`,className:"flex-1 resize-none font-mono text-sm",disabled:
8
8
  value1,value2,value3
9
9
  value4,value5,value6`,className:"flex-1 resize-none font-mono text-sm"})]}),f&&(0,a.jsx)(me,{variant:"error",title:"Parse Error",message:f}),c.length>0&&(0,a.jsx)(me,{variant:"success",title:"Ready to Insert",message:`${c.length} record${c.length!==1?"s":""} parsed successfully`}),(0,a.jsxs)("div",{className:"flex justify-between gap-2",children:[(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)(W,{variant:"outline",size:"lg",onClick:v,disabled:!o||s,children:"Clear"}),(0,a.jsx)(W,{variant:"secondary",size:"lg",onClick:g,disabled:!o||s,children:"Preview"})]}),(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)(sn,{asChild:!0,onClick:S,disabled:s,children:(0,a.jsx)(W,{variant:"outline",size:"lg",children:"Close"})}),(0,a.jsx)(W,{type:"button",size:"lg",onClick:w,disabled:c.length===0||s,children:s?"Inserting...":"Insert"})]})]})]})})},dt=null,Me=null,Ue=on()((e,t)=>({isLive:!1,status:"idle",isPulsing:!1,activeTable:null,generation:0,highlightedRowIds:new Set,highlightedCellKeys:new Set,setLive:(n,r)=>{e(n?{isLive:!0,status:"healthy",activeTable:r??t().activeTable,generation:t().generation+1}:{isLive:!1,status:"idle",isPulsing:!1,generation:t().generation+1})},pauseLive:()=>{e({isLive:!1,status:"paused",isPulsing:!1,generation:t().generation+1})},setStatus:n=>{e({status:n})},triggerPulse:()=>{dt&&clearTimeout(dt),e({isPulsing:!0}),dt=setTimeout(()=>{e({isPulsing:!1}),dt=null},800)},setHighlights:(n,r,s=1500)=>{if(n.length===0&&r.length===0){t().clearHighlights();return}Me&&clearTimeout(Me),e({highlightedRowIds:new Set(n),highlightedCellKeys:new Set(r)}),Me=setTimeout(()=>{e({highlightedRowIds:new Set,highlightedCellKeys:new Set}),Me=null},s)},clearHighlights:()=>{Me&&(clearTimeout(Me),Me=null),e({highlightedRowIds:new Set,highlightedCellKeys:new Set})},isRowHighlighted:n=>t().highlightedRowIds.has(n),isCellHighlighted:(n,r)=>t().highlightedCellKeys.has(`${n}:${r}`),reset:()=>{dt&&(clearTimeout(dt),dt=null),Me&&(clearTimeout(Me),Me=null),e({isLive:!1,status:"idle",isPulsing:!1,activeTable:null,generation:t().generation+1,highlightedRowIds:new Set,highlightedCellKeys:new Set})}})),yt=on()(e=>({tableName:null,rowIndex:null,isDirty:!1,setRowDetails:(t,n)=>e({tableName:t,rowIndex:n}),selectRowDetails:t=>e({rowIndex:t}),clearRowDetails:()=>e({tableName:null,rowIndex:null,isDirty:!1}),setDirty:t=>e({isDirty:t})})),En=e=>{if(e===null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return`[${e.map(En).join(",")}]`;const t=e;return`{${Object.keys(t).sort().map(n=>`${JSON.stringify(n)}:${En(t[n])}`).join(",")}}`},Cn=(e,t,n="global")=>{const r=e.id??e._id??En(e);return En([n,r,t])},Se=on()((e,t)=>({updates:new Map,setUpdate:(n,r,s,o,l)=>{e(c=>{const i=new Map(c.updates),f=Cn(n,r,l);return s===o?i.delete(f):i.set(f,{scope:l??"global",rowData:n,columnName:r,newValue:s,originalValue:o}),{updates:i}})},clearUpdates:()=>e({updates:new Map}),clearUpdate:(n,r,s)=>{e(o=>{const l=new Map(o.updates);return l.delete(Cn(n,r,s)),{updates:l}})},getUpdates:()=>Array.from(t().updates.values()),getUpdate:(n,r,s)=>{const{updates:o}=t();return o.size===0?null:o.get(Cn(n,r,s))??null},hasUpdate:(n,r,s)=>{const{updates:o}=t();return o.size>0&&o.has(Cn(n,r,s))},hasAnyUpdates:()=>t().updates.size>0,getUpdateCount:()=>t().updates.size})),zt=e=>{if(e===void 0)return"undefined";if(e===null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return`[${e.map(zt).join(",")}]`;const t=e;return`{${Object.keys(t).sort().map(n=>`${JSON.stringify(n)}:${zt(t[n])}`).join(",")}}`},mr=(e,t=[])=>t.length===1?String(e[t[0]]??""):t.length>1?zt(t.map(n=>e[n])):e.id!==void 0&&e.id!==null?String(e.id):e._id!==void 0&&e._id!==null?String(e._id):zt(e),mu=(e,t)=>e===t?!0:typeof e=="object"&&typeof t=="object"&&e!==null&&t!==null?zt(e)===zt(t):!1,hu=(e,t,n=[])=>{if(!e||!t)return{hasVisibleChanges:!1,insertedRowIds:[],changedCellKeys:[]};const r=e.map(d=>mr(d,n)),s=t.map(d=>mr(d,n));let o=!1;(e.length!==t.length||r.some((d,m)=>d!==s[m]))&&(o=!0);const l=new Map;for(let d=0;d<e.length;d++)l.set(r[d],e[d]);const c=new Set(s),i=[],f=[];for(let d=0;d<t.length;d++){const m=s[d],p=t[d],g=l.get(m);if(!g)i.push(m),o=!0;else{const w=new Set([...Object.keys(g),...Object.keys(p)]);for(const S of w)mu(g[S],p[S])||(f.push(`${m}:${S}`),o=!0)}}for(const d of r)if(!c.has(d)){o=!0;break}return{hasVisibleChanges:o,insertedRowIds:i,changedCellKeys:f}},pu=1e3,gu=({tableName:e,tableCols:t,tableDataRows:n,refetchTableData:r,isEditingCell:s=!1})=>{const o=Rn()?.liveMode??!1,{isLive:l,status:c,isPulsing:i,setLive:f,pauseLive:d,setStatus:m,triggerPulse:p,setHighlights:g,isRowHighlighted:w,isCellHighlighted:S,reset:v}=Ue(),{selectedDatabase:D}=pe(),{updates:C}=Se(),{openOverlays:x}=he(),{isDirty:h}=yt(),y=C.size>0,b=x.some(_=>_.startsWith("records.")),N=h&&x.includes("tables.row-details"),j=s||y||b||N,k=(0,u.useMemo)(()=>t?.filter(_=>_.isPrimaryKey).map(_=>_.columnName)??[],[t]),O=(0,u.useRef)(null),T=(0,u.useRef)(r);T.current=r;const M=(0,u.useRef)(!1),E=(0,u.useRef)(e);E.current=e;const I=(0,u.useRef)(D);I.current=D,(0,u.useEffect)(()=>{l&&j&&d()},[l,j,d]),(0,u.useEffect)(()=>{if(l&&O.current!==null){const _=hu(O.current,n,k);_.hasVisibleChanges&&(p(),g(_.insertedRowIds,_.changedCellKeys))}O.current=n},[n,l,k,p,g]);const R=(0,u.useCallback)(async()=>{if(typeof document<"u"&&document.hidden)return;if(j){d();return}if(M.current)return;const _=Ue.getState().generation,H=E.current,se=I.current;M.current=!0;try{const Z=await T.current(),V=Ue.getState();if(V.generation!==_||!V.isLive||E.current!==H||I.current!==se)return;Z&&typeof Z=="object"&&"isError"in Z&&Z.isError?m("disconnected"):m("healthy")}catch{const Z=Ue.getState();if(Z.generation!==_||!Z.isLive||E.current!==H||I.current!==se)return;m("disconnected")}finally{M.current=!1}},[j,d,m]);return(0,u.useEffect)(()=>{if(!l||!o)return;R();const _=setInterval(()=>{R()},pu);return()=>{clearInterval(_)}},[l,o,R]),(0,u.useEffect)(()=>{if(!l||!o)return;const _=()=>{!document.hidden&&l&&R()};return document.addEventListener("visibilitychange",_),()=>{document.removeEventListener("visibilitychange",_)}},[l,o,R]),(0,u.useEffect)(()=>()=>{v()},[e,D,v]),{canLiveMode:o,isLive:l,status:c,isPulsing:i,isRowHighlighted:w,isCellHighlighted:S,toggleLive:(0,u.useCallback)(()=>{o&&(l?f(!1):f(!0,e))},[o,l,e,f])}};function xu(e){if(!e||typeof document>"u")return;let t=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css",t.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}var as=u.createContext({drawerRef:{current:null},overlayRef:{current:null},onPress:()=>{},onRelease:()=>{},onDrag:()=>{},onNestedDrag:()=>{},onNestedOpenChange:()=>{},onNestedRelease:()=>{},openProp:void 0,dismissible:!1,isOpen:!1,isDragging:!1,keyboardIsOpen:{current:!1},snapPointsOffset:null,snapPoints:null,handleOnly:!1,modal:!1,shouldFade:!1,activeSnapPoint:null,onOpenChange:()=>{},setActiveSnapPoint:()=>{},closeDrawer:()=>{},direction:"bottom",shouldAnimate:{current:!0},shouldScaleBackground:!1,setBackgroundColorOnScale:!0,noBodyStyles:!1,container:null,autoFocus:!1}),Lt=()=>{const e=u.useContext(as);if(!e)throw new Error("useDrawerContext must be used within a Drawer.Root");return e};xu(`[data-vaul-drawer]{touch-action:none;will-change:transform;transition:transform .5s cubic-bezier(.32, .72, 0, 1);animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=open]{animation-name:slideFromBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=closed]{animation-name:slideToBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=open]{animation-name:slideFromTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=closed]{animation-name:slideToTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=open]{animation-name:slideFromLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=closed]{animation-name:slideToLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=open]{animation-name:slideFromRight}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=closed]{animation-name:slideToRight}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--initial-transform,100%),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--initial-transform,100%),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-overlay][data-vaul-snap-points=false]{animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-overlay][data-vaul-snap-points=false][data-state=open]{animation-name:fadeIn}[data-vaul-overlay][data-state=closed]{animation-name:fadeOut}[data-vaul-animate=false]{animation:none!important}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:0;transition:opacity .5s cubic-bezier(.32, .72, 0, 1)}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:1}[data-vaul-drawer]:not([data-vaul-custom-container=true])::after{content:'';position:absolute;background:inherit;background-color:inherit}[data-vaul-drawer][data-vaul-drawer-direction=top]::after{top:initial;bottom:100%;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=bottom]::after{top:100%;bottom:initial;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=left]::after{left:initial;right:100%;top:0;bottom:0;width:200%}[data-vaul-drawer][data-vaul-drawer-direction=right]::after{left:100%;right:initial;top:0;bottom:0;width:200%}[data-vaul-overlay][data-vaul-snap-points=true]:not([data-vaul-snap-points-overlay=true]):not(
10
10
  [data-state=closed]
11
- ){opacity:0}[data-vaul-overlay][data-vaul-snap-points-overlay=true]{opacity:1}[data-vaul-handle]{display:block;position:relative;opacity:.7;background:#e2e2e4;margin-left:auto;margin-right:auto;height:5px;width:32px;border-radius:1rem;touch-action:pan-y}[data-vaul-handle]:active,[data-vaul-handle]:hover{opacity:1}[data-vaul-handle-hitarea]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100%,2.75rem);height:max(100%,2.75rem);touch-action:inherit}@media (hover:hover) and (pointer:fine){[data-vaul-drawer]{user-select:none}}@media (pointer:fine){[data-vaul-handle-hitarea]:{width:100%;height:100%}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeOut{to{opacity:0}}@keyframes slideFromBottom{from{transform:translate3d(0,var(--initial-transform,100%),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToBottom{to{transform:translate3d(0,var(--initial-transform,100%),0)}}@keyframes slideFromTop{from{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToTop{to{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}}@keyframes slideFromLeft{from{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToLeft{to{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}}@keyframes slideFromRight{from{transform:translate3d(var(--initial-transform,100%),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToRight{to{transform:translate3d(var(--initial-transform,100%),0,0)}}`);function yu(){const e=navigator.userAgent;return typeof window<"u"&&(/Firefox/.test(e)&&/Mobile/.test(e)||/FxiOS/.test(e))}function vu(){return _r(/^Mac/)}function bu(){return _r(/^iPhone/)}function ea(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}function wu(){return _r(/^iPad/)||vu()&&navigator.maxTouchPoints>1}function ss(){return bu()||wu()}function _r(e){return typeof window<"u"&&window.navigator!=null?e.test(window.navigator.platform):void 0}var Cu=24,Su=typeof window<"u"?u.useLayoutEffect:u.useEffect;function ta(...e){return(...t)=>{for(let n of e)typeof n=="function"&&n(...t)}}var ar=typeof document<"u"&&window.visualViewport;function na(e){let t=window.getComputedStyle(e);return/(auto|scroll)/.test(t.overflow+t.overflowX+t.overflowY)}function os(e){for(na(e)&&(e=e.parentElement);e&&!na(e);)e=e.parentElement;return e||document.scrollingElement||document.documentElement}var ju=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]),Sn=0,ra;function Du(e={}){let{isDisabled:t}=e;Su(()=>{if(!t)return Sn++,Sn===1&&ss()&&(ra=ku()),()=>{Sn--,Sn===0&&ra?.()}},[t])}function ku(){let e,t=0,n=m=>{e=os(m.target),!(e===document.documentElement&&e===document.body)&&(t=m.changedTouches[0].pageY)},r=m=>{if(!e||e===document.documentElement||e===document.body){m.preventDefault();return}let p=m.changedTouches[0].pageY,g=e.scrollTop,w=e.scrollHeight-e.clientHeight;w!==0&&((g<=0&&p>t||g>=w&&p<t)&&m.preventDefault(),t=p)},s=m=>{let p=m.target;hr(p)&&p!==document.activeElement&&(m.preventDefault(),p.style.transform="translateY(-2000px)",p.focus(),requestAnimationFrame(()=>{p.style.transform=""}))},o=m=>{let p=m.target;hr(p)&&(p.style.transform="translateY(-2000px)",requestAnimationFrame(()=>{p.style.transform="",ar&&(ar.height<window.innerHeight?requestAnimationFrame(()=>{aa(p)}):ar.addEventListener("resize",()=>aa(p),{once:!0}))}))},l=()=>{window.scrollTo(0,0)},c=window.pageXOffset,i=window.pageYOffset,f=ta(Nu(document.documentElement,"paddingRight",`${window.innerWidth-document.documentElement.clientWidth}px`));window.scrollTo(0,0);let d=ta(Jt(document,"touchstart",n,{passive:!1,capture:!0}),Jt(document,"touchmove",r,{passive:!1,capture:!0}),Jt(document,"touchend",s,{passive:!1,capture:!0}),Jt(document,"focus",o,!0),Jt(window,"scroll",l));return()=>{f(),d(),window.scrollTo(c,i)}}function Nu(e,t,n){let r=e.style[t];return e.style[t]=n,()=>{e.style[t]=r}}function Jt(e,t,n,r){return e.addEventListener(t,n,r),()=>{e.removeEventListener(t,n,r)}}function aa(e){let t=document.scrollingElement||document.documentElement;for(;e&&e!==t;){let n=os(e);if(n!==document.documentElement&&n!==document.body&&n!==e){let r=n.getBoundingClientRect().top,s=e.getBoundingClientRect().top;e.getBoundingClientRect().bottom>n.getBoundingClientRect().bottom+Cu&&(n.scrollTop+=s-r)}e=n.parentElement}}function hr(e){return e instanceof HTMLInputElement&&!ju.has(e.type)||e instanceof HTMLTextAreaElement||e instanceof HTMLElement&&e.isContentEditable}function Tu(e,t){typeof e=="function"?e(t):e!=null&&(e.current=t)}function Eu(...e){return t=>e.forEach(n=>Tu(n,t))}function is(...e){return u.useCallback(Eu(...e),e)}var ls=new WeakMap;function le(e,t,n=!1){if(!e||!(e instanceof HTMLElement))return;let r={};Object.entries(t).forEach(([s,o])=>{if(s.startsWith("--")){e.style.setProperty(s,o);return}r[s]=e.style[s],e.style[s]=o}),!n&&ls.set(e,r)}function Ou(e,t){if(!e||!(e instanceof HTMLElement))return;let n=ls.get(e);n&&(e.style[t]=n[t])}var oe=e=>{switch(e){case"top":case"bottom":return!0;case"left":case"right":return!1;default:return e}};function jn(e,t){if(!e)return null;const n=window.getComputedStyle(e),r=n.transform||n.webkitTransform||n.mozTransform;let s=r.match(/^matrix3d\((.+)\)$/);return s?parseFloat(s[1].split(", ")[oe(t)?13:12]):(s=r.match(/^matrix\((.+)\)$/),s?parseFloat(s[1].split(", ")[oe(t)?5:4]):null)}function Mu(e){return 8*(Math.log(e+1)-2)}function sr(e,t){if(!e)return()=>{};const n=e.style.cssText;return Object.assign(e.style,t),()=>{e.style.cssText=n}}var re={DURATION:.5,EASE:[.32,.72,0,1]},cs=.4,Ru=.25,_u=100,us=8,Dn=16,pr=26,or="vaul-dragging";function ds(e){const t=u.useRef(e);return u.useEffect(()=>{t.current=e}),u.useMemo(()=>(...n)=>t.current==null?void 0:t.current.call(t,...n),[])}function Au({defaultProp:e,onChange:t}){const n=u.useState(e),[r]=n,s=u.useRef(r),o=ds(t);return u.useEffect(()=>{s.current!==r&&(o(r),s.current=r)},[r,s,o]),n}function fs({prop:e,defaultProp:t,onChange:n=()=>{}}){const[r,s]=Au({defaultProp:t,onChange:n}),o=e!==void 0,l=o?e:r,c=ds(n);return[l,u.useCallback(i=>{if(o){const f=typeof i=="function"?i(e):i;f!==e&&c(f)}else s(i)},[o,e,s,c])]}function Pu({activeSnapPointProp:e,setActiveSnapPointProp:t,snapPoints:n,drawerRef:r,overlayRef:s,fadeFromIndex:o,onSnapPointChange:l,direction:c="bottom",container:i,snapToSequentialPoint:f}){const[d,m]=fs({prop:e,defaultProp:n?.[0],onChange:t}),[p,g]=u.useState(typeof window<"u"?{innerWidth:window.innerWidth,innerHeight:window.innerHeight}:void 0);u.useEffect(()=>{function N(){g({innerWidth:window.innerWidth,innerHeight:window.innerHeight})}return window.addEventListener("resize",N),()=>window.removeEventListener("resize",N)},[]);const w=u.useMemo(()=>d===n?.[n.length-1]||null,[n,d]),S=u.useMemo(()=>{var N;return(N=n?.findIndex(j=>j===d))!=null?N:null},[n,d]),v=n&&n.length>0&&(o||o===0)&&!Number.isNaN(o)&&n[o]===d||!n,D=u.useMemo(()=>{const N=i?{width:i.getBoundingClientRect().width,height:i.getBoundingClientRect().height}:typeof window<"u"?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0};var j;return(j=n?.map(k=>{const O=typeof k=="string";let T=0;if(O&&(T=parseInt(k,10)),oe(c)){const E=O?T:p?k*N.height:0;return p?c==="bottom"?N.height-E:-N.height+E:E}const M=O?T:p?k*N.width:0;return p?c==="right"?N.width-M:-N.width+M:M}))!=null?j:[]},[n,p,i]),C=u.useMemo(()=>S!==null?D?.[S]:null,[D,S]),x=u.useCallback(N=>{var j;const k=(j=D?.findIndex(O=>O===N))!=null?j:null;l(k),le(r.current,{transition:`transform ${re.DURATION}s cubic-bezier(${re.EASE.join(",")})`,transform:oe(c)?`translate3d(0, ${N}px, 0)`:`translate3d(${N}px, 0, 0)`}),D&&k!==D.length-1&&o!==void 0&&k!==o&&k<o?le(s.current,{transition:`opacity ${re.DURATION}s cubic-bezier(${re.EASE.join(",")})`,opacity:"0"}):le(s.current,{transition:`opacity ${re.DURATION}s cubic-bezier(${re.EASE.join(",")})`,opacity:"1"}),m(n?.[Math.max(k,0)])},[r.current,n,D,o,s,m]);u.useEffect(()=>{if(d||e){var N;const j=(N=n?.findIndex(k=>k===e||k===d))!=null?N:-1;D&&j!==-1&&typeof D[j]=="number"&&x(D[j])}},[d,e,n,D,x]);function h({draggedDistance:N,closeDrawer:j,velocity:k,dismissible:O}){if(o===void 0)return;const T=c==="bottom"||c==="right"?(C??0)-N:(C??0)+N,M=S===o-1,E=S===0,I=N>0;if(M&&le(s.current,{transition:`opacity ${re.DURATION}s cubic-bezier(${re.EASE.join(",")})`}),!f&&k>2&&!I){O?j():x(D[0]);return}if(!f&&k>2&&I&&D&&n){x(D[n.length-1]);return}const R=D?.reduce((H,se)=>typeof H!="number"||typeof se!="number"?H:Math.abs(se-T)<Math.abs(H-T)?se:H),_=oe(c)?window.innerHeight:window.innerWidth;if(k>cs&&Math.abs(N)<_*.4){const H=I?1:-1;if(H>0&&w&&n){x(D[n.length-1]);return}if(E&&H<0&&O&&j(),S===null)return;x(D[S+H]);return}x(R)}function y({draggedDistance:N}){if(C===null)return;const j=c==="bottom"||c==="right"?C-N:C+N;(c==="bottom"||c==="right")&&j<D[D.length-1]||(c==="top"||c==="left")&&j>D[D.length-1]||le(r.current,{transform:oe(c)?`translate3d(0, ${j}px, 0)`:`translate3d(${j}px, 0, 0)`})}function b(N,j){if(!n||typeof S!="number"||!D||o===void 0)return null;const k=S===o-1;if(S>=o&&j)return 0;if(k&&!j)return 1;if(!v&&!k)return null;const O=k?S+1:S-1,T=k?D[O]-D[O-1]:D[O+1]-D[O],M=N/Math.abs(T);return k?1-M:M}return{isLastSnapPoint:w,activeSnapPoint:d,shouldFade:v,getPercentageDragged:b,setActiveSnapPoint:m,activeSnapPointIndex:S,onRelease:h,onDrag:y,snapPointsOffset:D}}function Fu(){const{direction:e,isOpen:t,shouldScaleBackground:n,setBackgroundColorOnScale:r,noBodyStyles:s}=Lt(),o=u.useRef(null),l=(0,u.useMemo)(()=>document.body.style.backgroundColor,[]);function c(){return(window.innerWidth-pr)/window.innerWidth}u.useEffect(()=>{if(t&&n){o.current&&clearTimeout(o.current);const i=document.querySelector("[data-vaul-drawer-wrapper]")||document.querySelector("[vaul-drawer-wrapper]");if(!i)return;r&&!s&&sr(document.body,{background:"black"}),sr(i,{transformOrigin:oe(e)?"top":"left",transitionProperty:"transform, border-radius",transitionDuration:`${re.DURATION}s`,transitionTimingFunction:`cubic-bezier(${re.EASE.join(",")})`});const f=sr(i,{borderRadius:`${us}px`,overflow:"hidden",...oe(e)?{transform:`scale(${c()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`}:{transform:`scale(${c()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`}});return()=>{f(),o.current=window.setTimeout(()=>{l?document.body.style.background=l:document.body.style.removeProperty("background")},re.DURATION*1e3)}}},[t,n,l])}var Gt=null;function Wu({isOpen:e,modal:t,nested:n,hasBeenOpened:r,preventScrollRestoration:s,noBodyStyles:o}){const[l,c]=u.useState(()=>typeof window<"u"?window.location.href:""),i=u.useRef(0),f=u.useCallback(()=>{if(ea()&&Gt===null&&e&&!o){Gt={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,height:document.body.style.height,right:"unset"};const{scrollX:m,innerHeight:p}=window;document.body.style.setProperty("position","fixed","important"),Object.assign(document.body.style,{top:`${-i.current}px`,left:`${-m}px`,right:"0px",height:"auto"}),window.setTimeout(()=>window.requestAnimationFrame(()=>{const g=p-window.innerHeight;g&&i.current>=p&&(document.body.style.top=`${-(i.current+g)}px`)}),300)}},[e]),d=u.useCallback(()=>{if(ea()&&Gt!==null&&!o){const m=-parseInt(document.body.style.top,10),p=-parseInt(document.body.style.left,10);Object.assign(document.body.style,Gt),window.requestAnimationFrame(()=>{if(s&&l!==window.location.href){c(window.location.href);return}window.scrollTo(p,m)}),Gt=null}},[l]);return u.useEffect(()=>{function m(){i.current=window.scrollY}return m(),window.addEventListener("scroll",m),()=>{window.removeEventListener("scroll",m)}},[]),u.useEffect(()=>{if(t)return()=>{typeof document>"u"||document.querySelector("[data-vaul-drawer]")||d()}},[t,d]),u.useEffect(()=>{n||!r||(e?(!window.matchMedia("(display-mode: standalone)").matches&&f(),t||window.setTimeout(()=>{d()},500)):d())},[e,r,l,t,n,f,d]),{restorePositionSetting:d}}function ms({open:e,onOpenChange:t,children:n,onDrag:r,onRelease:s,snapPoints:o,shouldScaleBackground:l=!1,setBackgroundColorOnScale:c=!0,closeThreshold:i=Ru,scrollLockTimeout:f=_u,dismissible:d=!0,handleOnly:m=!1,fadeFromIndex:p=o&&o.length-1,activeSnapPoint:g,setActiveSnapPoint:w,fixed:S,modal:v=!0,onClose:D,nested:C,noBodyStyles:x=!1,direction:h="bottom",defaultOpen:y=!1,disablePreventScroll:b=!0,snapToSequentialPoint:N=!1,preventScrollRestoration:j=!1,repositionInputs:k=!0,onAnimationEnd:O,container:T,autoFocus:M=!1}){var E,I;const[R=!1,_]=fs({defaultProp:y,prop:e,onChange:B=>{t?.(B),!B&&!C&&Bn(),setTimeout(()=>{O?.(B)},re.DURATION*1e3),B&&!v&&typeof window<"u"&&window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"}),B||(document.body.style.pointerEvents="auto")}}),[H,se]=u.useState(!1),[Z,V]=u.useState(!1),[de,Ge]=u.useState(!1),ge=u.useRef(null),Te=u.useRef(null),Ee=u.useRef(null),Qe=u.useRef(null),Oe=u.useRef(null),$=u.useRef(!1),Be=u.useRef(null),Ze=u.useRef(0),Xe=u.useRef(!1),mn=u.useRef(!y),hn=u.useRef(0),U=u.useRef(null),$t=u.useRef(((E=U.current)==null?void 0:E.getBoundingClientRect().height)||0),pn=u.useRef(((I=U.current)==null?void 0:I.getBoundingClientRect().width)||0),Kt=u.useRef(0),{activeSnapPoint:zn,activeSnapPointIndex:et,setActiveSnapPoint:gn,onRelease:Yn,snapPointsOffset:ct,onDrag:xn,shouldFade:wt,getPercentageDragged:Vt}=Pu({snapPoints:o,activeSnapPointProp:g,setActiveSnapPointProp:w,drawerRef:U,fadeFromIndex:p,overlayRef:ge,onSnapPointChange:u.useCallback(B=>{o&&B===ct.length-1&&(Te.current=new Date)},[]),direction:h,container:T,snapToSequentialPoint:N});Du({isDisabled:!R||Z||!v||de||!H||!k||!b});const{restorePositionSetting:Bn}=Wu({isOpen:R,modal:v,nested:C??!1,hasBeenOpened:H,preventScrollRestoration:j,noBodyStyles:x});function Ct(){return(window.innerWidth-pr)/window.innerWidth}function Ln(B){var X,A;!d&&!o||U.current&&!U.current.contains(B.target)||($t.current=((X=U.current)==null?void 0:X.getBoundingClientRect().height)||0,pn.current=((A=U.current)==null?void 0:A.getBoundingClientRect().width)||0,V(!0),Ee.current=new Date,ss()&&window.addEventListener("touchend",()=>$.current=!1,{once:!0}),B.target.setPointerCapture(B.pointerId),Ze.current=oe(h)?B.pageY:B.pageX)}function yn(B,X){var A;let F=B;const Y=(A=window.getSelection())==null?void 0:A.toString(),G=U.current?jn(U.current,h):null,K=new Date;if(F.tagName==="SELECT"||F.hasAttribute("data-vaul-no-drag")||F.closest("[data-vaul-no-drag]"))return!1;if(h==="right"||h==="left")return!0;if(Te.current&&K.getTime()-Te.current.getTime()<500)return!1;if(G!==null&&(h==="bottom"?G>0:G<0))return!0;if(Y&&Y.length>0)return!1;if(Oe.current&&K.getTime()-Oe.current.getTime()<f&&G===0||X)return Oe.current=K,!1;for(;F;){if(F.scrollHeight>F.clientHeight){if(F.scrollTop!==0)return Oe.current=new Date,!1;if(F.getAttribute("role")==="dialog")return!0}F=F.parentNode}return!0}function $n(B){if(U.current&&Z){const X=h==="bottom"||h==="right"?1:-1,A=(Ze.current-(oe(h)?B.pageY:B.pageX))*X,F=A>0,Y=o&&!d&&!F;if(Y&&et===0)return;const G=Math.abs(A),K=document.querySelector("[data-vaul-drawer-wrapper]");let ne=G/(h==="bottom"||h==="top"?$t.current:pn.current);const q=Vt(G,F);if(q!==null&&(ne=q),Y&&ne>=1||!$.current&&!yn(B.target,F))return;if(U.current.classList.add(or),$.current=!0,le(U.current,{transition:"none"}),le(ge.current,{transition:"none"}),o&&xn({draggedDistance:A}),F&&!o){const fe=Mu(A),Le=Math.min(fe*-1,0)*X;le(U.current,{transform:oe(h)?`translate3d(0, ${Le}px, 0)`:`translate3d(${Le}px, 0, 0)`});return}const St=1-ne;if((wt||p&&et===p-1)&&(r?.(B,ne),le(ge.current,{opacity:`${St}`,transition:"none"},!0)),K&&ge.current&&l){const fe=Math.min(Ct()+ne*(1-Ct()),1),Le=8-ne*8,jt=Math.max(0,14-ne*14);le(K,{borderRadius:`${Le}px`,transform:oe(h)?`scale(${fe}) translate3d(0, ${jt}px, 0)`:`scale(${fe}) translate3d(${jt}px, 0, 0)`,transition:"none"},!0)}if(!o){const fe=G*X;le(U.current,{transform:oe(h)?`translate3d(0, ${fe}px, 0)`:`translate3d(${fe}px, 0, 0)`})}}}u.useEffect(()=>{window.requestAnimationFrame(()=>{mn.current=!0})},[]),u.useEffect(()=>{var B;function X(){if(!U.current||!k)return;const A=document.activeElement;if(hr(A)||Xe.current){var F;const Y=((F=window.visualViewport)==null?void 0:F.height)||0,G=window.innerHeight;let K=G-Y;const ne=U.current.getBoundingClientRect().height||0,q=ne>G*.8;Kt.current||(Kt.current=ne);const St=U.current.getBoundingClientRect().top;if(Math.abs(hn.current-K)>60&&(Xe.current=!Xe.current),o&&o.length>0&&ct&&et){const fe=ct[et]||0;K+=fe}if(hn.current=K,ne>Y||Xe.current){const fe=U.current.getBoundingClientRect().height;let Le=fe;fe>Y&&(Le=Y-(q?St:pr)),S?U.current.style.height=`${fe-Math.max(K,0)}px`:U.current.style.height=`${Math.max(Le,Y-St)}px`}else yu()||(U.current.style.height=`${Kt.current}px`);o&&o.length>0&&!Xe.current?U.current.style.bottom="0px":U.current.style.bottom=`${Math.max(K,0)}px`}}return(B=window.visualViewport)==null||B.addEventListener("resize",X),()=>{var A;return(A=window.visualViewport)==null?void 0:A.removeEventListener("resize",X)}},[et,o,ct]);function ut(B){Kn(),D?.(),B||_(!1),setTimeout(()=>{o&&gn(o[0])},re.DURATION*1e3)}function vn(){if(!U.current)return;const B=document.querySelector("[data-vaul-drawer-wrapper]"),X=jn(U.current,h);le(U.current,{transform:"translate3d(0, 0, 0)",transition:`transform ${re.DURATION}s cubic-bezier(${re.EASE.join(",")})`}),le(ge.current,{transition:`opacity ${re.DURATION}s cubic-bezier(${re.EASE.join(",")})`,opacity:"1"}),l&&X&&X>0&&R&&le(B,{borderRadius:`${us}px`,overflow:"hidden",...oe(h)?{transform:`scale(${Ct()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`,transformOrigin:"top"}:{transform:`scale(${Ct()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`,transformOrigin:"left"},transitionProperty:"transform, border-radius",transitionDuration:`${re.DURATION}s`,transitionTimingFunction:`cubic-bezier(${re.EASE.join(",")})`},!0)}function Kn(){!Z||!U.current||(U.current.classList.remove(or),$.current=!1,V(!1),Qe.current=new Date)}function Vn(B){if(!Z||!U.current)return;U.current.classList.remove(or),$.current=!1,V(!1),Qe.current=new Date;const X=jn(U.current,h);if(!B||!yn(B.target,!1)||!X||Number.isNaN(X)||Ee.current===null)return;const A=Qe.current.getTime()-Ee.current.getTime(),F=Ze.current-(oe(h)?B.pageY:B.pageX),Y=Math.abs(F)/A;if(Y>.05&&(Ge(!0),setTimeout(()=>{Ge(!1)},200)),o){Yn({draggedDistance:F*(h==="bottom"||h==="right"?1:-1),closeDrawer:ut,velocity:Y,dismissible:d}),s?.(B,!0);return}if(h==="bottom"||h==="right"?F>0:F<0){vn(),s?.(B,!0);return}if(Y>cs){ut(),s?.(B,!1);return}var G;const K=Math.min((G=U.current.getBoundingClientRect().height)!=null?G:0,window.innerHeight);var ne;const q=Math.min((ne=U.current.getBoundingClientRect().width)!=null?ne:0,window.innerWidth);if(Math.abs(X)>=(h==="left"||h==="right"?q:K)*i){ut(),s?.(B,!1);return}s?.(B,!0),vn()}u.useEffect(()=>(R&&(le(document.documentElement,{scrollBehavior:"auto"}),Te.current=new Date),()=>{Ou(document.documentElement,"scrollBehavior")}),[R]);function Un(B){const X=B?(window.innerWidth-Dn)/window.innerWidth:1,A=B?-16:0;Be.current&&window.clearTimeout(Be.current),le(U.current,{transition:`transform ${re.DURATION}s cubic-bezier(${re.EASE.join(",")})`,transform:oe(h)?`scale(${X}) translate3d(0, ${A}px, 0)`:`scale(${X}) translate3d(${A}px, 0, 0)`}),!B&&U.current&&(Be.current=setTimeout(()=>{const F=jn(U.current,h);le(U.current,{transition:"none",transform:oe(h)?`translate3d(0, ${F}px, 0)`:`translate3d(${F}px, 0, 0)`})},500))}function Hn(B,X){if(X<0)return;const A=(window.innerWidth-Dn)/window.innerWidth,F=A+X*(1-A),Y=-16+X*Dn;le(U.current,{transform:oe(h)?`scale(${F}) translate3d(0, ${Y}px, 0)`:`scale(${F}) translate3d(${Y}px, 0, 0)`,transition:"none"})}function bn(B,X){const A=oe(h)?window.innerHeight:window.innerWidth,F=X?(A-Dn)/A:1,Y=X?-16:0;X&&le(U.current,{transition:`transform ${re.DURATION}s cubic-bezier(${re.EASE.join(",")})`,transform:oe(h)?`scale(${F}) translate3d(0, ${Y}px, 0)`:`scale(${F}) translate3d(${Y}px, 0, 0)`})}return u.useEffect(()=>{v||window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"})},[v]),u.createElement(xo,{defaultOpen:y,onOpenChange:B=>{!d&&!B||(B?se(!0):ut(!0),_(B))},open:R},u.createElement(as.Provider,{value:{activeSnapPoint:zn,snapPoints:o,setActiveSnapPoint:gn,drawerRef:U,overlayRef:ge,onOpenChange:t,onPress:Ln,onRelease:Vn,onDrag:$n,dismissible:d,shouldAnimate:mn,handleOnly:m,isOpen:R,isDragging:Z,shouldFade:wt,closeDrawer:ut,onNestedDrag:Hn,onNestedOpenChange:Un,onNestedRelease:bn,keyboardIsOpen:Xe,modal:v,snapPointsOffset:ct,activeSnapPointIndex:et,direction:h,shouldScaleBackground:l,setBackgroundColorOnScale:c,noBodyStyles:x,container:T,autoFocus:M}},n))}var hs=u.forwardRef(function({...e},t){const{overlayRef:n,snapPoints:r,onRelease:s,shouldFade:o,isOpen:l,modal:c,shouldAnimate:i}=Lt(),f=is(t,n),d=r&&r.length>0;if(!c)return null;const m=u.useCallback(p=>s(p),[s]);return u.createElement(fo,{onMouseUp:m,ref:f,"data-vaul-overlay":"","data-vaul-snap-points":l&&d?"true":"false","data-vaul-snap-points-overlay":l&&o?"true":"false","data-vaul-animate":i?.current?"true":"false",...e})});hs.displayName="Drawer.Overlay";var ps=u.forwardRef(function({onPointerDownOutside:e,style:t,onOpenAutoFocus:n,...r},s){const{drawerRef:o,onPress:l,onRelease:c,onDrag:i,keyboardIsOpen:f,snapPointsOffset:d,activeSnapPointIndex:m,modal:p,isOpen:g,direction:w,snapPoints:S,container:v,handleOnly:D,shouldAnimate:C,autoFocus:x}=Lt(),[h,y]=u.useState(!1),b=is(s,o),N=u.useRef(null),j=u.useRef(null),k=u.useRef(!1),O=S&&S.length>0;Fu();const T=(E,I,R=0)=>{if(k.current)return!0;const _=Math.abs(E.y),H=Math.abs(E.x),se=H>_,Z=["bottom","right"].includes(I)?1:-1;if(I==="left"||I==="right"){if(!(E.x*Z<0)&&H>=0&&H<=R)return se}else if(!(E.y*Z<0)&&_>=0&&_<=R)return!se;return k.current=!0,!0};u.useEffect(()=>{O&&window.requestAnimationFrame(()=>{y(!0)})},[]);function M(E){N.current=null,k.current=!1,c(E)}return u.createElement(ho,{"data-vaul-drawer-direction":w,"data-vaul-drawer":"","data-vaul-delayed-snap-points":h?"true":"false","data-vaul-snap-points":g&&O?"true":"false","data-vaul-custom-container":v?"true":"false","data-vaul-animate":C?.current?"true":"false",...r,ref:b,style:d&&d.length>0?{"--snap-point-height":`${d[m??0]}px`,...t}:t,onPointerDown:E=>{D||(r.onPointerDown==null||r.onPointerDown.call(r,E),N.current={x:E.pageX,y:E.pageY},l(E))},onOpenAutoFocus:E=>{n?.(E),x||E.preventDefault()},onPointerDownOutside:E=>{if(e?.(E),!p||E.defaultPrevented){E.preventDefault();return}f.current&&(f.current=!1)},onFocusOutside:E=>{if(!p){E.preventDefault();return}},onPointerMove:E=>{if(j.current=E,D||(r.onPointerMove==null||r.onPointerMove.call(r,E),!N.current))return;const I=E.pageY-N.current.y,R=E.pageX-N.current.x,_=E.pointerType==="touch"?10:2;T({x:R,y:I},w,_)?i(E):(Math.abs(R)>_||Math.abs(I)>_)&&(N.current=null)},onPointerUp:E=>{r.onPointerUp==null||r.onPointerUp.call(r,E),N.current=null,k.current=!1,c(E)},onPointerOut:E=>{r.onPointerOut==null||r.onPointerOut.call(r,E),M(j.current)},onContextMenu:E=>{r.onContextMenu==null||r.onContextMenu.call(r,E),j.current&&M(j.current)}})});ps.displayName="Drawer.Content";var Iu=250,zu=120,gs=u.forwardRef(function({preventCycle:e=!1,children:t,...n},r){const{closeDrawer:s,isDragging:o,snapPoints:l,activeSnapPoint:c,setActiveSnapPoint:i,dismissible:f,handleOnly:d,isOpen:m,onPress:p,onDrag:g}=Lt(),w=u.useRef(null),S=u.useRef(!1);function v(){if(S.current){x();return}window.setTimeout(()=>{D()},zu)}function D(){if(o||e||S.current){x();return}if(x(),!l||l.length===0){f||s();return}if(c===l[l.length-1]&&f){s();return}const h=l.findIndex(b=>b===c);if(h===-1)return;const y=l[h+1];i(y)}function C(){w.current=window.setTimeout(()=>{S.current=!0},Iu)}function x(){w.current&&window.clearTimeout(w.current),S.current=!1}return u.createElement("div",{onClick:v,onPointerCancel:x,onPointerDown:h=>{d&&p(h),C()},onPointerMove:h=>{d&&g(h)},ref:r,"data-vaul-drawer-visible":m?"true":"false","data-vaul-handle":"","aria-hidden":"true",...n},u.createElement("span",{"data-vaul-handle-hitarea":"","aria-hidden":"true"},t))});gs.displayName="Drawer.Handle";function Yu({onDrag:e,onOpenChange:t,open:n,...r}){const{onNestedDrag:s,onNestedOpenChange:o,onNestedRelease:l}=Lt();if(!s)throw new Error("Drawer.NestedRoot must be placed in another drawer");return u.createElement(ms,{nested:!0,open:n,onClose:()=>{o(!1)},onDrag:(c,i)=>{s(c,i),e?.(c,i)},onOpenChange:c=>{c&&o(c),t?.(c)},onRelease:l,...r})}function Bu(e){const t=Lt(),{container:n=t.container,...r}=e;return u.createElement(co,{container:n,...r})}var fn={Root:ms,NestedRoot:Yu,Content:ps,Overlay:hs,Trigger:uo,Portal:Bu,Handle:gs,Close:vo,Title:mo,Description:yo};function Lu({...e}){return(0,a.jsx)(fn.Root,{"data-slot":"drawer",...e})}function $u({...e}){return(0,a.jsx)(fn.Portal,{"data-slot":"drawer-portal",...e})}function Ku({className:e,...t}){return(0,a.jsx)(fn.Overlay,{"data-slot":"drawer-overlay",className:z("fixed inset-0 z-50 bg-black/80 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...t})}function Vu({className:e,children:t,...n}){return(0,a.jsxs)($u,{"data-slot":"drawer-portal",children:[(0,a.jsx)(Ku,{}),(0,a.jsx)(fn.Content,{"data-slot":"drawer-content",className:z("group/drawer-content fixed z-50 flex h-auto flex-col bg-transparent p-2 text-xs/relaxed text-popover-foreground before:absolute before:inset-2 before:-z-10 before:rounded-xl before:border before:border-border before:bg-popover data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[80vh] data-[vaul-drawer-direction=left]:inset-y-0 data-[vaul-drawer-direction=left]:left-0 data-[vaul-drawer-direction=left]:w-3/4 data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[80vh] data-[vaul-drawer-direction=left]:sm:max-w-sm data-[vaul-drawer-direction=right]:sm:max-w-sm",e),...n,children:(0,a.jsx)(Mo.Provider,{value:!0,children:t})})]})}function Uu({className:e,...t}){return(0,a.jsx)("div",{"data-slot":"drawer-header",className:z("flex flex-col gap-1 p-4 group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center group-data-[vaul-drawer-direction=top]/drawer-content:text-center md:text-left",e),...t})}function Hu({className:e,...t}){return(0,a.jsx)(fn.Title,{"data-slot":"drawer-title",className:z("text-sm font-medium text-foreground",e),...t})}var xs=["shift","alt","meta","mod","ctrl","control"];function qu(){return typeof navigator>"u"?!1:/mac/i.test(navigator.userAgent)&&!/iphone|ipad|ipod/i.test(navigator.userAgent)}var Ju={esc:"escape",return:"enter",left:"arrowleft",right:"arrowright",up:"arrowup",down:"arrowdown",ShiftLeft:"shift",ShiftRight:"shift",AltLeft:"alt",AltRight:"alt",MetaLeft:"meta",MetaRight:"meta",OSLeft:"meta",OSRight:"meta",ControlLeft:"ctrl",ControlRight:"ctrl"};function st(e){return(Ju[e.trim()]||e.trim()).toLowerCase().replace(/key|digit|numpad/,"")}function ys(e){return xs.includes(e)}function ir(e,t=","){return e.toLowerCase().split(t)}function lr(e,t="+",n=">",r=!1,s,o){let l=[],c=!1;e=e.trim(),e.includes(n)?(c=!0,l=e.toLocaleLowerCase().split(n).map(d=>st(d))):l=e.toLocaleLowerCase().split(t).map(d=>st(d));const i={alt:l.includes("alt"),ctrl:l.includes("ctrl")||l.includes("control"),shift:l.includes("shift"),meta:l.includes("meta"),mod:l.includes("mod"),useKey:r},f=l.filter(d=>!xs.includes(d));return{...i,keys:f,description:s,isSequence:c,hotkey:e,metadata:o}}typeof document<"u"&&(document.addEventListener("keydown",e=>{e.code!==void 0&&vs([st(e.code)])}),document.addEventListener("keyup",e=>{e.code!==void 0&&bs([st(e.code)])})),typeof window<"u"&&(window.addEventListener("blur",()=>{ke.clear()}),window.addEventListener("focus",()=>{ke.clear()}),window.addEventListener("contextmenu",()=>{setTimeout(()=>{ke.clear()},0)})),typeof document<"u"&&document.addEventListener("visibilitychange",()=>{ke.clear()});var ke=new Set;function Ar(e){return Array.isArray(e)}function Gu(e,t=","){return(Ar(e)?e:e.split(t)).every(n=>ke.has(n.trim().toLowerCase()))}function vs(e){const t=Array.isArray(e)?e:[e];ke.has("meta")&&ke.forEach(n=>{ys(n)||ke.delete(n.toLowerCase())}),t.forEach(n=>{ke.add(n.toLowerCase())})}function bs(e){e==="meta"?ke.clear():(Array.isArray(e)?e:[e]).forEach(t=>{ke.delete(t.toLowerCase())})}function Qu(e,t,n){(typeof n=="function"&&n(e,t)||n===!0)&&e.preventDefault()}function Zu(e,t,n){return typeof n=="function"?n(e,t):n===!0||n===void 0}var Xu=["input","textarea","select","searchbox","slider","spinbutton","menuitem","menuitemcheckbox","menuitemradio","option","radio","textbox"];function ed(e){return ws(e,Xu)}function ws(e,t=!1){const{target:n,composed:r}=e;let s,o;return td(n)&&r?(s=e.composedPath()[0]&&e.composedPath()[0].tagName,o=e.composedPath()[0]&&e.composedPath()[0].role):(s=n&&n.tagName,o=n&&n.role),Ar(t)?!!(s&&t?.some(l=>l.toLowerCase()===s.toLowerCase()||l===o)):!!(s&&t&&t)}function td(e){return!!e.tagName&&!e.tagName.startsWith("-")&&e.tagName.includes("-")}function nd(e,t){return e.length===0&&t?!1:t?e.some(n=>t.includes(n))||e.includes("*"):!0}var rd=(e,t,n=!1)=>{const{alt:r,meta:s,mod:o,shift:l,ctrl:c,keys:i,useKey:f}=t,{code:d,key:m,ctrlKey:p,metaKey:g,shiftKey:w,altKey:S}=e,v=st(d);if(f&&i?.length===1&&i.includes(m.toLowerCase()))return!0;if(!i?.includes(v)&&!["ctrl","control","unknown","meta","alt","shift","os"].includes(v))return!1;if(!n){if(r!==S&&v!=="alt"||l!==w&&v!=="shift")return!1;if(o){if(qu()?!g:!p)return!1}else if(s!==g&&v!=="meta"&&v!=="os"||c!==p&&v!=="ctrl"&&v!=="control")return!1}return i&&i.length===1&&i.includes(v)?!0:i&&i.length>0?i.includes(v)?Gu(i):!1:!i||i.length===0},ad=(0,u.createContext)(void 0),sd=()=>(0,u.useContext)(ad);function Cs(e,t){return e&&t&&typeof e=="object"&&typeof t=="object"?Object.keys(e).length===Object.keys(t).length&&Object.keys(e).reduce((n,r)=>n&&Cs(e[r],t[r]),!0):e===t}var od=(0,u.createContext)({hotkeys:[],activeScopes:[],toggleScope:()=>{},enableScope:()=>{},disableScope:()=>{}}),id=()=>(0,u.useContext)(od);function ld(e){const t=(0,u.useRef)(void 0);return Cs(t.current,e)||(t.current=e),t.current}var cd=e=>{e.stopPropagation(),e.preventDefault(),e.stopImmediatePropagation()},ud=typeof window<"u"?u.useLayoutEffect:u.useEffect;function dd(e){if(!e)return;const{enabled:t,preventDefault:n,ignoreEventWhen:r,...s}=e;return s}function vt(e,t,n,r){const[s,o]=(0,u.useState)(null),l=(0,u.useCallback)(x=>(o(x),()=>o(null)),[]),c=(0,u.useRef)(!1),i=Array.isArray(n)?Array.isArray(r)?void 0:r:n,f=Ar(e)?e.join(i?.delimiter):e,d=Array.isArray(n)?n:Array.isArray(r)?r:void 0,m=(0,u.useCallback)(t,d??[]),p=(0,u.useRef)(m);d?p.current=m:p.current=t;const g=ld(dd(i)),w=(0,u.useRef)(i?.enabled);w.current=i?.enabled;const S=(0,u.useRef)(i?.preventDefault);S.current=i?.preventDefault;const v=(0,u.useRef)(i?.ignoreEventWhen);v.current=i?.ignoreEventWhen;const{activeScopes:D}=id(),C=sd();return ud(()=>{if(w.current===!1||!nd(D,g?.scopes))return;let x=[],h;const y=(k,O=!1)=>{if(!(ed(k)&&!ws(k,g?.enableOnFormTags))){if(s!==null){const T=s.getRootNode();if((T instanceof Document||T instanceof ShadowRoot)&&T.activeElement!==s&&!s.contains(T.activeElement)){cd(k);return}}k.target?.isContentEditable&&!g?.enableOnContentEditable||ir(f,g?.delimiter).forEach(T=>{if(T.includes(g?.splitKey??"+")&&T.includes(g?.sequenceSplitKey??">")){console.warn(`Hotkey ${T} contains both ${g?.splitKey??"+"} and ${g?.sequenceSplitKey??">"} which is not supported.`);return}const M=lr(T,g?.splitKey,g?.sequenceSplitKey,g?.useKey,g?.description,g?.metadata);if(M.isSequence){h=setTimeout(()=>{x=[]},g?.sequenceTimeoutMs??1e3);const E=M.useKey?k.key:st(k.code);if(ys(E.toLowerCase()))return;if(x.push(E),E!==M.keys?.[x.length-1]){x=[],h&&clearTimeout(h);return}x.length===M.keys?.length&&(p.current(k,M),h&&clearTimeout(h),x=[])}else if(rd(k,M,g?.ignoreModifiers)||M.keys?.includes("*")){if(v.current?.(k)||O&&c.current||(Qu(k,M,S.current),!Zu(k,M,w.current)))return;p.current(k,M),O||(c.current=!0)}})}},b=k=>{k.code!==void 0&&(vs(st(k.code)),(g?.keydown===void 0&&g?.keyup!==!0||g?.keydown)&&y(k))},N=k=>{k.code!==void 0&&(bs(st(k.code)),c.current=!1,g?.keyup&&y(k,!0))},j=s||i?.document||document;return j.addEventListener("keyup",N,i?.eventListenerOptions),j.addEventListener("keydown",b,i?.eventListenerOptions),C&&ir(f,g?.delimiter).forEach(k=>{C.addHotkey(lr(k,g?.splitKey,g?.sequenceSplitKey,g?.useKey,g?.description,g?.metadata))}),()=>{j.removeEventListener("keyup",N,i?.eventListenerOptions),j.removeEventListener("keydown",b,i?.eventListenerOptions),C&&ir(f,g?.delimiter).forEach(k=>{C.removeHotkey(lr(k,g?.splitKey,g?.sequenceSplitKey,g?.useKey,g?.description,g?.metadata))}),x=[],h&&clearTimeout(h)}},[s,g,D,f]),l}var fd=({referencedTable:e,referencedColumn:t,fkValue:n})=>{const{selectedDatabase:r}=pe(),s=ce(),{tableCols:o}=Ce({tableName:e,schemaName:s}),l=(0,u.useMemo)(()=>({columnName:t,operator:"=",value:n}),[t,n]),{data:c,isLoading:i}=yr({queryKey:["fk-drawer",e,t,n,r],queryFn:async()=>(await Po.get(`/tables/${e}/data`,{params:{db:r??"",limit:"50",filters:JSON.stringify([l])}})).data.data,enabled:!!e&&!!r&&n!==""}),f=(0,u.useMemo)(()=>o?.map(p=>({accessorKey:p.columnName,header:p.columnName,meta:{variant:p.enumValues?"enum":p.dataType,isPrimaryKey:p.isPrimaryKey,isForeignKey:p.isForeignKey,referencedTable:p.referencedTable,referencedColumn:p.referencedColumn,enumValues:p.enumValues,dataTypeLabel:p.dataTypeLabel},size:(p.columnName.length+(p.dataTypeLabel?.length||0))*5+100,minSize:100,maxSize:500}))??[],[o]),d=Ks(),m=()=>{d({to:"/table/$table",params:{table:e},search:{filters:[l],[L.TABLE_SCHEMA]:s}})};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(Uu,{className:"flex flex-row items-center justify-between py-3",children:[(0,a.jsx)(Hu,{children:e}),(0,a.jsxs)(W,{variant:"outline",size:"sm",onClick:m,children:[(0,a.jsx)(to,{size:14}),"Open table"]})]}),(0,a.jsx)("div",{className:"flex flex-1 overflow-hidden border-t",children:i?(0,a.jsx)("div",{className:"flex items-center justify-center w-full text-sm text-muted-foreground",children:(0,a.jsx)(br,{})}):(0,a.jsx)(Do,{columns:f,data:c?.data??[],renderCellAccessory:p=>(0,a.jsx)(Ca,{value:p})})})]})};function lt({table:e,cell:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l,className:c,onClick:i,onKeyDown:f,...d}){const{getUpdate:m}=Se(),p=e.options.meta,g=t.row.original,w=!!m(g,r,e.options.meta?.editScope),S=(0,u.useCallback)(j=>{s||(j.preventDefault(),i?.(j),p?.onCellClick?.(n,r,j))},[p,n,r,s,i]),v=(0,u.useCallback)(j=>{s||p?.onCellContextMenu?.(n,r,j)},[p,n,r,s]),D=(0,u.useCallback)(j=>{s||p?.onCellMouseDown?.(n,r,j)},[p,n,r,s]),C=(0,u.useCallback)(j=>{s||p?.onCellMouseEnter?.(n,r,j)},[p,n,r,s]),x=(0,u.useCallback)(()=>{s||p?.onCellMouseUp?.()},[p,s]),h=(0,u.useCallback)(j=>{s||(j.preventDefault(),p?.onCellDoubleClick?.(n,r))},[p,n,r,s]),y=(0,u.useCallback)(j=>{if(f?.(j),!j.defaultPrevented&&!(j.key==="ArrowUp"||j.key==="ArrowDown"||j.key==="ArrowLeft"||j.key==="ArrowRight"||j.key==="Home"||j.key==="End"||j.key==="PageUp"||j.key==="PageDown"||j.key==="Tab")&&o&&!s){if(j.key==="F2"||j.key==="Enter"){j.preventDefault(),j.stopPropagation(),p?.onCellEditingStart?.(n,r);return}if(j.key===" "){j.preventDefault(),j.stopPropagation(),p?.onCellEditingStart?.(n,r);return}j.key.length===1&&!j.ctrlKey&&!j.metaKey&&(j.preventDefault(),j.stopPropagation(),p?.onCellEditingStart?.(n,r))}},[f,o,s,p,n,r]),{highlightedCellKeys:b}=Ue(),N=b.has(`${t.row.id}:${r}`);return(0,a.jsx)("div",{role:"button","data-slot":"grid-cell-wrapper","data-editing":s?"":void 0,"data-focused":o?"":void 0,"data-selected":l?"":void 0,"data-has-update":w?"":void 0,tabIndex:o&&!s?0:-1,className:z("size-full px-2 py-1.5 text-left text-sm outline-none has-data-[slot=checkbox]:pt-2.5","**:data-[slot=grid-cell-content]:line-clamp-1",{"ring-1 ring-ring ring-inset":o,"bg-primary/10":l&&!s,"cursor-default":!s,"ring-2 ring-primary":w,"bg-emerald-500/20 dark:bg-emerald-500/25 transition-colors duration-1000 ease-in-out":N},c),onClick:S,onContextMenu:v,onDoubleClick:h,onMouseDown:D,onMouseEnter:C,onMouseUp:x,onKeyDown:y,...d})}var md=(0,u.lazy)(()=>ja(()=>import("./json-editor-ByvySVR1.js").then(e=>({default:e.JsonEditor})),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]))),Pr=({active:e,open:t,onOpenChange:n,anchor:r,children:s})=>{const[o,l]=(0,u.useState)(e);return e&&!o&&l(!0),o?(0,a.jsxs)(Yt,{open:t,onOpenChange:n,children:[(0,a.jsx)(Lo,{asChild:!0,children:r}),s]}):r},kn=(0,u.memo)(({cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l})=>{const{setUpdate:c,clearUpdate:i,getUpdate:f}=Se(),d=e.getValue(),m=qe(d),[p,g]=(0,u.useState)(()=>m??""),[w,S]=(0,u.useState)(!1),v=(0,u.useRef)(null),D=(0,u.useRef)(null),C=t.options.meta,x=e.row.original,h=r,y=f(x,h,t.options.meta?.editScope),b=y?qe(y.newValue):m??"",N=(0,u.useCallback)(()=>{c(x,h,p,d,t.options.meta?.editScope),C?.onCellEditingStop?.(),S(!1)},[C,p,d,m,h,x,c]),j=(0,u.useCallback)(()=>{g(m??""),i(x,h,t.options.meta?.editScope),C?.onCellEditingStop?.(),S(!1)},[C,m,h,x,i,p]),k=(0,u.useCallback)(R=>{const _=R.target.value;g(_)},[h,p,m]),O=(0,u.useCallback)(R=>{S(R),R||(p!==m&&c(x,h,p,m,t.options.meta?.editScope),C?.onCellEditingStop?.())},[C,p,m,h,x,c]),T=(0,u.useCallback)(R=>{if(R.preventDefault(),v.current){v.current.focus();const _=v.current.value.length;v.current.setSelectionRange(_,_)}},[]),M=(0,u.useCallback)(R=>{s&&!w&&(R.key==="Escape"?(R.preventDefault(),C?.onCellEditingStop?.()):R.key==="Tab"&&(R.preventDefault(),C?.onCellEditingStop?.({direction:R.shiftKey?"left":"right"})))},[s,w,C]),E=(0,u.useCallback)(R=>{R.key==="Escape"?(R.preventDefault(),j()):R.key==="Enter"&&(R.ctrlKey||R.metaKey)&&(R.preventDefault(),N()),R.stopPropagation()},[j,N,p,m]),I=(0,u.useCallback)(()=>{p!==m&&c(x,h,p,m,t.options.meta?.editScope),C?.onCellEditingStop?.(),S(!1)},[C,p,m,h,x,c]);return(0,u.useEffect)(()=>{s&&!w?(g(b),S(!0)):!s&&w&&S(!1)},[s,w,b]),(0,u.useEffect)(()=>{o&&!s&&!C?.isScrolling&&D.current&&D.current.focus()},[o,s,C?.isScrolling]),vt("enter",()=>N(),{enabled:w}),vt("esc",()=>j(),{enabled:w}),(0,a.jsx)(Pr,{active:w||s,open:w,onOpenChange:O,anchor:(0,a.jsx)(lt,{ref:D,cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l,onKeyDown:M,children:(0,a.jsx)("span",{"data-slot":"grid-cell-content",children:b})}),children:(0,a.jsxs)(it,{"data-grid-cell-editor":"",align:"start",side:"bottom",sideOffset:0,className:"w-[400px] rounded-none p-0 gap-0",onOpenAutoFocus:T,children:[(0,a.jsx)(He,{ref:v,value:p,onChange:k,onKeyDown:E,onBlur:I,className:"min-h-[150px] resize-none rounded-none border-0 shadow-none focus-visible:ring-0",placeholder:"Enter text..."}),(0,a.jsxs)("div",{className:"flex flex-col border-t",children:[(0,a.jsxs)(W,{variant:"ghost",size:"sm",className:"rounded-none justify-start text-xs py-4 px-2",children:[(0,a.jsx)(Ne,{className:"text-xs font-normal",children:"⌘↵"}),(0,a.jsx)("span",{className:"ml-1 text-xs",children:"Save Changes"})]}),(0,a.jsxs)(W,{variant:"ghost",size:"sm",className:"rounded-none justify-start text-xs py-4 px-2",children:[(0,a.jsx)(Ne,{className:"text-xs font-normal",children:"esc"}),(0,a.jsx)("span",{className:"ml-1 text-xs",children:"Cancel Changes"})]})]})]})})});kn.displayName="TableTextCell";var Ss=(0,u.memo)(({cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l})=>{const{setUpdate:c,clearUpdate:i,getUpdate:f}=Se(),d=e.getValue(),m=t.options.meta,p=e.row.original,g=r,w=f(p,g,m?.editScope),S=w?w.newValue:d,[v,D]=(0,u.useState)(S),[C,x]=(0,u.useState)(!1),h=(0,u.useRef)(null);s!==C&&(s&&D(S),x(s));const y=(0,u.useCallback)(()=>{c(p,g,v,d,t.options.meta?.editScope),x(!1),m?.onCellEditingStop?.()},[m,v,d,g,p,c]),b=(0,u.useCallback)(()=>{D(d),i(p,g,t.options.meta?.editScope),x(!1),m?.onCellEditingStop?.()},[m,d,g,p,i,v]),N=(0,u.useCallback)(T=>{const M=T.target.value;D(Number(M)),c(p,g,Number(M),d,t.options.meta?.editScope)},[g,v,d,p,c]),j=(0,u.useCallback)(T=>{T.key==="Escape"?(T.preventDefault(),b()):T.key==="Enter"&&(T.ctrlKey||T.metaKey)&&(T.preventDefault(),y()),T.stopPropagation()},[b,y,v,d]),k=(0,u.useCallback)(()=>{v!==d&&c(p,g,v,d,t.options.meta?.editScope),x(!1),m?.onCellEditingStop?.()},[m,v,d,g,p,c]),O=(0,u.useCallback)(T=>{if(!T)return;T.focus();const M=T.value;T.value="",T.value=M},[]);return(0,u.useEffect)(()=>{o&&!s&&!m?.isScrolling&&h.current&&h.current.focus()},[o,s,m?.isScrolling]),vt("enter",()=>y(),{enabled:C}),vt("esc",()=>b(),{enabled:C}),(0,a.jsx)(lt,{ref:h,cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l,children:C?(0,a.jsx)(ve,{type:"number",variant:"outline",ref:O,value:v??"",onChange:T=>N(T),onKeyDown:T=>j(T),onBlur:k,className:"size-full rounded-none border-none p-0 shadow-none hover:bg-transparent! focus-visible:ring-0 bg-transparent [appearance:textfield] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none"}):(0,a.jsx)("span",{"data-slot":"grid-cell-content",children:qe(S)})})});Ss.displayName="TableNumberCell";var js=(0,u.memo)(({cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l})=>{const{setUpdate:c,clearUpdate:i,getUpdate:f}=Se(),d=e.getValue(),[m,p]=(0,u.useState)(!1),g=(0,u.useRef)(null),w=(0,u.useRef)(null),S=(0,u.useRef)(s),v=t.options.meta;(0,u.useEffect)(()=>{S.current=s},[s]);const D=e.row.original,C=r,x=f(D,C,t.options.meta?.editScope),h=x?x.newValue:d,y=(0,u.useMemo)(()=>h==null?"null":h?"true":"false",[h]),b=(0,u.useCallback)(O=>{let T;O==="null"?T=null:T=O==="true",c(D,C,T,d,t.options.meta?.editScope),p(!1),v?.onCellEditingStop?.()},[C,D,d,c,v]),N=(0,u.useCallback)(()=>{i(D,C,t.options.meta?.editScope),p(!1),v?.onCellEditingStop?.()},[D,C,i,v]),j=(0,u.useCallback)(O=>{p(O),!O&&s&&v?.onCellEditingStop?.()},[s,v]),k=(0,u.useCallback)(O=>{s&&!m&&(O.key==="Escape"?(O.preventDefault(),N()):O.key==="Tab"&&(O.preventDefault(),N(),v?.onCellEditingStop?.({direction:O.shiftKey?"left":"right"})))},[s,m,v,N]);return(0,u.useEffect)(()=>{if(s){const O=setTimeout(()=>{S.current&&(p(!0),setTimeout(()=>{S.current&&w.current?.click()},0))},0);return()=>{clearTimeout(O),p(!1)}}},[s]),(0,u.useEffect)(()=>{o&&!s&&!v?.isScrolling&&g.current&&g.current.focus()},[o,s,v?.isScrolling]),(0,a.jsx)(lt,{ref:g,cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l,onKeyDown:k,className:"p-0!",children:s?(0,a.jsxs)(Ie,{value:y,onValueChange:b,open:m,onOpenChange:j,children:[(0,a.jsx)(Fe,{ref:w,variant:"outline",className:"size-full px-2 py-1.5 rounded-none border-none p-0 shadow-none hover:bg-transparent! focus-visible:ring-0 bg-transparent [&_svg]:hidden",children:(0,a.jsx)(Pe,{})}),(0,a.jsxs)(We,{"data-grid-cell-editor":"",alignOffset:-8,sideOffset:-8,className:"min-w-[calc(var(--radix-select-trigger-width)+16px)]",onEscapeKeyDown:N,onPointerDownOutside:O=>{O.preventDefault(),p(!1),v?.onCellEditingStop?.()},children:[(0,a.jsx)(Q,{value:"true",children:"true"}),(0,a.jsx)(Q,{value:"false",children:"false"}),(0,a.jsx)(Q,{value:"null",children:"NULL"})]})]}):(0,a.jsx)("span",{className:"flex items-center size-full px-2 py-1.5",children:h==null?"NULL":h?"true":"false"})})});js.displayName="TableBooleanCell";var Ds=(0,u.memo)(({cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l})=>{const{setUpdate:c,clearUpdate:i,getUpdate:f}=Se(),d=e.getValue(),[m,p]=(0,u.useState)(!1),g=(0,u.useRef)(null),w=(0,u.useRef)(null),S=(0,u.useRef)(s),v=t.options.meta,D=e.column.columnDef.meta?.enumValues;(0,u.useEffect)(()=>{S.current=s},[s]);const C=e.row.original,x=r,h=f(C,x,t.options.meta?.editScope),y=h?h.newValue:d,b=(0,u.useCallback)(O=>{c(C,x,O==="null"?null:O,d,t.options.meta?.editScope),p(!1),v?.onCellEditingStop?.()},[x,C,d,c,v]),N=(0,u.useCallback)(()=>{i(C,x,t.options.meta?.editScope),p(!1),v?.onCellEditingStop?.()},[C,x,i,v]),j=(0,u.useCallback)(O=>{p(O),!O&&s&&v?.onCellEditingStop?.()},[s,v]),k=(0,u.useCallback)(O=>{s&&!m&&(O.key==="Escape"?(O.preventDefault(),N()):O.key==="Tab"&&(O.preventDefault(),N(),v?.onCellEditingStop?.({direction:O.shiftKey?"left":"right"})))},[s,m,v,N]);return(0,u.useEffect)(()=>{if(s){const O=setTimeout(()=>{S.current&&(p(!0),setTimeout(()=>{S.current&&w.current?.click()},0))},0);return()=>{clearTimeout(O),p(!1)}}},[s]),(0,u.useEffect)(()=>{o&&!s&&!v?.isScrolling&&g.current&&g.current.focus()},[o,s,v?.isScrolling]),(0,a.jsx)(lt,{ref:g,cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l,onKeyDown:k,className:"p-0!",children:s?(0,a.jsxs)(Ie,{value:y===null?"null":y,onValueChange:b,open:m,onOpenChange:j,children:[(0,a.jsx)(Fe,{ref:w,variant:"outline",className:"size-full px-2 py-1.5 rounded-none border-none p-0 shadow-none hover:bg-transparent! focus-visible:ring-0 bg-transparent [&_svg]:hidden",children:(0,a.jsx)(Pe,{})}),(0,a.jsxs)(We,{"data-grid-cell-editor":"",alignOffset:-8,sideOffset:-8,className:"min-w-[calc(var(--radix-select-trigger-width)+16px)]",onEscapeKeyDown:N,onPointerDownOutside:O=>{O.preventDefault(),p(!1),v?.onCellEditingStop?.()},children:[D?.map(O=>(0,a.jsx)(Q,{value:O,children:O},O)),(0,a.jsx)(Q,{value:"null",children:"NULL"})]})]}):(0,a.jsx)("span",{className:"flex items-center size-full px-2 py-1.5 truncate",children:y??"NULL"})})});Ds.displayName="TableEnumCell";var ks=(0,u.memo)(({cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l})=>{const{setUpdate:c,clearUpdate:i,getUpdate:f}=Se(),d=e.getValue(),m=(0,u.useRef)(null),p=t.options.meta,g=e.row.original,w=r,S=f(g,w,t.options.meta?.editScope),v=S?S.newValue:d,D=(0,u.useCallback)(b=>{const N=b?b.toISOString():null;c(g,w,N,d,t.options.meta?.editScope),p?.onCellEditingStop?.()},[w,d,g,c,p]),C=(0,u.useCallback)(()=>{i(g,w,t.options.meta?.editScope),p?.onCellEditingStop?.()},[g,w,i,p,v,d]),x=(0,u.useCallback)(b=>{s&&(b.key==="Escape"||b.key==="Tab")&&(b.preventDefault(),C())},[s,C]),h=(0,u.useCallback)(b=>{b||p?.onCellEditingStop?.()},[p]);(0,u.useEffect)(()=>{o&&!s&&!p?.isScrolling&&m.current&&m.current.focus()},[o,s,p?.isScrolling]);const y=v?new Date(v):void 0;return(0,a.jsx)(lt,{ref:m,cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l,onKeyDown:x,className:s?"p-0!":void 0,children:s?(0,a.jsx)(mt,{isFormatted:!1,icon:!1,value:y,onChange:D,open:!0,onOpenChange:h,placeholder:"Pick a date",className:"size-full px-2! py-1.5! rounded-none border-none p-0 text-sm shadow-none hover:bg-transparent! focus-visible:ring-0 bg-transparent dark:bg-transparent! [&_svg]:hidden"}):(0,a.jsx)("span",{"data-slot":"grid-cell-content",className:z(!y&&"text-muted-foreground"),children:y&&!Number.isNaN(y.getTime())?_e(y,"yyyy-MM-dd"):"Pick a date"})})});ks.displayName="TableDateCell";var Ns=(0,u.memo)(({cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l})=>{const{setUpdate:c,clearUpdate:i,getUpdate:f}=Se(),{editor:d}=Ho(),m=e.getValue();let p;if(typeof m=="string")try{p=JSON.parse(m),console.warn(`TableJsonCell ${r}: initialValue was a string, parsed it to object`,p)}catch(R){console.error(`TableJsonCell ${r}: Failed to parse initialValue string`,m,R),p={}}else p=m;const[g,w]=(0,u.useState)(()=>JSON.stringify(p,null,d.tabSize)??""),[S,v]=(0,u.useState)(!1),D=(0,u.useRef)(null),C=t.options.meta,x=e.row.original,h=r,y=f(x,h,t.options.meta?.editScope),b=y?y.newValue:p,N=JSON.stringify(b),j=(0,u.useMemo)(()=>{try{return JSON.parse(g),null}catch(R){return R instanceof Error?R.message:"Invalid JSON"}},[g]),k=(0,u.useCallback)(()=>{let R;try{R=JSON.parse(g)}catch{return!1}return JSON.stringify(R)===JSON.stringify(p)?i(x,h,t.options.meta?.editScope):c(x,h,R,p,t.options.meta?.editScope),!0},[g,p,h,x,c,i]),O=(0,u.useCallback)(()=>{k()&&(C?.onCellEditingStop?.(),v(!1))},[k,C]),T=(0,u.useCallback)(()=>{w(JSON.stringify(p,null,d.tabSize)??""),i(x,h,t.options.meta?.editScope),C?.onCellEditingStop?.(),v(!1)},[C,p,h,x,i,d.tabSize]),M=(0,u.useCallback)(R=>{v(R),R||(k(),C?.onCellEditingStop?.())},[k,C]),E=(0,u.useCallback)(R=>{R.preventDefault()},[]),I=(0,u.useCallback)(R=>{s&&!S&&(R.key==="Escape"?(R.preventDefault(),C?.onCellEditingStop?.()):R.key==="Tab"&&(R.preventDefault(),C?.onCellEditingStop?.({direction:R.shiftKey?"left":"right"})))},[s,S,C]);return(0,u.useEffect)(()=>{s&&!S?(w(JSON.stringify(b,null,d.tabSize)),v(!0)):!s&&S&&v(!1)},[s,S,b]),(0,u.useEffect)(()=>{o&&!s&&!C?.isScrolling&&D.current&&D.current.focus()},[o,s,C?.isScrolling]),vt("enter",()=>O(),{enabled:S}),vt("esc",()=>T(),{enabled:S}),(0,a.jsx)(Pr,{active:S||s,open:S,onOpenChange:M,anchor:(0,a.jsx)(lt,{ref:D,cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l,onKeyDown:I,children:(0,a.jsx)("span",{"data-slot":"grid-cell-content",children:N})}),children:(0,a.jsxs)(it,{"data-grid-cell-editor":"",align:"start",side:"bottom",sideOffset:0,className:"w-[440px] rounded-none p-0 gap-0",onOpenAutoFocus:E,children:[(0,a.jsx)(u.Suspense,{fallback:(0,a.jsx)("div",{className:"h-[240px]"}),children:(0,a.jsx)(md,{value:g,onChange:w,onSave:O,onCancel:T,className:"h-[240px]"})}),j&&(0,a.jsx)("p",{className:"border-t px-2 py-1.5 text-xs text-destructive truncate",children:j}),(0,a.jsxs)("div",{className:"flex flex-col border-t",children:[(0,a.jsxs)(W,{variant:"ghost",size:"sm",disabled:!!j,onClick:O,className:"rounded-none justify-start text-xs py-4 px-2",children:[(0,a.jsx)(Ne,{className:"text-xs font-normal",children:"⌘↵"}),(0,a.jsx)("span",{className:"ml-1 text-xs",children:"Save Changes"})]}),(0,a.jsxs)(W,{variant:"ghost",size:"sm",onClick:T,className:"rounded-none justify-start text-xs py-4 px-2",children:[(0,a.jsx)(Ne,{className:"text-xs font-normal",children:"esc"}),(0,a.jsx)("span",{className:"ml-1 text-xs",children:"Cancel Changes"})]})]})]})})});Ns.displayName="TableJsonCell";var Ts=(0,u.memo)(({cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l})=>{const{setUpdate:c,clearUpdate:i,getUpdate:f}=Se(),d=e.getValue(),m=qe(d),[p,g]=(0,u.useState)(()=>m??""),[w,S]=(0,u.useState)(!1),[v,D]=(0,u.useState)(!1),[C,x]=(0,u.useState)(!1);v&&!C&&x(!0);const h=(0,u.useRef)(null),y=(0,u.useRef)(null),b=t.options.meta,N=e.column.columnDef.meta?.referencedTable,j=e.row.original,k=r,O=f(j,k,t.options.meta?.editScope),T=O?qe(O.newValue):m??"",M=(0,u.useCallback)(()=>{c(j,k,p,d,t.options.meta?.editScope),b?.onCellEditingStop?.(),S(!1)},[b,p,d,k,j,c]),E=(0,u.useCallback)(()=>{g(m??""),i(j,k,t.options.meta?.editScope),b?.onCellEditingStop?.(),S(!1)},[b,m,k,j,i]),I=(0,u.useCallback)(V=>{g(V.target.value)},[]),R=(0,u.useCallback)(V=>{S(V),V||(p!==m&&c(j,k,p,m,t.options.meta?.editScope),b?.onCellEditingStop?.())},[b,p,m,k,j,c]),_=(0,u.useCallback)(V=>{if(V.preventDefault(),h.current){h.current.focus();const de=h.current.value.length;h.current.setSelectionRange(de,de)}},[]),H=(0,u.useCallback)(V=>{s&&!w&&(V.key==="Escape"?(V.preventDefault(),b?.onCellEditingStop?.()):V.key==="Tab"&&(V.preventDefault(),b?.onCellEditingStop?.({direction:V.shiftKey?"left":"right"})))},[s,w,b]),se=(0,u.useCallback)(V=>{V.key==="Escape"?(V.preventDefault(),E()):V.key==="Enter"&&(V.ctrlKey||V.metaKey)&&(V.preventDefault(),M()),V.stopPropagation()},[E,M]),Z=(0,u.useCallback)(()=>{p!==m&&c(j,k,p,m,t.options.meta?.editScope),b?.onCellEditingStop?.(),S(!1)},[b,p,m,k,j,c]);return(0,u.useEffect)(()=>{s&&!w?(g(T),S(!0)):!s&&w&&S(!1)},[s,w,T]),(0,u.useEffect)(()=>{o&&!s&&!b?.isScrolling&&y.current&&y.current.focus()},[o,s,b?.isScrolling]),(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(Pr,{active:w||s,open:w,onOpenChange:R,anchor:(0,a.jsx)(lt,{ref:y,cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l,onKeyDown:H,children:T!==""&&(0,a.jsxs)("span",{className:"flex items-center gap-1.5 size-full overflow-hidden",children:[N&&(0,a.jsx)($o,{variant:"outline",className:"shrink-0 cursor-pointer hover:bg-muted",onClick:V=>{V.stopPropagation(),D(!0)},children:N}),(0,a.jsx)("span",{className:"truncate text-muted-foreground",children:T})]})}),children:(0,a.jsxs)(it,{"data-grid-cell-editor":"",align:"start",side:"bottom",sideOffset:0,className:"w-[400px] rounded-none p-0 gap-0",onOpenAutoFocus:_,children:[(0,a.jsx)(He,{ref:h,value:p,onChange:I,onKeyDown:se,onBlur:Z,className:"min-h-[150px] resize-none rounded-none border-0 shadow-none focus-visible:ring-0",placeholder:"Enter value..."}),(0,a.jsxs)("div",{className:"flex flex-col border-t",children:[(0,a.jsxs)(W,{variant:"ghost",size:"sm",className:"rounded-none justify-start text-xs py-4 px-2",children:[(0,a.jsx)(Ne,{className:"text-xs font-normal",children:"⌘↵"}),(0,a.jsx)("span",{className:"ml-1 text-xs",children:"Save Changes"})]}),(0,a.jsxs)(W,{variant:"ghost",size:"sm",className:"rounded-none justify-start text-xs py-4 px-2",children:[(0,a.jsx)(Ne,{className:"text-xs font-normal",children:"esc"}),(0,a.jsx)("span",{className:"ml-1 text-xs",children:"Cancel Changes"})]})]})]})}),C&&(0,a.jsx)(Lu,{open:v,onOpenChange:D,children:(0,a.jsx)(Vu,{className:"h-[70vh]",children:N&&(0,a.jsx)(fd,{referencedTable:N,referencedColumn:e.column.columnDef.meta?.referencedColumn??"id",fkValue:T})})})]})});Ts.displayName="TableForeignKeyCell";var hd=({cell:e,table:t})=>{const n=t.options.meta,r=t.getRowModel().rows,s=(0,u.useMemo)(()=>{const p=r.findIndex(g=>g.original===e.row.original);return p>=0?p:e.row.index},[r,e.row.original,e.row.index]),o=e.column.id,l=n?.focusedCell?.rowIndex===s&&n?.focusedCell?.columnId===o,c=n?.editingCell?.rowIndex===s&&n?.editingCell?.columnId===o,i=n?.getIsCellSelected?.(s,o)??!1,f=e.column.columnDef.meta?.variant,d=e.column.columnDef.meta?.isForeignKey,m=e.column.columnDef.meta?.referencedTable;if(n?.canMutateRows===!1){const p=e.getValue();return(0,a.jsx)(lt,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:!1,isFocused:l,isSelected:i,"aria-readonly":"true",title:n.rowMutationReason,className:"pr-7",children:(0,a.jsx)("span",{"data-slot":"grid-cell-content",children:qe(p)})})}if(d&&m)return(0,a.jsx)(Ts,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i});switch(f){case"text":return(0,a.jsx)(kn,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i});case"boolean":return(0,a.jsx)(js,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i});case"number":return(0,a.jsx)(Ss,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i});case"enum":return(0,a.jsx)(Ds,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i});case"date":return(0,a.jsx)(ks,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i});case"json":return(0,a.jsx)(Ns,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i});case"array":return(0,a.jsx)(kn,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i});default:return(0,a.jsx)(kn,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i})}},pd=()=>({id:"select",accessorKey:"select",header:({table:e})=>(0,a.jsx)("div",{className:"w-full h-full flex items-center justify-center",children:(0,a.jsx)(Nn,{checked:e.getIsAllRowsSelected(),onCheckedChange:()=>e.toggleAllRowsSelected()})}),cell:({row:e})=>(0,a.jsx)("div",{className:"w-full h-full flex items-center justify-center",children:(0,a.jsx)(Nn,{checked:e.getIsSelected(),onCheckedChange:()=>e.toggleSelected()})}),size:20,enableSorting:!1}),Es={order:[],hidden:[]},sa=(e,t)=>e.order.length===t.order.length&&e.hidden.length===t.hidden.length&&e.order.every((n,r)=>n===t.order[r])&&e.hidden.every((n,r)=>n===t.hidden[r]),On=({dbType:e,database:t,tableName:n})=>JSON.stringify([e,t,n]),Os=e=>{const t=e??{};return{order:Array.isArray(t.order)?t.order.filter(n=>typeof n=="string"):[],hidden:Array.isArray(t.hidden)?t.hidden.filter(n=>typeof n=="string"):[]}},gd=e=>!e||typeof e!="object"?{}:Object.fromEntries(Object.entries(e).map(([t,n])=>[t,Os(n)])),Ms=on()(Uo(e=>({prefsByTable:{},setColumnPrefs:(t,n)=>e(r=>({prefsByTable:{...r.prefsByTable,[On(t)]:Os(n)}})),clearColumnPrefs:t=>e(n=>{const{[On(t)]:r,...s}=n.prefsByTable;return{prefsByTable:s}})}),{name:"dbstudio-column-preferences",partialize:e=>({prefsByTable:e.prefsByTable}),merge:(e,t)=>({...t,prefsByTable:gd(e?.prefsByTable)})})),cr=e=>Ms.getState().prefsByTable[On(e)]??Es,tn=(e,t)=>{const n=new Set(e),r=new Set,s=[];for(const o of t.order)n.has(o)&&!r.has(o)&&(s.push(o),r.add(o));for(const o of e)r.has(o)||(s.push(o),r.add(o));return{order:s,hidden:t.hidden.filter(o=>n.has(o)&&typeof o=="string")}},xd=(e,t)=>{const{order:n,hidden:r}=tn(e,t),s=new Set(r);return[...n.filter(o=>!s.has(o))].sort((o,l)=>n.indexOf(o)-n.indexOf(l))},gr=(e,t,n,r)=>{if(t===n)return e;const s=e.indexOf(t),o=e.indexOf(n);if(s===-1||o===-1)return e;const l=[...e];l.splice(s,1);const c=l.indexOf(n),i=(r??(s<o?"after":"before"))==="after"?c+1:c;return l.splice(i,0,t),l},Rs=({tableName:e,tableCols:t})=>{const{dbType:n,selectedDatabase:r}=pe(),{prefsByTable:s,setColumnPrefs:o,clearColumnPrefs:l}=Ms(),c=(0,u.useMemo)(()=>(t??[]).map(x=>x.columnName),[t]),i=(0,u.useMemo)(()=>c.join(`
12
- `),[c]),f=(0,u.useMemo)(()=>({dbType:n??"",database:r??"",tableName:e}),[n,r,e]),d=s[On(f)]??Es,m=(0,u.useRef)(c);(0,u.useLayoutEffect)(()=>{m.current=c},[c]),(0,u.useEffect)(()=>{if(i.length===0)return;const x=cr(f),h=tn(m.current,x);sa(x,h)||o(f,h)},[f,i,o]);const p=(0,u.useCallback)(x=>{const h=tn(m.current,x);sa(cr(f),h)||o(f,h)},[f,o]),g=(0,u.useCallback)(()=>tn(m.current,cr(f)),[f]),w=(0,u.useCallback)(x=>{const h=g(),y=new Set(h.hidden);y.has(x)?y.delete(x):y.add(x),p({...h,hidden:[...y]})},[g,p]),S=(0,u.useCallback)((x,h,y)=>{const b=g(),N=y??b.order,j=N.indexOf(x),k=j+h;if(j===-1||k<0||k>=N.length)return;const O=N[k],T=gr(b.order,x,O,h===-1?"before":"after");p({...b,order:T})},[g,p]),v=(0,u.useCallback)((x,h,y)=>{const b=g(),N=gr(b.order,x,h,y);p({...b,order:N})},[g,p]),D=(0,u.useCallback)(()=>{const x=g();p({...x,hidden:[]})},[g,p]),C=(0,u.useCallback)(()=>{l(f)},[f,l]);return{orderedColumns:(0,u.useMemo)(()=>tn(c,d).order,[c,d]),visibleColumns:(0,u.useMemo)(()=>xd(c,d),[c,d]),toggleColumn:w,moveColumn:S,reorderColumn:v,showAllColumns:D,resetColumns:C}},Fr=()=>{const e=Rn();return{canMutateRows:e?.rowMutation??!0,rowMutationReason:e?.rowMutation===!1?e.rowMutationReason:void 0}},yd=({tableName:e,tableCols:t,tableDataRows:n,isRowHighlighted:r,isCellHighlighted:s})=>{const[o]=J(L.COLUMN_NAME),[l]=J(L.TABLE_STATE_KEYS.ORDER),{canMutateRows:c,rowMutationReason:i}=Fr(),[f,d]=(0,u.useState)({}),[m,p]=(0,u.useState)({}),[g,w]=(0,u.useState)(null),[S,v]=(0,u.useState)(null),{visibleColumns:D}=Rs({tableName:e,tableCols:t}),C=(0,u.useMemo)(()=>{if(!t)return;const _=new Map(t.map(H=>[H.columnName,H]));return D.map(H=>_.get(H)).filter(H=>!!H)},[t,D]),x=(0,u.useMemo)(()=>pd(),[]),h=(0,u.useMemo)(()=>[x,...C?.map(_=>({accessorKey:_.columnName,header:_.columnName,meta:{variant:_.enumValues?"enum":_.dataType,isPrimaryKey:_.isPrimaryKey,isForeignKey:_.isForeignKey,referencedTable:_.referencedTable,referencedColumn:_.referencedColumn,enumValues:_.enumValues,dataTypeLabel:_.dataTypeLabel},size:(_.columnName.length+(_.dataTypeLabel?.length||0))*5+100,minSize:100,maxSize:500}))||[]],[C,x]);(0,u.useEffect)(()=>{d({})},[e]),(0,u.useEffect)(()=>{c||v(null)},[c]);const y=(0,u.useMemo)(()=>o&&l?[{id:o,desc:l==="desc"}]:[],[o,l]),b=(0,u.useCallback)((_,H)=>{w({rowIndex:_,columnId:H})},[]),N=(0,u.useCallback)((_,H)=>{c&&v({rowIndex:_,columnId:H})},[c]),j=(0,u.useCallback)((_,H)=>{c&&v({rowIndex:_,columnId:H})},[c]),k=(0,u.useCallback)(()=>{v(null)},[]),O=(0,u.useCallback)(()=>{},[]),T=(0,u.useCallback)(()=>!1,[]),M=(0,u.useMemo)(()=>t?.filter(_=>_.isPrimaryKey).map(_=>_.columnName)??[],[t]),E=(0,u.useCallback)(_=>mr(_,M),[M]),I=(0,u.useMemo)(()=>({editScope:e,canMutateRows:c,rowMutationReason:i,focusedCell:g,editingCell:S,onCellClick:b,onCellDoubleClick:N,onCellEditingStart:j,onCellEditingStop:k,onDataUpdate:O,getIsCellSelected:T,isRowHighlighted:r??(_=>Ue.getState().isRowHighlighted(_)),isCellHighlighted:s??((_,H)=>Ue.getState().isCellHighlighted(_,H))}),[e,c,i,g,S,b,N,j,k,O,T,r,s]),R=la({data:n,columns:h,defaultColumn:{cell:hd,size:50,minSize:100,maxSize:500},getRowId:E,getCoreRowModel:ia(),getSortedRowModel:Ls(),state:{sorting:y,rowSelection:f,columnSizing:m},manualSorting:!1,enableRowSelection:!0,enableMultiRowSelection:!0,enableColumnResizing:!0,columnResizeMode:"onChange",onRowSelectionChange:d,onColumnSizingChange:p,meta:I});return{table:R,selectedRows:R.getSelectedRowModel().rows,setRowSelection:d,isEditingCell:!!S}},_s=({tableName:e,schemaName:t})=>{const n=Je(),{tableCols:r}=Ce({tableName:e,schemaName:t}),{selectedDatabase:s,dbType:o}=pe(),{mutateAsync:l,isPending:c,reset:i,error:f}=ot({mutationFn:async({rowData:p,force:g=!1})=>{if(!e)throw new Error("No active table selected");if(!r||r.length===0)throw new Error("No table columns found");return await vd(e,t,r,p,g,s||void 0)},onSuccess:async p=>(await Promise.all([n.invalidateQueries({queryKey:ue.dataByTable(e),exact:!1}),n.invalidateQueries({queryKey:ue.lists()})]),o&&ln.capture("record_deleted",{db_type:o}),p)});return{deleteCells:async p=>{const g=l({rowData:p,force:!1});return Ae.promise(g,{loading:"Deleting records...",success:w=>`Deleted ${w.deletedCount} records from "${e}"`,error:w=>w.message||"Failed to delete records"}),g},forceDeleteCells:async p=>{const g=l({rowData:p,force:!0});return Ae.promise(g,{loading:"Deleting records...",success:w=>`Deleted ${w.deletedCount} records from "${e}"`,error:w=>w.message||"Failed to delete records"}),g},isDeletingCells:c,resetDeleteResult:i,deleteCellsError:f}},vd=async(e,t,n,r,s,o)=>{const l=n.find(i=>i.isPrimaryKey);if(!l)throw new Error("No primary key found for this table");const c={tableName:e,schemaName:t,primaryKeys:r.map(i=>({columnName:l.columnName,value:i[l.columnName]}))};try{const i=await Ao({...c,force:s,db:o});return{deletedCount:i.data.data.deletedCount,fkViolation:i.data.data.fkViolation,relatedRecords:i.data.data.relatedRecords}}catch(i){const f=i;if(f.response?.status===409)return{deletedCount:f.response.data.deletedCount};throw i}},bd=["nextval(","next_value","auto_increment","autoincrement","identity","uuid_generate","gen_random_uuid","newid(","newsequentialid("],wd=e=>{const t=e.columnDefault?.toLowerCase()??"";return bd.some(n=>t.includes(n))},Wr=e=>e?.filter(t=>t.isPrimaryKey)??[],Cd=e=>Wr(e)[0],As=e=>{const t=Wr(e);if(t.length>0)return t.map(r=>r.columnName);const n=e?.find(r=>r.columnName==="id");return n?[n.columnName]:[]},Sd=(e,t)=>{if(!e||!t)return;const n=t.filter(s=>s.isPrimaryKey);if(n.length>0)return JSON.stringify(n.map(s=>[s.columnName,String(e[s.columnName])]));const r=t.find(s=>s.columnName==="id");if(r&&e[r.columnName]!==void 0&&e[r.columnName]!==null)return JSON.stringify([r.columnName,String(e[r.columnName])])},ur=(e,t)=>{const n={};if(!e||!t)return n;for(const r of t){const s=e[r.columnName];if(s==null)n[r.columnName]="";else if(typeof s=="boolean")n[r.columnName]=s?"true":"false";else if(typeof s=="object")try{n[r.columnName]=JSON.stringify(s)}catch{n[r.columnName]=String(s)}else n[r.columnName]=String(s)}return n},jd=(e,t)=>Object.keys(e).filter(n=>e[n]).map(n=>({columnName:n,value:t[n]??""})),Dd=async e=>{await navigator.clipboard.writeText(e)},kd=({tableName:e,tableCols:t,row:n,rowIndex:r})=>{const{setDirty:s}=yt(),o=(0,u.useMemo)(()=>Cd(t),[t]),l=(0,u.useMemo)(()=>Wr(t),[t]),c=(0,u.useMemo)(()=>As(t),[t]),i=(0,u.useMemo)(()=>JSON.stringify((t??[]).map(C=>C.columnName)),[t]),f=ba({defaultValues:(0,u.useMemo)(()=>ur(n,t),[n,t])}),{formState:d}=f,m=d.isDirty;(0,u.useEffect)(()=>{s(m)},[m,s]);const p=l.some(C=>!!d.dirtyFields[C.columnName]),g=(0,u.useRef)(void 0),w=(0,u.useRef)(void 0),S=(0,u.useRef)(null),v=(0,u.useRef)(null),D=(0,u.useRef)(i);return(0,u.useEffect)(()=>{const C=Sd(n,t);if(!(e===v.current&&r===S.current&&i===D.current)){v.current=e,S.current=r,D.current=i,g.current=n,w.current=C,f.reset(ur(n,t));return}if(n===g.current)return;g.current=n;const x=ur(n,t);if(!m){w.current=C,f.reset(x);return}C!==void 0&&w.current!==void 0&&C===w.current?f.reset(x,{keepDirtyValues:!0}):(w.current=C,f.reset(x))},[n,t,e,r,i,f,m]),{methods:f,isDirty:m,pkDirty:p,primaryKeyColumn:o,identityColumnNames:c}},Nd=({tableName:e,schemaName:t})=>{const n=Je(),{selectedDatabase:r,dbType:s}=pe(),{mutateAsync:o,isPending:l}=ot({mutationFn:async({rowData:i,updates:f,primaryKey:d,primaryKeys:m})=>{if(!e)throw new Error("No table selected");if(f.length===0)throw new Error("At least one field is required");return(await Sa({tableName:e,schemaName:t,updates:f.map(p=>({rowData:i,...p})),...d?{primaryKey:d}:{},...m?.length?{primaryKeys:m}:{},db:r})).data.data},onSuccess:async()=>{await Promise.all([n.invalidateQueries({queryKey:ue.dataByTable(e),exact:!1}),n.invalidateQueries({queryKey:ue.lists()})]),s&&ln.capture("record_updated",{db_type:s})}});return{updateRecord:async({rowData:i,updates:f,primaryKey:d,primaryKeys:m})=>{if(f.length===0)throw new Error("At least one field is required");return Ae.promise(o({rowData:i,updates:f,primaryKey:d,primaryKeys:m}),{loading:"Saving changes...",success:p=>p||"Record updated successfully",error:p=>p.message||"Failed to update record"}).unwrap()},isUpdatingRecord:l}},Td=({value:e})=>{const[t,n]=(0,u.useState)(!1);return(0,u.useEffect)(()=>{if(!t)return;const r=window.setTimeout(()=>n(!1),1200);return()=>window.clearTimeout(r)},[t]),e?(0,a.jsx)("button",{type:"button","aria-label":t?"Copied":"Copy value",className:"inline-flex size-7 shrink-0 items-center justify-center rounded-md border border-input bg-background text-muted-foreground transition-colors hover:text-foreground",onClick:()=>{Dd(e).then(()=>n(!0)).catch(()=>{})},children:t?(0,a.jsx)(Vs,{className:"size-3.5"}):(0,a.jsx)(eo,{className:"size-3.5"})}):null},Ed=({column:e,displayValue:t,readOnly:n})=>{const{watch:r,formState:s}=wr(),o=r(e.columnName)??"",l=!!s.dirtyFields[e.columnName];return(0,a.jsxs)("div",{className:"grid grid-cols-3 gap-4",children:[(0,a.jsxs)("div",{className:"col-span-1 flex flex-col gap-1",children:[(0,a.jsxs)("span",{className:"text-sm font-medium",children:[e.columnName,l&&(0,a.jsx)("span",{className:"ml-1.5 inline-block size-1.5 rounded-full bg-primary",children:(0,a.jsx)("span",{className:"sr-only",children:"(modified)"})})]}),(0,a.jsxs)("span",{className:"flex items-center gap-1.5 text-xs text-muted-foreground",children:[e.dataTypeLabel,e.isPrimaryKey&&(0,a.jsx)("span",{className:"rounded border border-border bg-muted px-1 font-mono text-[10px]",children:"PK"})]})]}),(0,a.jsxs)("div",{className:"col-span-2 flex w-full items-start gap-2",children:[(0,a.jsx)("div",{className:"min-w-0 flex-1",children:n?(0,a.jsx)("div",{role:"group","aria-label":e.columnName,className:"break-all rounded-md border border-input bg-muted/40 px-3 py-2 text-sm",children:t||(0,a.jsx)("span",{className:"text-muted-foreground",children:"NULL"})}):(0,a.jsx)(ns,{...e,hideLabel:!0})}),(0,a.jsx)(Td,{value:n?t:qe(o)})]})]})},Od=({tableName:e,rows:t})=>{const{openOverlay:n,closeOverlay:r,isOverlayOpen:s}=he(),{rowIndex:o,selectRowDetails:l,clearRowDetails:c}=yt(),i=ce(),{tableCols:f,isLoadingTableCols:d}=Ce({tableName:e,schemaName:i}),{canMutateRows:m,rowMutationReason:p}=Fr(),{updateRecord:g,isUpdatingRecord:w}=Nd({tableName:e,schemaName:i}),{deleteCells:S,isDeletingCells:v}=_s({tableName:e,schemaName:i}),[D,C]=(0,u.useState)(null),[x,h]=(0,u.useState)(null),y=$=>{C($),n("tables.row-discard-changes")},b=()=>{C(null),r("tables.row-discard-changes")},N=s("tables.row-details")&&o!==null,j=o===null?void 0:t[o],k=w||v,{methods:O,isDirty:T,pkDirty:M,primaryKeyColumn:E,identityColumnNames:I}=kd({tableName:e,tableCols:f,row:j,rowIndex:o}),{formState:R,reset:_,handleSubmit:H}=O;(0,u.useEffect)(()=>{N&&o!==null&&!t[o]&&(T?y("close"):(c(),r("tables.row-details")))},[N,o,t,T,c,r]);const se=()=>{c(),r("tables.row-change-primary-key"),r("tables.row-delete-record"),r("tables.row-discard-changes"),r("tables.row-details")},Z=()=>{k||(T?y("close"):se())},V=$=>{k||$===o||$<0||$>=t.length||(T?y($):l($))},de=()=>{k||!m||(T?y("delete"):n("tables.row-delete-record"))},Ge=()=>{const $=D;b(),$==="close"?se():$==="delete"?n("tables.row-delete-record"):typeof $=="number"&&l($)},ge=async $=>{if(!j||!m)return;const Be=jd(R.dirtyFields,$);if(Be.length!==0)try{await g({rowData:j,updates:Be,primaryKey:I[0],primaryKeys:I}),_($),se()}catch{}},Te=$=>{if(m){if(M){h($),n("tables.row-change-primary-key");return}ge($)}},Ee=async()=>{if(!(!j||!m)){r("tables.row-delete-record");try{(await S([j])).deletedCount>0&&se()}catch{}}},Qe=o!==null&&o>0,Oe=o!==null&&o<t.length-1;return vt("up, down",$=>{o!==null&&($.preventDefault(),V($.key==="ArrowUp"?o-1:o+1))},{enabled:N&&!k},[N,k,o,t.length,T]),(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(bt,{title:"Row details",description:o!==null?`${e} · Row ${o+1} of ${t.length}`:e,cta:(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)(W,{type:"button",variant:"ghost",size:"icon-sm","aria-label":"Previous row",disabled:!Qe||k,onClick:()=>o!==null&&V(o-1),children:(0,a.jsx)(vr,{className:"size-4"})}),(0,a.jsx)(W,{type:"button",variant:"ghost",size:"icon-sm","aria-label":"Next row",disabled:!Oe||k,onClick:()=>o!==null&&V(o+1),children:(0,a.jsx)(an,{className:"size-4"})})]}),closeButton:!1,modal:!1,onFocusOutside:$=>$.preventDefault(),onPointerDownOutside:$=>{$.target?.closest("table, [role=alertdialog]")&&$.preventDefault()},open:N,onOpenChange:$=>{$||Z()},children:f&&f.length>0&&j?(0,a.jsxs)(va,{...O,children:[(0,a.jsxs)("form",{onSubmit:H(Te),className:"flex flex-col h-full",children:[(0,a.jsxs)("div",{className:"space-y-6",children:[p&&(0,a.jsx)(me,{variant:"info",title:"Row editing unavailable",message:p}),f.map($=>(0,a.jsx)(Ed,{column:$,displayValue:qe(j[$.columnName]),readOnly:!m||wd($)},$.columnName))]}),(0,a.jsxs)("div",{className:"flex items-center justify-between gap-2 py-6",children:[(0,a.jsxs)(W,{type:"button",variant:"destructive",size:"lg",disabled:k||!m||!E,title:p??(E?void 0:"Records in tables without a primary key can't be deleted"),onClick:de,children:[(0,a.jsx)(ha,{className:"size-4"}),"Delete"]}),(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)(W,{type:"button",variant:"outline",size:"lg",disabled:k,onClick:Z,children:"Close"}),(0,a.jsx)(W,{type:"submit",size:"lg",disabled:k||!m||!T||I.length===0,title:p??(I.length>0?void 0:"Saving needs a primary key or an id column to address the record"),children:"Save changes"})]})]})]}),(0,a.jsx)(rs,{})]}):(0,a.jsx)("div",{className:"flex flex-col h-full",children:(0,a.jsx)("div",{className:"space-y-6",children:d?(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading row details..."}):(0,a.jsx)(me,{variant:"info",title:"No columns found",message:"Please add at least one column to the table before viewing records."})})})}),(0,a.jsx)(Rt,{open:s("tables.row-discard-changes"),onOpenChange:$=>{$||b()},children:(0,a.jsxs)(Mt,{children:[(0,a.jsxs)(Ot,{children:[(0,a.jsx)(_t,{children:"Discard unsaved changes?"}),(0,a.jsx)(Pt,{children:"This record has unsaved changes. Discard them and continue?"})]}),(0,a.jsxs)(Et,{children:[(0,a.jsx)(Tt,{children:"Keep editing"}),(0,a.jsx)(At,{onClick:Ge,children:"Discard changes"})]})]})}),(0,a.jsx)(Rt,{open:s("tables.row-change-primary-key"),onOpenChange:$=>{$||(r("tables.row-change-primary-key"),h(null))},children:(0,a.jsxs)(Mt,{children:[(0,a.jsxs)(Ot,{children:[(0,a.jsx)(_t,{children:"Change the primary key?"}),(0,a.jsx)(Pt,{children:"Changing the primary key changes the identity of this record. Existing references to the old key may break. Are you sure?"})]}),(0,a.jsxs)(Et,{children:[(0,a.jsx)(Tt,{children:"Cancel"}),(0,a.jsx)(At,{onClick:()=>{r("tables.row-change-primary-key"),x&&(ge(x),h(null))},children:"Change primary key"})]})]})}),(0,a.jsx)(Rt,{open:s("tables.row-delete-record"),onOpenChange:$=>{$||r("tables.row-delete-record")},children:(0,a.jsxs)(Mt,{children:[(0,a.jsxs)(Ot,{children:[(0,a.jsx)(_t,{children:"Delete record"}),(0,a.jsxs)(Pt,{children:['Are you sure you want to delete this record from "',e,'"? This action cannot be undone.']})]}),(0,a.jsxs)(Et,{children:[(0,a.jsx)(Tt,{children:"Cancel"}),(0,a.jsx)(At,{variant:"destructive",onClick:()=>{Ee()},children:"Delete"})]})]})})]})},Md={"--w-rjv-font-family":"monospace","--w-rjv-color":"#6f42c1","--w-rjv-key-string":"#6f42c1","--w-rjv-background-color":"#ffffff","--w-rjv-line-color":"#ddd","--w-rjv-arrow-color":"#6e7781","--w-rjv-edit-color":"var(--w-rjv-color)","--w-rjv-info-color":"#0000004d","--w-rjv-update-color":"#ebcb8b","--w-rjv-copied-color":"#002b36","--w-rjv-copied-success-color":"#28a745","--w-rjv-curlybraces-color":"#6a737d","--w-rjv-colon-color":"#24292e","--w-rjv-brackets-color":"#6a737d","--w-rjv-quotes-color":"var(--w-rjv-key-string)","--w-rjv-quotes-string-color":"var(--w-rjv-type-string-color)","--w-rjv-type-string-color":"#032f62","--w-rjv-type-int-color":"#005cc5","--w-rjv-type-float-color":"#005cc5","--w-rjv-type-bigint-color":"#005cc5","--w-rjv-type-boolean-color":"#d73a49","--w-rjv-type-date-color":"#005cc5","--w-rjv-type-url-color":"#0969da","--w-rjv-type-null-color":"#d73a49","--w-rjv-type-nan-color":"#859900","--w-rjv-type-undefined-color":"#005cc5"};function Rd({className:e,...t}){return(0,a.jsx)("nav",{"aria-label":"pagination","data-slot":"pagination",className:z("mx-auto flex w-full justify-center",e),...t})}function _d({className:e,...t}){return(0,a.jsx)("ul",{"data-slot":"pagination-content",className:z("flex flex-row items-center gap-1",e),...t})}function oa({...e}){return(0,a.jsx)("li",{"data-slot":"pagination-item",...e})}var Ps=({tableName:e,variant:t="row"})=>{const[n,r]=J(L.TABLE_STATE_KEYS.LIMIT),[,s]=J(L.TABLE_STATE_KEYS.CURSOR),[,o]=J(L.TABLE_STATE_KEYS.DIRECTION),{tableData:l,prefetchPage:c}=Fn({tableName:e,schemaName:ce()}),i=l?.meta?.total??0,f=l?.data?.length??0,d=t==="document"?"documents":"rows",m=t==="document"?"Documents per page":"Rows per page",p=n??"50",g=(0,u.useRef)(null),w=h=>{const y=parseInt(h,10);if(Number.isNaN(y)||y<1)return;const b=Math.min(y,1e4).toString();r(b),s(null),o(null)},S=()=>{l?.meta?.nextCursor&&(s(l.meta.nextCursor),o("asc"))},v=()=>{l?.meta?.prevCursor&&(s(l.meta.prevCursor),o("desc"))},D=()=>{l?.meta?.prevCursor&&c(l.meta.prevCursor,"desc")},C=()=>{l?.meta?.nextCursor&&c(l.meta.nextCursor,"asc")},x=()=>{s(null),o(null)};return(0,a.jsxs)("footer",{className:"absolute bottom-0 inset-x-0 h-9 border-t border-border flex items-center justify-between bg-background px-2 text-foreground",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(we,{className:"text-xs text-muted-foreground whitespace-nowrap",children:m}),(0,a.jsxs)("div",{className:"flex items-center h-6 rounded-sm border border-transparent hover:border-border focus-within:border-ring transition-colors",children:[(0,a.jsx)("input",{ref:g,type:"number",min:1,max:1e4,defaultValue:p,onBlur:h=>w(h.target.value),onKeyDown:h=>{h.key==="Enter"&&g.current?.blur()},className:"w-12 min-w-8 px-1 field-sizing-content supports-[field-sizing:content]:w-auto h-full bg-transparent text-xs text-center text-foreground outline-none [appearance:textfield] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none"},p),(0,a.jsxs)(jr,{children:[(0,a.jsx)(Sr,{asChild:!0,children:(0,a.jsx)("button",{type:"button",className:"flex items-center h-full px-0.5 text-muted-foreground hover:text-foreground transition-colors focus:outline-none","aria-label":"Choose preset row count",children:(0,a.jsx)(an,{className:"size-3"})})}),(0,a.jsx)(Cr,{align:"start",className:"min-w-16 border-border",children:Yo.map(h=>(0,a.jsx)($e,{onSelect:()=>w(h.toString()),className:"text-xs justify-center",children:h},h))})]})]})]}),(0,a.jsx)("div",{className:"flex items-center justify-center text-xs text-muted-foreground",children:(0,a.jsxs)("p",{className:"whitespace-nowrap","aria-live":"polite",children:["Showing ",(0,a.jsx)("span",{className:"text-foreground font-medium",children:f})," of"," ",(0,a.jsxs)("span",{className:"text-foreground font-medium",children:[l?.meta?.totalEstimated&&"~",i]})," ",d]})}),(0,a.jsxs)("div",{className:"flex items-center gap-0.5",children:[(0,a.jsx)(W,{size:"sm",variant:"ghost",className:"size-6 disabled:opacity-30",onClick:x,disabled:!l?.meta?.hasPreviousPage||i===0,"aria-label":"Go to first page",children:(0,a.jsx)(so,{"aria-hidden":"true"})}),(0,a.jsx)(Rd,{children:(0,a.jsxs)(_d,{className:"gap-0.5",children:[(0,a.jsx)(oa,{children:(0,a.jsx)(W,{size:"icon-sm",variant:"ghost",className:"size-6 disabled:opacity-30",onClick:v,onPointerEnter:D,onFocus:D,disabled:!l?.meta?.hasPreviousPage||i===0,"aria-label":"Go to previous page",children:(0,a.jsx)(pa,{"aria-hidden":"true"})})}),(0,a.jsx)(oa,{children:(0,a.jsx)(W,{size:"icon-sm",variant:"ghost",className:"size-6 disabled:opacity-30",onClick:S,onPointerEnter:C,onFocus:C,disabled:!l?.meta?.hasNextPage||i===0,"aria-label":"Go to next page",children:(0,a.jsx)(ma,{"aria-hidden":"true"})})})]})})]})]})},Ad=({tableName:e,rows:t})=>{const{isDark:n}=Go();return(0,a.jsxs)("div",{className:"flex-1 w-full flex flex-col overflow-hidden pb-9",children:[(0,a.jsx)("div",{className:"flex-1 overflow-auto bg-background p-3",children:(0,a.jsx)(qo,{value:t,keyName:e,objectSortKeys:!1,displayObjectSize:!0,displayDataTypes:!1,indentWidth:14,collapsed:1,shortenTextAfterLength:120,highlightUpdates:!1,style:n?Jo:Md,enableClipboard:!0,className:"size-full"})}),(0,a.jsx)(Ps,{tableName:e,variant:"document"})]})},Pd=()=>{const{openOverlay:e}=he();return(0,a.jsxs)(jr,{children:[(0,a.jsx)(Sr,{asChild:!0,children:(0,a.jsxs)(W,{type:"button",variant:"default",className:"h-8! border-l-0 border-y-0 border-r border-border rounded-none flex items-center gap-2","aria-label":"Add records to the table",children:[(0,a.jsx)(Us,{className:"size-4"}),"Add Record"]})}),(0,a.jsxs)(Cr,{align:"start",className:"w-48",children:[(0,a.jsx)($e,{onClick:()=>e("records.add-record"),children:"Add Record"}),(0,a.jsx)($e,{onClick:()=>e("records.bulk-insert-csv"),children:"Add data from CSV"}),(0,a.jsx)($e,{onClick:()=>e("records.bulk-insert-excel"),children:"Add data from Excel"}),(0,a.jsx)($e,{onClick:()=>e("records.bulk-insert-json"),children:"Add data from JSON"})]})]})},Fd=()=>ja(()=>import("./_table-C51xDj3B.js"),__vite__mapDeps([15,3,1,2])),Fs=Bs("/_pathlessLayout/table/$table")({component:$s(Fd,"component")}),Ws=()=>{const e=Je(),{table:t}=Fs.useParams(),n=ce(),{clearUpdates:r,getUpdateCount:s}=Se(),{selectedDatabase:o}=pe(),{tableCols:l}=Ce({tableName:t,schemaName:n??void 0}),{mutateAsync:c,isPending:i}=ot({mutationFn:async d=>{if(!t)throw new Error("No table selected");const m=As(l),p={tableName:t,updates:d.map(g=>({rowData:g.rowData,columnName:g.columnName,value:g.newValue})),...m.length>0?{primaryKey:m[0],primaryKeys:m}:{}};return(await Sa({...p,schemaName:n,db:o})).data.data},onSuccess:async()=>{r(),await Promise.all([e.invalidateQueries({queryKey:ue.dataByTable(t),exact:!1})])}});return{updateCell:async d=>{const m=s();return Ae.promise(c(d),{loading:"Saving changes...",success:p=>p||`${m} ${m===1?"change":"changes"} saved successfully`,error:p=>p.message||"Failed to save changes"})},isUpdatingCell:i}},Wd=()=>{const{getUpdateCount:e,clearUpdates:t}=Se(),{isUpdatingCell:n}=Ws(),r=(0,u.useCallback)(()=>{t()},[t]);return e()===0?null:(0,a.jsx)(W,{type:"button",variant:"secondary",className:"h-8! border-l-0 border-y-0 border-r border-border rounded-none",onClick:r,"aria-label":"Clear changes to the table",disabled:n,children:"Clear Changes"})},Id=({tableName:e})=>{const[t,n]=(0,u.useState)(""),[r,s]=(0,u.useState)(null),o=(0,u.useRef)(null),{tableCols:l}=Ce({tableName:e,schemaName:ce()}),{orderedColumns:c,visibleColumns:i,toggleColumn:f,moveColumn:d,reorderColumn:m,showAllColumns:p,resetColumns:g}=Rs({tableName:e,tableCols:l}),w=(0,u.useMemo)(()=>{const y=t.trim().toLowerCase();return y?c.filter(b=>b.toLowerCase().includes(y)):c},[c,t]),S=r?.order??w,v=()=>{if(!r)return;const y=r.order.indexOf(r.name);y>0?m(r.name,r.order[y-1],"after"):r.order.length>1&&m(r.name,r.order[1],"before")},D=(0,u.useMemo)(()=>new Set(i),[i]),C=l?.length??0,x=C-i.length,h=x>0||c.some((y,b)=>(l??[])[b]?.columnName!==y);return(0,a.jsxs)(Yt,{children:[(0,a.jsx)(cn,{asChild:!0,children:(0,a.jsx)(W,{type:"button",variant:"ghost",className:z("size-8! aspect-square border-l-0 border-y-0 border-r border-border rounded-none text-muted-foreground hover:text-foreground hover:bg-muted/60 transition-colors",h&&"text-foreground"),"aria-label":"Manage columns","data-active":h,children:(0,a.jsx)(lo,{className:"size-4"})})}),(0,a.jsxs)(it,{align:"start",className:"w-72 gap-0 p-0",onOpenAutoFocus:y=>{y.preventDefault(),o.current?.focus()},children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 p-2",children:[(0,a.jsxs)("div",{className:"relative flex-1",children:[(0,a.jsx)(Xs,{className:"absolute left-2 top-1/2 -translate-y-1/2 size-3.5 text-muted-foreground pointer-events-none"}),(0,a.jsx)("input",{ref:o,type:"text",placeholder:"Search columns...",value:t,onChange:y=>n(y.target.value),className:"w-full h-8 pl-7 pr-2 text-sm bg-transparent rounded-md border border-border focus:outline-none focus:ring-1 focus:ring-ring","aria-label":"Search columns"})]}),(0,a.jsxs)("span",{className:"text-xs text-muted-foreground tabular-nums whitespace-nowrap",title:`${i.length} of ${C} columns shown`,children:[i.length,"/",C]})]}),(0,a.jsx)(zr,{className:"my-0"}),(0,a.jsxs)("div",{className:"max-h-72 overflow-y-auto py-1",role:"list","aria-label":"Database columns",onDragOver:y=>{r&&(y.preventDefault(),y.dataTransfer.dropEffect="move")},onDrop:y=>{y.preventDefault(),v()},children:[S.map((y,b)=>{const N=D.has(y);return(0,a.jsxs)("div",{role:"listitem",draggable:!0,onDragStart:j=>{j.dataTransfer.effectAllowed="move",j.dataTransfer.setData("text/plain",y),s({name:y,order:w})},onDragEnter:()=>s(j=>j&&j.name!==y?{...j,order:gr(j.order,j.name,y)}:j),onDragEnd:()=>s(null),className:z("group flex items-center gap-1.5 px-2 py-1 rounded-md",r?.name===y&&"bg-muted text-muted-foreground"),children:[(0,a.jsx)("span",{role:"button",tabIndex:0,"aria-label":`Reorder ${y}`,"aria-roledescription":"sortable",title:"Drag, or focus and press ArrowUp or ArrowDown to move",className:"cursor-grab active:cursor-grabbing text-muted-foreground/70 hover:text-muted-foreground focus-visible:outline focus-visible:outline-1 focus-visible:outline-ring rounded-sm",onKeyDown:j=>{j.key==="ArrowUp"?(j.preventDefault(),j.stopPropagation(),d(y,-1,w)):j.key==="ArrowDown"&&(j.preventDefault(),j.stopPropagation(),d(y,1,w))},children:(0,a.jsx)(ao,{className:"size-4"})}),(0,a.jsx)(Nn,{checked:N,onCheckedChange:()=>f(y),"aria-label":`Show ${y}`}),(0,a.jsx)("span",{className:"text-sm flex-1 cursor-pointer select-none truncate",onClick:()=>f(y),children:y}),(0,a.jsxs)("span",{className:"flex flex-col opacity-0 group-hover:opacity-100 focus-within:opacity-100",children:[(0,a.jsx)("button",{type:"button",tabIndex:0,disabled:b===0,"aria-label":`Move ${y} up`,className:"text-muted-foreground/70 hover:text-foreground disabled:opacity-30 disabled:pointer-events-none",onClick:()=>d(y,-1,w),children:(0,a.jsx)(vr,{className:"size-3.5"})}),(0,a.jsx)("button",{type:"button",tabIndex:0,disabled:b===S.length-1,"aria-label":`Move ${y} down`,className:"text-muted-foreground/70 hover:text-foreground disabled:opacity-30 disabled:pointer-events-none",onClick:()=>d(y,1,w),children:(0,a.jsx)(an,{className:"size-3.5"})})]})]},y)}),w.length===0&&(0,a.jsxs)("p",{className:"text-sm text-muted-foreground text-center py-4 px-2",children:['No columns match "',t,'"']})]}),(0,a.jsx)(zr,{className:"my-0"}),(0,a.jsxs)("div",{className:"p-2 flex gap-2",children:[(0,a.jsxs)(W,{variant:"outline",size:"sm",className:"flex-1 text-xs",disabled:x===0,onClick:p,children:[(0,a.jsx)(io,{className:"size-3.5"}),"Show all"]}),(0,a.jsxs)(W,{variant:"outline",size:"sm",className:"flex-1 text-xs",disabled:!h,onClick:g,children:[(0,a.jsx)(oo,{className:"size-3.5"}),"Reset"]})]})]})]})},zd=({isOpenFkDialog:e,handleDialogClose:t,relatedRecords:n,handleCancelForceDelete:r,handleForceDelete:s,isDeletingCells:o})=>(0,a.jsx)(So,{open:e,onOpenChange:t,children:(0,a.jsxs)(bo,{className:"max-w-2xl z-500",children:[(0,a.jsxs)(wo,{children:[(0,a.jsx)(jo,{children:"Cannot Delete - Foreign Key Constraint"}),(0,a.jsx)(Co,{children:"The selected records cannot be deleted because they are referenced by records in other tables. You can either cancel the operation or force delete, which will also delete all related records."})]}),(0,a.jsx)(Yd,{relatedRecords:n}),(0,a.jsxs)(Eo,{className:"gap-2",children:[(0,a.jsx)(W,{variant:"outline",onClick:r,disabled:o,children:"Cancel"}),(0,a.jsx)(W,{variant:"destructive",onClick:s,disabled:o,children:o?"Deleting...":"Force Delete All"})]})]})}),Yd=({relatedRecords:e})=>(0,a.jsx)("div",{className:"space-y-4 max-h-64 overflow-y-auto",children:e.map((t,n)=>(0,a.jsxs)("div",{className:"border border-border rounded-md p-3",children:[(0,a.jsxs)("div",{className:"font-medium text-sm mb-2",children:["Table: ",(0,a.jsx)("span",{className:"text-primary",children:t.tableName}),(0,a.jsxs)("span",{className:"text-muted-foreground ml-2",children:["(",t.records.length," record",t.records.length!==1?"s":"",")"]})]}),(0,a.jsxs)("div",{className:"text-xs text-muted-foreground mb-2",children:["References column: ",t.columnName]}),(0,a.jsx)("div",{className:"bg-muted rounded p-2 text-xs overflow-x-auto",children:(0,a.jsxs)("pre",{className:"whitespace-pre-wrap",children:[JSON.stringify(t.records.slice(0,5),null,2),t.records.length>5&&(0,a.jsxs)("div",{className:"text-muted-foreground mt-2",children:["... and ",t.records.length-5," more"]})]})})]},`${t.tableName}-${t.columnName}-${n}`))}),Bd=({selectedRows:e,setRowSelection:t,tableName:n,disabledReason:r})=>{const{deleteCells:s,forceDeleteCells:o,isDeletingCells:l,resetDeleteResult:c}=_s({tableName:n,schemaName:ce()}),[i,f]=(0,u.useState)([]),[d,m]=(0,u.useState)(!1),[p,g]=(0,u.useState)(!1),[w,S]=(0,u.useState)([]),v=(0,u.useCallback)(()=>{r||g(!0)},[r]),D=(0,u.useCallback)(async()=>{if(r)return;const y=e.map(b=>b.original);g(!1);try{await s(y),t({})}catch{f(y),S([]),m(!0)}},[r,s,e,t]),C=async()=>{r||i.length===0||(await o(i))?.deletedCount>0&&(m(!1),f([]),S([]),c(),t({}))},x=(0,u.useCallback)(()=>{m(!1),f([]),S([]),c()},[c]),h=y=>{l||(y?m(y):x())};return e?.length===0?null:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(W,{type:"button",variant:"destructive",className:"h-8! border-l-0 border-y-0 border-r border-border text-white rounded-none",onClick:v,"aria-label":"Delete the selected record",disabled:l||!!r,title:r,children:["Delete Record",e?.length>1&&(0,a.jsx)("span",{className:"ml-1.5 px-1.5 text-[10px] bg-white/20 border border-white/20 rounded",children:e?.length})]}),(0,a.jsx)(Rt,{open:p,onOpenChange:g,children:(0,a.jsxs)(Mt,{children:[(0,a.jsxs)(Ot,{children:[(0,a.jsxs)(_t,{children:["Delete ",e.length===1?"Record":"Records"]}),(0,a.jsxs)(Pt,{children:["Are you sure you want to delete"," ",e.length===1?"this record":`${e.length} records`," ",'from "',n,'"? This action cannot be undone.']})]}),(0,a.jsxs)(Et,{children:[(0,a.jsx)(Tt,{children:"Cancel"}),(0,a.jsx)(At,{variant:"destructive",onClick:D,children:"Delete"})]})]})}),(0,a.jsx)(zd,{isOpenFkDialog:d,handleDialogClose:h,relatedRecords:w,handleCancelForceDelete:x,handleForceDelete:C,isDeletingCells:l})]})},Ld=({tableName:e})=>{const[t,n]=J(L.TABLE_STATE_KEYS.FILTERS,Ft(x=>x).withDefault([]).withOptions({history:"push"})),[,r]=J(L.TABLE_STATE_KEYS.CURSOR),[,s]=J(L.TABLE_STATE_KEYS.DIRECTION),{tableCols:o}=Ce({tableName:e,schemaName:ce()}),[l,c]=(0,u.useState)(!1),[i,f]=(0,u.useState)([]),d=()=>{const x=o?.[0]?.columnName??"";f(h=>[...h,{columnName:x,operator:"=",value:""}])},m=x=>{f(i.filter((h,y)=>y!==x))},p=(x,h)=>{f(i.map((y,b)=>b===x?{...y,columnName:h}:y))},g=(x,h)=>{f(i.map((y,b)=>b===x?{...y,value:h}:y))},w=(x,h)=>{f(i.map((y,b)=>b===x?{...y,operator:h}:y))},S=()=>{f([]),n([]),r(null),s(null),c(!1)},v=()=>{const x=i.filter(h=>h.columnName&&h.operator&&h.value!=="");n(x),r(null),s(null),c(!1)},D=t.length>0,C=x=>{x&&f(t),c(x)};return(0,a.jsxs)(Yt,{open:l,onOpenChange:C,children:[(0,a.jsx)(cn,{asChild:!0,children:(0,a.jsx)(W,{type:"button",variant:"ghost",className:"size-8! aspect-square border-l-0 border-y-0 border-r border-border rounded-none text-muted-foreground hover:text-foreground hover:bg-muted/60 transition-colors","aria-label":"Filter table data","data-active":D,children:(0,a.jsx)(fa,{className:"size-4"})})}),(0,a.jsxs)(it,{className:"w-md space-y-2",align:"start",children:[(0,a.jsx)("div",{className:"flex items-center gap-4",children:(0,a.jsxs)(W,{variant:"outline",size:"lg",className:"text-sm",onClick:d,children:["Add filter",i&&i.length>0&&(0,a.jsx)(Ne,{className:"text-xs font-normal text-primary bg-primary/10 border border-primary/30 px-1.5 py-0.5",children:i.length})]})}),(0,a.jsx)("div",{className:"flex flex-col gap-4",children:i.length>0?i.map((x,h)=>(0,a.jsxs)("div",{className:"flex-1 flex h-9 gap-2",children:[(0,a.jsxs)(Ie,{value:x.columnName,onValueChange:y=>p(h,y),children:[(0,a.jsx)(Fe,{className:"w-full flex-1",children:(0,a.jsx)(Pe,{placeholder:"Select column"})}),(0,a.jsx)(We,{children:o?.map(y=>(0,a.jsx)(Q,{value:y.columnName,children:y.columnName},y.columnName))})]}),(0,a.jsxs)(Ie,{value:x.operator,onValueChange:y=>w(h,y),children:[(0,a.jsx)(Fe,{children:(0,a.jsx)(Pe,{placeholder:"Op"})}),(0,a.jsxs)(We,{children:[(0,a.jsx)(Q,{value:"=",children:"="}),(0,a.jsx)(Q,{value:"!=",children:"!="}),(0,a.jsx)(Q,{value:">",children:">"}),(0,a.jsx)(Q,{value:">=",children:">="}),(0,a.jsx)(Q,{value:"<",children:"<"}),(0,a.jsx)(Q,{value:"<=",children:"<="}),(0,a.jsx)(Q,{value:"is",children:"is"}),(0,a.jsx)(Q,{value:"is not",children:"is not"}),(0,a.jsx)(Q,{value:"like",children:"like"}),(0,a.jsx)(Q,{value:"not like",children:"not like"}),(0,a.jsx)(Q,{value:"ilike",children:"ilike"}),(0,a.jsx)(Q,{value:"not ilike",children:"not ilike"})]})]}),(0,a.jsx)(ve,{type:"text",placeholder:"Value",value:x.value,onChange:y=>g(h,y.target.value)}),(0,a.jsx)(W,{variant:"ghost",size:"icon",className:"text-xs",onClick:()=>m(h),children:(0,a.jsx)(Mn,{className:"size-4"})})]},`${x.columnName}-${h}`)):(0,a.jsx)("div",{className:"flex-1 flex h-9 gap-2 items-center justify-center",children:(0,a.jsx)("p",{className:"text-sm text-muted-foreground text-center",children:"No filters applied"})})}),(0,a.jsxs)("div",{className:"gap-2 flex justify-end",children:[(0,a.jsx)(W,{variant:"outline",size:"lg",className:"text-sm",onClick:S,children:"Reset"}),(0,a.jsx)(W,{variant:"default",size:"lg",className:"text-sm",onClick:v,children:"Apply"})]})]})]})},$d=({tableName:e})=>{const{isLive:t,status:n,isPulsing:r,setLive:s}=Ue(),o=(0,u.useCallback)(()=>{s(!t,e)},[t,e,s]);let l="Live mode: Automatic updates (Off)";return n==="paused"?l="Live mode paused while editing. Click to resume.":t&&n==="healthy"?l="Live mode: Active":t&&n==="disconnected"&&(l="Live mode: Disconnected. Attempting to reconnect..."),(0,a.jsxs)(at,{children:[(0,a.jsx)(nt,{asChild:!0,children:(0,a.jsxs)(W,{type:"button",variant:"ghost",onClick:o,"aria-label":"Toggle Live mode","aria-pressed":t,"data-active":t,className:z("h-8! px-2.5 border-l-0 border-y-0 border-r border-border rounded-none text-xs font-medium gap-1.5 flex items-center text-muted-foreground hover:text-foreground hover:bg-muted/60 transition-colors",t&&"text-foreground"),children:[(0,a.jsxs)("span",{className:"relative flex size-2 items-center justify-center",children:[t&&n==="healthy"&&r&&(0,a.jsx)("span",{"data-testid":"live-pulse-indicator",className:"absolute inline-flex size-3.5 rounded-full bg-emerald-400 opacity-75 animate-ping"}),(0,a.jsx)("span",{"data-testid":"live-status-dot",className:z("relative inline-flex size-2 rounded-full transition-colors",{"bg-emerald-500":t&&n==="healthy","bg-amber-500":t&&n==="disconnected","bg-amber-400":!t&&n==="paused","bg-muted-foreground/40":!t&&n!=="paused"})})]}),(0,a.jsx)("span",{children:"Live"}),n==="paused"&&(0,a.jsx)("span",{className:"text-[10px] text-amber-500 font-normal",children:"(Paused)"})]})}),(0,a.jsx)(rt,{side:"bottom",children:l})]})},Kd=({tableName:e})=>{const t=ce(),{refetchTableData:n,isRefetchingTableData:r}=Fn({tableName:e,schemaName:t}),{refetchTableCols:s,isRefetchingTableCols:o}=Ce({tableName:e,schemaName:t}),l=(0,u.useCallback)(()=>{Promise.all([n(),s()])},[n,s]);return(0,a.jsx)(W,{type:"button",variant:"ghost",className:"size-8! aspect-square border-l-0 border-y-0 border-r border-border rounded-none text-muted-foreground hover:text-foreground hover:bg-muted/60 transition-colors",onClick:l,"aria-label":"Refetch table data and columns",disabled:r||o,children:(0,a.jsx)(da,{className:"size-4"})})},Vd=({setRowSelection:e,disabledReason:t})=>{const{getUpdates:n,getUpdateCount:r}=Se(),{updateCell:s,isUpdatingCell:o}=Ws(),l=(0,u.useCallback)(async()=>{if(t)return;const i=n();if(i.length!==0)try{await s(i),e({})}catch(f){console.error("Failed to save updates:",f)}},[t,n,s,e]);if(r()===0)return null;const c=r();return(0,a.jsxs)(W,{type:"button",variant:"default",className:"h-8! border-l-0 border-y-0 border-r border-border rounded-none bg-green-700 text-white hover:bg-green-800",onClick:l,"aria-label":"Save changes to the table",disabled:o||!!t,title:t,children:["Save Changes",c>0&&(0,a.jsx)("span",{className:"ml-1.5 px-1.5 text-[10px] bg-white/20 border border-white/20 rounded",children:c})]})},Is=({selectedRows:e,setRowSelection:t,tableName:n})=>{const r=wa(),s=Rn()?.liveMode??!1,{rowMutationReason:o}=Fr();return(0,a.jsx)("header",{className:"max-h-8 overflow-hidden border-b border-border w-full flex items-center justify-between bg-background sticky top-0 left-0 right-0 z-0",children:(0,a.jsxs)("div",{className:"flex items-center ",children:[(0,a.jsx)(Kd,{tableName:n}),s&&(0,a.jsx)($d,{tableName:n}),!r&&(0,a.jsx)(Ld,{tableName:n}),(0,a.jsx)(Id,{tableName:n}),(0,a.jsx)(Pd,{}),(0,a.jsx)(Vd,{setRowSelection:t,disabledReason:o}),(0,a.jsx)(Wd,{}),(0,a.jsx)(Bd,{tableName:n,selectedRows:e,setRowSelection:t,disabledReason:o})]})})},Ud=({tableName:e,selectedRows:t,setRowSelection:n})=>(0,a.jsxs)("div",{className:"size-full flex flex-col items-center justify-center",children:[(0,a.jsx)(Is,{selectedRows:t,setRowSelection:n,tableName:e}),(0,a.jsxs)("div",{className:"text-sm text-muted-foreground flex-1 flex items-center justify-center",children:['No data available for "',e,'" table']})]}),Hd=({tableName:e,errorTableData:t,errorTableCols:n})=>{const r=t||n,s=r?.message||"",o=s.includes("does not exist")||s.includes("404")||r?.status===404,l=s.includes("Network Error")||s.includes("Failed to fetch");let c="Something went wrong",i=s||"An unexpected error occurred";return o?(c="Table not found",i=s||`The table "${e}" does not exist or has been deleted`):l&&(c="Connection failed",i="Unable to connect to the database server. Please check your connection."),(0,a.jsx)("div",{className:"size-full flex flex-col items-center justify-center",children:(0,a.jsxs)("div",{className:"flex-1 flex flex-col items-center justify-center gap-2",children:[(0,a.jsx)("div",{className:"text-sm font-medium",children:c}),(0,a.jsx)("div",{className:"text-sm text-muted-foreground",children:i})]})})};var qd=(e=250)=>{const t=(0,u.useRef)(null);return(0,u.useEffect)(()=>()=>{t.current!==null&&window.clearTimeout(t.current)},[]),{schedule:(0,u.useCallback)(n=>{t.current!==null&&window.clearTimeout(t.current),t.current=window.setTimeout(()=>{t.current=null,n()},e)},[e]),cancel:(0,u.useCallback)(()=>{t.current!==null&&(window.clearTimeout(t.current),t.current=null)},[])}},Jd=(0,u.memo)(function({row:t,tableName:n,virtualColumns:r,virtualPaddingLeft:s,virtualPaddingRight:o,virtualRow:l}){const c=t.getVisibleCells(),{schedule:i,cancel:f}=qd(),{highlightedRowIds:d}=Ue(),m=d.has(t.id),p=()=>{yt.getState().setRowDetails(n,l.index),he.getState().openOverlay("tables.row-details")};return(0,a.jsxs)("tr",{"data-index":l.index,className:z("flex absolute w-fit border-b items-center justify-between text-sm hover:bg-accent/20 data-[state=open]:bg-accent/40 [&_svg]:size-4",m&&"bg-emerald-500/15 dark:bg-emerald-500/20 transition-colors duration-1000 ease-in-out"),style:{transform:`translateY(${l.start}px)`},onClick:g=>{g.target.closest("button, a, input, textarea, select, [role=checkbox], [role=listbox], [role=dialog], [data-grid-cell-editor]")||i(p)},onDoubleClick:f,children:[s?(0,a.jsx)("td",{style:{display:"flex",width:s}}):null,r.map(g=>{const w=c[g.index];return(0,a.jsxs)("td",{className:"group relative flex border-r border-border h-8",style:{width:g.index===0?"40px":w.column.getSize()},children:[nn(w.column.columnDef.cell,w.getContext()),(0,a.jsx)(Ca,{value:w.getValue()})]},w.id)}),o?(0,a.jsx)("td",{style:{display:"flex",width:o}}):null]},t.id)}),Gd=33,Qd=({columnVirtualizer:e,table:t,tableName:n,tableContainerRef:r,virtualPaddingLeft:s,virtualPaddingRight:o})=>{const{rows:l}=t.getRowModel(),c=ca({count:l.length,estimateSize:()=>Gd,getScrollElement:()=>r.current,overscan:5}),i=c.getVirtualItems(),f=e.getVirtualItems();return(0,a.jsx)("tbody",{style:{display:"grid",height:`${c.getTotalSize()}px`,position:"relative"},children:i.map(d=>{const m=l[d.index];return(0,a.jsx)(Jd,{row:m,tableName:n,tableState:t.getState(),tableMeta:t.options.meta,virtualColumns:f,virtualPaddingLeft:s,virtualPaddingRight:o,virtualRow:d},m.id)})})},Zd=(0,u.memo)(Xd,(e,t)=>{const n=e.header.column,r=t.header.column;return!(n.getIsResizing()!==r.getIsResizing()||n.getSize()!==r.getSize()||e.label!==t.label)});function Xd({header:e,table:t,label:n}){const r=t._getDefaultColumnDef(),s=(0,u.useCallback)(()=>{t.setColumnSizing(o=>{const l={...o};return delete l[e.column.id],l})},[e.column.id,t]);return(0,a.jsx)("div",{role:"separator","aria-orientation":"vertical","aria-label":`Resize ${n} column`,"aria-valuenow":e.column.getSize(),"aria-valuemin":r.minSize,"aria-valuemax":r.maxSize,tabIndex:0,className:z("after:-translate-x-1/2 -right-px absolute top-0 z-50 h-full w-0.5 cursor-ew-resize touch-none select-none bg-border transition-opacity after:absolute after:inset-y-0 after:left-1/2 after:h-full after:w-[18px] after:content-[''] hover:bg-primary focus:bg-primary focus:outline-none",e.column.getIsResizing()?"bg-primary":"opacity-0 hover:opacity-100"),onDoubleClick:s,onMouseDown:e.getResizeHandler(),onTouchStart:e.getResizeHandler()})}var ef=({columnVirtualizer:e,headerGroup:t,virtualPaddingLeft:n,virtualPaddingRight:r,table:s})=>{const{table:o}=Fs.useParams(),l=wa(),[c,i]=(0,u.useState)(!1),[f,d]=(0,u.useState)(null),[m,p]=(0,u.useState)(!1),{deleteColumn:g}=Oo(),w=ce(),[,S]=J(L.COLUMN_NAME),[,v]=J(L.TABLE_STATE_KEYS.SORT),[,D]=J(L.TABLE_STATE_KEYS.ORDER),[,C]=J(L.TABLE_STATE_KEYS.CURSOR),[,x]=J(L.TABLE_STATE_KEYS.DIRECTION),h=e.getVirtualItems(),y=s.getState().columnSizingInfo.isResizingColumn,b=(0,u.useCallback)(T=>M=>{M===null?(S(null),v(null),D(null)):(S(T),v(T),D(M==="desc"?"desc":"asc")),C(null),x(null)},[S,v,D,C,x]),N=(0,u.useCallback)(T=>{d(T),p(!1),i(!0)},[]),j=(0,u.useCallback)(T=>{i(T),T||(d(null),p(!1))},[]),k=(0,u.useCallback)(async()=>{!f||!o||(await g({db:o,tableName:o,schemaName:w,columnName:f,cascade:m}),i(!1),d(null),p(!1))},[f,o,g,m]),O=(0,u.useCallback)(()=>{i(!1),d(null),p(!1)},[]);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("tr",{className:z("flex w-fit bg-muted/40 border-b border-border items-center justify-between text-sm data-[state=open]:bg-accent/40 [&_svg]:size-4",y&&"pointer-events-none"),children:[n?(0,a.jsx)("th",{style:{display:"flex",width:n}}):null,h.map(T=>{const M=t.headers[T.index],E=M.column.columnDef.meta?.isPrimaryKey,I=M.column.columnDef.meta?.isForeignKey,R=M.column.columnDef.meta?.dataTypeLabel;return(0,a.jsx)("th",{className:"h-full flex z-100! relative",style:{display:"flex",width:T.index===0?"40px":M.getSize()},children:(0,a.jsx)("div",{className:z("relative w-full h-full flex items-center justify-between gap-2 text-sm hover:bg-accent/20 data-[state=open]:bg-accent/40 [&_svg]:size-4","border-r border-border",M.column.getCanSort()?"cursor-pointer select-none":""),children:T.index===0?nn(M.column.columnDef.header,M.getContext()):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(jr,{children:[(0,a.jsx)(Sr,{asChild:!0,children:(0,a.jsxs)(W,{variant:"outline",className:"relative border-none w-full h-full bg-transparent! rounded-none justify-between",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[E&&(0,a.jsxs)(at,{children:[(0,a.jsx)(nt,{asChild:!0,children:(0,a.jsx)("span",{className:"inline-flex",children:(0,a.jsx)(Zs,{size:20,className:"text-primary"})})}),(0,a.jsx)(rt,{className:"text-[10px]",children:"primary key"})]}),I&&(0,a.jsxs)(at,{children:[(0,a.jsx)(nt,{asChild:!0,children:(0,a.jsx)("span",{className:"inline-flex",children:(0,a.jsx)(ua,{size:20,className:"text-primary"})})}),(0,a.jsx)(rt,{className:"text-[10px]",children:"foreign key"})]}),nn(M.column.columnDef.header,M.getContext())]}),(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[R&&(0,a.jsx)("span",{className:"text-xs leading-none text-muted-foreground",children:R}),(0,a.jsx)("span",{className:"text-xs leading-none text-muted-foreground",children:{asc:(0,a.jsx)(an,{}),desc:(0,a.jsx)(vr,{})}[M.column.getIsSorted()]??null})]})]})}),(0,a.jsxs)(Cr,{className:"w-44",align:"start",children:[!l&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(To,{children:[(0,a.jsxs)($e,{onClick:()=>b(M.column.id)("asc"),children:[(0,a.jsx)(ro,{}),"Sort ascending"]}),(0,a.jsxs)($e,{onClick:()=>b(M.column.id)("desc"),children:[(0,a.jsx)(Gs,{}),"Sort descending"]}),M.column.getIsSorted()&&(0,a.jsxs)($e,{onClick:()=>b(M.column.id)(null),children:[(0,a.jsx)(Mn,{}),"Remove sort"]})]}),(0,a.jsx)(ko,{})]}),(0,a.jsxs)($e,{variant:"destructive",disabled:l,onClick:()=>N(M.column.id),children:[(0,a.jsx)(ha,{}),"Delete column"]})]})]}),M.column.getCanResize()&&(0,a.jsx)(Zd,{header:M,table:s,label:M.column.id})]})})},M.id)}),r?(0,a.jsx)("th",{style:{display:"flex",width:r}}):null]},t.id),(0,a.jsx)(Rt,{open:c,onOpenChange:j,children:(0,a.jsxs)(Mt,{children:[(0,a.jsxs)(Ot,{children:[(0,a.jsx)(_t,{children:"Delete Column"}),(0,a.jsxs)(Pt,{children:['Are you sure you want to delete the column "',f,'"? This action cannot be undone and will permanently remove all data in this column.']})]}),(0,a.jsxs)("div",{className:"flex gap-2 py-2",children:[(0,a.jsx)(Nn,{id:"cascade-delete",checked:m,onCheckedChange:T=>p(T===!0)}),(0,a.jsx)(we,{htmlFor:"cascade-delete",className:"text-xs text-muted-foreground cursor-pointer",children:"Drop with CASCADE (also remove dependent indexes, constraints, and foreign key references)"})]}),(0,a.jsxs)(Et,{children:[(0,a.jsx)(Tt,{onClick:O,children:"Cancel"}),(0,a.jsx)(At,{variant:"destructive",onClick:k,children:"Delete"})]})]})})]})},tf=({columnVirtualizer:e,table:t,virtualPaddingLeft:n,virtualPaddingRight:r})=>(0,a.jsx)("thead",{className:"h-9 grid sticky top-0 z-10 supports-backdrop-filter:backdrop-blur-sm",children:t.getHeaderGroups().map(s=>(0,a.jsx)(ef,{columnVirtualizer:e,headerGroup:s,table:t,virtualPaddingLeft:n,virtualPaddingRight:r},s.id))}),nf=({table:e,tableName:t,pageKey:n})=>{const r=e.getVisibleLeafColumns(),s=(0,u.useRef)(null);(0,u.useLayoutEffect)(()=>{s.current?.scrollTo({top:0})},[n]);const o=ca({count:r.length,estimateSize:f=>r[f].getSize(),getScrollElement:()=>s.current,horizontal:!0,overscan:3}),l=o.getVirtualItems();let c,i;return o&&l?.length&&(c=l[0]?.start??0,i=o.getTotalSize()-(l[l.length-1]?.end??0)),(0,a.jsx)("div",{className:"w-full flex-1 overflow-auto bg-background text-foreground",ref:s,style:{position:"relative"},children:(0,a.jsxs)("table",{style:{display:"grid"},className:"text-foreground",children:[(0,a.jsx)(tf,{columnVirtualizer:o,table:e,virtualPaddingLeft:c,virtualPaddingRight:i}),(0,a.jsx)(Qd,{columnVirtualizer:o,table:e,tableName:t,tableContainerRef:s,virtualPaddingLeft:c,virtualPaddingRight:i})]})})},rf=({table:e,tableName:t,pageKey:n,selectedRows:r,setRowSelection:s})=>(0,a.jsxs)("div",{className:z("flex-1 w-full flex flex-col overflow-hidden pb-9"),children:[(0,a.jsx)(Is,{selectedRows:r,setRowSelection:s,tableName:t}),(0,a.jsx)(nf,{table:e,tableName:t,pageKey:n}),(0,a.jsx)(Ps,{tableName:t})]}),af=()=>(0,a.jsx)("div",{className:"size-full flex items-center justify-center",children:(0,a.jsx)(br,{size:"size-7"})}),sf=()=>{const{clearRowDetails:e}=yt(),{closeOverlay:t}=he(),{status:n,proceed:r,reset:s}=Ys({shouldBlockFn:()=>yt.getState().isDirty,withResolver:!0});return{isBlocked:n==="blocked",discardAndContinue:()=>{e(),t("tables.row-details"),r?.()},keepEditing:()=>s?.()}},of=()=>{const{isBlocked:e,discardAndContinue:t,keepEditing:n}=sf();return(0,a.jsx)(Rt,{open:e,onOpenChange:r=>{r||n()},children:(0,a.jsxs)(Mt,{children:[(0,a.jsxs)(Ot,{children:[(0,a.jsx)(_t,{children:"Discard unsaved changes?"}),(0,a.jsx)(Pt,{children:"This record has unsaved changes. Leaving discards them. Continue?"})]}),(0,a.jsxs)(Et,{children:[(0,a.jsx)(Tt,{children:"Keep editing"}),(0,a.jsx)(At,{onClick:t,children:"Discard changes"})]})]})})},lf=({tableName:e})=>{const t=Rn(),n=ce(),r=Je(),{selectedDatabase:s}=pe(),{tableData:o,pageKey:l,isLoadingTableData:c,errorTableData:i,refetchTableData:f}=Fn({tableName:e,schemaName:n}),{tableCols:d,isLoadingTableCols:m,errorTableCols:p}=Ce({tableName:e,schemaName:n}),g=(0,u.useMemo)(()=>o?.data||[],[o?.data]),{table:w,selectedRows:S,setRowSelection:v,isEditingCell:D}=yd({tableName:e,tableCols:d,tableDataRows:g}),C=w.getRowModel(),x=(0,u.useMemo)(()=>C.rows.map(h=>h.original),[C]);return(0,u.useEffect)(()=>()=>{yt.getState().clearRowDetails();const{closeOverlay:h}=he.getState();h("tables.row-change-primary-key"),h("tables.row-delete-record"),h("tables.row-discard-changes"),h("tables.row-details")},[e]),gu({tableName:e,tableCols:d,tableDataRows:g,refetchTableData:()=>(r.refetchQueries({queryKey:ue.list(s),exact:!0},{cancelRefetch:!1}),f()),isEditingCell:D}),c||m?(0,a.jsx)(af,{}):!o&&i||!d&&p?(0,a.jsx)(Hd,{tableName:e,errorTableData:i,errorTableCols:p}):!o?.data||o.data.length===0?(0,a.jsx)(Ud,{tableName:e,selectedRows:S,setRowSelection:v}):t?.dataModel==="document"?(0,a.jsx)(Ad,{tableName:e,rows:g}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(rf,{table:w,tableName:e,pageKey:l,selectedRows:S,setRowSelection:v}),(0,a.jsx)(Od,{tableName:e,rows:x}),(0,a.jsx)(of,{})]})},cf=lf,$f=({tableName:e})=>{const t=ce();return(0,a.jsxs)("main",{className:"flex-1 flex flex-col overflow-hidden",children:[(0,a.jsx)(cf,{tableName:e}),(0,a.jsx)(au,{tableName:e}),(0,a.jsx)(fu,{tableName:e}),(0,a.jsx)(cu,{tableName:e}),(0,a.jsx)(uu,{tableName:e}),(0,a.jsx)(du,{tableName:e})]},`${t}.${e}`)};export{yt as a,If as c,Ne as d,Se as i,Wf as l,Fs as n,_e as o,vt as r,zf as s,$f as t,Ff as u};
11
+ ){opacity:0}[data-vaul-overlay][data-vaul-snap-points-overlay=true]{opacity:1}[data-vaul-handle]{display:block;position:relative;opacity:.7;background:#e2e2e4;margin-left:auto;margin-right:auto;height:5px;width:32px;border-radius:1rem;touch-action:pan-y}[data-vaul-handle]:active,[data-vaul-handle]:hover{opacity:1}[data-vaul-handle-hitarea]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100%,2.75rem);height:max(100%,2.75rem);touch-action:inherit}@media (hover:hover) and (pointer:fine){[data-vaul-drawer]{user-select:none}}@media (pointer:fine){[data-vaul-handle-hitarea]:{width:100%;height:100%}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeOut{to{opacity:0}}@keyframes slideFromBottom{from{transform:translate3d(0,var(--initial-transform,100%),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToBottom{to{transform:translate3d(0,var(--initial-transform,100%),0)}}@keyframes slideFromTop{from{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToTop{to{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}}@keyframes slideFromLeft{from{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToLeft{to{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}}@keyframes slideFromRight{from{transform:translate3d(var(--initial-transform,100%),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToRight{to{transform:translate3d(var(--initial-transform,100%),0,0)}}`);function yu(){const e=navigator.userAgent;return typeof window<"u"&&(/Firefox/.test(e)&&/Mobile/.test(e)||/FxiOS/.test(e))}function vu(){return _r(/^Mac/)}function bu(){return _r(/^iPhone/)}function ea(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}function wu(){return _r(/^iPad/)||vu()&&navigator.maxTouchPoints>1}function ss(){return bu()||wu()}function _r(e){return typeof window<"u"&&window.navigator!=null?e.test(window.navigator.platform):void 0}var Cu=24,Su=typeof window<"u"?u.useLayoutEffect:u.useEffect;function ta(...e){return(...t)=>{for(let n of e)typeof n=="function"&&n(...t)}}var ar=typeof document<"u"&&window.visualViewport;function na(e){let t=window.getComputedStyle(e);return/(auto|scroll)/.test(t.overflow+t.overflowX+t.overflowY)}function os(e){for(na(e)&&(e=e.parentElement);e&&!na(e);)e=e.parentElement;return e||document.scrollingElement||document.documentElement}var ju=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]),Sn=0,ra;function Du(e={}){let{isDisabled:t}=e;Su(()=>{if(!t)return Sn++,Sn===1&&ss()&&(ra=ku()),()=>{Sn--,Sn===0&&ra?.()}},[t])}function ku(){let e,t=0,n=m=>{e=os(m.target),!(e===document.documentElement&&e===document.body)&&(t=m.changedTouches[0].pageY)},r=m=>{if(!e||e===document.documentElement||e===document.body){m.preventDefault();return}let p=m.changedTouches[0].pageY,g=e.scrollTop,w=e.scrollHeight-e.clientHeight;w!==0&&((g<=0&&p>t||g>=w&&p<t)&&m.preventDefault(),t=p)},s=m=>{let p=m.target;hr(p)&&p!==document.activeElement&&(m.preventDefault(),p.style.transform="translateY(-2000px)",p.focus(),requestAnimationFrame(()=>{p.style.transform=""}))},o=m=>{let p=m.target;hr(p)&&(p.style.transform="translateY(-2000px)",requestAnimationFrame(()=>{p.style.transform="",ar&&(ar.height<window.innerHeight?requestAnimationFrame(()=>{aa(p)}):ar.addEventListener("resize",()=>aa(p),{once:!0}))}))},l=()=>{window.scrollTo(0,0)},c=window.pageXOffset,i=window.pageYOffset,f=ta(Nu(document.documentElement,"paddingRight",`${window.innerWidth-document.documentElement.clientWidth}px`));window.scrollTo(0,0);let d=ta(Jt(document,"touchstart",n,{passive:!1,capture:!0}),Jt(document,"touchmove",r,{passive:!1,capture:!0}),Jt(document,"touchend",s,{passive:!1,capture:!0}),Jt(document,"focus",o,!0),Jt(window,"scroll",l));return()=>{f(),d(),window.scrollTo(c,i)}}function Nu(e,t,n){let r=e.style[t];return e.style[t]=n,()=>{e.style[t]=r}}function Jt(e,t,n,r){return e.addEventListener(t,n,r),()=>{e.removeEventListener(t,n,r)}}function aa(e){let t=document.scrollingElement||document.documentElement;for(;e&&e!==t;){let n=os(e);if(n!==document.documentElement&&n!==document.body&&n!==e){let r=n.getBoundingClientRect().top,s=e.getBoundingClientRect().top;e.getBoundingClientRect().bottom>n.getBoundingClientRect().bottom+Cu&&(n.scrollTop+=s-r)}e=n.parentElement}}function hr(e){return e instanceof HTMLInputElement&&!ju.has(e.type)||e instanceof HTMLTextAreaElement||e instanceof HTMLElement&&e.isContentEditable}function Tu(e,t){typeof e=="function"?e(t):e!=null&&(e.current=t)}function Eu(...e){return t=>e.forEach(n=>Tu(n,t))}function is(...e){return u.useCallback(Eu(...e),e)}var ls=new WeakMap;function le(e,t,n=!1){if(!e||!(e instanceof HTMLElement))return;let r={};Object.entries(t).forEach(([s,o])=>{if(s.startsWith("--")){e.style.setProperty(s,o);return}r[s]=e.style[s],e.style[s]=o}),!n&&ls.set(e,r)}function Ou(e,t){if(!e||!(e instanceof HTMLElement))return;let n=ls.get(e);n&&(e.style[t]=n[t])}var oe=e=>{switch(e){case"top":case"bottom":return!0;case"left":case"right":return!1;default:return e}};function jn(e,t){if(!e)return null;const n=window.getComputedStyle(e),r=n.transform||n.webkitTransform||n.mozTransform;let s=r.match(/^matrix3d\((.+)\)$/);return s?parseFloat(s[1].split(", ")[oe(t)?13:12]):(s=r.match(/^matrix\((.+)\)$/),s?parseFloat(s[1].split(", ")[oe(t)?5:4]):null)}function Mu(e){return 8*(Math.log(e+1)-2)}function sr(e,t){if(!e)return()=>{};const n=e.style.cssText;return Object.assign(e.style,t),()=>{e.style.cssText=n}}var re={DURATION:.5,EASE:[.32,.72,0,1]},cs=.4,Ru=.25,_u=100,us=8,Dn=16,pr=26,or="vaul-dragging";function ds(e){const t=u.useRef(e);return u.useEffect(()=>{t.current=e}),u.useMemo(()=>(...n)=>t.current==null?void 0:t.current.call(t,...n),[])}function Au({defaultProp:e,onChange:t}){const n=u.useState(e),[r]=n,s=u.useRef(r),o=ds(t);return u.useEffect(()=>{s.current!==r&&(o(r),s.current=r)},[r,s,o]),n}function fs({prop:e,defaultProp:t,onChange:n=()=>{}}){const[r,s]=Au({defaultProp:t,onChange:n}),o=e!==void 0,l=o?e:r,c=ds(n);return[l,u.useCallback(i=>{if(o){const f=typeof i=="function"?i(e):i;f!==e&&c(f)}else s(i)},[o,e,s,c])]}function Pu({activeSnapPointProp:e,setActiveSnapPointProp:t,snapPoints:n,drawerRef:r,overlayRef:s,fadeFromIndex:o,onSnapPointChange:l,direction:c="bottom",container:i,snapToSequentialPoint:f}){const[d,m]=fs({prop:e,defaultProp:n?.[0],onChange:t}),[p,g]=u.useState(typeof window<"u"?{innerWidth:window.innerWidth,innerHeight:window.innerHeight}:void 0);u.useEffect(()=>{function N(){g({innerWidth:window.innerWidth,innerHeight:window.innerHeight})}return window.addEventListener("resize",N),()=>window.removeEventListener("resize",N)},[]);const w=u.useMemo(()=>d===n?.[n.length-1]||null,[n,d]),S=u.useMemo(()=>{var N;return(N=n?.findIndex(j=>j===d))!=null?N:null},[n,d]),v=n&&n.length>0&&(o||o===0)&&!Number.isNaN(o)&&n[o]===d||!n,D=u.useMemo(()=>{const N=i?{width:i.getBoundingClientRect().width,height:i.getBoundingClientRect().height}:typeof window<"u"?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0};var j;return(j=n?.map(k=>{const O=typeof k=="string";let T=0;if(O&&(T=parseInt(k,10)),oe(c)){const E=O?T:p?k*N.height:0;return p?c==="bottom"?N.height-E:-N.height+E:E}const M=O?T:p?k*N.width:0;return p?c==="right"?N.width-M:-N.width+M:M}))!=null?j:[]},[n,p,i]),C=u.useMemo(()=>S!==null?D?.[S]:null,[D,S]),x=u.useCallback(N=>{var j;const k=(j=D?.findIndex(O=>O===N))!=null?j:null;l(k),le(r.current,{transition:`transform ${re.DURATION}s cubic-bezier(${re.EASE.join(",")})`,transform:oe(c)?`translate3d(0, ${N}px, 0)`:`translate3d(${N}px, 0, 0)`}),D&&k!==D.length-1&&o!==void 0&&k!==o&&k<o?le(s.current,{transition:`opacity ${re.DURATION}s cubic-bezier(${re.EASE.join(",")})`,opacity:"0"}):le(s.current,{transition:`opacity ${re.DURATION}s cubic-bezier(${re.EASE.join(",")})`,opacity:"1"}),m(n?.[Math.max(k,0)])},[r.current,n,D,o,s,m]);u.useEffect(()=>{if(d||e){var N;const j=(N=n?.findIndex(k=>k===e||k===d))!=null?N:-1;D&&j!==-1&&typeof D[j]=="number"&&x(D[j])}},[d,e,n,D,x]);function h({draggedDistance:N,closeDrawer:j,velocity:k,dismissible:O}){if(o===void 0)return;const T=c==="bottom"||c==="right"?(C??0)-N:(C??0)+N,M=S===o-1,E=S===0,I=N>0;if(M&&le(s.current,{transition:`opacity ${re.DURATION}s cubic-bezier(${re.EASE.join(",")})`}),!f&&k>2&&!I){O?j():x(D[0]);return}if(!f&&k>2&&I&&D&&n){x(D[n.length-1]);return}const R=D?.reduce((H,se)=>typeof H!="number"||typeof se!="number"?H:Math.abs(se-T)<Math.abs(H-T)?se:H),_=oe(c)?window.innerHeight:window.innerWidth;if(k>cs&&Math.abs(N)<_*.4){const H=I?1:-1;if(H>0&&w&&n){x(D[n.length-1]);return}if(E&&H<0&&O&&j(),S===null)return;x(D[S+H]);return}x(R)}function y({draggedDistance:N}){if(C===null)return;const j=c==="bottom"||c==="right"?C-N:C+N;(c==="bottom"||c==="right")&&j<D[D.length-1]||(c==="top"||c==="left")&&j>D[D.length-1]||le(r.current,{transform:oe(c)?`translate3d(0, ${j}px, 0)`:`translate3d(${j}px, 0, 0)`})}function b(N,j){if(!n||typeof S!="number"||!D||o===void 0)return null;const k=S===o-1;if(S>=o&&j)return 0;if(k&&!j)return 1;if(!v&&!k)return null;const O=k?S+1:S-1,T=k?D[O]-D[O-1]:D[O+1]-D[O],M=N/Math.abs(T);return k?1-M:M}return{isLastSnapPoint:w,activeSnapPoint:d,shouldFade:v,getPercentageDragged:b,setActiveSnapPoint:m,activeSnapPointIndex:S,onRelease:h,onDrag:y,snapPointsOffset:D}}function Fu(){const{direction:e,isOpen:t,shouldScaleBackground:n,setBackgroundColorOnScale:r,noBodyStyles:s}=Lt(),o=u.useRef(null),l=(0,u.useMemo)(()=>document.body.style.backgroundColor,[]);function c(){return(window.innerWidth-pr)/window.innerWidth}u.useEffect(()=>{if(t&&n){o.current&&clearTimeout(o.current);const i=document.querySelector("[data-vaul-drawer-wrapper]")||document.querySelector("[vaul-drawer-wrapper]");if(!i)return;r&&!s&&sr(document.body,{background:"black"}),sr(i,{transformOrigin:oe(e)?"top":"left",transitionProperty:"transform, border-radius",transitionDuration:`${re.DURATION}s`,transitionTimingFunction:`cubic-bezier(${re.EASE.join(",")})`});const f=sr(i,{borderRadius:`${us}px`,overflow:"hidden",...oe(e)?{transform:`scale(${c()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`}:{transform:`scale(${c()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`}});return()=>{f(),o.current=window.setTimeout(()=>{l?document.body.style.background=l:document.body.style.removeProperty("background")},re.DURATION*1e3)}}},[t,n,l])}var Gt=null;function Wu({isOpen:e,modal:t,nested:n,hasBeenOpened:r,preventScrollRestoration:s,noBodyStyles:o}){const[l,c]=u.useState(()=>typeof window<"u"?window.location.href:""),i=u.useRef(0),f=u.useCallback(()=>{if(ea()&&Gt===null&&e&&!o){Gt={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,height:document.body.style.height,right:"unset"};const{scrollX:m,innerHeight:p}=window;document.body.style.setProperty("position","fixed","important"),Object.assign(document.body.style,{top:`${-i.current}px`,left:`${-m}px`,right:"0px",height:"auto"}),window.setTimeout(()=>window.requestAnimationFrame(()=>{const g=p-window.innerHeight;g&&i.current>=p&&(document.body.style.top=`${-(i.current+g)}px`)}),300)}},[e]),d=u.useCallback(()=>{if(ea()&&Gt!==null&&!o){const m=-parseInt(document.body.style.top,10),p=-parseInt(document.body.style.left,10);Object.assign(document.body.style,Gt),window.requestAnimationFrame(()=>{if(s&&l!==window.location.href){c(window.location.href);return}window.scrollTo(p,m)}),Gt=null}},[l]);return u.useEffect(()=>{function m(){i.current=window.scrollY}return m(),window.addEventListener("scroll",m),()=>{window.removeEventListener("scroll",m)}},[]),u.useEffect(()=>{if(t)return()=>{typeof document>"u"||document.querySelector("[data-vaul-drawer]")||d()}},[t,d]),u.useEffect(()=>{n||!r||(e?(!window.matchMedia("(display-mode: standalone)").matches&&f(),t||window.setTimeout(()=>{d()},500)):d())},[e,r,l,t,n,f,d]),{restorePositionSetting:d}}function ms({open:e,onOpenChange:t,children:n,onDrag:r,onRelease:s,snapPoints:o,shouldScaleBackground:l=!1,setBackgroundColorOnScale:c=!0,closeThreshold:i=Ru,scrollLockTimeout:f=_u,dismissible:d=!0,handleOnly:m=!1,fadeFromIndex:p=o&&o.length-1,activeSnapPoint:g,setActiveSnapPoint:w,fixed:S,modal:v=!0,onClose:D,nested:C,noBodyStyles:x=!1,direction:h="bottom",defaultOpen:y=!1,disablePreventScroll:b=!0,snapToSequentialPoint:N=!1,preventScrollRestoration:j=!1,repositionInputs:k=!0,onAnimationEnd:O,container:T,autoFocus:M=!1}){var E,I;const[R=!1,_]=fs({defaultProp:y,prop:e,onChange:B=>{t?.(B),!B&&!C&&Bn(),setTimeout(()=>{O?.(B)},re.DURATION*1e3),B&&!v&&typeof window<"u"&&window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"}),B||(document.body.style.pointerEvents="auto")}}),[H,se]=u.useState(!1),[Z,V]=u.useState(!1),[de,Ge]=u.useState(!1),ge=u.useRef(null),Te=u.useRef(null),Ee=u.useRef(null),Qe=u.useRef(null),Oe=u.useRef(null),$=u.useRef(!1),Be=u.useRef(null),Ze=u.useRef(0),Xe=u.useRef(!1),mn=u.useRef(!y),hn=u.useRef(0),U=u.useRef(null),$t=u.useRef(((E=U.current)==null?void 0:E.getBoundingClientRect().height)||0),pn=u.useRef(((I=U.current)==null?void 0:I.getBoundingClientRect().width)||0),Kt=u.useRef(0),{activeSnapPoint:zn,activeSnapPointIndex:et,setActiveSnapPoint:gn,onRelease:Yn,snapPointsOffset:ct,onDrag:xn,shouldFade:wt,getPercentageDragged:Vt}=Pu({snapPoints:o,activeSnapPointProp:g,setActiveSnapPointProp:w,drawerRef:U,fadeFromIndex:p,overlayRef:ge,onSnapPointChange:u.useCallback(B=>{o&&B===ct.length-1&&(Te.current=new Date)},[]),direction:h,container:T,snapToSequentialPoint:N});Du({isDisabled:!R||Z||!v||de||!H||!k||!b});const{restorePositionSetting:Bn}=Wu({isOpen:R,modal:v,nested:C??!1,hasBeenOpened:H,preventScrollRestoration:j,noBodyStyles:x});function Ct(){return(window.innerWidth-pr)/window.innerWidth}function Ln(B){var X,A;!d&&!o||U.current&&!U.current.contains(B.target)||($t.current=((X=U.current)==null?void 0:X.getBoundingClientRect().height)||0,pn.current=((A=U.current)==null?void 0:A.getBoundingClientRect().width)||0,V(!0),Ee.current=new Date,ss()&&window.addEventListener("touchend",()=>$.current=!1,{once:!0}),B.target.setPointerCapture(B.pointerId),Ze.current=oe(h)?B.pageY:B.pageX)}function yn(B,X){var A;let F=B;const Y=(A=window.getSelection())==null?void 0:A.toString(),G=U.current?jn(U.current,h):null,K=new Date;if(F.tagName==="SELECT"||F.hasAttribute("data-vaul-no-drag")||F.closest("[data-vaul-no-drag]"))return!1;if(h==="right"||h==="left")return!0;if(Te.current&&K.getTime()-Te.current.getTime()<500)return!1;if(G!==null&&(h==="bottom"?G>0:G<0))return!0;if(Y&&Y.length>0)return!1;if(Oe.current&&K.getTime()-Oe.current.getTime()<f&&G===0||X)return Oe.current=K,!1;for(;F;){if(F.scrollHeight>F.clientHeight){if(F.scrollTop!==0)return Oe.current=new Date,!1;if(F.getAttribute("role")==="dialog")return!0}F=F.parentNode}return!0}function $n(B){if(U.current&&Z){const X=h==="bottom"||h==="right"?1:-1,A=(Ze.current-(oe(h)?B.pageY:B.pageX))*X,F=A>0,Y=o&&!d&&!F;if(Y&&et===0)return;const G=Math.abs(A),K=document.querySelector("[data-vaul-drawer-wrapper]");let ne=G/(h==="bottom"||h==="top"?$t.current:pn.current);const q=Vt(G,F);if(q!==null&&(ne=q),Y&&ne>=1||!$.current&&!yn(B.target,F))return;if(U.current.classList.add(or),$.current=!0,le(U.current,{transition:"none"}),le(ge.current,{transition:"none"}),o&&xn({draggedDistance:A}),F&&!o){const fe=Mu(A),Le=Math.min(fe*-1,0)*X;le(U.current,{transform:oe(h)?`translate3d(0, ${Le}px, 0)`:`translate3d(${Le}px, 0, 0)`});return}const St=1-ne;if((wt||p&&et===p-1)&&(r?.(B,ne),le(ge.current,{opacity:`${St}`,transition:"none"},!0)),K&&ge.current&&l){const fe=Math.min(Ct()+ne*(1-Ct()),1),Le=8-ne*8,jt=Math.max(0,14-ne*14);le(K,{borderRadius:`${Le}px`,transform:oe(h)?`scale(${fe}) translate3d(0, ${jt}px, 0)`:`scale(${fe}) translate3d(${jt}px, 0, 0)`,transition:"none"},!0)}if(!o){const fe=G*X;le(U.current,{transform:oe(h)?`translate3d(0, ${fe}px, 0)`:`translate3d(${fe}px, 0, 0)`})}}}u.useEffect(()=>{window.requestAnimationFrame(()=>{mn.current=!0})},[]),u.useEffect(()=>{var B;function X(){if(!U.current||!k)return;const A=document.activeElement;if(hr(A)||Xe.current){var F;const Y=((F=window.visualViewport)==null?void 0:F.height)||0,G=window.innerHeight;let K=G-Y;const ne=U.current.getBoundingClientRect().height||0,q=ne>G*.8;Kt.current||(Kt.current=ne);const St=U.current.getBoundingClientRect().top;if(Math.abs(hn.current-K)>60&&(Xe.current=!Xe.current),o&&o.length>0&&ct&&et){const fe=ct[et]||0;K+=fe}if(hn.current=K,ne>Y||Xe.current){const fe=U.current.getBoundingClientRect().height;let Le=fe;fe>Y&&(Le=Y-(q?St:pr)),S?U.current.style.height=`${fe-Math.max(K,0)}px`:U.current.style.height=`${Math.max(Le,Y-St)}px`}else yu()||(U.current.style.height=`${Kt.current}px`);o&&o.length>0&&!Xe.current?U.current.style.bottom="0px":U.current.style.bottom=`${Math.max(K,0)}px`}}return(B=window.visualViewport)==null||B.addEventListener("resize",X),()=>{var A;return(A=window.visualViewport)==null?void 0:A.removeEventListener("resize",X)}},[et,o,ct]);function ut(B){Kn(),D?.(),B||_(!1),setTimeout(()=>{o&&gn(o[0])},re.DURATION*1e3)}function vn(){if(!U.current)return;const B=document.querySelector("[data-vaul-drawer-wrapper]"),X=jn(U.current,h);le(U.current,{transform:"translate3d(0, 0, 0)",transition:`transform ${re.DURATION}s cubic-bezier(${re.EASE.join(",")})`}),le(ge.current,{transition:`opacity ${re.DURATION}s cubic-bezier(${re.EASE.join(",")})`,opacity:"1"}),l&&X&&X>0&&R&&le(B,{borderRadius:`${us}px`,overflow:"hidden",...oe(h)?{transform:`scale(${Ct()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`,transformOrigin:"top"}:{transform:`scale(${Ct()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`,transformOrigin:"left"},transitionProperty:"transform, border-radius",transitionDuration:`${re.DURATION}s`,transitionTimingFunction:`cubic-bezier(${re.EASE.join(",")})`},!0)}function Kn(){!Z||!U.current||(U.current.classList.remove(or),$.current=!1,V(!1),Qe.current=new Date)}function Vn(B){if(!Z||!U.current)return;U.current.classList.remove(or),$.current=!1,V(!1),Qe.current=new Date;const X=jn(U.current,h);if(!B||!yn(B.target,!1)||!X||Number.isNaN(X)||Ee.current===null)return;const A=Qe.current.getTime()-Ee.current.getTime(),F=Ze.current-(oe(h)?B.pageY:B.pageX),Y=Math.abs(F)/A;if(Y>.05&&(Ge(!0),setTimeout(()=>{Ge(!1)},200)),o){Yn({draggedDistance:F*(h==="bottom"||h==="right"?1:-1),closeDrawer:ut,velocity:Y,dismissible:d}),s?.(B,!0);return}if(h==="bottom"||h==="right"?F>0:F<0){vn(),s?.(B,!0);return}if(Y>cs){ut(),s?.(B,!1);return}var G;const K=Math.min((G=U.current.getBoundingClientRect().height)!=null?G:0,window.innerHeight);var ne;const q=Math.min((ne=U.current.getBoundingClientRect().width)!=null?ne:0,window.innerWidth);if(Math.abs(X)>=(h==="left"||h==="right"?q:K)*i){ut(),s?.(B,!1);return}s?.(B,!0),vn()}u.useEffect(()=>(R&&(le(document.documentElement,{scrollBehavior:"auto"}),Te.current=new Date),()=>{Ou(document.documentElement,"scrollBehavior")}),[R]);function Un(B){const X=B?(window.innerWidth-Dn)/window.innerWidth:1,A=B?-16:0;Be.current&&window.clearTimeout(Be.current),le(U.current,{transition:`transform ${re.DURATION}s cubic-bezier(${re.EASE.join(",")})`,transform:oe(h)?`scale(${X}) translate3d(0, ${A}px, 0)`:`scale(${X}) translate3d(${A}px, 0, 0)`}),!B&&U.current&&(Be.current=setTimeout(()=>{const F=jn(U.current,h);le(U.current,{transition:"none",transform:oe(h)?`translate3d(0, ${F}px, 0)`:`translate3d(${F}px, 0, 0)`})},500))}function Hn(B,X){if(X<0)return;const A=(window.innerWidth-Dn)/window.innerWidth,F=A+X*(1-A),Y=-16+X*Dn;le(U.current,{transform:oe(h)?`scale(${F}) translate3d(0, ${Y}px, 0)`:`scale(${F}) translate3d(${Y}px, 0, 0)`,transition:"none"})}function bn(B,X){const A=oe(h)?window.innerHeight:window.innerWidth,F=X?(A-Dn)/A:1,Y=X?-16:0;X&&le(U.current,{transition:`transform ${re.DURATION}s cubic-bezier(${re.EASE.join(",")})`,transform:oe(h)?`scale(${F}) translate3d(0, ${Y}px, 0)`:`scale(${F}) translate3d(${Y}px, 0, 0)`})}return u.useEffect(()=>{v||window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"})},[v]),u.createElement(xo,{defaultOpen:y,onOpenChange:B=>{!d&&!B||(B?se(!0):ut(!0),_(B))},open:R},u.createElement(as.Provider,{value:{activeSnapPoint:zn,snapPoints:o,setActiveSnapPoint:gn,drawerRef:U,overlayRef:ge,onOpenChange:t,onPress:Ln,onRelease:Vn,onDrag:$n,dismissible:d,shouldAnimate:mn,handleOnly:m,isOpen:R,isDragging:Z,shouldFade:wt,closeDrawer:ut,onNestedDrag:Hn,onNestedOpenChange:Un,onNestedRelease:bn,keyboardIsOpen:Xe,modal:v,snapPointsOffset:ct,activeSnapPointIndex:et,direction:h,shouldScaleBackground:l,setBackgroundColorOnScale:c,noBodyStyles:x,container:T,autoFocus:M}},n))}var hs=u.forwardRef(function({...e},t){const{overlayRef:n,snapPoints:r,onRelease:s,shouldFade:o,isOpen:l,modal:c,shouldAnimate:i}=Lt(),f=is(t,n),d=r&&r.length>0;if(!c)return null;const m=u.useCallback(p=>s(p),[s]);return u.createElement(fo,{onMouseUp:m,ref:f,"data-vaul-overlay":"","data-vaul-snap-points":l&&d?"true":"false","data-vaul-snap-points-overlay":l&&o?"true":"false","data-vaul-animate":i?.current?"true":"false",...e})});hs.displayName="Drawer.Overlay";var ps=u.forwardRef(function({onPointerDownOutside:e,style:t,onOpenAutoFocus:n,...r},s){const{drawerRef:o,onPress:l,onRelease:c,onDrag:i,keyboardIsOpen:f,snapPointsOffset:d,activeSnapPointIndex:m,modal:p,isOpen:g,direction:w,snapPoints:S,container:v,handleOnly:D,shouldAnimate:C,autoFocus:x}=Lt(),[h,y]=u.useState(!1),b=is(s,o),N=u.useRef(null),j=u.useRef(null),k=u.useRef(!1),O=S&&S.length>0;Fu();const T=(E,I,R=0)=>{if(k.current)return!0;const _=Math.abs(E.y),H=Math.abs(E.x),se=H>_,Z=["bottom","right"].includes(I)?1:-1;if(I==="left"||I==="right"){if(!(E.x*Z<0)&&H>=0&&H<=R)return se}else if(!(E.y*Z<0)&&_>=0&&_<=R)return!se;return k.current=!0,!0};u.useEffect(()=>{O&&window.requestAnimationFrame(()=>{y(!0)})},[]);function M(E){N.current=null,k.current=!1,c(E)}return u.createElement(ho,{"data-vaul-drawer-direction":w,"data-vaul-drawer":"","data-vaul-delayed-snap-points":h?"true":"false","data-vaul-snap-points":g&&O?"true":"false","data-vaul-custom-container":v?"true":"false","data-vaul-animate":C?.current?"true":"false",...r,ref:b,style:d&&d.length>0?{"--snap-point-height":`${d[m??0]}px`,...t}:t,onPointerDown:E=>{D||(r.onPointerDown==null||r.onPointerDown.call(r,E),N.current={x:E.pageX,y:E.pageY},l(E))},onOpenAutoFocus:E=>{n?.(E),x||E.preventDefault()},onPointerDownOutside:E=>{if(e?.(E),!p||E.defaultPrevented){E.preventDefault();return}f.current&&(f.current=!1)},onFocusOutside:E=>{if(!p){E.preventDefault();return}},onPointerMove:E=>{if(j.current=E,D||(r.onPointerMove==null||r.onPointerMove.call(r,E),!N.current))return;const I=E.pageY-N.current.y,R=E.pageX-N.current.x,_=E.pointerType==="touch"?10:2;T({x:R,y:I},w,_)?i(E):(Math.abs(R)>_||Math.abs(I)>_)&&(N.current=null)},onPointerUp:E=>{r.onPointerUp==null||r.onPointerUp.call(r,E),N.current=null,k.current=!1,c(E)},onPointerOut:E=>{r.onPointerOut==null||r.onPointerOut.call(r,E),M(j.current)},onContextMenu:E=>{r.onContextMenu==null||r.onContextMenu.call(r,E),j.current&&M(j.current)}})});ps.displayName="Drawer.Content";var Iu=250,zu=120,gs=u.forwardRef(function({preventCycle:e=!1,children:t,...n},r){const{closeDrawer:s,isDragging:o,snapPoints:l,activeSnapPoint:c,setActiveSnapPoint:i,dismissible:f,handleOnly:d,isOpen:m,onPress:p,onDrag:g}=Lt(),w=u.useRef(null),S=u.useRef(!1);function v(){if(S.current){x();return}window.setTimeout(()=>{D()},zu)}function D(){if(o||e||S.current){x();return}if(x(),!l||l.length===0){f||s();return}if(c===l[l.length-1]&&f){s();return}const h=l.findIndex(b=>b===c);if(h===-1)return;const y=l[h+1];i(y)}function C(){w.current=window.setTimeout(()=>{S.current=!0},Iu)}function x(){w.current&&window.clearTimeout(w.current),S.current=!1}return u.createElement("div",{onClick:v,onPointerCancel:x,onPointerDown:h=>{d&&p(h),C()},onPointerMove:h=>{d&&g(h)},ref:r,"data-vaul-drawer-visible":m?"true":"false","data-vaul-handle":"","aria-hidden":"true",...n},u.createElement("span",{"data-vaul-handle-hitarea":"","aria-hidden":"true"},t))});gs.displayName="Drawer.Handle";function Yu({onDrag:e,onOpenChange:t,open:n,...r}){const{onNestedDrag:s,onNestedOpenChange:o,onNestedRelease:l}=Lt();if(!s)throw new Error("Drawer.NestedRoot must be placed in another drawer");return u.createElement(ms,{nested:!0,open:n,onClose:()=>{o(!1)},onDrag:(c,i)=>{s(c,i),e?.(c,i)},onOpenChange:c=>{c&&o(c),t?.(c)},onRelease:l,...r})}function Bu(e){const t=Lt(),{container:n=t.container,...r}=e;return u.createElement(co,{container:n,...r})}var fn={Root:ms,NestedRoot:Yu,Content:ps,Overlay:hs,Trigger:uo,Portal:Bu,Handle:gs,Close:vo,Title:mo,Description:yo};function Lu({...e}){return(0,a.jsx)(fn.Root,{"data-slot":"drawer",...e})}function $u({...e}){return(0,a.jsx)(fn.Portal,{"data-slot":"drawer-portal",...e})}function Ku({className:e,...t}){return(0,a.jsx)(fn.Overlay,{"data-slot":"drawer-overlay",className:z("fixed inset-0 z-50 bg-black/80 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...t})}function Vu({className:e,children:t,...n}){return(0,a.jsxs)($u,{"data-slot":"drawer-portal",children:[(0,a.jsx)(Ku,{}),(0,a.jsx)(fn.Content,{"data-slot":"drawer-content",className:z("group/drawer-content fixed z-50 flex h-auto flex-col bg-transparent p-2 text-xs/relaxed text-popover-foreground before:absolute before:inset-2 before:-z-10 before:rounded-xl before:border before:border-border before:bg-popover data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[80vh] data-[vaul-drawer-direction=left]:inset-y-0 data-[vaul-drawer-direction=left]:left-0 data-[vaul-drawer-direction=left]:w-3/4 data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[80vh] data-[vaul-drawer-direction=left]:sm:max-w-sm data-[vaul-drawer-direction=right]:sm:max-w-sm",e),...n,children:(0,a.jsx)(Mo.Provider,{value:!0,children:t})})]})}function Uu({className:e,...t}){return(0,a.jsx)("div",{"data-slot":"drawer-header",className:z("flex flex-col gap-1 p-4 group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center group-data-[vaul-drawer-direction=top]/drawer-content:text-center md:text-left",e),...t})}function Hu({className:e,...t}){return(0,a.jsx)(fn.Title,{"data-slot":"drawer-title",className:z("text-sm font-medium text-foreground",e),...t})}var xs=["shift","alt","meta","mod","ctrl","control"];function qu(){return typeof navigator>"u"?!1:/mac/i.test(navigator.userAgent)&&!/iphone|ipad|ipod/i.test(navigator.userAgent)}var Ju={esc:"escape",return:"enter",left:"arrowleft",right:"arrowright",up:"arrowup",down:"arrowdown",ShiftLeft:"shift",ShiftRight:"shift",AltLeft:"alt",AltRight:"alt",MetaLeft:"meta",MetaRight:"meta",OSLeft:"meta",OSRight:"meta",ControlLeft:"ctrl",ControlRight:"ctrl"};function st(e){return(Ju[e.trim()]||e.trim()).toLowerCase().replace(/key|digit|numpad/,"")}function ys(e){return xs.includes(e)}function ir(e,t=","){return e.toLowerCase().split(t)}function lr(e,t="+",n=">",r=!1,s,o){let l=[],c=!1;e=e.trim(),e.includes(n)?(c=!0,l=e.toLocaleLowerCase().split(n).map(d=>st(d))):l=e.toLocaleLowerCase().split(t).map(d=>st(d));const i={alt:l.includes("alt"),ctrl:l.includes("ctrl")||l.includes("control"),shift:l.includes("shift"),meta:l.includes("meta"),mod:l.includes("mod"),useKey:r},f=l.filter(d=>!xs.includes(d));return{...i,keys:f,description:s,isSequence:c,hotkey:e,metadata:o}}typeof document<"u"&&(document.addEventListener("keydown",e=>{e.code!==void 0&&vs([st(e.code)])}),document.addEventListener("keyup",e=>{e.code!==void 0&&bs([st(e.code)])})),typeof window<"u"&&(window.addEventListener("blur",()=>{ke.clear()}),window.addEventListener("focus",()=>{ke.clear()}),window.addEventListener("contextmenu",()=>{setTimeout(()=>{ke.clear()},0)})),typeof document<"u"&&document.addEventListener("visibilitychange",()=>{ke.clear()});var ke=new Set;function Ar(e){return Array.isArray(e)}function Gu(e,t=","){return(Ar(e)?e:e.split(t)).every(n=>ke.has(n.trim().toLowerCase()))}function vs(e){const t=Array.isArray(e)?e:[e];ke.has("meta")&&ke.forEach(n=>{ys(n)||ke.delete(n.toLowerCase())}),t.forEach(n=>{ke.add(n.toLowerCase())})}function bs(e){e==="meta"?ke.clear():(Array.isArray(e)?e:[e]).forEach(t=>{ke.delete(t.toLowerCase())})}function Qu(e,t,n){(typeof n=="function"&&n(e,t)||n===!0)&&e.preventDefault()}function Zu(e,t,n){return typeof n=="function"?n(e,t):n===!0||n===void 0}var Xu=["input","textarea","select","searchbox","slider","spinbutton","menuitem","menuitemcheckbox","menuitemradio","option","radio","textbox"];function ed(e){return ws(e,Xu)}function ws(e,t=!1){const{target:n,composed:r}=e;let s,o;return td(n)&&r?(s=e.composedPath()[0]&&e.composedPath()[0].tagName,o=e.composedPath()[0]&&e.composedPath()[0].role):(s=n&&n.tagName,o=n&&n.role),Ar(t)?!!(s&&t?.some(l=>l.toLowerCase()===s.toLowerCase()||l===o)):!!(s&&t&&t)}function td(e){return!!e.tagName&&!e.tagName.startsWith("-")&&e.tagName.includes("-")}function nd(e,t){return e.length===0&&t?!1:t?e.some(n=>t.includes(n))||e.includes("*"):!0}var rd=(e,t,n=!1)=>{const{alt:r,meta:s,mod:o,shift:l,ctrl:c,keys:i,useKey:f}=t,{code:d,key:m,ctrlKey:p,metaKey:g,shiftKey:w,altKey:S}=e,v=st(d);if(f&&i?.length===1&&i.includes(m.toLowerCase()))return!0;if(!i?.includes(v)&&!["ctrl","control","unknown","meta","alt","shift","os"].includes(v))return!1;if(!n){if(r!==S&&v!=="alt"||l!==w&&v!=="shift")return!1;if(o){if(qu()?!g:!p)return!1}else if(s!==g&&v!=="meta"&&v!=="os"||c!==p&&v!=="ctrl"&&v!=="control")return!1}return i&&i.length===1&&i.includes(v)?!0:i&&i.length>0?i.includes(v)?Gu(i):!1:!i||i.length===0},ad=(0,u.createContext)(void 0),sd=()=>(0,u.useContext)(ad);function Cs(e,t){return e&&t&&typeof e=="object"&&typeof t=="object"?Object.keys(e).length===Object.keys(t).length&&Object.keys(e).reduce((n,r)=>n&&Cs(e[r],t[r]),!0):e===t}var od=(0,u.createContext)({hotkeys:[],activeScopes:[],toggleScope:()=>{},enableScope:()=>{},disableScope:()=>{}}),id=()=>(0,u.useContext)(od);function ld(e){const t=(0,u.useRef)(void 0);return Cs(t.current,e)||(t.current=e),t.current}var cd=e=>{e.stopPropagation(),e.preventDefault(),e.stopImmediatePropagation()},ud=typeof window<"u"?u.useLayoutEffect:u.useEffect;function dd(e){if(!e)return;const{enabled:t,preventDefault:n,ignoreEventWhen:r,...s}=e;return s}function vt(e,t,n,r){const[s,o]=(0,u.useState)(null),l=(0,u.useCallback)(x=>(o(x),()=>o(null)),[]),c=(0,u.useRef)(!1),i=Array.isArray(n)?Array.isArray(r)?void 0:r:n,f=Ar(e)?e.join(i?.delimiter):e,d=Array.isArray(n)?n:Array.isArray(r)?r:void 0,m=(0,u.useCallback)(t,d??[]),p=(0,u.useRef)(m);d?p.current=m:p.current=t;const g=ld(dd(i)),w=(0,u.useRef)(i?.enabled);w.current=i?.enabled;const S=(0,u.useRef)(i?.preventDefault);S.current=i?.preventDefault;const v=(0,u.useRef)(i?.ignoreEventWhen);v.current=i?.ignoreEventWhen;const{activeScopes:D}=id(),C=sd();return ud(()=>{if(w.current===!1||!nd(D,g?.scopes))return;let x=[],h;const y=(k,O=!1)=>{if(!(ed(k)&&!ws(k,g?.enableOnFormTags))){if(s!==null){const T=s.getRootNode();if((T instanceof Document||T instanceof ShadowRoot)&&T.activeElement!==s&&!s.contains(T.activeElement)){cd(k);return}}k.target?.isContentEditable&&!g?.enableOnContentEditable||ir(f,g?.delimiter).forEach(T=>{if(T.includes(g?.splitKey??"+")&&T.includes(g?.sequenceSplitKey??">")){console.warn(`Hotkey ${T} contains both ${g?.splitKey??"+"} and ${g?.sequenceSplitKey??">"} which is not supported.`);return}const M=lr(T,g?.splitKey,g?.sequenceSplitKey,g?.useKey,g?.description,g?.metadata);if(M.isSequence){h=setTimeout(()=>{x=[]},g?.sequenceTimeoutMs??1e3);const E=M.useKey?k.key:st(k.code);if(ys(E.toLowerCase()))return;if(x.push(E),E!==M.keys?.[x.length-1]){x=[],h&&clearTimeout(h);return}x.length===M.keys?.length&&(p.current(k,M),h&&clearTimeout(h),x=[])}else if(rd(k,M,g?.ignoreModifiers)||M.keys?.includes("*")){if(v.current?.(k)||O&&c.current||(Qu(k,M,S.current),!Zu(k,M,w.current)))return;p.current(k,M),O||(c.current=!0)}})}},b=k=>{k.code!==void 0&&(vs(st(k.code)),(g?.keydown===void 0&&g?.keyup!==!0||g?.keydown)&&y(k))},N=k=>{k.code!==void 0&&(bs(st(k.code)),c.current=!1,g?.keyup&&y(k,!0))},j=s||i?.document||document;return j.addEventListener("keyup",N,i?.eventListenerOptions),j.addEventListener("keydown",b,i?.eventListenerOptions),C&&ir(f,g?.delimiter).forEach(k=>{C.addHotkey(lr(k,g?.splitKey,g?.sequenceSplitKey,g?.useKey,g?.description,g?.metadata))}),()=>{j.removeEventListener("keyup",N,i?.eventListenerOptions),j.removeEventListener("keydown",b,i?.eventListenerOptions),C&&ir(f,g?.delimiter).forEach(k=>{C.removeHotkey(lr(k,g?.splitKey,g?.sequenceSplitKey,g?.useKey,g?.description,g?.metadata))}),x=[],h&&clearTimeout(h)}},[s,g,D,f]),l}var fd=({referencedTable:e,referencedColumn:t,fkValue:n})=>{const{selectedDatabase:r}=pe(),s=ce(),{tableCols:o}=Ce({tableName:e,schemaName:s}),l=(0,u.useMemo)(()=>({columnName:t,operator:"=",value:n}),[t,n]),{data:c,isLoading:i}=yr({queryKey:["fk-drawer",e,t,n,r],queryFn:async()=>(await Po.get(`/tables/${e}/data`,{params:{db:r??"",limit:"50",filters:JSON.stringify([l])}})).data.data,enabled:!!e&&!!r&&n!==""}),f=(0,u.useMemo)(()=>o?.map(p=>({accessorKey:p.columnName,header:p.columnName,meta:{variant:p.enumValues?"enum":p.dataType,isPrimaryKey:p.isPrimaryKey,isForeignKey:p.isForeignKey,referencedTable:p.referencedTable,referencedColumn:p.referencedColumn,enumValues:p.enumValues,dataTypeLabel:p.dataTypeLabel},size:(p.columnName.length+(p.dataTypeLabel?.length||0))*5+100,minSize:100,maxSize:500}))??[],[o]),d=Ks(),m=()=>{d({to:"/table/$table",params:{table:e},search:{filters:[l],[L.TABLE_SCHEMA]:s}})};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(Uu,{className:"flex flex-row items-center justify-between py-3",children:[(0,a.jsx)(Hu,{children:e}),(0,a.jsxs)(W,{variant:"outline",size:"sm",onClick:m,children:[(0,a.jsx)(to,{size:14}),"Open table"]})]}),(0,a.jsx)("div",{className:"flex flex-1 overflow-hidden border-t",children:i?(0,a.jsx)("div",{className:"flex items-center justify-center w-full text-sm text-muted-foreground",children:(0,a.jsx)(br,{})}):(0,a.jsx)(Do,{columns:f,data:c?.data??[],renderCellAccessory:p=>(0,a.jsx)(Ca,{value:p})})})]})};function lt({table:e,cell:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l,className:c,onClick:i,onKeyDown:f,...d}){const{getUpdate:m}=Se(),p=e.options.meta,g=t.row.original,w=!!m(g,r,e.options.meta?.editScope),S=(0,u.useCallback)(j=>{s||(j.preventDefault(),i?.(j),p?.onCellClick?.(n,r,j))},[p,n,r,s,i]),v=(0,u.useCallback)(j=>{s||p?.onCellContextMenu?.(n,r,j)},[p,n,r,s]),D=(0,u.useCallback)(j=>{s||p?.onCellMouseDown?.(n,r,j)},[p,n,r,s]),C=(0,u.useCallback)(j=>{s||p?.onCellMouseEnter?.(n,r,j)},[p,n,r,s]),x=(0,u.useCallback)(()=>{s||p?.onCellMouseUp?.()},[p,s]),h=(0,u.useCallback)(j=>{s||(j.preventDefault(),p?.onCellDoubleClick?.(n,r))},[p,n,r,s]),y=(0,u.useCallback)(j=>{if(f?.(j),!j.defaultPrevented&&!(j.key==="ArrowUp"||j.key==="ArrowDown"||j.key==="ArrowLeft"||j.key==="ArrowRight"||j.key==="Home"||j.key==="End"||j.key==="PageUp"||j.key==="PageDown"||j.key==="Tab")&&o&&!s){if(j.key==="F2"||j.key==="Enter"){j.preventDefault(),j.stopPropagation(),p?.onCellEditingStart?.(n,r);return}if(j.key===" "){j.preventDefault(),j.stopPropagation(),p?.onCellEditingStart?.(n,r);return}j.key.length===1&&!j.ctrlKey&&!j.metaKey&&(j.preventDefault(),j.stopPropagation(),p?.onCellEditingStart?.(n,r))}},[f,o,s,p,n,r]),{highlightedCellKeys:b}=Ue(),N=b.has(`${t.row.id}:${r}`);return(0,a.jsx)("div",{role:"button","data-slot":"grid-cell-wrapper","data-editing":s?"":void 0,"data-focused":o?"":void 0,"data-selected":l?"":void 0,"data-has-update":w?"":void 0,tabIndex:o&&!s?0:-1,className:z("size-full px-2 py-1.5 text-left text-sm outline-none has-data-[slot=checkbox]:pt-2.5","**:data-[slot=grid-cell-content]:line-clamp-1",{"ring-1 ring-ring ring-inset":o,"bg-primary/10":l&&!s,"cursor-default":!s,"ring-2 ring-primary":w,"bg-emerald-500/20 dark:bg-emerald-500/25 transition-colors duration-1000 ease-in-out":N},c),onClick:S,onContextMenu:v,onDoubleClick:h,onMouseDown:D,onMouseEnter:C,onMouseUp:x,onKeyDown:y,...d})}var md=(0,u.lazy)(()=>ja(()=>import("./json-editor-BB8Hth6U.js").then(e=>({default:e.JsonEditor})),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]))),Pr=({active:e,open:t,onOpenChange:n,anchor:r,children:s})=>{const[o,l]=(0,u.useState)(e);return e&&!o&&l(!0),o?(0,a.jsxs)(Yt,{open:t,onOpenChange:n,children:[(0,a.jsx)(Lo,{asChild:!0,children:r}),s]}):r},kn=(0,u.memo)(({cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l})=>{const{setUpdate:c,clearUpdate:i,getUpdate:f}=Se(),d=e.getValue(),m=qe(d),[p,g]=(0,u.useState)(()=>m??""),[w,S]=(0,u.useState)(!1),v=(0,u.useRef)(null),D=(0,u.useRef)(null),C=t.options.meta,x=e.row.original,h=r,y=f(x,h,t.options.meta?.editScope),b=y?qe(y.newValue):m??"",N=(0,u.useCallback)(()=>{c(x,h,p,d,t.options.meta?.editScope),C?.onCellEditingStop?.(),S(!1)},[C,p,d,m,h,x,c]),j=(0,u.useCallback)(()=>{g(m??""),i(x,h,t.options.meta?.editScope),C?.onCellEditingStop?.(),S(!1)},[C,m,h,x,i,p]),k=(0,u.useCallback)(R=>{const _=R.target.value;g(_)},[h,p,m]),O=(0,u.useCallback)(R=>{S(R),R||(p!==m&&c(x,h,p,m,t.options.meta?.editScope),C?.onCellEditingStop?.())},[C,p,m,h,x,c]),T=(0,u.useCallback)(R=>{if(R.preventDefault(),v.current){v.current.focus();const _=v.current.value.length;v.current.setSelectionRange(_,_)}},[]),M=(0,u.useCallback)(R=>{s&&!w&&(R.key==="Escape"?(R.preventDefault(),C?.onCellEditingStop?.()):R.key==="Tab"&&(R.preventDefault(),C?.onCellEditingStop?.({direction:R.shiftKey?"left":"right"})))},[s,w,C]),E=(0,u.useCallback)(R=>{R.key==="Escape"?(R.preventDefault(),j()):R.key==="Enter"&&(R.ctrlKey||R.metaKey)&&(R.preventDefault(),N()),R.stopPropagation()},[j,N,p,m]),I=(0,u.useCallback)(()=>{p!==m&&c(x,h,p,m,t.options.meta?.editScope),C?.onCellEditingStop?.(),S(!1)},[C,p,m,h,x,c]);return(0,u.useEffect)(()=>{s&&!w?(g(b),S(!0)):!s&&w&&S(!1)},[s,w,b]),(0,u.useEffect)(()=>{o&&!s&&!C?.isScrolling&&D.current&&D.current.focus()},[o,s,C?.isScrolling]),vt("enter",()=>N(),{enabled:w}),vt("esc",()=>j(),{enabled:w}),(0,a.jsx)(Pr,{active:w||s,open:w,onOpenChange:O,anchor:(0,a.jsx)(lt,{ref:D,cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l,onKeyDown:M,children:(0,a.jsx)("span",{"data-slot":"grid-cell-content",children:b})}),children:(0,a.jsxs)(it,{"data-grid-cell-editor":"",align:"start",side:"bottom",sideOffset:0,className:"w-[400px] rounded-none p-0 gap-0",onOpenAutoFocus:T,children:[(0,a.jsx)(He,{ref:v,value:p,onChange:k,onKeyDown:E,onBlur:I,className:"min-h-[150px] resize-none rounded-none border-0 shadow-none focus-visible:ring-0",placeholder:"Enter text..."}),(0,a.jsxs)("div",{className:"flex flex-col border-t",children:[(0,a.jsxs)(W,{variant:"ghost",size:"sm",className:"rounded-none justify-start text-xs py-4 px-2",children:[(0,a.jsx)(Ne,{className:"text-xs font-normal",children:"⌘↵"}),(0,a.jsx)("span",{className:"ml-1 text-xs",children:"Save Changes"})]}),(0,a.jsxs)(W,{variant:"ghost",size:"sm",className:"rounded-none justify-start text-xs py-4 px-2",children:[(0,a.jsx)(Ne,{className:"text-xs font-normal",children:"esc"}),(0,a.jsx)("span",{className:"ml-1 text-xs",children:"Cancel Changes"})]})]})]})})});kn.displayName="TableTextCell";var Ss=(0,u.memo)(({cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l})=>{const{setUpdate:c,clearUpdate:i,getUpdate:f}=Se(),d=e.getValue(),m=t.options.meta,p=e.row.original,g=r,w=f(p,g,m?.editScope),S=w?w.newValue:d,[v,D]=(0,u.useState)(S),[C,x]=(0,u.useState)(!1),h=(0,u.useRef)(null);s!==C&&(s&&D(S),x(s));const y=(0,u.useCallback)(()=>{c(p,g,v,d,t.options.meta?.editScope),x(!1),m?.onCellEditingStop?.()},[m,v,d,g,p,c]),b=(0,u.useCallback)(()=>{D(d),i(p,g,t.options.meta?.editScope),x(!1),m?.onCellEditingStop?.()},[m,d,g,p,i,v]),N=(0,u.useCallback)(T=>{const M=T.target.value;D(Number(M)),c(p,g,Number(M),d,t.options.meta?.editScope)},[g,v,d,p,c]),j=(0,u.useCallback)(T=>{T.key==="Escape"?(T.preventDefault(),b()):T.key==="Enter"&&(T.ctrlKey||T.metaKey)&&(T.preventDefault(),y()),T.stopPropagation()},[b,y,v,d]),k=(0,u.useCallback)(()=>{v!==d&&c(p,g,v,d,t.options.meta?.editScope),x(!1),m?.onCellEditingStop?.()},[m,v,d,g,p,c]),O=(0,u.useCallback)(T=>{if(!T)return;T.focus();const M=T.value;T.value="",T.value=M},[]);return(0,u.useEffect)(()=>{o&&!s&&!m?.isScrolling&&h.current&&h.current.focus()},[o,s,m?.isScrolling]),vt("enter",()=>y(),{enabled:C}),vt("esc",()=>b(),{enabled:C}),(0,a.jsx)(lt,{ref:h,cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l,children:C?(0,a.jsx)(ve,{type:"number",variant:"outline",ref:O,value:v??"",onChange:T=>N(T),onKeyDown:T=>j(T),onBlur:k,className:"size-full rounded-none border-none p-0 shadow-none hover:bg-transparent! focus-visible:ring-0 bg-transparent [appearance:textfield] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none"}):(0,a.jsx)("span",{"data-slot":"grid-cell-content",children:qe(S)})})});Ss.displayName="TableNumberCell";var js=(0,u.memo)(({cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l})=>{const{setUpdate:c,clearUpdate:i,getUpdate:f}=Se(),d=e.getValue(),[m,p]=(0,u.useState)(!1),g=(0,u.useRef)(null),w=(0,u.useRef)(null),S=(0,u.useRef)(s),v=t.options.meta;(0,u.useEffect)(()=>{S.current=s},[s]);const D=e.row.original,C=r,x=f(D,C,t.options.meta?.editScope),h=x?x.newValue:d,y=(0,u.useMemo)(()=>h==null?"null":h?"true":"false",[h]),b=(0,u.useCallback)(O=>{let T;O==="null"?T=null:T=O==="true",c(D,C,T,d,t.options.meta?.editScope),p(!1),v?.onCellEditingStop?.()},[C,D,d,c,v]),N=(0,u.useCallback)(()=>{i(D,C,t.options.meta?.editScope),p(!1),v?.onCellEditingStop?.()},[D,C,i,v]),j=(0,u.useCallback)(O=>{p(O),!O&&s&&v?.onCellEditingStop?.()},[s,v]),k=(0,u.useCallback)(O=>{s&&!m&&(O.key==="Escape"?(O.preventDefault(),N()):O.key==="Tab"&&(O.preventDefault(),N(),v?.onCellEditingStop?.({direction:O.shiftKey?"left":"right"})))},[s,m,v,N]);return(0,u.useEffect)(()=>{if(s){const O=setTimeout(()=>{S.current&&(p(!0),setTimeout(()=>{S.current&&w.current?.click()},0))},0);return()=>{clearTimeout(O),p(!1)}}},[s]),(0,u.useEffect)(()=>{o&&!s&&!v?.isScrolling&&g.current&&g.current.focus()},[o,s,v?.isScrolling]),(0,a.jsx)(lt,{ref:g,cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l,onKeyDown:k,className:"p-0!",children:s?(0,a.jsxs)(Ie,{value:y,onValueChange:b,open:m,onOpenChange:j,children:[(0,a.jsx)(Fe,{ref:w,variant:"outline",className:"size-full px-2 py-1.5 rounded-none border-none p-0 shadow-none hover:bg-transparent! focus-visible:ring-0 bg-transparent [&_svg]:hidden",children:(0,a.jsx)(Pe,{})}),(0,a.jsxs)(We,{"data-grid-cell-editor":"",alignOffset:-8,sideOffset:-8,className:"min-w-[calc(var(--radix-select-trigger-width)+16px)]",onEscapeKeyDown:N,onPointerDownOutside:O=>{O.preventDefault(),p(!1),v?.onCellEditingStop?.()},children:[(0,a.jsx)(Q,{value:"true",children:"true"}),(0,a.jsx)(Q,{value:"false",children:"false"}),(0,a.jsx)(Q,{value:"null",children:"NULL"})]})]}):(0,a.jsx)("span",{className:"flex items-center size-full px-2 py-1.5",children:h==null?"NULL":h?"true":"false"})})});js.displayName="TableBooleanCell";var Ds=(0,u.memo)(({cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l})=>{const{setUpdate:c,clearUpdate:i,getUpdate:f}=Se(),d=e.getValue(),[m,p]=(0,u.useState)(!1),g=(0,u.useRef)(null),w=(0,u.useRef)(null),S=(0,u.useRef)(s),v=t.options.meta,D=e.column.columnDef.meta?.enumValues;(0,u.useEffect)(()=>{S.current=s},[s]);const C=e.row.original,x=r,h=f(C,x,t.options.meta?.editScope),y=h?h.newValue:d,b=(0,u.useCallback)(O=>{c(C,x,O==="null"?null:O,d,t.options.meta?.editScope),p(!1),v?.onCellEditingStop?.()},[x,C,d,c,v]),N=(0,u.useCallback)(()=>{i(C,x,t.options.meta?.editScope),p(!1),v?.onCellEditingStop?.()},[C,x,i,v]),j=(0,u.useCallback)(O=>{p(O),!O&&s&&v?.onCellEditingStop?.()},[s,v]),k=(0,u.useCallback)(O=>{s&&!m&&(O.key==="Escape"?(O.preventDefault(),N()):O.key==="Tab"&&(O.preventDefault(),N(),v?.onCellEditingStop?.({direction:O.shiftKey?"left":"right"})))},[s,m,v,N]);return(0,u.useEffect)(()=>{if(s){const O=setTimeout(()=>{S.current&&(p(!0),setTimeout(()=>{S.current&&w.current?.click()},0))},0);return()=>{clearTimeout(O),p(!1)}}},[s]),(0,u.useEffect)(()=>{o&&!s&&!v?.isScrolling&&g.current&&g.current.focus()},[o,s,v?.isScrolling]),(0,a.jsx)(lt,{ref:g,cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l,onKeyDown:k,className:"p-0!",children:s?(0,a.jsxs)(Ie,{value:y===null?"null":y,onValueChange:b,open:m,onOpenChange:j,children:[(0,a.jsx)(Fe,{ref:w,variant:"outline",className:"size-full px-2 py-1.5 rounded-none border-none p-0 shadow-none hover:bg-transparent! focus-visible:ring-0 bg-transparent [&_svg]:hidden",children:(0,a.jsx)(Pe,{})}),(0,a.jsxs)(We,{"data-grid-cell-editor":"",alignOffset:-8,sideOffset:-8,className:"min-w-[calc(var(--radix-select-trigger-width)+16px)]",onEscapeKeyDown:N,onPointerDownOutside:O=>{O.preventDefault(),p(!1),v?.onCellEditingStop?.()},children:[D?.map(O=>(0,a.jsx)(Q,{value:O,children:O},O)),(0,a.jsx)(Q,{value:"null",children:"NULL"})]})]}):(0,a.jsx)("span",{className:"flex items-center size-full px-2 py-1.5 truncate",children:y??"NULL"})})});Ds.displayName="TableEnumCell";var ks=(0,u.memo)(({cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l})=>{const{setUpdate:c,clearUpdate:i,getUpdate:f}=Se(),d=e.getValue(),m=(0,u.useRef)(null),p=t.options.meta,g=e.row.original,w=r,S=f(g,w,t.options.meta?.editScope),v=S?S.newValue:d,D=(0,u.useCallback)(b=>{const N=b?b.toISOString():null;c(g,w,N,d,t.options.meta?.editScope),p?.onCellEditingStop?.()},[w,d,g,c,p]),C=(0,u.useCallback)(()=>{i(g,w,t.options.meta?.editScope),p?.onCellEditingStop?.()},[g,w,i,p,v,d]),x=(0,u.useCallback)(b=>{s&&(b.key==="Escape"||b.key==="Tab")&&(b.preventDefault(),C())},[s,C]),h=(0,u.useCallback)(b=>{b||p?.onCellEditingStop?.()},[p]);(0,u.useEffect)(()=>{o&&!s&&!p?.isScrolling&&m.current&&m.current.focus()},[o,s,p?.isScrolling]);const y=v?new Date(v):void 0;return(0,a.jsx)(lt,{ref:m,cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l,onKeyDown:x,className:s?"p-0!":void 0,children:s?(0,a.jsx)(mt,{isFormatted:!1,icon:!1,value:y,onChange:D,open:!0,onOpenChange:h,placeholder:"Pick a date",className:"size-full px-2! py-1.5! rounded-none border-none p-0 text-sm shadow-none hover:bg-transparent! focus-visible:ring-0 bg-transparent dark:bg-transparent! [&_svg]:hidden"}):(0,a.jsx)("span",{"data-slot":"grid-cell-content",className:z(!y&&"text-muted-foreground"),children:y&&!Number.isNaN(y.getTime())?_e(y,"yyyy-MM-dd"):"Pick a date"})})});ks.displayName="TableDateCell";var Ns=(0,u.memo)(({cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l})=>{const{setUpdate:c,clearUpdate:i,getUpdate:f}=Se(),{editor:d}=Ho(),m=e.getValue();let p;if(typeof m=="string")try{p=JSON.parse(m),console.warn(`TableJsonCell ${r}: initialValue was a string, parsed it to object`,p)}catch(R){console.error(`TableJsonCell ${r}: Failed to parse initialValue string`,m,R),p={}}else p=m;const[g,w]=(0,u.useState)(()=>JSON.stringify(p,null,d.tabSize)??""),[S,v]=(0,u.useState)(!1),D=(0,u.useRef)(null),C=t.options.meta,x=e.row.original,h=r,y=f(x,h,t.options.meta?.editScope),b=y?y.newValue:p,N=JSON.stringify(b),j=(0,u.useMemo)(()=>{try{return JSON.parse(g),null}catch(R){return R instanceof Error?R.message:"Invalid JSON"}},[g]),k=(0,u.useCallback)(()=>{let R;try{R=JSON.parse(g)}catch{return!1}return JSON.stringify(R)===JSON.stringify(p)?i(x,h,t.options.meta?.editScope):c(x,h,R,p,t.options.meta?.editScope),!0},[g,p,h,x,c,i]),O=(0,u.useCallback)(()=>{k()&&(C?.onCellEditingStop?.(),v(!1))},[k,C]),T=(0,u.useCallback)(()=>{w(JSON.stringify(p,null,d.tabSize)??""),i(x,h,t.options.meta?.editScope),C?.onCellEditingStop?.(),v(!1)},[C,p,h,x,i,d.tabSize]),M=(0,u.useCallback)(R=>{v(R),R||(k(),C?.onCellEditingStop?.())},[k,C]),E=(0,u.useCallback)(R=>{R.preventDefault()},[]),I=(0,u.useCallback)(R=>{s&&!S&&(R.key==="Escape"?(R.preventDefault(),C?.onCellEditingStop?.()):R.key==="Tab"&&(R.preventDefault(),C?.onCellEditingStop?.({direction:R.shiftKey?"left":"right"})))},[s,S,C]);return(0,u.useEffect)(()=>{s&&!S?(w(JSON.stringify(b,null,d.tabSize)),v(!0)):!s&&S&&v(!1)},[s,S,b]),(0,u.useEffect)(()=>{o&&!s&&!C?.isScrolling&&D.current&&D.current.focus()},[o,s,C?.isScrolling]),vt("enter",()=>O(),{enabled:S}),vt("esc",()=>T(),{enabled:S}),(0,a.jsx)(Pr,{active:S||s,open:S,onOpenChange:M,anchor:(0,a.jsx)(lt,{ref:D,cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l,onKeyDown:I,children:(0,a.jsx)("span",{"data-slot":"grid-cell-content",children:N})}),children:(0,a.jsxs)(it,{"data-grid-cell-editor":"",align:"start",side:"bottom",sideOffset:0,className:"w-[440px] rounded-none p-0 gap-0",onOpenAutoFocus:E,children:[(0,a.jsx)(u.Suspense,{fallback:(0,a.jsx)("div",{className:"h-[240px]"}),children:(0,a.jsx)(md,{value:g,onChange:w,onSave:O,onCancel:T,className:"h-[240px]"})}),j&&(0,a.jsx)("p",{className:"border-t px-2 py-1.5 text-xs text-destructive truncate",children:j}),(0,a.jsxs)("div",{className:"flex flex-col border-t",children:[(0,a.jsxs)(W,{variant:"ghost",size:"sm",disabled:!!j,onClick:O,className:"rounded-none justify-start text-xs py-4 px-2",children:[(0,a.jsx)(Ne,{className:"text-xs font-normal",children:"⌘↵"}),(0,a.jsx)("span",{className:"ml-1 text-xs",children:"Save Changes"})]}),(0,a.jsxs)(W,{variant:"ghost",size:"sm",onClick:T,className:"rounded-none justify-start text-xs py-4 px-2",children:[(0,a.jsx)(Ne,{className:"text-xs font-normal",children:"esc"}),(0,a.jsx)("span",{className:"ml-1 text-xs",children:"Cancel Changes"})]})]})]})})});Ns.displayName="TableJsonCell";var Ts=(0,u.memo)(({cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l})=>{const{setUpdate:c,clearUpdate:i,getUpdate:f}=Se(),d=e.getValue(),m=qe(d),[p,g]=(0,u.useState)(()=>m??""),[w,S]=(0,u.useState)(!1),[v,D]=(0,u.useState)(!1),[C,x]=(0,u.useState)(!1);v&&!C&&x(!0);const h=(0,u.useRef)(null),y=(0,u.useRef)(null),b=t.options.meta,N=e.column.columnDef.meta?.referencedTable,j=e.row.original,k=r,O=f(j,k,t.options.meta?.editScope),T=O?qe(O.newValue):m??"",M=(0,u.useCallback)(()=>{c(j,k,p,d,t.options.meta?.editScope),b?.onCellEditingStop?.(),S(!1)},[b,p,d,k,j,c]),E=(0,u.useCallback)(()=>{g(m??""),i(j,k,t.options.meta?.editScope),b?.onCellEditingStop?.(),S(!1)},[b,m,k,j,i]),I=(0,u.useCallback)(V=>{g(V.target.value)},[]),R=(0,u.useCallback)(V=>{S(V),V||(p!==m&&c(j,k,p,m,t.options.meta?.editScope),b?.onCellEditingStop?.())},[b,p,m,k,j,c]),_=(0,u.useCallback)(V=>{if(V.preventDefault(),h.current){h.current.focus();const de=h.current.value.length;h.current.setSelectionRange(de,de)}},[]),H=(0,u.useCallback)(V=>{s&&!w&&(V.key==="Escape"?(V.preventDefault(),b?.onCellEditingStop?.()):V.key==="Tab"&&(V.preventDefault(),b?.onCellEditingStop?.({direction:V.shiftKey?"left":"right"})))},[s,w,b]),se=(0,u.useCallback)(V=>{V.key==="Escape"?(V.preventDefault(),E()):V.key==="Enter"&&(V.ctrlKey||V.metaKey)&&(V.preventDefault(),M()),V.stopPropagation()},[E,M]),Z=(0,u.useCallback)(()=>{p!==m&&c(j,k,p,m,t.options.meta?.editScope),b?.onCellEditingStop?.(),S(!1)},[b,p,m,k,j,c]);return(0,u.useEffect)(()=>{s&&!w?(g(T),S(!0)):!s&&w&&S(!1)},[s,w,T]),(0,u.useEffect)(()=>{o&&!s&&!b?.isScrolling&&y.current&&y.current.focus()},[o,s,b?.isScrolling]),(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(Pr,{active:w||s,open:w,onOpenChange:R,anchor:(0,a.jsx)(lt,{ref:y,cell:e,table:t,rowIndex:n,columnId:r,isEditing:s,isFocused:o,isSelected:l,onKeyDown:H,children:T!==""&&(0,a.jsxs)("span",{className:"flex items-center gap-1.5 size-full overflow-hidden",children:[N&&(0,a.jsx)($o,{variant:"outline",className:"shrink-0 cursor-pointer hover:bg-muted",onClick:V=>{V.stopPropagation(),D(!0)},children:N}),(0,a.jsx)("span",{className:"truncate text-muted-foreground",children:T})]})}),children:(0,a.jsxs)(it,{"data-grid-cell-editor":"",align:"start",side:"bottom",sideOffset:0,className:"w-[400px] rounded-none p-0 gap-0",onOpenAutoFocus:_,children:[(0,a.jsx)(He,{ref:h,value:p,onChange:I,onKeyDown:se,onBlur:Z,className:"min-h-[150px] resize-none rounded-none border-0 shadow-none focus-visible:ring-0",placeholder:"Enter value..."}),(0,a.jsxs)("div",{className:"flex flex-col border-t",children:[(0,a.jsxs)(W,{variant:"ghost",size:"sm",className:"rounded-none justify-start text-xs py-4 px-2",children:[(0,a.jsx)(Ne,{className:"text-xs font-normal",children:"⌘↵"}),(0,a.jsx)("span",{className:"ml-1 text-xs",children:"Save Changes"})]}),(0,a.jsxs)(W,{variant:"ghost",size:"sm",className:"rounded-none justify-start text-xs py-4 px-2",children:[(0,a.jsx)(Ne,{className:"text-xs font-normal",children:"esc"}),(0,a.jsx)("span",{className:"ml-1 text-xs",children:"Cancel Changes"})]})]})]})}),C&&(0,a.jsx)(Lu,{open:v,onOpenChange:D,children:(0,a.jsx)(Vu,{className:"h-[70vh]",children:N&&(0,a.jsx)(fd,{referencedTable:N,referencedColumn:e.column.columnDef.meta?.referencedColumn??"id",fkValue:T})})})]})});Ts.displayName="TableForeignKeyCell";var hd=({cell:e,table:t})=>{const n=t.options.meta,r=t.getRowModel().rows,s=(0,u.useMemo)(()=>{const p=r.findIndex(g=>g.original===e.row.original);return p>=0?p:e.row.index},[r,e.row.original,e.row.index]),o=e.column.id,l=n?.focusedCell?.rowIndex===s&&n?.focusedCell?.columnId===o,c=n?.editingCell?.rowIndex===s&&n?.editingCell?.columnId===o,i=n?.getIsCellSelected?.(s,o)??!1,f=e.column.columnDef.meta?.variant,d=e.column.columnDef.meta?.isForeignKey,m=e.column.columnDef.meta?.referencedTable;if(n?.canMutateRows===!1){const p=e.getValue();return(0,a.jsx)(lt,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:!1,isFocused:l,isSelected:i,"aria-readonly":"true",title:n.rowMutationReason,className:"pr-7",children:(0,a.jsx)("span",{"data-slot":"grid-cell-content",children:qe(p)})})}if(d&&m)return(0,a.jsx)(Ts,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i});switch(f){case"text":return(0,a.jsx)(kn,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i});case"boolean":return(0,a.jsx)(js,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i});case"number":return(0,a.jsx)(Ss,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i});case"enum":return(0,a.jsx)(Ds,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i});case"date":return(0,a.jsx)(ks,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i});case"json":return(0,a.jsx)(Ns,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i});case"array":return(0,a.jsx)(kn,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i});default:return(0,a.jsx)(kn,{cell:e,table:t,rowIndex:s,columnId:o,isEditing:c,isFocused:l,isSelected:i})}},pd=()=>({id:"select",accessorKey:"select",header:({table:e})=>(0,a.jsx)("div",{className:"w-full h-full flex items-center justify-center",children:(0,a.jsx)(Nn,{checked:e.getIsAllRowsSelected(),onCheckedChange:()=>e.toggleAllRowsSelected()})}),cell:({row:e})=>(0,a.jsx)("div",{className:"w-full h-full flex items-center justify-center",children:(0,a.jsx)(Nn,{checked:e.getIsSelected(),onCheckedChange:()=>e.toggleSelected()})}),size:20,enableSorting:!1}),Es={order:[],hidden:[]},sa=(e,t)=>e.order.length===t.order.length&&e.hidden.length===t.hidden.length&&e.order.every((n,r)=>n===t.order[r])&&e.hidden.every((n,r)=>n===t.hidden[r]),On=({dbType:e,database:t,tableName:n})=>JSON.stringify([e,t,n]),Os=e=>{const t=e??{};return{order:Array.isArray(t.order)?t.order.filter(n=>typeof n=="string"):[],hidden:Array.isArray(t.hidden)?t.hidden.filter(n=>typeof n=="string"):[]}},gd=e=>!e||typeof e!="object"?{}:Object.fromEntries(Object.entries(e).map(([t,n])=>[t,Os(n)])),Ms=on()(Uo(e=>({prefsByTable:{},setColumnPrefs:(t,n)=>e(r=>({prefsByTable:{...r.prefsByTable,[On(t)]:Os(n)}})),clearColumnPrefs:t=>e(n=>{const{[On(t)]:r,...s}=n.prefsByTable;return{prefsByTable:s}})}),{name:"dbstudio-column-preferences",partialize:e=>({prefsByTable:e.prefsByTable}),merge:(e,t)=>({...t,prefsByTable:gd(e?.prefsByTable)})})),cr=e=>Ms.getState().prefsByTable[On(e)]??Es,tn=(e,t)=>{const n=new Set(e),r=new Set,s=[];for(const o of t.order)n.has(o)&&!r.has(o)&&(s.push(o),r.add(o));for(const o of e)r.has(o)||(s.push(o),r.add(o));return{order:s,hidden:t.hidden.filter(o=>n.has(o)&&typeof o=="string")}},xd=(e,t)=>{const{order:n,hidden:r}=tn(e,t),s=new Set(r);return[...n.filter(o=>!s.has(o))].sort((o,l)=>n.indexOf(o)-n.indexOf(l))},gr=(e,t,n,r)=>{if(t===n)return e;const s=e.indexOf(t),o=e.indexOf(n);if(s===-1||o===-1)return e;const l=[...e];l.splice(s,1);const c=l.indexOf(n),i=(r??(s<o?"after":"before"))==="after"?c+1:c;return l.splice(i,0,t),l},Rs=({tableName:e,tableCols:t})=>{const{dbType:n,selectedDatabase:r}=pe(),{prefsByTable:s,setColumnPrefs:o,clearColumnPrefs:l}=Ms(),c=(0,u.useMemo)(()=>(t??[]).map(x=>x.columnName),[t]),i=(0,u.useMemo)(()=>c.join(`
12
+ `),[c]),f=(0,u.useMemo)(()=>({dbType:n??"",database:r??"",tableName:e}),[n,r,e]),d=s[On(f)]??Es,m=(0,u.useRef)(c);(0,u.useLayoutEffect)(()=>{m.current=c},[c]),(0,u.useEffect)(()=>{if(i.length===0)return;const x=cr(f),h=tn(m.current,x);sa(x,h)||o(f,h)},[f,i,o]);const p=(0,u.useCallback)(x=>{const h=tn(m.current,x);sa(cr(f),h)||o(f,h)},[f,o]),g=(0,u.useCallback)(()=>tn(m.current,cr(f)),[f]),w=(0,u.useCallback)(x=>{const h=g(),y=new Set(h.hidden);y.has(x)?y.delete(x):y.add(x),p({...h,hidden:[...y]})},[g,p]),S=(0,u.useCallback)((x,h,y)=>{const b=g(),N=y??b.order,j=N.indexOf(x),k=j+h;if(j===-1||k<0||k>=N.length)return;const O=N[k],T=gr(b.order,x,O,h===-1?"before":"after");p({...b,order:T})},[g,p]),v=(0,u.useCallback)((x,h,y)=>{const b=g(),N=gr(b.order,x,h,y);p({...b,order:N})},[g,p]),D=(0,u.useCallback)(()=>{const x=g();p({...x,hidden:[]})},[g,p]),C=(0,u.useCallback)(()=>{l(f)},[f,l]);return{orderedColumns:(0,u.useMemo)(()=>tn(c,d).order,[c,d]),visibleColumns:(0,u.useMemo)(()=>xd(c,d),[c,d]),toggleColumn:w,moveColumn:S,reorderColumn:v,showAllColumns:D,resetColumns:C}},Fr=()=>{const e=Rn();return{canMutateRows:e?.rowMutation??!0,rowMutationReason:e?.rowMutation===!1?e.rowMutationReason:void 0}},yd=({tableName:e,tableCols:t,tableDataRows:n,isRowHighlighted:r,isCellHighlighted:s})=>{const[o]=J(L.COLUMN_NAME),[l]=J(L.TABLE_STATE_KEYS.ORDER),{canMutateRows:c,rowMutationReason:i}=Fr(),[f,d]=(0,u.useState)({}),[m,p]=(0,u.useState)({}),[g,w]=(0,u.useState)(null),[S,v]=(0,u.useState)(null),{visibleColumns:D}=Rs({tableName:e,tableCols:t}),C=(0,u.useMemo)(()=>{if(!t)return;const _=new Map(t.map(H=>[H.columnName,H]));return D.map(H=>_.get(H)).filter(H=>!!H)},[t,D]),x=(0,u.useMemo)(()=>pd(),[]),h=(0,u.useMemo)(()=>[x,...C?.map(_=>({accessorKey:_.columnName,header:_.columnName,meta:{variant:_.enumValues?"enum":_.dataType,isPrimaryKey:_.isPrimaryKey,isForeignKey:_.isForeignKey,referencedTable:_.referencedTable,referencedColumn:_.referencedColumn,enumValues:_.enumValues,dataTypeLabel:_.dataTypeLabel},size:(_.columnName.length+(_.dataTypeLabel?.length||0))*5+100,minSize:100,maxSize:500}))||[]],[C,x]);(0,u.useEffect)(()=>{d({})},[e]),(0,u.useEffect)(()=>{c||v(null)},[c]);const y=(0,u.useMemo)(()=>o&&l?[{id:o,desc:l==="desc"}]:[],[o,l]),b=(0,u.useCallback)((_,H)=>{w({rowIndex:_,columnId:H})},[]),N=(0,u.useCallback)((_,H)=>{c&&v({rowIndex:_,columnId:H})},[c]),j=(0,u.useCallback)((_,H)=>{c&&v({rowIndex:_,columnId:H})},[c]),k=(0,u.useCallback)(()=>{v(null)},[]),O=(0,u.useCallback)(()=>{},[]),T=(0,u.useCallback)(()=>!1,[]),M=(0,u.useMemo)(()=>t?.filter(_=>_.isPrimaryKey).map(_=>_.columnName)??[],[t]),E=(0,u.useCallback)(_=>mr(_,M),[M]),I=(0,u.useMemo)(()=>({editScope:e,canMutateRows:c,rowMutationReason:i,focusedCell:g,editingCell:S,onCellClick:b,onCellDoubleClick:N,onCellEditingStart:j,onCellEditingStop:k,onDataUpdate:O,getIsCellSelected:T,isRowHighlighted:r??(_=>Ue.getState().isRowHighlighted(_)),isCellHighlighted:s??((_,H)=>Ue.getState().isCellHighlighted(_,H))}),[e,c,i,g,S,b,N,j,k,O,T,r,s]),R=la({data:n,columns:h,defaultColumn:{cell:hd,size:50,minSize:100,maxSize:500},getRowId:E,getCoreRowModel:ia(),getSortedRowModel:Ls(),state:{sorting:y,rowSelection:f,columnSizing:m},manualSorting:!1,enableRowSelection:!0,enableMultiRowSelection:!0,enableColumnResizing:!0,columnResizeMode:"onChange",onRowSelectionChange:d,onColumnSizingChange:p,meta:I});return{table:R,selectedRows:R.getSelectedRowModel().rows,setRowSelection:d,isEditingCell:!!S}},_s=({tableName:e,schemaName:t})=>{const n=Je(),{tableCols:r}=Ce({tableName:e,schemaName:t}),{selectedDatabase:s,dbType:o}=pe(),{mutateAsync:l,isPending:c,reset:i,error:f}=ot({mutationFn:async({rowData:p,force:g=!1})=>{if(!e)throw new Error("No active table selected");if(!r||r.length===0)throw new Error("No table columns found");return await vd(e,t,r,p,g,s||void 0)},onSuccess:async p=>(await Promise.all([n.invalidateQueries({queryKey:ue.dataByTable(e),exact:!1}),n.invalidateQueries({queryKey:ue.lists()})]),o&&ln.capture("record_deleted",{db_type:o}),p)});return{deleteCells:async p=>{const g=l({rowData:p,force:!1});return Ae.promise(g,{loading:"Deleting records...",success:w=>`Deleted ${w.deletedCount} records from "${e}"`,error:w=>w.message||"Failed to delete records"}),g},forceDeleteCells:async p=>{const g=l({rowData:p,force:!0});return Ae.promise(g,{loading:"Deleting records...",success:w=>`Deleted ${w.deletedCount} records from "${e}"`,error:w=>w.message||"Failed to delete records"}),g},isDeletingCells:c,resetDeleteResult:i,deleteCellsError:f}},vd=async(e,t,n,r,s,o)=>{const l=n.find(i=>i.isPrimaryKey);if(!l)throw new Error("No primary key found for this table");const c={tableName:e,schemaName:t,primaryKeys:r.map(i=>({columnName:l.columnName,value:i[l.columnName]}))};try{const i=await Ao({...c,force:s,db:o});return{deletedCount:i.data.data.deletedCount,fkViolation:i.data.data.fkViolation,relatedRecords:i.data.data.relatedRecords}}catch(i){const f=i;if(f.response?.status===409)return{deletedCount:f.response.data.deletedCount};throw i}},bd=["nextval(","next_value","auto_increment","autoincrement","identity","uuid_generate","gen_random_uuid","newid(","newsequentialid("],wd=e=>{const t=e.columnDefault?.toLowerCase()??"";return bd.some(n=>t.includes(n))},Wr=e=>e?.filter(t=>t.isPrimaryKey)??[],Cd=e=>Wr(e)[0],As=e=>{const t=Wr(e);if(t.length>0)return t.map(r=>r.columnName);const n=e?.find(r=>r.columnName==="id");return n?[n.columnName]:[]},Sd=(e,t)=>{if(!e||!t)return;const n=t.filter(s=>s.isPrimaryKey);if(n.length>0)return JSON.stringify(n.map(s=>[s.columnName,String(e[s.columnName])]));const r=t.find(s=>s.columnName==="id");if(r&&e[r.columnName]!==void 0&&e[r.columnName]!==null)return JSON.stringify([r.columnName,String(e[r.columnName])])},ur=(e,t)=>{const n={};if(!e||!t)return n;for(const r of t){const s=e[r.columnName];if(s==null)n[r.columnName]="";else if(typeof s=="boolean")n[r.columnName]=s?"true":"false";else if(typeof s=="object")try{n[r.columnName]=JSON.stringify(s)}catch{n[r.columnName]=String(s)}else n[r.columnName]=String(s)}return n},jd=(e,t)=>Object.keys(e).filter(n=>e[n]).map(n=>({columnName:n,value:t[n]??""})),Dd=async e=>{await navigator.clipboard.writeText(e)},kd=({tableName:e,tableCols:t,row:n,rowIndex:r})=>{const{setDirty:s}=yt(),o=(0,u.useMemo)(()=>Cd(t),[t]),l=(0,u.useMemo)(()=>Wr(t),[t]),c=(0,u.useMemo)(()=>As(t),[t]),i=(0,u.useMemo)(()=>JSON.stringify((t??[]).map(C=>C.columnName)),[t]),f=ba({defaultValues:(0,u.useMemo)(()=>ur(n,t),[n,t])}),{formState:d}=f,m=d.isDirty;(0,u.useEffect)(()=>{s(m)},[m,s]);const p=l.some(C=>!!d.dirtyFields[C.columnName]),g=(0,u.useRef)(void 0),w=(0,u.useRef)(void 0),S=(0,u.useRef)(null),v=(0,u.useRef)(null),D=(0,u.useRef)(i);return(0,u.useEffect)(()=>{const C=Sd(n,t);if(!(e===v.current&&r===S.current&&i===D.current)){v.current=e,S.current=r,D.current=i,g.current=n,w.current=C,f.reset(ur(n,t));return}if(n===g.current)return;g.current=n;const x=ur(n,t);if(!m){w.current=C,f.reset(x);return}C!==void 0&&w.current!==void 0&&C===w.current?f.reset(x,{keepDirtyValues:!0}):(w.current=C,f.reset(x))},[n,t,e,r,i,f,m]),{methods:f,isDirty:m,pkDirty:p,primaryKeyColumn:o,identityColumnNames:c}},Nd=({tableName:e,schemaName:t})=>{const n=Je(),{selectedDatabase:r,dbType:s}=pe(),{mutateAsync:o,isPending:l}=ot({mutationFn:async({rowData:i,updates:f,primaryKey:d,primaryKeys:m})=>{if(!e)throw new Error("No table selected");if(f.length===0)throw new Error("At least one field is required");return(await Sa({tableName:e,schemaName:t,updates:f.map(p=>({rowData:i,...p})),...d?{primaryKey:d}:{},...m?.length?{primaryKeys:m}:{},db:r})).data.data},onSuccess:async()=>{await Promise.all([n.invalidateQueries({queryKey:ue.dataByTable(e),exact:!1}),n.invalidateQueries({queryKey:ue.lists()})]),s&&ln.capture("record_updated",{db_type:s})}});return{updateRecord:async({rowData:i,updates:f,primaryKey:d,primaryKeys:m})=>{if(f.length===0)throw new Error("At least one field is required");return Ae.promise(o({rowData:i,updates:f,primaryKey:d,primaryKeys:m}),{loading:"Saving changes...",success:p=>p||"Record updated successfully",error:p=>p.message||"Failed to update record"}).unwrap()},isUpdatingRecord:l}},Td=({value:e})=>{const[t,n]=(0,u.useState)(!1);return(0,u.useEffect)(()=>{if(!t)return;const r=window.setTimeout(()=>n(!1),1200);return()=>window.clearTimeout(r)},[t]),e?(0,a.jsx)("button",{type:"button","aria-label":t?"Copied":"Copy value",className:"inline-flex size-7 shrink-0 items-center justify-center rounded-md border border-input bg-background text-muted-foreground transition-colors hover:text-foreground",onClick:()=>{Dd(e).then(()=>n(!0)).catch(()=>{})},children:t?(0,a.jsx)(Vs,{className:"size-3.5"}):(0,a.jsx)(eo,{className:"size-3.5"})}):null},Ed=({column:e,displayValue:t,readOnly:n})=>{const{watch:r,formState:s}=wr(),o=r(e.columnName)??"",l=!!s.dirtyFields[e.columnName];return(0,a.jsxs)("div",{className:"grid grid-cols-3 gap-4",children:[(0,a.jsxs)("div",{className:"col-span-1 flex flex-col gap-1",children:[(0,a.jsxs)("span",{className:"text-sm font-medium",children:[e.columnName,l&&(0,a.jsx)("span",{className:"ml-1.5 inline-block size-1.5 rounded-full bg-primary",children:(0,a.jsx)("span",{className:"sr-only",children:"(modified)"})})]}),(0,a.jsxs)("span",{className:"flex items-center gap-1.5 text-xs text-muted-foreground",children:[e.dataTypeLabel,e.isPrimaryKey&&(0,a.jsx)("span",{className:"rounded border border-border bg-muted px-1 font-mono text-[10px]",children:"PK"})]})]}),(0,a.jsxs)("div",{className:"col-span-2 flex w-full items-start gap-2",children:[(0,a.jsx)("div",{className:"min-w-0 flex-1",children:n?(0,a.jsx)("div",{role:"group","aria-label":e.columnName,className:"break-all rounded-md border border-input bg-muted/40 px-3 py-2 text-sm",children:t||(0,a.jsx)("span",{className:"text-muted-foreground",children:"NULL"})}):(0,a.jsx)(ns,{...e,hideLabel:!0})}),(0,a.jsx)(Td,{value:n?t:qe(o)})]})]})},Od=({tableName:e,rows:t})=>{const{openOverlay:n,closeOverlay:r,isOverlayOpen:s}=he(),{rowIndex:o,selectRowDetails:l,clearRowDetails:c}=yt(),i=ce(),{tableCols:f,isLoadingTableCols:d}=Ce({tableName:e,schemaName:i}),{canMutateRows:m,rowMutationReason:p}=Fr(),{updateRecord:g,isUpdatingRecord:w}=Nd({tableName:e,schemaName:i}),{deleteCells:S,isDeletingCells:v}=_s({tableName:e,schemaName:i}),[D,C]=(0,u.useState)(null),[x,h]=(0,u.useState)(null),y=$=>{C($),n("tables.row-discard-changes")},b=()=>{C(null),r("tables.row-discard-changes")},N=s("tables.row-details")&&o!==null,j=o===null?void 0:t[o],k=w||v,{methods:O,isDirty:T,pkDirty:M,primaryKeyColumn:E,identityColumnNames:I}=kd({tableName:e,tableCols:f,row:j,rowIndex:o}),{formState:R,reset:_,handleSubmit:H}=O;(0,u.useEffect)(()=>{N&&o!==null&&!t[o]&&(T?y("close"):(c(),r("tables.row-details")))},[N,o,t,T,c,r]);const se=()=>{c(),r("tables.row-change-primary-key"),r("tables.row-delete-record"),r("tables.row-discard-changes"),r("tables.row-details")},Z=()=>{k||(T?y("close"):se())},V=$=>{k||$===o||$<0||$>=t.length||(T?y($):l($))},de=()=>{k||!m||(T?y("delete"):n("tables.row-delete-record"))},Ge=()=>{const $=D;b(),$==="close"?se():$==="delete"?n("tables.row-delete-record"):typeof $=="number"&&l($)},ge=async $=>{if(!j||!m)return;const Be=jd(R.dirtyFields,$);if(Be.length!==0)try{await g({rowData:j,updates:Be,primaryKey:I[0],primaryKeys:I}),_($),se()}catch{}},Te=$=>{if(m){if(M){h($),n("tables.row-change-primary-key");return}ge($)}},Ee=async()=>{if(!(!j||!m)){r("tables.row-delete-record");try{(await S([j])).deletedCount>0&&se()}catch{}}},Qe=o!==null&&o>0,Oe=o!==null&&o<t.length-1;return vt("up, down",$=>{o!==null&&($.preventDefault(),V($.key==="ArrowUp"?o-1:o+1))},{enabled:N&&!k},[N,k,o,t.length,T]),(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(bt,{title:"Row details",description:o!==null?`${e} · Row ${o+1} of ${t.length}`:e,cta:(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)(W,{type:"button",variant:"ghost",size:"icon-sm","aria-label":"Previous row",disabled:!Qe||k,onClick:()=>o!==null&&V(o-1),children:(0,a.jsx)(vr,{className:"size-4"})}),(0,a.jsx)(W,{type:"button",variant:"ghost",size:"icon-sm","aria-label":"Next row",disabled:!Oe||k,onClick:()=>o!==null&&V(o+1),children:(0,a.jsx)(an,{className:"size-4"})})]}),closeButton:!1,modal:!1,onFocusOutside:$=>$.preventDefault(),onPointerDownOutside:$=>{$.target?.closest("table, [role=alertdialog]")&&$.preventDefault()},open:N,onOpenChange:$=>{$||Z()},children:f&&f.length>0&&j?(0,a.jsxs)(va,{...O,children:[(0,a.jsxs)("form",{onSubmit:H(Te),className:"flex flex-col h-full",children:[(0,a.jsxs)("div",{className:"space-y-6",children:[p&&(0,a.jsx)(me,{variant:"info",title:"Row editing unavailable",message:p}),f.map($=>(0,a.jsx)(Ed,{column:$,displayValue:qe(j[$.columnName]),readOnly:!m||wd($)},$.columnName))]}),(0,a.jsxs)("div",{className:"flex items-center justify-between gap-2 py-6",children:[(0,a.jsxs)(W,{type:"button",variant:"destructive",size:"lg",disabled:k||!m||!E,title:p??(E?void 0:"Records in tables without a primary key can't be deleted"),onClick:de,children:[(0,a.jsx)(ha,{className:"size-4"}),"Delete"]}),(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)(W,{type:"button",variant:"outline",size:"lg",disabled:k,onClick:Z,children:"Close"}),(0,a.jsx)(W,{type:"submit",size:"lg",disabled:k||!m||!T||I.length===0,title:p??(I.length>0?void 0:"Saving needs a primary key or an id column to address the record"),children:"Save changes"})]})]})]}),(0,a.jsx)(rs,{})]}):(0,a.jsx)("div",{className:"flex flex-col h-full",children:(0,a.jsx)("div",{className:"space-y-6",children:d?(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading row details..."}):(0,a.jsx)(me,{variant:"info",title:"No columns found",message:"Please add at least one column to the table before viewing records."})})})}),(0,a.jsx)(Rt,{open:s("tables.row-discard-changes"),onOpenChange:$=>{$||b()},children:(0,a.jsxs)(Mt,{children:[(0,a.jsxs)(Ot,{children:[(0,a.jsx)(_t,{children:"Discard unsaved changes?"}),(0,a.jsx)(Pt,{children:"This record has unsaved changes. Discard them and continue?"})]}),(0,a.jsxs)(Et,{children:[(0,a.jsx)(Tt,{children:"Keep editing"}),(0,a.jsx)(At,{onClick:Ge,children:"Discard changes"})]})]})}),(0,a.jsx)(Rt,{open:s("tables.row-change-primary-key"),onOpenChange:$=>{$||(r("tables.row-change-primary-key"),h(null))},children:(0,a.jsxs)(Mt,{children:[(0,a.jsxs)(Ot,{children:[(0,a.jsx)(_t,{children:"Change the primary key?"}),(0,a.jsx)(Pt,{children:"Changing the primary key changes the identity of this record. Existing references to the old key may break. Are you sure?"})]}),(0,a.jsxs)(Et,{children:[(0,a.jsx)(Tt,{children:"Cancel"}),(0,a.jsx)(At,{onClick:()=>{r("tables.row-change-primary-key"),x&&(ge(x),h(null))},children:"Change primary key"})]})]})}),(0,a.jsx)(Rt,{open:s("tables.row-delete-record"),onOpenChange:$=>{$||r("tables.row-delete-record")},children:(0,a.jsxs)(Mt,{children:[(0,a.jsxs)(Ot,{children:[(0,a.jsx)(_t,{children:"Delete record"}),(0,a.jsxs)(Pt,{children:['Are you sure you want to delete this record from "',e,'"? This action cannot be undone.']})]}),(0,a.jsxs)(Et,{children:[(0,a.jsx)(Tt,{children:"Cancel"}),(0,a.jsx)(At,{variant:"destructive",onClick:()=>{Ee()},children:"Delete"})]})]})})]})},Md={"--w-rjv-font-family":"monospace","--w-rjv-color":"#6f42c1","--w-rjv-key-string":"#6f42c1","--w-rjv-background-color":"#ffffff","--w-rjv-line-color":"#ddd","--w-rjv-arrow-color":"#6e7781","--w-rjv-edit-color":"var(--w-rjv-color)","--w-rjv-info-color":"#0000004d","--w-rjv-update-color":"#ebcb8b","--w-rjv-copied-color":"#002b36","--w-rjv-copied-success-color":"#28a745","--w-rjv-curlybraces-color":"#6a737d","--w-rjv-colon-color":"#24292e","--w-rjv-brackets-color":"#6a737d","--w-rjv-quotes-color":"var(--w-rjv-key-string)","--w-rjv-quotes-string-color":"var(--w-rjv-type-string-color)","--w-rjv-type-string-color":"#032f62","--w-rjv-type-int-color":"#005cc5","--w-rjv-type-float-color":"#005cc5","--w-rjv-type-bigint-color":"#005cc5","--w-rjv-type-boolean-color":"#d73a49","--w-rjv-type-date-color":"#005cc5","--w-rjv-type-url-color":"#0969da","--w-rjv-type-null-color":"#d73a49","--w-rjv-type-nan-color":"#859900","--w-rjv-type-undefined-color":"#005cc5"};function Rd({className:e,...t}){return(0,a.jsx)("nav",{"aria-label":"pagination","data-slot":"pagination",className:z("mx-auto flex w-full justify-center",e),...t})}function _d({className:e,...t}){return(0,a.jsx)("ul",{"data-slot":"pagination-content",className:z("flex flex-row items-center gap-1",e),...t})}function oa({...e}){return(0,a.jsx)("li",{"data-slot":"pagination-item",...e})}var Ps=({tableName:e,variant:t="row"})=>{const[n,r]=J(L.TABLE_STATE_KEYS.LIMIT),[,s]=J(L.TABLE_STATE_KEYS.CURSOR),[,o]=J(L.TABLE_STATE_KEYS.DIRECTION),{tableData:l,prefetchPage:c}=Fn({tableName:e,schemaName:ce()}),i=l?.meta?.total??0,f=l?.data?.length??0,d=t==="document"?"documents":"rows",m=t==="document"?"Documents per page":"Rows per page",p=n??"50",g=(0,u.useRef)(null),w=h=>{const y=parseInt(h,10);if(Number.isNaN(y)||y<1)return;const b=Math.min(y,1e4).toString();r(b),s(null),o(null)},S=()=>{l?.meta?.nextCursor&&(s(l.meta.nextCursor),o("asc"))},v=()=>{l?.meta?.prevCursor&&(s(l.meta.prevCursor),o("desc"))},D=()=>{l?.meta?.prevCursor&&c(l.meta.prevCursor,"desc")},C=()=>{l?.meta?.nextCursor&&c(l.meta.nextCursor,"asc")},x=()=>{s(null),o(null)};return(0,a.jsxs)("footer",{className:"absolute bottom-0 inset-x-0 h-9 border-t border-border flex items-center justify-between bg-background px-2 text-foreground",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(we,{className:"text-xs text-muted-foreground whitespace-nowrap",children:m}),(0,a.jsxs)("div",{className:"flex items-center h-6 rounded-sm border border-transparent hover:border-border focus-within:border-ring transition-colors",children:[(0,a.jsx)("input",{ref:g,type:"number",min:1,max:1e4,defaultValue:p,onBlur:h=>w(h.target.value),onKeyDown:h=>{h.key==="Enter"&&g.current?.blur()},className:"w-12 min-w-8 px-1 field-sizing-content supports-[field-sizing:content]:w-auto h-full bg-transparent text-xs text-center text-foreground outline-none [appearance:textfield] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none"},p),(0,a.jsxs)(jr,{children:[(0,a.jsx)(Sr,{asChild:!0,children:(0,a.jsx)("button",{type:"button",className:"flex items-center h-full px-0.5 text-muted-foreground hover:text-foreground transition-colors focus:outline-none","aria-label":"Choose preset row count",children:(0,a.jsx)(an,{className:"size-3"})})}),(0,a.jsx)(Cr,{align:"start",className:"min-w-16 border-border",children:Yo.map(h=>(0,a.jsx)($e,{onSelect:()=>w(h.toString()),className:"text-xs justify-center",children:h},h))})]})]})]}),(0,a.jsx)("div",{className:"flex items-center justify-center text-xs text-muted-foreground",children:(0,a.jsxs)("p",{className:"whitespace-nowrap","aria-live":"polite",children:["Showing ",(0,a.jsx)("span",{className:"text-foreground font-medium",children:f})," of"," ",(0,a.jsxs)("span",{className:"text-foreground font-medium",children:[l?.meta?.totalEstimated&&"~",i]})," ",d]})}),(0,a.jsxs)("div",{className:"flex items-center gap-0.5",children:[(0,a.jsx)(W,{size:"sm",variant:"ghost",className:"size-6 disabled:opacity-30",onClick:x,disabled:!l?.meta?.hasPreviousPage||i===0,"aria-label":"Go to first page",children:(0,a.jsx)(so,{"aria-hidden":"true"})}),(0,a.jsx)(Rd,{children:(0,a.jsxs)(_d,{className:"gap-0.5",children:[(0,a.jsx)(oa,{children:(0,a.jsx)(W,{size:"icon-sm",variant:"ghost",className:"size-6 disabled:opacity-30",onClick:v,onPointerEnter:D,onFocus:D,disabled:!l?.meta?.hasPreviousPage||i===0,"aria-label":"Go to previous page",children:(0,a.jsx)(pa,{"aria-hidden":"true"})})}),(0,a.jsx)(oa,{children:(0,a.jsx)(W,{size:"icon-sm",variant:"ghost",className:"size-6 disabled:opacity-30",onClick:S,onPointerEnter:C,onFocus:C,disabled:!l?.meta?.hasNextPage||i===0,"aria-label":"Go to next page",children:(0,a.jsx)(ma,{"aria-hidden":"true"})})})]})})]})]})},Ad=({tableName:e,rows:t})=>{const{isDark:n}=Go();return(0,a.jsxs)("div",{className:"flex-1 w-full flex flex-col overflow-hidden pb-9",children:[(0,a.jsx)("div",{className:"flex-1 overflow-auto bg-background p-3",children:(0,a.jsx)(qo,{value:t,keyName:e,objectSortKeys:!1,displayObjectSize:!0,displayDataTypes:!1,indentWidth:14,collapsed:1,shortenTextAfterLength:120,highlightUpdates:!1,style:n?Jo:Md,enableClipboard:!0,className:"size-full"})}),(0,a.jsx)(Ps,{tableName:e,variant:"document"})]})},Pd=()=>{const{openOverlay:e}=he();return(0,a.jsxs)(jr,{children:[(0,a.jsx)(Sr,{asChild:!0,children:(0,a.jsxs)(W,{type:"button",variant:"default",className:"h-8! border-l-0 border-y-0 border-r border-border rounded-none flex items-center gap-2","aria-label":"Add records to the table",children:[(0,a.jsx)(Us,{className:"size-4"}),"Add Record"]})}),(0,a.jsxs)(Cr,{align:"start",className:"w-48",children:[(0,a.jsx)($e,{onClick:()=>e("records.add-record"),children:"Add Record"}),(0,a.jsx)($e,{onClick:()=>e("records.bulk-insert-csv"),children:"Add data from CSV"}),(0,a.jsx)($e,{onClick:()=>e("records.bulk-insert-excel"),children:"Add data from Excel"}),(0,a.jsx)($e,{onClick:()=>e("records.bulk-insert-json"),children:"Add data from JSON"})]})]})},Fd=()=>ja(()=>import("./_table-DBhcrzbS.js"),__vite__mapDeps([15,3,1,2])),Fs=Bs("/_pathlessLayout/table/$table")({component:$s(Fd,"component")}),Ws=()=>{const e=Je(),{table:t}=Fs.useParams(),n=ce(),{clearUpdates:r,getUpdateCount:s}=Se(),{selectedDatabase:o}=pe(),{tableCols:l}=Ce({tableName:t,schemaName:n??void 0}),{mutateAsync:c,isPending:i}=ot({mutationFn:async d=>{if(!t)throw new Error("No table selected");const m=As(l),p={tableName:t,updates:d.map(g=>({rowData:g.rowData,columnName:g.columnName,value:g.newValue})),...m.length>0?{primaryKey:m[0],primaryKeys:m}:{}};return(await Sa({...p,schemaName:n,db:o})).data.data},onSuccess:async()=>{r(),await Promise.all([e.invalidateQueries({queryKey:ue.dataByTable(t),exact:!1})])}});return{updateCell:async d=>{const m=s();return Ae.promise(c(d),{loading:"Saving changes...",success:p=>p||`${m} ${m===1?"change":"changes"} saved successfully`,error:p=>p.message||"Failed to save changes"})},isUpdatingCell:i}},Wd=()=>{const{getUpdateCount:e,clearUpdates:t}=Se(),{isUpdatingCell:n}=Ws(),r=(0,u.useCallback)(()=>{t()},[t]);return e()===0?null:(0,a.jsx)(W,{type:"button",variant:"secondary",className:"h-8! border-l-0 border-y-0 border-r border-border rounded-none",onClick:r,"aria-label":"Clear changes to the table",disabled:n,children:"Clear Changes"})},Id=({tableName:e})=>{const[t,n]=(0,u.useState)(""),[r,s]=(0,u.useState)(null),o=(0,u.useRef)(null),{tableCols:l}=Ce({tableName:e,schemaName:ce()}),{orderedColumns:c,visibleColumns:i,toggleColumn:f,moveColumn:d,reorderColumn:m,showAllColumns:p,resetColumns:g}=Rs({tableName:e,tableCols:l}),w=(0,u.useMemo)(()=>{const y=t.trim().toLowerCase();return y?c.filter(b=>b.toLowerCase().includes(y)):c},[c,t]),S=r?.order??w,v=()=>{if(!r)return;const y=r.order.indexOf(r.name);y>0?m(r.name,r.order[y-1],"after"):r.order.length>1&&m(r.name,r.order[1],"before")},D=(0,u.useMemo)(()=>new Set(i),[i]),C=l?.length??0,x=C-i.length,h=x>0||c.some((y,b)=>(l??[])[b]?.columnName!==y);return(0,a.jsxs)(Yt,{children:[(0,a.jsx)(cn,{asChild:!0,children:(0,a.jsx)(W,{type:"button",variant:"ghost",className:z("size-8! aspect-square border-l-0 border-y-0 border-r border-border rounded-none text-muted-foreground hover:text-foreground hover:bg-muted/60 transition-colors",h&&"text-foreground"),"aria-label":"Manage columns","data-active":h,children:(0,a.jsx)(lo,{className:"size-4"})})}),(0,a.jsxs)(it,{align:"start",className:"w-72 gap-0 p-0",onOpenAutoFocus:y=>{y.preventDefault(),o.current?.focus()},children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 p-2",children:[(0,a.jsxs)("div",{className:"relative flex-1",children:[(0,a.jsx)(Xs,{className:"absolute left-2 top-1/2 -translate-y-1/2 size-3.5 text-muted-foreground pointer-events-none"}),(0,a.jsx)("input",{ref:o,type:"text",placeholder:"Search columns...",value:t,onChange:y=>n(y.target.value),className:"w-full h-8 pl-7 pr-2 text-sm bg-transparent rounded-md border border-border focus:outline-none focus:ring-1 focus:ring-ring","aria-label":"Search columns"})]}),(0,a.jsxs)("span",{className:"text-xs text-muted-foreground tabular-nums whitespace-nowrap",title:`${i.length} of ${C} columns shown`,children:[i.length,"/",C]})]}),(0,a.jsx)(zr,{className:"my-0"}),(0,a.jsxs)("div",{className:"max-h-72 overflow-y-auto py-1",role:"list","aria-label":"Database columns",onDragOver:y=>{r&&(y.preventDefault(),y.dataTransfer.dropEffect="move")},onDrop:y=>{y.preventDefault(),v()},children:[S.map((y,b)=>{const N=D.has(y);return(0,a.jsxs)("div",{role:"listitem",draggable:!0,onDragStart:j=>{j.dataTransfer.effectAllowed="move",j.dataTransfer.setData("text/plain",y),s({name:y,order:w})},onDragEnter:()=>s(j=>j&&j.name!==y?{...j,order:gr(j.order,j.name,y)}:j),onDragEnd:()=>s(null),className:z("group flex items-center gap-1.5 px-2 py-1 rounded-md",r?.name===y&&"bg-muted text-muted-foreground"),children:[(0,a.jsx)("span",{role:"button",tabIndex:0,"aria-label":`Reorder ${y}`,"aria-roledescription":"sortable",title:"Drag, or focus and press ArrowUp or ArrowDown to move",className:"cursor-grab active:cursor-grabbing text-muted-foreground/70 hover:text-muted-foreground focus-visible:outline focus-visible:outline-1 focus-visible:outline-ring rounded-sm",onKeyDown:j=>{j.key==="ArrowUp"?(j.preventDefault(),j.stopPropagation(),d(y,-1,w)):j.key==="ArrowDown"&&(j.preventDefault(),j.stopPropagation(),d(y,1,w))},children:(0,a.jsx)(ao,{className:"size-4"})}),(0,a.jsx)(Nn,{checked:N,onCheckedChange:()=>f(y),"aria-label":`Show ${y}`}),(0,a.jsx)("span",{className:"text-sm flex-1 cursor-pointer select-none truncate",onClick:()=>f(y),children:y}),(0,a.jsxs)("span",{className:"flex flex-col opacity-0 group-hover:opacity-100 focus-within:opacity-100",children:[(0,a.jsx)("button",{type:"button",tabIndex:0,disabled:b===0,"aria-label":`Move ${y} up`,className:"text-muted-foreground/70 hover:text-foreground disabled:opacity-30 disabled:pointer-events-none",onClick:()=>d(y,-1,w),children:(0,a.jsx)(vr,{className:"size-3.5"})}),(0,a.jsx)("button",{type:"button",tabIndex:0,disabled:b===S.length-1,"aria-label":`Move ${y} down`,className:"text-muted-foreground/70 hover:text-foreground disabled:opacity-30 disabled:pointer-events-none",onClick:()=>d(y,1,w),children:(0,a.jsx)(an,{className:"size-3.5"})})]})]},y)}),w.length===0&&(0,a.jsxs)("p",{className:"text-sm text-muted-foreground text-center py-4 px-2",children:['No columns match "',t,'"']})]}),(0,a.jsx)(zr,{className:"my-0"}),(0,a.jsxs)("div",{className:"p-2 flex gap-2",children:[(0,a.jsxs)(W,{variant:"outline",size:"sm",className:"flex-1 text-xs",disabled:x===0,onClick:p,children:[(0,a.jsx)(io,{className:"size-3.5"}),"Show all"]}),(0,a.jsxs)(W,{variant:"outline",size:"sm",className:"flex-1 text-xs",disabled:!h,onClick:g,children:[(0,a.jsx)(oo,{className:"size-3.5"}),"Reset"]})]})]})]})},zd=({isOpenFkDialog:e,handleDialogClose:t,relatedRecords:n,handleCancelForceDelete:r,handleForceDelete:s,isDeletingCells:o})=>(0,a.jsx)(So,{open:e,onOpenChange:t,children:(0,a.jsxs)(bo,{className:"max-w-2xl z-500",children:[(0,a.jsxs)(wo,{children:[(0,a.jsx)(jo,{children:"Cannot Delete - Foreign Key Constraint"}),(0,a.jsx)(Co,{children:"The selected records cannot be deleted because they are referenced by records in other tables. You can either cancel the operation or force delete, which will also delete all related records."})]}),(0,a.jsx)(Yd,{relatedRecords:n}),(0,a.jsxs)(Eo,{className:"gap-2",children:[(0,a.jsx)(W,{variant:"outline",onClick:r,disabled:o,children:"Cancel"}),(0,a.jsx)(W,{variant:"destructive",onClick:s,disabled:o,children:o?"Deleting...":"Force Delete All"})]})]})}),Yd=({relatedRecords:e})=>(0,a.jsx)("div",{className:"space-y-4 max-h-64 overflow-y-auto",children:e.map((t,n)=>(0,a.jsxs)("div",{className:"border border-border rounded-md p-3",children:[(0,a.jsxs)("div",{className:"font-medium text-sm mb-2",children:["Table: ",(0,a.jsx)("span",{className:"text-primary",children:t.tableName}),(0,a.jsxs)("span",{className:"text-muted-foreground ml-2",children:["(",t.records.length," record",t.records.length!==1?"s":"",")"]})]}),(0,a.jsxs)("div",{className:"text-xs text-muted-foreground mb-2",children:["References column: ",t.columnName]}),(0,a.jsx)("div",{className:"bg-muted rounded p-2 text-xs overflow-x-auto",children:(0,a.jsxs)("pre",{className:"whitespace-pre-wrap",children:[JSON.stringify(t.records.slice(0,5),null,2),t.records.length>5&&(0,a.jsxs)("div",{className:"text-muted-foreground mt-2",children:["... and ",t.records.length-5," more"]})]})})]},`${t.tableName}-${t.columnName}-${n}`))}),Bd=({selectedRows:e,setRowSelection:t,tableName:n,disabledReason:r})=>{const{deleteCells:s,forceDeleteCells:o,isDeletingCells:l,resetDeleteResult:c}=_s({tableName:n,schemaName:ce()}),[i,f]=(0,u.useState)([]),[d,m]=(0,u.useState)(!1),[p,g]=(0,u.useState)(!1),[w,S]=(0,u.useState)([]),v=(0,u.useCallback)(()=>{r||g(!0)},[r]),D=(0,u.useCallback)(async()=>{if(r)return;const y=e.map(b=>b.original);g(!1);try{await s(y),t({})}catch{f(y),S([]),m(!0)}},[r,s,e,t]),C=async()=>{r||i.length===0||(await o(i))?.deletedCount>0&&(m(!1),f([]),S([]),c(),t({}))},x=(0,u.useCallback)(()=>{m(!1),f([]),S([]),c()},[c]),h=y=>{l||(y?m(y):x())};return e?.length===0?null:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(W,{type:"button",variant:"destructive",className:"h-8! border-l-0 border-y-0 border-r border-border text-white rounded-none",onClick:v,"aria-label":"Delete the selected record",disabled:l||!!r,title:r,children:["Delete Record",e?.length>1&&(0,a.jsx)("span",{className:"ml-1.5 px-1.5 text-[10px] bg-white/20 border border-white/20 rounded",children:e?.length})]}),(0,a.jsx)(Rt,{open:p,onOpenChange:g,children:(0,a.jsxs)(Mt,{children:[(0,a.jsxs)(Ot,{children:[(0,a.jsxs)(_t,{children:["Delete ",e.length===1?"Record":"Records"]}),(0,a.jsxs)(Pt,{children:["Are you sure you want to delete"," ",e.length===1?"this record":`${e.length} records`," ",'from "',n,'"? This action cannot be undone.']})]}),(0,a.jsxs)(Et,{children:[(0,a.jsx)(Tt,{children:"Cancel"}),(0,a.jsx)(At,{variant:"destructive",onClick:D,children:"Delete"})]})]})}),(0,a.jsx)(zd,{isOpenFkDialog:d,handleDialogClose:h,relatedRecords:w,handleCancelForceDelete:x,handleForceDelete:C,isDeletingCells:l})]})},Ld=({tableName:e})=>{const[t,n]=J(L.TABLE_STATE_KEYS.FILTERS,Ft(x=>x).withDefault([]).withOptions({history:"push"})),[,r]=J(L.TABLE_STATE_KEYS.CURSOR),[,s]=J(L.TABLE_STATE_KEYS.DIRECTION),{tableCols:o}=Ce({tableName:e,schemaName:ce()}),[l,c]=(0,u.useState)(!1),[i,f]=(0,u.useState)([]),d=()=>{const x=o?.[0]?.columnName??"";f(h=>[...h,{columnName:x,operator:"=",value:""}])},m=x=>{f(i.filter((h,y)=>y!==x))},p=(x,h)=>{f(i.map((y,b)=>b===x?{...y,columnName:h}:y))},g=(x,h)=>{f(i.map((y,b)=>b===x?{...y,value:h}:y))},w=(x,h)=>{f(i.map((y,b)=>b===x?{...y,operator:h}:y))},S=()=>{f([]),n([]),r(null),s(null),c(!1)},v=()=>{const x=i.filter(h=>h.columnName&&h.operator&&h.value!=="");n(x),r(null),s(null),c(!1)},D=t.length>0,C=x=>{x&&f(t),c(x)};return(0,a.jsxs)(Yt,{open:l,onOpenChange:C,children:[(0,a.jsx)(cn,{asChild:!0,children:(0,a.jsx)(W,{type:"button",variant:"ghost",className:"size-8! aspect-square border-l-0 border-y-0 border-r border-border rounded-none text-muted-foreground hover:text-foreground hover:bg-muted/60 transition-colors","aria-label":"Filter table data","data-active":D,children:(0,a.jsx)(fa,{className:"size-4"})})}),(0,a.jsxs)(it,{className:"w-md space-y-2",align:"start",children:[(0,a.jsx)("div",{className:"flex items-center gap-4",children:(0,a.jsxs)(W,{variant:"outline",size:"lg",className:"text-sm",onClick:d,children:["Add filter",i&&i.length>0&&(0,a.jsx)(Ne,{className:"text-xs font-normal text-primary bg-primary/10 border border-primary/30 px-1.5 py-0.5",children:i.length})]})}),(0,a.jsx)("div",{className:"flex flex-col gap-4",children:i.length>0?i.map((x,h)=>(0,a.jsxs)("div",{className:"flex-1 flex h-9 gap-2",children:[(0,a.jsxs)(Ie,{value:x.columnName,onValueChange:y=>p(h,y),children:[(0,a.jsx)(Fe,{className:"w-full flex-1",children:(0,a.jsx)(Pe,{placeholder:"Select column"})}),(0,a.jsx)(We,{children:o?.map(y=>(0,a.jsx)(Q,{value:y.columnName,children:y.columnName},y.columnName))})]}),(0,a.jsxs)(Ie,{value:x.operator,onValueChange:y=>w(h,y),children:[(0,a.jsx)(Fe,{children:(0,a.jsx)(Pe,{placeholder:"Op"})}),(0,a.jsxs)(We,{children:[(0,a.jsx)(Q,{value:"=",children:"="}),(0,a.jsx)(Q,{value:"!=",children:"!="}),(0,a.jsx)(Q,{value:">",children:">"}),(0,a.jsx)(Q,{value:">=",children:">="}),(0,a.jsx)(Q,{value:"<",children:"<"}),(0,a.jsx)(Q,{value:"<=",children:"<="}),(0,a.jsx)(Q,{value:"is",children:"is"}),(0,a.jsx)(Q,{value:"is not",children:"is not"}),(0,a.jsx)(Q,{value:"like",children:"like"}),(0,a.jsx)(Q,{value:"not like",children:"not like"}),(0,a.jsx)(Q,{value:"ilike",children:"ilike"}),(0,a.jsx)(Q,{value:"not ilike",children:"not ilike"})]})]}),(0,a.jsx)(ve,{type:"text",placeholder:"Value",value:x.value,onChange:y=>g(h,y.target.value)}),(0,a.jsx)(W,{variant:"ghost",size:"icon",className:"text-xs",onClick:()=>m(h),children:(0,a.jsx)(Mn,{className:"size-4"})})]},`${x.columnName}-${h}`)):(0,a.jsx)("div",{className:"flex-1 flex h-9 gap-2 items-center justify-center",children:(0,a.jsx)("p",{className:"text-sm text-muted-foreground text-center",children:"No filters applied"})})}),(0,a.jsxs)("div",{className:"gap-2 flex justify-end",children:[(0,a.jsx)(W,{variant:"outline",size:"lg",className:"text-sm",onClick:S,children:"Reset"}),(0,a.jsx)(W,{variant:"default",size:"lg",className:"text-sm",onClick:v,children:"Apply"})]})]})]})},$d=({tableName:e})=>{const{isLive:t,status:n,isPulsing:r,setLive:s}=Ue(),o=(0,u.useCallback)(()=>{s(!t,e)},[t,e,s]);let l="Live mode: Automatic updates (Off)";return n==="paused"?l="Live mode paused while editing. Click to resume.":t&&n==="healthy"?l="Live mode: Active":t&&n==="disconnected"&&(l="Live mode: Disconnected. Attempting to reconnect..."),(0,a.jsxs)(at,{children:[(0,a.jsx)(nt,{asChild:!0,children:(0,a.jsxs)(W,{type:"button",variant:"ghost",onClick:o,"aria-label":"Toggle Live mode","aria-pressed":t,"data-active":t,className:z("h-8! px-2.5 border-l-0 border-y-0 border-r border-border rounded-none text-xs font-medium gap-1.5 flex items-center text-muted-foreground hover:text-foreground hover:bg-muted/60 transition-colors",t&&"text-foreground"),children:[(0,a.jsxs)("span",{className:"relative flex size-2 items-center justify-center",children:[t&&n==="healthy"&&r&&(0,a.jsx)("span",{"data-testid":"live-pulse-indicator",className:"absolute inline-flex size-3.5 rounded-full bg-emerald-400 opacity-75 animate-ping"}),(0,a.jsx)("span",{"data-testid":"live-status-dot",className:z("relative inline-flex size-2 rounded-full transition-colors",{"bg-emerald-500":t&&n==="healthy","bg-amber-500":t&&n==="disconnected","bg-amber-400":!t&&n==="paused","bg-muted-foreground/40":!t&&n!=="paused"})})]}),(0,a.jsx)("span",{children:"Live"}),n==="paused"&&(0,a.jsx)("span",{className:"text-[10px] text-amber-500 font-normal",children:"(Paused)"})]})}),(0,a.jsx)(rt,{side:"bottom",children:l})]})},Kd=({tableName:e})=>{const t=ce(),{refetchTableData:n,isRefetchingTableData:r}=Fn({tableName:e,schemaName:t}),{refetchTableCols:s,isRefetchingTableCols:o}=Ce({tableName:e,schemaName:t}),l=(0,u.useCallback)(()=>{Promise.all([n(),s()])},[n,s]);return(0,a.jsx)(W,{type:"button",variant:"ghost",className:"size-8! aspect-square border-l-0 border-y-0 border-r border-border rounded-none text-muted-foreground hover:text-foreground hover:bg-muted/60 transition-colors",onClick:l,"aria-label":"Refetch table data and columns",disabled:r||o,children:(0,a.jsx)(da,{className:"size-4"})})},Vd=({setRowSelection:e,disabledReason:t})=>{const{getUpdates:n,getUpdateCount:r}=Se(),{updateCell:s,isUpdatingCell:o}=Ws(),l=(0,u.useCallback)(async()=>{if(t)return;const i=n();if(i.length!==0)try{await s(i),e({})}catch(f){console.error("Failed to save updates:",f)}},[t,n,s,e]);if(r()===0)return null;const c=r();return(0,a.jsxs)(W,{type:"button",variant:"default",className:"h-8! border-l-0 border-y-0 border-r border-border rounded-none bg-green-700 text-white hover:bg-green-800",onClick:l,"aria-label":"Save changes to the table",disabled:o||!!t,title:t,children:["Save Changes",c>0&&(0,a.jsx)("span",{className:"ml-1.5 px-1.5 text-[10px] bg-white/20 border border-white/20 rounded",children:c})]})},Is=({selectedRows:e,setRowSelection:t,tableName:n})=>{const r=wa(),s=Rn()?.liveMode??!1,{rowMutationReason:o}=Fr();return(0,a.jsx)("header",{className:"max-h-8 overflow-hidden border-b border-border w-full flex items-center justify-between bg-background sticky top-0 left-0 right-0 z-0",children:(0,a.jsxs)("div",{className:"flex items-center ",children:[(0,a.jsx)(Kd,{tableName:n}),s&&(0,a.jsx)($d,{tableName:n}),!r&&(0,a.jsx)(Ld,{tableName:n}),(0,a.jsx)(Id,{tableName:n}),(0,a.jsx)(Pd,{}),(0,a.jsx)(Vd,{setRowSelection:t,disabledReason:o}),(0,a.jsx)(Wd,{}),(0,a.jsx)(Bd,{tableName:n,selectedRows:e,setRowSelection:t,disabledReason:o})]})})},Ud=({tableName:e,selectedRows:t,setRowSelection:n})=>(0,a.jsxs)("div",{className:"size-full flex flex-col items-center justify-center",children:[(0,a.jsx)(Is,{selectedRows:t,setRowSelection:n,tableName:e}),(0,a.jsxs)("div",{className:"text-sm text-muted-foreground flex-1 flex items-center justify-center",children:['No data available for "',e,'" table']})]}),Hd=({tableName:e,errorTableData:t,errorTableCols:n})=>{const r=t||n,s=r?.message||"",o=s.includes("does not exist")||s.includes("404")||r?.status===404,l=s.includes("Network Error")||s.includes("Failed to fetch");let c="Something went wrong",i=s||"An unexpected error occurred";return o?(c="Table not found",i=s||`The table "${e}" does not exist or has been deleted`):l&&(c="Connection failed",i="Unable to connect to the database server. Please check your connection."),(0,a.jsx)("div",{className:"size-full flex flex-col items-center justify-center",children:(0,a.jsxs)("div",{className:"flex-1 flex flex-col items-center justify-center gap-2",children:[(0,a.jsx)("div",{className:"text-sm font-medium",children:c}),(0,a.jsx)("div",{className:"text-sm text-muted-foreground",children:i})]})})};var qd=(e=250)=>{const t=(0,u.useRef)(null);return(0,u.useEffect)(()=>()=>{t.current!==null&&window.clearTimeout(t.current)},[]),{schedule:(0,u.useCallback)(n=>{t.current!==null&&window.clearTimeout(t.current),t.current=window.setTimeout(()=>{t.current=null,n()},e)},[e]),cancel:(0,u.useCallback)(()=>{t.current!==null&&(window.clearTimeout(t.current),t.current=null)},[])}},Jd=(0,u.memo)(function({row:t,tableName:n,virtualColumns:r,virtualPaddingLeft:s,virtualPaddingRight:o,virtualRow:l}){const c=t.getVisibleCells(),{schedule:i,cancel:f}=qd(),{highlightedRowIds:d}=Ue(),m=d.has(t.id),p=()=>{yt.getState().setRowDetails(n,l.index),he.getState().openOverlay("tables.row-details")};return(0,a.jsxs)("tr",{"data-index":l.index,className:z("flex absolute w-fit border-b items-center justify-between text-sm hover:bg-accent/20 data-[state=open]:bg-accent/40 [&_svg]:size-4",m&&"bg-emerald-500/15 dark:bg-emerald-500/20 transition-colors duration-1000 ease-in-out"),style:{transform:`translateY(${l.start}px)`},onClick:g=>{g.target.closest("button, a, input, textarea, select, [role=checkbox], [role=listbox], [role=dialog], [data-grid-cell-editor]")||i(p)},onDoubleClick:f,children:[s?(0,a.jsx)("td",{style:{display:"flex",width:s}}):null,r.map(g=>{const w=c[g.index];return(0,a.jsxs)("td",{className:"group relative flex border-r border-border h-8",style:{width:g.index===0?"40px":w.column.getSize()},children:[nn(w.column.columnDef.cell,w.getContext()),(0,a.jsx)(Ca,{value:w.getValue()})]},w.id)}),o?(0,a.jsx)("td",{style:{display:"flex",width:o}}):null]},t.id)}),Gd=33,Qd=({columnVirtualizer:e,table:t,tableName:n,tableContainerRef:r,virtualPaddingLeft:s,virtualPaddingRight:o})=>{const{rows:l}=t.getRowModel(),c=ca({count:l.length,estimateSize:()=>Gd,getScrollElement:()=>r.current,overscan:5}),i=c.getVirtualItems(),f=e.getVirtualItems();return(0,a.jsx)("tbody",{style:{display:"grid",height:`${c.getTotalSize()}px`,position:"relative"},children:i.map(d=>{const m=l[d.index];return(0,a.jsx)(Jd,{row:m,tableName:n,tableState:t.getState(),tableMeta:t.options.meta,virtualColumns:f,virtualPaddingLeft:s,virtualPaddingRight:o,virtualRow:d},m.id)})})},Zd=(0,u.memo)(Xd,(e,t)=>{const n=e.header.column,r=t.header.column;return!(n.getIsResizing()!==r.getIsResizing()||n.getSize()!==r.getSize()||e.label!==t.label)});function Xd({header:e,table:t,label:n}){const r=t._getDefaultColumnDef(),s=(0,u.useCallback)(()=>{t.setColumnSizing(o=>{const l={...o};return delete l[e.column.id],l})},[e.column.id,t]);return(0,a.jsx)("div",{role:"separator","aria-orientation":"vertical","aria-label":`Resize ${n} column`,"aria-valuenow":e.column.getSize(),"aria-valuemin":r.minSize,"aria-valuemax":r.maxSize,tabIndex:0,className:z("after:-translate-x-1/2 -right-px absolute top-0 z-50 h-full w-0.5 cursor-ew-resize touch-none select-none bg-border transition-opacity after:absolute after:inset-y-0 after:left-1/2 after:h-full after:w-[18px] after:content-[''] hover:bg-primary focus:bg-primary focus:outline-none",e.column.getIsResizing()?"bg-primary":"opacity-0 hover:opacity-100"),onDoubleClick:s,onMouseDown:e.getResizeHandler(),onTouchStart:e.getResizeHandler()})}var ef=({columnVirtualizer:e,headerGroup:t,virtualPaddingLeft:n,virtualPaddingRight:r,table:s})=>{const{table:o}=Fs.useParams(),l=wa(),[c,i]=(0,u.useState)(!1),[f,d]=(0,u.useState)(null),[m,p]=(0,u.useState)(!1),{deleteColumn:g}=Oo(),w=ce(),[,S]=J(L.COLUMN_NAME),[,v]=J(L.TABLE_STATE_KEYS.SORT),[,D]=J(L.TABLE_STATE_KEYS.ORDER),[,C]=J(L.TABLE_STATE_KEYS.CURSOR),[,x]=J(L.TABLE_STATE_KEYS.DIRECTION),h=e.getVirtualItems(),y=s.getState().columnSizingInfo.isResizingColumn,b=(0,u.useCallback)(T=>M=>{M===null?(S(null),v(null),D(null)):(S(T),v(T),D(M==="desc"?"desc":"asc")),C(null),x(null)},[S,v,D,C,x]),N=(0,u.useCallback)(T=>{d(T),p(!1),i(!0)},[]),j=(0,u.useCallback)(T=>{i(T),T||(d(null),p(!1))},[]),k=(0,u.useCallback)(async()=>{!f||!o||(await g({db:o,tableName:o,schemaName:w,columnName:f,cascade:m}),i(!1),d(null),p(!1))},[f,o,g,m]),O=(0,u.useCallback)(()=>{i(!1),d(null),p(!1)},[]);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("tr",{className:z("flex w-fit bg-muted/40 border-b border-border items-center justify-between text-sm data-[state=open]:bg-accent/40 [&_svg]:size-4",y&&"pointer-events-none"),children:[n?(0,a.jsx)("th",{style:{display:"flex",width:n}}):null,h.map(T=>{const M=t.headers[T.index],E=M.column.columnDef.meta?.isPrimaryKey,I=M.column.columnDef.meta?.isForeignKey,R=M.column.columnDef.meta?.dataTypeLabel;return(0,a.jsx)("th",{className:"h-full flex z-100! relative",style:{display:"flex",width:T.index===0?"40px":M.getSize()},children:(0,a.jsx)("div",{className:z("relative w-full h-full flex items-center justify-between gap-2 text-sm hover:bg-accent/20 data-[state=open]:bg-accent/40 [&_svg]:size-4","border-r border-border",M.column.getCanSort()?"cursor-pointer select-none":""),children:T.index===0?nn(M.column.columnDef.header,M.getContext()):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(jr,{children:[(0,a.jsx)(Sr,{asChild:!0,children:(0,a.jsxs)(W,{variant:"outline",className:"relative border-none w-full h-full bg-transparent! rounded-none justify-between",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[E&&(0,a.jsxs)(at,{children:[(0,a.jsx)(nt,{asChild:!0,children:(0,a.jsx)("span",{className:"inline-flex",children:(0,a.jsx)(Zs,{size:20,className:"text-primary"})})}),(0,a.jsx)(rt,{className:"text-[10px]",children:"primary key"})]}),I&&(0,a.jsxs)(at,{children:[(0,a.jsx)(nt,{asChild:!0,children:(0,a.jsx)("span",{className:"inline-flex",children:(0,a.jsx)(ua,{size:20,className:"text-primary"})})}),(0,a.jsx)(rt,{className:"text-[10px]",children:"foreign key"})]}),nn(M.column.columnDef.header,M.getContext())]}),(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[R&&(0,a.jsx)("span",{className:"text-xs leading-none text-muted-foreground",children:R}),(0,a.jsx)("span",{className:"text-xs leading-none text-muted-foreground",children:{asc:(0,a.jsx)(an,{}),desc:(0,a.jsx)(vr,{})}[M.column.getIsSorted()]??null})]})]})}),(0,a.jsxs)(Cr,{className:"w-44",align:"start",children:[!l&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(To,{children:[(0,a.jsxs)($e,{onClick:()=>b(M.column.id)("asc"),children:[(0,a.jsx)(ro,{}),"Sort ascending"]}),(0,a.jsxs)($e,{onClick:()=>b(M.column.id)("desc"),children:[(0,a.jsx)(Gs,{}),"Sort descending"]}),M.column.getIsSorted()&&(0,a.jsxs)($e,{onClick:()=>b(M.column.id)(null),children:[(0,a.jsx)(Mn,{}),"Remove sort"]})]}),(0,a.jsx)(ko,{})]}),(0,a.jsxs)($e,{variant:"destructive",disabled:l,onClick:()=>N(M.column.id),children:[(0,a.jsx)(ha,{}),"Delete column"]})]})]}),M.column.getCanResize()&&(0,a.jsx)(Zd,{header:M,table:s,label:M.column.id})]})})},M.id)}),r?(0,a.jsx)("th",{style:{display:"flex",width:r}}):null]},t.id),(0,a.jsx)(Rt,{open:c,onOpenChange:j,children:(0,a.jsxs)(Mt,{children:[(0,a.jsxs)(Ot,{children:[(0,a.jsx)(_t,{children:"Delete Column"}),(0,a.jsxs)(Pt,{children:['Are you sure you want to delete the column "',f,'"? This action cannot be undone and will permanently remove all data in this column.']})]}),(0,a.jsxs)("div",{className:"flex gap-2 py-2",children:[(0,a.jsx)(Nn,{id:"cascade-delete",checked:m,onCheckedChange:T=>p(T===!0)}),(0,a.jsx)(we,{htmlFor:"cascade-delete",className:"text-xs text-muted-foreground cursor-pointer",children:"Drop with CASCADE (also remove dependent indexes, constraints, and foreign key references)"})]}),(0,a.jsxs)(Et,{children:[(0,a.jsx)(Tt,{onClick:O,children:"Cancel"}),(0,a.jsx)(At,{variant:"destructive",onClick:k,children:"Delete"})]})]})})]})},tf=({columnVirtualizer:e,table:t,virtualPaddingLeft:n,virtualPaddingRight:r})=>(0,a.jsx)("thead",{className:"h-9 grid sticky top-0 z-10 supports-backdrop-filter:backdrop-blur-sm",children:t.getHeaderGroups().map(s=>(0,a.jsx)(ef,{columnVirtualizer:e,headerGroup:s,table:t,virtualPaddingLeft:n,virtualPaddingRight:r},s.id))}),nf=({table:e,tableName:t,pageKey:n})=>{const r=e.getVisibleLeafColumns(),s=(0,u.useRef)(null);(0,u.useLayoutEffect)(()=>{s.current?.scrollTo({top:0})},[n]);const o=ca({count:r.length,estimateSize:f=>r[f].getSize(),getScrollElement:()=>s.current,horizontal:!0,overscan:3}),l=o.getVirtualItems();let c,i;return o&&l?.length&&(c=l[0]?.start??0,i=o.getTotalSize()-(l[l.length-1]?.end??0)),(0,a.jsx)("div",{className:"w-full flex-1 overflow-auto bg-background text-foreground",ref:s,style:{position:"relative"},children:(0,a.jsxs)("table",{style:{display:"grid"},className:"text-foreground",children:[(0,a.jsx)(tf,{columnVirtualizer:o,table:e,virtualPaddingLeft:c,virtualPaddingRight:i}),(0,a.jsx)(Qd,{columnVirtualizer:o,table:e,tableName:t,tableContainerRef:s,virtualPaddingLeft:c,virtualPaddingRight:i})]})})},rf=({table:e,tableName:t,pageKey:n,selectedRows:r,setRowSelection:s})=>(0,a.jsxs)("div",{className:z("flex-1 w-full flex flex-col overflow-hidden pb-9"),children:[(0,a.jsx)(Is,{selectedRows:r,setRowSelection:s,tableName:t}),(0,a.jsx)(nf,{table:e,tableName:t,pageKey:n}),(0,a.jsx)(Ps,{tableName:t})]}),af=()=>(0,a.jsx)("div",{className:"size-full flex items-center justify-center",children:(0,a.jsx)(br,{size:"size-7"})}),sf=()=>{const{clearRowDetails:e}=yt(),{closeOverlay:t}=he(),{status:n,proceed:r,reset:s}=Ys({shouldBlockFn:()=>yt.getState().isDirty,withResolver:!0});return{isBlocked:n==="blocked",discardAndContinue:()=>{e(),t("tables.row-details"),r?.()},keepEditing:()=>s?.()}},of=()=>{const{isBlocked:e,discardAndContinue:t,keepEditing:n}=sf();return(0,a.jsx)(Rt,{open:e,onOpenChange:r=>{r||n()},children:(0,a.jsxs)(Mt,{children:[(0,a.jsxs)(Ot,{children:[(0,a.jsx)(_t,{children:"Discard unsaved changes?"}),(0,a.jsx)(Pt,{children:"This record has unsaved changes. Leaving discards them. Continue?"})]}),(0,a.jsxs)(Et,{children:[(0,a.jsx)(Tt,{children:"Keep editing"}),(0,a.jsx)(At,{onClick:t,children:"Discard changes"})]})]})})},lf=({tableName:e})=>{const t=Rn(),n=ce(),r=Je(),{selectedDatabase:s}=pe(),{tableData:o,pageKey:l,isLoadingTableData:c,errorTableData:i,refetchTableData:f}=Fn({tableName:e,schemaName:n}),{tableCols:d,isLoadingTableCols:m,errorTableCols:p}=Ce({tableName:e,schemaName:n}),g=(0,u.useMemo)(()=>o?.data||[],[o?.data]),{table:w,selectedRows:S,setRowSelection:v,isEditingCell:D}=yd({tableName:e,tableCols:d,tableDataRows:g}),C=w.getRowModel(),x=(0,u.useMemo)(()=>C.rows.map(h=>h.original),[C]);return(0,u.useEffect)(()=>()=>{yt.getState().clearRowDetails();const{closeOverlay:h}=he.getState();h("tables.row-change-primary-key"),h("tables.row-delete-record"),h("tables.row-discard-changes"),h("tables.row-details")},[e]),gu({tableName:e,tableCols:d,tableDataRows:g,refetchTableData:()=>(r.refetchQueries({queryKey:ue.list(s),exact:!0},{cancelRefetch:!1}),f()),isEditingCell:D}),c||m?(0,a.jsx)(af,{}):!o&&i||!d&&p?(0,a.jsx)(Hd,{tableName:e,errorTableData:i,errorTableCols:p}):!o?.data||o.data.length===0?(0,a.jsx)(Ud,{tableName:e,selectedRows:S,setRowSelection:v}):t?.dataModel==="document"?(0,a.jsx)(Ad,{tableName:e,rows:g}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(rf,{table:w,tableName:e,pageKey:l,selectedRows:S,setRowSelection:v}),(0,a.jsx)(Od,{tableName:e,rows:x}),(0,a.jsx)(of,{})]})},cf=lf,$f=({tableName:e})=>{const t=ce();return(0,a.jsxs)("main",{className:"flex-1 flex flex-col overflow-hidden",children:[(0,a.jsx)(cf,{tableName:e}),(0,a.jsx)(au,{tableName:e}),(0,a.jsx)(fu,{tableName:e}),(0,a.jsx)(cu,{tableName:e}),(0,a.jsx)(uu,{tableName:e}),(0,a.jsx)(du,{tableName:e})]},`${t}.${e}`)};export{yt as a,If as c,Ne as d,Se as i,Wf as l,Fs as n,_e as o,vt as r,zf as s,$f as t,Ff as u};