PHP 8.2.30
Preview: computeAutoPlacement.js.flow Size: 1.75 KB
/proc/thread-self/root/home/byroehnu/.trash/node_modules11/@popperjs/core/lib/utils/computeAutoPlacement.js.flow

// @flow
import type { State, Padding } from '../types';
import type {
  Placement,
  ComputedPlacement,
  Boundary,
  RootBoundary,
} from '../enums';
import getVariation from './getVariation';
import {
  variationPlacements,
  basePlacements,
  placements as allPlacements,
} from '../enums';
import detectOverflow from './detectOverflow';
import getBasePlacement from './getBasePlacement';

type Options = {
  placement: Placement,
  padding: Padding,
  boundary: Boundary,
  rootBoundary: RootBoundary,
  flipVariations: boolean,
  allowedAutoPlacements?: Array<Placement>,
};

type OverflowsMap = { [ComputedPlacement]: number };

export default function computeAutoPlacement(
  state: $Shape<State>,
  options: Options = {}
): Array<ComputedPlacement> {
  const {
    placement,
    boundary,
    rootBoundary,
    padding,
    flipVariations,
    allowedAutoPlacements = allPlacements,
  } = options;

  const variation = getVariation(placement);

  const placements = variation
    ? flipVariations
      ? variationPlacements
      : variationPlacements.filter(
          (placement) => getVariation(placement) === variation
        )
    : basePlacements;

  let allowedPlacements = placements.filter(
    (placement) => allowedAutoPlacements.indexOf(placement) >= 0
  );

  if (allowedPlacements.length === 0) {
    allowedPlacements = placements;
  }

  // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...
  const overflows: OverflowsMap = allowedPlacements.reduce((acc, placement) => {
    acc[placement] = detectOverflow(state, {
      placement,
      boundary,
      rootBoundary,
      padding,
    })[getBasePlacement(placement)];

    return acc;
  }, {});

  return Object.keys(overflows).sort((a, b) => overflows[a] - overflows[b]);
}

Directory Contents

Dirs: 0 × Files: 63

Name Size Perms Modified Actions
466 B lrw-r--r-- 2026-02-28 00:30:38
Edit Download
1.64 KB lrw-r--r-- 2026-02-28 00:30:38
Edit Download
1.75 KB lrw-r--r-- 2026-02-28 00:30:38
Edit Download
353 B lrw-r--r-- 2026-02-28 00:30:38
Edit Download
1.70 KB lrw-r--r-- 2026-02-28 00:30:40
Edit Download
1.92 KB lrw-r--r-- 2026-02-28 00:30:40
Edit Download
89 B lrw-r--r-- 2026-02-28 00:30:42
Edit Download
302 B lrw-r--r-- 2026-02-28 00:30:42
Edit Download
327 B lrw-r--r-- 2026-02-28 00:30:42
Edit Download
480 B lrw-r--r-- 2026-02-28 00:30:42
Edit Download
3.45 KB lrw-r--r-- 2026-02-28 00:30:44
Edit Download
3.19 KB lrw-r--r-- 2026-02-28 00:30:44
Edit Download
149 B lrw-r--r-- 2026-02-28 00:30:44
Edit Download
159 B lrw-r--r-- 2026-02-28 00:30:46
Edit Download
246 B lrw-r--r-- 2026-02-28 00:30:46
Edit Download
64 B lrw-r--r-- 2026-02-28 00:30:46
Edit Download
79 B lrw-r--r-- 2026-02-28 00:30:46
Edit Download
112 B lrw-r--r-- 2026-02-28 00:30:46
Edit Download
80 B lrw-r--r-- 2026-02-28 00:30:46
Edit Download
89 B lrw-r--r-- 2026-02-28 00:30:48
Edit Download
140 B lrw-r--r-- 2026-02-28 00:30:48
Edit Download
152 B lrw-r--r-- 2026-02-28 00:30:50
Edit Download
125 B lrw-r--r-- 2026-02-28 00:30:50
Edit Download
220 B lrw-r--r-- 2026-02-28 00:30:52
Edit Download
102 B lrw-r--r-- 2026-02-28 00:30:52
Edit Download
117 B lrw-r--r-- 2026-02-28 00:30:54
Edit Download
185 B lrw-r--r-- 2026-02-28 00:30:54
Edit Download
126 B lrw-r--r-- 2026-02-28 00:30:54
Edit Download
127 B lrw-r--r-- 2026-02-28 00:30:54
Edit Download
207 B lrw-r--r-- 2026-02-28 00:30:56
Edit Download
122 B lrw-r--r-- 2026-02-28 00:30:56
Edit Download
248 B lrw-r--r-- 2026-02-28 00:30:56
Edit Download
312 B lrw-r--r-- 2026-02-28 00:30:56
Edit Download
131 B lrw-r--r-- 2026-02-28 00:30:56
Edit Download
209 B lrw-r--r-- 2026-02-28 00:30:58
Edit Download
269 B lrw-r--r-- 2026-02-28 00:30:58
Edit Download
139 B lrw-r--r-- 2026-02-28 00:30:58
Edit Download
85 B lrw-r--r-- 2026-02-28 00:30:58
Edit Download
185 B lrw-r--r-- 2026-02-28 00:30:58
Edit Download
169 B lrw-r--r-- 2026-02-28 00:30:58
Edit Download
84 B lrw-r--r-- 2026-02-28 00:30:58
Edit Download
100 B lrw-r--r-- 2026-02-28 00:30:58
Edit Download
162 B lrw-r--r-- 2026-02-28 00:30:58
Edit Download
524 B lrw-r--r-- 2026-02-28 00:30:58
Edit Download
639 B lrw-r--r-- 2026-02-28 00:30:58
Edit Download
136 B lrw-r--r-- 2026-02-28 00:30:58
Edit Download
184 B lrw-r--r-- 2026-02-28 00:30:58
Edit Download
274 B lrw-r--r-- 2026-02-28 00:30:58
Edit Download
147 B lrw-r--r-- 2026-02-28 00:31:00
Edit Download
1.21 KB lrw-r--r-- 2026-02-28 00:31:00
Edit Download
1.33 KB lrw-r--r-- 2026-02-28 00:31:00
Edit Download
128 B lrw-r--r-- 2026-02-28 00:31:00
Edit Download
191 B lrw-r--r-- 2026-02-28 00:31:00
Edit Download
271 B lrw-r--r-- 2026-02-28 00:31:00
Edit Download
84 B lrw-r--r-- 2026-02-28 00:31:02
Edit Download
252 B lrw-r--r-- 2026-02-28 00:31:02
Edit Download
293 B lrw-r--r-- 2026-02-28 00:31:02
Edit Download
47 B lrw-r--r-- 2026-02-28 00:31:02
Edit Download
301 B lrw-r--r-- 2026-02-28 00:31:02
Edit Download
493 B lrw-r--r-- 2026-02-28 00:31:02
Edit Download
170 B lrw-r--r-- 2026-02-28 00:31:04
Edit Download
262 B lrw-r--r-- 2026-02-28 00:31:04
Edit Download
329 B lrw-r--r-- 2026-02-28 00:31:04
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).