ivt 0.1.7 → 0.1.8
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.
- package/dist/accordion/index.mjs +1 -1
- package/dist/alert/index.mjs +1 -1
- package/dist/alert-dialog/index.mjs +1 -1
- package/dist/avatar/index.mjs +1 -1
- package/dist/badge/index.mjs +1 -1
- package/dist/base/index.mjs +1 -1
- package/dist/base/index.mjs.map +1 -1
- package/dist/button/index.mjs +1 -1
- package/dist/calendar/index.mjs +1 -1
- package/dist/card/index.mjs +1 -1
- package/dist/checkbox/index.mjs +1 -1
- package/dist/chunks/{accordion-BIDBqkzp.mjs → accordion-LstSopx4.mjs} +2 -2
- package/dist/chunks/{accordion-BIDBqkzp.mjs.map → accordion-LstSopx4.mjs.map} +1 -1
- package/dist/chunks/{badge-Crkpk9z-.mjs → badge-BpvI4lxd.mjs} +2 -2
- package/dist/chunks/{badge-Crkpk9z-.mjs.map → badge-BpvI4lxd.mjs.map} +1 -1
- package/dist/chunks/bundle-mjs-BVqH9Xiz.mjs +2 -0
- package/dist/chunks/bundle-mjs-BVqH9Xiz.mjs.map +1 -0
- package/dist/chunks/{button-CzvqIZ8x.mjs → button-bpYD_OCh.mjs} +2 -2
- package/dist/chunks/{button-CzvqIZ8x.mjs.map → button-bpYD_OCh.mjs.map} +1 -1
- package/dist/chunks/calendar-B7NC5f3S.mjs +2 -0
- package/dist/chunks/calendar-B7NC5f3S.mjs.map +1 -0
- package/dist/chunks/check-C1S8oGnA.mjs +2 -0
- package/dist/chunks/{check-DwxiwVdL.mjs.map → check-C1S8oGnA.mjs.map} +1 -1
- package/dist/chunks/chevron-down-LNM8QSJt.mjs +2 -0
- package/dist/chunks/{chevron-down-DDbMNTUh.mjs.map → chevron-down-LNM8QSJt.mjs.map} +1 -1
- package/dist/chunks/chevron-left-DGTU0tN0.mjs +2 -0
- package/dist/chunks/{chevron-left-Nq3OZhzU.mjs.map → chevron-left-DGTU0tN0.mjs.map} +1 -1
- package/dist/chunks/chevron-right-BZ-GCzPm.mjs +2 -0
- package/dist/chunks/{chevron-right-JC2xkPwU.mjs.map → chevron-right-BZ-GCzPm.mjs.map} +1 -1
- package/dist/chunks/{command-BfhQKbG7.mjs → command-BrYRDhVo.mjs} +2 -2
- package/dist/chunks/{command-BfhQKbG7.mjs.map → command-BrYRDhVo.mjs.map} +1 -1
- package/dist/chunks/{createLucideIcon-DODpMbL1.mjs → createLucideIcon-JNrPx34C.mjs} +1 -1
- package/dist/chunks/{createLucideIcon-DODpMbL1.mjs.map → createLucideIcon-JNrPx34C.mjs.map} +1 -1
- package/dist/chunks/{dialog-hqBsyFIm.mjs → dialog-qeEDGLRF.mjs} +2 -2
- package/dist/chunks/{dialog-hqBsyFIm.mjs.map → dialog-qeEDGLRF.mjs.map} +1 -1
- package/dist/chunks/{hover-card-BqYHz0TY.mjs → hover-card-Ch_WNrXf.mjs} +2 -2
- package/dist/chunks/{hover-card-BqYHz0TY.mjs.map → hover-card-Ch_WNrXf.mjs.map} +1 -1
- package/dist/chunks/{index-Dq1ur1Tt.mjs → index-9Wr-AbGf.mjs} +2 -2
- package/dist/chunks/{index-Dq1ur1Tt.mjs.map → index-9Wr-AbGf.mjs.map} +1 -1
- package/dist/chunks/{index-BCS8JLlu.mjs → index-B7JXO_ZL.mjs} +2 -2
- package/dist/chunks/{index-BCS8JLlu.mjs.map → index-B7JXO_ZL.mjs.map} +1 -1
- package/dist/chunks/{index-By-2lawf.mjs → index-BF_rlJfV.mjs} +1 -1
- package/dist/chunks/{index-By-2lawf.mjs.map → index-BF_rlJfV.mjs.map} +1 -1
- package/dist/chunks/{index-B9IG-aGl.mjs → index-BSTiUDx6.mjs} +1 -1
- package/dist/chunks/{index-B9IG-aGl.mjs.map → index-BSTiUDx6.mjs.map} +1 -1
- package/dist/chunks/{index-C-wyvA9Y.mjs → index-BVxX50NR.mjs} +2 -2
- package/dist/chunks/{index-C-wyvA9Y.mjs.map → index-BVxX50NR.mjs.map} +1 -1
- package/dist/chunks/{index-BX1w0_z_.mjs → index-BWIrjh6G.mjs} +2 -2
- package/dist/chunks/{index-BX1w0_z_.mjs.map → index-BWIrjh6G.mjs.map} +1 -1
- package/dist/chunks/index-CJdBH2dA.mjs +2 -0
- package/dist/chunks/index-CJdBH2dA.mjs.map +1 -0
- package/dist/chunks/{index-CtowYOV1.mjs → index-C_f5Fx2v.mjs} +1 -1
- package/dist/chunks/{index-CtowYOV1.mjs.map → index-C_f5Fx2v.mjs.map} +1 -1
- package/dist/chunks/{index-D5qrkYzi.mjs → index-D1v3PdP0.mjs} +2 -2
- package/dist/chunks/{index-D5qrkYzi.mjs.map → index-D1v3PdP0.mjs.map} +1 -1
- package/dist/chunks/{index-CAfYtpma.mjs → index-Dw-nLa3V.mjs} +2 -2
- package/dist/chunks/{index-CAfYtpma.mjs.map → index-Dw-nLa3V.mjs.map} +1 -1
- package/dist/chunks/{index-C9z8vXb2.mjs → index-Ga0tRLIX.mjs} +2 -2
- package/dist/chunks/{index-C9z8vXb2.mjs.map → index-Ga0tRLIX.mjs.map} +1 -1
- package/dist/chunks/{index-D1CAbWF5.mjs → index-Jch-kFOs.mjs} +2 -2
- package/dist/chunks/{index-D1CAbWF5.mjs.map → index-Jch-kFOs.mjs.map} +1 -1
- package/dist/chunks/{index-CldmvP4a.mjs → index-cC12OKKn.mjs} +1 -1
- package/dist/chunks/{index-CldmvP4a.mjs.map → index-cC12OKKn.mjs.map} +1 -1
- package/dist/chunks/{index-DIH-sx20.mjs → index-qIY9XpbL.mjs} +2 -2
- package/dist/chunks/{index-DIH-sx20.mjs.map → index-qIY9XpbL.mjs.map} +1 -1
- package/dist/chunks/{index-CGiKhmTw.mjs → index-vjATIVlG.mjs} +1 -1
- package/dist/chunks/{index-CGiKhmTw.mjs.map → index-vjATIVlG.mjs.map} +1 -1
- package/dist/chunks/{input-tCLL6Wag.mjs → input-WGTUuQwx.mjs} +2 -2
- package/dist/chunks/{input-tCLL6Wag.mjs.map → input-WGTUuQwx.mjs.map} +1 -1
- package/dist/chunks/{label-AIwucBj-.mjs → label-C9fmItRi.mjs} +2 -2
- package/dist/chunks/{label-AIwucBj-.mjs.map → label-C9fmItRi.mjs.map} +1 -1
- package/dist/chunks/{pagination-Bf7ENC51.mjs → pagination-CwfzF6ZA.mjs} +2 -2
- package/dist/chunks/{pagination-Bf7ENC51.mjs.map → pagination-CwfzF6ZA.mjs.map} +1 -1
- package/dist/chunks/{popover-Bzt13jKn.mjs → popover-DWUH3762.mjs} +2 -2
- package/dist/chunks/{popover-Bzt13jKn.mjs.map → popover-DWUH3762.mjs.map} +1 -1
- package/dist/chunks/{progress-D14txtgz.mjs → progress-4uCJqswH.mjs} +2 -2
- package/dist/chunks/{progress-D14txtgz.mjs.map → progress-4uCJqswH.mjs.map} +1 -1
- package/dist/chunks/{scroll-area-sPJ30O8-.mjs → scroll-area-k2fAfAN1.mjs} +2 -2
- package/dist/chunks/{scroll-area-sPJ30O8-.mjs.map → scroll-area-k2fAfAN1.mjs.map} +1 -1
- package/dist/chunks/{select-BhU-ychz.mjs → select-DScrQSU7.mjs} +2 -2
- package/dist/chunks/{select-BhU-ychz.mjs.map → select-DScrQSU7.mjs.map} +1 -1
- package/dist/chunks/{skeleton-CVWv0wrj.mjs → skeleton-BOGCHPea.mjs} +2 -2
- package/dist/chunks/{skeleton-CVWv0wrj.mjs.map → skeleton-BOGCHPea.mjs.map} +1 -1
- package/dist/chunks/{sortable-DCp-B983.mjs → sortable-gbvqGC-N.mjs} +2 -2
- package/dist/chunks/{sortable-DCp-B983.mjs.map → sortable-gbvqGC-N.mjs.map} +1 -1
- package/dist/chunks/{table-P-qxwuu2.mjs → table-B3Ju2kvw.mjs} +2 -2
- package/dist/chunks/{table-P-qxwuu2.mjs.map → table-B3Ju2kvw.mjs.map} +1 -1
- package/dist/chunks/{tslib.es6-BSLL1h-C.mjs → tslib.es6-DNj8ZlM2.mjs} +1 -1
- package/dist/chunks/{tslib.es6-BSLL1h-C.mjs.map → tslib.es6-DNj8ZlM2.mjs.map} +1 -1
- package/dist/chunks/{utils-D72sTWl4.mjs → utils-Bv9f_FMv.mjs} +2 -2
- package/dist/chunks/{utils-D72sTWl4.mjs.map → utils-Bv9f_FMv.mjs.map} +1 -1
- package/dist/chunks/x-CyVCd2U8.mjs +2 -0
- package/dist/chunks/{x-CSzM0CiJ.mjs.map → x-CyVCd2U8.mjs.map} +1 -1
- package/dist/command/index.mjs +1 -1
- package/dist/data-table/index.d.ts +19 -7
- package/dist/data-table/index.mjs +1 -1
- package/dist/data-table/index.mjs.map +1 -1
- package/dist/dialog/index.mjs +1 -1
- package/dist/dropdown-menu/index.mjs +1 -1
- package/dist/dropzone/index.mjs +1 -1
- package/dist/form/index.mjs +1 -1
- package/dist/form/index.mjs.map +1 -1
- package/dist/hover-card/index.mjs +1 -1
- package/dist/icon/index.mjs +1 -1
- package/dist/index.css +1 -1
- package/dist/input/index.mjs +1 -1
- package/dist/label/index.mjs +1 -1
- package/dist/pagination/index.mjs +1 -1
- package/dist/popover/index.mjs +1 -1
- package/dist/progress/index.mjs +1 -1
- package/dist/scroll-area/index.mjs +1 -1
- package/dist/select/index.mjs +1 -1
- package/dist/separator/index.mjs +1 -1
- package/dist/sheet/index.mjs +1 -1
- package/dist/skeleton/index.mjs +1 -1
- package/dist/sortable/index.mjs +1 -1
- package/dist/table/index.mjs +1 -1
- package/dist/tabs/index.mjs +1 -1
- package/dist/toast/index.mjs +1 -1
- package/dist/tooltip/index.mjs +1 -1
- package/package.json +1 -1
- package/dist/chunks/bundle-mjs-BzWySkoH.mjs +0 -2
- package/dist/chunks/bundle-mjs-BzWySkoH.mjs.map +0 -1
- package/dist/chunks/calendar-BfJtFJt1.mjs +0 -2
- package/dist/chunks/calendar-BfJtFJt1.mjs.map +0 -1
- package/dist/chunks/check-DwxiwVdL.mjs +0 -2
- package/dist/chunks/chevron-down-DDbMNTUh.mjs +0 -2
- package/dist/chunks/chevron-left-Nq3OZhzU.mjs +0 -2
- package/dist/chunks/chevron-right-JC2xkPwU.mjs +0 -2
- package/dist/chunks/index-xxvFw8CT.mjs +0 -2
- package/dist/chunks/index-xxvFw8CT.mjs.map +0 -1
- package/dist/chunks/x-CSzM0CiJ.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\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\";\nimport React from \"react\";\n\nexport const DataTablePaginationSkeleton: React.FC = ({\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 { 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{flexRender(cell.column.columnDef.cell, cell.getContext())}\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 { 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, Row, 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\tloadingContent?: React.ReactNode;\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\tloadingContent,\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\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\tconst renderTableBodyContent = () => {\n\t\tif (isLoadingTable && !loadingContent) {\n\t\t\treturn <DataTableRowSkeleton columnCount={table.getAllColumns().length} />;\n\t\t}\n\n\t\tif (isLoadingTable && loadingContent) {\n\t\t\treturn (\n\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t{loadingContent}\n\t\t\t\t</TableCell>\n\t\t\t);\n\t\t}\n\n\t\tif (table.getRowModel().rows.length === 0) {\n\t\t\treturn (\n\t\t\t\t<TableRow>\n\t\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t\t{messageEmpty}\n\t\t\t\t\t</TableCell>\n\t\t\t\t</TableRow>\n\t\t\t);\n\t\t}\n\n\t\treturn table.getRowModel().rows.map((row: Row<TData>) => {\n\t\t\tconst rowData = row.original;\n\t\t\tconst key = getRowKey(rowData, rowKey);\n\n\t\t\treturn (\n\t\t\t\t<SortableItem key={row.id} value={key} asChild>\n\t\t\t\t\t<TableRow data-state={row.getIsSelected() && \"selected\"} className=\"even:bg-body/50\">\n\t\t\t\t\t\t{/* biome-ignore lint/suspicious/noExplicitAny: <explanation> */}\n\t\t\t\t\t\t{row.getVisibleCells().map((cell: any) => (\n\t\t\t\t\t\t\t<TableCell\n\t\t\t\t\t\t\t\tkey={cell.id}\n\t\t\t\t\t\t\t\tclassName={cn(\"p-2\", dividingColumnKey?.includes(cell.column.id) && \"border-r\")}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{flexRender(cell.column.columnDef.cell, cell.getContext())}\n\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</TableRow>\n\t\t\t\t</SortableItem>\n\t\t\t);\n\t\t});\n\t};\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{renderTableBodyContent()}\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","colSpan","ScrollBar","orientation","DataTableSkeleton","searchableColumnCount","filterableColumnCount","showViewOptions","withPagination","skeletonProps","DataTableStatus","uniqueStatusValues","renderStatusMessage","currentFilter","item","statusMessage","getRowKey","rowKey","DataTableMainFrameSortable","loadingContent","data","onDataChange","dividingColumnKey","newData","setNewData","useState","Sortable","updatedData","rowData","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\";\nimport React from \"react\";\n\nexport const DataTablePaginationSkeleton: React.FC = ({\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\";\nimport React from \"react\";\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 {\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, Row, 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\tmessageEmpty?: React.ReactNode;\n\tdividingColumnKey?: string[];\n\tloadingContent?: React.ReactNode;\n\tpageSizeOptions?: number[];\n\tclassName?: string;\n\tisScrollable?: boolean;\n\tscrollMaxHeightClass?: string;\n\tfixedHeader?: boolean;\n}\n\ninterface ListParams {\n\t[propName: string]: string | string[];\n}\n\nexport const DataTableMainFrame = <TData, TValue>({\n\ttable,\n\tcolumns,\n\tisLoadingTable,\n\tloadingContent,\n\tsetQueryParams,\n\tdataLabel,\n\tactionColumns = [],\n\tmessageEmpty = <>Sem resultados</>,\n\tdividingColumnKey,\n\tpageSizeOptions,\n\tclassName,\n\tscrollMaxHeightClass = \"sm:max-h-[calc(100vh-300px)]\",\n\tisScrollable = false,\n\tfixedHeader = false,\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\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\tconst renderTableBodyContent = () => {\n\t\tif (isLoadingTable && !loadingContent) {\n\t\t\treturn <DataTableRowSkeleton columnCount={table.getAllColumns().length} />;\n\t\t}\n\n\t\tif (isLoadingTable && loadingContent) {\n\t\t\treturn (\n\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t{loadingContent}\n\t\t\t\t</TableCell>\n\t\t\t);\n\t\t}\n\n\t\tif (table.getRowModel().rows.length === 0) {\n\t\t\treturn (\n\t\t\t\t<TableRow>\n\t\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t\t<span className=\"inline-block max-w-[30rem] text-wrap break-words\">{messageEmpty}</span>\n\t\t\t\t\t</TableCell>\n\t\t\t\t</TableRow>\n\t\t\t);\n\t\t}\n\n\t\treturn table.getRowModel().rows.map((row: Row<TData>, index) => {\n\t\t\tconst rowKey = row.id ?? String(index);\n\n\t\t\treturn (\n\t\t\t\t<TableRow\n\t\t\t\t\tkey={rowKey}\n\t\t\t\t\tdata-state={row.getIsSelected() && \"selected\"}\n\t\t\t\t\tclassName=\"even:bg-body/50\"\n\t\t\t\t>\n\t\t\t\t\t{/* biome-ignore lint/suspicious/noExplicitAny: <explanation> */}\n\t\t\t\t\t{row.getVisibleCells().map((cell: any) => (\n\t\t\t\t\t\t<TableCell\n\t\t\t\t\t\t\tkey={cell.id}\n\t\t\t\t\t\t\tclassName={cn(\"p-2\", dividingColumnKey?.includes(cell.column.id) && \"border-r\")}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{flexRender(cell.column.columnDef.cell, cell.getContext())}\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\tconst shouldForceMinHeight = table.getRowModel().rows.length > 1 || isLoadingTable;\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"bg-background mx-1 h-full w-full rounded-md border whitespace-nowrap\",\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\"relative w-full overflow-auto\",\n\t\t\t\t\t\tshouldForceMinHeight && \"min-h-[200px]\",\n\t\t\t\t\t\tisScrollable && scrollMaxHeightClass && scrollMaxHeightClass,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t<Table>\n\t\t\t\t\t\t<TableHeader\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\tfixedHeader && \"bg-background sticky top-0 z-10 shadow-[0_1px_0_hsl(240_6%_90%)]\",\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{table.getHeaderGroups().map((headerGroup) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<TableRow key={headerGroup.id}>\n\t\t\t\t\t\t\t\t\t\t{headerGroup.headers.map((header) => {\n\t\t\t\t\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\t\t\t\t\tcolumn: { id },\n\t\t\t\t\t\t\t\t\t\t\t} = header;\n\n\t\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\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t<TableHead\n\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\tdividingColumnKey?.includes(id) ? \"border-r\" : \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"static\",\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\tkey={header.id}\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\t\t{header.isPlaceholder ? null : (\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<div\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\tclassName:\n\t\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\t? \"flex w-fit 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\t: \"\",\n\t\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\t? header.column.getToggleSortingHandler()\n\t\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\t}}\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\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\t{(!isActionsColumn &&\n\t\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\t{\n\t\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\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\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\t}[header.column.getIsSorted() as string]) ?? (\n\t\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\t)}\n\t\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</>\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</TableHead>\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</TableHeader>\n\n\t\t\t\t\t\t<TableBody>{renderTableBodyContent()}</TableBody>\n\t\t\t\t\t</Table>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t{isScrollable ? null : isLoadingTable ? (\n\t\t\t\t<DataTablePaginationSkeleton />\n\t\t\t) : (\n\t\t\t\t<DataTablePagination\n\t\t\t\t\ttable={table}\n\t\t\t\t\tdataLabel={dataLabel}\n\t\t\t\t\tpageSizeOptions={pageSizeOptions}\n\t\t\t\t/>\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 React 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 = React.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 { 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, Row, 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 | Array<keyof TData> | ((row: TData) => string | number);\n\tdividingColumnKey?: string[];\n\tloadingContent?: React.ReactNode;\n\tpageSizeOptions?: number[];\n\tclassName?: string;\n\tisScrollable?: boolean;\n\tscrollMaxHeightClass?: string;\n\tfixedHeader?: boolean;\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 | Array<keyof TData> | ((row: TData) => string | number),\n): string | number => {\n\tif (typeof rowKey === \"function\") {\n\t\treturn rowKey(row);\n\t}\n\n\tif (Array.isArray(rowKey)) {\n\t\tfor (const key of rowKey) {\n\t\t\tif (row[key] !== undefined && row[key] !== null) {\n\t\t\t\treturn row[key] as string | number;\n\t\t\t}\n\t\t}\n\t\treturn \"\";\n\t}\n\n\treturn row[rowKey] as string | number;\n};\n\nexport const DataTableMainFrameSortable = <TData extends RowData, TValue>({\n\ttable,\n\tcolumns,\n\tisLoadingTable,\n\tloadingContent,\n\tsetQueryParams,\n\tdataLabel,\n\tactionColumns = [],\n\tdata,\n\tmessageEmpty = <>Sem resultados</>,\n\tonDataChange,\n\trowKey,\n\tdividingColumnKey,\n\tpageSizeOptions,\n\tclassName,\n\tscrollMaxHeightClass = \"sm:max-h-[calc(100vh-300px)]\",\n\tisScrollable = false,\n\tfixedHeader = false,\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\n\tconst [newData, setNewData] = React.useState<TData[]>(data);\n\n\tconst handleValueChange = (updatedData: TData[]) => {\n\t\tsetNewData(updatedData);\n\t\tonDataChange?.(updatedData);\n\t};\n\n\tReact.useEffect(() => {\n\t\tsetNewData(data);\n\t}, [data]);\n\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\tconst renderTableBodyContent = () => {\n\t\tif (isLoadingTable && !loadingContent) {\n\t\t\treturn <DataTableRowSkeleton columnCount={table.getAllColumns().length} />;\n\t\t}\n\n\t\tif (isLoadingTable && loadingContent) {\n\t\t\treturn (\n\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t{loadingContent}\n\t\t\t\t</TableCell>\n\t\t\t);\n\t\t}\n\n\t\tif (table.getRowModel().rows.length === 0) {\n\t\t\treturn (\n\t\t\t\t<TableRow>\n\t\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t\t<span className=\"inline-block max-w-[30rem] text-wrap break-words\">{messageEmpty}</span>\n\t\t\t\t\t</TableCell>\n\t\t\t\t</TableRow>\n\t\t\t);\n\t\t}\n\n\t\treturn table.getRowModel().rows.map((row: Row<TData>) => {\n\t\t\tconst rowData = row.original;\n\t\t\tconst key = getRowKey(rowData, rowKey);\n\n\t\t\treturn (\n\t\t\t\t<SortableItem key={row.id} value={key} asChild>\n\t\t\t\t\t<TableRow data-state={row.getIsSelected() && \"selected\"} className=\"even:bg-body/50\">\n\t\t\t\t\t\t{/* biome-ignore lint/suspicious/noExplicitAny: <explanation> */}\n\t\t\t\t\t\t{row.getVisibleCells().map((cell: any) => (\n\t\t\t\t\t\t\t<TableCell\n\t\t\t\t\t\t\t\tkey={cell.id}\n\t\t\t\t\t\t\t\tclassName={cn(\"p-2\", dividingColumnKey?.includes(cell.column.id) && \"border-r\")}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{flexRender(cell.column.columnDef.cell, cell.getContext())}\n\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</TableRow>\n\t\t\t\t</SortableItem>\n\t\t\t);\n\t\t});\n\t};\n\n\tconst shouldForceMinHeight = table.getRowModel().rows.length > 1 || isLoadingTable;\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"bg-background mx-1 h-full w-full rounded-md border whitespace-nowrap\",\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\"relative w-full overflow-auto\",\n\t\t\t\t\t\tshouldForceMinHeight && \"min-h-[200px]\",\n\t\t\t\t\t\tisScrollable && scrollMaxHeightClass && scrollMaxHeightClass,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t<Table>\n\t\t\t\t\t\t<TableHeader\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\tfixedHeader && \"bg-background sticky top-0 z-10 shadow-[0_1px_0_hsl(240_6%_90%)]\",\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{table.getHeaderGroups().map((headerGroup) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<TableRow key={headerGroup.id}>\n\t\t\t\t\t\t\t\t\t\t{headerGroup.headers.map((header) => {\n\t\t\t\t\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\t\t\t\t\tcolumn: { id },\n\t\t\t\t\t\t\t\t\t\t\t} = header;\n\n\t\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\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t<TableHead\n\t\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\t\tkey={header.id}\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\t\t{header.isPlaceholder ? null : (\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<div\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\tclassName:\n\t\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\t? \"flex w-fit 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\t: \"\",\n\t\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\t? header.column.getToggleSortingHandler()\n\t\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\t}}\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\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\t{(!isActionsColumn &&\n\t\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\t{\n\t\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\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\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\t}[header.column.getIsSorted() as string]) ?? (\n\t\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\t)}\n\t\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</>\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</TableHead>\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</TableHeader>\n\n\t\t\t\t\t\t<TableBody>\n\t\t\t\t\t\t\t<Sortable\n\t\t\t\t\t\t\t\tvalue={newData.map((item) => ({\n\t\t\t\t\t\t\t\t\t...item,\n\t\t\t\t\t\t\t\t\tid: getRowKey(item, rowKey),\n\t\t\t\t\t\t\t\t}))}\n\t\t\t\t\t\t\t\tonValueChange={handleValueChange}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{renderTableBodyContent()}\n\t\t\t\t\t\t\t</Sortable>\n\t\t\t\t\t\t</TableBody>\n\t\t\t\t\t</Table>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t{isScrollable ? null : isLoadingTable ? (\n\t\t\t\t<DataTablePaginationSkeleton />\n\t\t\t) : (\n\t\t\t\t<DataTablePagination\n\t\t\t\t\ttable={table}\n\t\t\t\t\tdataLabel={dataLabel}\n\t\t\t\t\tpageSizeOptions={pageSizeOptions}\n\t\t\t\t/>\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","loadingContent","setQueryParams","actionColumns","messageEmpty","dividingColumnKey","scrollMaxHeightClass","isScrollable","fixedHeader","toString","sorting","useEffect","sortingParams","sortingBy","order","desc","prev","page","shouldForceMinHeight","Table","TableHeader","getHeaderGroups","headerGroup","headers","header","isActionsColumn","TableHead","isPlaceholder","getCanSort","undefined","getToggleSortingHandler","columnDef","getContext","asc","ArrowDownIcon","ArrowUpIcon","false","CaretSortIcon","getIsSorted","TableBody","colSpan","row","index","rowKey","data-state","getIsSelected","getVisibleCells","cell","DataTableSkeleton","searchableColumnCount","filterableColumnCount","showViewOptions","withPagination","skeletonProps","DataTableStatus","uniqueStatusValues","renderStatusMessage","currentFilter","item","statusMessage","getRowKey","isArray","DataTableMainFrameSortable","data","onDataChange","newData","setNewData","useState","Sortable","updatedData","rowData","original","SortableItem"],"mappings":"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","x_google_ignoreList":[0,1,4]}
|
package/dist/dialog/index.mjs
CHANGED
@@ -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-
|
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-qeEDGLRF.mjs";import"../chunks/utils-Bv9f_FMv.mjs";import"../chunks/bundle-mjs-BVqH9Xiz.mjs";import"../chunks/index-Dw-nLa3V.mjs";import"react";import"../chunks/index-9Wr-AbGf.mjs";import"../chunks/index-C_f5Fx2v.mjs";import"../chunks/index-BSTiUDx6.mjs";import"react/jsx-runtime";import"../chunks/index-Jch-kFOs.mjs";import"../chunks/index-qIY9XpbL.mjs";import"../chunks/index-D1v3PdP0.mjs";import"../chunks/index-vjATIVlG.mjs";import"react-dom";import"@radix-ui/react-slot";import"../chunks/index-BF_rlJfV.mjs";import"../chunks/index-CJdBH2dA.mjs";import"../chunks/tslib.es6-DNj8ZlM2.mjs";import"../chunks/x-CyVCd2U8.mjs";import"../chunks/createLucideIcon-JNrPx34C.mjs";
|
2
2
|
//# sourceMappingURL=index.mjs.map
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{c as e}from"../chunks/utils-D72sTWl4.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-Dq1ur1Tt.mjs";import{c}from"../chunks/index-B9IG-aGl.mjs";import{u as d}from"../chunks/index-DIH-sx20.mjs";import{P as i,d as u}from"../chunks/index-CGiKhmTw.mjs";import{createCollection as l}from"@radix-ui/react-collection";import{u as p}from"../chunks/index-CldmvP4a.mjs";import{P as f,D as m}from"../chunks/index-D5qrkYzi.mjs";import{h,u as g,R as v,F as w}from"../chunks/index-xxvFw8CT.mjs";import{u as _}from"../chunks/index-D1CAbWF5.mjs";import{c as y,R as b,A as M,C as x,a as C}from"../chunks/index-BX1w0_z_.mjs";import{c as D,I as k,R}from"../chunks/index-BCS8JLlu.mjs";import{createSlot as E}from"@radix-ui/react-slot";import{u as N}from"../chunks/index-By-2lawf.mjs";import{jsx as O}from"react/jsx-runtime";import{C as P}from"../chunks/check-DwxiwVdL.mjs";import{c as I}from"../chunks/createLucideIcon-DODpMbL1.mjs";import{C as T}from"../chunks/chevron-right-JC2xkPwU.mjs";import"../chunks/bundle-mjs-BzWySkoH.mjs";import"../chunks/index-CtowYOV1.mjs";import"react-dom";import"../chunks/tslib.es6-BSLL1h-C.mjs";import"../chunks/index-C9z8vXb2.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],c=n[a],d=s.x,i=s.y,u=c.x,l=c.y;i>r!=l>r&&t<(u-d)*(r-i)/(l-i)+d&&(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,f]=d({prop:a,defaultProp:s??!1,onChange:c,caller:an});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,i]=d({prop:r,defaultProp:a??!1,onChange:o,caller:"DropdownMenuSub"});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]:bg-destructive/10 data-[variant=destructive]:text-foreground data-[variant=destructive]:focus:bg-destructive/90 dark:data-[variant=destructive]:focus:bg-destructive/90 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};
|
1
|
+
import{c as e}from"../chunks/utils-Bv9f_FMv.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-9Wr-AbGf.mjs";import{c}from"../chunks/index-BSTiUDx6.mjs";import{u as d}from"../chunks/index-qIY9XpbL.mjs";import{P as i,d as u}from"../chunks/index-vjATIVlG.mjs";import{createCollection as l}from"@radix-ui/react-collection";import{u as p}from"../chunks/index-cC12OKKn.mjs";import{P as f,D as m}from"../chunks/index-D1v3PdP0.mjs";import{h,u as g,R as v,F as w}from"../chunks/index-CJdBH2dA.mjs";import{u as _}from"../chunks/index-Jch-kFOs.mjs";import{c as y,R as b,A as M,C as x,a as C}from"../chunks/index-BWIrjh6G.mjs";import{c as D,I as k,R}from"../chunks/index-B7JXO_ZL.mjs";import{createSlot as E}from"@radix-ui/react-slot";import{u as N}from"../chunks/index-BF_rlJfV.mjs";import{jsx as O}from"react/jsx-runtime";import{C as P}from"../chunks/check-C1S8oGnA.mjs";import{c as I}from"../chunks/createLucideIcon-JNrPx34C.mjs";import{C as T}from"../chunks/chevron-right-BZ-GCzPm.mjs";import"../chunks/bundle-mjs-BVqH9Xiz.mjs";import"../chunks/index-C_f5Fx2v.mjs";import"react-dom";import"../chunks/tslib.es6-DNj8ZlM2.mjs";import"../chunks/index-Ga0tRLIX.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],c=n[a],d=s.x,i=s.y,u=c.x,l=c.y;i>r!=l>r&&t<(u-d)*(r-i)/(l-i)+d&&(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,f]=d({prop:a,defaultProp:s??!1,onChange:c,caller:an});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,i]=d({prop:r,defaultProp:a??!1,onChange:o,caller:"DropdownMenuSub"});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]:bg-destructive/10 data-[variant=destructive]:text-foreground data-[variant=destructive]:focus:bg-destructive/90 dark:data-[variant=destructive]:focus:bg-destructive/90 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
|