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
JavaScript
this.primereact=this.primereact||{},this.primereact.dataview=function(t,e,n,r,a,o,i,l,u,s,c){"use strict";function p(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}function f(t){if(t&&t.__esModule)return t;var e=Object.create(null);return t&&Object.keys(t).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,r.get?r:{enumerable:!0,get:function(){return t[n]}})}})),e.default=t,Object.freeze(e)}var m=f(e),d=p(n);function g(){return g=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},g.apply(this,arguments)}function y(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function v(t){if(Array.isArray(t))return y(t)}function b(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}function h(t,e){if(t){if("string"==typeof t)return y(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?y(t,e):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 P(t){if(Array.isArray(t))return t}function O(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var r,a,o,i,l=[],u=!0,s=!1;try{if(o=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=o.call(n)).done)&&(l.push(r.value),l.length!==e);u=!0);}catch(t){s=!0,a=t}finally{try{if(!u&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(s)throw a}}return l}}function j(){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 S(t,e){return P(t)||O(t,e)||h(t,e)||j()}function N(t){return N="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},N(t)}function E(t,e){if("object"!==N(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e||"default");if("object"!==N(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}function I(t){var e=E(t,"string");return"symbol"===N(e)?e:String(e)}function D(t,e,n){return(e=I(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var T=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(t){return s.classNames("p-grid grid",{"p-nogutter grid-nogutter":!t.props.gutter})},root:function(t){var e=t.props;return s.classNames("p-dataview p-component",D(D({},"p-dataview-".concat(e.layout),!!e.layout),"p-dataview-loading",e.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"}}),A=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(t){return s.classNames("p-button p-button-icon-only",{"p-highlight":"list"===t.props.layout})},gridButton:function(t){return s.classNames("p-button p-button-icon-only",{"p-highlight":"grid"===t.props.layout})}}}});function C(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=M(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,a=function(){};return{s:a,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},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(){n=n.call(t)},n:function(){var t=n.next();return i=t.done,t},e:function(t){l=!0,o=t},f:function(){try{i||null==n.return||n.return()}finally{if(l)throw o}}}}function M(t,e){if(t){if("string"==typeof t)return R(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?R(t,e):void 0}}function R(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function L(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function k(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?L(Object(n),!0).forEach((function(e){D(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):L(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}var x=m.memo((function(t){var e=c.useMergeProps(),r=m.useContext(n.PrimeReactContext),o=A.getProps(t,r),l=A.setMetaData({props:o}),p=l.ptm,f=l.cx,d=function(t,e){o.onChange({originalEvent:t,value:e}),t.preventDefault()},g=e(p("list")),y=e(p("grid")),v=s.IconUtils.getJSXIcon(o.listIcon||m.createElement(a.BarsIcon,g),k({},g),{props:o}),b=s.IconUtils.getJSXIcon(o.gridIcon||m.createElement(i.ThLargeIcon,y),k({},y),{props:o}),h=e({id:o.id,style:o.style,className:s.classNames(o.className,f("root"))},A.getOtherProps(o),p("root")),w=e({type:"button",className:f("listButton"),onClick:function(t){return d(t,"list")}},p("listButton")),P=e({type:"button",className:f("gridButton"),onClick:function(t){return d(t,"grid")}},p("gridButton"));return m.createElement("div",h,m.createElement("button",w,v,m.createElement(u.Ripple,null)),m.createElement("button",P,b,m.createElement(u.Ripple,null)))})),U=m.memo((function(t){return t.template(t.item,t.layout)})),_=m.memo(m.forwardRef((function(t,e){var a=c.useMergeProps(),i=m.useContext(n.PrimeReactContext),u=T.getProps(t,i),p=S(m.useState(u.first),2),f=p[0],y=p[1],P=S(m.useState(u.rows),2),O=P[0],j=P[1],N={props:u,state:{first:f,rows:O}},E=T.setMetaData(N),I=E.ptm,D=E.cx;r.useHandleStyle(T.css.styles,E.isUnstyled,{name:"dataview"});var A=m.useRef(null),M=u.onPage?u.first:f,R=u.onPage?u.rows:O,L=function(t){return u.dataKey?s.ObjectUtils.resolveFieldData(t,u.dataKey):null},x=function(){return u.totalRecords?u.totalRecords:u.value?u.value.length:0},_=function(t){var e=s.classNames("p-paginator-"+t,u.paginatorClassName),n=x();return m.createElement(l.Paginator,{first:M,rows:R,pageLinkSize:u.pageLinkSize,className:e,onPageChange:B,template:u.paginatorTemplate,totalRecords:n,rowsPerPageOptions:u.rowsPerPageOptions,currentPageReportTemplate:u.currentPageReportTemplate,leftContent:u.paginatorLeft,rightContent:u.paginatorRight,alwaysShow:u.alwaysShowPaginator,dropdownAppendTo:u.paginatorDropdownAppendTo,ptm:I("paginator"),unstyled:u.unstyled,__parentMetadata:{parent:N}})},B=function(t){u.onPage?u.onPage(t):(y(t.first),j(t.rows))},V=function(t){if(u.paginator){var e=u.lazy?0:M,n=x(),r=Math.min(R+e,n);return t.slice(e,r)||[]}return t},z=function(){if(u.value){var t,e=new Map,n=s.ObjectUtils.localeComparator(i&&i.locale||d.default.locale),r=v(l=u.value)||b(l)||h(l)||w(),a=C(r);try{for(a.s();!(t=a.n()).done;){var o=t.value;e.set(o,s.ObjectUtils.resolveFieldData(o,u.sortField))}}catch(t){a.e(t)}finally{a.f()}return r.sort((function(t,r){var a=e.get(t),o=e.get(r);return s.ObjectUtils.sort(a,o,u.sortOrder,n,i&&i.nullSortOrder||d.default.nullSortOrder)})),r}var l;return null},F=function(){if(!u.loading){var t=u.emptyMessage||n.localeOption("emptyMessage"),e=a({className:D("emptyMessage")},I("emptyMessage"));return m.createElement("div",e,t)}return null},J=function(t){return s.ObjectUtils.isNotEmpty(t)?V(t).map((function(t,e){return m.createElement(U,{key:L(t)||e,template:u.itemTemplate,layout:u.layout,item:t})})):F()};m.useImperativeHandle(e,(function(){return{props:u,getElement:function(){return A.current}}}));var X=function(){var t=u.value;return s.ObjectUtils.isNotEmpty(t)&&u.sortField&&(t=z()),t}(),K=function(){if(u.loading){var t=a({className:D("loadingIcon")},I("loadingIcon")),e=u.loadingIcon||m.createElement(o.SpinnerIcon,g({},t,{spin:!0})),n=s.IconUtils.getJSXIcon(e,k({},t),{props:u}),r=a({className:D("loadingOverlay")},I("loadingOverlay"));return m.createElement("div",r,n)}return null}(),H=!u.paginator||"bottom"===u.paginatorPosition&&"both"!==u.paginatorPosition?null:_("top"),Y=!u.paginator||"top"===u.paginatorPosition&&"both"!==u.paginatorPosition?null:_("bottom"),$=function(){if(u.header){var t=a({className:D("header")},I("header"));return m.createElement("div",t,u.header)}return null}(),q=function(){if(u.footer){var t=a({className:D("footer")},I("footer"));return m.createElement("div",t,u.footer)}return null}(),G=function(t){var e=a({className:D("content")},I("content")),n=null;if(u.listTemplate){var r=V(t);n=s.ObjectUtils.getJSXElement(u.listTemplate,r,u.layout)}else{var o=J(t),i=a({className:D("grid")},I("grid"));n=m.createElement("div",i,o)}return m.createElement("div",e,n)}(X),Q=a({id:u.id,ref:A,style:u.style,className:s.classNames(u.className,D("root"))},T.getOtherProps(u),I("root"));return m.createElement("div",Q,K,$,H,G,Y,q)})));return x.displayName="DataViewLayoutOptions",U.displayName="DataViewItem",_.displayName="DataView",t.DataView=_,t.DataViewItem=U,t.DataViewLayoutOptions=x,Object.defineProperty(t,"__esModule",{value:!0}),t}({},React,primereact.api,primereact.componentbase,primereact.icons.bars,primereact.icons.spinner,primereact.icons.thlarge,primereact.paginator,primereact.ripple,primereact.utils,primereact.hooks);