From c34b5ff975f9dd183db1fc1d73b5b92ab7511b61 Mon Sep 17 00:00:00 2001 From: Pascal Birchler Date: Thu, 10 Aug 2023 18:16:12 +0200 Subject: [PATCH] Generate stubs for WordPress 6.3.0 --- source/composer.json | 2 +- wordpress-stubs.php | 5278 ++++++++++++++++++++++++++++++------------ 2 files changed, 3745 insertions(+), 1535 deletions(-) diff --git a/source/composer.json b/source/composer.json index 3cf5be1d..ff233c3c 100644 --- a/source/composer.json +++ b/source/composer.json @@ -7,7 +7,7 @@ "ext-mbstring": "*", "ext-openssl": "*", "ext-sodium": "*", - "johnpbloch/wordpress": "6.2.1" + "johnpbloch/wordpress": "6.3.0" }, "minimum-stability": "stable", "config": { diff --git a/wordpress-stubs.php b/wordpress-stubs.php index e1fdcda6..f01cb465 100644 --- a/wordpress-stubs.php +++ b/wordpress-stubs.php @@ -149,7 +149,7 @@ public function feedback($feedback, ...$args) { } /** - * Action to perform before an update. + * Performs an action before an update. * * @since 2.8.0 */ @@ -157,7 +157,7 @@ public function before() { } /** - * Action to perform following an update. + * Performs and action following an update. * * @since 2.8.0 */ @@ -165,7 +165,7 @@ public function after() { } /** - * Output JavaScript that calls function to decrement the update counts. + * Outputs JavaScript that calls function to decrement the update counts. * * @since 3.9.0 * @@ -193,7 +193,7 @@ public function bulk_footer() * @since 5.5.0 * * @param WP_Error $wp_error WP_Error object. - * @return bool + * @return bool True if the error should be hidden, false otherwise. */ public function hide_process_failed($wp_error) { @@ -552,18 +552,29 @@ public function __construct($skin = \null) { } /** - * Initialize the upgrader. + * Initializes the upgrader. * * This will set the relationship between the skin being used and this upgrader, * and also add the generic strings to `WP_Upgrader::$strings`. * + * Additionally, it will schedule a weekly task to clean up the temporary backup directory. + * * @since 2.8.0 + * @since 6.3.0 Added the `schedule_temp_backup_cleanup()` task. */ public function init() { } /** - * Add the generic strings to WP_Upgrader::$strings. + * Schedules the cleanup of the temporary backup directory. + * + * @since 6.3.0 + */ + protected function schedule_temp_backup_cleanup() + { + } + /** + * Adds the generic strings to WP_Upgrader::$strings. * * @since 2.8.0 */ @@ -571,7 +582,7 @@ public function generic_strings() { } /** - * Connect to the filesystem. + * Connects to the filesystem. * * @since 2.8.0 * @@ -588,7 +599,7 @@ public function fs_connect($directories = array(), $allow_relaxed_file_ownership { } /** - * Download a package. + * Downloads a package. * * @since 2.8.0 * @since 5.2.0 Added the `$check_signatures` parameter. @@ -604,7 +615,7 @@ public function download_package($package, $check_signatures = \false, $hook_ext { } /** - * Unpack a compressed package file. + * Unpacks a compressed package file. * * @since 2.8.0 * @@ -619,7 +630,7 @@ public function unpack_package($package, $delete_package = \true) { } /** - * Flatten the results of WP_Filesystem_Base::dirlist() for iterating over. + * Flattens the results of WP_Filesystem_Base::dirlist() for iterating over. * * @since 4.9.0 * @access protected @@ -687,7 +698,7 @@ public function install_package($args = array()) { } /** - * Run an upgrade/installation. + * Runs an upgrade/installation. * * Attempts to download the package (if it is not a local file), unpack it, and * install it in the destination folder. @@ -732,7 +743,7 @@ public function run($options) { } /** - * Toggle maintenance mode for the site. + * Toggles maintenance mode for the site. * * Creates/deletes the maintenance file to enable/disable maintenance mode. * @@ -773,6 +784,55 @@ public static function create_lock($lock_name, $release_timeout = \null) public static function release_lock($lock_name) { } + /** + * Moves the plugin or theme being updated into a temporary backup directory. + * + * @since 6.3.0 + * + * @global WP_Filesystem_Base $wp_filesystem WordPress filesystem subclass. + * + * @param string[] $args { + * Array of data for the temporary backup. + * + * @type string $slug Plugin or theme slug. + * @type string $src Path to the root directory for plugins or themes. + * @type string $dir Destination subdirectory name. Accepts 'plugins' or 'themes'. + * } + * + * @return bool|WP_Error True on success, false on early exit, otherwise WP_Error. + * @phpstan-param array{ + * slug?: string, + * src?: string, + * dir?: string, + * } $args + */ + public function move_to_temp_backup_dir($args) + { + } + /** + * Restores the plugin or theme from temporary backup. + * + * @since 6.3.0 + * + * @global WP_Filesystem_Base $wp_filesystem WordPress filesystem subclass. + * + * @return bool|WP_Error True on success, false on early exit, otherwise WP_Error. + */ + public function restore_temp_backup() + { + } + /** + * Deletes a temporary backup. + * + * @since 6.3.0 + * + * @global WP_Filesystem_Base $wp_filesystem WordPress filesystem subclass. + * + * @return bool|WP_Error True on success, false on early exit, otherwise WP_Error. + */ + public function delete_temp_backup() + { + } } /** * Upgrade API: Core_Upgrader class @@ -795,7 +855,7 @@ public static function release_lock($lock_name) class Core_Upgrader extends \WP_Upgrader { /** - * Initialize the upgrade strings. + * Initializes the upgrade strings. * * @since 2.8.0 */ @@ -803,7 +863,7 @@ public function upgrade_strings() { } /** - * Upgrade WordPress core. + * Upgrades WordPress core. * * @since 2.8.0 * @@ -843,7 +903,7 @@ public static function should_update_to_version($offered_ver) { } /** - * Compare the disk file checksums against the expected checksums. + * Compares the disk file checksums against the expected checksums. * * @since 3.7.0 * @@ -1019,7 +1079,7 @@ public function __construct($admin_header_callback, $admin_image_div_callback = { } /** - * Set up the hooks for the Custom Header admin page. + * Sets up the hooks for the Custom Header admin page. * * @since 2.1.0 */ @@ -1035,7 +1095,7 @@ public function help() { } /** - * Get the current step. + * Gets the current step. * * @since 2.6.0 * @@ -1045,7 +1105,7 @@ public function step() { } /** - * Set up the enqueue for the JavaScript files. + * Sets up the enqueue for the JavaScript files. * * @since 2.1.0 */ @@ -1053,7 +1113,7 @@ public function js_includes() { } /** - * Set up the enqueue for the CSS files + * Sets up the enqueue for the CSS files. * * @since 2.7.0 */ @@ -1061,7 +1121,7 @@ public function css_includes() { } /** - * Execute custom header modification. + * Executes custom header modification. * * @since 2.6.0 */ @@ -1069,7 +1129,7 @@ public function take_action() { } /** - * Process the default headers + * Processes the default headers. * * @since 3.0.0 * @@ -1079,9 +1139,9 @@ public function process_default_headers() { } /** - * Display UI for selecting one of several default headers. + * Displays UI for selecting one of several default headers. * - * Show the random image option if this theme has multiple header images. + * Shows the random image option if this theme has multiple header images. * Random image option is on by default if no header has been set. * * @since 3.0.0 @@ -1093,7 +1153,7 @@ public function show_header_selector($type = 'default') { } /** - * Execute JavaScript depending on step. + * Executes JavaScript depending on step. * * @since 2.1.0 */ @@ -1101,7 +1161,7 @@ public function js() { } /** - * Display JavaScript based on Step 1 and 3. + * Displays JavaScript based on Step 1 and 3. * * @since 2.6.0 */ @@ -1109,7 +1169,7 @@ public function js_1() { } /** - * Display JavaScript based on Step 2. + * Displays JavaScript based on Step 2. * * @since 2.6.0 */ @@ -1117,7 +1177,7 @@ public function js_2() { } /** - * Display first step of custom header image page. + * Displays first step of custom header image page. * * @since 2.1.0 */ @@ -1125,7 +1185,7 @@ public function step_1() { } /** - * Display second step of custom header image page. + * Displays second step of custom header image page. * * @since 2.1.0 */ @@ -1133,7 +1193,7 @@ public function step_2() { } /** - * Upload the file to be cropped in the second step. + * Uploads the file to be cropped in the second step. * * @since 3.4.0 */ @@ -1141,7 +1201,7 @@ public function step_2_manage_upload() { } /** - * Display third step of custom header image page. + * Displays third step of custom header image page. * * @since 2.1.0 * @since 4.4.0 Switched to using wp_get_attachment_url() instead of the guid @@ -1151,7 +1211,7 @@ public function step_3() { } /** - * Display last step of custom header image page. + * Displays last step of custom header image page. * * @since 2.1.0 */ @@ -1159,7 +1219,7 @@ public function finished() { } /** - * Display the page based on the current step. + * Displays the page based on the current step. * * @since 2.1.0 */ @@ -1189,22 +1249,23 @@ public function filter_upload_tabs($tabs) { } /** - * Choose a header image, selected from existing uploaded and default headers, - * or provide an array of uploaded header data (either new, or from media library). + * Chooses a header image, selected from existing uploaded and default headers, + * or provides an array of uploaded header data (either new, or from media library). * * @since 3.4.0 * * @param mixed $choice Which header image to select. Allows for values of 'random-default-image', - * for randomly cycling among the default images; 'random-uploaded-image', for randomly cycling - * among the uploaded images; the key of a default image registered for that theme; and - * the key of an image uploaded for that theme (the attachment ID of the image). - * Or an array of arguments: attachment_id, url, width, height. All are required. + * for randomly cycling among the default images; 'random-uploaded-image', + * for randomly cycling among the uploaded images; the key of a default image + * registered for that theme; and the key of an image uploaded for that theme + * (the attachment ID of the image). Or an array of arguments: attachment_id, + * url, width, height. All are required. */ public final function set_header_image($choice) { } /** - * Remove a header image. + * Removes a header image. * * @since 3.4.0 */ @@ -1212,7 +1273,7 @@ public final function remove_header_image() { } /** - * Reset a header image to the default image for the theme. + * Resets a header image to the default image for the theme. * * This method does not do anything if the theme does not have a default header image. * @@ -1222,7 +1283,7 @@ public final function reset_header_image() { } /** - * Calculate width and height based on what the currently selected theme supports. + * Calculates width and height based on what the currently selected theme supports. * * @since 3.9.0 * @@ -1233,7 +1294,7 @@ public final function get_header_dimensions($dimensions) { } /** - * Create an attachment 'object'. + * Creates an attachment 'object'. * * @since 3.9.0 * @@ -1245,7 +1306,7 @@ public final function create_attachment_object($cropped, $parent_attachment_id) { } /** - * Insert an attachment and its metadata. + * Inserts an attachment and its metadata. * * @since 3.9.0 * @@ -1320,7 +1381,7 @@ public function get_uploaded_header_images() { } /** - * Get the ID of a previous crop from the same base image. + * Gets the ID of a previous crop from the same base image. * * @since 4.9.0 * @@ -1383,7 +1444,7 @@ public function __construct($form, $urlholder) { } /** - * Delete the attachment/uploaded file. + * Deletes the attachment/uploaded file. * * @since 3.2.2 * @@ -1822,7 +1883,7 @@ public static function async_upgrade($upgrader = \false) { } /** - * Initialize the upgrade strings. + * Initializes the upgrade strings. * * @since 3.7.0 */ @@ -1830,7 +1891,7 @@ public function upgrade_strings() { } /** - * Upgrade a language pack. + * Upgrades a language pack. * * @since 3.7.0 * @@ -1846,7 +1907,7 @@ public function upgrade($update = \false, $args = array()) { } /** - * Bulk upgrade language packs. + * Upgrades several language packs at once. * * @since 3.7.0 * @@ -1887,7 +1948,7 @@ public function check_package($source, $remote_source) { } /** - * Get the name of an item being updated. + * Gets the name of an item being updated. * * @since 3.7.0 * @@ -2068,9 +2129,9 @@ function add($p_filelist) // newer_exist : the file was not extracted because a newer file exists // path_creation_fail : the file is not extracted because the folder // does not exist and can not be created - // write_error : the file was not extracted because there was a + // write_error : the file was not extracted because there was an // error while writing the file - // read_error : the file was not extracted because there was a error + // read_error : the file was not extracted because there was an error // while reading the file // invalid_header : the file was not extracted because of an archive // format error (bad file header) @@ -2736,7 +2797,7 @@ public function __construct($args = array()) { } /** - * Action to perform before installing a plugin. + * Performs an action before installing a plugin. * * @since 2.8.0 */ @@ -2749,13 +2810,13 @@ public function before() * @since 5.5.0 * * @param WP_Error $wp_error WP_Error object. - * @return bool + * @return bool True if the error should be hidden, false otherwise. */ public function hide_process_failed($wp_error) { } /** - * Action to perform following a plugin install. + * Performs an action following a plugin install. * * @since 2.8.0 */ @@ -2818,7 +2879,7 @@ public function __construct($args = array()) { } /** - * Action to perform following a single plugin update. + * Performs an action following a single plugin update. * * @since 2.8.0 */ @@ -2872,7 +2933,7 @@ class Plugin_Upgrader extends \WP_Upgrader */ public $new_plugin_data = array(); /** - * Initialize the upgrade strings. + * Initializes the upgrade strings. * * @since 2.8.0 */ @@ -2880,7 +2941,7 @@ public function upgrade_strings() { } /** - * Initialize the installation strings. + * Initializes the installation strings. * * @since 2.8.0 */ @@ -2909,7 +2970,7 @@ public function install($package, $args = array()) { } /** - * Upgrade a plugin. + * Upgrades a plugin. * * @since 2.8.0 * @since 3.7.0 The `$args` parameter was added, making clearing the plugin update cache optional. @@ -2930,7 +2991,7 @@ public function upgrade($plugin, $args = array()) { } /** - * Bulk upgrade several plugins at once. + * Upgrades several plugins at once. * * @since 2.8.0 * @since 3.7.0 The `$args` parameter was added, making clearing the plugin update cache optional. @@ -2966,7 +3027,7 @@ public function check_package($source) { } /** - * Retrieve the path to the file that contains the plugin info. + * Retrieves the path to the file that contains the plugin info. * * This isn't used internally in the class, but is called by the skins. * @@ -3069,7 +3130,7 @@ public function __construct($args = array()) { } /** - * Action to perform before installing a theme. + * Performs an action before installing a theme. * * @since 2.8.0 */ @@ -3082,13 +3143,13 @@ public function before() * @since 5.5.0 * * @param WP_Error $wp_error WP_Error object. - * @return bool + * @return bool True if the error should be hidden, false otherwise. */ public function hide_process_failed($wp_error) { } /** - * Action to perform following a single theme install. + * Performs an action following a single theme install. * * @since 2.8.0 */ @@ -3135,7 +3196,7 @@ public function __construct($args = array()) { } /** - * Action to perform following a single theme update. + * Performs an action following a single theme update. * * @since 2.8.0 */ @@ -3188,7 +3249,7 @@ class Theme_Upgrader extends \WP_Upgrader */ public $new_theme_data = array(); /** - * Initialize the upgrade strings. + * Initializes the upgrade strings. * * @since 2.8.0 */ @@ -3196,7 +3257,7 @@ public function upgrade_strings() { } /** - * Initialize the installation strings. + * Initializes the installation strings. * * @since 2.8.0 */ @@ -3204,7 +3265,7 @@ public function install_strings() { } /** - * Check if a child theme is being installed and we need to install its parent. + * Checks if a child theme is being installed and its parent also needs to be installed. * * Hooked to the {@see 'upgrader_post_install'} filter by Theme_Upgrader::install(). * @@ -3256,7 +3317,7 @@ public function install($package, $args = array()) { } /** - * Upgrade a theme. + * Upgrades a theme. * * @since 2.8.0 * @since 3.7.0 The `$args` parameter was added, making clearing the update cache optional. @@ -3277,7 +3338,7 @@ public function upgrade($theme, $args = array()) { } /** - * Upgrade several themes at once. + * Upgrades several themes at once. * * @since 3.0.0 * @since 3.7.0 The `$args` parameter was added, making clearing the update cache optional. @@ -3314,7 +3375,7 @@ public function check_package($source) { } /** - * Turn on maintenance mode before attempting to upgrade the active theme. + * Turns on maintenance mode before attempting to upgrade the active theme. * * Hooked to the {@see 'upgrader_pre_install'} filter by Theme_Upgrader::upgrade() and * Theme_Upgrader::bulk_upgrade(). @@ -3329,7 +3390,7 @@ public function current_before($response, $theme) { } /** - * Turn off maintenance mode after upgrading the active theme. + * Turns off maintenance mode after upgrading the active theme. * * Hooked to the {@see 'upgrader_post_install'} filter by Theme_Upgrader::upgrade() * and Theme_Upgrader::bulk_upgrade(). @@ -3344,7 +3405,7 @@ public function current_after($response, $theme) { } /** - * Delete the old theme during an upgrade. + * Deletes the old theme during an upgrade. * * Hooked to the {@see 'upgrader_clear_destination'} filter by Theme_Upgrader::upgrade() * and Theme_Upgrader::bulk_upgrade(). @@ -3363,7 +3424,7 @@ public function delete_old_theme($removed, $local_destination, $remote_destinati { } /** - * Get the WP_Theme object for a theme. + * Gets the WP_Theme object for a theme. * * @since 2.8.0 * @since 3.0.0 The `$theme` argument was added. @@ -3798,6 +3859,18 @@ public function start_el(&$output, $data_object, $depth = 0, $args = \null, $cur public function end_el(&$output, $data_object, $depth = 0, $args = \null) { } + /** + * Builds a string of HTML attributes from an array of key/value pairs. + * Empty values are ignored. + * + * @since 6.3.0 + * + * @param array $atts Optional. An array of HTML attribute key/value pairs. Default empty array. + * @return string A string of HTML attributes. + */ + protected function build_atts($atts = array()) + { + } } /** * Navigation Menu API: Walker_Nav_Menu_Checklist class @@ -4147,7 +4220,7 @@ public function __construct($args = array()) { } /** - * Make private properties readable for backward compatibility. + * Makes private properties readable for backward compatibility. * * @since 4.0.0 * @@ -4158,7 +4231,7 @@ public function __get($name) { } /** - * Make private properties settable for backward compatibility. + * Makes private properties settable for backward compatibility. * * @since 4.0.0 * @@ -4170,7 +4243,7 @@ public function __set($name, $value) { } /** - * Make private properties checkable for backward compatibility. + * Makes private properties checkable for backward compatibility. * * @since 4.0.0 * @@ -4181,7 +4254,7 @@ public function __isset($name) { } /** - * Make private properties un-settable for backward compatibility. + * Makes private properties un-settable for backward compatibility. * * @since 4.0.0 * @@ -4191,7 +4264,7 @@ public function __unset($name) { } /** - * Make private/protected methods readable for backward compatibility. + * Makes private/protected methods readable for backward compatibility. * * @since 4.0.0 * @@ -4223,7 +4296,7 @@ public function prepare_items() { } /** - * An internal method that sets all the necessary pagination arguments + * Sets all the necessary pagination arguments. * * @since 3.1.0 * @@ -4247,7 +4320,7 @@ public function get_pagination_arg($key) { } /** - * Whether the table has items to display or not + * Determines whether the table has items to display or not * * @since 3.1.0 * @@ -4470,10 +4543,17 @@ public function get_columns() * * The format is: * - `'internal-name' => 'orderby'` + * - `'internal-name' => array( 'orderby', bool, 'abbr', 'orderby-text', 'initially-sorted-column-order' )` - * - `'internal-name' => array( 'orderby', 'asc' )` - The second element sets the initial sorting order. * - `'internal-name' => array( 'orderby', true )` - The second element makes the initial order descending. * + * In the second format, passing true as second parameter will make the initial + * sorting order be descending. Following parameters add a short column name to + * be used as 'abbr' attribute, a translatable string for the current sorting, + * and the initial order for the initial sorted column, 'asc' or 'desc' (default: false). + * * @since 3.1.0 + * @since 6.3.0 Added 'abbr', 'orderby-text' and 'initially-sorted-column-order'. * * @return array */ @@ -4491,6 +4571,8 @@ protected function get_default_primary_column_name() { } /** + * Gets the name of the primary column. + * * Public wrapper for WP_List_Table::get_default_primary_column_name(). * * @since 4.4.0 @@ -4540,6 +4622,18 @@ public function get_column_count() public function print_column_headers($with_id = \true) { } + /** + * Print a table description with information about current sorting and order. + * + * For the table initial view, information about initial orderby and order + * should be provided via get_sortable_columns(). + * + * @since 6.3.0 + * @access public + */ + public function print_table_description() + { + } /** * Displays the table. * @@ -4570,7 +4664,7 @@ protected function display_tablenav($which) { } /** - * Extra controls to be displayed between bulk actions and pagination. + * Displays extra controls between bulk actions and pagination. * * @since 3.1.0 * @@ -4680,7 +4774,7 @@ class WP_Application_Passwords_List_Table extends \WP_List_Table * * @since 5.6.0 * - * @return array + * @return string[] Array of column titles keyed by their column name. */ public function get_columns() { @@ -4821,6 +4915,8 @@ class WP_Automatic_Updater * Determines whether the entire automatic updater is disabled. * * @since 3.7.0 + * + * @return bool True if the automatic updater is disabled, false otherwise. */ public function is_disabled() { @@ -4911,8 +5007,8 @@ public function run() { } /** - * If we tried to perform a core update, check if we should send an email, - * and if we need to avoid processing future updates. + * Checks whether to send an email and avoid processing future updates after + * attempting a core update. * * @since 3.7.0 * @@ -4934,7 +5030,7 @@ protected function send_email($type, $core_update, $result = \null) { } /** - * If we tried to perform plugin or theme updates, check if we should send an email. + * Checks whether an email should be sent after attempting plugin or theme updates. * * @since 5.5.0 * @@ -5072,7 +5168,7 @@ public function current_action() /** * @global int $post_id * - * @return array + * @return string[] Array of column titles keyed by their column name. */ public function get_columns() { @@ -5694,7 +5790,7 @@ public function getchmod($file) { } /** - * Converts *nix-style file permissions to a octal number. + * Converts *nix-style file permissions to an octal number. * * Converts '-rw-r--r--' to 0644 * From "info at rvgate dot nl"'s comment on the PHP documentation for chmod() @@ -6070,30 +6166,44 @@ public function rmdir($path, $recursive = \false) * @param bool $recursive Optional. Whether to recursively include file details in nested directories. * Default false. * @return array|false { - * Array of files. False if unable to list directory contents. - * - * @type string $name Name of the file or directory. - * @type string $perms *nix representation of permissions. - * @type string $permsn Octal representation of permissions. - * @type string $owner Owner name or ID. - * @type int $size Size of file in bytes. - * @type int $lastmodunix Last modified unix timestamp. - * @type mixed $lastmod Last modified month (3 letter) and day (without leading 0). - * @type int $time Last modified time. - * @type string $type Type of resource. 'f' for file, 'd' for directory. - * @type mixed $files If a directory and `$recursive` is true, contains another array of files. + * Array of arrays containing file information. False if unable to list directory contents. + * + * @type array $0... { + * Array of file information. Note that some elements may not be available on all filesystems. + * + * @type string $name Name of the file or directory. + * @type string $perms *nix representation of permissions. + * @type string $permsn Octal representation of permissions. + * @type int|string|false $number File number. May be a numeric string. False if not available. + * @type string|false $owner Owner name or ID, or false if not available. + * @type string|false $group File permissions group, or false if not available. + * @type int|string|false $size Size of file in bytes. May be a numeric string. + * False if not available. + * @type int|string|false $lastmodunix Last modified unix timestamp. May be a numeric string. + * False if not available. + * @type string|false $lastmod Last modified month (3 letters) and day (without leading 0), or + * false if not available. + * @type string|false $time Last modified time, or false if not available. + * @type string $type Type of resource. 'f' for file, 'd' for directory, 'l' for link. + * @type array|false $files If a directory and `$recursive` is true, contains another array of + * files. False if unable to list directory contents. + * } * } * @phpstan-return false|array{ - * name: string, - * perms: string, - * permsn: string, - * owner: string, - * size: int, - * lastmodunix: int, - * lastmod: mixed, - * time: int, - * type: string, - * files: mixed, + * 0...: array{ + * name: string, + * perms: string, + * permsn: string, + * number: int|string|false, + * owner: string|false, + * group: string|false, + * size: int|string|false, + * lastmodunix: int|string|false, + * lastmod: string|false, + * time: string|false, + * type: string, + * files: array|false, + * }, * } * @phpstan-return false|array */ @@ -6459,30 +6569,44 @@ public function rmdir($path, $recursive = \false) * @param bool $recursive Optional. Whether to recursively include file details in nested directories. * Default false. * @return array|false { - * Array of files. False if unable to list directory contents. - * - * @type string $name Name of the file or directory. - * @type string $perms *nix representation of permissions. - * @type string $permsn Octal representation of permissions. - * @type string $owner Owner name or ID. - * @type int $size Size of file in bytes. - * @type int $lastmodunix Last modified unix timestamp. - * @type mixed $lastmod Last modified month (3 letter) and day (without leading 0). - * @type int $time Last modified time. - * @type string $type Type of resource. 'f' for file, 'd' for directory. - * @type mixed $files If a directory and `$recursive` is true, contains another array of files. + * Array of arrays containing file information. False if unable to list directory contents. + * + * @type array $0... { + * Array of file information. Note that some elements may not be available on all filesystems. + * + * @type string $name Name of the file or directory. + * @type string $perms *nix representation of permissions. + * @type string $permsn Octal representation of permissions. + * @type false $number File number. Always false in this context. + * @type string|false $owner Owner name or ID, or false if not available. + * @type string|false $group File permissions group, or false if not available. + * @type int|string|false $size Size of file in bytes. May be a numeric string. + * False if not available. + * @type int|string|false $lastmodunix Last modified unix timestamp. May be a numeric string. + * False if not available. + * @type string|false $lastmod Last modified month (3 letters) and day (without leading 0), or + * false if not available. + * @type string|false $time Last modified time, or false if not available. + * @type string $type Type of resource. 'f' for file, 'd' for directory, 'l' for link. + * @type array|false $files If a directory and `$recursive` is true, contains another array of + * files. False if unable to list directory contents. + * } * } * @phpstan-return false|array{ - * name: string, - * perms: string, - * permsn: string, - * owner: string, - * size: int, - * lastmodunix: int, - * lastmod: mixed, - * time: int, - * type: string, - * files: mixed, + * 0...: array{ + * name: string, + * perms: string, + * permsn: string, + * number: false, + * owner: string|false, + * group: string|false, + * size: int|string|false, + * lastmodunix: int|string|false, + * lastmod: string|false, + * time: string|false, + * type: string, + * files: array|false, + * }, * } * @phpstan-return false|array */ @@ -6692,6 +6816,7 @@ public function delete($file, $recursive = \false, $type = \false) * Checks if a file or directory exists. * * @since 2.5.0 + * @since 6.3.0 Returns false for an empty path. * * @param string $path Path to file or directory. * @return bool Whether $path exists or not. @@ -6825,7 +6950,38 @@ public function rmdir($path, $recursive = \false) } /** * @param string $line - * @return array + * @return array { + * Array of file information. + * + * @type string $name Name of the file or directory. + * @type string $perms *nix representation of permissions. + * @type string $permsn Octal representation of permissions. + * @type string|false $number File number as a string, or false if not available. + * @type string|false $owner Owner name or ID, or false if not available. + * @type string|false $group File permissions group, or false if not available. + * @type string|false $size Size of file in bytes as a string, or false if not available. + * @type string|false $lastmodunix Last modified unix timestamp as a string, or false if not available. + * @type string|false $lastmod Last modified month (3 letters) and day (without leading 0), or + * false if not available. + * @type string|false $time Last modified time, or false if not available. + * @type string $type Type of resource. 'f' for file, 'd' for directory, 'l' for link. + * @type array|false $files If a directory and `$recursive` is true, contains another array of files. + * False if unable to list directory contents. + * } + * @phpstan-return array{ + * name: string, + * perms: string, + * permsn: string, + * number: string|false, + * owner: string|false, + * group: string|false, + * size: string|false, + * lastmodunix: string|false, + * lastmod: string|false, + * time: string|false, + * type: string, + * files: array|false, + * } */ public function parselisting($line) { @@ -6841,30 +6997,44 @@ public function parselisting($line) * @param bool $recursive Optional. Whether to recursively include file details in nested directories. * Default false. * @return array|false { - * Array of files. False if unable to list directory contents. - * - * @type string $name Name of the file or directory. - * @type string $perms *nix representation of permissions. - * @type string $permsn Octal representation of permissions. - * @type string $owner Owner name or ID. - * @type int $size Size of file in bytes. - * @type int $lastmodunix Last modified unix timestamp. - * @type mixed $lastmod Last modified month (3 letter) and day (without leading 0). - * @type int $time Last modified time. - * @type string $type Type of resource. 'f' for file, 'd' for directory. - * @type mixed $files If a directory and `$recursive` is true, contains another array of files. + * Array of arrays containing file information. False if unable to list directory contents. + * + * @type array $0... { + * Array of file information. Note that some elements may not be available on all filesystems. + * + * @type string $name Name of the file or directory. + * @type string $perms *nix representation of permissions. + * @type string $permsn Octal representation of permissions. + * @type int|string|false $number File number. May be a numeric string. False if not available. + * @type string|false $owner Owner name or ID, or false if not available. + * @type string|false $group File permissions group, or false if not available. + * @type int|string|false $size Size of file in bytes. May be a numeric string. + * False if not available. + * @type int|string|false $lastmodunix Last modified unix timestamp. May be a numeric string. + * False if not available. + * @type string|false $lastmod Last modified month (3 letters) and day (without leading 0), or + * false if not available. + * @type string|false $time Last modified time, or false if not available. + * @type string $type Type of resource. 'f' for file, 'd' for directory, 'l' for link. + * @type array|false $files If a directory and `$recursive` is true, contains another array of + * files. False if unable to list directory contents. + * } * } * @phpstan-return false|array{ - * name: string, - * perms: string, - * permsn: string, - * owner: string, - * size: int, - * lastmodunix: int, - * lastmod: mixed, - * time: int, - * type: string, - * files: mixed, + * 0...: array{ + * name: string, + * perms: string, + * permsn: string, + * number: int|string|false, + * owner: string|false, + * group: string|false, + * size: int|string|false, + * lastmodunix: int|string|false, + * lastmod: string|false, + * time: string|false, + * type: string, + * files: array|false, + * }, * } * @phpstan-return false|array */ @@ -7082,6 +7252,7 @@ public function delete($file, $recursive = \false, $type = \false) * Checks if a file or directory exists. * * @since 2.5.0 + * @since 6.3.0 Returns false for an empty path. * * @param string $path Path to file or directory. * @return bool Whether $path exists or not. @@ -7224,30 +7395,44 @@ public function rmdir($path, $recursive = \false) * @param bool $recursive Optional. Whether to recursively include file details in nested directories. * Default false. * @return array|false { - * Array of files. False if unable to list directory contents. - * - * @type string $name Name of the file or directory. - * @type string $perms *nix representation of permissions. - * @type string $permsn Octal representation of permissions. - * @type string $owner Owner name or ID. - * @type int $size Size of file in bytes. - * @type int $lastmodunix Last modified unix timestamp. - * @type mixed $lastmod Last modified month (3 letter) and day (without leading 0). - * @type int $time Last modified time. - * @type string $type Type of resource. 'f' for file, 'd' for directory. - * @type mixed $files If a directory and `$recursive` is true, contains another array of files. + * Array of arrays containing file information. False if unable to list directory contents. + * + * @type array $0... { + * Array of file information. Note that some elements may not be available on all filesystems. + * + * @type string $name Name of the file or directory. + * @type string $perms *nix representation of permissions. + * @type string $permsn Octal representation of permissions. + * @type int|string|false $number File number. May be a numeric string. False if not available. + * @type string|false $owner Owner name or ID, or false if not available. + * @type string|false $group File permissions group, or false if not available. + * @type int|string|false $size Size of file in bytes. May be a numeric string. + * False if not available. + * @type int|string|false $lastmodunix Last modified unix timestamp. May be a numeric string. + * False if not available. + * @type string|false $lastmod Last modified month (3 letters) and day (without leading 0), or + * false if not available. + * @type string|false $time Last modified time, or false if not available. + * @type string $type Type of resource. 'f' for file, 'd' for directory, 'l' for link. + * @type array|false $files If a directory and `$recursive` is true, contains another array of + * files. False if unable to list directory contents. + * } * } * @phpstan-return false|array{ - * name: string, - * perms: string, - * permsn: string, - * owner: string, - * size: int, - * lastmodunix: int, - * lastmod: mixed, - * time: int, - * type: string, - * files: mixed, + * 0...: array{ + * name: string, + * perms: string, + * permsn: string, + * number: int|string|false, + * owner: string|false, + * group: string|false, + * size: int|string|false, + * lastmodunix: int|string|false, + * lastmod: string|false, + * time: string|false, + * type: string, + * files: array|false, + * }, * } * @phpstan-return false|array */ @@ -7692,30 +7877,44 @@ public function rmdir($path, $recursive = \false) * @param bool $recursive Optional. Whether to recursively include file details in nested directories. * Default false. * @return array|false { - * Array of files. False if unable to list directory contents. - * - * @type string $name Name of the file or directory. - * @type string $perms *nix representation of permissions. - * @type string $permsn Octal representation of permissions. - * @type string $owner Owner name or ID. - * @type int $size Size of file in bytes. - * @type int $lastmodunix Last modified unix timestamp. - * @type mixed $lastmod Last modified month (3 letter) and day (without leading 0). - * @type int $time Last modified time. - * @type string $type Type of resource. 'f' for file, 'd' for directory. - * @type mixed $files If a directory and `$recursive` is true, contains another array of files. + * Array of arrays containing file information. False if unable to list directory contents. + * + * @type array $0... { + * Array of file information. Note that some elements may not be available on all filesystems. + * + * @type string $name Name of the file or directory. + * @type string $perms *nix representation of permissions. + * @type string $permsn Octal representation of permissions. + * @type false $number File number. Always false in this context. + * @type string|false $owner Owner name or ID, or false if not available. + * @type string|false $group File permissions group, or false if not available. + * @type int|string|false $size Size of file in bytes. May be a numeric string. + * False if not available. + * @type int|string|false $lastmodunix Last modified unix timestamp. May be a numeric string. + * False if not available. + * @type string|false $lastmod Last modified month (3 letters) and day (without leading 0), or + * false if not available. + * @type string|false $time Last modified time, or false if not available. + * @type string $type Type of resource. 'f' for file, 'd' for directory, 'l' for link. + * @type array|false $files If a directory and `$recursive` is true, contains another array of + * files. False if unable to list directory contents. + * } * } * @phpstan-return false|array{ - * name: string, - * perms: string, - * permsn: string, - * owner: string, - * size: int, - * lastmodunix: int, - * lastmod: mixed, - * time: int, - * type: string, - * files: mixed, + * 0...: array{ + * name: string, + * perms: string, + * permsn: string, + * number: false, + * owner: string|false, + * group: string|false, + * size: int|string|false, + * lastmodunix: int|string|false, + * lastmod: string|false, + * time: string|false, + * type: string, + * files: array|false, + * }, * } * @phpstan-return false|array */ @@ -7795,7 +7994,7 @@ public function cmpr_strlen($a, $b) { } /** - * GET URL + * Gets URL. * * @param string $url * @param string $username @@ -7988,7 +8187,7 @@ protected function extra_tablenav($which) { } /** - * @return array + * @return string[] Array of column titles keyed by their column name. */ public function get_columns() { @@ -8000,7 +8199,7 @@ protected function get_sortable_columns() { } /** - * Get the name of the default primary column. + * Gets the name of the default primary column. * * @since 4.3.0 * @@ -8250,7 +8449,7 @@ public function no_items() { } /** - * Override parent views so we can use the filter bar display. + * Overrides parent views to use the filter bar display. * * @global string $mode List table view mode. */ @@ -8258,7 +8457,7 @@ public function views() { } /** - * @return array + * @return string[] Array of column titles keyed by their column name. */ public function get_columns() { @@ -8469,7 +8668,7 @@ protected function pagination($which) { } /** - * Extra controls to be displayed between bulk actions and pagination. + * Displays extra controls between bulk actions and pagination. * * @since 5.3.0 * @@ -8479,7 +8678,7 @@ protected function extra_tablenav($which) { } /** - * @return array + * @return string[] Array of column titles keyed by their column name. */ public function get_columns() { @@ -8586,7 +8785,7 @@ public function display_rows() { } /** - * Maybe output comma-separated site states. + * Determines whether to output comma-separated site states. * * @since 5.3.0 * @@ -8709,7 +8908,7 @@ public function no_items() { } /** - * @return array + * @return string[] Array of column titles keyed by their column name. */ public function get_columns() { @@ -8891,7 +9090,7 @@ protected function pagination($which) { } /** - * @return array + * @return string[] Array of column titles keyed by their column name. */ public function get_columns() { @@ -9053,7 +9252,7 @@ public function ajax_user_can() { } /** - * Return the list of known plugins. + * Returns the list of known plugins. * * Uses the transient data from the updates API to determine the known * installed plugins. @@ -9135,7 +9334,7 @@ protected function get_table_classes() { } /** - * @return array + * @return string[] Array of column titles keyed by their column name. */ public function get_columns() { @@ -9245,7 +9444,8 @@ public function search_box($text, $input_id) } /** * @global string $status - * @return array + * + * @return string[] Array of column titles keyed by their column name. */ public function get_columns() { @@ -9450,7 +9650,7 @@ public function no_items() { } /** - * Determine if the current view is the "All" view. + * Determines if the current view is the "All" view. * * @since 4.2.0 * @@ -9460,7 +9660,7 @@ protected function is_base_request() { } /** - * Helper to create links to edit.php with params. + * Creates a link to edit.php with params. * * @since 4.4.0 * @@ -9530,7 +9730,7 @@ protected function get_table_classes() { } /** - * @return array + * @return string[] Array of column titles keyed by their column name. */ public function get_columns() { @@ -9702,7 +9902,7 @@ abstract class WP_Privacy_Requests_Table extends \WP_List_Table */ protected $post_type = 'INVALID'; /** - * Get columns to show in the list table. + * Gets columns to show in the list table. * * @since 4.9.6 * @@ -9712,7 +9912,7 @@ public function get_columns() { } /** - * Normalize the admin URL to the current page (by request_type). + * Normalizes the admin URL to the current page (by request_type). * * @since 5.3.0 * @@ -9722,7 +9922,7 @@ protected function get_admin_url() { } /** - * Get a list of sortable columns. + * Gets a list of sortable columns. * * @since 4.9.6 * @@ -9732,7 +9932,7 @@ protected function get_sortable_columns() { } /** - * Default primary column. + * Returns the default primary column. * * @since 4.9.6 * @@ -9742,7 +9942,7 @@ protected function get_default_primary_column_name() { } /** - * Count number of requests for each status. + * Counts the number of requests for each status. * * @since 4.9.6 * @@ -9754,7 +9954,7 @@ protected function get_request_counts() { } /** - * Get an associative array ( id => link ) with the list of views available on this table. + * Gets an associative array ( id => link ) with the list of views available on this table. * * @since 4.9.6 * @@ -9764,7 +9964,7 @@ protected function get_views() { } /** - * Get bulk actions. + * Gets bulk actions. * * @since 4.9.6 * @@ -9783,7 +9983,7 @@ public function process_bulk_action() { } /** - * Prepare items to output. + * Prepares items to output. * * @since 4.9.6 * @since 5.1.0 Added support for column sorting. @@ -9792,7 +9992,7 @@ public function prepare_items() { } /** - * Checkbox column. + * Returns the markup for the Checkbox column. * * @since 4.9.6 * @@ -9814,7 +10014,7 @@ public function column_status($item) { } /** - * Convert timestamp for display. + * Converts a timestamp for display. * * @since 4.9.6 * @@ -9825,7 +10025,7 @@ protected function get_timestamp_as_date($timestamp) { } /** - * Default column handler. + * Handles the default column. * * @since 4.9.6 * @since 5.7.0 Added `manage_{$this->screen->id}_custom_column` action. @@ -9837,7 +10037,7 @@ public function column_default($item, $column_name) { } /** - * Created timestamp column. Overridden by children. + * Returns the markup for the Created timestamp column. Overridden by children. * * @since 5.7.0 * @@ -9859,7 +10059,7 @@ public function column_email($item) { } /** - * Next steps column. Overridden by children. + * Returns the markup for the next steps column. Overridden by children. * * @since 4.9.6 * @@ -9879,7 +10079,7 @@ public function single_row($item) { } /** - * Embed scripts used to perform actions. Overridden by children. + * Embeds scripts used to perform actions. Overridden by children. * * @since 4.9.6 */ @@ -9956,7 +10156,7 @@ class WP_Privacy_Data_Removal_Requests_List_Table extends \WP_Privacy_Requests_T */ protected $post_type = 'user_request'; /** - * Actions column. + * Outputs the Actions column. * * @since 4.9.6 * @@ -9967,7 +10167,7 @@ public function column_email($item) { } /** - * Next steps column. + * Outputs the Next steps column. * * @since 4.9.6 * @@ -9988,7 +10188,7 @@ public function column_next_steps($item) final class WP_Privacy_Policy_Content { /** - * Add content to the postbox shown when editing the privacy policy. + * Adds content to the postbox shown when editing the privacy policy. * * Plugins and themes should suggest text for inclusion in the site's privacy policy. * The suggested text should contain information about any functionality that affects user privacy, @@ -10005,7 +10205,7 @@ public static function add($plugin_name, $policy_text) { } /** - * Quick check if any privacy info has changed. + * Performs a quick check to determine whether any privacy info has changed. * * @since 4.9.6 */ @@ -10013,7 +10213,7 @@ public static function text_change_check() { } /** - * Output a warning when some privacy info has changed. + * Outputs a warning when some privacy info has changed. * * @since 4.9.6 * @@ -10023,7 +10223,7 @@ public static function policy_text_changed_notice() { } /** - * Update the cached policy info when the policy page is updated. + * Updates the cached policy info when the policy page is updated. * * @since 4.9.6 * @access private @@ -10034,7 +10234,7 @@ public static function _policy_page_updated($post_id) { } /** - * Check for updated, added or removed privacy policy information from plugins. + * Checks for updated, added or removed privacy policy information from plugins. * * Caches the current info in post_meta of the policy page. * @@ -10046,7 +10246,7 @@ public static function get_suggested_policy_text() { } /** - * Add a notice with a link to the guide when editing the privacy policy page. + * Adds a notice with a link to the guide when editing the privacy policy page. * * @since 4.9.6 * @since 5.0.0 The `$post` parameter was made optional. @@ -10059,7 +10259,7 @@ public static function notice($post = \null) { } /** - * Output the privacy policy guide together with content from the theme and plugins. + * Outputs the privacy policy guide together with content from the theme and plugins. * * @since 4.9.6 */ @@ -10067,7 +10267,7 @@ public static function privacy_policy_guide() { } /** - * Return the default suggested privacy policy content. + * Returns the default suggested privacy policy content. * * @since 4.9.6 * @since 5.0.0 Added the `$blocks` parameter. @@ -10080,7 +10280,7 @@ public static function get_default_content($description = \false, $blocks = \tru { } /** - * Add the suggested privacy policy text to the policy postbox. + * Adds the suggested privacy policy text to the policy postbox. * * @since 4.9.6 */ @@ -10157,7 +10357,7 @@ final class WP_Screen * have a `$parent_base` of 'edit'. * * @since 3.3.0 - * @var string + * @var string|null */ public $parent_base; /** @@ -10166,7 +10366,7 @@ final class WP_Screen * Some `$parent_file` values are 'edit.php?post_type=page', 'edit.php', and 'options-general.php'. * * @since 3.3.0 - * @var string + * @var string|null */ public $parent_file; /** @@ -10977,6 +11177,28 @@ public function get_test_background_updates() public function get_test_plugin_theme_auto_updates() { } + /** + * Tests available disk space for updates. + * + * @since 6.3.0 + * + * @return array The test results. + */ + public function get_test_available_updates_disk_space() + { + } + /** + * Tests if plugin and theme temporary backup directories are writable or can be created. + * + * @since 6.3.0 + * + * @global WP_Filesystem_Base $wp_filesystem WordPress filesystem subclass. + * + * @return array The test results. + */ + public function get_test_update_temp_backup_writable() + { + } /** * Tests if loopbacks work as expected. * @@ -11394,7 +11616,7 @@ public function current_action() { } /** - * @return array + * @return string[] Array of column titles keyed by their column name. */ public function get_columns() { @@ -11569,7 +11791,7 @@ public function display() { } /** - * @return array + * @return string[] Array of column titles keyed by their column name. */ public function get_columns() { @@ -11784,7 +12006,7 @@ public function __construct($args = array()) { } /** - * Check the current user's permissions. + * Checks the current user's permissions. * * @since 3.1.0 * @@ -11794,7 +12016,7 @@ public function ajax_user_can() { } /** - * Prepare the users list for display. + * Prepares the users list for display. * * @since 3.1.0 * @@ -11805,7 +12027,7 @@ public function prepare_items() { } /** - * Output 'no users' message. + * Outputs 'no users' message. * * @since 3.1.0 */ @@ -11813,7 +12035,7 @@ public function no_items() { } /** - * Return an associative array listing all the views that can be used + * Returns an associative array listing all the views that can be used * with this table. * * Provides a list of roles and user count for that role for easy @@ -11829,7 +12051,7 @@ protected function get_views() { } /** - * Retrieve an associative array of bulk actions available on this table. + * Retrieves an associative array of bulk actions available on this table. * * @since 3.1.0 * @@ -11839,7 +12061,7 @@ protected function get_bulk_actions() { } /** - * Output the controls to allow user roles to be changed in bulk. + * Outputs the controls to allow user roles to be changed in bulk. * * @since 3.1.0 * @@ -11850,7 +12072,7 @@ protected function extra_tablenav($which) { } /** - * Capture the bulk action required, and return it. + * Captures the bulk action required, and return it. * * Overridden from the base class implementation to capture * the role change drop-down. @@ -11863,7 +12085,7 @@ public function current_action() { } /** - * Get a list of columns for the list table. + * Gets a list of columns for the list table. * * @since 3.1.0 * @@ -11873,7 +12095,7 @@ public function get_columns() { } /** - * Get a list of sortable columns for the list table. + * Gets a list of sortable columns for the list table. * * @since 3.1.0 * @@ -11883,7 +12105,7 @@ protected function get_sortable_columns() { } /** - * Generate the list table rows. + * Generates the list table rows. * * @since 3.1.0 */ @@ -11891,7 +12113,7 @@ public function display_rows() { } /** - * Generate HTML for a single row on the users.php admin panel. + * Generates HTML for a single row on the users.php admin panel. * * @since 3.1.0 * @since 4.2.0 The `$style` parameter was deprecated. @@ -16283,7 +16505,7 @@ class PHPMailer * * @var string */ - const VERSION = '6.7'; + const VERSION = '6.8.0'; /** * Error severity: message only, continue processing. * @@ -17658,7 +17880,7 @@ class SMTP * * @var string */ - const VERSION = '6.7'; + const VERSION = '6.8.0'; /** * SMTP line break constant. * @@ -17671,6 +17893,12 @@ class SMTP * @var int */ const DEFAULT_PORT = 25; + /** + * The SMTPs port to use if one is not specified. + * + * @var int + */ + const DEFAULT_SECURE_PORT = 465; /** * The maximum line length allowed by RFC 5321 section 4.5.3.1.6, * *excluding* a trailing CRLF break. @@ -17786,7 +18014,7 @@ class SMTP * * @var string[] */ - protected $smtp_transaction_id_patterns = ['exim' => '/[\\d]{3} OK id=(.*)/', 'sendmail' => '/[\\d]{3} 2.0.0 (.*) Message/', 'postfix' => '/[\\d]{3} 2.0.0 Ok: queued as (.*)/', 'Microsoft_ESMTP' => '/[0-9]{3} 2.[\\d].0 (.*)@(?:.*) Queued mail for delivery/', 'Amazon_SES' => '/[\\d]{3} Ok (.*)/', 'SendGrid' => '/[\\d]{3} Ok: queued as (.*)/', 'CampaignMonitor' => '/[\\d]{3} 2.0.0 OK:([a-zA-Z\\d]{48})/', 'Haraka' => '/[\\d]{3} Message Queued \\((.*)\\)/', 'Mailjet' => '/[\\d]{3} OK queued as (.*)/']; + protected $smtp_transaction_id_patterns = ['exim' => '/[\\d]{3} OK id=(.*)/', 'sendmail' => '/[\\d]{3} 2.0.0 (.*) Message/', 'postfix' => '/[\\d]{3} 2.0.0 Ok: queued as (.*)/', 'Microsoft_ESMTP' => '/[0-9]{3} 2.[\\d].0 (.*)@(?:.*) Queued mail for delivery/', 'Amazon_SES' => '/[\\d]{3} Ok (.*)/', 'SendGrid' => '/[\\d]{3} Ok: queued as (.*)/', 'CampaignMonitor' => '/[\\d]{3} 2.0.0 OK:([a-zA-Z\\d]{48})/', 'Haraka' => '/[\\d]{3} Message Queued \\((.*)\\)/', 'ZoneMTA' => '/[\\d]{3} Message queued as (.*)/', 'Mailjet' => '/[\\d]{3} OK queued as (.*)/']; /** * The last transaction ID issued in response to a DATA command, * if one was detected. @@ -18428,7 +18656,7 @@ interface Capability * * Note: this does not automatically mean that the capability will be supported for your chosen transport! * - * @var array + * @var string[] */ const ALL = [self::SSL]; } @@ -18454,8 +18682,8 @@ class Cookie /** * Cookie attributes * - * Valid keys are (currently) path, domain, expires, max-age, secure and - * httponly. + * Valid keys are `'path'`, `'domain'`, `'expires'`, `'max-age'`, `'secure'` and + * `'httponly'`. * * @var \WpOrg\Requests\Utility\CaseInsensitiveDictionary|array Array-like object */ @@ -18463,8 +18691,7 @@ class Cookie /** * Cookie flags * - * Valid keys are (currently) creation, last-access, persistent and - * host-only. + * Valid keys are `'creation'`, `'last-access'`, `'persistent'` and `'host-only'`. * * @var array */ @@ -18481,11 +18708,13 @@ class Cookie /** * Create a new cookie object * - * @param string $name - * @param string $value + * @param string $name The name of the cookie. + * @param string $value The value for the cookie. * @param array|\WpOrg\Requests\Utility\CaseInsensitiveDictionary $attributes Associative array of attribute data - * @param array $flags - * @param int|null $reference_time + * @param array $flags The flags for the cookie. + * Valid keys are `'creation'`, `'last-access'`, + * `'persistent'` and `'host-only'`. + * @param int|null $reference_time Reference time for relative calculations. * * @throws \WpOrg\Requests\Exception\InvalidArgument When the passed $name argument is not a string. * @throws \WpOrg\Requests\Exception\InvalidArgument When the passed $value argument is not a string. @@ -18558,7 +18787,7 @@ public function normalize() * Handles parsing individual attributes from the cookie values. * * @param string $name Attribute name - * @param string|boolean $value Attribute value (string value, or true if empty/flag) + * @param string|int|bool $value Attribute value (string/integer value, or true if empty/flag) * @return mixed Value if available, or null if the attribute value is invalid (and should be skipped) */ protected function normalize_attribute($name, $value) @@ -18643,7 +18872,8 @@ public function __construct($cookies = []) /** * Normalise cookie data into a \WpOrg\Requests\Cookie * - * @param string|\WpOrg\Requests\Cookie $cookie + * @param string|\WpOrg\Requests\Cookie $cookie Cookie header value, possibly pre-parsed (object). + * @param string $key Optional. The name for this cookie. * @return \WpOrg\Requests\Cookie */ public function normalize_cookie($cookie, $key = '') @@ -18684,7 +18914,7 @@ public function offsetSet($offset, $value) /** * Unset the given header * - * @param string $offset + * @param string $offset The key for the item to unset. */ #[\ReturnTypeWillChange] public function offsetUnset($offset) @@ -18724,7 +18954,7 @@ public function before_request($url, &$headers, &$data, &$type, &$options) /** * Parse all cookies from a response and attach them to the response * - * @param \WpOrg\Requests\Response $response + * @param \WpOrg\Requests\Response $response Response as received. */ public function before_redirect_check(\WpOrg\Requests\Response $response) { @@ -19350,7 +19580,7 @@ public static function to_ascii($text) * * @internal (Testing found regex was the fastest implementation) * - * @param string $text + * @param string $text Text to examine. * @return bool Is the text string ASCII-only? */ protected static function is_ascii($text) @@ -19360,7 +19590,7 @@ protected static function is_ascii($text) * Prepare a text string for use as an IDNA name * * @todo Implement this based on RFC 3491 and the newer 5891 - * @param string $text + * @param string $text Text to prepare. * @return string Prepared string */ protected static function nameprep($text) @@ -19371,7 +19601,7 @@ protected static function nameprep($text) * * Based on \WpOrg\Requests\Iri::replace_invalid_with_pct_encoding() * - * @param string $input + * @param string $input Text to convert. * @return array Unicode code points * * @throws \WpOrg\Requests\Exception Invalid UTF-8 codepoint (`idna.invalidcodepoint`) @@ -19412,7 +19642,7 @@ protected static function digit_to_char($digit) * @param int $delta * @param int $numpoints * @param bool $firsttime - * @return int New bias + * @return int|float New bias * * function adapt(delta,numpoints,firsttime): */ @@ -20120,7 +20350,7 @@ class Requests * * @var string */ - const VERSION = '2.0.5'; + const VERSION = '2.0.6'; /** * Selected transport name * @@ -20401,12 +20631,14 @@ public static function set_certificate_path($path) /** * Set the default values * + * The $options parameter is updated with the results. + * * @param string $url URL to request * @param array $headers Extra headers to send with the request * @param array|null $data Data to send either as a query string for GET/HEAD requests, or in the body for POST requests * @param string $type HTTP request type * @param array $options Options for the request - * @return void $options is updated with the results + * @return void * * @throws \WpOrg\Requests\Exception When the $url is not an http(s) URL. */ @@ -20436,9 +20668,11 @@ protected static function parse_response($headers, $url, $req_headers, $req_data * Internal use only. Converts a raw HTTP response to a \WpOrg\Requests\Response * while still executing a multiple request. * + * `$response` is either set to a \WpOrg\Requests\Response instance, or a \WpOrg\Requests\Exception object + * * @param string $response Full response text including headers and body (will be overwritten with Response instance) * @param array $request Request data as passed into {@see \WpOrg\Requests\Requests::request_multiple()} - * @return void `$response` is either set to a \WpOrg\Requests\Response instance, or a \WpOrg\Requests\Exception object + * @return void */ public static function parse_multiple(&$response, $request) { @@ -20606,16 +20840,16 @@ public function throw_for_status($allow_redirects = true) * * @link https://php.net/json-decode * - * @param ?bool $associative Optional. When `true`, JSON objects will be returned as associative arrays; - * When `false`, JSON objects will be returned as objects. - * When `null`, JSON objects will be returned as associative arrays - * or objects depending on whether `JSON_OBJECT_AS_ARRAY` is set in the flags. - * Defaults to `true` (in contrast to the PHP native default of `null`). - * @param int $depth Optional. Maximum nesting depth of the structure being decoded. - * Defaults to `512`. - * @param int $options Optional. Bitmask of JSON_BIGINT_AS_STRING, JSON_INVALID_UTF8_IGNORE, - * JSON_INVALID_UTF8_SUBSTITUTE, JSON_OBJECT_AS_ARRAY, JSON_THROW_ON_ERROR. - * Defaults to `0` (no options set). + * @param bool|null $associative Optional. When `true`, JSON objects will be returned as associative arrays; + * When `false`, JSON objects will be returned as objects. + * When `null`, JSON objects will be returned as associative arrays + * or objects depending on whether `JSON_OBJECT_AS_ARRAY` is set in the flags. + * Defaults to `true` (in contrast to the PHP native default of `null`). + * @param int $depth Optional. Maximum nesting depth of the structure being decoded. + * Defaults to `512`. + * @param int $options Optional. Bitmask of JSON_BIGINT_AS_STRING, JSON_INVALID_UTF8_IGNORE, + * JSON_INVALID_UTF8_SUBSTITUTE, JSON_OBJECT_AS_ARRAY, JSON_THROW_ON_ERROR. + * Defaults to `0` (no options set). * * @return array * @@ -20683,7 +20917,7 @@ public function offsetSet($offset, $value) /** * Unset the given header * - * @param string $offset + * @param string $offset The key for the item to unset. */ #[\ReturnTypeWillChange] public function offsetUnset($offset) @@ -20725,7 +20959,7 @@ class Headers extends \WpOrg\Requests\Utility\CaseInsensitiveDictionary * Avoid using this where commas may be used unquoted in values, such as * Set-Cookie headers. * - * @param string $offset + * @param string $offset Name of the header to retrieve. * @return string|null Header value */ public function offsetGet($offset) @@ -20745,7 +20979,7 @@ public function offsetSet($offset, $value) /** * Get all values for a given header * - * @param string $offset + * @param string $offset Name of the header to retrieve. * @return array|null Header values * * @throws \WpOrg\Requests\Exception\InvalidArgument When the passed argument is not valid as an array key. @@ -21171,7 +21405,7 @@ public function &get_subrequest_handle($url, $headers, $data, $options) * @param string $response Response data from the body * @param array $options Request options * @return string|false HTTP response data including headers. False if non-blocking. - * @throws \WpOrg\Requests\Exception + * @throws \WpOrg\Requests\Exception If the request resulted in a cURL error. */ public function process_response($response, $options) { @@ -21321,7 +21555,7 @@ final class FilteredIterator extends \ArrayIterator /** * Create a new iterator * - * @param array $data + * @param array $data The array or object to be iterated on. * @param callable $callback Callback to be called on each value * * @throws \WpOrg\Requests\Exception\InvalidArgument When the passed $data argument is not iterable. @@ -21330,15 +21564,26 @@ public function __construct($data, $callback) { } /** - * @inheritdoc + * Prevent unserialization of the object for security reasons. * * @phpcs:disable PHPCompatibility.FunctionNameRestrictions.NewMagicMethods.__unserializeFound + * + * @param array $data Restored array of data originally serialized. + * + * @return void */ #[\ReturnTypeWillChange] public function __unserialize($data) { } // phpcs:enable + /** + * Perform reinitialization tasks. + * + * Prevents a callback from being injected during unserialization of an object. + * + * @return void + */ public function __wakeup() { } @@ -21352,7 +21597,11 @@ public function current() { } /** - * @inheritdoc + * Prevent creating a PHP value from a stored representation of the object for security reasons. + * + * @param string $data The serialized string. + * + * @return void */ #[\ReturnTypeWillChange] public function unserialize($data) @@ -28272,7 +28521,7 @@ public function parse() * Copyright 2004-2010 The Horde Project (http://www.horde.org/) * * See the enclosed file COPYING for license information (LGPL). If you did - * not receive this file, see http://opensource.org/licenses/lgpl-license.php. + * not receive this file, see https://opensource.org/license/lgpl-2-1/. * * @package Text_Diff * @author Geoffrey T. Dairiki @@ -28569,7 +28818,7 @@ function &reverse() * * The algorithm used here is mostly lifted from the perl module * Algorithm::Diff (version 1.06) by Ned Konz, which is available at: - * http://www.perl.com/CPAN/authors/id/N/NE/NEDKONZ/Algorithm-Diff-1.06.zip + * https://cpan.metacpan.org/authors/id/N/NE/NEDKONZ/Algorithm-Diff-1.06.zip * * More ideas are taken from: http://www.ics.uci.edu/~eppstein/161/960229.html * @@ -28584,13 +28833,22 @@ function &reverse() * Copyright 2004-2010 The Horde Project (http://www.horde.org/) * * See the enclosed file COPYING for license information (LGPL). If you did - * not receive this file, see http://opensource.org/licenses/lgpl-license.php. + * not receive this file, see https://opensource.org/license/lgpl-2-1/. * * @author Geoffrey T. Dairiki * @package Text_Diff */ class Text_Diff_Engine_native { + public $xchanged; + public $ychanged; + public $xv; + public $yv; + public $xind; + public $yind; + public $seq; + public $in_seq; + public $lcs; function diff($from_lines, $to_lines) { } @@ -28656,7 +28914,7 @@ function _shiftBoundaries($lines, &$changed, $other_changed) * Copyright 2007-2010 The Horde Project (http://www.horde.org/) * * See the enclosed file COPYING for license information (LGPL). If you did - * not receive this file, see http://opensource.org/licenses/lgpl-license.php. + * not receive this file, see https://opensource.org/license/lgpl-2-1/. * * @author Milian Wolff * @package Text_Diff @@ -28712,7 +28970,7 @@ function _getLines(&$text_lines, &$line_no, $end = \false) * Copyright 2005-2010 The Horde Project (http://www.horde.org/) * * See the enclosed file COPYING for license information (LGPL). If you did - * not receive this file, see http://opensource.org/licenses/lgpl-license.php. + * not receive this file, see https://opensource.org/license/lgpl-2-1/. * * @author Örjan Persson * @package Text_Diff @@ -28766,7 +29024,7 @@ function parseContextDiff(&$diff) * Copyright 2004-2010 The Horde Project (http://www.horde.org/) * * See the enclosed file COPYING for license information (LGPL). If you did - * not receive this file, see http://opensource.org/licenses/lgpl-license.php. + * not receive this file, see https://opensource.org/license/lgpl-2-1/. * * @author Jon Parise * @package Text_Diff @@ -28788,7 +29046,7 @@ function diff($from_lines, $to_lines) * Copyright 2004-2010 The Horde Project (http://www.horde.org/) * * See the enclosed file COPYING for license information (LGPL). If you did - * not receive this file, see http://opensource.org/licenses/lgpl-license.php. + * not receive this file, see https://opensource.org/license/lgpl-2-1/. * * @package Text_Diff */ @@ -29984,14 +30242,14 @@ class WP_Admin_Bar { public $user; /** - * @since 3.3.0 + * Deprecated menu property. * - * @param string $name - * @return string|array|void + * @since 3.1.0 + * @deprecated 3.3.0 Modify admin bar nodes with WP_Admin_Bar::get_node(), + * WP_Admin_Bar::add_node(), and WP_Admin_Bar::remove_node(). + * @var array */ - public function __get($name) - { - } + public $menu = array(); /** * Initializes the admin bar. * @@ -30352,12 +30610,38 @@ public static function is_in_use() * @type string $name The name of the application password. * @type string $app_id A UUID provided by the application to uniquely identify it. * } - * @return array|WP_Error The first key in the array is the new password, the second is its detailed information. - * A WP_Error instance is returned on error. + * @return array|WP_Error { + * Application password details, or a WP_Error instance if an error occurs. + * + * @type string $0 The unhashed generated application password. + * @type array $1 { + * The details about the created password. + * + * @type string $uuid The unique identifier for the application password. + * @type string $app_id A UUID provided by the application to uniquely identify it. + * @type string $name The name of the application password. + * @type string $password A one-way hash of the password. + * @type int $created Unix timestamp of when the password was created. + * @type null $last_used Null. + * @type null $last_ip Null. + * } + * } * @phpstan-param array{ * name?: string, * app_id?: string, * } $args + * @phpstan-return \WP_Error|array{ + * 0: string, + * 1: array{ + * uuid: string, + * app_id: string, + * name: string, + * password: string, + * created: int, + * last_used: null, + * last_ip: null, + * }, + * } */ public static function create_new_application_password($user_id, $args = array()) { @@ -30753,6 +31037,7 @@ class WP_Block_Parser_Block * @var string */ public $blockName; + // phpcs:ignore WordPress.NamingConventions.ValidVariableName /** * Optional set of attributes from block comment delimiters * @@ -30770,6 +31055,7 @@ class WP_Block_Parser_Block * @var WP_Block_Parser_Block[] */ public $innerBlocks; + // phpcs:ignore WordPress.NamingConventions.ValidVariableName /** * Resultant HTML from inside block comment delimiters * after removing inner blocks @@ -30780,6 +31066,7 @@ class WP_Block_Parser_Block * @var string */ public $innerHTML; + // phpcs:ignore WordPress.NamingConventions.ValidVariableName /** * List of string fragments and null markers where inner blocks were found * @@ -30793,6 +31080,7 @@ class WP_Block_Parser_Block * @var array */ public $innerContent; + // phpcs:ignore WordPress.NamingConventions.ValidVariableName /** * Constructor. * @@ -30800,16 +31088,21 @@ class WP_Block_Parser_Block * * @since 5.0.0 * - * @param string $name Name of block. - * @param array $attrs Optional set of attributes from block comment delimiters. - * @param array $innerBlocks List of inner blocks (of this same class). - * @param string $innerHTML Resultant HTML from inside block comment delimiters after removing inner blocks. - * @param array $innerContent List of string fragments and null markers where inner blocks were found. + * @param string $name Name of block. + * @param array $attrs Optional set of attributes from block comment delimiters. + * @param array $inner_blocks List of inner blocks (of this same class). + * @param string $inner_html Resultant HTML from inside block comment delimiters after removing inner blocks. + * @param array $inner_content List of string fragments and null markers where inner blocks were found. */ - public function __construct($name, $attrs, $innerBlocks, $innerHTML, $innerContent) + public function __construct($name, $attrs, $inner_blocks, $inner_html, $inner_content) { } } + /** + * Block Serialization Parser + * + * @package WordPress + */ /** * Class WP_Block_Parser_Frame * @@ -30873,6 +31166,11 @@ public function __construct($block, $token_start, $token_length, $prev_offset = { } } + /** + * Block Serialization Parser + * + * @package WordPress + */ /** * Class WP_Block_Parser * @@ -30972,10 +31270,10 @@ public function next_token() * @internal * @since 3.9.0 * - * @param string $innerHTML HTML content of block. + * @param string $inner_html HTML content of block. * @return WP_Block_Parser_Block freeform block object. */ - public function freeform($innerHTML) + public function freeform($inner_html) { } /** @@ -31130,35 +31428,35 @@ final class WP_Block_Patterns_Registry * @param array $pattern_properties { * List of properties for the block pattern. * - * @type string $title Required. A human-readable title for the pattern. - * @type string $content Required. Block HTML markup for the pattern. - * @type string $description Optional. Visually hidden text used to describe the pattern - * in the inserter. A description is optional, but is strongly - * encouraged when the title does not fully describe what the - * pattern does. The description will help users discover the - * pattern while searching. - * @type int $viewportWidth Optional. The intended width of the pattern to allow for a scaled - * preview within the pattern inserter. - * @type bool $inserter Optional. Determines whether the pattern is visible in inserter. - * To hide a pattern so that it can only be inserted programmatically, - * set this to false. Default true. - * @type array $categories Optional. A list of registered pattern categories used to group - * block patterns. Block patterns can be shown on multiple categories. - * A category must be registered separately in order to be used here. - * @type array $keywords Optional. A list of aliases or keywords that help users discover - * the pattern while searching. - * @type array $blockTypes Optional. A list of block names including namespace that could use - * the block pattern in certain contexts (placeholder, transforms). - * The block pattern is available in the block editor inserter - * regardless of this list of block names. - * Certain blocks support further specificity besides the block name - * (e.g. for `core/template-part` you can specify areas - * like `core/template-part/header` or `core/template-part/footer`). - * @type array $postTypes Optional. An array of post types that the pattern is restricted - * to be used with. The pattern will only be available when editing one - * of the post types passed on the array. For all the other post types - * not part of the array the pattern is not available at all. - * @type array $templateTypes Optional. An array of template types where the pattern fits. + * @type string $title Required. A human-readable title for the pattern. + * @type string $content Required. Block HTML markup for the pattern. + * @type string $description Optional. Visually hidden text used to describe the pattern + * in the inserter. A description is optional, but is strongly + * encouraged when the title does not fully describe what the + * pattern does. The description will help users discover the + * pattern while searching. + * @type int $viewportWidth Optional. The intended width of the pattern to allow for a scaled + * preview within the pattern inserter. + * @type bool $inserter Optional. Determines whether the pattern is visible in inserter. + * To hide a pattern so that it can only be inserted programmatically, + * set this to false. Default true. + * @type string[] $categories Optional. A list of registered pattern categories used to group + * block patterns. Block patterns can be shown on multiple categories. + * A category must be registered separately in order to be used here. + * @type string[] $keywords Optional. A list of aliases or keywords that help users discover + * the pattern while searching. + * @type string[] $blockTypes Optional. A list of block names including namespace that could use + * the block pattern in certain contexts (placeholder, transforms). + * The block pattern is available in the block editor inserter + * regardless of this list of block names. + * Certain blocks support further specificity besides the block name + * (e.g. for `core/template-part` you can specify areas + * like `core/template-part/header` or `core/template-part/footer`). + * @type string[] $postTypes Optional. An array of post types that the pattern is restricted + * to be used with. The pattern will only be available when editing one + * of the post types passed on the array. For all the other post types + * not part of the array the pattern is not available at all. + * @type string[] $templateTypes Optional. An array of template types where the pattern fits. * } * @return bool True if the pattern was registered with success and false otherwise. * @phpstan-param array{ @@ -31167,11 +31465,11 @@ final class WP_Block_Patterns_Registry * description?: string, * viewportWidth?: int, * inserter?: bool, - * categories?: array, - * keywords?: array, - * blockTypes?: array, - * postTypes?: array, - * templateTypes?: array, + * categories?: string[], + * keywords?: string[], + * blockTypes?: string[], + * postTypes?: string[], + * templateTypes?: string[], * } $pattern_properties */ public function register($pattern_name, $pattern_properties) @@ -31420,7 +31718,7 @@ public function register($block_support_name, $block_support_config) * * @since 5.6.0 * - * @return string[] Array of HTML attributes. + * @return string[] Array of HTML attribute values keyed by their name. */ public function apply_block_supports() { @@ -31502,7 +31800,7 @@ class WP_Block_Template * 'custom'. * * @since 5.9.0 - * @var string + * @var string|null */ public $origin; /** @@ -31540,23 +31838,30 @@ class WP_Block_Template * A value of 0 means no author. * * @since 5.9.0 - * @var int + * @var int|null */ public $author; /** * Post types. * * @since 5.9.0 - * @var array + * @var string[]|null */ public $post_types; /** * Area. * * @since 5.9.0 - * @var string + * @var string|null */ public $area; + /** + * Modified. + * + * @since 6.3.0 + * @var string|null + */ + public $modified; } /** * Blocks API: WP_Block_Type_Registry class @@ -31599,6 +31904,7 @@ final class WP_Block_Type_Registry * textdomain?: string|null, * styles?: array[], * variations?: array[], + * selectors?: array, * supports?: array|null, * example?: array|null, * render_callback?: callable|null, @@ -31777,6 +32083,13 @@ class WP_Block_Type * @var array[] */ public $variations = array(); + /** + * Custom CSS selectors for theme.json style generation. + * + * @since 6.3.0 + * @var array + */ + public $selectors = array(); /** * Supported features. * @@ -31877,6 +32190,7 @@ class WP_Block_Type * @since 6.1.0 Added the `editor_script_handles`, `script_handles`, `view_script_handles, * `editor_style_handles`, and `style_handles` properties. * Deprecated the `editor_script`, `script`, `view_script`, `editor_style`, and `style` properties. + * @since 6.3.0 Added the `selectors` property. * * @see register_block_type() * @@ -31900,6 +32214,7 @@ class WP_Block_Type * @type string|null $textdomain The translation textdomain. * @type array[] $styles Alternative block styles. * @type array[] $variations Block variations. + * @type array $selectors Custom CSS selectors for theme.json style generation. * @type array|null $supports Supported features. * @type array|null $example Structured data for the block preview. * @type callable|null $render_callback Block type render callback. @@ -31924,6 +32239,7 @@ class WP_Block_Type * textdomain?: string|null, * styles?: array[], * variations?: array[], + * selectors?: array, * supports?: array|null, * example?: array|null, * render_callback?: callable|null, @@ -32035,6 +32351,7 @@ public function prepare_attributes_for_render($attributes) * textdomain?: string|null, * styles?: array[], * variations?: array[], + * selectors?: array, * supports?: array|null, * example?: array|null, * render_callback?: callable|null, @@ -32210,6 +32527,32 @@ public function render($options = array()) { } } + /** + * WP_Classic_To_Block_Menu_Converter class + * + * @package WordPress + * @since 6.3.0 + */ + /** + * Converts a Classic Menu to Block Menu blocks. + * + * @since 6.3.0 + * @access public + */ + class WP_Classic_To_Block_Menu_Converter + { + /** + * Converts a Classic Menu to blocks. + * + * @since 6.3.0 + * + * @param WP_Term $menu The Menu term object of the menu to convert. + * @return string the serialized and normalized parsed blocks. + */ + public static function convert($menu) + { + } + } /** * Comment API: WP_Comment_Query class * @@ -32617,8 +32960,6 @@ protected function get_comment_ids() * * @since 4.4.0 * - * @global wpdb $wpdb WordPress database abstraction object. - * * @param WP_Comment[] $comments Array of top-level comments whose descendants should be filled in. * @return array */ @@ -32821,7 +33162,7 @@ public function __construct($comment) { } /** - * Convert object to array. + * Converts object to array. * * @since 4.4.0 * @@ -32831,7 +33172,7 @@ public function to_array() { } /** - * Get the children of a comment. + * Gets the children of a comment. * * @since 4.4.0 * @@ -32876,7 +33217,7 @@ public function get_children($args = array()) { } /** - * Add a child to the comment. + * Adds a child to the comment. * * Used by `WP_Comment_Query` when bulk-filling descendants. * @@ -32888,7 +33229,7 @@ public function add_child(\WP_Comment $child) { } /** - * Get a child comment by ID. + * Gets a child comment by ID. * * @since 4.4.0 * @@ -32899,7 +33240,7 @@ public function get_child($child_id) { } /** - * Set the 'populated_children' flag. + * Sets the 'populated_children' flag. * * This flag is important for ensuring that calling `get_children()` on a childless comment will not trigger * unneeded database queries. @@ -32912,7 +33253,7 @@ public function populated_children($set) { } /** - * Check whether a non-public property is set. + * Determines whether a non-public property is set. * * If `$name` matches a post field, the comment post will be loaded and the post's value checked. * @@ -37252,15 +37593,15 @@ protected function get_sql_for_query($query, $depth = 0) * @since 3.7.0 * * @param array $query Date query arguments. - * @return string[] { + * @return array { * Array containing JOIN and WHERE SQL clauses to append to the main query. * - * @type string $join SQL fragment to append to the main JOIN clause. - * @type string $where SQL fragment to append to the main WHERE clause. + * @type string[] $join Array of SQL fragments to append to the main JOIN clause. + * @type string[] $where Array of SQL fragments to append to the main WHERE clause. * } * @phpstan-return array{ - * join: string, - * where: string, + * join: string[], + * where: string[], * } */ protected function get_sql_for_subquery($query) @@ -37275,15 +37616,15 @@ protected function get_sql_for_subquery($query) * * @param array $query Date query clause. * @param array $parent_query Parent query of the current date query. - * @return string[] { + * @return array { * Array containing JOIN and WHERE SQL clauses to append to the main query. * - * @type string $join SQL fragment to append to the main JOIN clause. - * @type string $where SQL fragment to append to the main WHERE clause. + * @type string[] $join Array of SQL fragments to append to the main JOIN clause. + * @type string[] $where Array of SQL fragments to append to the main WHERE clause. * } * @phpstan-return array{ - * join: string, - * where: string, + * join: string[], + * where: string[], * } */ protected function get_sql_for_clause($query, $parent_query) @@ -37736,6 +38077,182 @@ public function set_translations($domain, $path = '') { } } + /** + * WP_Duotone class + * + * Parts of this source were derived and modified from colord, + * released under the MIT license. + * + * https://github.com/omgovich/colord + * + * Copyright (c) 2020 Vlad Shilov omgovich@ya.ru + * + * Permission is hereby granted, free of charge, to any person obtaining + * a copy of this software and associated documentation files (the + * "Software"), to deal in the Software without restriction, including + * without limitation the rights to use, copy, modify, merge, publish, + * distribute, sublicense, and/or sell copies of the Software, and to + * permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE + * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * @package WordPress + * @since 6.3.0 + */ + /** + * Manages duotone block supports and global styles. + * + * @access private + */ + class WP_Duotone + { + /** + * Returns the prefixed id for the duotone filter for use as a CSS id. + * + * Exported for the deprecated function wp_get_duotone_filter_id(). + * + * @internal + * + * @since 6.3.0 + * @deprecated 6.3.0 + * + * @param array $preset Duotone preset value as seen in theme.json. + * @return string Duotone filter CSS id. + */ + public static function get_filter_id_from_preset($preset) + { + } + /** + * Gets the SVG for the duotone filter definition from a preset. + * + * Exported for the deprecated function wp_get_duotone_filter_property(). + * + * @internal + * + * @since 6.3.0 + * @deprecated 6.3.0 + * + * @param array $preset The duotone preset. + * @return string The SVG for the filter definition. + */ + public static function get_filter_svg_from_preset($preset) + { + } + /** + * Registers the style and colors block attributes for block types that support it. + * + * Block support is added with `supports.filter.duotone` in block.json. + * + * @since 6.3.0 + * + * @param WP_Block_Type $block_type Block Type. + */ + public static function register_duotone_support($block_type) + { + } + /** + * Render out the duotone CSS styles and SVG. + * + * The hooks self::set_global_style_block_names and self::set_global_styles_presets + * must be called before this function. + * + * @since 6.3.0 + * + * @param string $block_content Rendered block content. + * @param array $block Block object. + * @param WP_Block $wp_block The block instance. + * @return string Filtered block content. + */ + public static function render_duotone_support($block_content, $block, $wp_block) + { + } + /** + * Appends the used block duotone filter declarations to the inline block supports CSS. + * + * Uses the declarations saved in earlier calls to self::enqueue_block_css. + * + * @since 6.3.0 + */ + public static function output_block_styles() + { + } + /** + * Appends the used global style duotone filter presets (CSS custom + * properties) to the inline global styles CSS. + * + * Uses the declarations saved in earlier calls to self::enqueue_global_styles_preset. + * + * @since 6.3.0 + */ + public static function output_global_styles() + { + } + /** + * Outputs all necessary SVG for duotone filters, CSS for classic themes. + * + * Uses the declarations saved in earlier calls to self::enqueue_global_styles_preset + * and self::enqueue_custom_filter. + * + * @since 6.3.0 + */ + public static function output_footer_assets() + { + } + /** + * Adds the duotone SVGs and CSS custom properties to the editor settings. + * + * This allows the properties to be pulled in by the EditorStyles component + * in JS and rendered in the post editor. + * + * @since 6.3.0 + * + * @param array $settings The block editor settings from the `block_editor_settings_all` filter. + * @return array The editor settings with duotone SVGs and CSS custom properties. + */ + public static function add_editor_settings($settings) + { + } + /** + * Migrates the experimental duotone support flag to the stabilized location. + * + * This moves `supports.color.__experimentalDuotone` to `supports.filter.duotone`. + * + * @since 6.3.0 + * + * @param array $settings Current block type settings. + * @param array $metadata Block metadata as read in via block.json. + * @return array Filtered block type settings. + */ + public static function migrate_experimental_duotone_support_flag($settings, $metadata) + { + } + /** + * Gets the CSS filter property value from a preset. + * + * Exported for the deprecated function wp_get_duotone_filter_id(). + * + * @internal + * + * @since 6.3.0 + * @deprecated 6.3.0 + * + * @param array $preset The duotone preset. + * @return string The CSS filter property value. + */ + public static function get_filter_css_property_value_from_preset($preset) + { + } + } /** * Facilitates adding of the WordPress editor as used on the Write and Edit screens. * @@ -37904,8 +38421,8 @@ public static function wp_mce_translation($mce_locale = '', $json_only = \false) * Force uncompressed TinyMCE when a custom theme has been defined. * * The compressed TinyMCE file cannot deal with custom themes, so this makes - * sure that we use the uncompressed TinyMCE file if a theme is defined. - * Even if we are on a production environment. + * sure that WordPress uses the uncompressed TinyMCE file if a theme is defined. + * Even if the website is running on a production environment. * * @since 5.0.0 */ @@ -40210,7 +40727,7 @@ public static function handle_redirects($url, $args, $response) * Determines if a specified string represents an IP address or not. * * This function also detects the type of the IP address, returning either - * '4' or '6' to represent a IPv4 and IPv6 address respectively. + * '4' or '6' to represent an IPv4 and IPv6 address respectively. * This does not verify if the IP is a valid IP, only that it appears to be * an IP address. * @@ -40219,7 +40736,7 @@ public static function handle_redirects($url, $args, $response) * @since 3.7.0 * * @param string $maybe_ip A suspected IP address. - * @return int|false Upon success, '4' or '6' to represent a IPv4 or IPv6 address, false upon failure + * @return int|false Upon success, '4' or '6' to represent an IPv4 or IPv6 address, false upon failure. */ public static function is_ip_address($maybe_ip) { @@ -40331,9 +40848,9 @@ public abstract function save($destfilename = \null, $mime_type = \null); * @since 3.5.0 * @abstract * - * @param int|null $max_w Image width. - * @param int|null $max_h Image height. - * @param bool $crop + * @param int|null $max_w Image width. + * @param int|null $max_h Image height. + * @param bool|array $crop * @return true|WP_Error */ public abstract function resize($max_w, $max_h, $crop = \false); @@ -40347,16 +40864,16 @@ public abstract function resize($max_w, $max_h, $crop = \false); * An array of image size arrays. Default sizes are 'small', 'medium', 'large'. * * @type array ...$0 { - * @type int $width Image width. - * @type int $height Image height. - * @type bool $crop Optional. Whether to crop the image. Default false. + * @type int $width Image width. + * @type int $height Image height. + * @type bool|array $crop Optional. Whether to crop the image. Default false. * } * } * @return array An array of resized images metadata by size. * @phpstan-param array $sizes */ public abstract function multi_resize($sizes); @@ -40637,9 +41154,9 @@ protected function update_size($width = \false, $height = \false) * * @since 3.5.0 * - * @param int|null $max_w Image width. - * @param int|null $max_h Image height. - * @param bool $crop + * @param int|null $max_w Image width. + * @param int|null $max_h Image height. + * @param bool|array $crop * @return true|WP_Error */ public function resize($max_w, $max_h, $crop = \false) @@ -40677,16 +41194,16 @@ protected function _resize($max_w, $max_h, $crop = \false) * @type array ...$0 { * Array of height, width values, and whether to crop. * - * @type int $width Image width. Optional if `$height` is specified. - * @type int $height Image height. Optional if `$width` is specified. - * @type bool $crop Optional. Whether to crop the image. Default false. + * @type int $width Image width. Optional if `$height` is specified. + * @type int $height Image height. Optional if `$width` is specified. + * @type bool|array $crop Optional. Whether to crop the image. Default false. * } * } * @return array An array of resized images' metadata by size. * @phpstan-param array $sizes */ public function multi_resize($sizes) @@ -40700,16 +41217,16 @@ public function multi_resize($sizes) * @param array $size_data { * Array of size data. * - * @type int $width The maximum width in pixels. - * @type int $height The maximum height in pixels. - * @type bool $crop Whether to crop the image to exact dimensions. + * @type int $width The maximum width in pixels. + * @type int $height The maximum height in pixels. + * @type bool|array $crop Whether to crop the image to exact dimensions. * } * @return array|WP_Error The image data array for inclusion in the `sizes` array in the image meta, * WP_Error object on error. * @phpstan-param array{ * width?: int, * height?: int, - * crop?: bool, + * crop?: bool|array, * } $size_data */ public function make_subsize($size_data) @@ -40937,6 +41454,9 @@ protected function update_size($width = \null, $height = \null) * This function, which is expected to be run before heavy image routines, resolves * point 1 above by aligning Imagick's timeout with PHP's timeout, assuming it is set. * + * However seems it introduces more problems than it fixes, + * see https://core.trac.wordpress.org/ticket/58202. + * * Note: * - Imagick resource exhaustion does not issue catchable exceptions (yet). * See https://github.com/Imagick/imagick/issues/333. @@ -40944,6 +41464,7 @@ protected function update_size($width = \null, $height = \null) * image operations within the time of the HTTP request. * * @since 6.2.0 + * @since 6.3.0 This method was deprecated. * * @return int|null The new limit on success, null on failure. */ @@ -40959,9 +41480,9 @@ public static function set_imagick_time_limit() * * @since 3.5.0 * - * @param int|null $max_w Image width. - * @param int|null $max_h Image height. - * @param bool $crop + * @param int|null $max_w Image width. + * @param int|null $max_h Image height. + * @param bool|array $crop * @return true|WP_Error */ public function resize($max_w, $max_h, $crop = \false) @@ -41007,16 +41528,16 @@ protected function thumbnail_image($dst_w, $dst_h, $filter_name = 'FILTER_TRIANG * @type array ...$0 { * Array of height, width values, and whether to crop. * - * @type int $width Image width. Optional if `$height` is specified. - * @type int $height Image height. Optional if `$width` is specified. - * @type bool $crop Optional. Whether to crop the image. Default false. + * @type int $width Image width. Optional if `$height` is specified. + * @type int $height Image height. Optional if `$width` is specified. + * @type bool|array $crop Optional. Whether to crop the image. Default false. * } * } * @return array An array of resized images' metadata by size. * @phpstan-param array $sizes */ public function multi_resize($sizes) @@ -41030,16 +41551,16 @@ public function multi_resize($sizes) * @param array $size_data { * Array of size data. * - * @type int $width The maximum width in pixels. - * @type int $height The maximum height in pixels. - * @type bool $crop Whether to crop the image to exact dimensions. + * @type int $width The maximum width in pixels. + * @type int $height The maximum height in pixels. + * @type bool|array $crop Whether to crop the image to exact dimensions. * } * @return array|WP_Error The image data array for inclusion in the `sizes` array in the image meta, * WP_Error object on error. * @phpstan-param array{ * width?: int, * height?: int, - * crop?: bool, + * crop?: bool|array, * } $size_data */ public function make_subsize($size_data) @@ -42071,15 +42592,15 @@ protected function get_sql_for_query(&$query, $depth = 0) * @param string $clause_key Optional. The array key used to name the clause in the original `$meta_query` * parameters. If not provided, a key will be generated automatically. * Default empty string. - * @return string[] { + * @return array { * Array containing JOIN and WHERE SQL clauses to append to a first-order query. * - * @type string $join SQL fragment to append to the main JOIN clause. - * @type string $where SQL fragment to append to the main WHERE clause. + * @type string[] $join Array of SQL fragments to append to the main JOIN clause. + * @type string[] $where Array of SQL fragments to append to the main WHERE clause. * } * @phpstan-return array{ - * join: string, - * where: string, + * join: string[], + * where: string[], * } */ public function get_sql_for_clause(&$clause, $parent_query, $clause_key = '') @@ -42219,6 +42740,7 @@ public function reset_queue($object_type) * is no need to invoke it directly. * * @since 4.5.0 + * @deprecated 6.3.0 Use WP_Metadata_Lazyloader::lazyload_meta_callback() instead. * * @param mixed $check The `$check` param passed from the 'get_term_metadata' hook. * @return mixed In order not to short-circuit `get_metadata()`. Generally, this is `null`, but it could be @@ -42234,6 +42756,7 @@ public function lazyload_term_meta($check) * directly, from either inside or outside the `WP_Query` object. * * @since 4.5.0 + * @deprecated 6.3.0 Use WP_Metadata_Lazyloader::lazyload_meta_callback() instead. * * @param mixed $check The `$check` param passed from the {@see 'get_comment_metadata'} hook. * @return mixed The original value of `$check`, so as not to short-circuit `get_comment_metadata()`. @@ -42241,6 +42764,54 @@ public function lazyload_term_meta($check) public function lazyload_comment_meta($check) { } + /** + * Lazy-loads meta for queued objects. + * + * This method is public so that it can be used as a filter callback. As a rule, there + * is no need to invoke it directly. + * + * @since 6.3.0 + * + * @param mixed $check The `$check` param passed from the 'get_*_metadata' hook. + * @param int $object_id ID of the object metadata is for. + * @param string $meta_key Unused. + * @param bool $single Unused. + * @param string $meta_type Type of object metadata is for. Accepts 'post', 'comment', 'term', 'user', + * or any other object type with an associated meta table. + * @return mixed In order not to short-circuit `get_metadata()`. Generally, this is `null`, but it could be + * another value if filtered by a plugin. + */ + public function lazyload_meta_callback($check, $object_id, $meta_key, $single, $meta_type) + { + } + } + /** + * WP_Navigation_Fallback class + * + * Manages fallback behavior for Navigation menus. + * + * @package WordPress + * @subpackage Navigation + * @since 6.3.0 + */ + /** + * Manages fallback behavior for Navigation menus. + * + * @access public + * @since 6.3.0 + */ + class WP_Navigation_Fallback + { + /** + * Gets (and/or creates) an appropriate fallback Navigation Menu. + * + * @since 6.3.0 + * + * @return WP_Post|null the fallback Navigation Post or null. + */ + public static function get_fallback() + { + } } /** * Network API: WP_Network_Query class @@ -43211,7 +43782,7 @@ public function discover($url) { } /** - * Connects to a oEmbed provider and returns the result. + * Connects to an oEmbed provider and returns the result. * * @since 2.9.0 * @@ -43752,7 +44323,48 @@ final class WP_Post_Type * * @param string $post_type Post type key. * @param array|string $args Optional. Array or string of arguments for registering a post type. + * See register_post_type() for information on accepted arguments. * Default empty array. + * @phpstan-param array{ + * label?: string, + * labels?: string[], + * description?: string, + * public?: bool, + * hierarchical?: bool, + * exclude_from_search?: bool, + * publicly_queryable?: bool, + * show_ui?: bool, + * show_in_menu?: bool|string, + * show_in_nav_menus?: bool, + * show_in_admin_bar?: bool, + * show_in_rest?: bool, + * rest_base?: string, + * rest_namespace?: string, + * rest_controller_class?: string, + * menu_position?: int, + * menu_icon?: string, + * capability_type?: string|array, + * capabilities?: string[], + * map_meta_cap?: bool, + * supports?: array, + * register_meta_box_cb?: callable, + * taxonomies?: string[], + * has_archive?: bool|string, + * rewrite?: bool|array{ + * slug?: string, + * with_front?: bool, + * feeds?: bool, + * pages?: bool, + * ep_mask?: int, + * }, + * query_var?: string|bool, + * can_export?: bool, + * delete_with_user?: bool, + * template?: array, + * template_lock?: string|false, + * _builtin?: bool, + * _edit_link?: string, + * } $args See register_post_type() * @phpstan-param array $args * @phpstan-return void */ @@ -44251,6 +44863,13 @@ class WP_Query * @var int */ public $current_post = -1; + /** + * Whether the caller is before the loop. + * + * @since 6.3.0 + * @var bool + */ + public $before_loop = \true; /** * Whether the loop has started and the caller is in the loop. * @@ -44548,7 +45167,7 @@ public function init() { } /** - * Reparse the query vars. + * Reparses the query vars. * * @since 1.5.0 */ @@ -44568,7 +45187,7 @@ public function fill_query_vars($query_vars) { } /** - * Parse a query string and set query type booleans. + * Parses a query string and sets query type booleans. * * @since 1.5.0 * @since 4.2.0 Introduced the ability to order by specific clauses of a `$meta_query`, by passing the clause's @@ -44588,140 +45207,140 @@ public function fill_query_vars($query_vars) * @param string|array $query { * Optional. Array or string of Query parameters. * - * @type int $attachment_id Attachment post ID. Used for 'attachment' post_type. - * @type int|string $author Author ID, or comma-separated list of IDs. - * @type string $author_name User 'user_nicename'. - * @type int[] $author__in An array of author IDs to query from. - * @type int[] $author__not_in An array of author IDs not to query from. - * @type bool $cache_results Whether to cache post information. Default true. - * @type int|string $cat Category ID or comma-separated list of IDs (this or any children). - * @type int[] $category__and An array of category IDs (AND in). - * @type int[] $category__in An array of category IDs (OR in, no children). - * @type int[] $category__not_in An array of category IDs (NOT in). - * @type string $category_name Use category slug (not name, this or any children). - * @type array|int $comment_count Filter results by comment count. Provide an integer to match - * comment count exactly. Provide an array with integer 'value' - * and 'compare' operator ('=', '!=', '>', '>=', '<', '<=' ) to - * compare against comment_count in a specific way. - * @type string $comment_status Comment status. - * @type int $comments_per_page The number of comments to return per page. - * Default 'comments_per_page' option. - * @type array $date_query An associative array of WP_Date_Query arguments. - * See WP_Date_Query::__construct(). - * @type int $day Day of the month. Default empty. Accepts numbers 1-31. - * @type bool $exact Whether to search by exact keyword. Default false. - * @type string $fields Post fields to query for. Accepts: - * - '' Returns an array of complete post objects (`WP_Post[]`). - * - 'ids' Returns an array of post IDs (`int[]`). - * - 'id=>parent' Returns an associative array of parent post IDs, - * keyed by post ID (`int[]`). - * Default ''. - * @type int $hour Hour of the day. Default empty. Accepts numbers 0-23. - * @type int|bool $ignore_sticky_posts Whether to ignore sticky posts or not. Setting this to false - * excludes stickies from 'post__in'. Accepts 1|true, 0|false. - * Default false. - * @type int $m Combination YearMonth. Accepts any four-digit year and month - * numbers 01-12. Default empty. - * @type string|string[] $meta_key Meta key or keys to filter by. - * @type string|string[] $meta_value Meta value or values to filter by. - * @type string $meta_compare MySQL operator used for comparing the meta value. - * See WP_Meta_Query::__construct() for accepted values and default value. - * @type string $meta_compare_key MySQL operator used for comparing the meta key. - * See WP_Meta_Query::__construct() for accepted values and default value. - * @type string $meta_type MySQL data type that the meta_value column will be CAST to for comparisons. - * See WP_Meta_Query::__construct() for accepted values and default value. - * @type string $meta_type_key MySQL data type that the meta_key column will be CAST to for comparisons. - * See WP_Meta_Query::__construct() for accepted values and default value. - * @type array $meta_query An associative array of WP_Meta_Query arguments. - * See WP_Meta_Query::__construct() for accepted values. - * @type int $menu_order The menu order of the posts. - * @type int $minute Minute of the hour. Default empty. Accepts numbers 0-59. - * @type int $monthnum The two-digit month. Default empty. Accepts numbers 1-12. - * @type string $name Post slug. - * @type bool $nopaging Show all posts (true) or paginate (false). Default false. - * @type bool $no_found_rows Whether to skip counting the total rows found. Enabling can improve - * performance. Default false. - * @type int $offset The number of posts to offset before retrieval. - * @type string $order Designates ascending or descending order of posts. Default 'DESC'. - * Accepts 'ASC', 'DESC'. - * @type string|array $orderby Sort retrieved posts by parameter. One or more options may be passed. - * To use 'meta_value', or 'meta_value_num', 'meta_key=keyname' must be - * also be defined. To sort by a specific `$meta_query` clause, use that - * clause's array key. Accepts: - * - 'none' - * - 'name' - * - 'author' - * - 'date' - * - 'title' - * - 'modified' - * - 'menu_order' - * - 'parent' - * - 'ID' - * - 'rand' - * - 'relevance' - * - 'RAND(x)' (where 'x' is an integer seed value) - * - 'comment_count' - * - 'meta_value' - * - 'meta_value_num' - * - 'post__in' - * - 'post_name__in' - * - 'post_parent__in' - * - The array keys of `$meta_query`. - * Default is 'date', except when a search is being performed, when - * the default is 'relevance'. - * @type int $p Post ID. - * @type int $page Show the number of posts that would show up on page X of a - * static front page. - * @type int $paged The number of the current page. - * @type int $page_id Page ID. - * @type string $pagename Page slug. - * @type string $perm Show posts if user has the appropriate capability. - * @type string $ping_status Ping status. - * @type int[] $post__in An array of post IDs to retrieve, sticky posts will be included. - * @type int[] $post__not_in An array of post IDs not to retrieve. Note: a string of comma- - * separated IDs will NOT work. - * @type string $post_mime_type The mime type of the post. Used for 'attachment' post_type. - * @type string[] $post_name__in An array of post slugs that results must match. - * @type int $post_parent Page ID to retrieve child pages for. Use 0 to only retrieve - * top-level pages. - * @type int[] $post_parent__in An array containing parent page IDs to query child pages from. - * @type int[] $post_parent__not_in An array containing parent page IDs not to query child pages from. - * @type string|string[] $post_type A post type slug (string) or array of post type slugs. - * Default 'any' if using 'tax_query'. - * @type string|string[] $post_status A post status (string) or array of post statuses. - * @type int $posts_per_page The number of posts to query for. Use -1 to request all posts. - * @type int $posts_per_archive_page The number of posts to query for by archive page. Overrides - * 'posts_per_page' when is_archive(), or is_search() are true. - * @type string $s Search keyword(s). Prepending a term with a hyphen will - * exclude posts matching that term. Eg, 'pillow -sofa' will - * return posts containing 'pillow' but not 'sofa'. The - * character used for exclusion can be modified using the - * the 'wp_query_search_exclusion_prefix' filter. - * @type string[] $search_columns Array of column names to be searched. Accepts 'post_title', - * 'post_excerpt' and 'post_content'. Default empty array. - * @type int $second Second of the minute. Default empty. Accepts numbers 0-59. - * @type bool $sentence Whether to search by phrase. Default false. - * @type bool $suppress_filters Whether to suppress filters. Default false. - * @type string $tag Tag slug. Comma-separated (either), Plus-separated (all). - * @type int[] $tag__and An array of tag IDs (AND in). - * @type int[] $tag__in An array of tag IDs (OR in). - * @type int[] $tag__not_in An array of tag IDs (NOT in). - * @type int $tag_id Tag id or comma-separated list of IDs. - * @type string[] $tag_slug__and An array of tag slugs (AND in). - * @type string[] $tag_slug__in An array of tag slugs (OR in). unless 'ignore_sticky_posts' is - * true. Note: a string of comma-separated IDs will NOT work. - * @type array $tax_query An associative array of WP_Tax_Query arguments. - * See WP_Tax_Query::__construct(). - * @type string $title Post title. - * @type bool $update_post_meta_cache Whether to update the post meta cache. Default true. - * @type bool $update_post_term_cache Whether to update the post term cache. Default true. - * @type bool $update_menu_item_cache Whether to update the menu item cache. Default false. - * @type bool $lazy_load_term_meta Whether to lazy-load term meta. Setting to false will - * disable cache priming for term meta, so that each - * get_term_meta() call will hit the database. - * Defaults to the value of `$update_post_term_cache`. - * @type int $w The week number of the year. Default empty. Accepts numbers 0-53. - * @type int $year The four-digit year. Default empty. Accepts any four-digit year. + * @type int $attachment_id Attachment post ID. Used for 'attachment' post_type. + * @type int|string $author Author ID, or comma-separated list of IDs. + * @type string $author_name User 'user_nicename'. + * @type int[] $author__in An array of author IDs to query from. + * @type int[] $author__not_in An array of author IDs not to query from. + * @type bool $cache_results Whether to cache post information. Default true. + * @type int|string $cat Category ID or comma-separated list of IDs (this or any children). + * @type int[] $category__and An array of category IDs (AND in). + * @type int[] $category__in An array of category IDs (OR in, no children). + * @type int[] $category__not_in An array of category IDs (NOT in). + * @type string $category_name Use category slug (not name, this or any children). + * @type array|int $comment_count Filter results by comment count. Provide an integer to match + * comment count exactly. Provide an array with integer 'value' + * and 'compare' operator ('=', '!=', '>', '>=', '<', '<=' ) to + * compare against comment_count in a specific way. + * @type string $comment_status Comment status. + * @type int $comments_per_page The number of comments to return per page. + * Default 'comments_per_page' option. + * @type array $date_query An associative array of WP_Date_Query arguments. + * See WP_Date_Query::__construct(). + * @type int $day Day of the month. Default empty. Accepts numbers 1-31. + * @type bool $exact Whether to search by exact keyword. Default false. + * @type string $fields Post fields to query for. Accepts: + * - '' Returns an array of complete post objects (`WP_Post[]`). + * - 'ids' Returns an array of post IDs (`int[]`). + * - 'id=>parent' Returns an associative array of parent post IDs, + * keyed by post ID (`int[]`). + * Default ''. + * @type int $hour Hour of the day. Default empty. Accepts numbers 0-23. + * @type int|bool $ignore_sticky_posts Whether to ignore sticky posts or not. Setting this to false + * excludes stickies from 'post__in'. Accepts 1|true, 0|false. + * Default false. + * @type int $m Combination YearMonth. Accepts any four-digit year and month + * numbers 01-12. Default empty. + * @type string|string[] $meta_key Meta key or keys to filter by. + * @type string|string[] $meta_value Meta value or values to filter by. + * @type string $meta_compare MySQL operator used for comparing the meta value. + * See WP_Meta_Query::__construct() for accepted values and default value. + * @type string $meta_compare_key MySQL operator used for comparing the meta key. + * See WP_Meta_Query::__construct() for accepted values and default value. + * @type string $meta_type MySQL data type that the meta_value column will be CAST to for comparisons. + * See WP_Meta_Query::__construct() for accepted values and default value. + * @type string $meta_type_key MySQL data type that the meta_key column will be CAST to for comparisons. + * See WP_Meta_Query::__construct() for accepted values and default value. + * @type array $meta_query An associative array of WP_Meta_Query arguments. + * See WP_Meta_Query::__construct() for accepted values. + * @type int $menu_order The menu order of the posts. + * @type int $minute Minute of the hour. Default empty. Accepts numbers 0-59. + * @type int $monthnum The two-digit month. Default empty. Accepts numbers 1-12. + * @type string $name Post slug. + * @type bool $nopaging Show all posts (true) or paginate (false). Default false. + * @type bool $no_found_rows Whether to skip counting the total rows found. Enabling can improve + * performance. Default false. + * @type int $offset The number of posts to offset before retrieval. + * @type string $order Designates ascending or descending order of posts. Default 'DESC'. + * Accepts 'ASC', 'DESC'. + * @type string|array $orderby Sort retrieved posts by parameter. One or more options may be passed. + * To use 'meta_value', or 'meta_value_num', 'meta_key=keyname' must be + * also be defined. To sort by a specific `$meta_query` clause, use that + * clause's array key. Accepts: + * - 'none' + * - 'name' + * - 'author' + * - 'date' + * - 'title' + * - 'modified' + * - 'menu_order' + * - 'parent' + * - 'ID' + * - 'rand' + * - 'relevance' + * - 'RAND(x)' (where 'x' is an integer seed value) + * - 'comment_count' + * - 'meta_value' + * - 'meta_value_num' + * - 'post__in' + * - 'post_name__in' + * - 'post_parent__in' + * - The array keys of `$meta_query`. + * Default is 'date', except when a search is being performed, when + * the default is 'relevance'. + * @type int $p Post ID. + * @type int $page Show the number of posts that would show up on page X of a + * static front page. + * @type int $paged The number of the current page. + * @type int $page_id Page ID. + * @type string $pagename Page slug. + * @type string $perm Show posts if user has the appropriate capability. + * @type string $ping_status Ping status. + * @type int[] $post__in An array of post IDs to retrieve, sticky posts will be included. + * @type int[] $post__not_in An array of post IDs not to retrieve. Note: a string of comma- + * separated IDs will NOT work. + * @type string $post_mime_type The mime type of the post. Used for 'attachment' post_type. + * @type string[] $post_name__in An array of post slugs that results must match. + * @type int $post_parent Page ID to retrieve child pages for. Use 0 to only retrieve + * top-level pages. + * @type int[] $post_parent__in An array containing parent page IDs to query child pages from. + * @type int[] $post_parent__not_in An array containing parent page IDs not to query child pages from. + * @type string|string[] $post_type A post type slug (string) or array of post type slugs. + * Default 'any' if using 'tax_query'. + * @type string|string[] $post_status A post status (string) or array of post statuses. + * @type int $posts_per_page The number of posts to query for. Use -1 to request all posts. + * @type int $posts_per_archive_page The number of posts to query for by archive page. Overrides + * 'posts_per_page' when is_archive(), or is_search() are true. + * @type string $s Search keyword(s). Prepending a term with a hyphen will + * exclude posts matching that term. Eg, 'pillow -sofa' will + * return posts containing 'pillow' but not 'sofa'. The + * character used for exclusion can be modified using the + * the 'wp_query_search_exclusion_prefix' filter. + * @type string[] $search_columns Array of column names to be searched. Accepts 'post_title', + * 'post_excerpt' and 'post_content'. Default empty array. + * @type int $second Second of the minute. Default empty. Accepts numbers 0-59. + * @type bool $sentence Whether to search by phrase. Default false. + * @type bool $suppress_filters Whether to suppress filters. Default false. + * @type string $tag Tag slug. Comma-separated (either), Plus-separated (all). + * @type int[] $tag__and An array of tag IDs (AND in). + * @type int[] $tag__in An array of tag IDs (OR in). + * @type int[] $tag__not_in An array of tag IDs (NOT in). + * @type int $tag_id Tag id or comma-separated list of IDs. + * @type string[] $tag_slug__and An array of tag slugs (AND in). + * @type string[] $tag_slug__in An array of tag slugs (OR in). unless 'ignore_sticky_posts' is + * true. Note: a string of comma-separated IDs will NOT work. + * @type array $tax_query An associative array of WP_Tax_Query arguments. + * See WP_Tax_Query::__construct(). + * @type string $title Post title. + * @type bool $update_post_meta_cache Whether to update the post meta cache. Default true. + * @type bool $update_post_term_cache Whether to update the post term cache. Default true. + * @type bool $update_menu_item_cache Whether to update the menu item cache. Default false. + * @type bool $lazy_load_term_meta Whether to lazy-load term meta. Setting to false will + * disable cache priming for term meta, so that each + * get_term_meta() call will hit the database. + * Defaults to the value of `$update_post_term_cache`. + * @type int $w The week number of the year. Default empty. Accepts numbers 0-53. + * @type int $year The four-digit year. Default empty. Accepts any four-digit year. * } * @phpstan-param array{ * attachment_id?: int, @@ -44830,7 +45449,7 @@ protected function parse_search(&$q) { } /** - * Check if the terms are suitable for searching. + * Checks if the terms are suitable for searching. * * Uses an array of stopwords (terms) that are excluded from the separate * term matching when searching for posts. The list of English stopwords is @@ -44845,7 +45464,7 @@ protected function parse_search_terms($terms) { } /** - * Retrieve stopwords used when parsing search terms. + * Retrieves stopwords used when parsing search terms. * * @since 3.7.0 * @@ -44940,7 +45559,7 @@ public function get_posts() { } /** - * Set up the next post and iterate current post index. + * Sets up the next post and iterate current post index. * * @since 1.5.0 * @@ -44976,7 +45595,7 @@ public function have_posts() { } /** - * Rewind the posts and reset post index. + * Rewinds the posts and resets post index. * * @since 1.5.0 */ @@ -44984,7 +45603,7 @@ public function rewind_posts() { } /** - * Iterate current comment index and return WP_Comment object. + * Iterates current comment index and returns WP_Comment object. * * @since 2.2.0 * @@ -45004,7 +45623,7 @@ public function the_comment() { } /** - * Whether there are more comments available. + * Determines whether there are more comments available. * * Automatically rewinds comments when finished. * @@ -45016,7 +45635,7 @@ public function have_comments() { } /** - * Rewind the comments, resets the comment index and comment to first. + * Rewinds the comments, resets the comment index and comment to first. * * @since 2.2.0 */ @@ -45075,7 +45694,7 @@ public function __construct($query = '') { } /** - * Make private properties readable for backward compatibility. + * Makes private properties readable for backward compatibility. * * @since 4.0.0 * @@ -45086,7 +45705,7 @@ public function __get($name) { } /** - * Make private properties checkable for backward compatibility. + * Makes private properties checkable for backward compatibility. * * @since 4.0.0 * @@ -45097,7 +45716,7 @@ public function __isset($name) { } /** - * Make private/protected methods readable for backward compatibility. + * Makes private/protected methods readable for backward compatibility. * * @since 4.0.0 * @@ -45109,7 +45728,7 @@ public function __call($name, $arguments) { } /** - * Is the query for an existing archive page? + * Determines whether the query is for an existing archive page. * * Archive pages include category, tag, author, date, custom post type, * and custom taxonomy based archives. @@ -45129,7 +45748,7 @@ public function is_archive() { } /** - * Is the query for an existing post type archive page? + * Determines whether the query is for an existing post type archive page. * * @since 3.1.0 * @@ -45141,7 +45760,7 @@ public function is_post_type_archive($post_types = '') { } /** - * Is the query for an existing attachment page? + * Determines whether the query is for an existing attachment page. * * @since 3.1.0 * @@ -45153,7 +45772,7 @@ public function is_attachment($attachment = '') { } /** - * Is the query for an existing author archive page? + * Determines whether the query is for an existing author archive page. * * If the $author parameter is specified, this function will additionally * check if the query is for one of the authors specified. @@ -45168,7 +45787,7 @@ public function is_author($author = '') { } /** - * Is the query for an existing category archive page? + * Determines whether the query is for an existing category archive page. * * If the $category parameter is specified, this function will additionally * check if the query is for one of the categories specified. @@ -45183,7 +45802,7 @@ public function is_category($category = '') { } /** - * Is the query for an existing tag archive page? + * Determines whether the query is for an existing tag archive page. * * If the $tag parameter is specified, this function will additionally * check if the query is for one of the tags specified. @@ -45198,7 +45817,7 @@ public function is_tag($tag = '') { } /** - * Is the query for an existing custom taxonomy archive page? + * Determines whether the query is for an existing custom taxonomy archive page. * * If the $taxonomy parameter is specified, this function will additionally * check if the query is for that specific $taxonomy. @@ -45223,7 +45842,7 @@ public function is_tax($taxonomy = '', $term = '') { } /** - * Whether the current URL is within the comments popup window. + * Determines whether the current URL is within the comments popup window. * * @since 3.1.0 * @deprecated 4.5.0 @@ -45234,7 +45853,7 @@ public function is_comments_popup() { } /** - * Is the query for an existing date archive? + * Determines whether the query is for an existing date archive. * * @since 3.1.0 * @@ -45244,7 +45863,7 @@ public function is_date() { } /** - * Is the query for an existing day archive? + * Determines whether the query is for an existing day archive. * * @since 3.1.0 * @@ -45254,7 +45873,7 @@ public function is_day() { } /** - * Is the query for a feed? + * Determines whether the query is for a feed. * * @since 3.1.0 * @@ -45266,7 +45885,7 @@ public function is_feed($feeds = '') { } /** - * Is the query for a comments feed? + * Determines whether the query is for a comments feed. * * @since 3.1.0 * @@ -45276,7 +45895,7 @@ public function is_comment_feed() { } /** - * Is the query for the front page of the site? + * Determines whether the query is for the front page of the site. * * This is for what is displayed at your site's main URL. * @@ -45295,7 +45914,7 @@ public function is_front_page() { } /** - * Is the query for the blog homepage? + * Determines whether the query is for the blog homepage. * * This is the page which shows the time based blog content of your site. * @@ -45314,7 +45933,7 @@ public function is_home() { } /** - * Is the query for the Privacy Policy page? + * Determines whether the query is for the Privacy Policy page. * * This is the page which shows the Privacy Policy content of your site. * @@ -45330,7 +45949,7 @@ public function is_privacy_policy() { } /** - * Is the query for an existing month archive? + * Determines whether the query is for an existing month archive. * * @since 3.1.0 * @@ -45340,7 +45959,7 @@ public function is_month() { } /** - * Is the query for an existing single page? + * Determines whether the query is for an existing single page. * * If the $page parameter is specified, this function will additionally * check if the query is for one of the pages specified. @@ -45358,7 +45977,7 @@ public function is_page($page = '') { } /** - * Is the query for a paged result and not for the first page? + * Determines whether the query is for a paged result and not for the first page. * * @since 3.1.0 * @@ -45368,7 +45987,7 @@ public function is_paged() { } /** - * Is the query for a post or page preview? + * Determines whether the query is for a post or page preview. * * @since 3.1.0 * @@ -45378,7 +45997,7 @@ public function is_preview() { } /** - * Is the query for the robots.txt file? + * Determines whether the query is for the robots.txt file. * * @since 3.1.0 * @@ -45388,7 +46007,7 @@ public function is_robots() { } /** - * Is the query for the favicon.ico file? + * Determines whether the query is for the favicon.ico file. * * @since 5.4.0 * @@ -45398,7 +46017,7 @@ public function is_favicon() { } /** - * Is the query for a search? + * Determines whether the query is for a search. * * @since 3.1.0 * @@ -45408,7 +46027,7 @@ public function is_search() { } /** - * Is the query for an existing single post? + * Determines whether the query is for an existing single post. * * Works for any post type excluding pages. * @@ -45428,8 +46047,8 @@ public function is_single($post = '') { } /** - * Is the query for an existing single post of any post type (post, attachment, page, - * custom post types)? + * Determines whether the query is for an existing single post of any post type + * (post, attachment, page, custom post types). * * If the $post_types parameter is specified, this function will additionally * check if the query is for one of the Posts Types specified. @@ -45448,7 +46067,7 @@ public function is_singular($post_types = '') { } /** - * Is the query for a specific time? + * Determines whether the query is for a specific time. * * @since 3.1.0 * @@ -45458,7 +46077,7 @@ public function is_time() { } /** - * Is the query for a trackback endpoint call? + * Determines whether the query is for a trackback endpoint call. * * @since 3.1.0 * @@ -45468,7 +46087,7 @@ public function is_trackback() { } /** - * Is the query for an existing year archive? + * Determines whether the query is for an existing year archive. * * @since 3.1.0 * @@ -45478,7 +46097,7 @@ public function is_year() { } /** - * Is the query a 404 (returns no results)? + * Determines whether the query is a 404 (returns no results). * * @since 3.1.0 * @@ -45488,7 +46107,7 @@ public function is_404() { } /** - * Is the query for an embedded post? + * Determines whether the query is for an embedded post. * * @since 4.4.0 * @@ -45498,7 +46117,7 @@ public function is_embed() { } /** - * Is the query the main query? + * Determines whether the query is the main query. * * @since 3.3.0 * @@ -45510,7 +46129,7 @@ public function is_main_query() { } /** - * Set up global post data. + * Sets up global post data. * * @since 4.1.0 * @since 4.4.0 Added the ability to pass a post ID to `$post`. @@ -45532,7 +46151,7 @@ public function setup_postdata($post) { } /** - * Generate post data. + * Generates post data. * * @since 5.2.0 * @@ -45543,7 +46162,7 @@ public function generate_postdata($post) { } /** - * Generate cache key. + * Generates cache key. * * @since 6.1.0 * @@ -45551,7 +46170,6 @@ public function generate_postdata($post) * * @param array $args Query arguments. * @param string $sql SQL statement. - * * @return string Cache key. */ protected function generate_cache_key(array $args, $sql) @@ -45569,7 +46187,7 @@ public function reset_postdata() { } /** - * Lazyload term meta for posts in the loop. + * Lazyloads term meta for posts in the loop. * * @since 4.4.0 * @deprecated 4.5.0 See wp_queue_posts_for_term_meta_lazyload(). @@ -45582,10 +46200,10 @@ public function lazyload_term_meta($check, $term_id) { } /** - * Lazyload comment meta for comments in the loop. + * Lazyloads comment meta for comments in the loop. * * @since 4.4.0 - * @deprecated 4.5.0 See wp_queue_comments_for_comment_meta_lazyload(). + * @deprecated 4.5.0 See wp_lazyload_comment_meta(). * * @param mixed $check * @param int $comment_id @@ -47475,18 +48093,47 @@ public function add_inline_script($handle, $data, $position = 'after') * Prints inline scripts registered for a specific handle. * * @since 4.5.0 + * @deprecated 6.3.0 Use methods get_inline_script_tag() or get_inline_script_data() instead. * - * @param string $handle Name of the script to add the inline script to. + * @param string $handle Name of the script to print inline scripts for. * Must be lowercase. * @param string $position Optional. Whether to add the inline script * before the handle or after. Default 'after'. - * @param bool $display Optional. Whether to print the script - * instead of just returning it. Default true. - * @return string|false Script on success, false otherwise. + * @param bool $display Optional. Whether to print the script tag + * instead of just returning the script data. Default true. + * @return string|false Script data on success, false otherwise. */ public function print_inline_script($handle, $position = 'after', $display = \true) { } + /** + * Gets data for inline scripts registered for a specific handle. + * + * @since 6.3.0 + * + * @param string $handle Name of the script to get data for. + * Must be lowercase. + * @param string $position Optional. Whether to add the inline script + * before the handle or after. Default 'after'. + * @return string Inline script, which may be empty string. + */ + public function get_inline_script_data($handle, $position = 'after') + { + } + /** + * Gets tags for inline scripts registered for a specific handle. + * + * @since 6.3.0 + * + * @param string $handle Name of the script to get associated inline script tag for. + * Must be lowercase. + * @param string $position Optional. Whether to get tag for inline + * scripts in the before or after position. Default 'after'. + * @return string Inline script, which may be empty string. + */ + public function get_inline_script_tag($handle, $position = 'after') + { + } /** * Localizes a script, only if the script has already been added. * @@ -47596,6 +48243,19 @@ public function do_footer_items() public function in_default_dir($src) { } + /** + * This overrides the add_data method from WP_Dependencies, to support normalizing of $args. + * + * @since 6.3.0 + * + * @param string $handle Name of the item. Should be unique. + * @param string $key The data key. + * @param mixed $value The data value. + * @return bool True on success, false on failure. + */ + public function add_data($handle, $key, $value) + { + } /** * Resets class properties. * @@ -48873,15 +49533,15 @@ protected function get_sql_for_query(&$query, $depth = 0) * * @param array $clause Query clause (passed by reference). * @param array $parent_query Parent query array. - * @return string[] { + * @return array { * Array containing JOIN and WHERE SQL clauses to append to a first-order query. * - * @type string $join SQL fragment to append to the main JOIN clause. - * @type string $where SQL fragment to append to the main WHERE clause. + * @type string[] $join Array of SQL fragments to append to the main JOIN clause. + * @type string[] $where Array of SQL fragments to append to the main WHERE clause. * } * @phpstan-return array{ - * join: string, - * where: string, + * join: string[], + * where: string[], * } */ public function get_sql_for_clause(&$clause, $parent_query) @@ -49170,7 +49830,49 @@ final class WP_Taxonomy * @param string $taxonomy Taxonomy key, must not exceed 32 characters. * @param array|string $object_type Name of the object type for the taxonomy object. * @param array|string $args Optional. Array or query string of arguments for registering a taxonomy. + * See register_taxonomy() for information on accepted arguments. * Default empty array. + * @phpstan-param array{ + * labels?: string[], + * description?: string, + * public?: bool, + * publicly_queryable?: bool, + * hierarchical?: bool, + * show_ui?: bool, + * show_in_menu?: bool, + * show_in_nav_menus?: bool, + * show_in_rest?: bool, + * rest_base?: string, + * rest_namespace?: string, + * rest_controller_class?: string, + * show_tagcloud?: bool, + * show_in_quick_edit?: bool, + * show_admin_column?: bool, + * meta_box_cb?: bool|callable, + * meta_box_sanitize_cb?: callable, + * capabilities?: array{ + * manage_terms?: string, + * edit_terms?: string, + * delete_terms?: string, + * assign_terms?: string, + * }, + * rewrite?: bool|array{ + * slug?: string, + * with_front?: bool, + * hierarchical?: bool, + * ep_mask?: int, + * }, + * query_var?: string|bool, + * update_count_callback?: callable, + * default_term?: string|array{ + * name?: string, + * slug?: string, + * description?: string, + * }, + * sort?: bool, + * args?: array, + * _builtin?: bool, + * } $args See register_taxonomy() * @phpstan-param array $args * @phpstan-return void */ @@ -50299,7 +51001,7 @@ public function get_data() * * This class is for internal core usage and is not supposed to be used by extenders (plugins and/or themes). * This is a low-level API that may need to do breaking changes. Please, - * use get_global_settings, get_global_styles, and get_global_stylesheet instead. + * use get_global_settings(), get_global_styles(), and get_global_stylesheet() instead. * * @access private */ @@ -50462,7 +51164,7 @@ public static function get_block_data() } /** * Returns the custom post type that contains the user's origin config - * for the active theme or a void array if none are found. + * for the active theme or an empty array if none are found. * * This can also create and return a new draft custom post type. * @@ -50700,8 +51402,8 @@ class WP_Theme_JSON * - prevent_override => Disables override of default presets by theme presets. * The relationship between whether to override the defaults * and whether the defaults are enabled is inverse: - * - If defaults are enabled => theme presets should not be overriden - * - If defaults are disabled => theme presets should be overriden + * - If defaults are enabled => theme presets should not be overridden + * - If defaults are disabled => theme presets should be overridden * For example, a theme sets defaultPalette to false, * making the default palette hidden from the user. * In that case, we want all the theme presets to be present, @@ -50734,9 +51436,19 @@ class WP_Theme_JSON * @since 6.0.0 Replaced `override` with `prevent_override` and updated the * `prevent_override` value for `color.duotone` to use `color.defaultDuotone`. * @since 6.2.0 Added 'shadow' presets. + * @since 6.3.0 Replaced value_func for duotone with `null`. Custom properties are handled by class-wp-duotone.php. * @var array */ - const PRESETS_METADATA = array(array('path' => array('color', 'palette'), 'prevent_override' => array('color', 'defaultPalette'), 'use_default_names' => \false, 'value_key' => 'color', 'css_vars' => '--wp--preset--color--$slug', 'classes' => array('.has-$slug-color' => 'color', '.has-$slug-background-color' => 'background-color', '.has-$slug-border-color' => 'border-color'), 'properties' => array('color', 'background-color', 'border-color')), array('path' => array('color', 'gradients'), 'prevent_override' => array('color', 'defaultGradients'), 'use_default_names' => \false, 'value_key' => 'gradient', 'css_vars' => '--wp--preset--gradient--$slug', 'classes' => array('.has-$slug-gradient-background' => 'background'), 'properties' => array('background')), array('path' => array('color', 'duotone'), 'prevent_override' => array('color', 'defaultDuotone'), 'use_default_names' => \false, 'value_func' => 'wp_get_duotone_filter_property', 'css_vars' => '--wp--preset--duotone--$slug', 'classes' => array(), 'properties' => array('filter')), array('path' => array('typography', 'fontSizes'), 'prevent_override' => \false, 'use_default_names' => \true, 'value_func' => 'wp_get_typography_font_size_value', 'css_vars' => '--wp--preset--font-size--$slug', 'classes' => array('.has-$slug-font-size' => 'font-size'), 'properties' => array('font-size')), array('path' => array('typography', 'fontFamilies'), 'prevent_override' => \false, 'use_default_names' => \false, 'value_key' => 'fontFamily', 'css_vars' => '--wp--preset--font-family--$slug', 'classes' => array('.has-$slug-font-family' => 'font-family'), 'properties' => array('font-family')), array('path' => array('spacing', 'spacingSizes'), 'prevent_override' => \false, 'use_default_names' => \true, 'value_key' => 'size', 'css_vars' => '--wp--preset--spacing--$slug', 'classes' => array(), 'properties' => array('padding', 'margin')), array('path' => array('shadow', 'presets'), 'prevent_override' => array('shadow', 'defaultPresets'), 'use_default_names' => \false, 'value_key' => 'shadow', 'css_vars' => '--wp--preset--shadow--$slug', 'classes' => array(), 'properties' => array('box-shadow'))); + const PRESETS_METADATA = array(array('path' => array('color', 'palette'), 'prevent_override' => array('color', 'defaultPalette'), 'use_default_names' => \false, 'value_key' => 'color', 'css_vars' => '--wp--preset--color--$slug', 'classes' => array('.has-$slug-color' => 'color', '.has-$slug-background-color' => 'background-color', '.has-$slug-border-color' => 'border-color'), 'properties' => array('color', 'background-color', 'border-color')), array('path' => array('color', 'gradients'), 'prevent_override' => array('color', 'defaultGradients'), 'use_default_names' => \false, 'value_key' => 'gradient', 'css_vars' => '--wp--preset--gradient--$slug', 'classes' => array('.has-$slug-gradient-background' => 'background'), 'properties' => array('background')), array( + 'path' => array('color', 'duotone'), + 'prevent_override' => array('color', 'defaultDuotone'), + 'use_default_names' => \false, + 'value_func' => \null, + // CSS Custom Properties for duotone are handled by block supports in class-wp-duotone.php. + 'css_vars' => \null, + 'classes' => array(), + 'properties' => array('filter'), + ), array('path' => array('typography', 'fontSizes'), 'prevent_override' => \false, 'use_default_names' => \true, 'value_func' => 'wp_get_typography_font_size_value', 'css_vars' => '--wp--preset--font-size--$slug', 'classes' => array('.has-$slug-font-size' => 'font-size'), 'properties' => array('font-size')), array('path' => array('typography', 'fontFamilies'), 'prevent_override' => \false, 'use_default_names' => \false, 'value_key' => 'fontFamily', 'css_vars' => '--wp--preset--font-family--$slug', 'classes' => array('.has-$slug-font-family' => 'font-family'), 'properties' => array('font-family')), array('path' => array('spacing', 'spacingSizes'), 'prevent_override' => \false, 'use_default_names' => \true, 'value_key' => 'size', 'css_vars' => '--wp--preset--spacing--$slug', 'classes' => array(), 'properties' => array('padding', 'margin')), array('path' => array('shadow', 'presets'), 'prevent_override' => array('shadow', 'defaultPresets'), 'use_default_names' => \false, 'value_key' => 'shadow', 'css_vars' => '--wp--preset--shadow--$slug', 'classes' => array(), 'properties' => array('box-shadow'))); /** * Metadata for style properties. * @@ -50752,10 +51464,11 @@ class WP_Theme_JSON * `--wp--style--root--padding-*`, and `box-shadow` properties, * removed the `--wp--style--block-gap` property. * @since 6.2.0 Added `outline-*`, and `min-height` properties. + * @since 6.3.0 Added `column-count` property. * * @var array */ - const PROPERTIES_METADATA = array('background' => array('color', 'gradient'), 'background-color' => array('color', 'background'), 'border-radius' => array('border', 'radius'), 'border-top-left-radius' => array('border', 'radius', 'topLeft'), 'border-top-right-radius' => array('border', 'radius', 'topRight'), 'border-bottom-left-radius' => array('border', 'radius', 'bottomLeft'), 'border-bottom-right-radius' => array('border', 'radius', 'bottomRight'), 'border-color' => array('border', 'color'), 'border-width' => array('border', 'width'), 'border-style' => array('border', 'style'), 'border-top-color' => array('border', 'top', 'color'), 'border-top-width' => array('border', 'top', 'width'), 'border-top-style' => array('border', 'top', 'style'), 'border-right-color' => array('border', 'right', 'color'), 'border-right-width' => array('border', 'right', 'width'), 'border-right-style' => array('border', 'right', 'style'), 'border-bottom-color' => array('border', 'bottom', 'color'), 'border-bottom-width' => array('border', 'bottom', 'width'), 'border-bottom-style' => array('border', 'bottom', 'style'), 'border-left-color' => array('border', 'left', 'color'), 'border-left-width' => array('border', 'left', 'width'), 'border-left-style' => array('border', 'left', 'style'), 'color' => array('color', 'text'), 'font-family' => array('typography', 'fontFamily'), 'font-size' => array('typography', 'fontSize'), 'font-style' => array('typography', 'fontStyle'), 'font-weight' => array('typography', 'fontWeight'), 'letter-spacing' => array('typography', 'letterSpacing'), 'line-height' => array('typography', 'lineHeight'), 'margin' => array('spacing', 'margin'), 'margin-top' => array('spacing', 'margin', 'top'), 'margin-right' => array('spacing', 'margin', 'right'), 'margin-bottom' => array('spacing', 'margin', 'bottom'), 'margin-left' => array('spacing', 'margin', 'left'), 'min-height' => array('dimensions', 'minHeight'), 'outline-color' => array('outline', 'color'), 'outline-offset' => array('outline', 'offset'), 'outline-style' => array('outline', 'style'), 'outline-width' => array('outline', 'width'), 'padding' => array('spacing', 'padding'), 'padding-top' => array('spacing', 'padding', 'top'), 'padding-right' => array('spacing', 'padding', 'right'), 'padding-bottom' => array('spacing', 'padding', 'bottom'), 'padding-left' => array('spacing', 'padding', 'left'), '--wp--style--root--padding' => array('spacing', 'padding'), '--wp--style--root--padding-top' => array('spacing', 'padding', 'top'), '--wp--style--root--padding-right' => array('spacing', 'padding', 'right'), '--wp--style--root--padding-bottom' => array('spacing', 'padding', 'bottom'), '--wp--style--root--padding-left' => array('spacing', 'padding', 'left'), 'text-decoration' => array('typography', 'textDecoration'), 'text-transform' => array('typography', 'textTransform'), 'filter' => array('filter', 'duotone'), 'box-shadow' => array('shadow')); + const PROPERTIES_METADATA = array('background' => array('color', 'gradient'), 'background-color' => array('color', 'background'), 'border-radius' => array('border', 'radius'), 'border-top-left-radius' => array('border', 'radius', 'topLeft'), 'border-top-right-radius' => array('border', 'radius', 'topRight'), 'border-bottom-left-radius' => array('border', 'radius', 'bottomLeft'), 'border-bottom-right-radius' => array('border', 'radius', 'bottomRight'), 'border-color' => array('border', 'color'), 'border-width' => array('border', 'width'), 'border-style' => array('border', 'style'), 'border-top-color' => array('border', 'top', 'color'), 'border-top-width' => array('border', 'top', 'width'), 'border-top-style' => array('border', 'top', 'style'), 'border-right-color' => array('border', 'right', 'color'), 'border-right-width' => array('border', 'right', 'width'), 'border-right-style' => array('border', 'right', 'style'), 'border-bottom-color' => array('border', 'bottom', 'color'), 'border-bottom-width' => array('border', 'bottom', 'width'), 'border-bottom-style' => array('border', 'bottom', 'style'), 'border-left-color' => array('border', 'left', 'color'), 'border-left-width' => array('border', 'left', 'width'), 'border-left-style' => array('border', 'left', 'style'), 'color' => array('color', 'text'), 'column-count' => array('typography', 'textColumns'), 'font-family' => array('typography', 'fontFamily'), 'font-size' => array('typography', 'fontSize'), 'font-style' => array('typography', 'fontStyle'), 'font-weight' => array('typography', 'fontWeight'), 'letter-spacing' => array('typography', 'letterSpacing'), 'line-height' => array('typography', 'lineHeight'), 'margin' => array('spacing', 'margin'), 'margin-top' => array('spacing', 'margin', 'top'), 'margin-right' => array('spacing', 'margin', 'right'), 'margin-bottom' => array('spacing', 'margin', 'bottom'), 'margin-left' => array('spacing', 'margin', 'left'), 'min-height' => array('dimensions', 'minHeight'), 'outline-color' => array('outline', 'color'), 'outline-offset' => array('outline', 'offset'), 'outline-style' => array('outline', 'style'), 'outline-width' => array('outline', 'width'), 'padding' => array('spacing', 'padding'), 'padding-top' => array('spacing', 'padding', 'top'), 'padding-right' => array('spacing', 'padding', 'right'), 'padding-bottom' => array('spacing', 'padding', 'bottom'), 'padding-left' => array('spacing', 'padding', 'left'), '--wp--style--root--padding' => array('spacing', 'padding'), '--wp--style--root--padding-top' => array('spacing', 'padding', 'top'), '--wp--style--root--padding-right' => array('spacing', 'padding', 'right'), '--wp--style--root--padding-bottom' => array('spacing', 'padding', 'bottom'), '--wp--style--root--padding-left' => array('spacing', 'padding', 'left'), 'text-decoration' => array('typography', 'textDecoration'), 'text-transform' => array('typography', 'textTransform'), 'filter' => array('filter', 'duotone'), 'box-shadow' => array('shadow')); /** * Indirect metadata for style properties that are not directly output. * @@ -50789,9 +51502,10 @@ class WP_Theme_JSON * @since 5.8.0 As `ALLOWED_TOP_LEVEL_KEYS`. * @since 5.9.0 Renamed from `ALLOWED_TOP_LEVEL_KEYS` to `VALID_TOP_LEVEL_KEYS`, * added the `customTemplates` and `templateParts` values. + * @since 6.3.0 Added the `description` value. * @var string[] */ - const VALID_TOP_LEVEL_KEYS = array('customTemplates', 'patterns', 'settings', 'styles', 'templateParts', 'title', 'version'); + const VALID_TOP_LEVEL_KEYS = array('customTemplates', 'description', 'patterns', 'settings', 'styles', 'templateParts', 'title', 'version'); /** * The valid properties under the settings key. * @@ -50803,9 +51517,11 @@ class WP_Theme_JSON * @since 6.1.0 Added `layout.definitions` and `useRootPaddingAwareAlignments`. * @since 6.2.0 Added `dimensions.minHeight`, 'shadow.presets', 'shadow.defaultPresets', * `position.fixed` and `position.sticky`. + * @since 6.3.0 Added support for `typography.textColumns`, removed `layout.definitions`. + * * @var array */ - const VALID_SETTINGS = array('appearanceTools' => \null, 'useRootPaddingAwareAlignments' => \null, 'border' => array('color' => \null, 'radius' => \null, 'style' => \null, 'width' => \null), 'color' => array('background' => \null, 'custom' => \null, 'customDuotone' => \null, 'customGradient' => \null, 'defaultDuotone' => \null, 'defaultGradients' => \null, 'defaultPalette' => \null, 'duotone' => \null, 'gradients' => \null, 'link' => \null, 'palette' => \null, 'text' => \null), 'custom' => \null, 'dimensions' => array('minHeight' => \null), 'layout' => array('contentSize' => \null, 'definitions' => \null, 'wideSize' => \null), 'position' => array('fixed' => \null, 'sticky' => \null), 'spacing' => array('customSpacingSize' => \null, 'spacingSizes' => \null, 'spacingScale' => \null, 'blockGap' => \null, 'margin' => \null, 'padding' => \null, 'units' => \null), 'shadow' => array('presets' => \null, 'defaultPresets' => \null), 'typography' => array('fluid' => \null, 'customFontSize' => \null, 'dropCap' => \null, 'fontFamilies' => \null, 'fontSizes' => \null, 'fontStyle' => \null, 'fontWeight' => \null, 'letterSpacing' => \null, 'lineHeight' => \null, 'textDecoration' => \null, 'textTransform' => \null)); + const VALID_SETTINGS = array('appearanceTools' => \null, 'useRootPaddingAwareAlignments' => \null, 'border' => array('color' => \null, 'radius' => \null, 'style' => \null, 'width' => \null), 'color' => array('background' => \null, 'custom' => \null, 'customDuotone' => \null, 'customGradient' => \null, 'defaultDuotone' => \null, 'defaultGradients' => \null, 'defaultPalette' => \null, 'duotone' => \null, 'gradients' => \null, 'link' => \null, 'heading' => \null, 'button' => \null, 'caption' => \null, 'palette' => \null, 'text' => \null), 'custom' => \null, 'dimensions' => array('minHeight' => \null), 'layout' => array('contentSize' => \null, 'wideSize' => \null), 'position' => array('fixed' => \null, 'sticky' => \null), 'spacing' => array('customSpacingSize' => \null, 'spacingSizes' => \null, 'spacingScale' => \null, 'blockGap' => \null, 'margin' => \null, 'padding' => \null, 'units' => \null), 'shadow' => array('presets' => \null, 'defaultPresets' => \null), 'typography' => array('fluid' => \null, 'customFontSize' => \null, 'dropCap' => \null, 'fontFamilies' => \null, 'fontSizes' => \null, 'fontStyle' => \null, 'fontWeight' => \null, 'letterSpacing' => \null, 'lineHeight' => \null, 'textColumns' => \null, 'textDecoration' => \null, 'textTransform' => \null)); /** * The valid properties under the styles key. * @@ -50817,10 +51533,11 @@ class WP_Theme_JSON * added new property `shadow`, * updated `blockGap` to be allowed at any level. * @since 6.2.0 Added `outline`, and `minHeight` properties. + * @since 6.3.0 Added support for `typography.textColumns`. * * @var array */ - const VALID_STYLES = array('border' => array('color' => \null, 'radius' => \null, 'style' => \null, 'width' => \null, 'top' => \null, 'right' => \null, 'bottom' => \null, 'left' => \null), 'color' => array('background' => \null, 'gradient' => \null, 'text' => \null), 'dimensions' => array('minHeight' => \null), 'filter' => array('duotone' => \null), 'outline' => array('color' => \null, 'offset' => \null, 'style' => \null, 'width' => \null), 'shadow' => \null, 'spacing' => array('margin' => \null, 'padding' => \null, 'blockGap' => \null), 'typography' => array('fontFamily' => \null, 'fontSize' => \null, 'fontStyle' => \null, 'fontWeight' => \null, 'letterSpacing' => \null, 'lineHeight' => \null, 'textDecoration' => \null, 'textTransform' => \null), 'css' => \null); + const VALID_STYLES = array('border' => array('color' => \null, 'radius' => \null, 'style' => \null, 'width' => \null, 'top' => \null, 'right' => \null, 'bottom' => \null, 'left' => \null), 'color' => array('background' => \null, 'gradient' => \null, 'text' => \null), 'dimensions' => array('minHeight' => \null), 'filter' => array('duotone' => \null), 'outline' => array('color' => \null, 'offset' => \null, 'style' => \null, 'width' => \null), 'shadow' => \null, 'spacing' => array('margin' => \null, 'padding' => \null, 'blockGap' => \null), 'typography' => array('fontFamily' => \null, 'fontSize' => \null, 'fontStyle' => \null, 'fontWeight' => \null, 'letterSpacing' => \null, 'lineHeight' => \null, 'textColumns' => \null, 'textDecoration' => \null, 'textTransform' => \null), 'css' => \null); /** * Defines which pseudo selectors are enabled for which elements. * @@ -50886,7 +51603,7 @@ public static function get_element_class_name($element) * @since 6.2.0 Added `dimensions.minHeight` and `position.sticky`. * @var array */ - const APPEARANCE_TOOLS_OPT_INS = array(array('border', 'color'), array('border', 'radius'), array('border', 'style'), array('border', 'width'), array('color', 'link'), array('dimensions', 'minHeight'), array('position', 'sticky'), array('spacing', 'blockGap'), array('spacing', 'margin'), array('spacing', 'padding'), array('typography', 'lineHeight')); + const APPEARANCE_TOOLS_OPT_INS = array(array('border', 'color'), array('border', 'radius'), array('border', 'style'), array('border', 'width'), array('color', 'link'), array('color', 'heading'), array('color', 'button'), array('color', 'caption'), array('dimensions', 'minHeight'), array('position', 'sticky'), array('spacing', 'blockGap'), array('spacing', 'margin'), array('spacing', 'padding'), array('typography', 'lineHeight')); /** * The latest version of the schema in use. * @@ -50933,13 +51650,15 @@ protected static function do_opt_in_into_settings(&$context) * * @since 5.8.0 * @since 5.9.0 Added the `$valid_block_names` and `$valid_element_name` parameters. + * @since 6.3.0 Added the `$valid_variations` parameter. * * @param array $input Structure to sanitize. * @param array $valid_block_names List of valid block names. * @param array $valid_element_names List of valid element names. + * @param array $valid_variations List of valid variations per block. * @return array The sanitized output. */ - protected static function sanitize($input, $valid_block_names, $valid_element_names) + protected static function sanitize($input, $valid_block_names, $valid_element_names, $valid_variations) { } /** @@ -50951,13 +51670,29 @@ protected static function sanitize($input, $valid_block_names, $valid_element_na * * @since 5.8.0 * @since 6.1.0 Added append position. + * @since 6.3.0 Removed append position parameter. * * @param string $selector Original selector. * @param string $to_append Selector to append. - * @param string $position A position sub-selector should be appended. Default 'right'. * @return string The new selector. */ - protected static function append_to_selector($selector, $to_append, $position = 'right') + protected static function append_to_selector($selector, $to_append) + { + } + /** + * Prepends a sub-selector to an existing one. + * + * Given the compounded $selector "h1, h2, h3" + * and the $to_prepend selector ".some-class " the result will be + * ".some-class h1, .some-class h2, .some-class h3". + * + * @since 6.3.0 + * + * @param string $selector Original selector. + * @param string $to_prepend Selector to prepend. + * @return string The new selector. + */ + protected static function prepend_to_selector($selector, $to_prepend) { } /** @@ -50987,6 +51722,7 @@ protected static function append_to_selector($selector, $to_append, $position = * @since 5.8.0 * @since 5.9.0 Added `duotone` key with CSS selector. * @since 6.1.0 Added `features` key with block support feature level selectors. + * @since 6.3.0 Refactored and stabilized selectors API. * * @return array Block metadata. */ @@ -51037,16 +51773,18 @@ public function get_settings() * the theme.json structure this object represents. * * @since 5.8.0 - * @since 5.9.0 Removed the `$type` parameter`, added the `$types` and `$origins` parameters. - * - * @param array $types Types of styles to load. Will load all by default. It accepts: - * - `variables`: only the CSS Custom Properties for presets & custom ones. - * - `styles`: only the styles section in theme.json. - * - `presets`: only the classes for the presets. - * @param array $origins A list of origins to include. By default it includes VALID_ORIGINS. - * @param array $options An array of options for now used for internal purposes only (may change without notice). - * The options currently supported are 'scope' that makes sure all style are scoped to a given selector, - * and root_selector which overwrites and forces a given selector to be used on the root node. + * @since 5.9.0 Removed the `$type` parameter, added the `$types` and `$origins` parameters. + * @since 6.3.0 Add fallback layout styles for Post Template when block gap support isn't available. + * + * @param string[] $types Types of styles to load. Will load all by default. It accepts: + * - `variables`: only the CSS Custom Properties for presets & custom ones. + * - `styles`: only the styles section in theme.json. + * - `presets`: only the classes for the presets. + * @param string[] $origins A list of origins to include. By default it includes VALID_ORIGINS. + * @param array $options An array of options for now used for internal purposes only (may change without notice). + * The options currently supported are 'scope' that makes sure all style are scoped to a + * given selector, and root_selector which overwrites and forces a given selector to be + * used on the root node. * @return string The resulting stylesheet. */ public function get_stylesheet($types = array('variables', 'styles', 'presets'), $origins = \null, $options = array()) @@ -51065,7 +51803,7 @@ protected function process_blocks_custom_css($css, $selector) { } /** - * Returns the global styles custom css. + * Returns the global styles custom CSS. * * @since 6.2.0 * @@ -51122,6 +51860,7 @@ protected function get_block_classes($style_nodes) * Gets the CSS layout rules for a particular block from theme.json layout definitions. * * @since 6.1.0 + * @since 6.3.0 Reduced specificity for layout margin rules. * * @param array $block_metadata Metadata about the block to get styles for. * @return string Layout styles for the block. @@ -51154,8 +51893,8 @@ protected function get_layout_styles($block_metadata) * * @since 5.9.0 * - * @param array $setting_nodes Nodes with settings. - * @param array $origins List of origins to process presets from. + * @param array $setting_nodes Nodes with settings. + * @param string[] $origins List of origins to process presets from. * @return string The new stylesheet. */ protected function get_preset_classes($setting_nodes, $origins) @@ -51178,8 +51917,8 @@ protected function get_preset_classes($setting_nodes, $origins) * @since 5.8.0 * @since 5.9.0 Added the `$origins` parameter. * - * @param array $nodes Nodes with settings. - * @param array $origins List of origins to process. + * @param array $nodes Nodes with settings. + * @param string[] $origins List of origins to process. * @return string The new stylesheet. */ protected function get_css_variables($nodes, $origins) @@ -51205,9 +51944,9 @@ protected static function to_ruleset($selector, $declarations) * @since 5.8.0 * @since 5.9.0 Added the `$origins` parameter. * - * @param array $settings Settings to process. - * @param string $selector Selector wrapping the classes. - * @param array $origins List of origins to process. + * @param array $settings Settings to process. + * @param string $selector Selector wrapping the classes. + * @param string[] $origins List of origins to process. * @return string The result of processing the presets. */ protected static function compute_preset_classes($settings, $selector, $origins) @@ -51264,9 +52003,9 @@ public static function scope_selector($scope, $selector) * * @since 5.9.0 * - * @param array $settings Settings to process. - * @param array $preset_metadata One of the PRESETS_METADATA values. - * @param array $origins List of origins to process. + * @param array $settings Settings to process. + * @param array $preset_metadata One of the PRESETS_METADATA values. + * @param string[] $origins List of origins to process. * @return array Array of presets where each key is a slug and each value is the preset value. */ protected static function get_settings_values_by_slug($settings, $preset_metadata, $origins) @@ -51277,9 +52016,9 @@ protected static function get_settings_values_by_slug($settings, $preset_metadat * * @since 5.9.0 * - * @param array $settings Settings to process. - * @param array $preset_metadata One of the PRESETS_METADATA values. - * @param array $origins List of origins to process. + * @param array $settings Settings to process. + * @param array $preset_metadata One of the PRESETS_METADATA values. + * @param string[] $origins List of origins to process. * @return array Array of presets where the key and value are both the slug. */ protected static function get_settings_slugs($settings, $preset_metadata, $origins = \null) @@ -51310,8 +52049,8 @@ protected static function replace_slug_in_string($input, $slug) * @since 5.8.0 * @since 5.9.0 Added the `$origins` parameter. * - * @param array $settings Settings to process. - * @param array $origins List of origins to process. + * @param array $settings Settings to process. + * @param string[] $origins List of origins to process. * @return array The modified $declarations. */ protected static function compute_preset_vars($settings, $origins) @@ -51402,10 +52141,6 @@ protected static function compute_style_properties($styles, $settings = array(), /** * Returns the style property for the given path. * - * It also converts CSS Custom Property stored as - * "var:preset|color|secondary" to the form - * "--wp--preset--color--secondary". - * * It also converts references to a path to the value * stored at that location, e.g. * { "ref": "style.color.background" } => "#fff". @@ -51413,6 +52148,10 @@ protected static function compute_style_properties($styles, $settings = array(), * @since 5.8.0 * @since 5.9.0 Added support for values of array type, which are returned as is. * @since 6.1.0 Added the `$theme_json` parameter. + * @since 6.3.0 It no longer converts the internal format "var:preset|color|secondary" + * to the standard form "--wp--preset--color--secondary". + * This is already done by the sanitize method, + * so every property will be in the standard form. * * @param array $styles Styles subtree. * @param array $path Which property to process. @@ -51572,12 +52311,12 @@ protected static function should_override_preset($theme_json, $path, $override) * * For example: * - * array( - * 'color' => array( - * 'palette' => array( 'slug-1', 'slug-2' ), - * 'gradients' => array( 'slug-3', 'slug-4' ), - * ), - * ) + * array( + * 'color' => array( + * 'palette' => array( 'slug-1', 'slug-2' ), + * 'gradients' => array( 'slug-3', 'slug-4' ), + * ), + * ) * * @since 5.9.0 * @@ -51715,6 +52454,57 @@ public function get_data() public function set_spacing_sizes() { } + /** + * Returns the selectors metadata for a block. + * + * @since 6.3.0 + * + * @param object $block_type The block type. + * @param string $root_selector The block's root selector. + * + * @return array The custom selectors set by the block. + */ + protected static function get_block_selectors($block_type, $root_selector) + { + } + /** + * Generates all the element selectors for a block. + * + * @since 6.3.0 + * + * @param string $root_selector The block's root CSS selector. + * @return array The block's element selectors. + */ + protected static function get_block_element_selectors($root_selector) + { + } + /** + * Generates style declarations for a node's features e.g., color, border, + * typography etc. that have custom selectors in their related block's + * metadata. + * + * @since 6.3.0 + * + * @param object $metadata The related block metadata containing selectors. + * @param object $node A merged theme.json node for block or variation. + * + * @return array The style declarations for the node's features with custom + * selectors. + */ + protected function get_feature_declarations_for_node($metadata, &$node) + { + } + /** + * Resolves the values of CSS variables in the given styles. + * + * @since 6.3.0 + * @param WP_Theme_JSON $theme_json The theme json resolver. + * + * @return WP_Theme_JSON The $theme_json with resolved variables. + */ + public static function resolve_variables($theme_json) + { + } } /** * WP_Theme Class @@ -52340,11 +53130,48 @@ class WP_User_Query public $query_orderby; public $query_limit; /** - * PHP5 constructor. + * Constructor. * * @since 3.1.0 * * @param null|string|array $query Optional. The query variables. + * See WP_User_Query::prepare_query() for information on accepted arguments. + * @phpstan-param array{ + * blog_id?: int, + * role?: string|string[], + * role__in?: string[], + * role__not_in?: string[], + * meta_key?: string|string[], + * meta_value?: string|string[], + * meta_compare?: string, + * meta_compare_key?: string, + * meta_type?: string, + * meta_type_key?: string, + * meta_query?: array, + * capability?: string|string[], + * capability__in?: string[], + * capability__not_in?: string[], + * include?: int[], + * exclude?: int[], + * search?: string, + * search_columns?: string[], + * orderby?: string|array, + * order?: string, + * offset?: int, + * number?: int, + * paged?: int, + * count_total?: bool, + * fields?: string|string[], + * who?: string, + * has_published_posts?: bool|string[], + * nicename?: string, + * nicename__in?: string[], + * nicename__not_in?: string[], + * login?: string, + * login__in?: string[], + * login__not_in?: string[], + * cache_results?: bool, + * } $query See WP_User_Query::prepare_query() */ public function __construct($query = \null) { @@ -52354,7 +53181,7 @@ public function __construct($query = \null) * * @since 4.4.0 * - * @param array $args Query vars, as passed to `WP_User_Query`. + * @param string|array $args Query vars, as passed to `WP_User_Query`. * @return array Complete query variables with undefined ones filled in with defaults. */ public static function fill_query_vars($args) @@ -52376,12 +53203,13 @@ public static function fill_query_vars($args) * @since 5.1.0 Introduced the 'meta_compare_key' parameter. * @since 5.3.0 Introduced the 'meta_type_key' parameter. * @since 5.9.0 Added 'capability', 'capability__in', and 'capability__not_in' parameters. + * @since 6.3.0 Added 'cache_results' parameter. * * @global wpdb $wpdb WordPress database abstraction object. * @global WP_Roles $wp_roles WordPress role management object. * * @param string|array $query { - * Optional. Array or string of Query parameters. + * Optional. Array or string of query parameters. * * @type int $blog_id The site ID. Default is the current site. * @type string|string[] $role An array or a comma-separated list of role names that users must match @@ -52490,6 +53318,7 @@ public static function fill_query_vars($args) * logins will be included in results. Default empty array. * @type string[] $login__not_in An array of logins to exclude. Users matching one of these * logins will not be included in results. Default empty array. + * @type bool $cache_results Whether to cache user information. Default true. * } * @phpstan-param array{ * blog_id?: int, @@ -52525,6 +53354,7 @@ public static function fill_query_vars($args) * login?: string, * login__in?: string[], * login__not_in?: string[], + * cache_results?: bool, * } $query */ public function prepare_query($query = array()) @@ -52611,6 +53441,20 @@ public function get_total() protected function parse_orderby($orderby) { } + /** + * Generate cache key. + * + * @since 6.3.0 + * + * @global wpdb $wpdb WordPress database abstraction object. + * + * @param array $args Query arguments. + * @param string $sql SQL statement. + * @return string Cache key. + */ + protected function generate_cache_key(array $args, $sql) + { + } /** * Parses an 'order' query variable and casts it to ASC or DESC as necessary. * @@ -54269,7 +55113,7 @@ public function wp_getPost($args) * Default empty array. * @type array $4 Optional. The subset of post type fields to return in the response array. * } - * @return array|IXR_Error Array contains a collection of posts. + * @return array|IXR_Error Array containing a collection of posts. * @phpstan-param array{ * 0: int, * 1: string, @@ -54925,16 +55769,17 @@ public function wp_getComment($args) /** * Retrieves comments. * - * Besides the common blog_id (unused), username, and password arguments, it takes a filter - * array as last argument. + * Besides the common blog_id (unused), username, and password arguments, + * it takes a filter array as the last argument. * * Accepted 'filter' keys are 'status', 'post_id', 'offset', and 'number'. * * The defaults are as follows: - * - 'status' - Default is ''. Filter by status (e.g., 'approve', 'hold') - * - 'post_id' - Default is ''. The post where the comment is posted. Empty string shows all comments. - * - 'number' - Default is 10. Total number of media items to retrieve. - * - 'offset' - Default is 0. See WP_Query::query() for more. + * - 'status' - Default is ''. Filter by status (e.g., 'approve', 'hold') + * - 'post_id' - Default is ''. The post where the comment is posted. + * Empty string shows all comments. + * - 'number' - Default is 10. Total number of media items to retrieve. + * - 'offset' - Default is 0. See WP_Query::query() for more. * * @since 2.7.0 * @@ -54946,8 +55791,9 @@ public function wp_getComment($args) * @type string $2 Password. * @type array $3 Optional. Query arguments. * } - * @return array|IXR_Error Contains a collection of comments. See wp_xmlrpc_server::wp_getComment() - * for a description of each item contents. + * @return array|IXR_Error Array containing a collection of comments. + * See wp_xmlrpc_server::wp_getComment() for a description + * of each item contents. * @phpstan-param array{ * 0: int, * 1: string, @@ -54988,8 +55834,8 @@ public function wp_deleteComment($args) /** * Edits a comment. * - * Besides the common blog_id (unused), username, and password arguments, it takes a - * comment_id integer and a content_struct array as last argument. + * Besides the common blog_id (unused), username, and password arguments, + * it takes a comment_id integer and a content_struct array as the last argument. * * The allowed keys in the content_struct array are: * - 'author' @@ -55254,15 +56100,16 @@ public function wp_getMediaItem($args) /** * Retrieves a collection of media library items (or attachments). * - * Besides the common blog_id (unused), username, and password arguments, it takes a filter - * array as last argument. + * Besides the common blog_id (unused), username, and password arguments, + * it takes a filter array as the last argument. * * Accepted 'filter' keys are 'parent_id', 'mime_type', 'offset', and 'number'. * * The defaults are as follows: - * - 'number' - Default is 5. Total number of media items to retrieve. - * - 'offset' - Default is 0. See WP_Query::query() for more. - * - 'parent_id' - Default is ''. The post where the media item is attached. Empty string shows all media items. 0 shows unattached media items. + * - 'number' - Default is 5. Total number of media items to retrieve. + * - 'offset' - Default is 0. See WP_Query::query() for more. + * - 'parent_id' - Default is ''. The post where the media item is attached. + * Empty string shows all media items. 0 shows unattached media items. * - 'mime_type' - Default is ''. Filter by mime type (e.g., 'image/jpeg', 'application/pdf') * * @since 3.1.0 @@ -55273,11 +56120,11 @@ public function wp_getMediaItem($args) * @type int $0 Blog ID (unused). * @type string $1 Username. * @type string $2 Password. - * @type array $3 Query arguments. + * @type array $3 Optional. Query arguments. * } - * @return array|IXR_Error Contains a collection of media items. - * See wp_xmlrpc_server::wp_getMediaItem() for - * a description of each item contents. + * @return array|IXR_Error Array containing a collection of media items. + * See wp_xmlrpc_server::wp_getMediaItem() for a description + * of each item contents. * @phpstan-param array{ * 0: int, * 1: string, @@ -55395,7 +56242,7 @@ public function wp_getPostTypes($args) * @type int $3 Post ID. * @type array $4 Optional. Fields to fetch. * } - * @return array|IXR_Error contains a collection of posts. + * @return array|IXR_Error Array containing a collection of posts. * @phpstan-param array{ * 0: int, * 1: string, @@ -55863,7 +56710,7 @@ public function mw_newMediaObject($args) } /* * MovableType API functions. - * Specs on http://www.movabletype.org/docs/mtmanual_programmatic.html + * Specs archive on http://web.archive.org/web/20050220091302/http://www.movabletype.org:80/docs/mtmanual_programmatic.html */ /** * Retrieves the post titles of recent posts. @@ -57126,12 +57973,12 @@ public function quote_identifier($identifier) /** * Prepares a SQL query for safe execution. * - * Uses sprintf()-like syntax. The following placeholders can be used in the query string: + * Uses `sprintf()`-like syntax. The following placeholders can be used in the query string: * - * - %d (integer) - * - %f (float) - * - %s (string) - * - %i (identifier, e.g. table/field names) + * - `%d` (integer) + * - `%f` (float) + * - `%s` (string) + * - `%i` (identifier, e.g. table/field names) * * All placeholders MUST be left unquoted in the query string. A corresponding argument * MUST be passed for each placeholder. @@ -57166,12 +58013,12 @@ public function quote_identifier($identifier) * from `$args` to `...$args`. * @since 6.2.0 Added `%i` for identifiers, e.g. table or field names. * Check support via `wpdb::has_cap( 'identifier_placeholders' )`. - * This preserves compatibility with sprintf(), as the C version uses + * This preserves compatibility with `sprintf()`, as the C version uses * `%d` and `$i` as a signed integer, whereas PHP only supports `%d`. * * @link https://www.php.net/sprintf Description of syntax. * - * @param string $query Query statement with sprintf()-like placeholders. + * @param string $query Query statement with `sprintf()`-like placeholders. * @param array|mixed $args The array of variables to substitute into the query's placeholders * if being called with an array of arguments, or the first variable * to substitute into the query's placeholders if being called with @@ -57414,13 +58261,13 @@ public function remove_placeholder_escape($query) * * @param string $table Table name. * @param array $data Data to insert (in column => value pairs). - * Both $data columns and $data values should be "raw" (neither should be SQL escaped). + * Both `$data` columns and `$data` values should be "raw" (neither should be SQL escaped). * Sending a null value will cause the column to be set to NULL - the corresponding * format is ignored in this case. - * @param array|string $format Optional. An array of formats to be mapped to each of the value in $data. - * If string, that format will be used for all of the values in $data. + * @param array|string $format Optional. An array of formats to be mapped to each of the value in `$data`. + * If string, that format will be used for all of the values in `$data`. * A format is one of '%d', '%f', '%s' (integer, float, string). - * If omitted, all values in $data will be treated as strings unless otherwise + * If omitted, all values in `$data` will be treated as strings unless otherwise * specified in wpdb::$field_types. Default null. * @return int|false The number of rows inserted, or false on error. */ @@ -57443,13 +58290,13 @@ public function insert($table, $data, $format = \null) * * @param string $table Table name. * @param array $data Data to insert (in column => value pairs). - * Both $data columns and $data values should be "raw" (neither should be SQL escaped). + * Both `$data` columns and `$data` values should be "raw" (neither should be SQL escaped). * Sending a null value will cause the column to be set to NULL - the corresponding * format is ignored in this case. - * @param array|string $format Optional. An array of formats to be mapped to each of the value in $data. - * If string, that format will be used for all of the values in $data. + * @param array|string $format Optional. An array of formats to be mapped to each of the value in `$data`. + * If string, that format will be used for all of the values in `$data`. * A format is one of '%d', '%f', '%s' (integer, float, string). - * If omitted, all values in $data will be treated as strings unless otherwise + * If omitted, all values in `$data` will be treated as strings unless otherwise * specified in wpdb::$field_types. Default null. * @return int|false The number of rows affected, or false on error. */ @@ -57459,7 +58306,7 @@ public function replace($table, $data, $format = \null) /** * Helper function for insert and replace. * - * Runs an insert or replace query based on $type argument. + * Runs an insert or replace query based on `$type` argument. * * @since 3.0.0 * @@ -57469,15 +58316,15 @@ public function replace($table, $data, $format = \null) * * @param string $table Table name. * @param array $data Data to insert (in column => value pairs). - * Both $data columns and $data values should be "raw" (neither should be SQL escaped). + * Both `$data` columns and `$data` values should be "raw" (neither should be SQL escaped). * Sending a null value will cause the column to be set to NULL - the corresponding * format is ignored in this case. - * @param array|string $format Optional. An array of formats to be mapped to each of the value in $data. - * If string, that format will be used for all of the values in $data. + * @param array|string $format Optional. An array of formats to be mapped to each of the value in `$data`. + * If string, that format will be used for all of the values in `$data`. * A format is one of '%d', '%f', '%s' (integer, float, string). - * If omitted, all values in $data will be treated as strings unless otherwise + * If omitted, all values in `$data` will be treated as strings unless otherwise * specified in wpdb::$field_types. Default null. - * @param string $type Optional. Type of operation. Possible values include 'INSERT' or 'REPLACE'. + * @param string $type Optional. Type of operation. Either 'INSERT' or 'REPLACE'. * Default 'INSERT'. * @return int|false The number of rows affected, or false on error. */ @@ -57722,6 +58569,11 @@ public function get_col_charset($table, $column) * * @type int $length The column length. * @type string $type One of 'byte' or 'char'. + * } + * @phpstan-return false|\WP_Error|array{ + * length: int, + * type: string, + * } */ public function get_col_length($table, $column) { @@ -61009,14 +61861,15 @@ public function active_callback() } } /** - * HTML Tag Processor: Attribute token structure class. + * HTML API: WP_HTML_Attribute_Token class * * @package WordPress * @subpackage HTML-API * @since 6.2.0 */ /** - * Data structure for the attribute token that allows to drastically improve performance. + * Core class used by the HTML tag processor as a data structure for the attribute token, + * allowing to drastically improve performance. * * This class is for internal usage of the WP_HTML_Tag_Processor class. * @@ -61086,17 +61939,18 @@ public function __construct($name, $value_start, $value_length, $start, $end, $i } } /** - * HTML Span: Represents a textual span inside an HTML document. + * HTML API: WP_HTML_Span class * * @package WordPress * @subpackage HTML-API * @since 6.2.0 */ /** - * Represents a textual span inside an HTML document. + * Core class used by the HTML tag processor to represent a textual span + * inside an HTML document. * - * This is a two-tuple in disguise, used to avoid the memory - * overhead involved in using an array for the same purpose. + * This is a two-tuple in disguise, used to avoid the memory overhead + * involved in using an array for the same purpose. * * This class is for internal usage of the WP_HTML_Tag_Processor class. * @@ -61134,6 +61988,8 @@ public function __construct($start, $end) } } /** + * HTML API: WP_HTML_Tag_Processor class + * * Scans through an HTML document to find specific tags, then * transforms those tags by adding, removing, or updating the * values of the HTML attributes within that tag (opener). @@ -61160,7 +62016,7 @@ public function __construct($start, $end) * @since 6.2.0 */ /** - * Modifies attributes in an HTML document for tags matching a query. + * Core class used to modify attributes in an HTML document for tags matching a query. * * ## Usage * @@ -61355,11 +62211,11 @@ public function __construct($start, $end) * The Tag Processor's design incorporates a "garbage-in-garbage-out" philosophy. * HTML5 specifies that certain invalid content be transformed into different forms * for display, such as removing null bytes from an input document and replacing - * invalid characters with the Unicode replacement character U+FFFD �. Where errors - * or transformations exist within the HTML5 specification, the Tag Processor leaves - * those invalid inputs untouched, passing them through to the final browser to handle. - * While this implies that certain operations will be non-spec-compliant, such as - * reading the value of an attribute with invalid content, it also preserves a + * invalid characters with the Unicode replacement character `U+FFFD` (visually "�"). + * Where errors or transformations exist within the HTML5 specification, the Tag Processor + * leaves those invalid inputs untouched, passing them through to the final browser + * to handle. While this implies that certain operations will be non-spec-compliant, + * such as reading the value of an attribute with invalid content, it also preserves a * simplicity and efficiency for handling those error cases. * * Most operations within the Tag Processor are designed to minimize the difference @@ -61597,6 +62453,17 @@ public function set_bookmark($name) public function release_bookmark($name) { } + /** + * Checks whether a bookmark with the given name exists. + * + * @since 6.3.0 + * + * @param string $bookmark_name Name to identify a bookmark that potentially exists. + * @return bool Whether that bookmark exists. + */ + public function has_bookmark($bookmark_name) + { + } /** * Move the internal cursor in the Tag Processor to a given bookmark's location. * @@ -61681,6 +62548,26 @@ function get_attribute_names_with_prefix($prefix) public function get_tag() { } + /** + * Indicates if the currently matched tag contains the self-closing flag. + * + * No HTML elements ought to have the self-closing flag and for those, the self-closing + * flag will be ignored. For void elements this is benign because they "self close" + * automatically. For non-void HTML elements though problems will appear if someone + * intends to use a self-closing element in place of that element with an empty body. + * For HTML foreign elements and custom elements the self-closing flag determines if + * they self-close or not. + * + * This function does not determine if a tag is self-closing, + * but only if the self-closing flag is present in the syntax. + * + * @since 6.3.0 + * + * @return bool Whether the currently matched tag contains the self-closing flag. + */ + public function has_self_closing_flag() + { + } /** * Indicates if the current tag token is a tag closer. * @@ -61777,14 +62664,15 @@ public function get_updated_html() } } /** - * HTML Tag Processor: Text replacement class. + * HTML API: WP_HTML_Text_Replacement class * * @package WordPress * @subpackage HTML-API * @since 6.2.0 */ /** - * Data structure used to replace existing content from start to end that allows to drastically improve performance. + * Core class used by the HTML tag processor as a data structure for replacing + * existing content from start to end, allowing to drastically improve performance. * * This class is for internal usage of the WP_HTML_Tag_Processor class. * @@ -63661,8 +64549,8 @@ public function __construct() * * @since 4.4.0 * - * @return WP_Error|null WP_Error indicates unsuccessful login, null indicates successful - * or no authentication provided + * @return WP_Error|null|true WP_Error indicates unsuccessful login, null indicates successful + * or no authentication provided */ public function check_authentication() { @@ -65420,8 +66308,8 @@ public function get_item_schema() * * @since 4.7.0 * - * @param array $data Supplied file data. - * @param array $headers HTTP headers from the request. + * @param string $data Supplied file data. + * @param array $headers HTTP headers from the request. * @return array|WP_Error Data from wp_handle_sideload(). */ protected function upload_from_data($data, $headers) @@ -65975,7 +66863,7 @@ public function get_collection_params() } } /** - * REST API: WP_REST_Block_Pattern_Catergories_Controller class + * REST API: WP_REST_Block_Pattern_Categories_Controller class * * @package WordPress * @subpackage REST_API @@ -66131,6 +67019,7 @@ protected function migrate_pattern_categories($pattern) * Prepare a raw block pattern before it gets output in a REST API response. * * @since 6.0.0 + * @since 6.3.0 Added `source` property. * * @param array $item Raw pattern as registered, before any changes. * @param WP_REST_Request $request Request object. @@ -66143,6 +67032,7 @@ public function prepare_item_for_response($item, $request) * Retrieves the block pattern schema, conforming to JSON Schema. * * @since 6.0.0 + * @since 6.3.0 Added `source` property. * * @return array Item schema data. */ @@ -66339,6 +67229,7 @@ public function get_item($request) * * @since 5.5.0 * @since 5.9.0 Renamed `$block_type` to `$item` to match parent class for PHP 8 named parameter support. + * @since 6.3.0 Added `selectors` field. * * @param WP_Block_Type $item Block type data. * @param WP_REST_Request $request Full details about the request. @@ -66362,6 +67253,7 @@ protected function prepare_links($block_type) * Retrieves the block type' schema, conforming to JSON Schema. * * @since 5.5.0 + * @since 6.3.0 Added `selectors` field. * * @return array Item schema data. */ @@ -66413,6 +67305,7 @@ public function check_read_permission($post) * Filters a response based on the context defined in the schema. * * @since 5.0.0 + * @since 6.3.0 Adds the `wp_pattern_sync_status` postmeta property to the top level of response. * * @param array $data Response data to filter. * @param string $context Context defined in the schema. @@ -66834,8 +67727,6 @@ public function __construct() * Registers the controllers routes. * * @since 5.9.0 - * - * @return void */ public function register_routes() { @@ -66959,6 +67850,7 @@ public function prepare_item_for_response($post, $request) * Prepares links for the request. * * @since 5.9.0 + * @since 6.3.0 Adds revisions count and rest URL href to version-history. * * @param integer $id ID. * @return array Links for the given post. @@ -67057,6 +67949,153 @@ public function get_theme_items($request) { } } + /** + * REST API: WP_REST_Global_Styles_Revisions_Controller class + * + * @package WordPress + * @subpackage REST_API + * @since 6.3.0 + */ + /** + * Core class used to access global styles revisions via the REST API. + * + * @since 6.3.0 + * + * @see WP_REST_Controller + */ + class WP_REST_Global_Styles_Revisions_Controller extends \WP_REST_Controller + { + /** + * Parent post type. + * + * @since 6.3.0 + * @var string + */ + protected $parent_post_type; + /** + * The base of the parent controller's route. + * + * @since 6.3.0 + * @var string + */ + protected $parent_base; + /** + * Constructor. + * + * @since 6.3.0 + */ + public function __construct() + { + } + /** + * Registers the controller's routes. + * + * @since 6.3.0 + */ + public function register_routes() + { + } + /** + * Retrieves the query params for collections. + * + * Inherits from WP_REST_Controller::get_collection_params(), + * also reflects changes to return value WP_REST_Revisions_Controller::get_collection_params(). + * + * @since 6.3.0 + * + * @return array Collection parameters. + */ + public function get_collection_params() + { + } + /** + * Returns decoded JSON from post content string, + * or a 404 if not found. + * + * @since 6.3.0 + * + * @param string $raw_json Encoded JSON from global styles custom post content. + * @return Array|WP_Error + */ + protected function get_decoded_global_styles_json($raw_json) + { + } + /** + * Returns paginated revisions of the given global styles config custom post type. + * + * The bulk of the body is taken from WP_REST_Revisions_Controller->get_items, + * but global styles does not require as many parameters. + * + * @since 6.3.0 + * + * @param WP_REST_Request $request The request instance. + * @return WP_REST_Response|WP_Error + */ + public function get_items($request) + { + } + /** + * Checks the post_date_gmt or modified_gmt and prepare any post or + * modified date for single post output. + * + * Duplicate of WP_REST_Revisions_Controller::prepare_date_response. + * + * @since 6.3.0 + * + * @param string $date_gmt GMT publication time. + * @param string|null $date Optional. Local publication time. Default null. + * @return string|null ISO8601/RFC3339 formatted datetime, otherwise null. + */ + protected function prepare_date_response($date_gmt, $date = \null) + { + } + /** + * Prepares the revision for the REST response. + * + * @since 6.3.0 + * + * @param WP_Post $post Post revision object. + * @param WP_REST_Request $request Request object. + * @return WP_REST_Response|WP_Error Response object. + */ + public function prepare_item_for_response($post, $request) + { + } + /** + * Retrieves the revision's schema, conforming to JSON Schema. + * + * @since 6.3.0 + * + * @return array Item schema data. + */ + public function get_item_schema() + { + } + /** + * Checks if a given request has access to read a single global style. + * + * @since 6.3.0 + * + * @param WP_REST_Request $request Full details about the request. + * @return true|WP_Error True if the request has read access, WP_Error object otherwise. + */ + public function get_item_permissions_check($request) + { + } + /** + * Gets the parent post, if the ID is valid. + * + * Duplicate of WP_REST_Revisions_Controller::get_parent. + * + * @since 6.3.0 + * + * @param int $parent_post_id Supplied ID. + * @return WP_Post|WP_Error Post object if ID is valid, WP_Error otherwise. + */ + protected function get_parent($parent_post_id) + { + } + } /** * REST API: WP_REST_Menu_Items_Controller class * @@ -67820,6 +68859,85 @@ public function get_item_schema() { } } + /** + * WP_REST_Navigation_Fallback_Controller class + * + * REST Controller to create/fetch a fallback Navigation Menu. + * + * @package WordPress + * @subpackage REST_API + * @since 6.3.0 + */ + /** + * REST Controller to fetch a fallback Navigation Block Menu. If needed it creates one. + * + * @since 6.3.0 + */ + class WP_REST_Navigation_Fallback_Controller extends \WP_REST_Controller + { + /** + * Constructs the controller. + * + * @since 6.3.0 + */ + public function __construct() + { + } + /** + * Registers the controllers routes. + * + * @since 6.3.0 + * + * @return void + */ + public function register_routes() + { + } + /** + * Checks if a given request has access to read fallbacks. + * + * @since 6.3.0 + * + * @param WP_REST_Request $request Full details about the request. + * @return true|WP_Error True if the request has read access, WP_Error object otherwise. + */ + public function get_item_permissions_check($request) + { + } + /** + * Gets the most appropriate fallback Navigation Menu. + * + * @since 6.3.0 + * + * @param WP_REST_Request $request Full details about the request. + * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. + */ + public function get_item($request) + { + } + /** + * Retrieves the fallbacks' schema, conforming to JSON Schema. + * + * @since 6.3.0 + * + * @return array Item schema data. + */ + public function get_item_schema() + { + } + /** + * Matches the post data to the schema we want. + * + * @since 6.3.0 + * + * @param WP_Post $item The wp_navigation Post object whose response is being prepared. + * @param WP_REST_Request $request Request object. + * @return WP_REST_Response $response The response data. + */ + public function prepare_item_for_response($item, $request) + { + } + } /** * Block Pattern Directory REST API: WP_REST_Pattern_Directory_Controller class * @@ -69259,6 +70377,7 @@ public function register_routes() * Returns the fallback template for the given slug. * * @since 6.1.0 + * @since 6.3.0 Ignore empty templates. * * @param WP_REST_Request $request The request instance. * @return WP_REST_Response|WP_Error @@ -69422,6 +70541,7 @@ protected function prepare_item_for_database($request) * * @since 5.8.0 * @since 5.9.0 Renamed `$template` to `$item` to match parent class for PHP 8 named parameter support. + * @since 6.3.0 Added `modified` property to the response. * * @param WP_Block_Template $item Template instance. * @param WP_REST_Request $request Request object. @@ -71978,18 +73098,16 @@ protected function get_users_query_args() } } /** - * WP_Style_Engine_CSS_Declarations - * - * Holds, sanitizes and prints CSS rules declarations + * Style Engine: WP_Style_Engine_CSS_Declarations class * * @package WordPress * @subpackage StyleEngine * @since 6.1.0 */ /** - * Class WP_Style_Engine_CSS_Declarations. + * Core class used for style engine CSS declarations. * - * Holds, sanitizes, processes and prints CSS declarations for the style engine. + * Holds, sanitizes, processes, and prints CSS declarations for the style engine. * * @since 6.1.0 */ @@ -72001,18 +73119,20 @@ class WP_Style_Engine_CSS_Declarations * * @since 6.1.0 * - * @var array + * @var string[] */ protected $declarations = array(); /** * Constructor for this object. * * If a `$declarations` array is passed, it will be used to populate - * the initial $declarations prop of the object by calling add_declarations(). + * the initial `$declarations` prop of the object by calling add_declarations(). * * @since 6.1.0 * - * @param string[] $declarations An associative array of CSS definitions, e.g., array( "$property" => "$value", "$property" => "$value" ). + * @param string[] $declarations Optional. An associative array of CSS definitions, + * e.g. `array( "$property" => "$value", "$property" => "$value" )`. + * Default empty array. */ public function __construct($declarations = array()) { @@ -72024,7 +73144,6 @@ public function __construct($declarations = array()) * * @param string $property The CSS property. * @param string $value The CSS value. - * * @return WP_Style_Engine_CSS_Declarations Returns the object to allow chaining methods. */ public function add_declaration($property, $value) @@ -72036,7 +73155,6 @@ public function add_declaration($property, $value) * @since 6.1.0 * * @param string $property The CSS property. - * * @return WP_Style_Engine_CSS_Declarations Returns the object to allow chaining methods. */ public function remove_declaration($property) @@ -72047,8 +73165,7 @@ public function remove_declaration($property) * * @since 6.1.0 * - * @param array $declarations An array of declarations. - * + * @param string[] $declarations An array of declarations. * @return WP_Style_Engine_CSS_Declarations Returns the object to allow chaining methods. */ public function add_declarations($declarations) @@ -72059,8 +73176,7 @@ public function add_declarations($declarations) * * @since 6.1.0 * - * @param array $properties An array of properties. - * + * @param string[] $properties Optional. An array of properties. Default empty array. * @return WP_Style_Engine_CSS_Declarations Returns the object to allow chaining methods. */ public function remove_declarations($properties = array()) @@ -72071,7 +73187,7 @@ public function remove_declarations($properties = array()) * * @since 6.1.0 * - * @return array + * @return string[] The declarations array. */ public function get_declarations() { @@ -72083,8 +73199,8 @@ public function get_declarations() * * @param string $property The CSS property. * @param string $value The value to be filtered. - * @param string $spacer The spacer between the colon and the value. Defaults to an empty string. - * + * @param string $spacer Optional. The spacer between the colon and the value. + * Default empty string. * @return string The filtered declaration or an empty string. */ protected static function filter_declaration($property, $value, $spacer = '') @@ -72095,9 +73211,10 @@ protected static function filter_declaration($property, $value, $spacer = '') * * @since 6.1.0 * - * @param bool $should_prettify Whether to add spacing, new lines and indents. - * @param number $indent_count The number of tab indents to apply to the rule. Applies if `prettify` is `true`. - * + * @param bool $should_prettify Optional. Whether to add spacing, new lines and indents. + * Default false. + * @param int $indent_count Optional. The number of tab indents to apply to the rule. + * Applies if `prettify` is `true`. Default 0. * @return string The CSS declarations. */ public function get_declarations_string($should_prettify = \false, $indent_count = 0) @@ -72109,7 +73226,6 @@ public function get_declarations_string($should_prettify = \false, $indent_count * @since 6.1.0 * * @param string $property The CSS property. - * * @return string The sanitized property name. */ protected function sanitize_property($property) @@ -72117,18 +73233,16 @@ protected function sanitize_property($property) } } /** - * WP_Style_Engine_CSS_Rule - * - * An object for CSS rules. + * Style Engine: WP_Style_Engine_CSS_Rule class * * @package WordPress * @subpackage StyleEngine * @since 6.1.0 */ /** - * Class WP_Style_Engine_CSS_Rule. + * Core class used for style engine CSS rules. * - * Holds, sanitizes, processes and prints CSS declarations for the style engine. + * Holds, sanitizes, processes, and prints CSS declarations for the style engine. * * @since 6.1.0 */ @@ -72152,13 +73266,15 @@ class WP_Style_Engine_CSS_Rule */ protected $declarations; /** - * Constructor + * Constructor. * * @since 6.1.0 * - * @param string $selector The CSS selector. - * @param string[]|WP_Style_Engine_CSS_Declarations $declarations An associative array of CSS definitions, e.g., array( "$property" => "$value", "$property" => "$value" ), + * @param string $selector Optional. The CSS selector. Default empty string. + * @param string[]|WP_Style_Engine_CSS_Declarations $declarations Optional. An associative array of CSS definitions, + * e.g. `array( "$property" => "$value", "$property" => "$value" )`, * or a WP_Style_Engine_CSS_Declarations object. + * Default empty array. */ public function __construct($selector = '', $declarations = array()) { @@ -72169,7 +73285,6 @@ public function __construct($selector = '', $declarations = array()) * @since 6.1.0 * * @param string $selector The CSS selector. - * * @return WP_Style_Engine_CSS_Rule Returns the object to allow chaining of methods. */ public function set_selector($selector) @@ -72180,9 +73295,8 @@ public function set_selector($selector) * * @since 6.1.0 * - * @param array|WP_Style_Engine_CSS_Declarations $declarations An array of declarations (property => value pairs), - * or a WP_Style_Engine_CSS_Declarations object. - * + * @param string[]|WP_Style_Engine_CSS_Declarations $declarations An array of declarations (property => value pairs), + * or a WP_Style_Engine_CSS_Declarations object. * @return WP_Style_Engine_CSS_Rule Returns the object to allow chaining of methods. */ public function add_declarations($declarations) @@ -72213,9 +73327,10 @@ public function get_selector() * * @since 6.1.0 * - * @param bool $should_prettify Whether to add spacing, new lines and indents. - * @param number $indent_count The number of tab indents to apply to the rule. Applies if `prettify` is `true`. - * + * @param bool $should_prettify Optional. Whether to add spacing, new lines and indents. + * Default false. + * @param int $indent_count Optional. The number of tab indents to apply to the rule. + * Applies if `prettify` is `true`. Default 0. * @return string */ public function get_css($should_prettify = \false, $indent_count = 0) @@ -72223,18 +73338,16 @@ public function get_css($should_prettify = \false, $indent_count = 0) } } /** - * WP_Style_Engine_CSS_Rules_Store - * - * A store for WP_Style_Engine_CSS_Rule objects. + * Style Engine: WP_Style_Engine_CSS_Rules_Store class * * @package WordPress * @subpackage StyleEngine * @since 6.1.0 */ /** - * Class WP_Style_Engine_CSS_Rules_Store. + * Core class used as a store for WP_Style_Engine_CSS_Rule objects. * - * Holds, sanitizes, processes and prints CSS declarations for the style engine. + * Holds, sanitizes, processes, and prints CSS declarations for the style engine. * * @since 6.1.0 */ @@ -72270,7 +73383,6 @@ class WP_Style_Engine_CSS_Rules_Store * @since 6.1.0 * * @param string $store_name The name of the store. - * * @return WP_Style_Engine_CSS_Rules_Store|void */ public static function get_store($store_name = 'default') @@ -72290,8 +73402,6 @@ public static function get_stores() * Clears all stores from static::$stores. * * @since 6.1.0 - * - * @return void */ public static function remove_all_stores() { @@ -72302,8 +73412,6 @@ public static function remove_all_stores() * @since 6.1.0 * * @param string $name The store name. - * - * @return void */ public function set_name($name) { @@ -72335,8 +73443,8 @@ public function get_all_rules() * @since 6.1.0 * * @param string $selector The CSS selector. - * - * @return WP_Style_Engine_CSS_Rule|void Returns a WP_Style_Engine_CSS_Rule object, or null if the selector is empty. + * @return WP_Style_Engine_CSS_Rule|void Returns a WP_Style_Engine_CSS_Rule object, + * or void if the selector is empty. */ public function add_rule($selector) { @@ -72347,26 +73455,20 @@ public function add_rule($selector) * @since 6.1.0 * * @param string $selector The CSS selector. - * - * @return void */ public function remove_rule($selector) { } } /** - * WP_Style_Engine_Processor - * - * Compiles styles from stores or collection of CSS rules. + * Style Engine: WP_Style_Engine_Processor class * * @package WordPress * @subpackage StyleEngine * @since 6.1.0 */ /** - * Class WP_Style_Engine_Processor. - * - * Compiles styles from stores or collection of CSS rules. + * Core class used to compile styles from stores or collection of CSS rules. * * @since 6.1.0 */ @@ -72393,7 +73495,6 @@ class WP_Style_Engine_Processor * @since 6.1.0 * * @param WP_Style_Engine_CSS_Rules_Store $store The store to add. - * * @return WP_Style_Engine_Processor Returns the object to allow chaining methods. */ public function add_store($store) @@ -72404,8 +73505,9 @@ public function add_store($store) * * @since 6.1.0 * - * @param WP_Style_Engine_CSS_Rule|WP_Style_Engine_CSS_Rule[] $css_rules A single, or an array of, WP_Style_Engine_CSS_Rule objects from a store or otherwise. - * + * @param WP_Style_Engine_CSS_Rule|WP_Style_Engine_CSS_Rule[] $css_rules A single, or an array of, + * WP_Style_Engine_CSS_Rule objects + * from a store or otherwise. * @return WP_Style_Engine_Processor Returns the object to allow chaining methods. */ public function add_rules($css_rules) @@ -72419,10 +73521,11 @@ public function add_rules($css_rules) * @param array $options { * Optional. An array of options. Default empty array. * - * @type bool $optimize Whether to optimize the CSS output, e.g., combine rules. Default is `false`. - * @type bool $prettify Whether to add new lines and indents to output. Default is the test of whether the global constant `SCRIPT_DEBUG` is defined. + * @type bool $optimize Whether to optimize the CSS output, e.g. combine rules. + * Default true. + * @type bool $prettify Whether to add new lines and indents to output. + * Defaults to whether the `SCRIPT_DEBUG` constant is defined. * } - * * @return string The computed CSS. * @phpstan-param array{ * optimize?: bool, @@ -72434,25 +73537,27 @@ public function get_css($options = array()) } } /** - * StyleEngine: WP_Style_Engine class - * - * This is the main class integrating all other WP_Style_Engine_* classes. + * Style Engine: WP_Style_Engine class * * @package WordPress * @subpackage StyleEngine * @since 6.1.0 */ /** - * Class WP_Style_Engine. + * The main class integrating all other WP_Style_Engine_* classes. * - * The Style Engine aims to provide a consistent API for rendering styling for blocks across both client-side and server-side applications. + * The Style Engine aims to provide a consistent API for rendering styling for blocks + * across both client-side and server-side applications. * * This class is final and should not be extended. - * This class is for internal Core usage and is not supposed to be used by extenders (plugins and/or themes). - * This is a low-level API that may need to do breaking changes. Please, use wp_style_engine_get_styles instead. + * + * This class is for internal Core usage and is not supposed to be used by extenders + * (plugins and/or themes). This is a low-level API that may need to do breaking changes. + * Please, use wp_style_engine_get_styles() instead. * * @access private * @since 6.1.0 + * @since 6.3.0 Added support for text-columns. */ #[\AllowDynamicProperties] final class WP_Style_Engine @@ -72460,30 +73565,40 @@ final class WP_Style_Engine /** * Style definitions that contain the instructions to * parse/output valid Gutenberg styles from a block's attributes. - * For every style definition, the follow properties are valid: - * - classnames => (array) an array of classnames to be returned for block styles. The key is a classname or pattern. - * A value of `true` means the classname should be applied always. Otherwise, a valid CSS property (string) - * to match the incoming value, e.g., "color" to match var:preset|color|somePresetSlug. - * - css_vars => (array) an array of key value pairs used to generate CSS var values. The key is a CSS var pattern, whose `$slug` fragment will be replaced with a preset slug. - * The value should be a valid CSS property (string) to match the incoming value, e.g., "color" to match var:preset|color|somePresetSlug. - * - property_keys => (array) array of keys whose values represent a valid CSS property, e.g., "margin" or "border". - * - path => (array) a path that accesses the corresponding style value in the block style object. - * - value_func => (string) the name of a function to generate a CSS definition array for a particular style object. The output of this function should be `array( "$property" => "$value", ... )`. + * + * For every style definition, the following properties are valid: + * + * - classnames => (array) An array of classnames to be returned for block styles. + * The key is a classname or pattern. + * A value of `true` means the classname should be applied always. + * Otherwise, a valid CSS property (string) to match the incoming value, + * e.g. "color" to match var:preset|color|somePresetSlug. + * - css_vars => (array) An array of key value pairs used to generate CSS var values. + * The key is a CSS var pattern, whose `$slug` fragment will be replaced with a preset slug. + * The value should be a valid CSS property (string) to match the incoming value, + * e.g. "color" to match var:preset|color|somePresetSlug. + * - property_keys => (array) An array of keys whose values represent a valid CSS property, + * e.g. "margin" or "border". + * - path => (array) A path that accesses the corresponding style value in the block style object. + * - value_func => (string) The name of a function to generate a CSS definition array + * for a particular style object. The output of this function should be + * `array( "$property" => "$value", ... )`. * * @since 6.1.0 * @var array */ - const BLOCK_STYLE_DEFINITIONS_METADATA = array('color' => array('text' => array('property_keys' => array('default' => 'color'), 'path' => array('color', 'text'), 'css_vars' => array('color' => '--wp--preset--color--$slug'), 'classnames' => array('has-text-color' => \true, 'has-$slug-color' => 'color')), 'background' => array('property_keys' => array('default' => 'background-color'), 'path' => array('color', 'background'), 'classnames' => array('has-background' => \true, 'has-$slug-background-color' => 'color')), 'gradient' => array('property_keys' => array('default' => 'background'), 'path' => array('color', 'gradient'), 'classnames' => array('has-background' => \true, 'has-$slug-gradient-background' => 'gradient'))), 'border' => array('color' => array('property_keys' => array('default' => 'border-color', 'individual' => 'border-%s-color'), 'path' => array('border', 'color'), 'classnames' => array('has-border-color' => \true, 'has-$slug-border-color' => 'color')), 'radius' => array('property_keys' => array('default' => 'border-radius', 'individual' => 'border-%s-radius'), 'path' => array('border', 'radius')), 'style' => array('property_keys' => array('default' => 'border-style', 'individual' => 'border-%s-style'), 'path' => array('border', 'style')), 'width' => array('property_keys' => array('default' => 'border-width', 'individual' => 'border-%s-width'), 'path' => array('border', 'width')), 'top' => array('value_func' => array(self::class, 'get_individual_property_css_declarations'), 'path' => array('border', 'top'), 'css_vars' => array('color' => '--wp--preset--color--$slug')), 'right' => array('value_func' => array(self::class, 'get_individual_property_css_declarations'), 'path' => array('border', 'right'), 'css_vars' => array('color' => '--wp--preset--color--$slug')), 'bottom' => array('value_func' => array(self::class, 'get_individual_property_css_declarations'), 'path' => array('border', 'bottom'), 'css_vars' => array('color' => '--wp--preset--color--$slug')), 'left' => array('value_func' => array(self::class, 'get_individual_property_css_declarations'), 'path' => array('border', 'left'), 'css_vars' => array('color' => '--wp--preset--color--$slug'))), 'dimensions' => array('minHeight' => array('property_keys' => array('default' => 'min-height'), 'path' => array('dimensions', 'minHeight'), 'css_vars' => array('spacing' => '--wp--preset--spacing--$slug'))), 'spacing' => array('padding' => array('property_keys' => array('default' => 'padding', 'individual' => 'padding-%s'), 'path' => array('spacing', 'padding'), 'css_vars' => array('spacing' => '--wp--preset--spacing--$slug')), 'margin' => array('property_keys' => array('default' => 'margin', 'individual' => 'margin-%s'), 'path' => array('spacing', 'margin'), 'css_vars' => array('spacing' => '--wp--preset--spacing--$slug'))), 'typography' => array('fontSize' => array('property_keys' => array('default' => 'font-size'), 'path' => array('typography', 'fontSize'), 'classnames' => array('has-$slug-font-size' => 'font-size')), 'fontFamily' => array('property_keys' => array('default' => 'font-family'), 'path' => array('typography', 'fontFamily'), 'classnames' => array('has-$slug-font-family' => 'font-family')), 'fontStyle' => array('property_keys' => array('default' => 'font-style'), 'path' => array('typography', 'fontStyle')), 'fontWeight' => array('property_keys' => array('default' => 'font-weight'), 'path' => array('typography', 'fontWeight')), 'lineHeight' => array('property_keys' => array('default' => 'line-height'), 'path' => array('typography', 'lineHeight')), 'textDecoration' => array('property_keys' => array('default' => 'text-decoration'), 'path' => array('typography', 'textDecoration')), 'textTransform' => array('property_keys' => array('default' => 'text-transform'), 'path' => array('typography', 'textTransform')), 'letterSpacing' => array('property_keys' => array('default' => 'letter-spacing'), 'path' => array('typography', 'letterSpacing')))); + const BLOCK_STYLE_DEFINITIONS_METADATA = array('color' => array('text' => array('property_keys' => array('default' => 'color'), 'path' => array('color', 'text'), 'css_vars' => array('color' => '--wp--preset--color--$slug'), 'classnames' => array('has-text-color' => \true, 'has-$slug-color' => 'color')), 'background' => array('property_keys' => array('default' => 'background-color'), 'path' => array('color', 'background'), 'classnames' => array('has-background' => \true, 'has-$slug-background-color' => 'color')), 'gradient' => array('property_keys' => array('default' => 'background'), 'path' => array('color', 'gradient'), 'classnames' => array('has-background' => \true, 'has-$slug-gradient-background' => 'gradient'))), 'border' => array('color' => array('property_keys' => array('default' => 'border-color', 'individual' => 'border-%s-color'), 'path' => array('border', 'color'), 'classnames' => array('has-border-color' => \true, 'has-$slug-border-color' => 'color')), 'radius' => array('property_keys' => array('default' => 'border-radius', 'individual' => 'border-%s-radius'), 'path' => array('border', 'radius')), 'style' => array('property_keys' => array('default' => 'border-style', 'individual' => 'border-%s-style'), 'path' => array('border', 'style')), 'width' => array('property_keys' => array('default' => 'border-width', 'individual' => 'border-%s-width'), 'path' => array('border', 'width')), 'top' => array('value_func' => array(self::class, 'get_individual_property_css_declarations'), 'path' => array('border', 'top'), 'css_vars' => array('color' => '--wp--preset--color--$slug')), 'right' => array('value_func' => array(self::class, 'get_individual_property_css_declarations'), 'path' => array('border', 'right'), 'css_vars' => array('color' => '--wp--preset--color--$slug')), 'bottom' => array('value_func' => array(self::class, 'get_individual_property_css_declarations'), 'path' => array('border', 'bottom'), 'css_vars' => array('color' => '--wp--preset--color--$slug')), 'left' => array('value_func' => array(self::class, 'get_individual_property_css_declarations'), 'path' => array('border', 'left'), 'css_vars' => array('color' => '--wp--preset--color--$slug'))), 'shadow' => array('shadow' => array('property_keys' => array('default' => 'box-shadow'), 'path' => array('shadow'), 'css_vars' => array('shadow' => '--wp--preset--shadow--$slug'))), 'dimensions' => array('minHeight' => array('property_keys' => array('default' => 'min-height'), 'path' => array('dimensions', 'minHeight'), 'css_vars' => array('spacing' => '--wp--preset--spacing--$slug'))), 'spacing' => array('padding' => array('property_keys' => array('default' => 'padding', 'individual' => 'padding-%s'), 'path' => array('spacing', 'padding'), 'css_vars' => array('spacing' => '--wp--preset--spacing--$slug')), 'margin' => array('property_keys' => array('default' => 'margin', 'individual' => 'margin-%s'), 'path' => array('spacing', 'margin'), 'css_vars' => array('spacing' => '--wp--preset--spacing--$slug'))), 'typography' => array('fontSize' => array('property_keys' => array('default' => 'font-size'), 'path' => array('typography', 'fontSize'), 'classnames' => array('has-$slug-font-size' => 'font-size')), 'fontFamily' => array('property_keys' => array('default' => 'font-family'), 'path' => array('typography', 'fontFamily'), 'classnames' => array('has-$slug-font-family' => 'font-family')), 'fontStyle' => array('property_keys' => array('default' => 'font-style'), 'path' => array('typography', 'fontStyle')), 'fontWeight' => array('property_keys' => array('default' => 'font-weight'), 'path' => array('typography', 'fontWeight')), 'lineHeight' => array('property_keys' => array('default' => 'line-height'), 'path' => array('typography', 'lineHeight')), 'textColumns' => array('property_keys' => array('default' => 'column-count'), 'path' => array('typography', 'textColumns')), 'textDecoration' => array('property_keys' => array('default' => 'text-decoration'), 'path' => array('typography', 'textDecoration')), 'textTransform' => array('property_keys' => array('default' => 'text-transform'), 'path' => array('typography', 'textTransform')), 'letterSpacing' => array('property_keys' => array('default' => 'letter-spacing'), 'path' => array('typography', 'letterSpacing')))); /** * Stores a CSS rule using the provided CSS selector and CSS declarations. * * @since 6.1.0 * * @param string $store_name A valid store key. - * @param string $css_selector When a selector is passed, the function will return a full CSS rule `$selector { ...rules }`, otherwise a concatenated string of properties and values. - * @param string[] $css_declarations An associative array of CSS definitions, e.g., array( "$property" => "$value", "$property" => "$value" ). - * - * @return void. + * @param string $css_selector When a selector is passed, the function will return + * a full CSS rule `$selector { ...rules }` + * otherwise a concatenated string of properties and values. + * @param string[] $css_declarations An associative array of CSS definitions, + * e.g. `array( "$property" => "$value", "$property" => "$value" )`. */ public static function store_css_rule($store_name, $css_selector, $css_declarations) { @@ -72494,14 +73609,14 @@ public static function store_css_rule($store_name, $css_selector, $css_declarati * @since 6.1.0 * * @param string $store_name A store key. - * - * @return WP_Style_Engine_CSS_Rules_Store + * @return WP_Style_Engine_CSS_Rules_Store|null */ public static function get_store($store_name) { } /** * Returns classnames and CSS based on the values in a styles object. + * * Return values are parsed based on the instructions in BLOCK_STYLE_DEFINITIONS_METADATA. * * @since 6.1.0 @@ -72510,21 +73625,26 @@ public static function get_store($store_name) * @param array $options { * Optional. An array of options. Default empty array. * - * @type bool $convert_vars_to_classnames Whether to skip converting incoming CSS var patterns, e.g., `var:preset||`, to var( --wp--preset--* ) values. Default `false`. - * @type string $selector Optional. When a selector is passed, the value of `$css` in the return value will comprise a full CSS rule `$selector { ...$css_declarations }`, - * otherwise, the value will be a concatenated string of CSS declarations. + * @type bool $convert_vars_to_classnames Whether to skip converting incoming CSS var patterns, + * e.g. `var:preset||`, + * to `var( --wp--preset--* )` values. Default false. + * @type string $selector Optional. When a selector is passed, + * the value of `$css` in the return value will comprise + * a full CSS rule `$selector { ...$css_declarations }`, + * otherwise, the value will be a concatenated string + * of CSS declarations. * } - * * @return array { - * @type string $classnames Classnames separated by a space. - * @type string[] $declarations An associative array of CSS definitions, e.g., array( "$property" => "$value", "$property" => "$value" ). + * @type string[] $classnames Array of class names. + * @type string[] $declarations An associative array of CSS definitions, + * e.g. `array( "$property" => "$value", "$property" => "$value" )`. * } * @phpstan-param array{ * convert_vars_to_classnames?: bool, * selector?: string, * } $options * @phpstan-return array{ - * classnames: string, + * classnames: string[], * declarations: string[], * } */ @@ -72532,13 +73652,15 @@ public static function parse_block_styles($block_styles, $options) { } /** - * Returns compiled CSS from css_declarations. + * Returns compiled CSS from CSS declarations. * * @since 6.1.0 * - * @param string[] $css_declarations An associative array of CSS definitions, e.g., array( "$property" => "$value", "$property" => "$value" ). - * @param string $css_selector When a selector is passed, the function will return a full CSS rule `$selector { ...rules }`, otherwise a concatenated string of properties and values. - * + * @param string[] $css_declarations An associative array of CSS definitions, + * e.g. `array( "$property" => "$value", "$property" => "$value" )`. + * @param string $css_selector When a selector is passed, the function will return + * a full CSS rule `$selector { ...rules }`, + * otherwise a concatenated string of properties and values. * @return string A compiled CSS string. */ public static function compile_css($css_declarations, $css_selector) @@ -72549,16 +73671,22 @@ public static function compile_css($css_declarations, $css_selector) * * @since 6.1.0 * - * @param WP_Style_Engine_CSS_Rule[] $css_rules An array of WP_Style_Engine_CSS_Rule objects from a store or otherwise. + * @param WP_Style_Engine_CSS_Rule[] $css_rules An array of WP_Style_Engine_CSS_Rule objects + * from a store or otherwise. * @param array $options { * Optional. An array of options. Default empty array. * - * @type bool $optimize Whether to optimize the CSS output, e.g., combine rules. Default is `false`. - * @type bool $prettify Whether to add new lines and indents to output. Default is the test of whether the global constant `SCRIPT_DEBUG` is defined. + * @type string|null $context An identifier describing the origin of the style object, + * e.g. 'block-supports' or 'global-styles'. Default 'block-supports'. + * When set, the style engine will attempt to store the CSS rules. + * @type bool $optimize Whether to optimize the CSS output, e.g. combine rules. + * Default true. + * @type bool $prettify Whether to add new lines and indents to output. + * Defaults to whether the `SCRIPT_DEBUG` constant is defined. * } - * * @return string A compiled stylesheet from stored CSS rules. * @phpstan-param array{ + * context?: string|null, * optimize?: bool, * prettify?: bool, * } $options @@ -74129,7 +75257,7 @@ public function __construct() { } /** - * Add hooks for enqueueing assets when registering all widget instances of this widget class. + * Adds hooks for enqueueing assets when registering all widget instances of this widget class. * * @param int $number Optional. The unique order number of this widget instance * compared to other instances of the same class. Default -1. @@ -74188,7 +75316,7 @@ public function widget($args, $instance) { } /** - * Inject max-width and remove height for videos too constrained to fit inside sidebars on frontend. + * Injects max-width and removes height for videos too constrained to fit inside sidebars on frontend. * * @since 4.9.0 * @@ -74214,7 +75342,7 @@ public function update($new_instance, $old_instance) { } /** - * Enqueue preview scripts. + * Enqueues preview scripts. * * These scripts normally are enqueued just-in-time when a playlist shortcode is used. * However, in the customizer, a playlist shortcode may be used in a text widget and @@ -74249,7 +75377,7 @@ public function form($instance) { } /** - * Render form template scripts. + * Renders form template scripts. * * @since 4.8.0 * @since 4.9.0 The method is now static. @@ -74287,7 +75415,7 @@ function export_add_js() { } /** - * Create the date options fields for exporting a given post type. + * Creates the date options fields for exporting a given post type. * * @global wpdb $wpdb WordPress database abstraction object. * @global WP_Locale $wp_locale WordPress date and time locale object. @@ -74310,7 +75438,7 @@ function export_date_options($post_type = 'post') // No-privilege Ajax handlers. // /** - * Ajax handler for the Heartbeat API in the no-privilege context. + * Handles the Heartbeat API in the no-privilege context via AJAX . * * Runs when the user is not logged in. * @@ -74323,7 +75451,7 @@ function wp_ajax_nopriv_heartbeat() // GET-based Ajax handlers. // /** - * Ajax handler for fetching a list table. + * Handles fetching a list table via AJAX. * * @since 3.1.0 */ @@ -74331,7 +75459,7 @@ function wp_ajax_fetch_list() { } /** - * Ajax handler for tag search. + * Handles tag search via AJAX. * * @since 3.1.0 */ @@ -74339,7 +75467,7 @@ function wp_ajax_ajax_tag_search() { } /** - * Ajax handler for compression testing. + * Handles compression testing via AJAX. * * @since 3.1.0 */ @@ -74347,7 +75475,7 @@ function wp_ajax_wp_compression_test() { } /** - * Ajax handler for image editor previews. + * Handles image editor previews via AJAX. * * @since 3.1.0 */ @@ -74355,7 +75483,7 @@ function wp_ajax_imgedit_preview() { } /** - * Ajax handler for oEmbed caching. + * Handles oEmbed caching via AJAX. * * @since 3.1.0 * @@ -74365,7 +75493,7 @@ function wp_ajax_oembed_cache() { } /** - * Ajax handler for user autocomplete. + * Handles user autocomplete via AJAX. * * @since 3.4.0 */ @@ -74381,7 +75509,7 @@ function wp_ajax_get_community_events() { } /** - * Ajax handler for dashboard widgets. + * Handles dashboard widgets via AJAX. * * @since 3.4.0 */ @@ -74389,7 +75517,7 @@ function wp_ajax_dashboard_widgets() { } /** - * Ajax handler for Customizer preview logged-in status. + * Handles Customizer preview logged-in status via AJAX. * * @since 3.4.0 */ @@ -74417,7 +75545,7 @@ function _wp_ajax_delete_comment_response($comment_id, $delta = -1) // POST-based Ajax handlers. // /** - * Ajax handler for adding a hierarchical term. + * Handles adding a hierarchical term via AJAX. * * @since 3.1.0 * @access private @@ -74426,7 +75554,7 @@ function _wp_ajax_add_hierarchical_term() { } /** - * Ajax handler for deleting a comment. + * Handles deleting a comment via AJAX. * * @since 3.1.0 */ @@ -74434,7 +75562,7 @@ function wp_ajax_delete_comment() { } /** - * Ajax handler for deleting a tag. + * Handles deleting a tag via AJAX. * * @since 3.1.0 */ @@ -74442,7 +75570,7 @@ function wp_ajax_delete_tag() { } /** - * Ajax handler for deleting a link. + * Handles deleting a link via AJAX. * * @since 3.1.0 */ @@ -74450,7 +75578,7 @@ function wp_ajax_delete_link() { } /** - * Ajax handler for deleting meta. + * Handles deleting meta via AJAX. * * @since 3.1.0 */ @@ -74458,7 +75586,7 @@ function wp_ajax_delete_meta() { } /** - * Ajax handler for deleting a post. + * Handles deleting a post via AJAX. * * @since 3.1.0 * @@ -74468,7 +75596,7 @@ function wp_ajax_delete_post($action) { } /** - * Ajax handler for sending a post to the Trash. + * Handles sending a post to the Trash via AJAX. * * @since 3.1.0 * @@ -74478,7 +75606,7 @@ function wp_ajax_trash_post($action) { } /** - * Ajax handler to restore a post from the Trash. + * Handles restoring a post from the Trash via AJAX. * * @since 3.1.0 * @@ -74488,7 +75616,7 @@ function wp_ajax_untrash_post($action) { } /** - * Ajax handler to delete a page. + * Handles deleting a page via AJAX. * * @since 3.1.0 * @@ -74498,7 +75626,7 @@ function wp_ajax_delete_page($action) { } /** - * Ajax handler to dim a comment. + * Handles dimming a comment via AJAX. * * @since 3.1.0 */ @@ -74506,7 +75634,7 @@ function wp_ajax_dim_comment() { } /** - * Ajax handler for adding a link category. + * Handles adding a link category via AJAX. * * @since 3.1.0 * @@ -74516,7 +75644,7 @@ function wp_ajax_add_link_category($action) { } /** - * Ajax handler to add a tag. + * Handles adding a tag via AJAX. * * @since 3.1.0 */ @@ -74524,7 +75652,7 @@ function wp_ajax_add_tag() { } /** - * Ajax handler for getting a tagcloud. + * Handles getting a tagcloud via AJAX. * * @since 3.1.0 */ @@ -74532,7 +75660,7 @@ function wp_ajax_get_tagcloud() { } /** - * Ajax handler for getting comments. + * Handles getting comments via AJAX. * * @since 3.1.0 * @@ -74544,7 +75672,7 @@ function wp_ajax_get_comments($action) { } /** - * Ajax handler for replying to a comment. + * Handles replying to a comment via AJAX. * * @since 3.1.0 * @@ -74554,7 +75682,7 @@ function wp_ajax_replyto_comment($action) { } /** - * Ajax handler for editing a comment. + * Handles editing a comment via AJAX. * * @since 3.1.0 */ @@ -74562,7 +75690,7 @@ function wp_ajax_edit_comment() { } /** - * Ajax handler for adding a menu item. + * Handles adding a menu item via AJAX. * * @since 3.1.0 */ @@ -74570,7 +75698,7 @@ function wp_ajax_add_menu_item() { } /** - * Ajax handler for adding meta. + * Handles adding meta via AJAX. * * @since 3.1.0 */ @@ -74578,7 +75706,7 @@ function wp_ajax_add_meta() { } /** - * Ajax handler for adding a user. + * Handles adding a user via AJAX. * * @since 3.1.0 * @@ -74588,7 +75716,7 @@ function wp_ajax_add_user($action) { } /** - * Ajax handler for closed post boxes. + * Handles closed post boxes via AJAX. * * @since 3.1.0 */ @@ -74596,7 +75724,7 @@ function wp_ajax_closed_postboxes() { } /** - * Ajax handler for hidden columns. + * Handles hidden columns via AJAX. * * @since 3.1.0 */ @@ -74604,7 +75732,7 @@ function wp_ajax_hidden_columns() { } /** - * Ajax handler for updating whether to display the welcome panel. + * Handles updating whether to display the welcome panel via AJAX. * * @since 3.1.0 */ @@ -74612,7 +75740,7 @@ function wp_ajax_update_welcome_panel() { } /** - * Ajax handler for retrieving menu meta boxes. + * Handles for retrieving menu meta boxes via AJAX. * * @since 3.1.0 */ @@ -74620,7 +75748,7 @@ function wp_ajax_menu_get_metabox() { } /** - * Ajax handler for internal linking. + * Handles internal linking via AJAX. * * @since 3.1.0 */ @@ -74628,7 +75756,7 @@ function wp_ajax_wp_link_ajax() { } /** - * Ajax handler for menu locations save. + * Handles saving menu locations via AJAX. * * @since 3.1.0 */ @@ -74636,7 +75764,7 @@ function wp_ajax_menu_locations_save() { } /** - * Ajax handler for saving the meta box order. + * Handles saving the meta box order via AJAX. * * @since 3.1.0 */ @@ -74644,7 +75772,7 @@ function wp_ajax_meta_box_order() { } /** - * Ajax handler for menu quick searching. + * Handles menu quick searching via AJAX. * * @since 3.1.0 */ @@ -74652,7 +75780,7 @@ function wp_ajax_menu_quick_search() { } /** - * Ajax handler to retrieve a permalink. + * Handles retrieving a permalink via AJAX. * * @since 3.1.0 */ @@ -74660,7 +75788,7 @@ function wp_ajax_get_permalink() { } /** - * Ajax handler to retrieve a sample permalink. + * Handles retrieving a sample permalink via AJAX. * * @since 3.1.0 */ @@ -74668,7 +75796,7 @@ function wp_ajax_sample_permalink() { } /** - * Ajax handler for Quick Edit saving a post from a list table. + * Handles Quick Edit saving a post from a list table via AJAX. * * @since 3.1.0 * @@ -74678,7 +75806,7 @@ function wp_ajax_inline_save() { } /** - * Ajax handler for quick edit saving for a term. + * Handles Quick Edit saving for a term via AJAX. * * @since 3.1.0 */ @@ -74686,7 +75814,7 @@ function wp_ajax_inline_save_tax() { } /** - * Ajax handler for querying posts for the Find Posts modal. + * Handles querying posts for the Find Posts modal via AJAX. * * @see window.findPosts * @@ -74696,7 +75824,7 @@ function wp_ajax_find_posts() { } /** - * Ajax handler for saving the widgets order. + * Handles saving the widgets order via AJAX. * * @since 3.1.0 */ @@ -74704,7 +75832,7 @@ function wp_ajax_widgets_order() { } /** - * Ajax handler for saving a widget. + * Handles saving a widget via AJAX. * * @since 3.1.0 * @@ -74716,7 +75844,7 @@ function wp_ajax_save_widget() { } /** - * Ajax handler for updating a widget. + * Handles updating a widget via AJAX. * * @since 3.9.0 * @@ -74726,7 +75854,7 @@ function wp_ajax_update_widget() { } /** - * Ajax handler for removing inactive widgets. + * Handles removing inactive widgets via AJAX. * * @since 4.4.0 */ @@ -74734,7 +75862,7 @@ function wp_ajax_delete_inactive_widgets() { } /** - * Ajax handler for creating missing image sub-sizes for just uploaded images. + * Handles creating missing image sub-sizes for just uploaded images via AJAX. * * @since 5.3.0 */ @@ -74742,7 +75870,7 @@ function wp_ajax_media_create_image_subsizes() { } /** - * Ajax handler for uploading attachments + * Handles uploading attachments via AJAX. * * @since 3.3.0 */ @@ -74750,7 +75878,7 @@ function wp_ajax_upload_attachment() { } /** - * Ajax handler for image editing. + * Handles image editing via AJAX. * * @since 3.1.0 */ @@ -74758,7 +75886,7 @@ function wp_ajax_image_editor() { } /** - * Ajax handler for setting the featured image. + * Handles setting the featured image via AJAX. * * @since 3.1.0 */ @@ -74766,7 +75894,7 @@ function wp_ajax_set_post_thumbnail() { } /** - * Ajax handler for retrieving HTML for the featured image. + * Handles retrieving HTML for the featured image via AJAX. * * @since 4.6.0 */ @@ -74774,7 +75902,7 @@ function wp_ajax_get_post_thumbnail_html() { } /** - * Ajax handler for setting the featured image for an attachment. + * Handles setting the featured image for an attachment via AJAX. * * @since 4.0.0 * @@ -74784,7 +75912,7 @@ function wp_ajax_set_attachment_thumbnail() { } /** - * Ajax handler for date formatting. + * Handles formatting a date via AJAX. * * @since 3.1.0 */ @@ -74792,7 +75920,7 @@ function wp_ajax_date_format() { } /** - * Ajax handler for time formatting. + * Handles formatting a time via AJAX. * * @since 3.1.0 */ @@ -74800,7 +75928,7 @@ function wp_ajax_time_format() { } /** - * Ajax handler for saving posts from the fullscreen editor. + * Handles saving posts from the fullscreen editor via AJAX. * * @since 3.1.0 * @deprecated 4.3.0 @@ -74809,7 +75937,7 @@ function wp_ajax_wp_fullscreen_save_post() { } /** - * Ajax handler for removing a post lock. + * Handles removing a post lock via AJAX. * * @since 3.1.0 */ @@ -74817,7 +75945,7 @@ function wp_ajax_wp_remove_post_lock() { } /** - * Ajax handler for dismissing a WordPress pointer. + * Handles dismissing a WordPress pointer via AJAX. * * @since 3.1.0 */ @@ -74825,7 +75953,7 @@ function wp_ajax_dismiss_wp_pointer() { } /** - * Ajax handler for getting an attachment. + * Handles getting an attachment via AJAX. * * @since 3.5.0 */ @@ -74833,7 +75961,7 @@ function wp_ajax_get_attachment() { } /** - * Ajax handler for querying attachments. + * Handles querying attachments via AJAX. * * @since 3.5.0 */ @@ -74841,7 +75969,7 @@ function wp_ajax_query_attachments() { } /** - * Ajax handler for updating attachment attributes. + * Handles updating attachment attributes via AJAX. * * @since 3.5.0 */ @@ -74849,7 +75977,7 @@ function wp_ajax_save_attachment() { } /** - * Ajax handler for saving backward compatible attachment attributes. + * Handles saving backward compatible attachment attributes via AJAX. * * @since 3.5.0 */ @@ -74857,7 +75985,7 @@ function wp_ajax_save_attachment_compat() { } /** - * Ajax handler for saving the attachment order. + * Handles saving the attachment order via AJAX. * * @since 3.5.0 */ @@ -74865,7 +75993,7 @@ function wp_ajax_save_attachment_order() { } /** - * Ajax handler for sending an attachment to the editor. + * Handles sending an attachment to the editor via AJAX. * * Generates the HTML to send an attachment to the editor. * Backward compatible with the {@see 'media_send_to_editor'} filter @@ -74877,7 +76005,7 @@ function wp_ajax_send_attachment_to_editor() { } /** - * Ajax handler for sending a link to the editor. + * Handles sending a link to the editor via AJAX. * * Generates the HTML to send a non-image embed link to the editor. * @@ -74895,7 +76023,7 @@ function wp_ajax_send_link_to_editor() { } /** - * Ajax handler for the Heartbeat API. + * Handles the Heartbeat API via AJAX. * * Runs when the user is logged in. * @@ -74905,7 +76033,7 @@ function wp_ajax_heartbeat() { } /** - * Ajax handler for getting revision diffs. + * Handles getting revision diffs via AJAX. * * @since 3.6.0 */ @@ -74913,8 +76041,8 @@ function wp_ajax_get_revision_diffs() { } /** - * Ajax handler for auto-saving the selected color scheme for - * a user's own profile. + * Handles auto-saving the selected color scheme for + * a user's own profile via AJAX. * * @since 3.8.0 * @@ -74924,7 +76052,7 @@ function wp_ajax_save_user_color_scheme() { } /** - * Ajax handler for getting themes from themes_api(). + * Handles getting themes from themes_api() via AJAX. * * @since 3.9.0 * @@ -74935,7 +76063,7 @@ function wp_ajax_query_themes() { } /** - * Apply [embed] Ajax handlers to a string. + * Applies [embed] Ajax handlers to a string. * * @since 4.0.0 * @@ -74957,7 +76085,7 @@ function wp_ajax_parse_media_shortcode() { } /** - * Ajax handler for destroying multiple open sessions for a user. + * Handles destroying multiple open sessions for a user via AJAX. * * @since 4.1.0 */ @@ -74965,7 +76093,7 @@ function wp_ajax_destroy_sessions() { } /** - * Ajax handler for cropping an image. + * Handles cropping an image via AJAX. * * @since 4.3.0 */ @@ -74973,7 +76101,7 @@ function wp_ajax_crop_image() { } /** - * Ajax handler for generating a password. + * Handles generating a password via AJAX. * * @since 4.4.0 */ @@ -74981,7 +76109,7 @@ function wp_ajax_generate_password() { } /** - * Ajax handler for generating a password in the no-privilege context. + * Handles generating a password in the no-privilege context via AJAX. * * @since 5.7.0 */ @@ -74989,7 +76117,7 @@ function wp_ajax_nopriv_generate_password() { } /** - * Ajax handler for saving the user's WordPress.org username. + * Handles saving the user's WordPress.org username via AJAX. * * @since 4.4.0 */ @@ -74997,7 +76125,7 @@ function wp_ajax_save_wporg_username() { } /** - * Ajax handler for installing a theme. + * Handles installing a theme via AJAX. * * @since 4.6.0 * @@ -75009,7 +76137,7 @@ function wp_ajax_install_theme() { } /** - * Ajax handler for updating a theme. + * Handles updating a theme via AJAX. * * @since 4.6.0 * @@ -75021,7 +76149,7 @@ function wp_ajax_update_theme() { } /** - * Ajax handler for deleting a theme. + * Handles deleting a theme via AJAX. * * @since 4.6.0 * @@ -75033,7 +76161,7 @@ function wp_ajax_delete_theme() { } /** - * Ajax handler for installing a plugin. + * Handles installing a plugin via AJAX. * * @since 4.6.0 * @@ -75045,7 +76173,7 @@ function wp_ajax_install_plugin() { } /** - * Ajax handler for updating a plugin. + * Handles updating a plugin via AJAX. * * @since 4.2.0 * @@ -75057,7 +76185,7 @@ function wp_ajax_update_plugin() { } /** - * Ajax handler for deleting a plugin. + * Handles deleting a plugin via AJAX. * * @since 4.6.0 * @@ -75069,7 +76197,7 @@ function wp_ajax_delete_plugin() { } /** - * Ajax handler for searching plugins. + * Handles searching plugins via AJAX. * * @since 4.6.0 * @@ -75079,7 +76207,7 @@ function wp_ajax_search_plugins() { } /** - * Ajax handler for searching plugins to install. + * Handles searching plugins to install via AJAX. * * @since 4.6.0 */ @@ -75087,7 +76215,7 @@ function wp_ajax_search_install_plugins() { } /** - * Ajax handler for editing a theme or plugin file. + * Handles editing a theme or plugin file via AJAX. * * @since 4.9.0 * @@ -75097,7 +76225,7 @@ function wp_ajax_edit_theme_plugin_file() { } /** - * Ajax handler for exporting a user's personal data. + * Handles exporting a user's personal data via AJAX. * * @since 4.9.6 */ @@ -75105,7 +76233,7 @@ function wp_ajax_wp_privacy_export_personal_data() { } /** - * Ajax handler for erasing personal data. + * Handles erasing personal data via AJAX. * * @since 4.9.6 */ @@ -75113,7 +76241,7 @@ function wp_ajax_wp_privacy_erase_personal_data() { } /** - * Ajax handler for site health checks on server communication. + * Handles site health checks on server communication via AJAX. * * @since 5.2.0 * @deprecated 5.6.0 Use WP_REST_Site_Health_Controller::test_dotorg_communication() @@ -75123,7 +76251,7 @@ function wp_ajax_health_check_dotorg_communication() { } /** - * Ajax handler for site health checks on background updates. + * Handles site health checks on background updates via AJAX. * * @since 5.2.0 * @deprecated 5.6.0 Use WP_REST_Site_Health_Controller::test_background_updates() @@ -75133,7 +76261,7 @@ function wp_ajax_health_check_background_updates() { } /** - * Ajax handler for site health checks on loopback requests. + * Handles site health checks on loopback requests via AJAX. * * @since 5.2.0 * @deprecated 5.6.0 Use WP_REST_Site_Health_Controller::test_loopback_requests() @@ -75143,7 +76271,7 @@ function wp_ajax_health_check_loopback_requests() { } /** - * Ajax handler for site health check to update the result status. + * Handles site health check to update the result status via AJAX. * * @since 5.2.0 */ @@ -75151,7 +76279,7 @@ function wp_ajax_health_check_site_status_result() { } /** - * Ajax handler for site health check to get directories and database sizes. + * Handles site health check to get directories and database sizes via AJAX. * * @since 5.2.0 * @deprecated 5.6.0 Use WP_REST_Site_Health_Controller::get_directory_sizes() @@ -75161,7 +76289,7 @@ function wp_ajax_health_check_get_sizes() { } /** - * Ajax handler to renew the REST API nonce. + * Handles renewing the REST API nonce via AJAX. * * @since 5.3.0 */ @@ -75169,7 +76297,7 @@ function wp_ajax_rest_nonce() { } /** - * Ajax handler to enable or disable plugin and theme auto-updates. + * Handles enabling or disable plugin and theme auto-updates via AJAX. * * @since 5.5.0 */ @@ -75177,7 +76305,7 @@ function wp_ajax_toggle_auto_updates() { } /** - * Ajax handler sends a password reset link. + * Handles sending a password reset link via AJAX. * * @since 5.7.0 */ @@ -75191,7 +76319,7 @@ function wp_ajax_send_password_reset() * @subpackage Administration */ /** - * Add a link to using values provided in $_POST. + * Adds a link using values provided in $_POST. * * @since 2.0.0 * @@ -75228,7 +76356,7 @@ function get_default_link_to_edit() * * @global wpdb $wpdb WordPress database abstraction object. * - * @param int $link_id ID of the link to delete + * @param int $link_id ID of the link to delete. * @return true Always true. */ function wp_delete_link($link_id) @@ -75307,7 +76435,7 @@ function wp_insert_link($linkdata, $wp_error = \false) { } /** - * Update link with the specified link categories. + * Updates link with the specified link categories. * * @since 2.1.0 * @@ -75551,7 +76679,7 @@ function comment_footer_die($msg) * @since 4.4.0 */ /** - * Retrieve the contributor credits. + * Retrieves the contributor credits. * * @since 3.2.0 * @since 5.6.0 Added the `$version` and `$locale` parameters. @@ -75564,7 +76692,7 @@ function wp_credits($version = '', $locale = '') { } /** - * Retrieve the link to a contributor's WordPress.org profile page. + * Retrieves the link to a contributor's WordPress.org profile page. * * @access private * @since 3.2.0 @@ -75577,7 +76705,7 @@ function _wp_credits_add_profile_link(&$display_name, $username, $profiles) { } /** - * Retrieve the link to an external library used in WordPress. + * Retrieves the link to an external library used in WordPress. * * @access private * @since 3.2.0 @@ -75691,7 +76819,7 @@ function wp_network_dashboard_right_now() { } /** - * The Quick Draft widget display and creation of drafts. + * Displays the Quick Draft widget. * * @since 3.8.0 * @@ -75727,7 +76855,9 @@ function _wp_dashboard_recent_comments_row(&$comment, $show_date = \true) { } /** - * Callback function for Activity widget. + * Outputs the Activity widget. + * + * Callback function for {@see 'dashboard_activity'}. * * @since 3.8.0 */ @@ -75818,10 +76948,9 @@ function wp_dashboard_trigger_widget_control($widget_control_id = \false) { } /** - * The RSS dashboard widget control. + * Sets up the RSS dashboard widget control and $args to be used as input to wp_widget_rss_form(). * - * Sets up $args to be used as input to wp_widget_rss_form(). Handles POST data - * from RSS-type widgets. + * Handles POST data from RSS-type widgets. * * @since 2.5.0 * @@ -75948,7 +77077,9 @@ function wp_dashboard_site_health() { } /** - * Empty function usable by plugins to output empty dashboard widget (to be populated later by JS). + * Outputs empty dashboard widget to be populated by JS later. + * + * Usable by plugins. * * @since 2.5.0 */ @@ -76120,7 +77251,7 @@ function remove_option_update_handler($option_group, $option_name, $sanitize_cal * @deprecated 3.0.0 * * @param string $filename - **/ + */ function codepress_get_lang($filename) { } @@ -76129,7 +77260,7 @@ function codepress_get_lang($filename) * * @since 2.8.0 * @deprecated 3.0.0 - **/ + */ function codepress_footer_js() { } @@ -76138,7 +77269,7 @@ function codepress_footer_js() * * @since 2.8.0 * @deprecated 3.0.0 - **/ + */ function use_codepress() { } @@ -76886,13 +78017,16 @@ function get_home_path() * * @since 2.6.0 * @since 4.9.0 Added the `$exclusions` parameter. + * @since 6.3.0 Added the `$include_hidden` parameter. * - * @param string $folder Optional. Full path to folder. Default empty. - * @param int $levels Optional. Levels of folders to follow, Default 100 (PHP Loop limit). - * @param string[] $exclusions Optional. List of folders and files to skip. + * @param string $folder Optional. Full path to folder. Default empty. + * @param int $levels Optional. Levels of folders to follow, Default 100 (PHP Loop limit). + * @param string[] $exclusions Optional. List of folders and files to skip. + * @param bool $include_hidden Optional. Whether to include details of hidden ("." prefixed) files. + * Default false. * @return string[]|false Array of files on success, false on failure. */ - function list_files($folder = '', $levels = 100, $exclusions = array()) + function list_files($folder = '', $levels = 100, $exclusions = array(), $include_hidden = \false) { } /** @@ -78032,6 +79166,9 @@ function image_add_caption($html, $id, $caption, $title, $align, $url, $size, $a * * @access private * @since 3.4.0 + * + * @param array $matches Single regex match. + * @return string Cleaned up HTML for caption. */ function _cleanup_image_add_caption($matches) { @@ -79361,7 +80498,23 @@ function _wp_privacy_settings_filter_draft_page_titles($title, $page) * @since 5.1.0 * @since 5.1.1 Added the {@see 'wp_is_php_version_acceptable'} filter. * - * @return array|false Array of PHP version data. False on failure. + * @return array|false { + * Array of PHP version data. False on failure. + * + * @type string $recommended_version The PHP version recommended by WordPress. + * @type string $minimum_version The minimum required PHP version. + * @type bool $is_supported Whether the PHP version is actively supported. + * @type bool $is_secure Whether the PHP version receives security updates. + * @type bool $is_acceptable Whether the PHP version is still acceptable or warnings + * should be shown and an update recommended. + * } + * @phpstan-return false|array{ + * recommended_version: string, + * minimum_version: string, + * is_supported: bool, + * is_secure: bool, + * is_acceptable: bool, + * } */ function wp_check_php_version() { @@ -79511,11 +80664,16 @@ function wpmu_delete_blog($blog_id, $drop = \false) { } /** - * Deletes a user from the network and remove from all sites. + * Deletes a user and all of their posts from the network. * - * @since 3.0.0 + * This function: * - * @todo Merge with wp_delete_user()? + * - Deletes all posts (of all post types) authored by the user on all sites on the network + * - Deletes all links owned by the user on all sites on the network + * - Removes the user from all sites on the network + * - Deletes the user from the database + * + * @since 3.0.0 * * @global wpdb $wpdb WordPress database abstraction object. * @@ -79687,6 +80845,7 @@ function _thickbox_path_admin_subfolder() } /** * @param array $users + * @return bool */ function confirm_delete_users($users) { @@ -81810,6 +82969,7 @@ function taxonomy_meta_box_sanitize_cb_input($taxonomy, $terms) * of a block relevant for client registration. * * @since 5.0.0 + * @since 6.3.0 Added `selectors` field. * * @return array An associative array of registered block data. */ @@ -84096,6 +85256,7 @@ function wp_theme_update_row($theme_key, $theme) * @since 2.7.0 * * @global int $upgrading + * * @return void|false */ function maintenance_nag() @@ -84727,6 +85888,17 @@ function upgrade_590() function upgrade_600() { } + /** + * Executes changes made in WordPress 6.3.0. + * + * @ignore + * @since 6.3.0 + * + * @global int $wp_current_db_version The old (current) database version. + */ + function upgrade_630() + { + } /** * Executes network-level upgrade routines. * @@ -85089,18 +86261,21 @@ function get_users_drafts($user_id) { } /** - * Remove user and optionally reassign posts and links to another user. + * Delete user and optionally reassign posts and links to another user. * - * If the $reassign parameter is not assigned to a User ID, then all posts will - * be deleted of that user. The action {@see 'delete_user'} that is passed the User ID + * Note that on a Multisite installation the user only gets removed from the site + * and does not get deleted from the database. + * + * If the `$reassign` parameter is not assigned to a user ID, then all posts will + * be deleted of that user. The action {@see 'delete_user'} that is passed the user ID * being deleted will be run after the posts are either reassigned or deleted. - * The user meta will also be deleted that are for that User ID. + * The user meta will also be deleted that are for that user ID. * * @since 2.0.0 * * @global wpdb $wpdb WordPress database abstraction object. * - * @param int $id User ID. + * @param int $id User ID. * @param int $reassign Optional. Reassign posts and links to new User ID. * @return bool True when finished. */ @@ -85221,6 +86396,8 @@ function wp_list_widgets() * @since 3.1.0 * @access private * + * @param array $a First array. + * @param array $b Second array. * @return int */ function _sort_name_callback($a, $b) @@ -85308,7 +86485,9 @@ function display_setup_form($error = \null) { } /** - * XML callback function for the start of a new XML tag. + * Starts a new XML tag. + * + * Callback function for xml_set_element_handler(). * * @since 0.71 * @access private @@ -85327,7 +86506,9 @@ function startElement($parser, $tag_name, $attrs) { } /** - * XML callback function that is called at the end of a XML tag. + * Ends a new XML tag. + * + * Callback function for xml_set_element_handler(). * * @since 0.71 * @access private @@ -85477,7 +86658,7 @@ function list_translation_updates() { } /** - * Upgrade WordPress core display. + * Upgrades WordPress core display. * * @since 2.7.0 * @@ -85619,6 +86800,9 @@ function wp_admin_bar_site_menu($wp_admin_bar) * * @since 5.9.0 * + * @global string $_wp_current_template_id + * @since 6.3.0 Added `$_wp_current_template_id` global for editing of current template directly from the admin bar. + * * @param WP_Admin_Bar $wp_admin_bar The WP_Admin_Bar instance. */ function wp_admin_bar_edit_site_menu($wp_admin_bar) @@ -85818,11 +87002,12 @@ function _get_admin_bar_pref($context = 'front', $user = 0) * Retrieves the author of the current post. * * @since 1.5.0 + * @since 6.3.0 Returns an empty string if the author's display name is unknown. * * @global WP_User $authordata The current author's data. * * @param string $deprecated Deprecated. - * @return string|null The author's display name. + * @return string The author's display name, empty string if unknown. */ function get_the_author($deprecated = '') { @@ -85845,7 +87030,7 @@ function get_the_author($deprecated = '') * * @param string $deprecated Deprecated. * @param bool $deprecated_echo Deprecated. Use get_the_author(). Echo the string or return it. - * @return string|null The author's display name, from get_the_author(). + * @return string The author's display name, from get_the_author(). */ function the_author($deprecated = '', $deprecated_echo = \true) { @@ -85932,15 +87117,15 @@ function the_author_meta($field = '', $user_id = \false) /** * Retrieves either author's link or author's name. * - * If the author has a home page set, return an HTML link, otherwise just return the - * author's name. + * If the author has a home page set, return an HTML link, otherwise just return + * the author's name. * * @since 3.0.0 * * @global WP_User $authordata The current author's data. * - * @return string|null An HTML link if the author's url exist in user meta, - * else the result of get_the_author(). + * @return string An HTML link if the author's URL exists in user meta, + * otherwise the result of get_the_author(). */ function get_the_author_link() { @@ -85986,7 +87171,7 @@ function the_author_posts() * * @global WP_User $authordata The current author's data. * - * @return string An HTML link to the author page, or an empty string if $authordata isn't defined. + * @return string An HTML link to the author page, or an empty string if $authordata is not set. */ function get_the_author_posts_link() { @@ -86110,6 +87295,7 @@ function __clear_multi_author_cache() * Returns the list of default categories for block types. * * @since 5.8.0 + * @since 6.3.0 Reusable Blocks renamed to Patterns. * * @return array[] Array of categories for block types. */ @@ -86169,7 +87355,9 @@ function get_legacy_widget_block_editor_settings() * @since 6.0.0 * @access private * - * @global string $pagenow The filename of the current screen. + * @global string $pagenow The filename of the current screen. + * @global WP_Styles $wp_styles The WP_Styles current instance. + * @global WP_Scripts $wp_scripts The WP_Scripts current instance. * * @return array { * The block editor assets. @@ -86185,6 +87373,31 @@ function get_legacy_widget_block_editor_settings() function _wp_get_iframed_editor_assets() { } + /** + * Finds the first occurrence of a specific block in an array of blocks. + * + * @since 6.3.0 + * + * @param array $blocks Array of blocks. + * @param string $block_name Name of the block to find. + * @return array Found block, or empty array if none found. + */ + function wp_get_first_block($blocks, $block_name) + { + } + /** + * Retrieves Post Content block attributes from the current post template. + * + * @since 6.3.0 + * @access private + * + * @global int $post_ID + * + * @return array Post Content block attributes or empty array if they don't exist. + */ + function wp_get_post_content_block_attributes() + { + } /** * Returns the contextualized block editor settings for a selected editor context. * @@ -86240,6 +87453,7 @@ function get_classic_theme_supports_block_editor_settings() * Registers the core block patterns and categories. * * @since 5.5.0 + * @since 6.3.0 Added source to core block patterns. * @access private */ function _register_core_block_patterns_and_categories() @@ -86266,6 +87480,7 @@ function wp_normalize_remote_block_pattern($pattern) * @since 5.9.0 The $current_screen argument was removed. * @since 6.2.0 Normalize the pattern from the API (snake_case) to the * format expected by `register_block_pattern` (camelCase). + * @since 6.3.0 Add 'pattern-directory/core' to the pattern's 'source'. * * @param WP_Screen $deprecated Unused. Formerly the screen that the current request was triggered from. */ @@ -86278,6 +87493,7 @@ function _load_remote_block_patterns($deprecated = \null) * @since 5.9.0 * @since 6.2.0 Normalized the pattern from the API (snake_case) to the * format expected by `register_block_pattern()` (camelCase). + * @since 6.3.0 Add 'pattern-directory/featured' to the pattern's 'source'. */ function _load_remote_featured_patterns() { @@ -86289,6 +87505,7 @@ function _load_remote_featured_patterns() * @since 6.0.0 * @since 6.2.0 Normalized the pattern from the API (snake_case) to the * format expected by `register_block_pattern()` (camelCase). + * @since 6.3.0 Add 'pattern-directory/theme' to the pattern's 'source'. * @access private */ function _register_remote_theme_patterns() @@ -86514,206 +87731,6 @@ function wp_register_dimensions_support($block_type) function wp_apply_dimensions_support($block_type, $block_attributes) { } - /** - * Duotone block support flag. - * - * Parts of this source were derived and modified from TinyColor, - * released under the MIT license. - * - * https://github.com/bgrins/TinyColor - * - * Copyright (c), Brian Grinstead, http://briangrinstead.com - * - * Permission is hereby granted, free of charge, to any person obtaining - * a copy of this software and associated documentation files (the - * "Software"), to deal in the Software without restriction, including - * without limitation the rights to use, copy, modify, merge, publish, - * distribute, sublicense, and/or sell copies of the Software, and to - * permit persons to whom the Software is furnished to do so, subject to - * the following conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE - * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION - * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - * @package WordPress - * @since 5.8.0 - */ - /** - * Takes input from [0, n] and returns it as [0, 1]. - * - * Direct port of TinyColor's function, lightly simplified to maintain - * consistency with TinyColor. - * - * @see https://github.com/bgrins/TinyColor - * - * @since 5.8.0 - * @access private - * - * @param mixed $n Number of unknown type. - * @param int $max Upper value of the range to bound to. - * @return float Value in the range [0, 1]. - */ - function wp_tinycolor_bound01($n, $max) - { - } - /** - * Direct port of tinycolor's boundAlpha function to maintain consistency with - * how tinycolor works. - * - * @see https://github.com/bgrins/TinyColor - * - * @since 5.9.0 - * @access private - * - * @param mixed $n Number of unknown type. - * @return float Value in the range [0,1]. - */ - function _wp_tinycolor_bound_alpha($n) - { - } - /** - * Rounds and converts values of an RGB object. - * - * Direct port of TinyColor's function, lightly simplified to maintain - * consistency with TinyColor. - * - * @see https://github.com/bgrins/TinyColor - * - * @since 5.8.0 - * @access private - * - * @param array $rgb_color RGB object. - * @return array Rounded and converted RGB object. - */ - function wp_tinycolor_rgb_to_rgb($rgb_color) - { - } - /** - * Helper function for hsl to rgb conversion. - * - * Direct port of TinyColor's function, lightly simplified to maintain - * consistency with TinyColor. - * - * @see https://github.com/bgrins/TinyColor - * - * @since 5.8.0 - * @access private - * - * @param float $p first component. - * @param float $q second component. - * @param float $t third component. - * @return float R, G, or B component. - */ - function wp_tinycolor_hue_to_rgb($p, $q, $t) - { - } - /** - * Converts an HSL object to an RGB object with converted and rounded values. - * - * Direct port of TinyColor's function, lightly simplified to maintain - * consistency with TinyColor. - * - * @see https://github.com/bgrins/TinyColor - * - * @since 5.8.0 - * @access private - * - * @param array $hsl_color HSL object. - * @return array Rounded and converted RGB object. - */ - function wp_tinycolor_hsl_to_rgb($hsl_color) - { - } - /** - * Parses hex, hsl, and rgb CSS strings using the same regex as TinyColor v1.4.2 - * used in the JavaScript. Only colors output from react-color are implemented. - * - * Direct port of TinyColor's function, lightly simplified to maintain - * consistency with TinyColor. - * - * @see https://github.com/bgrins/TinyColor - * @see https://github.com/casesandberg/react-color/ - * - * @since 5.8.0 - * @since 5.9.0 Added alpha processing. - * @access private - * - * @param string $color_str CSS color string. - * @return array RGB object. - */ - function wp_tinycolor_string_to_rgb($color_str) - { - } - /** - * Returns the prefixed id for the duotone filter for use as a CSS id. - * - * @since 5.9.1 - * @access private - * - * @param array $preset Duotone preset value as seen in theme.json. - * @return string Duotone filter CSS id. - */ - function wp_get_duotone_filter_id($preset) - { - } - /** - * Returns the CSS filter property url to reference the rendered SVG. - * - * @since 5.9.0 - * @since 6.1.0 Allow unset for preset colors. - * @access private - * - * @param array $preset Duotone preset value as seen in theme.json. - * @return string Duotone CSS filter property url value. - */ - function wp_get_duotone_filter_property($preset) - { - } - /** - * Returns the duotone filter SVG string for the preset. - * - * @since 5.9.1 - * @access private - * - * @param array $preset Duotone preset value as seen in theme.json. - * @return string Duotone SVG filter. - */ - function wp_get_duotone_filter_svg($preset) - { - } - /** - * Registers the style and colors block attributes for block types that support it. - * - * @since 5.8.0 - * @access private - * - * @param WP_Block_Type $block_type Block Type. - */ - function wp_register_duotone_support($block_type) - { - } - /** - * Renders out the duotone stylesheet and SVG. - * - * @since 5.8.0 - * @since 6.1.0 Allow unset for preset colors. - * @access private - * - * @param string $block_content Rendered block content. - * @param array $block Block object. - * @return string Filtered block content. - */ - function wp_render_duotone_support($block_content, $block) - { - } /** * Elements styles block support. * @@ -86801,10 +87818,26 @@ function wp_apply_generated_classname_support($block_type) * @package WordPress * @since 5.8.0 */ + /** + * Returns layout definitions, keyed by layout type. + * + * Provides a common definition of slugs, classnames, base styles, and spacing styles for each layout type. + * When making changes or additions to layout definitions, the corresponding JavaScript definitions should + * also be updated. + * + * @since 6.3.0 + * @access private + * + * @return array[] Layout definitions. + */ + function wp_get_layout_definitions() + { + } /** * Registers the layout block attribute for block types that support it. * * @since 5.8.0 + * @since 6.3.0 Check for layout support via the `layout` key with fallback to `__experimentalLayout`. * @access private * * @param WP_Block_Type $block_type Block Type. @@ -86817,6 +87850,7 @@ function wp_register_layout_support($block_type) * * @since 5.9.0 * @since 6.1.0 Added `$block_spacing` param, use style engine to enqueue styles. + * @since 6.3.0 Added grid layout type. * @access private * * @param string $selector CSS selector. @@ -86836,6 +87870,8 @@ function wp_get_layout_style($selector, $layout, $has_block_gap_support = \false * Renders the layout config to the block wrapper. * * @since 5.8.0 + * @since 6.3.0 Adds compound class to layout wrapper for global spacing styles. + * @since 6.3.0 Check for layout support via the `layout` key with fallback to `__experimentalLayout`. * @access private * * @param string $block_content Rendered block content. @@ -86946,6 +87982,7 @@ function _wp_add_block_level_presets_class($block_content, $block) * @internal * * @since 6.2.0 + * @since 6.3.0 Updated preset styles to use Selectors API. * @access private * * @param string|null $pre_render The pre-rendered content. Default null. @@ -86956,6 +87993,37 @@ function _wp_add_block_level_presets_class($block_content, $block) function _wp_add_block_level_preset_styles($pre_render, $block) { } + /** + * Shadow block support flag. + * + * @package WordPress + * @since 6.3.0 + */ + /** + * Registers the style and shadow block attributes for block types that support it. + * + * @since 6.3.0 + * @access private + * + * @param WP_Block_Type $block_type Block Type. + */ + function wp_register_shadow_support($block_type) + { + } + /** + * Add CSS classes and inline styles for shadow features to the incoming attributes array. + * This will be applied to the block markup in the front-end. + * + * @since 6.3.0 + * @access private + * + * @param WP_Block_Type $block_type Block type. + * @param array $block_attributes Block attributes. + * @return array Shadow CSS classes and inline styles. + */ + function wp_apply_shadow_support($block_type, $block_attributes) + { + } /** * Spacing block support flag. * @@ -87001,6 +88069,7 @@ function wp_apply_spacing_support($block_type, $block_attributes) * Registers the style and typography block attributes for block types that support it. * * @since 5.6.0 + * @since 6.3.0 Added support for text-columns. * @access private * * @param WP_Block_Type $block_type Block Type. @@ -87015,6 +88084,7 @@ function wp_register_typography_support($block_type) * * @since 5.6.0 * @since 6.1.0 Used the style engine to generate CSS and classnames. + * @since 6.3.0 Added support for text-columns. * @access private * * @param WP_Block_Type $block_type Block type. @@ -87085,6 +88155,7 @@ function wp_get_typography_value_and_unit($raw_value, $options = array()) * width and min/max font sizes. * * @since 6.1.0 + * @since 6.3.0 Checks for unsupported min/max viewport values that cause invalid clamp values. * @access private * * @param array $args { @@ -87117,6 +88188,7 @@ function wp_get_computed_fluid_typography_value($args = array()) * @since 6.1.0 * @since 6.1.1 Adjusted rules for min and max font sizes. * @since 6.2.0 Added 'settings.typography.fluid.minFontSize' support. + * @since 6.3.0 Using layout.wideSize as max viewport width, and logarithmic scale factor to calculate minimum font scale. * * @param array $preset { * Required. fontSizes preset value as seen in theme.json. @@ -87188,7 +88260,7 @@ function get_block_theme_folders($theme_stylesheet = \null) * * @since 5.9.0 * - * @return array The supported template part area values. + * @return array[] The supported template part area values. */ function get_allowed_block_template_part_areas() { @@ -87199,7 +88271,7 @@ function get_allowed_block_template_part_areas() * * @since 5.9.0 * - * @return array The default template types. + * @return array[] The default template types. */ function get_default_block_template_types() { @@ -87224,7 +88296,7 @@ function _filter_block_template_part_area($type) * @access private * * @param string $base_directory The theme's file path. - * @return array A list of paths to all template part files. + * @return string[] A list of paths to all template part files. */ function _get_block_templates_paths($base_directory) { @@ -87237,7 +88309,18 @@ function _get_block_templates_paths($base_directory) * * @param string $template_type 'wp_template' or 'wp_template_part'. * @param string $slug Template slug. - * @return array|null Template. + * @return array|null { + * Array with template metadata if $template_type is one of 'wp_template' or 'wp_template_part'. + * null otherwise. + * + * @type string $slug Template slug. + * @type string $path Template file path. + * @type string $theme Theme slug. + * @type string $type Template type. + * @type string $area Template area. Only for 'wp_template_part'. + * @type string $title Optional. Template title. + * @type string[] $postTypes Optional. List of post types that the template supports. Only for 'wp_template'. + * } */ function _get_block_template_file($template_type, $slug) { @@ -87246,12 +88329,28 @@ function _get_block_template_file($template_type, $slug) * Retrieves the template files from the theme. * * @since 5.9.0 + * @since 6.3.0 Added the `$query` parameter. * @access private * * @param string $template_type 'wp_template' or 'wp_template_part'. - * @return array Template. + * @param array $query { + * Arguments to retrieve templates. Optional, empty by default. + * + * @type array $slug__in List of slugs to include. + * @type array $slug__not_in List of slugs to skip. + * @type string $area A 'wp_template_part_area' taxonomy value to filter by (for 'wp_template_part' template type only). + * @type string $post_type Post type to get the templates for. + * } + * + * @return array Template + * @phpstan-param array{ + * slug__in?: array, + * slug__not_in?: array, + * area?: string, + * post_type?: string, + * } $query */ - function _get_block_templates_files($template_type) + function _get_block_templates_files($template_type, $query = array()) { } /** @@ -87320,6 +88419,7 @@ function _remove_theme_attribute_in_block_template_content($template_content) * Builds a unified template object based on a theme file. * * @since 5.9.0 + * @since 6.3.0 Added `modified` property to template objects. * @access private * * @param array $template_file Theme file. @@ -87365,10 +88465,11 @@ function _wp_build_title_and_description_for_taxonomy_block_template($taxonomy, * Builds a unified template object based a post Object. * * @since 5.9.0 + * @since 6.3.0 Added `modified` property to template objects. * @access private * * @param WP_Post $post Template post. - * @return WP_Block_Template|WP_Error Template. + * @return WP_Block_Template|WP_Error Template or error object. */ function _build_block_template_result_from_post($post) { @@ -87381,15 +88482,15 @@ function _build_block_template_result_from_post($post) * @param array $query { * Optional. Arguments to retrieve templates. * - * @type array $slug__in List of slugs to include. - * @type int $wp_id Post ID of customized template. - * @type string $area A 'wp_template_part_area' taxonomy value to filter by (for wp_template_part template type only). - * @type string $post_type Post type to get the templates for. + * @type string[] $slug__in List of slugs to include. + * @type int $wp_id Post ID of customized template. + * @type string $area A 'wp_template_part_area' taxonomy value to filter by (for 'wp_template_part' template type only). + * @type string $post_type Post type to get the templates for. * } * @param string $template_type 'wp_template' or 'wp_template_part'. - * @return array Templates. + * @return WP_Block_Template[] Array of block templates. * @phpstan-param array{ - * slug__in?: array, + * slug__in?: string[], * wp_id?: int, * area?: string, * post_type?: string, @@ -87403,9 +88504,9 @@ function get_block_templates($query = array(), $template_type = 'wp_template') * * @since 5.8.0 * - * @param string $id Template unique identifier (example: theme_slug//template_slug). - * @param string $template_type Optional. Template type: `'wp_template'` or '`wp_template_part'`. - * Default `'wp_template'`. + * @param string $id Template unique identifier (example: 'theme_slug//template_slug'). + * @param string $template_type Optional. Template type: 'wp_template' or 'wp_template_part'. + * Default 'wp_template'. * @return WP_Block_Template|null Template. */ function get_block_template($id, $template_type = 'wp_template') @@ -87418,9 +88519,9 @@ function get_block_template($id, $template_type = 'wp_template') * * @since 5.9.0 * - * @param string $id Template unique identifier (example: theme_slug//template_slug). - * @param string $template_type Optional. Template type: `'wp_template'` or '`wp_template_part'`. - * Default `'wp_template'`. + * @param string $id Template unique identifier (example: 'theme_slug//template_slug'). + * @param string $template_type Optional. Template type: 'wp_template' or 'wp_template_part'. + * Default 'wp_template'. * @return WP_Block_Template|null The found block template, or null if there isn't one. */ function get_block_file_template($id, $template_type = 'wp_template') @@ -87481,7 +88582,6 @@ function wp_generate_block_templates_export_file() /** * Gets the template hierarchy for the given template slug to be created. * - * * Note: Always add `index` as the last fallback template. * * @since 6.1.0 @@ -87504,7 +88604,7 @@ function get_template_hierarchy($slug, $is_custom = \false, $template_prefix = ' * @package WordPress */ /** - * Adds necessary filters to use 'wp_template' posts instead of theme template files. + * Adds necessary hooks to resolve '_wp-find-template' requests. * * @access private * @since 5.9.0 @@ -87518,8 +88618,10 @@ function _add_template_loader_filters() * Internally, this communicates the block content that needs to be used by the template canvas through a global variable. * * @since 5.8.0 + * @since 6.3.0 Added `$_wp_current_template_id` global for editing of current template directly from the admin bar. * * @global string $_wp_current_template_content + * @global string $_wp_current_template_id * * @param string $template Path to the template. See locate_template(). * @param string $type Sanitized filename without extension. @@ -87707,6 +88809,7 @@ function get_block_metadata_i18n_schema() * @since 5.7.0 Added support for `textdomain` field and i18n handling for all translatable fields. * @since 5.9.0 Added support for `variations` and `viewScript` fields. * @since 6.1.0 Added support for `render` field. + * @since 6.3.0 Added `selectors` field. * * @param string $file_or_folder Path to the JSON file with metadata definition for * the block or path to the folder where the `block.json` file is located. @@ -87727,6 +88830,7 @@ function get_block_metadata_i18n_schema() * textdomain?: string|null, * styles?: array[], * variations?: array[], + * selectors?: array, * supports?: array|null, * example?: array|null, * render_callback?: callable|null, @@ -87772,6 +88876,7 @@ function register_block_type_from_metadata($file_or_folder, $args = array()) * textdomain?: string|null, * styles?: array[], * variations?: array[], + * selectors?: array, * supports?: array|null, * example?: array|null, * render_callback?: callable|null, @@ -88000,6 +89105,18 @@ function filter_block_kses_value($value, $allowed_html, $allowed_protocols = arr function excerpt_remove_blocks($content) { } + /** + * Parses footnotes markup out of a content string, + * and renders those appropriate for the excerpt. + * + * @since 6.3.0 + * + * @param string $content The content to parse. + * @return string The parsed and filtered content. + */ + function excerpt_remove_footnotes($content) + { + } /** * Renders inner blocks from the allowed wrapper blocks * for generating an excerpt. @@ -88083,8 +89200,8 @@ function block_version($content) * @link https://developer.wordpress.org/block-editor/reference-guides/block-api/block-styles/ * * @param string $block_name Block type name including namespace. - * @param array $style_properties Array containing the properties of the style name, - * label, style (name of the stylesheet to be enqueued), + * @param array $style_properties Array containing the properties of the style name, label, + * style_handle (name of the stylesheet to be enqueued), * inline_style (string containing the CSS to be added). * @return bool True if the block style was registered with success and false otherwise. */ @@ -88233,6 +89350,16 @@ function register_block_core_archives() function render_block_core_avatar($attributes, $content, $block) { } + /** + * Generates class names and styles to apply the border support styles for + * the Avatar block. + * + * @param array $attributes The block attributes. + * @return array The border-related classnames and styles for the block. + */ + function get_block_core_avatar_border_attributes($attributes) + { + } /** * Registers the `core/avatar` block on the server. */ @@ -88469,6 +89596,8 @@ function register_block_core_comment_reply_link() /** * Function that recursively renders a list of nested comments. * + * @since 6.3.0 Changed render_block_context priority to `1`. + * * @global int $comment_depth * * @param WP_Comment[] $comments The array of comments. @@ -88694,19 +89823,25 @@ function register_block_core_cover() { } /** - * Server-side rendering of the `core/file` block. + * Replaces view script for the File block with version using Interactivity API. * - * @package WordPress + * @param array $metadata Block metadata as read in via block.json. + * + * @return array Filtered block type metadata. */ + function gutenberg_block_core_file_update_interactive_view_script($metadata) + { + } /** * When the `core/file` block is rendering, check if we need to enqueue the `'wp-block-file-view` script. * - * @param array $attributes The block attributes. - * @param string $content The block content. + * @param array $attributes The block attributes. + * @param string $content The block content. + * @param WP_Block $block The parsed block. * * @return string Returns the block content. */ - function render_block_core_file($attributes, $content) + function render_block_core_file($attributes, $content, $block) { } /** @@ -88715,6 +89850,144 @@ function render_block_core_file($attributes, $content) function register_block_core_file() { } + /** + * Server-side rendering of the `core/footnotes` block. + * + * @package WordPress + */ + /** + * Renders the `core/footnotes` block on the server. + * + * @since 6.3.0 + * + * @param array $attributes Block attributes. + * @param string $content Block default content. + * @param WP_Block $block Block instance. + * + * @return string Returns the HTML representing the footnotes. + */ + function render_block_core_footnotes($attributes, $content, $block) + { + } + /** + * Registers the `core/footnotes` block on the server. + * + * @since 6.3.0 + */ + function register_block_core_footnotes() + { + } + /** + * Saves the footnotes meta value to the revision. + * + * @since 6.3.0 + * + * @param int $revision_id The revision ID. + */ + function wp_save_footnotes_meta($revision_id) + { + } + /** + * Keeps track of the revision ID for "rest_after_insert_{$post_type}". + * + * @since 6.3.0 + * + * @global int $wp_temporary_footnote_revision_id The footnote revision ID. + * + * @param int $revision_id The revision ID. + */ + function wp_keep_footnotes_revision_id($revision_id) + { + } + /** + * This is a specific fix for the REST API. The REST API doesn't update + * the post and post meta in one go (through `meta_input`). While it + * does fix the `wp_after_insert_post` hook to be called correctly after + * updating meta, it does NOT fix hooks such as post_updated and + * save_post, which are normally also fired after post meta is updated + * in `wp_insert_post()`. Unfortunately, `wp_save_post_revision` is + * added to the `post_updated` action, which means the meta is not + * available at the time, so we have to add it afterwards through the + * `"rest_after_insert_{$post_type}"` action. + * + * @since 6.3.0 + * + * @global int $wp_temporary_footnote_revision_id The footnote revision ID. + * + * @param WP_Post $post The post object. + */ + function wp_add_footnotes_revisions_to_post_meta($post) + { + } + /** + * Restores the footnotes meta value from the revision. + * + * @since 6.3.0 + * + * @param int $post_id The post ID. + * @param int $revision_id The revision ID. + */ + function wp_restore_footnotes_from_revision($post_id, $revision_id) + { + } + /** + * Adds the footnotes field to the revision. + * + * @since 6.3.0 + * + * @param array $fields The revision fields. + * @return array The revision fields. + */ + function wp_add_footnotes_to_revision($fields) + { + } + /** + * Gets the footnotes field from the revision. + * + * @since 6.3.0 + * + * @param string $revision_field The field value, but $revision->$field + * (footnotes) does not exist. + * @param string $field The field name, in this case "footnotes". + * @param object $revision The revision object to compare against. + * @return string The field value. + */ + function wp_get_footnotes_from_revision($revision_field, $field, $revision) + { + } + /** + * The REST API autosave endpoint doesn't save meta, so we can use the + * `wp_creating_autosave` when it updates an exiting autosave, and + * `_wp_put_post_revision` when it creates a new autosave. + * + * @since 6.3.0 + * + * @param int|array $autosave The autosave ID or array. + */ + function _wp_rest_api_autosave_meta($autosave) + { + } + /** + * This is a workaround for the autosave endpoint returning early if the + * revision field are equal. The problem is that "footnotes" is not real + * revision post field, so there's nothing to compare against. + * + * This trick sets the "footnotes" field (value doesn't matter), which will + * cause the autosave endpoint to always update the latest revision. That should + * be fine, it should be ok to update the revision even if nothing changed. Of + * course, this is temporary fix. + * + * @since 6.3.0 + * + * @param WP_Post $prepared_post The prepared post object. + * @param WP_REST_Request $request The request object. + * + * See https://github.com/WordPress/wordpress-develop/blob/2103cb9966e57d452c94218bbc3171579b536a40/src/wp-includes/rest-api/endpoints/class-wp-rest-autosaves-controller.php#L365-L384. + * See https://github.com/WordPress/wordpress-develop/blob/2103cb9966e57d452c94218bbc3171579b536a40/src/wp-includes/rest-api/endpoints/class-wp-rest-autosaves-controller.php#L219. + */ + function _wp_rest_api_force_autosave_difference($prepared_post, $request) + { + } /** * Server-side rendering of the `core/gallery` block. * @@ -88859,6 +90132,18 @@ function render_block_core_image($attributes, $content) function register_block_core_image() { } + /** + * Registers core block style handles. + * + * While {@see register_block_style_handle()} is typically used for that, the way it is + * implemented is inefficient for core block styles. Registering those style handles here + * avoids unnecessary logic and filesystem lookups in the other function. + * + * @since 6.3.0 + */ + function register_core_block_style_handles() + { + } /** * Registers core block types using metadata files. * Dynamic core blocks are registered separately. @@ -89098,9 +90383,6 @@ function register_block_core_navigation_link() * @param bool $is_sub_menu Whether the block is a sub-menu. * @return array Colors CSS classes and inline styles. */ - function block_core_navigation_submenu_build_css_colors($context, $attributes, $is_sub_menu = \false) - { - } /** * Build an array with CSS classes and inline styles defining the font sizes * which will be applied to the navigation markup in the front-end. @@ -89161,17 +90443,44 @@ function block_core_navigation_sort_menu_items_by_parent_id($menu_items) { } /** - * Turns menu item data into a nested array of parsed blocks + * Add Interactivity API directives to the navigation-submenu and page-list blocks markup using the Tag Processor + * The final HTML of the navigation-submenu and the page-list blocks will look similar to this: * - * @param array $menu_items An array of menu items that represent - * an individual level of a menu. - * @param array $menu_items_by_parent_id An array keyed by the id of the - * parent menu where each element is an - * array of menu items that belong to - * that parent. - * @return array An array of parsed block data. + *
  • + * + * Title + *
      + * SUBMENU ITEMS + *
    + *
  • + * + * @param string $w Markup of the navigation block. + * @param array $block_attributes Block attributes. + * + * @return string Submenu markup with the directives injected. */ - function block_core_navigation_parse_blocks_from_menu_items($menu_items, $menu_items_by_parent_id) + function block_core_navigation_add_directives_to_submenu($w, $block_attributes) + { + } + /** + * Replaces view script for the Navigation block with version using Interactivity API. + * + * @param array $metadata Block metadata as read in via block.json. + * + * @return array Filtered block type metadata. + */ + function gutenberg_block_core_navigation_update_interactive_view_script($metadata) { } /** @@ -89204,39 +90513,6 @@ function block_core_navigation_build_css_font_sizes($attributes) function block_core_navigation_render_submenu_icon() { } - /** - * Get the classic navigation menu to use as a fallback. - * - * @return object WP_Term The classic navigation. - */ - function block_core_navigation_get_classic_menu_fallback() - { - } - /** - * Converts a classic navigation to blocks. - * - * @param object $classic_nav_menu WP_Term The classic navigation object to convert. - * @return array the normalized parsed blocks. - */ - function block_core_navigation_get_classic_menu_fallback_blocks($classic_nav_menu) - { - } - /** - * If there's a the classic menu then use it as a fallback. - * - * @return array the normalized parsed blocks. - */ - function block_core_navigation_maybe_use_classic_menu_fallback() - { - } - /** - * Finds the most recently published `wp_navigation` Post. - * - * @return WP_Post|null the first non-empty Navigation or null. - */ - function block_core_navigation_get_most_recently_published_navigation() - { - } /** * Filter out empty "null" blocks from the block list. * 'parse_blocks' includes a null block with '\n\n' as the content when @@ -89321,6 +90597,74 @@ function register_block_core_navigation() function block_core_navigation_typographic_presets_backcompatibility($parsed_block) { } + /** + * Turns menu item data into a nested array of parsed blocks + * + * @deprecated 6.3.0 Use WP_Navigation_Fallback::parse_blocks_from_menu_items() instead. + * + * @param array $menu_items An array of menu items that represent + * an individual level of a menu. + * @param array $menu_items_by_parent_id An array keyed by the id of the + * parent menu where each element is an + * array of menu items that belong to + * that parent. + * @return array An array of parsed block data. + */ + function block_core_navigation_parse_blocks_from_menu_items($menu_items, $menu_items_by_parent_id) + { + } + /** + * Get the classic navigation menu to use as a fallback. + * + * @deprecated 6.3.0 Use WP_Navigation_Fallback::get_classic_menu_fallback() instead. + * + * @return object WP_Term The classic navigation. + */ + function block_core_navigation_get_classic_menu_fallback() + { + } + /** + * Converts a classic navigation to blocks. + * + * @deprecated 6.3.0 Use WP_Navigation_Fallback::get_classic_menu_fallback_blocks() instead. + * + * @param object $classic_nav_menu WP_Term The classic navigation object to convert. + * @return array the normalized parsed blocks. + */ + function block_core_navigation_get_classic_menu_fallback_blocks($classic_nav_menu) + { + } + /** + * If there's a classic menu then use it as a fallback. + * + * @deprecated 6.3.0 Use WP_Navigation_Fallback::create_classic_menu_fallback() instead. + * + * @return array the normalized parsed blocks. + */ + function block_core_navigation_maybe_use_classic_menu_fallback() + { + } + /** + * Finds the most recently published `wp_navigation` Post. + * + * @deprecated 6.3.0 Use WP_Navigation_Fallback::get_most_recently_published_navigation() instead. + * + * @return WP_Post|null the first non-empty Navigation or null. + */ + function block_core_navigation_get_most_recently_published_navigation() + { + } + /** + * Server-side rendering of the `core/page-list-item` block. + * + * @package WordPress + */ + /** + * Registers the `core/page-list-item` block on server. + */ + function register_block_core_page_list_item() + { + } /** * Server-side rendering of the `core/pages` block. * @@ -89409,6 +90753,8 @@ function register_block_core_pattern() /** * Renders the `core/pattern` block on the server. * + * @since 6.3.0 Backwards compatibility: blocks with no `syncStatus` attribute do not receive block wrapper. + * * @param array $attributes Block attributes. * * @return string Returns the output of the pattern. @@ -89662,6 +91008,8 @@ function block_core_post_template_uses_featured_image($inner_blocks) /** * Renders the `core/post-template` block on the server. * + * @since 6.3.0 Changed render_block_context priority to `1`. + * * @param array $attributes Block attributes. * @param string $content Block default content. * @param WP_Block $block Block instance. @@ -89707,6 +91055,8 @@ function register_block_core_post_terms() /** * Renders the `core/post-title` block on the server. * + * @since 6.3.0 Omitting the $post argument from the `get_the_title`. + * * @param array $attributes Block attributes. * @param string $content Block default content. * @param WP_Block $block Block instance. @@ -89921,11 +91271,15 @@ function register_block_core_rss() /** * Dynamically renders the `core/search` block. * - * @param array $attributes The block attributes. + * @since 6.3.0 Using block.json `viewScript` to register script, and update `view_script_handles()` only when needed. + * + * @param array $attributes The block attributes. + * @param string $content The saved content. + * @param WP_Block $block The parsed block. * * @return string The search block markup. */ - function render_block_core_search($attributes) + function render_block_core_search($attributes, $content, $block) { } /** @@ -90243,6 +91597,16 @@ function block_core_social_link_services($service = '', $field = '') function block_core_social_link_get_color_styles($context) { } + /** + * Returns CSS classes for icon and icon background colors. + * + * @param array $context Block context passed to Social Sharing Link. + * + * @return string CSS classes for link's icon and background colors. + */ + function block_core_social_link_get_color_classes($context) + { + } /** * Server-side rendering of the `core/tag-cloud` block. * @@ -90282,9 +91646,11 @@ function render_block_core_template_part($attributes) /** * Returns an array of area variation objects for the template part block. * + * @param array $instance_variations The variations for instances. + * * @return array Array containing the block variation objects. */ - function build_template_part_block_area_variations() + function build_template_part_block_area_variations($instance_variations) { } /** @@ -92343,6 +93709,8 @@ function _make_cat_compat(&$category) * WordPress autoloader for SimplePie. * * @since 3.5.0 + * + * @param string $class Class name. */ function wp_simplepie_autoload($class) { @@ -92390,11 +93758,11 @@ function unregister_block_pattern_category($category_name) * description?: string, * viewportWidth?: int, * inserter?: bool, - * categories?: array, - * keywords?: array, - * blockTypes?: array, - * postTypes?: array, - * templateTypes?: array, + * categories?: string[], + * keywords?: string[], + * blockTypes?: string[], + * postTypes?: string[], + * templateTypes?: string[], * } $pattern_properties See WP_Block_Patterns_Registry::register() */ function register_block_pattern($pattern_name, $pattern_properties) @@ -92502,13 +93870,13 @@ function comment_author_email($comment_id = 0) * @since 0.71 * @since 4.6.0 Added the `$comment` parameter. * - * @param string $linktext Optional. Text to display instead of the comment author's email address. - * Default empty. - * @param string $before Optional. Text or HTML to display before the email link. Default empty. - * @param string $after Optional. Text or HTML to display after the email link. Default empty. - * @param int|WP_Comment $comment Optional. Comment ID or WP_Comment object. Default is the current comment. + * @param string $link_text Optional. Text to display instead of the comment author's email address. + * Default empty. + * @param string $before Optional. Text or HTML to display before the email link. Default empty. + * @param string $after Optional. Text or HTML to display after the email link. Default empty. + * @param int|WP_Comment $comment Optional. Comment ID or WP_Comment object. Default is the current comment. */ - function comment_author_email_link($linktext = '', $before = '', $after = '', $comment = \null) + function comment_author_email_link($link_text = '', $before = '', $after = '', $comment = \null) { } /** @@ -92523,15 +93891,15 @@ function comment_author_email_link($linktext = '', $before = '', $after = '', $c * @since 2.7.0 * @since 4.6.0 Added the `$comment` parameter. * - * @param string $linktext Optional. Text to display instead of the comment author's email address. - * Default empty. - * @param string $before Optional. Text or HTML to display before the email link. Default empty. - * @param string $after Optional. Text or HTML to display after the email link. Default empty. - * @param int|WP_Comment $comment Optional. Comment ID or WP_Comment object. Default is the current comment. + * @param string $link_text Optional. Text to display instead of the comment author's email address. + * Default empty. + * @param string $before Optional. Text or HTML to display before the email link. Default empty. + * @param string $after Optional. Text or HTML to display after the email link. Default empty. + * @param int|WP_Comment $comment Optional. Comment ID or WP_Comment object. Default is the current comment. * @return string HTML markup for the comment author email link. By default, the email address is obfuscated * via the {@see 'comment_email'} filter with antispambot(). */ - function get_comment_author_email_link($linktext = '', $before = '', $after = '', $comment = \null) + function get_comment_author_email_link($link_text = '', $before = '', $after = '', $comment = \null) { } /** @@ -92615,8 +93983,8 @@ function comment_author_url($comment_id = 0) /** * Retrieves the HTML link of the URL of the author of the current comment. * - * $linktext parameter is only used if the URL does not exist for the comment - * author. If the URL does exist then the URL will be used and the $linktext + * $link_text parameter is only used if the URL does not exist for the comment + * author. If the URL does exist then the URL will be used and the $link_text * will be ignored. * * Encapsulate the HTML link between the $before and $after. So it will appear @@ -92625,17 +93993,17 @@ function comment_author_url($comment_id = 0) * @since 1.5.0 * @since 4.6.0 Added the `$comment` parameter. * - * @param string $linktext Optional. The text to display instead of the comment - * author's email address. Default empty. - * @param string $before Optional. The text or HTML to display before the email link. - * Default empty. - * @param string $after Optional. The text or HTML to display after the email link. - * Default empty. - * @param int|WP_Comment $comment Optional. Comment ID or WP_Comment object. - * Default is the current comment. + * @param string $link_text Optional. The text to display instead of the comment + * author's email address. Default empty. + * @param string $before Optional. The text or HTML to display before the email link. + * Default empty. + * @param string $after Optional. The text or HTML to display after the email link. + * Default empty. + * @param int|WP_Comment $comment Optional. Comment ID or WP_Comment object. + * Default is the current comment. * @return string The HTML link between the $before and $after parameters. */ - function get_comment_author_url_link($linktext = '', $before = '', $after = '', $comment = 0) + function get_comment_author_url_link($link_text = '', $before = '', $after = '', $comment = 0) { } /** @@ -92644,16 +94012,16 @@ function get_comment_author_url_link($linktext = '', $before = '', $after = '', * @since 0.71 * @since 4.6.0 Added the `$comment` parameter. * - * @param string $linktext Optional. Text to display instead of the comment author's - * email address. Default empty. - * @param string $before Optional. Text or HTML to display before the email link. - * Default empty. - * @param string $after Optional. Text or HTML to display after the email link. - * Default empty. - * @param int|WP_Comment $comment Optional. Comment ID or WP_Comment object. - * Default is the current comment. + * @param string $link_text Optional. Text to display instead of the comment author's + * email address. Default empty. + * @param string $before Optional. Text or HTML to display before the email link. + * Default empty. + * @param string $after Optional. Text or HTML to display after the email link. + * Default empty. + * @param int|WP_Comment $comment Optional. Comment ID or WP_Comment object. + * Default is the current comment. */ - function comment_author_url_link($linktext = '', $before = '', $after = '', $comment = 0) + function comment_author_url_link($link_text = '', $before = '', $after = '', $comment = 0) { } /** @@ -93196,13 +94564,13 @@ function post_reply_link($args = array(), $post = \null) * @since 2.7.0 * @since 6.2.0 Added the `$post` parameter. * - * @param string $text Optional. Text to display for cancel reply link. If empty, - * defaults to 'Click here to cancel reply'. Default empty. - * @param int|WP_Post|null $post Optional. The post the comment thread is being - * displayed for. Defaults to the current global post. + * @param string $link_text Optional. Text to display for cancel reply link. If empty, + * defaults to 'Click here to cancel reply'. Default empty. + * @param int|WP_Post|null $post Optional. The post the comment thread is being + * displayed for. Defaults to the current global post. * @return string */ - function get_cancel_comment_reply_link($text = '', $post = \null) + function get_cancel_comment_reply_link($link_text = '', $post = \null) { } /** @@ -93210,10 +94578,10 @@ function get_cancel_comment_reply_link($text = '', $post = \null) * * @since 2.7.0 * - * @param string $text Optional. Text to display for cancel reply link. If empty, + * @param string $link_text Optional. Text to display for cancel reply link. If empty, * defaults to 'Click here to cancel reply'. Default empty. */ - function cancel_comment_reply_link($text = '') + function cancel_comment_reply_link($link_text = '') { } /** @@ -93778,6 +95146,16 @@ function delete_comment_meta($comment_id, $meta_key, $meta_value = '') function get_comment_meta($comment_id, $key = '', $single = \false) { } + /** + * Queue comment meta for lazy-loading. + * + * @since 6.3.0 + * + * @param array $comment_ids List of comment IDs. + */ + function wp_lazyload_comment_meta(array $comment_ids) + { + } /** * Updates comment meta field based on comment ID. * @@ -93803,16 +95181,6 @@ function get_comment_meta($comment_id, $key = '', $single = \false) function update_comment_meta($comment_id, $meta_key, $meta_value, $prev_value = '') { } - /** - * Queues comments for metadata lazy-loading. - * - * @since 4.5.0 - * - * @param WP_Comment[] $comments Array of comment objects. - */ - function wp_queue_comments_for_comment_meta_lazyload($comments) - { - } /** * Sets the cookies used to store an unauthenticated commentator's identity. Typically used * to recall previous comments by this commentator that are still held in moderation. @@ -93941,7 +95309,7 @@ function get_comment_pages_count($comments = \null, $per_page = \null, $threaded * @type int|string $max_depth If greater than 1, comment page will be determined * for the top-level parent `$comment_id`. * Defaults to the value of the 'thread_comments_depth' option. - * } * + * } * @return int|null Comment page number or null on error. * @phpstan-param array{ * type?: string, @@ -94510,6 +95878,7 @@ function do_all_trackbacks() * @global wpdb $wpdb WordPress database abstraction object. * * @param int|WP_Post $post Post ID or object to do trackbacks on. + * @return void|false Returns false on failure. */ function do_trackbacks($post) { @@ -94640,6 +96009,7 @@ function update_comment_cache($comments, $update_meta_cache = \true) * * @since 4.4.0 * @since 6.1.0 This function is no longer marked as "private". + * @since 6.3.0 Use wp_lazyload_comment_meta() for lazy-loading of comment meta. * * @see update_comment_cache() * @global wpdb $wpdb WordPress database abstraction object. @@ -97798,26 +99168,26 @@ function _sort_nav_menu_items($a, $b) * * @since 2.6.0 * @deprecated 4.9.0 - * + * @return string */ function get_shortcut_link() { } /** - * Ajax handler for saving a post from Press This. - * - * @since 4.2.0 - * @deprecated 4.9.0 - */ + * Ajax handler for saving a post from Press This. + * + * @since 4.2.0 + * @deprecated 4.9.0 + */ function wp_ajax_press_this_save_post() { } /** - * Ajax handler for creating new category from Press This. - * - * @since 4.2.0 - * @deprecated 4.9.0 - */ + * Ajax handler for creating new category from Press This. + * + * @since 4.2.0 + * @deprecated 4.9.0 + */ function wp_ajax_press_this_add_category() { } @@ -98235,13 +99605,309 @@ function get_page_by_title($page_title, $output = \OBJECT, $post_type = 'page') * @access private * @since 6.0.0 * @deprecated 6.2.0 Site Editor's server-side redirect for missing postType and postId - * query args is removed. Thus, this function is no longer used. + * query args is removed. Thus, this function is no longer used. * * @return array|null A template object, or null if none could be found. */ function _resolve_home_block_template() { } + /** + * Displays the link to the Windows Live Writer manifest file. + * + * @link https://msdn.microsoft.com/en-us/library/bb463265.aspx + * @since 2.3.1 + * @deprecated 6.3.0 WLW manifest is no longer in use and no longer included in core, + * so the output from this function is removed. + */ + function wlwmanifest_link() + { + } + /** + * Queues comments for metadata lazy-loading. + * + * @since 4.5.0 + * @deprecated 6.3.0 Use wp_lazyload_comment_meta() instead. + * + * @param WP_Comment[] $comments Array of comment objects. + */ + function wp_queue_comments_for_comment_meta_lazyload($comments) + { + } + /** + * Gets the default value to use for a `loading` attribute on an element. + * + * This function should only be called for a tag and context if lazy-loading is generally enabled. + * + * The function usually returns 'lazy', but uses certain heuristics to guess whether the current element is likely to + * appear above the fold, in which case it returns a boolean `false`, which will lead to the `loading` attribute being + * omitted on the element. The purpose of this refinement is to avoid lazy-loading elements that are within the initial + * viewport, which can have a negative performance impact. + * + * Under the hood, the function uses {@see wp_increase_content_media_count()} every time it is called for an element + * within the main content. If the element is the very first content element, the `loading` attribute will be omitted. + * This default threshold of 3 content elements to omit the `loading` attribute for can be customized using the + * {@see 'wp_omit_loading_attr_threshold'} filter. + * + * @since 5.9.0 + * @deprecated 6.3.0 Use wp_get_loading_optimization_attributes() instead. + * @see wp_get_loading_optimization_attributes() + * + * @global WP_Query $wp_query WordPress Query object. + * + * @param string $context Context for the element for which the `loading` attribute value is requested. + * @return string|bool The default `loading` attribute value. Either 'lazy', 'eager', or a boolean `false`, to indicate + * that the `loading` attribute should be skipped. + */ + function wp_get_loading_attr_default($context) + { + } + /** + * Adds `loading` attribute to an `img` HTML tag. + * + * @since 5.5.0 + * @deprecated 6.3.0 Use wp_img_tag_add_loading_optimization_attrs() instead. + * @see wp_img_tag_add_loading_optimization_attrs() + * + * @param string $image The HTML `img` tag where the attribute should be added. + * @param string $context Additional context to pass to the filters. + * @return string Converted `img` tag with `loading` attribute added. + */ + function wp_img_tag_add_loading_attr($image, $context) + { + } + /** + * Takes input from [0, n] and returns it as [0, 1]. + * + * Direct port of TinyColor's function, lightly simplified to maintain + * consistency with TinyColor. + * + * @link https://github.com/bgrins/TinyColor + * + * @since 5.8.0 + * @deprecated 6.3.0 + * + * @access private + * + * @param mixed $n Number of unknown type. + * @param int $max Upper value of the range to bound to. + * @return float Value in the range [0, 1]. + */ + function wp_tinycolor_bound01($n, $max) + { + } + /** + * Direct port of tinycolor's boundAlpha function to maintain consistency with + * how tinycolor works. + * + * @link https://github.com/bgrins/TinyColor + * + * @since 5.9.0 + * @deprecated 6.3.0 + * + * @access private + * + * @param mixed $n Number of unknown type. + * @return float Value in the range [0,1]. + */ + function _wp_tinycolor_bound_alpha($n) + { + } + /** + * Rounds and converts values of an RGB object. + * + * Direct port of TinyColor's function, lightly simplified to maintain + * consistency with TinyColor. + * + * @link https://github.com/bgrins/TinyColor + * + * @since 5.8.0 + * @deprecated 6.3.0 + * + * @access private + * + * @param array $rgb_color RGB object. + * @return array Rounded and converted RGB object. + */ + function wp_tinycolor_rgb_to_rgb($rgb_color) + { + } + /** + * Helper function for hsl to rgb conversion. + * + * Direct port of TinyColor's function, lightly simplified to maintain + * consistency with TinyColor. + * + * @link https://github.com/bgrins/TinyColor + * + * @since 5.8.0 + * @deprecated 6.3.0 + * + * @access private + * + * @param float $p first component. + * @param float $q second component. + * @param float $t third component. + * @return float R, G, or B component. + */ + function wp_tinycolor_hue_to_rgb($p, $q, $t) + { + } + /** + * Converts an HSL object to an RGB object with converted and rounded values. + * + * Direct port of TinyColor's function, lightly simplified to maintain + * consistency with TinyColor. + * + * @link https://github.com/bgrins/TinyColor + * + * @since 5.8.0 + * @deprecated 6.3.0 + * + * @access private + * + * @param array $hsl_color HSL object. + * @return array Rounded and converted RGB object. + */ + function wp_tinycolor_hsl_to_rgb($hsl_color) + { + } + /** + * Parses hex, hsl, and rgb CSS strings using the same regex as TinyColor v1.4.2 + * used in the JavaScript. Only colors output from react-color are implemented. + * + * Direct port of TinyColor's function, lightly simplified to maintain + * consistency with TinyColor. + * + * @link https://github.com/bgrins/TinyColor + * @link https://github.com/casesandberg/react-color/ + * + * @since 5.8.0 + * @since 5.9.0 Added alpha processing. + * @deprecated 6.3.0 + * + * @access private + * + * @param string $color_str CSS color string. + * @return array RGB object. + */ + function wp_tinycolor_string_to_rgb($color_str) + { + } + /** + * Returns the prefixed id for the duotone filter for use as a CSS id. + * + * @since 5.9.1 + * @deprecated 6.3.0 + * + * @access private + * + * @param array $preset Duotone preset value as seen in theme.json. + * @return string Duotone filter CSS id. + */ + function wp_get_duotone_filter_id($preset) + { + } + /** + * Returns the CSS filter property url to reference the rendered SVG. + * + * @since 5.9.0 + * @since 6.1.0 Allow unset for preset colors. + * @deprecated 6.3.0 + * + * @access private + * + * @param array $preset Duotone preset value as seen in theme.json. + * @return string Duotone CSS filter property url value. + */ + function wp_get_duotone_filter_property($preset) + { + } + /** + * Returns the duotone filter SVG string for the preset. + * + * @since 5.9.1 + * @deprecated 6.3.0 + * + * @access private + * + * @param array $preset Duotone preset value as seen in theme.json. + * @return string Duotone SVG filter. + */ + function wp_get_duotone_filter_svg($preset) + { + } + /** + * Registers the style and colors block attributes for block types that support it. + * + * @since 5.8.0 + * @deprecated 6.3.0 Use WP_Duotone::register_duotone_support() instead. + * + * @access private + * + * @param WP_Block_Type $block_type Block Type. + */ + function wp_register_duotone_support($block_type) + { + } + /** + * Renders out the duotone stylesheet and SVG. + * + * @since 5.8.0 + * @since 6.1.0 Allow unset for preset colors. + * @deprecated 6.3.0 Use WP_Duotone::render_duotone_support() instead. + * + * @access private + * + * @param string $block_content Rendered block content. + * @param array $block Block object. + * @return string Filtered block content. + */ + function wp_render_duotone_support($block_content, $block) + { + } + /** + * Returns a string containing the SVGs to be referenced as filters (duotone). + * + * @since 5.9.1 + * @deprecated 6.3.0 SVG generation is handled on a per-block basis in block supports. + * + * @return string + */ + function wp_get_global_styles_svg_filters() + { + } + /** + * Renders the SVG filters supplied by theme.json. + * + * Note that this doesn't render the per-block user-defined + * filters which are handled by wp_render_duotone_support, + * but it should be rendered before the filtered content + * in the body to satisfy Safari's rendering quirks. + * + * @since 5.9.1 + * @deprecated 6.3.0 SVG generation is handled on a per-block basis in block supports. + */ + function wp_global_styles_render_svg_filters() + { + } + /** + * Build an array with CSS classes and inline styles defining the colors + * which will be applied to the navigation markup in the front-end. + * + * @since 5.9.0 + * @deprecated 6.3.0 This was removed from the Navigation Submenu block in favour of `wp_apply_colors_support()`. + * `wp_apply_colors_support()` returns an array with similar class and style values, + * but with different keys: `class` and `style`. + * + * @param array $context Navigation block context. + * @param array $attributes Block attributes. + * @param bool $is_sub_menu Whether the block is a sub-menu. + * @return array Colors CSS classes and inline styles. + */ + function block_core_navigation_submenu_build_css_colors($context, $attributes, $is_sub_menu = \false) + { + } /** * oEmbed API: Top-level oEmbed functionality * @@ -99182,6 +100848,7 @@ function get_feed_build_date($format) * @since 2.8.0 * * @param string $type Type of feed. Possible values include 'rss', rss2', 'atom', and 'rdf'. + * @return string Content type for specified feed type. */ function feed_content_type($type = '') { @@ -99707,6 +101374,8 @@ function utf8_uri_encode($utf8_string, $length = 0, $encode_ascii_characters = \ * * | Code | Glyph | Replacement | Description | * | -------- | ----- | ----------- | ----------------------------------------- | + * | U+018F | Ə | E | Latin capital letter Ə | + * | U+0259 | ǝ | e | Latin small letter ǝ | * | U+0218 | Ș | S | Latin capital letter S with comma below | * | U+0219 | ș | s | Latin small letter s with comma below | * | U+021A | Ț | T | Latin capital letter T with comma below | @@ -100568,7 +102237,7 @@ function sanitize_email($email) /** * Determines the difference between two timestamps. * - * The difference is returned in a human readable format such as "1 hour", + * The difference is returned in a human-readable format such as "1 hour", * "5 mins", "2 days". * * @since 1.5.0 @@ -100576,7 +102245,7 @@ function sanitize_email($email) * * @param int $from Unix timestamp from which the difference begins. * @param int $to Optional. Unix timestamp to end the time difference. Default becomes time() if not set. - * @return string Human readable time difference. + * @return string Human-readable time difference. */ function human_time_diff($from, $to = 0) { @@ -100586,11 +102255,12 @@ function human_time_diff($from, $to = 0) * * Returns a maximum of 55 words with an ellipsis appended if necessary. * - * The 55 word limit can be modified by plugins/themes using the {@see 'excerpt_length'} filter + * The 55-word limit can be modified by plugins/themes using the {@see 'excerpt_length'} filter * The ' […]' string can be modified by plugins/themes using the {@see 'excerpt_more'} filter * * @since 1.5.0 * @since 5.2.0 Added the `$post` parameter. + * @since 6.3.0 Removes footnotes markup from the excerpt content. * * @param string $text Optional. The excerpt. If set to empty, an excerpt is generated. * @param WP_Post|object|int $post Optional. WP_Post instance or Post ID/object. Default null. @@ -100651,7 +102321,7 @@ function format_for_editor($text, $default_editor = \null) /** * Performs a deep string replace operation to ensure the values in $search are no longer present. * - * Repeats the replacement operation until it no longer replaces anything so as to remove "nested" values + * Repeats the replacement operation until it no longer replaces anything to remove "nested" values * e.g. $subject = '%0%0%0DDD', $search ='%0D', $result ='' rather than the '%0%0DD' that * str_replace would return * @@ -100675,7 +102345,7 @@ function _deep_replace($search, $subject) * * NOTE: Since 4.8.3, '%' characters will be replaced with a placeholder string, * this prevents certain SQLi attacks from taking place. This change in behavior - * may cause issues for code that expects the return value of esc_sql() to be useable + * may cause issues for code that expects the return value of esc_sql() to be usable * for other purposes. * * @since 2.8.0 @@ -100750,10 +102420,10 @@ function sanitize_url($url, $protocols = \null) * * @since 1.2.2 * - * @param string $myHTML The text to be converted. + * @param string $text The text to be converted. * @return string Converted text. */ - function htmlentities2($myHTML) + function htmlentities2($text) { } /** @@ -100924,7 +102594,7 @@ function wp_pre_kses_block_attributes($content, $allowed_html, $allowed_protocol { } /** - * WordPress implementation of PHP sprintf() with filters. + * WordPress' implementation of PHP sprintf() with filters. * * @since 2.5.0 * @since 5.3.0 Formalized the existing and already documented `...$args` parameter @@ -100975,8 +102645,8 @@ function wp_html_excerpt($str, $count, $more = \null) /** * Adds a base URL to relative links in passed content. * - * By default it supports the 'src' and 'href' attributes. However this can be - * changed via the 3rd param. + * By default, this function supports the 'src' and 'href' attributes. + * However, this can be modified via the `$attrs` parameter. * * @since 2.7.0 * @@ -101005,19 +102675,19 @@ function _links_add_base($m) { } /** - * Adds a Target attribute to all links in passed content. + * Adds a target attribute to all links in passed content. * - * This function by default only applies to `` tags, however this can be - * modified by the 3rd param. + * By default, this function only applies to `` tags. + * However, this can be modified via the `$tags` parameter. * - * *NOTE:* Any current target attributed will be stripped and replaced. + * *NOTE:* Any current target attribute will be stripped and replaced. * * @since 2.7.0 * * @global string $_links_add_target * * @param string $content String to search for links in. - * @param string $target The Target to add to the links. + * @param string $target The target to add to the links. * @param string[] $tags An array of tags to apply to. * @return string The processed content. */ @@ -101918,12 +103588,14 @@ function status_header($code, $description = '') { } /** - * Gets the header information to prevent caching. + * Gets the HTTP header information to prevent caching. * * The several different headers cover the different ways cache prevention - * is handled by different browsers + * is handled by different browsers. * * @since 2.8.0 + * @since 6.3.0 The `Cache-Control` header for logged in users now includes the + * `no-store` and `private` directives. * * @return array The associative array of header names and field values. */ @@ -101931,7 +103603,7 @@ function wp_get_nocache_headers() { } /** - * Sets the headers to prevent caching for the different browsers. + * Sets the HTTP headers to prevent caching for the different browsers. * * Different browsers support different nocache headers, so several * headers must be sent so that all of them get the point that no @@ -101945,7 +103617,7 @@ function nocache_headers() { } /** - * Sets the headers for caching for 10 days with JavaScript content type. + * Sets the HTTP headers for caching for 10 days with JavaScript content type. * * @since 2.1.0 */ @@ -102163,7 +103835,9 @@ function wp_get_referer() { } /** - * Retrieves unvalidated referer from '_wp_http_referer' or HTTP referer. + * Retrieves unvalidated referer from the '_wp_http_referer' URL query variable or the HTTP referer. + * + * If the value of the '_wp_http_referer' URL query variable is not a string then it will be ignored. * * Do not use for redirects, use wp_get_referer() instead. * @@ -102490,9 +104164,9 @@ function wp_get_default_extension_for_mime_type($mime_type) * * @since 2.0.4 * - * @param string $filename File name or path. - * @param string[] $mimes Optional. Array of allowed mime types keyed by their file extension regex. - * Defaults to the result of get_allowed_mime_types(). + * @param string $filename File name or path. + * @param string[]|null $mimes Optional. Array of allowed mime types keyed by their file extension regex. + * Defaults to the result of get_allowed_mime_types(). * @return array { * Values for the extension and mime type. * @@ -102519,11 +104193,11 @@ function wp_check_filetype($filename, $mimes = \null) * * @since 3.0.0 * - * @param string $file Full path to the file. - * @param string $filename The name of the file (may differ from $file due to $file being - * in a tmp directory). - * @param string[] $mimes Optional. Array of allowed mime types keyed by their file extension regex. - * Defaults to the result of get_allowed_mime_types(). + * @param string $file Full path to the file. + * @param string $filename The name of the file (may differ from $file due to $file being + * in a tmp directory). + * @param string[]|null $mimes Optional. Array of allowed mime types keyed by their file extension regex. + * Defaults to the result of get_allowed_mime_types(). * @return array { * Values for the extension, mime type, and corrected filename. * @@ -103995,11 +105669,25 @@ function wp_debug_backtrace_summary($ignore_class = \null, $skip_frames = 0, $pr * @since 3.4.0 * @since 6.1.0 This function is no longer marked as "private". * - * @param int[] $object_ids Array of IDs. - * @param string $cache_key The cache bucket to check against. + * @param int[] $object_ids Array of IDs. + * @param string $cache_group The cache group to check against. * @return int[] Array of IDs not present in the cache. */ - function _get_non_cached_ids($object_ids, $cache_key) + function _get_non_cached_ids($object_ids, $cache_group) + { + } + /** + * Checks whether the given cache ID is either an integer or an integer-like string. + * + * Both `16` and `"16"` are considered valid, other numeric types and numeric strings + * (`16.3` and `"16.3"`) are considered invalid. + * + * @since 6.3.0 + * + * @param mixed $object_id The cache ID to validate. + * @return bool Whether the given $object_id is a valid cache ID. + */ + function _validate_cache_id($object_id) { } /** @@ -104220,7 +105908,7 @@ function mysql_to_rfc3339($date_string) * @since 4.6.0 * * @param string $context Optional. Context in which the function is called. Accepts either 'admin', - * 'image', or an arbitrary other context. If an arbitrary context is passed, + * 'image', 'cron', or an arbitrary other context. If an arbitrary context is passed, * the similarly arbitrary {@see '$context_memory_limit'} filter will be * invoked. Default 'admin'. * @return int|string|false The limit that was set or false on failure. @@ -104278,6 +105966,17 @@ function wp_unique_id($prefix = '') function wp_cache_get_last_changed($group) { } + /** + * Sets last changed date for the specified cache group to now. + * + * @since 6.3.0 + * + * @param string $group Where the cache contents are grouped. + * @return string UNIX timestamp when the group was last changed. + */ + function wp_cache_set_last_changed($group) + { + } /** * Sends an email to the old site admin email address when the site admin email address changes. * @@ -104630,7 +106329,7 @@ function _wp_scripts_maybe_doing_it_wrong($function_name, $handle = '') * * @since 2.1.0 * - * @param string|bool|array $handles Optional. Scripts to be printed. Default 'false'. + * @param string|string[]|false $handles Optional. Scripts to be printed. Default 'false'. * @return string[] On success, an array of handles of processed WP_Dependencies items; otherwise, an empty array. */ function wp_print_scripts($handles = \false) @@ -104667,6 +106366,7 @@ function wp_add_inline_script($handle, $data, $position = 'after') * * @since 2.1.0 * @since 4.3.0 A return value was added. + * @since 6.3.0 The $in_footer parameter of type boolean was overloaded to be an $args parameter of type array. * * @param string $handle Name of the script. Should be unique. * @param string|false $src Full URL of the script, or path of the script relative to the WordPress root directory. @@ -104676,11 +106376,16 @@ function wp_add_inline_script($handle, $data, $position = 'after') * as a query string for cache busting purposes. If version is set to false, a version * number is automatically added equal to current installed WordPress version. * If set to null, no version is added. - * @param bool $in_footer Optional. Whether to enqueue the script before `` instead of in the ``. - * Default 'false'. + * @param array|bool $args { + * Optional. An array of additional script loading strategies. Default empty array. + * Otherwise, it may be a boolean in which case it determines whether the script is printed in the footer. Default false. + * + * @type string $strategy Optional. If provided, may be either 'defer' or 'async'. + * @type bool $in_footer Optional. Whether to print the script in the footer. Default 'false'. + * } * @return bool Whether the script has been registered. True on success, false on failure. */ - function wp_register_script($handle, $src, $deps = array(), $ver = \false, $in_footer = \false) + function wp_register_script($handle, $src, $deps = array(), $ver = \false, $args = array()) { } /** @@ -104759,6 +106464,7 @@ function wp_deregister_script($handle) * @see WP_Dependencies::enqueue() * * @since 2.1.0 + * @since 6.3.0 The $in_footer parameter of type boolean was overloaded to be an $args parameter of type array. * * @param string $handle Name of the script. Should be unique. * @param string $src Full URL of the script, or path of the script relative to the WordPress root directory. @@ -104768,10 +106474,15 @@ function wp_deregister_script($handle) * as a query string for cache busting purposes. If version is set to false, a version * number is automatically added equal to current installed WordPress version. * If set to null, no version is added. - * @param bool $in_footer Optional. Whether to enqueue the script before `` instead of in the ``. - * Default 'false'. + * @param array|bool $args { + * Optional. An array of additional script loading strategies. Default empty array. + * Otherwise, it may be a boolean in which case it determines whether the script is printed in the footer. Default false. + * + * @type string $strategy Optional. If provided, may be either 'defer' or 'async'. + * @type bool $in_footer Optional. Whether to print the script in the footer. Default 'false'. + * } */ - function wp_enqueue_script($handle, $src = '', $deps = array(), $ver = \false, $in_footer = \false) + function wp_enqueue_script($handle, $src = '', $deps = array(), $ver = \false, $args = array()) { } /** @@ -105087,10 +106798,10 @@ function get_sidebar($name = \null, $args = array()) * @since 5.5.0 A return value was added. * @since 5.5.0 The `$args` parameter was added. * - * @param string $slug The slug name for the generic template. - * @param string $name The name of the specialized template. - * @param array $args Optional. Additional arguments passed to the template. - * Default empty array. + * @param string $slug The slug name for the generic template. + * @param string|null $name Optional. The name of the specialized template. + * @param array $args Optional. Additional arguments passed to the template. + * Default empty array. * @return void|false Void on success, false if the template does not exist. */ function get_template_part($slug, $name = \null, $args = array()) @@ -106076,15 +107787,6 @@ function feed_links_extra($args = array()) function rsd_link() { } - /** - * Displays the link to the Windows Live Writer manifest file. - * - * @link https://msdn.microsoft.com/en-us/library/bb463265.aspx - * @since 2.3.1 - */ - function wlwmanifest_link() - { - } /** * Displays a referrer `strict-origin-when-cross-origin` meta tag. * @@ -106738,7 +108440,7 @@ function wp_heartbeat_settings($settings) * Valid values are 'all' (core, theme, and user) or 'base' (core and theme). * If empty or unknown, 'all' is used. * } - * @return array The settings to retrieve. + * @return mixed The settings array or individual setting value to retrieve. * @phpstan-param array{ * block_name?: string, * origin?: string, @@ -106751,6 +108453,10 @@ function wp_get_global_settings($path = array(), $context = array()) * Gets the styles resulting of merging core, theme, and user data. * * @since 5.9.0 + * @since 6.3.0 the internal link format "var:preset|color|secondary" is resolved + * to "var(--wp--preset--font-size--small)" so consumers don't have to. + * @since 6.3.0 `transforms` is now usable in the `context` parameter. In case [`transforms`]['resolve_variables'] + * is defined, variables are resolved to their value in the styles. * * @param array $path Path to the specific style to retrieve. Optional. * If empty, will return all styles. @@ -106762,11 +108468,15 @@ function wp_get_global_settings($path = array(), $context = array()) * @type string $origin Which origin to take data from. * Valid values are 'all' (core, theme, and user) or 'base' (core and theme). * If empty or unknown, 'all' is used. + * @type array $transforms Which transformation(s) to apply. + * Valid value is array( 'resolve-variables' ). + * If defined, variables are resolved to their value in the styles. * } - * @return array The styles to retrieve. + * @return mixed The styles array or individual style value to retrieve. * @phpstan-param array{ * block_name?: string, * origin?: string, + * transforms?: array, * } $context */ function wp_get_global_styles($path = array(), $context = array()) @@ -106789,31 +108499,33 @@ function wp_get_global_stylesheet($types = array()) { } /** - * Gets the global styles custom css from theme.json. + * Gets the global styles custom CSS from theme.json. * * @since 6.2.0 * - * @return string Stylesheet. + * @return string The global styles custom CSS. */ function wp_get_global_styles_custom_css() { } /** - * Returns a string containing the SVGs to be referenced as filters (duotone). - * - * @since 5.9.1 + * Adds global style rules to the inline style for each block. * - * @return string + * @since 6.1.0 */ - function wp_get_global_styles_svg_filters() + function wp_add_global_styles_for_blocks() { } /** - * Adds global style rules to the inline style for each block. + * Gets the block name from a given theme.json path. * - * @since 6.1.0 + * @since 6.3.0 + * @access private + * + * @param array $path An array of keys describing the path to a property in theme.json. + * @return string Identified block name, or empty string if none found. */ - function wp_add_global_styles_for_blocks() + function wp_get_block_name_from_theme_json_path($path) { } /** @@ -106834,6 +108546,32 @@ function wp_theme_has_theme_json() function wp_clean_theme_json_cache() { } + /** + * Returns the current theme's wanted patterns (slugs) to be + * registered from Pattern Directory. + * + * @since 6.3.0 + * + * @return string[] + */ + function wp_get_theme_directory_pattern_slugs() + { + } + /** + * Determines the CSS selector for the block type and property provided, + * returning it if available. + * + * @since 6.3.0 + * + * @param WP_Block_Type $block_type The block's type. + * @param string|array $target The desired selector's target, `root` or array path. + * @param boolean $fallback Whether to fall back to broader selector. + * + * @return string|null CSS selector or `null` if no selector available. + */ + function wp_get_block_css_selector($block_type, $target = 'root', $fallback = \false) + { + } /** * Core HTTP Request API * @@ -106867,7 +108605,27 @@ function _wp_http_get_object() * * @param string $url URL to retrieve. * @param array $args Optional. Request arguments. Default empty array. + * See WP_Http::request() for information on accepted arguments. * @return array|WP_Error The response or WP_Error on failure. + * @phpstan-param array{ + * method?: string, + * timeout?: float, + * redirection?: int, + * httpversion?: string, + * user-agent?: string, + * reject_unsafe_urls?: bool, + * blocking?: bool, + * headers?: string|array, + * cookies?: array, + * body?: string|array, + * compress?: bool, + * decompress?: bool, + * sslverify?: bool, + * sslcertificates?: string, + * stream?: bool, + * filename?: string, + * limit_response_size?: int, + * } $args See WP_Http::request() * @phpstan-return array{headers: \WpOrg\Requests\Utility\CaseInsensitiveDictionary, body: string, response: array{code: int,message: string}, cookies: array, filename: string|null, http_response: \WP_HTTP_Requests_Response}|\WP_Error */ function wp_safe_remote_request($url, $args = array()) @@ -106886,7 +108644,27 @@ function wp_safe_remote_request($url, $args = array()) * * @param string $url URL to retrieve. * @param array $args Optional. Request arguments. Default empty array. + * See WP_Http::request() for information on accepted arguments. * @return array|WP_Error The response or WP_Error on failure. + * @phpstan-param array{ + * method?: string, + * timeout?: float, + * redirection?: int, + * httpversion?: string, + * user-agent?: string, + * reject_unsafe_urls?: bool, + * blocking?: bool, + * headers?: string|array, + * cookies?: array, + * body?: string|array, + * compress?: bool, + * decompress?: bool, + * sslverify?: bool, + * sslcertificates?: string, + * stream?: bool, + * filename?: string, + * limit_response_size?: int, + * } $args See WP_Http::request() * @phpstan-return array{headers: \WpOrg\Requests\Utility\CaseInsensitiveDictionary, body: string, response: array{code: int,message: string}, cookies: array, filename: string|null, http_response: \WP_HTTP_Requests_Response}|\WP_Error */ function wp_safe_remote_get($url, $args = array()) @@ -106905,7 +108683,27 @@ function wp_safe_remote_get($url, $args = array()) * * @param string $url URL to retrieve. * @param array $args Optional. Request arguments. Default empty array. + * See WP_Http::request() for information on accepted arguments. * @return array|WP_Error The response or WP_Error on failure. + * @phpstan-param array{ + * method?: string, + * timeout?: float, + * redirection?: int, + * httpversion?: string, + * user-agent?: string, + * reject_unsafe_urls?: bool, + * blocking?: bool, + * headers?: string|array, + * cookies?: array, + * body?: string|array, + * compress?: bool, + * decompress?: bool, + * sslverify?: bool, + * sslcertificates?: string, + * stream?: bool, + * filename?: string, + * limit_response_size?: int, + * } $args See WP_Http::request() * @phpstan-return array{headers: \WpOrg\Requests\Utility\CaseInsensitiveDictionary, body: string, response: array{code: int,message: string}, cookies: array, filename: string|null, http_response: \WP_HTTP_Requests_Response}|\WP_Error */ function wp_safe_remote_post($url, $args = array()) @@ -106924,7 +108722,27 @@ function wp_safe_remote_post($url, $args = array()) * * @param string $url URL to retrieve. * @param array $args Optional. Request arguments. Default empty array. + * See WP_Http::request() for information on accepted arguments. * @return array|WP_Error The response or WP_Error on failure. + * @phpstan-param array{ + * method?: string, + * timeout?: float, + * redirection?: int, + * httpversion?: string, + * user-agent?: string, + * reject_unsafe_urls?: bool, + * blocking?: bool, + * headers?: string|array, + * cookies?: array, + * body?: string|array, + * compress?: bool, + * decompress?: bool, + * sslverify?: bool, + * sslcertificates?: string, + * stream?: bool, + * filename?: string, + * limit_response_size?: int, + * } $args See WP_Http::request() * @phpstan-return array{headers: \WpOrg\Requests\Utility\CaseInsensitiveDictionary, body: string, response: array{code: int,message: string}, cookies: array, filename: string|null, http_response: \WP_HTTP_Requests_Response}|\WP_Error */ function wp_safe_remote_head($url, $args = array()) @@ -106945,6 +108763,7 @@ function wp_safe_remote_head($url, $args = array()) * * @param string $url URL to retrieve. * @param array $args Optional. Request arguments. Default empty array. + * See WP_Http::request() for information on accepted arguments. * @return array|WP_Error { * The response array or a WP_Error on failure. * @@ -106969,6 +108788,25 @@ function wp_safe_remote_head($url, $args = array()) * cookies: WP_HTTP_Cookie[], * http_response: WP_HTTP_Requests_Response|null, * } + * @phpstan-param array{ + * method?: string, + * timeout?: float, + * redirection?: int, + * httpversion?: string, + * user-agent?: string, + * reject_unsafe_urls?: bool, + * blocking?: bool, + * headers?: string|array, + * cookies?: array, + * body?: string|array, + * compress?: bool, + * decompress?: bool, + * sslverify?: bool, + * sslcertificates?: string, + * stream?: bool, + * filename?: string, + * limit_response_size?: int, + * } $args See WP_Http::request() * @phpstan-return array{headers: \WpOrg\Requests\Utility\CaseInsensitiveDictionary, body: string, response: array{code: int,message: string}, cookies: array, filename: string|null, http_response: \WP_HTTP_Requests_Response}|\WP_Error */ function wp_remote_request($url, $args = array()) @@ -106984,7 +108822,27 @@ function wp_remote_request($url, $args = array()) * * @param string $url URL to retrieve. * @param array $args Optional. Request arguments. Default empty array. + * See WP_Http::request() for information on accepted arguments. * @return array|WP_Error The response or WP_Error on failure. + * @phpstan-param array{ + * method?: string, + * timeout?: float, + * redirection?: int, + * httpversion?: string, + * user-agent?: string, + * reject_unsafe_urls?: bool, + * blocking?: bool, + * headers?: string|array, + * cookies?: array, + * body?: string|array, + * compress?: bool, + * decompress?: bool, + * sslverify?: bool, + * sslcertificates?: string, + * stream?: bool, + * filename?: string, + * limit_response_size?: int, + * } $args See WP_Http::request() * @phpstan-return array{headers: \WpOrg\Requests\Utility\CaseInsensitiveDictionary, body: string, response: array{code: int,message: string}, cookies: array, filename: string|null, http_response: \WP_HTTP_Requests_Response}|\WP_Error */ function wp_remote_get($url, $args = array()) @@ -107000,7 +108858,27 @@ function wp_remote_get($url, $args = array()) * * @param string $url URL to retrieve. * @param array $args Optional. Request arguments. Default empty array. + * See WP_Http::request() for information on accepted arguments. * @return array|WP_Error The response or WP_Error on failure. + * @phpstan-param array{ + * method?: string, + * timeout?: float, + * redirection?: int, + * httpversion?: string, + * user-agent?: string, + * reject_unsafe_urls?: bool, + * blocking?: bool, + * headers?: string|array, + * cookies?: array, + * body?: string|array, + * compress?: bool, + * decompress?: bool, + * sslverify?: bool, + * sslcertificates?: string, + * stream?: bool, + * filename?: string, + * limit_response_size?: int, + * } $args See WP_Http::request() * @phpstan-return array{headers: \WpOrg\Requests\Utility\CaseInsensitiveDictionary, body: string, response: array{code: int,message: string}, cookies: array, filename: string|null, http_response: \WP_HTTP_Requests_Response}|\WP_Error */ function wp_remote_post($url, $args = array()) @@ -107016,7 +108894,27 @@ function wp_remote_post($url, $args = array()) * * @param string $url URL to retrieve. * @param array $args Optional. Request arguments. Default empty array. + * See WP_Http::request() for information on accepted arguments. * @return array|WP_Error The response or WP_Error on failure. + * @phpstan-param array{ + * method?: string, + * timeout?: float, + * redirection?: int, + * httpversion?: string, + * user-agent?: string, + * reject_unsafe_urls?: bool, + * blocking?: bool, + * headers?: string|array, + * cookies?: array, + * body?: string|array, + * compress?: bool, + * decompress?: bool, + * sslverify?: bool, + * sslcertificates?: string, + * stream?: bool, + * filename?: string, + * limit_response_size?: int, + * } $args See WP_Http::request() * @phpstan-return array{headers: \WpOrg\Requests\Utility\CaseInsensitiveDictionary, body: string, response: array{code: int,message: string}, cookies: array, filename: string|null, http_response: \WP_HTTP_Requests_Response}|\WP_Error */ function wp_remote_head($url, $args = array()) @@ -108146,6 +110044,8 @@ function kses_init() * Extended `margin-*` and `padding-*` support for logical properties. * @since 6.2.0 Added support for `aspect-ratio`, `position`, `top`, `right`, `bottom`, `left`, * and `z-index` CSS properties. + * @since 6.3.0 Extended support for `filter` to accept a URL and added support for repeat(). + * Added support for `box-shadow`. * * @param string $css A string of CSS rules. * @param string $deprecated Not used. @@ -108160,6 +110060,7 @@ function safecss_filter_attr($css, $deprecated = '') * @since 3.5.0 * @since 5.0.0 Added support for `data-*` wildcard attributes. * @since 6.0.0 Added `dir`, `lang`, and `xml:lang` to global attributes. + * @since 6.3.0 Added `aria-controls`, `aria-current`, and `aria-expanded` attributes. * * @access private * @ignore @@ -109535,9 +111436,11 @@ function get_preview_post_link($post = \null, $query_args = array(), $preview_li * Retrieves the edit post link for post. * * Can be used within the WordPress loop or outside of it. Can be used with - * pages, posts, attachments, and revisions. + * pages, posts, attachments, revisions, global styles, templates, and template parts. * * @since 2.3.0 + * @since 6.3.0 Adds custom link for wp_navigation post types. + * Adds custom links for wp_template_part and wp_template post types. * * @param int|WP_Post $post Optional. Post ID or post object. Default is the global `$post`. * @param string $context Optional. How to output the '&' character. Default '&'. @@ -110990,7 +112893,7 @@ function get_the_privacy_policy_link($before = '', $after = '') /** * Returns an array of URL hosts which are considered to be internal hosts. * - * By default the list of internal hosts is comproside of the PHP_URL_HOST of + * By default the list of internal hosts is comprised of the host name of * the site's home_url() (as parsed by wp_parse_url()). * * This list is used when determining if a specificed URL is a link to a page on @@ -111026,7 +112929,7 @@ function wp_is_internal_link($link) * @package WordPress */ /** - * Return the HTTP protocol sent by the server. + * Returns the HTTP protocol sent by the server. * * @since 4.4.0 * @@ -111036,7 +112939,7 @@ function wp_get_server_protocol() { } /** - * Fix `$_SERVER` variables for various setups. + * Fixes `$_SERVER` variables for various setups. * * @since 3.0.0 * @access private @@ -111060,7 +112963,7 @@ function wp_populate_basic_auth_from_authorization_header() { } /** - * Check for the required PHP version, and the MySQL extension or + * Checks for the required PHP version, and the MySQL extension or * a database drop-in. * * Dies if requirements are not met. @@ -111093,7 +112996,42 @@ function wp_get_environment_type() { } /** - * Don't load all of WordPress when handling a favicon.ico request. + * Retrieves the current development mode. + * + * The development mode affects how certain parts of the WordPress application behave, + * which is relevant when developing for WordPress. + * + * Development mode can be set via the `WP_DEVELOPMENT_MODE` constant in `wp-config.php`. + * Possible values are 'core', 'plugin', 'theme', 'all', or an empty string to disable + * development mode. 'all' is a special value to signify that all three development modes + * ('core', 'plugin', and 'theme') are enabled. + * + * Development mode is considered separately from `WP_DEBUG` and wp_get_environment_type(). + * It does not affect debugging output, but rather functional nuances in WordPress. + * + * This function retrieves the currently set development mode value. To check whether + * a specific development mode is enabled, use wp_is_development_mode(). + * + * @since 6.3.0 + * + * @return string The current development mode. + */ + function wp_get_development_mode() + { + } + /** + * Checks whether the site is in the given development mode. + * + * @since 6.3.0 + * + * @param string $mode Development mode to check for. Either 'core', 'plugin', 'theme', or 'all'. + * @return bool True if the given mode is covered by the current development mode, false otherwise. + */ + function wp_is_development_mode($mode) + { + } + /** + * Ensures all of WordPress is not loaded when handling a favicon.ico request. * * Instead, send the headers for a zero-length favicon and bail. * @@ -111104,7 +113042,7 @@ function wp_favicon_request() { } /** - * Die with a maintenance message when conditions are met. + * Dies with a maintenance message when conditions are met. * * The default message can be replaced by using a drop-in (maintenance.php in * the wp-content directory). @@ -111116,7 +113054,7 @@ function wp_maintenance() { } /** - * Check if maintenance mode is enabled. + * Checks if maintenance mode is enabled. * * Checks for a file in the WordPress root directory named ".maintenance". * This file will contain the variable $upgrading, set to the time the file @@ -111133,7 +113071,7 @@ function wp_is_maintenance_mode() { } /** - * Get the time elapsed so far during this PHP script. + * Gets the time elapsed so far during this PHP script. * * Uses REQUEST_TIME_FLOAT that appeared in PHP 5.4.0. * @@ -111145,7 +113083,7 @@ function timer_float() { } /** - * Start the WordPress micro-timer. + * Starts the WordPress micro-timer. * * @since 0.71 * @access private @@ -111159,7 +113097,7 @@ function timer_start() { } /** - * Retrieve or display the time from the page start to when function is called. + * Retrieves or displays the time from the page start to when function is called. * * @since 0.71 * @@ -111177,7 +113115,7 @@ function timer_stop($display = 0, $precision = 3) { } /** - * Set PHP error reporting based on WordPress debug settings. + * Sets PHP error reporting based on WordPress debug settings. * * Uses three constants: `WP_DEBUG`, `WP_DEBUG_DISPLAY`, and `WP_DEBUG_LOG`. * All three can be defined in wp-config.php. By default, `WP_DEBUG` and @@ -111212,7 +113150,7 @@ function wp_debug_mode() { } /** - * Set the location of the language directory. + * Sets the location of the language directory. * * To set directory manually, define the `WP_LANG_DIR` constant * in wp-config.php. @@ -111228,7 +113166,7 @@ function wp_set_lang_dir() { } /** - * Load the database class file and instantiate the `$wpdb` global. + * Loads the database class file and instantiates the `$wpdb` global. * * @since 2.5.0 * @@ -111238,7 +113176,7 @@ function require_wp_db() { } /** - * Set the database table prefix and the format specifiers for database + * Sets the database table prefix and the format specifiers for database * table columns. * * Columns not listed here default to `%s`. @@ -111253,7 +113191,7 @@ function wp_set_wpdb_vars() { } /** - * Toggle `$_wp_using_ext_object_cache` on and off without directly + * Toggles `$_wp_using_ext_object_cache` on and off without directly * touching global. * * @since 3.7.0 @@ -111267,7 +113205,7 @@ function wp_using_ext_object_cache($using = \null) { } /** - * Start the WordPress object cache. + * Starts the WordPress object cache. * * If an object-cache.php file exists in the wp-content directory, * it uses that drop-in as an external object cache. @@ -111281,7 +113219,7 @@ function wp_start_object_cache() { } /** - * Redirect to the installer if WordPress is not installed. + * Redirects to the installer if WordPress is not installed. * * Dies with an error message when Multisite is enabled. * @@ -111292,7 +113230,7 @@ function wp_not_installed() { } /** - * Retrieve an array of must-use plugin files. + * Retrieves an array of must-use plugin files. * * The default directory is wp-content/mu-plugins. To change the default * directory manually, define `WPMU_PLUGIN_DIR` and `WPMU_PLUGIN_URL` @@ -111307,7 +113245,7 @@ function wp_get_mu_plugins() { } /** - * Retrieve an array of active and valid plugin files. + * Retrieves an array of active and valid plugin files. * * While upgrading or installing WordPress, no plugins are returned. * @@ -111361,7 +113299,7 @@ function wp_skip_paused_themes(array $themes) { } /** - * Is WordPress in Recovery Mode. + * Determines whether WordPress is in Recovery Mode. * * In this mode, plugins or themes that cause WSODs will be paused. * @@ -111395,7 +113333,7 @@ function is_protected_ajax_action() { } /** - * Set internal encoding. + * Sets internal encoding. * * In most cases the default internal encoding is latin1, which is * of no use, since we want to use the `mb_` functions for `utf-8` strings. @@ -111407,7 +113345,7 @@ function wp_set_internal_encoding() { } /** - * Add magic quotes to `$_GET`, `$_POST`, `$_COOKIE`, and `$_SERVER`. + * Adds magic quotes to `$_GET`, `$_POST`, `$_COOKIE`, and `$_SERVER`. * * Also forces `$_REQUEST` to be `$_GET + $_POST`. If `$_SERVER`, * `$_COOKIE`, or `$_ENV` are needed, use those superglobals directly. @@ -111428,7 +113366,7 @@ function shutdown_action_hook() { } /** - * Copy an object. + * Clones an object. * * @since 2.7.0 * @deprecated 3.2.0 @@ -111525,7 +113463,7 @@ function is_user_admin() { } /** - * If Multisite is enabled. + * Determines whether Multisite is enabled. * * @since 3.0.0 * @@ -111535,7 +113473,7 @@ function is_multisite() { } /** - * Retrieve the current site ID. + * Retrieves the current site ID. * * @since 3.1.0 * @@ -111557,7 +113495,7 @@ function get_current_network_id() { } /** - * Attempt an early load of translations. + * Attempts an early load of translations. * * Used for errors encountered during the initial loading process, before * the locale has been properly detected and loaded. @@ -111576,7 +113514,7 @@ function wp_load_translations_early() { } /** - * Check or set whether WordPress is in "installation" mode. + * Checks or sets whether WordPress is in "installation" mode. * * If the `WP_INSTALLING` constant is defined during the bootstrap, `wp_installing()` will default to `true`. * @@ -111686,7 +113624,7 @@ function wp_is_file_mod_allowed($context) { } /** - * Start scraping edited file errors. + * Starts scraping edited file errors. * * @since 4.9.0 */ @@ -111694,7 +113632,7 @@ function wp_start_scraping_edited_file_errors() { } /** - * Finalize scraping for edited file errors. + * Finalizes scraping for edited file errors. * * @since 4.9.0 * @@ -111775,7 +113713,7 @@ function wp_is_site_protected_by_basic_auth($context = '') * @since 3.5.0 */ /** - * Outputs the markup for a audio tag to be used in an Underscore template + * Outputs the markup for an audio tag to be used in an Underscore template * when data.model is passed. * * @since 3.9.0 @@ -112109,10 +114047,10 @@ function wp_image_matches_ratio($source_width, $source_height, $target_width, $t * Array of file relative path, width, and height on success. Additionally includes absolute * path and URL if registered size is passed to `$size` parameter. False on failure. * - * @type string $file Path of image relative to uploads directory. + * @type string $file Filename of image. * @type int $width Width of image in pixels. * @type int $height Height of image in pixels. - * @type string $path Absolute filesystem path of image. + * @type string $path Path of image relative to uploads directory. * @type string $url URL of image. * } * @phpstan-return false|array{ @@ -112425,7 +114363,7 @@ function wp_lazy_loading_enabled($tag_name, $context) * * @see wp_img_tag_add_width_and_height_attr() * @see wp_img_tag_add_srcset_and_sizes_attr() - * @see wp_img_tag_add_loading_attr() + * @see wp_img_tag_add_loading_optimization_attrs() * @see wp_iframe_tag_add_loading_attr() * * @param string $content The HTML content to be filtered. @@ -112437,15 +114375,15 @@ function wp_filter_content_tags($content, $context = \null) { } /** - * Adds `loading` attribute to an `img` HTML tag. + * Adds optimization attributes to an `img` HTML tag. * - * @since 5.5.0 + * @since 6.3.0 * * @param string $image The HTML `img` tag where the attribute should be added. * @param string $context Additional context to pass to the filters. - * @return string Converted `img` tag with `loading` attribute added. + * @return string Converted `img` tag with optimization attributes added. */ - function wp_img_tag_add_loading_attr($image, $context) + function wp_img_tag_add_loading_optimization_attrs($image, $context) { } /** @@ -112546,6 +114484,44 @@ function _wp_post_thumbnail_class_filter_add($attr) function _wp_post_thumbnail_class_filter_remove($attr) { } + /** + * Overrides the context used in {@see wp_get_attachment_image()}. Internal use only. + * + * Uses the {@see 'begin_fetch_post_thumbnail_html'} and {@see 'end_fetch_post_thumbnail_html'} + * action hooks to dynamically add/remove itself so as to only filter post thumbnails. + * + * @ignore + * @since 6.3.0 + * @access private + * + * @param string $context The context for rendering an attachment image. + * @return string Modified context set to 'the_post_thumbnail'. + */ + function _wp_post_thumbnail_context_filter($context) + { + } + /** + * Adds the '_wp_post_thumbnail_context_filter' callback to the 'wp_get_attachment_image_context' + * filter hook. Internal use only. + * + * @ignore + * @since 6.3.0 + * @access private + */ + function _wp_post_thumbnail_context_filter_add() + { + } + /** + * Removes the '_wp_post_thumbnail_context_filter' callback from the 'wp_get_attachment_image_context' + * filter hook. Internal use only. + * + * @ignore + * @since 6.3.0 + * @access private + */ + function _wp_post_thumbnail_context_filter_remove() + { + } /** * Builds the Caption shortcode output. * @@ -112963,20 +114939,20 @@ function get_taxonomies_for_attachments($output = 'names') * Determines whether the value is an acceptable type for GD image functions. * * In PHP 8.0, the GD extension uses GdImage objects for its data structures. - * This function checks if the passed value is either a resource of type `gd` - * or a GdImage object instance. Any other type will return false. + * This function checks if the passed value is either a GdImage object instance + * or a resource of type `gd`. Any other type will return false. * * @since 5.6.0 * * @param resource|GdImage|false $image A value to check the type for. - * @return bool True if $image is either a GD image resource or GdImage instance, + * @return bool True if `$image` is either a GD image resource or a GdImage instance, * false otherwise. */ function is_gd_image($image) { } /** - * Creates new GD image resource with transparency support. + * Creates a new GD image resource with transparency support. * * @todo Deprecate if possible. * @@ -113195,7 +115171,7 @@ function get_attached_media($type, $post = 0) { } /** - * Checks the HTML content for a audio, video, object, embed, or iframe tags. + * Checks the HTML content for an audio, video, object, embed, or iframe tags. * * @since 3.6.0 * @@ -113376,33 +115352,33 @@ function wp_get_webp_info($filename) { } /** - * Gets the default value to use for a `loading` attribute on an element. + * Gets loading optimization attributes. * - * This function should only be called for a tag and context if lazy-loading is generally enabled. + * This function returns an array of attributes that should be merged into the given attributes array to optimize + * loading performance. Potential attributes returned by this function are: + * - `loading` attribute with a value of "lazy" + * - `fetchpriority` attribute with a value of "high" * - * The function usually returns 'lazy', but uses certain heuristics to guess whether the current element is likely to - * appear above the fold, in which case it returns a boolean `false`, which will lead to the `loading` attribute being - * omitted on the element. The purpose of this refinement is to avoid lazy-loading elements that are within the initial - * viewport, which can have a negative performance impact. + * If any of these attributes are already present in the given attributes, they will not be modified. Note that no + * element should have both `loading="lazy"` and `fetchpriority="high"`, so the function will trigger a warning in case + * both attributes are present with those values. * - * Under the hood, the function uses {@see wp_increase_content_media_count()} every time it is called for an element - * within the main content. If the element is the very first content element, the `loading` attribute will be omitted. - * This default threshold of 1 content element to omit the `loading` attribute for can be customized using the - * {@see 'wp_omit_loading_attr_threshold'} filter. + * @since 6.3.0 * - * @since 5.9.0 + * @global WP_Query $wp_query WordPress Query object. * - * @param string $context Context for the element for which the `loading` attribute value is requested. - * @return string|bool The default `loading` attribute value. Either 'lazy', 'eager', or a boolean `false`, to indicate - * that the `loading` attribute should be skipped. + * @param string $tag_name The tag name. + * @param array $attr Array of the attributes for the tag. + * @param string $context Context for the element for which the loading optimization attribute is requested. + * @return array Loading optimization attributes. */ - function wp_get_loading_attr_default($context) + function wp_get_loading_optimization_attributes($tag_name, $attr, $context) { } /** * Gets the threshold for how many of the first content media elements to not lazy-load. * - * This function runs the {@see 'wp_omit_loading_attr_threshold'} filter, which uses a default threshold value of 1. + * This function runs the {@see 'wp_omit_loading_attr_threshold'} filter, which uses a default threshold value of 3. * The filter is only run once per page load, unless the `$force` parameter is used. * * @since 5.9.0 @@ -113427,15 +115403,31 @@ function wp_increase_content_media_count($amount = 1) { } /** - * Core Metadata API + * Determines whether to add `fetchpriority='high'` to loading attributes. * - * Functions for retrieving and manipulating metadata of various WordPress object types. Metadata - * for an object is a represented by a simple key-value pair. Objects may contain multiple - * metadata entries that share the same key and differ only in their value. + * @since 6.3.0 + * @access private * - * @package WordPress - * @subpackage Meta + * @param array $loading_attrs Array of the loading optimization attributes for the element. + * @param string $tag_name The tag name. + * @param array $attr Array of the attributes for the element. + * @return array Updated loading optimization attributes for the element. + */ + function wp_maybe_add_fetchpriority_high_attr($loading_attrs, $tag_name, $attr) + { + } + /** + * Accesses a flag that indicates if an element is a possible candidate for `fetchpriority='high'`. + * + * @since 6.3.0 + * @access private + * + * @param bool $value Optional. Used to change the static variable. Default null. + * @return bool Returns true if high-priority element was marked already, otherwise false. */ + function wp_high_priority_element_flag($value = \null) + { + } /** * Adds metadata for the specified object. * @@ -113936,18 +115928,18 @@ function wpmu_update_blogs_date() { } /** - * Gets a full blog URL, given a blog ID. + * Gets a full site URL, given a site ID. * * @since MU (3.0.0) * - * @param int $blog_id Blog ID. - * @return string Full URL of the blog if found. Empty string if not. + * @param int $blog_id Site ID. + * @return string Full site URL if found. Empty string if not. */ function get_blogaddress_by_id($blog_id) { } /** - * Gets a full blog URL, given a blog name. + * Gets a full site URL, given a site name. * * @since MU (3.0.0) * @@ -114062,7 +116054,7 @@ function add_blog_option($id, $option, $value) { } /** - * Removes option by name for a given blog ID. Prevents removal of protected WordPress options. + * Removes an option by name for a given blog ID. Prevents removal of protected WordPress options. * * @since MU (3.0.0) * @@ -114543,7 +116535,7 @@ function get_user_id_from_string($email_or_login) { } /** - * Get a full blog URL, given a domain and a path. + * Get a full site URL, given a domain and a path. * * @since MU (3.0.0) * @deprecated 3.7.0 @@ -114942,12 +116934,12 @@ function wpmu_validate_user_signup($user_name, $user_email) * @global wpdb $wpdb WordPress database abstraction object. * @global string $domain * - * @param string $blogname The blog name provided by the user. Must be unique. - * @param string $blog_title The blog title provided by the user. + * @param string $blogname The site name provided by the user. Must be unique. + * @param string $blog_title The site title provided by the user. * @param WP_User|string $user Optional. The user object to check against the new site name. * Default empty string. * @return array { - * Array of domain, path, blog name, blog title, user and error messages. + * Array of domain, path, site name, site title, user and error messages. * * @type string $domain Domain for the site. * @type string $path Path for the site. Used in subdirectory installations. @@ -116052,6 +118044,7 @@ function get_site($site = \null) * @since 4.6.0 * @since 5.1.0 Introduced the `$update_meta_cache` parameter. * @since 6.1.0 This function is no longer marked as "private". + * @since 6.3.0 Use wp_lazyload_site_meta() for lazy-loading of site meta. * * @see update_site_cache() * @global wpdb $wpdb WordPress database abstraction object. @@ -116062,6 +118055,16 @@ function get_site($site = \null) function _prime_site_caches($ids, $update_meta_cache = \true) { } + /** + * Queue site meta for lazy-loading. + * + * @since 6.3.0 + * + * @param array $site_ids List of site IDs. + */ + function wp_lazyload_site_meta(array $site_ids) + { + } /** * Updates sites in cache. * @@ -116770,18 +118773,21 @@ function _is_valid_nav_menu_item($item) * @param array $args { * Optional. Arguments to pass to get_posts(). * - * @type string $order How to order nav menu items as queried with get_posts(). Will be ignored - * if 'output' is ARRAY_A. Default 'ASC'. - * @type string $orderby Field to order menu items by as retrieved from get_posts(). Supply an orderby - * field via 'output_key' to affect the output order of nav menu items. - * Default 'menu_order'. - * @type string $post_type Menu items post type. Default 'nav_menu_item'. - * @type string $post_status Menu items post status. Default 'publish'. - * @type string $output How to order outputted menu items. Default ARRAY_A. - * @type string $output_key Key to use for ordering the actual menu items that get returned. Note that - * that is not a get_posts() argument and will only affect output of menu items - * processed in this function. Default 'menu_order'. - * @type bool $nopaging Whether to retrieve all menu items (true) or paginate (false). Default true. + * @type string $order How to order nav menu items as queried with get_posts(). + * Will be ignored if 'output' is ARRAY_A. Default 'ASC'. + * @type string $orderby Field to order menu items by as retrieved from get_posts(). + * Supply an orderby field via 'output_key' to affect the + * output order of nav menu items. Default 'menu_order'. + * @type string $post_type Menu items post type. Default 'nav_menu_item'. + * @type string $post_status Menu items post status. Default 'publish'. + * @type string $output How to order outputted menu items. Default ARRAY_A. + * @type string $output_key Key to use for ordering the actual menu items that get + * returned. Note that that is not a get_posts() argument + * and will only affect output of menu items processed in + * this function. Default 'menu_order'. + * @type bool $nopaging Whether to retrieve all menu items (true) or paginate + * (false). Default true. + * @type bool $update_menu_item_cache Whether to update the menu item cache. Default true. * } * @return array|false Array of menu items, otherwise false. * @phpstan-param array{ @@ -116792,6 +118798,7 @@ function _is_valid_nav_menu_item($item) * output?: string, * output_key?: string, * nopaging?: bool, + * update_menu_item_cache?: bool, * } $args */ function wp_get_nav_menu_items($menu, $args = array()) @@ -116936,6 +118943,31 @@ function wp_map_nav_menu_locations($new_nav_menu_locations, $old_nav_menu_locati function _wp_reset_invalid_menu_item_parent($menu_item_data) { } + /** + * Navigation Fallback + * + * Functions required for managing Navigation fallbacks behavior. + * + * @package WordPress + * @since 6.3.0 + */ + /** + * Expose additional fields in the embeddable links of the + * Navigation Fallback REST endpoint. + * + * The endpoint may embed the full Navigation Menu object into the + * response as the `self` link. By default, the Posts Controller + * will only expose a limited subset of fields but the editor requires + * additional fields to be available in order to utilize the menu. + * + * @since 6.3.0 + * + * @param array $schema the schema for the `wp_navigation` post. + * @return array the modified schema. + */ + function wp_add_fields_to_navigation_fallback_embedded_links($schema) + { + } /** * Option API * @@ -117053,13 +119085,14 @@ function wp_load_alloptions($force_cache = \false) { } /** - * Loads and caches certain often requested site options if is_multisite() and a persistent cache is not being used. + * Loads and primes caches of certain often requested network options if is_multisite(). * * @since 3.0.0 + * @since 6.3.0 Also prime caches for network options when persistent object cache is enabled. * * @global wpdb $wpdb WordPress database abstraction object. * - * @param int $network_id Optional site ID for which to query the options. Defaults to the current site. + * @param int $network_id Optional. Network ID of network for which to prime network options cache. Defaults to current network. */ function wp_load_core_site_options($network_id = \null) { @@ -117119,7 +119152,7 @@ function add_option($option, $value = '', $deprecated = '', $autoload = 'yes') { } /** - * Removes option by name. Prevents removal of protected WordPress options. + * Removes an option by name. Prevents removal of protected WordPress options. * * @since 1.2.0 * @@ -117318,7 +119351,7 @@ function add_site_option($option, $value) { } /** - * Removes a option by name for the current network. + * Removes an option by name for the current network. * * @since 2.8.0 * @since 4.4.0 Modified into wrapper for delete_network_option() @@ -118509,7 +120542,7 @@ function add_filter($hook_name, $callback, $priority = 10, $accepted_args = 1) * * @param string $hook_name The name of the filter hook. * @param mixed $value The value to filter. - * @param mixed ...$args Additional parameters to pass to the callback functions. + * @param mixed ...$args Optional. Additional parameters to pass to the callback functions. * @return mixed The filtered value after all hooked functions are applied to it. */ function apply_filters($hook_name, $value, ...$args) @@ -118734,7 +120767,7 @@ function do_action_ref_array($hook_name, $args) * * @since 2.5.0 * - * @see has_filter() has_action() is an alias of has_filter(). + * @see has_filter() This function is an alias of has_filter(). * * @param string $hook_name The name of the action hook. * @param callable|string|array|false $callback Optional. The callback to check for. @@ -118855,6 +120888,7 @@ function did_action($hook_name) * @param string $version The version of WordPress that deprecated the hook. * @param string $replacement Optional. The hook that should have been used. Default empty. * @param string $message Optional. A message regarding the change. Default empty. + * @return mixed The filtered value after all hooked functions are applied to it. */ function apply_filters_deprecated($hook_name, $args, $version, $replacement = '', $message = '') { @@ -119029,18 +121063,7 @@ function _wp_call_all_hook($args) { } /** - * Builds Unique ID for storage and retrieval. - * - * The old way to serialize the callback caused issues and this function is the - * solution. It works by checking for objects and creating a new property in - * the class to keep track of the object and new objects of the same class that - * need to be added. - * - * It also allows for the removal of actions and filters for objects after they - * change class properties. It is possible to include the property $wp_filter_id - * in your class and set it to "null" or a number to bypass the workaround. - * However this will prevent you from adding new classes and any new classes - * will overwrite the previous hook by the same class. + * Builds a unique string ID for a hook callback function. * * Functions and static method callbacks are just returned as strings and * shouldn't have any speed penalty. @@ -119248,7 +121271,8 @@ function get_the_ID() * @param string $before Optional. Markup to prepend to the title. Default empty. * @param string $after Optional. Markup to append to the title. Default empty. * @param bool $display Optional. Whether to echo or return the title. Default true for echo. - * @return void|string Void if `$display` argument is true, current post title if `$display` is false. + * @return void|string Void if `$display` argument is true or the title is empty, + * current post title if `$display` is false. * @phpstan-return ($display is true ? void : string|void) */ function the_title($before = '', $after = '', $display = \true) @@ -120391,7 +122415,7 @@ function get_page_statuses() * @since 4.9.6 * @access private * - * @return array + * @return string[] Array of privacy request status labels keyed by their status. */ function _wp_privacy_statuses() { @@ -120908,6 +122932,7 @@ function _post_type_meta_capabilities($capabilities = \null) * Default is 'Post published privately.' / 'Page published privately.' * - `item_reverted_to_draft` - Label used when an item is switched to a draft. * Default is 'Post reverted to draft.' / 'Page reverted to draft.' + * - `item_trashed` - Label used when an item is moved to Trash. Default is 'Post trashed.' / 'Page trashed.' * - `item_scheduled` - Label used when an item is scheduled for publishing. Default is 'Post scheduled.' / * 'Page scheduled.' * - `item_updated` - Label used when an item is updated. Default is 'Post updated.' / 'Page updated.' @@ -120931,6 +122956,7 @@ function _post_type_meta_capabilities($capabilities = \null) * `item_scheduled`, and `item_updated` labels. * @since 5.7.0 Added the `filter_by_date` label. * @since 5.8.0 Added the `item_link` and `item_link_description` labels. + * @since 6.3.0 Added the `item_trashed` label. * * @access private * @@ -121520,7 +123546,8 @@ function _count_posts_cache_key($type = 'post', $perm = '') * * @param string $type Optional. Post type to retrieve count. Default 'post'. * @param string $perm Optional. 'readable' or empty. Default empty. - * @return stdClass Number of posts for each status. + * @return stdClass An object containing the number of posts for each status, + * or an empty object if the post type does not exist. */ function wp_count_posts($type = 'post', $perm = '') { @@ -122376,9 +124403,8 @@ function get_page_uri($page = 0) /** * Retrieves an array of pages (or hierarchical post type items). * - * @global wpdb $wpdb WordPress database abstraction object. - * * @since 1.5.0 + * @since 6.3.0 Use WP_Query internally. * * @param array|string $args { * Optional. Array or string of arguments to retrieve pages. @@ -122476,8 +124502,8 @@ function is_local_attachment($url) * @see wp_insert_post() * * @param string|array $args Arguments for inserting an attachment. - * @param string|false $file Optional. Filename. - * @param int $parent_post_id Optional. Parent post ID. + * @param string|false $file Optional. Filename. Default false. + * @param int $parent_post_id Optional. Parent post ID or 0 for no parent. Default 0. * @param bool $wp_error Optional. Whether to return a WP_Error on failure. Default false. * @param bool $fire_after_hooks Optional. Whether to fire the after insert hooks. Default true. * @return int|WP_Error The attachment ID on success. The value 0 or WP_Error on failure. @@ -123164,6 +125190,16 @@ function use_block_editor_for_post($post) function use_block_editor_for_post_type($post_type) { } + /** + * Registers any additional post meta fields. + * + * @since 6.3.0 Adds `wp_pattern_sync_status` meta field to the wp_block post type so an unsynced option can be added. + * + * @link https://github.com/WordPress/gutenberg/pull/51144 + */ + function wp_create_initial_post_meta() + { + } /** * WordPress Query API * @@ -126091,19 +128127,6 @@ function wp_enqueue_global_styles() function wp_enqueue_global_styles_custom_css() { } - /** - * Renders the SVG filters supplied by theme.json. - * - * Note that this doesn't render the per-block user-defined - * filters which are handled by wp_render_duotone_support, - * but it should be rendered before the filtered content - * in the body to satisfy Safari's rendering quirks. - * - * @since 5.9.1 - */ - function wp_global_styles_render_svg_filters() - { - } /** * Checks if the editor scripts and styles for all registered block types * should be enqueued on the current screen. @@ -126319,13 +128342,14 @@ function wp_enqueue_block_support_styles($style, $priority = 10) * @since 6.1.0 * * @param array $options { - * Optional. An array of options to pass to wp_style_engine_get_stylesheet_from_context(). Default empty array. + * Optional. An array of options to pass to wp_style_engine_get_stylesheet_from_context(). + * Default empty array. * - * @type bool $optimize Whether to optimize the CSS output, e.g., combine rules. Default is `false`. - * @type bool $prettify Whether to add new lines and indents to output. Default is the test of whether the global constant `SCRIPT_DEBUG` is defined. + * @type bool $optimize Whether to optimize the CSS output, e.g., combine rules. + * Default true. + * @type bool $prettify Whether to add new lines and indents to output. + * Default to whether the `SCRIPT_DEBUG` constant is defined. * } - * - * @return void * @phpstan-param array{ * optimize?: bool, * prettify?: bool, @@ -126344,7 +128368,22 @@ function wp_enqueue_stored_styles($options = array()) * @since 5.9.0 * * @param string $block_name The block-name, including namespace. - * @param array $args An array of arguments [handle,src,deps,ver,media]. + * @param array $args { + * An array of arguments. See wp_register_style() for full information about each argument. + * + * @type string $handle The handle for the stylesheet. + * @type string|false $src The source URL of the stylesheet. + * @type string[] $deps Array of registered stylesheet handles this stylesheet depends on. + * @type string|bool|null $ver Stylesheet version number. + * @type string $media The media for which this stylesheet has been defined. + * } + * @phpstan-param array{ + * handle?: string, + * src?: string|false, + * deps?: string[], + * ver?: string|bool|null, + * media?: string, + * } $args */ function wp_enqueue_block_style($block_name, $args) { @@ -126513,6 +128552,20 @@ function apply_shortcodes($content, $ignore_html = \false) function do_shortcode($content, $ignore_html = \false) { } + /** + * Filter the `wp_get_attachment_image_context` hook during shortcode rendering. + * + * When wp_get_attachment_image() is called during shortcode rendering, we need to make clear + * that the context is a shortcode and not part of the theme's template rendering logic. + * + * @since 6.3.0 + * @access private + * + * @return string The filtered context value for wp_get_attachment_images when doing shortcodes. + */ + function _filter_do_shortcode_context() + { + } /** * Retrieves the shortcode regular expression for searching. * @@ -126549,8 +128602,27 @@ function get_shortcode_regex($tagnames = \null) * * @global array $shortcode_tags * - * @param array $m Regular expression match array. - * @return string|false Shortcode output on success, false on failure. + * @param array $m { + * Regular expression match array. + * + * @type string $0 Entire matched shortcode text. + * @type string $1 Optional second opening bracket for escaping shortcodes. + * @type string $2 Shortcode name. + * @type string $3 Shortcode arguments list. + * @type string $4 Optional self closing slash. + * @type string $5 Content of a shortcode when it wraps some content. + * @type string $6 Optional second closing brocket for escaping shortcodes. + * } + * @return string Shortcode output. + * @phpstan-param array{ + * 0: string, + * 1: string, + * 2: string, + * 3: string, + * 4: string, + * 5: string, + * 6: string, + * } $m */ function do_shortcode_tag($m) { @@ -126603,11 +128675,10 @@ function get_shortcode_atts_regex() * * @since 2.5.0 * - * @param string $text - * @return array|string List of attribute values. - * Returns empty array if '""' === trim( $text ). - * Returns empty string if '' === trim( $text ). - * All other matches are checked for not empty(). + * @param string $text Shortcode arguments list. + * @return array|string Array of attribute values keyed by attribute name. + * Returns empty array if there are no attributes. + * Returns the original arguments string if it cannot be parsed. */ function shortcode_parse_atts($text) { @@ -126735,33 +128806,52 @@ function get_sitemap_url($name, $subtype_name = '', $page = 1) * @since 6.1.0 */ /** - * Global public interface method to generate styles from a single style object, e.g., - * the value of a block's attributes.style object or the top level styles in theme.json. - * See: https://developer.wordpress.org/block-editor/reference-guides/theme-json-reference/theme-json-living/#styles and - * https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/ + * Global public interface method to generate styles from a single style object, + * e.g. the value of a block's attributes.style object or the top level styles in theme.json. * * Example usage: * - * $styles = wp_style_engine_get_styles( array( 'color' => array( 'text' => '#cccccc' ) ) ); - * // Returns `array( 'css' => 'color: #cccccc', 'declarations' => array( 'color' => '#cccccc' ), 'classnames' => 'has-color' )`. + * $styles = wp_style_engine_get_styles( + * array( + * 'color' => array( 'text' => '#cccccc' ), + * ) + * ); + * + * Returns: + * + * array( + * 'css' => 'color: #cccccc', + * 'declarations' => array( 'color' => '#cccccc' ), + * 'classnames' => 'has-color', + * ) * - * @access public * @since 6.1.0 * + * @see https://developer.wordpress.org/block-editor/reference-guides/theme-json-reference/theme-json-living/#styles + * @see https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/ + * * @param array $block_styles The style object. * @param array $options { * Optional. An array of options. Default empty array. * - * @type string|null $context An identifier describing the origin of the style object, e.g., 'block-supports' or 'global-styles'. Default is `null`. - * When set, the style engine will attempt to store the CSS rules, where a selector is also passed. - * @type bool $convert_vars_to_classnames Whether to skip converting incoming CSS var patterns, e.g., `var:preset||`, to var( --wp--preset--* ) values. Default `false`. - * @type string $selector Optional. When a selector is passed, the value of `$css` in the return value will comprise a full CSS rule `$selector { ...$css_declarations }`, - * otherwise, the value will be a concatenated string of CSS declarations. + * @type string|null $context An identifier describing the origin of the style object, + * e.g. 'block-supports' or 'global-styles'. Default null. + * When set, the style engine will attempt to store the CSS rules, + * where a selector is also passed. + * @type bool $convert_vars_to_classnames Whether to skip converting incoming CSS var patterns, + * e.g. `var:preset||`, + * to `var( --wp--preset--* )` values. Default false. + * @type string $selector Optional. When a selector is passed, + * the value of `$css` in the return value will comprise + * a full CSS rule `$selector { ...$css_declarations }`, + * otherwise, the value will be a concatenated string + * of CSS declarations. * } - * * @return array { - * @type string $css A CSS ruleset or declarations block formatted to be placed in an HTML `style` attribute or tag. - * @type string[] $declarations An associative array of CSS definitions, e.g., array( "$property" => "$value", "$property" => "$value" ). + * @type string $css A CSS ruleset or declarations block + * formatted to be placed in an HTML `style` attribute or tag. + * @type string[] $declarations An associative array of CSS definitions, + * e.g. `array( "$property" => "$value", "$property" => "$value" )`. * @type string $classnames Classnames separated by a space. * } * @phpstan-param array{ @@ -126780,12 +128870,25 @@ function wp_style_engine_get_styles($block_styles, $options = array()) } /** * Returns compiled CSS from a collection of selectors and declarations. - * Useful for returning a compiled stylesheet from any collection of CSS selector + declarations. + * Useful for returning a compiled stylesheet from any collection of CSS selector + declarations. * * Example usage: - * $css_rules = array( array( 'selector' => '.elephant-are-cool', 'declarations' => array( 'color' => 'gray', 'width' => '3em' ) ) ); - * $css = wp_style_engine_get_stylesheet_from_css_rules( $css_rules ); - * // Returns `.elephant-are-cool{color:gray;width:3em}`. + * + * $css_rules = array( + * array( + * 'selector' => '.elephant-are-cool', + * 'declarations' => array( + * 'color' => 'gray', + * 'width' => '3em', + * ), + * ), + * ); + * + * $css = wp_style_engine_get_stylesheet_from_css_rules( $css_rules ); + * + * Returns: + * + * .elephant-are-cool{color:gray;width:3em} * * @since 6.1.0 * @@ -126794,18 +128897,21 @@ function wp_style_engine_get_styles($block_styles, $options = array()) * * @type array ...$0 { * @type string $selector A CSS selector. - * @type string[] $declarations An associative array of CSS definitions, e.g., array( "$property" => "$value", "$property" => "$value" ). + * @type string[] $declarations An associative array of CSS definitions, + * e.g. `array( "$property" => "$value", "$property" => "$value" )`. * } * } * @param array $options { * Optional. An array of options. Default empty array. * - * @type string|null $context An identifier describing the origin of the style object, e.g., 'block-supports' or 'global-styles'. Default is 'block-supports'. + * @type string|null $context An identifier describing the origin of the style object, + * e.g. 'block-supports' or 'global-styles'. Default 'block-supports'. * When set, the style engine will attempt to store the CSS rules. - * @type bool $optimize Whether to optimize the CSS output, e.g., combine rules. Default is `false`. - * @type bool $prettify Whether to add new lines and indents to output. Default is the test of whether the global constant `SCRIPT_DEBUG` is defined. + * @type bool $optimize Whether to optimize the CSS output, e.g. combine rules. + * Default true. + * @type bool $prettify Whether to add new lines and indents to output. + * Defaults to whether the `SCRIPT_DEBUG` constant is defined. * } - * * @return string A string of compiled CSS declarations, or empty string. * @phpstan-param array