ivt 0.0.3 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/dist/accordion/index.mjs +1 -1
  2. package/dist/badge/index.mjs +1 -1
  3. package/dist/base/index.mjs +1 -1
  4. package/dist/base/index.mjs.map +1 -1
  5. package/dist/button/index.d.ts +1 -1
  6. package/dist/button/index.mjs +1 -1
  7. package/dist/calendar/index.d.ts +11 -0
  8. package/dist/calendar/index.mjs +2 -0
  9. package/dist/calendar/index.mjs.map +1 -0
  10. package/dist/card/index.d.ts +12 -0
  11. package/dist/card/index.mjs +2 -0
  12. package/dist/card/index.mjs.map +1 -0
  13. package/dist/checkbox/index.mjs +1 -1
  14. package/dist/checkbox/index.mjs.map +1 -1
  15. package/dist/chunks/{TextWrap-B2WOcyfj.mjs → TextWrap-apUajb0q.mjs} +2 -2
  16. package/dist/chunks/{TextWrap-B2WOcyfj.mjs.map → TextWrap-apUajb0q.mjs.map} +1 -1
  17. package/dist/chunks/accordion-CQGSj-IW.mjs +2 -0
  18. package/dist/chunks/{accordion-CEMX6Rna.mjs.map → accordion-CQGSj-IW.mjs.map} +1 -1
  19. package/dist/chunks/{bundle-mjs-HknDzN6Z.mjs → bundle-mjs-CtG6Smj_.mjs} +1 -1
  20. package/dist/chunks/{bundle-mjs-HknDzN6Z.mjs.map → bundle-mjs-CtG6Smj_.mjs.map} +1 -1
  21. package/dist/chunks/{button-DR1cWE8S.mjs → button-D_c_ntEX.mjs} +2 -2
  22. package/dist/chunks/{button-DR1cWE8S.mjs.map → button-D_c_ntEX.mjs.map} +1 -1
  23. package/dist/chunks/check-DjRtCxG6.mjs +2 -0
  24. package/dist/chunks/{check-wZkDbgjO.mjs.map → check-DjRtCxG6.mjs.map} +1 -1
  25. package/dist/chunks/chevron-down-BCzo9yB2.mjs +2 -0
  26. package/dist/chunks/{chevron-down-BbjHXP7j.mjs.map → chevron-down-BCzo9yB2.mjs.map} +1 -1
  27. package/dist/chunks/chevron-left-DUJqO1vN.mjs +2 -0
  28. package/dist/chunks/chevron-left-DUJqO1vN.mjs.map +1 -0
  29. package/dist/chunks/chevron-right-CoNJE7ZW.mjs +2 -0
  30. package/dist/chunks/{chevron-right-NuCkf5RR.mjs.map → chevron-right-CoNJE7ZW.mjs.map} +1 -1
  31. package/dist/chunks/command-eoEJKrZQ.mjs +2 -0
  32. package/dist/chunks/command-eoEJKrZQ.mjs.map +1 -0
  33. package/dist/chunks/{createLucideIcon-DHet3kMe.mjs → createLucideIcon-CIn9dHnW.mjs} +1 -1
  34. package/dist/chunks/{createLucideIcon-DHet3kMe.mjs.map → createLucideIcon-CIn9dHnW.mjs.map} +1 -1
  35. package/dist/chunks/dialog-TKsk0Iu2.mjs +2 -0
  36. package/dist/chunks/{dialog-B7nAaDwF.mjs.map → dialog-TKsk0Iu2.mjs.map} +1 -1
  37. package/dist/chunks/index-B98y16WE.mjs +2 -0
  38. package/dist/chunks/index-B98y16WE.mjs.map +1 -0
  39. package/dist/chunks/{index-B25rp7IZ.mjs → index-BpJwNLRW.mjs} +1 -1
  40. package/dist/chunks/{index-B25rp7IZ.mjs.map → index-BpJwNLRW.mjs.map} +1 -1
  41. package/dist/chunks/index-C598HM8V.mjs +2 -0
  42. package/dist/chunks/index-C598HM8V.mjs.map +1 -0
  43. package/dist/chunks/index-CCYyT_rk.mjs +2 -0
  44. package/dist/chunks/index-CCYyT_rk.mjs.map +1 -0
  45. package/dist/chunks/index-CX5r7IKM.mjs +2 -0
  46. package/dist/chunks/index-CX5r7IKM.mjs.map +1 -0
  47. package/dist/chunks/{index-D6Orj-nf.mjs → index-CXrD_SvM.mjs} +2 -2
  48. package/dist/chunks/{index-D6Orj-nf.mjs.map → index-CXrD_SvM.mjs.map} +1 -1
  49. package/dist/chunks/index-ChLuxn93.mjs +2 -0
  50. package/dist/chunks/index-ChLuxn93.mjs.map +1 -0
  51. package/dist/chunks/index-CluuXDB_.mjs +2 -0
  52. package/dist/chunks/index-CluuXDB_.mjs.map +1 -0
  53. package/dist/chunks/{index-CJMeIDw8.mjs → index-D-s-TbR3.mjs} +2 -2
  54. package/dist/chunks/{index-CJMeIDw8.mjs.map → index-D-s-TbR3.mjs.map} +1 -1
  55. package/dist/chunks/index-DOx7g1Qo.mjs +2 -0
  56. package/dist/chunks/{index-EftYm3Nj.mjs.map → index-DOx7g1Qo.mjs.map} +1 -1
  57. package/dist/chunks/{index-BsTRBWyW.mjs → index-Db2NO0t8.mjs} +2 -2
  58. package/dist/chunks/{index-BsTRBWyW.mjs.map → index-Db2NO0t8.mjs.map} +1 -1
  59. package/dist/chunks/{index-Cv2row07.mjs → index-DxtdpBCb.mjs} +1 -1
  60. package/dist/chunks/{index-Cv2row07.mjs.map → index-DxtdpBCb.mjs.map} +1 -1
  61. package/dist/chunks/{index-CjcSvOxo.mjs → index-DzMQps4Q.mjs} +2 -2
  62. package/dist/chunks/{index-CjcSvOxo.mjs.map → index-DzMQps4Q.mjs.map} +1 -1
  63. package/dist/chunks/{input-B2w6lnoj.mjs → input-BxTp3Q5l.mjs} +2 -2
  64. package/dist/chunks/{input-B2w6lnoj.mjs.map → input-BxTp3Q5l.mjs.map} +1 -1
  65. package/dist/chunks/{label-DXr1d22R.mjs → label-BhQUf4a7.mjs} +2 -2
  66. package/dist/chunks/{label-DXr1d22R.mjs.map → label-BhQUf4a7.mjs.map} +1 -1
  67. package/dist/chunks/pagination-qTGmkoRO.mjs +2 -0
  68. package/dist/chunks/pagination-qTGmkoRO.mjs.map +1 -0
  69. package/dist/chunks/popover-DDPhp0Sa.mjs +2 -0
  70. package/dist/chunks/{popover-BDcGFNWg.mjs.map → popover-DDPhp0Sa.mjs.map} +1 -1
  71. package/dist/chunks/progress-C_yWLgAi.mjs +2 -0
  72. package/dist/chunks/progress-C_yWLgAi.mjs.map +1 -0
  73. package/dist/chunks/scroll-area-CuX49k8h.mjs +2 -0
  74. package/dist/chunks/{scroll-area-BEfzUuiC.mjs.map → scroll-area-CuX49k8h.mjs.map} +1 -1
  75. package/dist/chunks/{select-ByQjLEt1.mjs → select-BydKi4E_.mjs} +2 -2
  76. package/dist/chunks/{select-ByQjLEt1.mjs.map → select-BydKi4E_.mjs.map} +1 -1
  77. package/dist/chunks/{skeleton-BiE2soDg.mjs → skeleton-BFnps3wE.mjs} +2 -2
  78. package/dist/chunks/{skeleton-BiE2soDg.mjs.map → skeleton-BFnps3wE.mjs.map} +1 -1
  79. package/dist/chunks/sortable-7DK1K35h.mjs +2 -0
  80. package/dist/chunks/sortable-7DK1K35h.mjs.map +1 -0
  81. package/dist/chunks/{table-yo_IkKny.mjs → table-DRvqJktC.mjs} +2 -2
  82. package/dist/chunks/{table-yo_IkKny.mjs.map → table-DRvqJktC.mjs.map} +1 -1
  83. package/dist/chunks/tslib.es6-Cx3xzITX.mjs +2 -0
  84. package/dist/chunks/tslib.es6-Cx3xzITX.mjs.map +1 -0
  85. package/dist/chunks/utils-jIFl11as.mjs +2 -0
  86. package/dist/chunks/utils-jIFl11as.mjs.map +1 -0
  87. package/dist/chunks/x-xnz0lTd-.mjs +2 -0
  88. package/dist/chunks/x-xnz0lTd-.mjs.map +1 -0
  89. package/dist/command/index.mjs +1 -1
  90. package/dist/data-table/index.d.ts +21 -5
  91. package/dist/data-table/index.mjs +1 -1
  92. package/dist/data-table/index.mjs.map +1 -1
  93. package/dist/dialog/index.mjs +1 -1
  94. package/dist/dropdown-menu/index.mjs +1 -1
  95. package/dist/dropdown-menu/index.mjs.map +1 -1
  96. package/dist/dropzone/index.d.ts +84 -0
  97. package/dist/dropzone/index.mjs +7 -0
  98. package/dist/dropzone/index.mjs.map +1 -0
  99. package/dist/form/index.mjs +1 -1
  100. package/dist/icon/index.mjs +1 -1
  101. package/dist/index.css +2 -2
  102. package/dist/input/index.mjs +1 -1
  103. package/dist/label/index.mjs +1 -1
  104. package/dist/pagination/index.mjs +1 -1
  105. package/dist/popover/index.mjs +1 -1
  106. package/dist/progress/index.d.ts +7 -0
  107. package/dist/progress/index.mjs +2 -0
  108. package/dist/progress/index.mjs.map +1 -0
  109. package/dist/scroll-area/index.mjs +1 -1
  110. package/dist/select/index.mjs +1 -1
  111. package/dist/separator/index.mjs +1 -1
  112. package/dist/sheet/index.mjs +1 -1
  113. package/dist/sheet/index.mjs.map +1 -1
  114. package/dist/skeleton/index.mjs +1 -1
  115. package/dist/sortable/index.d.ts +109 -0
  116. package/dist/sortable/index.mjs +2 -0
  117. package/dist/sortable/index.mjs.map +1 -0
  118. package/dist/table/index.mjs +1 -1
  119. package/dist/tabs/index.d.ts +10 -0
  120. package/dist/tabs/index.mjs +2 -0
  121. package/dist/tabs/index.mjs.map +1 -0
  122. package/dist/toast/index.d.ts +20 -0
  123. package/dist/toast/index.mjs +2 -0
  124. package/dist/toast/index.mjs.map +1 -0
  125. package/dist/tooltip/index.mjs +1 -1
  126. package/dist/tooltip/index.mjs.map +1 -1
  127. package/package.json +47 -2
  128. package/dist/chunks/accordion-CEMX6Rna.mjs +0 -2
  129. package/dist/chunks/check-wZkDbgjO.mjs +0 -2
  130. package/dist/chunks/chevron-down-BbjHXP7j.mjs +0 -2
  131. package/dist/chunks/chevron-right-NuCkf5RR.mjs +0 -2
  132. package/dist/chunks/command-BvsI_sq9.mjs +0 -2
  133. package/dist/chunks/command-BvsI_sq9.mjs.map +0 -1
  134. package/dist/chunks/dialog-B7nAaDwF.mjs +0 -2
  135. package/dist/chunks/index-BESNMrh8.mjs +0 -2
  136. package/dist/chunks/index-BESNMrh8.mjs.map +0 -1
  137. package/dist/chunks/index-D5hJSEl1.mjs +0 -2
  138. package/dist/chunks/index-D5hJSEl1.mjs.map +0 -1
  139. package/dist/chunks/index-EftYm3Nj.mjs +0 -2
  140. package/dist/chunks/index-ew5utTUc.mjs +0 -2
  141. package/dist/chunks/index-ew5utTUc.mjs.map +0 -1
  142. package/dist/chunks/pagination-Cgu8tTUI.mjs +0 -2
  143. package/dist/chunks/pagination-Cgu8tTUI.mjs.map +0 -1
  144. package/dist/chunks/popover-BDcGFNWg.mjs +0 -2
  145. package/dist/chunks/scroll-area-BEfzUuiC.mjs +0 -2
  146. package/dist/chunks/utils-BpbSpG2q.mjs +0 -2
  147. package/dist/chunks/utils-BpbSpG2q.mjs.map +0 -1
