UNPKG

primevue

Version:

PrimeVue is an open source UI library for Vue featuring a rich set of 80+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with PrimeBloc

2 lines (1 loc) 10.6 kB
import e from"primevue/portal";import t from"primevue/toasteventbus";import{ZIndexUtils as o,ObjectUtils as n,DomHandler as r,UniqueComponentId as s}from"primevue/utils";import i from"primevue/basecomponent";import l from"primevue/toast/style";import c from"primevue/icons/check";import a from"primevue/icons/exclamationtriangle";import u from"primevue/icons/infocircle";import m from"primevue/icons/times";import p from"primevue/icons/timescircle";import f from"primevue/ripple";import{resolveDirective as y,openBlock as d,createElementBlock as v,mergeProps as b,createBlock as g,resolveDynamicComponent as h,Fragment as I,createElementVNode as S,toDisplayString as O,normalizeProps as j,withDirectives as C,createCommentVNode as P,resolveComponent as w,withCtx as x,createVNode as T,TransitionGroup as k,renderList as E}from"vue";var A={name:"BaseToast",extends:i,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}},style:l,provide:function(){return{$parentInstance:this}}},$={name:"ToastMessage",hostName:"Toast",extends:i,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&&u,success:!this.successIcon&&c,warn:!this.warnIcon&&a,error:!this.errorIcon&&p}[this.message.severity]},closeAriaLabel:function(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.close:void 0}},components:{TimesIcon:m,InfoCircleIcon:u,CheckIcon:c,ExclamationTriangleIcon:a,TimesCircleIcon:p},directives:{ripple:f}};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 R(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,n)}return o}function D(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{};t%2?R(Object(o),!0).forEach((function(t){L(e,t,o[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):R(Object(o)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))}))}return e}function L(e,t,o){var n;return(t="symbol"==B(n=G(t,"string"))?n:String(n))in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function G(e,t){if("object"!=B(e)||!e)return e;var o=e[Symbol.toPrimitive];if(void 0!==o){var n=o.call(e,t||"default");if("object"!=B(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}var Z=["aria-label"];function M(){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 N(e,t){if(e){if("string"==typeof e)return z(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);return"Object"===o&&e.constructor&&(o=e.constructor.name),"Map"===o||"Set"===o?Array.from(e):"Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?z(e,t):void 0}}function U(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _(e){if(Array.isArray(e))return z(e)}function z(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,n=new Array(t);o<t;o++)n[o]=e[o];return n}$.render=function(e,t,o,n,r,s){var i=y("ripple");return d(),v("div",b({class:[e.cx("container"),o.message.styleClass],role:"alert","aria-live":"assertive","aria-atomic":"true"},e.ptm("container")),[o.templates.container?(d(),g(h(o.templates.container),{key:0,message:o.message,onClose:s.onCloseClick,closeCallback:s.onCloseClick},null,40,["message","onClose","closeCallback"])):(d(),v("div",b({key:1,class:[e.cx("content"),o.message.contentStyleClass]},e.ptm("content")),[o.templates.message?(d(),g(h(o.templates.message),{key:1,message:o.message},null,8,["message"])):(d(),v(I,{key:0},[(d(),g(h(o.templates.icon?o.templates.icon:s.iconComponent&&s.iconComponent.name?s.iconComponent:"span"),b({class:e.cx("icon")},e.ptm("icon")),null,16,["class"])),S("div",b({class:e.cx("text")},e.ptm("text")),[S("span",b({class:e.cx("summary")},e.ptm("summary")),O(o.message.summary),17),S("div",b({class:e.cx("detail")},e.ptm("detail")),O(o.message.detail),17)],16)],64)),!1!==o.message.closable?(d(),v("div",j(b({key:2},e.ptm("buttonContainer"))),[C((d(),v("button",b({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:""},D(D(D({},o.closeButtonProps),e.ptm("button")),e.ptm("closeButton"))),[(d(),g(h(o.templates.closeicon||"TimesIcon"),b({class:[e.cx("closeIcon"),o.closeIcon]},D(D({},e.ptm("buttonIcon")),e.ptm("closeIcon"))),null,16,["class"]))],16,Z)),[[i]])],16)):P("",!0)],16))],16)};var H=0,q={name:"Toast",extends:A,inheritAttrs:!1,emits:["close","life-end"],data:function(){return{messages:[]}},styleElement:null,mounted:function(){t.on("add",this.onAdd),t.on("remove",this.onRemove),t.on("remove-group",this.onRemoveGroup),t.on("remove-all-groups",this.onRemoveAllGroups),this.breakpoints&&this.createStyle()},beforeUnmount:function(){this.destroyStyle(),this.$refs.container&&this.autoZIndex&&o.clear(this.$refs.container),t.off("add",this.onAdd),t.off("remove",this.onRemove),t.off("remove-group",this.onRemoveGroup),t.off("remove-all-groups",this.onRemoveAllGroups)},methods:{add:function(e){var t;null==e.id&&(e.id=H++),this.messages=[].concat(_(t=this.messages)||U(t)||N(t)||M(),[e])},remove:function(e){for(var t=-1,o=0;o<this.messages.length;o++)if(this.messages[o]===e.message){t=o;break}this.messages.splice(t,1),this.$emit(e.type,{message:e.message})},onAdd:function(e){this.group==e.group&&this.add(e)},onRemove:function(e){this.remove({message:e,type:"close"})},onRemoveGroup:function(e){this.group===e&&(this.messages=[])},onRemoveAllGroups:function(){this.messages=[]},onEnter:function(){this.$refs.container.setAttribute(this.attributeSelector,""),this.autoZIndex&&o.set("modal",this.$refs.container,this.baseZIndex||this.$primevue.config.zIndex.modal)},onLeave:function(){var e=this;this.$refs.container&&this.autoZIndex&&n.isEmpty(this.messages)&&setTimeout((function(){o.clear(e.$refs.container)}),200)},createStyle:function(){if(!this.styleElement&&!this.isUnstyled){var e;this.styleElement=document.createElement("style"),this.styleElement.type="text/css",r.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 n="";for(var s in this.breakpoints[o])n+=s+":"+this.breakpoints[o][s]+"!important;";t+="\n @media screen and (max-width: ".concat(o,") {\n .p-toast[").concat(this.attributeSelector,"] {\n ").concat(n,"\n }\n }\n ")}this.styleElement.innerHTML=t}},destroyStyle:function(){this.styleElement&&(document.head.removeChild(this.styleElement),this.styleElement=null)}},computed:{attributeSelector:function(){return s()}},components:{ToastMessage:$,Portal:e}};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 J(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,n)}return o}function K(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{};t%2?J(Object(o),!0).forEach((function(t){Q(e,t,o[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):J(Object(o)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))}))}return e}function Q(e,t,o){var n;return(t="symbol"==F(n=V(t,"string"))?n:String(n))in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function V(e,t){if("object"!=F(e)||!e)return e;var o=e[Symbol.toPrimitive];if(void 0!==o){var n=o.call(e,t||"default");if("object"!=F(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}q.render=function(e,t,o,n,r,s){var i=w("ToastMessage"),l=w("Portal");return d(),g(l,null,{default:x((function(){return[S("div",b({ref:"container",class:e.cx("root"),style:e.sx("root",!0,{position:e.position})},K(K({},e.$attrs),e.ptm("root"))),[T(k,b({name:"p-toast-message",tag:"div",onEnter:s.onEnter,onLeave:s.onLeave},K(K({},e.ptm("message")),e.ptm("transition"))),{default:x((function(){return[(d(!0),v(I,null,E(r.messages,(function(o){return d(),g(i,{key:o.id,message:o,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})};export{q as default};