Hinzufügen der Bibliotheken flag-icons, popper und select2 zur Verbesserung der Dropdown-, Tooltip- und Auswahlfeldfunktionalität.
This commit is contained in:
43
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/computeAutoPlacement.js
vendored
Normal file
43
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/computeAutoPlacement.js
vendored
Normal file
@@ -0,0 +1,43 @@
|
||||
import getVariation from "./getVariation.js";
|
||||
import { variationPlacements, basePlacements, placements as allPlacements } from "../enums.js";
|
||||
import detectOverflow from "./detectOverflow.js";
|
||||
import getBasePlacement from "./getBasePlacement.js";
|
||||
export default function computeAutoPlacement(state, options) {
|
||||
if (options === void 0) {
|
||||
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 === void 0 ? allPlacements : _options$allowedAutoP;
|
||||
var variation = getVariation(placement);
|
||||
var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {
|
||||
return getVariation(placement) === variation;
|
||||
}) : basePlacements;
|
||||
var allowedPlacements = placements.filter(function (placement) {
|
||||
return allowedAutoPlacements.indexOf(placement) >= 0;
|
||||
});
|
||||
|
||||
if (allowedPlacements.length === 0) {
|
||||
allowedPlacements = placements;
|
||||
} // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...
|
||||
|
||||
|
||||
var overflows = allowedPlacements.reduce(function (acc, placement) {
|
||||
acc[placement] = detectOverflow(state, {
|
||||
placement: placement,
|
||||
boundary: boundary,
|
||||
rootBoundary: rootBoundary,
|
||||
padding: padding
|
||||
})[getBasePlacement(placement)];
|
||||
return acc;
|
||||
}, {});
|
||||
return Object.keys(overflows).sort(function (a, b) {
|
||||
return overflows[a] - overflows[b];
|
||||
});
|
||||
}
|
||||
70
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/computeOffsets.js
vendored
Normal file
70
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/computeOffsets.js
vendored
Normal file
@@ -0,0 +1,70 @@
|
||||
import getBasePlacement from "./getBasePlacement.js";
|
||||
import getVariation from "./getVariation.js";
|
||||
import getMainAxisFromPlacement from "./getMainAxisFromPlacement.js";
|
||||
import { top, right, bottom, left, start, end } from "../enums.js";
|
||||
export default function computeOffsets(_ref) {
|
||||
var reference = _ref.reference,
|
||||
element = _ref.element,
|
||||
placement = _ref.placement;
|
||||
var basePlacement = placement ? getBasePlacement(placement) : null;
|
||||
var variation = placement ? getVariation(placement) : null;
|
||||
var commonX = reference.x + reference.width / 2 - element.width / 2;
|
||||
var commonY = reference.y + reference.height / 2 - element.height / 2;
|
||||
var offsets;
|
||||
|
||||
switch (basePlacement) {
|
||||
case top:
|
||||
offsets = {
|
||||
x: commonX,
|
||||
y: reference.y - element.height
|
||||
};
|
||||
break;
|
||||
|
||||
case bottom:
|
||||
offsets = {
|
||||
x: commonX,
|
||||
y: reference.y + reference.height
|
||||
};
|
||||
break;
|
||||
|
||||
case right:
|
||||
offsets = {
|
||||
x: reference.x + reference.width,
|
||||
y: commonY
|
||||
};
|
||||
break;
|
||||
|
||||
case left:
|
||||
offsets = {
|
||||
x: reference.x - element.width,
|
||||
y: commonY
|
||||
};
|
||||
break;
|
||||
|
||||
default:
|
||||
offsets = {
|
||||
x: reference.x,
|
||||
y: reference.y
|
||||
};
|
||||
}
|
||||
|
||||
var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;
|
||||
|
||||
if (mainAxis != null) {
|
||||
var len = mainAxis === 'y' ? 'height' : 'width';
|
||||
|
||||
switch (variation) {
|
||||
case start:
|
||||
offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);
|
||||
break;
|
||||
|
||||
case end:
|
||||
offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);
|
||||
break;
|
||||
|
||||
default:
|
||||
}
|
||||
}
|
||||
|
||||
return offsets;
|
||||
}
|
||||
15
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/debounce.js
vendored
Normal file
15
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/debounce.js
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
export default function debounce(fn) {
|
||||
var pending;
|
||||
return function () {
|
||||
if (!pending) {
|
||||
pending = new Promise(function (resolve) {
|
||||
Promise.resolve().then(function () {
|
||||
pending = undefined;
|
||||
resolve(fn());
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
return pending;
|
||||
};
|
||||
}
|
||||
65
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/detectOverflow.js
vendored
Normal file
65
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/detectOverflow.js
vendored
Normal file
@@ -0,0 +1,65 @@
|
||||
import getClippingRect from "../dom-utils/getClippingRect.js";
|
||||
import getDocumentElement from "../dom-utils/getDocumentElement.js";
|
||||
import getBoundingClientRect from "../dom-utils/getBoundingClientRect.js";
|
||||
import computeOffsets from "./computeOffsets.js";
|
||||
import rectToClientRect from "./rectToClientRect.js";
|
||||
import { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from "../enums.js";
|
||||
import { isElement } from "../dom-utils/instanceOf.js";
|
||||
import mergePaddingObject from "./mergePaddingObject.js";
|
||||
import expandToHashMap from "./expandToHashMap.js"; // eslint-disable-next-line import/no-unused-modules
|
||||
|
||||
export default function detectOverflow(state, options) {
|
||||
if (options === void 0) {
|
||||
options = {};
|
||||
}
|
||||
|
||||
var _options = options,
|
||||
_options$placement = _options.placement,
|
||||
placement = _options$placement === void 0 ? state.placement : _options$placement,
|
||||
_options$strategy = _options.strategy,
|
||||
strategy = _options$strategy === void 0 ? state.strategy : _options$strategy,
|
||||
_options$boundary = _options.boundary,
|
||||
boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,
|
||||
_options$rootBoundary = _options.rootBoundary,
|
||||
rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,
|
||||
_options$elementConte = _options.elementContext,
|
||||
elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,
|
||||
_options$altBoundary = _options.altBoundary,
|
||||
altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,
|
||||
_options$padding = _options.padding,
|
||||
padding = _options$padding === void 0 ? 0 : _options$padding;
|
||||
var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));
|
||||
var altContext = elementContext === popper ? reference : popper;
|
||||
var popperRect = state.rects.popper;
|
||||
var element = state.elements[altBoundary ? altContext : elementContext];
|
||||
var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary, strategy);
|
||||
var referenceClientRect = getBoundingClientRect(state.elements.reference);
|
||||
var popperOffsets = computeOffsets({
|
||||
reference: referenceClientRect,
|
||||
element: popperRect,
|
||||
strategy: 'absolute',
|
||||
placement: placement
|
||||
});
|
||||
var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));
|
||||
var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect
|
||||
// 0 or negative = within the clipping rect
|
||||
|
||||
var overflowOffsets = {
|
||||
top: clippingClientRect.top - elementClientRect.top + paddingObject.top,
|
||||
bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,
|
||||
left: clippingClientRect.left - elementClientRect.left + paddingObject.left,
|
||||
right: elementClientRect.right - clippingClientRect.right + paddingObject.right
|
||||
};
|
||||
var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element
|
||||
|
||||
if (elementContext === popper && offsetData) {
|
||||
var offset = offsetData[placement];
|
||||
Object.keys(overflowOffsets).forEach(function (key) {
|
||||
var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;
|
||||
var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';
|
||||
overflowOffsets[key] += offset[axis] * multiply;
|
||||
});
|
||||
}
|
||||
|
||||
return overflowOffsets;
|
||||
}
|
||||
6
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/expandToHashMap.js
vendored
Normal file
6
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/expandToHashMap.js
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
export default function expandToHashMap(value, keys) {
|
||||
return keys.reduce(function (hashMap, key) {
|
||||
hashMap[key] = value;
|
||||
return hashMap;
|
||||
}, {});
|
||||
}
|
||||
3
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/getAltAxis.js
vendored
Normal file
3
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/getAltAxis.js
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
export default function getAltAxis(axis) {
|
||||
return axis === 'x' ? 'y' : 'x';
|
||||
}
|
||||
3
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/getAltLen.js
vendored
Normal file
3
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/getAltLen.js
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
export default function getAltLen(len) {
|
||||
return len === 'width' ? 'height' : 'width';
|
||||
}
|
||||
4
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/getBasePlacement.js
vendored
Normal file
4
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/getBasePlacement.js
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
import { auto } from "../enums.js";
|
||||
export default function getBasePlacement(placement) {
|
||||
return placement.split('-')[0];
|
||||
}
|
||||
8
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/getFreshSideObject.js
vendored
Normal file
8
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/getFreshSideObject.js
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
export default function getFreshSideObject() {
|
||||
return {
|
||||
top: 0,
|
||||
right: 0,
|
||||
bottom: 0,
|
||||
left: 0
|
||||
};
|
||||
}
|
||||
3
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/getMainAxisFromPlacement.js
vendored
Normal file
3
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/getMainAxisFromPlacement.js
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
export default function getMainAxisFromPlacement(placement) {
|
||||
return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';
|
||||
}
|
||||
11
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/getOppositePlacement.js
vendored
Normal file
11
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/getOppositePlacement.js
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
var hash = {
|
||||
left: 'right',
|
||||
right: 'left',
|
||||
bottom: 'top',
|
||||
top: 'bottom'
|
||||
};
|
||||
export default function getOppositePlacement(placement) {
|
||||
return placement.replace(/left|right|bottom|top/g, function (matched) {
|
||||
return hash[matched];
|
||||
});
|
||||
}
|
||||
9
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/getOppositeVariationPlacement.js
vendored
Normal file
9
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/getOppositeVariationPlacement.js
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
var hash = {
|
||||
start: 'end',
|
||||
end: 'start'
|
||||
};
|
||||
export default function getOppositeVariationPlacement(placement) {
|
||||
return placement.replace(/start|end/g, function (matched) {
|
||||
return hash[matched];
|
||||
});
|
||||
}
|
||||
3
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/getVariation.js
vendored
Normal file
3
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/getVariation.js
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
export default function getVariation(placement) {
|
||||
return placement.split('-')[1];
|
||||
}
|
||||
3
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/math.js
vendored
Normal file
3
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/math.js
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
export var max = Math.max;
|
||||
export var min = Math.min;
|
||||
export var round = Math.round;
|
||||
14
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/mergeByName.js
vendored
Normal file
14
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/mergeByName.js
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
export default function mergeByName(modifiers) {
|
||||
var merged = modifiers.reduce(function (merged, current) {
|
||||
var existing = merged[current.name];
|
||||
merged[current.name] = existing ? Object.assign({}, existing, current, {
|
||||
options: Object.assign({}, existing.options, current.options),
|
||||
data: Object.assign({}, existing.data, current.data)
|
||||
}) : current;
|
||||
return merged;
|
||||
}, {}); // IE11 does not support Object.values
|
||||
|
||||
return Object.keys(merged).map(function (key) {
|
||||
return merged[key];
|
||||
});
|
||||
}
|
||||
4
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/mergePaddingObject.js
vendored
Normal file
4
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/mergePaddingObject.js
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
import getFreshSideObject from "./getFreshSideObject.js";
|
||||
export default function mergePaddingObject(paddingObject) {
|
||||
return Object.assign({}, getFreshSideObject(), paddingObject);
|
||||
}
|
||||
44
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/orderModifiers.js
vendored
Normal file
44
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/orderModifiers.js
vendored
Normal file
@@ -0,0 +1,44 @@
|
||||
import { modifierPhases } from "../enums.js"; // source: https://stackoverflow.com/questions/49875255
|
||||
|
||||
function order(modifiers) {
|
||||
var map = new Map();
|
||||
var visited = new Set();
|
||||
var result = [];
|
||||
modifiers.forEach(function (modifier) {
|
||||
map.set(modifier.name, modifier);
|
||||
}); // On visiting object, check for its dependencies and visit them recursively
|
||||
|
||||
function sort(modifier) {
|
||||
visited.add(modifier.name);
|
||||
var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);
|
||||
requires.forEach(function (dep) {
|
||||
if (!visited.has(dep)) {
|
||||
var depModifier = map.get(dep);
|
||||
|
||||
if (depModifier) {
|
||||
sort(depModifier);
|
||||
}
|
||||
}
|
||||
});
|
||||
result.push(modifier);
|
||||
}
|
||||
|
||||
modifiers.forEach(function (modifier) {
|
||||
if (!visited.has(modifier.name)) {
|
||||
// check for visited object
|
||||
sort(modifier);
|
||||
}
|
||||
});
|
||||
return result;
|
||||
}
|
||||
|
||||
export default function orderModifiers(modifiers) {
|
||||
// order based on dependencies
|
||||
var orderedModifiers = order(modifiers); // order based on phase
|
||||
|
||||
return modifierPhases.reduce(function (acc, phase) {
|
||||
return acc.concat(orderedModifiers.filter(function (modifier) {
|
||||
return modifier.phase === phase;
|
||||
}));
|
||||
}, []);
|
||||
}
|
||||
8
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/rectToClientRect.js
vendored
Normal file
8
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/rectToClientRect.js
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
export default function rectToClientRect(rect) {
|
||||
return Object.assign({}, rect, {
|
||||
left: rect.x,
|
||||
top: rect.y,
|
||||
right: rect.x + rect.width,
|
||||
bottom: rect.y + rect.height
|
||||
});
|
||||
}
|
||||
11
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/uniqueBy.js
vendored
Normal file
11
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/uniqueBy.js
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
export default function uniqueBy(arr, fn) {
|
||||
var identifiers = new Set();
|
||||
return arr.filter(function (item) {
|
||||
var identifier = fn(item);
|
||||
|
||||
if (!identifiers.has(identifier)) {
|
||||
identifiers.add(identifier);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
}
|
||||
11
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/userAgent.js
vendored
Normal file
11
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/userAgent.js
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
export default function getUAString() {
|
||||
var uaData = navigator.userAgentData;
|
||||
|
||||
if (uaData != null && uaData.brands && Array.isArray(uaData.brands)) {
|
||||
return uaData.brands.map(function (item) {
|
||||
return item.brand + "/" + item.version;
|
||||
}).join(' ');
|
||||
}
|
||||
|
||||
return navigator.userAgent;
|
||||
}
|
||||
8
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/within.js
vendored
Normal file
8
EnvelopeGenerator.Web/wwwroot/lib/popper/dist/esm/utils/within.js
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
import { max as mathMax, min as mathMin } from "./math.js";
|
||||
export function within(min, value, max) {
|
||||
return mathMax(min, mathMin(value, max));
|
||||
}
|
||||
export function withinMaxClamp(min, value, max) {
|
||||
var v = within(min, value, max);
|
||||
return v > max ? max : v;
|
||||
}
|
||||
Reference in New Issue
Block a user