PluginProbe
Discount Rules for WooCommerce – Disco | Dynamic Pricing, Conditions, Bulk, Bundle, BOGO / 1.4.14
Discount Rules for WooCommerce – Disco | Dynamic Pricing, Conditions, Bulk, Bundle, BOGO v1.4.14
1.4.14 1.4.13 1.4.12 1.4.11 1.4.10 1.4.9 1.4.8 1.4.7 1.4.6 1.4.5 1.4.4 1.4.3 1.4.2 1.4.1 1.4.0 1.3.54 1.3.53 1.3.52 1.3.51 1.3.50 1.3.49 1.3.48 1.3.47 1.3.46 1.3.45 All 177 releases
disco / vendor / inpsyde / assets / src / Loader / WebpackManifestLoader.php

WebpackManifestLoader.php in Discount Rules for WooCommerce – Disco | Dynamic Pricing, Conditions, Bulk, Bundle, BOGO 1.4.14, at vendor/inpsyde/assets/src/Loader/WebpackManifestLoader.php

53 lines 1.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 /*
4 * This file is part of the Assets package.
5 *
6 * (c) Inpsyde GmbH
7 *
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
10 */
11
12 declare(strict_types=1);
13
14 namespace Inpsyde\Assets\Loader;
15
16 /**
17 * Implementation of Webpack manifest.json parsing into Assets.
18 *
19 * @link https://www.npmjs.com/package/webpack-manifest-plugin
20 *
21 * @package Inpsyde\Assets\Loader
22 */
23 class WebpackManifestLoader extends AbstractWebpackLoader
24 {
25 /**
26 * {@inheritDoc}
27 */
28 protected function parseData(array $data, string $resource): array
29 {
30 $directory = trailingslashit(dirname($resource));
31 $assets = [];
32 foreach ($data as $handle => $file) {
33 // It can be possible, that the "handle"-key is a filepath.
34 $handle = pathinfo($handle, PATHINFO_FILENAME);
35
36 $sanitizedFile = $this->sanitizeFileName($file);
37
38 $fileUrl = (! $this->directoryUrl)
39 ? $file
40 : $this->directoryUrl . $sanitizedFile;
41
42 $filePath = $directory . $sanitizedFile;
43
44 $asset = $this->buildAsset($handle, $fileUrl, $filePath);
45 if ($asset !== null) {
46 $assets[] = $asset;
47 }
48 }
49
50 return $assets;
51 }
52 }
53