ivt 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. package/README.md +9 -0
  2. package/dist/accordion/index.mjs +1 -1
  3. package/dist/alert/index.mjs +1 -1
  4. package/dist/alert-dialog/index.d.ts +17 -0
  5. package/dist/alert-dialog/index.mjs +2 -0
  6. package/dist/alert-dialog/index.mjs.map +1 -0
  7. package/dist/avatar/index.mjs +1 -1
  8. package/dist/avatar/index.mjs.map +1 -1
  9. package/dist/badge/index.mjs +1 -1
  10. package/dist/base/index.d.ts +1 -0
  11. package/dist/base/index.mjs +1 -1
  12. package/dist/base/index.mjs.map +1 -1
  13. package/dist/button/index.mjs +1 -1
  14. package/dist/calendar/index.mjs +1 -1
  15. package/dist/card/index.mjs +1 -1
  16. package/dist/checkbox/index.mjs +1 -1
  17. package/dist/checkbox/index.mjs.map +1 -1
  18. package/dist/chunks/{TextWrap-23P8STqb.mjs → TextWrap-DM8p5RY0.mjs} +2 -2
  19. package/dist/chunks/{TextWrap-23P8STqb.mjs.map → TextWrap-DM8p5RY0.mjs.map} +1 -1
  20. package/dist/chunks/{accordion-pKx1Q4tK.mjs → accordion-CJbwVC50.mjs} +2 -2
  21. package/dist/chunks/{accordion-pKx1Q4tK.mjs.map → accordion-CJbwVC50.mjs.map} +1 -1
  22. package/dist/chunks/{badge-Cy4rR7ko.mjs → badge-Bl0X9ruG.mjs} +2 -2
  23. package/dist/chunks/{badge-Cy4rR7ko.mjs.map → badge-Bl0X9ruG.mjs.map} +1 -1
  24. package/dist/chunks/bundle-mjs-BYGwPY3j.mjs +2 -0
  25. package/dist/chunks/bundle-mjs-BYGwPY3j.mjs.map +1 -0
  26. package/dist/chunks/{button-L19W2fGF.mjs → button-B7K2JEBG.mjs} +2 -2
  27. package/dist/chunks/{button-L19W2fGF.mjs.map → button-B7K2JEBG.mjs.map} +1 -1
  28. package/dist/chunks/calendar-CDaopDjB.mjs +2 -0
  29. package/dist/chunks/calendar-CDaopDjB.mjs.map +1 -0
  30. package/dist/chunks/check-DoBi3iW5.mjs +2 -0
  31. package/dist/chunks/{check-1SKm0QUI.mjs.map → check-DoBi3iW5.mjs.map} +1 -1
  32. package/dist/chunks/chevron-down-BlskY22a.mjs +2 -0
  33. package/dist/chunks/{chevron-down-i6P9lr6K.mjs.map → chevron-down-BlskY22a.mjs.map} +1 -1
  34. package/dist/chunks/chevron-left-BXFDtxhQ.mjs +2 -0
  35. package/dist/chunks/{chevron-left-kY7-JEU4.mjs.map → chevron-left-BXFDtxhQ.mjs.map} +1 -1
  36. package/dist/chunks/chevron-right-DAqTCOj7.mjs +2 -0
  37. package/dist/chunks/{chevron-right-BCy8nVMg.mjs.map → chevron-right-DAqTCOj7.mjs.map} +1 -1
  38. package/dist/chunks/{command-BLs86fLx.mjs → command-DYONarI_.mjs} +2 -2
  39. package/dist/chunks/{command-BLs86fLx.mjs.map → command-DYONarI_.mjs.map} +1 -1
  40. package/dist/chunks/createLucideIcon-CkKdyF_L.mjs +2 -0
  41. package/dist/chunks/{createLucideIcon-NXzoJfn7.mjs.map → createLucideIcon-CkKdyF_L.mjs.map} +1 -1
  42. package/dist/chunks/{dialog-BDBNWwYT.mjs → dialog-Bs3UmyLz.mjs} +2 -2
  43. package/dist/chunks/{dialog-BDBNWwYT.mjs.map → dialog-Bs3UmyLz.mjs.map} +1 -1
  44. package/dist/chunks/{hover-card-BjXLQEhK.mjs → hover-card-CujP4Atn.mjs} +2 -2
  45. package/dist/chunks/{hover-card-BjXLQEhK.mjs.map → hover-card-CujP4Atn.mjs.map} +1 -1
  46. package/dist/chunks/index-BSf-atXx.mjs +2 -0
  47. package/dist/chunks/index-BSf-atXx.mjs.map +1 -0
  48. package/dist/chunks/{index-BkrjWCcN.mjs → index-BX6nSpY1.mjs} +1 -1
  49. package/dist/chunks/index-BX6nSpY1.mjs.map +1 -0
  50. package/dist/chunks/{index-BXYIPnYd.mjs → index-CAVVTG3h.mjs} +2 -2
  51. package/dist/chunks/{index-BXYIPnYd.mjs.map → index-CAVVTG3h.mjs.map} +1 -1
  52. package/dist/chunks/{index-CRTXCtD-.mjs → index-CUXMuJ__.mjs} +2 -2
  53. package/dist/chunks/{index-CRTXCtD-.mjs.map → index-CUXMuJ__.mjs.map} +1 -1
  54. package/dist/chunks/{index-B_Oam-QU.mjs → index-Ck1fOwnt.mjs} +2 -2
  55. package/dist/chunks/{index-B_Oam-QU.mjs.map → index-Ck1fOwnt.mjs.map} +1 -1
  56. package/dist/chunks/{index-DXDEMoyA.mjs → index-DB6P4Tz1.mjs} +1 -1
  57. package/dist/chunks/{index-DXDEMoyA.mjs.map → index-DB6P4Tz1.mjs.map} +1 -1
  58. package/dist/chunks/{index-DFm8Tejm.mjs → index-DZldl4eo.mjs} +2 -2
  59. package/dist/chunks/{index-DFm8Tejm.mjs.map → index-DZldl4eo.mjs.map} +1 -1
  60. package/dist/chunks/index-DdNjMgpV.mjs +2 -0
  61. package/dist/chunks/index-DdNjMgpV.mjs.map +1 -0
  62. package/dist/chunks/index-Dix9fE1x.mjs +2 -0
  63. package/dist/chunks/index-Dix9fE1x.mjs.map +1 -0
  64. package/dist/chunks/index-DuMyb05s.mjs +2 -0
  65. package/dist/chunks/index-DuMyb05s.mjs.map +1 -0
  66. package/dist/chunks/{index-VNeBf_qQ.mjs → index-DyUn0c26.mjs} +2 -2
  67. package/dist/chunks/index-DyUn0c26.mjs.map +1 -0
  68. package/dist/chunks/{index-BzUzK8k1.mjs → index-IXx8l3RV.mjs} +2 -2
  69. package/dist/chunks/index-IXx8l3RV.mjs.map +1 -0
  70. package/dist/chunks/{index-Cj8SbPde.mjs → index-XatPIL6c.mjs} +2 -2
  71. package/dist/chunks/index-XatPIL6c.mjs.map +1 -0
  72. package/dist/chunks/index-qP_a6BiF.mjs +2 -0
  73. package/dist/chunks/index-qP_a6BiF.mjs.map +1 -0
  74. package/dist/chunks/{input-CIOLnRPP.mjs → input-BtSMyTkT.mjs} +2 -2
  75. package/dist/chunks/{input-CIOLnRPP.mjs.map → input-BtSMyTkT.mjs.map} +1 -1
  76. package/dist/chunks/{label-JzY_9HXj.mjs → label-BL5NIn0A.mjs} +2 -2
  77. package/dist/chunks/{label-JzY_9HXj.mjs.map → label-BL5NIn0A.mjs.map} +1 -1
  78. package/dist/chunks/{pagination-Duu8Xw3w.mjs → pagination-BiktkEzi.mjs} +2 -2
  79. package/dist/chunks/{pagination-Duu8Xw3w.mjs.map → pagination-BiktkEzi.mjs.map} +1 -1
  80. package/dist/chunks/popover-CSY_ub7s.mjs +2 -0
  81. package/dist/chunks/popover-CSY_ub7s.mjs.map +1 -0
  82. package/dist/chunks/progress-CmBH1a8S.mjs +2 -0
  83. package/dist/chunks/{progress-sKEf-fjz.mjs.map → progress-CmBH1a8S.mjs.map} +1 -1
  84. package/dist/chunks/{scroll-area-B-ktzHvu.mjs → scroll-area-B-b-oQYr.mjs} +2 -2
  85. package/dist/chunks/{scroll-area-B-ktzHvu.mjs.map → scroll-area-B-b-oQYr.mjs.map} +1 -1
  86. package/dist/chunks/{select-DqeznJec.mjs → select-Co76oy2I.mjs} +2 -2
  87. package/dist/chunks/{select-DqeznJec.mjs.map → select-Co76oy2I.mjs.map} +1 -1
  88. package/dist/chunks/{skeleton-cSOJ-vH8.mjs → skeleton-cvIjllDp.mjs} +2 -2
  89. package/dist/chunks/{skeleton-cSOJ-vH8.mjs.map → skeleton-cvIjllDp.mjs.map} +1 -1
  90. package/dist/chunks/{sortable-BX5MRGOc.mjs → sortable-DaXPlC2-.mjs} +2 -2
  91. package/dist/chunks/{sortable-BX5MRGOc.mjs.map → sortable-DaXPlC2-.mjs.map} +1 -1
  92. package/dist/chunks/{table-BGjJ1DhO.mjs → table-xzX2584j.mjs} +2 -2
  93. package/dist/chunks/{table-BGjJ1DhO.mjs.map → table-xzX2584j.mjs.map} +1 -1
  94. package/dist/chunks/{tslib.es6-DnJNy3VA.mjs → tslib.es6-CC_zzJ2l.mjs} +1 -1
  95. package/dist/chunks/{tslib.es6-DnJNy3VA.mjs.map → tslib.es6-CC_zzJ2l.mjs.map} +1 -1
  96. package/dist/chunks/{utils-C6LYO_CH.mjs → utils-B9uwc_lt.mjs} +2 -2
  97. package/dist/chunks/{utils-C6LYO_CH.mjs.map → utils-B9uwc_lt.mjs.map} +1 -1
  98. package/dist/chunks/x-Bdqqbrz4.mjs +2 -0
  99. package/dist/chunks/{x-DjF9gicP.mjs.map → x-Bdqqbrz4.mjs.map} +1 -1
  100. package/dist/command/index.mjs +1 -1
  101. package/dist/data-table/index.d.ts +4 -4
  102. package/dist/data-table/index.mjs +1 -1
  103. package/dist/data-table/index.mjs.map +1 -1
  104. package/dist/dialog/index.mjs +1 -1
  105. package/dist/dropdown-menu/index.mjs +1 -1
  106. package/dist/dropdown-menu/index.mjs.map +1 -1
  107. package/dist/dropzone/index.mjs +1 -6
  108. package/dist/dropzone/index.mjs.map +1 -1
  109. package/dist/form/index.mjs +1 -1
  110. package/dist/hover-card/index.mjs +1 -1
  111. package/dist/icon/index.mjs +1 -1
  112. package/dist/index.css +1 -1
  113. package/dist/input/index.mjs +1 -1
  114. package/dist/label/index.mjs +1 -1
  115. package/dist/pagination/index.mjs +1 -1
  116. package/dist/popover/index.mjs +1 -1
  117. package/dist/progress/index.mjs +1 -1
  118. package/dist/scroll-area/index.mjs +1 -1
  119. package/dist/select/index.mjs +1 -1
  120. package/dist/separator/index.mjs +1 -1
  121. package/dist/sheet/index.mjs +1 -1
  122. package/dist/sheet/index.mjs.map +1 -1
  123. package/dist/skeleton/index.mjs +1 -1
  124. package/dist/sonner/index.mjs +1 -1
  125. package/dist/sonner/index.mjs.map +1 -1
  126. package/dist/sortable/index.mjs +1 -1
  127. package/dist/table/index.mjs +1 -1
  128. package/dist/tabs/index.mjs +1 -1
  129. package/dist/toast/index.mjs +1 -1
  130. package/dist/toast/index.mjs.map +1 -1
  131. package/dist/tooltip/index.mjs +1 -1
  132. package/dist/tooltip/index.mjs.map +1 -1
  133. package/package.json +11 -5
  134. package/dist/chunks/Combination-CaCdPc0V.mjs +0 -2
  135. package/dist/chunks/Combination-CaCdPc0V.mjs.map +0 -1
  136. package/dist/chunks/bundle-mjs-E0baekTQ.mjs +0 -2
  137. package/dist/chunks/bundle-mjs-E0baekTQ.mjs.map +0 -1
  138. package/dist/chunks/calendar-BQrtnevv.mjs +0 -2
  139. package/dist/chunks/calendar-BQrtnevv.mjs.map +0 -1
  140. package/dist/chunks/check-1SKm0QUI.mjs +0 -2
  141. package/dist/chunks/chevron-down-i6P9lr6K.mjs +0 -2
  142. package/dist/chunks/chevron-left-kY7-JEU4.mjs +0 -2
  143. package/dist/chunks/chevron-right-BCy8nVMg.mjs +0 -2
  144. package/dist/chunks/createLucideIcon-NXzoJfn7.mjs +0 -14
  145. package/dist/chunks/index-5xCD9zck.mjs +0 -2
  146. package/dist/chunks/index-5xCD9zck.mjs.map +0 -1
  147. package/dist/chunks/index-BkrjWCcN.mjs.map +0 -1
  148. package/dist/chunks/index-BzUzK8k1.mjs.map +0 -1
  149. package/dist/chunks/index-CBuWa3V_.mjs +0 -2
  150. package/dist/chunks/index-CBuWa3V_.mjs.map +0 -1
  151. package/dist/chunks/index-Cj8SbPde.mjs.map +0 -1
  152. package/dist/chunks/index-DU2SqYv7.mjs +0 -2
  153. package/dist/chunks/index-DU2SqYv7.mjs.map +0 -1
  154. package/dist/chunks/index-DagWVwpf.mjs +0 -2
  155. package/dist/chunks/index-DagWVwpf.mjs.map +0 -1
  156. package/dist/chunks/index-VNeBf_qQ.mjs.map +0 -1
  157. package/dist/chunks/popover-CstNJ6EN.mjs +0 -2
  158. package/dist/chunks/popover-CstNJ6EN.mjs.map +0 -1
  159. package/dist/chunks/progress-sKEf-fjz.mjs +0 -2
  160. package/dist/chunks/x-DjF9gicP.mjs +0 -2
