Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
vendor
/
laravel
/
ui
:
Cursor-20250320234021.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php namespace Laravel\Prompts\Concerns; trait Cursor { /** * Indicates if the cursor has been hidden. */ protected static bool $cursorHidden = false; /** * Hide the cursor. */ public function hideCursor(): void { static::writeDirectly("\e[?25l"); static::$cursorHidden = true; } /** * Show the cursor. */ public function showCursor(): void { static::writeDirectly("\e[?25h"); static::$cursorHidden = false; } /** * Restore the cursor if it was hidden. */ public function restoreCursor(): void { if (static::$cursorHidden) { $this->showCursor(); } } /** * Move the cursor. */ public function moveCursor(int $x, int $y = 0): void { $sequence = ''; if ($x < 0) { $sequence .= "\e[".abs($x).'D'; // Left } elseif ($x > 0) { $sequence .= "\e[{$x}C"; // Right } if ($y < 0) { $sequence .= "\e[".abs($y).'A'; // Up } elseif ($y > 0) { $sequence .= "\e[{$y}B"; // Down } static::writeDirectly($sequence); } /** * Move the cursor to the given column. */ public function moveCursorToColumn(int $column): void { static::writeDirectly("\e[{$column}G"); } /** * Move the cursor up by the given number of lines. */ public function moveCursorUp(int $lines): void { static::writeDirectly("\e[{$lines}A"); } }