Fix bin/publish: copy docs.dist from project root

Fix bin/publish: use correct .env path for rspade_system
Fix bin/publish script: prevent grep exit code 1 from terminating script

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
root
2025-10-21 02:08:33 +00:00
commit f6fac6c4bc
79758 changed files with 10547827 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
<?php
/**
* CODING CONVENTION:
* This file follows the coding convention where variable_names and function_names
* use snake_case (underscore_wherever_possible).
*/
namespace App\RSpade\Core\Response;
use App\RSpade\Core\Response\Rsx_Response_Abstract;
/**
* Authentication required response
*/
class Auth_Required_Response extends Rsx_Response_Abstract
{
public function __construct(string $reason = "Authentication Required", ?string $redirect = "/login")
{
$this->reason = $reason;
$this->redirect = $redirect;
$this->details = [];
}
public function get_type(): string
{
return 'response_auth_required';
}
}

View File

@@ -0,0 +1,28 @@
<?php
/**
* CODING CONVENTION:
* This file follows the coding convention where variable_names and function_names
* use snake_case (underscore_wherever_possible).
*/
namespace App\RSpade\Core\Response;
use App\RSpade\Core\Response\Rsx_Response_Abstract;
/**
* Fatal error response
*/
class Fatal_Error_Response extends Rsx_Response_Abstract
{
public function __construct(string $reason = "An error has occurred.", array $details = [])
{
$this->reason = $reason;
$this->redirect = null;
$this->details = $details;
}
public function get_type(): string
{
return 'response_fatal_error';
}
}

View File

@@ -0,0 +1,28 @@
<?php
/**
* CODING CONVENTION:
* This file follows the coding convention where variable_names and function_names
* use snake_case (underscore_wherever_possible).
*/
namespace App\RSpade\Core\Response;
use App\RSpade\Core\Response\Rsx_Response_Abstract;
/**
* Form error response
*/
class Form_Error_Response extends Rsx_Response_Abstract
{
public function __construct(string $reason = "An error has occurred.", array $details = [])
{
$this->reason = $reason;
$this->redirect = null;
$this->details = $details;
}
public function get_type(): string
{
return 'response_form_error';
}
}

View File

@@ -0,0 +1,48 @@
<?php
/**
* CODING CONVENTION:
* This file follows the coding convention where variable_names and function_names
* use snake_case (underscore_wherever_possible).
*/
namespace App\RSpade\Core\Response;
/**
* Base class for special RSX response types
*/
#[Instantiatable]
abstract class Rsx_Response_Abstract
{
protected string $reason;
protected ?string $redirect;
protected array $details;
/**
* Get the response type identifier
*/
abstract public function get_type(): string;
/**
* Get the reason message
*/
public function get_reason(): string
{
return $this->reason;
}
/**
* Get the redirect URL (if any)
*/
public function get_redirect(): ?string
{
return $this->redirect;
}
/**
* Get additional details
*/
public function get_details(): array
{
return $this->details;
}
}

View File

@@ -0,0 +1,28 @@
<?php
/**
* CODING CONVENTION:
* This file follows the coding convention where variable_names and function_names
* use snake_case (underscore_wherever_possible).
*/
namespace App\RSpade\Core\Response;
use App\RSpade\Core\Response\Rsx_Response_Abstract;
/**
* Unauthorized response
*/
class Unauthorized_Response extends Rsx_Response_Abstract
{
public function __construct(string $reason = "Unauthorized", ?string $redirect = null)
{
$this->reason = $reason;
$this->redirect = $redirect;
$this->details = [];
}
public function get_type(): string
{
return 'response_unauthorized';
}
}