$css ) { wp_enqueue_style( $handle . '-' . $i, TURTLEREPORT_URL . 'assets/build/' . $css, array( 'turtlereport-shell' ), (string) $item['version'] ); } wp_enqueue_script( $handle, TURTLEREPORT_URL . 'assets/build/' . $item['file'], array_values( array_unique( array_merge( $dependencies, $item['dependencies'] ) ) ), (string) $item['version'], true ); wp_set_script_translations( $handle, 'turtlereport', TURTLEREPORT_DIR . 'languages' ); return true; } /** * Accepts generated files directly under the build directory only. * * @param mixed $file Manifest path. * @param string $extension Expected extension. * @return bool */ private static function valid_file( $file, $extension ) { return is_string( $file ) && preg_match( '/^[a-z0-9][a-z0-9._-]*\.' . $extension . '$/iD', $file ) && is_file( TURTLEREPORT_DIR . 'assets/build/' . $file ) && ! is_link( TURTLEREPORT_DIR . 'assets/build/' . $file ); } }