register(); register_activation_hook( __FILE__, static function (): void { $settings_repository = new SettingsRepository(); ( new SettingsMigrator( $settings_repository ) )->migrate(); update_option( SettingsRepository::OPTION_SHOW_ACTIVATION_DISCLAIMER, 1 ); $settings_repository->ensure_privacy_service_token(); $has_any_existing_settings = ( null !== get_option( SettingsRepository::OPTION_ALLOW_REQUESTS, null ) || null !== get_option( SettingsRepository::OPTION_ALLOW_LOG_READS, null ) || null !== get_option( SettingsRepository::OPTION_ALLOW_WRITES, null ) || null !== get_option( SettingsRepository::OPTION_AUTO_APPROVE_SAFE_WRITES, null ) || null !== get_option( SettingsRepository::OPTION_REQUIRE_READ_APPROVAL, null ) ); if ( ! $has_any_existing_settings && null === get_option( SettingsRepository::OPTION_SETUP_COMPLETED, null ) ) { update_option( SettingsRepository::OPTION_ALLOW_REQUESTS, 0 ); update_option( SettingsRepository::OPTION_ALLOW_LOG_READS, 0 ); update_option( SettingsRepository::OPTION_ALLOW_WRITES, 0 ); update_option( SettingsRepository::OPTION_AUTO_APPROVE_SAFE_WRITES, 1 ); update_option( SettingsRepository::OPTION_REQUIRE_READ_APPROVAL, 0 ); update_option( SettingsRepository::OPTION_SETUP_COMPLETED, 0 ); } } ); register_deactivation_hook( __FILE__, static function (): void { actionpanel_ai_plugin()->deactivate(); } );