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) 9.89 kB
import*as e from"react";import{TransitionGroup as t}from"react-transition-group";import n from"primereact/api";import{CSSTransition as r}from"primereact/csstransition";import{useTimeout as o,useUpdateEffect as a,useUnmountEffect as l}from"primereact/hooks";import{Portal as i}from"primereact/portal";import{ObjectUtils as s,classNames as u,DomHandler as c,ZIndexUtils as m}from"primereact/utils";import{Ripple as p}from"primereact/ripple";function f(){return f=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},f.apply(this,arguments)}function d(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 y(e){if(Array.isArray(e))return d(e)}function E(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 d(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)?d(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 g(e){return y(e)||E(e)||b(e)||v()}function S(e){if(Array.isArray(e))return e}function T(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a,l,i=[],s=!0,u=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(r=a.call(n)).done)&&(i.push(r.value),i.length!==t);s=!0);}catch(e){u=!0,o=e}finally{try{if(!s&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(u)throw o}}return i}}function h(){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 A(e,t){return S(e)||T(e,t)||b(e,t)||h()}var N={defaultProps:{__TYPE:"Toast",id:null,className:null,style:null,baseZIndex:0,position:"top-right",transitionOptions:null,appendTo:"self",onClick:null,onRemove:null,onShow:null,onHide:null,onMouseEnter:null,onMouseLeave:null,children:void 0},getProps:function(e){return s.getMergedProps(e,N.defaultProps)},getOtherProps:function(e){return s.getDiffProps(e,N.defaultProps)}};function _(e){return _="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},_(e)}function O(e,t){if("object"!==_(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==_(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function I(e){var t=O(e,"string");return"symbol"===_(t)?t:String(t)}function L(e,t,n){return(t=I(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function C(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,I(r.key),r)}}function M(e,t,n){return t&&C(e.prototype,t),n&&C(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function R(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var w=Object.freeze({STARTS_WITH:"startsWith",CONTAINS:"contains",NOT_CONTAINS:"notContains",ENDS_WITH:"endsWith",EQUALS:"equals",NOT_EQUALS:"notEquals",IN:"in",LESS_THAN:"lt",LESS_THAN_OR_EQUAL_TO:"lte",GREATER_THAN:"gt",GREATER_THAN_OR_EQUAL_TO:"gte",BETWEEN:"between",DATE_IS:"dateIs",DATE_IS_NOT:"dateIsNot",DATE_BEFORE:"dateBefore",DATE_AFTER:"dateAfter",CUSTOM:"custom"}),P=M((function e(){R(this,e)}));L(P,"ripple",!1),L(P,"inputStyle","outlined"),L(P,"locale","en"),L(P,"appendTo",null),L(P,"cssTransition",!0),L(P,"autoZIndex",!0),L(P,"nonce",null),L(P,"nullSortOrder",1),L(P,"zIndex",{modal:1100,overlay:1e3,menu:1e3,tooltip:1100,toast:1200}),L(P,"filterMatchModeOptions",{text:[w.STARTS_WITH,w.CONTAINS,w.NOT_CONTAINS,w.ENDS_WITH,w.EQUALS,w.NOT_EQUALS],numeric:[w.EQUALS,w.NOT_EQUALS,w.LESS_THAN,w.LESS_THAN_OR_EQUAL_TO,w.GREATER_THAN,w.GREATER_THAN_OR_EQUAL_TO],date:[w.DATE_IS,w.DATE_IS_NOT,w.DATE_BEFORE,w.DATE_AFTER]}),L(P,"changeTheme",(function(e,t,n,r){var o,a=document.getElementById(n),l=a.cloneNode(!0),i=a.getAttribute("href").replace(e,t);l.setAttribute("id",n+"-clone"),l.setAttribute("href",i),l.addEventListener("load",(function(){a.remove(),l.setAttribute("id",n),r&&r()})),null===(o=a.parentNode)||void 0===o||o.insertBefore(l,a.nextSibling)}));var x={en:{startsWith:"Starts with",contains:"Contains",notContains:"Not contains",endsWith:"Ends with",equals:"Equals",notEquals:"Not equals",noFilter:"No Filter",filter:"Filter",lt:"Less than",lte:"Less than or equal to",gt:"Greater than",gte:"Greater than or equal to",dateIs:"Date is",dateIsNot:"Date is not",dateBefore:"Date is before",dateAfter:"Date is after",custom:"Custom",clear:"Clear",close:"Close",apply:"Apply",matchAll:"Match All",matchAny:"Match Any",addRule:"Add Rule",removeRule:"Remove Rule",accept:"Yes",reject:"No",choose:"Choose",upload:"Upload",cancel:"Cancel",dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",weekHeader:"Wk",firstDayOfWeek:0,dateFormat:"mm/dd/yy",weak:"Weak",medium:"Medium",strong:"Strong",passwordPrompt:"Enter a password",emptyFilterMessage:"No available options",emptyMessage:"No results found",aria:{trueLabel:"True",falseLabel:"False",nullLabel:"Not Selected",pageLabel:"Page",firstPageLabel:"First Page",lastPageLabel:"Last Page",nextPageLabel:"Next Page",previousPageLabel:"Previous Page",selectLabel:"Select",unselectLabel:"Unselect",expandLabel:"Expand",collapseLabel:"Collapse"}}};function k(e,t){var n=t||P.locale;try{return D(n)[e]}catch(t){throw new Error("The ".concat(e," option is not found in the current locale('").concat(n,"')."))}}function D(e){return x[e||P.locale]}var F=e.memo(e.forwardRef((function(t,n){var r=t.messageInfo,a=r.message,l=a.severity,i=a.content,m=a.summary,f=a.detail,d=a.closable,y=a.life,E=a.sticky,b=a.className,v=a.style,g=a.contentClassName,S=a.contentStyle,T=A(e.useState(!1),2),h=T[1],N=A(o((function(){_()}),y||3e3,!E&&!T[0]),1)[0],_=function(){N(),t.onClose&&t.onClose(r)},O=function(e){!t.onClick||c.hasClass(e.target,"p-toast-icon-close")||c.hasClass(e.target,"p-toast-icon-close-icon")||t.onClick(r.message)},I=u("p-toast-message",L({},"p-toast-message-".concat(l),l),b),C=u("p-toast-message-content",g),M=function(){if(r){var t=s.getJSXElement(i,{message:r.message,onClick:O,onClose:_}),n=u("p-toast-message-icon pi",{"pi-info-circle":"info"===l,"pi-exclamation-triangle":"warn"===l,"pi-times":"error"===l,"pi-check":"success"===l});return t||e.createElement(e.Fragment,null,e.createElement("span",{className:n}),e.createElement("div",{className:"p-toast-message-text"},e.createElement("span",{className:"p-toast-summary"},m),f&&e.createElement("div",{className:"p-toast-detail"},f)))}return null}(),R=!1!==d?e.createElement("div",null,e.createElement("button",{type:"button",className:"p-toast-icon-close p-link",onClick:_,"aria-label":k("close")},e.createElement("span",{className:"p-toast-icon-close-icon pi pi-times","aria-hidden":"true"}),e.createElement(p,null))):null;return e.createElement("div",{ref:n,className:I,style:v,role:"alert","aria-live":"assertive","aria-atomic":"true",onClick:O,onMouseEnter:function(e){t.onMouseEnter&&t.onMouseEnter(e),e.defaultPrevented||E||(N(),h(!0))},onMouseLeave:function(e){t.onMouseLeave&&t.onMouseLeave(e),e.defaultPrevented||E||h(!1)}},e.createElement("div",{className:C,style:S},M,R))})));F.displayName="ToastMessage";var H=0,j=e.memo(e.forwardRef((function(o,s){var c=N.getProps(o),p=A(e.useState([]),2),d=p[0],y=p[1],E=e.useRef(null),b=function(e){if(e){var t=v(e,!0);y(t)}},v=function(e,t){var n;if(Array.isArray(e)){var r=e.reduce((function(e,t){return e.push({_pId:H++,message:t}),e}),[]);n=t&&d?[].concat(g(d),g(r)):r}else{var o={_pId:H++,message:e};n=t&&d?[].concat(g(d),[o]):[o]}return n},S=function(){m.clear(E.current),y([])},T=function(e){var t=v(e,!1);y(t)},h=function(e){var t=d.filter((function(t){return t._pId!==e._pId}));y(t),c.onRemove&&c.onRemove(e.message)},_=function(e){h(e)},O=function(){c.onShow&&c.onShow()},I=function(){1===d.length&&m.clear(E.current),c.onHide&&c.onHide()};a((function(){m.set("toast",E.current,n.autoZIndex,c.baseZIndex||n.zIndex.toast)}),[d,c.baseZIndex]),l((function(){m.clear(E.current)})),e.useImperativeHandle(s,(function(){return{props:c,show:b,replace:T,remove:h,clear:S,getElement:function(){return E.current}}}));var L,C,M=(L=N.getOtherProps(c),C=u("p-toast p-component p-toast-"+c.position,c.className,{"p-input-filled":"filled"===n.inputStyle,"p-ripple-disabled":!1===n.ripple}),e.createElement("div",f({ref:E,id:c.id,className:C,style:c.style},L),e.createElement(t,null,d&&d.map((function(t){var n=e.createRef();return e.createElement(r,{nodeRef:n,key:t._pId,classNames:"p-toast-message",unmountOnExit:!0,timeout:{enter:300,exit:300},onEntered:O,onExited:I,options:c.transitionOptions},e.createElement(F,{ref:n,messageInfo:t,onClick:c.onClick,onClose:_,onMouseEnter:c.onMouseEnter,onMouseLeave:c.onMouseLeave}))})))));return e.createElement(i,{element:M,appendTo:c.appendTo})})));j.displayName="Toast";export{j as Toast};