@public-ui/components
Version:
Contains all web components that belong to KoliBri - The accessible HTML-Standard.
4 lines • 9.07 kB
JavaScript
/*!
* KoliBri - The accessible HTML-Standard
*/
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index$1=require("./index-03ef29aa.js"),index=require("./index-8b802221.js"),ariaCurrentService=require("./ariaCurrentService-53afa476.js"),events=require("./events-40771c95.js"),dev_utils=require("./dev.utils-f6da9b54.js"),componentNames=require("./component-names-82c4d68d.js"),i18n=require("./i18n-b9d16ebc.js"),accessAndShortKey=require("./access-and-short-key-2167fc7c.js"),clsx=require("./clsx-dd4d6dd1.js");require("./bem-85316256.js");const Span=require("./Span-77749bd7.js"),href=require("./href-273fdbde.js"),buttonVariant=require("./button-variant-d57323f9.js"),customClass=require("./custom-class-cfe6094f.js"),disabled=require("./disabled-71a44266.js"),hideLabel=require("./hide-label-5889f019.js"),icons=require("./icons-9df3131b.js"),label=require("./label-21c38949.js"),tooltipAlign=require("./tooltip-align-4446177f.js");require("./i18n-8c288a27.js"),require("./browser-4433089a.js"),require("./tslib.es6-5e301284.js"),require("./Icon-9e0021e7.js"),require("./markdown-164534bf.js"),require("./InternalUnderlinedBadgeText-6c8700f2.js"),require("./isArray-e114fe6e.js"),require("./isObject-6090b636.js"),require("./align-4abb9b20.js");const ariaCurrentValuePropTypeOptions=["date","location","page","step","time","true","false"],validateAriaCurrentValue=(e,t)=>{index.watchValidator(e,"_ariaCurrentValue",(e=>"string"==typeof e&&ariaCurrentValuePropTypeOptions.includes(e)),new Set([`AriaCurrentValue {${ariaCurrentValuePropTypeOptions.join(", ")}`]),t,{defaultValue:"page"})},validateAriaOwns=(e,t)=>{index.watchString(e,"_ariaOwns",t,{defaultValue:void 0})},validateDownload=(e,t)=>{index.watchString(e,"_download",t)},validateLinkCallbacks=(e,t)=>{"object"==typeof t&&"function"==typeof(null==t?void 0:t.onClick)&&(e.state=Object.assign(Object.assign({},e.state),{_on:t}))},validateLinkTarget=(e,t)=>{index.watchString(e,"_target",t)},KolLinkWc=class{constructor(e){index$1.registerInstance(this,e),this.internalDescriptionById=dev_utils.nonce(),this.catchRef=e=>{this.anchorRef=e},this.onClick=e=>{var t,a;!0===this.state._disabled?e.preventDefault():("function"==typeof(null===(t=this.state._on)||void 0===t?void 0:t.onClick)&&(e.preventDefault(),index.setEventTarget(e,this.anchorRef),null===(a=this.state._on)||void 0===a||a.onClick(e,this.state._href)),this.host&&events.dispatchDomEvent(this.host,events.KolEvent.click,this.state._href))},this.getRenderValues=()=>{const e="string"==typeof this.state._target&&"_self"!==this.state._target,t={href:"string"==typeof this.state._href&&this.state._href.length>0?this.state._href:"javascript:void(0);",target:"string"==typeof this.state._target&&this.state._target.length>0?this.state._target:void 0,rel:e?"noopener":void 0,download:"string"==typeof this.state._download?this.state._download:void 0};return!0!==this.state._hideLabel||this.state._label||index.devHint("[KolLink] An aria-label must be set when _hide-label is set."),{isExternal:e,tagAttrs:t}},this._accessKey=void 0,this._ariaCurrentValue=void 0,this._ariaDescription=void 0,this._ariaExpanded=void 0,this._ariaOwns=void 0,this._customClass=void 0,this._disabled=!1,this._download=void 0,this._hideLabel=!1,this._href=void 0,this._icons=void 0,this._label=void 0,this._on=void 0,this._role=void 0,this._shortKey=void 0,this._tabIndex=void 0,this._target=void 0,this._tooltipAlign="right",this._variant="normal",this.state={_ariaCurrentValue:"page",_href:"",_icons:{}}}async kolFocus(){var e;null===(e=this.anchorRef)||void 0===e||e.focus()}render(){var e,t;const{isExternal:a,tagAttrs:i}=this.getRenderValues(),s=index.showExpertSlot(this.state._label),l=Boolean(null===(t=null===(e=this.state._ariaDescription)||void 0===e?void 0:e.trim())||void 0===t?void 0:t.length);return index$1.h(index$1.Host,{key:"587357d002a1ea7744990f5ce802f96af6baef5a"},index$1.h("a",Object.assign({key:"7f3fc17c83bbcfdc184b5edea97d25ce06f55227",ref:this.catchRef},i,{accessKey:this.state._accessKey,"aria-current":this.state._ariaCurrent,"aria-describedby":l?this.internalDescriptionById:void 0,"aria-disabled":this.state._disabled?"true":void 0,"aria-expanded":"boolean"==typeof this.state._ariaExpanded?String(this.state._ariaExpanded):void 0,"aria-owns":this.state._ariaOwns,"aria-label":this.state._hideLabel&&"string"==typeof this.state._label?`${this.state._label}${a?` (${i18n.translate("kol-open-link-in-tab")})`:""}`:void 0,class:clsx.clsx("kol-link",{"kol-link--disabled":!0===this.state._disabled,"kol-link--external-link":a,"kol-link--hide-label":!0===this.state._hideLabel,[`kol-link--${this.state._variant}`]:"button"===this.state._role&&"custom"!==this.state._variant,[this.state._customClass]:"custom"===this.state._variant&&"string"==typeof this.state._customClass&&this.state._customClass.length>0})},this.state._on,{onClick:this.onClick,onKeyPress:this.onClick,role:this.state._role,tabIndex:this.state._disabled?-1:this.state._tabIndex}),index$1.h(Span.KolSpanFc,{key:"b806611a5bb089b415a07d55dd6c070c9703c886",class:"kol-link__text",badgeText:this.state._accessKey||this.state._shortKey,icons:this.state._icons,hideLabel:this.state._hideLabel,label:s?"":this.state._label||this.state._href},index$1.h("slot",{key:"5a40e834255ae54cf719dd51a521e92874c89c47",name:"expert",slot:"expert"})),a&&index$1.h(componentNames.KolIconTag,{key:"f757a3dc5c051df590dc7048ae15a26e8c28ea8b",class:"kol-link__icon",_label:this.state._hideLabel?"":i18n.translate("kol-open-link-in-tab"),_icons:"codicon codicon-link-external","aria-hidden":this.state._hideLabel})),index$1.h(componentNames.KolTooltipWcTag,{key:"1fd1e9b9fcae9a8505f29cc6962d742670d96f84","aria-hidden":"true",class:"kol-link__tooltip",hidden:s||!this.state._hideLabel,_badgeText:this.state._accessKey||this.state._shortKey,_align:this.state._tooltipAlign,_label:this.state._label||this.state._href}),l&&index$1.h("span",{key:"4d5d88f8b21c251476b31533e8c54318fd087b27",class:"visually-hidden",id:this.internalDescriptionById},this.state._ariaDescription))}validateAccessKey(e){accessAndShortKey.validateAccessKey(this,e),accessAndShortKey.validateAccessAndShortKey(e,this._shortKey)}validateAriaCurrentValue(e){validateAriaCurrentValue(this,e)}validateAriaDescription(e){buttonVariant.validateAriaDescription(this,e)}validateAriaExpanded(e){buttonVariant.validateAriaExpanded(this,e)}validateAriaOwns(e){validateAriaOwns(this,e)}validateCustomClass(e){customClass.validateCustomClass(this,e)}validateDisabled(e){disabled.validateDisabled(this,e)}validateDownload(e){validateDownload(this,e)}validateHideLabel(e){hideLabel.validateHideLabel(this,e)}validateHref(e){href.validateHref(this,e,{required:!0})}validateIcons(e){icons.validateIcons(this,e)}validateLabel(e){label.validateLabelWithExpertSlot(this,e)}validateOn(e){validateLinkCallbacks(this,e)}validateRole(e){buttonVariant.validateAlternativeButtonLinkRole(this,e)}validateShortKey(e){accessAndShortKey.validateShortKey(this,e),accessAndShortKey.validateAccessAndShortKey(this._accessKey,e)}validateTabIndex(e){accessAndShortKey.validateTabIndex(this,e)}validateTarget(e){validateLinkTarget(this,e)}validateTooltipAlign(e){tooltipAlign.validateTooltipAlign(this,e)}validateVariant(e){buttonVariant.validateButtonVariant(this,e)}componentWillLoad(){this.validateAccessKey(this._accessKey),this.validateAriaCurrentValue(this._ariaCurrentValue),this.validateAriaDescription(this._ariaDescription),this.validateAriaExpanded(this._ariaExpanded),this.validateAriaOwns(this._ariaOwns),this.validateCustomClass(this._customClass),this.validateDisabled(this._disabled),this.validateDownload(this._download),this.validateHideLabel(this._hideLabel),this.validateHref(this._href),this.validateIcons(this._icons),this.validateLabel(this._label),this.validateOn(this._on),this.validateRole(this._role),this.validateShortKey(this._shortKey),this.validateTabIndex(this._tabIndex),this.validateTarget(this._target),this.validateTooltipAlign(this._tooltipAlign),this.validateVariant(this._variant),this.unsubscribeOnLocationChange=ariaCurrentService.onLocationChange((e=>{this.state._ariaCurrent=e===this.state._href?this.state._ariaCurrentValue:void 0})),accessAndShortKey.validateAccessAndShortKey(this._accessKey,this._shortKey)}disconnectedCallback(){this.unsubscribeOnLocationChange&&this.unsubscribeOnLocationChange()}get host(){return index$1.getElement(this)}static get watchers(){return{_accessKey:["validateAccessKey"],_ariaCurrentValue:["validateAriaCurrentValue"],_ariaDescription:["validateAriaDescription"],_ariaExpanded:["validateAriaExpanded"],_ariaOwns:["validateAriaOwns"],_customClass:["validateCustomClass"],_disabled:["validateDisabled"],_download:["validateDownload"],_hideLabel:["validateHideLabel"],_href:["validateHref"],_icons:["validateIcons"],_label:["validateLabel"],_on:["validateOn"],_role:["validateRole"],_shortKey:["validateShortKey"],_tabIndex:["validateTabIndex"],_target:["validateTarget"],_tooltipAlign:["validateTooltipAlign"],_variant:["validateVariant"]}}};exports.kol_link_wc=KolLinkWc;