[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: computeOffsets.js.flow
// @flow import getBasePlacement from './getBasePlacement'; import getVariation from './getVariation'; import getMainAxisFromPlacement from './getMainAxisFromPlacement'; import type { Rect, PositioningStrategy, Offsets, ClientRectObject, } from '../types'; import { top, right, bottom, left, start, end, type Placement } from '../enums'; export default function computeOffsets({ reference, element, placement, }: { reference: Rect | ClientRectObject, element: Rect | ClientRectObject, strategy: PositioningStrategy, placement?: Placement, }): Offsets { const basePlacement = placement ? getBasePlacement(placement) : null; const variation = placement ? getVariation(placement) : null; const commonX = reference.x + reference.width / 2 - element.width / 2; const commonY = reference.y + reference.height / 2 - element.height / 2; let 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, }; } const mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null; if (mainAxis != null) { const 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; }
Save Changes
Cancel / Back
Close ×
Server Info
Hostname: server1.winmanyltd.com
Server IP: 203.161.60.52
PHP Version: 8.3.27
Server Software: Apache
System: Linux server1.winmanyltd.com 4.18.0-553.22.1.el8_10.x86_64 #1 SMP Tue Sep 24 05:16:59 EDT 2024 x86_64
HDD Total: 117.98 GB
HDD Free: 59.6 GB
Domains on IP: N/A (Requires external lookup)
System Features
Safe Mode:
Off
disable_functions:
None
allow_url_fopen:
On
allow_url_include:
Off
magic_quotes_gpc:
Off
register_globals:
Off
open_basedir:
None
cURL:
Enabled
ZipArchive:
Enabled
MySQLi:
Enabled
PDO:
Enabled
wget:
Yes
curl (cmd):
Yes
perl:
Yes
python:
Yes (py3)
gcc:
Yes
pkexec:
Yes
git:
Yes
User Info
Username: eliosofonline
User ID (UID): 1002
Group ID (GID): 1003
Script Owner UID: 1002
Current Dir Owner: 1002