// and applies them to the HTMLElements such as popper and arrow
functionapplyStyles$1(_ref){varstate=_ref.state;Object.keys(state.elements).forEach(function(name){varstyle=state.styles[name]||{};varattributes=state.attributes[name]||{};varelement=state.elements[name];// arrow is optional + virtual elements
functionapplyStyles(_ref){varstate=_ref.state;Object.keys(state.elements).forEach(function(name){varstyle=state.styles[name]||{};varattributes=state.attributes[name]||{};varelement=state.elements[name];// arrow is optional + virtual elements
if(!isHTMLElement(element)||!getNodeName(element)){return;}// Flow doesn't support to extend this property, but it's the most
// effective way to apply styles to an HTMLElement
// $FlowFixMe[cannot-write]
Object.assign(element.style,style);Object.keys(attributes).forEach(function(name){varvalue=attributes[name];if(value===false){element.removeAttribute(name);}else{element.setAttribute(name,value===true?'':value);}});});}functioneffect$2(_ref2){varstate=_ref2.state;varinitialStyles={popper:{position:state.options.strategy,left:'0',top:'0',margin:'0'},arrow:{position:'absolute'},reference:{}};Object.assign(state.elements.popper.style,initialStyles.popper);state.styles=initialStyles;if(state.elements.arrow){Object.assign(state.elements.arrow.style,initialStyles.arrow);}returnfunction(){Object.keys(state.elements).forEach(function(name){varelement=state.elements[name];varattributes=state.attributes[name]||{};varstyleProperties=Object.keys(state.styles.hasOwnProperty(name)?state.styles[name]:initialStyles[name]);// Set all values to an empty string to unset them
varstyle=styleProperties.reduce(function(style,property){style[property]='';returnstyle;},{});// arrow is optional + virtual elements
vartoPaddingObject=functiontoPaddingObject(padding,state){padding=typeofpadding==='function'?padding(Object.assign({},state.rects,{placement:state.placement})):padding;returnmergePaddingObject(typeofpadding!=='number'?padding:expandToHashMap(padding,basePlacements));};functionarrow$1(_ref){var_state$modifiersData$;varstate=_ref.state,name=_ref.name,options=_ref.options;vararrowElement=state.elements.arrow;varpopperOffsets=state.modifiersData.popperOffsets;varbasePlacement=getBasePlacement(state.placement);varaxis=getMainAxisFromPlacement(basePlacement);varisVertical=[left,right].indexOf(basePlacement)>=0;varlen=isVertical?'height':'width';if(!arrowElement||!popperOffsets){return;}varpaddingObject=toPaddingObject(options.padding,state);vararrowRect=getLayoutRect(arrowElement);varminProp=axis==='y'?top:left;varmaxProp=axis==='y'?bottom:right;varendDiff=state.rects.reference[len]+state.rects.reference[axis]-popperOffsets[axis]-state.rects.popper[len];varstartDiff=popperOffsets[axis]-state.rects.reference[axis];vararrowOffsetParent=getOffsetParent(arrowElement);varclientSize=arrowOffsetParent?axis==='y'?arrowOffsetParent.clientHeight||0:arrowOffsetParent.clientWidth||0:0;varcenterToReference=endDiff/2-startDiff/2;// Make sure the arrow doesn't overflow the popper if the center point is
vartoPaddingObject=functiontoPaddingObject(padding,state){padding=typeofpadding==='function'?padding(Object.assign({},state.rects,{placement:state.placement})):padding;returnmergePaddingObject(typeofpadding!=='number'?padding:expandToHashMap(padding,basePlacements));};functionarrow(_ref){var_state$modifiersData$;varstate=_ref.state,name=_ref.name,options=_ref.options;vararrowElement=state.elements.arrow;varpopperOffsets=state.modifiersData.popperOffsets;varbasePlacement=getBasePlacement(state.placement);varaxis=getMainAxisFromPlacement(basePlacement);varisVertical=[left,right].indexOf(basePlacement)>=0;varlen=isVertical?'height':'width';if(!arrowElement||!popperOffsets){return;}varpaddingObject=toPaddingObject(options.padding,state);vararrowRect=getLayoutRect(arrowElement);varminProp=axis==='y'?top:left;varmaxProp=axis==='y'?bottom:right;varendDiff=state.rects.reference[len]+state.rects.reference[axis]-popperOffsets[axis]-state.rects.popper[len];varstartDiff=popperOffsets[axis]-state.rects.reference[axis];vararrowOffsetParent=getOffsetParent(arrowElement);varclientSize=arrowOffsetParent?axis==='y'?arrowOffsetParent.clientHeight||0:arrowOffsetParent.clientWidth||0:0;varcenterToReference=endDiff/2-startDiff/2;// Make sure the arrow doesn't overflow the popper if the center point is
functionroundOffsetsByDPR(_ref,win){varx=_ref.x,y=_ref.y;vardpr=win.devicePixelRatio||1;return{x:round(x*dpr)/dpr||0,y:round(y*dpr)/dpr||0};}functionmapToStyles(_ref2){var_Object$assign2;varpopper=_ref2.popper,popperRect=_ref2.popperRect,placement=_ref2.placement,variation=_ref2.variation,offsets=_ref2.offsets,position=_ref2.position,gpuAcceleration=_ref2.gpuAcceleration,adaptive=_ref2.adaptive,roundOffsets=_ref2.roundOffsets,isFixed=_ref2.isFixed;var_offsets$x=offsets.x,x=_offsets$x===void0?0:_offsets$x,_offsets$y=offsets.y,y=_offsets$y===void0?0:_offsets$y;var_ref3=typeofroundOffsets==='function'?roundOffsets({x:x,y:y}):{x:x,y:y};x=_ref3.x;y=_ref3.y;varhasX=offsets.hasOwnProperty('x');varhasY=offsets.hasOwnProperty('y');varsideX=left;varsideY=top;varwin=window;if(adaptive){varoffsetParent=getOffsetParent(popper);varheightProp='clientHeight';varwidthProp='clientWidth';if(offsetParent===getWindow(popper)){offsetParent=getDocumentElement(popper);if(getComputedStyle$1(offsetParent).position!=='static'&&position==='absolute'){heightProp='scrollHeight';widthProp='scrollWidth';}}// $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it
functioncomputeAutoPlacement(state,options){if(options===void0){options={};}var_options=options,placement=_options.placement,boundary=_options.boundary,rootBoundary=_options.rootBoundary,padding=_options.padding,flipVariations=_options.flipVariations,_options$allowedAutoP=_options.allowedAutoPlacements,allowedAutoPlacements=_options$allowedAutoP===void0?placements:_options$allowedAutoP;varvariation=getVariation(placement);varplacements$1=variation?flipVariations?variationPlacements:variationPlacements.filter(function(placement){returngetVariation(placement)===variation;}):basePlacements;varallowedPlacements=placements$1.filter(function(placement){returnallowedAutoPlacements.indexOf(placement)>=0;});if(allowedPlacements.length===0){allowedPlacements=placements$1;}// $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...
functiongetExpandedFallbackPlacements(placement){if(getBasePlacement(placement)===auto){return[];}varoppositePlacement=getOppositePlacement(placement);return[getOppositeVariationPlacement(placement),oppositePlacement,getOppositeVariationPlacement(oppositePlacement)];}functionflip$1(_ref){varstate=_ref.state,options=_ref.options,name=_ref.name;if(state.modifiersData[name]._skip){return;}var_options$mainAxis=options.mainAxis,checkMainAxis=_options$mainAxis===void0?true:_options$mainAxis,_options$altAxis=options.altAxis,checkAltAxis=_options$altAxis===void0?true:_options$altAxis,specifiedFallbackPlacements=options.fallbackPlacements,padding=options.padding,boundary=options.boundary,rootBoundary=options.rootBoundary,altBoundary=options.altBoundary,_options$flipVariatio=options.flipVariations,flipVariations=_options$flipVariatio===void0?true:_options$flipVariatio,allowedAutoPlacements=options.allowedAutoPlacements;varpreferredPlacement=state.options.placement;varbasePlacement=getBasePlacement(preferredPlacement);varisBasePlacement=basePlacement===preferredPlacement;varfallbackPlacements=specifiedFallbackPlacements||(isBasePlacement||!flipVariations?[getOppositePlacement(preferredPlacement)]:getExpandedFallbackPlacements(preferredPlacement));varplacements=[preferredPlacement].concat(fallbackPlacements).reduce(function(acc,placement){returnacc.concat(getBasePlacement(placement)===auto?computeAutoPlacement(state,{placement:placement,boundary:boundary,rootBoundary:rootBoundary,padding:padding,flipVariations:flipVariations,allowedAutoPlacements:allowedAutoPlacements}):placement);},[]);varreferenceRect=state.rects.reference;varpopperRect=state.rects.popper;varchecksMap=newMap();varmakeFallbackChecks=true;varfirstFittingPlacement=placements[0];for(vari=0;i<placements.length;i++){varplacement=placements[i];var_basePlacement=getBasePlacement(placement);varisStartVariation=getVariation(placement)===start;varisVertical=[top,bottom].indexOf(_basePlacement)>=0;varlen=isVertical?'width':'height';varoverflow=detectOverflow(state,{placement:placement,boundary:boundary,rootBoundary:rootBoundary,altBoundary:altBoundary,padding:padding});varmainVariationSide=isVertical?isStartVariation?right:left:isStartVariation?bottom:top;if(referenceRect[len]>popperRect[len]){mainVariationSide=getOppositePlacement(mainVariationSide);}varaltVariationSide=getOppositePlacement(mainVariationSide);varchecks=[];if(checkMainAxis){checks.push(overflow[_basePlacement]<=0);}if(checkAltAxis){checks.push(overflow[mainVariationSide]<=0,overflow[altVariationSide]<=0);}if(checks.every(function(check){returncheck;})){firstFittingPlacement=placement;makeFallbackChecks=false;break;}checksMap.set(placement,checks);}if(makeFallbackChecks){// `2` may be desired in some cases – research later
functiongetExpandedFallbackPlacements(placement){if(getBasePlacement(placement)===auto){return[];}varoppositePlacement=getOppositePlacement(placement);return[getOppositeVariationPlacement(placement),oppositePlacement,getOppositeVariationPlacement(oppositePlacement)];}functionflip(_ref){varstate=_ref.state,options=_ref.options,name=_ref.name;if(state.modifiersData[name]._skip){return;}var_options$mainAxis=options.mainAxis,checkMainAxis=_options$mainAxis===void0?true:_options$mainAxis,_options$altAxis=options.altAxis,checkAltAxis=_options$altAxis===void0?true:_options$altAxis,specifiedFallbackPlacements=options.fallbackPlacements,padding=options.padding,boundary=options.boundary,rootBoundary=options.rootBoundary,altBoundary=options.altBoundary,_options$flipVariatio=options.flipVariations,flipVariations=_options$flipVariatio===void0?true:_options$flipVariatio,allowedAutoPlacements=options.allowedAutoPlacements;varpreferredPlacement=state.options.placement;varbasePlacement=getBasePlacement(preferredPlacement);varisBasePlacement=basePlacement===preferredPlacement;varfallbackPlacements=specifiedFallbackPlacements||(isBasePlacement||!flipVariations?[getOppositePlacement(preferredPlacement)]:getExpandedFallbackPlacements(preferredPlacement));varplacements=[preferredPlacement].concat(fallbackPlacements).reduce(function(acc,placement){returnacc.concat(getBasePlacement(placement)===auto?computeAutoPlacement(state,{placement:placement,boundary:boundary,rootBoundary:rootBoundary,padding:padding,flipVariations:flipVariations,allowedAutoPlacements:allowedAutoPlacements}):placement);},[]);varreferenceRect=state.rects.reference;varpopperRect=state.rects.popper;varchecksMap=newMap();varmakeFallbackChecks=true;varfirstFittingPlacement=placements[0];for(vari=0;i<placements.length;i++){varplacement=placements[i];var_basePlacement=getBasePlacement(placement);varisStartVariation=getVariation(placement)===start;varisVertical=[top,bottom].indexOf(_basePlacement)>=0;varlen=isVertical?'width':'height';varoverflow=detectOverflow(state,{placement:placement,boundary:boundary,rootBoundary:rootBoundary,altBoundary:altBoundary,padding:padding});varmainVariationSide=isVertical?isStartVariation?right:left:isStartVariation?bottom:top;if(referenceRect[len]>popperRect[len]){mainVariationSide=getOppositePlacement(mainVariationSide);}varaltVariationSide=getOppositePlacement(mainVariationSide);varchecks=[];if(checkMainAxis){checks.push(overflow[_basePlacement]<=0);}if(checkAltAxis){checks.push(overflow[mainVariationSide]<=0,overflow[altVariationSide]<=0);}if(checks.every(function(check){returncheck;})){firstFittingPlacement=placement;makeFallbackChecks=false;break;}checksMap.set(placement,checks);}if(makeFallbackChecks){// `2` may be desired in some cases – research later
functionpreventOverflow$1(_ref){varstate=_ref.state,options=_ref.options,name=_ref.name;var_options$mainAxis=options.mainAxis,checkMainAxis=_options$mainAxis===void0?true:_options$mainAxis,_options$altAxis=options.altAxis,checkAltAxis=_options$altAxis===void0?false:_options$altAxis,boundary=options.boundary,rootBoundary=options.rootBoundary,altBoundary=options.altBoundary,padding=options.padding,_options$tether=options.tether,tether=_options$tether===void0?true:_options$tether,_options$tetherOffset=options.tetherOffset,tetherOffset=_options$tetherOffset===void0?0:_options$tetherOffset;varoverflow=detectOverflow(state,{boundary:boundary,rootBoundary:rootBoundary,padding:padding,altBoundary:altBoundary});varbasePlacement=getBasePlacement(state.placement);varvariation=getVariation(state.placement);varisBasePlacement=!variation;varmainAxis=getMainAxisFromPlacement(basePlacement);varaltAxis=getAltAxis(mainAxis);varpopperOffsets=state.modifiersData.popperOffsets;varreferenceRect=state.rects.reference;varpopperRect=state.rects.popper;vartetherOffsetValue=typeoftetherOffset==='function'?tetherOffset(Object.assign({},state.rects,{placement:state.placement})):tetherOffset;varnormalizedTetherOffsetValue=typeoftetherOffsetValue==='number'?{mainAxis:tetherOffsetValue,altAxis:tetherOffsetValue}:Object.assign({mainAxis:0,altAxis:0},tetherOffsetValue);varoffsetModifierState=state.modifiersData.offset?state.modifiersData.offset[state.placement]:null;vardata={x:0,y:0};if(!popperOffsets){return;}if(checkMainAxis){var_offsetModifierState$;varmainSide=mainAxis==='y'?top:left;varaltSide=mainAxis==='y'?bottom:right;varlen=mainAxis==='y'?'height':'width';varoffset=popperOffsets[mainAxis];varmin$1=offset+overflow[mainSide];varmax$1=offset-overflow[altSide];varadditive=tether?-popperRect[len]/2:0;varminLen=variation===start?referenceRect[len]:popperRect[len];varmaxLen=variation===start?-popperRect[len]:-referenceRect[len];// We need to include the arrow in the calculation so the arrow doesn't go
functionpreventOverflow(_ref){varstate=_ref.state,options=_ref.options,name=_ref.name;var_options$mainAxis=options.mainAxis,checkMainAxis=_options$mainAxis===void0?true:_options$mainAxis,_options$altAxis=options.altAxis,checkAltAxis=_options$altAxis===void0?false:_options$altAxis,boundary=options.boundary,rootBoundary=options.rootBoundary,altBoundary=options.altBoundary,padding=options.padding,_options$tether=options.tether,tether=_options$tether===void0?true:_options$tether,_options$tetherOffset=options.tetherOffset,tetherOffset=_options$tetherOffset===void0?0:_options$tetherOffset;varoverflow=detectOverflow(state,{boundary:boundary,rootBoundary:rootBoundary,padding:padding,altBoundary:altBoundary});varbasePlacement=getBasePlacement(state.placement);varvariation=getVariation(state.placement);varisBasePlacement=!variation;varmainAxis=getMainAxisFromPlacement(basePlacement);varaltAxis=getAltAxis(mainAxis);varpopperOffsets=state.modifiersData.popperOffsets;varreferenceRect=state.rects.reference;varpopperRect=state.rects.popper;vartetherOffsetValue=typeoftetherOffset==='function'?tetherOffset(Object.assign({},state.rects,{placement:state.placement})):tetherOffset;varnormalizedTetherOffsetValue=typeoftetherOffsetValue==='number'?{mainAxis:tetherOffsetValue,altAxis:tetherOffsetValue}:Object.assign({mainAxis:0,altAxis:0},tetherOffsetValue);varoffsetModifierState=state.modifiersData.offset?state.modifiersData.offset[state.placement]:null;vardata={x:0,y:0};if(!popperOffsets){return;}if(checkMainAxis){var_offsetModifierState$;varmainSide=mainAxis==='y'?top:left;varaltSide=mainAxis==='y'?bottom:right;varlen=mainAxis==='y'?'height':'width';varoffset=popperOffsets[mainAxis];varmin$1=offset+overflow[mainSide];varmax$1=offset-overflow[altSide];varadditive=tether?-popperRect[len]/2:0;varminLen=variation===start?referenceRect[len]:popperRect[len];varmaxLen=variation===start?-popperRect[len]:-referenceRect[len];// We need to include the arrow in the calculation so the arrow doesn't go
// outside the reference bounds
vararrowElement=state.elements.arrow;vararrowRect=tether&&arrowElement?getLayoutRect(arrowElement):{width:0,height:0};vararrowPaddingObject=state.modifiersData['arrow#persistent']?state.modifiersData['arrow#persistent'].padding:getFreshSideObject();vararrowPaddingMin=arrowPaddingObject[mainSide];vararrowPaddingMax=arrowPaddingObject[altSide];// If the reference length is smaller than the arrow length, we don't want
// to include its full size in the calculation. If the reference is small
@@ -188,7 +188,7 @@
// reference is not overflowing as well (e.g. virtual elements with no
constProductManager=(el=null,options={})=>{// === DOM & VARS =======
constmodule=el||document.querySelector('.product-manager')||console.warn('Product Manager Element not found');if(!module)return;constDOM={module,table:module.querySelector('.table-products'),tbody:module.querySelector('tbody'),inputName:module.querySelector('.input-product-name'),inputPrice:module.querySelector('.input-product-price'),btnAdd:module.querySelector('.button-product-add'),templateRow:module.querySelector('.template-row'),// Modal Edit
constmodule=el||document.querySelector('.product-manager')||console.warn('Product Manager Element not found');if(!module)return;constDOM={module,table:module.querySelector('.table-products'),tbody:module.querySelector('tbody'),inputName:module.querySelector('.input-product-name'),inputPrice:module.querySelector('.input-product-price'),btnAdd:module.querySelector('.button-product-add'),templateRow:module.querySelector('.template-row'),// Nav Actions
};constonClickReset=e=>{constbtnEl=e.currentTarget;consticon=btnEl.querySelector('i');icon.classList.add('fa-jello');// async API request
resetProducts().then(data=>{if(data.success){Toast(data.msg,'success').show();loadProducts();}else{Toast(data.msg,'error').show();}setTimeout(()=>{icon.classList.remove('fa-jello');},500);});};constonClickSave=e=>{constbtnEl=e.currentTarget;consticon=btnEl.querySelector('i');icon.classList.add('fa-jello');// async API request
consttrEl=DOM.templateRow.content.firstElementChild.cloneNode(true);consttdNameEl=trEl.querySelector('.td-name');consttdPriceEl=trEl.querySelector('.td-price');constbtnDragEl=trEl.querySelector('.button-product-drag');constbtnEditEl=trEl.querySelector('.button-product-edit');constbtnRemoveEl=trEl.querySelector('.button-product-remove');constbtnMoveUpEl=trEl.querySelector('.button-product-move-up');constbtnMoveDownEl=trEl.querySelector('.button-product-move-down');// Drag 'n Drop hinzufügen.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.