@@ -1,2 +1,2 @@
1
- import*as e from"react";import t,{forwardRef as a,createElement as n,useRef as l}from"react";import{c as r}from"../chunks/utils-BpbSpG2q.mjs";import{P as s,a as c,b as m}from"../chunks/popover-BDcGFNWg.mjs";import{B as o}from"../chunks/button-DR1cWE8S.mjs";import{C as i}from"../chunks/chevron-down-BbjHXP7j.mjs";import{C as u,b as d,c as p,d as g,e as h,f,S as E}from"../chunks/command-BvsI_sq9.mjs";import{C as w}from"../chunks/check-wZkDbgjO.mjs";import{I as N}from"../chunks/input-B2w6lnoj.mjs";import{T as k}from"../chunks/TextWrap-B2WOcyfj.mjs";import{e as x,f as y,T as b,a as v,d as C,b as S}from"../chunks/table-yo_IkKny.mjs";import{S as j}from"../chunks/skeleton-BiE2soDg.mjs";import{S as R,h as z,i as P,a as A,c as M}from"../chunks/select-ByQjLEt1.mjs";import{C as $,c as F,f as I}from"../chunks/pagination-Cgu8tTUI.mjs";import{C as L}from"../chunks/chevron-right-NuCkf5RR.mjs";import{S as V,a as T}from"../chunks/scroll-area-BEfzUuiC.mjs";import{c as O}from"../chunks/createLucideIcon-DHet3kMe.mjs";import"../chunks/bundle-mjs-HknDzN6Z.mjs";import"../chunks/index-ew5utTUc.mjs";import"react/jsx-runtime";import"../chunks/index-D6Orj-nf.mjs";import"../chunks/index-Cv2row07.mjs";import"react-dom";import"@radix-ui/react-slot";import"../chunks/index-BESNMrh8.mjs";import"../chunks/index-BsTRBWyW.mjs";import"../chunks/index-EftYm3Nj.mjs";import"../chunks/index-CjcSvOxo.mjs";import"../chunks/index-CJMeIDw8.mjs";import"class-variance-authority";import"../chunks/index-D5hJSEl1.mjs";import"../chunks/dialog-B7nAaDwF.mjs";import"@radix-ui/react-select";import"../chunks/index-B25rp7IZ.mjs";const q=O("ArrowDown",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]),W=O("ArrowUp",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);function B({table:t,transformColumnName:a}){const n=e.useRef(null);return e.createElement(s,{modal:!0},e.createElement(c,{asChild:!0},e.createElement(o,{ref:n,"aria-label":"Toggle columns",variant:"outline"},"Colunas",e.createElement(i,{className:"h-4 w-4"}))),e.createElement(m,{align:"end",className:"w-44 p-0",onCloseAutoFocus:()=>n.current?.focus()},e.createElement(u,null,e.createElement(d,{placeholder:"Pesquisar colunas..."}),e.createElement(p,null,e.createElement(g,null,"Nenhuma coluna encontrada."),e.createElement(h,null,t.getAllColumns().filter((e=>void 0!==e.accessorFn&&e.getCanHide())).map((t=>e.createElement(f,{key:t.id,onSelect:()=>t.toggleVisibility(!t.getIsVisible())},e.createElement("span",{className:"truncate"},a?a(t.id):t.id),e.createElement(w,{className:r("ml-auto size-4 shrink-0",t.getIsVisible()?"opacity-100":"opacity-0")})))))))))}function D({table:e,keySearch:t,placeholder:a}){return React.createElement("div",{className:"relative w-full max-w-sm"},React.createElement(E,{className:"text-muted-foreground absolute top-3 left-3 h-4 w-4"}),React.createElement(N,{placeholder:a,value:e.getColumn(t)?.getFilterValue()??"",onChange:a=>e.getColumn(t)?.setFilterValue(a.target.value),className:"w-full pl-8 xl:w-80"}))}var Z=["color"],H=a((function(e,t){var a=e.color,l=void 0===a?"currentColor":a,r=function(e,t){if(null==e)return{};var a,n,l={},r=Object.keys(e);for(n=0;n<r.length;n++)a=r[n],t.indexOf(a)>=0||(l[a]=e[a]);return l}(e,Z);return n("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},r,{ref:t}),n("path",{d:"M4.93179 5.43179C4.75605 5.60753 4.75605 5.89245 4.93179 6.06819C5.10753 6.24392 5.39245 6.24392 5.56819 6.06819L7.49999 4.13638L9.43179 6.06819C9.60753 6.24392 9.89245 6.24392 10.0682 6.06819C10.2439 5.89245 10.2439 5.60753 10.0682 5.43179L7.81819 3.18179C7.73379 3.0974 7.61933 3.04999 7.49999 3.04999C7.38064 3.04999 7.26618 3.0974 7.18179 3.18179L4.93179 5.43179ZM10.0682 9.56819C10.2439 9.39245 10.2439 9.10753 10.0682 8.93179C9.89245 8.75606 9.60753 8.75606 9.43179 8.93179L7.49999 10.8636L5.56819 8.93179C5.39245 8.75606 5.10753 8.75606 4.93179 8.93179C4.75605 9.10753 4.75605 9.39245 4.93179 9.56819L7.18179 11.8182C7.35753 11.9939 7.64245 11.9939 7.81819 11.8182L10.0682 9.56819Z",fill:l,fillRule:"evenodd",clipRule:"evenodd"}))}));function G(t,a){return t?function(e){return"function"==typeof e&&(()=>{const t=Object.getPrototypeOf(e);return t.prototype&&t.prototype.isReactComponent})()}(n=t)||"function"==typeof n||function(e){return"object"==typeof e&&"symbol"==typeof e.$$typeof&&["react.memo","react.forward_ref"].includes(e.$$typeof.description)}(n)?e.createElement(t,a):t:null;var n}function Q(e){const{columnCount:t,rowCount:a=8,cellWidths:n=["auto"],shrinkZero:l=!1}=e;return React.createElement(React.Fragment,null,Array.from({length:a}).map(((e,a)=>React.createElement(x,{key:`row-${String(a)}`,className:"hover:bg-transparent"},Array.from({length:t}).map(((e,t)=>React.createElement(y,{key:`cell-${String(a)}-${t}`,style:{width:n[t],minWidth:l?n[t]:"auto"}},React.createElement(j,{className:"h-6 w-full"}))))))))}function U({className:e}){return React.createElement("div",{className:"mt-4 flex flex-wrap items-center justify-between gap-2"},React.createElement(j,{className:r("h-5 w-40",e)}),React.createElement("div",{className:"flex flex-wrap items-center justify-between gap-2 gap-y-4"},React.createElement(j,{className:r("h-10 w-28",e)}),React.createElement(j,{className:r("h-9 w-[16rem]",e)})))}function _({table:e,pageSizeOptions:a=[20,30,50,100,200],dataLabel:n="Fundos"}){const l=a[0],r=e.getState().pagination.pageIndex+1,s=e.getRowCount(),c=Math.ceil(s/e.getState().pagination.pageSize);return t.createElement("div",{className:"mt-4 flex flex-wrap items-center justify-between gap-2"},t.createElement("div",{className:"text-muted-foreground flex gap-1 text-sm"},t.createElement("p",{className:"ml-2"},"Mostrando ",e.getRowModel().rows.length.toLocaleString()," de"," ",s," ",n,".")),t.createElement("div",{className:"flex flex-wrap items-center justify-between gap-2 gap-y-4"},t.createElement(R,{value:String(e.getState().pagination.pageSize)||String(l),onValueChange:t=>e.setPageSize(Number(t))},t.createElement(z,{className:"w-fit"},t.createElement(P,{placeholder:`Mostrar ${e.getState().pagination.pageSize||l}`})),t.createElement(A,null,s&&(0===s||s<l)?t.createElement(M,{value:String(l)},"Mostrar ",l):t.createElement(t.Fragment,null,a.map((e=>t.createElement(M,{key:e,value:String(e)},"Mostrar ",e)))))),t.createElement("div",{className:"flex flex-wrap gap-2 gap-y-4"},t.createElement(o,{variant:"ghost",onClick:()=>e.previousPage(),disabled:!e.getCanPreviousPage(),"aria-label":"Ir para página anterior",className:"gap-1"},t.createElement($,{className:"size-4"}),"Anterior"),t.createElement("div",{className:"flex gap-2"},(()=>{const a=[];if(c<=3)for(let n=1;n<=c;n++)a.push(t.createElement(o,{variant:r===n?"outline":"ghost",key:n,onClick:()=>e.setPageIndex(n-1),className:"size-9"},n));else{a.push(t.createElement(o,{variant:1===r?"outline":"ghost",key:1,onClick:()=>e.setPageIndex(0),className:"size-9"},"1"));const n=Math.max(2,Math.min(r,c-2)),l=Math.min(c-1,n+3-2);n>2&&a.push(t.createElement(F,{key:"ellipsis-start",className:"list-none"},t.createElement(I,null)));for(let s=n;s<=l;s++)a.push(t.createElement(o,{variant:r===s?"outline":"ghost",key:s,onClick:()=>e.setPageIndex(s-1),className:"size-9"},s));l<c-1&&a.push(t.createElement(F,{key:"ellipsis-end",className:"list-none"},t.createElement(I,null))),a.push(t.createElement(o,{variant:r===c?"outline":"ghost",key:c,onClick:()=>e.setPageIndex(c-1)},c))}return a})()),t.createElement(o,{variant:"ghost",onClick:()=>e.nextPage(),disabled:!e.getCanNextPage(),"aria-label":"Ir para próxima página",className:"gap-1"},"Próximo",t.createElement(L,{className:"size-4"})))))}const J=({table:e,columns:a,isLoadingTable:n,setQueryParams:l,dataLabel:r,actionColumns:s=[]})=>{const c=Number(e.getState().pagination.pageIndex).toString(),m=Number(e.getState().pagination.pageSize).toString(),o=e.getState().sorting;return t.useEffect((()=>{if(!l)return;const e={sortingBy:"",order:""};o.length>0&&(e.sortingBy=o[0].id,e.order=o[0].desc?"DESC":"ASC"),l((t=>({...t,pageSize:m,page:c,...e})))}),[c,m,l,o]),t.createElement(t.Fragment,null,t.createElement(V,{className:"bg-background w-full rounded-md border whitespace-nowrap"},t.createElement(b,null,t.createElement(v,{className:"group rounded-md"},e.getHeaderGroups().map((e=>t.createElement(x,{key:e.id},e.headers.map((e=>{const{column:{id:a}}=e,n=["actions",...s].includes(a);return t.createElement(C,{key:e.id},e.isPlaceholder?null:t.createElement(t.Fragment,null,t.createElement("div",{className:!n&&e.column.getCanSort()?"flex w-full items-center justify-start cursor-pointer gap-1 font-medium":"",onClick:n?void 0:e.column.getToggleSortingHandler()},G(e.column.columnDef.header,e.getContext()),(!n&&e.column.getCanSort()&&{asc:t.createElement(q,{className:"h-3.5 w-3.5"}),desc:t.createElement(W,{className:"h-3.5 w-3.5"}),false:t.createElement(H,{className:"h-4 w-4"})}[e.column.getIsSorted()])??t.createElement(q,{className:"h-3.5 w-3.5"}))))})))))),t.createElement(S,null,!n&&e.getRowModel().rows?.length?e.getRowModel().rows.map((e=>t.createElement(x,{key:e.id,"data-state":e.getIsSelected()&&"selected",className:"even:bg-body/50"},e.getVisibleCells().map((e=>t.createElement(y,{key:e.id,className:"p-2"},t.createElement(k,null,G(e.column.columnDef.cell,e.getContext())))))))):n?t.createElement(Q,{columnCount:e.getAllColumns().length}):t.createElement(x,null,t.createElement(y,{colSpan:a.length,className:"h-24 text-center"},"Sem resultados")))),t.createElement(T,{orientation:"horizontal"})),n?t.createElement(U,null):t.createElement(_,{table:e,dataLabel:r}))};function K(e){const{columnCount:a,rowCount:n=10,searchableColumnCount:l=0,filterableColumnCount:s=0,showViewOptions:c=!0,cellWidths:m=["auto"],withPagination:o=!0,shrinkZero:i=!1,className:u,...d}=e;return t.createElement("div",{className:r("w-full space-y-2.5 overflow-auto",u),...d},t.createElement("div",{className:"flex w-full items-center justify-between space-x-2 overflow-auto p-1"},t.createElement("div",{className:"flex flex-1 items-center space-x-2"},l>0?Array.from({length:l}).map(((e,a)=>t.createElement(j,{key:`${String(a)}`,className:"h-7 w-40 lg:w-60"}))):null,s>0?Array.from({length:s}).map(((e,a)=>t.createElement(j,{key:`${String(a)}`,className:"h-7 w-[4.5rem] border-dashed"}))):null),c?t.createElement(j,{className:"ml-auto hidden h-7 w-[4.5rem] lg:flex"}):null),t.createElement("div",{className:"rounded-md border"},t.createElement(b,null,t.createElement(v,null,Array.from({length:1}).map(((e,n)=>t.createElement(x,{key:`${String(n)}`,className:"hover:bg-transparent"},Array.from({length:a}).map(((e,a)=>t.createElement(C,{key:`${String(a)}`,style:{width:m[a],minWidth:i?m[a]:"auto"}},t.createElement(j,{className:"h-6 w-full"})))))))),t.createElement(S,null,Array.from({length:n}).map(((e,n)=>t.createElement(x,{key:`${String(n)}`,className:"hover:bg-transparent"},Array.from({length:a}).map(((e,a)=>t.createElement(y,{key:`${String(a)}`,style:{width:m[a],minWidth:i?m[a]:"auto"}},t.createElement(j,{className:"h-6 w-full"})))))))))),o?t.createElement("div",{className:"flex w-full items-center justify-between gap-4 overflow-auto p-1 sm:gap-8"},t.createElement(j,{className:"h-7 w-40 shrink-0"}),t.createElement("div",{className:"flex items-center gap-4 sm:gap-6 lg:gap-8"},t.createElement("div",{className:"flex items-center space-x-2"},t.createElement(j,{className:"h-7 w-24"}),t.createElement(j,{className:"h-7 w-[4.5rem]"})),t.createElement("div",{className:"flex items-center justify-center text-sm font-medium"},t.createElement(j,{className:"h-7 w-20"})),t.createElement("div",{className:"flex items-center space-x-2"},t.createElement(j,{className:"hidden size-7 lg:block"}),t.createElement(j,{className:"size-7"}),t.createElement(j,{className:"size-7"}),t.createElement(j,{className:"hidden size-7 lg:block"})))):null)}function X({table:e,uniqueStatusValues:t,renderStatusMessage:a,className:n}){const h=l(null),E=e.getColumn("status")?.getFilterValue();return React.createElement(s,{modal:!0},React.createElement(c,{asChild:!0},React.createElement(o,{ref:h,"aria-label":"Filtre por status",variant:"outline",className:r("border-input text-muted-foreground ring-offset-background placeholder:text-muted-foreground hover:text-muted-foreground focus:ring-ring flex h-10 w-full max-w-60 items-center justify-between rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-sm hover:bg-inherit focus:ring-1 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50",n)},E?a(E):"Todos os status",React.createElement(i,{className:"h-4 w-4"}))),React.createElement(m,{align:"end",className:"w-44 p-0",onCloseAutoFocus:()=>h.current?.focus()},React.createElement(u,null,React.createElement(d,{placeholder:"Pesquisar status..."}),React.createElement(p,null,React.createElement(g,null,"Nenhum status encontrado."),React.createElement(f,{key:"all",onSelect:()=>e.getColumn("status")?.setFilterValue(void 0)},React.createElement("span",{className:"truncate"},"Todos os status")),t.map((t=>{if(!t)return null;const n=a(t);return React.createElement(f,{key:`${String(t)}`,onSelect:()=>e.getColumn("status")?.setFilterValue(t)},React.createElement("span",{className:"truncate"},n))}))))))}export{J as DataTableMainFrame,_ as DataTablePagination,U as DataTablePaginationSkeleton,Q as DataTableRowSkeleton,D as DataTableSearch,K as DataTableSkeleton,X as DataTableStatus,B as DataTableViewOptions};
1
+ import*as e from"react";import t,{forwardRef as a,createElement as n,useRef as l}from"react";import{c as r}from"../chunks/utils-jIFl11as.mjs";import{P as s,a as c,b as m}from"../chunks/popover-DDPhp0Sa.mjs";import{B as o}from"../chunks/button-D_c_ntEX.mjs";import{C as i}from"../chunks/chevron-down-BCzo9yB2.mjs";import{C as u,b as d,c as g,d as p,e as h,f,S as E}from"../chunks/command-eoEJKrZQ.mjs";import{C as w}from"../chunks/check-DjRtCxG6.mjs";import{I as N}from"../chunks/input-BxTp3Q5l.mjs";import{T as k}from"../chunks/TextWrap-apUajb0q.mjs";import{e as y,f as b,T as x,a as C,d as v,b as S}from"../chunks/table-DRvqJktC.mjs";import{S as j}from"../chunks/skeleton-BFnps3wE.mjs";import{S as R,h as z,i as P,a as I,c as A}from"../chunks/select-BydKi4E_.mjs";import{C as M}from"../chunks/chevron-left-DUJqO1vN.mjs";import{C as L}from"../chunks/chevron-right-CoNJE7ZW.mjs";import{c as F,f as V}from"../chunks/pagination-qTGmkoRO.mjs";import{S as $,a as T}from"../chunks/scroll-area-CuX49k8h.mjs";import{c as D}from"../chunks/createLucideIcon-CIn9dHnW.mjs";import{S as O,b as q}from"../chunks/sortable-7DK1K35h.mjs";import"../chunks/bundle-mjs-CtG6Smj_.mjs";import"../chunks/index-CX5r7IKM.mjs";import"../chunks/index-CCYyT_rk.mjs";import"react/jsx-runtime";import"../chunks/index-CXrD_SvM.mjs";import"../chunks/index-DxtdpBCb.mjs";import"react-dom";import"@radix-ui/react-slot";import"../chunks/index-ChLuxn93.mjs";import"../chunks/tslib.es6-Cx3xzITX.mjs";import"../chunks/index-Db2NO0t8.mjs";import"../chunks/index-DOx7g1Qo.mjs";import"../chunks/index-DzMQps4Q.mjs";import"../chunks/index-D-s-TbR3.mjs";import"class-variance-authority";import"../chunks/index-CluuXDB_.mjs";import"../chunks/dialog-TKsk0Iu2.mjs";import"../chunks/x-xnz0lTd-.mjs";import"@radix-ui/react-select";import"../chunks/index-BpJwNLRW.mjs";const B=D("ArrowDown",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]),W=D("ArrowUp",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);function H({table:t,transformColumnName:a}){const n=e.useRef(null);return e.createElement(s,{modal:!0},e.createElement(c,{asChild:!0},e.createElement(o,{ref:n,"aria-label":"Toggle columns",variant:"outline"},"Colunas",e.createElement(i,{className:"h-4 w-4"}))),e.createElement(m,{align:"end",className:"w-44 p-0",onCloseAutoFocus:()=>n.current?.focus()},e.createElement(u,null,e.createElement(d,{placeholder:"Pesquisar colunas..."}),e.createElement(g,null,e.createElement(p,null,"Nenhuma coluna encontrada."),e.createElement(h,null,t.getAllColumns().filter((e=>void 0!==e.accessorFn&&e.getCanHide())).map((t=>e.createElement(f,{key:t.id,onSelect:()=>t.toggleVisibility(!t.getIsVisible())},e.createElement("span",{className:"truncate"},a?a(t.id):t.id),e.createElement(w,{className:r("ml-auto size-4 shrink-0",t.getIsVisible()?"opacity-100":"opacity-0")})))))))))}function Z({table:e,keySearch:t,placeholder:a}){return React.createElement("div",{className:"relative w-full max-w-sm"},React.createElement(E,{className:"text-muted-foreground absolute top-3 left-3 h-4 w-4"}),React.createElement(N,{placeholder:a,value:e.getColumn(t)?.getFilterValue()??"",onChange:a=>e.getColumn(t)?.setFilterValue(a.target.value),className:"w-full pl-8 xl:w-80"}))}var G=["color"],Q=a((function(e,t){var a=e.color,l=void 0===a?"currentColor":a,r=function(e,t){if(null==e)return{};var a,n,l={},r=Object.keys(e);for(n=0;n<r.length;n++)a=r[n],t.indexOf(a)>=0||(l[a]=e[a]);return l}(e,G);return n("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},r,{ref:t}),n("path",{d:"M4.93179 5.43179C4.75605 5.60753 4.75605 5.89245 4.93179 6.06819C5.10753 6.24392 5.39245 6.24392 5.56819 6.06819L7.49999 4.13638L9.43179 6.06819C9.60753 6.24392 9.89245 6.24392 10.0682 6.06819C10.2439 5.89245 10.2439 5.60753 10.0682 5.43179L7.81819 3.18179C7.73379 3.0974 7.61933 3.04999 7.49999 3.04999C7.38064 3.04999 7.26618 3.0974 7.18179 3.18179L4.93179 5.43179ZM10.0682 9.56819C10.2439 9.39245 10.2439 9.10753 10.0682 8.93179C9.89245 8.75606 9.60753 8.75606 9.43179 8.93179L7.49999 10.8636L5.56819 8.93179C5.39245 8.75606 5.10753 8.75606 4.93179 8.93179C4.75605 9.10753 4.75605 9.39245 4.93179 9.56819L7.18179 11.8182C7.35753 11.9939 7.64245 11.9939 7.81819 11.8182L10.0682 9.56819Z",fill:l,fillRule:"evenodd",clipRule:"evenodd"}))}));function U(t,a){return t?function(e){return"function"==typeof e&&(()=>{const t=Object.getPrototypeOf(e);return t.prototype&&t.prototype.isReactComponent})()}(n=t)||"function"==typeof n||function(e){return"object"==typeof e&&"symbol"==typeof e.$$typeof&&["react.memo","react.forward_ref"].includes(e.$$typeof.description)}(n)?e.createElement(t,a):t:null;var n}function _(e){const{columnCount:t,rowCount:a=8,cellWidths:n=["auto"],shrinkZero:l=!1}=e;return React.createElement(React.Fragment,null,Array.from({length:a}).map(((e,a)=>React.createElement(y,{key:`row-${String(a)}`,className:"hover:bg-transparent"},Array.from({length:t}).map(((e,t)=>React.createElement(b,{key:`cell-${String(a)}-${t}`,style:{width:n[t],minWidth:l?n[t]:"auto"}},React.createElement(j,{className:"h-6 w-full"}))))))))}function J({className:e}){return React.createElement("div",{className:"mt-4 flex flex-wrap items-center justify-between gap-2"},React.createElement(j,{className:r("h-5 w-40",e)}),React.createElement("div",{className:"flex flex-wrap items-center justify-between gap-2 gap-y-4"},React.createElement(j,{className:r("h-10 w-28",e)}),React.createElement(j,{className:r("h-9 w-[16rem]",e)})))}function K({table:e,pageSizeOptions:a=[20,30,50,100,200],dataLabel:n="Fundos"}){const l=a[0],r=e.getState().pagination.pageIndex+1,s=e.getRowCount(),c=Math.ceil(s/e.getState().pagination.pageSize);return t.createElement("div",{className:"mt-4 flex flex-wrap items-center justify-between gap-2"},t.createElement("div",{className:"text-muted-foreground flex gap-1 text-sm"},t.createElement("p",{className:"ml-2"},"Mostrando ",e.getRowModel().rows.length.toLocaleString()," de"," ",s," ",n,".")),t.createElement("div",{className:"flex flex-wrap items-center justify-between gap-2 gap-y-4"},t.createElement(R,{value:String(e.getState().pagination.pageSize)||String(l),onValueChange:t=>e.setPageSize(Number(t))},t.createElement(z,{className:"w-fit"},t.createElement(P,{placeholder:`Mostrar ${e.getState().pagination.pageSize||l}`})),t.createElement(I,null,s&&(0===s||s<l)?t.createElement(A,{value:String(l)},"Mostrar ",l):t.createElement(t.Fragment,null,a.map((e=>t.createElement(A,{key:e,value:String(e)},"Mostrar ",e)))))),t.createElement("div",{className:"flex flex-wrap gap-2 gap-y-4"},t.createElement(o,{variant:"ghost",onClick:()=>e.previousPage(),disabled:!e.getCanPreviousPage(),"aria-label":"Ir para página anterior",className:"gap-1"},t.createElement(M,{className:"size-4"}),"Anterior"),t.createElement("div",{className:"flex gap-2"},(()=>{const a=[];if(c<=3)for(let n=1;n<=c;n++)a.push(t.createElement(o,{variant:r===n?"outline":"ghost",key:n,onClick:()=>e.setPageIndex(n-1),className:"size-9"},n));else{a.push(t.createElement(o,{variant:1===r?"outline":"ghost",key:1,onClick:()=>e.setPageIndex(0),className:"size-9"},"1"));const n=Math.max(2,Math.min(r,c-2)),l=Math.min(c-1,n+3-2);n>2&&a.push(t.createElement(F,{key:"ellipsis-start",className:"list-none"},t.createElement(V,null)));for(let s=n;s<=l;s++)a.push(t.createElement(o,{variant:r===s?"outline":"ghost",key:s,onClick:()=>e.setPageIndex(s-1),className:"size-9"},s));l<c-1&&a.push(t.createElement(F,{key:"ellipsis-end",className:"list-none"},t.createElement(V,null))),a.push(t.createElement(o,{variant:r===c?"outline":"ghost",key:c,onClick:()=>e.setPageIndex(c-1)},c))}return a})()),t.createElement(o,{variant:"ghost",onClick:()=>e.nextPage(),disabled:!e.getCanNextPage(),"aria-label":"Ir para próxima página",className:"gap-1"},"Próximo",t.createElement(L,{className:"size-4"})))))}const X=({table:e,columns:a,isLoadingTable:n,setQueryParams:l,dataLabel:r,actionColumns:s=[]})=>{const c=Number(e.getState().pagination.pageIndex).toString(),m=Number(e.getState().pagination.pageSize).toString(),o=e.getState().sorting;return t.useEffect((()=>{if(!l)return;const e={sortingBy:"",order:""};o.length>0&&(e.sortingBy=o[0].id,e.order=o[0].desc?"DESC":"ASC"),l((t=>({...t,pageSize:m,page:c,...e})))}),[c,m,l,o]),t.createElement(t.Fragment,null,t.createElement($,{className:"bg-background w-full rounded-md border whitespace-nowrap"},t.createElement(x,null,t.createElement(C,{className:"group rounded-md"},e.getHeaderGroups().map((e=>t.createElement(y,{key:e.id},e.headers.map((e=>{const{column:{id:a}}=e,n=["actions",...s].includes(a);return t.createElement(v,{key:e.id},e.isPlaceholder?null:t.createElement(t.Fragment,null,t.createElement("div",{className:!n&&e.column.getCanSort()?"flex w-full items-center justify-start cursor-pointer gap-1 font-medium":"",onClick:n?void 0:e.column.getToggleSortingHandler()},U(e.column.columnDef.header,e.getContext()),(!n&&e.column.getCanSort()&&{asc:t.createElement(B,{className:"h-3.5 w-3.5"}),desc:t.createElement(W,{className:"h-3.5 w-3.5"}),false:t.createElement(Q,{className:"h-4 w-4"})}[e.column.getIsSorted()])??t.createElement(B,{className:"h-3.5 w-3.5"}))))})))))),t.createElement(S,null,!n&&e.getRowModel().rows?.length?e.getRowModel().rows.map((e=>t.createElement(y,{key:e.id,"data-state":e.getIsSelected()&&"selected",className:"even:bg-body/50"},e.getVisibleCells().map((e=>t.createElement(b,{key:e.id,className:"p-2"},t.createElement(k,null,U(e.column.columnDef.cell,e.getContext())))))))):n?t.createElement(_,{columnCount:e.getAllColumns().length}):t.createElement(y,null,t.createElement(b,{colSpan:a.length,className:"h-24 text-center"},"Sem resultados")))),t.createElement(T,{orientation:"horizontal"})),n?t.createElement(J,null):t.createElement(K,{table:e,dataLabel:r}))};function Y(e){const{columnCount:a,rowCount:n=10,searchableColumnCount:l=0,filterableColumnCount:s=0,showViewOptions:c=!0,cellWidths:m=["auto"],withPagination:o=!0,shrinkZero:i=!1,className:u,...d}=e;return t.createElement("div",{className:r("w-full space-y-2.5 overflow-auto",u),...d},t.createElement("div",{className:"flex w-full items-center justify-between space-x-2 overflow-auto p-1"},t.createElement("div",{className:"flex flex-1 items-center space-x-2"},l>0?Array.from({length:l}).map(((e,a)=>t.createElement(j,{key:`${String(a)}`,className:"h-7 w-40 lg:w-60"}))):null,s>0?Array.from({length:s}).map(((e,a)=>t.createElement(j,{key:`${String(a)}`,className:"h-7 w-[4.5rem] border-dashed"}))):null),c?t.createElement(j,{className:"ml-auto hidden h-7 w-[4.5rem] lg:flex"}):null),t.createElement("div",{className:"rounded-md border"},t.createElement(x,null,t.createElement(C,null,Array.from({length:1}).map(((e,n)=>t.createElement(y,{key:`${String(n)}`,className:"hover:bg-transparent"},Array.from({length:a}).map(((e,a)=>t.createElement(v,{key:`${String(a)}`,style:{width:m[a],minWidth:i?m[a]:"auto"}},t.createElement(j,{className:"h-6 w-full"})))))))),t.createElement(S,null,Array.from({length:n}).map(((e,n)=>t.createElement(y,{key:`${String(n)}`,className:"hover:bg-transparent"},Array.from({length:a}).map(((e,a)=>t.createElement(b,{key:`${String(a)}`,style:{width:m[a],minWidth:i?m[a]:"auto"}},t.createElement(j,{className:"h-6 w-full"})))))))))),o?t.createElement("div",{className:"flex w-full items-center justify-between gap-4 overflow-auto p-1 sm:gap-8"},t.createElement(j,{className:"h-7 w-40 shrink-0"}),t.createElement("div",{className:"flex items-center gap-4 sm:gap-6 lg:gap-8"},t.createElement("div",{className:"flex items-center space-x-2"},t.createElement(j,{className:"h-7 w-24"}),t.createElement(j,{className:"h-7 w-[4.5rem]"})),t.createElement("div",{className:"flex items-center justify-center text-sm font-medium"},t.createElement(j,{className:"h-7 w-20"})),t.createElement("div",{className:"flex items-center space-x-2"},t.createElement(j,{className:"hidden size-7 lg:block"}),t.createElement(j,{className:"size-7"}),t.createElement(j,{className:"size-7"}),t.createElement(j,{className:"hidden size-7 lg:block"})))):null)}function ee({table:e,uniqueStatusValues:t,renderStatusMessage:a,className:n}){const h=l(null),E=e.getColumn("status")?.getFilterValue();return React.createElement(s,{modal:!0},React.createElement(c,{asChild:!0},React.createElement(o,{ref:h,"aria-label":"Filtre por status",variant:"outline",className:r("border-input text-muted-foreground ring-offset-background placeholder:text-muted-foreground hover:text-muted-foreground focus:ring-ring flex h-10 w-full max-w-60 items-center justify-between rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-sm hover:bg-inherit focus:ring-1 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50",n)},E?a(E):"Todos os status",React.createElement(i,{className:"h-4 w-4"}))),React.createElement(m,{align:"end",className:"w-44 p-0",onCloseAutoFocus:()=>h.current?.focus()},React.createElement(u,null,React.createElement(d,{placeholder:"Pesquisar status..."}),React.createElement(g,null,React.createElement(p,null,"Nenhum status encontrado."),React.createElement(f,{key:"all",onSelect:()=>e.getColumn("status")?.setFilterValue(void 0)},React.createElement("span",{className:"truncate"},"Todos os status")),t.map((t=>{if(!t)return null;const n=a(t);return React.createElement(f,{key:`${String(t)}`,onSelect:()=>e.getColumn("status")?.setFilterValue(t)},React.createElement("span",{className:"truncate"},n))}))))))}const te=({table:e,columns:a,isLoadingTable:n,setQueryParams:l,dataLabel:r,actionColumns:s=[],data:c,onDataChange:m})=>{const[o,i]=t.useState(c);t.useEffect((()=>{i(c)}),[c]);const u=Number(e.getState().pagination.pageIndex).toString(),d=Number(e.getState().pagination.pageSize).toString(),g=e.getState().sorting;return t.useEffect((()=>{if(!l)return;const e={sortingBy:"",order:""};g.length>0&&(e.sortingBy=g[0].id,e.order=g[0].desc?"DESC":"ASC"),l((t=>({...t,pageSize:d,page:u,...e})))}),[u,d,l,g]),t.createElement(t.Fragment,null,t.createElement($,{className:"bg-background w-full rounded-md border whitespace-nowrap"},t.createElement(x,null,t.createElement(C,{className:"group rounded-md"},e.getHeaderGroups().map((e=>t.createElement(y,{key:e.id},e.headers.map((e=>{const{column:{id:a}}=e,n=["actions",...s].includes(a);return t.createElement(v,{key:e.id},e.isPlaceholder?null:t.createElement(t.Fragment,null,t.createElement("div",{className:!n&&e.column.getCanSort()?"flex w-full items-center justify-start cursor-pointer gap-1 font-medium":"",onClick:n?void 0:e.column.getToggleSortingHandler()},U(e.column.columnDef.header,e.getContext()),(!n&&e.column.getCanSort()&&{asc:t.createElement(B,{className:"h-3.5 w-3.5"}),desc:t.createElement(W,{className:"h-3.5 w-3.5"}),false:t.createElement(Q,{className:"h-4 w-4"})}[e.column.getIsSorted()])??t.createElement(B,{className:"h-3.5 w-3.5"}))))})))))),t.createElement(S,null,t.createElement(O,{value:o.map((e=>({...e,id:e.fundId||""}))),onValueChange:e=>{i(e),m&&m(e)}},!n&&e.getRowModel().rows?.length?e.getRowModel().rows.map((e=>t.createElement(q,{key:e.id,value:e.original.fundId||"",asChild:!0},t.createElement(y,{key:e.id,"data-state":e.getIsSelected()&&"selected",className:"even:bg-body/50"},e.getVisibleCells().map((e=>t.createElement(b,{key:e.id,className:"p-2"},t.createElement(k,null,U(e.column.columnDef.cell,e.getContext()))))))))):n?t.createElement(_,{columnCount:e.getAllColumns().length}):t.createElement(y,null,t.createElement(b,{colSpan:a.length,className:"h-24 text-center"},"Sem resultados"))))),t.createElement(T,{orientation:"horizontal"})),n?t.createElement(J,null):t.createElement(K,{table:e,dataLabel:r}))};export{X as DataTableMainFrame,te as DataTableMainFrameSortable,K as DataTablePagination,J as DataTablePaginationSkeleton,_ as DataTableRowSkeleton,Z as DataTableSearch,Y as DataTableSkeleton,ee as DataTableStatus,H as DataTableViewOptions};
2
2
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../node_modules/lucide-react/dist/esm/icons/arrow-down.js","../../node_modules/lucide-react/dist/esm/icons/arrow-up.js","../../src/components/default/data-table/DataTableViewOptions.tsx","../../src/components/default/data-table/DataTableSearch.tsx","../../node_modules/@tanstack/react-table/build/lib/index.mjs","../../src/components/default/data-table/DataTableRowSkeleton.tsx","../../src/components/default/data-table/DataTablePaginationSkeleton.tsx","../../src/components/default/data-table/DataTablePagination.tsx","../../src/components/default/data-table/DataTableMainFrame.tsx","../../src/components/default/data-table/DataTableSkeleton.tsx","../../src/components/default/data-table/DataTableStatus.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.479.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 5v14\", key: \"s699le\" }],\n [\"path\", { d: \"m19 12-7 7-7-7\", key: \"1idqje\" }]\n];\nconst ArrowDown = createLucideIcon(\"ArrowDown\", __iconNode);\n\nexport { __iconNode, ArrowDown as default };\n//# sourceMappingURL=arrow-down.js.map\n","/**\n * @license lucide-react v0.479.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m5 12 7-7 7 7\", key: \"hav0vg\" }],\n [\"path\", { d: \"M12 19V5\", key: \"x0mq9r\" }]\n];\nconst ArrowUp = createLucideIcon(\"ArrowUp\", __iconNode);\n\nexport { __iconNode, ArrowUp as default };\n//# sourceMappingURL=arrow-up.js.map\n","import type { Table } from \"@tanstack/react-table\";\nimport { Check, ChevronDownIcon } from \"lucide-react\";\nimport * as React from \"react\";\n\nimport { Button } from \"@/components/ui/button\";\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from \"@/components/ui/command\";\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\n\ninterface DataTableViewOptionsProps<TData> {\n table: Table<TData>;\n transformColumnName?: (id: string) => string;\n}\n\nexport function DataTableViewOptions<TData>({\n table,\n transformColumnName,\n}: DataTableViewOptionsProps<TData>) {\n const triggerRef = React.useRef<HTMLButtonElement>(null);\n\n return (\n <Popover modal>\n <PopoverTrigger asChild>\n <Button ref={triggerRef} aria-label=\"Toggle columns\" variant=\"outline\">\n Colunas\n <ChevronDownIcon className=\"h-4 w-4\" />\n </Button>\n </PopoverTrigger>\n <PopoverContent\n align=\"end\"\n className=\"w-44 p-0\"\n onCloseAutoFocus={() => triggerRef.current?.focus()}\n >\n <Command>\n <CommandInput placeholder=\"Pesquisar colunas...\" />\n <CommandList>\n <CommandEmpty>Nenhuma coluna encontrada.</CommandEmpty>\n <CommandGroup>\n {table\n .getAllColumns()\n .filter(\n (column) =>\n typeof column.accessorFn !== \"undefined\" &&\n column.getCanHide(),\n )\n .map((column) => {\n return (\n <CommandItem\n key={column.id}\n onSelect={() =>\n column.toggleVisibility(!column.getIsVisible())\n }\n >\n <span className=\"truncate\">\n {transformColumnName\n ? transformColumnName(column.id)\n : column.id}\n </span>\n <Check\n className={cn(\n \"ml-auto size-4 shrink-0\",\n column.getIsVisible() ? \"opacity-100\" : \"opacity-0\",\n )}\n />\n </CommandItem>\n );\n })}\n </CommandGroup>\n </CommandList>\n </Command>\n </PopoverContent>\n </Popover>\n );\n}\n","import { Input } from \"@/components/ui/input\";\nimport type { Table } from \"@tanstack/react-table\";\nimport { SearchIcon } from \"lucide-react\";\n\ninterface DataTableSearchProps<TData> {\n table: Table<TData>;\n keySearch: string;\n placeholder: string;\n}\n\nexport function DataTableSearch<TData>({\n table,\n keySearch,\n placeholder,\n}: DataTableSearchProps<TData>) {\n return (\n <div className=\"relative w-full max-w-sm\">\n <SearchIcon className=\"text-muted-foreground absolute top-3 left-3 h-4 w-4\" />\n <Input\n placeholder={placeholder}\n value={(table.getColumn(keySearch)?.getFilterValue() as string) ?? \"\"}\n onChange={(event) =>\n table.getColumn(keySearch)?.setFilterValue(event.target.value)\n }\n className=\"w-full pl-8 xl:w-80\"\n />\n </div>\n );\n}\n","/**\n * react-table\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nimport * as React from 'react';\nimport { createTable } from '@tanstack/table-core';\nexport * from '@tanstack/table-core';\n\n//\n\n/**\n * If rendering headers, cells, or footers with custom markup, use flexRender instead of `cell.getValue()` or `cell.renderValue()`.\n */\nfunction flexRender(Comp, props) {\n return !Comp ? null : isReactComponent(Comp) ? /*#__PURE__*/React.createElement(Comp, props) : Comp;\n}\nfunction isReactComponent(component) {\n return isClassComponent(component) || typeof component === 'function' || isExoticComponent(component);\n}\nfunction isClassComponent(component) {\n return typeof component === 'function' && (() => {\n const proto = Object.getPrototypeOf(component);\n return proto.prototype && proto.prototype.isReactComponent;\n })();\n}\nfunction isExoticComponent(component) {\n return typeof component === 'object' && typeof component.$$typeof === 'symbol' && ['react.memo', 'react.forward_ref'].includes(component.$$typeof.description);\n}\nfunction useReactTable(options) {\n // Compose in the generic options to the user options\n const resolvedOptions = {\n state: {},\n // Dummy state\n onStateChange: () => {},\n // noop\n renderFallbackValue: null,\n ...options\n };\n\n // Create a new table and store it in state\n const [tableRef] = React.useState(() => ({\n current: createTable(resolvedOptions)\n }));\n\n // By default, manage table state here using the table's initial state\n const [state, setState] = React.useState(() => tableRef.current.initialState);\n\n // Compose the default state above with any user state. This will allow the user\n // to only control a subset of the state if desired.\n tableRef.current.setOptions(prev => ({\n ...prev,\n ...options,\n state: {\n ...state,\n ...options.state\n },\n // Similarly, we'll maintain both our internal state and any user-provided\n // state.\n onStateChange: updater => {\n setState(updater);\n options.onStateChange == null || options.onStateChange(updater);\n }\n }));\n return tableRef.current;\n}\n\nexport { flexRender, useReactTable };\n//# sourceMappingURL=index.mjs.map\n","import { Skeleton } from \"@/components/ui/skeleton\";\nimport { TableCell, TableRow } from \"@/components/ui/table\";\n\ninterface DataTableRowSkeletonProps\n extends React.HTMLAttributes<HTMLDivElement> {\n columnCount: number;\n rowCount?: number;\n cellWidths?: string[];\n shrinkZero?: boolean;\n}\n\nexport function DataTableRowSkeleton(props: DataTableRowSkeletonProps) {\n const {\n columnCount,\n rowCount = 8,\n cellWidths = [\"auto\"],\n shrinkZero = false,\n } = props;\n\n return (\n <>\n {Array.from({ length: rowCount }).map((_, i) => (\n <TableRow key={`row-${String(i)}`} className=\"hover:bg-transparent\">\n {Array.from({ length: columnCount }).map((_, j) => (\n <TableCell\n key={`cell-${String(i)}-${j}`}\n style={{\n width: cellWidths[j],\n minWidth: shrinkZero ? cellWidths[j] : \"auto\",\n }}\n >\n <Skeleton className=\"h-6 w-full\" />\n </TableCell>\n ))}\n </TableRow>\n ))}\n </>\n );\n}\n","import { Skeleton } from \"@/components/ui/skeleton\";\nimport { cn } from \"@/lib/utils\";\n\nexport function DataTablePaginationSkeleton({\n className,\n}: {\n className?: string;\n}) {\n return (\n <div className=\"mt-4 flex flex-wrap items-center justify-between gap-2\">\n <Skeleton className={cn(\"h-5 w-40\", className)} />\n <div className=\"flex flex-wrap items-center justify-between gap-2 gap-y-4\">\n <Skeleton className={cn(\"h-10 w-28\", className)} />\n <Skeleton className={cn(\"h-9 w-[16rem]\", className)} />\n </div>\n </div>\n );\n}\n","import type { Table } from \"@tanstack/react-table\";\n\nimport { Button } from \"@/components/ui/button\";\nimport { PaginationEllipsis, PaginationItem } from \"@/components/ui/pagination\";\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from \"@/components/ui/select\";\nimport { ChevronLeftIcon, ChevronRightIcon } from \"lucide-react\";\nimport React from \"react\";\n\ninterface DataTablePaginationProps<TData> {\n table: Table<TData>;\n pageSizeOptions?: number[];\n dataLabel?: string;\n}\n\nexport function DataTablePagination<TData>({\n table,\n pageSizeOptions = [20, 30, 50, 100, 200],\n dataLabel = \"Fundos\",\n}: DataTablePaginationProps<TData>) {\n const pageSize = pageSizeOptions[0];\n const currentPage = table.getState().pagination.pageIndex + 1;\n const rowCount = table.getRowCount();\n const totalPageCount = Math.ceil(\n rowCount / table.getState().pagination.pageSize,\n );\n\n const renderPageNumbers = () => {\n const items: React.ReactNode[] = [];\n const maxVisiblePages = 3;\n\n if (totalPageCount <= maxVisiblePages) {\n for (let i = 1; i <= totalPageCount; i++) {\n items.push(\n <Button\n variant={currentPage === i ? \"outline\" : \"ghost\"}\n key={i}\n onClick={() => table.setPageIndex(i - 1)}\n className=\"size-9\"\n >\n {i}\n </Button>,\n );\n }\n } else {\n items.push(\n <Button\n variant={currentPage === 1 ? \"outline\" : \"ghost\"}\n key={1}\n onClick={() => table.setPageIndex(0)}\n className=\"size-9\"\n >\n 1\n </Button>,\n );\n\n const start = Math.max(\n 2,\n Math.min(currentPage, totalPageCount - (maxVisiblePages - 1)),\n );\n const end = Math.min(totalPageCount - 1, start + maxVisiblePages - 2);\n\n if (start > 2) {\n items.push(\n <PaginationItem key=\"ellipsis-start\" className=\"list-none\">\n <PaginationEllipsis />\n </PaginationItem>,\n );\n }\n\n for (let i = start; i <= end; i++) {\n items.push(\n <Button\n variant={currentPage === i ? \"outline\" : \"ghost\"}\n key={i}\n onClick={() => table.setPageIndex(i - 1)}\n className=\"size-9\"\n >\n {i}\n </Button>,\n );\n }\n\n if (end < totalPageCount - 1) {\n items.push(\n <PaginationItem key=\"ellipsis-end\" className=\"list-none\">\n <PaginationEllipsis />\n </PaginationItem>,\n );\n }\n\n items.push(\n <Button\n variant={currentPage === totalPageCount ? \"outline\" : \"ghost\"}\n key={totalPageCount}\n onClick={() => table.setPageIndex(totalPageCount - 1)}\n >\n {totalPageCount}\n </Button>,\n );\n }\n\n return items;\n };\n return (\n <div className=\"mt-4 flex flex-wrap items-center justify-between gap-2\">\n <div className=\"text-muted-foreground flex gap-1 text-sm\">\n <p className=\"ml-2\">\n Mostrando {table.getRowModel().rows.length.toLocaleString()} de{\" \"}\n {rowCount} {dataLabel}.\n </p>\n </div>\n\n <div className=\"flex flex-wrap items-center justify-between gap-2 gap-y-4\">\n <Select\n value={\n String(table.getState().pagination.pageSize) || String(pageSize)\n }\n onValueChange={(value) => table.setPageSize(Number(value))}\n >\n <SelectTrigger className=\"w-fit\">\n <SelectValue\n placeholder={`Mostrar ${table.getState().pagination.pageSize || pageSize}`}\n />\n </SelectTrigger>\n <SelectContent>\n {rowCount && (rowCount === 0 || rowCount < pageSize) ? (\n <SelectItem value={String(pageSize)}>\n Mostrar {pageSize}\n </SelectItem>\n ) : (\n <>\n {pageSizeOptions.map((pageSize) => (\n <SelectItem key={pageSize} value={String(pageSize)}>\n Mostrar {pageSize}\n </SelectItem>\n ))}\n </>\n )}\n </SelectContent>\n </Select>\n\n <div className=\"flex flex-wrap gap-2 gap-y-4\">\n <Button\n variant=\"ghost\"\n onClick={() => table.previousPage()}\n disabled={!table.getCanPreviousPage()}\n aria-label=\"Ir para página anterior\"\n className=\"gap-1\"\n >\n <ChevronLeftIcon className=\"size-4\" />\n Anterior\n </Button>\n\n <div className=\"flex gap-2\">{renderPageNumbers()}</div>\n\n <Button\n variant=\"ghost\"\n onClick={() => table.nextPage()}\n disabled={!table.getCanNextPage()}\n aria-label=\"Ir para próxima página\"\n className=\"gap-1\"\n >\n Próximo\n <ChevronRightIcon className=\"size-4\" />\n </Button>\n </div>\n </div>\n </div>\n );\n}\n","import { TextWrap } from \"@/components/default/base/TextWrap\";\nimport { ScrollArea, ScrollBar } from \"@/components/ui/scroll-area\";\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from \"@/components/ui/table\";\nimport { CaretSortIcon } from \"@radix-ui/react-icons\";\nimport type { ColumnDef, Table as TableType } from \"@tanstack/react-table\";\nimport { flexRender } from \"@tanstack/react-table\";\nimport { ArrowDownIcon, ArrowUpIcon } from \"lucide-react\";\nimport React from \"react\";\nimport { DataTableRowSkeleton } from \"./DataTableRowSkeleton\";\nimport { DataTablePaginationSkeleton } from \"./DataTablePaginationSkeleton\";\nimport { DataTablePagination } from \"./DataTablePagination\";\n\ninterface DataTableViewOptionsProps<TData, TValue> {\n table: TableType<TData>;\n columns: ColumnDef<TData, TValue>[];\n setQueryParams?: React.Dispatch<React.SetStateAction<any>>;\n isLoadingTable?: boolean;\n dataLabel: string;\n actionColumns?: string[];\n}\n\nexport const DataTableMainFrame = <TData, TValue>({\n table,\n columns,\n isLoadingTable,\n setQueryParams,\n dataLabel,\n actionColumns = [],\n}: DataTableViewOptionsProps<TData, TValue>) => {\n const currentPage = Number(table.getState().pagination.pageIndex).toString();\n const pageSize = Number(table.getState().pagination.pageSize).toString();\n const sorting = table.getState().sorting;\n React.useEffect(() => {\n if (!setQueryParams) return;\n const sortingParams = { sortingBy: \"\", order: \"\" };\n if (sorting.length > 0) {\n sortingParams.sortingBy = sorting[0].id;\n sortingParams.order = sorting[0].desc ? \"DESC\" : \"ASC\";\n }\n setQueryParams((prev: any) => ({\n ...prev,\n pageSize,\n page: currentPage,\n ...sortingParams,\n }));\n }, [currentPage, pageSize, setQueryParams, sorting]);\n return (\n <>\n <ScrollArea className=\"bg-background w-full rounded-md border whitespace-nowrap\">\n <Table>\n <TableHeader className=\"group rounded-md\">\n {table.getHeaderGroups().map((headerGroup) => {\n return (\n <TableRow key={headerGroup.id}>\n {headerGroup.headers.map((header) => {\n const {\n column: { id },\n } = header;\n\n const isActionsColumn = [\n \"actions\",\n ...actionColumns,\n ].includes(id);\n return (\n <TableHead key={header.id}>\n {header.isPlaceholder ? null : (\n <>\n <div\n {...{\n className:\n !isActionsColumn && header.column.getCanSort()\n ? \"flex w-full items-center justify-start cursor-pointer gap-1 font-medium\"\n : \"\",\n onClick: !isActionsColumn\n ? header.column.getToggleSortingHandler()\n : undefined,\n }}\n >\n {flexRender(\n header.column.columnDef.header,\n header.getContext(),\n )}\n\n {(!isActionsColumn &&\n header.column.getCanSort() &&\n {\n asc: (\n <ArrowDownIcon className=\"h-3.5 w-3.5\" />\n ),\n desc: <ArrowUpIcon className=\"h-3.5 w-3.5\" />,\n false: <CaretSortIcon className=\"h-4 w-4\" />,\n }[header.column.getIsSorted() as string]) ?? (\n <ArrowDownIcon className=\"h-3.5 w-3.5\" />\n )}\n </div>\n </>\n )}\n </TableHead>\n );\n })}\n </TableRow>\n );\n })}\n </TableHeader>\n\n <TableBody>\n {!isLoadingTable && table.getRowModel().rows?.length ? (\n table.getRowModel().rows.map((row) => {\n return (\n <TableRow\n key={row.id}\n data-state={row.getIsSelected() && \"selected\"}\n className=\"even:bg-body/50\"\n >\n {row.getVisibleCells().map((cell) => {\n return (\n <TableCell key={cell.id} className=\"p-2\">\n <TextWrap>\n {flexRender(\n cell.column.columnDef.cell,\n cell.getContext(),\n )}\n </TextWrap>\n </TableCell>\n );\n })}\n </TableRow>\n );\n })\n ) : isLoadingTable ? (\n <DataTableRowSkeleton\n columnCount={table.getAllColumns().length}\n />\n ) : (\n <TableRow>\n <TableCell\n colSpan={columns.length}\n className=\"h-24 text-center\"\n >\n Sem resultados\n </TableCell>\n </TableRow>\n )}\n </TableBody>\n </Table>\n <ScrollBar orientation=\"horizontal\" />\n </ScrollArea>\n {isLoadingTable ? (\n <DataTablePaginationSkeleton />\n ) : (\n <DataTablePagination table={table} dataLabel={dataLabel} />\n )}\n </>\n );\n};\n","import React from \"react\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from \"@/components/ui/table\";\nimport { cn } from \"@/lib/utils\";\n\ninterface DataTableSkeletonProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * The number of columns in the table.\n * @type number\n */\n columnCount: number;\n\n /**\n * The number of rows in the table.\n * @default 10\n * @type number | undefined\n */\n rowCount?: number;\n\n /**\n * The number of searchable columns in the table.\n * @default 0\n * @type number | undefined\n */\n searchableColumnCount?: number;\n\n /**\n * The number of filterable columns in the table.\n * @default 0\n * @type number | undefined\n */\n filterableColumnCount?: number;\n\n /**\n * Flag to show the table view options.\n * @default undefined\n * @type boolean | undefined\n */\n showViewOptions?: boolean;\n\n /**\n * The width of each cell in the table.\n * The length of the array should be equal to the columnCount.\n * Any valid CSS width value is accepted.\n * @default [\"auto\"]\n * @type string[] | undefined\n */\n cellWidths?: string[];\n\n /**\n * Flag to show the pagination bar.\n * @default true\n * @type boolean | undefined\n */\n withPagination?: boolean;\n\n /**\n * Flag to prevent the table cells from shrinking.\n * @default false\n * @type boolean | undefined\n */\n shrinkZero?: boolean;\n}\n\nexport function DataTableSkeleton(props: DataTableSkeletonProps) {\n const {\n columnCount,\n rowCount = 10,\n searchableColumnCount = 0,\n filterableColumnCount = 0,\n showViewOptions = true,\n cellWidths = [\"auto\"],\n withPagination = true,\n shrinkZero = false,\n className,\n ...skeletonProps\n } = props;\n\n return (\n <div\n className={cn(\"w-full space-y-2.5 overflow-auto\", className)}\n {...skeletonProps}\n >\n <div className=\"flex w-full items-center justify-between space-x-2 overflow-auto p-1\">\n <div className=\"flex flex-1 items-center space-x-2\">\n {searchableColumnCount > 0\n ? Array.from({ length: searchableColumnCount }).map((_, i) => (\n <Skeleton key={`${String(i)}`} className=\"h-7 w-40 lg:w-60\" />\n ))\n : null}\n {filterableColumnCount > 0\n ? Array.from({ length: filterableColumnCount }).map((_, i) => (\n <Skeleton\n key={`${String(i)}`}\n className=\"h-7 w-[4.5rem] border-dashed\"\n />\n ))\n : null}\n </div>\n {showViewOptions ? (\n <Skeleton className=\"ml-auto hidden h-7 w-[4.5rem] lg:flex\" />\n ) : null}\n </div>\n <div className=\"rounded-md border\">\n <Table>\n <TableHeader>\n {Array.from({ length: 1 }).map((_, i) => (\n <TableRow key={`${String(i)}`} className=\"hover:bg-transparent\">\n {Array.from({ length: columnCount }).map((_, j) => (\n <TableHead\n key={`${String(j)}`}\n style={{\n width: cellWidths[j],\n minWidth: shrinkZero ? cellWidths[j] : \"auto\",\n }}\n >\n <Skeleton className=\"h-6 w-full\" />\n </TableHead>\n ))}\n </TableRow>\n ))}\n </TableHeader>\n <TableBody>\n {Array.from({ length: rowCount }).map((_, i) => (\n <TableRow key={`${String(i)}`} className=\"hover:bg-transparent\">\n {Array.from({ length: columnCount }).map((_, j) => (\n <TableCell\n key={`${String(j)}`}\n style={{\n width: cellWidths[j],\n minWidth: shrinkZero ? cellWidths[j] : \"auto\",\n }}\n >\n <Skeleton className=\"h-6 w-full\" />\n </TableCell>\n ))}\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n {withPagination ? (\n <div className=\"flex w-full items-center justify-between gap-4 overflow-auto p-1 sm:gap-8\">\n <Skeleton className=\"h-7 w-40 shrink-0\" />\n <div className=\"flex items-center gap-4 sm:gap-6 lg:gap-8\">\n <div className=\"flex items-center space-x-2\">\n <Skeleton className=\"h-7 w-24\" />\n <Skeleton className=\"h-7 w-[4.5rem]\" />\n </div>\n <div className=\"flex items-center justify-center text-sm font-medium\">\n <Skeleton className=\"h-7 w-20\" />\n </div>\n <div className=\"flex items-center space-x-2\">\n <Skeleton className=\"hidden size-7 lg:block\" />\n <Skeleton className=\"size-7\" />\n <Skeleton className=\"size-7\" />\n <Skeleton className=\"hidden size-7 lg:block\" />\n </div>\n </div>\n </div>\n ) : null}\n </div>\n );\n}\n","import { Button } from \"@/components/ui/button\";\nimport {\n Command,\n CommandEmpty,\n CommandInput,\n CommandItem,\n CommandList,\n} from \"@/components/ui/command\";\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\nimport type { Table } from \"@tanstack/react-table\";\nimport { ChevronDownIcon } from \"lucide-react\";\nimport { useRef } from \"react\";\n\ninterface DataTableStatusProps<TData, TEnum> {\n table: Table<TData>;\n uniqueStatusValues: TEnum[];\n renderStatusMessage(status: TEnum): string;\n className?: string;\n}\n\nexport function DataTableStatus<TData, TEnum>({\n table,\n uniqueStatusValues,\n renderStatusMessage,\n className,\n}: DataTableStatusProps<TData, TEnum>) {\n const triggerRef = useRef<HTMLButtonElement>(null);\n\n const currentFilter = table.getColumn(\"status\")?.getFilterValue() as\n | TEnum\n | undefined;\n\n return (\n <Popover modal>\n <PopoverTrigger asChild>\n <Button\n ref={triggerRef}\n aria-label=\"Filtre por status\"\n variant=\"outline\"\n className={cn(\n \"border-input text-muted-foreground ring-offset-background placeholder:text-muted-foreground hover:text-muted-foreground focus:ring-ring flex h-10 w-full max-w-60 items-center justify-between rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-sm hover:bg-inherit focus:ring-1 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n >\n {currentFilter\n ? renderStatusMessage(currentFilter)\n : \"Todos os status\"}\n <ChevronDownIcon className=\"h-4 w-4\" />\n </Button>\n </PopoverTrigger>\n <PopoverContent\n align=\"end\"\n className=\"w-44 p-0\"\n onCloseAutoFocus={() => triggerRef.current?.focus()}\n >\n <Command>\n <CommandInput placeholder=\"Pesquisar status...\" />\n <CommandList>\n <CommandEmpty>Nenhum status encontrado.</CommandEmpty>\n <CommandItem\n key=\"all\"\n onSelect={() =>\n table.getColumn(\"status\")?.setFilterValue(undefined)\n }\n >\n <span className=\"truncate\">Todos os status</span>\n </CommandItem>\n {uniqueStatusValues.map((item) => {\n if (!item) return null;\n\n const statusMessage = renderStatusMessage(item as TEnum);\n\n return (\n <CommandItem\n key={`${String(item)}`}\n onSelect={() =>\n table.getColumn(\"status\")?.setFilterValue(item)\n }\n >\n <span className=\"truncate\">{statusMessage}</span>\n </CommandItem>\n );\n })}\n </CommandList>\n </Command>\n </PopoverContent>\n </Popover>\n );\n}\n"],"names":["ArrowDown","createLucideIcon","d","key","ArrowUp","DataTableViewOptions","table","transformColumnName","triggerRef","React","useRef","Popover","modal","PopoverTrigger","asChild","Button","ref","aria-label","variant","ChevronDownIcon","className","PopoverContent","align","onCloseAutoFocus","current","focus","createElement","Command","CommandInput","placeholder","CommandList","CommandEmpty","CommandGroup","getAllColumns","filter","column","accessorFn","getCanHide","map","CommandItem","id","onSelect","toggleVisibility","getIsVisible","span","Check","cn","DataTableSearch","keySearch","div","SearchIcon","Input","value","getColumn","getFilterValue","onChange","event","setFilterValue","target","flexRender","Comp","props","component","proto","Object","getPrototypeOf","prototype","isReactComponent","isClassComponent","$$typeof","includes","description","isExoticComponent","DataTableRowSkeleton","columnCount","rowCount","cellWidths","shrinkZero","Fragment","Array","from","length","_","i","TableRow","String","j","TableCell","style","width","minWidth","Skeleton","DataTablePaginationSkeleton","DataTablePagination","pageSizeOptions","dataLabel","pageSize","currentPage","getState","pagination","pageIndex","getRowCount","totalPageCount","Math","ceil","p","getRowModel","rows","toLocaleString","Select","onValueChange","setPageSize","Number","SelectTrigger","SelectValue","SelectContent","SelectItem","onClick","previousPage","disabled","getCanPreviousPage","ChevronLeftIcon","items","push","setPageIndex","start","max","min","end","PaginationItem","PaginationEllipsis","renderPageNumbers","nextPage","getCanNextPage","ChevronRightIcon","DataTableMainFrame","columns","isLoadingTable","setQueryParams","actionColumns","toString","sorting","useEffect","sortingParams","sortingBy","order","desc","prev","page","ScrollArea","Table","TableHeader","getHeaderGroups","headerGroup","headers","header","isActionsColumn","TableHead","isPlaceholder","getCanSort","undefined","getToggleSortingHandler","columnDef","getContext","asc","ArrowDownIcon","ArrowUpIcon","false","CaretSortIcon","getIsSorted","TableBody","row","data-state","getIsSelected","getVisibleCells","cell","TextWrap","colSpan","ScrollBar","orientation","DataTableSkeleton","searchableColumnCount","filterableColumnCount","showViewOptions","withPagination","skeletonProps","DataTableStatus","uniqueStatusValues","renderStatusMessage","currentFilter","item","statusMessage"],"mappings":"+jDAGO,MAgBDA,EAAYC,EAAiB,YAhBC,CAClC,CAAC,OAAQ,CAAEC,EAAG,WAAYC,IAAK,WAC/B,CAAC,OAAQ,CAAED,EAAG,iBAAkBC,IAAK,aCcjCC,EAAUH,EAAiB,UAhBG,CAClC,CAAC,OAAQ,CAAEC,EAAG,gBAAiBC,IAAK,WACpC,CAAC,OAAQ,CAAED,EAAG,WAAYC,IAAK,aCoB1B,SAASE,GAA4BC,MAC1CA,EAAKC,oBACLA,IAEA,MAAMC,EAAaC,EAAMC,OAA0B,MAEnD,OACED,EAACE,cAAAA,EAAAA,CAAQC,OAAAA,GACPH,EAACI,cAAAA,EAAAA,CAAeC,SAAAA,GACdL,EAACM,cAAAA,EAAAA,CAAOC,IAAKR,EAAYS,aAAW,iBAAiBC,QAAQ,WAAU,UAErET,EAACU,cAAAA,EAAAA,CAAgBC,UAAU,cAG/BX,EAACY,cAAAA,EAAAA,CACCC,MAAM,MACNF,UAAU,WACVG,iBAAkB,IAAMf,EAAWgB,SAASC,SAE5ChB,EAAAiB,cAACC,OACClB,EAACmB,cAAAA,EAAAA,CAAaC,YAAY,yBAC1BpB,EAACqB,cAAAA,EAAAA,KACCrB,gBAACsB,EAAa,KAAA,8BACdtB,gBAACuB,EACE1B,KAAAA,EACE2B,gBACAC,QACEC,QAC8B,IAAtBA,EAAOC,YACdD,EAAOE,eAEVC,KAAKH,GAEF1B,EAAC8B,cAAAA,EAAAA,CACCpC,IAAKgC,EAAOK,GACZC,SAAU,IACRN,EAAOO,kBAAkBP,EAAOQ,iBAGlClC,EAACmC,cAAAA,OAAAA,CAAKxB,UAAU,YACbb,EACGA,EAAoB4B,EAAOK,IAC3BL,EAAOK,IAEb/B,EAACoC,cAAAA,EAAAA,CACCzB,UAAW0B,EACT,0BACAX,EAAOQ,eAAiB,cAAgB,sBAYlE,CC1EO,SAASI,GAAuBzC,MACrCA,EAAK0C,UACLA,EAASnB,YACTA,IAEA,OACEpB,MAACwC,cAAAA,MAAAA,CAAI7B,UAAU,4BACbX,MAACyC,cAAAA,EAAAA,CAAW9B,UAAU,wDACtBX,MAAC0C,cAAAA,EAAAA,CACCtB,YAAaA,EACbuB,MAAO9C,EAAO+C,UAAUL,IAAYM,kBAA+B,GACnEC,SAAWC,GACTlD,EAAM+C,UAAUL,IAAYS,eAAeD,EAAME,OAAON,OAE1DhC,UAAU,wBAIlB,klCCXO,SAASuC,EACdC,EACAC,GAEA,OAAQD,EAiBV,SAA0BE,GACxB,MACuB,mBAAdA,GACP,MACE,MAAMC,EAAQC,OAAOC,eAAeH,GACpC,OAAOC,EAAMG,WAAaH,EAAMG,UAAUC,gBAC5C,EAHA,EAKJ,CAdIC,CAHFN,EAR+CF,IAYxB,mBAAdE,GAeX,SAA2BA,GACzB,MACuB,iBAAdA,GACuB,iBAAvBA,EAAUO,UACjB,CAAC,aAAc,qBAAqBC,SAASR,EAAUO,SAASE,YAEpE,CApBIC,CAAkBV,GAZlBrD,EAAAiB,cAACkC,EAASC,GAEVD,EAHa,KAOjB,IACEE,CAHF,CCfO,SAASW,EAAqBZ,GACnC,MAAMa,YACJA,EAAWC,SACXA,EAAW,EAACC,WACZA,EAAa,CAAC,QAAOC,WACrBA,GAAa,GACXhB,EAEJ,OACEpD,MAAAiB,cAAAjB,MAAAqE,SAAA,KACGC,MAAMC,KAAK,CAAEC,OAAQN,IAAYrC,KAAI,CAAC4C,EAAGC,IACxC1E,MAAC2E,cAAAA,EAAAA,CAASjF,IAAK,OAAOkF,OAAOF,KAAM/D,UAAU,wBAC1C2D,MAAMC,KAAK,CAAEC,OAAQP,IAAepC,KAAI,CAAC4C,EAAGI,IAC3C7E,MAAC8E,cAAAA,EAAAA,CACCpF,IAAK,QAAQkF,OAAOF,MAAMG,IAC1BE,MAAO,CACLC,MAAOb,EAAWU,GAClBI,SAAUb,EAAaD,EAAWU,GAAK,SAGzC7E,MAACkF,cAAAA,EAAAA,CAASvE,UAAU,qBAOlC,CCnCO,SAASwE,GAA4BxE,UAC1CA,IAIA,OACEX,MAACwC,cAAAA,MAAAA,CAAI7B,UAAU,0DACbX,MAACkF,cAAAA,EAAAA,CAASvE,UAAW0B,EAAG,WAAY1B,KACpCX,MAACwC,cAAAA,MAAAA,CAAI7B,UAAU,6DACbX,MAACkF,cAAAA,EAAAA,CAASvE,UAAW0B,EAAG,YAAa1B,KACrCX,MAACkF,cAAAA,EAAAA,CAASvE,UAAW0B,EAAG,gBAAiB1B,MAIjD,CCGO,SAASyE,GAA2BvF,MACzCA,EAAKwF,gBACLA,EAAkB,CAAC,GAAI,GAAI,GAAI,IAAK,KAAIC,UACxCA,EAAY,WAEZ,MAAMC,EAAWF,EAAgB,GAC3BG,EAAc3F,EAAM4F,WAAWC,WAAWC,UAAY,EACtDzB,EAAWrE,EAAM+F,cACjBC,EAAiBC,KAAKC,KAC1B7B,EAAWrE,EAAM4F,WAAWC,WAAWH,UAgFzC,OACEvF,EAACwC,cAAAA,MAAAA,CAAI7B,UAAU,0DACbX,EAACwC,cAAAA,MAAAA,CAAI7B,UAAU,4CACbX,EAACgG,cAAAA,IAAAA,CAAErF,UAAU,QAAO,aACPd,EAAMoG,cAAcC,KAAK1B,OAAO2B,iBAAiB,MAAI,IAC/DjC,EAAS,IAAEoB,EAAU,MAI1BtF,EAACwC,cAAAA,MAAAA,CAAI7B,UAAU,6DACbX,EAACoG,cAAAA,EAAAA,CACCzD,MACEiC,OAAO/E,EAAM4F,WAAWC,WAAWH,WAAaX,OAAOW,GAEzDc,cAAgB1D,GAAU9C,EAAMyG,YAAYC,OAAO5D,KAEnD3C,EAACwG,cAAAA,EAAAA,CAAc7F,UAAU,SACvBX,EAACyG,cAAAA,EAAAA,CACCrF,YAAa,WAAWvB,EAAM4F,WAAWC,WAAWH,UAAYA,OAGpEvF,EAAC0G,cAAAA,EAAAA,KACExC,IAA0B,IAAbA,GAAkBA,EAAWqB,GACzCvF,EAAC2G,cAAAA,EAAAA,CAAWhE,MAAOiC,OAAOW,IAAW,WAC1BA,GAGXvF,EACGqF,cAAAA,EAAAA,SAAAA,KAAAA,EAAgBxD,KAAK0D,GACpBvF,EAAC2G,cAAAA,EAAAA,CAAWjH,IAAK6F,EAAU5C,MAAOiC,OAAOW,IAAW,WACzCA,QAQrBvF,EAACwC,cAAAA,MAAAA,CAAI7B,UAAU,gCACbX,EAACM,cAAAA,EAAAA,CACCG,QAAQ,QACRmG,QAAS,IAAM/G,EAAMgH,eACrBC,UAAWjH,EAAMkH,qBACjBvG,aAAW,0BACXG,UAAU,SAEVX,EAACgH,cAAAA,EAAAA,CAAgBrG,UAAU,WAAW,YAIxCX,EAACwC,cAAAA,MAAAA,CAAI7B,UAAU,cA/HG,MACxB,MAAMsG,EAA2B,GAGjC,GAAIpB,GAFoB,EAGtB,IAAK,IAAInB,EAAI,EAAGA,GAAKmB,EAAgBnB,IACnCuC,EAAMC,KACJlH,EAACM,cAAAA,EAAAA,CACCG,QAAS+E,IAAgBd,EAAI,UAAY,QACzChF,IAAKgF,EACLkC,QAAS,IAAM/G,EAAMsH,aAAazC,EAAI,GACtC/D,UAAU,UAET+D,QAIF,CACLuC,EAAMC,KACJlH,EAACM,cAAAA,EAAAA,CACCG,QAAyB,IAAhB+E,EAAoB,UAAY,QACzC9F,IAAK,EACLkH,QAAS,IAAM/G,EAAMsH,aAAa,GAClCxG,UAAU,UACX,MAKH,MAAMyG,EAAQtB,KAAKuB,IACjB,EACAvB,KAAKwB,IAAI9B,EAAaK,EAAAA,IAElB0B,EAAMzB,KAAKwB,IAAIzB,EAAiB,EAAGuB,EA/BnB,EA+B6C,GAE/DA,EAAQ,GACVH,EAAMC,KACJlH,EAACwH,cAAAA,EAAAA,CAAe9H,IAAI,iBAAiBiB,UAAU,aAC7CX,EAACyH,cAAAA,EAAAA,QAKP,IAAK,IAAI/C,EAAI0C,EAAO1C,GAAK6C,EAAK7C,IAC5BuC,EAAMC,KACJlH,EAACM,cAAAA,EAAAA,CACCG,QAAS+E,IAAgBd,EAAI,UAAY,QACzChF,IAAKgF,EACLkC,QAAS,IAAM/G,EAAMsH,aAAazC,EAAI,GACtC/D,UAAU,UAET+D,IAKH6C,EAAM1B,EAAiB,GACzBoB,EAAMC,KACJlH,EAACwH,cAAAA,EAAAA,CAAe9H,IAAI,eAAeiB,UAAU,aAC3CX,EAACyH,cAAAA,EAAAA,QAKPR,EAAMC,KACJlH,EAACM,cAAAA,EAAAA,CACCG,QAAS+E,IAAgBK,EAAiB,UAAY,QACtDnG,IAAKmG,EACLe,QAAS,IAAM/G,EAAMsH,aAAatB,EAAiB,IAElDA,GAGP,CAEA,OAAOoB,CAAAA,EAoD4BS,IAE7B1H,EAACM,cAAAA,EAAAA,CACCG,QAAQ,QACRmG,QAAS,IAAM/G,EAAM8H,WACrBb,UAAWjH,EAAM+H,iBACjBpH,aAAW,yBACXG,UAAU,SACX,UAECX,EAAC6H,cAAAA,EAAAA,CAAiBlH,UAAU,cAMxC,OCnJamH,EAAqB,EAChCjI,QACAkI,UACAC,iBACAC,iBACA3C,YACA4C,gBAAgB,OAEhB,MAAM1C,EAAce,OAAO1G,EAAM4F,WAAWC,WAAWC,WAAWwC,WAC5D5C,EAAWgB,OAAO1G,EAAM4F,WAAWC,WAAWH,UAAU4C,WACxDC,EAAUvI,EAAM4F,WAAW2C,QAejC,OAdApI,EAAMqI,WAAU,KACd,IAAKJ,EAAgB,OACrB,MAAMK,EAAgB,CAAEC,UAAW,GAAIC,MAAO,IAC1CJ,EAAQ5D,OAAS,IACnB8D,EAAcC,UAAYH,EAAQ,GAAGrG,GACrCuG,EAAcE,MAAQJ,EAAQ,GAAGK,KAAO,OAAS,OAEnDR,GAAgBS,IAAe,IAC1BA,EACHnD,WACAoD,KAAMnD,KACH8C,KACL,GACC,CAAC9C,EAAaD,EAAU0C,EAAgBG,IAEzCpI,gCACEA,EAAC4I,cAAAA,EAAAA,CAAWjI,UAAU,4DACpBX,EAAAiB,cAAC4H,OACC7I,EAAC8I,cAAAA,EAAAA,CAAYnI,UAAU,oBACpBd,EAAMkJ,kBAAkBlH,KAAKmH,GAE1BhJ,EAAC2E,cAAAA,EAAAA,CAASjF,IAAKsJ,EAAYjH,IACxBiH,EAAYC,QAAQpH,KAAKqH,IACxB,MACExH,QAAQK,GAAEA,IACRmH,EAEEC,EAAkB,CACtB,aACGjB,GACHrE,SAAS9B,GACX,OACE/B,EAACoJ,cAAAA,EAAAA,CAAU1J,IAAKwJ,EAAOnH,IACpBmH,EAAOG,cAAgB,KACtBrJ,EAAAiB,cAAAjB,EAAAqE,SAAA,KACErE,gBAACwC,MACK,CACF7B,WACGwI,GAAmBD,EAAOxH,OAAO4H,aAC9B,0EACA,GACN1C,QAAUuC,OAENI,EADAL,EAAOxH,OAAO8H,2BAInBtG,EACCgG,EAAOxH,OAAO+H,UAAUP,OACxBA,EAAOQ,gBAGNP,GACDD,EAAOxH,OAAO4H,cACd,CACEK,IACE3J,EAAC4J,cAAAA,EAAAA,CAAcjJ,UAAU,gBAE3B8H,KAAMzI,EAAC6J,cAAAA,EAAAA,CAAYlJ,UAAU,gBAC7BmJ,MAAO9J,EAAC+J,cAAAA,EAAAA,CAAcpJ,UAAU,aAChCuI,EAAOxH,OAAOsI,iBAChBhK,EAAC4J,cAAAA,EAAAA,CAAcjJ,UAAU,0BAa/CX,gBAACiK,EACE,MAACjC,GAAkBnI,EAAMoG,cAAcC,MAAM1B,OAC5C3E,EAAMoG,cAAcC,KAAKrE,KAAKqI,GAE1BlK,EAAC2E,cAAAA,EAAAA,CACCjF,IAAKwK,EAAInI,GACToI,aAAYD,EAAIE,iBAAmB,WACnCzJ,UAAU,mBAETuJ,EAAIG,kBAAkBxI,KAAKyI,GAExBtK,EAAC8E,cAAAA,EAAAA,CAAUpF,IAAK4K,EAAKvI,GAAIpB,UAAU,OACjCX,EAACuK,cAAAA,EAAAA,KACErH,EACCoH,EAAK5I,OAAO+H,UAAUa,KACtBA,EAAKZ,qBASnB1B,EACFhI,EAACgE,cAAAA,EAAAA,CACCC,YAAapE,EAAM2B,gBAAgBgD,SAGrCxE,EAAAiB,cAAC0D,OACC3E,EAAC8E,cAAAA,EAAAA,CACC0F,QAASzC,EAAQvD,OACjB7D,UAAU,oBACX,qBAOTX,EAACyK,cAAAA,EAAAA,CAAUC,YAAY,gBAExB1C,EACChI,EAAAiB,cAACkE,QAEDnF,EAACoF,cAAAA,EAAAA,CAAoBvF,MAAOA,EAAOyF,UAAWA,MCtF/C,SAASqF,EAAkBvH,GAChC,MAAMa,YACJA,EAAWC,SACXA,EAAW,GAAE0G,sBACbA,EAAwB,EAACC,sBACzBA,EAAwB,EAACC,gBACzBA,GAAkB,EAAI3G,WACtBA,EAAa,CAAC,QAAO4G,eACrBA,GAAiB,EAAI3G,WACrBA,GAAa,EAAKzD,UAClBA,KACGqK,GACD5H,EAEJ,OACEpD,EAACwC,cAAAA,MAAAA,CACC7B,UAAW0B,EAAG,mCAAoC1B,MAC9CqK,GAEJhL,EAACwC,cAAAA,MAAAA,CAAI7B,UAAU,wEACbX,EAACwC,cAAAA,MAAAA,CAAI7B,UAAU,sCACZiK,EAAwB,EACrBtG,MAAMC,KAAK,CAAEC,OAAQoG,IAAyB/I,KAAI,CAAC4C,EAAGC,IACpD1E,EAACkF,cAAAA,EAAAA,CAASxF,IAAK,GAAGkF,OAAOF,KAAM/D,UAAU,uBAE3C,KACHkK,EAAwB,EACrBvG,MAAMC,KAAK,CAAEC,OAAQqG,IAAyBhJ,KAAI,CAAC4C,EAAGC,IACpD1E,EAACkF,cAAAA,EAAAA,CACCxF,IAAK,GAAGkF,OAAOF,KACf/D,UAAU,mCAGd,MAELmK,EACC9K,EAACkF,cAAAA,EAAAA,CAASvE,UAAU,0CAClB,MAENX,EAACwC,cAAAA,MAAAA,CAAI7B,UAAU,qBACbX,EAAAiB,cAAC4H,EACC,KAAA7I,EAAAiB,cAAC6H,EACExE,KAAAA,MAAMC,KAAK,CAAEC,OAAQ,IAAK3C,KAAI,CAAC4C,EAAGC,IACjC1E,EAAC2E,cAAAA,EAAAA,CAASjF,IAAK,GAAGkF,OAAOF,KAAM/D,UAAU,wBACtC2D,MAAMC,KAAK,CAAEC,OAAQP,IAAepC,KAAI,CAAC4C,EAAGI,IAC3C7E,EAACoJ,cAAAA,EAAAA,CACC1J,IAAK,GAAGkF,OAAOC,KACfE,MAAO,CACLC,MAAOb,EAAWU,GAClBI,SAAUb,EAAaD,EAAWU,GAAK,SAGzC7E,EAACkF,cAAAA,EAAAA,CAASvE,UAAU,sBAM9BX,EAACiK,cAAAA,EAAAA,KACE3F,MAAMC,KAAK,CAAEC,OAAQN,IAAYrC,KAAI,CAAC4C,EAAGC,IACxC1E,EAAC2E,cAAAA,EAAAA,CAASjF,IAAK,GAAGkF,OAAOF,KAAM/D,UAAU,wBACtC2D,MAAMC,KAAK,CAAEC,OAAQP,IAAepC,KAAI,CAAC4C,EAAGI,IAC3C7E,EAAC8E,cAAAA,EAAAA,CACCpF,IAAK,GAAGkF,OAAOC,KACfE,MAAO,CACLC,MAAOb,EAAWU,GAClBI,SAAUb,EAAaD,EAAWU,GAAK,SAGzC7E,EAACkF,cAAAA,EAAAA,CAASvE,UAAU,wBAQjCoK,EACC/K,EAACwC,cAAAA,MAAAA,CAAI7B,UAAU,6EACbX,EAACkF,cAAAA,EAAAA,CAASvE,UAAU,sBACpBX,EAACwC,cAAAA,MAAAA,CAAI7B,UAAU,6CACbX,EAACwC,cAAAA,MAAAA,CAAI7B,UAAU,+BACbX,EAACkF,cAAAA,EAAAA,CAASvE,UAAU,aACpBX,EAACkF,cAAAA,EAAAA,CAASvE,UAAU,oBAEtBX,EAACwC,cAAAA,MAAAA,CAAI7B,UAAU,wDACbX,EAACkF,cAAAA,EAAAA,CAASvE,UAAU,cAEtBX,EAACwC,cAAAA,MAAAA,CAAI7B,UAAU,+BACbX,EAACkF,cAAAA,EAAAA,CAASvE,UAAU,2BACpBX,EAACkF,cAAAA,EAAAA,CAASvE,UAAU,WACpBX,EAACkF,cAAAA,EAAAA,CAASvE,UAAU,WACpBX,EAACkF,cAAAA,EAAAA,CAASvE,UAAU,8BAIxB,KAGV,CCjJO,SAASsK,GAA8BpL,MAC5CA,EAAKqL,mBACLA,EAAkBC,oBAClBA,EAAmBxK,UACnBA,IAEA,MAAMZ,EAAaE,EAA0B,MAEvCmL,EAAgBvL,EAAM+C,UAAU,WAAWC,iBAIjD,OACE7C,MAACE,cAAAA,EAAAA,CAAQC,OAAAA,GACPH,MAACI,cAAAA,EAAAA,CAAeC,SAAAA,GACdL,MAACM,cAAAA,EAAAA,CACCC,IAAKR,EACLS,aAAW,oBACXC,QAAQ,UACRE,UAAW0B,EACT,iXACA1B,IAGDyK,EACGD,EAAoBC,GACpB,kBACJpL,MAACU,cAAAA,EAAAA,CAAgBC,UAAU,cAG/BX,MAACY,cAAAA,EAAAA,CACCC,MAAM,MACNF,UAAU,WACVG,iBAAkB,IAAMf,EAAWgB,SAASC,SAE5ChB,MAAAiB,cAACC,OACClB,MAACmB,cAAAA,EAAAA,CAAaC,YAAY,wBAC1BpB,MAAAiB,cAACI,EACC,KAAArB,MAAAiB,cAACK,EAAa,KAAA,6BACdtB,MAAC8B,cAAAA,EAAAA,CACCpC,IAAI,MACJsC,SAAU,IACRnC,EAAM+C,UAAU,WAAWI,oBAAeuG,IAG5CvJ,MAACmC,cAAAA,OAAAA,CAAKxB,UAAU,YAAW,oBAE5BuK,EAAmBrJ,KAAKwJ,IACvB,IAAKA,EAAM,OAAO,KAElB,MAAMC,EAAgBH,EAAoBE,GAE1C,OACErL,MAAC8B,cAAAA,EAAAA,CACCpC,IAAK,GAAGkF,OAAOyG,KACfrJ,SAAU,IACRnC,EAAM+C,UAAU,WAAWI,eAAeqI,IAG5CrL,MAACmC,cAAAA,OAAAA,CAAKxB,UAAU,YAAY2K,GAAAA,OAS9C","x_google_ignoreList":[0,1,4]}
1
+ {"version":3,"file":"index.mjs","sources":["../../node_modules/lucide-react/dist/esm/icons/arrow-down.js","../../node_modules/lucide-react/dist/esm/icons/arrow-up.js","../../src/components/default/data-table/DataTableViewOptions.tsx","../../src/components/default/data-table/DataTableSearch.tsx","../../node_modules/@tanstack/react-table/build/lib/index.mjs","../../src/components/default/data-table/DataTableRowSkeleton.tsx","../../src/components/default/data-table/DataTablePaginationSkeleton.tsx","../../src/components/default/data-table/DataTablePagination.tsx","../../src/components/default/data-table/DataTableMainFrame.tsx","../../src/components/default/data-table/DataTableSkeleton.tsx","../../src/components/default/data-table/DataTableStatus.tsx","../../src/components/default/data-table/DataTableMainFrameSortable.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.479.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 5v14\", key: \"s699le\" }],\n [\"path\", { d: \"m19 12-7 7-7-7\", key: \"1idqje\" }]\n];\nconst ArrowDown = createLucideIcon(\"ArrowDown\", __iconNode);\n\nexport { __iconNode, ArrowDown as default };\n//# sourceMappingURL=arrow-down.js.map\n","/**\n * @license lucide-react v0.479.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m5 12 7-7 7 7\", key: \"hav0vg\" }],\n [\"path\", { d: \"M12 19V5\", key: \"x0mq9r\" }]\n];\nconst ArrowUp = createLucideIcon(\"ArrowUp\", __iconNode);\n\nexport { __iconNode, ArrowUp as default };\n//# sourceMappingURL=arrow-up.js.map\n","import type { Table } from \"@tanstack/react-table\";\nimport { Check, ChevronDownIcon } from \"lucide-react\";\nimport * as React from \"react\";\n\nimport { Button } from \"@/components/ui/button\";\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from \"@/components/ui/command\";\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\n\ninterface DataTableViewOptionsProps<TData> {\n table: Table<TData>;\n transformColumnName?: (id: string) => string;\n}\n\nexport function DataTableViewOptions<TData>({\n table,\n transformColumnName,\n}: DataTableViewOptionsProps<TData>) {\n const triggerRef = React.useRef<HTMLButtonElement>(null);\n\n return (\n <Popover modal>\n <PopoverTrigger asChild>\n <Button ref={triggerRef} aria-label=\"Toggle columns\" variant=\"outline\">\n Colunas\n <ChevronDownIcon className=\"h-4 w-4\" />\n </Button>\n </PopoverTrigger>\n <PopoverContent\n align=\"end\"\n className=\"w-44 p-0\"\n onCloseAutoFocus={() => triggerRef.current?.focus()}\n >\n <Command>\n <CommandInput placeholder=\"Pesquisar colunas...\" />\n <CommandList>\n <CommandEmpty>Nenhuma coluna encontrada.</CommandEmpty>\n <CommandGroup>\n {table\n .getAllColumns()\n .filter(\n (column) =>\n typeof column.accessorFn !== \"undefined\" &&\n column.getCanHide(),\n )\n .map((column) => {\n return (\n <CommandItem\n key={column.id}\n onSelect={() =>\n column.toggleVisibility(!column.getIsVisible())\n }\n >\n <span className=\"truncate\">\n {transformColumnName\n ? transformColumnName(column.id)\n : column.id}\n </span>\n <Check\n className={cn(\n \"ml-auto size-4 shrink-0\",\n column.getIsVisible() ? \"opacity-100\" : \"opacity-0\",\n )}\n />\n </CommandItem>\n );\n })}\n </CommandGroup>\n </CommandList>\n </Command>\n </PopoverContent>\n </Popover>\n );\n}\n","import { Input } from \"@/components/ui/input\";\nimport type { Table } from \"@tanstack/react-table\";\nimport { SearchIcon } from \"lucide-react\";\n\ninterface DataTableSearchProps<TData> {\n table: Table<TData>;\n keySearch: string;\n placeholder: string;\n}\n\nexport function DataTableSearch<TData>({\n table,\n keySearch,\n placeholder,\n}: DataTableSearchProps<TData>) {\n return (\n <div className=\"relative w-full max-w-sm\">\n <SearchIcon className=\"text-muted-foreground absolute top-3 left-3 h-4 w-4\" />\n <Input\n placeholder={placeholder}\n value={(table.getColumn(keySearch)?.getFilterValue() as string) ?? \"\"}\n onChange={(event) =>\n table.getColumn(keySearch)?.setFilterValue(event.target.value)\n }\n className=\"w-full pl-8 xl:w-80\"\n />\n </div>\n );\n}\n","/**\n * react-table\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nimport * as React from 'react';\nimport { createTable } from '@tanstack/table-core';\nexport * from '@tanstack/table-core';\n\n//\n\n/**\n * If rendering headers, cells, or footers with custom markup, use flexRender instead of `cell.getValue()` or `cell.renderValue()`.\n */\nfunction flexRender(Comp, props) {\n return !Comp ? null : isReactComponent(Comp) ? /*#__PURE__*/React.createElement(Comp, props) : Comp;\n}\nfunction isReactComponent(component) {\n return isClassComponent(component) || typeof component === 'function' || isExoticComponent(component);\n}\nfunction isClassComponent(component) {\n return typeof component === 'function' && (() => {\n const proto = Object.getPrototypeOf(component);\n return proto.prototype && proto.prototype.isReactComponent;\n })();\n}\nfunction isExoticComponent(component) {\n return typeof component === 'object' && typeof component.$$typeof === 'symbol' && ['react.memo', 'react.forward_ref'].includes(component.$$typeof.description);\n}\nfunction useReactTable(options) {\n // Compose in the generic options to the user options\n const resolvedOptions = {\n state: {},\n // Dummy state\n onStateChange: () => {},\n // noop\n renderFallbackValue: null,\n ...options\n };\n\n // Create a new table and store it in state\n const [tableRef] = React.useState(() => ({\n current: createTable(resolvedOptions)\n }));\n\n // By default, manage table state here using the table's initial state\n const [state, setState] = React.useState(() => tableRef.current.initialState);\n\n // Compose the default state above with any user state. This will allow the user\n // to only control a subset of the state if desired.\n tableRef.current.setOptions(prev => ({\n ...prev,\n ...options,\n state: {\n ...state,\n ...options.state\n },\n // Similarly, we'll maintain both our internal state and any user-provided\n // state.\n onStateChange: updater => {\n setState(updater);\n options.onStateChange == null || options.onStateChange(updater);\n }\n }));\n return tableRef.current;\n}\n\nexport { flexRender, useReactTable };\n//# sourceMappingURL=index.mjs.map\n","import { Skeleton } from \"@/components/ui/skeleton\";\nimport { TableCell, TableRow } from \"@/components/ui/table\";\n\ninterface DataTableRowSkeletonProps\n extends React.HTMLAttributes<HTMLDivElement> {\n columnCount: number;\n rowCount?: number;\n cellWidths?: string[];\n shrinkZero?: boolean;\n}\n\nexport function DataTableRowSkeleton(props: DataTableRowSkeletonProps) {\n const {\n columnCount,\n rowCount = 8,\n cellWidths = [\"auto\"],\n shrinkZero = false,\n } = props;\n\n return (\n <>\n {Array.from({ length: rowCount }).map((_, i) => (\n <TableRow key={`row-${String(i)}`} className=\"hover:bg-transparent\">\n {Array.from({ length: columnCount }).map((_, j) => (\n <TableCell\n key={`cell-${String(i)}-${j}`}\n style={{\n width: cellWidths[j],\n minWidth: shrinkZero ? cellWidths[j] : \"auto\",\n }}\n >\n <Skeleton className=\"h-6 w-full\" />\n </TableCell>\n ))}\n </TableRow>\n ))}\n </>\n );\n}\n","import { Skeleton } from \"@/components/ui/skeleton\";\nimport { cn } from \"@/lib/utils\";\n\nexport function DataTablePaginationSkeleton({\n className,\n}: {\n className?: string;\n}) {\n return (\n <div className=\"mt-4 flex flex-wrap items-center justify-between gap-2\">\n <Skeleton className={cn(\"h-5 w-40\", className)} />\n <div className=\"flex flex-wrap items-center justify-between gap-2 gap-y-4\">\n <Skeleton className={cn(\"h-10 w-28\", className)} />\n <Skeleton className={cn(\"h-9 w-[16rem]\", className)} />\n </div>\n </div>\n );\n}\n","import type { Table } from \"@tanstack/react-table\";\n\nimport { Button } from \"@/components/ui/button\";\nimport { PaginationEllipsis, PaginationItem } from \"@/components/ui/pagination\";\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from \"@/components/ui/select\";\nimport { ChevronLeftIcon, ChevronRightIcon } from \"lucide-react\";\nimport React from \"react\";\n\ninterface DataTablePaginationProps<TData> {\n table: Table<TData>;\n pageSizeOptions?: number[];\n dataLabel?: string;\n}\n\nexport function DataTablePagination<TData>({\n table,\n pageSizeOptions = [20, 30, 50, 100, 200],\n dataLabel = \"Fundos\",\n}: DataTablePaginationProps<TData>) {\n const pageSize = pageSizeOptions[0];\n const currentPage = table.getState().pagination.pageIndex + 1;\n const rowCount = table.getRowCount();\n const totalPageCount = Math.ceil(\n rowCount / table.getState().pagination.pageSize,\n );\n\n const renderPageNumbers = () => {\n const items: React.ReactNode[] = [];\n const maxVisiblePages = 3;\n\n if (totalPageCount <= maxVisiblePages) {\n for (let i = 1; i <= totalPageCount; i++) {\n items.push(\n <Button\n variant={currentPage === i ? \"outline\" : \"ghost\"}\n key={i}\n onClick={() => table.setPageIndex(i - 1)}\n className=\"size-9\"\n >\n {i}\n </Button>,\n );\n }\n } else {\n items.push(\n <Button\n variant={currentPage === 1 ? \"outline\" : \"ghost\"}\n key={1}\n onClick={() => table.setPageIndex(0)}\n className=\"size-9\"\n >\n 1\n </Button>,\n );\n\n const start = Math.max(\n 2,\n Math.min(currentPage, totalPageCount - (maxVisiblePages - 1)),\n );\n const end = Math.min(totalPageCount - 1, start + maxVisiblePages - 2);\n\n if (start > 2) {\n items.push(\n <PaginationItem key=\"ellipsis-start\" className=\"list-none\">\n <PaginationEllipsis />\n </PaginationItem>,\n );\n }\n\n for (let i = start; i <= end; i++) {\n items.push(\n <Button\n variant={currentPage === i ? \"outline\" : \"ghost\"}\n key={i}\n onClick={() => table.setPageIndex(i - 1)}\n className=\"size-9\"\n >\n {i}\n </Button>,\n );\n }\n\n if (end < totalPageCount - 1) {\n items.push(\n <PaginationItem key=\"ellipsis-end\" className=\"list-none\">\n <PaginationEllipsis />\n </PaginationItem>,\n );\n }\n\n items.push(\n <Button\n variant={currentPage === totalPageCount ? \"outline\" : \"ghost\"}\n key={totalPageCount}\n onClick={() => table.setPageIndex(totalPageCount - 1)}\n >\n {totalPageCount}\n </Button>,\n );\n }\n\n return items;\n };\n return (\n <div className=\"mt-4 flex flex-wrap items-center justify-between gap-2\">\n <div className=\"text-muted-foreground flex gap-1 text-sm\">\n <p className=\"ml-2\">\n Mostrando {table.getRowModel().rows.length.toLocaleString()} de{\" \"}\n {rowCount} {dataLabel}.\n </p>\n </div>\n\n <div className=\"flex flex-wrap items-center justify-between gap-2 gap-y-4\">\n <Select\n value={\n String(table.getState().pagination.pageSize) || String(pageSize)\n }\n onValueChange={(value) => table.setPageSize(Number(value))}\n >\n <SelectTrigger className=\"w-fit\">\n <SelectValue\n placeholder={`Mostrar ${table.getState().pagination.pageSize || pageSize}`}\n />\n </SelectTrigger>\n <SelectContent>\n {rowCount && (rowCount === 0 || rowCount < pageSize) ? (\n <SelectItem value={String(pageSize)}>\n Mostrar {pageSize}\n </SelectItem>\n ) : (\n <>\n {pageSizeOptions.map((pageSize) => (\n <SelectItem key={pageSize} value={String(pageSize)}>\n Mostrar {pageSize}\n </SelectItem>\n ))}\n </>\n )}\n </SelectContent>\n </Select>\n\n <div className=\"flex flex-wrap gap-2 gap-y-4\">\n <Button\n variant=\"ghost\"\n onClick={() => table.previousPage()}\n disabled={!table.getCanPreviousPage()}\n aria-label=\"Ir para página anterior\"\n className=\"gap-1\"\n >\n <ChevronLeftIcon className=\"size-4\" />\n Anterior\n </Button>\n\n <div className=\"flex gap-2\">{renderPageNumbers()}</div>\n\n <Button\n variant=\"ghost\"\n onClick={() => table.nextPage()}\n disabled={!table.getCanNextPage()}\n aria-label=\"Ir para próxima página\"\n className=\"gap-1\"\n >\n Próximo\n <ChevronRightIcon className=\"size-4\" />\n </Button>\n </div>\n </div>\n </div>\n );\n}\n","import { TextWrap } from \"@/components/default/base/TextWrap\";\nimport { ScrollArea, ScrollBar } from \"@/components/ui/scroll-area\";\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from \"@/components/ui/table\";\nimport { CaretSortIcon } from \"@radix-ui/react-icons\";\nimport type { ColumnDef, Table as TableType } from \"@tanstack/react-table\";\nimport { flexRender } from \"@tanstack/react-table\";\nimport { ArrowDownIcon, ArrowUpIcon } from \"lucide-react\";\nimport React from \"react\";\nimport { DataTableRowSkeleton } from \"./DataTableRowSkeleton\";\nimport { DataTablePaginationSkeleton } from \"./DataTablePaginationSkeleton\";\nimport { DataTablePagination } from \"./DataTablePagination\";\n\ninterface DataTableViewOptionsProps<TData, TValue> {\n table: TableType<TData>;\n columns: ColumnDef<TData, TValue>[];\n setQueryParams?: React.Dispatch<React.SetStateAction<any>>;\n isLoadingTable?: boolean;\n dataLabel: string;\n actionColumns?: string[];\n}\n\nexport const DataTableMainFrame = <TData, TValue>({\n table,\n columns,\n isLoadingTable,\n setQueryParams,\n dataLabel,\n actionColumns = [],\n}: DataTableViewOptionsProps<TData, TValue>) => {\n const currentPage = Number(table.getState().pagination.pageIndex).toString();\n const pageSize = Number(table.getState().pagination.pageSize).toString();\n const sorting = table.getState().sorting;\n React.useEffect(() => {\n if (!setQueryParams) return;\n const sortingParams = { sortingBy: \"\", order: \"\" };\n if (sorting.length > 0) {\n sortingParams.sortingBy = sorting[0].id;\n sortingParams.order = sorting[0].desc ? \"DESC\" : \"ASC\";\n }\n setQueryParams((prev: any) => ({\n ...prev,\n pageSize,\n page: currentPage,\n ...sortingParams,\n }));\n }, [currentPage, pageSize, setQueryParams, sorting]);\n return (\n <>\n <ScrollArea className=\"bg-background w-full rounded-md border whitespace-nowrap\">\n <Table>\n <TableHeader className=\"group rounded-md\">\n {table.getHeaderGroups().map((headerGroup) => {\n return (\n <TableRow key={headerGroup.id}>\n {headerGroup.headers.map((header) => {\n const {\n column: { id },\n } = header;\n\n const isActionsColumn = [\n \"actions\",\n ...actionColumns,\n ].includes(id);\n return (\n <TableHead key={header.id}>\n {header.isPlaceholder ? null : (\n <>\n <div\n {...{\n className:\n !isActionsColumn && header.column.getCanSort()\n ? \"flex w-full items-center justify-start cursor-pointer gap-1 font-medium\"\n : \"\",\n onClick: !isActionsColumn\n ? header.column.getToggleSortingHandler()\n : undefined,\n }}\n >\n {flexRender(\n header.column.columnDef.header,\n header.getContext(),\n )}\n\n {(!isActionsColumn &&\n header.column.getCanSort() &&\n {\n asc: (\n <ArrowDownIcon className=\"h-3.5 w-3.5\" />\n ),\n desc: <ArrowUpIcon className=\"h-3.5 w-3.5\" />,\n false: <CaretSortIcon className=\"h-4 w-4\" />,\n }[header.column.getIsSorted() as string]) ?? (\n <ArrowDownIcon className=\"h-3.5 w-3.5\" />\n )}\n </div>\n </>\n )}\n </TableHead>\n );\n })}\n </TableRow>\n );\n })}\n </TableHeader>\n\n <TableBody>\n {!isLoadingTable && table.getRowModel().rows?.length ? (\n table.getRowModel().rows.map((row) => {\n return (\n <TableRow\n key={row.id}\n data-state={row.getIsSelected() && \"selected\"}\n className=\"even:bg-body/50\"\n >\n {row.getVisibleCells().map((cell) => {\n return (\n <TableCell key={cell.id} className=\"p-2\">\n <TextWrap>\n {flexRender(\n cell.column.columnDef.cell,\n cell.getContext(),\n )}\n </TextWrap>\n </TableCell>\n );\n })}\n </TableRow>\n );\n })\n ) : isLoadingTable ? (\n <DataTableRowSkeleton\n columnCount={table.getAllColumns().length}\n />\n ) : (\n <TableRow>\n <TableCell\n colSpan={columns.length}\n className=\"h-24 text-center\"\n >\n Sem resultados\n </TableCell>\n </TableRow>\n )}\n </TableBody>\n </Table>\n <ScrollBar orientation=\"horizontal\" />\n </ScrollArea>\n {isLoadingTable ? (\n <DataTablePaginationSkeleton />\n ) : (\n <DataTablePagination table={table} dataLabel={dataLabel} />\n )}\n </>\n );\n};\n","import React from \"react\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from \"@/components/ui/table\";\nimport { cn } from \"@/lib/utils\";\n\ninterface DataTableSkeletonProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * The number of columns in the table.\n * @type number\n */\n columnCount: number;\n\n /**\n * The number of rows in the table.\n * @default 10\n * @type number | undefined\n */\n rowCount?: number;\n\n /**\n * The number of searchable columns in the table.\n * @default 0\n * @type number | undefined\n */\n searchableColumnCount?: number;\n\n /**\n * The number of filterable columns in the table.\n * @default 0\n * @type number | undefined\n */\n filterableColumnCount?: number;\n\n /**\n * Flag to show the table view options.\n * @default undefined\n * @type boolean | undefined\n */\n showViewOptions?: boolean;\n\n /**\n * The width of each cell in the table.\n * The length of the array should be equal to the columnCount.\n * Any valid CSS width value is accepted.\n * @default [\"auto\"]\n * @type string[] | undefined\n */\n cellWidths?: string[];\n\n /**\n * Flag to show the pagination bar.\n * @default true\n * @type boolean | undefined\n */\n withPagination?: boolean;\n\n /**\n * Flag to prevent the table cells from shrinking.\n * @default false\n * @type boolean | undefined\n */\n shrinkZero?: boolean;\n}\n\nexport function DataTableSkeleton(props: DataTableSkeletonProps) {\n const {\n columnCount,\n rowCount = 10,\n searchableColumnCount = 0,\n filterableColumnCount = 0,\n showViewOptions = true,\n cellWidths = [\"auto\"],\n withPagination = true,\n shrinkZero = false,\n className,\n ...skeletonProps\n } = props;\n\n return (\n <div\n className={cn(\"w-full space-y-2.5 overflow-auto\", className)}\n {...skeletonProps}\n >\n <div className=\"flex w-full items-center justify-between space-x-2 overflow-auto p-1\">\n <div className=\"flex flex-1 items-center space-x-2\">\n {searchableColumnCount > 0\n ? Array.from({ length: searchableColumnCount }).map((_, i) => (\n <Skeleton key={`${String(i)}`} className=\"h-7 w-40 lg:w-60\" />\n ))\n : null}\n {filterableColumnCount > 0\n ? Array.from({ length: filterableColumnCount }).map((_, i) => (\n <Skeleton\n key={`${String(i)}`}\n className=\"h-7 w-[4.5rem] border-dashed\"\n />\n ))\n : null}\n </div>\n {showViewOptions ? (\n <Skeleton className=\"ml-auto hidden h-7 w-[4.5rem] lg:flex\" />\n ) : null}\n </div>\n <div className=\"rounded-md border\">\n <Table>\n <TableHeader>\n {Array.from({ length: 1 }).map((_, i) => (\n <TableRow key={`${String(i)}`} className=\"hover:bg-transparent\">\n {Array.from({ length: columnCount }).map((_, j) => (\n <TableHead\n key={`${String(j)}`}\n style={{\n width: cellWidths[j],\n minWidth: shrinkZero ? cellWidths[j] : \"auto\",\n }}\n >\n <Skeleton className=\"h-6 w-full\" />\n </TableHead>\n ))}\n </TableRow>\n ))}\n </TableHeader>\n <TableBody>\n {Array.from({ length: rowCount }).map((_, i) => (\n <TableRow key={`${String(i)}`} className=\"hover:bg-transparent\">\n {Array.from({ length: columnCount }).map((_, j) => (\n <TableCell\n key={`${String(j)}`}\n style={{\n width: cellWidths[j],\n minWidth: shrinkZero ? cellWidths[j] : \"auto\",\n }}\n >\n <Skeleton className=\"h-6 w-full\" />\n </TableCell>\n ))}\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n {withPagination ? (\n <div className=\"flex w-full items-center justify-between gap-4 overflow-auto p-1 sm:gap-8\">\n <Skeleton className=\"h-7 w-40 shrink-0\" />\n <div className=\"flex items-center gap-4 sm:gap-6 lg:gap-8\">\n <div className=\"flex items-center space-x-2\">\n <Skeleton className=\"h-7 w-24\" />\n <Skeleton className=\"h-7 w-[4.5rem]\" />\n </div>\n <div className=\"flex items-center justify-center text-sm font-medium\">\n <Skeleton className=\"h-7 w-20\" />\n </div>\n <div className=\"flex items-center space-x-2\">\n <Skeleton className=\"hidden size-7 lg:block\" />\n <Skeleton className=\"size-7\" />\n <Skeleton className=\"size-7\" />\n <Skeleton className=\"hidden size-7 lg:block\" />\n </div>\n </div>\n </div>\n ) : null}\n </div>\n );\n}\n","import { Button } from \"@/components/ui/button\";\nimport {\n Command,\n CommandEmpty,\n CommandInput,\n CommandItem,\n CommandList,\n} from \"@/components/ui/command\";\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\nimport type { Table } from \"@tanstack/react-table\";\nimport { ChevronDownIcon } from \"lucide-react\";\nimport { useRef } from \"react\";\n\ninterface DataTableStatusProps<TData, TEnum> {\n table: Table<TData>;\n uniqueStatusValues: TEnum[];\n renderStatusMessage(status: TEnum): string;\n className?: string;\n}\n\nexport function DataTableStatus<TData, TEnum>({\n table,\n uniqueStatusValues,\n renderStatusMessage,\n className,\n}: DataTableStatusProps<TData, TEnum>) {\n const triggerRef = useRef<HTMLButtonElement>(null);\n\n const currentFilter = table.getColumn(\"status\")?.getFilterValue() as\n | TEnum\n | undefined;\n\n return (\n <Popover modal>\n <PopoverTrigger asChild>\n <Button\n ref={triggerRef}\n aria-label=\"Filtre por status\"\n variant=\"outline\"\n className={cn(\n \"border-input text-muted-foreground ring-offset-background placeholder:text-muted-foreground hover:text-muted-foreground focus:ring-ring flex h-10 w-full max-w-60 items-center justify-between rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-sm hover:bg-inherit focus:ring-1 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n >\n {currentFilter\n ? renderStatusMessage(currentFilter)\n : \"Todos os status\"}\n <ChevronDownIcon className=\"h-4 w-4\" />\n </Button>\n </PopoverTrigger>\n <PopoverContent\n align=\"end\"\n className=\"w-44 p-0\"\n onCloseAutoFocus={() => triggerRef.current?.focus()}\n >\n <Command>\n <CommandInput placeholder=\"Pesquisar status...\" />\n <CommandList>\n <CommandEmpty>Nenhum status encontrado.</CommandEmpty>\n <CommandItem\n key=\"all\"\n onSelect={() =>\n table.getColumn(\"status\")?.setFilterValue(undefined)\n }\n >\n <span className=\"truncate\">Todos os status</span>\n </CommandItem>\n {uniqueStatusValues.map((item) => {\n if (!item) return null;\n\n const statusMessage = renderStatusMessage(item as TEnum);\n\n return (\n <CommandItem\n key={`${String(item)}`}\n onSelect={() =>\n table.getColumn(\"status\")?.setFilterValue(item)\n }\n >\n <span className=\"truncate\">{statusMessage}</span>\n </CommandItem>\n );\n })}\n </CommandList>\n </Command>\n </PopoverContent>\n </Popover>\n );\n}\n","import { TextWrap } from \"@/components/default/base/TextWrap\";\nimport { ScrollArea, ScrollBar } from \"@/components/ui/scroll-area\";\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from \"@/components/ui/table\";\nimport { CaretSortIcon } from \"@radix-ui/react-icons\";\nimport type { ColumnDef, Table as TableType } from \"@tanstack/react-table\";\nimport { flexRender } from \"@tanstack/react-table\";\nimport { ArrowDownIcon, ArrowUpIcon } from \"lucide-react\";\nimport React from \"react\";\nimport { DataTableRowSkeleton } from \"./DataTableRowSkeleton\";\nimport { DataTablePaginationSkeleton } from \"./DataTablePaginationSkeleton\";\nimport { DataTablePagination } from \"./DataTablePagination\";\nimport { Sortable, SortableItem } from \"@/components/ui/sortable\";\n\ninterface DataTableViewOptionsProps<TData, TValue> {\n table: TableType<TData>;\n columns: ColumnDef<TData, TValue>[];\n setQueryParams?: React.Dispatch<React.SetStateAction<any>>;\n isLoadingTable?: boolean;\n dataLabel: string;\n actionColumns?: string[];\n data: TData[];\n onDataChange?: (newData: TData[]) => void;\n}\n\ntype RowData = {\n uuid?: string;\n fundId?: number;\n};\n\nexport const DataTableMainFrameSortable = <TData extends RowData, TValue>({\n table,\n columns,\n isLoadingTable,\n setQueryParams,\n dataLabel,\n actionColumns = [],\n data,\n onDataChange,\n}: DataTableViewOptionsProps<TData, TValue>) => {\n const [newData, setNewData] = React.useState<TData[]>(data);\n\n React.useEffect(() => {\n setNewData(data);\n }, [data]);\n\n const handleValueChange = (newItems: TData[]) => {\n setNewData(newItems);\n if (onDataChange) {\n onDataChange(newItems);\n }\n };\n\n const currentPage = Number(table.getState().pagination.pageIndex).toString();\n const pageSize = Number(table.getState().pagination.pageSize).toString();\n const sorting = table.getState().sorting;\n React.useEffect(() => {\n if (!setQueryParams) return;\n const sortingParams = { sortingBy: \"\", order: \"\" };\n if (sorting.length > 0) {\n sortingParams.sortingBy = sorting[0].id;\n sortingParams.order = sorting[0].desc ? \"DESC\" : \"ASC\";\n }\n setQueryParams((prev: any) => ({\n ...prev,\n pageSize,\n page: currentPage,\n ...sortingParams,\n }));\n }, [currentPage, pageSize, setQueryParams, sorting]);\n\n return (\n <>\n <ScrollArea className=\"bg-background w-full rounded-md border whitespace-nowrap\">\n <Table>\n <TableHeader className=\"group rounded-md\">\n {table.getHeaderGroups().map((headerGroup) => {\n return (\n <TableRow key={headerGroup.id}>\n {headerGroup.headers.map((header) => {\n const {\n column: { id },\n } = header;\n\n const isActionsColumn = [\n \"actions\",\n ...actionColumns,\n ].includes(id);\n\n return (\n <TableHead key={header.id}>\n {header.isPlaceholder ? null : (\n <>\n <div\n {...{\n className:\n !isActionsColumn && header.column.getCanSort()\n ? \"flex w-full items-center justify-start cursor-pointer gap-1 font-medium\"\n : \"\",\n onClick: !isActionsColumn\n ? header.column.getToggleSortingHandler()\n : undefined,\n }}\n >\n {flexRender(\n header.column.columnDef.header,\n header.getContext(),\n )}\n\n {(!isActionsColumn &&\n header.column.getCanSort() &&\n {\n asc: (\n <ArrowDownIcon className=\"h-3.5 w-3.5\" />\n ),\n desc: <ArrowUpIcon className=\"h-3.5 w-3.5\" />,\n false: <CaretSortIcon className=\"h-4 w-4\" />,\n }[header.column.getIsSorted() as string]) ?? (\n <ArrowDownIcon className=\"h-3.5 w-3.5\" />\n )}\n </div>\n </>\n )}\n </TableHead>\n );\n })}\n </TableRow>\n );\n })}\n </TableHeader>\n\n <TableBody>\n <Sortable\n value={newData.map((item) => ({\n ...item,\n id: item.fundId || \"\",\n }))}\n onValueChange={handleValueChange}\n >\n {!isLoadingTable && table.getRowModel().rows?.length ? (\n table.getRowModel().rows.map((row) => {\n return (\n <SortableItem\n key={row.id}\n value={row.original.fundId || \"\"}\n asChild\n >\n <TableRow\n key={row.id}\n data-state={row.getIsSelected() && \"selected\"}\n className=\"even:bg-body/50\"\n >\n {row.getVisibleCells().map((cell) => {\n return (\n <TableCell key={cell.id} className=\"p-2\">\n <TextWrap>\n {flexRender(\n cell.column.columnDef.cell,\n cell.getContext(),\n )}\n </TextWrap>\n </TableCell>\n );\n })}\n </TableRow>\n </SortableItem>\n );\n })\n ) : isLoadingTable ? (\n <DataTableRowSkeleton\n columnCount={table.getAllColumns().length}\n />\n ) : (\n <TableRow>\n <TableCell\n colSpan={columns.length}\n className=\"h-24 text-center\"\n >\n Sem resultados\n </TableCell>\n </TableRow>\n )}\n </Sortable>\n </TableBody>\n </Table>\n <ScrollBar orientation=\"horizontal\" />\n </ScrollArea>\n\n {isLoadingTable ? (\n <DataTablePaginationSkeleton />\n ) : (\n <DataTablePagination table={table} dataLabel={dataLabel} />\n )}\n </>\n );\n};\n"],"names":["ArrowDown","createLucideIcon","d","key","ArrowUp","DataTableViewOptions","table","transformColumnName","triggerRef","React","useRef","Popover","modal","PopoverTrigger","asChild","Button","ref","aria-label","variant","ChevronDownIcon","className","PopoverContent","align","onCloseAutoFocus","current","focus","createElement","Command","CommandInput","placeholder","CommandList","CommandEmpty","CommandGroup","getAllColumns","filter","column","accessorFn","getCanHide","map","CommandItem","id","onSelect","toggleVisibility","getIsVisible","span","Check","cn","DataTableSearch","keySearch","div","SearchIcon","Input","value","getColumn","getFilterValue","onChange","event","setFilterValue","target","flexRender","Comp","props","component","proto","Object","getPrototypeOf","prototype","isReactComponent","isClassComponent","$$typeof","includes","description","isExoticComponent","DataTableRowSkeleton","columnCount","rowCount","cellWidths","shrinkZero","Fragment","Array","from","length","_","i","TableRow","String","j","TableCell","style","width","minWidth","Skeleton","DataTablePaginationSkeleton","DataTablePagination","pageSizeOptions","dataLabel","pageSize","currentPage","getState","pagination","pageIndex","getRowCount","totalPageCount","Math","ceil","p","getRowModel","rows","toLocaleString","Select","onValueChange","setPageSize","Number","SelectTrigger","SelectValue","SelectContent","SelectItem","onClick","previousPage","disabled","getCanPreviousPage","ChevronLeftIcon","items","push","setPageIndex","start","max","min","end","PaginationItem","PaginationEllipsis","renderPageNumbers","nextPage","getCanNextPage","ChevronRightIcon","DataTableMainFrame","columns","isLoadingTable","setQueryParams","actionColumns","toString","sorting","useEffect","sortingParams","sortingBy","order","desc","prev","page","ScrollArea","Table","TableHeader","getHeaderGroups","headerGroup","headers","header","isActionsColumn","TableHead","isPlaceholder","getCanSort","undefined","getToggleSortingHandler","columnDef","getContext","asc","ArrowDownIcon","ArrowUpIcon","false","CaretSortIcon","getIsSorted","TableBody","row","data-state","getIsSelected","getVisibleCells","cell","TextWrap","colSpan","ScrollBar","orientation","DataTableSkeleton","searchableColumnCount","filterableColumnCount","showViewOptions","withPagination","skeletonProps","DataTableStatus","uniqueStatusValues","renderStatusMessage","currentFilter","item","statusMessage","DataTableMainFrameSortable","data","onDataChange","newData","setNewData","useState","Sortable","fundId","newItems","SortableItem","original"],"mappings":"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","x_google_ignoreList":[0,1,4]}
@@ -1,2 +1,2 @@
1
- export{D as Dialog,a as DialogClose,b as DialogContent,c as DialogDescription,d as DialogFooter,e as DialogHeader,f as DialogOverlay,g as DialogPortal,h as DialogTitle,i as DialogTrigger}from"../chunks/dialog-B7nAaDwF.mjs";import"react";import"../chunks/index-D5hJSEl1.mjs";import"../chunks/createLucideIcon-DHet3kMe.mjs";import"../chunks/index-ew5utTUc.mjs";import"react/jsx-runtime";import"../chunks/index-BsTRBWyW.mjs";import"../chunks/index-CJMeIDw8.mjs";import"../chunks/index-D6Orj-nf.mjs";import"../chunks/index-Cv2row07.mjs";import"react-dom";import"@radix-ui/react-slot";import"../chunks/index-BESNMrh8.mjs";import"../chunks/utils-BpbSpG2q.mjs";import"../chunks/bundle-mjs-HknDzN6Z.mjs";
1
+ export{D as Dialog,a as DialogClose,b as DialogContent,c as DialogDescription,d as DialogFooter,e as DialogHeader,f as DialogOverlay,g as DialogPortal,h as DialogTitle,i as DialogTrigger}from"../chunks/dialog-TKsk0Iu2.mjs";import"react";import"../chunks/index-CluuXDB_.mjs";import"../chunks/index-CX5r7IKM.mjs";import"../chunks/index-CCYyT_rk.mjs";import"react/jsx-runtime";import"../chunks/index-Db2NO0t8.mjs";import"../chunks/index-D-s-TbR3.mjs";import"../chunks/index-CXrD_SvM.mjs";import"../chunks/index-DxtdpBCb.mjs";import"react-dom";import"@radix-ui/react-slot";import"../chunks/index-ChLuxn93.mjs";import"../chunks/tslib.es6-Cx3xzITX.mjs";import"../chunks/utils-jIFl11as.mjs";import"../chunks/bundle-mjs-CtG6Smj_.mjs";import"../chunks/x-xnz0lTd-.mjs";import"../chunks/createLucideIcon-CIn9dHnW.mjs";
2
2
  //# sourceMappingURL=index.mjs.map
@@ -1,2 +1,2 @@
1
- import*as e from"react";import{c as n,d as t,b as r,a as o,P as a,f as s}from"../chunks/index-ew5utTUc.mjs";import{u as c}from"../chunks/index-CJMeIDw8.mjs";import{P as i,d as u}from"../chunks/index-Cv2row07.mjs";import{createCollection as d}from"@radix-ui/react-collection";import{u as l}from"../chunks/index-B25rp7IZ.mjs";import{P as p,D as f}from"../chunks/index-D6Orj-nf.mjs";import{h as m,u as v,R as g,F as h}from"../chunks/index-BESNMrh8.mjs";import{u as w}from"../chunks/index-BsTRBWyW.mjs";import{c as b,R as y,A as _,C as M,a as x}from"../chunks/index-EftYm3Nj.mjs";import{jsx as C}from"react/jsx-runtime";import{Slot as D}from"@radix-ui/react-slot";import{c as R}from"../chunks/utils-BpbSpG2q.mjs";import{C as k}from"../chunks/check-wZkDbgjO.mjs";import{c as E}from"../chunks/createLucideIcon-DHet3kMe.mjs";import{C as I}from"../chunks/chevron-right-NuCkf5RR.mjs";import"react-dom";import"../chunks/index-CjcSvOxo.mjs";import"../chunks/bundle-mjs-HknDzN6Z.mjs";const N=E("Circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);var P="rovingFocusGroup.onEntryFocus",O={bubbles:!1,cancelable:!0},F="RovingFocusGroup",[T,S,A]=d(F),[K,L]=n(F,[A]),[z,G]=K(F),j=e.forwardRef(((e,n)=>C(T.Provider,{scope:e.__scopeRovingFocusGroup,children:C(T.Slot,{scope:e.__scopeRovingFocusGroup,children:C(U,{...e,ref:n})})})));j.displayName=F;var U=e.forwardRef(((n,a)=>{const{__scopeRovingFocusGroup:s,orientation:u,loop:d=!1,dir:p,currentTabStopId:f,defaultCurrentTabStopId:m,onCurrentTabStopIdChange:v,onEntryFocus:g,preventScrollOnEntryFocus:h=!1,...w}=n,b=e.useRef(null),y=r(a,b),_=l(p),[M=null,x]=c({prop:f,defaultProp:m,onChange:v}),[D,R]=e.useState(!1),k=o(g),E=S(s),I=e.useRef(!1),[N,F]=e.useState(0);return e.useEffect((()=>{const e=b.current;if(e)return e.addEventListener(P,k),()=>e.removeEventListener(P,k)}),[k]),C(z,{scope:s,orientation:u,dir:_,loop:d,currentTabStopId:M,onItemFocus:e.useCallback((e=>x(e)),[x]),onItemShiftTab:e.useCallback((()=>R(!0)),[]),onFocusableItemAdd:e.useCallback((()=>F((e=>e+1))),[]),onFocusableItemRemove:e.useCallback((()=>F((e=>e-1))),[]),children:C(i.div,{tabIndex:D||0===N?-1:0,"data-orientation":u,...w,ref:y,style:{outline:"none",...n.style},onMouseDown:t(n.onMouseDown,(()=>{I.current=!0})),onFocus:t(n.onFocus,(e=>{const n=!I.current;if(e.target===e.currentTarget&&n&&!D){const n=new CustomEvent(P,O);if(e.currentTarget.dispatchEvent(n),!n.defaultPrevented){const e=E().filter((e=>e.focusable));H([e.find((e=>e.active)),e.find((e=>e.id===M)),...e].filter(Boolean).map((e=>e.ref.current)),h)}}I.current=!1})),onBlur:t(n.onBlur,(()=>R(!1)))})})})),V="RovingFocusGroupItem",B=e.forwardRef(((n,r)=>{const{__scopeRovingFocusGroup:o,focusable:a=!0,active:s=!1,tabStopId:c,...u}=n,d=w(),l=c||d,p=G(V,o),f=p.currentTabStopId===l,m=S(o),{onFocusableItemAdd:v,onFocusableItemRemove:g}=p;return e.useEffect((()=>{if(a)return v(),()=>g()}),[a,v,g]),C(T.ItemSlot,{scope:o,id:l,focusable:a,active:s,children:C(i.span,{tabIndex:f?0:-1,"data-orientation":p.orientation,...u,ref:r,onMouseDown:t(n.onMouseDown,(e=>{a?p.onItemFocus(l):e.preventDefault()})),onFocus:t(n.onFocus,(()=>p.onItemFocus(l))),onKeyDown:t(n.onKeyDown,(e=>{if("Tab"===e.key&&e.shiftKey)return void p.onItemShiftTab();if(e.target!==e.currentTarget)return;const n=function(e,n,t){const r=function(e,n){return"rtl"!==n?e:"ArrowLeft"===e?"ArrowRight":"ArrowRight"===e?"ArrowLeft":e}(e.key,t);return"vertical"===n&&["ArrowLeft","ArrowRight"].includes(r)||"horizontal"===n&&["ArrowUp","ArrowDown"].includes(r)?void 0:X[r]}(e,p.orientation,p.dir);if(void 0!==n){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let o=m().filter((e=>e.focusable)).map((e=>e.ref.current));if("last"===n)o.reverse();else if("prev"===n||"next"===n){"prev"===n&&o.reverse();const a=o.indexOf(e.currentTarget);o=p.loop?(r=a+1,(t=o).map(((e,n)=>t[(r+n)%t.length]))):o.slice(a+1)}setTimeout((()=>H(o)))}var t,r}))})})}));B.displayName=V;var X={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function H(e,n=!1){const t=document.activeElement;for(const r of e){if(r===t)return;if(r.focus({preventScroll:n}),document.activeElement!==t)return}}var Y=j,q=B,W=["Enter"," "],Z=["ArrowUp","PageDown","End"],J=["ArrowDown","PageUp","Home",...Z],Q={ltr:[...W,"ArrowRight"],rtl:[...W,"ArrowLeft"]},$={ltr:["ArrowLeft"],rtl:["ArrowRight"]},ee="Menu",[ne,te,re]=d(ee),[oe,ae]=n(ee,[re,b,L]),se=b(),ce=L(),[ie,ue]=oe(ee),[de,le]=oe(ee),pe=n=>{const{__scopeMenu:t,open:r=!1,children:a,dir:s,onOpenChange:c,modal:i=!0}=n,u=se(t),[d,p]=e.useState(null),f=e.useRef(!1),m=o(c),v=l(s);return e.useEffect((()=>{const e=()=>{f.current=!0,document.addEventListener("pointerdown",n,{capture:!0,once:!0}),document.addEventListener("pointermove",n,{capture:!0,once:!0})},n=()=>f.current=!1;return document.addEventListener("keydown",e,{capture:!0}),()=>{document.removeEventListener("keydown",e,{capture:!0}),document.removeEventListener("pointerdown",n,{capture:!0}),document.removeEventListener("pointermove",n,{capture:!0})}}),[]),C(y,{...u,children:C(ie,{scope:t,open:r,onOpenChange:m,content:d,onContentChange:p,children:C(de,{scope:t,onClose:e.useCallback((()=>m(!1)),[m]),isUsingKeyboardRef:f,dir:v,modal:i,children:a})})})};pe.displayName=ee;var fe=e.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e,o=se(t);return C(_,{...o,...r,ref:n})}));fe.displayName="MenuAnchor";var me="MenuPortal",[ve,ge]=oe(me,{forceMount:void 0}),he=e=>{const{__scopeMenu:n,forceMount:t,children:r,container:o}=e,s=ue(me,n);return C(ve,{scope:n,forceMount:t,children:C(a,{present:t||s.open,children:C(p,{asChild:!0,container:o,children:r})})})};he.displayName=me;var we="MenuContent",[be,ye]=oe(we),_e=e.forwardRef(((e,n)=>{const t=ge(we,e.__scopeMenu),{forceMount:r=t.forceMount,...o}=e,s=ue(we,e.__scopeMenu),c=le(we,e.__scopeMenu);return C(ne.Provider,{scope:e.__scopeMenu,children:C(a,{present:r||s.open,children:C(ne.Slot,{scope:e.__scopeMenu,children:c.modal?C(Me,{...o,ref:n}):C(xe,{...o,ref:n})})})})})),Me=e.forwardRef(((n,o)=>{const a=ue(we,n.__scopeMenu),s=e.useRef(null),c=r(o,s);return e.useEffect((()=>{const e=s.current;if(e)return m(e)}),[]),C(Ce,{...n,ref:c,trapFocus:a.open,disableOutsidePointerEvents:a.open,disableOutsideScroll:!0,onFocusOutside:t(n.onFocusOutside,(e=>e.preventDefault()),{checkForDefaultPrevented:!1}),onDismiss:()=>a.onOpenChange(!1)})})),xe=e.forwardRef(((e,n)=>{const t=ue(we,e.__scopeMenu);return C(Ce,{...e,ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>t.onOpenChange(!1)})})),Ce=e.forwardRef(((n,o)=>{const{__scopeMenu:a,loop:s=!1,trapFocus:c,onOpenAutoFocus:i,onCloseAutoFocus:u,disableOutsidePointerEvents:d,onEntryFocus:l,onEscapeKeyDown:p,onPointerDownOutside:m,onFocusOutside:w,onInteractOutside:b,onDismiss:y,disableOutsideScroll:_,...x}=n,R=ue(we,a),k=le(we,a),E=se(a),I=ce(a),N=te(a),[P,O]=e.useState(null),F=e.useRef(null),T=r(o,F,R.onContentChange),S=e.useRef(0),A=e.useRef(""),K=e.useRef(0),L=e.useRef(null),z=e.useRef("right"),G=e.useRef(0),j=_?g:e.Fragment,U=_?{as:D,allowPinchZoom:!0}:void 0,V=e=>{const n=A.current+e,t=N().filter((e=>!e.disabled)),r=document.activeElement,o=t.find((e=>e.ref.current===r))?.textValue,a=function(e,n,t){const r=n.length>1&&Array.from(n).every((e=>e===n[0])),o=r?n[0]:n,a=t?e.indexOf(t):-1;let s=(c=e,i=Math.max(a,0),c.map(((e,n)=>c[(i+n)%c.length])));var c,i;1===o.length&&(s=s.filter((e=>e!==t)));const u=s.find((e=>e.toLowerCase().startsWith(o.toLowerCase())));return u!==t?u:void 0}(t.map((e=>e.textValue)),n,o),s=t.find((e=>e.textValue===a))?.ref.current;!function e(n){A.current=n,window.clearTimeout(S.current),""!==n&&(S.current=window.setTimeout((()=>e("")),1e3))}(n),s&&setTimeout((()=>s.focus()))};e.useEffect((()=>()=>window.clearTimeout(S.current)),[]),v();const B=e.useCallback((e=>z.current===L.current?.side&&function(e,n){if(!n)return!1;const t={x:e.clientX,y:e.clientY};return function(e,n){const{x:t,y:r}=e;let o=!1;for(let e=0,a=n.length-1;e<n.length;a=e++){const s=n[e].x,c=n[e].y,i=n[a].x,u=n[a].y;c>r!=u>r&&t<(i-s)*(r-c)/(u-c)+s&&(o=!o)}return o}(t,n)}(e,L.current?.area)),[]);return C(be,{scope:a,searchRef:A,onItemEnter:e.useCallback((e=>{B(e)&&e.preventDefault()}),[B]),onItemLeave:e.useCallback((e=>{B(e)||(F.current?.focus(),O(null))}),[B]),onTriggerLeave:e.useCallback((e=>{B(e)&&e.preventDefault()}),[B]),pointerGraceTimerRef:K,onPointerGraceIntentChange:e.useCallback((e=>{L.current=e}),[]),children:C(j,{...U,children:C(h,{asChild:!0,trapped:c,onMountAutoFocus:t(i,(e=>{e.preventDefault(),F.current?.focus({preventScroll:!0})})),onUnmountAutoFocus:u,children:C(f,{asChild:!0,disableOutsidePointerEvents:d,onEscapeKeyDown:p,onPointerDownOutside:m,onFocusOutside:w,onInteractOutside:b,onDismiss:y,children:C(Y,{asChild:!0,...I,dir:k.dir,orientation:"vertical",loop:s,currentTabStopId:P,onCurrentTabStopIdChange:O,onEntryFocus:t(l,(e=>{k.isUsingKeyboardRef.current||e.preventDefault()})),preventScrollOnEntryFocus:!0,children:C(M,{role:"menu","aria-orientation":"vertical","data-state":Qe(R.open),"data-radix-menu-content":"",dir:k.dir,...E,...x,ref:T,style:{outline:"none",...x.style},onKeyDown:t(x.onKeyDown,(e=>{const n=e.target.closest("[data-radix-menu-content]")===e.currentTarget,t=e.ctrlKey||e.altKey||e.metaKey,r=1===e.key.length;n&&("Tab"===e.key&&e.preventDefault(),!t&&r&&V(e.key));const o=F.current;if(e.target!==o)return;if(!J.includes(e.key))return;e.preventDefault();const a=N().filter((e=>!e.disabled)).map((e=>e.ref.current));Z.includes(e.key)&&a.reverse(),function(e){const n=document.activeElement;for(const t of e){if(t===n)return;if(t.focus(),document.activeElement!==n)return}}(a)})),onBlur:t(n.onBlur,(e=>{e.currentTarget.contains(e.target)||(window.clearTimeout(S.current),A.current="")})),onPointerMove:t(n.onPointerMove,nn((e=>{const n=e.target,t=G.current!==e.clientX;if(e.currentTarget.contains(n)&&t){const n=e.clientX>G.current?"right":"left";z.current=n,G.current=e.clientX}})))})})})})})})}));_e.displayName=we;var De=e.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e;return C(i.div,{role:"group",...r,ref:n})}));De.displayName="MenuGroup";var Re=e.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e;return C(i.div,{...r,ref:n})}));Re.displayName="MenuLabel";var ke="MenuItem",Ee="menu.itemSelect",Ie=e.forwardRef(((n,o)=>{const{disabled:a=!1,onSelect:s,...c}=n,i=e.useRef(null),d=le(ke,n.__scopeMenu),l=ye(ke,n.__scopeMenu),p=r(o,i),f=e.useRef(!1);return C(Ne,{...c,ref:p,disabled:a,onClick:t(n.onClick,(()=>{const e=i.current;if(!a&&e){const n=new CustomEvent(Ee,{bubbles:!0,cancelable:!0});e.addEventListener(Ee,(e=>s?.(e)),{once:!0}),u(e,n),n.defaultPrevented?f.current=!1:d.onClose()}})),onPointerDown:e=>{n.onPointerDown?.(e),f.current=!0},onPointerUp:t(n.onPointerUp,(e=>{f.current||e.currentTarget?.click()})),onKeyDown:t(n.onKeyDown,(e=>{const n=""!==l.searchRef.current;a||n&&" "===e.key||W.includes(e.key)&&(e.currentTarget.click(),e.preventDefault())}))})}));Ie.displayName=ke;var Ne=e.forwardRef(((n,o)=>{const{__scopeMenu:a,disabled:s=!1,textValue:c,...u}=n,d=ye(ke,a),l=ce(a),p=e.useRef(null),f=r(o,p),[m,v]=e.useState(!1),[g,h]=e.useState("");return e.useEffect((()=>{const e=p.current;e&&h((e.textContent??"").trim())}),[u.children]),C(ne.ItemSlot,{scope:a,disabled:s,textValue:c??g,children:C(q,{asChild:!0,...l,focusable:!s,children:C(i.div,{role:"menuitem","data-highlighted":m?"":void 0,"aria-disabled":s||void 0,"data-disabled":s?"":void 0,...u,ref:f,onPointerMove:t(n.onPointerMove,nn((e=>{if(s)d.onItemLeave(e);else if(d.onItemEnter(e),!e.defaultPrevented){e.currentTarget.focus({preventScroll:!0})}}))),onPointerLeave:t(n.onPointerLeave,nn((e=>d.onItemLeave(e)))),onFocus:t(n.onFocus,(()=>v(!0))),onBlur:t(n.onBlur,(()=>v(!1)))})})})})),Pe=e.forwardRef(((e,n)=>{const{checked:r=!1,onCheckedChange:o,...a}=e;return C(ze,{scope:e.__scopeMenu,checked:r,children:C(Ie,{role:"menuitemcheckbox","aria-checked":$e(r)?"mixed":r,...a,ref:n,"data-state":en(r),onSelect:t(a.onSelect,(()=>o?.(!!$e(r)||!r)),{checkForDefaultPrevented:!1})})})}));Pe.displayName="MenuCheckboxItem";var Oe="MenuRadioGroup",[Fe,Te]=oe(Oe,{value:void 0,onValueChange:()=>{}}),Se=e.forwardRef(((e,n)=>{const{value:t,onValueChange:r,...a}=e,s=o(r);return C(Fe,{scope:e.__scopeMenu,value:t,onValueChange:s,children:C(De,{...a,ref:n})})}));Se.displayName=Oe;var Ae="MenuRadioItem",Ke=e.forwardRef(((e,n)=>{const{value:r,...o}=e,a=Te(Ae,e.__scopeMenu),s=r===a.value;return C(ze,{scope:e.__scopeMenu,checked:s,children:C(Ie,{role:"menuitemradio","aria-checked":s,...o,ref:n,"data-state":en(s),onSelect:t(o.onSelect,(()=>a.onValueChange?.(r)),{checkForDefaultPrevented:!1})})})}));Ke.displayName=Ae;var Le="MenuItemIndicator",[ze,Ge]=oe(Le,{checked:!1}),je=e.forwardRef(((e,n)=>{const{__scopeMenu:t,forceMount:r,...o}=e,s=Ge(Le,t);return C(a,{present:r||$e(s.checked)||!0===s.checked,children:C(i.span,{...o,ref:n,"data-state":en(s.checked)})})}));je.displayName=Le;var Ue=e.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e;return C(i.div,{role:"separator","aria-orientation":"horizontal",...r,ref:n})}));Ue.displayName="MenuSeparator";var Ve=e.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e,o=se(t);return C(x,{...o,...r,ref:n})}));Ve.displayName="MenuArrow";var Be="MenuSub",[Xe,He]=oe(Be),Ye=n=>{const{__scopeMenu:t,children:r,open:a=!1,onOpenChange:s}=n,c=ue(Be,t),i=se(t),[u,d]=e.useState(null),[l,p]=e.useState(null),f=o(s);return e.useEffect((()=>(!1===c.open&&f(!1),()=>f(!1))),[c.open,f]),C(y,{...i,children:C(ie,{scope:t,open:a,onOpenChange:f,content:l,onContentChange:p,children:C(Xe,{scope:t,contentId:w(),triggerId:w(),trigger:u,onTriggerChange:d,children:r})})})};Ye.displayName=Be;var qe="MenuSubTrigger",We=e.forwardRef(((n,r)=>{const o=ue(qe,n.__scopeMenu),a=le(qe,n.__scopeMenu),c=He(qe,n.__scopeMenu),i=ye(qe,n.__scopeMenu),u=e.useRef(null),{pointerGraceTimerRef:d,onPointerGraceIntentChange:l}=i,p={__scopeMenu:n.__scopeMenu},f=e.useCallback((()=>{u.current&&window.clearTimeout(u.current),u.current=null}),[]);return e.useEffect((()=>f),[f]),e.useEffect((()=>{const e=d.current;return()=>{window.clearTimeout(e),l(null)}}),[d,l]),C(fe,{asChild:!0,...p,children:C(Ne,{id:c.triggerId,"aria-haspopup":"menu","aria-expanded":o.open,"aria-controls":c.contentId,"data-state":Qe(o.open),...n,ref:s(r,c.onTriggerChange),onClick:e=>{n.onClick?.(e),n.disabled||e.defaultPrevented||(e.currentTarget.focus(),o.open||o.onOpenChange(!0))},onPointerMove:t(n.onPointerMove,nn((e=>{i.onItemEnter(e),e.defaultPrevented||n.disabled||o.open||u.current||(i.onPointerGraceIntentChange(null),u.current=window.setTimeout((()=>{o.onOpenChange(!0),f()}),100))}))),onPointerLeave:t(n.onPointerLeave,nn((e=>{f();const n=o.content?.getBoundingClientRect();if(n){const t=o.content?.dataset.side,r="right"===t,a=r?-5:5,s=n[r?"left":"right"],c=n[r?"right":"left"];i.onPointerGraceIntentChange({area:[{x:e.clientX+a,y:e.clientY},{x:s,y:n.top},{x:c,y:n.top},{x:c,y:n.bottom},{x:s,y:n.bottom}],side:t}),window.clearTimeout(d.current),d.current=window.setTimeout((()=>i.onPointerGraceIntentChange(null)),300)}else{if(i.onTriggerLeave(e),e.defaultPrevented)return;i.onPointerGraceIntentChange(null)}}))),onKeyDown:t(n.onKeyDown,(e=>{const t=""!==i.searchRef.current;n.disabled||t&&" "===e.key||Q[a.dir].includes(e.key)&&(o.onOpenChange(!0),o.content?.focus(),e.preventDefault())}))})})}));We.displayName=qe;var Ze="MenuSubContent",Je=e.forwardRef(((n,o)=>{const s=ge(we,n.__scopeMenu),{forceMount:c=s.forceMount,...i}=n,u=ue(we,n.__scopeMenu),d=le(we,n.__scopeMenu),l=He(Ze,n.__scopeMenu),p=e.useRef(null),f=r(o,p);return C(ne.Provider,{scope:n.__scopeMenu,children:C(a,{present:c||u.open,children:C(ne.Slot,{scope:n.__scopeMenu,children:C(Ce,{id:l.contentId,"aria-labelledby":l.triggerId,...i,ref:f,align:"start",side:"rtl"===d.dir?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:e=>{d.isUsingKeyboardRef.current&&p.current?.focus(),e.preventDefault()},onCloseAutoFocus:e=>e.preventDefault(),onFocusOutside:t(n.onFocusOutside,(e=>{e.target!==l.trigger&&u.onOpenChange(!1)})),onEscapeKeyDown:t(n.onEscapeKeyDown,(e=>{d.onClose(),e.preventDefault()})),onKeyDown:t(n.onKeyDown,(e=>{const n=e.currentTarget.contains(e.target),t=$[d.dir].includes(e.key);n&&t&&(u.onOpenChange(!1),l.trigger?.focus(),e.preventDefault())}))})})})})}));function Qe(e){return e?"open":"closed"}function $e(e){return"indeterminate"===e}function en(e){return $e(e)?"indeterminate":e?"checked":"unchecked"}function nn(e){return n=>"mouse"===n.pointerType?e(n):void 0}Je.displayName=Ze;var tn=pe,rn=fe,on=he,an=_e,sn=De,cn=Re,un=Ie,dn=Pe,ln=Se,pn=Ke,fn=je,mn=Ue,vn=Ve,gn=Ye,hn=We,wn=Je,bn="DropdownMenu",[yn,_n]=n(bn,[ae]),Mn=ae(),[xn,Cn]=yn(bn),Dn=n=>{const{__scopeDropdownMenu:t,children:r,dir:o,open:a,defaultOpen:s,onOpenChange:i,modal:u=!0}=n,d=Mn(t),l=e.useRef(null),[p=!1,f]=c({prop:a,defaultProp:s,onChange:i});return C(xn,{scope:t,triggerId:w(),triggerRef:l,contentId:w(),open:p,onOpenChange:f,onOpenToggle:e.useCallback((()=>f((e=>!e))),[f]),modal:u,children:C(tn,{...d,open:p,onOpenChange:f,dir:o,modal:u,children:r})})};Dn.displayName=bn;var Rn="DropdownMenuTrigger",kn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,disabled:o=!1,...a}=e,c=Cn(Rn,r),u=Mn(r);return C(rn,{asChild:!0,...u,children:C(i.button,{type:"button",id:c.triggerId,"aria-haspopup":"menu","aria-expanded":c.open,"aria-controls":c.open?c.contentId:void 0,"data-state":c.open?"open":"closed","data-disabled":o?"":void 0,disabled:o,...a,ref:s(n,c.triggerRef),onPointerDown:t(e.onPointerDown,(e=>{o||0!==e.button||!1!==e.ctrlKey||(c.onOpenToggle(),c.open||e.preventDefault())})),onKeyDown:t(e.onKeyDown,(e=>{o||(["Enter"," "].includes(e.key)&&c.onOpenToggle(),"ArrowDown"===e.key&&c.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(e.key)&&e.preventDefault())}))})})}));kn.displayName=Rn;var En=e=>{const{__scopeDropdownMenu:n,...t}=e,r=Mn(n);return C(on,{...r,...t})};En.displayName="DropdownMenuPortal";var In="DropdownMenuContent",Nn=e.forwardRef(((n,r)=>{const{__scopeDropdownMenu:o,...a}=n,s=Cn(In,o),c=Mn(o),i=e.useRef(!1);return C(an,{id:s.contentId,"aria-labelledby":s.triggerId,...c,...a,ref:r,onCloseAutoFocus:t(n.onCloseAutoFocus,(e=>{i.current||s.triggerRef.current?.focus(),i.current=!1,e.preventDefault()})),onInteractOutside:t(n.onInteractOutside,(e=>{const n=e.detail.originalEvent,t=0===n.button&&!0===n.ctrlKey,r=2===n.button||t;s.modal&&!r||(i.current=!0)})),style:{...n.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})}));Nn.displayName=In;var Pn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=Mn(t);return C(sn,{...o,...r,ref:n})}));Pn.displayName="DropdownMenuGroup";var On=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=Mn(t);return C(cn,{...o,...r,ref:n})}));On.displayName="DropdownMenuLabel";var Fn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=Mn(t);return C(un,{...o,...r,ref:n})}));Fn.displayName="DropdownMenuItem";var Tn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=Mn(t);return C(dn,{...o,...r,ref:n})}));Tn.displayName="DropdownMenuCheckboxItem";var Sn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=Mn(t);return C(ln,{...o,...r,ref:n})}));Sn.displayName="DropdownMenuRadioGroup";var An=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=Mn(t);return C(pn,{...o,...r,ref:n})}));An.displayName="DropdownMenuRadioItem";var Kn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=Mn(t);return C(fn,{...o,...r,ref:n})}));Kn.displayName="DropdownMenuItemIndicator";var Ln=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=Mn(t);return C(mn,{...o,...r,ref:n})}));Ln.displayName="DropdownMenuSeparator";e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=Mn(t);return C(vn,{...o,...r,ref:n})})).displayName="DropdownMenuArrow";var zn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=Mn(t);return C(hn,{...o,...r,ref:n})}));zn.displayName="DropdownMenuSubTrigger";var Gn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=Mn(t);return C(wn,{...o,...r,ref:n,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})}));Gn.displayName="DropdownMenuSubContent";var jn=Dn,Un=kn,Vn=En,Bn=Nn,Xn=Pn,Hn=On,Yn=Fn,qn=Tn,Wn=Sn,Zn=An,Jn=Kn,Qn=Ln,$n=e=>{const{__scopeDropdownMenu:n,children:t,open:r,onOpenChange:o,defaultOpen:a}=e,s=Mn(n),[i=!1,u]=c({prop:r,defaultProp:a,onChange:o});return C(gn,{...s,open:i,onOpenChange:u,children:t})},et=zn,nt=Gn;function tt({...n}){return e.createElement(jn,{"data-slot":"dropdown-menu",...n})}function rt({...n}){return e.createElement(Vn,{"data-slot":"dropdown-menu-portal",...n})}function ot({...n}){return e.createElement(Un,{"data-slot":"dropdown-menu-trigger",...n})}function at({className:n,sideOffset:t=4,...r}){return e.createElement(Vn,null,e.createElement(Bn,{"data-slot":"dropdown-menu-content",sideOffset:t,className:R("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=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 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md",n),...r}))}function st({...n}){return e.createElement(Xn,{"data-slot":"dropdown-menu-group",...n})}function ct({className:n,inset:t,variant:r="default",...o}){return e.createElement(Yn,{"data-slot":"dropdown-menu-item","data-inset":t,"data-variant":r,className:R("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive-foreground data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/40 data-[variant=destructive]:focus:text-destructive-foreground data-[variant=destructive]:*:[svg]:!text-destructive-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",n),...o})}function it({className:n,children:t,checked:r,...o}){return e.createElement(qn,{"data-slot":"dropdown-menu-checkbox-item",className:R("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",n),checked:r,...o},e.createElement("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center"},e.createElement(Jn,null,e.createElement(k,{className:"size-4"}))),t)}function ut({...n}){return e.createElement(Wn,{"data-slot":"dropdown-menu-radio-group",...n})}function dt({className:n,children:t,...r}){return e.createElement(Zn,{"data-slot":"dropdown-menu-radio-item",className:R("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",n),...r},e.createElement("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center"},e.createElement(Jn,null,e.createElement(N,{className:"size-2 fill-current"}))),t)}function lt({className:n,inset:t,...r}){return e.createElement(Hn,{"data-slot":"dropdown-menu-label","data-inset":t,className:R("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",n),...r})}function pt({className:n,...t}){return e.createElement(Qn,{"data-slot":"dropdown-menu-separator",className:R("bg-border -mx-1 my-1 h-px",n),...t})}function ft({className:n,...t}){return e.createElement("span",{"data-slot":"dropdown-menu-shortcut",className:R("text-muted-foreground ml-auto text-xs tracking-widest",n),...t})}function mt({...n}){return e.createElement($n,{"data-slot":"dropdown-menu-sub",...n})}function vt({className:n,inset:t,children:r,...o}){return e.createElement(et,{"data-slot":"dropdown-menu-sub-trigger","data-inset":t,className:R("focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8",n),...o},r,e.createElement(I,{className:"ml-auto size-4"}))}function gt({className:n,...t}){return e.createElement(nt,{"data-slot":"dropdown-menu-sub-content",className:R("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=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 z-50 min-w-[8rem] overflow-hidden rounded-md border p-1 shadow-lg",n),...t})}export{tt as DropdownMenu,it as DropdownMenuCheckboxItem,at as DropdownMenuContent,st as DropdownMenuGroup,ct as DropdownMenuItem,lt as DropdownMenuLabel,rt as DropdownMenuPortal,ut as DropdownMenuRadioGroup,dt as DropdownMenuRadioItem,pt as DropdownMenuSeparator,ft as DropdownMenuShortcut,mt as DropdownMenuSub,gt as DropdownMenuSubContent,vt as DropdownMenuSubTrigger,ot as DropdownMenuTrigger};
1
+ import*as e from"react";import{a as n,P as t,u as r,c as o,d as a}from"../chunks/index-CX5r7IKM.mjs";import{c as s}from"../chunks/index-CCYyT_rk.mjs";import{u as c}from"../chunks/index-D-s-TbR3.mjs";import{P as d,d as i}from"../chunks/index-DxtdpBCb.mjs";import{createCollection as u}from"@radix-ui/react-collection";import{u as l}from"../chunks/index-BpJwNLRW.mjs";import{P as p,D as f}from"../chunks/index-CXrD_SvM.mjs";import{h as m,u as h,R as g,F as v}from"../chunks/index-ChLuxn93.mjs";import{u as w}from"../chunks/index-Db2NO0t8.mjs";import{c as _,R as y,A as b,C as M,a as x}from"../chunks/index-DOx7g1Qo.mjs";import{c as C,I as D,R as k}from"../chunks/index-C598HM8V.mjs";import{Slot as R}from"@radix-ui/react-slot";import{jsx as E}from"react/jsx-runtime";import{c as N}from"../chunks/utils-jIFl11as.mjs";import{C as O}from"../chunks/check-DjRtCxG6.mjs";import{c as P}from"../chunks/createLucideIcon-CIn9dHnW.mjs";import{C as I}from"../chunks/chevron-right-CoNJE7ZW.mjs";import"react-dom";import"../chunks/tslib.es6-Cx3xzITX.mjs";import"../chunks/index-DzMQps4Q.mjs";import"../chunks/bundle-mjs-CtG6Smj_.mjs";const T=P("Circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);var S=["Enter"," "],F=["ArrowUp","PageDown","End"],L=["ArrowDown","PageUp","Home",...F],A={ltr:[...S,"ArrowRight"],rtl:[...S,"ArrowLeft"]},K={ltr:["ArrowLeft"],rtl:["ArrowRight"]},j="Menu",[z,G,V]=u(j),[U,B]=s(j,[V,_,C]),X=_(),Y=C(),[q,H]=U(j),[W,Z]=U(j),J=t=>{const{__scopeMenu:r,open:o=!1,children:a,dir:s,onOpenChange:c,modal:d=!0}=t,i=X(r),[u,p]=e.useState(null),f=e.useRef(!1),m=n(c),h=l(s);return e.useEffect((()=>{const e=()=>{f.current=!0,document.addEventListener("pointerdown",n,{capture:!0,once:!0}),document.addEventListener("pointermove",n,{capture:!0,once:!0})},n=()=>f.current=!1;return document.addEventListener("keydown",e,{capture:!0}),()=>{document.removeEventListener("keydown",e,{capture:!0}),document.removeEventListener("pointerdown",n,{capture:!0}),document.removeEventListener("pointermove",n,{capture:!0})}}),[]),E(y,{...i,children:E(q,{scope:r,open:o,onOpenChange:m,content:u,onContentChange:p,children:E(W,{scope:r,onClose:e.useCallback((()=>m(!1)),[m]),isUsingKeyboardRef:f,dir:h,modal:d,children:a})})})};J.displayName=j;var Q=e.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e,o=X(t);return E(b,{...o,...r,ref:n})}));Q.displayName="MenuAnchor";var $="MenuPortal",[ee,ne]=U($,{forceMount:void 0}),te=e=>{const{__scopeMenu:n,forceMount:r,children:o,container:a}=e,s=H($,n);return E(ee,{scope:n,forceMount:r,children:E(t,{present:r||s.open,children:E(p,{asChild:!0,container:a,children:o})})})};te.displayName=$;var re="MenuContent",[oe,ae]=U(re),se=e.forwardRef(((e,n)=>{const r=ne(re,e.__scopeMenu),{forceMount:o=r.forceMount,...a}=e,s=H(re,e.__scopeMenu),c=Z(re,e.__scopeMenu);return E(z.Provider,{scope:e.__scopeMenu,children:E(t,{present:o||s.open,children:E(z.Slot,{scope:e.__scopeMenu,children:c.modal?E(ce,{...a,ref:n}):E(de,{...a,ref:n})})})})})),ce=e.forwardRef(((n,t)=>{const a=H(re,n.__scopeMenu),s=e.useRef(null),c=r(t,s);return e.useEffect((()=>{const e=s.current;if(e)return m(e)}),[]),E(ie,{...n,ref:c,trapFocus:a.open,disableOutsidePointerEvents:a.open,disableOutsideScroll:!0,onFocusOutside:o(n.onFocusOutside,(e=>e.preventDefault()),{checkForDefaultPrevented:!1}),onDismiss:()=>a.onOpenChange(!1)})})),de=e.forwardRef(((e,n)=>{const t=H(re,e.__scopeMenu);return E(ie,{...e,ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>t.onOpenChange(!1)})})),ie=e.forwardRef(((n,t)=>{const{__scopeMenu:a,loop:s=!1,trapFocus:c,onOpenAutoFocus:d,onCloseAutoFocus:i,disableOutsidePointerEvents:u,onEntryFocus:l,onEscapeKeyDown:p,onPointerDownOutside:m,onFocusOutside:w,onInteractOutside:_,onDismiss:y,disableOutsideScroll:b,...x}=n,C=H(re,a),D=Z(re,a),N=X(a),O=Y(a),P=G(a),[I,T]=e.useState(null),S=e.useRef(null),A=r(t,S,C.onContentChange),K=e.useRef(0),j=e.useRef(""),z=e.useRef(0),V=e.useRef(null),U=e.useRef("right"),B=e.useRef(0),q=b?g:e.Fragment,W=b?{as:R,allowPinchZoom:!0}:void 0,J=e=>{const n=j.current+e,t=P().filter((e=>!e.disabled)),r=document.activeElement,o=t.find((e=>e.ref.current===r))?.textValue,a=function(e,n,t){const r=n.length>1&&Array.from(n).every((e=>e===n[0])),o=r?n[0]:n,a=t?e.indexOf(t):-1;let s=(c=e,d=Math.max(a,0),c.map(((e,n)=>c[(d+n)%c.length])));var c,d;1===o.length&&(s=s.filter((e=>e!==t)));const i=s.find((e=>e.toLowerCase().startsWith(o.toLowerCase())));return i!==t?i:void 0}(t.map((e=>e.textValue)),n,o),s=t.find((e=>e.textValue===a))?.ref.current;!function e(n){j.current=n,window.clearTimeout(K.current),""!==n&&(K.current=window.setTimeout((()=>e("")),1e3))}(n),s&&setTimeout((()=>s.focus()))};e.useEffect((()=>()=>window.clearTimeout(K.current)),[]),h();const Q=e.useCallback((e=>U.current===V.current?.side&&function(e,n){if(!n)return!1;const t={x:e.clientX,y:e.clientY};return function(e,n){const{x:t,y:r}=e;let o=!1;for(let e=0,a=n.length-1;e<n.length;a=e++){const s=n[e].x,c=n[e].y,d=n[a].x,i=n[a].y;c>r!=i>r&&t<(d-s)*(r-c)/(i-c)+s&&(o=!o)}return o}(t,n)}(e,V.current?.area)),[]);return E(oe,{scope:a,searchRef:j,onItemEnter:e.useCallback((e=>{Q(e)&&e.preventDefault()}),[Q]),onItemLeave:e.useCallback((e=>{Q(e)||(S.current?.focus(),T(null))}),[Q]),onTriggerLeave:e.useCallback((e=>{Q(e)&&e.preventDefault()}),[Q]),pointerGraceTimerRef:z,onPointerGraceIntentChange:e.useCallback((e=>{V.current=e}),[]),children:E(q,{...W,children:E(v,{asChild:!0,trapped:c,onMountAutoFocus:o(d,(e=>{e.preventDefault(),S.current?.focus({preventScroll:!0})})),onUnmountAutoFocus:i,children:E(f,{asChild:!0,disableOutsidePointerEvents:u,onEscapeKeyDown:p,onPointerDownOutside:m,onFocusOutside:w,onInteractOutside:_,onDismiss:y,children:E(k,{asChild:!0,...O,dir:D.dir,orientation:"vertical",loop:s,currentTabStopId:I,onCurrentTabStopIdChange:T,onEntryFocus:o(l,(e=>{D.isUsingKeyboardRef.current||e.preventDefault()})),preventScrollOnEntryFocus:!0,children:E(M,{role:"menu","aria-orientation":"vertical","data-state":Ae(C.open),"data-radix-menu-content":"",dir:D.dir,...N,...x,ref:A,style:{outline:"none",...x.style},onKeyDown:o(x.onKeyDown,(e=>{const n=e.target.closest("[data-radix-menu-content]")===e.currentTarget,t=e.ctrlKey||e.altKey||e.metaKey,r=1===e.key.length;n&&("Tab"===e.key&&e.preventDefault(),!t&&r&&J(e.key));const o=S.current;if(e.target!==o)return;if(!L.includes(e.key))return;e.preventDefault();const a=P().filter((e=>!e.disabled)).map((e=>e.ref.current));F.includes(e.key)&&a.reverse(),function(e){const n=document.activeElement;for(const t of e){if(t===n)return;if(t.focus(),document.activeElement!==n)return}}(a)})),onBlur:o(n.onBlur,(e=>{e.currentTarget.contains(e.target)||(window.clearTimeout(K.current),j.current="")})),onPointerMove:o(n.onPointerMove,ze((e=>{const n=e.target,t=B.current!==e.clientX;if(e.currentTarget.contains(n)&&t){const n=e.clientX>B.current?"right":"left";U.current=n,B.current=e.clientX}})))})})})})})})}));se.displayName=re;var ue=e.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e;return E(d.div,{role:"group",...r,ref:n})}));ue.displayName="MenuGroup";var le=e.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e;return E(d.div,{...r,ref:n})}));le.displayName="MenuLabel";var pe="MenuItem",fe="menu.itemSelect",me=e.forwardRef(((n,t)=>{const{disabled:a=!1,onSelect:s,...c}=n,d=e.useRef(null),u=Z(pe,n.__scopeMenu),l=ae(pe,n.__scopeMenu),p=r(t,d),f=e.useRef(!1);return E(he,{...c,ref:p,disabled:a,onClick:o(n.onClick,(()=>{const e=d.current;if(!a&&e){const n=new CustomEvent(fe,{bubbles:!0,cancelable:!0});e.addEventListener(fe,(e=>s?.(e)),{once:!0}),i(e,n),n.defaultPrevented?f.current=!1:u.onClose()}})),onPointerDown:e=>{n.onPointerDown?.(e),f.current=!0},onPointerUp:o(n.onPointerUp,(e=>{f.current||e.currentTarget?.click()})),onKeyDown:o(n.onKeyDown,(e=>{const n=""!==l.searchRef.current;a||n&&" "===e.key||S.includes(e.key)&&(e.currentTarget.click(),e.preventDefault())}))})}));me.displayName=pe;var he=e.forwardRef(((n,t)=>{const{__scopeMenu:a,disabled:s=!1,textValue:c,...i}=n,u=ae(pe,a),l=Y(a),p=e.useRef(null),f=r(t,p),[m,h]=e.useState(!1),[g,v]=e.useState("");return e.useEffect((()=>{const e=p.current;e&&v((e.textContent??"").trim())}),[i.children]),E(z.ItemSlot,{scope:a,disabled:s,textValue:c??g,children:E(D,{asChild:!0,...l,focusable:!s,children:E(d.div,{role:"menuitem","data-highlighted":m?"":void 0,"aria-disabled":s||void 0,"data-disabled":s?"":void 0,...i,ref:f,onPointerMove:o(n.onPointerMove,ze((e=>{if(s)u.onItemLeave(e);else if(u.onItemEnter(e),!e.defaultPrevented){e.currentTarget.focus({preventScroll:!0})}}))),onPointerLeave:o(n.onPointerLeave,ze((e=>u.onItemLeave(e)))),onFocus:o(n.onFocus,(()=>h(!0))),onBlur:o(n.onBlur,(()=>h(!1)))})})})})),ge=e.forwardRef(((e,n)=>{const{checked:t=!1,onCheckedChange:r,...a}=e;return E(Ce,{scope:e.__scopeMenu,checked:t,children:E(me,{role:"menuitemcheckbox","aria-checked":Ke(t)?"mixed":t,...a,ref:n,"data-state":je(t),onSelect:o(a.onSelect,(()=>r?.(!!Ke(t)||!t)),{checkForDefaultPrevented:!1})})})}));ge.displayName="MenuCheckboxItem";var ve="MenuRadioGroup",[we,_e]=U(ve,{value:void 0,onValueChange:()=>{}}),ye=e.forwardRef(((e,t)=>{const{value:r,onValueChange:o,...a}=e,s=n(o);return E(we,{scope:e.__scopeMenu,value:r,onValueChange:s,children:E(ue,{...a,ref:t})})}));ye.displayName=ve;var be="MenuRadioItem",Me=e.forwardRef(((e,n)=>{const{value:t,...r}=e,a=_e(be,e.__scopeMenu),s=t===a.value;return E(Ce,{scope:e.__scopeMenu,checked:s,children:E(me,{role:"menuitemradio","aria-checked":s,...r,ref:n,"data-state":je(s),onSelect:o(r.onSelect,(()=>a.onValueChange?.(t)),{checkForDefaultPrevented:!1})})})}));Me.displayName=be;var xe="MenuItemIndicator",[Ce,De]=U(xe,{checked:!1}),ke=e.forwardRef(((e,n)=>{const{__scopeMenu:r,forceMount:o,...a}=e,s=De(xe,r);return E(t,{present:o||Ke(s.checked)||!0===s.checked,children:E(d.span,{...a,ref:n,"data-state":je(s.checked)})})}));ke.displayName=xe;var Re=e.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e;return E(d.div,{role:"separator","aria-orientation":"horizontal",...r,ref:n})}));Re.displayName="MenuSeparator";var Ee=e.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e,o=X(t);return E(x,{...o,...r,ref:n})}));Ee.displayName="MenuArrow";var Ne="MenuSub",[Oe,Pe]=U(Ne),Ie=t=>{const{__scopeMenu:r,children:o,open:a=!1,onOpenChange:s}=t,c=H(Ne,r),d=X(r),[i,u]=e.useState(null),[l,p]=e.useState(null),f=n(s);return e.useEffect((()=>(!1===c.open&&f(!1),()=>f(!1))),[c.open,f]),E(y,{...d,children:E(q,{scope:r,open:a,onOpenChange:f,content:l,onContentChange:p,children:E(Oe,{scope:r,contentId:w(),triggerId:w(),trigger:i,onTriggerChange:u,children:o})})})};Ie.displayName=Ne;var Te="MenuSubTrigger",Se=e.forwardRef(((n,t)=>{const r=H(Te,n.__scopeMenu),s=Z(Te,n.__scopeMenu),c=Pe(Te,n.__scopeMenu),d=ae(Te,n.__scopeMenu),i=e.useRef(null),{pointerGraceTimerRef:u,onPointerGraceIntentChange:l}=d,p={__scopeMenu:n.__scopeMenu},f=e.useCallback((()=>{i.current&&window.clearTimeout(i.current),i.current=null}),[]);return e.useEffect((()=>f),[f]),e.useEffect((()=>{const e=u.current;return()=>{window.clearTimeout(e),l(null)}}),[u,l]),E(Q,{asChild:!0,...p,children:E(he,{id:c.triggerId,"aria-haspopup":"menu","aria-expanded":r.open,"aria-controls":c.contentId,"data-state":Ae(r.open),...n,ref:a(t,c.onTriggerChange),onClick:e=>{n.onClick?.(e),n.disabled||e.defaultPrevented||(e.currentTarget.focus(),r.open||r.onOpenChange(!0))},onPointerMove:o(n.onPointerMove,ze((e=>{d.onItemEnter(e),e.defaultPrevented||n.disabled||r.open||i.current||(d.onPointerGraceIntentChange(null),i.current=window.setTimeout((()=>{r.onOpenChange(!0),f()}),100))}))),onPointerLeave:o(n.onPointerLeave,ze((e=>{f();const n=r.content?.getBoundingClientRect();if(n){const t=r.content?.dataset.side,o="right"===t,a=o?-5:5,s=n[o?"left":"right"],c=n[o?"right":"left"];d.onPointerGraceIntentChange({area:[{x:e.clientX+a,y:e.clientY},{x:s,y:n.top},{x:c,y:n.top},{x:c,y:n.bottom},{x:s,y:n.bottom}],side:t}),window.clearTimeout(u.current),u.current=window.setTimeout((()=>d.onPointerGraceIntentChange(null)),300)}else{if(d.onTriggerLeave(e),e.defaultPrevented)return;d.onPointerGraceIntentChange(null)}}))),onKeyDown:o(n.onKeyDown,(e=>{const t=""!==d.searchRef.current;n.disabled||t&&" "===e.key||A[s.dir].includes(e.key)&&(r.onOpenChange(!0),r.content?.focus(),e.preventDefault())}))})})}));Se.displayName=Te;var Fe="MenuSubContent",Le=e.forwardRef(((n,a)=>{const s=ne(re,n.__scopeMenu),{forceMount:c=s.forceMount,...d}=n,i=H(re,n.__scopeMenu),u=Z(re,n.__scopeMenu),l=Pe(Fe,n.__scopeMenu),p=e.useRef(null),f=r(a,p);return E(z.Provider,{scope:n.__scopeMenu,children:E(t,{present:c||i.open,children:E(z.Slot,{scope:n.__scopeMenu,children:E(ie,{id:l.contentId,"aria-labelledby":l.triggerId,...d,ref:f,align:"start",side:"rtl"===u.dir?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:e=>{u.isUsingKeyboardRef.current&&p.current?.focus(),e.preventDefault()},onCloseAutoFocus:e=>e.preventDefault(),onFocusOutside:o(n.onFocusOutside,(e=>{e.target!==l.trigger&&i.onOpenChange(!1)})),onEscapeKeyDown:o(n.onEscapeKeyDown,(e=>{u.onClose(),e.preventDefault()})),onKeyDown:o(n.onKeyDown,(e=>{const n=e.currentTarget.contains(e.target),t=K[u.dir].includes(e.key);n&&t&&(i.onOpenChange(!1),l.trigger?.focus(),e.preventDefault())}))})})})})}));function Ae(e){return e?"open":"closed"}function Ke(e){return"indeterminate"===e}function je(e){return Ke(e)?"indeterminate":e?"checked":"unchecked"}function ze(e){return n=>"mouse"===n.pointerType?e(n):void 0}Le.displayName=Fe;var Ge=J,Ve=Q,Ue=te,Be=se,Xe=ue,Ye=le,qe=me,He=ge,We=ye,Ze=Me,Je=ke,Qe=Re,$e=Ee,en=Ie,nn=Se,tn=Le,rn="DropdownMenu",[on,an]=s(rn,[B]),sn=B(),[cn,dn]=on(rn),un=n=>{const{__scopeDropdownMenu:t,children:r,dir:o,open:a,defaultOpen:s,onOpenChange:d,modal:i=!0}=n,u=sn(t),l=e.useRef(null),[p=!1,f]=c({prop:a,defaultProp:s,onChange:d});return E(cn,{scope:t,triggerId:w(),triggerRef:l,contentId:w(),open:p,onOpenChange:f,onOpenToggle:e.useCallback((()=>f((e=>!e))),[f]),modal:i,children:E(Ge,{...u,open:p,onOpenChange:f,dir:o,modal:i,children:r})})};un.displayName=rn;var ln="DropdownMenuTrigger",pn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,disabled:r=!1,...s}=e,c=dn(ln,t),i=sn(t);return E(Ve,{asChild:!0,...i,children:E(d.button,{type:"button",id:c.triggerId,"aria-haspopup":"menu","aria-expanded":c.open,"aria-controls":c.open?c.contentId:void 0,"data-state":c.open?"open":"closed","data-disabled":r?"":void 0,disabled:r,...s,ref:a(n,c.triggerRef),onPointerDown:o(e.onPointerDown,(e=>{r||0!==e.button||!1!==e.ctrlKey||(c.onOpenToggle(),c.open||e.preventDefault())})),onKeyDown:o(e.onKeyDown,(e=>{r||(["Enter"," "].includes(e.key)&&c.onOpenToggle(),"ArrowDown"===e.key&&c.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(e.key)&&e.preventDefault())}))})})}));pn.displayName=ln;var fn=e=>{const{__scopeDropdownMenu:n,...t}=e,r=sn(n);return E(Ue,{...r,...t})};fn.displayName="DropdownMenuPortal";var mn="DropdownMenuContent",hn=e.forwardRef(((n,t)=>{const{__scopeDropdownMenu:r,...a}=n,s=dn(mn,r),c=sn(r),d=e.useRef(!1);return E(Be,{id:s.contentId,"aria-labelledby":s.triggerId,...c,...a,ref:t,onCloseAutoFocus:o(n.onCloseAutoFocus,(e=>{d.current||s.triggerRef.current?.focus(),d.current=!1,e.preventDefault()})),onInteractOutside:o(n.onInteractOutside,(e=>{const n=e.detail.originalEvent,t=0===n.button&&!0===n.ctrlKey,r=2===n.button||t;s.modal&&!r||(d.current=!0)})),style:{...n.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})}));hn.displayName=mn;var gn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=sn(t);return E(Xe,{...o,...r,ref:n})}));gn.displayName="DropdownMenuGroup";var vn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=sn(t);return E(Ye,{...o,...r,ref:n})}));vn.displayName="DropdownMenuLabel";var wn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=sn(t);return E(qe,{...o,...r,ref:n})}));wn.displayName="DropdownMenuItem";var _n=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=sn(t);return E(He,{...o,...r,ref:n})}));_n.displayName="DropdownMenuCheckboxItem";var yn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=sn(t);return E(We,{...o,...r,ref:n})}));yn.displayName="DropdownMenuRadioGroup";var bn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=sn(t);return E(Ze,{...o,...r,ref:n})}));bn.displayName="DropdownMenuRadioItem";var Mn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=sn(t);return E(Je,{...o,...r,ref:n})}));Mn.displayName="DropdownMenuItemIndicator";var xn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=sn(t);return E(Qe,{...o,...r,ref:n})}));xn.displayName="DropdownMenuSeparator";e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=sn(t);return E($e,{...o,...r,ref:n})})).displayName="DropdownMenuArrow";var Cn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=sn(t);return E(nn,{...o,...r,ref:n})}));Cn.displayName="DropdownMenuSubTrigger";var Dn=e.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=sn(t);return E(tn,{...o,...r,ref:n,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})}));Dn.displayName="DropdownMenuSubContent";var kn=un,Rn=pn,En=fn,Nn=hn,On=gn,Pn=vn,In=wn,Tn=_n,Sn=yn,Fn=bn,Ln=Mn,An=xn,Kn=e=>{const{__scopeDropdownMenu:n,children:t,open:r,onOpenChange:o,defaultOpen:a}=e,s=sn(n),[d=!1,i]=c({prop:r,defaultProp:a,onChange:o});return E(en,{...s,open:d,onOpenChange:i,children:t})},jn=Cn,zn=Dn;function Gn({...n}){return e.createElement(kn,{"data-slot":"dropdown-menu",...n})}function Vn({...n}){return e.createElement(En,{"data-slot":"dropdown-menu-portal",...n})}function Un({...n}){return e.createElement(Rn,{"data-slot":"dropdown-menu-trigger",...n})}function Bn({className:n,sideOffset:t=4,...r}){return e.createElement(En,null,e.createElement(Nn,{"data-slot":"dropdown-menu-content",sideOffset:t,className:N("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=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 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md",n),...r}))}function Xn({...n}){return e.createElement(On,{"data-slot":"dropdown-menu-group",...n})}function Yn({className:n,inset:t,variant:r="default",...o}){return e.createElement(In,{"data-slot":"dropdown-menu-item","data-inset":t,"data-variant":r,className:N("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive-foreground data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/40 data-[variant=destructive]:focus:text-destructive-foreground data-[variant=destructive]:*:[svg]:!text-destructive-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",n),...o})}function qn({className:n,children:t,checked:r,...o}){return e.createElement(Tn,{"data-slot":"dropdown-menu-checkbox-item",className:N("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",n),checked:r,...o},e.createElement("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center"},e.createElement(Ln,null,e.createElement(O,{className:"size-4"}))),t)}function Hn({...n}){return e.createElement(Sn,{"data-slot":"dropdown-menu-radio-group",...n})}function Wn({className:n,children:t,...r}){return e.createElement(Fn,{"data-slot":"dropdown-menu-radio-item",className:N("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",n),...r},e.createElement("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center"},e.createElement(Ln,null,e.createElement(T,{className:"size-2 fill-current"}))),t)}function Zn({className:n,inset:t,...r}){return e.createElement(Pn,{"data-slot":"dropdown-menu-label","data-inset":t,className:N("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",n),...r})}function Jn({className:n,...t}){return e.createElement(An,{"data-slot":"dropdown-menu-separator",className:N("bg-border -mx-1 my-1 h-px",n),...t})}function Qn({className:n,...t}){return e.createElement("span",{"data-slot":"dropdown-menu-shortcut",className:N("text-muted-foreground ml-auto text-xs tracking-widest",n),...t})}function $n({...n}){return e.createElement(Kn,{"data-slot":"dropdown-menu-sub",...n})}function et({className:n,inset:t,children:r,...o}){return e.createElement(jn,{"data-slot":"dropdown-menu-sub-trigger","data-inset":t,className:N("focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8",n),...o},r,e.createElement(I,{className:"ml-auto size-4"}))}function nt({className:n,...t}){return e.createElement(zn,{"data-slot":"dropdown-menu-sub-content",className:N("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=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 z-50 min-w-[8rem] overflow-hidden rounded-md border p-1 shadow-lg",n),...t})}export{Gn as DropdownMenu,qn as DropdownMenuCheckboxItem,Bn as DropdownMenuContent,Xn as DropdownMenuGroup,Yn as DropdownMenuItem,Zn as DropdownMenuLabel,Vn as DropdownMenuPortal,Hn as DropdownMenuRadioGroup,Wn as DropdownMenuRadioItem,Jn as DropdownMenuSeparator,Qn as DropdownMenuShortcut,$n as DropdownMenuSub,nt as DropdownMenuSubContent,et as DropdownMenuSubTrigger,Un as DropdownMenuTrigger};
2
2
  //# sourceMappingURL=index.mjs.map