keycloak-d4science-spi-parent/keycloak-d4science-theme/src/main/resources/theme/d4science/account/resources/assets/Label-IH7etj-H.js

3 lines
4.1 KiB
JavaScript

import{_ as U,B as X,h as Y,i as Z,f as s,j as D}from"./index-CmO9OReA.js";import*as e from"react";import{useState as G}from"react";const l={button:"pf-c-button",label:"pf-c-label",labelContent:"pf-c-label__content",labelIcon:"pf-c-label__icon",labelText:"pf-c-label__text",modifiers:{compact:"pf-m-compact",blue:"pf-m-blue",green:"pf-m-green",orange:"pf-m-orange",red:"pf-m-red",purple:"pf-m-purple",cyan:"pf-m-cyan",gold:"pf-m-gold",outline:"pf-m-outline",overflow:"pf-m-overflow",add:"pf-m-add",editable:"pf-m-editable",editableActive:"pf-m-editable-active"},themeDark:"pf-theme-dark"},ee={button:"pf-c-button",labelGroup:"pf-c-label-group",labelGroupClose:"pf-c-label-group__close",labelGroupLabel:"pf-c-label-group__label",labelGroupList:"pf-c-label-group__list",labelGroupListItem:"pf-c-label-group__list-item",labelGroupMain:"pf-c-label-group__main",labelGroupTextarea:"pf-c-label-group__textarea",modifiers:{category:"pf-m-category",vertical:"pf-m-vertical",editable:"pf-m-editable",textarea:"pf-m-textarea"}},te={blue:l.modifiers.blue,cyan:l.modifiers.cyan,green:l.modifiers.green,orange:l.modifiers.orange,purple:l.modifiers.purple,red:l.modifiers.red,gold:l.modifiers.gold,grey:""},le=v=>{var{children:r,className:O="",color:j="grey",variant:S="filled",isCompact:V=!1,isEditable:m=!1,editableProps:E,isTruncated:C=!1,tooltipPosition:_,icon:y,onClose:L,onEditCancel:h,onEditComplete:u,closeBtn:w,closeBtnAriaLabel:F,closeBtnProps:M,href:R,isOverflowLabel:N,render:x}=v,W=U(v,["children","className","color","variant","isCompact","isEditable","editableProps","isTruncated","tooltipPosition","icon","onClose","onEditCancel","onEditComplete","closeBtn","closeBtnAriaLabel","closeBtnProps","href","isOverflowLabel","render"]);const[a,c]=G(!1),[K,$]=G(r),n=e.useRef(),o=e.useRef();e.useEffect(()=>(document.addEventListener("mousedown",I),document.addEventListener("keydown",T),()=>{document.removeEventListener("mousedown",I),document.removeEventListener("keydown",T)}));const I=t=>{a&&o&&o.current&&!o.current.contains(t.target)&&(o.current.value&&u&&u(t,o.current.value),c(!1))},T=t=>{var d,b;const p=t.key;if(!(!a&&(!n||!n.current||!n.current.contains(t.target))||a&&(!o||!o.current||!o.current.contains(t.target)))&&(a&&(p==="Enter"||p==="Tab")&&(t.preventDefault(),t.stopImmediatePropagation(),o.current.value&&u&&u(t,o.current.value),c(!1),(d=n?.current)===null||d===void 0||d.focus()),a&&p==="Escape"&&(t.preventDefault(),t.stopImmediatePropagation(),o.current.value&&(o.current.value=r,h&&h(t,r)),c(!1),(b=n?.current)===null||b===void 0||b.focus()),!a&&p==="Enter")){t.preventDefault(),t.stopImmediatePropagation(),c(!0);const Q=t.target,g=document.createRange(),A=window.getSelection();g.selectNodeContents(Q),g.collapse(!1),A.removeAllRanges(),A.addRange(g)}},q=N?"button":"span",z=w||e.createElement(X,Object.assign({type:"button",variant:"plain",onClick:L,"aria-label":F||`Close ${r}`},M),e.createElement(Y,null)),P=e.createRef(),B=e.useRef(),[k,H]=e.useState(!1);Z(()=>{const t=m?n:P;a||H(t.current&&t.current.offsetWidth<t.current.scrollWidth)},[a]);const f=e.createElement(e.Fragment,null,y&&e.createElement("span",{className:s(l.labelIcon)},y),C&&e.createElement("span",{ref:P,className:s(l.labelText)},r),!C&&r);e.useEffect(()=>{a&&o&&o.current&&o.current.focus()},[o,a]);const J=()=>{$(o.current.value)};let i=e.createElement("span",{className:s(l.labelContent)},f);return R?i=e.createElement("a",{className:s(l.labelContent),href:R},f):m&&(i=e.createElement("button",Object.assign({ref:n,className:s(l.labelContent),onClick:t=>{c(!0),t.stopPropagation()}},E),f)),x?i=e.createElement(e.Fragment,null,k&&e.createElement(D,{reference:B,content:r,position:_}),x({className:l.labelContent,content:f,componentRef:B})):k&&(i=e.createElement(D,{content:r,position:_},i)),e.createElement(q,Object.assign({},W,{className:s(l.label,te[j],S==="outline"&&l.modifiers.outline,N&&l.modifiers.overflow,V&&l.modifiers.compact,m&&ee.modifiers.editable,a&&l.modifiers.editableActive,O)}),!a&&i,!a&&L&&z,a&&e.createElement("input",Object.assign({className:s(l.labelContent),type:"text",id:"editable-input",ref:o,value:K,onChange:J},E)))};le.displayName="Label";export{le as L};
//# sourceMappingURL=Label-IH7etj-H.js.map