Beboost

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?

On this page