@@ -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/DataTablePagination.tsx","../../src/components/default/data-table/DataTablePaginationSkeleton.tsx","../../src/components/default/data-table/DataTableRowSkeleton.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\tCommand,\n\tCommandEmpty,\n\tCommandGroup,\n\tCommandInput,\n\tCommandItem,\n\tCommandList,\n} from \"@/components/ui/command\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\n\ninterface DataTableViewOptionsProps<TData> {\n\ttable: Table<TData>;\n\ttransformColumnName?: (id: string) => string;\n}\n\nexport function DataTableViewOptions<TData>({\n\ttable,\n\ttransformColumnName,\n}: DataTableViewOptionsProps<TData>) {\n\tconst triggerRef = React.useRef<HTMLButtonElement>(null);\n\n\treturn (\n\t\t<Popover modal>\n\t\t\t<PopoverTrigger asChild>\n\t\t\t\t<Button ref={triggerRef} aria-label=\"Toggle columns\" variant=\"outline\">\n\t\t\t\t\tColunas\n\t\t\t\t\t<ChevronDownIcon className=\"h-4 w-4\" />\n\t\t\t\t</Button>\n\t\t\t</PopoverTrigger>\n\t\t\t<PopoverContent\n\t\t\t\talign=\"end\"\n\t\t\t\tclassName=\"w-44 p-0\"\n\t\t\t\tonCloseAutoFocus={() => triggerRef.current?.focus()}\n\t\t\t>\n\t\t\t\t<Command>\n\t\t\t\t\t<CommandInput placeholder=\"Pesquisar colunas...\" />\n\t\t\t\t\t<CommandList>\n\t\t\t\t\t\t<CommandEmpty>Nenhuma coluna encontrada.</CommandEmpty>\n\t\t\t\t\t\t<CommandGroup>\n\t\t\t\t\t\t\t{table\n\t\t\t\t\t\t\t\t.getAllColumns()\n\t\t\t\t\t\t\t\t.filter((column) => typeof column.accessorFn !== \"undefined\" && column.getCanHide())\n\t\t\t\t\t\t\t\t.map((column) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<CommandItem\n\t\t\t\t\t\t\t\t\t\t\tkey={column.id}\n\t\t\t\t\t\t\t\t\t\t\tonSelect={() => column.toggleVisibility(!column.getIsVisible())}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"truncate\">\n\t\t\t\t\t\t\t\t\t\t\t\t{transformColumnName ? transformColumnName(column.id) : column.id}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t<Check\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"ml-auto size-4 shrink-0\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tcolumn.getIsVisible() ? \"opacity-100\" : \"opacity-0\",\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</CommandItem>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</CommandGroup>\n\t\t\t\t\t</CommandList>\n\t\t\t\t</Command>\n\t\t\t</PopoverContent>\n\t\t</Popover>\n\t);\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\ttable: Table<TData>;\n\tkeySearch: string;\n\tplaceholder: string;\n}\n\nexport function DataTableSearch<TData>({\n\ttable,\n\tkeySearch,\n\tplaceholder,\n}: DataTableSearchProps<TData>) {\n\treturn (\n\t\t<div className=\"relative w-full max-w-sm\">\n\t\t\t<SearchIcon className=\"text-muted-foreground absolute top-3 left-3 h-4 w-4\" />\n\t\t\t<Input\n\t\t\t\tplaceholder={placeholder}\n\t\t\t\tvalue={(table.getColumn(keySearch)?.getFilterValue() as string) ?? \"\"}\n\t\t\t\tonChange={(event) => table.getColumn(keySearch)?.setFilterValue(event.target.value)}\n\t\t\t\tclassName=\"w-full pl-8 xl:w-80\"\n\t\t\t/>\n\t\t</div>\n\t);\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 type { Table } from \"@tanstack/react-table\";\n\nimport { Button } from \"@/components/ui/button\";\nimport { PaginationEllipsis, PaginationItem } from \"@/components/ui/pagination\";\nimport {\n\tSelect,\n\tSelectContent,\n\tSelectItem,\n\tSelectTrigger,\n\tSelectValue,\n} from \"@/components/ui/select\";\nimport { ChevronLeftIcon, ChevronRightIcon } from \"lucide-react\";\nimport React from \"react\";\ninterface DataTablePaginationProps<TData> {\n\ttable: Table<TData>;\n\tpageSizeOptions?: number[];\n\tdataLabel?: string;\n}\n\nexport function DataTablePagination<TData>({\n\ttable,\n\tpageSizeOptions = [20, 30, 50, 100, 200],\n\tdataLabel = \"Fundos\",\n}: DataTablePaginationProps<TData>) {\n\tconst pageSize = pageSizeOptions[0];\n\tconst currentPage = table.getState().pagination.pageIndex + 1;\n\tconst rowCount = table.getRowCount();\n\tconst totalPageCount = Math.ceil(rowCount / table.getState().pagination.pageSize);\n\n\tconst renderPageNumbers = () => {\n\t\tconst items: React.ReactNode[] = [];\n\t\tconst maxVisiblePages = 3;\n\n\t\tif (totalPageCount <= maxVisiblePages) {\n\t\t\tfor (let i = 1; i <= totalPageCount; i++) {\n\t\t\t\titems.push(\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant={currentPage === i ? \"outline\" : \"ghost\"}\n\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\tonClick={() => table.setPageIndex(i - 1)}\n\t\t\t\t\t\tclassName=\"size-9\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{i}\n\t\t\t\t\t</Button>,\n\t\t\t\t);\n\t\t\t}\n\t\t} else {\n\t\t\titems.push(\n\t\t\t\t<Button\n\t\t\t\t\tvariant={currentPage === 1 ? \"outline\" : \"ghost\"}\n\t\t\t\t\tkey={1}\n\t\t\t\t\tonClick={() => table.setPageIndex(0)}\n\t\t\t\t\tclassName=\"size-9\"\n\t\t\t\t>\n\t\t\t\t\t1\n\t\t\t\t</Button>,\n\t\t\t);\n\n\t\t\tconst start = Math.max(2, Math.min(currentPage, totalPageCount - (maxVisiblePages - 1)));\n\t\t\tconst end = Math.min(totalPageCount - 1, start + maxVisiblePages - 2);\n\n\t\t\tif (start > 2) {\n\t\t\t\titems.push(\n\t\t\t\t\t<PaginationItem key=\"ellipsis-start\" className=\"list-none\">\n\t\t\t\t\t\t<PaginationEllipsis />\n\t\t\t\t\t</PaginationItem>,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tfor (let i = start; i <= end; i++) {\n\t\t\t\titems.push(\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant={currentPage === i ? \"outline\" : \"ghost\"}\n\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\tonClick={() => table.setPageIndex(i - 1)}\n\t\t\t\t\t\tclassName=\"size-9\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{i}\n\t\t\t\t\t</Button>,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (end < totalPageCount - 1) {\n\t\t\t\titems.push(\n\t\t\t\t\t<PaginationItem key=\"ellipsis-end\" className=\"list-none\">\n\t\t\t\t\t\t<PaginationEllipsis />\n\t\t\t\t\t</PaginationItem>,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\titems.push(\n\t\t\t\t<Button\n\t\t\t\t\tvariant={currentPage === totalPageCount ? \"outline\" : \"ghost\"}\n\t\t\t\t\tkey={totalPageCount}\n\t\t\t\t\tonClick={() => table.setPageIndex(totalPageCount - 1)}\n\t\t\t\t>\n\t\t\t\t\t{totalPageCount}\n\t\t\t\t</Button>,\n\t\t\t);\n\t\t}\n\n\t\treturn items;\n\t};\n\treturn (\n\t\t<div className=\"mt-4 flex flex-wrap items-center justify-between gap-2\">\n\t\t\t<div className=\"text-muted-foreground flex gap-1 text-sm\">\n\t\t\t\t<p className=\"ml-2\">\n\t\t\t\t\tMostrando {table.getRowModel().rows.length.toLocaleString()} de {rowCount} {dataLabel}.\n\t\t\t\t</p>\n\t\t\t</div>\n\n\t\t\t<div className=\"flex flex-wrap items-center justify-between gap-2 gap-y-4\">\n\t\t\t\t<Select\n\t\t\t\t\tvalue={String(table.getState().pagination.pageSize) || String(pageSize)}\n\t\t\t\t\tonValueChange={(value) => table.setPageSize(Number(value))}\n\t\t\t\t>\n\t\t\t\t\t<SelectTrigger className=\"w-fit\">\n\t\t\t\t\t\t<SelectValue\n\t\t\t\t\t\t\tplaceholder={`Mostrar ${table.getState().pagination.pageSize || pageSize}`}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</SelectTrigger>\n\t\t\t\t\t<SelectContent>\n\t\t\t\t\t\t{rowCount && (rowCount === 0 || rowCount < pageSize) ? (\n\t\t\t\t\t\t\t<SelectItem value={String(pageSize)}>Mostrar {pageSize}</SelectItem>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{pageSizeOptions.map((pageSize) => (\n\t\t\t\t\t\t\t\t\t<SelectItem key={pageSize} value={String(pageSize)}>\n\t\t\t\t\t\t\t\t\t\tMostrar {pageSize}\n\t\t\t\t\t\t\t\t\t</SelectItem>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</SelectContent>\n\t\t\t\t</Select>\n\n\t\t\t\t<div className=\"flex flex-wrap gap-2 gap-y-4\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\tonClick={() => table.previousPage()}\n\t\t\t\t\t\tdisabled={!table.getCanPreviousPage()}\n\t\t\t\t\t\taria-label=\"Ir para página anterior\"\n\t\t\t\t\t\tclassName=\"gap-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<ChevronLeftIcon className=\"size-4\" />\n\t\t\t\t\t\tAnterior\n\t\t\t\t\t</Button>\n\n\t\t\t\t\t<div className=\"flex gap-2\">{renderPageNumbers()}</div>\n\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\tonClick={() => table.nextPage()}\n\t\t\t\t\t\tdisabled={!table.getCanNextPage()}\n\t\t\t\t\t\taria-label=\"Ir para próxima página\"\n\t\t\t\t\t\tclassName=\"gap-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\tPróximo\n\t\t\t\t\t\t<ChevronRightIcon className=\"size-4\" />\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n","import { Skeleton } from \"@/components/ui/skeleton\";\nimport { cn } from \"@/lib/utils\";\n\nexport function DataTablePaginationSkeleton({\n\tclassName,\n}: {\n\tclassName?: string;\n}) {\n\treturn (\n\t\t<div className=\"mt-4 flex flex-wrap items-center justify-between gap-2\">\n\t\t\t<Skeleton className={cn(\"h-5 w-40\", className)} />\n\t\t\t<div className=\"flex flex-wrap items-center justify-between gap-2 gap-y-4\">\n\t\t\t\t<Skeleton className={cn(\"h-10 w-28\", className)} />\n\t\t\t\t<Skeleton className={cn(\"h-9 w-[16rem]\", className)} />\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n","import { Skeleton } from \"@/components/ui/skeleton\";\nimport { TableCell, TableRow } from \"@/components/ui/table\";\n\ninterface DataTableRowSkeletonProps extends React.HTMLAttributes<HTMLDivElement> {\n\tcolumnCount: number;\n\trowCount?: number;\n\tcellWidths?: string[];\n\tshrinkZero?: boolean;\n}\n\nexport function DataTableRowSkeleton(props: DataTableRowSkeletonProps) {\n\tconst { columnCount, rowCount = 8, cellWidths = [\"auto\"], shrinkZero = false } = props;\n\n\treturn (\n\t\t<>\n\t\t\t{Array.from({ length: rowCount }).map((_, i) => (\n\t\t\t\t<TableRow key={`row-${String(i)}`} className=\"hover:bg-transparent\">\n\t\t\t\t\t{Array.from({ length: columnCount }).map((_, j) => (\n\t\t\t\t\t\t<TableCell\n\t\t\t\t\t\t\tkey={`cell-${String(i)}-${j}`}\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\twidth: cellWidths[j],\n\t\t\t\t\t\t\t\tminWidth: shrinkZero ? cellWidths[j] : \"auto\",\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Skeleton className=\"h-6 w-full\" />\n\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t))}\n\t\t\t\t</TableRow>\n\t\t\t))}\n\t\t</>\n\t);\n}\n","import { TextWrap } from \"@/components/default/base/TextWrap\";\nimport { ScrollArea, ScrollBar } from \"@/components/ui/scroll-area\";\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\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 { DataTablePagination } from \"./DataTablePagination\";\nimport { DataTablePaginationSkeleton } from \"./DataTablePaginationSkeleton\";\nimport { DataTableRowSkeleton } from \"./DataTableRowSkeleton\";\n\ninterface ListParams {\n\t[propName: string]: string | string[];\n}\n\ninterface DataTableViewOptionsProps<TData, TValue> {\n\ttable: TableType<TData>;\n\tcolumns: ColumnDef<TData, TValue>[];\n\tsetQueryParams?: React.Dispatch<React.SetStateAction<ListParams>>;\n\tisLoadingTable?: boolean;\n\tdataLabel: string;\n\tactionColumns?: string[];\n\tmessageEmpty?: React.ReactNode;\n}\n\nexport const DataTableMainFrame = <TData, TValue>({\n\ttable,\n\tcolumns,\n\tisLoadingTable,\n\tsetQueryParams,\n\tdataLabel,\n\tactionColumns = [],\n\tmessageEmpty = <>Sem resultados</>,\n}: DataTableViewOptionsProps<TData, TValue>) => {\n\tconst currentPage = Number(table.getState().pagination.pageIndex).toString();\n\tconst pageSize = Number(table.getState().pagination.pageSize).toString();\n\tconst sorting = table.getState().sorting;\n\tReact.useEffect(() => {\n\t\tif (!setQueryParams) return;\n\t\tconst sortingParams = { sortingBy: \"\", order: \"\" };\n\t\tif (sorting.length > 0) {\n\t\t\tsortingParams.sortingBy = sorting[0].id;\n\t\t\tsortingParams.order = sorting[0].desc ? \"DESC\" : \"ASC\";\n\t\t}\n\t\tsetQueryParams((prev) => ({\n\t\t\t...prev,\n\t\t\tpageSize,\n\t\t\tpage: currentPage,\n\t\t\t...sortingParams,\n\t\t}));\n\t}, [currentPage, pageSize, setQueryParams, sorting]);\n\treturn (\n\t\t<>\n\t\t\t<ScrollArea className=\"bg-background w-full rounded-md border whitespace-nowrap\">\n\t\t\t\t<Table>\n\t\t\t\t\t<TableHeader className=\"group rounded-md\">\n\t\t\t\t\t\t{table.getHeaderGroups().map((headerGroup) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<TableRow key={headerGroup.id}>\n\t\t\t\t\t\t\t\t\t{headerGroup.headers.map((header) => {\n\t\t\t\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\t\t\t\tcolumn: { id },\n\t\t\t\t\t\t\t\t\t\t} = header;\n\n\t\t\t\t\t\t\t\t\t\tconst isActionsColumn = [\"actions\", ...actionColumns].includes(id);\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<TableHead key={header.id}>\n\t\t\t\t\t\t\t\t\t\t\t\t{header.isPlaceholder ? null : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{...{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!isActionsColumn && header.column.getCanSort()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? \"flex w-full items-center justify-start cursor-pointer gap-1 font-medium\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick: !isActionsColumn\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? header.column.getToggleSortingHandler()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{flexRender(header.column.columnDef.header, header.getContext())}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{(!isActionsColumn &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.getCanSort() &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tasc: <ArrowDownIcon className=\"h-3.5 w-3.5\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdesc: <ArrowUpIcon className=\"h-3.5 w-3.5\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfalse: <CaretSortIcon className=\"h-4 w-4\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}[header.column.getIsSorted() as string]) ?? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ArrowDownIcon className=\"h-3.5 w-3.5\" />\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</TableHeader>\n\n\t\t\t\t\t<TableBody>\n\t\t\t\t\t\t{!isLoadingTable && table.getRowModel().rows?.length ? (\n\t\t\t\t\t\t\ttable.getRowModel().rows.map((row) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<TableRow\n\t\t\t\t\t\t\t\t\t\tkey={row.id}\n\t\t\t\t\t\t\t\t\t\tdata-state={row.getIsSelected() && \"selected\"}\n\t\t\t\t\t\t\t\t\t\tclassName=\"even:bg-body/50\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{row.getVisibleCells().map((cell) => {\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t<TableCell key={cell.id} className=\"p-2\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<TextWrap>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{flexRender(cell.column.columnDef.cell, cell.getContext())}\n\t\t\t\t\t\t\t\t\t\t\t\t\t</TextWrap>\n\t\t\t\t\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t) : isLoadingTable ? (\n\t\t\t\t\t\t\t<DataTableRowSkeleton columnCount={table.getAllColumns().length} />\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<TableRow>\n\t\t\t\t\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t\t\t\t\t{messageEmpty}\n\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</TableBody>\n\t\t\t\t</Table>\n\t\t\t\t<ScrollBar orientation=\"horizontal\" />\n\t\t\t</ScrollArea>\n\t\t\t{isLoadingTable ? (\n\t\t\t\t<DataTablePaginationSkeleton />\n\t\t\t) : (\n\t\t\t\t<DataTablePagination table={table} dataLabel={dataLabel} />\n\t\t\t)}\n\t\t</>\n\t);\n};\n","import { Skeleton } from \"@/components/ui/skeleton\";\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\nimport { cn } from \"@/lib/utils\";\nimport React from \"react\";\ninterface DataTableSkeletonProps extends React.HTMLAttributes<HTMLDivElement> {\n\t/**\n\t * The number of columns in the table.\n\t * @type number\n\t */\n\tcolumnCount: number;\n\n\t/**\n\t * The number of rows in the table.\n\t * @default 10\n\t * @type number | undefined\n\t */\n\trowCount?: number;\n\n\t/**\n\t * The number of searchable columns in the table.\n\t * @default 0\n\t * @type number | undefined\n\t */\n\tsearchableColumnCount?: number;\n\n\t/**\n\t * The number of filterable columns in the table.\n\t * @default 0\n\t * @type number | undefined\n\t */\n\tfilterableColumnCount?: number;\n\n\t/**\n\t * Flag to show the table view options.\n\t * @default undefined\n\t * @type boolean | undefined\n\t */\n\tshowViewOptions?: boolean;\n\n\t/**\n\t * The width of each cell in the table.\n\t * The length of the array should be equal to the columnCount.\n\t * Any valid CSS width value is accepted.\n\t * @default [\"auto\"]\n\t * @type string[] | undefined\n\t */\n\tcellWidths?: string[];\n\n\t/**\n\t * Flag to show the pagination bar.\n\t * @default true\n\t * @type boolean | undefined\n\t */\n\twithPagination?: boolean;\n\n\t/**\n\t * Flag to prevent the table cells from shrinking.\n\t * @default false\n\t * @type boolean | undefined\n\t */\n\tshrinkZero?: boolean;\n}\n\nexport function DataTableSkeleton(props: DataTableSkeletonProps) {\n\tconst {\n\t\tcolumnCount,\n\t\trowCount = 10,\n\t\tsearchableColumnCount = 0,\n\t\tfilterableColumnCount = 0,\n\t\tshowViewOptions = true,\n\t\tcellWidths = [\"auto\"],\n\t\twithPagination = true,\n\t\tshrinkZero = false,\n\t\tclassName,\n\t\t...skeletonProps\n\t} = props;\n\n\treturn (\n\t\t<div className={cn(\"w-full space-y-2.5 overflow-auto\", className)} {...skeletonProps}>\n\t\t\t<div className=\"flex w-full items-center justify-between space-x-2 overflow-auto p-1\">\n\t\t\t\t<div className=\"flex flex-1 items-center space-x-2\">\n\t\t\t\t\t{searchableColumnCount > 0\n\t\t\t\t\t\t? Array.from({ length: searchableColumnCount }).map((_, i) => (\n\t\t\t\t\t\t\t\t<Skeleton key={`${String(i)}`} className=\"h-7 w-40 lg:w-60\" />\n\t\t\t\t\t\t\t))\n\t\t\t\t\t\t: null}\n\t\t\t\t\t{filterableColumnCount > 0\n\t\t\t\t\t\t? Array.from({ length: filterableColumnCount }).map((_, i) => (\n\t\t\t\t\t\t\t\t<Skeleton key={`${String(i)}`} className=\"h-7 w-[4.5rem] border-dashed\" />\n\t\t\t\t\t\t\t))\n\t\t\t\t\t\t: null}\n\t\t\t\t</div>\n\t\t\t\t{showViewOptions ? <Skeleton className=\"ml-auto hidden h-7 w-[4.5rem] lg:flex\" /> : null}\n\t\t\t</div>\n\t\t\t<div className=\"rounded-md border\">\n\t\t\t\t<Table>\n\t\t\t\t\t<TableHeader>\n\t\t\t\t\t\t{Array.from({ length: 1 }).map((_, i) => (\n\t\t\t\t\t\t\t<TableRow key={`${String(i)}`} className=\"hover:bg-transparent\">\n\t\t\t\t\t\t\t\t{Array.from({ length: columnCount }).map((_, j) => (\n\t\t\t\t\t\t\t\t\t<TableHead\n\t\t\t\t\t\t\t\t\t\tkey={`${String(j)}`}\n\t\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\t\twidth: cellWidths[j],\n\t\t\t\t\t\t\t\t\t\t\tminWidth: shrinkZero ? cellWidths[j] : \"auto\",\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Skeleton className=\"h-6 w-full\" />\n\t\t\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</TableHeader>\n\t\t\t\t\t<TableBody>\n\t\t\t\t\t\t{Array.from({ length: rowCount }).map((_, i) => (\n\t\t\t\t\t\t\t<TableRow key={`${String(i)}`} className=\"hover:bg-transparent\">\n\t\t\t\t\t\t\t\t{Array.from({ length: columnCount }).map((_, j) => (\n\t\t\t\t\t\t\t\t\t<TableCell\n\t\t\t\t\t\t\t\t\t\tkey={`${String(j)}`}\n\t\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\t\twidth: cellWidths[j],\n\t\t\t\t\t\t\t\t\t\t\tminWidth: shrinkZero ? cellWidths[j] : \"auto\",\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Skeleton className=\"h-6 w-full\" />\n\t\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</TableBody>\n\t\t\t\t</Table>\n\t\t\t</div>\n\t\t\t{withPagination ? (\n\t\t\t\t<div className=\"flex w-full items-center justify-between gap-4 overflow-auto p-1 sm:gap-8\">\n\t\t\t\t\t<Skeleton className=\"h-7 w-40 shrink-0\" />\n\t\t\t\t\t<div className=\"flex items-center gap-4 sm:gap-6 lg:gap-8\">\n\t\t\t\t\t\t<div className=\"flex items-center space-x-2\">\n\t\t\t\t\t\t\t<Skeleton className=\"h-7 w-24\" />\n\t\t\t\t\t\t\t<Skeleton className=\"h-7 w-[4.5rem]\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex items-center justify-center text-sm font-medium\">\n\t\t\t\t\t\t\t<Skeleton className=\"h-7 w-20\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex items-center space-x-2\">\n\t\t\t\t\t\t\t<Skeleton className=\"hidden size-7 lg:block\" />\n\t\t\t\t\t\t\t<Skeleton className=\"size-7\" />\n\t\t\t\t\t\t\t<Skeleton className=\"size-7\" />\n\t\t\t\t\t\t\t<Skeleton className=\"hidden size-7 lg:block\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t) : null}\n\t\t</div>\n\t);\n}\n","import { Button } from \"@/components/ui/button\";\nimport {\n\tCommand,\n\tCommandEmpty,\n\tCommandInput,\n\tCommandItem,\n\tCommandList,\n} from \"@/components/ui/command\";\nimport { Popover, PopoverContent, PopoverTrigger } 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\ttable: Table<TData>;\n\tuniqueStatusValues: TEnum[];\n\trenderStatusMessage(status: TEnum): string;\n\tclassName?: string;\n}\n\nexport function DataTableStatus<TData, TEnum>({\n\ttable,\n\tuniqueStatusValues,\n\trenderStatusMessage,\n\tclassName,\n}: DataTableStatusProps<TData, TEnum>) {\n\tconst triggerRef = useRef<HTMLButtonElement>(null);\n\n\tconst currentFilter = table.getColumn(\"status\")?.getFilterValue() as TEnum | undefined;\n\n\treturn (\n\t\t<Popover modal>\n\t\t\t<PopoverTrigger asChild>\n\t\t\t\t<Button\n\t\t\t\t\tref={triggerRef}\n\t\t\t\t\taria-label=\"Filtre por status\"\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\"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\t\t\t\t\t\tclassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t{currentFilter ? renderStatusMessage(currentFilter) : \"Todos os status\"}\n\t\t\t\t\t<ChevronDownIcon className=\"h-4 w-4\" />\n\t\t\t\t</Button>\n\t\t\t</PopoverTrigger>\n\t\t\t<PopoverContent\n\t\t\t\talign=\"end\"\n\t\t\t\tclassName=\"w-44 p-0\"\n\t\t\t\tonCloseAutoFocus={() => triggerRef.current?.focus()}\n\t\t\t>\n\t\t\t\t<Command>\n\t\t\t\t\t<CommandInput placeholder=\"Pesquisar status...\" />\n\t\t\t\t\t<CommandList>\n\t\t\t\t\t\t<CommandEmpty>Nenhum status encontrado.</CommandEmpty>\n\t\t\t\t\t\t<CommandItem\n\t\t\t\t\t\t\tkey=\"all\"\n\t\t\t\t\t\t\tonSelect={() => table.getColumn(\"status\")?.setFilterValue(undefined)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span className=\"truncate\">Todos os status</span>\n\t\t\t\t\t\t</CommandItem>\n\t\t\t\t\t\t{uniqueStatusValues.map((item) => {\n\t\t\t\t\t\t\tif (!item) return null;\n\n\t\t\t\t\t\t\tconst statusMessage = renderStatusMessage(item as TEnum);\n\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<CommandItem\n\t\t\t\t\t\t\t\t\tkey={`${String(item)}`}\n\t\t\t\t\t\t\t\t\tonSelect={() => table.getColumn(\"status\")?.setFilterValue(item)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span className=\"truncate\">{statusMessage}</span>\n\t\t\t\t\t\t\t\t</CommandItem>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</CommandList>\n\t\t\t\t</Command>\n\t\t\t</PopoverContent>\n\t\t</Popover>\n\t);\n}\n","import { TextWrap } from \"@/components/default/base/TextWrap\";\nimport { ScrollArea, ScrollBar } from \"@/components/ui/scroll-area\";\nimport { Sortable, SortableItem } from \"@/components/ui/sortable\";\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\nimport { UniqueIdentifier } from \"@dnd-kit/core\";\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 { DataTablePagination } from \"./DataTablePagination\";\nimport { DataTablePaginationSkeleton } from \"./DataTablePaginationSkeleton\";\nimport { DataTableRowSkeleton } from \"./DataTableRowSkeleton\";\n\ninterface DataTableViewOptionsProps<TData, TValue> {\n\ttable: TableType<TData>;\n\tcolumns: ColumnDef<TData, TValue>[];\n\tsetQueryParams?: React.Dispatch<React.SetStateAction<ListParams>>;\n\tisLoadingTable?: boolean;\n\tdataLabel: string;\n\tactionColumns?: string[];\n\tdata: TData[];\n\tonDataChange?: (newData: TData[]) => void;\n\tmessageEmpty?: React.ReactNode;\n}\n\ntype RowData = {\n\tuuid?: string;\n\tfundId?: number;\n\tid?: number;\n};\n\ninterface ListParams {\n\t[propName: string]: string | string[];\n}\n\nexport const DataTableMainFrameSortable = <TData extends RowData, TValue>({\n\ttable,\n\tcolumns,\n\tisLoadingTable,\n\tsetQueryParams,\n\tdataLabel,\n\tactionColumns = [],\n\tdata,\n\tmessageEmpty = <>Sem resultados</>,\n\tonDataChange,\n}: DataTableViewOptionsProps<TData, TValue>) => {\n\tconst [newData, setNewData] = React.useState<TData[]>(data);\n\n\tReact.useEffect(() => {\n\t\tsetNewData(data);\n\t}, [data]);\n\n\tconst handleValueChange = (newItems: { id: UniqueIdentifier }[]) => {\n\t\tsetNewData(newItems as TData[]);\n\t\tif (onDataChange) {\n\t\t\tonDataChange(newItems as TData[]);\n\t\t}\n\t};\n\n\tconst currentPage = Number(table.getState().pagination.pageIndex).toString();\n\tconst pageSize = Number(table.getState().pagination.pageSize).toString();\n\tconst sorting = table.getState().sorting;\n\tReact.useEffect(() => {\n\t\tif (!setQueryParams) return;\n\t\tconst sortingParams = { sortingBy: \"\", order: \"\" };\n\t\tif (sorting.length > 0) {\n\t\t\tsortingParams.sortingBy = sorting[0].id;\n\t\t\tsortingParams.order = sorting[0].desc ? \"DESC\" : \"ASC\";\n\t\t}\n\t\tsetQueryParams((prev) => ({\n\t\t\t...prev,\n\t\t\tpageSize,\n\t\t\tpage: currentPage,\n\t\t\t...sortingParams,\n\t\t}));\n\t}, [currentPage, pageSize, setQueryParams, sorting]);\n\n\treturn (\n\t\t<>\n\t\t\t<ScrollArea className=\"bg-background w-full rounded-md border whitespace-nowrap\">\n\t\t\t\t<Table>\n\t\t\t\t\t<TableHeader className=\"group rounded-md\">\n\t\t\t\t\t\t{table.getHeaderGroups().map((headerGroup) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<TableRow key={headerGroup.id}>\n\t\t\t\t\t\t\t\t\t{headerGroup.headers.map((header) => {\n\t\t\t\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\t\t\t\tcolumn: { id },\n\t\t\t\t\t\t\t\t\t\t} = header;\n\n\t\t\t\t\t\t\t\t\t\tconst isActionsColumn = [\"actions\", ...actionColumns].includes(id);\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<TableHead key={header.id}>\n\t\t\t\t\t\t\t\t\t\t\t\t{header.isPlaceholder ? null : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{...{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!isActionsColumn && header.column.getCanSort()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? \"flex w-full items-center justify-start cursor-pointer gap-1 font-medium\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick: !isActionsColumn\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? header.column.getToggleSortingHandler()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{flexRender(header.column.columnDef.header, header.getContext())}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{(!isActionsColumn &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.getCanSort() &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tasc: <ArrowDownIcon className=\"h-3.5 w-3.5\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdesc: <ArrowUpIcon className=\"h-3.5 w-3.5\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfalse: <CaretSortIcon className=\"h-4 w-4\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}[header.column.getIsSorted() as string]) ?? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ArrowDownIcon className=\"h-3.5 w-3.5\" />\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</TableHeader>\n\n\t\t\t\t\t<TableBody>\n\t\t\t\t\t\t<Sortable\n\t\t\t\t\t\t\tvalue={newData.map((item) => ({\n\t\t\t\t\t\t\t\t...item,\n\t\t\t\t\t\t\t\tid: item.id || item.fundId || item.uuid || \"\",\n\t\t\t\t\t\t\t}))}\n\t\t\t\t\t\t\tonValueChange={handleValueChange}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{!isLoadingTable && table.getRowModel().rows?.length ? (\n\t\t\t\t\t\t\t\ttable.getRowModel().rows.map((row) => {\n\t\t\t\t\t\t\t\t\tconst data = row.original;\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<SortableItem\n\t\t\t\t\t\t\t\t\t\t\tkey={row.id}\n\t\t\t\t\t\t\t\t\t\t\tvalue={data.id || data.fundId || data.uuid || \"\"}\n\t\t\t\t\t\t\t\t\t\t\tasChild\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<TableRow\n\t\t\t\t\t\t\t\t\t\t\t\tkey={row.id}\n\t\t\t\t\t\t\t\t\t\t\t\tdata-state={row.getIsSelected() && \"selected\"}\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"even:bg-body/50\"\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{row.getVisibleCells().map((cell) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<TableCell key={cell.id} className=\"p-2\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<TextWrap>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{flexRender(cell.column.columnDef.cell, cell.getContext())}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t</TextWrap>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t\t\t\t</SortableItem>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t) : isLoadingTable ? (\n\t\t\t\t\t\t\t\t<DataTableRowSkeleton columnCount={table.getAllColumns().length} />\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<TableRow>\n\t\t\t\t\t\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t\t\t\t\t\t{messageEmpty}\n\t\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</Sortable>\n\t\t\t\t\t</TableBody>\n\t\t\t\t</Table>\n\t\t\t\t<ScrollBar orientation=\"horizontal\" />\n\t\t\t</ScrollArea>\n\n\t\t\t{isLoadingTable ? (\n\t\t\t\t<DataTablePaginationSkeleton />\n\t\t\t) : (\n\t\t\t\t<DataTablePagination table={table} dataLabel={dataLabel} />\n\t\t\t)}\n\t\t</>\n\t);\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","DataTablePagination","pageSizeOptions","dataLabel","pageSize","currentPage","getState","pagination","pageIndex","rowCount","getRowCount","totalPageCount","Math","ceil","p","getRowModel","rows","length","toLocaleString","Select","String","onValueChange","setPageSize","Number","SelectTrigger","SelectValue","SelectContent","SelectItem","onClick","previousPage","disabled","getCanPreviousPage","ChevronLeftIcon","items","i","push","setPageIndex","start","max","min","end","PaginationItem","PaginationEllipsis","renderPageNumbers","nextPage","getCanNextPage","ChevronRightIcon","DataTablePaginationSkeleton","Skeleton","DataTableRowSkeleton","columnCount","cellWidths","shrinkZero","Fragment","Array","from","_","TableRow","j","TableCell","style","width","minWidth","DataTableMainFrame","columns","isLoadingTable","setQueryParams","actionColumns","messageEmpty","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","uuid","newItems","original","SortableItem"],"mappings":"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","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/DataTablePagination.tsx","../../src/components/default/data-table/DataTablePaginationSkeleton.tsx","../../src/components/default/data-table/DataTableRowSkeleton.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\tCommand,\n\tCommandEmpty,\n\tCommandGroup,\n\tCommandInput,\n\tCommandItem,\n\tCommandList,\n} from \"@/components/ui/command\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\n\ninterface DataTableViewOptionsProps<TData> {\n\ttable: Table<TData>;\n\ttransformColumnName?: (id: string) => string;\n}\n\nexport function DataTableViewOptions<TData>({\n\ttable,\n\ttransformColumnName,\n}: DataTableViewOptionsProps<TData>) {\n\tconst triggerRef = React.useRef<HTMLButtonElement>(null);\n\n\treturn (\n\t\t<Popover modal>\n\t\t\t<PopoverTrigger asChild>\n\t\t\t\t<Button\n\t\t\t\t\tref={triggerRef}\n\t\t\t\t\taria-label=\"Toggle columns\"\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tclassName=\"text-muted-foreground hover:text-muted-foreground w-full max-w-[12.5rem] items-center justify-between bg-inherit px-3 py-2 hover:bg-inherit\"\n\t\t\t\t>\n\t\t\t\t\tColunas\n\t\t\t\t\t<ChevronDownIcon className=\"h-4 w-4\" />\n\t\t\t\t</Button>\n\t\t\t</PopoverTrigger>\n\t\t\t<PopoverContent\n\t\t\t\talign=\"end\"\n\t\t\t\tclassName=\"w-44 p-0\"\n\t\t\t\tonCloseAutoFocus={() => triggerRef.current?.focus()}\n\t\t\t>\n\t\t\t\t<Command>\n\t\t\t\t\t<CommandInput placeholder=\"Pesquisar colunas...\" />\n\t\t\t\t\t<CommandList>\n\t\t\t\t\t\t<CommandEmpty>Nenhuma coluna encontrada.</CommandEmpty>\n\t\t\t\t\t\t<CommandGroup>\n\t\t\t\t\t\t\t{table\n\t\t\t\t\t\t\t\t.getAllColumns()\n\t\t\t\t\t\t\t\t.filter((column) => typeof column.accessorFn !== \"undefined\" && column.getCanHide())\n\t\t\t\t\t\t\t\t.map((column) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<CommandItem\n\t\t\t\t\t\t\t\t\t\t\tkey={column.id}\n\t\t\t\t\t\t\t\t\t\t\tonSelect={() => column.toggleVisibility(!column.getIsVisible())}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"truncate\">\n\t\t\t\t\t\t\t\t\t\t\t\t{transformColumnName ? transformColumnName(column.id) : column.id}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t<Check\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"ml-auto size-4 shrink-0\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tcolumn.getIsVisible() ? \"opacity-100\" : \"opacity-0\",\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</CommandItem>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</CommandGroup>\n\t\t\t\t\t</CommandList>\n\t\t\t\t</Command>\n\t\t\t</PopoverContent>\n\t\t</Popover>\n\t);\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\ttable: Table<TData>;\n\tkeySearch: string;\n\tplaceholder: string;\n}\n\nexport function DataTableSearch<TData>({\n\ttable,\n\tkeySearch,\n\tplaceholder,\n}: DataTableSearchProps<TData>) {\n\treturn (\n\t\t<div className=\"relative w-full max-w-sm\">\n\t\t\t<SearchIcon className=\"text-muted-foreground absolute top-3 left-3 h-4 w-4\" />\n\t\t\t<Input\n\t\t\t\tplaceholder={placeholder}\n\t\t\t\tvalue={(table.getColumn(keySearch)?.getFilterValue() as string) ?? \"\"}\n\t\t\t\tonChange={(event) => table.getColumn(keySearch)?.setFilterValue(event.target.value)}\n\t\t\t\tclassName=\"w-full pl-8 xl:w-80\"\n\t\t\t/>\n\t\t</div>\n\t);\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 type { Table } from \"@tanstack/react-table\";\n\nimport { Button } from \"@/components/ui/button\";\nimport { PaginationEllipsis, PaginationItem } from \"@/components/ui/pagination\";\nimport {\n\tSelect,\n\tSelectContent,\n\tSelectItem,\n\tSelectTrigger,\n\tSelectValue,\n} from \"@/components/ui/select\";\nimport { ChevronLeftIcon, ChevronRightIcon } from \"lucide-react\";\nimport React from \"react\";\ninterface DataTablePaginationProps<TData> {\n\ttable: Table<TData>;\n\tpageSizeOptions?: number[];\n\tdataLabel?: string;\n}\n\nexport function DataTablePagination<TData>({\n\ttable,\n\tpageSizeOptions = [20, 30, 50, 100, 200],\n\tdataLabel = \"Fundos\",\n}: DataTablePaginationProps<TData>) {\n\tconst pageSize = pageSizeOptions[0];\n\tconst currentPage = table.getState().pagination.pageIndex + 1;\n\tconst rowCount = table.getRowCount();\n\tconst totalPageCount = Math.ceil(rowCount / table.getState().pagination.pageSize);\n\n\tconst renderPageNumbers = () => {\n\t\tconst items: React.ReactNode[] = [];\n\t\tconst maxVisiblePages = 3;\n\n\t\tif (totalPageCount <= maxVisiblePages) {\n\t\t\tfor (let i = 1; i <= totalPageCount; i++) {\n\t\t\t\titems.push(\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant={currentPage === i ? \"outline\" : \"ghost\"}\n\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\tonClick={() => table.setPageIndex(i - 1)}\n\t\t\t\t\t\tclassName=\"size-9\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{i}\n\t\t\t\t\t</Button>,\n\t\t\t\t);\n\t\t\t}\n\t\t} else {\n\t\t\titems.push(\n\t\t\t\t<Button\n\t\t\t\t\tvariant={currentPage === 1 ? \"outline\" : \"ghost\"}\n\t\t\t\t\tkey={1}\n\t\t\t\t\tonClick={() => table.setPageIndex(0)}\n\t\t\t\t\tclassName=\"size-9\"\n\t\t\t\t>\n\t\t\t\t\t1\n\t\t\t\t</Button>,\n\t\t\t);\n\n\t\t\tconst start = Math.max(2, Math.min(currentPage, totalPageCount - (maxVisiblePages - 1)));\n\t\t\tconst end = Math.min(totalPageCount - 1, start + maxVisiblePages - 2);\n\n\t\t\tif (start > 2) {\n\t\t\t\titems.push(\n\t\t\t\t\t<PaginationItem key=\"ellipsis-start\" className=\"list-none\">\n\t\t\t\t\t\t<PaginationEllipsis />\n\t\t\t\t\t</PaginationItem>,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tfor (let i = start; i <= end; i++) {\n\t\t\t\titems.push(\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant={currentPage === i ? \"outline\" : \"ghost\"}\n\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\tonClick={() => table.setPageIndex(i - 1)}\n\t\t\t\t\t\tclassName=\"size-9\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{i}\n\t\t\t\t\t</Button>,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (end < totalPageCount - 1) {\n\t\t\t\titems.push(\n\t\t\t\t\t<PaginationItem key=\"ellipsis-end\" className=\"list-none\">\n\t\t\t\t\t\t<PaginationEllipsis />\n\t\t\t\t\t</PaginationItem>,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\titems.push(\n\t\t\t\t<Button\n\t\t\t\t\tvariant={currentPage === totalPageCount ? \"outline\" : \"ghost\"}\n\t\t\t\t\tkey={totalPageCount}\n\t\t\t\t\tonClick={() => table.setPageIndex(totalPageCount - 1)}\n\t\t\t\t>\n\t\t\t\t\t{totalPageCount}\n\t\t\t\t</Button>,\n\t\t\t);\n\t\t}\n\n\t\treturn items;\n\t};\n\treturn (\n\t\t<div className=\"mt-4 flex flex-wrap items-center justify-between gap-2\">\n\t\t\t<div className=\"text-muted-foreground flex gap-1 text-sm\">\n\t\t\t\t<p className=\"ml-2\">\n\t\t\t\t\tMostrando {table.getRowModel().rows.length.toLocaleString()} de {rowCount} {dataLabel}.\n\t\t\t\t</p>\n\t\t\t</div>\n\n\t\t\t<div className=\"flex flex-wrap items-center justify-between gap-2 gap-y-4\">\n\t\t\t\t<Select\n\t\t\t\t\tvalue={String(table.getState().pagination.pageSize) || String(pageSize)}\n\t\t\t\t\tonValueChange={(value) => table.setPageSize(Number(value))}\n\t\t\t\t>\n\t\t\t\t\t<SelectTrigger className=\"w-fit\">\n\t\t\t\t\t\t<SelectValue\n\t\t\t\t\t\t\tplaceholder={`Mostrar ${table.getState().pagination.pageSize || pageSize}`}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</SelectTrigger>\n\t\t\t\t\t<SelectContent>\n\t\t\t\t\t\t{rowCount && (rowCount === 0 || rowCount < pageSize) ? (\n\t\t\t\t\t\t\t<SelectItem value={String(pageSize)}>Mostrar {pageSize}</SelectItem>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{pageSizeOptions.map((pageSize) => (\n\t\t\t\t\t\t\t\t\t<SelectItem key={pageSize} value={String(pageSize)}>\n\t\t\t\t\t\t\t\t\t\tMostrar {pageSize}\n\t\t\t\t\t\t\t\t\t</SelectItem>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</SelectContent>\n\t\t\t\t</Select>\n\n\t\t\t\t<div className=\"flex flex-wrap gap-2 gap-y-4\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\tonClick={() => table.previousPage()}\n\t\t\t\t\t\tdisabled={!table.getCanPreviousPage()}\n\t\t\t\t\t\taria-label=\"Ir para página anterior\"\n\t\t\t\t\t\tclassName=\"gap-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<ChevronLeftIcon className=\"size-4\" />\n\t\t\t\t\t\tAnterior\n\t\t\t\t\t</Button>\n\n\t\t\t\t\t<div className=\"flex gap-2\">{renderPageNumbers()}</div>\n\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\tonClick={() => table.nextPage()}\n\t\t\t\t\t\tdisabled={!table.getCanNextPage()}\n\t\t\t\t\t\taria-label=\"Ir para próxima página\"\n\t\t\t\t\t\tclassName=\"gap-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\tPróximo\n\t\t\t\t\t\t<ChevronRightIcon className=\"size-4\" />\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n","import { Skeleton } from \"@/components/ui/skeleton\";\nimport { cn } from \"@/lib/utils\";\n\nexport function DataTablePaginationSkeleton({\n\tclassName,\n}: {\n\tclassName?: string;\n}) {\n\treturn (\n\t\t<div className=\"mt-4 flex flex-wrap items-center justify-between gap-2\">\n\t\t\t<Skeleton className={cn(\"h-5 w-40\", className)} />\n\t\t\t<div className=\"flex flex-wrap items-center justify-between gap-2 gap-y-4\">\n\t\t\t\t<Skeleton className={cn(\"h-10 w-28\", className)} />\n\t\t\t\t<Skeleton className={cn(\"h-9 w-[16rem]\", className)} />\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n","import { Skeleton } from \"@/components/ui/skeleton\";\nimport { TableCell, TableRow } from \"@/components/ui/table\";\n\ninterface DataTableRowSkeletonProps extends React.HTMLAttributes<HTMLDivElement> {\n\tcolumnCount: number;\n\trowCount?: number;\n\tcellWidths?: string[];\n\tshrinkZero?: boolean;\n}\n\nexport function DataTableRowSkeleton(props: DataTableRowSkeletonProps) {\n\tconst { columnCount, rowCount = 8, cellWidths = [\"auto\"], shrinkZero = false } = props;\n\n\treturn (\n\t\t<>\n\t\t\t{Array.from({ length: rowCount }).map((_, i) => (\n\t\t\t\t<TableRow key={`row-${String(i)}`} className=\"hover:bg-transparent\">\n\t\t\t\t\t{Array.from({ length: columnCount }).map((_, j) => (\n\t\t\t\t\t\t<TableCell\n\t\t\t\t\t\t\tkey={`cell-${String(i)}-${j}`}\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\twidth: cellWidths[j],\n\t\t\t\t\t\t\t\tminWidth: shrinkZero ? cellWidths[j] : \"auto\",\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Skeleton className=\"h-6 w-full\" />\n\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t))}\n\t\t\t\t</TableRow>\n\t\t\t))}\n\t\t</>\n\t);\n}\n","import { TextWrap } from \"@/components/default/base/TextWrap\";\nimport { ScrollArea, ScrollBar } from \"@/components/ui/scroll-area\";\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\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 { DataTablePagination } from \"./DataTablePagination\";\nimport { DataTablePaginationSkeleton } from \"./DataTablePaginationSkeleton\";\nimport { DataTableRowSkeleton } from \"./DataTableRowSkeleton\";\n\ninterface ListParams {\n\t[propName: string]: string | string[];\n}\n\ninterface DataTableViewOptionsProps<TData, TValue> {\n\ttable: TableType<TData>;\n\tcolumns: ColumnDef<TData, TValue>[];\n\tsetQueryParams?: React.Dispatch<React.SetStateAction<ListParams>>;\n\tisLoadingTable?: boolean;\n\tdataLabel: string;\n\tactionColumns?: string[];\n\tmessageEmpty?: React.ReactNode;\n}\n\nexport const DataTableMainFrame = <TData, TValue>({\n\ttable,\n\tcolumns,\n\tisLoadingTable,\n\tsetQueryParams,\n\tdataLabel,\n\tactionColumns = [],\n\tmessageEmpty = <>Sem resultados</>,\n}: DataTableViewOptionsProps<TData, TValue>) => {\n\tconst currentPage = Number(table.getState().pagination.pageIndex).toString();\n\tconst pageSize = Number(table.getState().pagination.pageSize).toString();\n\tconst sorting = table.getState().sorting;\n\tReact.useEffect(() => {\n\t\tif (!setQueryParams) return;\n\t\tconst sortingParams = { sortingBy: \"\", order: \"\" };\n\t\tif (sorting.length > 0) {\n\t\t\tsortingParams.sortingBy = sorting[0].id;\n\t\t\tsortingParams.order = sorting[0].desc ? \"DESC\" : \"ASC\";\n\t\t}\n\t\tsetQueryParams((prev) => ({\n\t\t\t...prev,\n\t\t\tpageSize,\n\t\t\tpage: currentPage,\n\t\t\t...sortingParams,\n\t\t}));\n\t}, [currentPage, pageSize, setQueryParams, sorting]);\n\n\treturn (\n\t\t<>\n\t\t\t<ScrollArea className=\"bg-background w-full rounded-md border whitespace-nowrap\">\n\t\t\t\t<Table>\n\t\t\t\t\t<TableHeader className=\"group rounded-md\">\n\t\t\t\t\t\t{table.getHeaderGroups().map((headerGroup) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<TableRow key={headerGroup.id}>\n\t\t\t\t\t\t\t\t\t{headerGroup.headers.map((header) => {\n\t\t\t\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\t\t\t\tcolumn: { id },\n\t\t\t\t\t\t\t\t\t\t} = header;\n\n\t\t\t\t\t\t\t\t\t\tconst isActionsColumn = [\"actions\", ...actionColumns].includes(id);\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<TableHead key={header.id}>\n\t\t\t\t\t\t\t\t\t\t\t\t{header.isPlaceholder ? null : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{...{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!isActionsColumn && header.column.getCanSort()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? \"flex w-full items-center justify-start cursor-pointer gap-1 font-medium\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick: !isActionsColumn\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? header.column.getToggleSortingHandler()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{flexRender(header.column.columnDef.header, header.getContext())}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{(!isActionsColumn &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.getCanSort() &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tasc: <ArrowDownIcon className=\"h-3.5 w-3.5\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdesc: <ArrowUpIcon className=\"h-3.5 w-3.5\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfalse: <CaretSortIcon className=\"h-4 w-4\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}[header.column.getIsSorted() as string]) ?? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ArrowDownIcon className=\"h-3.5 w-3.5\" />\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</TableHeader>\n\n\t\t\t\t\t<TableBody>\n\t\t\t\t\t\t{!isLoadingTable && table.getRowModel().rows?.length ? (\n\t\t\t\t\t\t\ttable.getRowModel().rows.map((row) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<TableRow\n\t\t\t\t\t\t\t\t\t\tkey={row.id}\n\t\t\t\t\t\t\t\t\t\tdata-state={row.getIsSelected() && \"selected\"}\n\t\t\t\t\t\t\t\t\t\tclassName=\"even:bg-body/50\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{row.getVisibleCells().map((cell) => {\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t<TableCell key={cell.id} className=\"p-2\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<TextWrap>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{flexRender(cell.column.columnDef.cell, cell.getContext())}\n\t\t\t\t\t\t\t\t\t\t\t\t\t</TextWrap>\n\t\t\t\t\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t) : isLoadingTable ? (\n\t\t\t\t\t\t\t<DataTableRowSkeleton columnCount={table.getAllColumns().length} />\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<TableRow>\n\t\t\t\t\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t\t\t\t\t{messageEmpty}\n\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</TableBody>\n\t\t\t\t</Table>\n\t\t\t\t<ScrollBar orientation=\"horizontal\" />\n\t\t\t</ScrollArea>\n\t\t\t{isLoadingTable ? (\n\t\t\t\t<DataTablePaginationSkeleton />\n\t\t\t) : (\n\t\t\t\t<DataTablePagination table={table} dataLabel={dataLabel} />\n\t\t\t)}\n\t\t</>\n\t);\n};\n","import { Skeleton } from \"@/components/ui/skeleton\";\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\nimport { cn } from \"@/lib/utils\";\nimport React from \"react\";\ninterface DataTableSkeletonProps extends React.HTMLAttributes<HTMLDivElement> {\n\t/**\n\t * The number of columns in the table.\n\t * @type number\n\t */\n\tcolumnCount: number;\n\n\t/**\n\t * The number of rows in the table.\n\t * @default 10\n\t * @type number | undefined\n\t */\n\trowCount?: number;\n\n\t/**\n\t * The number of searchable columns in the table.\n\t * @default 0\n\t * @type number | undefined\n\t */\n\tsearchableColumnCount?: number;\n\n\t/**\n\t * The number of filterable columns in the table.\n\t * @default 0\n\t * @type number | undefined\n\t */\n\tfilterableColumnCount?: number;\n\n\t/**\n\t * Flag to show the table view options.\n\t * @default undefined\n\t * @type boolean | undefined\n\t */\n\tshowViewOptions?: boolean;\n\n\t/**\n\t * The width of each cell in the table.\n\t * The length of the array should be equal to the columnCount.\n\t * Any valid CSS width value is accepted.\n\t * @default [\"auto\"]\n\t * @type string[] | undefined\n\t */\n\tcellWidths?: string[];\n\n\t/**\n\t * Flag to show the pagination bar.\n\t * @default true\n\t * @type boolean | undefined\n\t */\n\twithPagination?: boolean;\n\n\t/**\n\t * Flag to prevent the table cells from shrinking.\n\t * @default false\n\t * @type boolean | undefined\n\t */\n\tshrinkZero?: boolean;\n}\n\nexport function DataTableSkeleton(props: DataTableSkeletonProps) {\n\tconst {\n\t\tcolumnCount,\n\t\trowCount = 10,\n\t\tsearchableColumnCount = 0,\n\t\tfilterableColumnCount = 0,\n\t\tshowViewOptions = true,\n\t\tcellWidths = [\"auto\"],\n\t\twithPagination = true,\n\t\tshrinkZero = false,\n\t\tclassName,\n\t\t...skeletonProps\n\t} = props;\n\n\treturn (\n\t\t<div className={cn(\"w-full space-y-2.5 overflow-auto\", className)} {...skeletonProps}>\n\t\t\t<div className=\"flex w-full items-center justify-between space-x-2 overflow-auto p-1\">\n\t\t\t\t<div className=\"flex flex-1 items-center space-x-2\">\n\t\t\t\t\t{searchableColumnCount > 0\n\t\t\t\t\t\t? Array.from({ length: searchableColumnCount }).map((_, i) => (\n\t\t\t\t\t\t\t\t<Skeleton key={`${String(i)}`} className=\"h-7 w-40 lg:w-60\" />\n\t\t\t\t\t\t\t))\n\t\t\t\t\t\t: null}\n\t\t\t\t\t{filterableColumnCount > 0\n\t\t\t\t\t\t? Array.from({ length: filterableColumnCount }).map((_, i) => (\n\t\t\t\t\t\t\t\t<Skeleton key={`${String(i)}`} className=\"h-7 w-[4.5rem] border-dashed\" />\n\t\t\t\t\t\t\t))\n\t\t\t\t\t\t: null}\n\t\t\t\t</div>\n\t\t\t\t{showViewOptions ? <Skeleton className=\"ml-auto hidden h-7 w-[4.5rem] lg:flex\" /> : null}\n\t\t\t</div>\n\t\t\t<div className=\"rounded-md border\">\n\t\t\t\t<Table>\n\t\t\t\t\t<TableHeader>\n\t\t\t\t\t\t{Array.from({ length: 1 }).map((_, i) => (\n\t\t\t\t\t\t\t<TableRow key={`${String(i)}`} className=\"hover:bg-transparent\">\n\t\t\t\t\t\t\t\t{Array.from({ length: columnCount }).map((_, j) => (\n\t\t\t\t\t\t\t\t\t<TableHead\n\t\t\t\t\t\t\t\t\t\tkey={`${String(j)}`}\n\t\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\t\twidth: cellWidths[j],\n\t\t\t\t\t\t\t\t\t\t\tminWidth: shrinkZero ? cellWidths[j] : \"auto\",\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Skeleton className=\"h-6 w-full\" />\n\t\t\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</TableHeader>\n\t\t\t\t\t<TableBody>\n\t\t\t\t\t\t{Array.from({ length: rowCount }).map((_, i) => (\n\t\t\t\t\t\t\t<TableRow key={`${String(i)}`} className=\"hover:bg-transparent\">\n\t\t\t\t\t\t\t\t{Array.from({ length: columnCount }).map((_, j) => (\n\t\t\t\t\t\t\t\t\t<TableCell\n\t\t\t\t\t\t\t\t\t\tkey={`${String(j)}`}\n\t\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\t\twidth: cellWidths[j],\n\t\t\t\t\t\t\t\t\t\t\tminWidth: shrinkZero ? cellWidths[j] : \"auto\",\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Skeleton className=\"h-6 w-full\" />\n\t\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</TableBody>\n\t\t\t\t</Table>\n\t\t\t</div>\n\t\t\t{withPagination ? (\n\t\t\t\t<div className=\"flex w-full items-center justify-between gap-4 overflow-auto p-1 sm:gap-8\">\n\t\t\t\t\t<Skeleton className=\"h-7 w-40 shrink-0\" />\n\t\t\t\t\t<div className=\"flex items-center gap-4 sm:gap-6 lg:gap-8\">\n\t\t\t\t\t\t<div className=\"flex items-center space-x-2\">\n\t\t\t\t\t\t\t<Skeleton className=\"h-7 w-24\" />\n\t\t\t\t\t\t\t<Skeleton className=\"h-7 w-[4.5rem]\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex items-center justify-center text-sm font-medium\">\n\t\t\t\t\t\t\t<Skeleton className=\"h-7 w-20\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex items-center space-x-2\">\n\t\t\t\t\t\t\t<Skeleton className=\"hidden size-7 lg:block\" />\n\t\t\t\t\t\t\t<Skeleton className=\"size-7\" />\n\t\t\t\t\t\t\t<Skeleton className=\"size-7\" />\n\t\t\t\t\t\t\t<Skeleton className=\"hidden size-7 lg:block\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t) : null}\n\t\t</div>\n\t);\n}\n","import { Button } from \"@/components/ui/button\";\nimport {\n\tCommand,\n\tCommandEmpty,\n\tCommandInput,\n\tCommandItem,\n\tCommandList,\n} from \"@/components/ui/command\";\nimport { Popover, PopoverContent, PopoverTrigger } 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\ttable: Table<TData>;\n\tuniqueStatusValues: TEnum[];\n\trenderStatusMessage(status: TEnum): string;\n\tclassName?: string;\n}\n\nexport function DataTableStatus<TData, TEnum>({\n\ttable,\n\tuniqueStatusValues,\n\trenderStatusMessage,\n\tclassName,\n}: DataTableStatusProps<TData, TEnum>) {\n\tconst triggerRef = useRef<HTMLButtonElement>(null);\n\n\tconst currentFilter = table.getColumn(\"status\")?.getFilterValue() as TEnum | undefined;\n\n\treturn (\n\t\t<Popover modal>\n\t\t\t<PopoverTrigger asChild>\n\t\t\t\t<Button\n\t\t\t\t\tref={triggerRef}\n\t\t\t\t\taria-label=\"Filtre por status\"\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\"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\t\t\t\t\t\tclassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t{currentFilter ? renderStatusMessage(currentFilter) : \"Todos os status\"}\n\t\t\t\t\t<ChevronDownIcon className=\"h-4 w-4\" />\n\t\t\t\t</Button>\n\t\t\t</PopoverTrigger>\n\t\t\t<PopoverContent\n\t\t\t\talign=\"end\"\n\t\t\t\tclassName=\"w-44 p-0\"\n\t\t\t\tonCloseAutoFocus={() => triggerRef.current?.focus()}\n\t\t\t>\n\t\t\t\t<Command>\n\t\t\t\t\t<CommandInput placeholder=\"Pesquisar status...\" />\n\t\t\t\t\t<CommandList>\n\t\t\t\t\t\t<CommandEmpty>Nenhum status encontrado.</CommandEmpty>\n\t\t\t\t\t\t<CommandItem\n\t\t\t\t\t\t\tkey=\"all\"\n\t\t\t\t\t\t\tonSelect={() => table.getColumn(\"status\")?.setFilterValue(undefined)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span className=\"truncate\">Todos os status</span>\n\t\t\t\t\t\t</CommandItem>\n\t\t\t\t\t\t{uniqueStatusValues.map((item) => {\n\t\t\t\t\t\t\tif (!item) return null;\n\n\t\t\t\t\t\t\tconst statusMessage = renderStatusMessage(item as TEnum);\n\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<CommandItem\n\t\t\t\t\t\t\t\t\tkey={`${String(item)}`}\n\t\t\t\t\t\t\t\t\tonSelect={() => table.getColumn(\"status\")?.setFilterValue(item)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span className=\"truncate\">{statusMessage}</span>\n\t\t\t\t\t\t\t\t</CommandItem>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</CommandList>\n\t\t\t\t</Command>\n\t\t\t</PopoverContent>\n\t\t</Popover>\n\t);\n}\n","import { TextWrap } from \"@/components/default/base/TextWrap\";\nimport { ScrollArea, ScrollBar } from \"@/components/ui/scroll-area\";\nimport { Sortable, SortableItem } from \"@/components/ui/sortable\";\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\nimport { cn } from \"@/lib/utils\";\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 { DataTablePagination } from \"./DataTablePagination\";\nimport { DataTablePaginationSkeleton } from \"./DataTablePaginationSkeleton\";\nimport { DataTableRowSkeleton } from \"./DataTableRowSkeleton\";\n\ninterface DataTableViewOptionsProps<TData, TValue> {\n\ttable: TableType<TData>;\n\tcolumns: ColumnDef<TData, TValue>[];\n\tsetQueryParams?: React.Dispatch<React.SetStateAction<ListParams>>;\n\tisLoadingTable?: boolean;\n\tdataLabel: string;\n\tactionColumns?: string[];\n\tdata: TData[];\n\tonDataChange?: (newData: TData[]) => void;\n\tmessageEmpty?: React.ReactNode;\n\trowKey: keyof TData | ((row: TData) => string | number);\n\tdividingColumnKey?: string[];\n}\n\ntype RowData = {\n\t// biome-ignore lint/suspicious/noExplicitAny: <explanation>\n\t[key: string]: any;\n};\n\ninterface ListParams {\n\t[propName: string]: string | string[];\n}\n\nconst getRowKey = <TData extends RowData>(\n\trow: TData,\n\trowKey: keyof TData | ((row: TData) => string | number),\n): string | number => {\n\tif (typeof rowKey === \"function\") {\n\t\treturn rowKey(row);\n\t}\n\treturn row[rowKey] as string | number;\n};\n\nexport const DataTableMainFrameSortable = <TData extends RowData, TValue>({\n\ttable,\n\tcolumns,\n\tisLoadingTable,\n\tsetQueryParams,\n\tdataLabel,\n\tactionColumns = [],\n\tdata,\n\tmessageEmpty = <>Sem resultados</>,\n\tonDataChange,\n\trowKey,\n\tdividingColumnKey,\n}: DataTableViewOptionsProps<TData, TValue>) => {\n\tconst [newData, setNewData] = React.useState<TData[]>(data);\n\n\tReact.useEffect(() => {\n\t\tsetNewData(data);\n\t}, [data]);\n\n\tconst handleValueChange = (updatedData: TData[]) => {\n\t\tsetNewData(updatedData);\n\t\tonDataChange?.(updatedData);\n\t};\n\n\tconst currentPage = Number(table.getState().pagination.pageIndex).toString();\n\tconst pageSize = Number(table.getState().pagination.pageSize).toString();\n\tconst sorting = table.getState().sorting;\n\tReact.useEffect(() => {\n\t\tif (!setQueryParams) return;\n\t\tconst sortingParams = { sortingBy: \"\", order: \"\" };\n\t\tif (sorting.length > 0) {\n\t\t\tsortingParams.sortingBy = sorting[0].id;\n\t\t\tsortingParams.order = sorting[0].desc ? \"DESC\" : \"ASC\";\n\t\t}\n\t\tsetQueryParams((prev) => ({\n\t\t\t...prev,\n\t\t\tpageSize,\n\t\t\tpage: currentPage,\n\t\t\t...sortingParams,\n\t\t}));\n\t}, [currentPage, pageSize, setQueryParams, sorting]);\n\n\treturn (\n\t\t<>\n\t\t\t<ScrollArea className=\"bg-background w-full rounded-md border whitespace-nowrap\">\n\t\t\t\t<Table>\n\t\t\t\t\t<TableHeader className=\"group rounded-md\">\n\t\t\t\t\t\t{table.getHeaderGroups().map((headerGroup) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<TableRow key={headerGroup.id}>\n\t\t\t\t\t\t\t\t\t{headerGroup.headers.map((header) => {\n\t\t\t\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\t\t\t\tcolumn: { id },\n\t\t\t\t\t\t\t\t\t\t} = header;\n\n\t\t\t\t\t\t\t\t\t\tconst isActionsColumn = [\"actions\", ...actionColumns].includes(id);\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<TableHead\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={dividingColumnKey?.includes(id) ? \"border-r\" : \"\"}\n\t\t\t\t\t\t\t\t\t\t\t\tkey={header.id}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{header.isPlaceholder ? null : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{...{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!isActionsColumn && header.column.getCanSort()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? \"flex w-full items-center justify-start cursor-pointer gap-1 font-medium\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick: !isActionsColumn\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? header.column.getToggleSortingHandler()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{flexRender(header.column.columnDef.header, header.getContext())}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{(!isActionsColumn &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.getCanSort() &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tasc: <ArrowDownIcon className=\"h-3.5 w-3.5\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdesc: <ArrowUpIcon className=\"h-3.5 w-3.5\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfalse: <CaretSortIcon className=\"h-4 w-4\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}[header.column.getIsSorted() as string]) ?? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ArrowDownIcon className=\"h-3.5 w-3.5\" />\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</TableHeader>\n\n\t\t\t\t\t<TableBody>\n\t\t\t\t\t\t<Sortable\n\t\t\t\t\t\t\tvalue={newData.map((item) => ({\n\t\t\t\t\t\t\t\t...item,\n\t\t\t\t\t\t\t\tid: getRowKey(item, rowKey),\n\t\t\t\t\t\t\t}))}\n\t\t\t\t\t\t\tonValueChange={handleValueChange}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{!isLoadingTable && table.getRowModel().rows?.length ? (\n\t\t\t\t\t\t\t\ttable.getRowModel().rows.map((row) => {\n\t\t\t\t\t\t\t\t\tconst data = row.original;\n\t\t\t\t\t\t\t\t\tconst key = getRowKey(data, rowKey);\n\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<SortableItem key={row.id} value={key} asChild>\n\t\t\t\t\t\t\t\t\t\t\t<TableRow\n\t\t\t\t\t\t\t\t\t\t\t\tkey={row.id}\n\t\t\t\t\t\t\t\t\t\t\t\tdata-state={row.getIsSelected() && \"selected\"}\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"even:bg-body/50\"\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{row.getVisibleCells().map((cell) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<TableCell\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tkey={cell.id}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p-2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdividingColumnKey?.includes(cell.column.id) && \"border-r\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<TextWrap>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{flexRender(cell.column.columnDef.cell, cell.getContext())}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t</TextWrap>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t\t\t\t</SortableItem>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t) : isLoadingTable ? (\n\t\t\t\t\t\t\t\t<DataTableRowSkeleton columnCount={table.getAllColumns().length} />\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<TableRow>\n\t\t\t\t\t\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t\t\t\t\t\t{messageEmpty}\n\t\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</Sortable>\n\t\t\t\t\t</TableBody>\n\t\t\t\t</Table>\n\t\t\t\t<ScrollBar orientation=\"horizontal\" />\n\t\t\t</ScrollArea>\n\n\t\t\t{isLoadingTable ? (\n\t\t\t\t<DataTablePaginationSkeleton />\n\t\t\t) : (\n\t\t\t\t<DataTablePagination table={table} dataLabel={dataLabel} />\n\t\t\t)}\n\t\t</>\n\t);\n};\n"],"names":["ArrowDown","createLucideIcon","d","key","ArrowUp","DataTableViewOptions","table","transformColumnName","triggerRef","React","useRef","Popover","modal","PopoverTrigger","asChild","Button","ref","aria-label","variant","className","ChevronDownIcon","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","DataTablePagination","pageSizeOptions","dataLabel","pageSize","currentPage","getState","pagination","pageIndex","rowCount","getRowCount","totalPageCount","Math","ceil","p","getRowModel","rows","length","toLocaleString","Select","String","onValueChange","setPageSize","Number","SelectTrigger","SelectValue","SelectContent","SelectItem","onClick","previousPage","disabled","getCanPreviousPage","ChevronLeftIcon","items","i","push","setPageIndex","start","max","min","end","PaginationItem","PaginationEllipsis","renderPageNumbers","nextPage","getCanNextPage","ChevronRightIcon","DataTablePaginationSkeleton","Skeleton","DataTableRowSkeleton","columnCount","cellWidths","shrinkZero","Fragment","Array","from","_","TableRow","j","TableCell","style","width","minWidth","DataTableMainFrame","columns","isLoadingTable","setQueryParams","actionColumns","messageEmpty","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","getRowKey","rowKey","DataTableMainFrameSortable","data","onDataChange","dividingColumnKey","newData","setNewData","useState","Sortable","updatedData","original","SortableItem"],"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-BDBNWwYT.mjs";import"../chunks/utils-C6LYO_CH.mjs";import"../chunks/bundle-mjs-E0baekTQ.mjs";import"../chunks/index-DU2SqYv7.mjs";import"react";import"../chunks/index-BzUzK8k1.mjs";import"../chunks/index-CBuWa3V_.mjs";import"../chunks/index-BkrjWCcN.mjs";import"react/jsx-runtime";import"../chunks/index-DagWVwpf.mjs";import"../chunks/index-VNeBf_qQ.mjs";import"../chunks/index-DFm8Tejm.mjs";import"../chunks/index-5xCD9zck.mjs";import"react-dom";import"@radix-ui/react-slot";import"../chunks/Combination-CaCdPc0V.mjs";import"../chunks/tslib.es6-DnJNy3VA.mjs";import"../chunks/x-DjF9gicP.mjs";import"../chunks/createLucideIcon-NXzoJfn7.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-Bs3UmyLz.mjs";import"../chunks/utils-B9uwc_lt.mjs";import"../chunks/bundle-mjs-BYGwPY3j.mjs";import"../chunks/index-Dix9fE1x.mjs";import"react";import"../chunks/index-IXx8l3RV.mjs";import"../chunks/index-DuMyb05s.mjs";import"../chunks/index-BX6nSpY1.mjs";import"react/jsx-runtime";import"../chunks/index-DdNjMgpV.mjs";import"../chunks/index-DyUn0c26.mjs";import"../chunks/index-DZldl4eo.mjs";import"../chunks/index-BSf-atXx.mjs";import"react-dom";import"@radix-ui/react-slot";import"../chunks/index-qP_a6BiF.mjs";import"../chunks/tslib.es6-CC_zzJ2l.mjs";import"../chunks/x-Bdqqbrz4.mjs";import"../chunks/createLucideIcon-CkKdyF_L.mjs";
2
2
  //# sourceMappingURL=index.mjs.map
