@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-1ed13705.js";import{c as clsx}from"./clsx-09a06a12.js";import{e as KolIconTag,b as KolButtonWcTag}from"./component-names-7924d82a.js";import{t as translate}from"./i18n-260f0fe9.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-733c8dda.js";const Icon=({ariaLabel:a,icon:e})=>h(Fragment,null,h("span",{class:"visually-hidden"},a),h(KolIconTag,{class:BEM_CLASS_ALERT__ICON,_label:"",_icons:e})),AlertIcon=({type:a,label:e})=>{switch(a){case"error":return h(Icon,{ariaLabel:translate("kol-error"),icon:"codicon codicon-error",label:e});case"info":return h(Icon,{ariaLabel:translate("kol-info"),icon:"codicon codicon-info",label:e});case"warning":return h(Icon,{ariaLabel:translate("kol-warning"),icon:"codicon codicon-warning",label:e});case"success":return h(Icon,{ariaLabel:translate("kol-success"),icon:"codicon codicon-pass",label:e});default:return h(Icon,{ariaLabel:translate("kol-message"),icon:"codicon codicon-comment",label:e})}},KolAlertFc=(a,e)=>{var o,l;const{class:n={},alert:s=!1,hasCloser:i=!1,label:r,level:t=0,type:c="default",variant:d="msg",onAlertTimeout:_,onCloserClick:b}=a,m=__rest(a,["class","alert","hasCloser","label","level","type","variant","onAlertTimeout","onCloserClick"]);s&&((null===(o=navigator.userActivation)||void 0===o?void 0:o.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:!!i,[`type-${c}`]:!0,[`variant-${d}`]:!0}),g=bem("kol-alert","heading",{[`h${t}`]:!0}),u=Object.assign({class:clsx(n,v),role:s?"error"===c?"alert":"status":void 0},m);return h("div",Object.assign({},u),h("div",{class:"kol-alert__container"},h(AlertIcon,{label:r,type:c}),h("div",{class:"kol-alert__container-content"},r&&h(KolHeadingFc,{class:g,level:t,id:"heading"},r),"msg"===d&&h("span",{class:BEM_CLASS_ALERT__CONTENT,"aria-describedby":r?"heading":void 0},e)),i&&h(KolButtonWcTag,{class:BEM_CLASS_ALERT__CLOSER,"data-testid":"alert-close-button",_ariaDescription:(null==r?void 0:r.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":r?"heading":void 0},e))};export{KolAlertFc as K};