@gbmtech/aurora-ui 0.1.44 → 0.1.45

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.
@@ -1,3 +1,3 @@
1
1
  'use client'
2
- "use strict";let __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_require__={};__webpack_require__.d=(e,a)=>{for(var _ in a)__webpack_require__.o(a,_)&&!__webpack_require__.o(e,_)&&Object.defineProperty(e,_,{enumerable:!0,get:a[_]})},__webpack_require__.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{DataTableViewOptions:()=>DataTableViewOptions});let jsx_runtime_namespaceObject=require("react/jsx-runtime"),react_namespaceObject=require("@phosphor-icons/react"),external_button_cjs_namespaceObject=require("../button.cjs"),external_command_cjs_namespaceObject=require("../command.cjs"),external_popover_cjs_namespaceObject=require("../popover.cjs"),utils_cjs_namespaceObject=require("../../lib/utils.cjs"),external_react_namespaceObject=require("react");function DataTableViewOptions({table:e}){let a=external_react_namespaceObject.useMemo(()=>e.getAllColumns().filter(e=>void 0!==e.accessorFn&&e.getCanHide()),[e]);return(0,jsx_runtime_namespaceObject.jsxs)(external_popover_cjs_namespaceObject.Popover,{children:[(0,jsx_runtime_namespaceObject.jsx)(external_popover_cjs_namespaceObject.PopoverTrigger,{asChild:!0,children:(0,jsx_runtime_namespaceObject.jsxs)(external_button_cjs_namespaceObject.Button,{"aria-label":"Toggle columns",role:"combobox",variant:"secondary",size:"xs",className:"ml-auto hidden lg:flex",children:[(0,jsx_runtime_namespaceObject.jsx)(react_namespaceObject.SlidersHorizontal,{}),"Ver",(0,jsx_runtime_namespaceObject.jsx)(react_namespaceObject.CaretUpDown,{className:"ml-auto opacity-50"})]})}),(0,jsx_runtime_namespaceObject.jsx)(external_popover_cjs_namespaceObject.PopoverContent,{align:"end",className:"w-44 p-0",children:(0,jsx_runtime_namespaceObject.jsxs)(external_command_cjs_namespaceObject.Command,{children:[(0,jsx_runtime_namespaceObject.jsx)(external_command_cjs_namespaceObject.CommandInput,{placeholder:"Buscar colunas..."}),(0,jsx_runtime_namespaceObject.jsxs)(external_command_cjs_namespaceObject.CommandList,{children:[(0,jsx_runtime_namespaceObject.jsx)(external_command_cjs_namespaceObject.CommandEmpty,{children:"No columns found."}),(0,jsx_runtime_namespaceObject.jsx)(external_command_cjs_namespaceObject.CommandGroup,{children:a.map(e=>(0,jsx_runtime_namespaceObject.jsxs)(external_command_cjs_namespaceObject.CommandItem,{onSelect:()=>e.toggleVisibility(!e.getIsVisible()),children:[(0,jsx_runtime_namespaceObject.jsx)("span",{className:"truncate",children:e.columnDef.meta?.label??e.id}),(0,jsx_runtime_namespaceObject.jsx)(react_namespaceObject.Check,{className:(0,utils_cjs_namespaceObject.cn)("ml-auto size-4 shrink-0",e.getIsVisible()?"opacity-100":"opacity-0")})]},e.id))})]})]})})]})}for(var __webpack_i__ in exports.DataTableViewOptions=__webpack_exports__.DataTableViewOptions,__webpack_exports__)-1===["DataTableViewOptions"].indexOf(__webpack_i__)&&(exports[__webpack_i__]=__webpack_exports__[__webpack_i__]);Object.defineProperty(exports,"__esModule",{value:!0});
2
+ "use strict";let __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_require__={};__webpack_require__.d=(e,a)=>{for(var _ in a)__webpack_require__.o(a,_)&&!__webpack_require__.o(e,_)&&Object.defineProperty(e,_,{enumerable:!0,get:a[_]})},__webpack_require__.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{DataTableViewOptions:()=>DataTableViewOptions});let jsx_runtime_namespaceObject=require("react/jsx-runtime"),react_namespaceObject=require("@phosphor-icons/react"),external_button_cjs_namespaceObject=require("../button.cjs"),external_command_cjs_namespaceObject=require("../command.cjs"),external_popover_cjs_namespaceObject=require("../popover.cjs"),utils_cjs_namespaceObject=require("../../lib/utils.cjs"),external_react_namespaceObject=require("react");function DataTableViewOptions({table:e}){let a=external_react_namespaceObject.useMemo(()=>e.getAllColumns().filter(e=>void 0!==e.accessorFn&&e.getCanHide()),[e]);return(0,jsx_runtime_namespaceObject.jsxs)(external_popover_cjs_namespaceObject.Popover,{children:[(0,jsx_runtime_namespaceObject.jsx)(external_popover_cjs_namespaceObject.PopoverTrigger,{asChild:!0,children:(0,jsx_runtime_namespaceObject.jsxs)(external_button_cjs_namespaceObject.Button,{"aria-label":"Toggle columns",role:"combobox",variant:"secondary",size:"xs",className:"ml-auto hidden lg:flex",children:[(0,jsx_runtime_namespaceObject.jsx)(react_namespaceObject.SlidersHorizontal,{}),"Ver",(0,jsx_runtime_namespaceObject.jsx)(react_namespaceObject.CaretUpDown,{className:"ml-auto opacity-50"})]})}),(0,jsx_runtime_namespaceObject.jsx)(external_popover_cjs_namespaceObject.PopoverContent,{align:"end",className:"w-44 p-0",children:(0,jsx_runtime_namespaceObject.jsxs)(external_command_cjs_namespaceObject.Command,{children:[(0,jsx_runtime_namespaceObject.jsx)(external_command_cjs_namespaceObject.CommandInput,{placeholder:"Buscar colunas..."}),(0,jsx_runtime_namespaceObject.jsxs)(external_command_cjs_namespaceObject.CommandList,{children:[(0,jsx_runtime_namespaceObject.jsx)(external_command_cjs_namespaceObject.CommandEmpty,{children:"Nenhuma coluna encontrada."}),(0,jsx_runtime_namespaceObject.jsx)(external_command_cjs_namespaceObject.CommandGroup,{children:a.map(e=>(0,jsx_runtime_namespaceObject.jsxs)(external_command_cjs_namespaceObject.CommandItem,{onSelect:()=>e.toggleVisibility(!e.getIsVisible()),children:[(0,jsx_runtime_namespaceObject.jsx)("span",{className:"truncate",children:e.columnDef.meta?.label??e.id}),(0,jsx_runtime_namespaceObject.jsx)(react_namespaceObject.Check,{className:(0,utils_cjs_namespaceObject.cn)("ml-auto size-4 shrink-0",e.getIsVisible()?"opacity-100":"opacity-0")})]},e.id))})]})]})})]})}for(var __webpack_i__ in exports.DataTableViewOptions=__webpack_exports__.DataTableViewOptions,__webpack_exports__)-1===["DataTableViewOptions"].indexOf(__webpack_i__)&&(exports[__webpack_i__]=__webpack_exports__[__webpack_i__]);Object.defineProperty(exports,"__esModule",{value:!0});
3
3
  //# sourceMappingURL=data-table-view-options.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"components\\data-table\\data-table-view-options.cjs","sources":["webpack://@gbmtech/aurora-ui/./src/components/data-table/data-table-view-options.tsx"],"sourcesContent":["\r\n\r\nimport { CaretUpDown, Check, SlidersHorizontal } from '@phosphor-icons/react'\r\nimport type { Table } from '@tanstack/react-table'\r\n\r\nimport { Button } from '@/components/button'\r\nimport {\r\n Command,\r\n CommandEmpty,\r\n CommandGroup,\r\n CommandInput,\r\n CommandItem,\r\n CommandList,\r\n} from '@/components/command'\r\nimport { Popover, PopoverContent, PopoverTrigger } from '@/components/popover'\r\nimport { cn } from '@/lib/utils'\r\nimport * as React from 'react'\r\n\r\ninterface DataTableViewOptionsProps<TData> {\r\n table: Table<TData>\r\n}\r\n\r\nexport function DataTableViewOptions<TData>({\r\n table,\r\n}: DataTableViewOptionsProps<TData>) {\r\n const columns = React.useMemo(\r\n () =>\r\n table\r\n .getAllColumns()\r\n .filter(\r\n column =>\r\n typeof column.accessorFn !== 'undefined' && column.getCanHide()\r\n ),\r\n [table]\r\n )\r\n\r\n return (\r\n <Popover>\r\n <PopoverTrigger asChild>\r\n <Button\r\n aria-label=\"Toggle columns\"\r\n role=\"combobox\"\r\n variant=\"secondary\"\r\n size=\"xs\"\r\n className=\"ml-auto hidden lg:flex\"\r\n >\r\n <SlidersHorizontal />\r\n Ver\r\n <CaretUpDown className=\"ml-auto opacity-50\" />\r\n </Button>\r\n </PopoverTrigger>\r\n <PopoverContent align=\"end\" className=\"w-44 p-0\">\r\n <Command>\r\n <CommandInput placeholder=\"Buscar colunas...\" />\r\n <CommandList>\r\n <CommandEmpty>No columns found.</CommandEmpty>\r\n <CommandGroup>\r\n {columns.map(column => (\r\n <CommandItem\r\n key={column.id}\r\n onSelect={() =>\r\n column.toggleVisibility(!column.getIsVisible())\r\n }\r\n >\r\n <span className=\"truncate\">\r\n {column.columnDef.meta?.label ?? column.id}\r\n </span>\r\n <Check\r\n className={cn(\r\n 'ml-auto size-4 shrink-0',\r\n column.getIsVisible() ? 'opacity-100' : 'opacity-0'\r\n )}\r\n />\r\n </CommandItem>\r\n ))}\r\n </CommandGroup>\r\n </CommandList>\r\n </Command>\r\n </PopoverContent>\r\n </Popover>\r\n )\r\n}\r\n"],"names":["DataTableViewOptions","table","columns","React","column","Popover","PopoverTrigger","Button","SlidersHorizontal","CaretUpDown","PopoverContent","Command","CommandInput","CommandList","CommandEmpty","CommandGroup","CommandItem","Check","cn"],"mappings":";otCAsBO,SAASA,qBAA4B,CAC1CC,MAAAA,CAAK,CAC4B,EACjC,IAAMC,EAAUC,+BAAAA,OAAa,CAC3B,IACEF,EACG,aAAa,GACb,MAAM,CACLG,GACE,SAAOA,EAAO,UAAU,EAAoBA,EAAO,UAAU,IAErE,CAACH,EAAM,EAGT,MACE,qCAACI,qCAAAA,OAAOA,CAAAA,C,UACN,oCAACC,qCAAAA,cAAcA,CAAAA,CAAC,QAAO,G,SACrB,qCAACC,oCAAAA,MAAMA,CAAAA,CACL,aAAW,iBACX,KAAK,WACL,QAAQ,YACR,KAAK,KACL,UAAU,yB,UAEV,oCAACC,sBAAAA,iBAAiBA,CAAAA,CAAAA,GAAG,MAErB,oCAACC,sBAAAA,WAAWA,CAAAA,CAAC,UAAU,oB,QAG3B,oCAACC,qCAAAA,cAAcA,CAAAA,CAAC,MAAM,MAAM,UAAU,W,SACpC,qCAACC,qCAAAA,OAAOA,CAAAA,C,UACN,oCAACC,qCAAAA,YAAYA,CAAAA,CAAC,YAAY,mB,GAC1B,qCAACC,qCAAAA,WAAWA,CAAAA,C,UACV,oCAACC,qCAAAA,YAAYA,CAAAA,C,SAAC,mB,GACd,oCAACC,qCAAAA,YAAYA,CAAAA,C,SACVb,EAAQ,GAAG,CAACE,GACX,qCAACY,qCAAAA,WAAWA,CAAAA,CAEV,SAAU,IACRZ,EAAO,gBAAgB,CAAC,CAACA,EAAO,YAAY,I,UAG9C,oCAAC,QAAK,UAAU,W,SACbA,EAAO,SAAS,CAAC,IAAI,EAAE,OAASA,EAAO,EAAE,GAE5C,oCAACa,sBAAAA,KAAKA,CAAAA,CACJ,UAAWC,GAAAA,0BAAAA,EAAAA,EACT,0BACAd,EAAO,YAAY,GAAK,cAAgB,Y,KAXvCA,EAAO,EAAE,E,aAsBhC,C"}
