@aotearoan/neon
Version:
Neon is a lightweight design library of Vue 3 components with minimal dependencies.
3 lines (2 loc) • 3.16 kB
JavaScript
;const c=require("./NeonAlertContainer.cjs.js"),e=require("vue"),a=require("../../../../_virtual/_plugin-vue_export-helper.cjs.js"),d=["aria-describedby","aria-labelledby","role","onClick"],s=["role","tabindex","onKeydown"],_=["id"],p=["id"],y={key:0,class:"neon-alert__actions"},u={class:"neon-alert__action-label"},k={class:"neon-alert__action-label"};function b(o,C,h,A,m,w){const r=e.resolveComponent("neon-icon"),l=e.resolveComponent("neon-link");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([`neon-alert--${o.placement}`,"neon-alert"])},[e.createVNode(e.TransitionGroup,{name:"neon-alert-transition"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.modelValue,(n,i)=>(e.openBlock(),e.createElementBlock("div",{key:n.id,"aria-describedby":n.message?`alertMessage${i}`:void 0,"aria-labelledby":n.title?`alertTitle${i}`:void 0,class:e.normalizeClass([[`neon-alert__message--${n.level}`,{"neon-alert__message--dismissible":n.dismissible,"neon-alert__message--with-actions":n.primaryAction}],"neon-alert__message"]),role:n.primaryAction?"dialog":n.duration&&n.duration>0?"alert":"alertdialog",onClick:t=>!n.primaryAction&&n.dismissible&&o.closeMessage(n.id)},[e.createVNode(r,{color:n.level,name:o.icon(n.level)},null,8,["color","name"]),e.createElementVNode("div",{role:n.primaryAction?void 0:"button",tabindex:n.primaryAction?-1:0,class:"neon-alert__content",onKeydown:[e.withKeys(e.withModifiers(t=>!n.primaryAction&&n.dismissible&&o.closeMessage(n.id),["prevent"]),["space"]),e.withKeys(t=>!n.primaryAction&&n.dismissible&&o.closeMessage(n.id),["enter"])]},[n.title?(e.openBlock(),e.createElementBlock("div",{key:0,id:`alertTitle${i}`,class:"neon-alert__title"},e.toDisplayString(n.title),9,_)):e.createCommentVNode("",!0),n.message?(e.openBlock(),e.createElementBlock("div",{key:1,id:`alertMessage${i}`,class:"neon-alert__body"},e.toDisplayString(n.message),9,p)):e.createCommentVNode("",!0)],40,s),n.primaryAction?(e.openBlock(),e.createElementBlock("div",y,[n.primaryAction?(e.openBlock(),e.createBlock(l,{key:0,class:"neon-alert__action","outline-style":"none",role:"button",tabindex:"0",onClick:t=>{n.primaryAction.callback(),o.closeMessage(n.id)},onKeydown:e.withKeys(e.withModifiers(t=>{n.primaryAction.callback(),o.closeMessage(n.id)},["prevent"]),["space"])},{default:e.withCtx(()=>[e.createElementVNode("span",u,e.toDisplayString(n.primaryAction.label),1)]),_:2},1032,["onClick","onKeydown"])):e.createCommentVNode("",!0),n.secondaryAction?(e.openBlock(),e.createBlock(l,{key:1,class:"neon-alert__action","outline-style":"none",role:"button",tabindex:"0",onClick:t=>{n.secondaryAction.callback(),o.closeMessage(n.id)},onKeydown:e.withKeys(e.withModifiers(t=>{n.secondaryAction.callback(),o.closeMessage(n.id)},["prevent"]),["space"])},{default:e.withCtx(()=>[e.createElementVNode("span",k,e.toDisplayString(n.secondaryAction.label),1)]),_:2},1032,["onClick","onKeydown"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],10,d))),128))]),_:1})],2)}const v=a(c,[["render",b]]);module.exports=v;
//# sourceMappingURL=NeonAlertContainer.vue.cjs.js.map