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.95 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),r=require("primereact/paginator"),n=require("primereact/ripple"),a=require("primereact/utils");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function l(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 i=l(e),u=o(t);function s(e){return s="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},s(e)}function p(e,t){if("object"!==s(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==s(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function c(e){var t=p(e,"string");return"symbol"===s(t)?t:String(t)}function f(e,t,r){return(t=c(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function m(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 m(e)}function d(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function y(e,t){if(e){if("string"==typeof e)return m(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)?m(e,t):void 0}}function v(){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 b(e){if(Array.isArray(e))return e}function P(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 h(e,t){return b(e)||P(e,t)||y(e,t)||w()}function O(){return O=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},O.apply(this,arguments)}var N={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 a.ObjectUtils.getMergedProps(e,N.defaultProps)},getOtherProps:function(e){return a.ObjectUtils.getDiffProps(e,N.defaultProps)}},j={defaultProps:{__TYPE:"DataViewLayoutOptions",id:null,style:null,className:null,layout:null,onChange:null,children:void 0},getProps:function(e){return a.ObjectUtils.getMergedProps(e,j.defaultProps)},getOtherProps:function(e){return a.ObjectUtils.getDiffProps(e,j.defaultProps)}},E=i.memo((function(e){var t=j.getProps(e),r=function(e,r){t.onChange({originalEvent:e,value:r}),e.preventDefault()},o=j.getOtherProps(t),l=a.classNames("p-dataview-layout-options p-selectbutton p-buttonset",t.className),u=a.classNames("p-button p-button-icon-only",{"p-highlight":"list"===t.layout}),s=a.classNames("p-button p-button-icon-only",{"p-highlight":"grid"===t.layout});return i.createElement("div",O({id:t.id,style:t.style,className:l},o),i.createElement("button",{type:"button",className:u,onClick:function(e){return r(e,"list")}},i.createElement("i",{className:"pi pi-bars"}),i.createElement(n.Ripple,null)),i.createElement("button",{type:"button",className:s,onClick:function(e){return r(e,"grid")}},i.createElement("i",{className:"pi pi-th-large"}),i.createElement(n.Ripple,null)))})),S=i.memo((function(e){return e.template(e.item,e.layout)})),D=i.memo(i.forwardRef((function(e,n){var o,l=N.getProps(e),s=h(i.useState(l.first),2),p=s[0],c=s[1],m=h(i.useState(l.rows),2),b=m[0],P=m[1],w=i.useRef(null),j=l.onPage?l.first:p,E=l.onPage?l.rows:b,D=function(e){return l.dataKey?a.ObjectUtils.resolveFieldData(e,l.dataKey):null},T=function(){return l.totalRecords?l.totalRecords:l.value?l.value.length:0},L=function(e){var t=a.classNames("p-paginator-"+e,l.paginatorClassName),n=T();return i.createElement(r.Paginator,{first:j,rows:E,pageLinkSize:l.pageLinkSize,className:t,onPageChange:R,template:l.paginatorTemplate,totalRecords:n,rowsPerPageOptions:l.rowsPerPageOptions,currentPageReportTemplate:l.currentPageReportTemplate,leftContent:l.paginatorLeft,rightContent:l.paginatorRight,alwaysShow:l.alwaysShowPaginator,dropdownAppendTo:l.paginatorDropdownAppendTo})},R=function(e){l.onPage?l.onPage(e):(c(e.first),P(e.rows))},k=function(){if(l.value){var e=g(t=l.value)||d(t)||y(t)||v();return e.sort((function(e,t){var r=a.ObjectUtils.resolveFieldData(e,l.sortField),n=a.ObjectUtils.resolveFieldData(t,l.sortField);return a.ObjectUtils.sort(r,n,l.sortOrder,u.default.locale,u.default.nullSortOrder)})),e}var t;return null},A=function(){if(!l.loading){var e=l.emptyMessage||t.localeOption("emptyMessage");return i.createElement("div",{className:"p-col-12 col-12 p-dataview-emptymessage"},e)}return null},U=function(e){if(a.ObjectUtils.isNotEmpty(e)){if(l.paginator){for(var t=l.lazy?0:j,r=T(),n=Math.min(E+t,r),o=[],u=t;u<n;u++){var s=e[u];s&&o.push(i.createElement(S,{key:D(e)||u,template:l.itemTemplate,layout:l.layout,item:s}))}return o}return e.map((function(e,t){return i.createElement(S,{key:D(e)||t,template:l.itemTemplate,layout:l.layout,item:e})}))}return A()};i.useImperativeHandle(n,(function(){return{props:l,getElement:function(){return w.current}}}));var C,I,M=function(){var e=l.value;return a.ObjectUtils.isNotEmpty(e)&&l.sortField&&(e=k()),e}(),F=N.getOtherProps(l),V=a.classNames("p-dataview p-component",(f(o={},"p-dataview-".concat(l.layout),!!l.layout),f(o,"p-dataview-loading",l.loading),o),l.className),_=function(){if(l.loading){var e=a.classNames("p-dataview-loading-icon pi-spin",l.loadingIcon);return i.createElement("div",{className:"p-dataview-loading-overlay p-component-overlay"},i.createElement("i",{className:e}))}return null}(),x=!l.paginator||"bottom"===l.paginatorPosition&&"both"!==l.paginatorPosition?null:L("top"),z=!l.paginator||"top"===l.paginatorPosition&&"both"!==l.paginatorPosition?null:L("bottom"),q=l.header?i.createElement("div",{className:"p-dataview-header"},l.header):null,K=l.footer?i.createElement("div",{className:"p-dataview-footer"},l.footer):null,Y=(C=U(M),I=a.classNames("p-grid grid",{"p-nogutter grid-nogutter":!l.gutter}),i.createElement("div",{className:"p-dataview-content"},i.createElement("div",{className:I},C)));return i.createElement("div",O({id:l.id,ref:w,style:l.style,className:V},F),_,q,x,Y,z,K)})));E.displayName="DataViewLayoutOptions",S.displayName="DataViewItem",D.displayName="DataView",exports.DataView=D,exports.DataViewItem=S,exports.DataViewLayoutOptions=E;