All Downloads are FREE. Search and download functionalities are using the official Maven repository.

theme.keycloak.v2.admin.resources.assets.DataListItemRow-c0c554d3.js Maven / Gradle / Ivy

There is a newer version: 25.0.1
Show newest version
import{r as n,_ as f,k as m,ak as T}from"./index-f33eb656.js";import{s as i}from"./data-list-7d55714c.js";import{G as M}from"./grip-vertical-icon-90ec69d5.js";const p={dataList:"pf-c-data-list",dataListCell:"pf-c-data-list__cell",dataListExpandableContent:"pf-c-data-list__expandable-content",dataListItemContent:"pf-c-data-list__item-content",modifiers:{icon:"pf-m-icon",alignRight:"pf-m-align-right",noFill:"pf-m-no-fill",flex_2:"pf-m-flex-2",flex_3:"pf-m-flex-3",flex_4:"pf-m-flex-4",flex_5:"pf-m-flex-5",gridNone:"pf-m-grid-none",gridSm:"pf-m-grid-sm",gridMd:"pf-m-grid-md",gridLg:"pf-m-grid-lg",gridXl:"pf-m-grid-xl",grid_2xl:"pf-m-grid-2xl"}},j={none:p.modifiers.gridNone,always:"pf-m-grid",sm:p.modifiers.gridSm,md:p.modifiers.gridMd,lg:p.modifiers.gridLg,xl:p.modifiers.gridXl,"2xl":p.modifiers.grid_2xl};var k;(function(r){r.nowrap="nowrap",r.truncate="truncate",r.breakWord="breakWord"})(k||(k={}));const S=n.createContext({isSelectable:!1}),P=(r,s,e)=>{const t=r.indexOf(s);if(t===e)return r;const a=r.splice(t,1);return r.splice(e,0,a[0]),r};class A extends n.Component{constructor(s){super(s),this.dragFinished=!1,this.html5DragDrop=!1,this.arrayCopy=n.Children.toArray(this.props.children),this.ref=n.createRef(),this.state={tempItemOrder:[],draggedItemId:null,draggingToItemIndex:null,dragging:!1},this.getIndex=e=>Array.from(this.ref.current.children).findIndex(t=>t.id===e),this.move=e=>{const t=this.ref.current,a=Array.from(t.children);if(!a.map(d=>d.id).every((d,l)=>d===e[l])){for(;t.firstChild;)t.removeChild(t.lastChild);e.forEach(d=>{t.appendChild(a.find(l=>l.id===d))})}},this.dragStart0=e=>{const{onDragStart:t}=this.props,a=e.id;e.classList.add(i.modifiers.ghostRow),e.setAttribute("aria-pressed","true"),this.setState({draggedItemId:a,dragging:!0}),t&&t(a)},this.dragStart=e=>{e.dataTransfer.effectAllowed="move",e.dataTransfer.setData("text/plain",e.currentTarget.id),this.dragStart0(e.currentTarget)},this.onDragCancel=()=>{this.move(this.props.itemOrder),Array.from(this.ref.current.children).forEach(e=>{e.classList.remove(i.modifiers.ghostRow),e.classList.remove(i.modifiers.dragOver),e.setAttribute("aria-pressed","false")}),this.setState({draggedItemId:null,draggingToItemIndex:null,dragging:!1}),this.props.onDragCancel&&this.props.onDragCancel()},this.dragLeave=e=>{this.isValidDrop(e)||(this.move(this.props.itemOrder),this.setState({draggingToItemIndex:null}))},this.dragEnd0=e=>{e.classList.remove(i.modifiers.ghostRow),e.classList.remove(i.modifiers.dragOver),e.setAttribute("aria-pressed","false"),this.setState({draggedItemId:null,draggingToItemIndex:null,dragging:!1})},this.dragEnd=e=>{this.dragEnd0(e.target)},this.isValidDrop=e=>{const t=this.ref.current.getBoundingClientRect();return e.clientX>t.x&&e.clientXt.y&&e.clientY{this.isValidDrop(e)?this.props.onDragFinish(this.state.tempItemOrder):this.onDragCancel()},this.dragOver0=e=>{const t=Array.from(this.ref.current.children).findIndex(a=>a.id===e);if(t!==this.state.draggingToItemIndex){const a=P([...this.props.itemOrder],this.state.draggedItemId,t);this.move(a),this.setState({draggingToItemIndex:t,tempItemOrder:a})}},this.dragOver=e=>{e.preventDefault();const t=e.target.closest("li");if(!t||!this.ref.current.contains(t)||t.id===this.state.draggedItemId)return null;this.dragOver0(t.id)},this.handleDragButtonKeys=e=>{const{dragging:t}=this.state;if(![" ","Escape","Enter","ArrowUp","ArrowDown"].includes(e.key)||!this.html5DragDrop){t&&e.preventDefault();return}e.preventDefault();const a=e.target.closest("li");if(e.key===" "||e.key==="Enter"&&!t)this.dragStart0(a);else if(t){if(e.key==="Escape"||e.key==="Enter")this.setState({dragging:!1}),this.dragFinished=!0,e.key==="Enter"?(this.dragEnd0(a),this.props.onDragFinish(this.state.tempItemOrder)):this.onDragCancel();else if(e.key==="ArrowUp"){const d=a.previousSibling;d&&(this.dragOver0(d.id),a.querySelector(`.${i.dataListItemDraggableButton}`).focus())}else if(e.key==="ArrowDown"){const d=a.nextSibling;d&&(this.dragOver0(d.id),a.querySelector(`.${i.dataListItemDraggableButton}`).focus())}}},this.html5DragDrop=!!(s.onDragFinish||s.onDragStart||s.onDragMove||s.onDragCancel),this.html5DragDrop&&console.warn("DataList's onDrag API is deprecated. Use DragDrop instead.")}componentDidUpdate(s){this.dragFinished&&(this.dragFinished=!1,this.setState({tempItemOrder:[...this.props.itemOrder],draggedItemId:null,dragging:!1})),s.itemOrder!==this.props.itemOrder&&this.move(this.props.itemOrder)}render(){const s=this.props,{className:e,children:t,onSelectDataListItem:a,selectedDataListItemId:d,isCompact:l,wrapModifier:c,onDragStart:h,onDragMove:u,onDragCancel:b,onDragFinish:y,gridBreakpoint:D,itemOrder:v,selectableRow:x}=s,I=f(s,["className","children","onSelectDataListItem","selectedDataListItemId","isCompact","wrapModifier","onDragStart","onDragMove","onDragCancel","onDragFinish","gridBreakpoint","itemOrder","selectableRow"]),{dragging:C}=this.state,E=a!==void 0,w=N=>{a(N)},L=this.html5DragDrop&&{onDragOver:this.dragOver,onDrop:this.dragOver,onDragLeave:this.dragLeave};return n.createElement(S.Provider,{value:{isSelectable:E,selectedDataListItemId:d,updateSelectedDataListItem:w,selectableRow:x,isDraggable:this.html5DragDrop,dragStart:this.dragStart,dragEnd:this.dragEnd,drop:this.drop,dragKeyHandler:this.handleDragButtonKeys}},n.createElement("ul",Object.assign({className:m(i.dataList,l&&i.modifiers.compact,j[D],c&&i.modifiers[c],C&&i.modifiers.dragOver,e),style:I.style},I,L,{ref:this.ref}),t))}}A.displayName="DataList";A.defaultProps={children:null,className:"",selectedDataListItemId:"",isCompact:!1,gridBreakpoint:"md",wrapModifier:null};const V=r=>{var{children:s=null,className:e="",width:t=1,isFilled:a=!0,alignRight:d=!1,isIcon:l=!1,wrapModifier:c=null}=r,h=f(r,["children","className","width","isFilled","alignRight","isIcon","wrapModifier"]);return n.createElement("div",Object.assign({className:m(i.dataListCell,t>1&&i.modifiers[`flex_${t}`],!a&&i.modifiers.noFill,d&&i.modifiers.alignRight,l&&i.modifiers.icon,e,c&&i.modifiers[c])},h),s)};V.displayName="DataListCell";const B=r=>{var{className:s="",isDisabled:e=!1}=r,t=f(r,["className","isDisabled"]);return n.createElement(S.Consumer,null,({dragKeyHandler:a})=>n.createElement("button",Object.assign({className:m(i.dataListItemDraggableButton,e&&i.modifiers.disabled,s),onKeyDown:a,type:"button",disabled:e},t),n.createElement("span",{className:m(i.dataListItemDraggableIcon)},n.createElement(M,null))))};B.displayName="DataListDragButton";function R(r){if(!n.isValidElement(r))return null;if(r.type===B)return r;if(r.props.children)for(const s of n.Children.toArray(r.props.children)){const e=R(s);if(e)return e}return null}class _ extends n.Component{render(){const s=this.props,{children:e,isExpanded:t,className:a,id:d,"aria-labelledby":l,selectableInputAriaLabel:c}=s,h=f(s,["children","isExpanded","className","id","aria-labelledby","selectableInputAriaLabel"]);return n.createElement(S.Consumer,null,({isSelectable:u,selectedDataListItemId:b,updateSelectedDataListItem:y,selectableRow:D,isDraggable:v,dragStart:x,dragEnd:I,drop:C})=>{const E=o=>{let g=o.target;for(;o.currentTarget!==g;){if("onclick"in g&&g.onclick||g.parentNode.classList.contains(i.dataListItemAction)||g.parentNode.classList.contains(i.dataListItemControl))return;g=g.parentNode}y(d)},w=o=>{o.key===T.Enter&&y(d)},L=R(e),N=v&&{draggable:L?!L.props.isDisabled:!0,onDrop:C,onDragEnd:I,onDragStart:x},O=b===d,F=c?{"aria-label":c}:{"aria-labelledby":l};return n.createElement("li",Object.assign({id:d,className:m(i.dataListItem,t&&i.modifiers.expanded,u&&i.modifiers.selectable,b&&O&&i.modifiers.selected,a),"aria-labelledby":l},u&&{tabIndex:0,onClick:E,onKeyDown:w},u&&O&&{"aria-selected":!0},h,N),D&&n.createElement("input",Object.assign({className:"pf-screen-reader",type:"radio",checked:O,onChange:o=>D.onChange(d,o),tabIndex:-1},F)),n.Children.map(e,o=>n.isValidElement(o)&&n.cloneElement(o,{rowid:l})))})}}_.displayName="DataListItem";_.defaultProps={isExpanded:!1,className:"",id:"",children:null,"aria-labelledby":""};const K=r=>{var{className:s="",dataListCells:e,rowid:t=""}=r,a=f(r,["className","dataListCells","rowid"]);return n.createElement("div",Object.assign({className:m(i.dataListItemContent,s)},a),e)};K.displayName="DataListItemCells";const G=r=>{var{children:s,className:e="",rowid:t="",wrapModifier:a=null}=r,d=f(r,["children","className","rowid","wrapModifier"]);return n.createElement("div",Object.assign({className:m(i.dataListItemRow,e,a&&i.modifiers[a])},d),n.Children.map(s,l=>n.isValidElement(l)&&n.cloneElement(l,{rowid:t})))};G.displayName="DataListItemRow";export{_ as D,G as a,B as b,K as c,V as d,A as e};
//# sourceMappingURL=DataListItemRow-c0c554d3.js.map




© 2015 - 2024 Weber Informatics LLC | Privacy Policy