@@ -1,2 +1,2 @@
1
- import{c as e}from"../chunks/utils-C6LYO_CH.mjs";import*as n from"react";import t from"react";import{P as r,u as o,c as a,a as s}from"../chunks/index-BzUzK8k1.mjs";import{c}from"../chunks/index-BkrjWCcN.mjs";import{u as d}from"../chunks/index-VNeBf_qQ.mjs";import{P as i,d as u}from"../chunks/index-5xCD9zck.mjs";import{createCollection as l}from"@radix-ui/react-collection";import{u as p}from"../chunks/index-DXDEMoyA.mjs";import{P as f,D as m}from"../chunks/index-DFm8Tejm.mjs";import{h,u as g,R as v,F as w}from"../chunks/Combination-CaCdPc0V.mjs";import{u as _}from"../chunks/index-DagWVwpf.mjs";import{c as y,R as b,A as M,C as x,a as C}from"../chunks/index-B_Oam-QU.mjs";import{c as D,I as k,R}from"../chunks/index-BXYIPnYd.mjs";import{Slot as E}from"@radix-ui/react-slot";import{u as N}from"../chunks/index-CBuWa3V_.mjs";import{jsx as O}from"react/jsx-runtime";import{C as P}from"../chunks/check-1SKm0QUI.mjs";import{c as I}from"../chunks/createLucideIcon-NXzoJfn7.mjs";import{C as T}from"../chunks/chevron-right-BCy8nVMg.mjs";import"../chunks/bundle-mjs-E0baekTQ.mjs";import"react-dom";import"../chunks/tslib.es6-DnJNy3VA.mjs";import"../chunks/index-Cj8SbPde.mjs";const S=I("Circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);var F=["Enter"," "],L=["ArrowUp","PageDown","End"],j=["ArrowDown","PageUp","Home",...L],K={ltr:[...F,"ArrowRight"],rtl:[...F,"ArrowLeft"]},A={ltr:["ArrowLeft"],rtl:["ArrowRight"]},z="Menu",[G,V,U]=l(z),[B,X]=c(z,[U,y,D]),Y=y(),H=D(),[W,Z]=B(z),[q,J]=B(z),Q=e=>{const{__scopeMenu:t,open:r=!1,children:o,dir:a,onOpenChange:s,modal:c=!0}=e,d=Y(t),[i,u]=n.useState(null),l=n.useRef(!1),f=N(s),m=p(a);return n.useEffect((()=>{const e=()=>{l.current=!0,document.addEventListener("pointerdown",n,{capture:!0,once:!0}),document.addEventListener("pointermove",n,{capture:!0,once:!0})},n=()=>l.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})}}),[]),O(b,{...d,children:O(W,{scope:t,open:r,onOpenChange:f,content:i,onContentChange:u,children:O(q,{scope:t,onClose:n.useCallback((()=>f(!1)),[f]),isUsingKeyboardRef:l,dir:m,modal:c,children:o})})})};Q.displayName=z;var $=n.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e,o=Y(t);return O(M,{...o,...r,ref:n})}));$.displayName="MenuAnchor";var ee="MenuPortal",[ne,te]=B(ee,{forceMount:void 0}),re=e=>{const{__scopeMenu:n,forceMount:t,children:o,container:a}=e,s=Z(ee,n);return O(ne,{scope:n,forceMount:t,children:O(r,{present:t||s.open,children:O(f,{asChild:!0,container:a,children:o})})})};re.displayName=ee;var oe="MenuContent",[ae,se]=B(oe),ce=n.forwardRef(((e,n)=>{const t=te(oe,e.__scopeMenu),{forceMount:o=t.forceMount,...a}=e,s=Z(oe,e.__scopeMenu),c=J(oe,e.__scopeMenu);return O(G.Provider,{scope:e.__scopeMenu,children:O(r,{present:o||s.open,children:O(G.Slot,{scope:e.__scopeMenu,children:c.modal?O(de,{...a,ref:n}):O(ie,{...a,ref:n})})})})})),de=n.forwardRef(((e,t)=>{const r=Z(oe,e.__scopeMenu),s=n.useRef(null),c=o(t,s);return n.useEffect((()=>{const e=s.current;if(e)return h(e)}),[]),O(ue,{...e,ref:c,trapFocus:r.open,disableOutsidePointerEvents:r.open,disableOutsideScroll:!0,onFocusOutside:a(e.onFocusOutside,(e=>e.preventDefault()),{checkForDefaultPrevented:!1}),onDismiss:()=>r.onOpenChange(!1)})})),ie=n.forwardRef(((e,n)=>{const t=Z(oe,e.__scopeMenu);return O(ue,{...e,ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>t.onOpenChange(!1)})})),ue=n.forwardRef(((e,t)=>{const{__scopeMenu:r,loop:s=!1,trapFocus:c,onOpenAutoFocus:d,onCloseAutoFocus:i,disableOutsidePointerEvents:u,onEntryFocus:l,onEscapeKeyDown:p,onPointerDownOutside:f,onFocusOutside:h,onInteractOutside:_,onDismiss:y,disableOutsideScroll:b,...M}=e,C=Z(oe,r),D=J(oe,r),k=Y(r),N=H(r),P=V(r),[I,T]=n.useState(null),S=n.useRef(null),F=o(t,S,C.onContentChange),K=n.useRef(0),A=n.useRef(""),z=n.useRef(0),G=n.useRef(null),U=n.useRef("right"),B=n.useRef(0),X=b?v:n.Fragment,W=b?{as:E,allowPinchZoom:!0}:void 0,q=e=>{const n=A.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){A.current=n,window.clearTimeout(K.current),""!==n&&(K.current=window.setTimeout((()=>e("")),1e3))}(n),s&&setTimeout((()=>s.focus()))};n.useEffect((()=>()=>window.clearTimeout(K.current)),[]),g();const Q=n.useCallback((e=>U.current===G.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,G.current?.area)),[]);return O(ae,{scope:r,searchRef:A,onItemEnter:n.useCallback((e=>{Q(e)&&e.preventDefault()}),[Q]),onItemLeave:n.useCallback((e=>{Q(e)||(S.current?.focus(),T(null))}),[Q]),onTriggerLeave:n.useCallback((e=>{Q(e)&&e.preventDefault()}),[Q]),pointerGraceTimerRef:z,onPointerGraceIntentChange:n.useCallback((e=>{G.current=e}),[]),children:O(X,{...W,children:O(w,{asChild:!0,trapped:c,onMountAutoFocus:a(d,(e=>{e.preventDefault(),S.current?.focus({preventScroll:!0})})),onUnmountAutoFocus:i,children:O(m,{asChild:!0,disableOutsidePointerEvents:u,onEscapeKeyDown:p,onPointerDownOutside:f,onFocusOutside:h,onInteractOutside:_,onDismiss:y,children:O(R,{asChild:!0,...N,dir:D.dir,orientation:"vertical",loop:s,currentTabStopId:I,onCurrentTabStopIdChange:T,onEntryFocus:a(l,(e=>{D.isUsingKeyboardRef.current||e.preventDefault()})),preventScrollOnEntryFocus:!0,children:O(x,{role:"menu","aria-orientation":"vertical","data-state":Ke(C.open),"data-radix-menu-content":"",dir:D.dir,...k,...M,ref:F,style:{outline:"none",...M.style},onKeyDown:a(M.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&&q(e.key));const o=S.current;if(e.target!==o)return;if(!j.includes(e.key))return;e.preventDefault();const a=P().filter((e=>!e.disabled)).map((e=>e.ref.current));L.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:a(e.onBlur,(e=>{e.currentTarget.contains(e.target)||(window.clearTimeout(K.current),A.current="")})),onPointerMove:a(e.onPointerMove,Ge((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}})))})})})})})})}));ce.displayName=oe;var le=n.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e;return O(i.div,{role:"group",...r,ref:n})}));le.displayName="MenuGroup";var pe=n.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e;return O(i.div,{...r,ref:n})}));pe.displayName="MenuLabel";var fe="MenuItem",me="menu.itemSelect",he=n.forwardRef(((e,t)=>{const{disabled:r=!1,onSelect:s,...c}=e,d=n.useRef(null),i=J(fe,e.__scopeMenu),l=se(fe,e.__scopeMenu),p=o(t,d),f=n.useRef(!1);return O(ge,{...c,ref:p,disabled:r,onClick:a(e.onClick,(()=>{const e=d.current;if(!r&&e){const n=new CustomEvent(me,{bubbles:!0,cancelable:!0});e.addEventListener(me,(e=>s?.(e)),{once:!0}),u(e,n),n.defaultPrevented?f.current=!1:i.onClose()}})),onPointerDown:n=>{e.onPointerDown?.(n),f.current=!0},onPointerUp:a(e.onPointerUp,(e=>{f.current||e.currentTarget?.click()})),onKeyDown:a(e.onKeyDown,(e=>{const n=""!==l.searchRef.current;r||n&&" "===e.key||F.includes(e.key)&&(e.currentTarget.click(),e.preventDefault())}))})}));he.displayName=fe;var ge=n.forwardRef(((e,t)=>{const{__scopeMenu:r,disabled:s=!1,textValue:c,...d}=e,u=se(fe,r),l=H(r),p=n.useRef(null),f=o(t,p),[m,h]=n.useState(!1),[g,v]=n.useState("");return n.useEffect((()=>{const e=p.current;e&&v((e.textContent??"").trim())}),[d.children]),O(G.ItemSlot,{scope:r,disabled:s,textValue:c??g,children:O(k,{asChild:!0,...l,focusable:!s,children:O(i.div,{role:"menuitem","data-highlighted":m?"":void 0,"aria-disabled":s||void 0,"data-disabled":s?"":void 0,...d,ref:f,onPointerMove:a(e.onPointerMove,Ge((e=>{if(s)u.onItemLeave(e);else if(u.onItemEnter(e),!e.defaultPrevented){e.currentTarget.focus({preventScroll:!0})}}))),onPointerLeave:a(e.onPointerLeave,Ge((e=>u.onItemLeave(e)))),onFocus:a(e.onFocus,(()=>h(!0))),onBlur:a(e.onBlur,(()=>h(!1)))})})})})),ve=n.forwardRef(((e,n)=>{const{checked:t=!1,onCheckedChange:r,...o}=e;return O(De,{scope:e.__scopeMenu,checked:t,children:O(he,{role:"menuitemcheckbox","aria-checked":Ae(t)?"mixed":t,...o,ref:n,"data-state":ze(t),onSelect:a(o.onSelect,(()=>r?.(!!Ae(t)||!t)),{checkForDefaultPrevented:!1})})})}));ve.displayName="MenuCheckboxItem";var we="MenuRadioGroup",[_e,ye]=B(we,{value:void 0,onValueChange:()=>{}}),be=n.forwardRef(((e,n)=>{const{value:t,onValueChange:r,...o}=e,a=N(r);return O(_e,{scope:e.__scopeMenu,value:t,onValueChange:a,children:O(le,{...o,ref:n})})}));be.displayName=we;var Me="MenuRadioItem",xe=n.forwardRef(((e,n)=>{const{value:t,...r}=e,o=ye(Me,e.__scopeMenu),s=t===o.value;return O(De,{scope:e.__scopeMenu,checked:s,children:O(he,{role:"menuitemradio","aria-checked":s,...r,ref:n,"data-state":ze(s),onSelect:a(r.onSelect,(()=>o.onValueChange?.(t)),{checkForDefaultPrevented:!1})})})}));xe.displayName=Me;var Ce="MenuItemIndicator",[De,ke]=B(Ce,{checked:!1}),Re=n.forwardRef(((e,n)=>{const{__scopeMenu:t,forceMount:o,...a}=e,s=ke(Ce,t);return O(r,{present:o||Ae(s.checked)||!0===s.checked,children:O(i.span,{...a,ref:n,"data-state":ze(s.checked)})})}));Re.displayName=Ce;var Ee=n.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e;return O(i.div,{role:"separator","aria-orientation":"horizontal",...r,ref:n})}));Ee.displayName="MenuSeparator";var Ne=n.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e,o=Y(t);return O(C,{...o,...r,ref:n})}));Ne.displayName="MenuArrow";var Oe="MenuSub",[Pe,Ie]=B(Oe),Te=e=>{const{__scopeMenu:t,children:r,open:o=!1,onOpenChange:a}=e,s=Z(Oe,t),c=Y(t),[d,i]=n.useState(null),[u,l]=n.useState(null),p=N(a);return n.useEffect((()=>(!1===s.open&&p(!1),()=>p(!1))),[s.open,p]),O(b,{...c,children:O(W,{scope:t,open:o,onOpenChange:p,content:u,onContentChange:l,children:O(Pe,{scope:t,contentId:_(),triggerId:_(),trigger:d,onTriggerChange:i,children:r})})})};Te.displayName=Oe;var Se="MenuSubTrigger",Fe=n.forwardRef(((e,t)=>{const r=Z(Se,e.__scopeMenu),o=J(Se,e.__scopeMenu),c=Ie(Se,e.__scopeMenu),d=se(Se,e.__scopeMenu),i=n.useRef(null),{pointerGraceTimerRef:u,onPointerGraceIntentChange:l}=d,p={__scopeMenu:e.__scopeMenu},f=n.useCallback((()=>{i.current&&window.clearTimeout(i.current),i.current=null}),[]);return n.useEffect((()=>f),[f]),n.useEffect((()=>{const e=u.current;return()=>{window.clearTimeout(e),l(null)}}),[u,l]),O($,{asChild:!0,...p,children:O(ge,{id:c.triggerId,"aria-haspopup":"menu","aria-expanded":r.open,"aria-controls":c.contentId,"data-state":Ke(r.open),...e,ref:s(t,c.onTriggerChange),onClick:n=>{e.onClick?.(n),e.disabled||n.defaultPrevented||(n.currentTarget.focus(),r.open||r.onOpenChange(!0))},onPointerMove:a(e.onPointerMove,Ge((n=>{d.onItemEnter(n),n.defaultPrevented||e.disabled||r.open||i.current||(d.onPointerGraceIntentChange(null),i.current=window.setTimeout((()=>{r.onOpenChange(!0),f()}),100))}))),onPointerLeave:a(e.onPointerLeave,Ge((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:a(e.onKeyDown,(n=>{const t=""!==d.searchRef.current;e.disabled||t&&" "===n.key||K[o.dir].includes(n.key)&&(r.onOpenChange(!0),r.content?.focus(),n.preventDefault())}))})})}));Fe.displayName=Se;var Le="MenuSubContent",je=n.forwardRef(((e,t)=>{const s=te(oe,e.__scopeMenu),{forceMount:c=s.forceMount,...d}=e,i=Z(oe,e.__scopeMenu),u=J(oe,e.__scopeMenu),l=Ie(Le,e.__scopeMenu),p=n.useRef(null),f=o(t,p);return O(G.Provider,{scope:e.__scopeMenu,children:O(r,{present:c||i.open,children:O(G.Slot,{scope:e.__scopeMenu,children:O(ue,{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:a(e.onFocusOutside,(e=>{e.target!==l.trigger&&i.onOpenChange(!1)})),onEscapeKeyDown:a(e.onEscapeKeyDown,(e=>{u.onClose(),e.preventDefault()})),onKeyDown:a(e.onKeyDown,(e=>{const n=e.currentTarget.contains(e.target),t=A[u.dir].includes(e.key);n&&t&&(i.onOpenChange(!1),l.trigger?.focus(),e.preventDefault())}))})})})})}));function Ke(e){return e?"open":"closed"}function Ae(e){return"indeterminate"===e}function ze(e){return Ae(e)?"indeterminate":e?"checked":"unchecked"}function Ge(e){return n=>"mouse"===n.pointerType?e(n):void 0}je.displayName=Le;var Ve=Q,Ue=$,Be=re,Xe=ce,Ye=le,He=pe,We=he,Ze=ve,qe=be,Je=xe,Qe=Re,$e=Ee,en=Ne,nn=Te,tn=Fe,rn=je,on="DropdownMenu",[an,sn]=c(on,[X]),cn=X(),[dn,un]=an(on),ln=e=>{const{__scopeDropdownMenu:t,children:r,dir:o,open:a,defaultOpen:s,onOpenChange:c,modal:i=!0}=e,u=cn(t),l=n.useRef(null),[p=!1,f]=d({prop:a,defaultProp:s,onChange:c});return O(dn,{scope:t,triggerId:_(),triggerRef:l,contentId:_(),open:p,onOpenChange:f,onOpenToggle:n.useCallback((()=>f((e=>!e))),[f]),modal:i,children:O(Ve,{...u,open:p,onOpenChange:f,dir:o,modal:i,children:r})})};ln.displayName=on;var pn="DropdownMenuTrigger",fn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,disabled:r=!1,...o}=e,c=un(pn,t),d=cn(t);return O(Ue,{asChild:!0,...d,children:O(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":r?"":void 0,disabled:r,...o,ref:s(n,c.triggerRef),onPointerDown:a(e.onPointerDown,(e=>{r||0!==e.button||!1!==e.ctrlKey||(c.onOpenToggle(),c.open||e.preventDefault())})),onKeyDown:a(e.onKeyDown,(e=>{r||(["Enter"," "].includes(e.key)&&c.onOpenToggle(),"ArrowDown"===e.key&&c.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(e.key)&&e.preventDefault())}))})})}));fn.displayName=pn;var mn=e=>{const{__scopeDropdownMenu:n,...t}=e,r=cn(n);return O(Be,{...r,...t})};mn.displayName="DropdownMenuPortal";var hn="DropdownMenuContent",gn=n.forwardRef(((e,t)=>{const{__scopeDropdownMenu:r,...o}=e,s=un(hn,r),c=cn(r),d=n.useRef(!1);return O(Xe,{id:s.contentId,"aria-labelledby":s.triggerId,...c,...o,ref:t,onCloseAutoFocus:a(e.onCloseAutoFocus,(e=>{d.current||s.triggerRef.current?.focus(),d.current=!1,e.preventDefault()})),onInteractOutside:a(e.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:{...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=hn;var vn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=cn(t);return O(Ye,{...o,...r,ref:n})}));vn.displayName="DropdownMenuGroup";var wn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=cn(t);return O(He,{...o,...r,ref:n})}));wn.displayName="DropdownMenuLabel";var _n=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=cn(t);return O(We,{...o,...r,ref:n})}));_n.displayName="DropdownMenuItem";var yn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=cn(t);return O(Ze,{...o,...r,ref:n})}));yn.displayName="DropdownMenuCheckboxItem";var bn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=cn(t);return O(qe,{...o,...r,ref:n})}));bn.displayName="DropdownMenuRadioGroup";var Mn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=cn(t);return O(Je,{...o,...r,ref:n})}));Mn.displayName="DropdownMenuRadioItem";var xn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=cn(t);return O(Qe,{...o,...r,ref:n})}));xn.displayName="DropdownMenuItemIndicator";var Cn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=cn(t);return O($e,{...o,...r,ref:n})}));Cn.displayName="DropdownMenuSeparator";n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=cn(t);return O(en,{...o,...r,ref:n})})).displayName="DropdownMenuArrow";var Dn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=cn(t);return O(tn,{...o,...r,ref:n})}));Dn.displayName="DropdownMenuSubTrigger";var kn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=cn(t);return O(rn,{...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)"}})}));kn.displayName="DropdownMenuSubContent";var Rn=ln,En=fn,Nn=mn,On=gn,Pn=vn,In=wn,Tn=_n,Sn=yn,Fn=bn,Ln=Mn,jn=xn,Kn=Cn,An=e=>{const{__scopeDropdownMenu:n,children:t,open:r,onOpenChange:o,defaultOpen:a}=e,s=cn(n),[c=!1,i]=d({prop:r,defaultProp:a,onChange:o});return O(nn,{...s,open:c,onOpenChange:i,children:t})},zn=Dn,Gn=kn;function Vn({...e}){return t.createElement(Rn,{"data-slot":"dropdown-menu",...e})}function Un({...e}){return t.createElement(Nn,{"data-slot":"dropdown-menu-portal",...e})}function Bn({...e}){return t.createElement(En,{"data-slot":"dropdown-menu-trigger",...e})}function Xn({className:n,sideOffset:r=4,...o}){return t.createElement(Nn,null,t.createElement(On,{"data-slot":"dropdown-menu-content",sideOffset:r,className:e("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),...o}))}function Yn({...e}){return t.createElement(Pn,{"data-slot":"dropdown-menu-group",...e})}function Hn({className:n,inset:r,variant:o="default",...a}){return t.createElement(Tn,{"data-slot":"dropdown-menu-item","data-inset":r,"data-variant":o,className:e("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),...a})}function Wn({className:n,children:r,checked:o,...a}){return t.createElement(Sn,{"data-slot":"dropdown-menu-checkbox-item",className:e("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:o,...a},t.createElement("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center"},t.createElement(jn,null,t.createElement(P,{className:"size-4"}))),r)}function Zn({...e}){return t.createElement(Fn,{"data-slot":"dropdown-menu-radio-group",...e})}function qn({className:n,children:r,...o}){return t.createElement(Ln,{"data-slot":"dropdown-menu-radio-item",className:e("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),...o},t.createElement("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center"},t.createElement(jn,null,t.createElement(S,{className:"size-2 fill-current"}))),r)}function Jn({className:n,inset:r,...o}){return t.createElement(In,{"data-slot":"dropdown-menu-label","data-inset":r,className:e("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",n),...o})}function Qn({className:n,...r}){return t.createElement(Kn,{"data-slot":"dropdown-menu-separator",className:e("bg-border -mx-1 my-1 h-px",n),...r})}function $n({className:n,...r}){return t.createElement("span",{"data-slot":"dropdown-menu-shortcut",className:e("text-muted-foreground ml-auto text-xs tracking-widest",n),...r})}function et({...e}){return t.createElement(An,{"data-slot":"dropdown-menu-sub",...e})}function nt({className:n,inset:r,children:o,...a}){return t.createElement(zn,{"data-slot":"dropdown-menu-sub-trigger","data-inset":r,className:e("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),...a},o,t.createElement(T,{className:"ml-auto size-4"}))}function tt({className:n,...r}){return t.createElement(Gn,{"data-slot":"dropdown-menu-sub-content",className:e("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),...r})}export{Vn as DropdownMenu,Wn as DropdownMenuCheckboxItem,Xn as DropdownMenuContent,Yn as DropdownMenuGroup,Hn as DropdownMenuItem,Jn as DropdownMenuLabel,Un as DropdownMenuPortal,Zn as DropdownMenuRadioGroup,qn as DropdownMenuRadioItem,Qn as DropdownMenuSeparator,$n as DropdownMenuShortcut,et as DropdownMenuSub,tt as DropdownMenuSubContent,nt as DropdownMenuSubTrigger,Bn as DropdownMenuTrigger};
1
+ import{c as e}from"../chunks/utils-B9uwc_lt.mjs";import*as n from"react";import t from"react";import{P as r,u as o,c as a,a as s}from"../chunks/index-IXx8l3RV.mjs";import{c}from"../chunks/index-BX6nSpY1.mjs";import{u as d}from"../chunks/index-DyUn0c26.mjs";import{P as i,d as u}from"../chunks/index-BSf-atXx.mjs";import{createCollection as l}from"@radix-ui/react-collection";import{u as p}from"../chunks/index-DB6P4Tz1.mjs";import{P as f,D as m}from"../chunks/index-DZldl4eo.mjs";import{h,u as g,R as v,F as w}from"../chunks/index-qP_a6BiF.mjs";import{u as _}from"../chunks/index-DdNjMgpV.mjs";import{c as y,R as b,A as M,C as x,a as C}from"../chunks/index-Ck1fOwnt.mjs";import{c as D,I as k,R}from"../chunks/index-CAVVTG3h.mjs";import{createSlot as E}from"@radix-ui/react-slot";import{u as N}from"../chunks/index-DuMyb05s.mjs";import{jsx as O}from"react/jsx-runtime";import{C as P}from"../chunks/check-DoBi3iW5.mjs";import{c as I}from"../chunks/createLucideIcon-CkKdyF_L.mjs";import{C as T}from"../chunks/chevron-right-DAqTCOj7.mjs";import"../chunks/bundle-mjs-BYGwPY3j.mjs";import"react-dom";import"../chunks/tslib.es6-CC_zzJ2l.mjs";import"../chunks/index-XatPIL6c.mjs";const S=I("Circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);var F=["Enter"," "],L=["ArrowUp","PageDown","End"],j=["ArrowDown","PageUp","Home",...L],K={ltr:[...F,"ArrowRight"],rtl:[...F,"ArrowLeft"]},A={ltr:["ArrowLeft"],rtl:["ArrowRight"]},z="Menu",[G,V,U]=l(z),[B,X]=c(z,[U,y,D]),Y=y(),H=D(),[W,Z]=B(z),[q,J]=B(z),Q=e=>{const{__scopeMenu:t,open:r=!1,children:o,dir:a,onOpenChange:s,modal:c=!0}=e,d=Y(t),[i,u]=n.useState(null),l=n.useRef(!1),f=N(s),m=p(a);return n.useEffect((()=>{const e=()=>{l.current=!0,document.addEventListener("pointerdown",n,{capture:!0,once:!0}),document.addEventListener("pointermove",n,{capture:!0,once:!0})},n=()=>l.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})}}),[]),O(b,{...d,children:O(W,{scope:t,open:r,onOpenChange:f,content:i,onContentChange:u,children:O(q,{scope:t,onClose:n.useCallback((()=>f(!1)),[f]),isUsingKeyboardRef:l,dir:m,modal:c,children:o})})})};Q.displayName=z;var $=n.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e,o=Y(t);return O(M,{...o,...r,ref:n})}));$.displayName="MenuAnchor";var ee="MenuPortal",[ne,te]=B(ee,{forceMount:void 0}),re=e=>{const{__scopeMenu:n,forceMount:t,children:o,container:a}=e,s=Z(ee,n);return O(ne,{scope:n,forceMount:t,children:O(r,{present:t||s.open,children:O(f,{asChild:!0,container:a,children:o})})})};re.displayName=ee;var oe="MenuContent",[ae,se]=B(oe),ce=n.forwardRef(((e,n)=>{const t=te(oe,e.__scopeMenu),{forceMount:o=t.forceMount,...a}=e,s=Z(oe,e.__scopeMenu),c=J(oe,e.__scopeMenu);return O(G.Provider,{scope:e.__scopeMenu,children:O(r,{present:o||s.open,children:O(G.Slot,{scope:e.__scopeMenu,children:c.modal?O(de,{...a,ref:n}):O(ie,{...a,ref:n})})})})})),de=n.forwardRef(((e,t)=>{const r=Z(oe,e.__scopeMenu),s=n.useRef(null),c=o(t,s);return n.useEffect((()=>{const e=s.current;if(e)return h(e)}),[]),O(le,{...e,ref:c,trapFocus:r.open,disableOutsidePointerEvents:r.open,disableOutsideScroll:!0,onFocusOutside:a(e.onFocusOutside,(e=>e.preventDefault()),{checkForDefaultPrevented:!1}),onDismiss:()=>r.onOpenChange(!1)})})),ie=n.forwardRef(((e,n)=>{const t=Z(oe,e.__scopeMenu);return O(le,{...e,ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>t.onOpenChange(!1)})})),ue=E("MenuContent.ScrollLock"),le=n.forwardRef(((e,t)=>{const{__scopeMenu:r,loop:s=!1,trapFocus:c,onOpenAutoFocus:d,onCloseAutoFocus:i,disableOutsidePointerEvents:u,onEntryFocus:l,onEscapeKeyDown:p,onPointerDownOutside:f,onFocusOutside:h,onInteractOutside:_,onDismiss:y,disableOutsideScroll:b,...M}=e,C=Z(oe,r),D=J(oe,r),k=Y(r),E=H(r),N=V(r),[P,I]=n.useState(null),T=n.useRef(null),S=o(t,T,C.onContentChange),F=n.useRef(0),K=n.useRef(""),A=n.useRef(0),z=n.useRef(null),G=n.useRef("right"),U=n.useRef(0),B=b?v:n.Fragment,X=b?{as:ue,allowPinchZoom:!0}:void 0,W=e=>{const n=K.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,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){K.current=n,window.clearTimeout(F.current),""!==n&&(F.current=window.setTimeout((()=>e("")),1e3))}(n),s&&setTimeout((()=>s.focus()))};n.useEffect((()=>()=>window.clearTimeout(F.current)),[]),g();const q=n.useCallback((e=>G.current===z.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,z.current?.area)),[]);return O(ae,{scope:r,searchRef:K,onItemEnter:n.useCallback((e=>{q(e)&&e.preventDefault()}),[q]),onItemLeave:n.useCallback((e=>{q(e)||(T.current?.focus(),I(null))}),[q]),onTriggerLeave:n.useCallback((e=>{q(e)&&e.preventDefault()}),[q]),pointerGraceTimerRef:A,onPointerGraceIntentChange:n.useCallback((e=>{z.current=e}),[]),children:O(B,{...X,children:O(w,{asChild:!0,trapped:c,onMountAutoFocus:a(d,(e=>{e.preventDefault(),T.current?.focus({preventScroll:!0})})),onUnmountAutoFocus:i,children:O(m,{asChild:!0,disableOutsidePointerEvents:u,onEscapeKeyDown:p,onPointerDownOutside:f,onFocusOutside:h,onInteractOutside:_,onDismiss:y,children:O(R,{asChild:!0,...E,dir:D.dir,orientation:"vertical",loop:s,currentTabStopId:P,onCurrentTabStopIdChange:I,onEntryFocus:a(l,(e=>{D.isUsingKeyboardRef.current||e.preventDefault()})),preventScrollOnEntryFocus:!0,children:O(x,{role:"menu","aria-orientation":"vertical","data-state":Ae(C.open),"data-radix-menu-content":"",dir:D.dir,...k,...M,ref:S,style:{outline:"none",...M.style},onKeyDown:a(M.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&&W(e.key));const o=T.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));L.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:a(e.onBlur,(e=>{e.currentTarget.contains(e.target)||(window.clearTimeout(F.current),K.current="")})),onPointerMove:a(e.onPointerMove,Ve((e=>{const n=e.target,t=U.current!==e.clientX;if(e.currentTarget.contains(n)&&t){const n=e.clientX>U.current?"right":"left";G.current=n,U.current=e.clientX}})))})})})})})})}));ce.displayName=oe;var pe=n.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e;return O(i.div,{role:"group",...r,ref:n})}));pe.displayName="MenuGroup";var fe=n.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e;return O(i.div,{...r,ref:n})}));fe.displayName="MenuLabel";var me="MenuItem",he="menu.itemSelect",ge=n.forwardRef(((e,t)=>{const{disabled:r=!1,onSelect:s,...c}=e,d=n.useRef(null),i=J(me,e.__scopeMenu),l=se(me,e.__scopeMenu),p=o(t,d),f=n.useRef(!1);return O(ve,{...c,ref:p,disabled:r,onClick:a(e.onClick,(()=>{const e=d.current;if(!r&&e){const n=new CustomEvent(he,{bubbles:!0,cancelable:!0});e.addEventListener(he,(e=>s?.(e)),{once:!0}),u(e,n),n.defaultPrevented?f.current=!1:i.onClose()}})),onPointerDown:n=>{e.onPointerDown?.(n),f.current=!0},onPointerUp:a(e.onPointerUp,(e=>{f.current||e.currentTarget?.click()})),onKeyDown:a(e.onKeyDown,(e=>{const n=""!==l.searchRef.current;r||n&&" "===e.key||F.includes(e.key)&&(e.currentTarget.click(),e.preventDefault())}))})}));ge.displayName=me;var ve=n.forwardRef(((e,t)=>{const{__scopeMenu:r,disabled:s=!1,textValue:c,...d}=e,u=se(me,r),l=H(r),p=n.useRef(null),f=o(t,p),[m,h]=n.useState(!1),[g,v]=n.useState("");return n.useEffect((()=>{const e=p.current;e&&v((e.textContent??"").trim())}),[d.children]),O(G.ItemSlot,{scope:r,disabled:s,textValue:c??g,children:O(k,{asChild:!0,...l,focusable:!s,children:O(i.div,{role:"menuitem","data-highlighted":m?"":void 0,"aria-disabled":s||void 0,"data-disabled":s?"":void 0,...d,ref:f,onPointerMove:a(e.onPointerMove,Ve((e=>{if(s)u.onItemLeave(e);else if(u.onItemEnter(e),!e.defaultPrevented){e.currentTarget.focus({preventScroll:!0})}}))),onPointerLeave:a(e.onPointerLeave,Ve((e=>u.onItemLeave(e)))),onFocus:a(e.onFocus,(()=>h(!0))),onBlur:a(e.onBlur,(()=>h(!1)))})})})})),we=n.forwardRef(((e,n)=>{const{checked:t=!1,onCheckedChange:r,...o}=e;return O(ke,{scope:e.__scopeMenu,checked:t,children:O(ge,{role:"menuitemcheckbox","aria-checked":ze(t)?"mixed":t,...o,ref:n,"data-state":Ge(t),onSelect:a(o.onSelect,(()=>r?.(!!ze(t)||!t)),{checkForDefaultPrevented:!1})})})}));we.displayName="MenuCheckboxItem";var _e="MenuRadioGroup",[ye,be]=B(_e,{value:void 0,onValueChange:()=>{}}),Me=n.forwardRef(((e,n)=>{const{value:t,onValueChange:r,...o}=e,a=N(r);return O(ye,{scope:e.__scopeMenu,value:t,onValueChange:a,children:O(pe,{...o,ref:n})})}));Me.displayName=_e;var xe="MenuRadioItem",Ce=n.forwardRef(((e,n)=>{const{value:t,...r}=e,o=be(xe,e.__scopeMenu),s=t===o.value;return O(ke,{scope:e.__scopeMenu,checked:s,children:O(ge,{role:"menuitemradio","aria-checked":s,...r,ref:n,"data-state":Ge(s),onSelect:a(r.onSelect,(()=>o.onValueChange?.(t)),{checkForDefaultPrevented:!1})})})}));Ce.displayName=xe;var De="MenuItemIndicator",[ke,Re]=B(De,{checked:!1}),Ee=n.forwardRef(((e,n)=>{const{__scopeMenu:t,forceMount:o,...a}=e,s=Re(De,t);return O(r,{present:o||ze(s.checked)||!0===s.checked,children:O(i.span,{...a,ref:n,"data-state":Ge(s.checked)})})}));Ee.displayName=De;var Ne=n.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e;return O(i.div,{role:"separator","aria-orientation":"horizontal",...r,ref:n})}));Ne.displayName="MenuSeparator";var Oe=n.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e,o=Y(t);return O(C,{...o,...r,ref:n})}));Oe.displayName="MenuArrow";var Pe="MenuSub",[Ie,Te]=B(Pe),Se=e=>{const{__scopeMenu:t,children:r,open:o=!1,onOpenChange:a}=e,s=Z(Pe,t),c=Y(t),[d,i]=n.useState(null),[u,l]=n.useState(null),p=N(a);return n.useEffect((()=>(!1===s.open&&p(!1),()=>p(!1))),[s.open,p]),O(b,{...c,children:O(W,{scope:t,open:o,onOpenChange:p,content:u,onContentChange:l,children:O(Ie,{scope:t,contentId:_(),triggerId:_(),trigger:d,onTriggerChange:i,children:r})})})};Se.displayName=Pe;var Fe="MenuSubTrigger",Le=n.forwardRef(((e,t)=>{const r=Z(Fe,e.__scopeMenu),o=J(Fe,e.__scopeMenu),c=Te(Fe,e.__scopeMenu),d=se(Fe,e.__scopeMenu),i=n.useRef(null),{pointerGraceTimerRef:u,onPointerGraceIntentChange:l}=d,p={__scopeMenu:e.__scopeMenu},f=n.useCallback((()=>{i.current&&window.clearTimeout(i.current),i.current=null}),[]);return n.useEffect((()=>f),[f]),n.useEffect((()=>{const e=u.current;return()=>{window.clearTimeout(e),l(null)}}),[u,l]),O($,{asChild:!0,...p,children:O(ve,{id:c.triggerId,"aria-haspopup":"menu","aria-expanded":r.open,"aria-controls":c.contentId,"data-state":Ae(r.open),...e,ref:s(t,c.onTriggerChange),onClick:n=>{e.onClick?.(n),e.disabled||n.defaultPrevented||(n.currentTarget.focus(),r.open||r.onOpenChange(!0))},onPointerMove:a(e.onPointerMove,Ve((n=>{d.onItemEnter(n),n.defaultPrevented||e.disabled||r.open||i.current||(d.onPointerGraceIntentChange(null),i.current=window.setTimeout((()=>{r.onOpenChange(!0),f()}),100))}))),onPointerLeave:a(e.onPointerLeave,Ve((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:a(e.onKeyDown,(n=>{const t=""!==d.searchRef.current;e.disabled||t&&" "===n.key||K[o.dir].includes(n.key)&&(r.onOpenChange(!0),r.content?.focus(),n.preventDefault())}))})})}));Le.displayName=Fe;var je="MenuSubContent",Ke=n.forwardRef(((e,t)=>{const s=te(oe,e.__scopeMenu),{forceMount:c=s.forceMount,...d}=e,i=Z(oe,e.__scopeMenu),u=J(oe,e.__scopeMenu),l=Te(je,e.__scopeMenu),p=n.useRef(null),f=o(t,p);return O(G.Provider,{scope:e.__scopeMenu,children:O(r,{present:c||i.open,children:O(G.Slot,{scope:e.__scopeMenu,children:O(le,{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:a(e.onFocusOutside,(e=>{e.target!==l.trigger&&i.onOpenChange(!1)})),onEscapeKeyDown:a(e.onEscapeKeyDown,(e=>{u.onClose(),e.preventDefault()})),onKeyDown:a(e.onKeyDown,(e=>{const n=e.currentTarget.contains(e.target),t=A[u.dir].includes(e.key);n&&t&&(i.onOpenChange(!1),l.trigger?.focus(),e.preventDefault())}))})})})})}));function Ae(e){return e?"open":"closed"}function ze(e){return"indeterminate"===e}function Ge(e){return ze(e)?"indeterminate":e?"checked":"unchecked"}function Ve(e){return n=>"mouse"===n.pointerType?e(n):void 0}Ke.displayName=je;var Ue=Q,Be=$,Xe=re,Ye=ce,He=pe,We=fe,Ze=ge,qe=we,Je=Me,Qe=Ce,$e=Ee,en=Ne,nn=Oe,tn=Se,rn=Le,on=Ke,an="DropdownMenu",[sn,cn]=c(an,[X]),dn=X(),[un,ln]=sn(an),pn=e=>{const{__scopeDropdownMenu:t,children:r,dir:o,open:a,defaultOpen:s,onOpenChange:c,modal:i=!0}=e,u=dn(t),l=n.useRef(null),[p=!1,f]=d({prop:a,defaultProp:s,onChange:c});return O(un,{scope:t,triggerId:_(),triggerRef:l,contentId:_(),open:p,onOpenChange:f,onOpenToggle:n.useCallback((()=>f((e=>!e))),[f]),modal:i,children:O(Ue,{...u,open:p,onOpenChange:f,dir:o,modal:i,children:r})})};pn.displayName=an;var fn="DropdownMenuTrigger",mn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,disabled:r=!1,...o}=e,c=ln(fn,t),d=dn(t);return O(Be,{asChild:!0,...d,children:O(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":r?"":void 0,disabled:r,...o,ref:s(n,c.triggerRef),onPointerDown:a(e.onPointerDown,(e=>{r||0!==e.button||!1!==e.ctrlKey||(c.onOpenToggle(),c.open||e.preventDefault())})),onKeyDown:a(e.onKeyDown,(e=>{r||(["Enter"," "].includes(e.key)&&c.onOpenToggle(),"ArrowDown"===e.key&&c.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(e.key)&&e.preventDefault())}))})})}));mn.displayName=fn;var hn=e=>{const{__scopeDropdownMenu:n,...t}=e,r=dn(n);return O(Xe,{...r,...t})};hn.displayName="DropdownMenuPortal";var gn="DropdownMenuContent",vn=n.forwardRef(((e,t)=>{const{__scopeDropdownMenu:r,...o}=e,s=ln(gn,r),c=dn(r),d=n.useRef(!1);return O(Ye,{id:s.contentId,"aria-labelledby":s.triggerId,...c,...o,ref:t,onCloseAutoFocus:a(e.onCloseAutoFocus,(e=>{d.current||s.triggerRef.current?.focus(),d.current=!1,e.preventDefault()})),onInteractOutside:a(e.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:{...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)"}})}));vn.displayName=gn;var wn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=dn(t);return O(He,{...o,...r,ref:n})}));wn.displayName="DropdownMenuGroup";var _n=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=dn(t);return O(We,{...o,...r,ref:n})}));_n.displayName="DropdownMenuLabel";var yn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=dn(t);return O(Ze,{...o,...r,ref:n})}));yn.displayName="DropdownMenuItem";var bn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=dn(t);return O(qe,{...o,...r,ref:n})}));bn.displayName="DropdownMenuCheckboxItem";var Mn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=dn(t);return O(Je,{...o,...r,ref:n})}));Mn.displayName="DropdownMenuRadioGroup";var xn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=dn(t);return O(Qe,{...o,...r,ref:n})}));xn.displayName="DropdownMenuRadioItem";var Cn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=dn(t);return O($e,{...o,...r,ref:n})}));Cn.displayName="DropdownMenuItemIndicator";var Dn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=dn(t);return O(en,{...o,...r,ref:n})}));Dn.displayName="DropdownMenuSeparator";n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=dn(t);return O(nn,{...o,...r,ref:n})})).displayName="DropdownMenuArrow";var kn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=dn(t);return O(rn,{...o,...r,ref:n})}));kn.displayName="DropdownMenuSubTrigger";var Rn=n.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,...r}=e,o=dn(t);return O(on,{...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)"}})}));Rn.displayName="DropdownMenuSubContent";var En=pn,Nn=mn,On=hn,Pn=vn,In=wn,Tn=_n,Sn=yn,Fn=bn,Ln=Mn,jn=xn,Kn=Cn,An=Dn,zn=e=>{const{__scopeDropdownMenu:n,children:t,open:r,onOpenChange:o,defaultOpen:a}=e,s=dn(n),[c=!1,i]=d({prop:r,defaultProp:a,onChange:o});return O(tn,{...s,open:c,onOpenChange:i,children:t})},Gn=kn,Vn=Rn;function Un({...e}){return t.createElement(En,{"data-slot":"dropdown-menu",...e})}function Bn({...e}){return t.createElement(On,{"data-slot":"dropdown-menu-portal",...e})}function Xn({...e}){return t.createElement(Nn,{"data-slot":"dropdown-menu-trigger",...e})}function Yn({className:n,sideOffset:r=4,...o}){return t.createElement(On,null,t.createElement(Pn,{"data-slot":"dropdown-menu-content",sideOffset:r,className:e("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),...o}))}function Hn({...e}){return t.createElement(In,{"data-slot":"dropdown-menu-group",...e})}function Wn({className:n,inset:r,variant:o="default",...a}){return t.createElement(Sn,{"data-slot":"dropdown-menu-item","data-inset":r,"data-variant":o,className:e("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),...a})}function Zn({className:n,children:r,checked:o,...a}){return t.createElement(Fn,{"data-slot":"dropdown-menu-checkbox-item",className:e("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:o,...a},t.createElement("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center"},t.createElement(Kn,null,t.createElement(P,{className:"size-4"}))),r)}function qn({...e}){return t.createElement(Ln,{"data-slot":"dropdown-menu-radio-group",...e})}function Jn({className:n,children:r,...o}){return t.createElement(jn,{"data-slot":"dropdown-menu-radio-item",className:e("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),...o},t.createElement("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center"},t.createElement(Kn,null,t.createElement(S,{className:"size-2 fill-current"}))),r)}function Qn({className:n,inset:r,...o}){return t.createElement(Tn,{"data-slot":"dropdown-menu-label","data-inset":r,className:e("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",n),...o})}function $n({className:n,...r}){return t.createElement(An,{"data-slot":"dropdown-menu-separator",className:e("bg-border -mx-1 my-1 h-px",n),...r})}function et({className:n,...r}){return t.createElement("span",{"data-slot":"dropdown-menu-shortcut",className:e("text-muted-foreground ml-auto text-xs tracking-widest",n),...r})}function nt({...e}){return t.createElement(zn,{"data-slot":"dropdown-menu-sub",...e})}function tt({className:n,inset:r,children:o,...a}){return t.createElement(Gn,{"data-slot":"dropdown-menu-sub-trigger","data-inset":r,className:e("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),...a},o,t.createElement(T,{className:"ml-auto size-4"}))}function rt({className:n,...r}){return t.createElement(Vn,{"data-slot":"dropdown-menu-sub-content",className:e("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),...r})}export{Un as DropdownMenu,Zn as DropdownMenuCheckboxItem,Yn as DropdownMenuContent,Hn as DropdownMenuGroup,Wn as DropdownMenuItem,Qn as DropdownMenuLabel,Bn as DropdownMenuPortal,qn as DropdownMenuRadioGroup,Jn as DropdownMenuRadioItem,$n as DropdownMenuSeparator,et as DropdownMenuShortcut,nt as DropdownMenuSub,rt as DropdownMenuSubContent,tt as DropdownMenuSubTrigger,Xn as DropdownMenuTrigger};
2
2
  //# sourceMappingURL=index.mjs.map