UNPKG

vexip-ui

Version:

A Vue 3 UI library, Highly customizability, full TypeScript, performance pretty good

3 lines (2 loc) 4.33 kB
"use strict";const e=require("vue");require("../icon/index.cjs");require("../renderer/index.cjs");require("../popup/index.cjs");const f=require("@vexip-ui/config"),u=require("./symbol.cjs"),b=require("../popup/popup.vue2.cjs"),i=require("../icon/icon.cjs"),B=require("../renderer/renderer.cjs"),g=["aria-live"],C=["innerHTML"],_=["innerHTML"],z=["onClick"],E=e.defineComponent({name:"Notice",__name:"notice",setup(N,{expose:y}){const n=f.useNameHelper("notice"),t=f.useIcons(),k=e.computed(()=>({primary:t.value.info,info:t.value.info,success:t.value.success,warning:t.value.warning,error:t.value.error})),c=e.ref("top-right"),a=e.ref(30),s=e.ref(16),r=e.ref();async function d(l){r.value&&await r.value.add(l)}async function p(l){return!!r.value&&await r.value.remove(l)}function v(){r.value&&r.value.clear()}function m(l){c.value=l.placement||c.value,a.value=l.startOffset||a.value,s.value=l.itemGap||s.value}return y(e.reactive({popup:r,add:d,remove:p,clear:v,config:m})),(l,h)=>(e.openBlock(),e.createBlock(e.unref(b),{ref_key:"popup",ref:r,class:e.normalizeClass(e.unref(n).b()),"transition-name":e.unref(n).ns(`popup-${c.value.split("-")[1]}`),placement:c.value,"start-offset":a.value,"item-gap":s.value},{item:e.withCtx(({item:o})=>[e.createElementVNode("div",{class:e.normalizeClass([{[e.unref(n).be("item")]:!0,[e.unref(n).bs("vars")]:!0,[e.unref(n).bem("item","title-only")]:!o.content&&typeof o.renderer!="function",[e.unref(n).bem("item","has-icon")]:o.icon,[e.unref(n).bem("item","content-only")]:!o.title,[e.unref(n).bem("item",o.type)]:o.type&&e.unref(u.effectiveTypes).includes(o.type),[e.unref(n).bem("item","background")]:o.background,[e.unref(n).bem("item","color")]:o.background&&o.color,[e.unref(n).bem("item","color-only")]:!o.background&&o.color,[e.unref(n).bem("item","marker")]:o.marker},o.className]),role:"alert",style:e.normalizeStyle([{color:typeof o.color=="string"?o.color:void 0,backgroundColor:typeof o.background=="string"?o.background:void 0},o.style||{}]),"aria-atomic":"true","aria-live":o.type&&e.unref(u.assertiveTypes).includes(o.type)?"assertive":"polite"},[o.icon||o.type&&e.unref(u.effectiveTypes).includes(o.type)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(n).be("icon")),style:e.normalizeStyle({color:o.iconColor})},[o.icon?(e.openBlock(),e.createBlock(e.unref(i),{key:0,icon:o.icon,scale:!o.content&&typeof o.renderer!="function"?1:2,style:e.normalizeStyle([{color:o.iconColor},o.icon.style])},null,8,["icon","scale","style"])):(e.openBlock(),e.createBlock(e.unref(i),e.mergeProps({key:1},k.value[o.type],{scale:!o.content&&typeof o.renderer!="function"?1:2,style:{color:o.iconColor}}),null,16,["scale","style"]))],6)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(n).be("wrapper"))},[typeof o.renderer=="function"?(e.openBlock(),e.createBlock(e.unref(B),{key:0,renderer:o.renderer,data:o},null,8,["renderer","data"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[o.title?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[o.parseHtml?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(n).be("title")),style:e.normalizeStyle({color:typeof o.titleColor=="string"?o.titleColor:void 0}),innerHTML:o.title},null,14,C)):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(n).be("title")),style:e.normalizeStyle({color:typeof o.titleColor=="string"?o.titleColor:void 0})},e.toDisplayString(o.title||""),7))],64)):e.createCommentVNode("",!0),o.content?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[o.parseHtml?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(n).be("content")),innerHTML:o.content},null,10,_)):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(n).be("content"))},e.toDisplayString(o.content||""),3))],64)):e.createCommentVNode("",!0)],64))],2),o.closable?(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:e.normalizeClass(e.unref(n).be("close")),onClick:q=>p(o.key)},[e.createVNode(e.unref(i),e.mergeProps(e.unref(t).close,{label:"close"}),null,16)],10,z)):e.createCommentVNode("",!0)],14,g)]),_:1},8,["class","transition-name","placement","start-offset","item-gap"]))}});module.exports=E; //# sourceMappingURL=notice.vue2.cjs.map