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) 11.2 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),r=require("primereact/componentbase"),n=require("primereact/icons/bars"),a=require("primereact/icons/spinner"),o=require("primereact/icons/thlarge"),i=require("primereact/paginator"),l=require("primereact/ripple"),u=require("primereact/utils"),s=require("primereact/hooks");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function p(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 f=p(e),m=c(t);function d(){return d=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},d.apply(this,arguments)}function g(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 y(e){if(Array.isArray(e))return g(e)}function v(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function b(e,t){if(e){if("string"==typeof e)return g(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)?g(e,t):void 0}}function w(){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 h(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,i,l=[],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)&&(l.push(n.value),l.length!==t);u=!0);}catch(e){s=!0,a=e}finally{try{if(!u&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(s)throw a}}return l}}function O(){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 j(e,t){return h(e)||P(e,t)||b(e,t)||O()}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 N(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 E(e){var t=N(e,"string");return"symbol"===S(t)?t:String(t)}function I(e,t,r){return(t=E(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var D=r.ComponentBase.extend({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:null,gutter:!1,itemTemplate:null,listTemplate:null,onPage:null,children:void 0},css:{classes:{loadingIcon:"p-dataview-loading-icon",loadingOverlay:"p-dataview-loading-overlay p-component-overlay",emptyMessage:"p-dataview-emptymessage",header:"p-dataview-header",footer:"p-dataview-footer",content:"p-dataview-content",grid:function(e){return u.classNames("p-grid grid",{"p-nogutter grid-nogutter":!e.props.gutter})},root:function(e){var t=e.props;return u.classNames("p-dataview p-component",I(I({},"p-dataview-".concat(t.layout),!!t.layout),"p-dataview-loading",t.loading))}},styles:"\n@layer primereact {\n .p-dataview-loading {\n position: relative;\n min-height: 4rem;\n }\n\n .p-dataview .p-dataview-loading-overlay {\n position: absolute;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n}\n"}}),T=r.ComponentBase.extend({defaultProps:{__TYPE:"DataViewLayoutOptions",id:null,style:null,className:null,layout:null,listIcon:null,gridIcon:null,onChange:null,children:void 0},css:{classes:{root:"p-dataview p-component p-dataview-layout-options p-selectbutton p-button-group",listButton:function(e){return u.classNames("p-button p-button-icon-only",{"p-highlight":"list"===e.props.layout})},gridButton:function(e){return u.classNames("p-button p-button-icon-only",{"p-highlight":"grid"===e.props.layout})}}}});function A(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=C(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,a=function(){};return{s:a,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,i=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return i=e.done,e},e:function(e){l=!0,o=e},f:function(){try{i||null==r.return||r.return()}finally{if(l)throw o}}}}function C(e,t){if(e){if("string"==typeof e)return x(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)?x(e,t):void 0}}function x(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 M(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function R(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?M(Object(r),!0).forEach((function(t){I(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):M(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var L=f.memo((function(e){var r=s.useMergeProps(),a=f.useContext(t.PrimeReactContext),i=T.getProps(e,a),c=T.setMetaData({props:i}),p=c.ptm,m=c.cx,d=function(e,t){i.onChange({originalEvent:e,value:t}),e.preventDefault()},g=r(p("list")),y=r(p("grid")),v=u.IconUtils.getJSXIcon(i.listIcon||f.createElement(n.BarsIcon,g),R({},g),{props:i}),b=u.IconUtils.getJSXIcon(i.gridIcon||f.createElement(o.ThLargeIcon,y),R({},y),{props:i}),w=r({id:i.id,style:i.style,className:u.classNames(i.className,m("root"))},T.getOtherProps(i),p("root")),h=r({type:"button",className:m("listButton"),onClick:function(e){return d(e,"list")}},p("listButton")),P=r({type:"button",className:m("gridButton"),onClick:function(e){return d(e,"grid")}},p("gridButton"));return f.createElement("div",w,f.createElement("button",h,v,f.createElement(l.Ripple,null)),f.createElement("button",P,b,f.createElement(l.Ripple,null)))})),k=f.memo((function(e){return e.template(e.item,e.layout)})),U=f.memo(f.forwardRef((function(e,n){var o=s.useMergeProps(),l=f.useContext(t.PrimeReactContext),c=D.getProps(e,l),p=j(f.useState(c.first),2),g=p[0],h=p[1],P=j(f.useState(c.rows),2),O=P[0],S=P[1],N={props:c,state:{first:g,rows:O}},E=D.setMetaData(N),I=E.ptm,T=E.cx;r.useHandleStyle(D.css.styles,E.isUnstyled,{name:"dataview"});var C=f.useRef(null),x=c.onPage?c.first:g,M=c.onPage?c.rows:O,L=function(e){return c.dataKey?u.ObjectUtils.resolveFieldData(e,c.dataKey):null},U=function(){return c.totalRecords?c.totalRecords:c.value?c.value.length:0},q=function(e){var t=u.classNames("p-paginator-"+e,c.paginatorClassName),r=U();return f.createElement(i.Paginator,{first:x,rows:M,pageLinkSize:c.pageLinkSize,className:t,onPageChange:_,template:c.paginatorTemplate,totalRecords:r,rowsPerPageOptions:c.rowsPerPageOptions,currentPageReportTemplate:c.currentPageReportTemplate,leftContent:c.paginatorLeft,rightContent:c.paginatorRight,alwaysShow:c.alwaysShowPaginator,dropdownAppendTo:c.paginatorDropdownAppendTo,ptm:I("paginator"),unstyled:c.unstyled,__parentMetadata:{parent:N}})},_=function(e){c.onPage?c.onPage(e):(h(e.first),S(e.rows))},B=function(e){if(c.paginator){var t=c.lazy?0:x,r=U(),n=Math.min(M+t,r);return e.slice(t,n)||[]}return e},V=function(){if(c.value){var e,t=new Map,r=u.ObjectUtils.localeComparator(l&&l.locale||m.default.locale),n=y(i=c.value)||v(i)||b(i)||w(),a=A(n);try{for(a.s();!(e=a.n()).done;){var o=e.value;t.set(o,u.ObjectUtils.resolveFieldData(o,c.sortField))}}catch(e){a.e(e)}finally{a.f()}return n.sort((function(e,n){var a=t.get(e),o=t.get(n);return u.ObjectUtils.sort(a,o,c.sortOrder,r,l&&l.nullSortOrder||m.default.nullSortOrder)})),n}var i;return null},z=function(){if(!c.loading){var e=c.emptyMessage||t.localeOption("emptyMessage"),r=o({className:T("emptyMessage")},I("emptyMessage"));return f.createElement("div",r,e)}return null},F=function(e){return u.ObjectUtils.isNotEmpty(e)?B(e).map((function(e,t){return f.createElement(k,{key:L(e)||t,template:c.itemTemplate,layout:c.layout,item:e})})):z()};f.useImperativeHandle(n,(function(){return{props:c,getElement:function(){return C.current}}}));var J=function(){var e=c.value;return u.ObjectUtils.isNotEmpty(e)&&c.sortField&&(e=V()),e}(),X=function(){if(c.loading){var e=o({className:T("loadingIcon")},I("loadingIcon")),t=c.loadingIcon||f.createElement(a.SpinnerIcon,d({},e,{spin:!0})),r=u.IconUtils.getJSXIcon(t,R({},e),{props:c}),n=o({className:T("loadingOverlay")},I("loadingOverlay"));return f.createElement("div",n,r)}return null}(),K=!c.paginator||"bottom"===c.paginatorPosition&&"both"!==c.paginatorPosition?null:q("top"),H=!c.paginator||"top"===c.paginatorPosition&&"both"!==c.paginatorPosition?null:q("bottom"),Y=function(){if(c.header){var e=o({className:T("header")},I("header"));return f.createElement("div",e,c.header)}return null}(),$=function(){if(c.footer){var e=o({className:T("footer")},I("footer"));return f.createElement("div",e,c.footer)}return null}(),G=function(e){var t=o({className:T("content")},I("content")),r=null;if(c.listTemplate){var n=B(e);r=u.ObjectUtils.getJSXElement(c.listTemplate,n,c.layout)}else{var a=F(e),i=o({className:T("grid")},I("grid"));r=f.createElement("div",i,a)}return f.createElement("div",t,r)}(J),Q=o({id:c.id,ref:C,style:c.style,className:u.classNames(c.className,T("root"))},D.getOtherProps(c),I("root"));return f.createElement("div",Q,X,Y,K,G,H,$)})));L.displayName="DataViewLayoutOptions",k.displayName="DataViewItem",U.displayName="DataView",exports.DataView=U,exports.DataViewItem=k,exports.DataViewLayoutOptions=L;