DevCommands
class DevCommands
Constants
| protected DEFAULT_MODE |
|
Properties
| static protected NodePackageManager|null | $packageManager | The resolved NodePackageManager instance. |
|
| static protected int | $colorCount | Counter to keep track of how many colors have been assigned. |
|
| static protected DevCommand> | $commands | The registered development commands. |
|
| static protected list<string> | $only | The names of commands that should be included when running the "dev" command. |
|
| static protected list<string> | $except | The names of commands that should be excluded when running the "dev" command. |
|
| static protected DevCommandMode | $mode | The mode in which the "dev" command should run. |
|
| static protected bool | $withTimestamps | Whether to include timestamps in the output of the "dev" command. |
|
| static protected bool | $autoRestart | Whether to automatically restart a "dev" command when it fails. |
|
| static protected bool | $withoutVendorCommands | Whether to exclude vendor commands. |
|
| static protected bool | $withoutDefaultCommands | Whether to exclude the framework's default commands. |
|
| static protected int|null | $bufferSize | How many lines of output to buffer for each command when running in tabbed mode. |
|
| static protected int|null | $streamBufferSize | How many lines of output to buffer total when running in stream mode. |
Methods
Register the default development commands.
Register a development command.
Register an Artisan command, automatically prefixing it with "php artisan".
Register a Node command, automatically prefixing it with the detected package manager's run command.
Register a Node command, automatically prefixing it with the detected package manager's exec command.
Get the registered development commands.
Set the mode to inline, where all commands are run in the same terminal window.
Set the mode to stream, where all commands are run in the same terminal window, but their output is interactive within a TUI.
Set the mode to tabs, where each command is run in its own terminal tab.
Get the mode in which the "dev" command should run.
Enable timestamps in the output of the "dev" command.
Determine if timestamps should be included in the output of the "dev" command.
Disable automatic restart of a "dev" command when it fails.
Determine if a "dev" command should automatically restart when it fails.
Set the number of lines of output to buffer for each command when running in tabbed mode.
Get the number of lines of output to buffer for each command when running in tabbed mode.
Set the number of lines of output to buffer total when running in stream mode.
Get the number of lines of output to buffer total when running in stream mode.
Fill in any empty colors in the given commands array, ensuring each command has a color assigned.
Get a color for a command, ensuring that colors are reused only after all available colors have been used at least once.
Resolve the first external caller frame from a debug backtrace.
Determine the registration priority from a debug backtrace.
Determine whether a file belongs to an installed Composer dependency.
Determine whether a path is the given directory or one of its descendants.
Set the commands that should be included when running the "dev" command.
Set the commands that should be excluded when running the "dev" command.
Exclude any commands from the vendor directory.
Exclude the framework's default commands.
Resolve and return the NodePackageManager instance.
Flush all static state.
Details
at line 94
static void
registerDefaults()
Register the default development commands.
Boot-only. The commands persist in static properties for the worker lifetime and affect every subsequent development command invocation.
at line 115
static DevCommand
register(string $command, string|null $name = null)
Register a development command.
Boot-only. The command persists in a static property for the worker lifetime and affects every subsequent development command invocation.
at line 142
static DevCommand
artisan(string $command, string|null $name = null)
Register an Artisan command, automatically prefixing it with "php artisan".
Boot-only. The command persists in a static property for the worker lifetime and affects every subsequent development command invocation.
at line 153
static DevCommand
node(string $command, string|null $name = null)
Register a Node command, automatically prefixing it with the detected package manager's run command.
Boot-only. The command persists in a static property for the worker lifetime and affects every subsequent development command invocation.
at line 164
static DevCommand
nodeExec(string $command, string|null $name = null)
Register a Node command, automatically prefixing it with the detected package manager's exec command.
Boot-only. The command persists in a static property for the worker lifetime and affects every subsequent development command invocation.
at line 174
static array
commands()
Get the registered development commands.
at line 204
static void
inline()
Set the mode to inline, where all commands are run in the same terminal window.
Boot-only. The mode is shared by all development command invocations in the worker.
at line 214
static void
stream()
Set the mode to stream, where all commands are run in the same terminal window, but their output is interactive within a TUI.
Boot-only. The mode is shared by all development command invocations in the worker.
at line 224
static void
tabs()
Set the mode to tabs, where each command is run in its own terminal tab.
Boot-only. The mode is shared by all development command invocations in the worker.
at line 232
static DevCommandMode
mode()
Get the mode in which the "dev" command should run.
at line 242
static void
withTimestamps()
Enable timestamps in the output of the "dev" command.
Boot-only. The setting is shared by all development command invocations in the worker.
at line 250
static bool
shouldIncludeTimestamps()
Determine if timestamps should be included in the output of the "dev" command.
at line 260
static void
disableAutoRestart()
Disable automatic restart of a "dev" command when it fails.
Boot-only. The setting is shared by all development command invocations in the worker.
at line 268
static bool
shouldAutoRestart()
Determine if a "dev" command should automatically restart when it fails.
at line 278
static void
bufferSize(int $lines)
Set the number of lines of output to buffer for each command when running in tabbed mode.
Boot-only. The buffer size is shared by all development command invocations in the worker.
at line 286
static int|null
getBufferSize()
Get the number of lines of output to buffer for each command when running in tabbed mode.
at line 296
static void
streamBufferSize(int $lines)
Set the number of lines of output to buffer total when running in stream mode.
Boot-only. The buffer size is shared by all development command invocations in the worker.
at line 304
static int|null
getStreamBufferSize()
Get the number of lines of output to buffer total when running in stream mode.
at line 315
static protected array
fillInEmptyColors(array $commands)
Fill in any empty colors in the given commands array, ensuring each command has a color assigned.
at line 331
static protected string
getColor(array $commands)
Get a color for a command, ensuring that colors are reused only after all available colors have been used at least once.
at line 347
static protected array
resolveSource(array $trace)
Resolve the first external caller frame from a debug backtrace.
at line 370
static protected int
resolvePriority(array $trace)
Determine the registration priority from a debug backtrace.
at line 411
static protected bool
isDependencyFile(string $file)
Determine whether a file belongs to an installed Composer dependency.
at line 437
static protected bool
isWithinPath(string $path, string $directory)
Determine whether a path is the given directory or one of its descendants.
at line 448
static void
only(string ...$names)
Set the commands that should be included when running the "dev" command.
Boot-only. The filter persists in a static property for the worker lifetime and affects every subsequent development command invocation.
at line 459
static void
except(string ...$names)
Set the commands that should be excluded when running the "dev" command.
Boot-only. The filter persists in a static property for the worker lifetime and affects every subsequent development command invocation.
at line 469
static void
withoutVendorCommands()
Exclude any commands from the vendor directory.
Boot-only. The filter is shared by all development command invocations in the worker.
at line 479
static void
withoutDefaultCommands()
Exclude the framework's default commands.
Boot-only. The filter is shared by all development command invocations in the worker.
at line 487
static protected NodePackageManager
getPackageManager()
Resolve and return the NodePackageManager instance.
at line 495
static void
flushState()
Flush all static state.