/** Datei: plugins/rest/library/ARUNOX/Plugins/REST/Generator/Data/Table/Column/Type.php **/ * @copyright 2025 ARUNOX * @version 1.0.0 * @since 1.0.0 File is created */ namespace ARUNOX\Plugins\REST\Generator\Data\Table\Column; /* ### ENUMS ######################################################## # */ enum Type : string { case Date = "date"; case Tel = "tel"; case URL = "url"; case Text = "text"; case Icon = "icon"; case Small = "small"; case Time = "time"; case Email = "email"; case Amount = "amount"; case Status = "status"; case Actions = "actions"; case DateTime = "datetime"; /* ### MAGIC FUNCTIONS ########################################## # */ } /** Datei: plugins/rest/library/ARUNOX/Plugins/REST/Generator/Data/Table/Column/Column.php **/ * @copyright 2025 ARUNOX * @version 1.0.0 * @since 1.0.0 File is created */ namespace ARUNOX\Plugins\REST\Generator\Data\Table; use ARUNOX\Plugins\REST\Generator; use ARUNOX\Plugins\REST\Generator\Config; use ARUNOX\Plugins\REST\Generator\Base\BaseGenerator; use ARUNOX\Plugins\REST\Generator\Helpers\ActionHelpers; use ARUNOX\Plugins\REST\Generator\Helpers\ButtonHelpers; use ARUNOX\Plugins\REST\Generator\Data\Table\Column\Type; class Column extends BaseGenerator { /* ### TRAITS ################################################### # */ use ActionHelpers, ButtonHelpers; /* ### VARIABLES ################################################ # */ protected static ?string $PRIMARYKEY = "key"; protected array $ALLOWED_CONFIG = [ "key" => Config\Type::String, "label" => Config\Type::String, "title" => Config\Type::String, "icon" => Config\Type::String, "emoji" => Config\Type::String, "visible" => Config\Type::Bool, "sortable" => Config\Type::Bool, "searchable" => Config\Type::Bool, "type" => Type::class, "color" => Config\Color::class, "options" => Config\Type::Array, ]; /* ### PUBLIC FUNCTIONS ######################################### # */ public function beforeColumn( ...$args ) { if( isset( $args["type"] ) ) { $class = "ARUNOX\\Plugins\\REST\\Generator\\Data\\Table\\Column\\" . $args["type"]->name; if( class_exists( $class ) ) { $field = Generator::create( $class, ...$args ); $this->before( "columns", $field ); return $this; } } $this->before( "columns", ...$args ); return $this; } public function afterColumn( ...$args ) { if( isset( $args["type"] ) ) { $class = "ARUNOX\\Plugins\\REST\\Generator\\Data\\Table\\Column\\" . $args["type"]->name; if( class_exists( $class ) ) { $field = Generator::create( $class, ...$args ); $this->after( "columns", $field ); return $this; } } $this->after( "columns", ...$args ); return $this; } /* ### MAGIC FUNCTIONS ########################################## # */ } /** Datei: plugins/rest/library/ARUNOX/Plugins/REST/Generator/Data/Table/Column/Status.php **/ * @copyright 2025 ARUNOX * @version 1.0.0 * @since 1.0.0 File is created */ namespace ARUNOX\Plugins\REST\Generator\Data\Table\Column; use ARUNOX\Plugins\REST\Generator; use ARUNOX\Plugins\REST\Generator\Config; use ARUNOX\Plugins\REST\Generator\Helpers\ActionHelpers; class Status extends Generator\Data\Table\Column { /* ### TRAITS ################################################### # */ use ActionHelpers; /* ### VARIABLES ################################################ # */ protected array $ALLOWED_CONTENT = []; protected array $ALLOWED_CONFIG = [ "options" => Config\Type::Array, ]; /* ### PUBLIC FUNCTIONS ######################################### # */ /* ### MAGIC FUNCTIONS ########################################## # */ } /** Datei: plugins/rest/library/ARUNOX/Plugins/REST/Generator/Data/Table/Column/Actions.php **/ * @copyright 2025 ARUNOX * @version 1.0.0 * @since 1.0.0 File is created */ namespace ARUNOX\Plugins\REST\Generator\Data\Table\Column; use ARUNOX\Plugins\REST\Generator; use ARUNOX\Plugins\REST\Generator\Helpers\ButtonHelpers; class Actions extends Generator\Data\Table\Column { /* ### TRAITS ################################################### # */ use ButtonHelpers; /* ### VARIABLES ################################################ # */ protected static array $CONFIGS = []; /* ### PUBLIC FUNCTIONS ######################################### # */ /* ### MAGIC FUNCTIONS ########################################## # */ }