@public-ui/components
Version:
Contains all web components that belong to KoliBri - The accessible HTML-Standard.
4 lines • 2.59 kB
JavaScript
/*!
* KoliBri - The accessible HTML-Standard
*/
import{_ as __rest}from"./tslib.es6-1173d062.js";import{h,F as Fragment}from"./index-136f59ac.js";import{c as clsx}from"./clsx-09a06a12.js";import{d as KolIconTag,a as KolButtonWcTag}from"./component-names-799e91e2.js";import{t as translate}from"./i18n-01abf777.js";import{a as BEM_CLASS_ALERT__ICON,b as bem,c as BEM_CLASS_ALERT__CONTENT,d as BEM_CLASS_ALERT__CLOSER}from"./bem-e4c3a2e6.js";import{K as KolHeadingFc}from"./Heading-bb974fcc.js";const Icon=({ariaLabel:a,icon:o})=>h(Fragment,null,h("span",{class:"visually-hidden"},a),h(KolIconTag,{class:BEM_CLASS_ALERT__ICON,_label:"",_icons:o})),AlertIcon=({type:a,label:o})=>{switch(a){case"error":return h(Icon,{ariaLabel:translate("kol-error"),icon:"codicon codicon-error",label:o});case"info":return h(Icon,{ariaLabel:translate("kol-info"),icon:"codicon codicon-info",label:o});case"warning":return h(Icon,{ariaLabel:translate("kol-warning"),icon:"codicon codicon-warning",label:o});case"success":return h(Icon,{ariaLabel:translate("kol-success"),icon:"codicon codicon-pass",label:o});default:return h(Icon,{ariaLabel:translate("kol-message"),icon:"codicon codicon-comment",label:o})}},KolAlertFc=(a,o)=>{var e,l;const{class:n={},alert:s=!1,hasCloser:c=!1,label:i,level:r=0,type:t="default",variant:d="msg",onAlertTimeout:_,onCloserClick:b}=a,m=__rest(a,["class","alert","hasCloser","label","level","type","variant","onAlertTimeout","onCloserClick"]);s&&((null===(e=navigator.userActivation)||void 0===e?void 0:e.hasBeenActive)&&(null===(l=null===navigator||void 0===navigator?void 0:navigator.vibrate)||void 0===l||l.call(navigator,[100,75,100,75,100])),setTimeout((()=>{null==_||_()}),1e4));const v=bem("kol-alert",{hasCloser:!!c,[`type-${t}`]:!0,[`variant-${d}`]:!0}),g=bem("kol-alert","heading",{[`h${r}`]:!0}),u=Object.assign({class:clsx(n,v),role:s?"error"===t?"alert":"status":void 0},m);return h("div",Object.assign({},u),h("div",{class:"kol-alert__container"},h(AlertIcon,{label:i,type:t}),h("div",{class:"kol-alert__container-content"},i&&h(KolHeadingFc,{class:g,level:r,id:"heading"},i),"msg"===d&&h("span",{class:BEM_CLASS_ALERT__CONTENT,"aria-describedby":i?"heading":void 0},o)),c&&h(KolButtonWcTag,{class:BEM_CLASS_ALERT__CLOSER,"data-testid":"alert-close-button",_ariaDescription:(null==i?void 0:i.trim())||"",_hideLabel:!0,_icons:{left:{icon:"codicon codicon-close"}},_label:translate("kol-close-alert"),_on:{onClick:b},_tooltipAlign:"left"})),"card"===d&&h("div",{class:BEM_CLASS_ALERT__CONTENT,"aria-describedby":i?"heading":void 0},o))};export{KolAlertFc as K};