1
+ {"version":3,"file":"components\\data-table\\data-table-view-options.cjs","sources":["webpack://@gbmtech/aurora-ui/./src/components/data-table/data-table-view-options.tsx"],"sourcesContent":["\r\n\r\nimport { CaretUpDown, Check, SlidersHorizontal } from '@phosphor-icons/react'\r\nimport type { Table } from '@tanstack/react-table'\r\n\r\nimport { Button } from '@/components/button'\r\nimport {\r\n Command,\r\n CommandEmpty,\r\n CommandGroup,\r\n CommandInput,\r\n CommandItem,\r\n CommandList,\r\n} from '@/components/command'\r\nimport { Popover, PopoverContent, PopoverTrigger } from '@/components/popover'\r\nimport { cn } from '@/lib/utils'\r\nimport * as React from 'react'\r\n\r\ninterface DataTableViewOptionsProps<TData> {\r\n table: Table<TData>\r\n}\r\n\r\nexport function DataTableViewOptions<TData>({\r\n table,\r\n}: DataTableViewOptionsProps<TData>) {\r\n const columns = React.useMemo(\r\n () =>\r\n table\r\n .getAllColumns()\r\n .filter(\r\n column =>\r\n typeof column.accessorFn !== 'undefined' && column.getCanHide()\r\n ),\r\n [table]\r\n )\r\n\r\n return (\r\n <Popover>\r\n <PopoverTrigger asChild>\r\n <Button\r\n aria-label=\"Toggle columns\"\r\n role=\"combobox\"\r\n variant=\"secondary\"\r\n size=\"xs\"\r\n className=\"ml-auto hidden lg:flex\"\r\n >\r\n <SlidersHorizontal />\r\n Ver\r\n <CaretUpDown className=\"ml-auto opacity-50\" />\r\n </Button>\r\n </PopoverTrigger>\r\n <PopoverContent align=\"end\" className=\"w-44 p-0\">\r\n <Command>\r\n <CommandInput placeholder=\"Buscar colunas...\" />\r\n <CommandList>\r\n <CommandEmpty>Nenhuma coluna encontrada.</CommandEmpty>\r\n <CommandGroup>\r\n {columns.map(column => (\r\n <CommandItem\r\n key={column.id}\r\n onSelect={() =>\r\n column.toggleVisibility(!column.getIsVisible())\r\n }\r\n >\r\n <span className=\"truncate\">\r\n {column.columnDef.meta?.label ?? column.id}\r\n </span>\r\n <Check\r\n className={cn(\r\n 'ml-auto size-4 shrink-0',\r\n column.getIsVisible() ? 'opacity-100' : 'opacity-0'\r\n )}\r\n />\r\n </CommandItem>\r\n ))}\r\n </CommandGroup>\r\n </CommandList>\r\n </Command>\r\n </PopoverContent>\r\n </Popover>\r\n )\r\n}\r\n"],"names":["DataTableViewOptions","table","columns","React","column","Popover","PopoverTrigger","Button","SlidersHorizontal","CaretUpDown","PopoverContent","Command","CommandInput","CommandList","CommandEmpty","CommandGroup","CommandItem","Check","cn"],"mappings":";otCAsBO,SAASA,qBAA4B,CAC1CC,MAAAA,CAAK,CAC4B,EACjC,IAAMC,EAAUC,+BAAAA,OAAa,CAC3B,IACEF,EACG,aAAa,GACb,MAAM,CACLG,GACE,SAAOA,EAAO,UAAU,EAAoBA,EAAO,UAAU,IAErE,CAACH,EAAM,EAGT,MACE,qCAACI,qCAAAA,OAAOA,CAAAA,C,UACN,oCAACC,qCAAAA,cAAcA,CAAAA,CAAC,QAAO,G,SACrB,qCAACC,oCAAAA,MAAMA,CAAAA,CACL,aAAW,iBACX,KAAK,WACL,QAAQ,YACR,KAAK,KACL,UAAU,yB,UAEV,oCAACC,sBAAAA,iBAAiBA,CAAAA,CAAAA,GAAG,MAErB,oCAACC,sBAAAA,WAAWA,CAAAA,CAAC,UAAU,oB,QAG3B,oCAACC,qCAAAA,cAAcA,CAAAA,CAAC,MAAM,MAAM,UAAU,W,SACpC,qCAACC,qCAAAA,OAAOA,CAAAA,C,UACN,oCAACC,qCAAAA,YAAYA,CAAAA,CAAC,YAAY,mB,GAC1B,qCAACC,qCAAAA,WAAWA,CAAAA,C,UACV,oCAACC,qCAAAA,YAAYA,CAAAA,C,SAAC,4B,GACd,oCAACC,qCAAAA,YAAYA,CAAAA,C,SACVb,EAAQ,GAAG,CAACE,GACX,qCAACY,qCAAAA,WAAWA,CAAAA,CAEV,SAAU,IACRZ,EAAO,gBAAgB,CAAC,CAACA,EAAO,YAAY,I,UAG9C,oCAAC,QAAK,UAAU,W,SACbA,EAAO,SAAS,CAAC,IAAI,EAAE,OAASA,EAAO,EAAE,GAE5C,oCAACa,sBAAAA,KAAKA,CAAAA,CACJ,UAAWC,GAAAA,0BAAAA,EAAAA,EACT,0BACAd,EAAO,YAAY,GAAK,cAAgB,Y,KAXvCA,EAAO,EAAE,E,aAsBhC,C"}
@@ -1 +1 @@
1
- "use strict";let __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_modules__={"./data-table-action-bar":function(e){e.exports=require("./data-table-action-bar.cjs")},"./data-table-advanced-toolbar":function(e){e.exports=require("./data-table-advanced-toolbar.cjs")},"./data-table-column-header":function(e){e.exports=require("./data-table-column-header.cjs")},"@/components/data-table/data-table-date-filter":function(e){e.exports=require("./data-table-date-filter.cjs")},"@/components/data-table/data-table-faceted-filter":function(e){e.exports=require("./data-table-faceted-filter.cjs")},"./data-table-filter-list":function(e){e.exports=require("./data-table-filter-list.cjs")},"./data-table-filter-menu":function(e){e.exports=require("./data-table-filter-menu.cjs")},"@/components/data-table/data-table-pagination":function(e){e.exports=require("./data-table-pagination.cjs")},"@/components/data-table/data-table-range-filter":function(e){e.exports=require("./data-table-range-filter.cjs")},"./data-table-skeleton":function(e){e.exports=require("./data-table-skeleton.cjs")},"@/components/data-table/data-table-slider-filter":function(e){e.exports=require("./data-table-slider-filter.cjs")},"./data-table-sort-list":function(e){e.exports=require("./data-table-sort-list.cjs")},"./data-table-toolbar":function(e){e.exports=require("./data-table-toolbar.cjs")},"@/components/data-table/data-table-view-options":function(e){e.exports=require("./data-table-view-options.cjs")},"./data-table":function(e){e.exports=require("./data-table.cjs")}},__webpack_module_cache__={};function __webpack_require__(e){var _=__webpack_module_cache__[e];if(void 0!==_)return _.exports;var a=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e](a,a.exports,__webpack_require__),a.exports}__webpack_require__.n=e=>{var _=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(_,{a:_}),_},__webpack_require__.d=(e,_)=>{for(var a in _)__webpack_require__.o(_,a)&&!__webpack_require__.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:_[a]})},__webpack_require__.o=(e,_)=>Object.prototype.hasOwnProperty.call(e,_),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};for(var __webpack_i__ in(()=>{__webpack_require__.r(__webpack_exports__);var e=__webpack_require__("./data-table-action-bar"),_={};for(var a in e)"default"!==a&&(_[a]=(function(_){return e[_]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var t=__webpack_require__("./data-table-advanced-toolbar"),_={};for(var a in t)"default"!==a&&(_[a]=(function(e){return t[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var r=__webpack_require__("./data-table-column-header"),_={};for(var a in r)"default"!==a&&(_[a]=(function(e){return r[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var n=__webpack_require__("@/components/data-table/data-table-date-filter"),_={};for(var a in n)"default"!==a&&(_[a]=(function(e){return n[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var i=__webpack_require__("@/components/data-table/data-table-faceted-filter"),_={};for(var a in i)"default"!==a&&(_[a]=(function(e){return i[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var o=__webpack_require__("./data-table-filter-list"),_={};for(var a in o)"default"!==a&&(_[a]=(function(e){return o[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var c=__webpack_require__("./data-table-filter-menu"),_={};for(var a in c)"default"!==a&&(_[a]=(function(e){return c[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var b=__webpack_require__("@/components/data-table/data-table-pagination"),_={};for(var a in b)"default"!==a&&(_[a]=(function(e){return b[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var u=__webpack_require__("@/components/data-table/data-table-range-filter"),_={};for(var a in u)"default"!==a&&(_[a]=(function(e){return u[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var d=__webpack_require__("./data-table-skeleton"),_={};for(var a in d)"default"!==a&&(_[a]=(function(e){return d[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var p=__webpack_require__("@/components/data-table/data-table-slider-filter"),_={};for(var a in p)"default"!==a&&(_[a]=(function(e){return p[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var l=__webpack_require__("./data-table-sort-list"),_={};for(var a in l)"default"!==a&&(_[a]=(function(e){return l[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var f=__webpack_require__("./data-table-toolbar"),_={};for(var a in f)"default"!==a&&(_[a]=(function(e){return f[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var s=__webpack_require__("@/components/data-table/data-table-view-options"),_={};for(var a in s)"default"!==a&&(_[a]=(function(e){return s[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var w=__webpack_require__("./data-table"),_={};for(var a in w)"default"!==a&&(_[a]=(function(e){return w[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_)})(),__webpack_exports__)exports[__webpack_i__]=__webpack_exports__[__webpack_i__];Object.defineProperty(exports,"__esModule",{value:!0});
1
+ "use strict";let __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_modules__={"./data-table-action-bar":function(e){e.exports=require("./data-table-action-bar.cjs")},"./data-table-advanced-toolbar":function(e){e.exports=require("./data-table-advanced-toolbar.cjs")},"./data-table-column-header":function(e){e.exports=require("./data-table-column-header.cjs")},"./data-table-date-filter":function(e){e.exports=require("./data-table-date-filter.cjs")},"./data-table-faceted-filter":function(e){e.exports=require("./data-table-faceted-filter.cjs")},"./data-table-filter-list":function(e){e.exports=require("./data-table-filter-list.cjs")},"./data-table-filter-menu":function(e){e.exports=require("./data-table-filter-menu.cjs")},"@/components/data-table/data-table-pagination":function(e){e.exports=require("./data-table-pagination.cjs")},"./data-table-range-filter":function(e){e.exports=require("./data-table-range-filter.cjs")},"./data-table-skeleton":function(e){e.exports=require("./data-table-skeleton.cjs")},"./data-table-slider-filter":function(e){e.exports=require("./data-table-slider-filter.cjs")},"./data-table-sort-list":function(e){e.exports=require("./data-table-sort-list.cjs")},"./data-table-toolbar":function(e){e.exports=require("./data-table-toolbar.cjs")},"@/components/data-table/data-table-view-options":function(e){e.exports=require("./data-table-view-options.cjs")},"./data-table":function(e){e.exports=require("./data-table.cjs")}},__webpack_module_cache__={};function __webpack_require__(e){var _=__webpack_module_cache__[e];if(void 0!==_)return _.exports;var a=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e](a,a.exports,__webpack_require__),a.exports}__webpack_require__.n=e=>{var _=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(_,{a:_}),_},__webpack_require__.d=(e,_)=>{for(var a in _)__webpack_require__.o(_,a)&&!__webpack_require__.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:_[a]})},__webpack_require__.o=(e,_)=>Object.prototype.hasOwnProperty.call(e,_),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};for(var __webpack_i__ in(()=>{__webpack_require__.r(__webpack_exports__);var e=__webpack_require__("./data-table-action-bar"),_={};for(var a in e)"default"!==a&&(_[a]=(function(_){return e[_]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var r=__webpack_require__("./data-table-advanced-toolbar"),_={};for(var a in r)"default"!==a&&(_[a]=(function(e){return r[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var t=__webpack_require__("./data-table-column-header"),_={};for(var a in t)"default"!==a&&(_[a]=(function(e){return t[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var i=__webpack_require__("./data-table-date-filter"),_={};for(var a in i)"default"!==a&&(_[a]=(function(e){return i[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var n=__webpack_require__("./data-table-faceted-filter"),_={};for(var a in n)"default"!==a&&(_[a]=(function(e){return n[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var o=__webpack_require__("./data-table-filter-list"),_={};for(var a in o)"default"!==a&&(_[a]=(function(e){return o[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var c=__webpack_require__("./data-table-filter-menu"),_={};for(var a in c)"default"!==a&&(_[a]=(function(e){return c[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var b=__webpack_require__("@/components/data-table/data-table-pagination"),_={};for(var a in b)"default"!==a&&(_[a]=(function(e){return b[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var u=__webpack_require__("./data-table-range-filter"),_={};for(var a in u)"default"!==a&&(_[a]=(function(e){return u[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var d=__webpack_require__("./data-table-skeleton"),_={};for(var a in d)"default"!==a&&(_[a]=(function(e){return d[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var p=__webpack_require__("./data-table-slider-filter"),_={};for(var a in p)"default"!==a&&(_[a]=(function(e){return p[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var l=__webpack_require__("./data-table-sort-list"),_={};for(var a in l)"default"!==a&&(_[a]=(function(e){return l[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var f=__webpack_require__("./data-table-toolbar"),_={};for(var a in f)"default"!==a&&(_[a]=(function(e){return f[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var s=__webpack_require__("@/components/data-table/data-table-view-options"),_={};for(var a in s)"default"!==a&&(_[a]=(function(e){return s[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_);var w=__webpack_require__("./data-table"),_={};for(var a in w)"default"!==a&&(_[a]=(function(e){return w[e]}).bind(0,a));__webpack_require__.d(__webpack_exports__,_)})(),__webpack_exports__)exports[__webpack_i__]=__webpack_exports__[__webpack_i__];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1,3 +1,3 @@
1
1
  'use client'
2
- "use strict";let __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_require__={};__webpack_require__.d=(e,a)=>{for(var t in a)__webpack_require__.o(a,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:a[t]})},__webpack_require__.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{useDataTable:()=>useDataTable});let react_table_namespaceObject=require("@tanstack/react-table"),external_nuqs_namespaceObject=require("nuqs"),external_react_namespaceObject=require("react"),external_use_debounced_callback_cjs_namespaceObject=require("./use-debounced-callback.cjs"),parsers_cjs_namespaceObject=require("../lib/parsers.cjs"),PAGE_KEY="page",PER_PAGE_KEY="perPage",SORT_KEY="sort",ARRAY_SEPARATOR=",",DEBOUNCE_MS=300,THROTTLE_MS=50;function useDataTable(e){let{columns:a,pageCount:t=-1,initialState:_,history:r="replace",debounceMs:c=300,throttleMs:n=50,clearOnDefault:s=!1,enableAdvancedFilter:l=!1,scroll:o=!1,shallow:i=!0,startTransition:u,...p}=e,b=external_react_namespaceObject.useMemo(()=>({history:r,scroll:o,shallow:i,throttleMs:n,debounceMs:c,clearOnDefault:s,startTransition:u}),[r,o,i,n,c,s,u]),[m,d]=external_react_namespaceObject.useState(_?.rowSelection??{}),[O,j]=external_react_namespaceObject.useState(_?.columnVisibility??{}),[g,w]=(0,external_nuqs_namespaceObject.useQueryState)("page",external_nuqs_namespaceObject.parseAsInteger.withOptions(b).withDefault(1)),[x,f]=(0,external_nuqs_namespaceObject.useQueryState)("perPage",external_nuqs_namespaceObject.parseAsInteger.withOptions(b).withDefault(_?.pagination?.pageSize??10)),S=external_react_namespaceObject.useMemo(()=>({pageIndex:g-1,pageSize:x}),[g,x]),q=external_react_namespaceObject.useCallback(e=>{if("function"==typeof e){let a=e(S);w(a.pageIndex+1),f(a.pageSize)}else w(e.pageIndex+1),f(e.pageSize)},[S,w,f]),k=external_react_namespaceObject.useMemo(()=>new Set(a.map(e=>e.id).filter(Boolean)),[a]),[M,y]=(0,external_nuqs_namespaceObject.useQueryState)("sort",(0,parsers_cjs_namespaceObject.getSortingStateParser)(k).withOptions(b).withDefault(_?.sorting??[])),R=external_react_namespaceObject.useCallback(e=>{"function"==typeof e?y(e(M)):y(e)},[M,y]),A=external_react_namespaceObject.useMemo(()=>l?[]:a.filter(e=>e.enableColumnFilter),[a,l]),P=external_react_namespaceObject.useMemo(()=>l?{}:A.reduce((e,a)=>(a.meta?.options?e[a.id??""]=(0,external_nuqs_namespaceObject.parseAsArrayOf)(external_nuqs_namespaceObject.parseAsString,",").withOptions(b):e[a.id??""]=external_nuqs_namespaceObject.parseAsString.withOptions(b),e),{}),[A,b,l]),[h,C]=(0,external_nuqs_namespaceObject.useQueryStates)(P),T=(0,external_use_debounced_callback_cjs_namespaceObject.useDebouncedCallback)(e=>{w(1),C(e)},c),D=external_react_namespaceObject.useMemo(()=>l?[]:Object.entries(h).reduce((e,[a,t])=>{if(null!==t){let _=Array.isArray(t)?t:"string"==typeof t&&/[^a-zA-Z0-9]/.test(t)?t.split(/[^a-zA-Z0-9]+/).filter(Boolean):[t];e.push({id:a,value:_})}return e},[]),[h,l]),[F,E]=external_react_namespaceObject.useState(D),v=external_react_namespaceObject.useCallback(e=>{l||E(a=>{let t="function"==typeof e?e(a):e,_=t.reduce((e,a)=>(A.find(e=>e.id===a.id)&&(e[a.id]=a.value),e),{});for(let e of a)t.some(a=>a.id===e.id)||(_[e.id]=null);return T(_),t})},[T,A,l]);return{table:(0,react_table_namespaceObject.useReactTable)({...p,columns:a,initialState:_,pageCount:t,state:{pagination:S,sorting:M,columnVisibility:O,rowSelection:m,columnFilters:F},defaultColumn:{...p.defaultColumn,enableColumnFilter:!1},enableRowSelection:!0,onRowSelectionChange:d,onPaginationChange:q,onSortingChange:R,onColumnFiltersChange:v,onColumnVisibilityChange:j,getCoreRowModel:(0,react_table_namespaceObject.getCoreRowModel)(),getFilteredRowModel:(0,react_table_namespaceObject.getFilteredRowModel)(),getPaginationRowModel:(0,react_table_namespaceObject.getPaginationRowModel)(),getSortedRowModel:(0,react_table_namespaceObject.getSortedRowModel)(),getFacetedRowModel:(0,react_table_namespaceObject.getFacetedRowModel)(),getFacetedUniqueValues:(0,react_table_namespaceObject.getFacetedUniqueValues)(),getFacetedMinMaxValues:(0,react_table_namespaceObject.getFacetedMinMaxValues)(),manualPagination:!0,manualSorting:!0,manualFiltering:!0}),shallow:i,debounceMs:c,throttleMs:n}}for(var __webpack_i__ in exports.useDataTable=__webpack_exports__.useDataTable,__webpack_exports__)-1===["useDataTable"].indexOf(__webpack_i__)&&(exports[__webpack_i__]=__webpack_exports__[__webpack_i__]);Object.defineProperty(exports,"__esModule",{value:!0});
2
+ "use strict";let __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_require__={};__webpack_require__.d=(e,a)=>{for(var t in a)__webpack_require__.o(a,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:a[t]})},__webpack_require__.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{useDataTable:()=>useDataTable});let react_table_namespaceObject=require("@tanstack/react-table"),external_nuqs_namespaceObject=require("nuqs"),external_react_namespaceObject=require("react"),external_use_debounced_callback_cjs_namespaceObject=require("./use-debounced-callback.cjs"),parsers_cjs_namespaceObject=require("../lib/parsers.cjs"),PAGE_KEY="page",PER_PAGE_KEY="perPage",SORT_KEY="sort",ARRAY_SEPARATOR=",",DEBOUNCE_MS=300,THROTTLE_MS=50;function useDataTable(e){let{columns:a,pageCount:t=-1,initialState:_,history:r="replace",debounceMs:c=300,throttleMs:n=50,clearOnDefault:s=!1,enableAdvancedFilter:l=!1,scroll:o=!1,shallow:i=!0,startTransition:u,globalFilter:p,...b}=e,m=external_react_namespaceObject.useMemo(()=>({history:r,scroll:o,shallow:i,throttleMs:n,debounceMs:c,clearOnDefault:s,startTransition:u}),[r,o,i,n,c,s,u]),[d,O]=external_react_namespaceObject.useState(_?.rowSelection??{}),[j,g]=external_react_namespaceObject.useState(_?.columnVisibility??{}),[w,x]=(0,external_nuqs_namespaceObject.useQueryState)("page",external_nuqs_namespaceObject.parseAsInteger.withOptions(m).withDefault(1)),[f,S]=(0,external_nuqs_namespaceObject.useQueryState)("perPage",external_nuqs_namespaceObject.parseAsInteger.withOptions(m).withDefault(_?.pagination?.pageSize??10)),q=external_react_namespaceObject.useMemo(()=>({pageIndex:w-1,pageSize:f}),[w,f]),k=external_react_namespaceObject.useCallback(e=>{if("function"==typeof e){let a=e(q);x(a.pageIndex+1),S(a.pageSize)}else x(e.pageIndex+1),S(e.pageSize)},[q,x,S]),M=external_react_namespaceObject.useMemo(()=>new Set(a.map(e=>e.id).filter(Boolean)),[a]),[y,R]=(0,external_nuqs_namespaceObject.useQueryState)("sort",(0,parsers_cjs_namespaceObject.getSortingStateParser)(M).withOptions(m).withDefault(_?.sorting??[])),A=external_react_namespaceObject.useCallback(e=>{"function"==typeof e?R(e(y)):R(e)},[y,R]),P=external_react_namespaceObject.useMemo(()=>l?[]:a.filter(e=>e.enableColumnFilter),[a,l]),h=external_react_namespaceObject.useMemo(()=>l?{}:P.reduce((e,a)=>(a.meta?.options?e[a.id??""]=(0,external_nuqs_namespaceObject.parseAsArrayOf)(external_nuqs_namespaceObject.parseAsString,",").withOptions(m):e[a.id??""]=external_nuqs_namespaceObject.parseAsString.withOptions(m),e),{}),[P,m,l]),[C,T]=(0,external_nuqs_namespaceObject.useQueryStates)(h),D=(0,external_use_debounced_callback_cjs_namespaceObject.useDebouncedCallback)(e=>{x(1),T(e)},c),F=external_react_namespaceObject.useMemo(()=>l?[]:Object.entries(C).reduce((e,[a,t])=>{if(null!==t){let _=Array.isArray(t)?t:"string"==typeof t&&/[^a-zA-Z0-9]/.test(t)?t.split(/[^a-zA-Z0-9]+/).filter(Boolean):[t];e.push({id:a,value:_})}return e},[]),[C,l]),[E,v]=external_react_namespaceObject.useState(F),z=external_react_namespaceObject.useCallback(e=>{l||v(a=>{let t="function"==typeof e?e(a):e,_=t.reduce((e,a)=>(P.find(e=>e.id===a.id)&&(e[a.id]=a.value),e),{});for(let e of a)t.some(a=>a.id===e.id)||(_[e.id]=null);return D(_),t})},[D,P,l]);return{table:(0,react_table_namespaceObject.useReactTable)({...b,columns:a,initialState:_,pageCount:t,state:{pagination:q,sorting:y,columnVisibility:j,rowSelection:d,columnFilters:E,globalFilter:p},defaultColumn:{...b.defaultColumn,enableColumnFilter:!1},enableRowSelection:!0,onRowSelectionChange:O,onPaginationChange:k,onSortingChange:A,onColumnFiltersChange:z,onColumnVisibilityChange:g,getCoreRowModel:(0,react_table_namespaceObject.getCoreRowModel)(),getFilteredRowModel:(0,react_table_namespaceObject.getFilteredRowModel)(),getPaginationRowModel:(0,react_table_namespaceObject.getPaginationRowModel)(),getSortedRowModel:(0,react_table_namespaceObject.getSortedRowModel)(),getFacetedRowModel:(0,react_table_namespaceObject.getFacetedRowModel)(),getFacetedUniqueValues:(0,react_table_namespaceObject.getFacetedUniqueValues)(),getFacetedMinMaxValues:(0,react_table_namespaceObject.getFacetedMinMaxValues)(),manualPagination:!0,manualSorting:!0,manualFiltering:!0}),shallow:i,debounceMs:c,throttleMs:n}}for(var __webpack_i__ in exports.useDataTable=__webpack_exports__.useDataTable,__webpack_exports__)-1===["useDataTable"].indexOf(__webpack_i__)&&(exports[__webpack_i__]=__webpack_exports__[__webpack_i__]);Object.defineProperty(exports,"__esModule",{value:!0});
3
3
  //# sourceMappingURL=use-data-table.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks\\use-data-table.cjs","sources":["webpack://@gbmtech/aurora-ui/./src/hooks/use-data-table.ts"],"sourcesContent":["\r\n\r\nimport {\r\n type ColumnFiltersState,\r\n type PaginationState,\r\n type RowSelectionState,\r\n type SortingState,\r\n type TableOptions,\r\n type TableState,\r\n type Updater,\r\n type VisibilityState,\r\n getCoreRowModel,\r\n getFacetedMinMaxValues,\r\n getFacetedRowModel,\r\n getFacetedUniqueValues,\r\n getFilteredRowModel,\r\n getPaginationRowModel,\r\n getSortedRowModel,\r\n useReactTable,\r\n} from '@tanstack/react-table'\r\nimport {\r\n type Parser,\r\n type UseQueryStateOptions,\r\n parseAsArrayOf,\r\n parseAsInteger,\r\n parseAsString,\r\n useQueryState,\r\n useQueryStates,\r\n} from 'nuqs'\r\nimport * as React from 'react'\r\n\r\nimport { useDebouncedCallback } from '@/hooks/use-debounced-callback'\r\nimport { getSortingStateParser } from '@/lib/parsers'\r\nimport type { ExtendedColumnSort } from '@/types/data-table'\r\n\r\nconst PAGE_KEY = 'page'\r\nconst PER_PAGE_KEY = 'perPage'\r\nconst SORT_KEY = 'sort'\r\nconst ARRAY_SEPARATOR = ','\r\nconst DEBOUNCE_MS = 300\r\nconst THROTTLE_MS = 50\r\n\r\ninterface UseDataTableProps<TData>\r\n extends Omit<\r\n TableOptions<TData>,\r\n | 'state'\r\n | 'pageCount'\r\n | 'getCoreRowModel'\r\n | 'manualFiltering'\r\n | 'manualPagination'\r\n | 'manualSorting'\r\n >,\r\n Required<Pick<TableOptions<TData>, 'pageCount'>> {\r\n initialState?: Omit<Partial<TableState>, 'sorting'> & {\r\n sorting?: ExtendedColumnSort<TData>[]\r\n }\r\n history?: 'push' | 'replace'\r\n debounceMs?: number\r\n throttleMs?: number\r\n clearOnDefault?: boolean\r\n enableAdvancedFilter?: boolean\r\n scroll?: boolean\r\n shallow?: boolean\r\n startTransition?: React.TransitionStartFunction\r\n}\r\n\r\nexport function useDataTable<TData>(props: UseDataTableProps<TData>) {\r\n const {\r\n columns,\r\n pageCount = -1,\r\n initialState,\r\n history = 'replace',\r\n debounceMs = DEBOUNCE_MS,\r\n throttleMs = THROTTLE_MS,\r\n clearOnDefault = false,\r\n enableAdvancedFilter = false,\r\n scroll = false,\r\n shallow = true,\r\n startTransition,\r\n ...tableProps\r\n } = props\r\n\r\n const queryStateOptions = React.useMemo<\r\n Omit<UseQueryStateOptions<string>, 'parse'>\r\n >(\r\n () => ({\r\n history,\r\n scroll,\r\n shallow,\r\n throttleMs,\r\n debounceMs,\r\n clearOnDefault,\r\n startTransition,\r\n }),\r\n [\r\n history,\r\n scroll,\r\n shallow,\r\n throttleMs,\r\n debounceMs,\r\n clearOnDefault,\r\n startTransition,\r\n ]\r\n )\r\n\r\n const [rowSelection, setRowSelection] = React.useState<RowSelectionState>(\r\n initialState?.rowSelection ?? {}\r\n )\r\n const [columnVisibility, setColumnVisibility] =\r\n React.useState<VisibilityState>(initialState?.columnVisibility ?? {})\r\n\r\n const [page, setPage] = useQueryState(\r\n PAGE_KEY,\r\n parseAsInteger.withOptions(queryStateOptions).withDefault(1)\r\n )\r\n const [perPage, setPerPage] = useQueryState(\r\n PER_PAGE_KEY,\r\n parseAsInteger\r\n .withOptions(queryStateOptions)\r\n .withDefault(initialState?.pagination?.pageSize ?? 10)\r\n )\r\n\r\n const pagination: PaginationState = React.useMemo(() => {\r\n return {\r\n pageIndex: page - 1, // zero-based index -> one-based index\r\n pageSize: perPage,\r\n }\r\n }, [page, perPage])\r\n\r\n const onPaginationChange = React.useCallback(\r\n (updaterOrValue: Updater<PaginationState>) => {\r\n if (typeof updaterOrValue === 'function') {\r\n const newPagination = updaterOrValue(pagination)\r\n void setPage(newPagination.pageIndex + 1)\r\n void setPerPage(newPagination.pageSize)\r\n } else {\r\n void setPage(updaterOrValue.pageIndex + 1)\r\n void setPerPage(updaterOrValue.pageSize)\r\n }\r\n },\r\n [pagination, setPage, setPerPage]\r\n )\r\n\r\n const columnIds = React.useMemo(() => {\r\n return new Set(columns.map(column => column.id).filter(Boolean) as string[])\r\n }, [columns])\r\n\r\n const [sorting, setSorting] = useQueryState(\r\n SORT_KEY,\r\n getSortingStateParser<TData>(columnIds)\r\n .withOptions(queryStateOptions)\r\n .withDefault(initialState?.sorting ?? [])\r\n )\r\n\r\n const onSortingChange = React.useCallback(\r\n (updaterOrValue: Updater<SortingState>) => {\r\n if (typeof updaterOrValue === 'function') {\r\n const newSorting = updaterOrValue(sorting)\r\n setSorting(newSorting as ExtendedColumnSort<TData>[])\r\n } else {\r\n setSorting(updaterOrValue as ExtendedColumnSort<TData>[])\r\n }\r\n },\r\n [sorting, setSorting]\r\n )\r\n\r\n const filterableColumns = React.useMemo(() => {\r\n if (enableAdvancedFilter) return []\r\n\r\n return columns.filter(column => column.enableColumnFilter)\r\n }, [columns, enableAdvancedFilter])\r\n\r\n const filterParsers = React.useMemo(() => {\r\n if (enableAdvancedFilter) return {}\r\n\r\n return filterableColumns.reduce<\r\n Record<string, Parser<string> | Parser<string[]>>\r\n >((acc, column) => {\r\n if (column.meta?.options) {\r\n acc[column.id ?? ''] = parseAsArrayOf(\r\n parseAsString,\r\n ARRAY_SEPARATOR\r\n ).withOptions(queryStateOptions)\r\n } else {\r\n acc[column.id ?? ''] = parseAsString.withOptions(queryStateOptions)\r\n }\r\n return acc\r\n }, {})\r\n }, [filterableColumns, queryStateOptions, enableAdvancedFilter])\r\n\r\n const [filterValues, setFilterValues] = useQueryStates(filterParsers)\r\n\r\n const debouncedSetFilterValues = useDebouncedCallback(\r\n (values: typeof filterValues) => {\r\n void setPage(1)\r\n void setFilterValues(values)\r\n },\r\n debounceMs\r\n )\r\n\r\n const initialColumnFilters: ColumnFiltersState = React.useMemo(() => {\r\n if (enableAdvancedFilter) return []\r\n\r\n return Object.entries(filterValues).reduce<ColumnFiltersState>(\r\n (filters, [key, value]) => {\r\n if (value !== null) {\r\n const processedValue = Array.isArray(value)\r\n ? value\r\n : typeof value === 'string' && /[^a-zA-Z0-9]/.test(value)\r\n ? value.split(/[^a-zA-Z0-9]+/).filter(Boolean)\r\n : [value]\r\n\r\n filters.push({\r\n id: key,\r\n value: processedValue,\r\n })\r\n }\r\n return filters\r\n },\r\n []\r\n )\r\n }, [filterValues, enableAdvancedFilter])\r\n\r\n const [columnFilters, setColumnFilters] =\r\n React.useState<ColumnFiltersState>(initialColumnFilters)\r\n\r\n const onColumnFiltersChange = React.useCallback(\r\n (updaterOrValue: Updater<ColumnFiltersState>) => {\r\n if (enableAdvancedFilter) return\r\n\r\n setColumnFilters(prev => {\r\n const next =\r\n typeof updaterOrValue === 'function'\r\n ? updaterOrValue(prev)\r\n : updaterOrValue\r\n\r\n const filterUpdates = next.reduce<\r\n Record<string, string | string[] | null>\r\n >((acc, filter) => {\r\n if (filterableColumns.find(column => column.id === filter.id)) {\r\n acc[filter.id] = filter.value as string | string[]\r\n }\r\n return acc\r\n }, {})\r\n\r\n for (const prevFilter of prev) {\r\n if (!next.some(filter => filter.id === prevFilter.id)) {\r\n filterUpdates[prevFilter.id] = null\r\n }\r\n }\r\n\r\n debouncedSetFilterValues(filterUpdates)\r\n return next\r\n })\r\n },\r\n [debouncedSetFilterValues, filterableColumns, enableAdvancedFilter]\r\n )\r\n\r\n const table = useReactTable({\r\n ...tableProps,\r\n columns,\r\n initialState,\r\n pageCount,\r\n state: {\r\n pagination,\r\n sorting,\r\n columnVisibility,\r\n rowSelection,\r\n columnFilters,\r\n },\r\n defaultColumn: {\r\n ...tableProps.defaultColumn,\r\n enableColumnFilter: false,\r\n },\r\n enableRowSelection: true,\r\n onRowSelectionChange: setRowSelection,\r\n onPaginationChange,\r\n onSortingChange,\r\n onColumnFiltersChange,\r\n onColumnVisibilityChange: setColumnVisibility,\r\n getCoreRowModel: getCoreRowModel(),\r\n getFilteredRowModel: getFilteredRowModel(),\r\n getPaginationRowModel: getPaginationRowModel(),\r\n getSortedRowModel: getSortedRowModel(),\r\n getFacetedRowModel: getFacetedRowModel(),\r\n getFacetedUniqueValues: getFacetedUniqueValues(),\r\n getFacetedMinMaxValues: getFacetedMinMaxValues(),\r\n manualPagination: true,\r\n manualSorting: true,\r\n manualFiltering: true,\r\n })\r\n\r\n return { table, shallow, debounceMs, throttleMs }\r\n}\r\n"],"names":["PAGE_KEY","PER_PAGE_KEY","SORT_KEY","ARRAY_SEPARATOR","DEBOUNCE_MS","THROTTLE_MS","useDataTable","props","columns","pageCount","initialState","history","debounceMs","throttleMs","clearOnDefault","enableAdvancedFilter","scroll","shallow","startTransition","tableProps","queryStateOptions","React","rowSelection","setRowSelection","columnVisibility","setColumnVisibility","page","setPage","useQueryState","parseAsInteger","perPage","setPerPage","pagination","onPaginationChange","updaterOrValue","newPagination","columnIds","Set","column","Boolean","sorting","setSorting","getSortingStateParser","onSortingChange","filterableColumns","filterParsers","acc","parseAsArrayOf","parseAsString","filterValues","setFilterValues","useQueryStates","debouncedSetFilterValues","useDebouncedCallback","values","initialColumnFilters","Object","filters","key","value","processedValue","Array","columnFilters","setColumnFilters","onColumnFiltersChange","prev","next","filterUpdates","filter","prevFilter","table","useReactTable","getCoreRowModel","getFilteredRowModel","getPaginationRowModel","getSortedRowModel","getFacetedRowModel","getFacetedUniqueValues","getFacetedMinMaxValues"],"mappings":";imCAmCMA,SAAW,OACXC,aAAe,UACfC,SAAW,OACXC,gBAAkB,IAClBC,YAAc,IACdC,YAAc,GA0Bb,SAASC,aAAoBC,CAA+B,EACjE,GAAM,CACJC,QAAAA,CAAO,CACPC,UAAAA,EAAY,EAAE,CACdC,aAAAA,CAAY,CACZC,QAAAA,EAAU,SAAS,CACnBC,WAAAA,EAjCgB,GAiCQ,CACxBC,WAAAA,EAjCgB,EAiCQ,CACxBC,eAAAA,EAAiB,EAAK,CACtBC,qBAAAA,EAAuB,EAAK,CAC5BC,OAAAA,EAAS,EAAK,CACdC,QAAAA,EAAU,EAAI,CACdC,gBAAAA,CAAe,CACf,GAAGC,EACJ,CAAGZ,EAEEa,EAAoBC,+BAAAA,OAAa,CAGrC,IAAO,EACLV,QAAAA,EACAK,OAAAA,EACAC,QAAAA,EACAJ,WAAAA,EACAD,WAAAA,EACAE,eAAAA,EACAI,gBAAAA,CACF,GACA,CACEP,EACAK,EACAC,EACAJ,EACAD,EACAE,EACAI,EACD,EAGG,CAACI,EAAcC,EAAgB,CAAGF,+BAAAA,QAAc,CACpDX,GAAc,cAAgB,CAAC,GAE3B,CAACc,EAAkBC,EAAoB,CAC3CJ,+BAAAA,QAAc,CAAkBX,GAAc,kBAAoB,CAAC,GAE/D,CAACgB,EAAMC,EAAQ,CAAGC,GAAAA,8BAAAA,aAAAA,EA5ET,OA8EbC,8BAAAA,cAAAA,CAAAA,WAA0B,CAACT,GAAmB,WAAW,CAAC,IAEtD,CAACU,EAASC,EAAW,CAAGH,GAAAA,8BAAAA,aAAAA,EA/EX,UAiFjBC,8BAAAA,cAAAA,CAAAA,WACc,CAACT,GACZ,WAAW,CAACV,GAAc,YAAY,UAAY,KAGjDsB,EAA8BX,+BAAAA,OAAa,CAAC,IACzC,EACL,UAAWK,EAAO,EAClB,SAAUI,CACZ,GACC,CAACJ,EAAMI,EAAQ,EAEZG,EAAqBZ,+BAAAA,WAAiB,CAC1C,IACE,GAAI,mBAAOa,EAA+B,CACxC,IAAMC,EAAgBD,EAAeF,GAChCL,EAAQQ,EAAc,SAAS,CAAG,GAClCJ,EAAWI,EAAc,QAAQ,CACxC,MACOR,EAAQO,EAAe,SAAS,CAAG,GACnCH,EAAWG,EAAe,QAAQ,CAE3C,EACA,CAACF,EAAYL,EAASI,EAAW,EAG7BK,EAAYf,+BAAAA,OAAa,CAAC,IACvB,IAAIgB,IAAI7B,EAAQ,GAAG,CAAC8B,GAAUA,EAAO,EAAE,EAAE,MAAM,CAACC,UACtD,CAAC/B,EAAQ,EAEN,CAACgC,EAASC,EAAW,CAAGb,GAAAA,8BAAAA,aAAAA,EA9Gf,OAgHbc,GAAAA,4BAAAA,qBAAAA,EAA6BN,GAC1B,WAAW,CAAChB,GACZ,WAAW,CAACV,GAAc,SAAW,EAAE,GAGtCiC,EAAkBtB,+BAAAA,WAAiB,CACvC,IACM,mBAAOa,EAETO,EADmBP,EAAeM,IAGlCC,EAAWP,EAEf,EACA,CAACM,EAASC,EAAW,EAGjBG,EAAoBvB,+BAAAA,OAAa,CAAC,IACtC,EAAiC,EAAE,CAE5Bb,EAAQ,MAAM,CAAC8B,GAAUA,EAAO,kBAAkB,EACxD,CAAC9B,EAASO,EAAqB,EAE5B8B,EAAgBxB,+BAAAA,OAAa,CAAC,IAClC,EAAiC,CAAC,EAE3BuB,EAAkB,MAAM,CAE7B,CAACE,EAAKR,KACFA,EAAO,IAAI,EAAE,QACfQ,CAAG,CAACR,EAAO,EAAE,EAAI,GAAG,CAAGS,GAAAA,8BAAAA,cAAAA,EACrBC,8BAAAA,aAAaA,CA9IC,KAgJd,WAAW,CAAC5B,GAEd0B,CAAG,CAACR,EAAO,EAAE,EAAI,GAAG,CAAGU,8BAAAA,aAAAA,CAAAA,WAAyB,CAAC5B,GAE5C0B,GACN,CAAC,GACH,CAACF,EAAmBxB,EAAmBL,EAAqB,EAEzD,CAACkC,EAAcC,EAAgB,CAAGC,GAAAA,8BAAAA,cAAAA,EAAeN,GAEjDO,EAA2BC,GAAAA,oDAAAA,oBAAAA,EAC/B,IACO1B,EAAQ,GACRuB,EAAgBI,EACvB,EACA1C,GAGI2C,EAA2ClC,+BAAAA,OAAa,CAAC,IAC7D,EAAiC,EAAE,CAE5BmC,OAAO,OAAO,CAACP,GAAc,MAAM,CACxC,CAACQ,EAAS,CAACC,EAAKC,EAAM,IACpB,GAAIA,OAAAA,EAAgB,CAClB,IAAMC,EAAiBC,MAAM,OAAO,CAACF,GACjCA,EACA,iBAAOA,GAAsB,eAAe,IAAI,CAACA,GAC/CA,EAAM,KAAK,CAAC,iBAAiB,MAAM,CAACpB,SACpC,CAACoB,EAAM,CAEbF,EAAQ,IAAI,CAAC,CACX,GAAIC,EACJ,MAAOE,CACT,EACF,CACA,OAAOH,CACT,EACA,EAAE,EAEH,CAACR,EAAclC,EAAqB,EAEjC,CAAC+C,EAAeC,EAAiB,CACrC1C,+BAAAA,QAAc,CAAqBkC,GAE/BS,EAAwB3C,+BAAAA,WAAiB,CAC7C,IACMN,GAEJgD,EAAiBE,IACf,IAAMC,EACJ,mBAAOhC,EACHA,EAAe+B,GACf/B,EAEAiC,EAAgBD,EAAK,MAAM,CAE/B,CAACpB,EAAKsB,KACFxB,EAAkB,IAAI,CAACN,GAAUA,EAAO,EAAE,GAAK8B,EAAO,EAAE,GAC1DtB,CAAAA,CAAG,CAACsB,EAAO,EAAE,CAAC,CAAGA,EAAO,KAAK,EAExBtB,GACN,CAAC,GAEJ,IAAK,IAAMuB,KAAcJ,EACnB,EAAM,IAAI,CAACG,GAAUA,EAAO,EAAE,GAAKC,EAAW,EAAE,GAClDF,CAAAA,CAAa,CAACE,EAAW,EAAE,CAAC,CAAG,IAAG,EAKtC,OADAjB,EAAyBe,GAClBD,CACT,EACF,EACA,CAACd,EAA0BR,EAAmB7B,EAAqB,EAqCrE,MAAO,CAAEuD,MAlCKC,GAAAA,4BAAAA,aAAAA,EAAc,CAC1B,GAAGpD,CAAU,CACbX,QAAAA,EACAE,aAAAA,EACAD,UAAAA,EACA,MAAO,CACLuB,WAAAA,EACAQ,QAAAA,EACAhB,iBAAAA,EACAF,aAAAA,EACAwC,cAAAA,CACF,EACA,cAAe,CACb,GAAG3C,EAAW,aAAa,CAC3B,mBAAoB,EACtB,EACA,mBAAoB,GACpB,qBAAsBI,EACtBU,mBAAAA,EACAU,gBAAAA,EACAqB,sBAAAA,EACA,yBAA0BvC,EAC1B,gBAAiB+C,GAAAA,4BAAAA,eAAAA,IACjB,oBAAqBC,GAAAA,4BAAAA,mBAAAA,IACrB,sBAAuBC,GAAAA,4BAAAA,qBAAAA,IACvB,kBAAmBC,GAAAA,4BAAAA,iBAAAA,IACnB,mBAAoBC,GAAAA,4BAAAA,kBAAAA,IACpB,uBAAwBC,GAAAA,4BAAAA,sBAAAA,IACxB,uBAAwBC,GAAAA,4BAAAA,sBAAAA,IACxB,iBAAkB,GAClB,cAAe,GACf,gBAAiB,EACnB,GAEgB7D,QAAAA,EAASL,WAAAA,EAAYC,WAAAA,CAAW,CAClD,C"}
1
+ {"version":3,"file":"hooks\\use-data-table.cjs","sources":["webpack://@gbmtech/aurora-ui/./src/hooks/use-data-table.ts"],"sourcesContent":["\r\n\r\nimport {\r\n type ColumnFiltersState,\r\n type PaginationState,\r\n type RowSelectionState,\r\n type SortingState,\r\n type TableOptions,\r\n type TableState,\r\n type Updater,\r\n type VisibilityState,\r\n getCoreRowModel,\r\n getFacetedMinMaxValues,\r\n getFacetedRowModel,\r\n getFacetedUniqueValues,\r\n getFilteredRowModel,\r\n getPaginationRowModel,\r\n getSortedRowModel,\r\n useReactTable,\r\n} from '@tanstack/react-table'\r\nimport {\r\n type Parser,\r\n type UseQueryStateOptions,\r\n parseAsArrayOf,\r\n parseAsInteger,\r\n parseAsString,\r\n useQueryState,\r\n useQueryStates,\r\n} from 'nuqs'\r\nimport * as React from 'react'\r\n\r\nimport { useDebouncedCallback } from '@/hooks/use-debounced-callback'\r\nimport { getSortingStateParser } from '@/lib/parsers'\r\nimport type { ExtendedColumnSort } from '@/types/data-table'\r\n\r\nconst PAGE_KEY = 'page'\r\nconst PER_PAGE_KEY = 'perPage'\r\nconst SORT_KEY = 'sort'\r\nconst ARRAY_SEPARATOR = ','\r\nconst DEBOUNCE_MS = 300\r\nconst THROTTLE_MS = 50\r\n\r\ninterface UseDataTableProps<TData>\r\n extends Omit<\r\n TableOptions<TData>,\r\n | 'state'\r\n | 'pageCount'\r\n | 'getCoreRowModel'\r\n | 'manualFiltering'\r\n | 'manualPagination'\r\n | 'manualSorting'\r\n >,\r\n Required<Pick<TableOptions<TData>, 'pageCount'>> {\r\n initialState?: Omit<Partial<TableState>, 'sorting'> & {\r\n sorting?: ExtendedColumnSort<TData>[]\r\n }\r\n history?: 'push' | 'replace'\r\n debounceMs?: number\r\n throttleMs?: number\r\n clearOnDefault?: boolean\r\n enableAdvancedFilter?: boolean\r\n scroll?: boolean\r\n shallow?: boolean\r\n startTransition?: React.TransitionStartFunction\r\n globalFilter?: string | null\r\n}\r\n\r\nexport function useDataTable<TData>(props: UseDataTableProps<TData>) {\r\n const {\r\n columns,\r\n pageCount = -1,\r\n initialState,\r\n history = 'replace',\r\n debounceMs = DEBOUNCE_MS,\r\n throttleMs = THROTTLE_MS,\r\n clearOnDefault = false,\r\n enableAdvancedFilter = false,\r\n scroll = false,\r\n shallow = true,\r\n startTransition,\r\n globalFilter,\r\n ...tableProps\r\n } = props\r\n\r\n const queryStateOptions = React.useMemo<\r\n Omit<UseQueryStateOptions<string>, 'parse'>\r\n >(\r\n () => ({\r\n history,\r\n scroll,\r\n shallow,\r\n throttleMs,\r\n debounceMs,\r\n clearOnDefault,\r\n startTransition,\r\n }),\r\n [\r\n history,\r\n scroll,\r\n shallow,\r\n throttleMs,\r\n debounceMs,\r\n clearOnDefault,\r\n startTransition,\r\n ]\r\n )\r\n\r\n const [rowSelection, setRowSelection] = React.useState<RowSelectionState>(\r\n initialState?.rowSelection ?? {}\r\n )\r\n const [columnVisibility, setColumnVisibility] =\r\n React.useState<VisibilityState>(initialState?.columnVisibility ?? {})\r\n\r\n const [page, setPage] = useQueryState(\r\n PAGE_KEY,\r\n parseAsInteger.withOptions(queryStateOptions).withDefault(1)\r\n )\r\n const [perPage, setPerPage] = useQueryState(\r\n PER_PAGE_KEY,\r\n parseAsInteger\r\n .withOptions(queryStateOptions)\r\n .withDefault(initialState?.pagination?.pageSize ?? 10)\r\n )\r\n\r\n const pagination: PaginationState = React.useMemo(() => {\r\n return {\r\n pageIndex: page - 1, // zero-based index -> one-based index\r\n pageSize: perPage,\r\n }\r\n }, [page, perPage])\r\n\r\n const onPaginationChange = React.useCallback(\r\n (updaterOrValue: Updater<PaginationState>) => {\r\n if (typeof updaterOrValue === 'function') {\r\n const newPagination = updaterOrValue(pagination)\r\n void setPage(newPagination.pageIndex + 1)\r\n void setPerPage(newPagination.pageSize)\r\n } else {\r\n void setPage(updaterOrValue.pageIndex + 1)\r\n void setPerPage(updaterOrValue.pageSize)\r\n }\r\n },\r\n [pagination, setPage, setPerPage]\r\n )\r\n\r\n const columnIds = React.useMemo(() => {\r\n return new Set(columns.map(column => column.id).filter(Boolean) as string[])\r\n }, [columns])\r\n\r\n const [sorting, setSorting] = useQueryState(\r\n SORT_KEY,\r\n getSortingStateParser<TData>(columnIds)\r\n .withOptions(queryStateOptions)\r\n .withDefault(initialState?.sorting ?? [])\r\n )\r\n\r\n const onSortingChange = React.useCallback(\r\n (updaterOrValue: Updater<SortingState>) => {\r\n if (typeof updaterOrValue === 'function') {\r\n const newSorting = updaterOrValue(sorting)\r\n setSorting(newSorting as ExtendedColumnSort<TData>[])\r\n } else {\r\n setSorting(updaterOrValue as ExtendedColumnSort<TData>[])\r\n }\r\n },\r\n [sorting, setSorting]\r\n )\r\n\r\n const filterableColumns = React.useMemo(() => {\r\n if (enableAdvancedFilter) return []\r\n\r\n return columns.filter(column => column.enableColumnFilter)\r\n }, [columns, enableAdvancedFilter])\r\n\r\n const filterParsers = React.useMemo(() => {\r\n if (enableAdvancedFilter) return {}\r\n\r\n return filterableColumns.reduce<\r\n Record<string, Parser<string> | Parser<string[]>>\r\n >((acc, column) => {\r\n if (column.meta?.options) {\r\n acc[column.id ?? ''] = parseAsArrayOf(\r\n parseAsString,\r\n ARRAY_SEPARATOR\r\n ).withOptions(queryStateOptions)\r\n } else {\r\n acc[column.id ?? ''] = parseAsString.withOptions(queryStateOptions)\r\n }\r\n return acc\r\n }, {})\r\n }, [filterableColumns, queryStateOptions, enableAdvancedFilter])\r\n\r\n const [filterValues, setFilterValues] = useQueryStates(filterParsers)\r\n\r\n const debouncedSetFilterValues = useDebouncedCallback(\r\n (values: typeof filterValues) => {\r\n void setPage(1)\r\n void setFilterValues(values)\r\n },\r\n debounceMs\r\n )\r\n\r\n const initialColumnFilters: ColumnFiltersState = React.useMemo(() => {\r\n if (enableAdvancedFilter) return []\r\n\r\n return Object.entries(filterValues).reduce<ColumnFiltersState>(\r\n (filters, [key, value]) => {\r\n if (value !== null) {\r\n const processedValue = Array.isArray(value)\r\n ? value\r\n : typeof value === 'string' && /[^a-zA-Z0-9]/.test(value)\r\n ? value.split(/[^a-zA-Z0-9]+/).filter(Boolean)\r\n : [value]\r\n\r\n filters.push({\r\n id: key,\r\n value: processedValue,\r\n })\r\n }\r\n return filters\r\n },\r\n []\r\n )\r\n }, [filterValues, enableAdvancedFilter])\r\n\r\n const [columnFilters, setColumnFilters] =\r\n React.useState<ColumnFiltersState>(initialColumnFilters)\r\n\r\n const onColumnFiltersChange = React.useCallback(\r\n (updaterOrValue: Updater<ColumnFiltersState>) => {\r\n if (enableAdvancedFilter) return\r\n\r\n setColumnFilters(prev => {\r\n const next =\r\n typeof updaterOrValue === 'function'\r\n ? updaterOrValue(prev)\r\n : updaterOrValue\r\n\r\n const filterUpdates = next.reduce<\r\n Record<string, string | string[] | null>\r\n >((acc, filter) => {\r\n if (filterableColumns.find(column => column.id === filter.id)) {\r\n acc[filter.id] = filter.value as string | string[]\r\n }\r\n return acc\r\n }, {})\r\n\r\n for (const prevFilter of prev) {\r\n if (!next.some(filter => filter.id === prevFilter.id)) {\r\n filterUpdates[prevFilter.id] = null\r\n }\r\n }\r\n\r\n debouncedSetFilterValues(filterUpdates)\r\n return next\r\n })\r\n },\r\n [debouncedSetFilterValues, filterableColumns, enableAdvancedFilter]\r\n )\r\n\r\n const table = useReactTable({\r\n ...tableProps,\r\n columns,\r\n initialState,\r\n pageCount,\r\n state: {\r\n pagination,\r\n sorting,\r\n columnVisibility,\r\n rowSelection,\r\n columnFilters,\r\n globalFilter,\r\n },\r\n defaultColumn: {\r\n ...tableProps.defaultColumn,\r\n enableColumnFilter: false,\r\n },\r\n enableRowSelection: true,\r\n onRowSelectionChange: setRowSelection,\r\n onPaginationChange,\r\n onSortingChange,\r\n onColumnFiltersChange,\r\n onColumnVisibilityChange: setColumnVisibility,\r\n getCoreRowModel: getCoreRowModel(),\r\n getFilteredRowModel: getFilteredRowModel(),\r\n getPaginationRowModel: getPaginationRowModel(),\r\n getSortedRowModel: getSortedRowModel(),\r\n getFacetedRowModel: getFacetedRowModel(),\r\n getFacetedUniqueValues: getFacetedUniqueValues(),\r\n getFacetedMinMaxValues: getFacetedMinMaxValues(),\r\n manualPagination: true,\r\n manualSorting: true,\r\n manualFiltering: true,\r\n })\r\n\r\n return { table, shallow, debounceMs, throttleMs }\r\n}\r\n"],"names":["PAGE_KEY","PER_PAGE_KEY","SORT_KEY","ARRAY_SEPARATOR","DEBOUNCE_MS","THROTTLE_MS","useDataTable","props","columns","pageCount","initialState","history","debounceMs","throttleMs","clearOnDefault","enableAdvancedFilter","scroll","shallow","startTransition","globalFilter","tableProps","queryStateOptions","React","rowSelection","setRowSelection","columnVisibility","setColumnVisibility","page","setPage","useQueryState","parseAsInteger","perPage","setPerPage","pagination","onPaginationChange","updaterOrValue","newPagination","columnIds","Set","column","Boolean","sorting","setSorting","getSortingStateParser","onSortingChange","filterableColumns","filterParsers","acc","parseAsArrayOf","parseAsString","filterValues","setFilterValues","useQueryStates","debouncedSetFilterValues","useDebouncedCallback","values","initialColumnFilters","Object","filters","key","value","processedValue","Array","columnFilters","setColumnFilters","onColumnFiltersChange","prev","next","filterUpdates","filter","prevFilter","table","useReactTable","getCoreRowModel","getFilteredRowModel","getPaginationRowModel","getSortedRowModel","getFacetedRowModel","getFacetedUniqueValues","getFacetedMinMaxValues"],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  'use client'
2
- import*as o from"react/jsx-runtime";import*as s from"@phosphor-icons/react";import*as e from"../button.js";import*as a from"../command.js";import*as r from"../popover.js";import*as i from"../../lib/utils.js";import*as l from"react";function n({table:n}){let t=l.useMemo(()=>n.getAllColumns().filter(o=>void 0!==o.accessorFn&&o.getCanHide()),[n]);return(0,o.jsxs)(r.Popover,{children:[(0,o.jsx)(r.PopoverTrigger,{asChild:!0,children:(0,o.jsxs)(e.Button,{"aria-label":"Toggle columns",role:"combobox",variant:"secondary",size:"xs",className:"ml-auto hidden lg:flex",children:[(0,o.jsx)(s.SlidersHorizontal,{}),"Ver",(0,o.jsx)(s.CaretUpDown,{className:"ml-auto opacity-50"})]})}),(0,o.jsx)(r.PopoverContent,{align:"end",className:"w-44 p-0",children:(0,o.jsxs)(a.Command,{children:[(0,o.jsx)(a.CommandInput,{placeholder:"Buscar colunas..."}),(0,o.jsxs)(a.CommandList,{children:[(0,o.jsx)(a.CommandEmpty,{children:"No columns found."}),(0,o.jsx)(a.CommandGroup,{children:t.map(e=>(0,o.jsxs)(a.CommandItem,{onSelect:()=>e.toggleVisibility(!e.getIsVisible()),children:[(0,o.jsx)("span",{className:"truncate",children:e.columnDef.meta?.label??e.id}),(0,o.jsx)(s.Check,{className:(0,i.cn)("ml-auto size-4 shrink-0",e.getIsVisible()?"opacity-100":"opacity-0")})]},e.id))})]})]})})]})}export{n as DataTableViewOptions};
2
+ import*as e from"react/jsx-runtime";import*as o from"@phosphor-icons/react";import*as s from"../button.js";import*as a from"../command.js";import*as r from"../popover.js";import*as i from"../../lib/utils.js";import*as n from"react";function l({table:l}){let t=n.useMemo(()=>l.getAllColumns().filter(e=>void 0!==e.accessorFn&&e.getCanHide()),[l]);return(0,e.jsxs)(r.Popover,{children:[(0,e.jsx)(r.PopoverTrigger,{asChild:!0,children:(0,e.jsxs)(s.Button,{"aria-label":"Toggle columns",role:"combobox",variant:"secondary",size:"xs",className:"ml-auto hidden lg:flex",children:[(0,e.jsx)(o.SlidersHorizontal,{}),"Ver",(0,e.jsx)(o.CaretUpDown,{className:"ml-auto opacity-50"})]})}),(0,e.jsx)(r.PopoverContent,{align:"end",className:"w-44 p-0",children:(0,e.jsxs)(a.Command,{children:[(0,e.jsx)(a.CommandInput,{placeholder:"Buscar colunas..."}),(0,e.jsxs)(a.CommandList,{children:[(0,e.jsx)(a.CommandEmpty,{children:"Nenhuma coluna encontrada."}),(0,e.jsx)(a.CommandGroup,{children:t.map(s=>(0,e.jsxs)(a.CommandItem,{onSelect:()=>s.toggleVisibility(!s.getIsVisible()),children:[(0,e.jsx)("span",{className:"truncate",children:s.columnDef.meta?.label??s.id}),(0,e.jsx)(o.Check,{className:(0,i.cn)("ml-auto size-4 shrink-0",s.getIsVisible()?"opacity-100":"opacity-0")})]},s.id))})]})]})})]})}export{l as DataTableViewOptions};
3
3
  //# sourceMappingURL=data-table-view-options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"components\\data-table\\data-table-view-options.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/data-table/data-table-view-options.tsx"],"sourcesContent":["\r\n\r\nimport { CaretUpDown, Check, SlidersHorizontal } from '@phosphor-icons/react'\r\nimport type { Table } from '@tanstack/react-table'\r\n\r\nimport { Button } from '@/components/button'\r\nimport {\r\n Command,\r\n CommandEmpty,\r\n CommandGroup,\r\n CommandInput,\r\n CommandItem,\r\n CommandList,\r\n} from '@/components/command'\r\nimport { Popover, PopoverContent, PopoverTrigger } from '@/components/popover'\r\nimport { cn } from '@/lib/utils'\r\nimport * as React from 'react'\r\n\r\ninterface DataTableViewOptionsProps<TData> {\r\n table: Table<TData>\r\n}\r\n\r\nexport function DataTableViewOptions<TData>({\r\n table,\r\n}: DataTableViewOptionsProps<TData>) {\r\n const columns = React.useMemo(\r\n () =>\r\n table\r\n .getAllColumns()\r\n .filter(\r\n column =>\r\n typeof column.accessorFn !== 'undefined' && column.getCanHide()\r\n ),\r\n [table]\r\n )\r\n\r\n return (\r\n <Popover>\r\n <PopoverTrigger asChild>\r\n <Button\r\n aria-label=\"Toggle columns\"\r\n role=\"combobox\"\r\n variant=\"secondary\"\r\n size=\"xs\"\r\n className=\"ml-auto hidden lg:flex\"\r\n >\r\n <SlidersHorizontal />\r\n Ver\r\n <CaretUpDown className=\"ml-auto opacity-50\" />\r\n </Button>\r\n </PopoverTrigger>\r\n <PopoverContent align=\"end\" className=\"w-44 p-0\">\r\n <Command>\r\n <CommandInput placeholder=\"Buscar colunas...\" />\r\n <CommandList>\r\n <CommandEmpty>No columns found.</CommandEmpty>\r\n <CommandGroup>\r\n {columns.map(column => (\r\n <CommandItem\r\n key={column.id}\r\n onSelect={() =>\r\n column.toggleVisibility(!column.getIsVisible())\r\n }\r\n >\r\n <span className=\"truncate\">\r\n {column.columnDef.meta?.label ?? column.id}\r\n </span>\r\n <Check\r\n className={cn(\r\n 'ml-auto size-4 shrink-0',\r\n column.getIsVisible() ? 'opacity-100' : 'opacity-0'\r\n )}\r\n />\r\n </CommandItem>\r\n ))}\r\n </CommandGroup>\r\n </CommandList>\r\n </Command>\r\n </PopoverContent>\r\n </Popover>\r\n )\r\n}\r\n"],"names":["DataTableViewOptions","table","columns","React","column","Popover","PopoverTrigger","Button","SlidersHorizontal","CaretUpDown","PopoverContent","Command","CommandInput","CommandList","CommandEmpty","CommandGroup","CommandItem","Check","cn"],"mappings":";wOAsBO,SAASA,EAA4B,CAC1CC,MAAAA,CAAK,CAC4B,EACjC,IAAMC,EAAUC,EAAAA,OAAa,CAC3B,IACEF,EACG,aAAa,GACb,MAAM,CACLG,GACE,SAAOA,EAAO,UAAU,EAAoBA,EAAO,UAAU,IAErE,CAACH,EAAM,EAGT,MACE,WAACI,EAAAA,OAAOA,CAAAA,C,UACN,UAACC,EAAAA,cAAcA,CAAAA,CAAC,QAAO,G,SACrB,WAACC,EAAAA,MAAMA,CAAAA,CACL,aAAW,iBACX,KAAK,WACL,QAAQ,YACR,KAAK,KACL,UAAU,yB,UAEV,UAACC,EAAAA,iBAAiBA,CAAAA,CAAAA,GAAG,MAErB,UAACC,EAAAA,WAAWA,CAAAA,CAAC,UAAU,oB,QAG3B,UAACC,EAAAA,cAAcA,CAAAA,CAAC,MAAM,MAAM,UAAU,W,SACpC,WAACC,EAAAA,OAAOA,CAAAA,C,UACN,UAACC,EAAAA,YAAYA,CAAAA,CAAC,YAAY,mB,GAC1B,WAACC,EAAAA,WAAWA,CAAAA,C,UACV,UAACC,EAAAA,YAAYA,CAAAA,C,SAAC,mB,GACd,UAACC,EAAAA,YAAYA,CAAAA,C,SACVb,EAAQ,GAAG,CAACE,GACX,WAACY,EAAAA,WAAWA,CAAAA,CAEV,SAAU,IACRZ,EAAO,gBAAgB,CAAC,CAACA,EAAO,YAAY,I,UAG9C,UAAC,QAAK,UAAU,W,SACbA,EAAO,SAAS,CAAC,IAAI,EAAE,OAASA,EAAO,EAAE,GAE5C,UAACa,EAAAA,KAAKA,CAAAA,CACJ,UAAWC,GAAAA,EAAAA,EAAAA,EACT,0BACAd,EAAO,YAAY,GAAK,cAAgB,Y,KAXvCA,EAAO,EAAE,E,aAsBhC,Q"}
1
+ {"version":3,"file":"components\\data-table\\data-table-view-options.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/data-table/data-table-view-options.tsx"],"sourcesContent":["\r\n\r\nimport { CaretUpDown, Check, SlidersHorizontal } from '@phosphor-icons/react'\r\nimport type { Table } from '@tanstack/react-table'\r\n\r\nimport { Button } from '@/components/button'\r\nimport {\r\n Command,\r\n CommandEmpty,\r\n CommandGroup,\r\n CommandInput,\r\n CommandItem,\r\n CommandList,\r\n} from '@/components/command'\r\nimport { Popover, PopoverContent, PopoverTrigger } from '@/components/popover'\r\nimport { cn } from '@/lib/utils'\r\nimport * as React from 'react'\r\n\r\ninterface DataTableViewOptionsProps<TData> {\r\n table: Table<TData>\r\n}\r\n\r\nexport function DataTableViewOptions<TData>({\r\n table,\r\n}: DataTableViewOptionsProps<TData>) {\r\n const columns = React.useMemo(\r\n () =>\r\n table\r\n .getAllColumns()\r\n .filter(\r\n column =>\r\n typeof column.accessorFn !== 'undefined' && column.getCanHide()\r\n ),\r\n [table]\r\n )\r\n\r\n return (\r\n <Popover>\r\n <PopoverTrigger asChild>\r\n <Button\r\n aria-label=\"Toggle columns\"\r\n role=\"combobox\"\r\n variant=\"secondary\"\r\n size=\"xs\"\r\n className=\"ml-auto hidden lg:flex\"\r\n >\r\n <SlidersHorizontal />\r\n Ver\r\n <CaretUpDown className=\"ml-auto opacity-50\" />\r\n </Button>\r\n </PopoverTrigger>\r\n <PopoverContent align=\"end\" className=\"w-44 p-0\">\r\n <Command>\r\n <CommandInput placeholder=\"Buscar colunas...\" />\r\n <CommandList>\r\n <CommandEmpty>Nenhuma coluna encontrada.</CommandEmpty>\r\n <CommandGroup>\r\n {columns.map(column => (\r\n <CommandItem\r\n key={column.id}\r\n onSelect={() =>\r\n column.toggleVisibility(!column.getIsVisible())\r\n }\r\n >\r\n <span className=\"truncate\">\r\n {column.columnDef.meta?.label ?? column.id}\r\n </span>\r\n <Check\r\n className={cn(\r\n 'ml-auto size-4 shrink-0',\r\n column.getIsVisible() ? 'opacity-100' : 'opacity-0'\r\n )}\r\n />\r\n </CommandItem>\r\n ))}\r\n </CommandGroup>\r\n </CommandList>\r\n </Command>\r\n </PopoverContent>\r\n </Popover>\r\n )\r\n}\r\n"],"names":["DataTableViewOptions","table","columns","React","column","Popover","PopoverTrigger","Button","SlidersHorizontal","CaretUpDown","PopoverContent","Command","CommandInput","CommandList","CommandEmpty","CommandGroup","CommandItem","Check","cn"],"mappings":";wOAsBO,SAASA,EAA4B,CAC1CC,MAAAA,CAAK,CAC4B,EACjC,IAAMC,EAAUC,EAAAA,OAAa,CAC3B,IACEF,EACG,aAAa,GACb,MAAM,CACLG,GACE,SAAOA,EAAO,UAAU,EAAoBA,EAAO,UAAU,IAErE,CAACH,EAAM,EAGT,MACE,WAACI,EAAAA,OAAOA,CAAAA,C,UACN,UAACC,EAAAA,cAAcA,CAAAA,CAAC,QAAO,G,SACrB,WAACC,EAAAA,MAAMA,CAAAA,CACL,aAAW,iBACX,KAAK,WACL,QAAQ,YACR,KAAK,KACL,UAAU,yB,UAEV,UAACC,EAAAA,iBAAiBA,CAAAA,CAAAA,GAAG,MAErB,UAACC,EAAAA,WAAWA,CAAAA,CAAC,UAAU,oB,QAG3B,UAACC,EAAAA,cAAcA,CAAAA,CAAC,MAAM,MAAM,UAAU,W,SACpC,WAACC,EAAAA,OAAOA,CAAAA,C,UACN,UAACC,EAAAA,YAAYA,CAAAA,CAAC,YAAY,mB,GAC1B,WAACC,EAAAA,WAAWA,CAAAA,C,UACV,UAACC,EAAAA,YAAYA,CAAAA,C,SAAC,4B,GACd,UAACC,EAAAA,YAAYA,CAAAA,C,SACVb,EAAQ,GAAG,CAACE,GACX,WAACY,EAAAA,WAAWA,CAAAA,CAEV,SAAU,IACRZ,EAAO,gBAAgB,CAAC,CAACA,EAAO,YAAY,I,UAG9C,UAAC,QAAK,UAAU,W,SACbA,EAAO,SAAS,CAAC,IAAI,EAAE,OAASA,EAAO,EAAE,GAE5C,UAACa,EAAAA,KAAKA,CAAAA,CACJ,UAAWC,GAAAA,EAAAA,EAAAA,EACT,0BACAd,EAAO,YAAY,GAAK,cAAgB,Y,KAXvCA,EAAO,EAAE,E,aAsBhC,Q"}
@@ -1 +1 @@
1
- import*as t from"./data-table-date-filter.js";import*as a from"./data-table-faceted-filter.js";import*as e from"./data-table-pagination.js";import*as o from"./data-table-slider-filter.js";import*as r from"./data-table-view-options.js";export*from"./data-table-action-bar.js";export*from"./data-table-advanced-toolbar.js";export*from"./data-table-column-header.js";export*from"./data-table-filter-list.js";export*from"./data-table-filter-menu.js";export*from"./data-table-range-filter.js";export*from"./data-table-skeleton.js";export*from"./data-table-sort-list.js";export*from"./data-table-toolbar.js";export*from"./data-table.js";var n={"@/components/data-table/data-table-date-filter":function(a){a.exports=t},"@/components/data-table/data-table-faceted-filter":function(t){t.exports=a},"@/components/data-table/data-table-pagination":function(t){t.exports=e},"@/components/data-table/data-table-slider-filter":function(t){t.exports=o},"@/components/data-table/data-table-view-options":function(t){t.exports=r}},d={};function l(t){var a=d[t];if(void 0!==a)return a.exports;var e=d[t]={exports:{}};return n[t](e,e.exports,l),e.exports}l.d=(t,a)=>{for(var e in a)l.o(a,e)&&!l.o(t,e)&&Object.defineProperty(t,e,{enumerable:!0,get:a[e]})},l.o=(t,a)=>Object.prototype.hasOwnProperty.call(t,a),l.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var i={};l.r(i);var f=l("@/components/data-table/data-table-date-filter"),b={};for(var s in f)"default"!==s&&(b[s]=(function(t){return f[t]}).bind(0,s));l.d(i,b);var p=l("@/components/data-table/data-table-faceted-filter"),b={};for(var s in p)"default"!==s&&(b[s]=(function(t){return p[t]}).bind(0,s));l.d(i,b);var m=l("@/components/data-table/data-table-pagination"),b={};for(var s in m)"default"!==s&&(b[s]=(function(t){return m[t]}).bind(0,s));l.d(i,b);var c=l("@/components/data-table/data-table-slider-filter"),b={};for(var s in c)"default"!==s&&(b[s]=(function(t){return c[t]}).bind(0,s));l.d(i,b);var u=l("@/components/data-table/data-table-view-options"),b={};for(var s in u)"default"!==s&&(b[s]=(function(t){return u[t]}).bind(0,s));l.d(i,b);
1
+ export*from"./data-table-action-bar.js";export*from"./data-table-advanced-toolbar.js";export*from"./data-table-column-header.js";export*from"./data-table-date-filter.js";export*from"./data-table-faceted-filter.js";export*from"./data-table-filter-list.js";export*from"./data-table-filter-menu.js";export*from"./data-table-pagination.js";export*from"./data-table-range-filter.js";export*from"./data-table-skeleton.js";export*from"./data-table-slider-filter.js";export*from"./data-table-sort-list.js";export*from"./data-table-toolbar.js";export*from"./data-table-view-options.js";export*from"./data-table.js";
@@ -1,3 +1,3 @@
1
1
  'use client'
2
- import*as e from"@tanstack/react-table";import*as t from"nuqs";import*as a from"react";import*as o from"./use-debounced-callback.js";import*as i from"../lib/parsers.js";function l(l){let{columns:n,pageCount:r=-1,initialState:s,history:u="replace",debounceMs:d=300,throttleMs:g=50,clearOnDefault:p=!1,enableAdvancedFilter:c=!1,scroll:m=!1,shallow:f=!0,startTransition:w,...S}=l,M=a.useMemo(()=>({history:u,scroll:m,shallow:f,throttleMs:g,debounceMs:d,clearOnDefault:p,startTransition:w}),[u,m,f,g,d,p,w]),[b,y]=a.useState(s?.rowSelection??{}),[C,R]=a.useState(s?.columnVisibility??{}),[h,F]=(0,t.useQueryState)("page",t.parseAsInteger.withOptions(M).withDefault(1)),[A,O]=(0,t.useQueryState)("perPage",t.parseAsInteger.withOptions(M).withDefault(s?.pagination?.pageSize??10)),k=a.useMemo(()=>({pageIndex:h-1,pageSize:A}),[h,A]),x=a.useCallback(e=>{if("function"==typeof e){let t=e(k);F(t.pageIndex+1),O(t.pageSize)}else F(e.pageIndex+1),O(e.pageSize)},[k,F,O]),z=a.useMemo(()=>new Set(n.map(e=>e.id).filter(Boolean)),[n]),[V,D]=(0,t.useQueryState)("sort",(0,i.getSortingStateParser)(z).withOptions(M).withDefault(s?.sorting??[])),I=a.useCallback(e=>{"function"==typeof e?D(e(V)):D(e)},[V,D]),P=a.useMemo(()=>c?[]:n.filter(e=>e.enableColumnFilter),[n,c]),Q=a.useMemo(()=>c?{}:P.reduce((e,a)=>(a.meta?.options?e[a.id??""]=(0,t.parseAsArrayOf)(t.parseAsString,",").withOptions(M):e[a.id??""]=t.parseAsString.withOptions(M),e),{}),[P,M,c]),[j,q]=(0,t.useQueryStates)(Q),v=(0,o.useDebouncedCallback)(e=>{F(1),q(e)},d),B=a.useMemo(()=>c?[]:Object.entries(j).reduce((e,[t,a])=>{if(null!==a){let o=Array.isArray(a)?a:"string"==typeof a&&/[^a-zA-Z0-9]/.test(a)?a.split(/[^a-zA-Z0-9]+/).filter(Boolean):[a];e.push({id:t,value:o})}return e},[]),[j,c]),[T,U]=a.useState(B),Z=a.useCallback(e=>{c||U(t=>{let a="function"==typeof e?e(t):e,o=a.reduce((e,t)=>(P.find(e=>e.id===t.id)&&(e[t.id]=t.value),e),{});for(let e of t)a.some(t=>t.id===e.id)||(o[e.id]=null);return v(o),a})},[v,P,c]);return{table:(0,e.useReactTable)({...S,columns:n,initialState:s,pageCount:r,state:{pagination:k,sorting:V,columnVisibility:C,rowSelection:b,columnFilters:T},defaultColumn:{...S.defaultColumn,enableColumnFilter:!1},enableRowSelection:!0,onRowSelectionChange:y,onPaginationChange:x,onSortingChange:I,onColumnFiltersChange:Z,onColumnVisibilityChange:R,getCoreRowModel:(0,e.getCoreRowModel)(),getFilteredRowModel:(0,e.getFilteredRowModel)(),getPaginationRowModel:(0,e.getPaginationRowModel)(),getSortedRowModel:(0,e.getSortedRowModel)(),getFacetedRowModel:(0,e.getFacetedRowModel)(),getFacetedUniqueValues:(0,e.getFacetedUniqueValues)(),getFacetedMinMaxValues:(0,e.getFacetedMinMaxValues)(),manualPagination:!0,manualSorting:!0,manualFiltering:!0}),shallow:f,debounceMs:d,throttleMs:g}}export{l as useDataTable};
2
+ import*as e from"@tanstack/react-table";import*as t from"nuqs";import*as a from"react";import*as o from"./use-debounced-callback.js";import*as i from"../lib/parsers.js";function l(l){let{columns:n,pageCount:r=-1,initialState:s,history:u="replace",debounceMs:d=300,throttleMs:g=50,clearOnDefault:p=!1,enableAdvancedFilter:c=!1,scroll:m=!1,shallow:f=!0,startTransition:w,globalFilter:S,...M}=l,b=a.useMemo(()=>({history:u,scroll:m,shallow:f,throttleMs:g,debounceMs:d,clearOnDefault:p,startTransition:w}),[u,m,f,g,d,p,w]),[y,C]=a.useState(s?.rowSelection??{}),[R,h]=a.useState(s?.columnVisibility??{}),[F,A]=(0,t.useQueryState)("page",t.parseAsInteger.withOptions(b).withDefault(1)),[O,k]=(0,t.useQueryState)("perPage",t.parseAsInteger.withOptions(b).withDefault(s?.pagination?.pageSize??10)),x=a.useMemo(()=>({pageIndex:F-1,pageSize:O}),[F,O]),z=a.useCallback(e=>{if("function"==typeof e){let t=e(x);A(t.pageIndex+1),k(t.pageSize)}else A(e.pageIndex+1),k(e.pageSize)},[x,A,k]),V=a.useMemo(()=>new Set(n.map(e=>e.id).filter(Boolean)),[n]),[D,I]=(0,t.useQueryState)("sort",(0,i.getSortingStateParser)(V).withOptions(b).withDefault(s?.sorting??[])),P=a.useCallback(e=>{"function"==typeof e?I(e(D)):I(e)},[D,I]),Q=a.useMemo(()=>c?[]:n.filter(e=>e.enableColumnFilter),[n,c]),j=a.useMemo(()=>c?{}:Q.reduce((e,a)=>(a.meta?.options?e[a.id??""]=(0,t.parseAsArrayOf)(t.parseAsString,",").withOptions(b):e[a.id??""]=t.parseAsString.withOptions(b),e),{}),[Q,b,c]),[q,v]=(0,t.useQueryStates)(j),B=(0,o.useDebouncedCallback)(e=>{A(1),v(e)},d),T=a.useMemo(()=>c?[]:Object.entries(q).reduce((e,[t,a])=>{if(null!==a){let o=Array.isArray(a)?a:"string"==typeof a&&/[^a-zA-Z0-9]/.test(a)?a.split(/[^a-zA-Z0-9]+/).filter(Boolean):[a];e.push({id:t,value:o})}return e},[]),[q,c]),[U,Z]=a.useState(T),E=a.useCallback(e=>{c||Z(t=>{let a="function"==typeof e?e(t):e,o=a.reduce((e,t)=>(Q.find(e=>e.id===t.id)&&(e[t.id]=t.value),e),{});for(let e of t)a.some(t=>t.id===e.id)||(o[e.id]=null);return B(o),a})},[B,Q,c]);return{table:(0,e.useReactTable)({...M,columns:n,initialState:s,pageCount:r,state:{pagination:x,sorting:D,columnVisibility:R,rowSelection:y,columnFilters:U,globalFilter:S},defaultColumn:{...M.defaultColumn,enableColumnFilter:!1},enableRowSelection:!0,onRowSelectionChange:C,onPaginationChange:z,onSortingChange:P,onColumnFiltersChange:E,onColumnVisibilityChange:h,getCoreRowModel:(0,e.getCoreRowModel)(),getFilteredRowModel:(0,e.getFilteredRowModel)(),getPaginationRowModel:(0,e.getPaginationRowModel)(),getSortedRowModel:(0,e.getSortedRowModel)(),getFacetedRowModel:(0,e.getFacetedRowModel)(),getFacetedUniqueValues:(0,e.getFacetedUniqueValues)(),getFacetedMinMaxValues:(0,e.getFacetedMinMaxValues)(),manualPagination:!0,manualSorting:!0,manualFiltering:!0}),shallow:f,debounceMs:d,throttleMs:g}}export{l as useDataTable};
3
3
  //# sourceMappingURL=use-data-table.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks\\use-data-table.js","sources":["webpack://@gbmtech/aurora-ui/./src/hooks/use-data-table.ts"],"sourcesContent":["\r\n\r\nimport {\r\n type ColumnFiltersState,\r\n type PaginationState,\r\n type RowSelectionState,\r\n type SortingState,\r\n type TableOptions,\r\n type TableState,\r\n type Updater,\r\n type VisibilityState,\r\n getCoreRowModel,\r\n getFacetedMinMaxValues,\r\n getFacetedRowModel,\r\n getFacetedUniqueValues,\r\n getFilteredRowModel,\r\n getPaginationRowModel,\r\n getSortedRowModel,\r\n useReactTable,\r\n} from '@tanstack/react-table'\r\nimport {\r\n type Parser,\r\n type UseQueryStateOptions,\r\n parseAsArrayOf,\r\n parseAsInteger,\r\n parseAsString,\r\n useQueryState,\r\n useQueryStates,\r\n} from 'nuqs'\r\nimport * as React from 'react'\r\n\r\nimport { useDebouncedCallback } from '@/hooks/use-debounced-callback'\r\nimport { getSortingStateParser } from '@/lib/parsers'\r\nimport type { ExtendedColumnSort } from '@/types/data-table'\r\n\r\nconst PAGE_KEY = 'page'\r\nconst PER_PAGE_KEY = 'perPage'\r\nconst SORT_KEY = 'sort'\r\nconst ARRAY_SEPARATOR = ','\r\nconst DEBOUNCE_MS = 300\r\nconst THROTTLE_MS = 50\r\n\r\ninterface UseDataTableProps<TData>\r\n extends Omit<\r\n TableOptions<TData>,\r\n | 'state'\r\n | 'pageCount'\r\n | 'getCoreRowModel'\r\n | 'manualFiltering'\r\n | 'manualPagination'\r\n | 'manualSorting'\r\n >,\r\n Required<Pick<TableOptions<TData>, 'pageCount'>> {\r\n initialState?: Omit<Partial<TableState>, 'sorting'> & {\r\n sorting?: ExtendedColumnSort<TData>[]\r\n }\r\n history?: 'push' | 'replace'\r\n debounceMs?: number\r\n throttleMs?: number\r\n clearOnDefault?: boolean\r\n enableAdvancedFilter?: boolean\r\n scroll?: boolean\r\n shallow?: boolean\r\n startTransition?: React.TransitionStartFunction\r\n}\r\n\r\nexport function useDataTable<TData>(props: UseDataTableProps<TData>) {\r\n const {\r\n columns,\r\n pageCount = -1,\r\n initialState,\r\n history = 'replace',\r\n debounceMs = DEBOUNCE_MS,\r\n throttleMs = THROTTLE_MS,\r\n clearOnDefault = false,\r\n enableAdvancedFilter = false,\r\n scroll = false,\r\n shallow = true,\r\n startTransition,\r\n ...tableProps\r\n } = props\r\n\r\n const queryStateOptions = React.useMemo<\r\n Omit<UseQueryStateOptions<string>, 'parse'>\r\n >(\r\n () => ({\r\n history,\r\n scroll,\r\n shallow,\r\n throttleMs,\r\n debounceMs,\r\n clearOnDefault,\r\n startTransition,\r\n }),\r\n [\r\n history,\r\n scroll,\r\n shallow,\r\n throttleMs,\r\n debounceMs,\r\n clearOnDefault,\r\n startTransition,\r\n ]\r\n )\r\n\r\n const [rowSelection, setRowSelection] = React.useState<RowSelectionState>(\r\n initialState?.rowSelection ?? {}\r\n )\r\n const [columnVisibility, setColumnVisibility] =\r\n React.useState<VisibilityState>(initialState?.columnVisibility ?? {})\r\n\r\n const [page, setPage] = useQueryState(\r\n PAGE_KEY,\r\n parseAsInteger.withOptions(queryStateOptions).withDefault(1)\r\n )\r\n const [perPage, setPerPage] = useQueryState(\r\n PER_PAGE_KEY,\r\n parseAsInteger\r\n .withOptions(queryStateOptions)\r\n .withDefault(initialState?.pagination?.pageSize ?? 10)\r\n )\r\n\r\n const pagination: PaginationState = React.useMemo(() => {\r\n return {\r\n pageIndex: page - 1, // zero-based index -> one-based index\r\n pageSize: perPage,\r\n }\r\n }, [page, perPage])\r\n\r\n const onPaginationChange = React.useCallback(\r\n (updaterOrValue: Updater<PaginationState>) => {\r\n if (typeof updaterOrValue === 'function') {\r\n const newPagination = updaterOrValue(pagination)\r\n void setPage(newPagination.pageIndex + 1)\r\n void setPerPage(newPagination.pageSize)\r\n } else {\r\n void setPage(updaterOrValue.pageIndex + 1)\r\n void setPerPage(updaterOrValue.pageSize)\r\n }\r\n },\r\n [pagination, setPage, setPerPage]\r\n )\r\n\r\n const columnIds = React.useMemo(() => {\r\n return new Set(columns.map(column => column.id).filter(Boolean) as string[])\r\n }, [columns])\r\n\r\n const [sorting, setSorting] = useQueryState(\r\n SORT_KEY,\r\n getSortingStateParser<TData>(columnIds)\r\n .withOptions(queryStateOptions)\r\n .withDefault(initialState?.sorting ?? [])\r\n )\r\n\r\n const onSortingChange = React.useCallback(\r\n (updaterOrValue: Updater<SortingState>) => {\r\n if (typeof updaterOrValue === 'function') {\r\n const newSorting = updaterOrValue(sorting)\r\n setSorting(newSorting as ExtendedColumnSort<TData>[])\r\n } else {\r\n setSorting(updaterOrValue as ExtendedColumnSort<TData>[])\r\n }\r\n },\r\n [sorting, setSorting]\r\n )\r\n\r\n const filterableColumns = React.useMemo(() => {\r\n if (enableAdvancedFilter) return []\r\n\r\n return columns.filter(column => column.enableColumnFilter)\r\n }, [columns, enableAdvancedFilter])\r\n\r\n const filterParsers = React.useMemo(() => {\r\n if (enableAdvancedFilter) return {}\r\n\r\n return filterableColumns.reduce<\r\n Record<string, Parser<string> | Parser<string[]>>\r\n >((acc, column) => {\r\n if (column.meta?.options) {\r\n acc[column.id ?? ''] = parseAsArrayOf(\r\n parseAsString,\r\n ARRAY_SEPARATOR\r\n ).withOptions(queryStateOptions)\r\n } else {\r\n acc[column.id ?? ''] = parseAsString.withOptions(queryStateOptions)\r\n }\r\n return acc\r\n }, {})\r\n }, [filterableColumns, queryStateOptions, enableAdvancedFilter])\r\n\r\n const [filterValues, setFilterValues] = useQueryStates(filterParsers)\r\n\r\n const debouncedSetFilterValues = useDebouncedCallback(\r\n (values: typeof filterValues) => {\r\n void setPage(1)\r\n void setFilterValues(values)\r\n },\r\n debounceMs\r\n )\r\n\r\n const initialColumnFilters: ColumnFiltersState = React.useMemo(() => {\r\n if (enableAdvancedFilter) return []\r\n\r\n return Object.entries(filterValues).reduce<ColumnFiltersState>(\r\n (filters, [key, value]) => {\r\n if (value !== null) {\r\n const processedValue = Array.isArray(value)\r\n ? value\r\n : typeof value === 'string' && /[^a-zA-Z0-9]/.test(value)\r\n ? value.split(/[^a-zA-Z0-9]+/).filter(Boolean)\r\n : [value]\r\n\r\n filters.push({\r\n id: key,\r\n value: processedValue,\r\n })\r\n }\r\n return filters\r\n },\r\n []\r\n )\r\n }, [filterValues, enableAdvancedFilter])\r\n\r\n const [columnFilters, setColumnFilters] =\r\n React.useState<ColumnFiltersState>(initialColumnFilters)\r\n\r\n const onColumnFiltersChange = React.useCallback(\r\n (updaterOrValue: Updater<ColumnFiltersState>) => {\r\n if (enableAdvancedFilter) return\r\n\r\n setColumnFilters(prev => {\r\n const next =\r\n typeof updaterOrValue === 'function'\r\n ? updaterOrValue(prev)\r\n : updaterOrValue\r\n\r\n const filterUpdates = next.reduce<\r\n Record<string, string | string[] | null>\r\n >((acc, filter) => {\r\n if (filterableColumns.find(column => column.id === filter.id)) {\r\n acc[filter.id] = filter.value as string | string[]\r\n }\r\n return acc\r\n }, {})\r\n\r\n for (const prevFilter of prev) {\r\n if (!next.some(filter => filter.id === prevFilter.id)) {\r\n filterUpdates[prevFilter.id] = null\r\n }\r\n }\r\n\r\n debouncedSetFilterValues(filterUpdates)\r\n return next\r\n })\r\n },\r\n [debouncedSetFilterValues, filterableColumns, enableAdvancedFilter]\r\n )\r\n\r\n const table = useReactTable({\r\n ...tableProps,\r\n columns,\r\n initialState,\r\n pageCount,\r\n state: {\r\n pagination,\r\n sorting,\r\n columnVisibility,\r\n rowSelection,\r\n columnFilters,\r\n },\r\n defaultColumn: {\r\n ...tableProps.defaultColumn,\r\n enableColumnFilter: false,\r\n },\r\n enableRowSelection: true,\r\n onRowSelectionChange: setRowSelection,\r\n onPaginationChange,\r\n onSortingChange,\r\n onColumnFiltersChange,\r\n onColumnVisibilityChange: setColumnVisibility,\r\n getCoreRowModel: getCoreRowModel(),\r\n getFilteredRowModel: getFilteredRowModel(),\r\n getPaginationRowModel: getPaginationRowModel(),\r\n getSortedRowModel: getSortedRowModel(),\r\n getFacetedRowModel: getFacetedRowModel(),\r\n getFacetedUniqueValues: getFacetedUniqueValues(),\r\n getFacetedMinMaxValues: getFacetedMinMaxValues(),\r\n manualPagination: true,\r\n manualSorting: true,\r\n manualFiltering: true,\r\n })\r\n\r\n return { table, shallow, debounceMs, throttleMs }\r\n}\r\n"],"names":["useDataTable","props","columns","pageCount","initialState","history","debounceMs","throttleMs","clearOnDefault","enableAdvancedFilter","scroll","shallow","startTransition","tableProps","queryStateOptions","React","rowSelection","setRowSelection","columnVisibility","setColumnVisibility","page","setPage","useQueryState","parseAsInteger","perPage","setPerPage","pagination","onPaginationChange","updaterOrValue","newPagination","columnIds","Set","column","Boolean","sorting","setSorting","getSortingStateParser","onSortingChange","filterableColumns","filterParsers","acc","parseAsArrayOf","parseAsString","filterValues","setFilterValues","useQueryStates","debouncedSetFilterValues","useDebouncedCallback","values","initialColumnFilters","Object","filters","key","value","processedValue","Array","columnFilters","setColumnFilters","onColumnFiltersChange","prev","next","filterUpdates","filter","prevFilter","table","useReactTable","getCoreRowModel","getFilteredRowModel","getPaginationRowModel","getSortedRowModel","getFacetedRowModel","getFacetedUniqueValues","getFacetedMinMaxValues"],"mappings":"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"}
1
+ {"version":3,"file":"hooks\\use-data-table.js","sources":["webpack://@gbmtech/aurora-ui/./src/hooks/use-data-table.ts"],"sourcesContent":["\r\n\r\nimport {\r\n type ColumnFiltersState,\r\n type PaginationState,\r\n type RowSelectionState,\r\n type SortingState,\r\n type TableOptions,\r\n type TableState,\r\n type Updater,\r\n type VisibilityState,\r\n getCoreRowModel,\r\n getFacetedMinMaxValues,\r\n getFacetedRowModel,\r\n getFacetedUniqueValues,\r\n getFilteredRowModel,\r\n getPaginationRowModel,\r\n getSortedRowModel,\r\n useReactTable,\r\n} from '@tanstack/react-table'\r\nimport {\r\n type Parser,\r\n type UseQueryStateOptions,\r\n parseAsArrayOf,\r\n parseAsInteger,\r\n parseAsString,\r\n useQueryState,\r\n useQueryStates,\r\n} from 'nuqs'\r\nimport * as React from 'react'\r\n\r\nimport { useDebouncedCallback } from '@/hooks/use-debounced-callback'\r\nimport { getSortingStateParser } from '@/lib/parsers'\r\nimport type { ExtendedColumnSort } from '@/types/data-table'\r\n\r\nconst PAGE_KEY = 'page'\r\nconst PER_PAGE_KEY = 'perPage'\r\nconst SORT_KEY = 'sort'\r\nconst ARRAY_SEPARATOR = ','\r\nconst DEBOUNCE_MS = 300\r\nconst THROTTLE_MS = 50\r\n\r\ninterface UseDataTableProps<TData>\r\n extends Omit<\r\n TableOptions<TData>,\r\n | 'state'\r\n | 'pageCount'\r\n | 'getCoreRowModel'\r\n | 'manualFiltering'\r\n | 'manualPagination'\r\n | 'manualSorting'\r\n >,\r\n Required<Pick<TableOptions<TData>, 'pageCount'>> {\r\n initialState?: Omit<Partial<TableState>, 'sorting'> & {\r\n sorting?: ExtendedColumnSort<TData>[]\r\n }\r\n history?: 'push' | 'replace'\r\n debounceMs?: number\r\n throttleMs?: number\r\n clearOnDefault?: boolean\r\n enableAdvancedFilter?: boolean\r\n scroll?: boolean\r\n shallow?: boolean\r\n startTransition?: React.TransitionStartFunction\r\n globalFilter?: string | null\r\n}\r\n\r\nexport function useDataTable<TData>(props: UseDataTableProps<TData>) {\r\n const {\r\n columns,\r\n pageCount = -1,\r\n initialState,\r\n history = 'replace',\r\n debounceMs = DEBOUNCE_MS,\r\n throttleMs = THROTTLE_MS,\r\n clearOnDefault = false,\r\n enableAdvancedFilter = false,\r\n scroll = false,\r\n shallow = true,\r\n startTransition,\r\n globalFilter,\r\n ...tableProps\r\n } = props\r\n\r\n const queryStateOptions = React.useMemo<\r\n Omit<UseQueryStateOptions<string>, 'parse'>\r\n >(\r\n () => ({\r\n history,\r\n scroll,\r\n shallow,\r\n throttleMs,\r\n debounceMs,\r\n clearOnDefault,\r\n startTransition,\r\n }),\r\n [\r\n history,\r\n scroll,\r\n shallow,\r\n throttleMs,\r\n debounceMs,\r\n clearOnDefault,\r\n startTransition,\r\n ]\r\n )\r\n\r\n const [rowSelection, setRowSelection] = React.useState<RowSelectionState>(\r\n initialState?.rowSelection ?? {}\r\n )\r\n const [columnVisibility, setColumnVisibility] =\r\n React.useState<VisibilityState>(initialState?.columnVisibility ?? {})\r\n\r\n const [page, setPage] = useQueryState(\r\n PAGE_KEY,\r\n parseAsInteger.withOptions(queryStateOptions).withDefault(1)\r\n )\r\n const [perPage, setPerPage] = useQueryState(\r\n PER_PAGE_KEY,\r\n parseAsInteger\r\n .withOptions(queryStateOptions)\r\n .withDefault(initialState?.pagination?.pageSize ?? 10)\r\n )\r\n\r\n const pagination: PaginationState = React.useMemo(() => {\r\n return {\r\n pageIndex: page - 1, // zero-based index -> one-based index\r\n pageSize: perPage,\r\n }\r\n }, [page, perPage])\r\n\r\n const onPaginationChange = React.useCallback(\r\n (updaterOrValue: Updater<PaginationState>) => {\r\n if (typeof updaterOrValue === 'function') {\r\n const newPagination = updaterOrValue(pagination)\r\n void setPage(newPagination.pageIndex + 1)\r\n void setPerPage(newPagination.pageSize)\r\n } else {\r\n void setPage(updaterOrValue.pageIndex + 1)\r\n void setPerPage(updaterOrValue.pageSize)\r\n }\r\n },\r\n [pagination, setPage, setPerPage]\r\n )\r\n\r\n const columnIds = React.useMemo(() => {\r\n return new Set(columns.map(column => column.id).filter(Boolean) as string[])\r\n }, [columns])\r\n\r\n const [sorting, setSorting] = useQueryState(\r\n SORT_KEY,\r\n getSortingStateParser<TData>(columnIds)\r\n .withOptions(queryStateOptions)\r\n .withDefault(initialState?.sorting ?? [])\r\n )\r\n\r\n const onSortingChange = React.useCallback(\r\n (updaterOrValue: Updater<SortingState>) => {\r\n if (typeof updaterOrValue === 'function') {\r\n const newSorting = updaterOrValue(sorting)\r\n setSorting(newSorting as ExtendedColumnSort<TData>[])\r\n } else {\r\n setSorting(updaterOrValue as ExtendedColumnSort<TData>[])\r\n }\r\n },\r\n [sorting, setSorting]\r\n )\r\n\r\n const filterableColumns = React.useMemo(() => {\r\n if (enableAdvancedFilter) return []\r\n\r\n return columns.filter(column => column.enableColumnFilter)\r\n }, [columns, enableAdvancedFilter])\r\n\r\n const filterParsers = React.useMemo(() => {\r\n if (enableAdvancedFilter) return {}\r\n\r\n return filterableColumns.reduce<\r\n Record<string, Parser<string> | Parser<string[]>>\r\n >((acc, column) => {\r\n if (column.meta?.options) {\r\n acc[column.id ?? ''] = parseAsArrayOf(\r\n parseAsString,\r\n ARRAY_SEPARATOR\r\n ).withOptions(queryStateOptions)\r\n } else {\r\n acc[column.id ?? ''] = parseAsString.withOptions(queryStateOptions)\r\n }\r\n return acc\r\n }, {})\r\n }, [filterableColumns, queryStateOptions, enableAdvancedFilter])\r\n\r\n const [filterValues, setFilterValues] = useQueryStates(filterParsers)\r\n\r\n const debouncedSetFilterValues = useDebouncedCallback(\r\n (values: typeof filterValues) => {\r\n void setPage(1)\r\n void setFilterValues(values)\r\n },\r\n debounceMs\r\n )\r\n\r\n const initialColumnFilters: ColumnFiltersState = React.useMemo(() => {\r\n if (enableAdvancedFilter) return []\r\n\r\n return Object.entries(filterValues).reduce<ColumnFiltersState>(\r\n (filters, [key, value]) => {\r\n if (value !== null) {\r\n const processedValue = Array.isArray(value)\r\n ? value\r\n : typeof value === 'string' && /[^a-zA-Z0-9]/.test(value)\r\n ? value.split(/[^a-zA-Z0-9]+/).filter(Boolean)\r\n : [value]\r\n\r\n filters.push({\r\n id: key,\r\n value: processedValue,\r\n })\r\n }\r\n return filters\r\n },\r\n []\r\n )\r\n }, [filterValues, enableAdvancedFilter])\r\n\r\n const [columnFilters, setColumnFilters] =\r\n React.useState<ColumnFiltersState>(initialColumnFilters)\r\n\r\n const onColumnFiltersChange = React.useCallback(\r\n (updaterOrValue: Updater<ColumnFiltersState>) => {\r\n if (enableAdvancedFilter) return\r\n\r\n setColumnFilters(prev => {\r\n const next =\r\n typeof updaterOrValue === 'function'\r\n ? updaterOrValue(prev)\r\n : updaterOrValue\r\n\r\n const filterUpdates = next.reduce<\r\n Record<string, string | string[] | null>\r\n >((acc, filter) => {\r\n if (filterableColumns.find(column => column.id === filter.id)) {\r\n acc[filter.id] = filter.value as string | string[]\r\n }\r\n return acc\r\n }, {})\r\n\r\n for (const prevFilter of prev) {\r\n if (!next.some(filter => filter.id === prevFilter.id)) {\r\n filterUpdates[prevFilter.id] = null\r\n }\r\n }\r\n\r\n debouncedSetFilterValues(filterUpdates)\r\n return next\r\n })\r\n },\r\n [debouncedSetFilterValues, filterableColumns, enableAdvancedFilter]\r\n )\r\n\r\n const table = useReactTable({\r\n ...tableProps,\r\n columns,\r\n initialState,\r\n pageCount,\r\n state: {\r\n pagination,\r\n sorting,\r\n columnVisibility,\r\n rowSelection,\r\n columnFilters,\r\n globalFilter,\r\n },\r\n defaultColumn: {\r\n ...tableProps.defaultColumn,\r\n enableColumnFilter: false,\r\n },\r\n enableRowSelection: true,\r\n onRowSelectionChange: setRowSelection,\r\n onPaginationChange,\r\n onSortingChange,\r\n onColumnFiltersChange,\r\n onColumnVisibilityChange: setColumnVisibility,\r\n getCoreRowModel: getCoreRowModel(),\r\n getFilteredRowModel: getFilteredRowModel(),\r\n getPaginationRowModel: getPaginationRowModel(),\r\n getSortedRowModel: getSortedRowModel(),\r\n getFacetedRowModel: getFacetedRowModel(),\r\n getFacetedUniqueValues: getFacetedUniqueValues(),\r\n getFacetedMinMaxValues: getFacetedMinMaxValues(),\r\n manualPagination: true,\r\n manualSorting: true,\r\n manualFiltering: true,\r\n })\r\n\r\n return { table, shallow, debounceMs, throttleMs }\r\n}\r\n"],"names":["useDataTable","props","columns","pageCount","initialState","history","debounceMs","throttleMs","clearOnDefault","enableAdvancedFilter","scroll","shallow","startTransition","globalFilter","tableProps","queryStateOptions","React","rowSelection","setRowSelection","columnVisibility","setColumnVisibility","page","setPage","useQueryState","parseAsInteger","perPage","setPerPage","pagination","onPaginationChange","updaterOrValue","newPagination","columnIds","Set","column","Boolean","sorting","setSorting","getSortingStateParser","onSortingChange","filterableColumns","filterParsers","acc","parseAsArrayOf","parseAsString","filterValues","setFilterValues","useQueryStates","debouncedSetFilterValues","useDebouncedCallback","values","initialColumnFilters","Object","filters","key","value","processedValue","Array","columnFilters","setColumnFilters","onColumnFiltersChange","prev","next","filterUpdates","filter","prevFilter","table","useReactTable","getCoreRowModel","getFilteredRowModel","getPaginationRowModel","getSortedRowModel","getFacetedRowModel","getFacetedUniqueValues","getFacetedMinMaxValues"],"mappings":"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"}
@@ -13,6 +13,7 @@ interface UseDataTableProps<TData> extends Omit<TableOptions<TData>, 'state' | '
13
13
  scroll?: boolean;
14
14
  shallow?: boolean;
15
15
  startTransition?: React.TransitionStartFunction;
16
+ globalFilter?: string | null;
16
17
  }
17
18
  export declare function useDataTable<TData>(props: UseDataTableProps<TData>): {
18
19
  table: import("@tanstack/react-table").Table<TData>;
@@ -1 +1 @@
1
- {"version":3,"file":"use-data-table.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-data-table.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,UAAU,EAWhB,MAAM,uBAAuB,CAAA;AAU9B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAS5D,UAAU,iBAAiB,CAAC,KAAK,CAC/B,SAAQ,IAAI,CACR,YAAY,CAAC,KAAK,CAAC,EACjB,OAAO,GACP,WAAW,GACX,iBAAiB,GACjB,iBAAiB,GACjB,kBAAkB,GAClB,eAAe,CAClB,EACD,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;IAClD,YAAY,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC,GAAG;QACpD,OAAO,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAA;KACtC,CAAA;IACD,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,eAAe,CAAC,EAAE,KAAK,CAAC,uBAAuB,CAAA;CAChD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,iBAAiB,CAAC,KAAK,CAAC;;;;;EAmOlE"}
1
+ {"version":3,"file":"use-data-table.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-data-table.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,UAAU,EAWhB,MAAM,uBAAuB,CAAA;AAU9B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAS5D,UAAU,iBAAiB,CAAC,KAAK,CAC/B,SAAQ,IAAI,CACR,YAAY,CAAC,KAAK,CAAC,EACjB,OAAO,GACP,WAAW,GACX,iBAAiB,GACjB,iBAAiB,GACjB,kBAAkB,GAClB,eAAe,CAClB,EACD,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;IAClD,YAAY,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC,GAAG;QACpD,OAAO,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAA;KACtC,CAAA;IACD,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,eAAe,CAAC,EAAE,KAAK,CAAC,uBAAuB,CAAA;IAC/C,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC7B;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,iBAAiB,CAAC,KAAK,CAAC;;;;;EAqOlE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gbmtech/aurora-ui",
3
- "version": "0.1.44",
3
+ "version": "0.1.45",
4
4
  "main": "./dist/cjs/index.cjs",
5
5
  "module": "./dist/esm/index.js",
6
6
  "types": "./dist/types/index.d.ts",