PHP 7.4.33
Preview: class-wp-block-bindings-registry.php Size: 8.26 KB
/home/brownie/public_html/wp-includes/class-wp-block-bindings-registry.php
<?php
/**
 * Block Bindings API: WP_Block_Bindings_Registry class.
 *
 * Supports overriding content in blocks by connecting them to different sources.
 *
 * @package WordPress
 * @subpackage Block Bindings
 * @since 6.5.0
 */

/**
 * Core class used for interacting with block bindings sources.
 *
 * @since 6.5.0
 */
final class WP_Block_Bindings_Registry {

	/**
	 * Holds the registered block bindings sources, keyed by source identifier.
	 *
	 * @since 6.5.0
	 * @var WP_Block_Bindings_Source[]
	 */
	private $sources = array();

	/**
	 * Container for the main instance of the class.
	 *
	 * @since 6.5.0
	 * @var WP_Block_Bindings_Registry|null
	 */
	private static $instance = null;

	/**
	 * Supported source properties that can be passed to the registered source.
	 *
	 * @since 6.5.0
	 * @var string[]
	 */
	private $allowed_source_properties = array(
		'label',
		'get_value_callback',
		'uses_context',
	);

	/**
	 * Supported blocks that can use the block bindings API.
	 *
	 * @since 6.5.0
	 * @var string[]
	 */
	private $supported_blocks = array(
		'core/paragraph',
		'core/heading',
		'core/image',
		'core/button',
	);

	/**
	 * Registers a new block bindings source.
	 *
	 * This is a low-level method. For most use cases, it is recommended to use
	 * the `register_block_bindings_source()` function instead.
	 *
	 * @see register_block_bindings_source()
	 *
	 * Sources are used to override block's original attributes with a value
	 * coming from the source. Once a source is registered, it can be used by a
	 * block by setting its `metadata.bindings` attribute to a value that refers
	 * to the source.
	 *
	 * @since 6.5.0
	 *
	 * @param string $source_name       The name of the source. It must be a string containing a namespace prefix, i.e.
	 *                                  `my-plugin/my-custom-source`. It must only contain lowercase alphanumeric
	 *                                  characters, the forward slash `/` and dashes.
	 * @param array  $source_properties {
	 *     The array of arguments that are used to register a source.
	 *
	 *     @type string   $label              The label of the source.
	 *     @type callable $get_value_callback A callback executed when the source is processed during block rendering.
	 *                                        The callback should have the following signature:
	 *
	 *                                        `function( $source_args, $block_instance, $attribute_name ): mixed`
	 *                                            - @param array    $source_args    Array containing source arguments
	 *                                                                              used to look up the override value,
	 *                                                                              i.e. {"key": "foo"}.
	 *                                            - @param WP_Block $block_instance The block instance.
	 *                                            - @param string   $attribute_name The name of the target attribute.
	 *                                        The callback has a mixed return type; it may return a string to override
	 *                                        the block's original value, null, false to remove an attribute, etc.
	 *     @type string[] $uses_context       Optional. Array of values to add to block `uses_context` needed by the source.
	 * }
	 * @return WP_Block_Bindings_Source|false Source when the registration was successful, or `false` on failure.
	 */
	public function register( string $source_name, array $source_properties ) {
		if ( ! is_string( $source_name ) ) {
			_doing_it_wrong(
				__METHOD__,
				__( 'Block bindings source name must be a string.' ),
				'6.5.0'
			);
			return false;
		}

		if ( preg_match( '/[A-Z]+/', $source_name ) ) {
			_doing_it_wrong(
				__METHOD__,
				__( 'Block bindings source names must not contain uppercase characters.' ),
				'6.5.0'
			);
			return false;
		}

		$name_matcher = '/^[a-z0-9-]+\/[a-z0-9-]+$/';
		if ( ! preg_match( $name_matcher, $source_name ) ) {
			_doing_it_wrong(
				__METHOD__,
				__( 'Block bindings source names must contain a namespace prefix. Example: my-plugin/my-custom-source' ),
				'6.5.0'
			);
			return false;
		}

		if ( $this->is_registered( $source_name ) ) {
			_doing_it_wrong(
				__METHOD__,
				/* translators: %s: Block bindings source name. */
				sprintf( __( 'Block bindings source "%s" already registered.' ), $source_name ),
				'6.5.0'
			);
			return false;
		}

		// Validates that the source properties contain the label.
		if ( ! isset( $source_properties['label'] ) ) {
			_doing_it_wrong(
				__METHOD__,
				__( 'The $source_properties must contain a "label".' ),
				'6.5.0'
			);
			return false;
		}

		// Validates that the source properties contain the get_value_callback.
		if ( ! isset( $source_properties['get_value_callback'] ) ) {
			_doing_it_wrong(
				__METHOD__,
				__( 'The $source_properties must contain a "get_value_callback".' ),
				'6.5.0'
			);
			return false;
		}

		// Validates that the get_value_callback is a valid callback.
		if ( ! is_callable( $source_properties['get_value_callback'] ) ) {
			_doing_it_wrong(
				__METHOD__,
				__( 'The "get_value_callback" parameter must be a valid callback.' ),
				'6.5.0'
			);
			return false;
		}

		// Validates that the uses_context parameter is an array.
		if ( isset( $source_properties['uses_context'] ) && ! is_array( $source_properties['uses_context'] ) ) {
			_doing_it_wrong(
				__METHOD__,
				__( 'The "uses_context" parameter must be an array.' ),
				'6.5.0'
			);
			return false;
		}

		if ( ! empty( array_diff( array_keys( $source_properties ), $this->allowed_source_properties ) ) ) {
			_doing_it_wrong(
				__METHOD__,
				__( 'The $source_properties array contains invalid properties.' ),
				'6.5.0'
			);
			return false;
		}

		$source = new WP_Block_Bindings_Source(
			$source_name,
			$source_properties
		);

		$this->sources[ $source_name ] = $source;

		return $source;
	}

