diff --git a/classes/class-abilities.php b/classes/class-abilities.php index 6ac6e7bdb..df1939f11 100644 --- a/classes/class-abilities.php +++ b/classes/class-abilities.php @@ -33,11 +33,6 @@ class Abilities { */ const SETTING_NAME = 'enable_abilities_api'; - /** - * Holds instance of plugin object. - */ - public Plugin $plugin; - /** * Registered ability objects keyed by namespaced name. * @@ -50,9 +45,7 @@ class Abilities { * * @param Plugin $plugin Instance of plugin object. */ - public function __construct( Plugin $plugin ) { - $this->plugin = $plugin; - + public function __construct( public Plugin $plugin ) { if ( ! $this->is_available() ) { return; } diff --git a/classes/class-ability.php b/classes/class-ability.php index bb52162bb..0af772f08 100644 --- a/classes/class-ability.php +++ b/classes/class-ability.php @@ -17,18 +17,12 @@ */ abstract class Ability { - /** - * Holds instance of plugin object. - */ - protected Plugin $plugin; - /** * Class constructor. * * @param Plugin $plugin Instance of plugin object. */ - public function __construct( Plugin $plugin ) { - $this->plugin = $plugin; + public function __construct( protected Plugin $plugin ) { } /** diff --git a/classes/class-admin.php b/classes/class-admin.php index 824a1ad0a..c7ab4878e 100644 --- a/classes/class-admin.php +++ b/classes/class-admin.php @@ -76,13 +76,6 @@ class Admin { */ const LARGE_TABLE_CRON_NOTICE_OPTION = 'wp_stream_large_table_cron_notice'; - /** - * Holds Instance of plugin object - * - * @var Plugin - */ - public $plugin; - /** * Holds Network class */ @@ -158,9 +151,7 @@ class Admin { * * @param Plugin $plugin Instance of plugin object. */ - public function __construct( $plugin ) { - $this->plugin = $plugin; - + public function __construct( public $plugin ) { add_action( 'init', array( $this, 'init' ) ); // Ensure function used in various methods is pre-loaded. diff --git a/classes/class-alert-trigger.php b/classes/class-alert-trigger.php index 3373d2986..b5631d50e 100644 --- a/classes/class-alert-trigger.php +++ b/classes/class-alert-trigger.php @@ -14,13 +14,6 @@ */ abstract class Alert_Trigger { - /** - * Holds instance of plugin object - * - * @var Plugin - */ - public $plugin; - /** * Unique identifier * @@ -33,9 +26,7 @@ abstract class Alert_Trigger { * * @param Plugin $plugin Instance of plugin object. */ - public function __construct( $plugin ) { - $this->plugin = $plugin; - + public function __construct( public $plugin ) { add_action( 'wp_stream_alert_trigger_form_display', array( $this, 'add_fields' ), 10, 2 ); add_action( 'wp_stream_alert_trigger_form_save', array( $this, 'save_fields' ), 10, 1 ); add_filter( 'wp_stream_alert_trigger_check', array( $this, 'check_record' ), 10, 4 ); diff --git a/classes/class-alert-type.php b/classes/class-alert-type.php index 190aad75b..86f8d1bec 100644 --- a/classes/class-alert-type.php +++ b/classes/class-alert-type.php @@ -16,13 +16,6 @@ */ abstract class Alert_Type { - /** - * Holds instance of plugin object - * - * @var Plugin - */ - public $plugin; - /** * Unique identifier. * @@ -35,8 +28,7 @@ abstract class Alert_Type { * * @param Plugin $plugin Plugin object. */ - public function __construct( $plugin ) { - $this->plugin = $plugin; + public function __construct( public $plugin ) { } /** diff --git a/classes/class-alert.php b/classes/class-alert.php index 0acc94617..11d7d3131 100644 --- a/classes/class-alert.php +++ b/classes/class-alert.php @@ -56,13 +56,6 @@ class Alert { */ public $alert_meta; - /** - * Holds instance of plugin object - * - * @var Plugin - */ - public $plugin; - /** * Class constructor * @@ -71,9 +64,7 @@ class Alert { * * @return void */ - public function __construct( $item, $plugin ) { - $this->plugin = $plugin; - + public function __construct( $item, public $plugin ) { $this->ID = isset( $item->ID ) ? $item->ID : null; $this->status = isset( $item->status ) ? $item->status : 'wp_stream_disabled'; $this->date = isset( $item->date ) ? $item->date : null; diff --git a/classes/class-alerts-list.php b/classes/class-alerts-list.php index 385373660..e5a60a317 100644 --- a/classes/class-alerts-list.php +++ b/classes/class-alerts-list.php @@ -13,21 +13,12 @@ * @package WP_Stream */ class Alerts_List { - /** - * Holds instance of plugin object - * - * @var Plugin - */ - public $plugin; - /** * Class constructor. * * @param Plugin $plugin Instance of plugin object. */ - public function __construct( $plugin ) { - $this->plugin = $plugin; - + public function __construct( public $plugin ) { add_filter( 'bulk_actions-edit-wp_stream_alerts', array( $this, 'suppress_bulk_actions' ), 10, 1 ); add_filter( 'disable_months_dropdown', array( $this, 'suppress_months_dropdown' ), 10, 2 ); add_filter( 'post_row_actions', array( $this, 'suppress_quick_edit' ), 10, 1 ); diff --git a/classes/class-alerts.php b/classes/class-alerts.php index 5152199f7..0d34ed7d5 100644 --- a/classes/class-alerts.php +++ b/classes/class-alerts.php @@ -39,13 +39,6 @@ class Alerts { */ const CAPABILITY = WP_STREAM_SETTINGS_CAPABILITY; - /** - * Holds Instance of plugin object - * - * @var Plugin - */ - public $plugin; - /** * Post meta prefix */ @@ -70,9 +63,7 @@ class Alerts { * * @param Plugin $plugin Instance of plugin object. */ - public function __construct( $plugin ) { - $this->plugin = $plugin; - + public function __construct( public $plugin ) { // Register custom post type. add_action( 'init', array( $this, 'register_post_type' ) ); diff --git a/classes/class-connectors.php b/classes/class-connectors.php index 3715180a3..598e8f05a 100644 --- a/classes/class-connectors.php +++ b/classes/class-connectors.php @@ -45,13 +45,6 @@ class Connectors { 'wordpress-seo', ); - /** - * Holds instance of plugin object - * - * @var Plugin - */ - public $plugin; - /** * Fully-qualified builtin connector class names after files are included. @@ -98,8 +91,7 @@ class Connectors { * * @param Plugin $plugin Instance of plugin object. */ - public function __construct( $plugin ) { - $this->plugin = $plugin; + public function __construct( public $plugin ) { $this->load_connectors(); } diff --git a/classes/class-db.php b/classes/class-db.php index 9209676b7..8c48a9089 100755 --- a/classes/class-db.php +++ b/classes/class-db.php @@ -11,13 +11,6 @@ * Class - DB */ class DB { - /** - * Holds the driver instance - * - * @var DB_Driver - */ - public $driver; - /** * Number of records in last request * @@ -30,8 +23,7 @@ class DB { * * @param DB_Driver $driver Driver we want to use. */ - public function __construct( $driver ) { - $this->driver = $driver; + public function __construct( public $driver ) { } /** diff --git a/classes/class-export.php b/classes/class-export.php index 435aacb1f..471e55209 100644 --- a/classes/class-export.php +++ b/classes/class-export.php @@ -11,13 +11,6 @@ * Class - Export */ class Export { - /** - * Holds instance of plugin object - * - * @var Plugin - */ - public $plugin; - /** * Hold registered exporters * @@ -30,9 +23,7 @@ class Export { * * @param Plugin $plugin The plugin object. */ - public function __construct( $plugin ) { - $this->plugin = $plugin; - + public function __construct( public $plugin ) { if ( 'wp_stream' === wp_stream_filter_input( INPUT_GET, 'page' ) ) { add_action( 'admin_init', array( $this, 'render_download' ) ); add_action( 'wp_stream_record_actions_menu', array( $this, 'actions_menu_export_items' ) ); diff --git a/classes/class-install.php b/classes/class-install.php index 0a79a63e2..07f0072bc 100644 --- a/classes/class-install.php +++ b/classes/class-install.php @@ -11,13 +11,6 @@ * Class - Install */ class Install { - /** - * Holds Instance of plugin object - * - * @var Plugin - */ - public $plugin; - /** * Option key to store database version */ @@ -61,9 +54,7 @@ class Install { * * @param Plugin $plugin Instance of plugin object. */ - public function __construct( $plugin ) { - $this->plugin = $plugin; - + public function __construct( public $plugin ) { $this->db_version = $this->get_db_version(); $this->stream_url = self_admin_url( $this->plugin->admin->admin_parent_page . '&page=' . $this->plugin->admin->settings_page_slug ); diff --git a/classes/class-list-table.php b/classes/class-list-table.php index 0c2ed5770..858792407 100644 --- a/classes/class-list-table.php +++ b/classes/class-list-table.php @@ -12,22 +12,13 @@ */ class List_Table extends \WP_List_Table { - /** - * Holds Instance of plugin object - * - * @var Plugin - */ - public $plugin; - /** * Class constructor. * * @param Plugin $plugin Instance of plugin object. * @param array $args Argument to filter rows by. */ - public function __construct( $plugin, $args = array() ) { - $this->plugin = $plugin; - + public function __construct( public $plugin, $args = array() ) { $screen_id = isset( $args['screen'] ) ? $args['screen'] : null; /** diff --git a/classes/class-live-update.php b/classes/class-live-update.php index 0a572e5ce..fe5f5866f 100644 --- a/classes/class-live-update.php +++ b/classes/class-live-update.php @@ -11,13 +11,6 @@ * Class - Live_Update */ class Live_Update { - /** - * Holds instance of plugin object - * - * @var Plugin - */ - public $plugin; - /** * User meta key/identifier */ @@ -33,9 +26,7 @@ class Live_Update { * * @param Plugin $plugin Instance of plugin object. */ - public function __construct( $plugin ) { - $this->plugin = $plugin; - + public function __construct( public $plugin ) { // Heartbeat live update. add_filter( 'heartbeat_received', array( $this, 'heartbeat_received' ), 10, 2 ); diff --git a/classes/class-log.php b/classes/class-log.php index 558350435..d10562315 100644 --- a/classes/class-log.php +++ b/classes/class-log.php @@ -12,13 +12,6 @@ */ class Log { - /** - * Holds Instance of plugin object - * - * @var Plugin - */ - public $plugin; - /** * Previous Stream record ID, used for chaining same-session records * @@ -31,9 +24,7 @@ class Log { * * @param Plugin $plugin Instance of plugin object. */ - public function __construct( $plugin ) { - $this->plugin = $plugin; - + public function __construct( public $plugin ) { // Ensure function used in various methods is pre-loaded. if ( ! function_exists( 'is_plugin_active_for_network' ) ) { require_once ABSPATH . '/wp-admin/includes/plugin.php'; diff --git a/classes/class-network.php b/classes/class-network.php index 078c430c5..e3ff9db56 100644 --- a/classes/class-network.php +++ b/classes/class-network.php @@ -12,13 +12,6 @@ * Class - Network */ class Network { - /** - * Holds instance of plugin object - * - * @var Plugin - */ - public $plugin; - /** * Network page slug */ @@ -34,9 +27,7 @@ class Network { * * @param Plugin $plugin Instance of plugin object. */ - public function __construct( $plugin ) { - $this->plugin = $plugin; - + public function __construct( public $plugin ) { // Always add default site_id/blog_id params when multisite. if ( is_multisite() ) { add_filter( 'wp_stream_query_args', array( $this, 'network_query_args' ) ); diff --git a/classes/class-settings.php b/classes/class-settings.php index f1ce50c06..7280de9e4 100644 --- a/classes/class-settings.php +++ b/classes/class-settings.php @@ -16,13 +16,6 @@ */ class Settings { - /** - * Holds instance of plugin object - * - * @var Plugin - */ - public $plugin; - /** * Settings key/identifier * @@ -54,9 +47,7 @@ class Settings { * * @param Plugin $plugin Instance of plugin object. */ - public function __construct( $plugin ) { - $this->plugin = $plugin; - + public function __construct( public $plugin ) { $this->option_key = $this->get_option_key(); $this->options = $this->get_options(); diff --git a/rector.php b/rector.php index c4a82d542..c644b2fdf 100644 --- a/rector.php +++ b/rector.php @@ -12,6 +12,7 @@ declare(strict_types=1); use Rector\Config\RectorConfig; +use Rector\Php80\Rector\Class_\ClassPropertyAssignToConstructorPromotionRector; use Rector\TypeDeclaration\Rector\Property\TypedPropertyFromAssignsRector; use Rector\ValueObject\PhpVersion; @@ -44,4 +45,8 @@ ->withConfiguredRule( TypedPropertyFromAssignsRector::class, array( TypedPropertyFromAssignsRector::INLINE_PUBLIC => true ) + ) + ->withConfiguredRule( + ClassPropertyAssignToConstructorPromotionRector::class, + array( ClassPropertyAssignToConstructorPromotionRector::RENAME_PROPERTY => false ) );