2 lines
19 KiB
JavaScript
2 lines
19 KiB
JavaScript
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/utils"),n=require("primereact/ripple"),r=require("primereact/dropdown"),o=require("primereact/inputnumber");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var s=a(e);function i(e){if(Array.isArray(e))return e}function l(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],s=!0,i=!1;try{for(n=n.call(e);!(s=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);s=!0);}catch(e){i=!0,o=e}finally{try{s||null==n.return||n.return()}finally{if(i)throw o}}return a}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function u(e,t){if(e){if("string"==typeof e)return p(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?p(e,t):void 0}}function c(){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 f(e){return f="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},f(e)}function h(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function g(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function d(e,t,n){return t&&g(e.prototype,t),n&&g(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function m(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function y(e,t){return y=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},y(e,t)}function v(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&y(e,t)}function P(e,t){if(t&&("object"===f(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return m(e)}function b(e){return b=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},b(e)}function k(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function C(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}var w=function(r){v(l,e.Component);var o,a,i=(o=l,a=C(),function(){var e,t=b(o);if(a){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return P(this,e)});function l(){return h(this,l),i.apply(this,arguments)}return d(l,[{key:"render",value:function(){var e=t.classNames("p-paginator-first p-paginator-element p-link",{"p-disabled":this.props.disabled}),r="p-paginator-icon pi pi-angle-double-left",o=s.default.createElement("button",{type:"button",className:e,onClick:this.props.onClick,disabled:this.props.disabled},s.default.createElement("span",{className:r}),s.default.createElement(n.Ripple,null));return this.props.template?t.ObjectUtils.getJSXElement(this.props.template,{onClick:this.props.onClick,className:e,iconClassName:r,disabled:this.props.disabled,element:o,props:this.props}):o}}]),l}();function R(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}k(w,"defaultProps",{disabled:!1,onClick:null,template:null});var O=function(r){v(l,e.Component);var o,a,i=(o=l,a=R(),function(){var e,t=b(o);if(a){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return P(this,e)});function l(){return h(this,l),i.apply(this,arguments)}return d(l,[{key:"render",value:function(){var e=t.classNames("p-paginator-next p-paginator-element p-link",{"p-disabled":this.props.disabled}),r="p-paginator-icon pi pi-angle-right",o=s.default.createElement("button",{type:"button",className:e,onClick:this.props.onClick,disabled:this.props.disabled},s.default.createElement("span",{className:r}),s.default.createElement(n.Ripple,null));return this.props.template?t.ObjectUtils.getJSXElement(this.props.template,{onClick:this.props.onClick,className:e,iconClassName:r,disabled:this.props.disabled,element:o,props:this.props}):o}}]),l}();function E(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}k(O,"defaultProps",{disabled:!1,onClick:null,template:null});var N=function(r){v(l,e.Component);var o,a,i=(o=l,a=E(),function(){var e,t=b(o);if(a){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return P(this,e)});function l(){return h(this,l),i.apply(this,arguments)}return d(l,[{key:"render",value:function(){var e=t.classNames("p-paginator-prev p-paginator-element p-link",{"p-disabled":this.props.disabled}),r="p-paginator-icon pi pi-angle-left",o=s.default.createElement("button",{type:"button",className:e,onClick:this.props.onClick,disabled:this.props.disabled},s.default.createElement("span",{className:r}),s.default.createElement(n.Ripple,null));return this.props.template?t.ObjectUtils.getJSXElement(this.props.template,{onClick:this.props.onClick,className:e,iconClassName:r,disabled:this.props.disabled,element:o,props:this.props}):o}}]),l}();function j(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}k(N,"defaultProps",{disabled:!1,onClick:null,template:null});var T=function(r){v(l,e.Component);var o,a,i=(o=l,a=j(),function(){var e,t=b(o);if(a){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return P(this,e)});function l(){return h(this,l),i.apply(this,arguments)}return d(l,[{key:"render",value:function(){var e=t.classNames("p-paginator-last p-paginator-element p-link",{"p-disabled":this.props.disabled}),r="p-paginator-icon pi pi-angle-double-right",o=s.default.createElement("button",{type:"button",className:e,onClick:this.props.onClick,disabled:this.props.disabled},s.default.createElement("span",{className:r}),s.default.createElement(n.Ripple,null));return this.props.template?t.ObjectUtils.getJSXElement(this.props.template,{onClick:this.props.onClick,className:e,iconClassName:r,disabled:this.props.disabled,element:o,props:this.props}):o}}]),l}();function L(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}k(T,"defaultProps",{disabled:!1,onClick:null,template:null});var S=function(r){v(l,e.Component);var o,a,i=(o=l,a=L(),function(){var e,t=b(o);if(a){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return P(this,e)});function l(){return h(this,l),i.apply(this,arguments)}return d(l,[{key:"onPageLinkClick",value:function(e,t){this.props.onClick&&this.props.onClick({originalEvent:e,value:t}),e.preventDefault()}},{key:"render",value:function(){var e,r=this;if(this.props.value){var o=this.props.value[0],a=this.props.value[this.props.value.length-1];e=this.props.value.map((function(e,i){var l=t.classNames("p-paginator-page p-paginator-element p-link",{"p-paginator-page-start":e===o,"p-paginator-page-end":e===a,"p-highlight":e-1===r.props.page}),p=s.default.createElement("button",{type:"button",className:l,onClick:function(t){return r.onPageLinkClick(t,e)}},e,s.default.createElement(n.Ripple,null));if(r.props.template){var u={onClick:function(t){return r.onPageLinkClick(t,e)},className:l,view:{startPage:o-1,endPage:a-1},page:e-1,currentPage:r.props.page,totalPages:r.props.pageCount,element:p,props:r.props};p=t.ObjectUtils.getJSXElement(r.props.template,u)}return s.default.createElement(s.default.Fragment,{key:e},p)}))}return s.default.createElement("span",{className:"p-paginator-pages"},e)}}]),l}();function x(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}k(S,"defaultProps",{value:null,page:null,rows:null,pageCount:null,links:null,template:null});var B=function(n){v(l,e.Component);var o,a,i=(o=l,a=x(),function(){var e,t=b(o);if(a){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return P(this,e)});function l(){return h(this,l),i.apply(this,arguments)}return d(l,[{key:"hasOptions",value:function(){return this.props.options&&this.props.options.length>0}},{key:"render",value:function(){var e=this.hasOptions(),n=e?this.props.options.map((function(e){return{label:String(e),value:e}})):[],o=e?s.default.createElement(r.Dropdown,{value:this.props.value,options:n,onChange:this.props.onChange,appendTo:this.props.appendTo,disabled:this.props.disabled}):null;return this.props.template?t.ObjectUtils.getJSXElement(this.props.template,{value:this.props.value,options:n,onChange:this.props.onChange,appendTo:this.props.appendTo,currentPage:this.props.page,totalPages:this.props.pageCount,totalRecords:this.props.totalRecords,disabled:this.props.disabled,element:o,props:this.props}):o}}]),l}();function D(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function M(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?D(Object(n),!0).forEach((function(t){k(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):D(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function U(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}k(B,"defaultProps",{options:null,value:null,page:null,pageCount:null,totalRecords:0,appendTo:null,onChange:null,template:null,disabled:!1});var J=function(n){v(i,e.Component);var r,o,a=(r=i,o=U(),function(){var e,t=b(r);if(o){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return P(this,e)});function i(){return h(this,i),a.apply(this,arguments)}return d(i,[{key:"render",value:function(){var e={currentPage:this.props.page+1,totalPages:this.props.pageCount,first:Math.min(this.props.first+1,this.props.totalRecords),last:Math.min(this.props.first+this.props.rows,this.props.totalRecords),rows:this.props.rows,totalRecords:this.props.totalRecords},n=this.props.reportTemplate.replace("{currentPage}",e.currentPage).replace("{totalPages}",e.totalPages).replace("{first}",e.first).replace("{last}",e.last).replace("{rows}",e.rows).replace("{totalRecords}",e.totalRecords),r=s.default.createElement("span",{className:"p-paginator-current"},n);if(this.props.template){var o=M(M({},e),{className:"p-paginator-current",element:r,props:this.props});return t.ObjectUtils.getJSXElement(this.props.template,o)}return r}}]),i}();function F(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}k(J,"defaultProps",{pageCount:null,page:null,first:null,rows:null,totalRecords:null,reportTemplate:"({currentPage} of {totalPages})",template:null});var X=function(n){v(l,e.Component);var r,a,i=(r=l,a=F(),function(){var e,t=b(r);if(a){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return P(this,e)});function l(e){var t;return h(this,l),(t=i.call(this,e)).onChange=t.onChange.bind(m(t)),t}return d(l,[{key:"onChange",value:function(e){this.props.onChange&&this.props.onChange(this.props.rows*(e.value-1),this.props.rows)}},{key:"render",value:function(){var e=this.props.pageCount>0?this.props.page+1:0,n=s.default.createElement(o.InputNumber,{value:e,onChange:this.onChange,className:"p-paginator-page-input",disabled:this.props.disabled});return this.props.template?t.ObjectUtils.getJSXElement(this.props.template,{value:e,onChange:this.onChange,disabled:this.props.disabled,className:"p-paginator-page-input",element:n,props:this.props}):n}}]),l}();function _(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}k(X,"defaultProps",{page:null,rows:null,pageCount:null,disabled:!1,template:null,onChange:null});var A=function(n){v(p,e.Component);var r,o,a=(r=p,o=_(),function(){var e,t=b(r);if(o){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return P(this,e)});function p(e){var t;return h(this,p),(t=a.call(this,e)).changePageToFirst=t.changePageToFirst.bind(m(t)),t.changePageToPrev=t.changePageToPrev.bind(m(t)),t.changePageToNext=t.changePageToNext.bind(m(t)),t.changePageToLast=t.changePageToLast.bind(m(t)),t.onRowsChange=t.onRowsChange.bind(m(t)),t.changePage=t.changePage.bind(m(t)),t.onPageLinkClick=t.onPageLinkClick.bind(m(t)),t}return d(p,[{key:"isFirstPage",value:function(){return 0===this.getPage()}},{key:"isLastPage",value:function(){return this.getPage()===this.getPageCount()-1}},{key:"getPageCount",value:function(){return Math.ceil(this.props.totalRecords/this.props.rows)}},{key:"calculatePageLinkBoundaries",value:function(){var e=this.getPageCount(),t=Math.min(this.props.pageLinkSize,e),n=Math.max(0,Math.ceil(this.getPage()-t/2)),r=Math.min(e-1,n+t-1);return[n=Math.max(0,n-(this.props.pageLinkSize-(r-n+1))),r]}},{key:"updatePageLinks",value:function(){for(var e=[],t=this.calculatePageLinkBoundaries(),n=t[1],r=t[0];r<=n;r++)e.push(r+1);return e}},{key:"changePage",value:function(e,t){var n=this.getPageCount(),r=Math.floor(e/t);r>=0&&r<n&&(this.props.onPageChange&&this.props.onPageChange({first:e,rows:t,page:r,pageCount:n}))}},{key:"getPage",value:function(){return Math.floor(this.props.first/this.props.rows)}},{key:"empty",value:function(){return 0===this.getPageCount()}},{key:"changePageToFirst",value:function(e){this.changePage(0,this.props.rows),e.preventDefault()}},{key:"changePageToPrev",value:function(e){this.changePage(this.props.first-this.props.rows,this.props.rows),e.preventDefault()}},{key:"onPageLinkClick",value:function(e){this.changePage((e.value-1)*this.props.rows,this.props.rows)}},{key:"changePageToNext",value:function(e){this.changePage(this.props.first+this.props.rows,this.props.rows),e.preventDefault()}},{key:"changePageToLast",value:function(e){this.changePage((this.getPageCount()-1)*this.props.rows,this.props.rows),e.preventDefault()}},{key:"onRowsChange",value:function(e){var t=e.value;this.isRowChanged=t!==this.props.rows,this.changePage(0,t)}},{key:"componentDidUpdate",value:function(e,t){this.props.rows===e.rows||this.isRowChanged?this.getPage()>0&&e.totalRecords!==this.props.totalRecords&&this.props.first>=this.props.totalRecords&&this.changePage((this.getPageCount()-1)*this.props.rows,this.props.rows):this.changePage(0,this.props.rows),this.isRowChanged=!1}},{key:"renderElement",value:function(e,t){var n;switch(e){case"FirstPageLink":n=s.default.createElement(w,{key:e,onClick:this.changePageToFirst,disabled:this.isFirstPage()||this.empty(),template:t});break;case"PrevPageLink":n=s.default.createElement(N,{key:e,onClick:this.changePageToPrev,disabled:this.isFirstPage()||this.empty(),template:t});break;case"NextPageLink":n=s.default.createElement(O,{key:e,onClick:this.changePageToNext,disabled:this.isLastPage()||this.empty(),template:t});break;case"LastPageLink":n=s.default.createElement(T,{key:e,onClick:this.changePageToLast,disabled:this.isLastPage()||this.empty(),template:t});break;case"PageLinks":n=s.default.createElement(S,{key:e,value:this.updatePageLinks(),page:this.getPage(),rows:this.props.rows,pageCount:this.getPageCount(),onClick:this.onPageLinkClick,template:t});break;case"RowsPerPageDropdown":n=s.default.createElement(B,{key:e,value:this.props.rows,page:this.getPage(),pageCount:this.getPageCount(),totalRecords:this.props.totalRecords,options:this.props.rowsPerPageOptions,onChange:this.onRowsChange,appendTo:this.props.dropdownAppendTo,template:t,disabled:this.empty()});break;case"CurrentPageReport":n=s.default.createElement(J,{reportTemplate:this.props.currentPageReportTemplate,key:e,page:this.getPage(),pageCount:this.getPageCount(),first:this.props.first,rows:this.props.rows,totalRecords:this.props.totalRecords,template:t});break;case"JumpToPageInput":n=s.default.createElement(X,{key:e,rows:this.props.rows,page:this.getPage(),pageCount:this.getPageCount(),onChange:this.changePage,disabled:this.empty(),template:t});break;default:n=null}return n}},{key:"renderElements",value:function(){var e=this,t=this.props.template;return t?"object"===f(t)?t.layout?t.layout.split(" ").map((function(n){var r=n.trim();return e.renderElement(r,t[r])})):Object.entries(t).map((function(t){var n,r,o=(r=2,i(n=t)||l(n,r)||u(n,r)||c());return e.renderElement(o[0],o[1])})):t.split(" ").map((function(t){return e.renderElement(t.trim())})):null}},{key:"render",value:function(){if(this.props.alwaysShow||1!==this.getPageCount()){var e=t.classNames("p-paginator p-component",this.props.className),n=t.ObjectUtils.getJSXElement(this.props.leftContent,this.props),r=t.ObjectUtils.getJSXElement(this.props.rightContent,this.props),o=this.renderElements();return s.default.createElement("div",{className:e,style:this.props.style},n&&s.default.createElement("div",{className:"p-paginator-left-content"},n),o,r&&s.default.createElement("div",{className:"p-paginator-right-content"},r))}return null}}]),p}();k(A,"defaultProps",{totalRecords:0,rows:0,first:0,pageLinkSize:5,rowsPerPageOptions:null,alwaysShow:!0,style:null,className:null,template:"FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink RowsPerPageDropdown",onPageChange:null,leftContent:null,rightContent:null,dropdownAppendTo:null,currentPageReportTemplate:"({currentPage} of {totalPages})"}),exports.Paginator=A;
|