	/**
	 * Unregisters a block bindings source.
	 *
	 * @since 6.5.0
	 *
	 * @param string $source_name Block bindings source name including namespace.
	 * @return WP_Block_Bindings_Source|false The unregistered block bindings source on success and `false` otherwise.
	 */
	public function unregister( string $source_name ) {
		if ( ! $this->is_registered( $source_name ) ) {
			_doing_it_wrong(
				__METHOD__,
				/* translators: %s: Block bindings source name. */
				sprintf( __( 'Block binding "%s" not found.' ), $source_name ),
				'6.5.0'
			);
			return false;
		}

		$unregistered_source = $this->sources[ $source_name ];
		unset( $this->sources[ $source_name ] );

		return $unregistered_source;
	}

	/**
	 * Retrieves the list of all registered block bindings sources.
	 *
	 * @since 6.5.0
	 *
	 * @return WP_Block_Bindings_Source[] The array of registered sources.
	 */
	public function get_all_registered() {
		return $this->sources;
	}

	/**
	 * Retrieves a registered block bindings source.
	 *
	 * @since 6.5.0
	 *
	 * @param string $source_name The name of the source.
	 * @return WP_Block_Bindings_Source|null The registered block bindings source, or `null` if it is not registered.
	 */
	public function get_registered( string $source_name ) {
		if ( ! $this->is_registered( $source_name ) ) {
			return null;
		}

		return $this->sources[ $source_name ];
	}

	/**
	 * Checks if a block bindings source is registered.
	 *
	 * @since 6.5.0
	 *
	 * @param string $source_name The name of the source.
	 * @return bool `true` if the block bindings source is registered, `false` otherwise.
	 */
	public function is_registered( $source_name ) {
		return isset( $this->sources[ $source_name ] );
	}

	/**
	 * Wakeup magic method.
	 *
	 * @since 6.5.0
	 */
	public function __wakeup() {
		if ( ! $this->sources ) {
			return;
		}
		if ( ! is_array( $this->sources ) ) {
			throw new UnexpectedValueException();
		}
		foreach ( $this->sources as $value ) {
			if ( ! $value instanceof WP_Block_Bindings_Source ) {
				throw new UnexpectedValueException();
			}
		}
	}

	/**
	 * Utility method to retrieve the main instance of the class.
	 *
	 * The instance will be created if it does not exist yet.
	 *
	 * @since 6.5.0
	 *
	 * @return WP_Block_Bindings_Registry The main instance.
	 */
	public static function get_instance() {
		if ( null === self::$instance ) {
			self::$instance = new self();
		}

		return self::$instance;
	}
}

Directory Contents

