{"version":3,"file":"js/596-7591bfdb65ae65c83032.js","mappings":"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","sources":["webpack://app/./node_modules/email-validator/index.js","webpack://app/./node_modules/@floating-ui/core/dist/floating-ui.core.mjs"],"sourcesContent":["\"use strict\";\r\n\r\nvar tester = /^[-!#$%&'*+\\/0-9=?A-Z^_a-z{|}~](\\.?[-!#$%&'*+\\/0-9=?A-Z^_a-z`{|}~])*@[a-zA-Z0-9](-*\\.?[a-zA-Z0-9])*\\.[a-zA-Z](-?[a-zA-Z0-9])+$/;\r\n// Thanks to:\r\n// http://fightingforalostcause.net/misc/2006/compare-email-regex.php\r\n// http://thedailywtf.com/Articles/Validating_Email_Addresses.aspx\r\n// http://stackoverflow.com/questions/201323/what-is-the-best-regular-expression-for-validating-email-addresses/201378#201378\r\nexports.validate = function(email)\r\n{\r\n\tif (!email)\r\n\t\treturn false;\r\n\t\t\r\n\tif(email.length>254)\r\n\t\treturn false;\r\n\r\n\tvar valid = tester.test(email);\r\n\tif(!valid)\r\n\t\treturn false;\r\n\r\n\t// Further checking of some things regex can't handle\r\n\tvar parts = email.split(\"@\");\r\n\tif(parts[0].length>64)\r\n\t\treturn false;\r\n\r\n\tvar domainParts = parts[1].split(\".\");\r\n\tif(domainParts.some(function(part) { return part.length>63; }))\r\n\t\treturn false;\r\n\r\n\treturn true;\r\n}","import { getSideAxis, getAlignmentAxis, getAxisLength, getSide, getAlignment, evaluate, getPaddingObject, rectToClientRect, min, clamp, placements, getAlignmentSides, getOppositeAlignmentPlacement, getOppositePlacement, getExpandedPlacements, getOppositeAxisPlacements, sides, max, getOppositeAxis } from '@floating-ui/utils';\nexport { rectToClientRect } from '@floating-ui/utils';\n\nfunction computeCoordsFromPlacement(_ref, placement, rtl) {\n let {\n reference,\n floating\n } = _ref;\n const sideAxis = getSideAxis(placement);\n const alignmentAxis = getAlignmentAxis(placement);\n const alignLength = getAxisLength(alignmentAxis);\n const side = getSide(placement);\n const isVertical = sideAxis === 'y';\n const commonX = reference.x + reference.width / 2 - floating.width / 2;\n const commonY = reference.y + reference.height / 2 - floating.height / 2;\n const commonAlign = reference[alignLength] / 2 - floating[alignLength] / 2;\n let coords;\n switch (side) {\n case 'top':\n coords = {\n x: commonX,\n y: reference.y - floating.height\n };\n break;\n case 'bottom':\n coords = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n case 'right':\n coords = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n case 'left':\n coords = {\n x: reference.x - floating.width,\n y: commonY\n };\n break;\n default:\n coords = {\n x: reference.x,\n y: reference.y\n };\n }\n switch (getAlignment(placement)) {\n case 'start':\n coords[alignmentAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);\n break;\n case 'end':\n coords[alignmentAxis] += commonAlign * (rtl && isVertical ? -1 : 1);\n break;\n }\n return coords;\n}\n\n/**\n * Computes the `x` and `y` coordinates that will place the floating element\n * next to a given reference element.\n *\n * This export does not have any `platform` interface logic. You will need to\n * write one for the platform you are using Floating UI with.\n */\nconst computePosition = async (reference, floating, config) => {\n const {\n placement = 'bottom',\n strategy = 'absolute',\n middleware = [],\n platform\n } = config;\n const validMiddleware = middleware.filter(Boolean);\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(floating));\n let rects = await platform.getElementRects({\n reference,\n floating,\n strategy\n });\n let {\n x,\n y\n } = computeCoordsFromPlacement(rects, placement, rtl);\n let statefulPlacement = placement;\n let middlewareData = {};\n let resetCount = 0;\n for (let i = 0; i < validMiddleware.length; i++) {\n const {\n name,\n fn\n } = validMiddleware[i];\n const {\n x: nextX,\n y: nextY,\n data,\n reset\n } = await fn({\n x,\n y,\n initialPlacement: placement,\n placement: statefulPlacement,\n strategy,\n middlewareData,\n rects,\n platform,\n elements: {\n reference,\n floating\n }\n });\n x = nextX != null ? nextX : x;\n y = nextY != null ? nextY : y;\n middlewareData = {\n ...middlewareData,\n [name]: {\n ...middlewareData[name],\n ...data\n }\n };\n if (reset && resetCount <= 50) {\n resetCount++;\n if (typeof reset === 'object') {\n if (reset.placement) {\n statefulPlacement = reset.placement;\n }\n if (reset.rects) {\n rects = reset.rects === true ? await platform.getElementRects({\n reference,\n floating,\n strategy\n }) : reset.rects;\n }\n ({\n x,\n y\n } = computeCoordsFromPlacement(rects, statefulPlacement, rtl));\n }\n i = -1;\n }\n }\n return {\n x,\n y,\n placement: statefulPlacement,\n strategy,\n middlewareData\n };\n};\n\n/**\n * Resolves with an object of overflow side offsets that determine how much the\n * element is overflowing a given clipping boundary on each side.\n * - positive = overflowing the boundary by that number of pixels\n * - negative = how many pixels left before it will overflow\n * - 0 = lies flush with the boundary\n * @see https://floating-ui.com/docs/detectOverflow\n */\nasync function detectOverflow(state, options) {\n var _await$platform$isEle;\n if (options === void 0) {\n options = {};\n }\n const {\n x,\n y,\n platform,\n rects,\n elements,\n strategy\n } = state;\n const {\n boundary = 'clippingAncestors',\n rootBoundary = 'viewport',\n elementContext = 'floating',\n altBoundary = false,\n padding = 0\n } = evaluate(options, state);\n const paddingObject = getPaddingObject(padding);\n const altContext = elementContext === 'floating' ? 'reference' : 'floating';\n const element = elements[altBoundary ? altContext : elementContext];\n const clippingClientRect = rectToClientRect(await platform.getClippingRect({\n element: ((_await$platform$isEle = await (platform.isElement == null ? void 0 : platform.isElement(element))) != null ? _await$platform$isEle : true) ? element : element.contextElement || (await (platform.getDocumentElement == null ? void 0 : platform.getDocumentElement(elements.floating))),\n boundary,\n rootBoundary,\n strategy\n }));\n const rect = elementContext === 'floating' ? {\n x,\n y,\n width: rects.floating.width,\n height: rects.floating.height\n } : rects.reference;\n const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));\n const offsetScale = (await (platform.isElement == null ? void 0 : platform.isElement(offsetParent))) ? (await (platform.getScale == null ? void 0 : platform.getScale(offsetParent))) || {\n x: 1,\n y: 1\n } : {\n x: 1,\n y: 1\n };\n const elementClientRect = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({\n elements,\n rect,\n offsetParent,\n strategy\n }) : rect);\n return {\n top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,\n bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,\n left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,\n right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x\n };\n}\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst arrow = options => ({\n name: 'arrow',\n options,\n async fn(state) {\n const {\n x,\n y,\n placement,\n rects,\n platform,\n elements,\n middlewareData\n } = state;\n // Since `element` is required, we don't Partial<> the type.\n const {\n element,\n padding = 0\n } = evaluate(options, state) || {};\n if (element == null) {\n return {};\n }\n const paddingObject = getPaddingObject(padding);\n const coords = {\n x,\n y\n };\n const axis = getAlignmentAxis(placement);\n const length = getAxisLength(axis);\n const arrowDimensions = await platform.getDimensions(element);\n const isYAxis = axis === 'y';\n const minProp = isYAxis ? 'top' : 'left';\n const maxProp = isYAxis ? 'bottom' : 'right';\n const clientProp = isYAxis ? 'clientHeight' : 'clientWidth';\n const endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length];\n const startDiff = coords[axis] - rects.reference[axis];\n const arrowOffsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(element));\n let clientSize = arrowOffsetParent ? arrowOffsetParent[clientProp] : 0;\n\n // DOM platform can return `window` as the `offsetParent`.\n if (!clientSize || !(await (platform.isElement == null ? void 0 : platform.isElement(arrowOffsetParent)))) {\n clientSize = elements.floating[clientProp] || rects.floating[length];\n }\n const centerToReference = endDiff / 2 - startDiff / 2;\n\n // If the padding is large enough that it causes the arrow to no longer be\n // centered, modify the padding so that it is centered.\n const largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1;\n const minPadding = min(paddingObject[minProp], largestPossiblePadding);\n const maxPadding = min(paddingObject[maxProp], largestPossiblePadding);\n\n // Make sure the arrow doesn't overflow the floating element if the center\n // point is outside the floating element's bounds.\n const min$1 = minPadding;\n const max = clientSize - arrowDimensions[length] - maxPadding;\n const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;\n const offset = clamp(min$1, center, max);\n\n // If the reference is small enough that the arrow's padding causes it to\n // to point to nothing for an aligned placement, adjust the offset of the\n // floating element itself. To ensure `shift()` continues to take action,\n // a single reset is performed when this is true.\n const shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center !== offset && rects.reference[length] / 2 - (center < min$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;\n const alignmentOffset = shouldAddOffset ? center < min$1 ? center - min$1 : center - max : 0;\n return {\n [axis]: coords[axis] + alignmentOffset,\n data: {\n [axis]: offset,\n centerOffset: center - offset - alignmentOffset,\n ...(shouldAddOffset && {\n alignmentOffset\n })\n },\n reset: shouldAddOffset\n };\n }\n});\n\nfunction getPlacementList(alignment, autoAlignment, allowedPlacements) {\n const allowedPlacementsSortedByAlignment = alignment ? [...allowedPlacements.filter(placement => getAlignment(placement) === alignment), ...allowedPlacements.filter(placement => getAlignment(placement) !== alignment)] : allowedPlacements.filter(placement => getSide(placement) === placement);\n return allowedPlacementsSortedByAlignment.filter(placement => {\n if (alignment) {\n return getAlignment(placement) === alignment || (autoAlignment ? getOppositeAlignmentPlacement(placement) !== placement : false);\n }\n return true;\n });\n}\n/**\n * Optimizes the visibility of the floating element by choosing the placement\n * that has the most space available automatically, without needing to specify a\n * preferred placement. Alternative to `flip`.\n * @see https://floating-ui.com/docs/autoPlacement\n */\nconst autoPlacement = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'autoPlacement',\n options,\n async fn(state) {\n var _middlewareData$autoP, _middlewareData$autoP2, _placementsThatFitOnE;\n const {\n rects,\n middlewareData,\n placement,\n platform,\n elements\n } = state;\n const {\n crossAxis = false,\n alignment,\n allowedPlacements = placements,\n autoAlignment = true,\n ...detectOverflowOptions\n } = evaluate(options, state);\n const placements$1 = alignment !== undefined || allowedPlacements === placements ? getPlacementList(alignment || null, autoAlignment, allowedPlacements) : allowedPlacements;\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const currentIndex = ((_middlewareData$autoP = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP.index) || 0;\n const currentPlacement = placements$1[currentIndex];\n if (currentPlacement == null) {\n return {};\n }\n const alignmentSides = getAlignmentSides(currentPlacement, rects, await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating)));\n\n // Make `computeCoords` start from the right place.\n if (placement !== currentPlacement) {\n return {\n reset: {\n placement: placements$1[0]\n }\n };\n }\n const currentOverflows = [overflow[getSide(currentPlacement)], overflow[alignmentSides[0]], overflow[alignmentSides[1]]];\n const allOverflows = [...(((_middlewareData$autoP2 = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP2.overflows) || []), {\n placement: currentPlacement,\n overflows: currentOverflows\n }];\n const nextPlacement = placements$1[currentIndex + 1];\n\n // There are more placements to check.\n if (nextPlacement) {\n return {\n data: {\n index: currentIndex + 1,\n overflows: allOverflows\n },\n reset: {\n placement: nextPlacement\n }\n };\n }\n const placementsSortedByMostSpace = allOverflows.map(d => {\n const alignment = getAlignment(d.placement);\n return [d.placement, alignment && crossAxis ?\n // Check along the mainAxis and main crossAxis side.\n d.overflows.slice(0, 2).reduce((acc, v) => acc + v, 0) :\n // Check only the mainAxis.\n d.overflows[0], d.overflows];\n }).sort((a, b) => a[1] - b[1]);\n const placementsThatFitOnEachSide = placementsSortedByMostSpace.filter(d => d[2].slice(0,\n // Aligned placements should not check their opposite crossAxis\n // side.\n getAlignment(d[0]) ? 2 : 3).every(v => v <= 0));\n const resetPlacement = ((_placementsThatFitOnE = placementsThatFitOnEachSide[0]) == null ? void 0 : _placementsThatFitOnE[0]) || placementsSortedByMostSpace[0][0];\n if (resetPlacement !== placement) {\n return {\n data: {\n index: currentIndex + 1,\n overflows: allOverflows\n },\n reset: {\n placement: resetPlacement\n }\n };\n }\n return {};\n }\n };\n};\n\n/**\n * Optimizes the visibility of the floating element by flipping the `placement`\n * in order to keep it in view when the preferred placement(s) will overflow the\n * clipping boundary. Alternative to `autoPlacement`.\n * @see https://floating-ui.com/docs/flip\n */\nconst flip = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'flip',\n options,\n async fn(state) {\n var _middlewareData$arrow, _middlewareData$flip;\n const {\n placement,\n middlewareData,\n rects,\n initialPlacement,\n platform,\n elements\n } = state;\n const {\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = true,\n fallbackPlacements: specifiedFallbackPlacements,\n fallbackStrategy = 'bestFit',\n fallbackAxisSideDirection = 'none',\n flipAlignment = true,\n ...detectOverflowOptions\n } = evaluate(options, state);\n\n // If a reset by the arrow was caused due to an alignment offset being\n // added, we should skip any logic now since `flip()` has already done its\n // work.\n // https://github.com/floating-ui/floating-ui/issues/2549#issuecomment-1719601643\n if ((_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {\n return {};\n }\n const side = getSide(placement);\n const initialSideAxis = getSideAxis(initialPlacement);\n const isBasePlacement = getSide(initialPlacement) === initialPlacement;\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement(initialPlacement)] : getExpandedPlacements(initialPlacement));\n const hasFallbackAxisSideDirection = fallbackAxisSideDirection !== 'none';\n if (!specifiedFallbackPlacements && hasFallbackAxisSideDirection) {\n fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));\n }\n const placements = [initialPlacement, ...fallbackPlacements];\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const overflows = [];\n let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];\n if (checkMainAxis) {\n overflows.push(overflow[side]);\n }\n if (checkCrossAxis) {\n const sides = getAlignmentSides(placement, rects, rtl);\n overflows.push(overflow[sides[0]], overflow[sides[1]]);\n }\n overflowsData = [...overflowsData, {\n placement,\n overflows\n }];\n\n // One or more sides is overflowing.\n if (!overflows.every(side => side <= 0)) {\n var _middlewareData$flip2, _overflowsData$filter;\n const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;\n const nextPlacement = placements[nextIndex];\n if (nextPlacement) {\n // Try next placement and re-run the lifecycle.\n return {\n data: {\n index: nextIndex,\n overflows: overflowsData\n },\n reset: {\n placement: nextPlacement\n }\n };\n }\n\n // First, find the candidates that fit on the mainAxis side of overflow,\n // then find the placement that fits the best on the main crossAxis side.\n let resetPlacement = (_overflowsData$filter = overflowsData.filter(d => d.overflows[0] <= 0).sort((a, b) => a.overflows[1] - b.overflows[1])[0]) == null ? void 0 : _overflowsData$filter.placement;\n\n // Otherwise fallback.\n if (!resetPlacement) {\n switch (fallbackStrategy) {\n case 'bestFit':\n {\n var _overflowsData$filter2;\n const placement = (_overflowsData$filter2 = overflowsData.filter(d => {\n if (hasFallbackAxisSideDirection) {\n const currentSideAxis = getSideAxis(d.placement);\n return currentSideAxis === initialSideAxis ||\n // Create a bias to the `y` side axis due to horizontal\n // reading directions favoring greater width.\n currentSideAxis === 'y';\n }\n return true;\n }).map(d => [d.placement, d.overflows.filter(overflow => overflow > 0).reduce((acc, overflow) => acc + overflow, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? void 0 : _overflowsData$filter2[0];\n if (placement) {\n resetPlacement = placement;\n }\n break;\n }\n case 'initialPlacement':\n resetPlacement = initialPlacement;\n break;\n }\n }\n if (placement !== resetPlacement) {\n return {\n reset: {\n placement: resetPlacement\n }\n };\n }\n }\n return {};\n }\n };\n};\n\nfunction getSideOffsets(overflow, rect) {\n return {\n top: overflow.top - rect.height,\n right: overflow.right - rect.width,\n bottom: overflow.bottom - rect.height,\n left: overflow.left - rect.width\n };\n}\nfunction isAnySideFullyClipped(overflow) {\n return sides.some(side => overflow[side] >= 0);\n}\n/**\n * Provides data to hide the floating element in applicable situations, such as\n * when it is not in the same clipping context as the reference element.\n * @see https://floating-ui.com/docs/hide\n */\nconst hide = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'hide',\n options,\n async fn(state) {\n const {\n rects\n } = state;\n const {\n strategy = 'referenceHidden',\n ...detectOverflowOptions\n } = evaluate(options, state);\n switch (strategy) {\n case 'referenceHidden':\n {\n const overflow = await detectOverflow(state, {\n ...detectOverflowOptions,\n elementContext: 'reference'\n });\n const offsets = getSideOffsets(overflow, rects.reference);\n return {\n data: {\n referenceHiddenOffsets: offsets,\n referenceHidden: isAnySideFullyClipped(offsets)\n }\n };\n }\n case 'escaped':\n {\n const overflow = await detectOverflow(state, {\n ...detectOverflowOptions,\n altBoundary: true\n });\n const offsets = getSideOffsets(overflow, rects.floating);\n return {\n data: {\n escapedOffsets: offsets,\n escaped: isAnySideFullyClipped(offsets)\n }\n };\n }\n default:\n {\n return {};\n }\n }\n }\n };\n};\n\nfunction getBoundingRect(rects) {\n const minX = min(...rects.map(rect => rect.left));\n const minY = min(...rects.map(rect => rect.top));\n const maxX = max(...rects.map(rect => rect.right));\n const maxY = max(...rects.map(rect => rect.bottom));\n return {\n x: minX,\n y: minY,\n width: maxX - minX,\n height: maxY - minY\n };\n}\nfunction getRectsByLine(rects) {\n const sortedRects = rects.slice().sort((a, b) => a.y - b.y);\n const groups = [];\n let prevRect = null;\n for (let i = 0; i < sortedRects.length; i++) {\n const rect = sortedRects[i];\n if (!prevRect || rect.y - prevRect.y > prevRect.height / 2) {\n groups.push([rect]);\n } else {\n groups[groups.length - 1].push(rect);\n }\n prevRect = rect;\n }\n return groups.map(rect => rectToClientRect(getBoundingRect(rect)));\n}\n/**\n * Provides improved positioning for inline reference elements that can span\n * over multiple lines, such as hyperlinks or range selections.\n * @see https://floating-ui.com/docs/inline\n */\nconst inline = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'inline',\n options,\n async fn(state) {\n const {\n placement,\n elements,\n rects,\n platform,\n strategy\n } = state;\n // A MouseEvent's client{X,Y} coords can be up to 2 pixels off a\n // ClientRect's bounds, despite the event listener being triggered. A\n // padding of 2 seems to handle this issue.\n const {\n padding = 2,\n x,\n y\n } = evaluate(options, state);\n const nativeClientRects = Array.from((await (platform.getClientRects == null ? void 0 : platform.getClientRects(elements.reference))) || []);\n const clientRects = getRectsByLine(nativeClientRects);\n const fallback = rectToClientRect(getBoundingRect(nativeClientRects));\n const paddingObject = getPaddingObject(padding);\n function getBoundingClientRect() {\n // There are two rects and they are disjoined.\n if (clientRects.length === 2 && clientRects[0].left > clientRects[1].right && x != null && y != null) {\n // Find the first rect in which the point is fully inside.\n return clientRects.find(rect => x > rect.left - paddingObject.left && x < rect.right + paddingObject.right && y > rect.top - paddingObject.top && y < rect.bottom + paddingObject.bottom) || fallback;\n }\n\n // There are 2 or more connected rects.\n if (clientRects.length >= 2) {\n if (getSideAxis(placement) === 'y') {\n const firstRect = clientRects[0];\n const lastRect = clientRects[clientRects.length - 1];\n const isTop = getSide(placement) === 'top';\n const top = firstRect.top;\n const bottom = lastRect.bottom;\n const left = isTop ? firstRect.left : lastRect.left;\n const right = isTop ? firstRect.right : lastRect.right;\n const width = right - left;\n const height = bottom - top;\n return {\n top,\n bottom,\n left,\n right,\n width,\n height,\n x: left,\n y: top\n };\n }\n const isLeftSide = getSide(placement) === 'left';\n const maxRight = max(...clientRects.map(rect => rect.right));\n const minLeft = min(...clientRects.map(rect => rect.left));\n const measureRects = clientRects.filter(rect => isLeftSide ? rect.left === minLeft : rect.right === maxRight);\n const top = measureRects[0].top;\n const bottom = measureRects[measureRects.length - 1].bottom;\n const left = minLeft;\n const right = maxRight;\n const width = right - left;\n const height = bottom - top;\n return {\n top,\n bottom,\n left,\n right,\n width,\n height,\n x: left,\n y: top\n };\n }\n return fallback;\n }\n const resetRects = await platform.getElementRects({\n reference: {\n getBoundingClientRect\n },\n floating: elements.floating,\n strategy\n });\n if (rects.reference.x !== resetRects.reference.x || rects.reference.y !== resetRects.reference.y || rects.reference.width !== resetRects.reference.width || rects.reference.height !== resetRects.reference.height) {\n return {\n reset: {\n rects: resetRects\n }\n };\n }\n return {};\n }\n };\n};\n\n// For type backwards-compatibility, the `OffsetOptions` type was also\n// Derivable.\n\nasync function convertValueToCoords(state, options) {\n const {\n placement,\n platform,\n elements\n } = state;\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const isVertical = getSideAxis(placement) === 'y';\n const mainAxisMulti = ['left', 'top'].includes(side) ? -1 : 1;\n const crossAxisMulti = rtl && isVertical ? -1 : 1;\n const rawValue = evaluate(options, state);\n\n // eslint-disable-next-line prefer-const\n let {\n mainAxis,\n crossAxis,\n alignmentAxis\n } = typeof rawValue === 'number' ? {\n mainAxis: rawValue,\n crossAxis: 0,\n alignmentAxis: null\n } : {\n mainAxis: rawValue.mainAxis || 0,\n crossAxis: rawValue.crossAxis || 0,\n alignmentAxis: rawValue.alignmentAxis\n };\n if (alignment && typeof alignmentAxis === 'number') {\n crossAxis = alignment === 'end' ? alignmentAxis * -1 : alignmentAxis;\n }\n return isVertical ? {\n x: crossAxis * crossAxisMulti,\n y: mainAxis * mainAxisMulti\n } : {\n x: mainAxis * mainAxisMulti,\n y: crossAxis * crossAxisMulti\n };\n}\n\n/**\n * Modifies the placement by translating the floating element along the\n * specified axes.\n * A number (shorthand for `mainAxis` or distance), or an axes configuration\n * object may be passed.\n * @see https://floating-ui.com/docs/offset\n */\nconst offset = function (options) {\n if (options === void 0) {\n options = 0;\n }\n return {\n name: 'offset',\n options,\n async fn(state) {\n var _middlewareData$offse, _middlewareData$arrow;\n const {\n x,\n y,\n placement,\n middlewareData\n } = state;\n const diffCoords = await convertValueToCoords(state, options);\n\n // If the placement is the same and the arrow caused an alignment offset\n // then we don't need to change the positioning coordinates.\n if (placement === ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse.placement) && (_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {\n return {};\n }\n return {\n x: x + diffCoords.x,\n y: y + diffCoords.y,\n data: {\n ...diffCoords,\n placement\n }\n };\n }\n };\n};\n\n/**\n * Optimizes the visibility of the floating element by shifting it in order to\n * keep it in view when it will overflow the clipping boundary.\n * @see https://floating-ui.com/docs/shift\n */\nconst shift = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'shift',\n options,\n async fn(state) {\n const {\n x,\n y,\n placement\n } = state;\n const {\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = false,\n limiter = {\n fn: _ref => {\n let {\n x,\n y\n } = _ref;\n return {\n x,\n y\n };\n }\n },\n ...detectOverflowOptions\n } = evaluate(options, state);\n const coords = {\n x,\n y\n };\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const crossAxis = getSideAxis(getSide(placement));\n const mainAxis = getOppositeAxis(crossAxis);\n let mainAxisCoord = coords[mainAxis];\n let crossAxisCoord = coords[crossAxis];\n if (checkMainAxis) {\n const minSide = mainAxis === 'y' ? 'top' : 'left';\n const maxSide = mainAxis === 'y' ? 'bottom' : 'right';\n const min = mainAxisCoord + overflow[minSide];\n const max = mainAxisCoord - overflow[maxSide];\n mainAxisCoord = clamp(min, mainAxisCoord, max);\n }\n if (checkCrossAxis) {\n const minSide = crossAxis === 'y' ? 'top' : 'left';\n const maxSide = crossAxis === 'y' ? 'bottom' : 'right';\n const min = crossAxisCoord + overflow[minSide];\n const max = crossAxisCoord - overflow[maxSide];\n crossAxisCoord = clamp(min, crossAxisCoord, max);\n }\n const limitedCoords = limiter.fn({\n ...state,\n [mainAxis]: mainAxisCoord,\n [crossAxis]: crossAxisCoord\n });\n return {\n ...limitedCoords,\n data: {\n x: limitedCoords.x - x,\n y: limitedCoords.y - y,\n enabled: {\n [mainAxis]: checkMainAxis,\n [crossAxis]: checkCrossAxis\n }\n }\n };\n }\n };\n};\n/**\n * Built-in `limiter` that will stop `shift()` at a certain point.\n */\nconst limitShift = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n options,\n fn(state) {\n const {\n x,\n y,\n placement,\n rects,\n middlewareData\n } = state;\n const {\n offset = 0,\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = true\n } = evaluate(options, state);\n const coords = {\n x,\n y\n };\n const crossAxis = getSideAxis(placement);\n const mainAxis = getOppositeAxis(crossAxis);\n let mainAxisCoord = coords[mainAxis];\n let crossAxisCoord = coords[crossAxis];\n const rawOffset = evaluate(offset, state);\n const computedOffset = typeof rawOffset === 'number' ? {\n mainAxis: rawOffset,\n crossAxis: 0\n } : {\n mainAxis: 0,\n crossAxis: 0,\n ...rawOffset\n };\n if (checkMainAxis) {\n const len = mainAxis === 'y' ? 'height' : 'width';\n const limitMin = rects.reference[mainAxis] - rects.floating[len] + computedOffset.mainAxis;\n const limitMax = rects.reference[mainAxis] + rects.reference[len] - computedOffset.mainAxis;\n if (mainAxisCoord < limitMin) {\n mainAxisCoord = limitMin;\n } else if (mainAxisCoord > limitMax) {\n mainAxisCoord = limitMax;\n }\n }\n if (checkCrossAxis) {\n var _middlewareData$offse, _middlewareData$offse2;\n const len = mainAxis === 'y' ? 'width' : 'height';\n const isOriginSide = ['top', 'left'].includes(getSide(placement));\n const limitMin = rects.reference[crossAxis] - rects.floating[len] + (isOriginSide ? ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse[crossAxis]) || 0 : 0) + (isOriginSide ? 0 : computedOffset.crossAxis);\n const limitMax = rects.reference[crossAxis] + rects.reference[len] + (isOriginSide ? 0 : ((_middlewareData$offse2 = middlewareData.offset) == null ? void 0 : _middlewareData$offse2[crossAxis]) || 0) - (isOriginSide ? computedOffset.crossAxis : 0);\n if (crossAxisCoord < limitMin) {\n crossAxisCoord = limitMin;\n } else if (crossAxisCoord > limitMax) {\n crossAxisCoord = limitMax;\n }\n }\n return {\n [mainAxis]: mainAxisCoord,\n [crossAxis]: crossAxisCoord\n };\n }\n };\n};\n\n/**\n * Provides data that allows you to change the size of the floating element —\n * for instance, prevent it from overflowing the clipping boundary or match the\n * width of the reference element.\n * @see https://floating-ui.com/docs/size\n */\nconst size = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'size',\n options,\n async fn(state) {\n var _state$middlewareData, _state$middlewareData2;\n const {\n placement,\n rects,\n platform,\n elements\n } = state;\n const {\n apply = () => {},\n ...detectOverflowOptions\n } = evaluate(options, state);\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const isYAxis = getSideAxis(placement) === 'y';\n const {\n width,\n height\n } = rects.floating;\n let heightSide;\n let widthSide;\n if (side === 'top' || side === 'bottom') {\n heightSide = side;\n widthSide = alignment === ((await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating))) ? 'start' : 'end') ? 'left' : 'right';\n } else {\n widthSide = side;\n heightSide = alignment === 'end' ? 'top' : 'bottom';\n }\n const maximumClippingHeight = height - overflow.top - overflow.bottom;\n const maximumClippingWidth = width - overflow.left - overflow.right;\n const overflowAvailableHeight = min(height - overflow[heightSide], maximumClippingHeight);\n const overflowAvailableWidth = min(width - overflow[widthSide], maximumClippingWidth);\n const noShift = !state.middlewareData.shift;\n let availableHeight = overflowAvailableHeight;\n let availableWidth = overflowAvailableWidth;\n if ((_state$middlewareData = state.middlewareData.shift) != null && _state$middlewareData.enabled.x) {\n availableWidth = maximumClippingWidth;\n }\n if ((_state$middlewareData2 = state.middlewareData.shift) != null && _state$middlewareData2.enabled.y) {\n availableHeight = maximumClippingHeight;\n }\n if (noShift && !alignment) {\n const xMin = max(overflow.left, 0);\n const xMax = max(overflow.right, 0);\n const yMin = max(overflow.top, 0);\n const yMax = max(overflow.bottom, 0);\n if (isYAxis) {\n availableWidth = width - 2 * (xMin !== 0 || xMax !== 0 ? xMin + xMax : max(overflow.left, overflow.right));\n } else {\n availableHeight = height - 2 * (yMin !== 0 || yMax !== 0 ? yMin + yMax : max(overflow.top, overflow.bottom));\n }\n }\n await apply({\n ...state,\n availableWidth,\n availableHeight\n });\n const nextDimensions = await platform.getDimensions(elements.floating);\n if (width !== nextDimensions.width || height !== nextDimensions.height) {\n return {\n reset: {\n rects: true\n }\n };\n }\n return {};\n }\n };\n};\n\nexport { arrow, autoPlacement, computePosition, detectOverflow, flip, hide, inline, limitShift, offset, shift, size };\n"],"names":["tester","exports","email","length","test","parts","split","some","part","computeCoordsFromPlacement","_ref","placement","rtl","reference","floating","sideAxis","alignmentAxis","alignLength","side","isVertical","commonX","x","width","commonY","y","height","commonAlign","coords","computePosition","async","config","strategy","middleware","platform","validMiddleware","filter","Boolean","isRTL","rects","getElementRects","statefulPlacement","middlewareData","resetCount","i","name","fn","nextX","nextY","data","reset","initialPlacement","elements","detectOverflow","state","options","_await$platform$isEle","boundary","rootBoundary","elementContext","altBoundary","padding","paddingObject","element","clippingClientRect","getClippingRect","isElement","contextElement","getDocumentElement","rect","offsetParent","getOffsetParent","offsetScale","getScale","elementClientRect","convertOffsetParentRelativeRectToViewportRelativeRect","top","bottom","left","right","arrow","axis","arrowDimensions","getDimensions","isYAxis","minProp","maxProp","clientProp","endDiff","startDiff","arrowOffsetParent","clientSize","centerToReference","largestPossiblePadding","minPadding","maxPadding","min$1","max","center","offset","shouldAddOffset","alignmentOffset","centerOffset","autoPlacement","_middlewareData$autoP","_middlewareData$autoP2","_placementsThatFitOnE","crossAxis","alignment","allowedPlacements","autoAlignment","detectOverflowOptions","placements$1","undefined","getPlacementList","overflow","currentIndex","index","currentPlacement","alignmentSides","currentOverflows","allOverflows","overflows","nextPlacement","placementsSortedByMostSpace","map","d","slice","reduce","acc","v","sort","a","b","resetPlacement","every","flip","_middlewareData$arrow","_middlewareData$flip","mainAxis","checkMainAxis","checkCrossAxis","fallbackPlacements","specifiedFallbackPlacements","fallbackStrategy","fallbackAxisSideDirection","flipAlignment","initialSideAxis","isBasePlacement","hasFallbackAxisSideDirection","push","placements","overflowsData","sides","_middlewareData$flip2","_overflowsData$filter","nextIndex","_overflowsData$filter2","currentSideAxis","getSideOffsets","isAnySideFullyClipped","hide","offsets","referenceHiddenOffsets","referenceHidden","escapedOffsets","escaped","getBoundingRect","minX","minY","inline","nativeClientRects","Array","from","getClientRects","clientRects","sortedRects","groups","prevRect","getRectsByLine","fallback","resetRects","getBoundingClientRect","find","firstRect","lastRect","isTop","isLeftSide","maxRight","minLeft","measureRects","_middlewareData$offse","diffCoords","mainAxisMulti","includes","crossAxisMulti","rawValue","convertValueToCoords","shift","limiter","mainAxisCoord","crossAxisCoord","maxSide","min","limitedCoords","enabled","limitShift","rawOffset","computedOffset","len","limitMin","limitMax","_middlewareData$offse2","isOriginSide","size","_state$middlewareData","_state$middlewareData2","apply","heightSide","widthSide","maximumClippingHeight","maximumClippingWidth","overflowAvailableHeight","overflowAvailableWidth","noShift","availableHeight","availableWidth","xMin","xMax","yMin","yMax","nextDimensions"],"sourceRoot":""}