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) • 1.68 kB
JavaScript
import*as e from"react";import{ObjectUtils as r,classNames as n,IconUtils as t}from"primereact/utils";function s(){return s=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var n=arguments[r];for(var t in n)Object.prototype.hasOwnProperty.call(n,t)&&(e[t]=n[t])}return e},s.apply(this,arguments)}var i={defaultProps:{__TYPE:"Message",id:null,className:null,style:null,text:null,icon:null,severity:"info",content:null,children:void 0},getProps:function(e){return r.getMergedProps(e,i.defaultProps)},getOtherProps:function(e){return r.getDiffProps(e,i.defaultProps)}},a=e.memo(e.forwardRef((function(a,l){var o=i.getProps(a),c=e.useRef(null);e.useImperativeHandle(l,(function(){return{props:o,getElement:function(){return c.current}}}));var p=i.getOtherProps(o),u=n("p-inline-message p-component",{"p-inline-message-info":"info"===o.severity,"p-inline-message-warn":"warn"===o.severity,"p-inline-message-error":"error"===o.severity,"p-inline-message-success":"success"===o.severity,"p-inline-message-icon-only":!o.text},o.className),m=function(){if(o.content)return r.getJSXElement(o.content,o);var s=r.getJSXElement(o.text,o),i=o.icon;i||(i=n("pi",{"pi-info-circle":"info"===o.severity,"pi-exclamation-triangle":"warn"===o.severity,"pi-times-circle":"error"===o.severity,"pi-check":"success"===o.severity}));var a=t.getJSXIcon(i,{className:"p-inline-message-icon"},{props:o});return e.createElement(e.Fragment,null,a,e.createElement("span",{className:"p-inline-message-text"},s))}();return e.createElement("div",s({id:o.id,ref:c,className:u,style:o.style},p,{role:"alert","aria-live":"polite"}),m)})));a.displayName="Message";export{a as Message};