db-studio 1.3.26 → 1.3.27

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 (86) hide show
  1. package/dist/core-dist/assets/{_baseUniq-Dz8rR54g.js → _baseUniq-C_vPXkJP.js} +1 -1
  2. package/dist/core-dist/assets/_pathlessLayout-BXQIga5f.js +2 -0
  3. package/dist/core-dist/assets/_queryId-D8-CsguU.js +1 -0
  4. package/dist/core-dist/assets/_table-B5Z_vACA.js +8 -0
  5. package/dist/core-dist/assets/{arc-DHQDyHbC.js → arc-1V0QxUK8.js} +1 -1
  6. package/dist/core-dist/assets/{architectureDiagram-VXUJARFQ-Dye73hr2.js → architectureDiagram-VXUJARFQ-CFri9V3F.js} +1 -1
  7. package/dist/core-dist/assets/{blockDiagram-VD42YOAC-fyPw9ErW.js → blockDiagram-VD42YOAC-ClhIgJjQ.js} +1 -1
  8. package/dist/core-dist/assets/{c4Diagram-YG6GDRKO-WorBPjZj.js → c4Diagram-YG6GDRKO-BO3ObrTD.js} +1 -1
  9. package/dist/core-dist/assets/{cdoe-editor-DWalt1Bs.js → cdoe-editor-BxMx7GmC.js} +1 -1
  10. package/dist/core-dist/assets/channel-DyPXV-hW.js +1 -0
  11. package/dist/core-dist/assets/{chunk-4BX2VUAB-BWLeAEPx.js → chunk-4BX2VUAB-BMfKmWOX.js} +1 -1
  12. package/dist/core-dist/assets/{chunk-55IACEB6-Sz82sR_e.js → chunk-55IACEB6-CQJI28O-.js} +1 -1
  13. package/dist/core-dist/assets/{chunk-B4BG7PRW-BRJVTFXO.js → chunk-B4BG7PRW-iEBvSKmc.js} +1 -1
  14. package/dist/core-dist/assets/{chunk-DI55MBZ5-DrMehRNo.js → chunk-DI55MBZ5-D3zKvHrW.js} +1 -1
  15. package/dist/core-dist/assets/{chunk-FMBD7UC4-DjrshjUM.js → chunk-FMBD7UC4-Y2ZVa7Rr.js} +1 -1
  16. package/dist/core-dist/assets/{chunk-QN33PNHL-e_SdNueW.js → chunk-QN33PNHL-B41HyhcX.js} +1 -1
  17. package/dist/core-dist/assets/{chunk-QZHKN3VN-BcgeawM9.js → chunk-QZHKN3VN-DSPK-keG.js} +1 -1
  18. package/dist/core-dist/assets/{chunk-TZMSLE5B-WV20vlP_.js → chunk-TZMSLE5B--SKjjh8g.js} +1 -1
  19. package/dist/core-dist/assets/classDiagram-2ON5EDUG-BuWyGwZg.js +1 -0
  20. package/dist/core-dist/assets/classDiagram-v2-WZHVMYZB-BuWyGwZg.js +1 -0
  21. package/dist/core-dist/assets/clone-B6TL1LpG.js +1 -0
  22. package/dist/core-dist/assets/{code-block-IT6T5CEO-CRNu6zPZ.js → code-block-IT6T5CEO-D8dr238E.js} +1 -1
  23. package/dist/core-dist/assets/{cose-bilkent-S5V4N54A-C6XOe5oC.js → cose-bilkent-S5V4N54A-Ca3KmLQf.js} +1 -1
  24. package/dist/core-dist/assets/{dagre-6UL2VRFP-BnmgBPjC.js → dagre-6UL2VRFP-CcoGFqDF.js} +1 -1
  25. package/dist/core-dist/assets/{diagram-PSM6KHXK-D6r3FA0m.js → diagram-PSM6KHXK-B7cDrRFX.js} +1 -1
  26. package/dist/core-dist/assets/{diagram-QEK2KX5R-CXpMzjrs.js → diagram-QEK2KX5R-DpZEtDNm.js} +1 -1
  27. package/dist/core-dist/assets/{diagram-S2PKOQOG-BolCoLvj.js → diagram-S2PKOQOG-BVMLYlwm.js} +1 -1
  28. package/dist/core-dist/assets/{erDiagram-Q2GNP2WA-CTifgqt1.js → erDiagram-Q2GNP2WA-VjZvcfHt.js} +1 -1
  29. package/dist/core-dist/assets/{flowDiagram-NV44I4VS-pbbYcDQW.js → flowDiagram-NV44I4VS-BPYKonp8.js} +1 -1
  30. package/dist/core-dist/assets/{ganttDiagram-JELNMOA3-zqJ48H3I.js → ganttDiagram-JELNMOA3-YZ7JH3lc.js} +1 -1
  31. package/dist/core-dist/assets/{gitGraphDiagram-NY62KEGX-DxNJIXLP.js → gitGraphDiagram-NY62KEGX-_zgpjSlg.js} +1 -1
  32. package/dist/core-dist/assets/{graph-CjSaMg-K.js → graph-6tmbx1dj.js} +1 -1
  33. package/dist/core-dist/assets/icons-CThL5JLu.js +1 -0
  34. package/dist/core-dist/assets/index-BXF4gXVp.js +1 -0
  35. package/dist/core-dist/assets/index-Bgk4PJE4.js +1 -0
  36. package/dist/core-dist/assets/index-CG7j3ZfO.js +58 -0
  37. package/dist/core-dist/assets/{index-C4O5Rsq1.js → index-DUtjV0B-.js} +1 -1
  38. package/dist/core-dist/assets/index-DucqSMyl.js +1 -0
  39. package/dist/core-dist/assets/{indexes-DYSIpFSd.js → indexes-Dowc1Q3x.js} +1 -1
  40. package/dist/core-dist/assets/infoDiagram-WHAUD3N6-Kg_R2eW0.js +2 -0
  41. package/dist/core-dist/assets/{journeyDiagram-XKPGCS4Q-BtpTxM-Y.js → journeyDiagram-XKPGCS4Q-DonaYC7V.js} +1 -1
  42. package/dist/core-dist/assets/{kanban-definition-3W4ZIXB7-oYV0rhzZ.js → kanban-definition-3W4ZIXB7-ReikhLs4.js} +1 -1
  43. package/dist/core-dist/assets/{layout-9jAkTDVb.js → layout-DUsCRHb6.js} +1 -1
  44. package/dist/core-dist/assets/{linear-DbUIfB88.js → linear-4gAoSSyZ.js} +1 -1
  45. package/dist/core-dist/assets/logs-BlD66J6V.js +1 -0
  46. package/dist/core-dist/assets/{mermaid-VLURNSYL-D5uFRwCp.js → mermaid-VLURNSYL-K7TEQe9D.js} +4 -4
  47. package/dist/core-dist/assets/{mermaid.core-CLOnqD9L.js → mermaid.core-wqPk7i-K.js} +5 -5
  48. package/dist/core-dist/assets/{min-CCTBSAVO.js → min-DccFXwe3.js} +1 -1
  49. package/dist/core-dist/assets/{mindmap-definition-VGOIOE7T-CCYjDuu4.js → mindmap-definition-VGOIOE7T-BYxGaEpf.js} +1 -1
  50. package/dist/core-dist/assets/{pieDiagram-ADFJNKIX-C7byhore.js → pieDiagram-ADFJNKIX-B3IVwgaD.js} +1 -1
  51. package/dist/core-dist/assets/{quadrantDiagram-AYHSOK5B-CuHjSh6D.js → quadrantDiagram-AYHSOK5B-Bi-7QC6c.js} +1 -1
  52. package/dist/core-dist/assets/{queries.store-CNqfnc5k.js → queries.store-B01mhBzt.js} +1 -1
  53. package/dist/core-dist/assets/{radix-ui-Cc0cu4Uu.js → radix-ui-bzITMjAn.js} +1 -1
  54. package/dist/core-dist/assets/{react-dom-B7--tMaV.js → react-dom-C-8vY09X.js} +1 -1
  55. package/dist/core-dist/assets/{requirementDiagram-UZGBJVZJ-DLEPg0BV.js → requirementDiagram-UZGBJVZJ-CGELnJfh.js} +1 -1
  56. package/dist/core-dist/assets/{runner-tab-BZPeQIxv.js → runner-tab-CslhxcLx.js} +3 -3
  57. package/dist/core-dist/assets/{sankeyDiagram-TZEHDZUN-DKdNm1Qv.js → sankeyDiagram-TZEHDZUN-BQIc9Mj1.js} +1 -1
  58. package/dist/core-dist/assets/{schema-C6AUjLib.js → schema-C9usm3AO.js} +1 -1
  59. package/dist/core-dist/assets/{scroll-area-DdKnqqlw.js → scroll-area-BYB-APTE.js} +1 -1
  60. package/dist/core-dist/assets/{sequenceDiagram-WL72ISMW-Bbo7kvpu.js → sequenceDiagram-WL72ISMW-CLV__peW.js} +1 -1
  61. package/dist/core-dist/assets/{stateDiagram-FKZM4ZOC-Cz5Z-x6B.js → stateDiagram-FKZM4ZOC-D7OFCqBP.js} +1 -1
  62. package/dist/core-dist/assets/stateDiagram-v2-4FDKWEC3-BJrnETjC.js +1 -0
  63. package/dist/core-dist/assets/{tanstack-BVOBleBY.js → tanstack-Be3yNbjx.js} +1 -1
  64. package/dist/core-dist/assets/{timeline-definition-IT6M3QCI-ByEvAs-P.js → timeline-definition-IT6M3QCI-CG5XhHfw.js} +1 -1
  65. package/dist/core-dist/assets/{treemap-KMMF4GRG-C1GKyhAV.js → treemap-KMMF4GRG-DIPpBEKk.js} +1 -1
  66. package/dist/core-dist/assets/{visualizer-CKiw4rgK.js → visualizer-DRuf8l7V.js} +1 -1
  67. package/dist/core-dist/assets/{xychartDiagram-PRI3JC2R-CS-C2fw-.js → xychartDiagram-PRI3JC2R-yz236FKW.js} +1 -1
  68. package/dist/core-dist/index.html +5 -5
  69. package/dist/index.js +2 -2
  70. package/dist/index.js.map +1 -1
  71. package/package.json +1 -1
  72. package/dist/core-dist/assets/_pathlessLayout-byu8LhC4.js +0 -2
  73. package/dist/core-dist/assets/_queryId-tsebZ8Os.js +0 -1
  74. package/dist/core-dist/assets/_table-B9YoPE4g.js +0 -8
  75. package/dist/core-dist/assets/channel-DmNVQLGj.js +0 -1
  76. package/dist/core-dist/assets/classDiagram-2ON5EDUG-BlV3AaHC.js +0 -1
  77. package/dist/core-dist/assets/classDiagram-v2-WZHVMYZB-BlV3AaHC.js +0 -1
  78. package/dist/core-dist/assets/clone-BJueq7g1.js +0 -1
  79. package/dist/core-dist/assets/icons-D6TH-xEh.js +0 -1
  80. package/dist/core-dist/assets/index-B11inYe0.js +0 -58
  81. package/dist/core-dist/assets/index-B3gSG1Yj.js +0 -1
  82. package/dist/core-dist/assets/index-BVXRwlCM.js +0 -1
  83. package/dist/core-dist/assets/index-DelL3Eku.js +0 -1
  84. package/dist/core-dist/assets/infoDiagram-WHAUD3N6-CSNF_W-p.js +0 -2
  85. package/dist/core-dist/assets/logs-CmJ0Xt6u.js +0 -1
  86. package/dist/core-dist/assets/stateDiagram-v2-4FDKWEC3-CdjqUuw7.js +0 -1
