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) 12 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("react-transition-group"),n=require("primereact/api"),o=require("primereact/componentbase"),r=require("primereact/csstransition"),a=require("primereact/hooks"),s=require("primereact/portal"),i=require("primereact/utils"),c=require("primereact/icons/check"),l=require("primereact/icons/exclamationtriangle"),u=require("primereact/icons/infocircle"),m=require("primereact/icons/times"),p=require("primereact/icons/timescircle"),f=require("primereact/ripple");function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function y(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var o=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,o.get?o:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var b=y(e),g=d(n);function v(){return v=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)({}).hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},v.apply(null,arguments)}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=Array(t);n<t;n++)o[n]=e[n];return o}function x(e){if(Array.isArray(e))return h(e)}function E(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function N(e,t){if(e){if("string"==typeof e)return h(e,t);var n={}.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)?h(e,t):void 0}}function I(){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 O(e){return x(e)||E(e)||N(e)||I()}function w(e){if(Array.isArray(e))return e}function j(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o,r,a,s,i=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(o=a.call(n)).done)&&(i.push(o.value),i.length!==t);c=!0);}catch(e){l=!0,r=e}finally{try{if(!c&&null!=n.return&&(s=n.return(),Object(s)!==s))return}finally{if(l)throw r}}return i}}function S(){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 C(e,t){return w(e)||j(e,t)||N(e,t)||S()}function P(e){return P="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},P(e)}function k(e,t){if("object"!=P(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,t||"default");if("object"!=P(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function M(e){var t=k(e,"string");return"symbol"==P(t)?t:t+""}function T(e,t,n){return(t=M(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var q=o.ComponentBase.extend({defaultProps:{__TYPE:"Toast",id:null,className:null,content: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},css:{classes:{root:function(e){var t=e.props,n=e.context;return i.classNames("p-toast p-component p-toast-"+t.position,t.className,{"p-input-filled":n&&"filled"===n.inputStyle||"filled"===g.default.inputStyle,"p-ripple-disabled":n&&!1===n.ripple||!1===g.default.ripple})},message:{message:function(e){var t=e.severity;return i.classNames("p-toast-message",T({},"p-toast-message-".concat(t),t))},content:"p-toast-message-content",buttonicon:"p-toast-icon-close-icon",closeButton:"p-toast-icon-close p-link",icon:"p-toast-message-icon",text:"p-toast-message-text",summary:"p-toast-summary",detail:"p-toast-detail"},transition:"p-toast-message"},styles:"\n@layer primereact {\n .p-toast {\n width: calc(100% - var(--toast-indent, 0px));\n max-width: 25rem;\n }\n \n .p-toast-message-icon {\n flex-shrink: 0;\n }\n \n .p-toast-message-content {\n display: flex;\n align-items: flex-start;\n }\n \n .p-toast-message-text {\n flex: 1 1 auto;\n }\n \n .p-toast-summary {\n overflow-wrap: anywhere;\n }\n \n .p-toast-detail {\n overflow-wrap: anywhere;\n }\n \n .p-toast-top-center {\n transform: translateX(-50%);\n }\n \n .p-toast-bottom-center {\n transform: translateX(-50%);\n }\n \n .p-toast-center {\n min-width: 20vw;\n transform: translate(-50%, -50%);\n }\n \n .p-toast-icon-close {\n display: flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n position: relative;\n }\n \n .p-toast-icon-close.p-link {\n cursor: pointer;\n }\n \n /* Animations */\n .p-toast-message-enter {\n opacity: 0;\n transform: translateY(50%);\n }\n \n .p-toast-message-enter-active {\n opacity: 1;\n transform: translateY(0);\n transition: transform 0.3s, opacity 0.3s;\n }\n \n .p-toast-message-enter-done {\n transform: none;\n }\n \n .p-toast-message-exit {\n opacity: 1;\n max-height: 1000px;\n }\n \n .p-toast .p-toast-message.p-toast-message-exit-active {\n opacity: 0;\n max-height: 0;\n margin-bottom: 0;\n overflow: hidden;\n transition: max-height 0.45s cubic-bezier(0, 1, 0, 1), opacity 0.3s, margin-bottom 0.3s;\n }\n}\n",inlineStyles:{root:function(e){var t=e.props;return{position:"fixed",top:"top-right"===t.position||"top-left"===t.position||"top-center"===t.position?"20px":"center"===t.position?"50%":null,right:("top-right"===t.position||"bottom-right"===t.position)&&"20px",bottom:("bottom-left"===t.position||"bottom-right"===t.position||"bottom-center"===t.position)&&"20px",left:"top-left"===t.position||"bottom-left"===t.position?"20px":"center"===t.position||"top-center"===t.position||"bottom-center"===t.position?"50%":null}}}}});function U(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function _(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?U(Object(n),!0).forEach((function(t){T(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):U(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var A=b.memo(b.forwardRef((function(e,t){var o=a.useMergeProps(),r=e.messageInfo,s=e.ptCallbacks,d=s.ptm,y=s.ptmo,g=s.cx,v=r.message,h=v.severity,x=v.content,E=v.summary,N=v.detail,I=v.closable,O=v.life,w=v.sticky,j=v.className,S=v.style,P=v.contentClassName,k=v.contentStyle,M=v.icon,T=v.closeIcon,q=v.pt,U={index:e.index},A=_(_({},e.metaData),U),D=C(b.useState(!1),2),R=D[1],Z=C(a.useTimeout((function(){H()}),O||3e3,!w&&!D[0]),1)[0],L=function(t,n){return d(t,_({hostName:e.hostName},n))},H=function(){Z(),e.onClose&&e.onClose(r)},X=function(t){!e.onClick||i.DomHandler.hasClass(t.target,"p-toast-icon-close")||i.DomHandler.hasClass(t.target,"p-toast-icon-close-icon")||e.onClick(r.message)},B=function(){if(r){var t=i.ObjectUtils.getJSXElement(x,{message:r.message,onClick:X,onClose:H}),n=o({className:g("message.icon")},L("icon",A),y(q,"icon",_(_({},U),{},{hostName:e.hostName}))),a=M;if(!M)switch(h){case"info":a=b.createElement(u.InfoCircleIcon,n);break;case"warn":a=b.createElement(l.ExclamationTriangleIcon,n);break;case"error":a=b.createElement(p.TimesCircleIcon,n);break;case"success":a=b.createElement(c.CheckIcon,n)}var s=i.IconUtils.getJSXIcon(a,_({},n),{props:e}),m=o({className:g("message.text")},L("text",A),y(q,"text",_(_({},U),{},{hostName:e.hostName}))),f=o({className:g("message.summary")},L("summary",A),y(q,"summary",_(_({},U),{},{hostName:e.hostName}))),d=o({className:g("message.detail")},L("detail",A),y(q,"detail",_(_({},U),{},{hostName:e.hostName})));return t||b.createElement(b.Fragment,null,s,b.createElement("div",m,b.createElement("span",f,E),N&&b.createElement("div",d,N)))}return null}(),z=function(){var t=o({className:g("message.buttonicon")},L("buttonicon",A),y(q,"buttonicon",_(_({},U),{},{hostName:e.hostName}))),r=i.IconUtils.getJSXIcon(T||b.createElement(m.TimesIcon,t),_({},t),{props:e}),a=o({type:"button",className:g("message.closeButton"),onClick:H,"aria-label":e.ariaCloseLabel||n.ariaLabel("close")},L("closeButton",A),y(q,"closeButton",_(_({},U),{},{hostName:e.hostName})));return!1!==I?b.createElement("div",null,b.createElement("button",a,r,b.createElement(f.Ripple,null))):null}(),J=o({ref:t,className:i.classNames(j,g("message.message",{severity:h})),style:S,role:"alert","aria-live":"assertive","aria-atomic":"true",onClick:X,onMouseEnter:function(t){e.onMouseEnter&&e.onMouseEnter(t),t.defaultPrevented||w||(Z(),R(!0))},onMouseLeave:function(t){e.onMouseLeave&&e.onMouseLeave(t),t.defaultPrevented||w||R(!1)}},L("message",A),y(q,"root",_(_({},U),{},{hostName:e.hostName}))),Y=o({className:i.classNames(P,g("message.content")),style:k},L("content",A),y(q,"content",_(_({},U),{},{hostName:e.hostName})));return b.createElement("div",J,b.createElement("div",Y,B,z))})));A.displayName="ToastMessage";var D=0,R=b.memo(b.forwardRef((function(e,c){var l=a.useMergeProps(),u=b.useContext(n.PrimeReactContext),m=q.getProps(e,u),p=C(b.useState([]),2),f=p[0],d=p[1],y=b.useRef(null),h={props:m,state:{messages:f}},x=q.setMetaData(h);o.useHandleStyle(q.css.styles,x.isUnstyled,{name:"toast"});var E=function(e){e&&d((function(t){return N(t,e,!0)}))},N=function(e,t,n){var o;if(Array.isArray(t)){var r=t.reduce((function(e,t){return e.push({_pId:D++,message:t}),e}),[]);o=n&&e?[].concat(O(e),O(r)):r}else{var a={_pId:D++,message:t};o=n&&e?[].concat(O(e),[a]):[a]}return o},I=function(){i.ZIndexUtils.clear(y.current),d([])},w=function(e){d((function(t){return N(t,e,!1)}))},j=function(e){var t=i.ObjectUtils.isNotEmpty(e._pId)?e._pId:e.message||e;d((function(n){return n.filter((function(n){return n._pId!==e._pId&&!i.ObjectUtils.deepEquals(n.message,t)}))})),m.onRemove&&m.onRemove(e.message||t)},S=function(e){j(e)},P=function(){m.onShow&&m.onShow()},k=function(){1===f.length&&i.ZIndexUtils.clear(y.current),m.onHide&&m.onHide()};a.useUpdateEffect((function(){i.ZIndexUtils.set("toast",y.current,u&&u.autoZIndex||g.default.autoZIndex,m.baseZIndex||u&&u.zIndex.toast||g.default.zIndex.toast)}),[f,m.baseZIndex]),a.useUnmountEffect((function(){i.ZIndexUtils.clear(y.current)})),b.useImperativeHandle(c,(function(){return{props:m,show:E,replace:w,remove:j,clear:I,getElement:function(){return y.current}}}));var M,T,U=(M=l({ref:y,id:m.id,className:x.cx("root",{context:u}),style:x.sx("root")},q.getOtherProps(m),x.ptm("root")),T=l({classNames:x.cx("transition"),timeout:{enter:300,exit:300},options:m.transitionOptions,unmountOnExit:!0,onEntered:P,onExited:k},x.ptm("transition")),b.createElement("div",M,b.createElement(t.TransitionGroup,null,f&&f.map((function(t,n){var o=b.createRef();return b.createElement(r.CSSTransition,v({nodeRef:o,key:t._pId},T),e.content?i.ObjectUtils.getJSXElement(e.content,{message:t.message}):b.createElement(A,{hostName:"Toast",ref:o,messageInfo:t,index:n,onClick:m.onClick,onClose:S,onMouseEnter:m.onMouseEnter,onMouseLeave:m.onMouseLeave,closeIcon:m.closeIcon,ptCallbacks:x,metaData:h}))})))));return b.createElement(s.Portal,{element:U,appendTo:m.appendTo})})));R.displayName="Toast",exports.Toast=R;