Automattic\WooCommerce\Admin\API\Reports\PerformanceIndicators

Controller::get_item_schema()publicWC 1.0

Get the Report's schema, conforming to JSON Schema.

Method of the class: Controller{}

No Hooks.

Return

Array.

Usage

$Controller = new Controller();
$Controller->get_item_schema();

Controller::get_item_schema() code WC 9.8.2

public function get_item_schema() {
	$indicator_data = $this->get_indicator_data();
	if ( is_wp_error( $indicator_data ) ) {
		$allowed_stats = array();
	} else {
		$allowed_stats = $this->allowed_stats;
	}

	$schema = array(
		'$schema'    => 'http://json-schema.org/draft-04/schema#',
		'title'      => 'report_performance_indicator',
		'type'       => 'object',
		'properties' => array(
			'stat'   => array(
				'description' => __( 'Unique identifier for the resource.', 'woocommerce' ),
				'type'        => 'string',
				'context'     => array( 'view', 'edit' ),
				'readonly'    => true,
				'enum'        => $allowed_stats,
			),
			'chart'  => array(
				'description' => __( 'The specific chart this stat referrers to.', 'woocommerce' ),
				'type'        => 'string',
				'context'     => array( 'view', 'edit' ),
				'readonly'    => true,
			),
			'label'  => array(
				'description' => __( 'Human readable label for the stat.', 'woocommerce' ),
				'type'        => 'string',
				'context'     => array( 'view', 'edit' ),
				'readonly'    => true,
			),
			'format' => array(
				'description' => __( 'Format of the stat.', 'woocommerce' ),
				'type'        => 'number',
				'context'     => array( 'view', 'edit' ),
				'readonly'    => true,
				'enum'        => array( 'number', 'currency' ),
			),
			'value'  => array(
				'description' => __( 'Value of the stat. Returns null if the stat does not exist or cannot be loaded.', 'woocommerce' ),
				'type'        => 'number',
				'context'     => array( 'view', 'edit' ),
				'readonly'    => true,
			),
		),
	);

	return $this->add_additional_fields_schema( $schema );
}