@@ -1 +1 @@
1
- import{aU as L,bi as ln,aE as A,aS as v,bj as gn,bk as dn,aD as W,bl as hn,bm as z,bn as pn,bo as An,bp as m,aV as N,a_ as U,b1 as T,bq as _n,aY as on,br as wn,bs as On,aF as V,bt as Pn,bu as I}from"./mermaid.core-CLOnqD9L.js";var vn="[object Symbol]";function x(n){return typeof n=="symbol"||L(n)&&ln(n)==vn}function yn(n,r){for(var e=-1,i=n==null?0:n.length,f=Array(i);++e<i;)f[e]=r(n[e],e,n);return f}var B=v?v.prototype:void 0,K=B?B.toString:void 0;function k(n){if(typeof n=="string")return n;if(A(n))return yn(n,k)+"";if(x(n))return K?K.call(n):"";var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function En(){}function bn(n,r){for(var e=-1,i=n==null?0:n.length;++e<i&&r(n[e],e,n)!==!1;);return n}function cn(n,r,e,i){for(var f=n.length,t=e+-1;++t<f;)if(r(n[t],t,n))return t;return-1}function Tn(n){return n!==n}function Rn(n,r,e){for(var i=e-1,f=n.length;++i<f;)if(n[i]===r)return i;return-1}function In(n,r,e){return r===r?Rn(n,r,e):cn(n,Tn,e)}function Sn(n,r){var e=n==null?0:n.length;return!!e&&In(n,r,0)>-1}function M(n){return W(n)?gn(n):dn(n)}var Ln=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,xn=/^\w*$/;function $(n,r){if(A(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||x(n)?!0:xn.test(n)||!Ln.test(n)||r!=null&&n in Object(r)}var Mn=500;function $n(n){var r=hn(n,function(i){return e.size===Mn&&e.clear(),i}),e=r.cache;return r}var Cn=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Dn=/\\(\\)?/g,Fn=$n(function(n){var r=[];return n.charCodeAt(0)===46&&r.push(""),n.replace(Cn,function(e,i,f,t){r.push(f?t.replace(Dn,"$1"):i||e)}),r});function Gn(n){return n==null?"":k(n)}function j(n,r){return A(n)?n:$(n,r)?[n]:Fn(Gn(n))}function R(n){if(typeof n=="string"||x(n))return n;var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function nn(n,r){r=j(r,n);for(var e=0,i=r.length;n!=null&&e<i;)n=n[R(r[e++])];return e&&e==i?n:void 0}function mn(n,r,e){var i=n==null?void 0:nn(n,r);return i===void 0?e:i}function rn(n,r){for(var e=-1,i=r.length,f=n.length;++e<i;)n[f+e]=r[e];return n}var H=v?v.isConcatSpreadable:void 0;function Nn(n){return A(n)||z(n)||!!(H&&n&&n[H])}function Hr(n,r,e,i,f){var t=-1,s=n.length;for(e||(e=Nn),f||(f=[]);++t<s;){var u=n[t];e(u)?rn(f,u):i||(f[f.length]=u)}return f}function Un(n,r,e,i){var f=-1,t=n==null?0:n.length;for(i&&t&&(e=n[++f]);++f<t;)e=r(e,n[f],f,n);return e}function en(n,r){for(var e=-1,i=n==null?0:n.length,f=0,t=[];++e<i;){var s=n[e];r(s,e,n)&&(t[f++]=s)}return t}function Bn(){return[]}var Kn=Object.prototype,Hn=Kn.propertyIsEnumerable,q=Object.getOwnPropertySymbols,qn=q?function(n){return n==null?[]:(n=Object(n),en(q(n),function(r){return Hn.call(n,r)}))}:Bn;function Yn(n,r,e){var i=r(n);return A(n)?i:rn(i,e(n))}function Y(n){return Yn(n,M,qn)}var Zn="__lodash_hash_undefined__";function Xn(n){return this.__data__.set(n,Zn),this}function Jn(n){return this.__data__.has(n)}function y(n){var r=-1,e=n==null?0:n.length;for(this.__data__=new pn;++r<e;)this.add(n[r])}y.prototype.add=y.prototype.push=Xn;y.prototype.has=Jn;function Qn(n,r){for(var e=-1,i=n==null?0:n.length;++e<i;)if(r(n[e],e,n))return!0;return!1}function tn(n,r){return n.has(r)}var Wn=1,zn=2;function fn(n,r,e,i,f,t){var s=e&Wn,u=n.length,a=r.length;if(u!=a&&!(s&&a>u))return!1;var h=t.get(n),g=t.get(r);if(h&&g)return h==r&&g==n;var l=-1,d=!0,o=e&zn?new y:void 0;for(t.set(n,r),t.set(r,n);++l<u;){var p=n[l],_=r[l];if(i)var w=s?i(_,p,l,r,n,t):i(p,_,l,n,r,t);if(w!==void 0){if(w)continue;d=!1;break}if(o){if(!Qn(r,function(O,P){if(!tn(o,P)&&(p===O||f(p,O,e,i,t)))return o.push(P)})){d=!1;break}}else if(!(p===_||f(p,_,e,i,t))){d=!1;break}}return t.delete(n),t.delete(r),d}function Vn(n){var r=-1,e=Array(n.size);return n.forEach(function(i,f){e[++r]=[f,i]}),e}function C(n){var r=-1,e=Array(n.size);return n.forEach(function(i){e[++r]=i}),e}var kn=1,jn=2,nr="[object Boolean]",rr="[object Date]",er="[object Error]",ir="[object Map]",tr="[object Number]",fr="[object RegExp]",sr="[object Set]",ur="[object String]",ar="[object Symbol]",lr="[object ArrayBuffer]",gr="[object DataView]",Z=v?v.prototype:void 0,S=Z?Z.valueOf:void 0;function dr(n,r,e,i,f,t,s){switch(e){case gr:if(n.byteLength!=r.byteLength||n.byteOffset!=r.byteOffset)return!1;n=n.buffer,r=r.buffer;case lr:return!(n.byteLength!=r.byteLength||!t(new m(n),new m(r)));case nr:case rr:case tr:return An(+n,+r);case er:return n.name==r.name&&n.message==r.message;case fr:case ur:return n==r+"";case ir:var u=Vn;case sr:var a=i&kn;if(u||(u=C),n.size!=r.size&&!a)return!1;var h=s.get(n);if(h)return h==r;i|=jn,s.set(n,r);var g=fn(u(n),u(r),i,f,t,s);return s.delete(n),g;case ar:if(S)return S.call(n)==S.call(r)}return!1}var hr=1,pr=Object.prototype,Ar=pr.hasOwnProperty;function _r(n,r,e,i,f,t){var s=e&hr,u=Y(n),a=u.length,h=Y(r),g=h.length;if(a!=g&&!s)return!1;for(var l=a;l--;){var d=u[l];if(!(s?d in r:Ar.call(r,d)))return!1}var o=t.get(n),p=t.get(r);if(o&&p)return o==r&&p==n;var _=!0;t.set(n,r),t.set(r,n);for(var w=s;++l<a;){d=u[l];var O=n[d],P=r[d];if(i)var G=s?i(P,O,d,r,n,t):i(O,P,d,n,r,t);if(!(G===void 0?O===P||f(O,P,e,i,t):G)){_=!1;break}w||(w=d=="constructor")}if(_&&!w){var E=n.constructor,b=r.constructor;E!=b&&"constructor"in n&&"constructor"in r&&!(typeof E=="function"&&E instanceof E&&typeof b=="function"&&b instanceof b)&&(_=!1)}return t.delete(n),t.delete(r),_}var or=1,X="[object Arguments]",J="[object Array]",c="[object Object]",wr=Object.prototype,Q=wr.hasOwnProperty;function Or(n,r,e,i,f,t){var s=A(n),u=A(r),a=s?J:N(n),h=u?J:N(r);a=a==X?c:a,h=h==X?c:h;var g=a==c,l=h==c,d=a==h;if(d&&U(n)){if(!U(r))return!1;s=!0,g=!1}if(d&&!g)return t||(t=new T),s||_n(n)?fn(n,r,e,i,f,t):dr(n,r,a,e,i,f,t);if(!(e&or)){var o=g&&Q.call(n,"__wrapped__"),p=l&&Q.call(r,"__wrapped__");if(o||p){var _=o?n.value():n,w=p?r.value():r;return t||(t=new T),f(_,w,e,i,t)}}return d?(t||(t=new T),_r(n,r,e,i,f,t)):!1}function D(n,r,e,i,f){return n===r?!0:n==null||r==null||!L(n)&&!L(r)?n!==n&&r!==r:Or(n,r,e,i,D,f)}var Pr=1,vr=2;function yr(n,r,e,i){var f=e.length,t=f;if(n==null)return!t;for(n=Object(n);f--;){var s=e[f];if(s[2]?s[1]!==n[s[0]]:!(s[0]in n))return!1}for(;++f<t;){s=e[f];var u=s[0],a=n[u],h=s[1];if(s[2]){if(a===void 0&&!(u in n))return!1}else{var g=new T,l;if(!(l===void 0?D(h,a,Pr|vr,i,g):l))return!1}}return!0}function sn(n){return n===n&&!on(n)}function Er(n){for(var r=M(n),e=r.length;e--;){var i=r[e],f=n[i];r[e]=[i,f,sn(f)]}return r}function un(n,r){return function(e){return e==null?!1:e[n]===r&&(r!==void 0||n in Object(e))}}function br(n){var r=Er(n);return r.length==1&&r[0][2]?un(r[0][0],r[0][1]):function(e){return e===n||yr(e,n,r)}}function cr(n,r){return n!=null&&r in Object(n)}function Tr(n,r,e){r=j(r,n);for(var i=-1,f=r.length,t=!1;++i<f;){var s=R(r[i]);if(!(t=n!=null&&e(n,s)))break;n=n[s]}return t||++i!=f?t:(f=n==null?0:n.length,!!f&&wn(f)&&On(s,f)&&(A(n)||z(n)))}function Rr(n,r){return n!=null&&Tr(n,r,cr)}var Ir=1,Sr=2;function Lr(n,r){return $(n)&&sn(r)?un(R(n),r):function(e){var i=mn(e,n);return i===void 0&&i===r?Rr(e,n):D(r,i,Ir|Sr)}}function xr(n){return function(r){return r?.[n]}}function Mr(n){return function(r){return nn(r,n)}}function $r(n){return $(n)?xr(R(n)):Mr(n)}function an(n){return typeof n=="function"?n:n==null?V:typeof n=="object"?A(n)?Lr(n[0],n[1]):br(n):$r(n)}function Cr(n,r){return n&&Pn(n,r,M)}function Dr(n,r){return function(e,i){if(e==null)return e;if(!W(e))return n(e,i);for(var f=e.length,t=-1,s=Object(e);++t<f&&i(s[t],t,s)!==!1;);return e}}var F=Dr(Cr);function Fr(n){return typeof n=="function"?n:V}function qr(n,r){var e=A(n)?bn:F;return e(n,Fr(r))}function Gr(n,r){var e=[];return F(n,function(i,f,t){r(i,f,t)&&e.push(i)}),e}function Yr(n,r){var e=A(n)?en:Gr;return e(n,an(r))}function mr(n,r,e,i,f){return f(n,function(t,s,u){e=i?(i=!1,t):r(e,t,s,u)}),e}function Zr(n,r,e){var i=A(n)?Un:mr,f=arguments.length<3;return i(n,an(r),e,f,F)}var Nr=1/0,Ur=I&&1/C(new I([,-0]))[1]==Nr?function(n){return new I(n)}:En,Br=200;function Xr(n,r,e){var i=-1,f=Sn,t=n.length,s=!0,u=[],a=u;if(t>=Br){var h=r?null:Ur(n);if(h)return C(h);s=!1,f=tn,a=new y}else a=r?[]:u;n:for(;++i<t;){var g=n[i],l=r?r(g):g;if(g=g!==0?g:0,s&&l===l){for(var d=a.length;d--;)if(a[d]===l)continue n;r&&a.push(l),u.push(g)}else f(a,l,e)||(a!==u&&a.push(l),u.push(g))}return u}export{F as a,Hr as b,yn as c,an as d,rn as e,Yn as f,qn as g,Y as h,x as i,bn as j,M as k,Xr as l,Yr as m,qr as n,cn as o,Fr as p,Cr as q,Zr as r,Bn as s,Tr as t,j as u,R as v,nn as w,Rr as x,Gn as y};
1
+ import{aU as L,bi as ln,aE as A,aS as v,bj as gn,bk as dn,aD as W,bl as hn,bm as z,bn as pn,bo as An,bp as m,aV as N,a_ as U,b1 as T,bq as _n,aY as on,br as wn,bs as On,aF as V,bt as Pn,bu as I}from"./mermaid.core-wqPk7i-K.js";var vn="[object Symbol]";function x(n){return typeof n=="symbol"||L(n)&&ln(n)==vn}function yn(n,r){for(var e=-1,i=n==null?0:n.length,f=Array(i);++e<i;)f[e]=r(n[e],e,n);return f}var B=v?v.prototype:void 0,K=B?B.toString:void 0;function k(n){if(typeof n=="string")return n;if(A(n))return yn(n,k)+"";if(x(n))return K?K.call(n):"";var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function En(){}function bn(n,r){for(var e=-1,i=n==null?0:n.length;++e<i&&r(n[e],e,n)!==!1;);return n}function cn(n,r,e,i){for(var f=n.length,t=e+-1;++t<f;)if(r(n[t],t,n))return t;return-1}function Tn(n){return n!==n}function Rn(n,r,e){for(var i=e-1,f=n.length;++i<f;)if(n[i]===r)return i;return-1}function In(n,r,e){return r===r?Rn(n,r,e):cn(n,Tn,e)}function Sn(n,r){var e=n==null?0:n.length;return!!e&&In(n,r,0)>-1}function M(n){return W(n)?gn(n):dn(n)}var Ln=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,xn=/^\w*$/;function $(n,r){if(A(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||x(n)?!0:xn.test(n)||!Ln.test(n)||r!=null&&n in Object(r)}var Mn=500;function $n(n){var r=hn(n,function(i){return e.size===Mn&&e.clear(),i}),e=r.cache;return r}var Cn=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Dn=/\\(\\)?/g,Fn=$n(function(n){var r=[];return n.charCodeAt(0)===46&&r.push(""),n.replace(Cn,function(e,i,f,t){r.push(f?t.replace(Dn,"$1"):i||e)}),r});function Gn(n){return n==null?"":k(n)}function j(n,r){return A(n)?n:$(n,r)?[n]:Fn(Gn(n))}function R(n){if(typeof n=="string"||x(n))return n;var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function nn(n,r){r=j(r,n);for(var e=0,i=r.length;n!=null&&e<i;)n=n[R(r[e++])];return e&&e==i?n:void 0}function mn(n,r,e){var i=n==null?void 0:nn(n,r);return i===void 0?e:i}function rn(n,r){for(var e=-1,i=r.length,f=n.length;++e<i;)n[f+e]=r[e];return n}var H=v?v.isConcatSpreadable:void 0;function Nn(n){return A(n)||z(n)||!!(H&&n&&n[H])}function Hr(n,r,e,i,f){var t=-1,s=n.length;for(e||(e=Nn),f||(f=[]);++t<s;){var u=n[t];e(u)?rn(f,u):i||(f[f.length]=u)}return f}function Un(n,r,e,i){var f=-1,t=n==null?0:n.length;for(i&&t&&(e=n[++f]);++f<t;)e=r(e,n[f],f,n);return e}function en(n,r){for(var e=-1,i=n==null?0:n.length,f=0,t=[];++e<i;){var s=n[e];r(s,e,n)&&(t[f++]=s)}return t}function Bn(){return[]}var Kn=Object.prototype,Hn=Kn.propertyIsEnumerable,q=Object.getOwnPropertySymbols,qn=q?function(n){return n==null?[]:(n=Object(n),en(q(n),function(r){return Hn.call(n,r)}))}:Bn;function Yn(n,r,e){var i=r(n);return A(n)?i:rn(i,e(n))}function Y(n){return Yn(n,M,qn)}var Zn="__lodash_hash_undefined__";function Xn(n){return this.__data__.set(n,Zn),this}function Jn(n){return this.__data__.has(n)}function y(n){var r=-1,e=n==null?0:n.length;for(this.__data__=new pn;++r<e;)this.add(n[r])}y.prototype.add=y.prototype.push=Xn;y.prototype.has=Jn;function Qn(n,r){for(var e=-1,i=n==null?0:n.length;++e<i;)if(r(n[e],e,n))return!0;return!1}function tn(n,r){return n.has(r)}var Wn=1,zn=2;function fn(n,r,e,i,f,t){var s=e&Wn,u=n.length,a=r.length;if(u!=a&&!(s&&a>u))return!1;var h=t.get(n),g=t.get(r);if(h&&g)return h==r&&g==n;var l=-1,d=!0,o=e&zn?new y:void 0;for(t.set(n,r),t.set(r,n);++l<u;){var p=n[l],_=r[l];if(i)var w=s?i(_,p,l,r,n,t):i(p,_,l,n,r,t);if(w!==void 0){if(w)continue;d=!1;break}if(o){if(!Qn(r,function(O,P){if(!tn(o,P)&&(p===O||f(p,O,e,i,t)))return o.push(P)})){d=!1;break}}else if(!(p===_||f(p,_,e,i,t))){d=!1;break}}return t.delete(n),t.delete(r),d}function Vn(n){var r=-1,e=Array(n.size);return n.forEach(function(i,f){e[++r]=[f,i]}),e}function C(n){var r=-1,e=Array(n.size);return n.forEach(function(i){e[++r]=i}),e}var kn=1,jn=2,nr="[object Boolean]",rr="[object Date]",er="[object Error]",ir="[object Map]",tr="[object Number]",fr="[object RegExp]",sr="[object Set]",ur="[object String]",ar="[object Symbol]",lr="[object ArrayBuffer]",gr="[object DataView]",Z=v?v.prototype:void 0,S=Z?Z.valueOf:void 0;function dr(n,r,e,i,f,t,s){switch(e){case gr:if(n.byteLength!=r.byteLength||n.byteOffset!=r.byteOffset)return!1;n=n.buffer,r=r.buffer;case lr:return!(n.byteLength!=r.byteLength||!t(new m(n),new m(r)));case nr:case rr:case tr:return An(+n,+r);case er:return n.name==r.name&&n.message==r.message;case fr:case ur:return n==r+"";case ir:var u=Vn;case sr:var a=i&kn;if(u||(u=C),n.size!=r.size&&!a)return!1;var h=s.get(n);if(h)return h==r;i|=jn,s.set(n,r);var g=fn(u(n),u(r),i,f,t,s);return s.delete(n),g;case ar:if(S)return S.call(n)==S.call(r)}return!1}var hr=1,pr=Object.prototype,Ar=pr.hasOwnProperty;function _r(n,r,e,i,f,t){var s=e&hr,u=Y(n),a=u.length,h=Y(r),g=h.length;if(a!=g&&!s)return!1;for(var l=a;l--;){var d=u[l];if(!(s?d in r:Ar.call(r,d)))return!1}var o=t.get(n),p=t.get(r);if(o&&p)return o==r&&p==n;var _=!0;t.set(n,r),t.set(r,n);for(var w=s;++l<a;){d=u[l];var O=n[d],P=r[d];if(i)var G=s?i(P,O,d,r,n,t):i(O,P,d,n,r,t);if(!(G===void 0?O===P||f(O,P,e,i,t):G)){_=!1;break}w||(w=d=="constructor")}if(_&&!w){var E=n.constructor,b=r.constructor;E!=b&&"constructor"in n&&"constructor"in r&&!(typeof E=="function"&&E instanceof E&&typeof b=="function"&&b instanceof b)&&(_=!1)}return t.delete(n),t.delete(r),_}var or=1,X="[object Arguments]",J="[object Array]",c="[object Object]",wr=Object.prototype,Q=wr.hasOwnProperty;function Or(n,r,e,i,f,t){var s=A(n),u=A(r),a=s?J:N(n),h=u?J:N(r);a=a==X?c:a,h=h==X?c:h;var g=a==c,l=h==c,d=a==h;if(d&&U(n)){if(!U(r))return!1;s=!0,g=!1}if(d&&!g)return t||(t=new T),s||_n(n)?fn(n,r,e,i,f,t):dr(n,r,a,e,i,f,t);if(!(e&or)){var o=g&&Q.call(n,"__wrapped__"),p=l&&Q.call(r,"__wrapped__");if(o||p){var _=o?n.value():n,w=p?r.value():r;return t||(t=new T),f(_,w,e,i,t)}}return d?(t||(t=new T),_r(n,r,e,i,f,t)):!1}function D(n,r,e,i,f){return n===r?!0:n==null||r==null||!L(n)&&!L(r)?n!==n&&r!==r:Or(n,r,e,i,D,f)}var Pr=1,vr=2;function yr(n,r,e,i){var f=e.length,t=f;if(n==null)return!t;for(n=Object(n);f--;){var s=e[f];if(s[2]?s[1]!==n[s[0]]:!(s[0]in n))return!1}for(;++f<t;){s=e[f];var u=s[0],a=n[u],h=s[1];if(s[2]){if(a===void 0&&!(u in n))return!1}else{var g=new T,l;if(!(l===void 0?D(h,a,Pr|vr,i,g):l))return!1}}return!0}function sn(n){return n===n&&!on(n)}function Er(n){for(var r=M(n),e=r.length;e--;){var i=r[e],f=n[i];r[e]=[i,f,sn(f)]}return r}function un(n,r){return function(e){return e==null?!1:e[n]===r&&(r!==void 0||n in Object(e))}}function br(n){var r=Er(n);return r.length==1&&r[0][2]?un(r[0][0],r[0][1]):function(e){return e===n||yr(e,n,r)}}function cr(n,r){return n!=null&&r in Object(n)}function Tr(n,r,e){r=j(r,n);for(var i=-1,f=r.length,t=!1;++i<f;){var s=R(r[i]);if(!(t=n!=null&&e(n,s)))break;n=n[s]}return t||++i!=f?t:(f=n==null?0:n.length,!!f&&wn(f)&&On(s,f)&&(A(n)||z(n)))}function Rr(n,r){return n!=null&&Tr(n,r,cr)}var Ir=1,Sr=2;function Lr(n,r){return $(n)&&sn(r)?un(R(n),r):function(e){var i=mn(e,n);return i===void 0&&i===r?Rr(e,n):D(r,i,Ir|Sr)}}function xr(n){return function(r){return r?.[n]}}function Mr(n){return function(r){return nn(r,n)}}function $r(n){return $(n)?xr(R(n)):Mr(n)}function an(n){return typeof n=="function"?n:n==null?V:typeof n=="object"?A(n)?Lr(n[0],n[1]):br(n):$r(n)}function Cr(n,r){return n&&Pn(n,r,M)}function Dr(n,r){return function(e,i){if(e==null)return e;if(!W(e))return n(e,i);for(var f=e.length,t=-1,s=Object(e);++t<f&&i(s[t],t,s)!==!1;);return e}}var F=Dr(Cr);function Fr(n){return typeof n=="function"?n:V}function qr(n,r){var e=A(n)?bn:F;return e(n,Fr(r))}function Gr(n,r){var e=[];return F(n,function(i,f,t){r(i,f,t)&&e.push(i)}),e}function Yr(n,r){var e=A(n)?en:Gr;return e(n,an(r))}function mr(n,r,e,i,f){return f(n,function(t,s,u){e=i?(i=!1,t):r(e,t,s,u)}),e}function Zr(n,r,e){var i=A(n)?Un:mr,f=arguments.length<3;return i(n,an(r),e,f,F)}var Nr=1/0,Ur=I&&1/C(new I([,-0]))[1]==Nr?function(n){return new I(n)}:En,Br=200;function Xr(n,r,e){var i=-1,f=Sn,t=n.length,s=!0,u=[],a=u;if(t>=Br){var h=r?null:Ur(n);if(h)return C(h);s=!1,f=tn,a=new y}else a=r?[]:u;n:for(;++i<t;){var g=n[i],l=r?r(g):g;if(g=g!==0?g:0,s&&l===l){for(var d=a.length;d--;)if(a[d]===l)continue n;r&&a.push(l),u.push(g)}else f(a,l,e)||(a!==u&&a.push(l),u.push(g))}return u}export{F as a,Hr as b,yn as c,an as d,rn as e,Yn as f,qn as g,Y as h,x as i,bn as j,M as k,Xr as l,Yr as m,qr as n,cn as o,Fr as p,Cr as q,Zr as r,Bn as s,Tr as t,j as u,R as v,nn as w,Rr as x,Gn as y};
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/mermaid-VLURNSYL-K7TEQe9D.js","assets/radix-ui-bzITMjAn.js","assets/icons-CThL5JLu.js","assets/react-dom-C-8vY09X.js","assets/tanstack-Be3yNbjx.js","assets/index-CG7j3ZfO.js","assets/monaco-editor-BMj4E99D.js","assets/monaco-editor-Ck3IbhyB.css","assets/index-BXRBzRx2.css","assets/scroll-area-BYB-APTE.js","assets/index-DUtjV0B-.js"])))=>i.map(i=>d[i]);
2
+ import{j as e,s as Ae,t as Oe,u as Me,v as Ie,w as Qe,I as qe,x as Pe}from"./radix-ui-bzITMjAn.js";import{u as $e,a as fe,L as pe,b as H,c as je,d as ee,e as Ve,O as He}from"./tanstack-Be3yNbjx.js";import{_ as Be}from"./monaco-editor-BMj4E99D.js";import{S as Ke,r as l,P as Ue,G as Ge,C as ue,c as se,d as te,T as ae,e as Xe,f as We,F as Ye,h as be,i as ge,E as Je,j as Ze,k as es,D as ss,l as ts,m as as,n as ns,o as rs,p as ls}from"./icons-CThL5JLu.js";import{a as y,D as os,m as ve,B as b,T as is,n as G,I as O,t as w,S as ye,o as Ce,q as Ne,r as we,s as U,C as k,v as X,x as ne,y as cs,z as ds,A as us,E as xs,F as E,G as xe,H as ms,J as hs,K as fs,L as ps,M as js,N as bs,O as gs,P as vs,Q as ys,U as Cs}from"./index-CG7j3ZfO.js";import{T as re,a as le,b as oe,u as W}from"./index-DUtjV0B-.js";import{K as M,D as I,a as Q,b as q,c as P,d as $,e as V,A as Ns,f as ws,g as Ss,h as Ds,i as zs,j as Ts,k as ks,l as Fs,m as Es,S as Rs}from"./scroll-area-BYB-APTE.js";import{u as Y}from"./queries.store-B01mhBzt.js";const Ls={SITE_GITHUB_LINK:"https://github.com/husamql3/db-studio"};function _s({className:s,orientation:a="horizontal",decorative:n=!0,...r}){return e.jsx(Ae,{"data-slot":"separator",decorative:n,orientation:a,className:y("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:w-px data-[orientation=vertical]:self-stretch",s),...r})}const As=()=>{const{data:s,isLoading:a,error:n,refetch:r}=$e({queryKey:["rate-limit"],queryFn:async()=>{const t=await fetch(`${os.PROXY_URL}/chat/limit`);if(!t.ok)throw new Error("Failed to fetch rate limit");return await t.json()}});return{rateLimit:s,isLoadingRateLimit:a,errorRateLimit:n,refetchRateLimit:r}},Os=l.lazy(()=>Be(()=>import("./mermaid-VLURNSYL-K7TEQe9D.js").then(s=>s.g),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10])).then(s=>({default:s.ChatSidebar}))),Ms=()=>{const{isSheetOpen:s,openSheet:a}=ve(),{rateLimit:n,isLoadingRateLimit:r}=As(),{remaining:t=0,limit:o=0}=n??{remaining:0,limit:0},c=(m=>m===0?"bg-red-500":m<=5?"bg-yellow-500":"bg-emerald-500")(t);return e.jsxs(e.Fragment,{children:[e.jsxs(re,{children:[e.jsx(le,{asChild:!0,children:e.jsxs(b,{variant:"ghost",className:"border-r-0 border-y-0 border-l border-zinc-800 rounded-none h-full w-12 relative",onClick:()=>a("ai-assistant"),children:[e.jsx(Ke,{className:"size-5"}),e.jsx("span",{className:y("absolute top-2 right-2 h-2 w-2 rounded-full ring-2 ring-background",c)})]})}),e.jsx(oe,{side:"bottom",className:"text-xs",children:!r&&(t>0?e.jsxs("p",{children:[t,"/",o," messages remaining"]}):e.jsx("p",{children:"AI Assistant"}))})]}),s("ai-assistant")&&e.jsx(l.Suspense,{fallback:null,children:e.jsx(Os,{})})]})},Is=()=>{const{pathname:s}=fe(),a=s.split("/")[1]||"table";return e.jsx("div",{className:"flex h-full items-center",children:is.map(n=>e.jsx(pe,{to:`/${n}`,className:"h-full flex items-center",children:e.jsx(b,{variant:"ghost",className:y("flex-1 px-4 border-l-0 border-y-0 border-r border-zinc-800 h-full rounded-none",a===n?"bg-zinc-900 text-white":"text-zinc-400"),children:n})},n))})},Qs=()=>{const{sidebar:{isOpen:s,isPinned:a},setSidebarOpen:n,setSidebarPinned:r}=G(),t=()=>{n(!s),r(!a)};return e.jsx(b,{variant:"ghost",onClick:t,className:"h-full aspect-square border-l-0 border-y-0 border-r border-zinc-800 rounded-none",children:e.jsx(Ue,{className:"size-5"})})},qs=()=>e.jsxs("div",{className:"border-b border-zinc-800 w-full flex items-center justify-between bg-black h-12",children:[e.jsxs("div",{className:"flex items-center h-full",children:[e.jsx(Qs,{}),e.jsx(Is,{})]}),e.jsxs("div",{className:"flex items-center h-full",children:[e.jsx(Ms,{}),e.jsxs(re,{children:[e.jsx(le,{asChild:!0,children:e.jsx(b,{variant:"ghost",className:"border-r-0 border-y-0 border-l border-zinc-800 rounded-none h-full w-12",asChild:!0,children:e.jsx("a",{href:Ls.SITE_GITHUB_LINK,target:"_blank",rel:"noopener noreferrer",children:e.jsx(Ge,{className:"size-5"})})})}),e.jsx(oe,{children:e.jsx("p",{children:"View on GitHub"})})]})]})]});function Se({...s}){return e.jsx(Oe,{"data-slot":"context-menu",...s})}function De({className:s,...a}){return e.jsx(Me,{"data-slot":"context-menu-trigger",className:y("select-none",s),...a})}function ze({className:s,...a}){return e.jsx(Ie,{children:e.jsx(Qe,{"data-slot":"context-menu-content",className:y("data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 ring-foreground/10 bg-popover text-popover-foreground min-w-32 rounded-lg p-1 shadow-md ring-1 duration-100 z-50 max-h-(--radix-context-menu-content-available-height) origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto",s),...a})})}function T({className:s,inset:a,variant:n="default",...r}){return e.jsx(qe,{"data-slot":"context-menu-item","data-inset":a,"data-variant":n,className:y("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:text-destructive not-data-[variant=destructive]:focus:**:text-accent-foreground min-h-7 gap-2 rounded-md px-2 py-1 text-xs/relaxed [&_svg:not([class*='size-'])]:size-3.5 group/context-menu-item relative flex cursor-default items-center outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0",s),...r})}function me({className:s,...a}){return e.jsx(Pe,{"data-slot":"context-menu-separator",className:y("bg-border/50 -mx-1 my-1 h-px",s),...a})}const Z=({folderId:s,isExpanded:a,onToggle:n,count:r,name:t,showContextMenu:o=!1})=>{const d=H(),{deleteFolder:c,getQueriesByFolder:m,addQuery:u,updateFolder:g}=Y(),[C,h]=l.useState(!1),[j,i]=l.useState(""),[p,N]=l.useState(!1),S=l.useCallback(()=>{if(s){if(m(s).length>0){N(!0);return}c(s)}},[c,s,m]),x=l.useCallback(()=>{s&&(c(s),N(!1))},[c,s]),v=l.useCallback(()=>{const D=u(void 0,s);d({to:"/runner/$queryId",params:{queryId:D}})},[u,s,d]),z=l.useCallback(()=>{i(t),h(!0)},[t]),B=l.useCallback(()=>{s&&j.trim()&&(g(s,{name:j.trim()}),h(!1),i(""))},[s,j,g]);return e.jsxs(e.Fragment,{children:[o?e.jsxs(Se,{children:[e.jsx(De,{asChild:!0,children:e.jsxs("button",{type:"button",onClick:n,className:y("w-full flex gap-2 px-4 py-2 text-sm transition-colors text-left","hover:bg-zinc-800/50 hover:text-zinc-100 focus:outline-none focus:bg-zinc-800/50","text-zinc-400 items-center"),children:[e.jsx(ue,{className:y("size-4 transition-transform duration-200",a?"rotate-90":"")}),e.jsx("span",{className:"flex-1",children:t}),e.jsx(M,{children:r})]})}),e.jsxs(ze,{children:[e.jsxs(T,{onClick:v,children:[e.jsx(se,{className:"size-4"}),"Add a new query"]}),e.jsxs(T,{onClick:z,children:[e.jsx(te,{className:"size-4"}),"Rename folder"]}),e.jsxs(T,{onClick:S,children:[e.jsx(ae,{className:"size-4"}),"Delete folder"]})]})]}):e.jsxs("button",{type:"button",onClick:n,className:y("w-full flex gap-2 px-4 py-2 text-sm transition-colors text-left","hover:bg-zinc-800/50 hover:text-zinc-100 focus:outline-none focus:bg-zinc-800/50","text-zinc-400 items-center"),children:[e.jsx(ue,{className:y("size-4 transition-transform duration-200",a?"rotate-90":"")}),e.jsx("span",{className:"flex-1",children:t}),e.jsx(M,{children:r})]}),e.jsx(I,{open:C,onOpenChange:h,children:e.jsxs(Q,{children:[e.jsxs(q,{children:[e.jsx(P,{children:"Rename Folder"}),e.jsx($,{children:"Enter a new name for this folder."})]}),e.jsx(O,{value:j,onChange:D=>i(D.target.value),placeholder:"Folder name",onKeyDown:D=>{D.key==="Enter"&&B()},autoFocus:!0}),e.jsxs(V,{children:[e.jsx(b,{variant:"outline",onClick:()=>{h(!1),i("")},children:"Cancel"}),e.jsx(b,{onClick:B,disabled:!j.trim(),children:"Rename"})]})]})}),e.jsx(Ns,{open:p,onOpenChange:N,children:e.jsxs(ws,{children:[e.jsxs(Ss,{children:[e.jsx(Ds,{children:"Delete Folder"}),e.jsxs(zs,{children:["This folder contains ",r," ",r===1?"query":"queries",". Deleting this folder will also delete all queries inside it. This action cannot be undone."]})]}),e.jsxs(Ts,{children:[e.jsx(ks,{children:"Cancel"}),e.jsx(Fs,{onClick:x,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Delete Folder"})]})]})})]})},K=({id:s,tableName:a,isNested:n=!1,showContextMenu:r=!0})=>{const t=H(),{deleteQuery:o,addQuery:d,getQuery:c,toggleFavorite:m,updateQuery:u,moveQuery:g,folders:C,addFolder:h}=Y(),{queryId:j}=je({strict:!1}),i=j===s,p=c(s),N=p?.isFavorite??!1,[S,x]=l.useState(!1),[v,z]=l.useState(""),[B,D]=l.useState(!1),[J,R]=l.useState(void 0),[L,F]=l.useState(!1),[_,A]=l.useState(""),ie=l.useCallback(()=>{t({to:"/runner/$queryId",params:{queryId:s}})},[t,s]),Te=l.useCallback(()=>{o(s),j===s&&t({to:"/runner"}),w.success("Query deleted successfully")},[o,s,t,j]),ke=l.useCallback(()=>{const f=c(s),_e=d(`${f?.name} (Copy)`);t({to:"/runner/$queryId",params:{queryId:_e}}),w.success("Query duplicated successfully")},[d,c,t,s]),Fe=l.useCallback(()=>{m(s),w.success("Query favorited successfully")},[m,s]),Ee=l.useCallback(()=>{z(p?.name??""),x(!0)},[p?.name]),ce=l.useCallback(()=>{v.trim()&&(u(s,{name:v.trim()}),x(!1),z(""),w.success("Query renamed successfully"))},[s,v,u]),Re=l.useCallback(()=>{R(p?.folderId),F(!1),A(""),D(!0)},[p?.folderId]),Le=l.useCallback(f=>{f==="__create_new__"?(F(!0),R(void 0)):(F(!1),R(f==="__none__"?void 0:f))},[]),de=l.useCallback(()=>{if(L&&_.trim()){const f=Math.random().toString(36).substring(2,15);h({id:f,name:_.trim(),isExpanded:!0,isFavorite:!1}),g(s,f),w.success("Query moved to new folder successfully")}else L||(g(s,J),w.success("Query moved to selected folder successfully"));D(!1),F(!1),A(""),R(void 0)},[L,_,J,s,h,g]);return e.jsxs("li",{className:"relative",children:[r?e.jsxs(Se,{children:[e.jsx(De,{asChild:!0,children:e.jsxs("button",{type:"button",onClick:ie,className:y("w-full flex gap-2 py-2 text-sm transition-colors text-left","hover:text-zinc-100 focus:outline-none focus:bg-accent/10 focus:text-zinc-100 justify-start items-center",i?"text-zinc-100 bg-accent/10":"text-zinc-400",n?"px-4 pl-12":"px-4"),children:[i&&e.jsx("span",{className:"absolute left-0 top-0 bottom-0 w-1 bg-accent"}),e.jsx("span",{className:"flex-1",children:a})]})}),e.jsxs(ze,{children:[e.jsxs(T,{onClick:Ee,children:[e.jsx(te,{className:"size-4"}),"Rename query"]}),e.jsxs(T,{onClick:ke,children:[e.jsx(Xe,{className:"size-4"}),"Duplicate query"]}),e.jsxs(T,{onClick:Fe,children:[e.jsx(We,{className:N?"size-4 fill-current":"size-4"}),N?"Remove from favorites":"Add to favorites"]}),e.jsx(me,{}),e.jsxs(T,{onClick:Re,children:[e.jsx(Ye,{className:"size-4"}),"Move to folder"]}),e.jsx(me,{}),e.jsxs(T,{onClick:Te,children:[e.jsx(ae,{className:"size-4"}),"Delete query"]})]})]}):e.jsxs("button",{type:"button",onClick:ie,className:y("w-full flex gap-2 py-2 text-sm transition-colors text-left","hover:text-zinc-100 focus:outline-none focus:bg-accent/10 focus:text-zinc-100 justify-start items-center",i?"text-zinc-100 bg-accent/10":"text-zinc-400",n?"px-4 pl-12":"px-4"),children:[i&&e.jsx("span",{className:"absolute left-0 top-0 bottom-0 w-1 bg-accent"}),e.jsx("span",{className:"flex-1",children:a})]}),e.jsx(I,{open:S,onOpenChange:x,children:e.jsxs(Q,{children:[e.jsxs(q,{children:[e.jsx(P,{children:"Rename Query"}),e.jsx($,{children:"Enter a new name for this query."})]}),e.jsx(O,{value:v,onChange:f=>z(f.target.value),placeholder:"Query name",onKeyDown:f=>{f.key==="Enter"&&ce()},autoFocus:!0}),e.jsxs(V,{children:[e.jsx(b,{variant:"outline",onClick:()=>{x(!1),z("")},children:"Cancel"}),e.jsx(b,{onClick:ce,disabled:!v.trim(),children:"Rename"})]})]})}),e.jsx(I,{open:B,onOpenChange:f=>{D(f),f||(F(!1),A(""),R(void 0))},children:e.jsxs(Q,{children:[e.jsxs(q,{children:[e.jsx(P,{children:"Move to Folder"}),e.jsx($,{children:"Select a folder to move this query to."})]}),e.jsx("div",{className:"space-y-4",children:L?e.jsx(O,{value:_,onChange:f=>A(f.target.value),placeholder:"Folder name",onKeyDown:f=>{f.key==="Enter"&&_.trim()&&de(),f.key==="Escape"&&(F(!1),A(""))},autoFocus:!0}):e.jsxs(ye,{value:J??"__none__",onValueChange:Le,children:[e.jsx(Ce,{className:"w-full",children:e.jsx(Ne,{placeholder:"Select a folder"})}),e.jsxs(we,{children:[e.jsx(U,{value:"__none__",children:"No folder"}),C.map(f=>e.jsx(U,{value:f.id,children:f.name},f.id)),e.jsx(U,{value:"__create_new__",children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(be,{className:"size-4"}),"Create a new folder"]})})]})]})}),e.jsxs(V,{children:[e.jsx(b,{variant:"outline",onClick:()=>{D(!1),F(!1),A(""),R(void 0)},children:"Cancel"}),e.jsx(b,{onClick:de,disabled:L&&!_.trim(),children:L?"Create & Move":"Move"})]})]})})]})},Ps=()=>{const[s]=W(k.SIDEBAR_SEARCH,{defaultValue:""}),{folders:a,queries:n,getFavoriteQueries:r,getQueriesByFolder:t,toggleFolder:o}=Y(),[d,c]=l.useState(!0),[m,u]=l.useState(!0),g=n.filter(i=>!i.isFavorite).length,C=r(),h=C.length,j=n.filter(i=>!i.folderId&&!i.isFavorite);if(s){const i=n.filter(p=>p.name.toLowerCase().includes(s.toLowerCase()));return i.length===0?e.jsx("div",{className:"flex-1 overflow-y-auto p-4",children:"No queries found matching"}):e.jsx("div",{className:"flex-1 overflow-y-auto",children:i.map(p=>e.jsx(K,{id:p.id,tableName:p.name},p.id))})}return e.jsxs("div",{className:"flex-1 overflow-y-auto",children:[e.jsx(Z,{name:"Favorites",isExpanded:d,onToggle:()=>c(!d),count:h}),d&&C.map(i=>e.jsx(K,{id:i.id,tableName:i.name},i.id)),e.jsx(_s,{className:"bg-zinc-800"}),e.jsx(Z,{name:"Queries",isExpanded:m,onToggle:()=>u(!m),count:g}),m&&e.jsxs(e.Fragment,{children:[a.map(i=>{const p=t(i.id),N=p.length;return e.jsxs("div",{children:[e.jsx(Z,{folderId:i.id,name:i.name,isExpanded:i.isExpanded,onToggle:()=>o(i.id),count:N,showContextMenu:!0}),i.isExpanded&&p.map(S=>e.jsx(K,{id:S.id,tableName:S.name,isNested:!0,showContextMenu:!0},S.id))]},i.id)}),j.map(i=>e.jsx(K,{id:i.id,tableName:i.name,showContextMenu:!0},i.id))]})]})},$s=()=>{const{addQuery:s,addFolder:a}=Y(),n=H(),r=l.useRef(null),[t,o]=W(k.SIDEBAR_SEARCH,{defaultValue:""}),d=u=>{o(u.target.value)},c=()=>{const u=s();n({to:"/runner/$queryId",params:{queryId:u}})},m=()=>{const u=Math.random().toString(36).substring(2,15);a({id:u,name:"New Folder",isExpanded:!0,isFavorite:!1})};return e.jsxs("div",{className:"p-3 space-y-2 border-b border-zinc-800",children:[e.jsxs("div",{className:"flex gap-2",children:[e.jsxs(b,{className:"flex-1 justify-start h-8",onClick:c,children:[e.jsx(se,{className:"size-4"}),"Add Query"]}),e.jsxs(b,{className:"flex-1 justify-start h-8",onClick:m,children:[e.jsx(be,{className:"size-4"}),"Add Folder"]})]}),e.jsxs("div",{className:"relative",children:[e.jsx(ge,{className:"absolute left-2 top-1/2 -translate-y-1/2 w-4 h-4 text-muted-foreground"}),e.jsx(O,{ref:r,placeholder:"Search queries",value:t??"",onChange:d,className:"rounded-sm h-8 pl-8 pr-8"}),e.jsx(M,{className:"absolute right-2 top-1/2 -translate-y-1/2 text-xs",children:"/"})]})]})},Vs=()=>e.jsxs(e.Fragment,{children:[e.jsx($s,{}),e.jsx(Ps,{})]}),Hs=()=>{const{selectedDatabase:s}=X(),{mutateAsync:a,isPending:n}=ee({mutationFn:async t=>{const d=(await ne.get(`/tables/${t}/schema`,{params:{db:s??""}})).data.data.schema;return await navigator.clipboard.writeText(d),d}});return{copyTableSchema:async t=>w.promise(a(t),{loading:"Copying table schema...",success:"Table schema copied to clipboard",error:o=>o.message||"Failed to copy table schema"}),isCopyingSchema:n}},Bs=()=>{const s=Ve(),{selectedDatabase:a}=X(),{mutateAsync:n,isPending:r,reset:t}=ee({mutationFn:async({tableName:c,cascade:m=!1})=>(await ne.delete(`/tables/${c}`,{params:{db:a??"",cascade:m?"true":"false"}})).data.data,onSuccess:async()=>{await s.invalidateQueries({queryKey:[k.CACHE_KEYS.TABLES_LIST]})}});return{deleteTable:async c=>n({tableName:c,cascade:!1}),forceDeleteTable:async c=>n({tableName:c,cascade:!0}),isDeletingTable:r,resetDeleteResult:t}},Ks=()=>{const{selectedDatabase:s}=X(),{mutateAsync:a,isPending:n}=ee({mutationFn:async({tableName:t,format:o})=>{const d=await ne.get(`/tables/${t}/export`,{params:{db:s??"",format:o},responseType:"blob"}),u=d.headers["content-disposition"]?.match(/filename="(.+)"/)?.[1]||`${t}_export.${o}`,g=new Blob([d.data],{type:d.headers["content-type"]}),C=window.URL.createObjectURL(g),h=document.createElement("a");h.href=C,h.download=u,document.body.appendChild(h),h.click(),document.body.removeChild(h),window.URL.revokeObjectURL(C)}});return{exportFile:async({tableName:t,format:o})=>w.promise(a({tableName:t,format:o}),{loading:"Exporting file...",success:"File exported successfully",error:d=>d.message||"Failed to export file"}),isExportingFile:n}},Us=({tableName:s})=>{const a=H(),{copyTableSchema:n,isCopyingSchema:r}=Hs(),{exportFile:t,isExportingFile:o}=Ks(),{deleteTable:d,forceDeleteTable:c,isDeletingTable:m}=Bs(),[u,g]=l.useState(!1),[C,h]=l.useState(!1),[j,i]=l.useState([]),p=()=>{navigator.clipboard.writeText(s),w.success("Table name copied to clipboard")},N=async()=>{const v=await d(s);v.fkViolation?(i(v.relatedRecords),g(!1),h(!0)):(w.success(`Deleted table "${s}" with ${v.deletedCount} rows`),g(!1),a({to:"/"}))},S=async()=>{const v=await c(s);w.success(`Force deleted table "${s}" with ${v.deletedCount} rows`),h(!1),a({to:"/"})},x=()=>{h(!1),i([])};return e.jsxs(e.Fragment,{children:[e.jsxs(cs,{children:[e.jsx(ds,{children:e.jsx(b,{variant:"ghost",size:"icon-sm",children:e.jsx(Je,{})})}),e.jsx(us,{className:"w-56",align:"start",children:e.jsxs(xs,{children:[e.jsxs(E,{onClick:p,children:[e.jsx(Ze,{className:"size-4"}),"Copy name"]}),e.jsxs(E,{onClick:()=>n(s),disabled:r,children:[e.jsx(es,{className:"size-4"}),"Copy table schema"]}),e.jsx(xe,{}),e.jsxs(E,{children:[e.jsx(te,{className:"size-4"}),"Edit table"]}),e.jsxs(ms,{children:[e.jsxs(hs,{children:[e.jsx(ss,{className:"size-4"}),"Export data"]}),e.jsxs(fs,{children:[e.jsx(E,{onClick:()=>t({tableName:s,format:"csv"}),disabled:o,children:"Export as CSV"}),e.jsx(E,{onClick:()=>t({tableName:s,format:"json"}),disabled:o,children:"Export as JSON"}),e.jsx(E,{onClick:()=>t({tableName:s,format:"xlsx"}),disabled:o,children:"Export as Excel"})]})]}),e.jsx(xe,{}),e.jsxs(E,{variant:"destructive",onClick:()=>g(!0),children:[e.jsx(ae,{className:"size-4"}),"Delete table"]})]})})]}),e.jsx(Gs,{isOpen:u,onOpenChange:g,tableName:s,onDelete:N,isDeleting:m}),e.jsx(Xs,{isOpen:C,onOpenChange:h,tableName:s,relatedRecords:j,onForceDelete:S,onCancel:x,isDeleting:m})]})},Gs=({isOpen:s,onOpenChange:a,tableName:n,onDelete:r,isDeleting:t})=>e.jsx(I,{open:s,onOpenChange:a,children:e.jsxs(Q,{className:"max-w-md",children:[e.jsxs(q,{children:[e.jsx(P,{children:"Delete Table"}),e.jsxs($,{children:["Are you sure you want to delete the table"," ",e.jsxs("span",{className:"font-semibold text-foreground",children:['"',n,'"']}),"? This action cannot be undone and all data will be permanently lost."]})]}),e.jsxs(V,{className:"gap-2",children:[e.jsx(b,{variant:"outline",onClick:()=>a(!1),disabled:t,children:"Cancel"}),e.jsx(b,{variant:"destructive",onClick:r,disabled:t,children:t?"Deleting...":"Delete Table"})]})]})}),Xs=({isOpen:s,onOpenChange:a,tableName:n,relatedRecords:r,onForceDelete:t,onCancel:o,isDeleting:d})=>e.jsx(I,{open:s,onOpenChange:a,children:e.jsxs(Q,{className:"max-w-xl! max-h-[calc(100vh-1rem)]!",children:[e.jsxs(q,{children:[e.jsx(P,{children:"Cannot Delete - Foreign Key Constraint"}),e.jsxs($,{children:["The table ",e.jsxs("span",{className:"font-semibold text-foreground",children:['"',n,'"']})," ","cannot be deleted because it is referenced by records in other tables. You can either cancel the operation or force delete, which will also delete all related records."]})]}),e.jsx("div",{className:"space-y-4 max-h-64 overflow-y-auto",children:r.map((c,m)=>e.jsxs("div",{className:"border border-zinc-700 rounded-md p-3",children:[e.jsxs("div",{className:"font-medium text-sm mb-2",children:["Table: ",e.jsx("span",{className:"text-primary",children:c.tableName}),e.jsxs("span",{className:"text-muted-foreground ml-2",children:["(",c.records.length," record",c.records.length!==1?"s":"",")"]})]}),e.jsxs("div",{className:"text-xs text-muted-foreground mb-2",children:["References column: ",c.columnName]}),e.jsx("div",{className:"bg-zinc-900 rounded p-2 text-xs overflow-x-auto",children:e.jsxs("pre",{className:"whitespace-pre-wrap",children:[JSON.stringify(c.records.slice(0,5),null,2),c.records.length>5&&e.jsxs("div",{className:"text-muted-foreground mt-2",children:["... and ",c.records.length-5," more"]})]})})]},`${c.tableName}-${c.columnName}-${m}`))}),e.jsxs(V,{className:"gap-2",children:[e.jsx(b,{variant:"outline",onClick:o,disabled:d,children:"Cancel"}),e.jsx(b,{variant:"destructive",onClick:t,disabled:d,children:d?"Deleting...":"Force Delete All"})]})]})}),Ws=({tableName:s,rowCount:a})=>{const t=je({strict:!1}).table===s;return e.jsx("li",{className:"relative",children:e.jsxs(pe,{to:"/table/$table",params:{table:s},className:y("w-full flex gap-0.5 px-4 py-1.5 text-sm transition-colors text-left","hover:text-zinc-100 focus:outline-none focus:bg-accent/10 focus:text-zinc-100 justify-start items-center",t?"text-white bg-zinc-800/50":"text-zinc-400"),children:[t&&e.jsx("span",{className:"absolute left-0 top-0 bottom-0 w-1 bg-accent"}),e.jsx("span",{className:"flex-1",children:s}),e.jsxs("div",{className:"flex items-center gap-1 h-5",children:[t&&e.jsx(Us,{tableName:s}),e.jsx(M,{children:a})]})]})})},Ys=()=>{const[s]=W(k.SIDEBAR_SEARCH,{defaultValue:""}),{tablesList:a=[],isLoadingTablesList:n,errorTablesList:r}=ps(),t=a?.filter(o=>o.tableName.toLowerCase().includes(s.toLowerCase()));return n?e.jsx("div",{className:"flex-1 h-full overflow-y-auto pb-3 flex items-center justify-center",children:e.jsx(js,{size:"size-6"})}):r?e.jsxs("div",{className:"flex-1 overflow-y-auto pb-3 h-full flex items-center justify-center",children:["Error: ",r.message]}):e.jsx("div",{className:"flex-1 overflow-y-auto pb-3",children:t&&t.length>0?e.jsx("ul",{children:t?.map(o=>e.jsx(Ws,{tableName:o.tableName,rowCount:o.rowCount},o.tableName))}):s?e.jsx("div",{className:"flex-1 overflow-y-auto pb-3 h-full flex items-center justify-center",children:"No tables found matching"}):e.jsx("div",{className:"flex-1 overflow-y-auto pb-3 h-full flex items-center justify-center",children:"No tables available"})})},Js=()=>{const s=l.useRef(null),[a,n]=W(k.SIDEBAR_SEARCH,{defaultValue:""}),{openSheet:r}=ve();return Es("/",t=>{t.preventDefault(),s.current&&s.current.focus()},{preventDefault:!0}),e.jsxs("div",{className:"p-3 space-y-2",children:[e.jsxs(b,{className:"w-full justify-start h-8",onClick:()=>r("add-table"),children:[e.jsx(se,{className:"size-4"}),"Add Table"]}),e.jsxs("div",{className:"relative",children:[e.jsx(ge,{className:"absolute left-2 top-1/2 -translate-y-1/2 w-4 h-4 text-muted-foreground"}),e.jsx(O,{ref:s,placeholder:"Search tables",value:a??"",onChange:t=>n(t.target.value.trim()),className:"rounded-sm h-8 pl-8 pr-8"}),e.jsx(M,{className:"absolute right-2 top-1/2 -translate-y-1/2 text-xs",children:"/"})]})]})},he=()=>e.jsxs(e.Fragment,{children:[e.jsx(Js,{}),e.jsx(Rs,{className:"flex-1 overflow-y-auto pb-3 block h-full w-full",children:e.jsx(Ys,{})})]});function Zs(){const{databases:s,isLoadingDatabases:a,refetchDatabases:n,isRefetchingDatabases:r}=bs(),{connectionInfo:t,isLoadingConnectionInfo:o}=gs(),{selectedDatabase:d,setSelectedDatabase:c}=X(),m=H(),[u,g]=l.useState(!1),C=j=>{c(j),m({to:"/table",search:{}})},h=async()=>{await n(),w.success("Databases refreshed")};return e.jsx("div",{className:"mt-auto border-t bg-background",children:e.jsxs("div",{className:"p-4 space-y-2",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(ts,{className:"h-4 w-4 text-muted-foreground"}),e.jsx("span",{className:"text-sm font-medium",children:"Database"})]}),e.jsxs(re,{children:[e.jsx(le,{asChild:!0,children:e.jsx(b,{variant:"ghost",size:"icon",className:"h-6 w-6 hover:bg-accent",onClick:h,disabled:a||r,children:e.jsx(as,{className:y("h-3.5 w-3.5",(a||r)&&"animate-spin")})})}),e.jsx(oe,{children:"Refresh databases"})]})]}),e.jsxs(ye,{value:d||"",onValueChange:C,children:[e.jsx(Ce,{className:"h-9 text-xs font-mono w-full",disabled:a||r,children:e.jsx(Ne,{placeholder:"Select database..."})}),e.jsx(we,{children:s?.map(j=>e.jsx(U,{value:j.name,className:"font-mono text-xs",children:j.name},j.name))})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs(b,{variant:"ghost",className:"w-full hover:bg-accent flex items-center justify-between",onClick:()=>g(!u),disabled:o||r,children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("div",{className:"flex items-center justify-center",children:e.jsxs("div",{className:"relative flex h-2 w-2",children:[e.jsx("span",{className:"animate-ping absolute inline-flex h-full w-full rounded-full bg-green-400 opacity-75"}),e.jsx("span",{className:"relative inline-flex rounded-full h-2 w-2 bg-green-500"})]})}),e.jsx("span",{className:"text-xs font-medium text-green-600",children:"Connected"})]}),e.jsx(ns,{className:y("size-3 text-muted-foreground transition-transform",u&&"rotate-180")})]}),u&&t&&e.jsxs("div",{className:"space-y-1.5 px-2 py-2 rounded-md bg-muted/30",children:[e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx("span",{className:"text-xs text-muted-foreground",children:"Host"}),e.jsxs("span",{className:"text-xs font-mono text-foreground",children:[t.host,":",t.port]})]}),e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx("span",{className:"text-xs text-muted-foreground",children:"User"}),e.jsx("span",{className:"text-xs font-mono text-foreground",children:t.user})]}),e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx("span",{className:"text-xs text-muted-foreground",children:"Databases"}),e.jsx("span",{className:"text-xs font-mono font-medium text-foreground",children:s?.length||0})]})]})]})]})})}const et=()=>{const{sidebar:{isPinned:s},toggleSidebarPinned:a}=G();return e.jsx("div",{className:"flex items-center justify-between h-9 border-b border-zinc-800",children:e.jsx(b,{variant:"ghost",size:"lg",onClick:a,className:"size-9 flex items-center justify-center transition hover:bg-transparent! focus-visible:ring-0 focus-visible:ring-offset-0",title:s?"Unpin sidebar":"Pin sidebar",children:s?e.jsx(rs,{className:"size-4"}):e.jsx(ls,{className:"size-4"})})})},st=({children:s})=>{const{sidebar:{width:a,isOpen:n,isPinned:r},setSidebarWidth:t,setSidebarOpen:o}=G(),d=l.useRef(!1),c=l.useRef(0),m=l.useRef(0),u=l.useRef(null),g=l.useRef(null),C=l.useCallback(x=>{d.current&&requestAnimationFrame(()=>{const v=x.clientX-c.current,z=m.current+v;t(z)})},[t]),h=l.useCallback(()=>{d.current=!1,document.body.style.cursor="",document.body.style.userSelect="";const x=document.getElementById("resize-overlay");x&&x.remove()},[]),j=l.useCallback(x=>{x.preventDefault(),d.current=!0,c.current=x.clientX,m.current=a,document.body.style.cursor="col-resize",document.body.style.userSelect="none";const v=document.createElement("div");v.id="resize-overlay",v.style.cssText="position:fixed;inset:0;z-index:9999;cursor:col-resize;",document.body.appendChild(v)},[a]),i=l.useCallback(()=>{r||o(!0)},[r,o]),p=l.useCallback(()=>{r||o(!1)},[r,o]),N=l.useCallback(x=>{r||n||d.current||(x.clientX<=k.HOVER_ZONE?(u.current&&clearTimeout(u.current),u.current=window.setTimeout(()=>{o(!0)},k.HOVER_DELAY)):x.clientX>k.HOVER_ZONE+50&&u.current&&clearTimeout(u.current))},[r,n,o]),S=x=>{r||o(x)};return l.useEffect(()=>(document.addEventListener("mousemove",C),document.addEventListener("mouseup",h),document.addEventListener("mousemove",N),()=>{document.removeEventListener("mousemove",C),document.removeEventListener("mouseup",h),document.removeEventListener("mousemove",N),u.current&&clearTimeout(u.current)}),[C,h,N]),l.useEffect(()=>{const x=g.current;if(x)return x.addEventListener("mouseenter",i),x.addEventListener("mouseleave",p),()=>{x.removeEventListener("mouseenter",i),x.removeEventListener("mouseleave",p)}},[i,p]),e.jsxs(vs,{open:n,onOpenChange:S,modal:!1,children:[e.jsx(ys,{className:"sr-only",children:"Open Sidebar"}),e.jsx(Cs,{ref:g,side:"left",showCloseButton:!1,isPinned:r,className:y("bg-black border-r border-zinc-800 p-0","transition-transform duration-300 ease-out"),style:{width:`${a}px`},onOpenAutoFocus:x=>x.preventDefault(),children:e.jsxs("div",{className:"relative h-full flex flex-col",children:[s,e.jsx("div",{role:"button",tabIndex:0,onMouseDown:j,className:y("absolute top-0 right-0 w-2 h-full cursor-col-resize z-50","hover:bg-blue-500/50 transition-colors group"),title:"Drag to resize",children:e.jsx("div",{className:"absolute right-0 top-1/2 -translate-y-1/2 w-2 h-12 bg-blue-500 opacity-0 group-hover:opacity-100 transition-opacity rounded-full"})})]})})]})},tt=()=>{const{pathname:s}=fe(),a=s.split("/")[1],n=l.useMemo(()=>{switch(console.log(a),a){case"":case"table":return e.jsx(he,{});case"runner":return e.jsx(Vs,{});default:return e.jsx(he,{})}},[a]);return e.jsxs(st,{children:[e.jsx(et,{}),n,e.jsx(Zs,{})]})};function at(){const{sidebar:{isPinned:s,width:a}}=G();return e.jsxs("div",{className:"bg-zinc-950 w-dvw flex h-dvh max-h-dvh overflow-hidden relative",children:[e.jsx(tt,{}),e.jsxs("div",{className:"flex-1 flex flex-col h-full overflow-hidden ",style:{marginLeft:s?`${a}px`:"0"},children:[e.jsx(qs,{}),e.jsx(He,{})]})]})}const xt=Object.freeze(Object.defineProperty({__proto__:null,component:at},Symbol.toStringTag,{value:"Module"}));export{xt as _,As as u};
@@ -0,0 +1 @@
1
+ import{j as r}from"./radix-ui-bzITMjAn.js";import{R as t}from"./runner-tab-CslhxcLx.js";import{R as m}from"./index-CG7j3ZfO.js";import"./icons-CThL5JLu.js";import"./react-dom-C-8vY09X.js";import"./monaco-editor-BMj4E99D.js";import"./tanstack-Be3yNbjx.js";import"./index-DUtjV0B-.js";import"./format-cell-value-Cn3RA9a1.js";import"./queries.store-B01mhBzt.js";function c(){const{queryId:o}=m.useParams();return r.jsx(t,{queryId:o})}export{c as component};
@@ -0,0 +1,8 @@
1
+ import{j as a,ah as Js,ai as Gs,aj as Qs,ak as Sn,al as kn,am as jn}from"./radix-ui-bzITMjAn.js";import{a as W,W as rn,B as R,X as Be,Y as xt,Z as Ke,S as de,o as ue,q as fe,r as he,s as B,C as M,_ as Nn,m as me,$ as Xs,a0 as le,I as ae,a1 as Se,a2 as Ee,v as Ve,x as Ue,M as Dn,a3 as $e,t as De,a4 as Zs,a5 as er,a6 as rt,a7 as se,y as En,z as On,A as Mn,F as Ne,c as tr,a8 as Bt,a9 as nr,aa as Tn,E as sr,G as rr,ab as Pt,n as ar}from"./index-CG7j3ZfO.js";import{u as P,c as Je,T as Ge,a as Qe,b as Xe,p as Fe}from"./index-DUtjV0B-.js";import{a as D,r as g,Q as _n,C as Rn,n as An,U as or,L as Wn,V as Tt,m as zn,W as Fn,X as yt,Y as lr,Z as ir,A as cr,c as dr,_ as ur,y as fr,$ as hr,a0 as mr,T as gr,a1 as pr}from"./icons-CThL5JLu.js";import{S as xr,K as ke,D as yr,a as br,b as Cr,c as wr,d as vr,e as Sr,m as Ye,A as kr,f as jr,g as Nr,h as Dr,i as Er,j as Or,k as Mr,l as Tr}from"./scroll-area-BYB-APTE.js";import{u as _r,f as Yn,i as Pn,h as nt,e as at,d as ot,g as In,p as Rr}from"./tanstack-Be3yNbjx.js";import{f as Ar}from"./format-cell-value-Cn3RA9a1.js";import"./react-dom-C-8vY09X.js";import"./monaco-editor-BMj4E99D.js";const Bn=6048e5,Wr=864e5,an=Symbol.for("constructDateFrom");function J(e,t){return typeof e=="function"?e(t):e&&typeof e=="object"&&an in e?e[an](t):e instanceof Date?new e.constructor(t):new Date(t)}function H(e,t){return J(t||e,e)}function pt(e,t,n){const s=H(e,n?.in);return isNaN(t)?J(e,NaN):(t&&s.setDate(s.getDate()+t),s)}function Kn(e,t,n){const s=H(e,n?.in);if(isNaN(t))return J(e,NaN);if(!t)return s;const r=s.getDate(),l=J(e,s.getTime());l.setMonth(s.getMonth()+t+1,0);const c=l.getDate();return r>=c?l:(s.setFullYear(l.getFullYear(),l.getMonth(),r),s)}let zr={};function lt(){return zr}function Pe(e,t){const n=lt(),s=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,r=H(e,t?.in),l=r.getDay(),c=(l<s?7:0)+l-s;return r.setDate(r.getDate()-c),r.setHours(0,0,0,0),r}function st(e,t){return Pe(e,{...t,weekStartsOn:1})}function Vn(e,t){const n=H(e,t?.in),s=n.getFullYear(),r=J(n,0);r.setFullYear(s+1,0,4),r.setHours(0,0,0,0);const l=st(r),c=J(n,0);c.setFullYear(s,0,4),c.setHours(0,0,0,0);const o=st(c);return n.getTime()>=l.getTime()?s+1:n.getTime()>=o.getTime()?s:s-1}function on(e){const t=H(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 He(e,...t){const n=J.bind(null,t.find(s=>typeof s=="object"));return t.map(n)}function Ie(e,t){const n=H(e,t?.in);return n.setHours(0,0,0,0),n}function Kt(e,t,n){const[s,r]=He(n?.in,e,t),l=Ie(s),c=Ie(r),o=+l-on(l),i=+c-on(c);return Math.round((o-i)/Wr)}function Fr(e,t){const n=Vn(e,t),s=J(e,0);return s.setFullYear(n,0,4),s.setHours(0,0,0,0),st(s)}function Yr(e,t,n){return pt(e,t*7,n)}function Pr(e,t,n){return Kn(e,t*12,n)}function Ir(e,t){let n,s=t?.in;return e.forEach(r=>{!s&&typeof r=="object"&&(s=J.bind(null,r));const l=H(r,s);(!n||n<l||isNaN(+l))&&(n=l)}),J(s,n||NaN)}function Br(e,t){let n,s=t?.in;return e.forEach(r=>{!s&&typeof r=="object"&&(s=J.bind(null,r));const l=H(r,s);(!n||n>l||isNaN(+l))&&(n=l)}),J(s,n||NaN)}function Kr(e,t,n){const[s,r]=He(n?.in,e,t);return+Ie(s)==+Ie(r)}function Un(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function Vr(e){return!(!Un(e)&&typeof e!="number"||isNaN(+H(e)))}function $n(e,t,n){const[s,r]=He(n?.in,e,t),l=s.getFullYear()-r.getFullYear(),c=s.getMonth()-r.getMonth();return l*12+c}function Ur(e,t){const n=H(e,t?.in),s=n.getMonth();return n.setFullYear(n.getFullYear(),s+1,0),n.setHours(23,59,59,999),n}function Hn(e,t){const[n,s]=He(e,t.start,t.end);return{start:n,end:s}}function $r(e,t){const{start:n,end:s}=Hn(t?.in,e);let r=+n>+s;const l=r?+n:+s,c=r?s:n;c.setHours(0,0,0,0),c.setDate(1);let o=1;const i=[];for(;+c<=l;)i.push(J(n,c)),c.setMonth(c.getMonth()+o);return r?i.reverse():i}function Hr(e,t){const n=H(e,t?.in);return n.setDate(1),n.setHours(0,0,0,0),n}function Lr(e,t){const n=H(e,t?.in),s=n.getFullYear();return n.setFullYear(s+1,0,0),n.setHours(23,59,59,999),n}function Ln(e,t){const n=H(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}function qr(e,t){const{start:n,end:s}=Hn(t?.in,e);let r=+n>+s;const l=r?+n:+s,c=r?s:n;c.setHours(0,0,0,0),c.setMonth(0,1);let o=1;const i=[];for(;+c<=l;)i.push(J(n,c)),c.setFullYear(c.getFullYear()+o);return r?i.reverse():i}function qn(e,t){const n=lt(),s=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,r=H(e,t?.in),l=r.getDay(),c=(l<s?-7:0)+6-(l-s);return r.setDate(r.getDate()+c),r.setHours(23,59,59,999),r}function Jr(e,t){return qn(e,{...t,weekStartsOn:1})}const Gr={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"}},Qr=(e,t,n)=>{let s;const r=Gr[e];return typeof r=="string"?s=r:t===1?s=r.one:s=r.other.replace("{{count}}",t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?"in "+s:s+" ago":s};function _t(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const Xr={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Zr={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},ea={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},ta={date:_t({formats:Xr,defaultWidth:"full"}),time:_t({formats:Zr,defaultWidth:"full"}),dateTime:_t({formats:ea,defaultWidth:"full"})},na={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},sa=(e,t,n,s)=>na[e];function Ze(e){return(t,n)=>{const s=n?.context?String(n.context):"standalone";let r;if(s==="formatting"&&e.formattingValues){const c=e.defaultFormattingWidth||e.defaultWidth,o=n?.width?String(n.width):c;r=e.formattingValues[o]||e.formattingValues[c]}else{const c=e.defaultWidth,o=n?.width?String(n.width):e.defaultWidth;r=e.values[o]||e.values[c]}const l=e.argumentCallback?e.argumentCallback(t):t;return r[l]}}const ra={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},aa={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},oa={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"]},la={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"]},ia={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"}},ca={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"}},da=(e,t)=>{const n=Number(e),s=n%100;if(s>20||s<10)switch(s%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},ua={ordinalNumber:da,era:Ze({values:ra,defaultWidth:"wide"}),quarter:Ze({values:aa,defaultWidth:"wide",argumentCallback:e=>e-1}),month:Ze({values:oa,defaultWidth:"wide"}),day:Ze({values:la,defaultWidth:"wide"}),dayPeriod:Ze({values:ia,defaultWidth:"wide",formattingValues:ca,defaultFormattingWidth:"wide"})};function et(e){return(t,n={})=>{const s=n.width,r=s&&e.matchPatterns[s]||e.matchPatterns[e.defaultMatchWidth],l=t.match(r);if(!l)return null;const c=l[0],o=s&&e.parsePatterns[s]||e.parsePatterns[e.defaultParseWidth],i=Array.isArray(o)?ha(o,f=>f.test(c)):fa(o,f=>f.test(c));let d;d=e.valueCallback?e.valueCallback(i):i,d=n.valueCallback?n.valueCallback(d):d;const u=t.slice(c.length);return{value:d,rest:u}}}function fa(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function ha(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function ma(e){return(t,n={})=>{const s=t.match(e.matchPattern);if(!s)return null;const r=s[0],l=t.match(e.parsePattern);if(!l)return null;let c=e.valueCallback?e.valueCallback(l[0]):l[0];c=n.valueCallback?n.valueCallback(c):c;const o=t.slice(r.length);return{value:c,rest:o}}}const ga=/^(\d+)(th|st|nd|rd)?/i,pa=/\d+/i,xa={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},ya={any:[/^b/i,/^(a|c)/i]},ba={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},Ca={any:[/1/i,/2/i,/3/i,/4/i]},wa={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},va={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]},Sa={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},ka={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]},ja={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},Na={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}},Da={ordinalNumber:ma({matchPattern:ga,parsePattern:pa,valueCallback:e=>parseInt(e,10)}),era:et({matchPatterns:xa,defaultMatchWidth:"wide",parsePatterns:ya,defaultParseWidth:"any"}),quarter:et({matchPatterns:ba,defaultMatchWidth:"wide",parsePatterns:Ca,defaultParseWidth:"any",valueCallback:e=>e+1}),month:et({matchPatterns:wa,defaultMatchWidth:"wide",parsePatterns:va,defaultParseWidth:"any"}),day:et({matchPatterns:Sa,defaultMatchWidth:"wide",parsePatterns:ka,defaultParseWidth:"any"}),dayPeriod:et({matchPatterns:ja,defaultMatchWidth:"any",parsePatterns:Na,defaultParseWidth:"any"})},ze={code:"en-US",formatDistance:Qr,formatLong:ta,formatRelative:sa,localize:ua,match:Da,options:{weekStartsOn:0,firstWeekContainsDate:1}};function Ea(e,t){const n=H(e,t?.in);return Kt(n,Ln(n))+1}function Vt(e,t){const n=H(e,t?.in),s=+st(n)-+Fr(n);return Math.round(s/Bn)+1}function Jn(e,t){const n=H(e,t?.in),s=n.getFullYear(),r=lt(),l=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,c=J(t?.in||e,0);c.setFullYear(s+1,0,l),c.setHours(0,0,0,0);const o=Pe(c,t),i=J(t?.in||e,0);i.setFullYear(s,0,l),i.setHours(0,0,0,0);const d=Pe(i,t);return+n>=+o?s+1:+n>=+d?s:s-1}function Oa(e,t){const n=lt(),s=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,r=Jn(e,t),l=J(t?.in||e,0);return l.setFullYear(r,0,s),l.setHours(0,0,0,0),Pe(l,t)}function Ut(e,t){const n=H(e,t?.in),s=+Pe(n,t)-+Oa(n,t);return Math.round(s/Bn)+1}function $(e,t){const n=e<0?"-":"",s=Math.abs(e).toString().padStart(t,"0");return n+s}const je={y(e,t){const n=e.getFullYear(),s=n>0?n:1-n;return $(t==="yy"?s%100:s,t.length)},M(e,t){const n=e.getMonth();return t==="M"?String(n+1):$(n+1,2)},d(e,t){return $(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 $(e.getHours()%12||12,t.length)},H(e,t){return $(e.getHours(),t.length)},m(e,t){return $(e.getMinutes(),t.length)},s(e,t){return $(e.getSeconds(),t.length)},S(e,t){const n=t.length,s=e.getMilliseconds(),r=Math.trunc(s*Math.pow(10,n-3));return $(r,t.length)}},Ae={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},ln={G:function(e,t,n){const s=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(s,{width:"abbreviated"});case"GGGGG":return n.era(s,{width:"narrow"});default:return n.era(s,{width:"wide"})}},y:function(e,t,n){if(t==="yo"){const s=e.getFullYear(),r=s>0?s:1-s;return n.ordinalNumber(r,{unit:"year"})}return je.y(e,t)},Y:function(e,t,n,s){const r=Jn(e,s),l=r>0?r:1-r;if(t==="YY"){const c=l%100;return $(c,2)}return t==="Yo"?n.ordinalNumber(l,{unit:"year"}):$(l,t.length)},R:function(e,t){const n=Vn(e);return $(n,t.length)},u:function(e,t){const n=e.getFullYear();return $(n,t.length)},Q:function(e,t,n){const s=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(s);case"QQ":return $(s,2);case"Qo":return n.ordinalNumber(s,{unit:"quarter"});case"QQQ":return n.quarter(s,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(s,{width:"narrow",context:"formatting"});default:return n.quarter(s,{width:"wide",context:"formatting"})}},q:function(e,t,n){const s=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(s);case"qq":return $(s,2);case"qo":return n.ordinalNumber(s,{unit:"quarter"});case"qqq":return n.quarter(s,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(s,{width:"narrow",context:"standalone"});default:return n.quarter(s,{width:"wide",context:"standalone"})}},M:function(e,t,n){const s=e.getMonth();switch(t){case"M":case"MM":return je.M(e,t);case"Mo":return n.ordinalNumber(s+1,{unit:"month"});case"MMM":return n.month(s,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(s,{width:"narrow",context:"formatting"});default:return n.month(s,{width:"wide",context:"formatting"})}},L:function(e,t,n){const s=e.getMonth();switch(t){case"L":return String(s+1);case"LL":return $(s+1,2);case"Lo":return n.ordinalNumber(s+1,{unit:"month"});case"LLL":return n.month(s,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(s,{width:"narrow",context:"standalone"});default:return n.month(s,{width:"wide",context:"standalone"})}},w:function(e,t,n,s){const r=Ut(e,s);return t==="wo"?n.ordinalNumber(r,{unit:"week"}):$(r,t.length)},I:function(e,t,n){const s=Vt(e);return t==="Io"?n.ordinalNumber(s,{unit:"week"}):$(s,t.length)},d:function(e,t,n){return t==="do"?n.ordinalNumber(e.getDate(),{unit:"date"}):je.d(e,t)},D:function(e,t,n){const s=Ea(e);return t==="Do"?n.ordinalNumber(s,{unit:"dayOfYear"}):$(s,t.length)},E:function(e,t,n){const s=e.getDay();switch(t){case"E":case"EE":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"})}},e:function(e,t,n,s){const r=e.getDay(),l=(r-s.weekStartsOn+8)%7||7;switch(t){case"e":return String(l);case"ee":return $(l,2);case"eo":return n.ordinalNumber(l,{unit:"day"});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"})}},c:function(e,t,n,s){const r=e.getDay(),l=(r-s.weekStartsOn+8)%7||7;switch(t){case"c":return String(l);case"cc":return $(l,t.length);case"co":return n.ordinalNumber(l,{unit:"day"});case"ccc":return n.day(r,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(r,{width:"narrow",context:"standalone"});case"cccccc":return n.day(r,{width:"short",context:"standalone"});default:return n.day(r,{width:"wide",context:"standalone"})}},i:function(e,t,n){const s=e.getDay(),r=s===0?7:s;switch(t){case"i":return String(r);case"ii":return $(r,t.length);case"io":return n.ordinalNumber(r,{unit:"day"});case"iii":return n.day(s,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(s,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(s,{width:"short",context:"formatting"});default:return n.day(s,{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 s=e.getHours();let r;switch(s===12?r=Ae.noon:s===0?r=Ae.midnight:r=s/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},B:function(e,t,n){const s=e.getHours();let r;switch(s>=17?r=Ae.evening:s>=12?r=Ae.afternoon:s>=4?r=Ae.morning:r=Ae.night,t){case"B":case"BB":case"BBB":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},h:function(e,t,n){if(t==="ho"){let s=e.getHours()%12;return s===0&&(s=12),n.ordinalNumber(s,{unit:"hour"})}return je.h(e,t)},H:function(e,t,n){return t==="Ho"?n.ordinalNumber(e.getHours(),{unit:"hour"}):je.H(e,t)},K:function(e,t,n){const s=e.getHours()%12;return t==="Ko"?n.ordinalNumber(s,{unit:"hour"}):$(s,t.length)},k:function(e,t,n){let s=e.getHours();return s===0&&(s=24),t==="ko"?n.ordinalNumber(s,{unit:"hour"}):$(s,t.length)},m:function(e,t,n){return t==="mo"?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):je.m(e,t)},s:function(e,t,n){return t==="so"?n.ordinalNumber(e.getSeconds(),{unit:"second"}):je.s(e,t)},S:function(e,t){return je.S(e,t)},X:function(e,t,n){const s=e.getTimezoneOffset();if(s===0)return"Z";switch(t){case"X":return dn(s);case"XXXX":case"XX":return Oe(s);default:return Oe(s,":")}},x:function(e,t,n){const s=e.getTimezoneOffset();switch(t){case"x":return dn(s);case"xxxx":case"xx":return Oe(s);default:return Oe(s,":")}},O:function(e,t,n){const s=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+cn(s,":");default:return"GMT"+Oe(s,":")}},z:function(e,t,n){const s=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+cn(s,":");default:return"GMT"+Oe(s,":")}},t:function(e,t,n){const s=Math.trunc(+e/1e3);return $(s,t.length)},T:function(e,t,n){return $(+e,t.length)}};function cn(e,t=""){const n=e>0?"-":"+",s=Math.abs(e),r=Math.trunc(s/60),l=s%60;return l===0?n+String(r):n+String(r)+t+$(l,2)}function dn(e,t){return e%60===0?(e>0?"-":"+")+$(Math.abs(e)/60,2):Oe(e,t)}function Oe(e,t=""){const n=e>0?"-":"+",s=Math.abs(e),r=$(Math.trunc(s/60),2),l=$(s%60,2);return n+r+t+l}const un=(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"})}},Gn=(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"})}},Ma=(e,t)=>{const n=e.match(/(P+)(p+)?/)||[],s=n[1],r=n[2];if(!r)return un(e,t);let l;switch(s){case"P":l=t.dateTime({width:"short"});break;case"PP":l=t.dateTime({width:"medium"});break;case"PPP":l=t.dateTime({width:"long"});break;default:l=t.dateTime({width:"full"});break}return l.replace("{{date}}",un(s,t)).replace("{{time}}",Gn(r,t))},Ta={p:Gn,P:Ma},_a=/^D+$/,Ra=/^Y+$/,Aa=["D","DD","YY","YYYY"];function Wa(e){return _a.test(e)}function za(e){return Ra.test(e)}function Fa(e,t,n){const s=Ya(e,t,n);if(console.warn(s),Aa.includes(e))throw new RangeError(s)}function Ya(e,t,n){const s=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${s} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const Pa=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Ia=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Ba=/^'([^]*?)'?$/,Ka=/''/g,Va=/[a-zA-Z]/;function Ce(e,t,n){const s=lt(),r=n?.locale??s.locale??ze,l=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??s.firstWeekContainsDate??s.locale?.options?.firstWeekContainsDate??1,c=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??s.weekStartsOn??s.locale?.options?.weekStartsOn??0,o=H(e,n?.in);if(!Vr(o))throw new RangeError("Invalid time value");let i=t.match(Ia).map(u=>{const f=u[0];if(f==="p"||f==="P"){const m=Ta[f];return m(u,r.formatLong)}return u}).join("").match(Pa).map(u=>{if(u==="''")return{isToken:!1,value:"'"};const f=u[0];if(f==="'")return{isToken:!1,value:Ua(u)};if(ln[f])return{isToken:!0,value:u};if(f.match(Va))throw new RangeError("Format string contains an unescaped latin alphabet character `"+f+"`");return{isToken:!1,value:u}});r.localize.preprocessor&&(i=r.localize.preprocessor(o,i));const d={firstWeekContainsDate:l,weekStartsOn:c,locale:r};return i.map(u=>{if(!u.isToken)return u.value;const f=u.value;(!n?.useAdditionalWeekYearTokens&&za(f)||!n?.useAdditionalDayOfYearTokens&&Wa(f))&&Fa(f,t,String(e));const m=ln[f[0]];return m(o,f,r.localize,d)}).join("")}function Ua(e){const t=e.match(Ba);return t?t[1].replace(Ka,"'"):e}function $a(e,t){const n=H(e,t?.in),s=n.getFullYear(),r=n.getMonth(),l=J(n,0);return l.setFullYear(s,r+1,0),l.setHours(0,0,0,0),l.getDate()}function Ha(e,t){return H(e,t?.in).getMonth()}function La(e,t){return H(e,t?.in).getFullYear()}function qa(e,t){return+H(e)>+H(t)}function Ja(e,t){return+H(e)<+H(t)}function Ga(e,t,n){const[s,r]=He(n?.in,e,t);return s.getFullYear()===r.getFullYear()&&s.getMonth()===r.getMonth()}function Qa(e,t,n){const[s,r]=He(n?.in,e,t);return s.getFullYear()===r.getFullYear()}function Xa(e,t,n){const s=H(e,n?.in),r=s.getFullYear(),l=s.getDate(),c=J(e,0);c.setFullYear(r,t,15),c.setHours(0,0,0,0);const o=$a(c);return s.setMonth(t,Math.min(l,o)),s}function Za(e,t,n){const s=H(e,n?.in);return isNaN(+s)?J(e,NaN):(s.setFullYear(t),s)}function eo(e,t,n="long"){return new Intl.DateTimeFormat("en-US",{hour:"numeric",timeZone:e,timeZoneName:n}).format(t).split(/\s/g).slice(2).join(" ")}const to={},tt={};function Me(e,t){try{const s=(to[e]||=new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"longOffset"}).format)(t).split("GMT")[1];return s in tt?tt[s]:fn(s,s.split(":"))}catch{if(e in tt)return tt[e];const n=e?.match(no);return n?fn(e,n.slice(1)):NaN}}const no=/([+-]\d\d):?(\d\d)?/;function fn(e,t){const n=+(t[0]||0),s=+(t[1]||0),r=+(t[2]||0)/60;return tt[e]=n*60+s>0?n*60+s+r:n*60-s-r}class pe extends Date{constructor(...t){super(),t.length>1&&typeof t[t.length-1]=="string"&&(this.timeZone=t.pop()),this.internal=new Date,isNaN(Me(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)),Qn(this),It(this)):this.setTime(Date.now())}static tz(t,...n){return n.length?new pe(...n,t):new pe(Date.now(),t)}withTimeZone(t){return new pe(+this,t)}getTimezoneOffset(){const t=-Me(this.timeZone,this);return t>0?Math.floor(t):Math.ceil(t)}setTime(t){return Date.prototype.setTime.apply(this,arguments),It(this),+this}[Symbol.for("constructDateFrom")](t){return new pe(+new Date(t),this.timeZone)}}const hn=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!hn.test(e))return;const t=e.replace(hn,"$1UTC");pe.prototype[t]&&(e.startsWith("get")?pe.prototype[e]=function(){return this.internal[t]()}:(pe.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),so(this),+this},pe.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),It(this),+this}))});function It(e){e.internal.setTime(+e),e.internal.setUTCSeconds(e.internal.getUTCSeconds()-Math.round(-Me(e.timeZone,e)*60))}function so(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()),Qn(e)}function Qn(e){const t=Me(e.timeZone,e),n=t>0?Math.floor(t):Math.ceil(t),s=new Date(+e);s.setUTCHours(s.getUTCHours()-1);const r=-new Date(+e).getTimezoneOffset(),l=-new Date(+s).getTimezoneOffset(),c=r-l,o=Date.prototype.getHours.apply(e)!==e.internal.getUTCHours();c&&o&&e.internal.setUTCMinutes(e.internal.getUTCMinutes()+c);const i=r-n;i&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+i);const d=new Date(+e);d.setUTCSeconds(0);const u=r>0?d.getSeconds():(d.getSeconds()-60)%60,f=Math.round(-(Me(e.timeZone,e)*60))%60;(f||u)&&(e.internal.setUTCSeconds(e.internal.getUTCSeconds()+f),Date.prototype.setUTCSeconds.call(e,Date.prototype.getUTCSeconds.call(e)+f+u));const m=Me(e.timeZone,e),x=m>0?Math.floor(m):Math.ceil(m),k=-new Date(+e).getTimezoneOffset()-x,S=x!==n,v=k-i;if(S&&v){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+v);const w=Me(e.timeZone,e),p=w>0?Math.floor(w):Math.ceil(w),h=x-p;h&&(e.internal.setUTCMinutes(e.internal.getUTCMinutes()+h),Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+h))}}class X extends pe{static tz(t,...n){return n.length?new X(...n,t):new X(Date.now(),t)}toISOString(){const[t,n,s]=this.tzComponents(),r=`${t}${n}:${s}`;return this.internal.toISOString().slice(0,-1)+r}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[t,n,s,r]=this.internal.toUTCString().split(" ");return`${t?.slice(0,-1)} ${s} ${n} ${r}`}toTimeString(){const t=this.internal.toUTCString().split(" ")[4],[n,s,r]=this.tzComponents();return`${t} GMT${n}${s}${r} (${eo(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(),n=t>0?"-":"+",s=String(Math.floor(Math.abs(t)/60)).padStart(2,"0"),r=String(Math.abs(t)%60).padStart(2,"0");return[n,s,r]}withTimeZone(t){return new X(+this,t)}[Symbol.for("constructDateFrom")](t){return new X(+new Date(t),this.timeZone)}}const mn=5,ro=4;function ao(e,t){const n=t.startOfMonth(e),s=n.getDay()>0?n.getDay():7,r=t.addDays(e,-s+1),l=t.addDays(r,mn*7-1);return t.getMonth(e)===t.getMonth(l)?mn:ro}function Xn(e,t){const n=t.startOfMonth(e),s=n.getDay();return s===1?n:s===0?t.addDays(n,-6):t.addDays(n,-1*(s-1))}function oo(e,t){const n=Xn(e,t),s=ao(e,t);return t.addDays(n,s*7-1)}const Zn={...ze,labels:{labelDayButton:(e,t,n,s)=>{let r;s&&typeof s.format=="function"?r=s.format.bind(s):r=(c,o)=>Ce(c,o,{locale:ze,...n});let l=r(e,"PPPP");return t.today&&(l=`Today, ${l}`),t.selected&&(l=`${l}, selected`),l},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 s;return n&&typeof n.format=="function"?s=n.format.bind(n):s=(r,l)=>Ce(r,l,{locale:ze,...t}),s(e,"LLLL yyyy")},labelGridcell:(e,t,n,s)=>{let r;s&&typeof s.format=="function"?r=s.format.bind(s):r=(c,o)=>Ce(c,o,{locale:ze,...n});let l=r(e,"PPPP");return t?.today&&(l=`Today, ${l}`),l},labelNav:"Navigation bar",labelWeekNumberHeader:"Week Number",labelWeekday:(e,t,n)=>{let s;return n&&typeof n.format=="function"?s=n.format.bind(n):s=(r,l)=>Ce(r,l,{locale:ze,...t}),s(e,"cccc")}}};class re{constructor(t,n){this.Date=Date,this.today=()=>this.overrides?.today?this.overrides.today():this.options.timeZone?X.tz(this.options.timeZone):new this.Date,this.newDate=(s,r,l)=>this.overrides?.newDate?this.overrides.newDate(s,r,l):this.options.timeZone?new X(s,r,l,this.options.timeZone):new Date(s,r,l),this.addDays=(s,r)=>this.overrides?.addDays?this.overrides.addDays(s,r):pt(s,r),this.addMonths=(s,r)=>this.overrides?.addMonths?this.overrides.addMonths(s,r):Kn(s,r),this.addWeeks=(s,r)=>this.overrides?.addWeeks?this.overrides.addWeeks(s,r):Yr(s,r),this.addYears=(s,r)=>this.overrides?.addYears?this.overrides.addYears(s,r):Pr(s,r),this.differenceInCalendarDays=(s,r)=>this.overrides?.differenceInCalendarDays?this.overrides.differenceInCalendarDays(s,r):Kt(s,r),this.differenceInCalendarMonths=(s,r)=>this.overrides?.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(s,r):$n(s,r),this.eachMonthOfInterval=s=>this.overrides?.eachMonthOfInterval?this.overrides.eachMonthOfInterval(s):$r(s),this.eachYearOfInterval=s=>{const r=this.overrides?.eachYearOfInterval?this.overrides.eachYearOfInterval(s):qr(s),l=new Set(r.map(o=>this.getYear(o)));if(l.size===r.length)return r;const c=[];return l.forEach(o=>{c.push(new Date(o,0,1))}),c},this.endOfBroadcastWeek=s=>this.overrides?.endOfBroadcastWeek?this.overrides.endOfBroadcastWeek(s):oo(s,this),this.endOfISOWeek=s=>this.overrides?.endOfISOWeek?this.overrides.endOfISOWeek(s):Jr(s),this.endOfMonth=s=>this.overrides?.endOfMonth?this.overrides.endOfMonth(s):Ur(s),this.endOfWeek=(s,r)=>this.overrides?.endOfWeek?this.overrides.endOfWeek(s,r):qn(s,this.options),this.endOfYear=s=>this.overrides?.endOfYear?this.overrides.endOfYear(s):Lr(s),this.format=(s,r,l)=>{const c=this.overrides?.format?this.overrides.format(s,r,this.options):Ce(s,r,this.options);return this.options.numerals&&this.options.numerals!=="latn"?this.replaceDigits(c):c},this.getISOWeek=s=>this.overrides?.getISOWeek?this.overrides.getISOWeek(s):Vt(s),this.getMonth=(s,r)=>this.overrides?.getMonth?this.overrides.getMonth(s,this.options):Ha(s,this.options),this.getYear=(s,r)=>this.overrides?.getYear?this.overrides.getYear(s,this.options):La(s,this.options),this.getWeek=(s,r)=>this.overrides?.getWeek?this.overrides.getWeek(s,this.options):Ut(s,this.options),this.isAfter=(s,r)=>this.overrides?.isAfter?this.overrides.isAfter(s,r):qa(s,r),this.isBefore=(s,r)=>this.overrides?.isBefore?this.overrides.isBefore(s,r):Ja(s,r),this.isDate=s=>this.overrides?.isDate?this.overrides.isDate(s):Un(s),this.isSameDay=(s,r)=>this.overrides?.isSameDay?this.overrides.isSameDay(s,r):Kr(s,r),this.isSameMonth=(s,r)=>this.overrides?.isSameMonth?this.overrides.isSameMonth(s,r):Ga(s,r),this.isSameYear=(s,r)=>this.overrides?.isSameYear?this.overrides.isSameYear(s,r):Qa(s,r),this.max=s=>this.overrides?.max?this.overrides.max(s):Ir(s),this.min=s=>this.overrides?.min?this.overrides.min(s):Br(s),this.setMonth=(s,r)=>this.overrides?.setMonth?this.overrides.setMonth(s,r):Xa(s,r),this.setYear=(s,r)=>this.overrides?.setYear?this.overrides.setYear(s,r):Za(s,r),this.startOfBroadcastWeek=(s,r)=>this.overrides?.startOfBroadcastWeek?this.overrides.startOfBroadcastWeek(s,this):Xn(s,this),this.startOfDay=s=>this.overrides?.startOfDay?this.overrides.startOfDay(s):Ie(s),this.startOfISOWeek=s=>this.overrides?.startOfISOWeek?this.overrides.startOfISOWeek(s):st(s),this.startOfMonth=s=>this.overrides?.startOfMonth?this.overrides.startOfMonth(s):Hr(s),this.startOfWeek=(s,r)=>this.overrides?.startOfWeek?this.overrides.startOfWeek(s,this.options):Pe(s,this.options),this.startOfYear=s=>this.overrides?.startOfYear?this.overrides.startOfYear(s):Ln(s),this.options={locale:Zn,...t},this.overrides=n}getDigitMap(){const{numerals:t="latn"}=this.options,n=new Intl.NumberFormat("en-US",{numberingSystem:t}),s={};for(let r=0;r<10;r++)s[r.toString()]=n.format(r);return s}replaceDigits(t){const n=this.getDigitMap();return t.replace(/\d/g,s=>n[s]||s)}formatNumber(t){return this.replaceDigits(t.toString())}getMonthYearOrder(){const t=this.options.locale?.code;return t&&re.yearFirstLocales.has(t)?"year-first":"month-first"}formatMonthYear(t){const{locale:n,timeZone:s,numerals:r}=this.options,l=n?.code;if(l&&re.yearFirstLocales.has(l))try{return new Intl.DateTimeFormat(l,{month:"long",year:"numeric",timeZone:s,numberingSystem:r}).format(t)}catch{}const c=this.getMonthYearOrder()==="year-first"?"y LLLL":"LLLL y";return this.format(t,c)}}re.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"]);const xe=new re;class es{constructor(t,n,s=xe){this.date=t,this.displayMonth=n,this.outside=!!(n&&!s.isSameMonth(t,n)),this.dateLib=s,this.isoDate=s.format(t,"yyyy-MM-dd"),this.displayMonthId=s.format(n,"yyyy-MM"),this.dateMonthId=s.format(t,"yyyy-MM")}isEqualTo(t){return this.dateLib.isSameDay(t.date,this.date)&&this.dateLib.isSameMonth(t.displayMonth,this.displayMonth)}}class lo{constructor(t,n){this.date=t,this.weeks=n}}class io{constructor(t,n){this.days=n,this.weekNumber=t}}function co(e){return D.createElement("button",{...e})}function uo(e){return D.createElement("span",{...e})}function fo(e){const{size:t=24,orientation:n="left",className:s}=e;return D.createElement("svg",{className:s,width:t,height:t,viewBox:"0 0 24 24"},n==="up"&&D.createElement("polygon",{points:"6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28"}),n==="down"&&D.createElement("polygon",{points:"6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72"}),n==="left"&&D.createElement("polygon",{points:"16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20"}),n==="right"&&D.createElement("polygon",{points:"8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20"}))}function ho(e){const{day:t,modifiers:n,...s}=e;return D.createElement("td",{...s})}function mo(e){const{day:t,modifiers:n,...s}=e,r=D.useRef(null);return D.useEffect(()=>{n.focused&&r.current?.focus()},[n.focused]),D.createElement("button",{ref:r,...s})}var T;(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"})(T||(T={}));var L;(function(e){e.disabled="disabled",e.hidden="hidden",e.outside="outside",e.focused="focused",e.today="today"})(L||(L={}));var ce;(function(e){e.range_end="range_end",e.range_middle="range_middle",e.range_start="range_start",e.selected="selected"})(ce||(ce={}));var ne;(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"})(ne||(ne={}));function go(e){const{options:t,className:n,components:s,classNames:r,...l}=e,c=[r[T.Dropdown],n].join(" "),o=t?.find(({value:i})=>i===l.value);return D.createElement("span",{"data-disabled":l.disabled,className:r[T.DropdownRoot]},D.createElement(s.Select,{className:c,...l},t?.map(({value:i,label:d,disabled:u})=>D.createElement(s.Option,{key:i,value:i,disabled:u},d))),D.createElement("span",{className:r[T.CaptionLabel],"aria-hidden":!0},o?.label,D.createElement(s.Chevron,{orientation:"down",size:18,className:r[T.Chevron]})))}function po(e){return D.createElement("div",{...e})}function xo(e){return D.createElement("div",{...e})}function yo(e){const{calendarMonth:t,displayIndex:n,...s}=e;return D.createElement("div",{...s},e.children)}function bo(e){const{calendarMonth:t,displayIndex:n,...s}=e;return D.createElement("div",{...s})}function Co(e){return D.createElement("table",{...e})}function wo(e){return D.createElement("div",{...e})}const ts=g.createContext(void 0);function it(){const e=g.useContext(ts);if(e===void 0)throw new Error("useDayPicker() must be used within a custom component.");return e}function vo(e){const{components:t}=it();return D.createElement(t.Dropdown,{...e})}function So(e){const{onPreviousClick:t,onNextClick:n,previousMonth:s,nextMonth:r,...l}=e,{components:c,classNames:o,labels:{labelPrevious:i,labelNext:d}}=it(),u=g.useCallback(m=>{r&&n?.(m)},[r,n]),f=g.useCallback(m=>{s&&t?.(m)},[s,t]);return D.createElement("nav",{...l},D.createElement(c.PreviousMonthButton,{type:"button",className:o[T.PreviousMonthButton],tabIndex:s?void 0:-1,"aria-disabled":s?void 0:!0,"aria-label":i(s),onClick:f},D.createElement(c.Chevron,{disabled:s?void 0:!0,className:o[T.Chevron],orientation:"left"})),D.createElement(c.NextMonthButton,{type:"button",className:o[T.NextMonthButton],tabIndex:r?void 0:-1,"aria-disabled":r?void 0:!0,"aria-label":d(r),onClick:u},D.createElement(c.Chevron,{disabled:r?void 0:!0,orientation:"right",className:o[T.Chevron]})))}function ko(e){const{components:t}=it();return D.createElement(t.Button,{...e})}function jo(e){return D.createElement("option",{...e})}function No(e){const{components:t}=it();return D.createElement(t.Button,{...e})}function Do(e){const{rootRef:t,...n}=e;return D.createElement("div",{...n,ref:t})}function Eo(e){return D.createElement("select",{...e})}function Oo(e){const{week:t,...n}=e;return D.createElement("tr",{...n})}function Mo(e){return D.createElement("th",{...e})}function To(e){return D.createElement("thead",{"aria-hidden":!0},D.createElement("tr",{...e}))}function _o(e){const{week:t,...n}=e;return D.createElement("th",{...n})}function Ro(e){return D.createElement("th",{...e})}function Ao(e){return D.createElement("tbody",{...e})}function Wo(e){const{components:t}=it();return D.createElement(t.Dropdown,{...e})}const zo=Object.freeze(Object.defineProperty({__proto__:null,Button:co,CaptionLabel:uo,Chevron:fo,Day:ho,DayButton:mo,Dropdown:go,DropdownNav:po,Footer:xo,Month:yo,MonthCaption:bo,MonthGrid:Co,Months:wo,MonthsDropdown:vo,Nav:So,NextMonthButton:ko,Option:jo,PreviousMonthButton:No,Root:Do,Select:Eo,Week:Oo,WeekNumber:_o,WeekNumberHeader:Ro,Weekday:Mo,Weekdays:To,Weeks:Ao,YearsDropdown:Wo},Symbol.toStringTag,{value:"Module"}));function we(e,t,n=!1,s=xe){let{from:r,to:l}=e;const{differenceInCalendarDays:c,isSameDay:o}=s;return r&&l?(c(l,r)<0&&([r,l]=[l,r]),c(t,r)>=(n?1:0)&&c(l,t)>=(n?1:0)):!n&&l?o(l,t):!n&&r?o(r,t):!1}function $t(e){return!!(e&&typeof e=="object"&&"before"in e&&"after"in e)}function bt(e){return!!(e&&typeof e=="object"&&"from"in e)}function Ht(e){return!!(e&&typeof e=="object"&&"after"in e)}function Lt(e){return!!(e&&typeof e=="object"&&"before"in e)}function ns(e){return!!(e&&typeof e=="object"&&"dayOfWeek"in e)}function ss(e,t){return Array.isArray(e)&&e.every(t.isDate)}function ve(e,t,n=xe){const s=Array.isArray(t)?t:[t],{isSameDay:r,differenceInCalendarDays:l,isAfter:c}=n;return s.some(o=>{if(typeof o=="boolean")return o;if(n.isDate(o))return r(e,o);if(ss(o,n))return o.some(i=>r(e,i));if(bt(o))return we(o,e,!1,n);if(ns(o))return Array.isArray(o.dayOfWeek)?o.dayOfWeek.includes(e.getDay()):o.dayOfWeek===e.getDay();if($t(o)){const i=l(o.before,e),d=l(o.after,e),u=i>0,f=d<0;return c(o.before,o.after)?f&&u:u||f}return Ht(o)?l(e,o.after)>0:Lt(o)?l(o.before,e)>0:typeof o=="function"?o(e):!1})}function Fo(e,t,n,s,r){const{disabled:l,hidden:c,modifiers:o,showOutsideDays:i,broadcastCalendar:d,today:u=r.today()}=t,{isSameDay:f,isSameMonth:m,startOfMonth:x,isBefore:y,endOfMonth:k,isAfter:S}=r,v=n&&x(n),w=s&&k(s),p={[L.focused]:[],[L.outside]:[],[L.disabled]:[],[L.hidden]:[],[L.today]:[]},h={};for(const b of e){const{date:C,displayMonth:j}=b,E=!!(j&&!m(C,j)),N=!!(v&&y(C,v)),O=!!(w&&S(C,w)),_=!!(l&&ve(C,l,r)),q=!!(c&&ve(C,c,r))||N||O||!d&&!i&&E||d&&i===!1&&E,G=f(C,u);E&&p.outside.push(b),_&&p.disabled.push(b),q&&p.hidden.push(b),G&&p.today.push(b),o&&Object.keys(o).forEach(Y=>{const I=o?.[Y];I&&ve(C,I,r)&&(h[Y]?h[Y].push(b):h[Y]=[b])})}return b=>{const C={[L.focused]:!1,[L.disabled]:!1,[L.hidden]:!1,[L.outside]:!1,[L.today]:!1},j={};for(const E in p){const N=p[E];C[E]=N.some(O=>O===b)}for(const E in h)j[E]=h[E].some(N=>N===b);return{...C,...j}}}function Yo(e,t,n={}){return Object.entries(e).filter(([,r])=>r===!0).reduce((r,[l])=>(n[l]?r.push(n[l]):t[L[l]]?r.push(t[L[l]]):t[ce[l]]&&r.push(t[ce[l]]),r),[t[T.Day]])}function Po(e){return{...zo,...e}}function Io(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,s])=>{n.startsWith("data-")&&(t[n]=s)}),t}function qt(){const e={};for(const t in T)e[T[t]]=`rdp-${T[t]}`;for(const t in L)e[L[t]]=`rdp-${L[t]}`;for(const t in ce)e[ce[t]]=`rdp-${ce[t]}`;for(const t in ne)e[ne[t]]=`rdp-${ne[t]}`;return e}function rs(e,t,n){return(n??new re(t)).formatMonthYear(e)}const Bo=rs;function Ko(e,t,n){return(n??new re(t)).format(e,"d")}function Vo(e,t=xe){return t.format(e,"LLLL")}function Uo(e,t,n){return(n??new re(t)).format(e,"cccccc")}function $o(e,t=xe){return e<10?t.formatNumber(`0${e.toLocaleString()}`):t.formatNumber(`${e.toLocaleString()}`)}function Ho(){return""}function as(e,t=xe){return t.format(e,"yyyy")}const Lo=as,qo=Object.freeze(Object.defineProperty({__proto__:null,formatCaption:rs,formatDay:Ko,formatMonthCaption:Bo,formatMonthDropdown:Vo,formatWeekNumber:$o,formatWeekNumberHeader:Ho,formatWeekdayName:Uo,formatYearCaption:Lo,formatYearDropdown:as},Symbol.toStringTag,{value:"Module"}));function Jo(e){return e?.formatMonthCaption&&!e.formatCaption&&(e.formatCaption=e.formatMonthCaption),e?.formatYearCaption&&!e.formatYearDropdown&&(e.formatYearDropdown=e.formatYearCaption),{...qo,...e}}function Jt(e,t,n,s){let r=(s??new re(n)).format(e,"PPPP");return t.today&&(r=`Today, ${r}`),t.selected&&(r=`${r}, selected`),r}const Go=Jt;function Gt(e,t,n){return(n??new re(t)).formatMonthYear(e)}const Qo=Gt;function os(e,t,n,s){let r=(s??new re(n)).format(e,"PPPP");return t?.today&&(r=`Today, ${r}`),r}function ls(e){return"Choose the Month"}function is(){return""}const Xo="Go to the Next Month";function cs(e,t){return Xo}function ds(e){return"Go to the Previous Month"}function us(e,t,n){return(n??new re(t)).format(e,"cccc")}function fs(e,t){return`Week ${e}`}function hs(e){return"Week Number"}function ms(e){return"Choose the Year"}const Zo=Object.freeze(Object.defineProperty({__proto__:null,labelCaption:Qo,labelDay:Go,labelDayButton:Jt,labelGrid:Gt,labelGridcell:os,labelMonthDropdown:ls,labelNav:is,labelNext:cs,labelPrevious:ds,labelWeekNumber:fs,labelWeekNumberHeader:hs,labelWeekday:us,labelYearDropdown:ms},Symbol.toStringTag,{value:"Module"})),ie=(e,t,n)=>t||(n?typeof n=="function"?n:(...s)=>n:e);function el(e,t){const n=t.locale?.labels??{};return{...Zo,...e??{},labelDayButton:ie(Jt,e?.labelDayButton,n.labelDayButton),labelMonthDropdown:ie(ls,e?.labelMonthDropdown,n.labelMonthDropdown),labelNext:ie(cs,e?.labelNext,n.labelNext),labelPrevious:ie(ds,e?.labelPrevious,n.labelPrevious),labelWeekNumber:ie(fs,e?.labelWeekNumber,n.labelWeekNumber),labelYearDropdown:ie(ms,e?.labelYearDropdown,n.labelYearDropdown),labelGrid:ie(Gt,e?.labelGrid,n.labelGrid),labelGridcell:ie(os,e?.labelGridcell,n.labelGridcell),labelNav:ie(is,e?.labelNav,n.labelNav),labelWeekNumberHeader:ie(hs,e?.labelWeekNumberHeader,n.labelWeekNumberHeader),labelWeekday:ie(us,e?.labelWeekday,n.labelWeekday)}}function tl(e,t,n,s,r){const{startOfMonth:l,startOfYear:c,endOfYear:o,eachMonthOfInterval:i,getMonth:d}=r;return i({start:c(e),end:o(e)}).map(m=>{const x=s.formatMonthDropdown(m,r),y=d(m),k=t&&m<l(t)||n&&m>l(n)||!1;return{value:y,label:x,disabled:k}})}function nl(e,t={},n={}){let s={...t?.[T.Day]};return Object.entries(e).filter(([,r])=>r===!0).forEach(([r])=>{s={...s,...n?.[r]}}),s}function sl(e,t,n,s){const r=s??e.today(),l=n?e.startOfBroadcastWeek(r,e):t?e.startOfISOWeek(r):e.startOfWeek(r),c=[];for(let o=0;o<7;o++){const i=e.addDays(l,o);c.push(i)}return c}function rl(e,t,n,s,r=!1){if(!e||!t)return;const{startOfYear:l,endOfYear:c,eachYearOfInterval:o,getYear:i}=s,d=l(e),u=c(t),f=o({start:d,end:u});return r&&f.reverse(),f.map(m=>{const x=n.formatYearDropdown(m,s);return{value:i(m),label:x,disabled:!1}})}function al(e,t={}){const{weekStartsOn:n,locale:s}=t,r=n??s?.options?.weekStartsOn??0,l=o=>{const i=typeof o=="number"||typeof o=="string"?new Date(o):o;return new X(i.getFullYear(),i.getMonth(),i.getDate(),12,0,0,e)},c=o=>{const i=l(o);return new Date(i.getFullYear(),i.getMonth(),i.getDate(),0,0,0,0)};return{today:()=>l(X.tz(e)),newDate:(o,i,d)=>new X(o,i,d,12,0,0,e),startOfDay:o=>l(o),startOfWeek:(o,i)=>{const d=l(o),u=i?.weekStartsOn??r,f=(d.getDay()-u+7)%7;return d.setDate(d.getDate()-f),d},startOfISOWeek:o=>{const i=l(o),d=(i.getDay()-1+7)%7;return i.setDate(i.getDate()-d),i},startOfMonth:o=>{const i=l(o);return i.setDate(1),i},startOfYear:o=>{const i=l(o);return i.setMonth(0,1),i},endOfWeek:(o,i)=>{const d=l(o),m=(((i?.weekStartsOn??r)+6)%7-d.getDay()+7)%7;return d.setDate(d.getDate()+m),d},endOfISOWeek:o=>{const i=l(o),d=(7-i.getDay())%7;return i.setDate(i.getDate()+d),i},endOfMonth:o=>{const i=l(o);return i.setMonth(i.getMonth()+1,0),i},endOfYear:o=>{const i=l(o);return i.setMonth(11,31),i},eachMonthOfInterval:o=>{const i=l(o.start),d=l(o.end),u=[],f=new X(i.getFullYear(),i.getMonth(),1,12,0,0,e),m=d.getFullYear()*12+d.getMonth();for(;f.getFullYear()*12+f.getMonth()<=m;)u.push(new X(f,e)),f.setMonth(f.getMonth()+1,1);return u},addDays:(o,i)=>{const d=l(o);return d.setDate(d.getDate()+i),d},addWeeks:(o,i)=>{const d=l(o);return d.setDate(d.getDate()+i*7),d},addMonths:(o,i)=>{const d=l(o);return d.setMonth(d.getMonth()+i),d},addYears:(o,i)=>{const d=l(o);return d.setFullYear(d.getFullYear()+i),d},eachYearOfInterval:o=>{const i=l(o.start),d=l(o.end),u=[],f=new X(i.getFullYear(),0,1,12,0,0,e);for(;f.getFullYear()<=d.getFullYear();)u.push(new X(f,e)),f.setFullYear(f.getFullYear()+1,0,1);return u},getWeek:(o,i)=>{const d=c(o);return Ut(d,{weekStartsOn:i?.weekStartsOn??r,firstWeekContainsDate:i?.firstWeekContainsDate??s?.options?.firstWeekContainsDate??1})},getISOWeek:o=>{const i=c(o);return Vt(i)},differenceInCalendarDays:(o,i)=>{const d=c(o),u=c(i);return Kt(d,u)},differenceInCalendarMonths:(o,i)=>{const d=c(o),u=c(i);return $n(d,u)}}}const ct=e=>e instanceof HTMLElement?e:null,Rt=e=>[...e.querySelectorAll("[data-animated-month]")??[]],ol=e=>ct(e.querySelector("[data-animated-month]")),At=e=>ct(e.querySelector("[data-animated-caption]")),Wt=e=>ct(e.querySelector("[data-animated-weeks]")),ll=e=>ct(e.querySelector("[data-animated-nav]")),il=e=>ct(e.querySelector("[data-animated-weekdays]"));function cl(e,t,{classNames:n,months:s,focused:r,dateLib:l}){const c=g.useRef(null),o=g.useRef(s),i=g.useRef(!1);g.useLayoutEffect(()=>{const d=o.current;if(o.current=s,!t||!e.current||!(e.current instanceof HTMLElement)||s.length===0||d.length===0||s.length!==d.length)return;const u=l.isSameMonth(s[0].date,d[0].date),f=l.isAfter(s[0].date,d[0].date),m=f?n[ne.caption_after_enter]:n[ne.caption_before_enter],x=f?n[ne.weeks_after_enter]:n[ne.weeks_before_enter],y=c.current,k=e.current.cloneNode(!0);if(k instanceof HTMLElement?(Rt(k).forEach(p=>{if(!(p instanceof HTMLElement))return;const h=ol(p);h&&p.contains(h)&&p.removeChild(h);const b=At(p);b&&b.classList.remove(m);const C=Wt(p);C&&C.classList.remove(x)}),c.current=k):c.current=null,i.current||u||r)return;const S=y instanceof HTMLElement?Rt(y):[],v=Rt(e.current);if(v?.every(w=>w instanceof HTMLElement)&&S&&S.every(w=>w instanceof HTMLElement)){i.current=!0,e.current.style.isolation="isolate";const w=ll(e.current);w&&(w.style.zIndex="1"),v.forEach((p,h)=>{const b=S[h];if(!b)return;p.style.position="relative",p.style.overflow="hidden";const C=At(p);C&&C.classList.add(m);const j=Wt(p);j&&j.classList.add(x);const E=()=>{i.current=!1,e.current&&(e.current.style.isolation=""),w&&(w.style.zIndex=""),C&&C.classList.remove(m),j&&j.classList.remove(x),p.style.position="",p.style.overflow="",p.contains(b)&&p.removeChild(b)};b.style.pointerEvents="none",b.style.position="absolute",b.style.overflow="hidden",b.setAttribute("aria-hidden","true");const N=il(b);N&&(N.style.opacity="0");const O=At(b);O&&(O.classList.add(f?n[ne.caption_before_exit]:n[ne.caption_after_exit]),O.addEventListener("animationend",E));const _=Wt(b);_&&_.classList.add(f?n[ne.weeks_before_exit]:n[ne.weeks_after_exit]),p.insertBefore(b,p.firstChild)})}})}function dl(e,t,n,s){const r=e[0],l=e[e.length-1],{ISOWeek:c,fixedWeeks:o,broadcastCalendar:i}=n??{},{addDays:d,differenceInCalendarDays:u,differenceInCalendarMonths:f,endOfBroadcastWeek:m,endOfISOWeek:x,endOfMonth:y,endOfWeek:k,isAfter:S,startOfBroadcastWeek:v,startOfISOWeek:w,startOfWeek:p}=s,h=i?v(r,s):c?w(r):p(r),b=i?m(l):c?x(y(l)):k(y(l)),C=t&&(i?m(t):c?x(t):k(t)),j=C&&S(b,C)?C:b,E=u(j,h),N=f(l,r)+1,O=[];for(let G=0;G<=E;G++){const Y=d(h,G);O.push(Y)}const q=(i?35:42)*N;if(o&&O.length<q){const G=q-O.length;for(let Y=0;Y<G;Y++){const I=d(O[O.length-1],1);O.push(I)}}return O}function ul(e){const t=[];return e.reduce((n,s)=>{const r=s.weeks.reduce((l,c)=>l.concat(c.days.slice()),t.slice());return n.concat(r.slice())},t.slice())}function fl(e,t,n,s){const{numberOfMonths:r=1}=n,l=[];for(let c=0;c<r;c++){const o=s.addMonths(e,c);if(t&&o>t)break;l.push(o)}return l}function gn(e,t,n,s){const{month:r,defaultMonth:l,today:c=s.today(),numberOfMonths:o=1}=e;let i=r||l||c;const{differenceInCalendarMonths:d,addMonths:u,startOfMonth:f}=s;if(n&&d(n,i)<o-1){const m=-1*(o-1);i=u(n,m)}return t&&d(i,t)<0&&(i=t),f(i)}function hl(e,t,n,s){const{addDays:r,endOfBroadcastWeek:l,endOfISOWeek:c,endOfMonth:o,endOfWeek:i,getISOWeek:d,getWeek:u,startOfBroadcastWeek:f,startOfISOWeek:m,startOfWeek:x}=s,y=e.reduce((k,S)=>{const v=n.broadcastCalendar?f(S,s):n.ISOWeek?m(S):x(S),w=n.broadcastCalendar?l(S):n.ISOWeek?c(o(S)):i(o(S)),p=t.filter(j=>j>=v&&j<=w),h=n.broadcastCalendar?35:42;if(n.fixedWeeks&&p.length<h){const j=t.filter(E=>{const N=h-p.length;return E>w&&E<=r(w,N)});p.push(...j)}const b=p.reduce((j,E)=>{const N=n.ISOWeek?d(E):u(E),O=j.find(q=>q.weekNumber===N),_=new es(E,S,s);return O?O.days.push(_):j.push(new io(N,[_])),j},[]),C=new lo(S,b);return k.push(C),k},[]);return n.reverseMonths?y.reverse():y}function ml(e,t){let{startMonth:n,endMonth:s}=e;const{startOfYear:r,startOfDay:l,startOfMonth:c,endOfMonth:o,addYears:i,endOfYear:d,newDate:u,today:f}=t,{fromYear:m,toYear:x,fromMonth:y,toMonth:k}=e;!n&&y&&(n=y),!n&&m&&(n=t.newDate(m,0,1)),!s&&k&&(s=k),!s&&x&&(s=u(x,11,31));const S=e.captionLayout==="dropdown"||e.captionLayout==="dropdown-years";return n?n=c(n):m?n=u(m,0,1):!n&&S&&(n=r(i(e.today??f(),-100))),s?s=o(s):x?s=u(x,11,31):!s&&S&&(s=d(e.today??f())),[n&&l(n),s&&l(s)]}function gl(e,t,n,s){if(n.disableNavigation)return;const{pagedNavigation:r,numberOfMonths:l=1}=n,{startOfMonth:c,addMonths:o,differenceInCalendarMonths:i}=s,d=r?l:1,u=c(e);if(!t)return o(u,d);if(!(i(t,e)<l))return o(u,d)}function pl(e,t,n,s){if(n.disableNavigation)return;const{pagedNavigation:r,numberOfMonths:l}=n,{startOfMonth:c,addMonths:o,differenceInCalendarMonths:i}=s,d=r?l??1:1,u=c(e);if(!t)return o(u,-d);if(!(i(u,t)<=0))return o(u,-d)}function xl(e){const t=[];return e.reduce((n,s)=>n.concat(s.weeks.slice()),t.slice())}function Ct(e,t){const[n,s]=g.useState(e);return[t===void 0?n:t,s]}function yl(e,t){const[n,s]=ml(e,t),{startOfMonth:r,endOfMonth:l}=t,c=gn(e,n,s,t),[o,i]=Ct(c,e.month?c:void 0);g.useEffect(()=>{const h=gn(e,n,s,t);i(h)},[e.timeZone]);const{months:d,weeks:u,days:f,previousMonth:m,nextMonth:x}=g.useMemo(()=>{const h=fl(o,s,{numberOfMonths:e.numberOfMonths},t),b=dl(h,e.endMonth?l(e.endMonth):void 0,{ISOWeek:e.ISOWeek,fixedWeeks:e.fixedWeeks,broadcastCalendar:e.broadcastCalendar},t),C=hl(h,b,{broadcastCalendar:e.broadcastCalendar,fixedWeeks:e.fixedWeeks,ISOWeek:e.ISOWeek,reverseMonths:e.reverseMonths},t),j=xl(C),E=ul(C),N=pl(o,n,e,t),O=gl(o,s,e,t);return{months:C,weeks:j,days:E,previousMonth:N,nextMonth:O}},[t,o.getTime(),s?.getTime(),n?.getTime(),e.disableNavigation,e.broadcastCalendar,e.endMonth?.getTime(),e.fixedWeeks,e.ISOWeek,e.numberOfMonths,e.pagedNavigation,e.reverseMonths]),{disableNavigation:y,onMonthChange:k}=e,S=h=>u.some(b=>b.days.some(C=>C.isEqualTo(h))),v=h=>{if(y)return;let b=r(h);n&&b<r(n)&&(b=r(n)),s&&b>r(s)&&(b=r(s)),i(b),k?.(b)};return{months:d,weeks:u,days:f,navStart:n,navEnd:s,previousMonth:m,nextMonth:x,goToMonth:v,goToDay:h=>{S(h)||v(h.date)}}}var ge;(function(e){e[e.Today=0]="Today",e[e.Selected=1]="Selected",e[e.LastFocused=2]="LastFocused",e[e.FocusedModifier=3]="FocusedModifier"})(ge||(ge={}));function pn(e){return!e[L.disabled]&&!e[L.hidden]&&!e[L.outside]}function bl(e,t,n,s){let r,l=-1;for(const c of e){const o=t(c);pn(o)&&(o[L.focused]&&l<ge.FocusedModifier?(r=c,l=ge.FocusedModifier):s?.isEqualTo(c)&&l<ge.LastFocused?(r=c,l=ge.LastFocused):n(c.date)&&l<ge.Selected?(r=c,l=ge.Selected):o[L.today]&&l<ge.Today&&(r=c,l=ge.Today))}return r||(r=e.find(c=>pn(t(c)))),r}function Cl(e,t,n,s,r,l,c){const{ISOWeek:o,broadcastCalendar:i}=l,{addDays:d,addMonths:u,addWeeks:f,addYears:m,endOfBroadcastWeek:x,endOfISOWeek:y,endOfWeek:k,max:S,min:v,startOfBroadcastWeek:w,startOfISOWeek:p,startOfWeek:h}=c;let C={day:d,week:f,month:u,year:m,startOfWeek:j=>i?w(j,c):o?p(j):h(j),endOfWeek:j=>i?x(j):o?y(j):k(j)}[e](n,t==="after"?1:-1);return t==="before"&&s?C=S([s,C]):t==="after"&&r&&(C=v([r,C])),C}function gs(e,t,n,s,r,l,c,o=0){if(o>365)return;const i=Cl(e,t,n.date,s,r,l,c),d=!!(l.disabled&&ve(i,l.disabled,c)),u=!!(l.hidden&&ve(i,l.hidden,c)),f=i,m=new es(i,f,c);return!d&&!u?m:gs(e,t,m,s,r,l,c,o+1)}function wl(e,t,n,s,r){const{autoFocus:l}=e,[c,o]=g.useState(),i=bl(t.days,n,s||(()=>!1),c),[d,u]=g.useState(l?i:void 0);return{isFocusTarget:k=>!!i?.isEqualTo(k),setFocused:u,focused:d,blur:()=>{o(d),u(void 0)},moveFocus:(k,S)=>{if(!d)return;const v=gs(k,S,d,t.navStart,t.navEnd,e,r);v&&(e.disableNavigation&&!t.days.some(p=>p.isEqualTo(v))||(t.goToDay(v),u(v)))}}}function vl(e,t){const{selected:n,required:s,onSelect:r}=e,[l,c]=Ct(n,r?n:void 0),o=r?n:l,{isSameDay:i}=t,d=x=>o?.some(y=>i(y,x))??!1,{min:u,max:f}=e;return{selected:o,select:(x,y,k)=>{let S=[...o??[]];if(d(x)){if(o?.length===u||s&&o?.length===1)return;S=o?.filter(v=>!i(v,x))}else o?.length===f?S=[x]:S=[...S,x];return r||c(S),r?.(S,x,y,k),S},isSelected:d}}function Sl(e,t,n=0,s=0,r=!1,l=xe){const{from:c,to:o}=t||{},{isSameDay:i,isAfter:d,isBefore:u}=l;let f;if(!c&&!o)f={from:e,to:n>0?void 0:e};else if(c&&!o)i(c,e)?n===0?f={from:c,to:e}:r?f={from:c,to:void 0}:f=void 0:u(e,c)?f={from:e,to:c}:f={from:c,to:e};else if(c&&o)if(i(c,e)&&i(o,e))r?f={from:c,to:o}:f=void 0;else if(i(c,e))f={from:c,to:n>0?void 0:e};else if(i(o,e))f={from:e,to:n>0?void 0:e};else if(u(e,c))f={from:e,to:o};else if(d(e,c))f={from:c,to:e};else if(d(e,o))f={from:c,to:e};else throw new Error("Invalid range");if(f?.from&&f?.to){const m=l.differenceInCalendarDays(f.to,f.from);s>0&&m>s?f={from:e,to:void 0}:n>1&&m<n&&(f={from:e,to:void 0})}return f}function kl(e,t,n=xe){const s=Array.isArray(t)?t:[t];let r=e.from;const l=n.differenceInCalendarDays(e.to,e.from),c=Math.min(l,6);for(let o=0;o<=c;o++){if(s.includes(r.getDay()))return!0;r=n.addDays(r,1)}return!1}function xn(e,t,n=xe){return we(e,t.from,!1,n)||we(e,t.to,!1,n)||we(t,e.from,!1,n)||we(t,e.to,!1,n)}function jl(e,t,n=xe){const s=Array.isArray(t)?t:[t];if(s.filter(o=>typeof o!="function").some(o=>typeof o=="boolean"?o:n.isDate(o)?we(e,o,!1,n):ss(o,n)?o.some(i=>we(e,i,!1,n)):bt(o)?o.from&&o.to?xn(e,{from:o.from,to:o.to},n):!1:ns(o)?kl(e,o.dayOfWeek,n):$t(o)?n.isAfter(o.before,o.after)?xn(e,{from:n.addDays(o.after,1),to:n.addDays(o.before,-1)},n):ve(e.from,o,n)||ve(e.to,o,n):Ht(o)||Lt(o)?ve(e.from,o,n)||ve(e.to,o,n):!1))return!0;const c=s.filter(o=>typeof o=="function");if(c.length){let o=e.from;const i=n.differenceInCalendarDays(e.to,e.from);for(let d=0;d<=i;d++){if(c.some(u=>u(o)))return!0;o=n.addDays(o,1)}}return!1}function Nl(e,t){const{disabled:n,excludeDisabled:s,selected:r,required:l,onSelect:c}=e,[o,i]=Ct(r,c?r:void 0),d=c?r:o;return{selected:d,select:(m,x,y)=>{const{min:k,max:S}=e,v=m?Sl(m,d,k,S,l,t):void 0;return s&&n&&v?.from&&v.to&&jl({from:v.from,to:v.to},n,t)&&(v.from=m,v.to=void 0),c||i(v),c?.(v,m,x,y),v},isSelected:m=>d&&we(d,m,!1,t)}}function Dl(e,t){const{selected:n,required:s,onSelect:r}=e,[l,c]=Ct(n,r?n:void 0),o=r?n:l,{isSameDay:i}=t;return{selected:o,select:(f,m,x)=>{let y=f;return!s&&o&&o&&i(f,o)&&(y=void 0),r||c(y),r?.(y,f,m,x),y},isSelected:f=>o?i(o,f):!1}}function El(e,t){const n=Dl(e,t),s=vl(e,t),r=Nl(e,t);switch(e.mode){case"single":return n;case"multiple":return s;case"range":return r;default:return}}function oe(e,t){return e instanceof X&&e.timeZone===t?e:new X(e,t)}function We(e,t,n){return oe(e,t)}function yn(e,t,n){return typeof e=="boolean"||typeof e=="function"?e:e instanceof Date?We(e,t):Array.isArray(e)?e.map(s=>s instanceof Date?We(s,t):s):bt(e)?{...e,from:e.from?oe(e.from,t):e.from,to:e.to?oe(e.to,t):e.to}:$t(e)?{before:We(e.before,t),after:We(e.after,t)}:Ht(e)?{after:We(e.after,t)}:Lt(e)?{before:We(e.before,t)}:e}function zt(e,t,n){return e&&(Array.isArray(e)?e.map(s=>yn(s,t)):yn(e,t))}function Ol(e){let t=e;const n=t.timeZone;if(n&&(t={...e,timeZone:n},t.today&&(t.today=oe(t.today,n)),t.month&&(t.month=oe(t.month,n)),t.defaultMonth&&(t.defaultMonth=oe(t.defaultMonth,n)),t.startMonth&&(t.startMonth=oe(t.startMonth,n)),t.endMonth&&(t.endMonth=oe(t.endMonth,n)),t.mode==="single"&&t.selected?t.selected=oe(t.selected,n):t.mode==="multiple"&&t.selected?t.selected=t.selected?.map(F=>oe(F,n)):t.mode==="range"&&t.selected&&(t.selected={from:t.selected.from?oe(t.selected.from,n):t.selected.from,to:t.selected.to?oe(t.selected.to,n):t.selected.to}),t.disabled!==void 0&&(t.disabled=zt(t.disabled,n)),t.hidden!==void 0&&(t.hidden=zt(t.hidden,n)),t.modifiers)){const F={};Object.keys(t.modifiers).forEach(U=>{F[U]=zt(t.modifiers?.[U],n)}),t.modifiers=F}const{components:s,formatters:r,labels:l,dateLib:c,locale:o,classNames:i}=g.useMemo(()=>{const F={...Zn,...t.locale},U=t.broadcastCalendar?1:t.weekStartsOn,z=t.noonSafe&&t.timeZone?al(t.timeZone,{weekStartsOn:U,locale:F}):void 0,V=t.dateLib&&z?{...z,...t.dateLib}:t.dateLib??z,te=new re({locale:F,weekStartsOn:U,firstWeekContainsDate:t.firstWeekContainsDate,useAdditionalWeekYearTokens:t.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:t.useAdditionalDayOfYearTokens,timeZone:t.timeZone,numerals:t.numerals},V);return{dateLib:te,components:Po(t.components),formatters:Jo(t.formatters),labels:el(t.labels,te.options),locale:F,classNames:{...qt(),...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:c.today()});const{captionLayout:d,mode:u,navLayout:f,numberOfMonths:m=1,onDayBlur:x,onDayClick:y,onDayFocus:k,onDayKeyDown:S,onDayMouseEnter:v,onDayMouseLeave:w,onNextClick:p,onPrevClick:h,showWeekNumber:b,styles:C}=t,{formatCaption:j,formatDay:E,formatMonthDropdown:N,formatWeekNumber:O,formatWeekNumberHeader:_,formatWeekdayName:q,formatYearDropdown:G}=r,Y=yl(t,c),{days:I,months:A,navStart:Q,navEnd:qe,previousMonth:Z,nextMonth:ee,goToMonth:be}=Y,kt=Fo(I,t,Q,qe,c),{isSelected:jt,select:Nt,selected:dt}=El(t,c)??{},{blur:Xt,focused:Zt,isFocusTarget:vs,moveFocus:en,setFocused:ut}=wl(t,Y,kt,jt??(()=>!1),c),{labelDayButton:Ss,labelGridcell:ks,labelGrid:js,labelMonthDropdown:Ns,labelNav:tn,labelPrevious:Ds,labelNext:Es,labelWeekday:Os,labelWeekNumber:Ms,labelWeekNumberHeader:Ts,labelYearDropdown:_s}=l,Rs=g.useMemo(()=>sl(c,t.ISOWeek,t.broadcastCalendar,t.today),[c,t.ISOWeek,t.broadcastCalendar,t.today]),nn=u!==void 0||y!==void 0,Dt=g.useCallback(()=>{Z&&(be(Z),h?.(Z))},[Z,be,h]),Et=g.useCallback(()=>{ee&&(be(ee),p?.(ee))},[be,ee,p]),As=g.useCallback((F,U)=>z=>{z.preventDefault(),z.stopPropagation(),ut(F),!U.disabled&&(Nt?.(F.date,U,z),y?.(F.date,U,z))},[Nt,y,ut]),Ws=g.useCallback((F,U)=>z=>{ut(F),k?.(F.date,U,z)},[k,ut]),zs=g.useCallback((F,U)=>z=>{Xt(),x?.(F.date,U,z)},[Xt,x]),Fs=g.useCallback((F,U)=>z=>{const V={ArrowLeft:[z.shiftKey?"month":"day",t.dir==="rtl"?"after":"before"],ArrowRight:[z.shiftKey?"month":"day",t.dir==="rtl"?"before":"after"],ArrowDown:[z.shiftKey?"year":"week","after"],ArrowUp:[z.shiftKey?"year":"week","before"],PageUp:[z.shiftKey?"year":"month","before"],PageDown:[z.shiftKey?"year":"month","after"],Home:["startOfWeek","before"],End:["endOfWeek","after"]};if(V[z.key]){z.preventDefault(),z.stopPropagation();const[te,K]=V[z.key];en(te,K)}S?.(F.date,U,z)},[en,S,t.dir]),Ys=g.useCallback((F,U)=>z=>{v?.(F.date,U,z)},[v]),Ps=g.useCallback((F,U)=>z=>{w?.(F.date,U,z)},[w]),Is=g.useCallback(F=>U=>{const z=Number(U.target.value),V=c.setMonth(c.startOfMonth(F),z);be(V)},[c,be]),Bs=g.useCallback(F=>U=>{const z=Number(U.target.value),V=c.setYear(c.startOfMonth(F),z);be(V)},[c,be]),{className:Ks,style:Vs}=g.useMemo(()=>({className:[i[T.Root],t.className].filter(Boolean).join(" "),style:{...C?.[T.Root],...t.style}}),[i,t.className,t.style,C]),Us=Io(t),sn=g.useRef(null);cl(sn,!!t.animate,{classNames:i,months:A,focused:Zt,dateLib:c});const $s={dayPickerProps:t,selected:dt,select:Nt,isSelected:jt,months:A,nextMonth:ee,previousMonth:Z,goToMonth:be,getModifiers:kt,components:s,classNames:i,styles:C,labels:l,formatters:r};return D.createElement(ts.Provider,{value:$s},D.createElement(s.Root,{rootRef:t.animate?sn:void 0,className:Ks,style:Vs,dir:t.dir,id:t.id,lang:t.lang,nonce:t.nonce,title:t.title,role:t.role,"aria-label":t["aria-label"],"aria-labelledby":t["aria-labelledby"],...Us},D.createElement(s.Months,{className:i[T.Months],style:C?.[T.Months]},!t.hideNavigation&&!f&&D.createElement(s.Nav,{"data-animated-nav":t.animate?"true":void 0,className:i[T.Nav],style:C?.[T.Nav],"aria-label":tn(),onPreviousClick:Dt,onNextClick:Et,previousMonth:Z,nextMonth:ee}),A.map((F,U)=>D.createElement(s.Month,{"data-animated-month":t.animate?"true":void 0,className:i[T.Month],style:C?.[T.Month],key:U,displayIndex:U,calendarMonth:F},f==="around"&&!t.hideNavigation&&U===0&&D.createElement(s.PreviousMonthButton,{type:"button",className:i[T.PreviousMonthButton],tabIndex:Z?void 0:-1,"aria-disabled":Z?void 0:!0,"aria-label":Ds(Z),onClick:Dt,"data-animated-button":t.animate?"true":void 0},D.createElement(s.Chevron,{disabled:Z?void 0:!0,className:i[T.Chevron],orientation:t.dir==="rtl"?"right":"left"})),D.createElement(s.MonthCaption,{"data-animated-caption":t.animate?"true":void 0,className:i[T.MonthCaption],style:C?.[T.MonthCaption],calendarMonth:F,displayIndex:U},d?.startsWith("dropdown")?D.createElement(s.DropdownNav,{className:i[T.Dropdowns],style:C?.[T.Dropdowns]},(()=>{const z=d==="dropdown"||d==="dropdown-months"?D.createElement(s.MonthsDropdown,{key:"month",className:i[T.MonthsDropdown],"aria-label":Ns(),classNames:i,components:s,disabled:!!t.disableNavigation,onChange:Is(F.date),options:tl(F.date,Q,qe,r,c),style:C?.[T.Dropdown],value:c.getMonth(F.date)}):D.createElement("span",{key:"month"},N(F.date,c)),V=d==="dropdown"||d==="dropdown-years"?D.createElement(s.YearsDropdown,{key:"year",className:i[T.YearsDropdown],"aria-label":_s(c.options),classNames:i,components:s,disabled:!!t.disableNavigation,onChange:Bs(F.date),options:rl(Q,qe,r,c,!!t.reverseYears),style:C?.[T.Dropdown],value:c.getYear(F.date)}):D.createElement("span",{key:"year"},G(F.date,c));return c.getMonthYearOrder()==="year-first"?[V,z]:[z,V]})(),D.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"}},j(F.date,c.options,c))):D.createElement(s.CaptionLabel,{className:i[T.CaptionLabel],role:"status","aria-live":"polite"},j(F.date,c.options,c))),f==="around"&&!t.hideNavigation&&U===m-1&&D.createElement(s.NextMonthButton,{type:"button",className:i[T.NextMonthButton],tabIndex:ee?void 0:-1,"aria-disabled":ee?void 0:!0,"aria-label":Es(ee),onClick:Et,"data-animated-button":t.animate?"true":void 0},D.createElement(s.Chevron,{disabled:ee?void 0:!0,className:i[T.Chevron],orientation:t.dir==="rtl"?"left":"right"})),U===m-1&&f==="after"&&!t.hideNavigation&&D.createElement(s.Nav,{"data-animated-nav":t.animate?"true":void 0,className:i[T.Nav],style:C?.[T.Nav],"aria-label":tn(),onPreviousClick:Dt,onNextClick:Et,previousMonth:Z,nextMonth:ee}),D.createElement(s.MonthGrid,{role:"grid","aria-multiselectable":u==="multiple"||u==="range","aria-label":js(F.date,c.options,c)||void 0,className:i[T.MonthGrid],style:C?.[T.MonthGrid]},!t.hideWeekdays&&D.createElement(s.Weekdays,{"data-animated-weekdays":t.animate?"true":void 0,className:i[T.Weekdays],style:C?.[T.Weekdays]},b&&D.createElement(s.WeekNumberHeader,{"aria-label":Ts(c.options),className:i[T.WeekNumberHeader],style:C?.[T.WeekNumberHeader],scope:"col"},_()),Rs.map(z=>D.createElement(s.Weekday,{"aria-label":Os(z,c.options,c),className:i[T.Weekday],key:String(z),style:C?.[T.Weekday],scope:"col"},q(z,c.options,c)))),D.createElement(s.Weeks,{"data-animated-weeks":t.animate?"true":void 0,className:i[T.Weeks],style:C?.[T.Weeks]},F.weeks.map(z=>D.createElement(s.Week,{className:i[T.Week],key:z.weekNumber,style:C?.[T.Week],week:z},b&&D.createElement(s.WeekNumber,{week:z,style:C?.[T.WeekNumber],"aria-label":Ms(z.weekNumber,{locale:o}),className:i[T.WeekNumber],scope:"row",role:"rowheader"},O(z.weekNumber,c)),z.days.map(V=>{const{date:te}=V,K=kt(V);if(K[L.focused]=!K.hidden&&!!Zt?.isEqualTo(V),K[ce.selected]=jt?.(te)||K.selected,bt(dt)){const{from:Ot,to:Mt}=dt;K[ce.range_start]=!!(Ot&&Mt&&c.isSameDay(te,Ot)),K[ce.range_end]=!!(Ot&&Mt&&c.isSameDay(te,Mt)),K[ce.range_middle]=we(dt,te,!0,c)}const Hs=nl(K,C,t.modifiersStyles),Ls=Yo(K,i,t.modifiersClassNames),qs=!nn&&!K.hidden?ks(te,K,c.options,c):void 0;return D.createElement(s.Day,{key:`${V.isoDate}_${V.displayMonthId}`,day:V,modifiers:K,className:Ls.join(" "),style:Hs,role:"gridcell","aria-selected":K.selected||void 0,"aria-label":qs,"data-day":V.isoDate,"data-month":V.outside?V.dateMonthId:void 0,"data-selected":K.selected||void 0,"data-disabled":K.disabled||void 0,"data-hidden":K.hidden||void 0,"data-outside":V.outside||void 0,"data-focused":K.focused||void 0,"data-today":K.today||void 0},!K.hidden&&nn?D.createElement(s.DayButton,{className:i[T.DayButton],style:C?.[T.DayButton],type:"button",day:V,modifiers:K,disabled:!K.focused&&K.disabled||void 0,"aria-disabled":K.focused&&K.disabled||void 0,tabIndex:vs(V)?0:-1,"aria-label":Ss(te,K,c.options,c),onClick:As(V,K),onBlur:zs(V,K),onFocus:Ws(V,K),onKeyDown:Fs(V,K),onMouseEnter:Ys(V,K),onMouseLeave:Ps(V,K)},E(te,c.options,c)):!K.hidden&&E(V.date,c.options,c))})))))))),t.footer&&D.createElement(s.Footer,{className:i[T.Footer],style:C?.[T.Footer],role:"status","aria-live":"polite"},t.footer)))}function Ml({className:e,classNames:t,showOutsideDays:n=!0,captionLayout:s="label",buttonVariant:r="ghost",formatters:l,components:c,...o}){const i=qt();return a.jsx(Ol,{showOutsideDays:n,className:W("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:s,formatters:{formatMonthDropdown:d=>d.toLocaleString("default",{month:"short"}),...l},classNames:{root:W("w-fit",i.root),months:W("flex gap-4 flex-col md:flex-row relative",i.months),month:W("flex flex-col w-full gap-4",i.month),nav:W("flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between",i.nav),button_previous:W(rn({variant:r}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",i.button_previous),button_next:W(rn({variant:r}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",i.button_next),month_caption:W("flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)",i.month_caption),dropdowns:W("w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5",i.dropdowns),dropdown_root:W("relative cn-calendar-dropdown-root rounded-(--cell-radius)",i.dropdown_root),dropdown:W("absolute bg-popover inset-0 opacity-0",i.dropdown),caption_label:W("select-none font-medium",s==="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),table:"w-full border-collapse",weekdays:W("flex",i.weekdays),weekday:W("text-muted-foreground rounded-(--cell-radius) flex-1 font-normal text-[0.8rem] select-none",i.weekday),week:W("flex w-full mt-2",i.week),week_number_header:W("select-none w-(--cell-size)",i.week_number_header),week_number:W("text-[0.8rem] select-none text-muted-foreground",i.week_number),day:W("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",o.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:W("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:W("rounded-none",i.range_middle),range_end:W("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:W("bg-muted text-foreground rounded-(--cell-radius) data-[selected=true]:rounded-none",i.today),outside:W("text-muted-foreground aria-selected:text-muted-foreground",i.outside),disabled:W("text-muted-foreground opacity-50",i.disabled),hidden:W("invisible",i.hidden),...t},components:{Root:({className:d,rootRef:u,...f})=>a.jsx("div",{"data-slot":"calendar",ref:u,className:W(d),...f}),Chevron:({className:d,orientation:u,...f})=>u==="left"?a.jsx(_n,{className:W("size-4",d),...f}):u==="right"?a.jsx(Rn,{className:W("size-4",d),...f}):a.jsx(An,{className:W("size-4",d),...f}),DayButton:Tl,WeekNumber:({children:d,...u})=>a.jsx("td",{...u,children:a.jsx("div",{className:"flex size-(--cell-size) items-center justify-center text-center",children:d})}),...c},...o})}function Tl({className:e,day:t,modifiers:n,...s}){const r=qt(),l=g.useRef(null);return g.useEffect(()=>{n.focused&&l.current?.focus()},[n.focused]),a.jsx(R,{ref:l,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:W("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",r.day,e),...s})}function mt({value:e,onChange:t,placeholder:n="Pick a date",className:s,disabled:r,startYear:l=1980,endYear:c=new Date().getFullYear()+10,icon:o=!0,isFormatted:i=!0,showTime:d=!1}){const[u,f]=g.useState(!1),m=e?e.getHours():0,x=e?e.getMinutes():0,y=e?e.getSeconds():0,k=(j,E)=>{const N={target:{value:String(j)}};E(N)},S=j=>{j&&e&&(j.setHours(e.getHours()),j.setMinutes(e.getMinutes()),j.setSeconds(e.getSeconds())),t?.(j),d||f(!1)},v=(j,E)=>{const N=e?new Date(e):new Date;j==="hours"&&N.setHours(E),j==="minutes"&&N.setMinutes(E),j==="seconds"&&N.setSeconds(E),t?.(N)},w=j=>{const E=Ie(new Date);switch(j){case"NULL":t?.(null);break;case"NOW":t?.(new Date);break;case"TODAY":t?.(E);break;case"YESTERDAY":t?.(pt(E,-1));break;case"TOMORROW":t?.(pt(E,1));break}},p=Array.from({length:24},(j,E)=>E),h=Array.from({length:60},(j,E)=>E),b=Array.from({length:60},(j,E)=>E),C=e&&e instanceof Date&&!Number.isNaN(e.getTime())?i?d?Ce(e,"dd/MM/yyyy HH:mm:ss"):Ce(e,"dd/MM/yyyy"):d?Ce(e,"yyyy-MM-dd HH:mm:ss"):Ce(e,"yyyy-MM-dd"):e===null?"NULL":n;return a.jsxs(Be,{open:u,onOpenChange:f,children:[a.jsx(xt,{asChild:!0,children:a.jsxs(R,{variant:"outline",className:W("w-[280px] justify-start text-left font-normal",!e&&"text-muted-foreground",s),disabled:r,children:[o&&a.jsx(or,{className:"mr-2 h-4 w-4"}),C]})}),a.jsx(Ke,{className:"w-auto p-0",align:"end",children:a.jsxs("div",{className:"flex",children:[a.jsxs("div",{className:"flex flex-col gap-1 p-2 border-r",children:[a.jsx(R,{variant:"ghost",size:"sm",className:"justify-start text-xs h-7",onClick:()=>w("NULL"),children:"NULL"}),a.jsx(R,{variant:"ghost",size:"sm",className:"justify-start text-xs h-7",onClick:()=>w("NOW"),children:"NOW"}),a.jsx(R,{variant:"ghost",size:"sm",className:"justify-start text-xs h-7",onClick:()=>w("TODAY"),children:"TODAY"}),a.jsx(R,{variant:"ghost",size:"sm",className:"justify-start text-xs h-7",onClick:()=>w("YESTERDAY"),children:"YESTERDAY"}),a.jsx(R,{variant:"ghost",size:"sm",className:"justify-start text-xs h-7",onClick:()=>w("TOMORROW"),children:"TOMORROW"})]}),a.jsx(Ml,{components:{Dropdown:j=>a.jsxs(de,{onValueChange:E=>{j.onChange&&k(E,j.onChange)},value:String(j.value),children:[a.jsx(ue,{className:"h-8 w-fit font-medium first-letter:capitalize focus:ring-0 focus:ring-offset-0",children:a.jsx(fe,{})}),a.jsx(he,{children:j.options?.map(E=>a.jsx(B,{value:String(E.value),children:E.label},E.value))})]}),DropdownNav:j=>a.jsx("div",{className:"flex w-full items-center gap-2",children:j.children})},defaultMonth:e||new Date,hideNavigation:!0,mode:"single",onSelect:S,selected:e||void 0,startMonth:new Date(l,0),endMonth:new Date(c,11)}),d&&a.jsxs("div",{className:"flex border-l",children:[a.jsx(Ft,{label:"H",values:p,selected:m,onChange:j=>v("hours",j)}),a.jsx(Ft,{label:"M",values:h,selected:x,onChange:j=>v("minutes",j)}),a.jsx(Ft,{label:"S",values:b,selected:y,onChange:j=>v("seconds",j)})]})]})})]})}function Ft({label:e,values:t,selected:n,onChange:s}){const r=g.useRef(new Map);return g.useEffect(()=>{const l=r.current.get(n);l&&l.scrollIntoView({block:"center",behavior:"auto"})},[n]),a.jsxs("div",{className:"flex flex-col",children:[a.jsx("div",{className:"px-3 py-2 text-xs font-medium text-muted-foreground text-center border-b",children:e}),a.jsx(xr,{className:"h-[224px]",children:a.jsx("div",{className:"flex flex-col p-1",children:t.map(l=>a.jsx("button",{ref:c=>{c&&r.current.set(l,c)},type:"button",onClick:()=>s(l),className:W("w-10 h-8 text-sm rounded-md hover:bg-accent flex items-center justify-center",n===l&&"bg-primary text-primary-foreground hover:bg-primary"),children:l.toString().padStart(2,"0")},l))})})]})}const ft=e=>String(e).padStart(2,"0"),_l=({columnName:e,dataTypeLabel:t,columnDefault:n,enumValues:s,isForeignKey:r,referencedTable:l,referencedColumn:c})=>{const[,o]=P(M.REFERENCED_TABLE_STATE_KEYS.ACTIVE_TABLE),{control:i}=Nn(),{openSheet:d,setRecordReference:u}=me(),f=m=>{const x={...m,value:m.value??""};return r?a.jsxs("div",{className:"flex flex-col gap-2",children:[a.jsxs("div",{className:"flex",children:[a.jsx(ae,{id:e,placeholder:n??"",className:"-me-px flex-1 rounded-e-none shadow-none focus-visible:z-10",...x}),a.jsx(Je,{delayDuration:0,children:a.jsxs(Ge,{children:[a.jsx(Qe,{asChild:!0,children: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:()=>{l&&e&&c&&u(l,e,c),d("record-reference"),o(l)},children:a.jsx(Wn,{"aria-hidden":"true",className:"size-4",size:16})})}),a.jsx(Xe,{className:"px-2 py-1 text-xs",children:"Go to table"})]})})]}),a.jsxs("span",{className:"text-xs text-muted-foreground",children:["Has a foreign key relation to"," ",a.jsx("button",{type:"button",className:"font-mono text-primary",onClick:()=>{l&&e&&c&&u(l,e,c),d("record-reference"),o(l)},children:l})," ","table"]})]}):t==="int"||t==="bigint"||t==="smallint"||t==="numeric"||t==="float"||t==="double"||t==="money"?a.jsx(ae,{id:e,type:"number",placeholder:n??"0",...x}):t==="boolean"?a.jsxs(de,{value:m.value,onValueChange:y=>m.onChange(y),children:[a.jsx(ue,{className:"w-full",children:a.jsx(fe,{placeholder:n??"true"})}),a.jsxs(he,{children:[a.jsx(B,{value:"true",children:"true"}),a.jsx(B,{value:"false",children:"false"})]})]}):t==="text"||t==="xml"?a.jsx(Se,{id:e,placeholder:n??"",rows:4,...x}):t==="json"||t==="jsonb"?a.jsx(Se,{id:e,placeholder:n??'{"key": "value"}',rows:6,...x}):t==="date"?a.jsxs("div",{className:"flex",children:[a.jsx(mt,{value:m.value?new Date(m.value):m.value===""?null:void 0,onChange:y=>m.onChange(y?y.toISOString().split("T")[0]:""),placeholder:n??"Select a date",className:"-me-px flex-1 rounded-e-none shadow-none focus-visible:z-10"}),a.jsx(Je,{delayDuration:0,children:a.jsxs(Ge,{children:[a.jsx(Qe,{asChild:!0,children: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 y=new Date().toISOString().split("T")[0];m.onChange(y)},children:a.jsx(Tt,{"aria-hidden":"true",className:"size-4",size:16})})}),a.jsx(Xe,{className:"px-2 py-1 text-xs",children:"Set to now"})]})})]}):t==="timestamptz"?a.jsxs("div",{className:"flex",children:[a.jsx(mt,{value:m.value?new Date(m.value):m.value===""?null:void 0,onChange:y=>m.onChange(y?y.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"}),a.jsx(Je,{delayDuration:0,children:a.jsxs(Ge,{children:[a.jsx(Qe,{asChild:!0,children: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 y=new Date().toISOString();m.onChange(y)},children:a.jsx(Tt,{"aria-hidden":"true",className:"size-4",size:16})})}),a.jsx(Xe,{className:"px-2 py-1 text-xs",children:"Set to now"})]})})]}):t==="timestamp"?a.jsxs("div",{className:"flex",children:[a.jsx(mt,{value:m.value?new Date(m.value):m.value===""?null:void 0,onChange:y=>m.onChange(y?y.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"}),a.jsx(Je,{delayDuration:0,children:a.jsxs(Ge,{children:[a.jsx(Qe,{asChild:!0,children: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 y=new Date,k=y.getFullYear(),S=ft(y.getMonth()+1).padStart(2,"0"),v=ft(y.getDate()).padStart(2,"0"),w=ft(y.getHours()).padStart(2,"0"),p=ft(y.getMinutes()).padStart(2,"0");m.onChange(`${k}-${S}-${v}T${w}:${p}`)},children:a.jsx(Tt,{"aria-hidden":"true",className:"size-4",size:16})})}),a.jsx(Xe,{className:"px-2 py-1 text-xs",children:"Set to now"})]})})]}):t==="uuid"?a.jsxs("div",{className:"flex",children:[a.jsx(ae,{id:e,type:"text",placeholder:n??"",pattern:"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}",className:"-me-px flex-1 rounded-e-none shadow-none focus-visible:z-10",...x}),a.jsx(Je,{delayDuration:0,children:a.jsxs(Ge,{children:[a.jsx(Qe,{asChild:!0,children: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 y=crypto.randomUUID();m.onChange(y)},children:a.jsx(zn,{"aria-hidden":"true",className:"size-4",size:16})})}),a.jsx(Xe,{className:"px-2 py-1 text-xs",children:"Generate UUID"})]})})]}):t==="array"?a.jsx(Se,{id:e,placeholder:n??'["item1", "item2"]',rows:3,...x}):t==="enum"?s&&s.length>0?a.jsxs(de,{value:m.value,onValueChange:y=>m.onChange(y),children:[a.jsx(ue,{className:"w-full",children:a.jsx(fe,{placeholder:n??"Select a value"})}),a.jsx(he,{children:s.map(y=>a.jsx(B,{value:y,children:y},y))})]}):a.jsx(ae,{id:e,placeholder:n??"",...x}):t==="interval"?a.jsx(ae,{id:e,type:"text",placeholder:n??"1 day",...x}):t==="bytea"?a.jsx(ae,{id:e,type:"file",...x}):t==="inet"||t==="cidr"||t==="macaddr"||t==="macaddr8"?a.jsx(ae,{id:e,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",...x}):t==="point"||t==="line"||t==="polygon"?a.jsx(ae,{id:e,type:"text",placeholder:t==="point"?"(x,y)":t==="line"?"{A,B,C}":"((x1,y1),(x2,y2),...)",...x}):a.jsx(ae,{id:e,type:"text",placeholder:n??"",...x})};return a.jsx(Xs,{control:i,name:e,render:({field:m})=>a.jsxs("div",{className:"grid grid-cols-3 gap-4",children:[a.jsxs("div",{className:"col-span-1 flex flex-col gap-1",children:[a.jsx(le,{htmlFor:e,children:e}),a.jsx("span",{className:"text-xs text-muted-foreground",children:t})]}),a.jsx("div",{className:"col-span-2 w-full",children:f(m)})]})},e)},Rl=({tableName:e})=>{const[t,n]=P(M.REFERENCED_TABLE_STATE_KEYS.FILTERS,Fe(p=>p).withDefault([]).withOptions({history:"push"})),[,s]=P(M.REFERENCED_TABLE_STATE_KEYS.CURSOR),[,r]=P(M.REFERENCED_TABLE_STATE_KEYS.DIRECTION),{tableCols:l}=Ee({tableName:e}),[c,o]=g.useState(!1),[i,d]=g.useState([]),u=()=>{const p=l?.[0]?.columnName??"";d([...i,{columnName:p,operator:"=",value:""}])},f=p=>{d(i.filter((h,b)=>b!==p))},m=(p,h)=>{d(i.map((b,C)=>C===p?{...b,columnName:h}:b))},x=(p,h)=>{d(i.map((b,C)=>C===p?{...b,value:h}:b))},y=(p,h)=>{d(i.map((b,C)=>C===p?{...b,operator:h}:b))},k=()=>{d([]),n([]),s(null),r(null),o(!1)},S=()=>{const p=i.filter(h=>h.columnName&&h.operator&&h.value!=="");n(p),s(null),r(null),o(!1)},v=t.length>0,w=p=>{p&&d(t),o(p)};return a.jsxs(Be,{open:c,onOpenChange:w,children:[a.jsx(xt,{asChild:!0,children:a.jsxs(R,{type:"button",variant:"ghost",className:"border-r border-l-0 border-y-0 border-zinc-800 rounded-none text-xs h-full","aria-label":"Filter table data","data-active":v,children:[a.jsx(Fn,{className:"size-4"}),"Filter",v&&a.jsx(ke,{className:"text-[10px] font-normal text-white bg-primary/10 border border-primary/90 px-1.5 py-0.5",children:t.length})]})}),a.jsxs(Ke,{className:"w-md space-y-2",align:"start",children:[a.jsx("div",{className:"flex items-center gap-4",children:a.jsxs(R,{variant:"outline",size:"lg",className:"text-sm",onClick:u,children:["Add filter",i&&i.length>0&&a.jsx(ke,{className:"text-xs font-normal text-white bg-primary/10 border border-primary/90 px-1.5 py-0.5",children:i.length})]})}),a.jsx("div",{className:"flex flex-col gap-4",children:i.length>0?i.map((p,h)=>a.jsxs("div",{className:"flex-1 flex h-9 gap-2",children:[a.jsxs(de,{value:p.columnName,onValueChange:b=>m(h,b),children:[a.jsx(ue,{className:"w-full flex-1",children:a.jsx(fe,{placeholder:"Select column"})}),a.jsx(he,{children:l?.map(b=>a.jsx(B,{value:b.columnName,children:b.columnName},b.columnName))})]}),a.jsxs(de,{value:p.operator,onValueChange:b=>y(h,b),children:[a.jsx(ue,{children:a.jsx(fe,{placeholder:"Op"})}),a.jsxs(he,{children:[a.jsx(B,{value:"=",children:"="}),a.jsx(B,{value:"!=",children:"!="}),a.jsx(B,{value:">",children:">"}),a.jsx(B,{value:">=",children:">="}),a.jsx(B,{value:"<",children:"<"}),a.jsx(B,{value:"<=",children:"<="}),a.jsx(B,{value:"is",children:"is"}),a.jsx(B,{value:"is not",children:"is not"}),a.jsx(B,{value:"like",children:"like"}),a.jsx(B,{value:"not like",children:"not like"}),a.jsx(B,{value:"ilike",children:"ilike"}),a.jsx(B,{value:"not ilike",children:"not ilike"})]})]}),a.jsx(ae,{type:"text",placeholder:"Value",value:p.value,onChange:b=>x(h,b.target.value)}),a.jsx(R,{variant:"ghost",size:"icon",className:"text-xs",onClick:()=>f(h),children:a.jsx(yt,{className:"size-4"})})]},h)):a.jsx("div",{className:"flex-1 flex h-9 gap-2 items-center justify-center",children:a.jsx("p",{className:"text-sm text-muted-foreground text-center",children:"No filters applied"})})}),a.jsxs("div",{className:"gap-2 flex justify-end",children:[a.jsx(R,{variant:"outline",size:"lg",className:"text-sm",onClick:k,children:"Reset"}),a.jsx(R,{variant:"default",size:"lg",className:"text-sm",onClick:S,children:"Apply"})]})]})]})};function Al({className:e,size:t="default",...n}){return a.jsx(Js,{"data-slot":"switch","data-size":t,className:W("data-checked:bg-primary data-unchecked:bg-input focus-visible:border-ring focus-visible:ring-ring/30 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 dark:data-unchecked:bg-input/80 shrink-0 rounded-full border border-transparent focus-visible:ring-[2px] aria-invalid:ring-[2px] data-[size=default]:h-[16.6px] data-[size=default]:w-[28px] data-[size=sm]:h-[14px] data-[size=sm]:w-[24px] peer group/switch relative inline-flex items-center transition-all outline-none after:absolute after:-inset-x-3 after:-inset-y-2 data-disabled:cursor-not-allowed data-disabled:opacity-50",e),...n,children:a.jsx(Gs,{"data-slot":"switch-thumb",className:"bg-background dark:data-unchecked:bg-foreground dark:data-checked:bg-primary-foreground rounded-full group-data-[size=default]/switch:size-3.5 group-data-[size=sm]/switch:size-3 group-data-[size=default]/switch:data-checked:translate-x-[calc(100%-2px)] group-data-[size=sm]/switch:data-checked:translate-x-[calc(100%-2px)] group-data-[size=default]/switch:data-unchecked:translate-x-0 group-data-[size=sm]/switch:data-unchecked:translate-x-0 pointer-events-none block ring-0 transition-transform"})})}const Wl=({tableName:e})=>{const{tableCols:t}=Ee({tableName:e}),[n,s]=P(M.REFERENCED_TABLE_STATE_KEYS.SORT,Fe(w=>w).withDefault([]).withOptions({history:"push"})),[,r]=P(M.REFERENCED_TABLE_STATE_KEYS.CURSOR),[,l]=P(M.REFERENCED_TABLE_STATE_KEYS.DIRECTION),[c,o]=g.useState(!1),[i,d]=g.useState([]),u=()=>{const w=t?.[0]?.columnName??"";d([...i,{columnName:w,direction:"asc"}])},f=w=>{d(i.filter((p,h)=>h!==w))},m=(w,p)=>{d(i.map((h,b)=>b===w?{...h,columnName:p}:h))},x=(w,p)=>{d(i.map((h,b)=>b===w?{...h,direction:p}:h))},y=()=>{d([]),s([]),r(null),l(null),o(!1)},k=()=>{const w=i.filter(p=>p.columnName);s(w),r(null),l(null),o(!1)},S=n.length>0,v=w=>{w&&d(n),o(w)};return a.jsxs(Be,{open:c,onOpenChange:v,children:[a.jsx(xt,{asChild:!0,children:a.jsxs(R,{variant:"ghost",className:"border-r border-l-0 border-y-0 border-zinc-800 rounded-none text-xs h-full",children:[a.jsx(lr,{className:"size-4"}),"Sort",S&&a.jsx(ke,{className:"text-[10px] font-normal text-white bg-primary/10 border border-primary/90 px-1.5 py-0.5",children:n.length})]})}),a.jsxs(Ke,{className:"w-md space-y-2",align:"start",children:[a.jsx("div",{className:"flex items-center gap-4",children:a.jsxs(R,{variant:"outline",size:"lg",className:"text-sm",onClick:u,children:["Add sort",i&&i.length>0&&a.jsx(ke,{className:"text-xs font-normal text-white bg-primary/10 border border-primary/90 px-1.5 py-0.5",children:i.length})]})}),a.jsx("div",{className:"flex flex-col gap-4",children:i.length>0?i.map((w,p)=>a.jsxs("div",{className:"flex-1 flex h-9 gap-2 items-center",children:[a.jsxs(de,{value:w.columnName,onValueChange:h=>m(p,h),children:[a.jsx(ue,{className:"w-full flex-1",children:a.jsx(fe,{placeholder:"Select column"})}),a.jsx(he,{children:t?.map(h=>a.jsx(B,{value:h.columnName,children:h.columnName},h.columnName))})]}),a.jsxs("div",{className:"flex items-center space-x-2",children:[a.jsx(le,{htmlFor:`sort-direction-${p}`,children:"Asc"}),a.jsx(Al,{id:`sort-direction-${p}`,checked:w.direction==="desc",onCheckedChange:h=>x(p,h?"desc":"asc")}),a.jsx(le,{htmlFor:`sort-direction-${p}`,children:"Desc"})]}),a.jsx(R,{variant:"ghost",size:"icon",className:"text-xs",onClick:()=>f(p),children:a.jsx(yt,{className:"size-4"})})]},p)):a.jsx("div",{className:"flex-1 flex h-9 gap-2 items-center justify-center",children:a.jsx("p",{className:"text-sm text-muted-foreground text-center",children:"No sorts applied"})})}),a.jsxs("div",{className:"gap-2 flex justify-end",children:[a.jsx(R,{variant:"outline",size:"lg",className:"text-sm",onClick:y,children:"Reset"}),a.jsx(R,{variant:"default",size:"lg",className:"text-sm",onClick:k,children:"Apply"})]})]})]})};function zl({className:e,...t}){return a.jsx("div",{"data-slot":"table-container",className:"relative w-full overflow-x-auto",children:a.jsx("table",{"data-slot":"table",className:W("w-full caption-bottom text-xs",e),...t})})}function Fl({className:e,...t}){return a.jsx("thead",{"data-slot":"table-header",className:W("[&_tr]:border-b",e),...t})}function Yl({className:e,...t}){return a.jsx("tbody",{"data-slot":"table-body",className:W("[&_tr:last-child]:border-0",e),...t})}function Yt({className:e,...t}){return a.jsx("tr",{"data-slot":"table-row",className:W("hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors",e),...t})}function Pl({className:e,...t}){return a.jsx("th",{"data-slot":"table-head",className:W("text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0",e),...t})}function bn({className:e,...t}){return a.jsx("td",{"data-slot":"table-cell",className:W("p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0",e),...t})}const wt=({tableName:e,isReferencedTable:t=!1})=>{const{selectedDatabase:n}=Ve(),[s]=P(M.REFERENCED_TABLE_STATE_KEYS.ACTIVE_TABLE),r=e||s,[l]=P(t?M.REFERENCED_TABLE_STATE_KEYS.CURSOR:M.TABLE_STATE_KEYS.CURSOR),[c]=P(t?M.REFERENCED_TABLE_STATE_KEYS.LIMIT.toString():M.TABLE_STATE_KEYS.LIMIT),[o]=P(t?M.REFERENCED_TABLE_STATE_KEYS.DIRECTION:M.TABLE_STATE_KEYS.DIRECTION),[i]=P(M.REFERENCED_TABLE_STATE_KEYS.SORT,Fe(v=>v).withDefault([]).withOptions({history:"push"})),[d]=P(M.TABLE_STATE_KEYS.SORT),[u]=P(M.TABLE_STATE_KEYS.ORDER),[f]=P(t?M.REFERENCED_TABLE_STATE_KEYS.FILTERS:M.TABLE_STATE_KEYS.FILTERS,Fe(v=>v).withDefault([]).withOptions({history:"push"})),{data:m,isLoading:x,isRefetching:y,refetch:k,error:S}=_r({queryKey:[M.CACHE_KEYS.TABLE_DATA,r,l,c,o,t?JSON.stringify(i):d,u,JSON.stringify(f),n],queryFn:async()=>{const v=M.CACHE_KEYS.TABLE_DEFAULT_LIMIT.toString(),w={limit:c?.toString()||v,db:n??void 0};return l&&(w.cursor=l),o&&(w.direction=o),t?i&&i.length>0&&(w.sort=JSON.stringify(i)):(d&&(w.sort=d),u&&(w.order=u)),f&&f.length>0&&(w.filters=JSON.stringify(f)),await Ue.get(`/tables/${r}/data`,{params:w})},select:v=>v.data.data,enabled:!!r});return{tableData:m,isLoadingTableData:x,isRefetchingTableData:y,errorTableData:S,refetchTableData:k}},Il=({tableName:e,referencedColumn:t,columnName:n})=>{const{setValue:s}=Nn(),{closeSheet:r}=me(),{tableCols:l,isLoadingTableCols:c}=Ee({tableName:e}),[o,i]=P(M.REFERENCED_TABLE_STATE_KEYS.ACTIVE_TABLE),{tableData:d,isLoadingTableData:u}=wt({tableName:e,isReferencedTable:!0}),[,f]=P(M.REFERENCED_TABLE_STATE_KEYS.CURSOR),[,m]=P(M.REFERENCED_TABLE_STATE_KEYS.DIRECTION),[x,y]=P(M.REFERENCED_TABLE_STATE_KEYS.LIMIT.toString());g.useEffect(()=>{e&&o!==e&&i(e),e&&!x&&y(M.REFERENCED_TABLE_STATE_KEYS.DEFAULT_LIMIT.toString())},[e,o,x,i,y]);const k=()=>{d?.meta?.nextCursor&&(f(d.meta.nextCursor),m("forward"))},S=()=>{d?.meta?.prevCursor&&(f(d.meta.prevCursor),m("backward"))},v=g.useMemo(()=>l?.map(h=>({id:h.columnName,accessorKey:h.columnName,header:h.columnName,cell:({row:b})=>a.jsx("div",{className:"font-medium max-w-[200px] truncate",children:Ar(b.getValue(h.columnName))})}))??[],[l]),w=Yn({columns:v??[],data:d?.data??[],getCoreRowModel:Pn()}),p=h=>{console.log(h.original[t??""]),s(n??"",h.original[t??""]),r("record-reference")};return c||u?a.jsx("div",{className:"flex items-center justify-center h-full",children:a.jsx(Dn,{size:"size-8"})}):a.jsxs("div",{children:[a.jsxs("div",{className:"sticky top-0 left-0 right-0 h-8 border-b border-zinc-800 w-full flex items-center justify-between bg-background z-50",children:[a.jsxs("div",{className:"flex items-center h-full",children:[a.jsx(Rl,{tableName:e}),a.jsx(Wl,{tableName:e})]}),a.jsxs("div",{className:"flex items-center h-full",children:[a.jsx(R,{variant:"ghost",size:"icon",className:"border-l border-r-0 border-y-0 border-zinc-800 rounded-none text-xs h-full aspect-square size-8",onClick:S,disabled:!d?.meta?.hasPreviousPage,children:a.jsx(ir,{className:"size-3"})}),a.jsx(R,{variant:"ghost",size:"icon",className:"border-r border-l border-y-0 border-zinc-800 rounded-none text-xs h-full aspect-square size-8",onClick:k,disabled:!d?.meta?.hasNextPage,children:a.jsx(cr,{className:"size-3"})})]})]}),a.jsxs(zl,{children:[a.jsx(Fl,{children:w.getHeaderGroups().map(h=>a.jsx(Yt,{className:"hover:bg-transparent text-xs sticky top-0 right-0 left-0",children:h.headers.map(b=>a.jsx(Pl,{className:"border-r border-zinc-800",children:b.isPlaceholder?null:nt(b.column.columnDef.header,b.getContext())},b.id))},h.id))}),a.jsx(Yl,{children:w.getRowModel().rows?.length?w.getRowModel().rows.map(h=>a.jsx(Yt,{className:"text-xs cursor-pointer",onClick:()=>p(h),children:h.getVisibleCells().map(b=>a.jsx(bn,{className:"border-r border-zinc-800",children:nt(b.column.columnDef.cell,b.getContext())},b.id))},h.id)):a.jsx(Yt,{children:a.jsx(bn,{className:"h-24 text-center",colSpan:v.length,children:"No results."})})})]})]})},Bl=()=>{const[,e]=P(M.REFERENCED_TABLE_STATE_KEYS.ACTIVE_TABLE),[,t]=P(M.REFERENCED_TABLE_STATE_KEYS.CURSOR),[,n]=P(M.REFERENCED_TABLE_STATE_KEYS.DIRECTION),[,s]=P(M.REFERENCED_TABLE_STATE_KEYS.LIMIT.toString()),[,r]=P(M.REFERENCED_TABLE_STATE_KEYS.SORT.toString()),[,l]=P(M.REFERENCED_TABLE_STATE_KEYS.ORDER.toString()),[,c]=P(M.REFERENCED_TABLE_STATE_KEYS.FILTERS,Fe(u=>u).withDefault([]).withOptions({history:"push"})),{closeSheet:o,isSheetOpen:i,recordReferenceData:d}=me();return!d.tableName||!d.referencedColumn?null:a.jsx($e,{title:`View records in the table ${d.tableName}`,size:"max-w-lg!",contentClassName:"p-0",open:i("record-reference"),onOpenChange:u=>{u||(o("record-reference"),e(null),t(null),n(null),s(null),r(null),l(null),c(null))},children:a.jsx(Il,{tableName:d.tableName,referencedColumn:d.referencedColumn??null,columnName:d.columnName??""})})},Kl=({tableName:e})=>{const t=at(),{closeSheet:n}=me(),{selectedDatabase:s}=Ve(),{mutateAsync:r,isPending:l}=ot({mutationFn:async o=>{const i=new URLSearchParams({db:s??""});return(await Ue.post("/records",{tableName:e,data:o},{params:i})).data.data},onSuccess:async o=>{await Promise.all([t.invalidateQueries({queryKey:[M.CACHE_KEYS.TABLE_DATA,e],exact:!1}),t.invalidateQueries({queryKey:[M.CACHE_KEYS.TABLES_LIST]})]),n("add-record"),console.log("Record created successfully:",o)},onError:o=>{console.error("Error creating record:",o)}});return{createRecord:async(o,i)=>{if(!o||Object.keys(o).length===0)throw new Error("At least one field is required");return De.promise(r(o,i),{loading:"Creating record...",success:d=>d||"Record created successfully",error:d=>d.detail||d.message||"Failed to create record"})},isCreatingRecord:l}},Vl=({tableName:e})=>{const{closeSheet:t,isSheetOpen:n}=me(),{tableCols:s,isLoadingTableCols:r}=Ee({tableName:e}),{createRecord:l,isCreatingRecord:c}=Kl({tableName:e}),o=Zs(),i=async m=>{console.log("onSubmit",m),l(m,{onSuccess:()=>{o.reset(),t("add-record")},onError:x=>{console.error("Failed to create record:",x)}})},d=m=>{console.log("onError",m)},u=()=>{o.reset(),t("add-record")};console.log("tableCols",s);const f=()=>s&&s.length>0?a.jsxs(er,{...o,children:[a.jsxs("form",{onSubmit:o.handleSubmit(i,d),className:"flex flex-col h-full",children:[a.jsx("div",{className:"space-y-6",children:s&&s.length>0&&!r?s.map(m=>a.jsx(_l,{...m},m.columnName)):null}),a.jsxs("div",{className:"flex justify-end gap-2 py-6",children:[a.jsx(rt,{asChild:!0,onClick:u,disabled:c,children:a.jsx(R,{variant:"outline",size:"lg",children:"Close"})}),a.jsx(R,{type:"submit",size:"lg",disabled:c||!o.formState.isDirty,children:"Save"})]})]}),a.jsx(Bl,{})]}):a.jsx("div",{className:"flex flex-col h-full",children:a.jsx("div",{className:"space-y-6",children:a.jsx(se,{variant:"info",title:"No columns found",message:"Please add at least one column to the table before adding a record."})})});return a.jsx($e,{title:`Add a new record to the table: ${e}`,open:n("add-record"),onOpenChange:m=>{m||u()},children:f()})},Qt=Qs,vt=g.forwardRef(({className:e,...t},n)=>a.jsx(Sn,{ref:n,className:W("inline-flex h-10 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",e),...t}));vt.displayName=Sn.displayName;const Te=g.forwardRef(({className:e,...t},n)=>a.jsx(kn,{ref:n,className:W("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),...t}));Te.displayName=kn.displayName;const _e=g.forwardRef(({className:e,...t},n)=>a.jsx(jn,{ref:n,className:W("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",e),...t}));_e.displayName=jn.displayName;const St=({tableName:e})=>{const t=at(),{closeSheet:n}=me(),{selectedDatabase:s}=Ve(),{mutateAsync:r,isPending:l}=ot({mutationFn:async o=>{const i=new URLSearchParams({db:s??""}),d=await Ue.post("/records/bulk",{tableName:e,records:o},{params:i});return console.log("res",d.data.data),d.data.data},onSuccess:async()=>{await Promise.all([t.invalidateQueries({queryKey:[M.CACHE_KEYS.TABLE_DATA,e],exact:!1}),t.invalidateQueries({queryKey:[M.CACHE_KEYS.TABLES_LIST],exact:!1}),t.invalidateQueries({queryKey:[M.CACHE_KEYS.TABLE_COLUMNS,e],exact:!1})]),n("bulk-insert-records")}});return{bulkInsertRecords:async(o,i)=>{if(!o||o.length===0)throw new Error("At least one record is required");return De.promise(r(o),{loading:`Inserting ${o.length} record${o.length!==1?"s":""}...`,success:d=>(i?.onSuccess?.(d),d.failureCount>0?`${d.successCount} records inserted, ${d.failureCount} failed`:d.message),error:d=>(i?.onError?.(d),d.detail||d.message||"Failed to insert records")})},isInserting:l}},Re=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 Ul(t)},Ul=e=>{const t=e.split(`
2
+ `).filter(c=>c.trim());if(t.length<1)throw new Error("No data to parse");const n=t[0],s=$l(n),r=Cn(n,s).map(c=>c.trim());if(r.length===0)throw new Error("No headers found in CSV");const l=[];for(let c=1;c<t.length;c++){const o=Cn(t[c],s);o.length!==r.length&&console.warn(`Row ${c+1} has ${o.length} values but ${r.length} headers expected`);const i={};r.forEach((d,u)=>{const f=o[u]?.trim()??"";i[d]=Hl(f)}),l.push(i)}if(l.length===0)throw new Error("No records found in CSV");return l},$l=e=>{const t=[","," ",";"];let n=0,s=",";for(const r of t){const l=(e.match(new RegExp(`\\${r}`,"g"))||[]).length;l>n&&(n=l,s=r)}return s},Cn=(e,t)=>{const n=[];let s="",r=!1;for(let l=0;l<e.length;l++){const c=e[l],o=e[l+1];c==='"'?r&&o==='"'?(s+='"',l++):r=!r:c===t&&!r?(n.push(s),s=""):s+=c}return n.push(s),n},Hl=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},Ll=({tableName:e})=>{const{closeSheet:t,isSheetOpen:n}=me(),{bulkInsertRecords:s,isInserting:r}=St({tableName:e}),l=g.useRef(null),[c,o]=g.useState(""),[i,d]=g.useState(null),[u,f]=g.useState([]),[m,x]=g.useState(null),[y,k]=g.useState("file"),S=h=>{const b=h.target.files?.[0];b&&(d(b),f([]),x(null))},v=g.useCallback(()=>{x(null),f([]);try{if(y==="file"&&i){const h=new FileReader;h.onload=b=>{try{const C=b.target?.result,j=Re(C);f(j)}catch(C){x(C instanceof Error?C.message:"Failed to parse file")}},h.readAsText(i)}else if(c.trim()){const h=Re(c);f(h)}else x(y==="file"?"No file selected":"Input is empty")}catch(h){x(h instanceof Error?h.message:"Failed to format data")}},[c,i,y]),w=async()=>{if(u.length===0){x("No records to insert");return}try{await s(u,{onSuccess:()=>{o(""),d(null),f([]),x(null),t("bulk-insert-csv")}})}catch(h){console.error("Error inserting records:",h)}},p=()=>{o(""),d(null),f([]),x(null),t("bulk-insert-csv")};return a.jsx($e,{title:`Add data from CSV into: ${e}`,open:n("bulk-insert-csv"),onOpenChange:h=>{h||p()},children:a.jsxs("div",{className:"flex flex-col h-full gap-4",children:[a.jsx(se,{variant:"info",title:"CSV Import",message:"Enter CSV data with headers. Supports comma, tab, or semicolon delimiters. First row should be column names."}),a.jsxs(Qt,{value:y,onValueChange:h=>k(h),children:[a.jsxs(vt,{className:"grid w-full grid-cols-2",children:[a.jsx(Te,{value:"file",children:"File"}),a.jsx(Te,{value:"text",children:"Text"})]}),a.jsx(_e,{value:"file",className:"flex-1 flex flex-col gap-4",children:a.jsxs("div",{className:"flex flex-col gap-2",children:[a.jsx(le,{htmlFor:"file-input",className:"mb-2 text-sm font-medium text-zinc-300",children:"Select CSV file"}),a.jsx("input",{id:"file-input",ref:l,type:"file",accept:".csv",onChange:S,disabled:r,className:"text-sm text-zinc-400 file:mr-4 file:py-2 file:px-4 file:rounded-md file:border-0 file:text-sm file:font-semibold file:bg-zinc-700 file:text-white hover:file:bg-zinc-600 cursor-pointer disabled:opacity-50"})]})}),a.jsx(_e,{value:"text",className:"flex-1 flex flex-col gap-4",children:a.jsxs("div",{className:"flex-1 flex flex-col",children:[a.jsx(le,{htmlFor:"text-input",className:"text-sm font-medium mb-2 text-zinc-300",children:"Data Input"}),a.jsx(Se,{id:"text-input",value:c,onChange:h=>{o(h.target.value),f([]),x(null)},placeholder:`column1,column2,column3
3
+ value1,value2,value3
4
+ value4,value5,value6`,className:"flex-1 resize-none font-mono text-sm",disabled:r})]})})]}),m&&a.jsx(se,{variant:"error",title:"Parse Error",message:m}),u.length>0&&a.jsx(se,{variant:"success",title:"Ready to Insert",message:`${u.length} record${u.length!==1?"s":""} parsed successfully`}),a.jsxs("div",{className:"flex justify-between gap-2",children:[a.jsx(R,{variant:"secondary",size:"lg",onClick:v,disabled:y==="file"?!i:!c.trim()||r,children:"Format"}),a.jsxs("div",{className:"flex gap-2",children:[a.jsx(rt,{asChild:!0,onClick:p,disabled:r,children:a.jsx(R,{variant:"outline",size:"lg",children:"Close"})}),a.jsx(R,{type:"button",size:"lg",onClick:w,disabled:u.length===0||r,children:r?"Inserting...":"Insert"})]})]})]})})},ql=({tableName:e})=>{const{closeSheet:t,isSheetOpen:n}=me(),{bulkInsertRecords:s,isInserting:r}=St({tableName:e}),l=g.useRef(null),[c,o]=g.useState(""),[i,d]=g.useState(null),[u,f]=g.useState([]),[m,x]=g.useState(null),[y,k]=g.useState("file"),S=h=>{const b=h.target.files?.[0];b&&(d(b),f([]),x(null))},v=g.useCallback(()=>{x(null),f([]);try{if(y==="file"&&i){const h=new FileReader;h.onload=b=>{try{const C=b.target?.result,j=Re(C);f(j)}catch(C){x(C instanceof Error?C.message:"Failed to parse file")}},h.readAsText(i)}else if(c.trim()){const h=Re(c);f(h)}else x(y==="file"?"No file selected":"Input is empty")}catch(h){x(h instanceof Error?h.message:"Failed to format data")}},[c,i,y]),w=async()=>{if(u.length===0){x("No records to insert");return}try{await s(u,{onSuccess:()=>{o(""),d(null),f([]),x(null),t("bulk-insert-excel")}})}catch(h){console.error("Error inserting records:",h)}},p=()=>{o(""),d(null),f([]),x(null),t("bulk-insert-excel")};return a.jsx($e,{title:`Add data from Excel into: ${e}`,open:n("bulk-insert-excel"),onOpenChange:h=>{h||p()},children:a.jsxs("div",{className:"flex flex-col h-full gap-4",children:[a.jsx(se,{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."}),a.jsxs(Qt,{value:y,onValueChange:h=>k(h),children:[a.jsxs(vt,{className:"grid w-full grid-cols-2",children:[a.jsx(Te,{value:"file",children:"File"}),a.jsx(Te,{value:"text",children:"Text"})]}),a.jsx(_e,{value:"file",className:"flex-1 flex flex-col gap-4",children:a.jsxs("div",{className:"flex flex-col gap-2",children:[a.jsx(le,{htmlFor:"file-input",className:"mb-2 text-sm font-medium text-zinc-300",children:"Select Excel file"}),a.jsx("input",{id:"file-input",ref:l,type:"file",accept:".xlsx,.xls",onChange:S,disabled:r,className:"text-sm text-zinc-400 file:mr-4 file:py-2 file:px-4 file:rounded-md file:border-0 file:text-sm file:font-semibold file:bg-zinc-700 file:text-white hover:file:bg-zinc-600 cursor-pointer disabled:opacity-50"})]})}),a.jsx(_e,{value:"text",className:"flex-1 flex flex-col gap-4",children:a.jsxs("div",{className:"flex-1 flex flex-col",children:[a.jsx(le,{htmlFor:"text-input",className:"mb-2 text-sm font-medium text-zinc-300",children:"Data Input"}),a.jsx(Se,{id:"text-input",value:c,onChange:h=>{o(h.target.value),f([]),x(null)},placeholder:`column1 column2 column3
5
+ value1 value2 value3
6
+ value4 value5 value6`,className:"flex-1 resize-none font-mono text-sm",disabled:r})]})})]}),m&&a.jsx(se,{variant:"error",title:"Parse Error",message:m}),u.length>0&&a.jsx(se,{variant:"success",title:"Ready to Insert",message:`${u.length} record${u.length!==1?"s":""} parsed successfully`}),a.jsxs("div",{className:"flex justify-between gap-2",children:[a.jsx(R,{variant:"secondary",size:"lg",onClick:v,disabled:y==="file"?!i:!c.trim()||r,children:"Format"}),a.jsxs("div",{className:"flex gap-2",children:[a.jsx(rt,{asChild:!0,onClick:p,disabled:r,children:a.jsx(R,{variant:"outline",size:"lg",children:"Close"})}),a.jsx(R,{type:"button",size:"lg",onClick:w,disabled:u.length===0||r,children:r?"Inserting...":"Insert"})]})]})]})})},Jl=({tableName:e})=>{const{closeSheet:t,isSheetOpen:n}=me(),{bulkInsertRecords:s,isInserting:r}=St({tableName:e}),l=g.useRef(null),[c,o]=g.useState(""),[i,d]=g.useState(null),[u,f]=g.useState([]),[m,x]=g.useState(null),[y,k]=g.useState("file"),S=h=>{const b=h.target.files?.[0];b&&(d(b),f([]),x(null))},v=g.useCallback(()=>{x(null),f([]);try{if(y==="file"&&i){const h=new FileReader;h.onload=b=>{try{const C=b.target?.result,j=Re(C);f(j)}catch(C){x(C instanceof Error?C.message:"Failed to parse file")}},h.readAsText(i)}else if(c.trim()){const h=Re(c);f(h)}else x(y==="file"?"No file selected":"Input is empty")}catch(h){x(h instanceof Error?h.message:"Failed to format data")}},[c,i,y]),w=async()=>{if(u.length===0){x("No records to insert");return}try{await s(u,{onSuccess:()=>{o(""),d(null),f([]),x(null),t("bulk-insert-json")}})}catch(h){console.error("Error inserting records:",h)}},p=()=>{o(""),d(null),f([]),x(null),t("bulk-insert-json")};return a.jsx($e,{title:`Add data from JSON into: ${e}`,open:n("bulk-insert-json"),onOpenChange:h=>{h||p()},children:a.jsxs("div",{className:"flex flex-col h-full gap-4",children:[a.jsx(se,{variant:"info",title:"JSON Import",message:'Enter JSON array or single object. Example: [{"name": "John", "age": 30}, {"name": "Jane", "age": 28}]'}),a.jsxs(Qt,{value:y,onValueChange:h=>k(h),children:[a.jsxs(vt,{className:"grid w-full grid-cols-2",children:[a.jsx(Te,{value:"file",children:"File"}),a.jsx(Te,{value:"text",children:"Text"})]}),a.jsx(_e,{value:"file",className:"flex-1 flex flex-col gap-4",children:a.jsxs("div",{className:"flex flex-col gap-2",children:[a.jsx(le,{htmlFor:"file-input",className:"mb-2 text-sm font-medium text-zinc-300",children:"Select JSON file"}),a.jsx("input",{id:"file-input",ref:l,type:"file",accept:".json",onChange:S,disabled:r,className:"text-sm text-zinc-400 file:mr-4 file:py-2 file:px-4 file:rounded-md file:border-0 file:text-sm file:font-semibold file:bg-zinc-700 file:text-white hover:file:bg-zinc-600 cursor-pointer disabled:opacity-50"})]})}),a.jsx(_e,{value:"text",className:"flex-1 flex flex-col gap-4",children:a.jsxs("div",{className:"flex-1 flex flex-col",children:[a.jsx(le,{htmlFor:"text-input",className:"mb-2 text-sm font-medium text-zinc-300",children:"Data Input"}),a.jsx(Se,{id:"text-input",value:c,onChange:h=>{o(h.target.value),f([]),x(null)},placeholder:'[{"column1": "value1", "column2": "value2"}]',className:"flex-1 resize-none font-mono text-sm",disabled:r})]})})]}),m&&a.jsx(se,{variant:"error",title:"Parse Error",message:m}),u.length>0&&a.jsx(se,{variant:"success",title:"Ready to Insert",message:`${u.length} record${u.length!==1?"s":""} parsed successfully`}),a.jsxs("div",{className:"flex justify-between gap-2",children:[a.jsx(R,{variant:"secondary",size:"lg",onClick:v,disabled:y==="file"?!i:!c.trim()||r,children:"Format"}),a.jsxs("div",{className:"flex gap-2",children:[a.jsx(rt,{asChild:!0,onClick:p,disabled:r,children:a.jsx(R,{variant:"outline",size:"lg",children:"Close"})}),a.jsx(R,{type:"button",size:"lg",onClick:w,disabled:u.length===0||r,children:r?"Inserting...":"Insert"})]})]})]})})},Gl=({tableName:e})=>{const{closeSheet:t,isSheetOpen:n}=me(),{bulkInsertRecords:s,isInserting:r}=St({tableName:e}),[l,c]=g.useState(""),[o,i]=g.useState([]),[d,u]=g.useState(null),[f,m]=g.useState("auto"),x=g.useCallback(()=>{u(null),i([]);try{if(!l.trim()){u("Input is empty");return}const v=Re(l);i(v)}catch(v){u(v instanceof Error?v.message:"Failed to parse data")}},[l]),y=async()=>{if(o.length===0){u("No records to insert");return}try{await s(o,{onSuccess:()=>{c(""),i([]),u(null)}})}catch(v){console.error("Error inserting records:",v)}},k=()=>{c(""),i([]),u(null),t("bulk-insert-records")},S=()=>{c(""),i([]),u(null)};return a.jsx($e,{title:`Bulk Insert Records into: ${e}`,open:n("bulk-insert-records"),onOpenChange:v=>{v||k()},children:a.jsxs("div",{className:"flex flex-col h-full gap-4",children:[a.jsxs("div",{className:"flex gap-2",children:[a.jsx("button",{onClick:()=>m("auto"),type:"button",className:`px-3 py-1 text-sm rounded-md transition-colors ${f==="auto"?"bg-blue-600 text-white":"bg-zinc-700 text-zinc-300 hover:bg-zinc-600"}`,children:"Auto"}),a.jsx("button",{onClick:()=>m("csv"),type:"button",className:`px-3 py-1 text-sm rounded-md transition-colors ${f==="csv"?"bg-blue-600 text-white":"bg-zinc-700 text-zinc-300 hover:bg-zinc-600"}`,children:"CSV"}),a.jsx("button",{onClick:()=>m("json"),type:"button",className:`px-3 py-1 text-sm rounded-md transition-colors ${f==="json"?"bg-blue-600 text-white":"bg-zinc-700 text-zinc-300 hover:bg-zinc-600"}`,children:"JSON"})]}),a.jsx(se,{variant:"info",title:"Bulk Insert",message:f==="json"?'Enter JSON array or single object. Example: [{"name": "John", "age": 30}, {"name": "Jane", "age": 28}]':"Enter CSV data with headers. Supports comma, tab, or semicolon delimiters. First row should be column names."}),a.jsxs("div",{className:"flex-1 flex flex-col",children:[a.jsx(le,{htmlFor:"text-input",className:"mb-2 text-sm font-medium text-zinc-300",children:"Data Input"}),a.jsx(Se,{id:"text-input",value:l,onChange:v=>{c(v.target.value),i([]),u(null)},placeholder:f==="json"?'[{"column1": "value1", "column2": "value2"}]':`column1,column2,column3
7
+ value1,value2,value3
8
+ value4,value5,value6`,className:"flex-1 resize-none font-mono text-sm"})]}),d&&a.jsx(se,{variant:"error",title:"Parse Error",message:d}),o.length>0&&a.jsx(se,{variant:"success",title:"Ready to Insert",message:`${o.length} record${o.length!==1?"s":""} parsed successfully`}),a.jsxs("div",{className:"flex justify-between gap-2",children:[a.jsxs("div",{className:"flex gap-2",children:[a.jsx(R,{variant:"outline",size:"lg",onClick:S,disabled:!l||r,children:"Clear"}),a.jsx(R,{variant:"secondary",size:"lg",onClick:x,disabled:!l||r,children:"Preview"})]}),a.jsxs("div",{className:"flex gap-2",children:[a.jsx(rt,{asChild:!0,onClick:k,disabled:r,children:a.jsx(R,{variant:"outline",size:"lg",children:"Close"})}),a.jsx(R,{type:"button",size:"lg",onClick:y,disabled:o.length===0||r,children:r?"Inserting...":"Insert"})]})]})]})})},Ql=()=>{const{openSheet:e}=me();return a.jsxs(En,{children:[a.jsx(On,{asChild:!0,children:a.jsxs(R,{type:"button",variant:"default",className:"h-8! border-l-0 border-y-0 border-r border-zinc-800 rounded-none flex items-center gap-2","aria-label":"Add records to the table",children:[a.jsx(dr,{className:"size-4"}),"Add Record"]})}),a.jsxs(Mn,{align:"start",className:"w-48",children:[a.jsx(Ne,{onClick:()=>e("add-record"),children:"Add Record"}),a.jsx(Ne,{onClick:()=>e("bulk-insert-csv"),children:"Add data from CSV"}),a.jsx(Ne,{onClick:()=>e("bulk-insert-excel"),children:"Add data from Excel"}),a.jsx(Ne,{onClick:()=>e("bulk-insert-json"),children:"Add data from JSON"})]})]})},ht=(e,t)=>`${e.id??JSON.stringify(e)}-${t}`,ye=tr()((e,t)=>({updates:new Map,setUpdate:(n,s,r,l)=>{e(c=>{const o=new Map(c.updates),i=ht(n,s);return r===l?o.delete(i):o.set(i,{rowData:n,columnName:s,newValue:r,originalValue:l}),console.log("setUpdate",{rowData:n,columnName:s,newValue:r,originalValue:l}),{updates:o}})},clearUpdates:()=>e({updates:new Map}),clearUpdate:(n,s)=>{e(r=>{const l=new Map(r.updates);return l.delete(ht(n,s)),{updates:l}})},getUpdates:()=>Array.from(t().updates.values()),getUpdate:(n,s)=>t().updates.get(ht(n,s))??null,hasUpdate:(n,s)=>t().updates.has(ht(n,s)),hasAnyUpdates:()=>t().updates.size>0,getUpdateCount:()=>t().updates.size})),ps=()=>{const e=at(),{table:t}=Bt.useParams(),{clearUpdates:n,getUpdateCount:s}=ye(),{selectedDatabase:r}=Ve(),{mutateAsync:l,isPending:c}=ot({mutationFn:async o=>{if(!t)throw new Error("No table selected");const i={tableName:t,updates:o.map(u=>({rowData:u.rowData,columnName:u.columnName,value:u.newValue}))},d=new URLSearchParams({db:r??""});return Ue.patch("/records",i,{params:d})},onSuccess:async o=>{const i=s();De.success(o.data.data||`${i} ${i===1?"change":"changes"} saved successfully`),n(),await Promise.all([e.invalidateQueries({queryKey:[M.CACHE_KEYS.TABLE_DATA,t],exact:!1})])},onError:o=>{console.error("Update error:",o),De.error("Failed to save changes",{description:o instanceof Error?o.message:"Unknown error occurred"})}});return{updateCell:l,isUpdatingCell:c}},Xl=()=>{const{getUpdateCount:e,clearUpdates:t}=ye(),{isUpdatingCell:n}=ps(),s=g.useCallback(()=>{t()},[t]);return e()===0?null:a.jsx(R,{type:"button",variant:"secondary",className:"h-8! border-l-0 border-y-0 border-r border-zinc-800 rounded-none",onClick:s,"aria-label":"Clear changes to the table",disabled:n,children:"Clear Changes"})},Zl=({tableName:e})=>{const t=at(),{tableCols:n}=Ee({tableName:e}),{selectedDatabase:s}=Ve(),{mutateAsync:r,isPending:l,reset:c,error:o}=ot({mutationFn:async({rowData:u,force:f=!1})=>{if(!e)throw new Error("No active table selected");if(!n||n.length===0)throw new Error("No table columns found");return await ei(e,n,u,f,s||void 0)},onSuccess:async u=>{console.log("result",u),De.success(`Deleted ${u.deletedCount} records from "${e}"`),await Promise.all([t.invalidateQueries({queryKey:[M.CACHE_KEYS.TABLE_DATA,e],exact:!1}),t.invalidateQueries({queryKey:[M.CACHE_KEYS.TABLES_LIST]})])},onError:u=>{console.error("Delete error:",u),u instanceof nr&&u.status===409?De.error(`Cannot delete records from "${e}" due to foreign key constraints, on ${u.response?.data.relatedRecords.map(f=>f.tableName).join(", ")}`):De.error(u instanceof Error?u.message:"Unknown error occurred")}});return{deleteCells:async u=>r({rowData:u,force:!1}),forceDeleteCells:async u=>r({rowData:u,force:!0}),isDeletingCells:l,resetDeleteResult:c,deleteCellsError:o}},ei=async(e,t,n,s,r)=>{const l=s?"/records/force":"/records",c=t.find(d=>d.isPrimaryKey);if(!c)throw new Error("No primary key found for this table");const o=n.map(d=>({columnName:c.columnName,value:d[c.columnName]})),i={tableName:e,primaryKeys:o};try{const d=await Ue.delete(l,{data:i,params:{db:r}});return{deletedCount:d.data.data.deletedCount,fkViolation:d.data.data.fkViolation,relatedRecords:d.data.data.relatedRecords}}catch(d){const u=d;if(console.log("axiosError",u),u.response?.status===409)return{deletedCount:u.response.data.deletedCount};throw d}},ti=({isOpenFkDialog:e,handleDialogClose:t,relatedRecords:n,handleCancelForceDelete:s,handleForceDelete:r,isDeletingCells:l})=>a.jsx(yr,{open:e,onOpenChange:t,children:a.jsxs(br,{className:"max-w-2xl z-500",children:[a.jsxs(Cr,{children:[a.jsx(wr,{children:"Cannot Delete - Foreign Key Constraint"}),a.jsx(vr,{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."})]}),a.jsx(ni,{relatedRecords:n}),a.jsxs(Sr,{className:"gap-2",children:[a.jsx(R,{variant:"outline",onClick:s,disabled:l,children:"Cancel"}),a.jsx(R,{variant:"destructive",onClick:r,disabled:l,children:l?"Deleting...":"Force Delete All"})]})]})}),ni=({relatedRecords:e})=>a.jsx("div",{className:"space-y-4 max-h-64 overflow-y-auto",children:e.map((t,n)=>a.jsxs("div",{className:"border border-zinc-700 rounded-md p-3",children:[a.jsxs("div",{className:"font-medium text-sm mb-2",children:["Table: ",a.jsx("span",{className:"text-primary",children:t.tableName}),a.jsxs("span",{className:"text-muted-foreground ml-2",children:["(",t.records.length," record",t.records.length!==1?"s":"",")"]})]}),a.jsxs("div",{className:"text-xs text-muted-foreground mb-2",children:["References column: ",t.columnName]}),a.jsx("div",{className:"bg-zinc-900 rounded p-2 text-xs overflow-x-auto",children:a.jsxs("pre",{className:"whitespace-pre-wrap",children:[JSON.stringify(t.records.slice(0,5),null,2),t.records.length>5&&a.jsxs("div",{className:"text-muted-foreground mt-2",children:["... and ",t.records.length-5," more"]})]})})]},`${t.tableName}-${t.columnName}-${n}`))}),si=({selectedRows:e,setRowSelection:t,tableName:n})=>{const{deleteCells:s,forceDeleteCells:r,isDeletingCells:l,resetDeleteResult:c}=Zl({tableName:n}),[o,i]=g.useState([]),[d,u]=g.useState(!1),[f,m]=g.useState([]),x=g.useCallback(async()=>{const v=e.map(w=>w.original);try{await s(v),t({})}catch{i(v),m([]),u(!0)}},[s,e,t]),y=async()=>{if(o.length===0)return;const v=await r(o);console.log("Force delete response:",v),v?.deletedCount>0&&(u(!1),i([]),m([]),c(),t({}))},k=g.useCallback(()=>{u(!1),i([]),m([]),c()},[c]),S=v=>{l||(v?u(v):k())};return e?.length===0?null:a.jsxs(a.Fragment,{children:[a.jsxs(R,{type:"button",variant:"destructive",className:"h-8! border-l-0 border-y-0 border-r border-zinc-800 text-white rounded-none",onClick:x,"aria-label":"Delete the selected record",disabled:l,children:["Delete Record",e?.length>1&&a.jsx("span",{className:"ml-1.5 px-1.5 text-[10px] bg-white/20 border border-white/20 rounded",children:e?.length})]}),a.jsx(ti,{isOpenFkDialog:d,handleDialogClose:S,relatedRecords:f,handleCancelForceDelete:k,handleForceDelete:y,isDeletingCells:l})]})},ri=({tableName:e})=>{const[t,n]=P(M.TABLE_STATE_KEYS.FILTERS,Fe(p=>p).withDefault([]).withOptions({history:"push"})),[,s]=P(M.TABLE_STATE_KEYS.CURSOR),[,r]=P(M.TABLE_STATE_KEYS.DIRECTION),{tableCols:l}=Ee({tableName:e}),[c,o]=g.useState(!1),[i,d]=g.useState([]),u=()=>{const p=l?.[0]?.columnName??"";d([...i,{columnName:p,operator:"=",value:""}])},f=p=>{d(i.filter((h,b)=>b!==p))},m=(p,h)=>{d(i.map((b,C)=>C===p?{...b,columnName:h}:b))},x=(p,h)=>{d(i.map((b,C)=>C===p?{...b,value:h}:b))},y=(p,h)=>{d(i.map((b,C)=>C===p?{...b,operator:h}:b))},k=()=>{d([]),n([]),s(null),r(null),o(!1)},S=()=>{const p=i.filter(h=>h.columnName&&h.operator&&h.value!=="");n(p),s(null),r(null),o(!1)},v=t.length>0,w=p=>{p&&d(t),o(p)};return a.jsxs(Be,{open:c,onOpenChange:w,children:[a.jsx(xt,{asChild:!0,children:a.jsx(R,{type:"button",variant:"ghost",className:"size-8! aspect-square border-l-0 border-y-0 border-r border-zinc-800 rounded-none","aria-label":"Filter table data","data-active":v,children:a.jsx(Fn,{className:"size-4"})})}),a.jsxs(Ke,{className:"w-md space-y-2",align:"start",children:[a.jsx("div",{className:"flex items-center gap-4",children:a.jsxs(R,{variant:"outline",size:"lg",className:"text-sm",onClick:u,children:["Add filter",i&&i.length>0&&a.jsx(ke,{className:"text-xs font-normal text-white bg-primary/10 border border-primary/90 px-1.5 py-0.5",children:i.length})]})}),a.jsx("div",{className:"flex flex-col gap-4",children:i.length>0?i.map((p,h)=>a.jsxs("div",{className:"flex-1 flex h-9 gap-2",children:[a.jsxs(de,{value:p.columnName,onValueChange:b=>m(h,b),children:[a.jsx(ue,{className:"w-full flex-1",children:a.jsx(fe,{placeholder:"Select column"})}),a.jsx(he,{children:l?.map(b=>a.jsx(B,{value:b.columnName,children:b.columnName},b.columnName))})]}),a.jsxs(de,{value:p.operator,onValueChange:b=>y(h,b),children:[a.jsx(ue,{children:a.jsx(fe,{placeholder:"Op"})}),a.jsxs(he,{children:[a.jsx(B,{value:"=",children:"="}),a.jsx(B,{value:"!=",children:"!="}),a.jsx(B,{value:">",children:">"}),a.jsx(B,{value:">=",children:">="}),a.jsx(B,{value:"<",children:"<"}),a.jsx(B,{value:"<=",children:"<="}),a.jsx(B,{value:"is",children:"is"}),a.jsx(B,{value:"is not",children:"is not"}),a.jsx(B,{value:"like",children:"like"}),a.jsx(B,{value:"not like",children:"not like"}),a.jsx(B,{value:"ilike",children:"ilike"}),a.jsx(B,{value:"not ilike",children:"not ilike"})]})]}),a.jsx(ae,{type:"text",placeholder:"Value",value:p.value,onChange:b=>x(h,b.target.value)}),a.jsx(R,{variant:"ghost",size:"icon",className:"text-xs",onClick:()=>f(h),children:a.jsx(yt,{className:"size-4"})})]},h)):a.jsx("div",{className:"flex-1 flex h-9 gap-2 items-center justify-center",children:a.jsx("p",{className:"text-sm text-muted-foreground text-center",children:"No filters applied"})})}),a.jsxs("div",{className:"gap-2 flex justify-end",children:[a.jsx(R,{variant:"outline",size:"lg",className:"text-sm",onClick:k,children:"Reset"}),a.jsx(R,{variant:"default",size:"lg",className:"text-sm",onClick:S,children:"Apply"})]})]})]})},ai=({tableName:e})=>{const{refetchTableData:t,isRefetchingTableData:n}=wt({tableName:e}),{refetchTableCols:s,isRefetchingTableCols:r}=Ee({tableName:e}),l=g.useCallback(()=>{Promise.all([t(),s()])},[t,s]);return a.jsx(R,{type:"button",variant:"ghost",className:"size-8! aspect-square border-l-0 border-y-0 border-r border-zinc-800 rounded-none",onClick:l,"aria-label":"Refetch table data and columns",disabled:n||r,children:a.jsx(zn,{className:"size-4"})})},oi=({setRowSelection:e})=>{const{getUpdates:t,getUpdateCount:n}=ye(),{updateCell:s,isUpdatingCell:r}=ps(),l=g.useCallback(async()=>{const o=t();if(o.length!==0){console.log("Saving updates:",o);try{await s(o),e({})}catch(i){console.error("Failed to save updates:",i)}}},[t,s,e]);if(n()===0)return null;const c=n();return a.jsxs(R,{type:"button",variant:"default",className:"h-8! border-l-0 border-y-0 border-r border-zinc-800 rounded-none bg-green-700 text-white hover:bg-green-800",onClick:l,"aria-label":"Save changes to the table",disabled:r,children:["Save Changes",c>0&&a.jsx("span",{className:"ml-1.5 px-1.5 text-[10px] bg-white/20 border border-white/20 rounded",children:c})]})},wn=({selectedRows:e,setRowSelection:t,tableName:n})=>a.jsx("header",{className:"max-h-8 overflow-hidden border-b border-zinc-800 w-full flex items-center justify-between bg-black sticky top-0 left-0 right-0 z-0",children:a.jsxs("div",{className:"flex items-center ",children:[a.jsx(ai,{tableName:n}),a.jsx(ri,{tableName:n}),a.jsx(Ql,{}),a.jsx(oi,{setRowSelection:t}),a.jsx(Xl,{}),a.jsx(si,{tableName:n,selectedRows:e,setRowSelection:t})]})});function Le({table:e,cell:t,rowIndex:n,columnId:s,isEditing:r,isFocused:l,isSelected:c,className:o,onClick:i,onKeyDown:d,...u}){const{getUpdate:f}=ye(),m=e.options.meta,x=t.row.original,y=!!f(x,s),k=g.useCallback(C=>{r||(C.preventDefault(),i?.(C),l?m?.onCellEditingStart?.(n,s):m?.onCellClick?.(n,s,C))},[m,n,s,r,l,i]),S=g.useCallback(C=>{r||m?.onCellContextMenu?.(n,s,C)},[m,n,s,r]),v=g.useCallback(C=>{r||m?.onCellMouseDown?.(n,s,C)},[m,n,s,r]),w=g.useCallback(C=>{r||m?.onCellMouseEnter?.(n,s,C)},[m,n,s,r]),p=g.useCallback(()=>{r||m?.onCellMouseUp?.()},[m,r]),h=g.useCallback(C=>{r||(C.preventDefault(),m?.onCellDoubleClick?.(n,s))},[m,n,s,r]),b=g.useCallback(C=>{if(d?.(C),!C.defaultPrevented&&!(C.key==="ArrowUp"||C.key==="ArrowDown"||C.key==="ArrowLeft"||C.key==="ArrowRight"||C.key==="Home"||C.key==="End"||C.key==="PageUp"||C.key==="PageDown"||C.key==="Tab")&&l&&!r){if(C.key==="F2"||C.key==="Enter"){C.preventDefault(),C.stopPropagation(),m?.onCellEditingStart?.(n,s);return}if(C.key===" "){C.preventDefault(),C.stopPropagation(),m?.onCellEditingStart?.(n,s);return}C.key.length===1&&!C.ctrlKey&&!C.metaKey&&(C.preventDefault(),C.stopPropagation(),m?.onCellEditingStart?.(n,s))}},[d,l,r,m,n,s]);return a.jsx("div",{role:"button","data-slot":"grid-cell-wrapper","data-editing":r?"":void 0,"data-focused":l?"":void 0,"data-selected":c?"":void 0,"data-has-update":y?"":void 0,tabIndex:l&&!r?0:-1,className:W("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":l,"bg-primary/10":c&&!r,"cursor-default":!r,"ring-2 ring-primary":y},o),onClick:k,onContextMenu:S,onDoubleClick:h,onMouseDown:v,onMouseEnter:w,onMouseUp:p,onKeyDown:b,...u})}const gt=g.memo(({cell:e,table:t,rowIndex:n,columnId:s,isEditing:r,isFocused:l,isSelected:c})=>{const{setUpdate:o,clearUpdate:i,getUpdate:d}=ye(),u=e.getValue(),[f,m]=g.useState(()=>u??""),[x,y]=g.useState(!1),k=g.useRef(null),S=g.useRef(null),v=t.options.meta,w=e.row.original,p=s,h=d(w,p),b=h?h.newValue:u??"",C=g.useCallback(()=>{console.log("onSave",{editorValue:f,initialValue:u,columnName:p,rowData:w}),o(w,p,f,u),v?.onCellEditingStop?.(),y(!1)},[v,f,u,p,w,o]),j=g.useCallback(()=>{m(u??""),i(w,p),v?.onCellEditingStop?.(),y(!1)},[v,u,p,w,i,f]),E=g.useCallback(Y=>{const I=Y.target.value;console.log("onChange",I,p,f,u),m(I)},[p,f,u]),N=g.useCallback(Y=>{y(Y),Y||(f!==u&&o(w,p,f,u),v?.onCellEditingStop?.())},[v,f,u,p,w,o]),O=g.useCallback(Y=>{if(Y.preventDefault(),k.current){k.current.focus();const I=k.current.value.length;k.current.setSelectionRange(I,I)}},[]),_=g.useCallback(Y=>{r&&!x&&(Y.key==="Escape"?(Y.preventDefault(),v?.onCellEditingStop?.()):Y.key==="Tab"&&(Y.preventDefault(),v?.onCellEditingStop?.({direction:Y.shiftKey?"left":"right"})))},[r,x,v]),q=g.useCallback(Y=>{Y.key==="Escape"?(Y.preventDefault(),console.log("onTextareaKeyDown",Y.key,f,u),j()):Y.key==="Enter"&&(Y.ctrlKey||Y.metaKey)&&(Y.preventDefault(),console.log("onTextareaKeyDown",Y.key,f,u),C()),Y.stopPropagation()},[j,C,f,u]),G=g.useCallback(()=>{f!==u&&o(w,p,f,u),v?.onCellEditingStop?.(),y(!1)},[v,f,u,p,w,o]);return g.useEffect(()=>{r&&!x?(m(b),y(!0)):!r&&x&&y(!1)},[r,x,b]),g.useEffect(()=>{l&&!r&&!v?.isScrolling&&S.current&&S.current.focus()},[l,r,v?.isScrolling]),Ye("enter",()=>C()),Ye("esc",()=>j()),a.jsxs(Be,{open:x,onOpenChange:N,children:[a.jsx(Tn,{asChild:!0,children:a.jsx(Le,{ref:S,cell:e,table:t,rowIndex:n,columnId:s,isEditing:r,isFocused:l,isSelected:c,onKeyDown:_,children:a.jsx("span",{"data-slot":"grid-cell-content",children:b})})}),a.jsxs(Ke,{"data-grid-cell-editor":"",align:"start",side:"bottom",sideOffset:0,className:"w-[400px] rounded-none p-0 gap-0",onOpenAutoFocus:O,children:[a.jsx(Se,{ref:k,value:f,onChange:E,onKeyDown:q,onBlur:G,className:"min-h-[150px] resize-none rounded-none border-0 shadow-none focus-visible:ring-0",placeholder:"Enter text..."}),a.jsxs("div",{className:"flex flex-col border-t",children:[a.jsxs(R,{variant:"ghost",size:"sm",className:"rounded-none justify-start text-xs py-4 px-2",children:[a.jsx(ke,{className:"text-xs font-normal",children:"⌘↵"}),a.jsx("span",{className:"ml-1 text-xs",children:"Save Changes"})]}),a.jsxs(R,{variant:"ghost",size:"sm",className:"rounded-none justify-start text-xs py-4 px-2",children:[a.jsx(ke,{className:"text-xs font-normal",children:"esc"}),a.jsx("span",{className:"ml-1 text-xs",children:"Cancel Changes"})]})]})]})]})});gt.displayName="TableTextCell";const xs=g.memo(({cell:e,table:t,rowIndex:n,columnId:s,isEditing:r,isFocused:l,isSelected:c})=>{const{setUpdate:o,clearUpdate:i}=ye(),d=e.getValue(),[u,f]=g.useState(()=>d),[m,x]=g.useState(!1),y=g.useRef(null),k=g.useRef(null),S=t.options.meta,v=e.row.original,w=s,p=g.useCallback(()=>{console.log("onSave",{value:u,initialValue:d,columnName:w,rowData:v}),o(v,w,u,d),x(!1),S?.onCellEditingStop?.()},[S,u,d,w,v,o]),h=g.useCallback(()=>{f(d),i(v,w),x(!1),S?.onCellEditingStop?.()},[S,d,w,v,i,u]),b=g.useCallback(N=>{const O=N.target.value;console.log("onChange",O,w,u,d),f(Number(O)),o(v,w,Number(O),d)},[w,u,d,v,o]),C=g.useCallback(N=>{r&&!m&&(N.key==="Escape"?(N.preventDefault(),S?.onCellEditingStop?.()):N.key==="Tab"&&(N.preventDefault(),u!==d&&o(v,w,u,d),S?.onCellEditingStop?.({direction:N.shiftKey?"left":"right"})))},[r,m,S,u,d,w,v,o]),j=g.useCallback(N=>{N.key==="Escape"?(N.preventDefault(),console.log("onTextInputKeyDown",N.key,u,d),h()):N.key==="Enter"&&(N.ctrlKey||N.metaKey)&&(N.preventDefault(),console.log("onTextInputKeyDown",N.key,u,d),p()),N.stopPropagation()},[h,p,u,d]),E=g.useCallback(()=>{u!==d&&o(v,w,u,d),x(!1),S?.onCellEditingStop?.()},[S,u,d,w,v,o]);return r&&!m&&x(!0),g.useEffect(()=>{l&&!r&&!S?.isScrolling&&k.current&&k.current.focus()},[l,r,S?.isScrolling]),Ye("enter",()=>p()),Ye("esc",()=>h()),a.jsx(Le,{ref:k,cell:e,table:t,rowIndex:n,columnId:s,isEditing:r,isFocused:l,isSelected:c,onKeyDown:C,children:a.jsx(ae,{type:"number",ref:y,value:u||"",onChange:N=>b(N),onKeyDown:N=>j(N),onBlur:E,className:"size-full rounded-none border-none p-0 shadow-none hover:bg-transparent! focus-visible:ring-0 dark:bg-transparent [&_svg]:hidden"})})});xs.displayName="TableNumberCell";const ys=g.memo(({cell:e,table:t,rowIndex:n,columnId:s,isEditing:r,isFocused:l,isSelected:c})=>{const{setUpdate:o,clearUpdate:i,getUpdate:d}=ye(),u=e.getValue(),[f,m]=g.useState(!1),x=g.useRef(null),y=g.useRef(null),k=g.useRef(r),S=t.options.meta;g.useEffect(()=>{k.current=r},[r]);const v=e.row.original,w=s,p=d(v,w),h=p?p.newValue:u,b=g.useMemo(()=>h==null?"null":h?"true":"false",[h]),C=g.useCallback(_=>{let q;_==="null"?q=null:q=_==="true",o(v,w,q,u),m(!1),S?.onCellEditingStop?.()},[w,v,u,o,S]),j=g.useCallback(()=>{i(v,w),m(!1),S?.onCellEditingStop?.()},[v,w,i,S]),E=g.useCallback(_=>{m(_),!_&&r&&S?.onCellEditingStop?.()},[r,S]),N=g.useCallback(_=>{r&&!f&&(_.key==="Escape"?(_.preventDefault(),j()):_.key==="Tab"&&(_.preventDefault(),j(),S?.onCellEditingStop?.({direction:_.shiftKey?"left":"right"})))},[r,f,S,j]);g.useEffect(()=>{if(r){const _=setTimeout(()=>{k.current&&(m(!0),setTimeout(()=>{k.current&&y.current?.click()},0))},0);return()=>{clearTimeout(_),m(!1)}}},[r]),g.useEffect(()=>{l&&!r&&!S?.isScrolling&&x.current&&x.current.focus()},[l,r,S?.isScrolling]);const O=h==null?"NULL":h?"true":"false";return a.jsx(Le,{ref:x,cell:e,table:t,rowIndex:n,columnId:s,isEditing:r,isFocused:l,isSelected:c,onKeyDown:N,className:"p-0!",children:r?a.jsxs(de,{value:b,onValueChange:C,open:f,onOpenChange:E,children:[a.jsx(ue,{ref:y,className:"size-full px-2 py-1.5 rounded-none border-none p-0 shadow-none hover:bg-transparent! focus-visible:ring-0 dark:bg-transparent [&_svg]:hidden",children:a.jsx(fe,{})}),a.jsxs(he,{"data-grid-cell-editor":"",alignOffset:-8,sideOffset:-8,className:"min-w-[calc(var(--radix-select-trigger-width)+16px)]",onEscapeKeyDown:j,onPointerDownOutside:_=>{_.preventDefault(),m(!1),S?.onCellEditingStop?.()},children:[a.jsx(B,{value:"true",children:"true"}),a.jsx(B,{value:"false",children:"false"}),a.jsx(B,{value:"null",children:"NULL"})]})]}):a.jsx("span",{className:"flex items-center size-full px-2 py-1.5",children:O})})});ys.displayName="TableBooleanCell";const bs=g.memo(({cell:e,table:t,rowIndex:n,columnId:s,isEditing:r,isFocused:l,isSelected:c})=>{const{setUpdate:o,clearUpdate:i,getUpdate:d}=ye(),u=e.getValue(),[f,m]=g.useState(!1),x=g.useRef(null),y=g.useRef(null),k=g.useRef(r),S=t.options.meta,v=e.column.columnDef.meta?.enumValues;g.useEffect(()=>{k.current=r},[r]);const w=e.row.original,p=s,h=d(w,p),b=h?h.newValue:u,C=g.useCallback(_=>{o(w,p,_==="null"?null:_,u),m(!1),S?.onCellEditingStop?.()},[p,w,u,o,S]),j=g.useCallback(()=>{i(w,p),m(!1),S?.onCellEditingStop?.()},[w,p,i,S]),E=g.useCallback(_=>{m(_),!_&&r&&S?.onCellEditingStop?.()},[r,S]),N=g.useCallback(_=>{r&&!f&&(_.key==="Escape"?(_.preventDefault(),j()):_.key==="Tab"&&(_.preventDefault(),j(),S?.onCellEditingStop?.({direction:_.shiftKey?"left":"right"})))},[r,f,S,j]);g.useEffect(()=>{if(r){const _=setTimeout(()=>{k.current&&(m(!0),setTimeout(()=>{k.current&&y.current?.click()},0))},0);return()=>{clearTimeout(_),m(!1)}}},[r]),g.useEffect(()=>{l&&!r&&!S?.isScrolling&&x.current&&x.current.focus()},[l,r,S?.isScrolling]);const O=b??"NULL";return a.jsx(Le,{ref:x,cell:e,table:t,rowIndex:n,columnId:s,isEditing:r,isFocused:l,isSelected:c,onKeyDown:N,className:"p-0!",children:r?a.jsxs(de,{value:b===null?"null":b,onValueChange:C,open:f,onOpenChange:E,children:[a.jsx(ue,{ref:y,className:"size-full px-2 py-1.5 rounded-none border-none p-0 shadow-none hover:bg-transparent! focus-visible:ring-0 dark:bg-transparent [&_svg]:hidden",children:a.jsx(fe,{})}),a.jsxs(he,{"data-grid-cell-editor":"",alignOffset:-8,sideOffset:-8,className:"min-w-[calc(var(--radix-select-trigger-width)+16px)]",onEscapeKeyDown:j,onPointerDownOutside:_=>{_.preventDefault(),m(!1),S?.onCellEditingStop?.()},children:[v?.map(_=>a.jsx(B,{value:_,children:_},_)),a.jsx(B,{value:"null",children:"NULL"})]})]}):a.jsx("span",{className:"flex items-center size-full px-2 py-1.5 truncate",children:O})})});bs.displayName="TableEnumCell";const Cs=g.memo(({cell:e,table:t,rowIndex:n,columnId:s,isEditing:r,isFocused:l,isSelected:c})=>{const{setUpdate:o,clearUpdate:i,getUpdate:d}=ye(),u=e.getValue(),f=g.useRef(null),m=t.options.meta,x=e.row.original,y=s,k=d(x,y),S=k?k.newValue:u,v=g.useCallback(h=>{console.log("onDateChange",h,y,u);const b=h?h.toISOString():null;o(x,y,b,u),m?.onCellEditingStop?.()},[y,u,x,o,m]),w=g.useCallback(()=>{i(x,y),m?.onCellEditingStop?.()},[x,y,i,m,S,u]),p=g.useCallback(h=>{r&&(h.key==="Escape"||h.key==="Tab")&&(h.preventDefault(),w())},[r,w]);return g.useEffect(()=>{l&&!r&&!m?.isScrolling&&f.current&&f.current.focus()},[l,r,m?.isScrolling]),a.jsx(Le,{ref:f,cell:e,table:t,rowIndex:n,columnId:s,isEditing:r,isFocused:l,isSelected:c,onKeyDown:p,className:"p-0!",children:a.jsx(mt,{isFormatted:!1,icon:!1,value:S?new Date(S):void 0,onChange:v,placeholder:"Pick a date",className:"size-full px-2! py-1.5! rounded-none border-none p-0 shadow-none hover:bg-transparent! focus-visible:ring-0 dark:bg-transparent [&_svg]:hidden"})})});Cs.displayName="TableDateCell";const ws=g.memo(({cell:e,table:t,rowIndex:n,columnId:s,isEditing:r,isFocused:l,isSelected:c})=>{const{setUpdate:o,clearUpdate:i,getUpdate:d}=ye(),u=e.getValue();let f;if(typeof u=="string")try{f=JSON.parse(u),console.warn(`TableJsonCell ${s}: initialValue was a string, parsed it to object`,f)}catch(A){console.error(`TableJsonCell ${s}: Failed to parse initialValue string`,u,A),f={}}else f=u;g.useEffect(()=>{console.log(`TableJsonCell ${s} initialValue:`,typeof f,f)},[f,s]);const[m,x]=g.useState(()=>JSON.stringify(f,null,2)??""),[y,k]=g.useState(!1),S=g.useRef(null),v=g.useRef(null),w=t.options.meta,p=e.row.original,h=s,b=d(p,h),C=b?b.newValue:f,j=JSON.stringify(C),E=g.useCallback(()=>{console.log("onSave",{editorValue:m,initialValue:f,columnName:h,rowData:p});try{const A=JSON.parse(m);console.log("Parsed value:",typeof A,A),console.log("Initial value:",typeof f,f),o(p,h,A,f)}catch(A){console.error("Invalid JSON:",A);return}w?.onCellEditingStop?.(),k(!1)},[w,m,f,h,p,o]),N=g.useCallback(()=>{x(JSON.stringify(f,null,2)??""),i(p,h),w?.onCellEditingStop?.(),k(!1)},[w,f,h,p,i,m]),O=g.useCallback(A=>{const Q=A.target.value;console.log("onChange",Q,h,m,f),x(Q)},[h,m,f]),_=g.useCallback(A=>{if(k(A),!A){try{const Q=JSON.parse(m);JSON.stringify(Q)!==JSON.stringify(f)&&o(p,h,Q,f)}catch(Q){console.error("Invalid JSON on close:",Q)}w?.onCellEditingStop?.()}},[w,m,f,h,p,o]),q=g.useCallback(A=>{if(A.preventDefault(),S.current){S.current.focus();const Q=S.current.value.length;S.current.setSelectionRange(Q,Q)}},[]),G=g.useCallback(A=>{r&&!y&&(A.key==="Escape"?(A.preventDefault(),w?.onCellEditingStop?.()):A.key==="Tab"&&(A.preventDefault(),w?.onCellEditingStop?.({direction:A.shiftKey?"left":"right"})))},[r,y,w]),Y=g.useCallback(A=>{A.key==="Escape"?(A.preventDefault(),console.log("onTextareaKeyDown",A.key,m,f),N()):A.key==="Enter"&&(A.ctrlKey||A.metaKey)&&(A.preventDefault(),console.log("onTextareaKeyDown",A.key,m,f),E()),A.stopPropagation()},[N,E,m,f]),I=g.useCallback(()=>{try{const A=JSON.parse(m);JSON.stringify(A)!==JSON.stringify(f)&&o(p,h,A,f)}catch(A){console.error("Invalid JSON on blur:",A)}w?.onCellEditingStop?.(),k(!1)},[w,m,f,h,p,o]);return g.useEffect(()=>{r&&!y?(x(JSON.stringify(C,null,2)),k(!0)):!r&&y&&k(!1)},[r,y,C]),g.useEffect(()=>{l&&!r&&!w?.isScrolling&&v.current&&v.current.focus()},[l,r,w?.isScrolling]),Ye("enter",()=>E()),Ye("esc",()=>N()),a.jsxs(Be,{open:y,onOpenChange:_,children:[a.jsx(Tn,{asChild:!0,children:a.jsx(Le,{ref:v,cell:e,table:t,rowIndex:n,columnId:s,isEditing:r,isFocused:l,isSelected:c,onKeyDown:G,children:a.jsx("span",{"data-slot":"grid-cell-content",children:j})})}),a.jsxs(Ke,{"data-grid-cell-editor":"",align:"start",side:"bottom",sideOffset:0,className:"w-[400px] rounded-none p-0 gap-0",onOpenAutoFocus:q,children:[a.jsx(Se,{ref:S,value:m,onChange:O,onKeyDown:Y,onBlur:I,className:"min-h-[150px] resize-none rounded-none border-0 shadow-none focus-visible:ring-0",placeholder:"Enter JSON..."}),a.jsxs("div",{className:"flex flex-col border-t",children:[a.jsxs(R,{variant:"ghost",size:"sm",className:"rounded-none justify-start text-xs py-4 px-2",children:[a.jsx(ke,{className:"text-xs font-normal",children:"⌘↵"}),a.jsx("span",{className:"ml-1 text-xs",children:"Save Changes"})]}),a.jsxs(R,{variant:"ghost",size:"sm",className:"rounded-none justify-start text-xs py-4 px-2",children:[a.jsx(ke,{className:"text-xs font-normal",children:"esc"}),a.jsx("span",{className:"ml-1 text-xs",children:"Cancel Changes"})]})]})]})]})});ws.displayName="TableJsonCell";const li=({cell:e,table:t})=>{const n=t.options.meta,s=e.row.index,l=t.getRowModel().rows.findIndex(m=>m.original===e.row.original),c=l>=0?l:s,o=e.column.id,i=n?.focusedCell?.rowIndex===c&&n?.focusedCell?.columnId===o,d=n?.editingCell?.rowIndex===c&&n?.editingCell?.columnId===o,u=n?.getIsCellSelected?.(c,o)??!1;switch(e.column.columnDef.meta?.variant){case"text":return a.jsx(gt,{cell:e,table:t,rowIndex:c,columnId:o,isEditing:d,isFocused:i,isSelected:u});case"boolean":return a.jsx(ys,{cell:e,table:t,rowIndex:c,columnId:o,isEditing:d,isFocused:i,isSelected:u});case"number":return a.jsx(xs,{cell:e,table:t,rowIndex:c,columnId:o,isEditing:d,isFocused:i,isSelected:u});case"enum":return a.jsx(bs,{cell:e,table:t,rowIndex:c,columnId:o,isEditing:d,isFocused:i,isSelected:u});case"date":return a.jsx(Cs,{cell:e,table:t,rowIndex:c,columnId:o,isEditing:d,isFocused:i,isSelected:u});case"json":return a.jsx(ws,{cell:e,table:t,rowIndex:c,columnId:o,isEditing:d,isFocused:i,isSelected:u});case"array":return a.jsx(gt,{cell:e,table:t,rowIndex:c,columnId:o,isEditing:d,isFocused:i,isSelected:u});default:return a.jsx(gt,{cell:e,table:t,rowIndex:c,columnId:o,isEditing:d,isFocused:i,isSelected:u})}},ii=({columnVirtualizer:e,row:t,rowVirtualizer:n,virtualPaddingLeft:s,virtualPaddingRight:r,virtualRow:l})=>{const c=t.getVisibleCells(),o=e.getVirtualItems();return a.jsxs("tr",{"data-index":l.index,ref:i=>n.measureElement(i),className:"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",style:{transform:`translateY(${l.start}px)`},children:[s?a.jsx("td",{style:{display:"flex",width:s}}):null,o.map(i=>{const d=c[i.index];return a.jsx("td",{className:W("flex border-r border-zinc-800 h-8"),style:{width:i.index===0?"40px":d.column.getSize()},children:nt(d.column.columnDef.cell,d.getContext())},d.id)}),r?a.jsx("td",{style:{display:"flex",width:r}}):null]},t.id)},ci=({columnVirtualizer:e,table:t,tableContainerRef:n,virtualPaddingLeft:s,virtualPaddingRight:r})=>{const{rows:l}=t.getRowModel(),c=In({count:l.length,estimateSize:()=>33,getScrollElement:()=>n.current,measureElement:typeof window<"u"&&navigator.userAgent.indexOf("Firefox")===-1?i=>i?.getBoundingClientRect().height:void 0,overscan:5}),o=c.getVirtualItems();return a.jsx("tbody",{style:{display:"grid",height:`${c.getTotalSize()}px`,position:"relative"},children:o.map(i=>{const d=l[i.index];return a.jsx(ii,{columnVirtualizer:e,row:d,rowVirtualizer:c,virtualPaddingLeft:s,virtualPaddingRight:r,virtualRow:i},d.id)})})},di=g.memo(ui,(e,t)=>{const n=e.header.column,s=t.header.column;return!(n.getIsResizing()!==s.getIsResizing()||n.getSize()!==s.getSize()||e.label!==t.label)});function ui({header:e,table:t,label:n}){const s=t._getDefaultColumnDef(),r=g.useCallback(()=>{t.setColumnSizing(l=>{const c={...l};return delete c[e.column.id],c})},[e.column.id,t]);return a.jsx("div",{role:"separator","aria-orientation":"vertical","aria-label":`Resize ${n} column`,"aria-valuenow":e.column.getSize(),"aria-valuemin":s.minSize,"aria-valuemax":s.maxSize,tabIndex:0,className:W("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:r,onMouseDown:e.getResizeHandler(),onTouchStart:e.getResizeHandler()})}const fi=()=>{const e=at(),{selectedDatabase:t}=Ve(),{mutateAsync:n}=ot({mutationFn:async({tableName:r,columnName:l,cascade:c})=>{const o=new URLSearchParams({db:t??"",cascade:c?"true":"false"});return(await Ue.delete(`/tables/${encodeURIComponent(r)}/columns/${encodeURIComponent(l)}`,{params:o})).data.data},onSuccess:async(r,l)=>{await Promise.all([e.invalidateQueries({queryKey:[M.CACHE_KEYS.TABLE_COLUMNS,l.tableName],exact:!1}),e.invalidateQueries({queryKey:[M.CACHE_KEYS.TABLE_DATA,l.tableName],exact:!1}),e.invalidateQueries({queryKey:[M.CACHE_KEYS.TABLES_LIST],exact:!1})])},onError:r=>{console.error("Error deleting column:",r)}});return{deleteColumn:async({tableName:r,columnName:l,cascade:c})=>De.promise(n({tableName:r,columnName:l,cascade:c,db:""}),{loading:"Deleting column...",success:o=>o||"Column deleted successfully",error:o=>o.message||"Failed to delete column"})}},hi=({columnVirtualizer:e,headerGroup:t,virtualPaddingLeft:n,virtualPaddingRight:s,table:r})=>{const{table:l}=Bt.useParams(),[c,o]=g.useState(!1),[i,d]=g.useState(null),[u,f]=g.useState(!1),{deleteColumn:m}=fi(),[,x]=P(M.COLUMN_NAME),[,y]=P(M.TABLE_STATE_KEYS.SORT),[,k]=P(M.TABLE_STATE_KEYS.ORDER),[,S]=P(M.TABLE_STATE_KEYS.CURSOR),[,v]=P(M.TABLE_STATE_KEYS.DIRECTION),w=e.getVirtualItems(),p=r.getState().columnSizingInfo.isResizingColumn,h=g.useCallback(N=>O=>{O===null?(x(null),y(null),k(null)):(x(N),y(N),k(O==="desc"?"desc":"asc")),S(null),v(null)},[x,y,k,S,v]),b=g.useCallback(N=>{d(N),f(!1),o(!0)},[]),C=g.useCallback(N=>{o(N),N||(d(null),f(!1))},[]),j=g.useCallback(async()=>{!i||!l||(await m({tableName:l,columnName:i,cascade:u}),o(!1),d(null),f(!1))},[i,l,m,u]),E=g.useCallback(()=>{o(!1),d(null),f(!1)},[]);return a.jsxs(a.Fragment,{children:[a.jsxs("tr",{className:W("flex w-fit bg-black border-b items-center justify-between text-sm data-[state=open]:bg-accent/40 [&_svg]:size-4",p&&"pointer-events-none"),children:[n?a.jsx("th",{style:{display:"flex",width:n}}):null,w.map(N=>{const O=t.headers[N.index],_=O.column.columnDef.meta?.isPrimaryKey,q=O.column.columnDef.meta?.isForeignKey,G=O.column.columnDef.meta?.dataTypeLabel;return a.jsx("th",{className:"h-full flex",style:{display:"flex",width:N.index===0?"40px":O.getSize()},children:a.jsx("div",{className:W("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-zinc-800",O.column.getCanSort()?"cursor-pointer select-none":""),children:N.index===0?nt(O.column.columnDef.header,O.getContext()):a.jsxs(a.Fragment,{children:[a.jsxs(En,{children:[a.jsx(On,{asChild:!0,children:a.jsxs(R,{variant:"outline",className:"p-2 border-none w-full h-full bg-transparent! rounded-none justify-between",children:[a.jsxs("div",{className:"flex items-center gap-1",children:[_&&a.jsx(ur,{size:20,className:"text-primary"}),q&&a.jsx(Wn,{size:20,className:"text-primary"}),nt(O.column.columnDef.header,O.getContext())]}),a.jsxs("div",{className:"flex items-center gap-1",children:[G&&a.jsx("span",{className:"text-xs leading-none text-muted-foreground",children:G}),a.jsx("span",{className:"text-xs leading-none text-muted-foreground",children:{asc:a.jsx(An,{}),desc:a.jsx(fr,{})}[O.column.getIsSorted()]??null})]})]})}),a.jsxs(Mn,{className:"w-44",align:"start",children:[a.jsxs(sr,{children:[a.jsxs(Ne,{onClick:()=>h(O.column.id)("asc"),children:[a.jsx(hr,{}),"Sort ascending"]}),a.jsxs(Ne,{onClick:()=>h(O.column.id)("desc"),children:[a.jsx(mr,{}),"Sort descending"]}),O.column.getIsSorted()&&a.jsxs(Ne,{onClick:()=>h(O.column.id)(null),children:[a.jsx(yt,{}),"Remove sort"]})]}),a.jsx(rr,{}),a.jsxs(Ne,{variant:"destructive",onClick:()=>b(O.column.id),children:[a.jsx(gr,{}),"Delete column"]})]})]}),O.column.getCanResize()&&a.jsx(di,{header:O,table:r,label:O.column.id})]})})},O.id)}),s?a.jsx("th",{style:{display:"flex",width:s}}):null]},t.id),a.jsx(kr,{open:c,onOpenChange:C,children:a.jsxs(jr,{children:[a.jsxs(Nr,{children:[a.jsx(Dr,{children:"Delete Column"}),a.jsxs(Er,{children:['Are you sure you want to delete the column "',i,'"? This action cannot be undone and will permanently remove all data in this column.']})]}),a.jsxs("div",{className:"flex gap-2 py-2",children:[a.jsx(Pt,{id:"cascade-delete",checked:u,onCheckedChange:N=>f(N===!0)}),a.jsx(le,{htmlFor:"cascade-delete",className:"text-xs text-muted-foreground cursor-pointer",children:"Drop with CASCADE (also remove dependent indexes, constraints, and foreign key references)"})]}),a.jsxs(Or,{children:[a.jsx(Mr,{onClick:E,children:"Cancel"}),a.jsx(Tr,{variant:"destructive",onClick:j,children:"Delete"})]})]})})]})},mi=({columnVirtualizer:e,table:t,virtualPaddingLeft:n,virtualPaddingRight:s})=>a.jsx("thead",{className:"h-9 grid sticky top-0 z-10",children:t.getHeaderGroups().map(r=>a.jsx(hi,{columnVirtualizer:e,headerGroup:r,table:t,virtualPaddingLeft:n,virtualPaddingRight:s},r.id))}),gi=({table:e})=>{const t=e.getVisibleLeafColumns(),n=g.useRef(null),s=In({count:t.length,estimateSize:o=>t[o].getSize(),getScrollElement:()=>n.current,horizontal:!0,overscan:3}),r=s.getVirtualItems();let l,c;return s&&r?.length&&(l=r[0]?.start??0,c=s.getTotalSize()-(r[r.length-1]?.end??0)),a.jsx("div",{className:"w-full flex-1 overflow-auto",ref:n,style:{position:"relative"},children:a.jsxs("table",{style:{display:"grid"},children:[a.jsx(mi,{columnVirtualizer:s,table:e,virtualPaddingLeft:l,virtualPaddingRight:c}),a.jsx(ci,{columnVirtualizer:s,table:e,tableContainerRef:n,virtualPaddingLeft:l,virtualPaddingRight:c})]})})};function pi({className:e,...t}){return a.jsx("nav",{"aria-label":"pagination","data-slot":"pagination",className:W("mx-auto flex w-full justify-center",e),...t})}function xi({className:e,...t}){return a.jsx("ul",{"data-slot":"pagination-content",className:W("flex flex-row items-center gap-1",e),...t})}function vn({...e}){return a.jsx("li",{"data-slot":"pagination-item",...e})}const yi=({tableName:e})=>{const{sidebar:{isPinned:t,width:n}}=ar(),[s,r]=P(M.TABLE_STATE_KEYS.LIMIT),[,l]=P(M.TABLE_STATE_KEYS.CURSOR),[,c]=P(M.TABLE_STATE_KEYS.DIRECTION),{tableData:o}=wt({tableName:e}),i=o?.meta?.total??0,d=o?.data?.length??0,u=y=>{r(y),l(null),c(null)},f=()=>{o?.meta?.nextCursor&&(l(o.meta.nextCursor),c("asc"))},m=()=>{o?.meta?.prevCursor&&(l(o.meta.prevCursor),c("desc"))},x=()=>{l(null),c(null)};return a.jsxs("footer",{className:"fixed bottom-0 left-0 right-0 h-9 border-t border-zinc-800 flex items-center justify-between bg-black px-2 text-white",style:{marginLeft:t?`${n}px`:"0"},children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(le,{className:"text-xs text-zinc-400 whitespace-nowrap",children:"Rows per page"}),a.jsxs(de,{value:s?.toString()||"50",onValueChange:y=>{u(y)},children:[a.jsx(ue,{size:"sm",className:"h-6 text-xs px-2 border-none bg-transparent! shadow-none hover:bg-transparent! gap-2",children:a.jsx(fe,{placeholder:"Select number of results"})}),a.jsx(he,{className:"[&_*[role=option]]:ps-2 [&_*[role=option]]:pe-8 [&_*[role=option]>span]:start-auto [&_*[role=option]>span]:end-2 border-zinc-800",children:[5,10,25,50].map(y=>a.jsx(B,{value:y.toString(),children:y},y))})]})]}),a.jsx("div",{className:"flex items-center justify-center text-xs text-zinc-400",children:a.jsxs("p",{className:"whitespace-nowrap","aria-live":"polite",children:["Showing ",a.jsx("span",{className:"text-zinc-200",children:d})," of"," ",a.jsx("span",{className:"text-zinc-200",children:i})," rows"]})}),a.jsxs("div",{className:"flex items-center gap-0.5",children:[a.jsx(R,{size:"sm",variant:"ghost",className:"h-6 w-6 disabled:opacity-30",onClick:x,disabled:!o?.meta?.hasPreviousPage||i===0,"aria-label":"Go to first page",children:a.jsx(pr,{"aria-hidden":"true"})}),a.jsx(pi,{children:a.jsxs(xi,{className:"gap-0.5",children:[a.jsx(vn,{children:a.jsx(R,{size:"icon-sm",variant:"ghost",className:"h-6 w-6 disabled:opacity-30",onClick:m,disabled:!o?.meta?.hasPreviousPage||i===0,"aria-label":"Go to previous page",children:a.jsx(_n,{"aria-hidden":"true"})})}),a.jsx(vn,{children:a.jsx(R,{size:"icon-sm",variant:"ghost",className:"h-6 w-6 disabled:opacity-30",onClick:f,disabled:!o?.meta?.hasNextPage||i===0,"aria-label":"Go to next page",children:a.jsx(Rn,{"aria-hidden":"true"})})})]})})]})]})},bi=()=>({id:"select",accessorKey:"select",header:({table:e})=>a.jsx("div",{className:"w-full h-full flex items-center justify-center",children:a.jsx(Pt,{checked:e.getIsAllRowsSelected(),onCheckedChange:()=>e.toggleAllRowsSelected()})}),cell:({row:e})=>a.jsx("div",{className:"w-full h-full flex items-center justify-center",children:a.jsx(Pt,{checked:e.getIsSelected(),onCheckedChange:()=>e.toggleSelected()})}),size:20,enableSorting:!1}),Ci=({tableName:e})=>{const[t]=P(M.COLUMN_NAME),[n]=P(M.TABLE_STATE_KEYS.ORDER),{tableData:s,isLoadingTableData:r,errorTableData:l}=wt({tableName:e}),{tableCols:c,isLoadingTableCols:o,errorTableCols:i}=Ee({tableName:e}),[d,u]=g.useState({}),[f,m]=g.useState({}),[x,y]=g.useState(null),[k,S]=g.useState(null),v=g.useMemo(()=>bi(),[]),w=g.useMemo(()=>[v,...c?.map(I=>({accessorKey:I.columnName,header:I.columnName,meta:{variant:I.enumValues?"enum":I.dataType,isPrimaryKey:I.isPrimaryKey,isForeignKey:I.isForeignKey,referencedTable:I.referencedTable,referencedColumn:I.referencedColumn,enumValues:I.enumValues,dataTypeLabel:I.dataTypeLabel},size:(I.columnName.length+(I.dataTypeLabel?.length||0))*5+100,minSize:100,maxSize:500}))||[]],[c,v]);g.useEffect(()=>{u({})},[e]);const p=g.useMemo(()=>t&&n?[{id:t,desc:n==="desc"}]:[],[t,n]),h=g.useMemo(()=>s?.data||[],[s?.data]),b=g.useCallback((I,A)=>{y({rowIndex:I,columnId:A})},[]),C=g.useCallback((I,A)=>{S({rowIndex:I,columnId:A})},[]),j=g.useCallback((I,A)=>{S({rowIndex:I,columnId:A})},[]),E=g.useCallback(()=>{S(null)},[]),N=g.useCallback(I=>{console.log("Data update:",I)},[]),O=g.useCallback(()=>!1,[]),_=g.useMemo(()=>({focusedCell:x,editingCell:k,onCellClick:b,onCellDoubleClick:C,onCellEditingStart:j,onCellEditingStop:E,onDataUpdate:N,getIsCellSelected:O}),[x,k,b,C,j,E,N,O]),q=Yn({data:h,columns:w,defaultColumn:{cell:li,size:50,minSize:100,maxSize:500},getCoreRowModel:Pn(),getSortedRowModel:Rr(),state:{sorting:p,rowSelection:d,columnSizing:f},manualSorting:!1,enableRowSelection:!0,enableMultiRowSelection:!0,enableColumnResizing:!0,columnResizeMode:"onChange",onRowSelectionChange:u,onColumnSizingChange:m,meta:_});if(r||o)return a.jsx("div",{className:"size-full flex items-center justify-center",children:a.jsx(Dn,{size:"size-7"})});if(l||i){const I=l||i,A=I?.message||"",Q=A.includes("does not exist")||A.includes("404")||I?.status===404,qe=A.includes("Network Error")||A.includes("Failed to fetch");let Z="Something went wrong",ee=A||"An unexpected error occurred";return Q?(Z="Table not found",ee=A||`The table "${e}" does not exist or has been deleted`):qe&&(Z="Connection failed",ee="Unable to connect to the database server. Please check your connection."),a.jsx("div",{className:"size-full flex flex-col items-center justify-center",children:a.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-2",children:[a.jsx("div",{className:"text-sm font-medium",children:Z}),a.jsx("div",{className:"text-sm text-muted-foreground",children:ee})]})})}const G=!s||!s.data||s.data.length===0,Y=q.getSelectedRowModel().rows;return G?a.jsxs("div",{className:"size-full flex flex-col items-center justify-center",children:[a.jsx(wn,{selectedRows:Y,setRowSelection:u,tableName:e}),a.jsxs("div",{className:"text-sm text-muted-foreground flex-1 flex items-center justify-center",children:['No data available for "',e,'" table']})]}):a.jsxs("div",{className:"flex-1 w-full flex flex-col overflow-hidden",children:[a.jsx(wn,{selectedRows:Y,setRowSelection:u,tableName:e}),a.jsx(gi,{table:q}),a.jsx(yi,{tableName:e})]})};function Mi(){const{table:e}=Bt.useParams();return a.jsxs("main",{className:"flex-1 flex flex-col overflow-hidden",children:[a.jsx(Ci,{tableName:e}),a.jsx(Vl,{tableName:e}),a.jsx(Gl,{tableName:e}),a.jsx(Ll,{tableName:e}),a.jsx(Jl,{tableName:e}),a.jsx(ql,{tableName:e})]})}export{Mi as component};