Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
85.71% covered (warning)
85.71%
6 / 7
50.00% covered (danger)
50.00%
1 / 2
CRAP
n/a
0 / 0
Automattic\Jetpack\PremiumAnalytics\configure_assets_url
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
Automattic\Jetpack\PremiumAnalytics\inject_assets_url_script_data
83.33% covered (warning)
83.33%
5 / 6
0.00% covered (danger)
0.00%
0 / 1
4.07
1<?php
2/**
3 * Where the dashboard loads its image files from.
4 *
5 * @package automattic/jetpack-premium-analytics
6 */
7
8namespace Automattic\Jetpack\PremiumAnalytics;
9
10use Automattic\Jetpack\Assets;
11
12/**
13 * Configures the assets URL script data.
14 *
15 * @since 0.14.0
16 *
17 * @return void
18 */
19function configure_assets_url() {
20    add_filter( 'jetpack_admin_js_script_data', __NAMESPACE__ . '\\inject_assets_url_script_data', 20 );
21}
22
23/**
24 * Injects the URL of the copied `build/images/` directory into JetpackScriptData.
25 *
26 * @since 0.14.0
27 *
28 * @param array $data The script data passed by the assets package.
29 * @return array
30 */
31function inject_assets_url_script_data( array $data ): array {
32    if ( ! Analytics::is_dashboard_request() ) {
33        return $data;
34    }
35
36    if ( ! isset( $data['premium_analytics'] ) || ! is_array( $data['premium_analytics'] ) ) {
37        $data['premium_analytics'] = array();
38    }
39
40    $data['premium_analytics']['assets_url'] = trailingslashit( Assets::normalize_path( plugins_url( '../build/images/', __FILE__ ) ) );
41
42    return $data;
43}