Configuration
Configure the Status Management plugin
After publishing the configuration file, you can customize the plugin behavior in config/status-management.php.
php artisan vendor:publish --tag="status-management-config"Table & Column Names
Override the table names used by the package — useful when integrating with an existing schema.
'table_names' => [
'status' => 'statuses',
'status_values' => 'status_values',
'status_transitions' => 'status_transitions',
'status_transitions_permissions' => 'status_transitions_permissions',
'status_transitions_roles' => 'status_transitions_roles',
'status_entity_configs' => 'status_entity_configs',
],
'column_names' => [
'tenant_foreign_key' => 'tenant_id',
],Multi-Tenancy
Enable tenant-aware status values. When enabled, every StatusValue is scoped by the tenant
foreign key configured in column_names.tenant_foreign_key.
'tenant_aware' => false,When tenant_aware is true, your Statusable model must expose the tenant column (e.g. tenant_id)
so the package can read it when writing the status value.
Global Settings
These values are applied globally across all package components (StatusColumn, StatusFilter,
StatusSelect, etc.). To override behavior for a single component, use the local modifiers on that
component instead of changing these values. Local modifiers are documented in the Components & Style section.
'global_settings' => [
'use_icons' => true,
'use_icons_color' => true,
'use_color' => true,
'hide_disabled_options' => false,
'use_badge' => false,
'use_sortable' => true,
],Color Picker
The palette offered in the status create/edit form's color picker.
'color_picker' => [
'colors' => [
'#00BA54', '#33B78D', '#48A7FF', '#001683',
'#4732FF', '#B85CFF', '#FF3094', '#D70068',
'#FF4851', '#FF542A', '#F6AA09', '#D89138', '#FFFF00',
],
],Status Creation Defaults
Default values applied when a new status is created from the UI.
'creation' => [
'color' => '#001683',
'initial' => true,
'required_comment' => false,
// Icons available for selection in the IconPicker (label => Heroicon identifier).
'predefined_icons' => [
'Sparkles' => 'heroicon-o-sparkles',
'Play' => 'heroicon-o-play-circle',
'Progress' => 'heroicon-o-arrow-path',
'Clock' => 'heroicon-o-clock',
// ...19 icons total, override to customize the list
],
],Features
'features' => [
// Automatically fill name/code/icon when typing a status name
'auto_complete_status_fields' => true,
],Icons
The package ships configurable icon sets: icons (navigation and action icons) and default_status_icons
(auto-assigned by status code). Icons for the status picker live under creation.predefined_icons.
'icons' => [
'navigation' => 'heroicon-o-rectangle-stack',
'navigation_matrix' => 'heroicon-o-table-cells',
'change_status' => 'heroicon-o-arrow-path',
// ...
],Status Protection Rules
These rules enforce safe behavior for status operations. We strongly recommend keeping them enabled unless you implement equivalent protection yourself.
'rules' => [
// Prevent deleting statuses already used by records
'prevent_deleting_in_use' => true,
// Allow editing the status code after creation
'edit_status_code' => false,
],Disabling these rules may lead to broken status history, orphaned data, or system instability.
Next Steps
How is this guide?