webshell
Ghost Exploiter Team Official
Mass Deface
Directory >>
/
home
/
whitjouh
/
public_html
/
core
/
vendor
/
laravel
/
prompts
/
src
/
Concerns
/
Mass Deface Auto Detect Domain
/*Ubah Ke document_root untuk mass deface*/
File / Folder
Size
Action
.
-
+New File
Colors.php
3.756KB
edt
ren
Cursor.php
1.18KB
edt
ren
Erase.php
0.597KB
edt
ren
Events.php
0.735KB
edt
ren
FakesInputOutput.php
2.6KB
edt
ren
Fallback.php
1.398KB
edt
ren
Interactivity.php
0.743KB
edt
ren
Scrolling.php
2.911KB
edt
ren
Termwind.php
0.515KB
edt
ren
Themes.php
3.477KB
edt
ren
Truncation.php
0.49KB
edt
ren
TypedValue.php
4.307KB
edt
ren
<?php namespace Laravel\Prompts\Concerns; use Laravel\Prompts\Themes\Contracts\Scrolling as ScrollingRenderer; trait Scrolling { /** * The number of items to display before scrolling. */ public int $scroll; /** * The index of the highlighted option. */ public ?int $highlighted; /** * The index of the first visible option. */ public int $firstVisible = 0; /** * Initialize scrolling. */ protected function initializeScrolling(?int $highlighted = null): void { $this->highlighted = $highlighted; $this->reduceScrollingToFitTerminal(); } /** * Reduce the scroll property to fit the terminal height. */ protected function reduceScrollingToFitTerminal(): void { $reservedLines = ($renderer = $this->getRenderer()) instanceof ScrollingRenderer ? $renderer->reservedLines() : 0; $this->scroll = min($this->scroll, $this->terminal()->lines() - $reservedLines); } /** * Highlight the given index. */ protected function highlight(?int $index): void { $this->highlighted = $index; if ($this->highlighted === null) { return; } if ($this->highlighted < $this->firstVisible) { $this->firstVisible = $this->highlighted; } elseif ($this->highlighted > $this->firstVisible + $this->scroll - 1) { $this->firstVisible = $this->highlighted - $this->scroll + 1; } } /** * Highlight the previous entry, or wrap around to the last entry. */ protected function highlightPrevious(int $total, bool $allowNull = false): void { if ($total === 0) { return; } if ($this->highlighted === null) { $this->highlight($total - 1); } elseif ($this->highlighted === 0) { $this->highlight($allowNull ? null : ($total - 1)); } else { $this->highlight($this->highlighted - 1); } } /** * Highlight the next entry, or wrap around to the first entry. */ protected function highlightNext(int $total, bool $allowNull = false): void { if ($total === 0) { return; } if ($this->highlighted === $total - 1) { $this->highlight($allowNull ? null : 0); } else { $this->highlight(($this->highlighted ?? -1) + 1); } } /** * Center the highlighted option. */ protected function scrollToHighlighted(int $total): void { if ($this->highlighted < $this->scroll) { return; } $remaining = $total - $this->highlighted - 1; $halfScroll = (int) floor($this->scroll / 2); $endOffset = max(0, $halfScroll - $remaining); if ($this->scroll % 2 === 0) { $endOffset--; } $this->firstVisible = $this->highlighted - $halfScroll - $endOffset; } }