UNPKG

@progress/kendo-react-data-tools

Version:

Includes React Pager & React Filter component, an intuitive interface to create complex filter descriptions. KendoReact Data Tools package

10 lines (9 loc) 2.6 kB
/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ "use client"; "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("@progress/kendo-react-common"),P=require("@progress/kendo-data-query"),E=require("../package-metadata.js"),H=t=>{var b,T,q,y,M,F,G;u.validatePackage(E.packageMetadata,{component:"useDataSource"});const{defaultTotal:j,defaultData:C=[],filterable:c=!0,defaultFilter:O,sortable:k=!0,defaultSort:Q,pageable:g=!0,defaultSkip:R,defaultTake:w,groupable:f=!0,defaultGroup:x,schema:z}=t,s=u.useImmediateInheritState((b=t.data)!=null?b:C),d=u.useImmediateInheritState((T=t.total)!=null?T:j,t.total),l=u.useImmediateInheritState((q=t.filter)!=null?q:O,t.filter),i=u.useImmediateInheritState((y=t.sort)!=null?y:Q,t.sort),r=u.useImmediateInheritState((M=t.skip)!=null?M:R,t.skip),a=u.useImmediateInheritState((F=t.take)!=null?F:w,t.take),o=u.useImmediateInheritState((G=t.group)!=null?G:x,t.group),A=e=>{s.value=[...e]},B=e=>{d.value=e},m=e=>{l.value=e},I=e=>{i.value=e},S=e=>{r.value=e},h=e=>{a.value=e},D=e=>{o.value=e};return{get data(){var e,v,n;return(n=P.process((e=t.data)!=null?e:s.value,{filter:c&&l.value?l.value:void 0,sort:k&&i.value?i.value:void 0,group:f&&o.value?o.value:void 0,...g&&a.value!==void 0&&a.value!==null?{skip:(v=r.value)!=null?v:0,take:a.value}:{}}))==null?void 0:n.data},setData:A,get total(){var e,v,n;return d.value!==void 0?d.value:(n=P.process((e=t.data)!=null?e:s.value,{filter:c&&l.value?l.value:void 0,sort:k&&i.value?i.value:void 0,group:f&&o.value?o.value:void 0,...g&&a.value!==void 0&&a.value!==null?{skip:(v=r.value)!=null?v:0,take:a.value}:{}}))==null?void 0:n.total},setTotal:B,get sort(){return i.value},setSort:I,get filter(){return l.value},setFilter:m,get skip(){return r.value},setSkip:S,get take(){return a.value},setTake:h,get group(){return o.value},setGroup:D,get dataState(){return{filter:t.filter!==void 0?t.filter:l.value,sort:t.sort!==void 0?t.sort:i.value,skip:t.skip!==void 0?t.skip:r.value,take:t.take!==void 0?t.take:a.value,group:t.group!==void 0?t.group:o.value}},setDataState:e=>{e.filter!==void 0&&m(e.filter),e.sort!==void 0&&I(e.sort),e.skip!==void 0&&S(e.skip),e.take!==void 0&&h(e.take),e.group!==void 0&&D(e.group)},schema:z}};exports.useDataSource=H;