File: //opt/cloudlinux/venv/lib/python3.11/site-packages/xray/adviser/__pycache__/cli_api.cpython-311.pyc
�
C&�i�� � �j � d Z ddlZddlZddlZddlZddlZddlZddlZddlm Z ddl
mZmZ ddl
mZmZmZmZmZ ddlmZ ddlmZ ddlmZmZmZmZmZmZmZmZmZm Z m!Z! dd l"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z( dd
l)m*Z* ddl+m,Z, ddl-m.Z. dd
l/m0Z1 ddl2m3Z3 ddl4m5Z5 ddl6m7Z7m8Z8 ddl9m:Z:m;Z;m<Z<m=Z= ddl>m?Z?m@Z@ ddlAmBZBmCZC ddlDmEZEmFZFmGZG ddlHmIZImJZJmKZKmLZL ddlMmNZN ddlOmPZP ddlQmRZRmSZS ddlTmUZUmVZV ddlWmXZX ddlYmZZZm[Z[ dZ\dZ]d e^fd!�Z_ G d"� d#e� � Z`e G d$� d%� � � � Za G d&� d'� � ZbdS )(zB
This module contains X Ray Smart Advice local utility main class
� N)�contextmanager)�asdict� dataclass)�Any�Tuple�Optional�List�Dict)�Enum)�LicenseApproveStatus)�is_feature_allowed�is_subscription_pending�get_subscription_upgrade_url�get_license_approve_status�approve_license_agreement�get_license_agreement_text�get_subscriptions_info�get_user_auth_key�2is_smart_advice_notifications_disabled_server_wide�.is_smart_advice_reminders_disabled_server_wide�5is_smart_advice_wordpress_plugin_disabled_server_wide)�docroot�is_panel_feature_supported�get_user_emails_list�panel_awp_link� getCPName�userdomains)�
is_wp_path)�drop_privileges)�Feature)�gettext� )�get_advice_instance)�SmartAdviceProgress� )�
get_client�
api_client)�advice_pending_storage�advice_processed_storage�advice_list_cache�advice_reason_max_len)�get_lve_limits�
get_lve_usage)� XRayError�SmartAdvicePluginError)�user_mode_advice_verification�username_verification�get_xray_exec_user)� timestamp� safe_move�get_user_php_version�filelock)�report_usage_action_or_error)�ClWposGetter)�get_mu_directory�"create_mu_plugins_dir_if_not_exist)�plugin_installed�prepare_system_analytics_data)�report_analytics)�ImunifyManager�ADV_TYPE�;zE/opt/cloudlinux/flags/enabled-flags.d/xray-smart-advice-disabled.flag�returnc �J � t j � t � � S �N)�os�path�exists�SMART_ADVICE_DISABLED_FLAG� � �K/opt/cloudlinux/venv/lib64/python3.11/site-packages/xray/adviser/cli_api.py�_sa_disabledrK P s � �
�7�>�>�4�5�5�5rI c � � e Zd ZdZdZdS )�
AdviceActions�apply�rollbackN)�__name__�
__module__�__qualname__�APPLY�ROLLBACKrH rI rJ rM rM T s � � � � � ��E��H�H�HrI rM c �V � e Zd ZU eed<