Dirs: 28 × Files: 246
Name Size Perms Modified Actions
assets DIR
- drwxr-xr-x 2025-08-25 19:56:42
Edit Download
- drwxr-xr-x 2026-03-01 14:49:28
Edit Download
- drwxr-xr-x 2026-03-01 10:11:48
Edit Download
- drwxr-xr-x 2026-03-01 11:46:40
Edit Download
blocks DIR
- drwxr-xr-x 2025-08-25 19:56:43
Edit Download
- drwxr-xr-x 2021-02-22 15:10:02
Edit Download
css DIR
- drwxr-xr-x 2026-02-25 19:38:42
Edit Download
customize DIR
- drwxr-xr-x 2026-03-01 12:47:57
Edit Download
fonts DIR
- drwxr-xr-x 2025-08-25 19:56:42
Edit Download
html-api DIR
- drwxr-xr-x 2026-03-01 13:47:04
Edit Download
ID3 DIR
- drwxr-xr-x 2025-08-25 19:56:43
Edit Download
images DIR
- drwxr-xr-x 2023-09-26 18:11:24
Edit Download
- drwxr-xr-x 2026-03-01 14:03:25
Edit Download
IXR DIR
- drwxr-xr-x 2026-03-01 23:34:57
Edit Download
js DIR
- drwxr-xr-x 2021-02-22 15:10:02
Edit Download
l10n DIR
- drwxr-xr-x 2026-03-01 13:48:46
Edit Download
- drwxr-xr-x 2022-01-26 17:12:47
Edit Download
PHPMailer DIR
- drwxr-xr-x 2021-02-22 15:10:02
Edit Download
pomo DIR
- drwxr-xr-x 2021-02-22 15:10:02
Edit Download
Requests DIR
- drwxr-xr-x 2023-09-26 18:11:24
Edit Download
rest-api DIR
- drwxr-xr-x 2026-03-01 15:40:24
Edit Download
SimplePie DIR
- drwxr-xr-x 2025-08-25 19:56:43
Edit Download
sitemaps DIR
- drwxr-xr-x 2021-02-22 15:10:02
Edit Download
- drwxr-xr-x 2021-02-22 15:10:02
Edit Download
- drwxr-xr-x 2023-09-26 18:11:24
Edit Download
Text DIR
- drwxr-xr-x 2025-08-25 19:56:43
Edit Download
- drwxr-xr-x 2026-03-01 15:44:09
Edit Download
widgets DIR
- drwxr-xr-x 2026-03-01 13:46:30
Edit Download
36.24 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
11.79 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
18.51 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
5.46 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
28.12 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
316 B lrw-r--r-- 2022-01-26 17:12:55
Edit Download
12.90 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
60.46 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
15.00 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
110.40 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
12.47 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
15.07 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
5.83 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
13.16 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
33.71 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
41.72 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
55.67 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
12.53 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
28.92 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
539 B lrw-r--r-- 2025-08-25 19:56:42
Edit Download
367 B lrw-r--r-- 2023-09-26 18:11:23
Edit Download
2.55 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
42.66 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
401 B lrw-r--r-- 2023-09-26 18:11:23
Edit Download
6.61 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
664 B lrw-r--r-- 2020-07-21 12:58:02
Edit Download
20.63 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
2.18 KB lrw-r--r-- 2023-09-26 18:11:24
Edit Download
453 B lrw-r--r-- 2025-08-25 19:56:42
Edit Download
457 B lrw-r--r-- 2021-04-19 10:45:57
Edit Download
36.83 KB lrw-r--r-- 2023-09-26 18:11:24
Edit Download
2.41 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
8.28 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
13.89 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
11.76 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
2.65 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
7.43 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
17.46 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
5.14 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
16.70 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
8.26 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
2.92 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
1.32 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
4.65 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
11.62 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
2.50 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
1.97 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
11.26 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
5.25 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
10.53 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
6.25 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
5.49 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
1.99 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
7.06 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
4.90 KB lrw-r--r-- 2023-10-13 03:59:35
Edit Download
16.86 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
22.50 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
3.99 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
47.26 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
9.22 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
25.25 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
197.84 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
56.31 KB lrw-r--r-- 2025-10-01 04:00:09
Edit Download
10.46 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
10.95 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
29.26 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
70.52 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
256.62 KB lrw-r--r-- 2026-02-25 22:10:32
Edit Download
34.89 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
14.78 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
2.57 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
39.83 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
70.64 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
15.56 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
7.33 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
253 B lrw-r--r-- 2025-08-25 19:56:42
Edit Download
7.96 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
3.10 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
969 B lrw-r--r-- 2025-08-25 19:56:42
Edit Download
15.63 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
7.22 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
12.25 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
6.53 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
3.42 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
5.84 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
1.97 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
4.30 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
2.91 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
16.46 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
40.60 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
19.69 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
33.92 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
17.12 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
7.27 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
6.62 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
16.49 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
1.79 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
29.82 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
6.67 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
9.00 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
19.39 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
12.01 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
17.11 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
6.74 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
30.87 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
4.99 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
3.71 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
24.72 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
29.96 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
6.34 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
154.32 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
6.72 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
10.92 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
4.77 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
3.38 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
11.18 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
62.20 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
2.46 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
8.38 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
19.01 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
27.68 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
7.15 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
3.33 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
1.87 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
30.88 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
7.28 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
7.35 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
10.75 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
19.10 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
18.12 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
39.91 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
5.17 KB lrw-r--r-- 2023-09-26 18:11:24
Edit Download
979 B lrw-r--r-- 2025-08-25 19:56:42
Edit Download
18.44 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
10.24 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
1.77 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
34.90 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
7.19 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
159.71 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
64.27 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
27.95 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
4.69 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
2.92 KB lrw-r--r-- 2019-01-09 05:04:50
Edit Download
42.63 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
2.25 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
22.46 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
13.01 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
3.27 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
18.00 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
210.39 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
25.70 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
115.51 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
373 B lrw-r--r-- 2023-09-26 18:11:24
Edit Download
343 B lrw-r--r-- 2023-09-26 18:11:23
Edit Download
338 B lrw-r--r-- 2023-09-26 18:11:23
Edit Download
100.69 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
128.46 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
15.99 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
41.66 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
400 B lrw-r--r-- 2023-09-26 18:11:23
Edit Download
11.10 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
35.84 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
2.24 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
187.07 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
338 B lrw-r--r-- 2023-09-26 18:11:24
Edit Download
37.28 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
4.02 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
104.66 KB lrw-r--r-- 2026-03-02 03:29:45
Edit Download
5.38 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
3.05 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
2.61 KB lrw-r--r-- 2020-01-29 00:45:18
Edit Download
1.16 KB lrw-r--r-- 2020-01-29 00:45:18
Edit Download
4.04 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
3.71 KB lrw-r--r-- 2020-01-29 00:45:18
Edit Download
22.86 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
9.52 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
334.88 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
280.81 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
14.22 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
8.38 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
168.46 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
20.76 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
24.72 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
5.72 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
4.63 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
72.73 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
66.92 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
154.10 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
55.12 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
162 B lrw-r--r-- 2019-10-08 17:19:04
Edit Download
61.58 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
215.33 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
63.71 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
25.24 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
4.81 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
6.48 KB lrw-r--r-- 2023-09-26 18:11:24
Edit Download
21.25 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
2.68 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
89.44 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
19.42 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
3.69 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
4.10 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
40.35 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
25.38 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
43.33 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
100.65 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
6.18 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
119.82 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
34.63 KB lrw-r--r-- 2023-09-26 18:11:23
Edit Download
6.94 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
67.04 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
10.62 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
284.88 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
36.17 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
200 B lrw-r--r-- 2020-11-12 11:17:07
Edit Download
200 B lrw-r--r-- 2020-11-12 11:17:07
Edit Download
97.91 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
30.02 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
19.08 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
5.06 KB lrw-r--r-- 2022-05-25 19:31:47
Edit Download
255 B lrw-r--r-- 2020-11-16 22:52:05
Edit Download
22.57 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
130.14 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
7.53 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
258 B lrw-r--r-- 2020-02-06 06:33:11
Edit Download
23.49 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
3.16 KB lrw-r--r-- 2021-10-30 15:48:10
Edit Download
8.36 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
441 B lrw-r--r-- 2020-11-12 11:17:07
Edit Download
7.39 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
172.10 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
544 B lrw-r--r-- 2025-08-25 19:56:43
Edit Download
2.94 KB lrw-r--r-- 2020-05-26 09:37:10
Edit Download
23.59 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
1.49 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
2.77 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
6.09 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
8.50 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
131.16 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
36.62 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
171.70 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
6.41 KB lrw-r--r-- 2025-08-25 19:56:43
Edit Download
1.06 KB lrw-r--r-- 2025-10-01 04:00:09
Edit Download
69.06 KB lrw-r--r-- 2025-08-25 19:56:42
Edit Download
445 B lrw-r--r-- 2023-09-26 18:11:23
Edit Download
799 B lrw-r--r-- 2025-08-25 19:56:42
Edit Download
If ZipArchive is unavailable, a .tar will be created (no compression).