primevue
Version:
[](https://opensource.org/licenses/MIT) [](https://badge.fury.io/js/primevue) [ • 14.6 kB
JavaScript
this.primevue=this.primevue||{},this.primevue.toast=function(e,t,n,o,r,s,i,a,l,c,u,m){"use strict";function p(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var f=p(e),d=p(t),y=p(o),g=p(s),v=p(i),b=p(a),h=p(l),I=p(c),S=p(u);function w(e){return w="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},w(e)}function x(e,t,n){return(t=k(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function k(e){var t=P(e,"string");return"symbol"===w(t)?t:String(t)}function P(e,t){if("object"!==w(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,t||"default");if("object"!==w(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}var O={root:function(e){var t=e.instance;return["p-toast p-component p-toast-"+e.props.position,{"p-input-filled":"filled"===t.$primevue.config.inputStyle,"p-ripple-disabled":!1===t.$primevue.config.ripple}]},container:function(e){var t=e.props;return["p-toast-message",{"p-toast-message-info":"info"===t.message.severity||void 0===t.message.severity,"p-toast-message-warn":"warn"===t.message.severity,"p-toast-message-error":"error"===t.message.severity,"p-toast-message-success":"success"===t.message.severity}]},content:"p-toast-message-content",icon:function(e){var t,n=e.props;return["p-toast-message-icon",(t={},x(t,n.infoIcon,"info"===n.message.severity),x(t,n.warnIcon,"warn"===n.message.severity),x(t,n.errorIcon,"error"===n.message.severity),x(t,n.successIcon,"success"===n.message.severity),t)]},text:"p-toast-message-text",summary:"p-toast-summary",detail:"p-toast-detail",closeButton:"p-toast-icon-close p-link",closeIcon:"p-toast-icon-close-icon"},j=r.useStyle("\n.p-toast {\n width: 25rem;\n white-space: pre-line;\n word-break: break-word;\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-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-from {\n opacity: 0;\n -webkit-transform: translateY(50%);\n -ms-transform: translateY(50%);\n transform: translateY(50%);\n}\n\n.p-toast-message-leave-from {\n max-height: 1000px;\n}\n\n.p-toast .p-toast-message.p-toast-message-leave-to {\n max-height: 0;\n opacity: 0;\n margin-bottom: 0;\n overflow: hidden;\n}\n\n.p-toast-message-enter-active {\n -webkit-transition: transform 0.3s, opacity 0.3s;\n transition: transform 0.3s, opacity 0.3s;\n}\n\n.p-toast-message-leave-active {\n -webkit-transition: max-height 0.45s cubic-bezier(0, 1, 0, 1), opacity 0.3s, margin-bottom 0.3s;\n transition: max-height 0.45s cubic-bezier(0, 1, 0, 1), opacity 0.3s, margin-bottom 0.3s;\n}\n",{name:"toast",manual:!0}),E={name:"BaseToast",extends:y.default,props:{group:{type:String,default:null},position:{type:String,default:"top-right"},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},breakpoints:{type:Object,default:null},closeIcon:{type:String,default:void 0},infoIcon:{type:String,default:void 0},warnIcon:{type:String,default:void 0},errorIcon:{type:String,default:void 0},successIcon:{type:String,default:void 0},closeButtonProps:{type:null,default:null}},css:{classes:O,inlineStyles:{root:function(e){var t=e.position;return{position:"fixed",top:"top-right"===t||"top-left"===t||"top-center"===t?"20px":"center"===t?"50%":null,right:("top-right"===t||"bottom-right"===t)&&"20px",bottom:("bottom-left"===t||"bottom-right"===t||"bottom-center"===t)&&"20px",left:"top-left"===t||"bottom-left"===t?"20px":"center"===t||"top-center"===t||"bottom-center"===t?"50%":null}}},loadStyle:j.load},provide:function(){return{$parentInstance:this}}},C={name:"ToastMessage",hostName:"Toast",extends:y.default,emits:["close"],closeTimeout:null,props:{message:{type:null,default:null},templates:{type:Object,default:null},closeIcon:{type:String,default:null},infoIcon:{type:String,default:null},warnIcon:{type:String,default:null},errorIcon:{type:String,default:null},successIcon:{type:String,default:null},closeButtonProps:{type:null,default:null}},mounted:function(){var e=this;this.message.life&&(this.closeTimeout=setTimeout((function(){e.close({message:e.message,type:"life-end"})}),this.message.life))},beforeUnmount:function(){this.clearCloseTimeout()},methods:{close:function(e){this.$emit("close",e)},onCloseClick:function(){this.clearCloseTimeout(),this.close({message:this.message,type:"close"})},clearCloseTimeout:function(){this.closeTimeout&&(clearTimeout(this.closeTimeout),this.closeTimeout=null)}},computed:{iconComponent:function(){return{info:!this.infoIcon&&b.default,success:!this.successIcon&&g.default,warn:!this.warnIcon&&v.default,error:!this.errorIcon&&I.default}[this.message.severity]},closeAriaLabel:function(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.close:void 0}},components:{TimesIcon:h.default,InfoCircleIcon:b.default,CheckIcon:g.default,ExclamationTriangleIcon:v.default,TimesCircleIcon:I.default},directives:{ripple:S.default}};function B(e){return B="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},B(e)}function T(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 A(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?T(Object(n),!0).forEach((function(t){$(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):T(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function $(e,t,n){return(t=D(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function D(e){var t=N(e,"string");return"symbol"===B(t)?t:String(t)}function N(e,t){if("object"!==B(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,t||"default");if("object"!==B(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}var U=["aria-label"];function Z(){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 L(e,t){if(e){if("string"==typeof e)return R(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)?R(e,t):void 0}}function V(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function G(e){if(Array.isArray(e))return R(e)}function R(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n<t;n++)o[n]=e[n];return o}C.render=function(e,t,n,o,r,s){var i=m.resolveDirective("ripple");return m.openBlock(),m.createElementBlock("div",m.mergeProps({class:e.cx("container"),role:"alert","aria-live":"assertive","aria-atomic":"true"},e.ptm("container")),[m.createElementVNode("div",m.mergeProps({class:[e.cx("content"),n.message.contentStyleClass]},e.ptm("content")),[n.templates.message?(m.openBlock(),m.createBlock(m.resolveDynamicComponent(n.templates.message),{key:1,message:n.message},null,8,["message"])):(m.openBlock(),m.createElementBlock(m.Fragment,{key:0},[(m.openBlock(),m.createBlock(m.resolveDynamicComponent(n.templates.icon?n.templates.icon:s.iconComponent&&s.iconComponent.name?s.iconComponent:"span"),m.mergeProps({class:e.cx("icon")},e.ptm("icon")),null,16,["class"])),m.createElementVNode("div",m.mergeProps({class:e.cx("text")},e.ptm("text")),[m.createElementVNode("span",m.mergeProps({class:e.cx("summary")},e.ptm("summary")),m.toDisplayString(n.message.summary),17),m.createElementVNode("div",m.mergeProps({class:e.cx("detail")},e.ptm("detail")),m.toDisplayString(n.message.detail),17)],16)],64)),!1!==n.message.closable?(m.openBlock(),m.createElementBlock("div",m.normalizeProps(m.mergeProps({key:2},e.ptm("buttonContainer"))),[m.withDirectives((m.openBlock(),m.createElementBlock("button",m.mergeProps({class:e.cx("closeButton"),type:"button","aria-label":s.closeAriaLabel,onClick:t[0]||(t[0]=function(){return s.onCloseClick&&s.onCloseClick.apply(s,arguments)}),autofocus:""},A(A(A({},n.closeButtonProps),e.ptm("button")),e.ptm("closeButton"))),[(m.openBlock(),m.createBlock(m.resolveDynamicComponent(n.templates.closeicon||"TimesIcon"),m.mergeProps({class:[e.cx("closeIcon"),n.closeIcon]},A(A({},e.ptm("buttonIcon")),e.ptm("closeIcon"))),null,16,["class"]))],16,U)),[[i]])],16)):m.createCommentVNode("",!0)],16)],16)};var M=0,z={name:"Toast",extends:E,inheritAttrs:!1,emits:["close","life-end"],data:function(){return{messages:[]}},styleElement:null,mounted:function(){d.default.on("add",this.onAdd),d.default.on("remove-group",this.onRemoveGroup),d.default.on("remove-all-groups",this.onRemoveAllGroups),this.breakpoints&&this.createStyle()},beforeUnmount:function(){this.destroyStyle(),this.$refs.container&&this.autoZIndex&&n.ZIndexUtils.clear(this.$refs.container),d.default.off("add",this.onAdd),d.default.off("remove-group",this.onRemoveGroup),d.default.off("remove-all-groups",this.onRemoveAllGroups)},methods:{add:function(e){var t;null==e.id&&(e.id=M++),this.messages=[].concat(G(t=this.messages)||V(t)||L(t)||Z(),[e])},remove:function(e){for(var t=-1,n=0;n<this.messages.length;n++)if(this.messages[n]===e.message){t=n;break}this.messages.splice(t,1),this.$emit(e.type,{message:e.message})},onAdd:function(e){this.group==e.group&&this.add(e)},onRemoveGroup:function(e){this.group===e&&(this.messages=[])},onRemoveAllGroups:function(){this.messages=[]},onEnter:function(){this.$refs.container.setAttribute(this.attributeSelector,""),this.autoZIndex&&n.ZIndexUtils.set("modal",this.$refs.container,this.baseZIndex||this.$primevue.config.zIndex.modal)},onLeave:function(){var e=this;this.$refs.container&&this.autoZIndex&&n.ObjectUtils.isEmpty(this.messages)&&setTimeout((function(){n.ZIndexUtils.clear(e.$refs.container)}),200)},createStyle:function(){if(!this.styleElement&&!this.isUnstyled){var e;this.styleElement=document.createElement("style"),this.styleElement.type="text/css",n.DomHandler.setAttribute(this.styleElement,"nonce",null===(e=this.$primevue)||void 0===e||null===(e=e.config)||void 0===e||null===(e=e.csp)||void 0===e?void 0:e.nonce),document.head.appendChild(this.styleElement);var t="";for(var o in this.breakpoints){var r="";for(var s in this.breakpoints[o])r+=s+":"+this.breakpoints[o][s]+"!important;";t+="\n @media screen and (max-width: ".concat(o,") {\n .p-toast[").concat(this.attributeSelector,"] {\n ").concat(r,"\n }\n }\n ")}this.styleElement.innerHTML=t}},destroyStyle:function(){this.styleElement&&(document.head.removeChild(this.styleElement),this.styleElement=null)}},computed:{attributeSelector:function(){return n.UniqueComponentId()}},components:{ToastMessage:C,Portal:f.default}};function Y(e){return Y="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},Y(e)}function F(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 H(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?F(Object(n),!0).forEach((function(t){X(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):F(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function X(e,t,n){return(t=_(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _(e){var t=q(e,"string");return"symbol"===Y(t)?t:String(t)}function q(e,t){if("object"!==Y(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,t||"default");if("object"!==Y(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}return z.render=function(e,t,n,o,r,s){var i=m.resolveComponent("ToastMessage"),a=m.resolveComponent("Portal");return m.openBlock(),m.createBlock(a,null,{default:m.withCtx((function(){return[m.createElementVNode("div",m.mergeProps({ref:"container",class:e.cx("root"),style:e.sx("root",!0,{position:e.position})},H(H({},e.$attrs),e.ptm("root"))),[m.createVNode(m.TransitionGroup,m.mergeProps({name:"p-toast-message",tag:"div",onEnter:s.onEnter,onLeave:s.onLeave},H(H({},e.ptm("message")),e.ptm("transition"))),{default:m.withCtx((function(){return[(m.openBlock(!0),m.createElementBlock(m.Fragment,null,m.renderList(r.messages,(function(n){return m.openBlock(),m.createBlock(i,{key:n.id,message:n,templates:e.$slots,closeIcon:e.closeIcon,infoIcon:e.infoIcon,warnIcon:e.warnIcon,errorIcon:e.errorIcon,successIcon:e.successIcon,closeButtonProps:e.closeButtonProps,onClose:t[0]||(t[0]=function(e){return s.remove(e)}),pt:e.pt},null,8,["message","templates","closeIcon","infoIcon","warnIcon","errorIcon","successIcon","closeButtonProps","pt"])})),128))]})),_:1},16,["onEnter","onLeave"])],16)]})),_:1})},z}(primevue.portal,primevue.toasteventbus,primevue.utils,primevue.basecomponent,primevue.usestyle,primevue.icons.check,primevue.icons.exclamationtriangle,primevue.icons.infocircle,primevue.icons.times,primevue.icons.timescircle,primevue.ripple,Vue);