UNPKG

@public-ui/components

Version:

Contains all web components that belong to KoliBri - The accessible HTML-Standard.

4 lines 8.16 kB
/*! * KoliBri - The accessible HTML-Standard */ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-399c8b52.js"),ariaCurrentService=require("./ariaCurrentService-53afa476.js"),events=require("./events-221fcb43.js"),dev_utils=require("./dev.utils-0273f400.js"),componentNames=require("./component-names-2c750b1b.js"),i18n=require("./i18n-1d085d07.js"),accessAndShortKey=require("./access-and-short-key-4ee0c067.js"),prop_validators=require("./prop.validators-888c8338.js"),href=require("./href-51cfc659.js"),reuse=require("./reuse-8cfefa9b.js"),ariaExpanded=require("./aria-expanded-7d8d2aca.js"),disabled=require("./disabled-d424f708.js"),hideLabel=require("./hide-label-cfe594e0.js"),icons=require("./icons-f0f3f9c5.js"),label=require("./label-477be19d.js"),tooltipAlign=require("./tooltip-align-c6cf9049.js");require("./dev.utils-58fde089.js"),require("./i18n-737701e2.js"),require("./index-38f5f0b2.js"),require("./common-1ab929ac.js"),require("./align-3fa838b5.js");const ariaCurrentValuePropTypeOptions=["date","location","page","step","time","true","false"],validateAriaCurrentValue=(e,a)=>{prop_validators.watchValidator(e,"_ariaCurrentValue",(e=>"string"==typeof e&&ariaCurrentValuePropTypeOptions.includes(e)),new Set([`AriaCurrentValue {${ariaCurrentValuePropTypeOptions.join(", ")}`]),a,{defaultValue:"page"})},validateAriaOwns=(e,a)=>{prop_validators.watchString(e,"_ariaOwns",a,{defaultValue:void 0})},validateDownload=(e,a)=>{prop_validators.watchString(e,"_download",a)},validateLinkCallbacks=(e,a)=>{"object"==typeof a&&"function"==typeof(null==a?void 0:a.onClick)&&(e.state=Object.assign(Object.assign({},e.state),{_on:a}))},validateLinkTarget=(e,a)=>{prop_validators.watchString(e,"_target",a)},KolLinkWc=class{constructor(e){index.registerInstance(this,e),this.internalDescriptionById=dev_utils.nonce(),this.catchRef=e=>{this.anchorRef=e},this.onClick=e=>{var a,t;!0===this.state._disabled?events.preventDefaultAndStopPropagation(e):"function"==typeof(null===(a=this.state._on)||void 0===a?void 0:a.onClick)&&(e.preventDefault(),e.stopPropagation(),prop_validators.setEventTarget(e,this.anchorRef),null===(t=this.state._on)||void 0===t||t.onClick(e,this.state._href))},this.getRenderValues=()=>{const e="string"==typeof this.state._target&&"_self"!==this.state._target,a={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||prop_validators.devHint("[KolLink] An aria-label must be set when _hide-label is set."),{isExternal:e,tagAttrs:a}},this._accessKey=void 0,this._ariaCurrentValue=void 0,this._ariaDescription=void 0,this._ariaExpanded=void 0,this._ariaOwns=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.state={_ariaCurrentValue:"page",_href:"",_icons:{}}}async kolFocus(){var e;null===(e=this.anchorRef)||void 0===e||e.focus()}render(){var e,a;const{isExternal:t,tagAttrs:i}=this.getRenderValues(),s=reuse.showExpertSlot(this.state._label),r=Boolean(null===(a=null===(e=this.state._ariaDescription)||void 0===e?void 0:e.trim())||void 0===a?void 0:a.length);return index.h(index.Host,{key:"5da2a89adb469aa00911016bf83da8bc811d6afb",class:"kol-link-wc"},index.h("a",Object.assign({key:"5ba27442fb12021bcd40b2bbea3458ba90319ee7",ref:this.catchRef},i,{accessKey:this.state._accessKey,"aria-current":this.state._ariaCurrent,"aria-describedby":r?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}${t?` (${i18n.translate("kol-open-link-in-tab")})`:""}`:void 0,class:{disabled:!0===this.state._disabled,"external-link":t,"hide-label":!0===this.state._hideLabel}},this.state._on,{onClick:this.onClick,onKeyPress:this.onClick,role:this.state._role,tabIndex:this.state._disabled?-1:this.state._tabIndex}),index.h(componentNames.KolSpanWcTag,{key:"cff45aabbf830b45a1606d21b310946fc4107c25",_badgeText:this.state._accessKey||this.state._shortKey,_icons:this.state._icons,_hideLabel:this.state._hideLabel,_label:s?"":this.state._label||this.state._href},index.h("slot",{key:"e1e4856db3aae514a7cfab6221171f64a9ad786e",name:"expert",slot:"expert"})),t&&index.h(componentNames.KolIconTag,{key:"3baff63f0c231d434d7b7b00bd561ce9c4388c44",class:"external-link-icon",_label:this.state._hideLabel?"":i18n.translate("kol-open-link-in-tab"),_icons:"codicon codicon-link-external","aria-hidden":this.state._hideLabel})),index.h(componentNames.KolTooltipWcTag,{key:"e40f46350a2b28542eddc16bf75378cc66e5eb42","aria-hidden":"true",hidden:s||!this.state._hideLabel,_badgeText:this.state._accessKey||this.state._shortKey,_align:this.state._tooltipAlign,_label:this.state._label||this.state._href}),r&&index.h("span",{key:"da48986516bb270a3077d5c98c5603e55f9a9f42",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){ariaExpanded.validateAriaDescription(this,e)}validateAriaExpanded(e){ariaExpanded.validateAriaExpanded(this,e)}validateAriaOwns(e){validateAriaOwns(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){ariaExpanded.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)}componentWillLoad(){this.validateAccessKey(this._accessKey),this.validateAriaCurrentValue(this._ariaCurrentValue),this.validateAriaDescription(this._ariaDescription),this.validateAriaExpanded(this._ariaExpanded),this.validateAriaOwns(this._ariaOwns),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.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()}static get watchers(){return{_accessKey:["validateAccessKey"],_ariaCurrentValue:["validateAriaCurrentValue"],_ariaDescription:["validateAriaDescription"],_ariaExpanded:["validateAriaExpanded"],_ariaOwns:["validateAriaOwns"],_disabled:["validateDisabled"],_download:["validateDownload"],_hideLabel:["validateHideLabel"],_href:["validateHref"],_icons:["validateIcons"],_label:["validateLabel"],_on:["validateOn"],_role:["validateRole"],_shortKey:["validateShortKey"],_tabIndex:["validateTabIndex"],_target:["validateTarget"],_tooltipAlign:["validateTooltipAlign"]}}};exports.kol_link_wc=KolLinkWc;