UNPKG

primereact

Version:

PrimeReact is an open source UI library for React featuring a rich set of 90+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with Prime

2 lines (1 loc) 7.96 kB
this.primereact=this.primereact||{},this.primereact.dataview=function(e,t,r,n,a,o){"use strict";function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function i(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var u=i(t),s=l(r);function c(e){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c(e)}function p(e,t){if("object"!==c(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==c(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function m(e){var t=p(e,"string");return"symbol"===c(t)?t:String(t)}function f(e,t,r){return(t=m(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function g(e){if(Array.isArray(e))return d(e)}function y(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function v(e,t){if(e){if("string"==typeof e)return d(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?d(e,t):void 0}}function b(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function P(e){if(Array.isArray(e))return e}function h(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,o,l,i=[],u=!0,s=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=o.call(r)).done)&&(i.push(n.value),i.length!==t);u=!0);}catch(e){s=!0,a=e}finally{try{if(!u&&null!=r.return&&(l=r.return(),Object(l)!==l))return}finally{if(s)throw a}}return i}}function w(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function O(e,t){return P(e)||h(e,t)||v(e,t)||w()}function N(){return N=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},N.apply(this,arguments)}var j={defaultProps:{__TYPE:"DataView",id:null,header:null,footer:null,value:null,layout:"list",dataKey:null,rows:null,first:0,totalRecords:null,paginator:!1,paginatorPosition:"bottom",alwaysShowPaginator:!0,paginatorClassName:null,paginatorTemplate:"FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink RowsPerPageDropdown",paginatorLeft:null,paginatorRight:null,paginatorDropdownAppendTo:null,pageLinkSize:5,rowsPerPageOptions:null,currentPageReportTemplate:"({currentPage} of {totalPages})",emptyMessage:null,sortField:null,sortOrder:null,style:null,className:null,lazy:!1,loading:!1,loadingIcon:"pi pi-spinner",gutter:!1,itemTemplate:null,onPage:null,children:void 0},getProps:function(e){return o.ObjectUtils.getMergedProps(e,j.defaultProps)},getOtherProps:function(e){return o.ObjectUtils.getDiffProps(e,j.defaultProps)}},E={defaultProps:{__TYPE:"DataViewLayoutOptions",id:null,style:null,className:null,layout:null,onChange:null,children:void 0},getProps:function(e){return o.ObjectUtils.getMergedProps(e,E.defaultProps)},getOtherProps:function(e){return o.ObjectUtils.getDiffProps(e,E.defaultProps)}},S=u.memo((function(e){var t=E.getProps(e),r=function(e,r){t.onChange({originalEvent:e,value:r}),e.preventDefault()},n=E.getOtherProps(t),l=o.classNames("p-dataview-layout-options p-selectbutton p-buttonset",t.className),i=o.classNames("p-button p-button-icon-only",{"p-highlight":"list"===t.layout}),s=o.classNames("p-button p-button-icon-only",{"p-highlight":"grid"===t.layout});return u.createElement("div",N({id:t.id,style:t.style,className:l},n),u.createElement("button",{type:"button",className:i,onClick:function(e){return r(e,"list")}},u.createElement("i",{className:"pi pi-bars"}),u.createElement(a.Ripple,null)),u.createElement("button",{type:"button",className:s,onClick:function(e){return r(e,"grid")}},u.createElement("i",{className:"pi pi-th-large"}),u.createElement(a.Ripple,null)))})),D=u.memo((function(e){return e.template(e.item,e.layout)})),T=u.memo(u.forwardRef((function(e,t){var a,l=j.getProps(e),i=O(u.useState(l.first),2),c=i[0],p=i[1],m=O(u.useState(l.rows),2),d=m[0],P=m[1],h=u.useRef(null),w=l.onPage?l.first:c,E=l.onPage?l.rows:d,S=function(e){return l.dataKey?o.ObjectUtils.resolveFieldData(e,l.dataKey):null},T=function(){return l.totalRecords?l.totalRecords:l.value?l.value.length:0},R=function(e){var t=o.classNames("p-paginator-"+e,l.paginatorClassName),r=T();return u.createElement(n.Paginator,{first:w,rows:E,pageLinkSize:l.pageLinkSize,className:t,onPageChange:L,template:l.paginatorTemplate,totalRecords:r,rowsPerPageOptions:l.rowsPerPageOptions,currentPageReportTemplate:l.currentPageReportTemplate,leftContent:l.paginatorLeft,rightContent:l.paginatorRight,alwaysShow:l.alwaysShowPaginator,dropdownAppendTo:l.paginatorDropdownAppendTo})},L=function(e){l.onPage?l.onPage(e):(p(e.first),P(e.rows))},k=function(){if(l.value){var e=g(t=l.value)||y(t)||v(t)||b();return e.sort((function(e,t){var r=o.ObjectUtils.resolveFieldData(e,l.sortField),n=o.ObjectUtils.resolveFieldData(t,l.sortField);return o.ObjectUtils.sort(r,n,l.sortOrder,s.default.locale,s.default.nullSortOrder)})),e}var t;return null},A=function(){if(!l.loading){var e=l.emptyMessage||r.localeOption("emptyMessage");return u.createElement("div",{className:"p-col-12 col-12 p-dataview-emptymessage"},e)}return null},U=function(e){if(o.ObjectUtils.isNotEmpty(e)){if(l.paginator){for(var t=l.lazy?0:w,r=T(),n=Math.min(E+t,r),a=[],i=t;i<n;i++){var s=e[i];s&&a.push(u.createElement(D,{key:S(e)||i,template:l.itemTemplate,layout:l.layout,item:s}))}return a}return e.map((function(e,t){return u.createElement(D,{key:S(e)||t,template:l.itemTemplate,layout:l.layout,item:e})}))}return A()};u.useImperativeHandle(t,(function(){return{props:l,getElement:function(){return h.current}}}));var C,I,M=function(){var e=l.value;return o.ObjectUtils.isNotEmpty(e)&&l.sortField&&(e=k()),e}(),F=j.getOtherProps(l),V=o.classNames("p-dataview p-component",(f(a={},"p-dataview-".concat(l.layout),!!l.layout),f(a,"p-dataview-loading",l.loading),a),l.className),_=function(){if(l.loading){var e=o.classNames("p-dataview-loading-icon pi-spin",l.loadingIcon);return u.createElement("div",{className:"p-dataview-loading-overlay p-component-overlay"},u.createElement("i",{className:e}))}return null}(),z=!l.paginator||"bottom"===l.paginatorPosition&&"both"!==l.paginatorPosition?null:R("top"),K=!l.paginator||"top"===l.paginatorPosition&&"both"!==l.paginatorPosition?null:R("bottom"),x=l.header?u.createElement("div",{className:"p-dataview-header"},l.header):null,Y=l.footer?u.createElement("div",{className:"p-dataview-footer"},l.footer):null,H=(C=U(M),I=o.classNames("p-grid grid",{"p-nogutter grid-nogutter":!l.gutter}),u.createElement("div",{className:"p-dataview-content"},u.createElement("div",{className:I},C)));return u.createElement("div",N({id:l.id,ref:h,style:l.style,className:V},F),_,x,z,H,K,Y)})));return S.displayName="DataViewLayoutOptions",D.displayName="DataViewItem",T.displayName="DataView",e.DataView=T,e.DataViewItem=D,e.DataViewLayoutOptions=S,Object.defineProperty(e,"__esModule",{value:!0}),e}({},React,primereact.api,primereact.paginator,primereact.ripple,primereact.utils);