From e2e749931d02e55d4581f6e7b02f6ff2e45898bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ji=C5=99=C3=AD=20Pudil?= Date: Fri, 13 Nov 2020 11:02:24 +0100 Subject: [PATCH] Contributted --- .docs/README.md | 112 ++++++++++++++ {doc => .docs}/debug_panel.png | Bin README.md | 140 ++++-------------- composer.json | 9 +- src/AssetLocator.php | 6 +- .../AssetNameResolverInterface.php | 2 +- .../CannotResolveAssetNameException.php | 2 +- .../DebuggerAwareAssetNameResolver.php | 2 +- .../IdentityAssetNameResolver.php | 2 +- .../ManifestAssetNameResolver.php | 6 +- .../StaticAssetNameResolver.php | 2 +- src/BasePath/BasePathProvider.php | 2 +- src/BasePath/NetteHttpBasePathProvider.php | 2 +- src/BuildDirectoryProvider.php | 4 +- src/DI/WebpackExtension.php | 34 ++--- src/Debugging/WebpackPanel.php | 8 +- .../templates/WebpackPanel.panel.phtml | 2 +- .../templates/WebpackPanel.tab.phtml | 2 +- src/DevServer/DevServer.php | 4 +- src/DevServer/Http/Client.php | 2 +- src/DevServer/Http/CurlClient.php | 2 +- src/DevServer/Http/MockClient.php | 2 +- src/Latte/WebpackMacros.php | 2 +- src/Manifest/CannotLoadManifestException.php | 2 +- src/Manifest/ManifestLoader.php | 4 +- src/Manifest/ManifestMapper.php | 4 +- .../Mapper/AssetsWebpackPluginMapper.php | 4 +- .../Mapper/WebpackManifestPluginMapper.php | 4 +- src/PublicPathProvider.php | 6 +- .../AssetLocatorTest.phpt | 6 +- .../DebuggerAwareAssetNameResolverTest.phpt | 8 +- .../IdentityAssetNameResolverTest.phpt | 6 +- .../ManifestAssetNameResolverTest.phpt | 16 +- .../StaticAssetNameResolverTest.phpt | 8 +- .../AssetNameResolver/manifest.json | 0 .../BuildDirectoryProviderTest.phpt | 6 +- .../DI/WebpackExtensionTest.phpt | 30 ++-- .../DI/config/basic.neon | 2 +- .../DI/config/common.neon | 0 .../DI/config/ignoredAssets.neon | 2 +- .../DI/config/manifest.neon | 2 +- tests/DI/config/manifestWithMapper.neon | 13 ++ .../DI/config/missingBuildDirectory.neon | 2 +- .../DI/config/missingBuildPublicPath.neon | 2 +- .../DI/config/missingDevServerUrl.neon | 2 +- .../DI/config/noDebug.neon | 2 +- .../DI/config/optimizedManifest.neon | 2 +- .../DI/optimizedManifest.json | 0 .../DevServerTest.phpt | 8 +- .../Latte/WebpackMacrosTest.phpt | 16 +- .../Manifest/ManifestLoaderTest.phpt | 12 +- .../Mapper/AssetsWebpackPluginMapperTest.phpt | 6 +- .../WebpackManifestPluginMapperTest.phpt | 6 +- .../Manifest/manifest.json | 0 .../PublicPathProviderTest.phpt | 6 +- .../DI/config/manifestWithMapper.neon | 13 -- tests/bootstrap.php | 20 +-- 57 files changed, 302 insertions(+), 267 deletions(-) create mode 100644 .docs/README.md rename {doc => .docs}/debug_panel.png (100%) rename tests/{WebpackNetteAdapter => }/AssetLocatorTest.phpt (93%) rename tests/{WebpackNetteAdapter => }/AssetNameResolver/DebuggerAwareAssetNameResolverTest.phpt (69%) rename tests/{WebpackNetteAdapter => }/AssetNameResolver/IdentityAssetNameResolverTest.phpt (67%) rename tests/{WebpackNetteAdapter => }/AssetNameResolver/ManifestAssetNameResolverTest.phpt (69%) rename tests/{WebpackNetteAdapter => }/AssetNameResolver/StaticAssetNameResolverTest.phpt (73%) rename tests/{WebpackNetteAdapter => }/AssetNameResolver/manifest.json (100%) rename tests/{WebpackNetteAdapter => }/BuildDirectoryProviderTest.phpt (82%) rename tests/{WebpackNetteAdapter => }/DI/WebpackExtensionTest.phpt (84%) rename tests/{WebpackNetteAdapter => }/DI/config/basic.neon (65%) rename tests/{WebpackNetteAdapter => }/DI/config/common.neon (100%) rename tests/{WebpackNetteAdapter => }/DI/config/ignoredAssets.neon (70%) rename tests/{WebpackNetteAdapter => }/DI/config/manifest.neon (67%) create mode 100644 tests/DI/config/manifestWithMapper.neon rename tests/{WebpackNetteAdapter => }/DI/config/missingBuildDirectory.neon (56%) rename tests/{WebpackNetteAdapter => }/DI/config/missingBuildPublicPath.neon (58%) rename tests/{WebpackNetteAdapter => }/DI/config/missingDevServerUrl.neon (60%) rename tests/{WebpackNetteAdapter => }/DI/config/noDebug.neon (54%) rename tests/{WebpackNetteAdapter => }/DI/config/optimizedManifest.neon (65%) rename tests/{WebpackNetteAdapter => }/DI/optimizedManifest.json (100%) rename tests/{WebpackNetteAdapter => }/DevServerTest.phpt (87%) rename tests/{WebpackNetteAdapter => }/Latte/WebpackMacrosTest.phpt (64%) rename tests/{WebpackNetteAdapter => }/Manifest/ManifestLoaderTest.phpt (73%) rename tests/{WebpackNetteAdapter => }/Manifest/Mapper/AssetsWebpackPluginMapperTest.phpt (71%) rename tests/{WebpackNetteAdapter => }/Manifest/Mapper/WebpackManifestPluginMapperTest.phpt (70%) rename tests/{WebpackNetteAdapter => }/Manifest/manifest.json (100%) rename tests/{WebpackNetteAdapter => }/PublicPathProviderTest.phpt (85%) delete mode 100644 tests/WebpackNetteAdapter/DI/config/manifestWithMapper.neon diff --git a/.docs/README.md b/.docs/README.md new file mode 100644 index 0000000..c4e6f97 --- /dev/null +++ b/.docs/README.md @@ -0,0 +1,112 @@ +# Webpack + +## Contents + +- [Setup](#setup) +- [Usage](#usage) + +## Setup + +```bash +composer require contributte/webpack +``` + +## Usage + +Register the extension in your config file, and configure it. The two `build` options are mandatory: + +```yaml +extensions: + webpack: Contributte\Webpack\DI\WebpackExtension(%debugMode%, %consoleMode%) + +webpack: + build: + directory: %wwwDir%/dist + publicPath: dist/ +``` + + +Now you can use the `{webpack}` macro in your templates. It automatically expands the provided asset name to the full path as configured: + +```html + +``` + + +### webpack-dev-server integration + +You might want to use the Webpack's [dev server](https://www.npmjs.com/package/webpack-dev-server) to facilitate the development of client-side assets. But maybe once you're done with the client-side, you would like to build the back-end without having to start up the dev server. + +This package effectively solves this problem: it automatically serves assets from the dev server if available (i.e. it responds within a specified timeout), and falls back to the build directory otherwise. All you have to do is configure the dev server URL. The dev server is enabled automatically in debug mode; you can override this setting via `enabled` option: + +```yaml +webpack: + devServer: + enabled: %debugMode% # default + url: http://localhost:3000 + timeout: 0.1 # (seconds) default +``` + +#### Ignored assets + +You can also configure a set of asset names that should be ignored (i.e. resolved to an empty data URI) if the dev-server is available. This can be helpful e.g. if you use [`style-loader`](https://www.npmjs.com/package/style-loader) in development which does not emit any CSS files. + +```yaml +webpack: + devServer: + ignoredAssets: + - main.css +``` + +#### Public URL (e.g. Docker usage) + +Dev-server might have different URLs for different access points. For example, when running in Docker Compose setup, the Nette application accesses it via the internal Docker network, while you access it in the browser via the exposed port. For this, you can set up a different `publicUrl`. + +```yaml +webpack: + devServer: + url: http://webpack-dev-server:3000 # URL over internal Docker network + publicUrl: http://localhost:3030 # exposed port from the dev-server container +``` + + +### Asset resolvers and manifest file + +You might want to include the Webpack's asset hash in its file name for assets caching (and automatic cache busting in new releases) in the user agent. But how do you reference the asset files in your code if their names are dynamic? + +This package comes to the rescue. You can employ the [`webpack-manifest-plugin`](https://www.npmjs.com/package/webpack-manifest-plugin) or some similar plugin (see below) to produce a manifest file, and then configure the adapter to use it: + +```yaml +webpack: + manifest: + name: manifest.json +``` + +This way, you can keep using the original asset names, and they get expanded automatically following the resolutions from the manifest file. + +This package automatically optimizes this in production environment by loading the manifest file in compile time. + + +#### Manifest mappers + +By default, the manifest loader supports the aforementioned `webpack-manifest-plugin`. If you use a different plugin that produces the manifest in a different format, you can implement and configure a mapper for it. This package comes bundled with a mapper for the [`assets-webpack-plugin`](https://www.npmjs.com/package/assets-webpack-plugin): + +```yaml +webpack: + manifest: + name: manifest.json + mapper: Contributte\Webpack\Manifest\Mapper\AssetsWebpackPluginMapper +``` + +You can also implement your own mapper, simply extend `Contributte\Webpack\Manifest\ManifestMapper` and implement its `map()` method. It takes the parsed JSON content of the manifest file and is expected to return a flat array mapping asset names to file names. + + +### Debugger + +In development environment, this package registers its own debug bar panel into Tracy, giving you the overview of + +- what assets have been resolved and how; +- the path from where the assets are served; +- whether the dev server is enabled and available. + +![Debug bar panel](debug_panel.png) diff --git a/doc/debug_panel.png b/.docs/debug_panel.png similarity index 100% rename from doc/debug_panel.png rename to .docs/debug_panel.png diff --git a/README.md b/README.md index c502c11..a8af211 100644 --- a/README.md +++ b/README.md @@ -1,119 +1,41 @@ -# Oops/WebpackNetteAdapter +# Webpack -[![Build Status](https://img.shields.io/github/workflow/status/o2ps/WebpackNetteAdapter/Test)](https://github.com/o2ps/WebpackNetteAdapter/actions?query=workflow%3ATest) -[![Code Coverage](https://img.shields.io/codecov/c/github/o2ps/WebpackNetteAdapter.svg)](https://codecov.io/gh/o2ps/WebpackNetteAdapter) -[![Downloads this Month](https://img.shields.io/packagist/dm/oops/webpack-nette-adapter.svg)](https://packagist.org/packages/oops/webpack-nette-adapter) -[![Latest stable](https://img.shields.io/packagist/v/oops/webpack-nette-adapter.svg)](https://packagist.org/packages/oops/webpack-nette-adapter) -[![License](https://img.shields.io/packagist/l/oops/webpack-nette-adapter)](https://packagist.org/packages/oops/webpack-nette-adapter) +[Webpack](https://github.com/webpack) integration into [Nette Framework](https://github.com/nette). -WebpackNetteAdapter is a tool that helps integrate your Nette Framework application with assets built via Webpack. +[![Build Status](https://img.shields.io/github/workflow/status/contributte/webpack/Test)](https://github.com/contributte/webpack/actions?query=workflow%3ATest) +[![Code Coverage](https://img.shields.io/codecov/c/github/contributte/webpack.svg)](https://codecov.io/gh/contributte/webpack) +[![Downloads this Month](https://img.shields.io/packagist/dm/contributte/webpack.svg)](https://packagist.org/packages/contributte/webpack) +[![Latest stable](https://img.shields.io/packagist/v/contributte/webpack.svg)](https://packagist.org/packages/contributte/webpack) +[![License](https://img.shields.io/packagist/l/contributte/webpack)](https://packagist.org/packages/contributte/webpack) +## Discussion / Help -## Installation and requirements +[![Join the chat](https://img.shields.io/gitter/room/contributte/contributte.svg?style=flat-square)](http://bit.ly/ctteg) -```bash -$ composer require oops/webpack-nette-adapter -``` +## Documentation -Oops/WebpackNetteAdapter requires PHP >= 7.4. +- [Setup](.docs/README.md#setup) +- [Usage](.docs/README.md#usage) +## Version -## Usage +| State | Version | Branch | Nette | PHP | +|-------------|--------------|----------|----------|----------| +| stable | `^2.0` | `master` | `3.0+` | `>= 7.4` | +| development | `dev-master` | `master` | `3.0+` | `>= 7.4` | -Register the extension in your config file, and configure it. The two `build` options are mandatory: +## Maintainers -```yaml -extensions: - webpack: Oops\WebpackNetteAdapter\DI\WebpackExtension(%debugMode%, %consoleMode%) - -webpack: - build: - directory: %wwwDir%/dist - publicPath: dist/ -``` - - -Now you can use the `{webpack}` macro in your templates. It automatically expands the provided asset name to the full path as configured: - -```html - -``` - - -### webpack-dev-server integration - -You might want to use the Webpack's [dev server](https://www.npmjs.com/package/webpack-dev-server) to facilitate the development of client-side assets. But maybe once you're done with the client-side, you would like to build the back-end without having to start up the dev server. - -WebpackNetteAdapter effectively solves this problem: it automatically serves assets from the dev server if available (i.e. it responds within a specified timeout), and falls back to the build directory otherwise. All you have to do is configure the dev server URL. The dev server is enabled automatically in debug mode; you can override this setting via `enabled` option: - -```yaml -webpack: - devServer: - enabled: %debugMode% # default - url: http://localhost:3000 - timeout: 0.1 # (seconds) default -``` - -#### Ignored assets - -You can also configure a set of asset names that should be ignored (i.e. resolved to an empty data URI) if the dev-server is available. This can be helpful e.g. if you use [`style-loader`](https://www.npmjs.com/package/style-loader) in development which does not emit any CSS files. - -```yaml -webpack: - devServer: - ignoredAssets: - - main.css -``` - -#### Public URL (e.g. Docker usage) - -Dev-server might have different URLs for different access points. For example, when running in Docker Compose setup, the Nette application accesses it via the internal Docker network, while you access it in the browser via the exposed port. For this, you can set up a different `publicUrl`. - -```yaml -webpack: - devServer: - url: http://webpack-dev-server:3000 # URL over internal Docker network - publicUrl: http://localhost:3030 # exposed port from the dev-server container -``` - - -### Asset resolvers and manifest file - -You might want to include the Webpack's asset hash in its file name for assets caching (and automatic cache busting in new releases) in the user agent. But how do you reference the asset files in your code if their names are dynamic? - -WebpackNetteAdapter comes to the rescue. You can employ the [`webpack-manifest-plugin`](https://www.npmjs.com/package/webpack-manifest-plugin) or some similar plugin (see below) to produce a manifest file, and then configure the adapter to use it: - -```yaml -webpack: - manifest: - name: manifest.json -``` - -This way, you can keep using the original asset names, and they get expanded automatically following the resolutions from the manifest file. - -WebpackNetteAdapter automatically optimizes this in production environment by loading the manifest file in compile time. - - -#### Manifest mappers - -By default, WebpackNetteAdapter supports the aforementioned `webpack-manifest-plugin`. If you use a different plugin that produces the manifest in a different format, you can implement and configure a mapper for it. WebpackNetteAdapter comes bundled with a mapper for the [`assets-webpack-plugin`](https://www.npmjs.com/package/assets-webpack-plugin): - -```yaml -webpack: - manifest: - name: manifest.json - mapper: Oops\WebpackNetteAdapter\Manifest\Mapper\AssetsWebpackPluginMapper -``` - -You can also implement your own mapper, simply extend `Oops\WebpackNetteAdapter\Manifest\ManifestMapper` and implement its `map()` method. It takes the parsed JSON content of the manifest file and is expected to return a flat array mapping asset names to file names. - - -### Debugger - -In development environment, WebpackNetteAdapter registers its own debug bar panel into Tracy, giving you the overview of - -- what assets have been resolved and how; -- the path from where the assets are served; -- whether the dev server is enabled and available. - -![Debug bar panel](doc/debug_panel.png) + + + + + + +
+ + + +
+ Jiří Pudil +
diff --git a/composer.json b/composer.json index a86d73c..38b81ca 100644 --- a/composer.json +++ b/composer.json @@ -1,9 +1,10 @@ { - "name": "oops/webpack-nette-adapter", - "description": "Webpack adapter for Nette Framework.", + "name": "contributte/webpack", + "description": "Webpack integration for Nette Framework.", "keywords": ["nette", "webpack"], "type": "library", "license": "BSD-3-Clause", + "homepage": "https://github.com/contributte/webpack", "authors": [ { "name": "Jiří Pudil", @@ -13,7 +14,7 @@ ], "support": { "email": "me@jiripudil.cz", - "issues": "https://github.com/o2ps/WebpackNetteAdapter/issues" + "issues": "https://github.com/contributte/webpack/issues" }, "require": { "php": ">=7.4", @@ -35,7 +36,7 @@ }, "autoload": { "psr-4": { - "Oops\\WebpackNetteAdapter\\": "src/" + "Contributte\\Webpack\\": "src/" } }, "scripts": { diff --git a/src/AssetLocator.php b/src/AssetLocator.php index 1b87b10..0e2d6f4 100644 --- a/src/AssetLocator.php +++ b/src/AssetLocator.php @@ -2,10 +2,10 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter; +namespace Contributte\Webpack; -use Oops\WebpackNetteAdapter\AssetNameResolver\AssetNameResolverInterface; -use Oops\WebpackNetteAdapter\DevServer\DevServer; +use Contributte\Webpack\AssetNameResolver\AssetNameResolverInterface; +use Contributte\Webpack\DevServer\DevServer; final class AssetLocator { diff --git a/src/AssetNameResolver/AssetNameResolverInterface.php b/src/AssetNameResolver/AssetNameResolverInterface.php index f0f277f..6061663 100644 --- a/src/AssetNameResolver/AssetNameResolverInterface.php +++ b/src/AssetNameResolver/AssetNameResolverInterface.php @@ -2,7 +2,7 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\AssetNameResolver; +namespace Contributte\Webpack\AssetNameResolver; interface AssetNameResolverInterface { diff --git a/src/AssetNameResolver/CannotResolveAssetNameException.php b/src/AssetNameResolver/CannotResolveAssetNameException.php index ea777a7..a105746 100644 --- a/src/AssetNameResolver/CannotResolveAssetNameException.php +++ b/src/AssetNameResolver/CannotResolveAssetNameException.php @@ -2,7 +2,7 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\AssetNameResolver; +namespace Contributte\Webpack\AssetNameResolver; final class CannotResolveAssetNameException extends \RuntimeException { diff --git a/src/AssetNameResolver/DebuggerAwareAssetNameResolver.php b/src/AssetNameResolver/DebuggerAwareAssetNameResolver.php index 156f772..e302af3 100644 --- a/src/AssetNameResolver/DebuggerAwareAssetNameResolver.php +++ b/src/AssetNameResolver/DebuggerAwareAssetNameResolver.php @@ -2,7 +2,7 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\AssetNameResolver; +namespace Contributte\Webpack\AssetNameResolver; final class DebuggerAwareAssetNameResolver implements AssetNameResolverInterface { diff --git a/src/AssetNameResolver/IdentityAssetNameResolver.php b/src/AssetNameResolver/IdentityAssetNameResolver.php index e262141..1a3eae4 100644 --- a/src/AssetNameResolver/IdentityAssetNameResolver.php +++ b/src/AssetNameResolver/IdentityAssetNameResolver.php @@ -2,7 +2,7 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\AssetNameResolver; +namespace Contributte\Webpack\AssetNameResolver; final class IdentityAssetNameResolver implements AssetNameResolverInterface { diff --git a/src/AssetNameResolver/ManifestAssetNameResolver.php b/src/AssetNameResolver/ManifestAssetNameResolver.php index 0695cfb..e2db304 100644 --- a/src/AssetNameResolver/ManifestAssetNameResolver.php +++ b/src/AssetNameResolver/ManifestAssetNameResolver.php @@ -2,10 +2,10 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\AssetNameResolver; +namespace Contributte\Webpack\AssetNameResolver; -use Oops\WebpackNetteAdapter\Manifest\CannotLoadManifestException; -use Oops\WebpackNetteAdapter\Manifest\ManifestLoader; +use Contributte\Webpack\Manifest\CannotLoadManifestException; +use Contributte\Webpack\Manifest\ManifestLoader; final class ManifestAssetNameResolver implements AssetNameResolverInterface { diff --git a/src/AssetNameResolver/StaticAssetNameResolver.php b/src/AssetNameResolver/StaticAssetNameResolver.php index 8c3d339..3a22720 100644 --- a/src/AssetNameResolver/StaticAssetNameResolver.php +++ b/src/AssetNameResolver/StaticAssetNameResolver.php @@ -2,7 +2,7 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\AssetNameResolver; +namespace Contributte\Webpack\AssetNameResolver; final class StaticAssetNameResolver implements AssetNameResolverInterface { diff --git a/src/BasePath/BasePathProvider.php b/src/BasePath/BasePathProvider.php index a72db5a..deccfe1 100644 --- a/src/BasePath/BasePathProvider.php +++ b/src/BasePath/BasePathProvider.php @@ -2,7 +2,7 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\BasePath; +namespace Contributte\Webpack\BasePath; interface BasePathProvider { diff --git a/src/BasePath/NetteHttpBasePathProvider.php b/src/BasePath/NetteHttpBasePathProvider.php index ee81a0f..ebe9e4d 100644 --- a/src/BasePath/NetteHttpBasePathProvider.php +++ b/src/BasePath/NetteHttpBasePathProvider.php @@ -2,7 +2,7 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\BasePath; +namespace Contributte\Webpack\BasePath; use Nette\Http\IRequest; diff --git a/src/BuildDirectoryProvider.php b/src/BuildDirectoryProvider.php index 2b1fd33..9666fc8 100644 --- a/src/BuildDirectoryProvider.php +++ b/src/BuildDirectoryProvider.php @@ -2,9 +2,9 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter; +namespace Contributte\Webpack; -use Oops\WebpackNetteAdapter\DevServer\DevServer; +use Contributte\Webpack\DevServer\DevServer; /** * @internal diff --git a/src/DI/WebpackExtension.php b/src/DI/WebpackExtension.php index c66765d..dda81b4 100644 --- a/src/DI/WebpackExtension.php +++ b/src/DI/WebpackExtension.php @@ -2,9 +2,19 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\DI; - -use Nette; +namespace Contributte\Webpack\DI; + +use Contributte\Webpack\AssetLocator; +use Contributte\Webpack\AssetNameResolver; +use Contributte\Webpack\BasePath\BasePathProvider; +use Contributte\Webpack\BasePath\NetteHttpBasePathProvider; +use Contributte\Webpack\BuildDirectoryProvider; +use Contributte\Webpack\Debugging\WebpackPanel; +use Contributte\Webpack\DevServer\DevServer; +use Contributte\Webpack\DevServer\Http\CurlClient; +use Contributte\Webpack\Manifest\ManifestLoader; +use Contributte\Webpack\Manifest\Mapper\WebpackManifestPluginMapper; +use Contributte\Webpack\PublicPathProvider; use Nette\Bridges\ApplicationLatte\ILatteFactory; use Nette\DI\CompilerExtension; use Nette\DI\Definitions\FactoryDefinition; @@ -12,17 +22,7 @@ use Nette\DI\Definitions\Statement; use Nette\DI\MissingServiceException; use Nette\Schema\Expect; -use Oops\WebpackNetteAdapter\AssetLocator; -use Oops\WebpackNetteAdapter\AssetNameResolver; -use Oops\WebpackNetteAdapter\BasePath\BasePathProvider; -use Oops\WebpackNetteAdapter\BasePath\NetteHttpBasePathProvider; -use Oops\WebpackNetteAdapter\BuildDirectoryProvider; -use Oops\WebpackNetteAdapter\Debugging\WebpackPanel; -use Oops\WebpackNetteAdapter\DevServer\DevServer; -use Oops\WebpackNetteAdapter\DevServer\Http\CurlClient; -use Oops\WebpackNetteAdapter\Manifest\ManifestLoader; -use Oops\WebpackNetteAdapter\Manifest\Mapper\WebpackManifestPluginMapper; -use Oops\WebpackNetteAdapter\PublicPathProvider; +use Nette\Schema\Schema; use Tracy; /** @@ -40,7 +40,7 @@ public function __construct(bool $debugMode, ?bool $consoleMode = null) $this->consoleMode = $consoleMode ?? \PHP_SAPI === 'cli'; } - public function getConfigSchema(): Nette\Schema\Schema + public function getConfigSchema(): Schema { return Expect::structure([ 'debugger' => Expect::bool($this->debugMode), @@ -62,7 +62,7 @@ public function getConfigSchema(): Nette\Schema\Schema ])->castTo('array'), 'manifest' => Expect::structure([ 'name' => Expect::string()->nullable(), - 'optimize' => Expect::bool(!$this->debugMode && (!$this->consoleMode || (bool) \getenv('OOPS_WEBPACK_OPTIMIZE_MANIFEST'))), + 'optimize' => Expect::bool(!$this->debugMode && (!$this->consoleMode || (bool) \getenv('CONTRIBUTTE_WEBPACK_OPTIMIZE_MANIFEST'))), 'mapper' => Expect::anyOf(Expect::string(), Expect::type(Statement::class))->default(WebpackManifestPluginMapper::class), ])->castTo('array'), ])->castTo('array'); @@ -116,7 +116,7 @@ public function loadConfiguration(): void $definition ->addSetup('?->addProvider(?, ?)', ['@self', 'webpackAssetLocator', $assetLocator]) - ->addSetup('?->onCompile[] = function ($engine) { Oops\WebpackNetteAdapter\Latte\WebpackMacros::install($engine->getCompiler()); }', ['@self']); + ->addSetup('?->onCompile[] = function ($engine) { Contributte\Webpack\Latte\WebpackMacros::install($engine->getCompiler()); }', ['@self']); } catch (MissingServiceException $e) { // ignore } diff --git a/src/Debugging/WebpackPanel.php b/src/Debugging/WebpackPanel.php index efcb745..6ae13bd 100644 --- a/src/Debugging/WebpackPanel.php +++ b/src/Debugging/WebpackPanel.php @@ -2,11 +2,11 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\Debugging; +namespace Contributte\Webpack\Debugging; -use Oops\WebpackNetteAdapter\AssetNameResolver\DebuggerAwareAssetNameResolver; -use Oops\WebpackNetteAdapter\DevServer\DevServer; -use Oops\WebpackNetteAdapter\PublicPathProvider; +use Contributte\Webpack\AssetNameResolver\DebuggerAwareAssetNameResolver; +use Contributte\Webpack\DevServer\DevServer; +use Contributte\Webpack\PublicPathProvider; use Tracy\IBarPanel; final class WebpackPanel implements IBarPanel diff --git a/src/Debugging/templates/WebpackPanel.panel.phtml b/src/Debugging/templates/WebpackPanel.panel.phtml index 3c3996f..afed0d4 100644 --- a/src/Debugging/templates/WebpackPanel.panel.phtml +++ b/src/Debugging/templates/WebpackPanel.panel.phtml @@ -1,6 +1,6 @@ diff --git a/src/DevServer/DevServer.php b/src/DevServer/DevServer.php index d737c9b..3d725ed 100644 --- a/src/DevServer/DevServer.php +++ b/src/DevServer/DevServer.php @@ -2,9 +2,9 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\DevServer; +namespace Contributte\Webpack\DevServer; -use Oops\WebpackNetteAdapter\DevServer\Http\Client; +use Contributte\Webpack\DevServer\Http\Client; final class DevServer { diff --git a/src/DevServer/Http/Client.php b/src/DevServer/Http/Client.php index 17a3d2d..330d2f3 100644 --- a/src/DevServer/Http/Client.php +++ b/src/DevServer/Http/Client.php @@ -2,7 +2,7 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\DevServer\Http; +namespace Contributte\Webpack\DevServer\Http; interface Client { diff --git a/src/DevServer/Http/CurlClient.php b/src/DevServer/Http/CurlClient.php index bf587ed..e4ed2ef 100644 --- a/src/DevServer/Http/CurlClient.php +++ b/src/DevServer/Http/CurlClient.php @@ -2,7 +2,7 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\DevServer\Http; +namespace Contributte\Webpack\DevServer\Http; /** * @internal diff --git a/src/DevServer/Http/MockClient.php b/src/DevServer/Http/MockClient.php index 226c19e..43ddd1c 100644 --- a/src/DevServer/Http/MockClient.php +++ b/src/DevServer/Http/MockClient.php @@ -2,7 +2,7 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\DevServer\Http; +namespace Contributte\Webpack\DevServer\Http; /** * @internal diff --git a/src/Latte/WebpackMacros.php b/src/Latte/WebpackMacros.php index dcb44e7..217bf81 100644 --- a/src/Latte/WebpackMacros.php +++ b/src/Latte/WebpackMacros.php @@ -2,7 +2,7 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\Latte; +namespace Contributte\Webpack\Latte; use Latte\Compiler; use Latte\MacroNode; diff --git a/src/Manifest/CannotLoadManifestException.php b/src/Manifest/CannotLoadManifestException.php index f652dac..1cb0600 100644 --- a/src/Manifest/CannotLoadManifestException.php +++ b/src/Manifest/CannotLoadManifestException.php @@ -2,7 +2,7 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\Manifest; +namespace Contributte\Webpack\Manifest; final class CannotLoadManifestException extends \RuntimeException { diff --git a/src/Manifest/ManifestLoader.php b/src/Manifest/ManifestLoader.php index d1c6ddc..42c23c8 100644 --- a/src/Manifest/ManifestLoader.php +++ b/src/Manifest/ManifestLoader.php @@ -2,10 +2,10 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\Manifest; +namespace Contributte\Webpack\Manifest; +use Contributte\Webpack\BuildDirectoryProvider; use Nette\Utils\Json; -use Oops\WebpackNetteAdapter\BuildDirectoryProvider; /** * @internal diff --git a/src/Manifest/ManifestMapper.php b/src/Manifest/ManifestMapper.php index 0631549..92d5caf 100644 --- a/src/Manifest/ManifestMapper.php +++ b/src/Manifest/ManifestMapper.php @@ -2,7 +2,7 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\Manifest; +namespace Contributte\Webpack\Manifest; abstract class ManifestMapper { @@ -11,7 +11,7 @@ final public function __construct() } /** - * Modifies manifest contents + * Transforms manifest content to a flat map from asset names to resolved names. * @param array $manifest * @return array */ diff --git a/src/Manifest/Mapper/AssetsWebpackPluginMapper.php b/src/Manifest/Mapper/AssetsWebpackPluginMapper.php index c219dee..a2b3c35 100644 --- a/src/Manifest/Mapper/AssetsWebpackPluginMapper.php +++ b/src/Manifest/Mapper/AssetsWebpackPluginMapper.php @@ -2,9 +2,9 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\Manifest\Mapper; +namespace Contributte\Webpack\Manifest\Mapper; -use Oops\WebpackNetteAdapter\Manifest\ManifestMapper; +use Contributte\Webpack\Manifest\ManifestMapper; /** * Maps from https://github.com/ztoben/assets-webpack-plugin format to flat files diff --git a/src/Manifest/Mapper/WebpackManifestPluginMapper.php b/src/Manifest/Mapper/WebpackManifestPluginMapper.php index 8bef217..c7e517a 100644 --- a/src/Manifest/Mapper/WebpackManifestPluginMapper.php +++ b/src/Manifest/Mapper/WebpackManifestPluginMapper.php @@ -2,9 +2,9 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter\Manifest\Mapper; +namespace Contributte\Webpack\Manifest\Mapper; -use Oops\WebpackNetteAdapter\Manifest\ManifestMapper; +use Contributte\Webpack\Manifest\ManifestMapper; /** * Default identity mapper compatible with webpack-manifest-mapper's flat structure. diff --git a/src/PublicPathProvider.php b/src/PublicPathProvider.php index c52e156..17d2496 100644 --- a/src/PublicPathProvider.php +++ b/src/PublicPathProvider.php @@ -2,10 +2,10 @@ declare(strict_types=1); -namespace Oops\WebpackNetteAdapter; +namespace Contributte\Webpack; -use Oops\WebpackNetteAdapter\BasePath\BasePathProvider; -use Oops\WebpackNetteAdapter\DevServer\DevServer; +use Contributte\Webpack\BasePath\BasePathProvider; +use Contributte\Webpack\DevServer\DevServer; /** * @internal diff --git a/tests/WebpackNetteAdapter/AssetLocatorTest.phpt b/tests/AssetLocatorTest.phpt similarity index 93% rename from tests/WebpackNetteAdapter/AssetLocatorTest.phpt rename to tests/AssetLocatorTest.phpt index 994b84a..42754b8 100644 --- a/tests/WebpackNetteAdapter/AssetLocatorTest.phpt +++ b/tests/AssetLocatorTest.phpt @@ -2,13 +2,13 @@ declare(strict_types=1); -namespace OopsTests\WebpackNetteAdapter; +namespace Contributte\Webpack\Tests; -use Oops\WebpackNetteAdapter\AssetLocator; +use Contributte\Webpack\AssetLocator; use Tester\Assert; use Tester\TestCase; -require_once __DIR__ . '/../bootstrap.php'; +require_once __DIR__ . '/bootstrap.php'; /** * @testCase diff --git a/tests/WebpackNetteAdapter/AssetNameResolver/DebuggerAwareAssetNameResolverTest.phpt b/tests/AssetNameResolver/DebuggerAwareAssetNameResolverTest.phpt similarity index 69% rename from tests/WebpackNetteAdapter/AssetNameResolver/DebuggerAwareAssetNameResolverTest.phpt rename to tests/AssetNameResolver/DebuggerAwareAssetNameResolverTest.phpt index 7d76532..08e870e 100644 --- a/tests/WebpackNetteAdapter/AssetNameResolver/DebuggerAwareAssetNameResolverTest.phpt +++ b/tests/AssetNameResolver/DebuggerAwareAssetNameResolverTest.phpt @@ -2,14 +2,14 @@ declare(strict_types=1); -namespace OopsTests\WebpackNetteAdapter\AssetNameResolver; +namespace Contributte\Webpack\Tests\AssetNameResolver; -use Oops\WebpackNetteAdapter\AssetNameResolver\DebuggerAwareAssetNameResolver; -use Oops\WebpackNetteAdapter\AssetNameResolver\IdentityAssetNameResolver; +use Contributte\Webpack\AssetNameResolver\DebuggerAwareAssetNameResolver; +use Contributte\Webpack\AssetNameResolver\IdentityAssetNameResolver; use Tester\Assert; use Tester\TestCase; -require_once __DIR__ . '/../../bootstrap.php'; +require_once __DIR__ . '/../bootstrap.php'; /** * @testCase diff --git a/tests/WebpackNetteAdapter/AssetNameResolver/IdentityAssetNameResolverTest.phpt b/tests/AssetNameResolver/IdentityAssetNameResolverTest.phpt similarity index 67% rename from tests/WebpackNetteAdapter/AssetNameResolver/IdentityAssetNameResolverTest.phpt rename to tests/AssetNameResolver/IdentityAssetNameResolverTest.phpt index 5eeacc6..4715542 100644 --- a/tests/WebpackNetteAdapter/AssetNameResolver/IdentityAssetNameResolverTest.phpt +++ b/tests/AssetNameResolver/IdentityAssetNameResolverTest.phpt @@ -2,13 +2,13 @@ declare(strict_types=1); -namespace OopsTests\WebpackNetteAdapter\AssetNameResolver; +namespace Contributte\Webpack\Tests\AssetNameResolver; -use Oops\WebpackNetteAdapter\AssetNameResolver\IdentityAssetNameResolver; +use Contributte\Webpack\AssetNameResolver\IdentityAssetNameResolver; use Tester\Assert; use Tester\TestCase; -require_once __DIR__ . '/../../bootstrap.php'; +require_once __DIR__ . '/../bootstrap.php'; /** * @testCase diff --git a/tests/WebpackNetteAdapter/AssetNameResolver/ManifestAssetNameResolverTest.phpt b/tests/AssetNameResolver/ManifestAssetNameResolverTest.phpt similarity index 69% rename from tests/WebpackNetteAdapter/AssetNameResolver/ManifestAssetNameResolverTest.phpt rename to tests/AssetNameResolver/ManifestAssetNameResolverTest.phpt index 4097136..7aa8af8 100644 --- a/tests/WebpackNetteAdapter/AssetNameResolver/ManifestAssetNameResolverTest.phpt +++ b/tests/AssetNameResolver/ManifestAssetNameResolverTest.phpt @@ -2,17 +2,17 @@ declare(strict_types=1); -namespace OopsTests\WebpackNetteAdapter\AssetNameResolver; +namespace Contributte\Webpack\Tests\AssetNameResolver; -use Oops\WebpackNetteAdapter\AssetNameResolver\CannotResolveAssetNameException; -use Oops\WebpackNetteAdapter\AssetNameResolver\ManifestAssetNameResolver; -use Oops\WebpackNetteAdapter\Manifest\ManifestLoader; -use Oops\WebpackNetteAdapter\Manifest\Mapper\WebpackManifestPluginMapper; +use Contributte\Webpack\AssetNameResolver\CannotResolveAssetNameException; +use Contributte\Webpack\AssetNameResolver\ManifestAssetNameResolver; +use Contributte\Webpack\Manifest\ManifestLoader; +use Contributte\Webpack\Manifest\Mapper\WebpackManifestPluginMapper; use Tester\Assert; use Tester\TestCase; -use function OopsTests\WebpackNetteAdapter\createBuildDirectoryProvider; +use function Contributte\Webpack\Tests\createBuildDirectoryProvider; -require_once __DIR__ . '/../../bootstrap.php'; +require_once __DIR__ . '/../bootstrap.php'; /** * @testCase @@ -38,7 +38,7 @@ final class ManifestAssetNameResolverTest extends TestCase { $manifestLoader = new ManifestLoader( // parent directory doesn't contain manifest.json => throws CannotLoadManifestException - createBuildDirectoryProvider(__DIR__ . '/..'), + createBuildDirectoryProvider(__DIR__ . '/Webpack'), new WebpackManifestPluginMapper(), ); diff --git a/tests/WebpackNetteAdapter/AssetNameResolver/StaticAssetNameResolverTest.phpt b/tests/AssetNameResolver/StaticAssetNameResolverTest.phpt similarity index 73% rename from tests/WebpackNetteAdapter/AssetNameResolver/StaticAssetNameResolverTest.phpt rename to tests/AssetNameResolver/StaticAssetNameResolverTest.phpt index bc3671f..15baac4 100644 --- a/tests/WebpackNetteAdapter/AssetNameResolver/StaticAssetNameResolverTest.phpt +++ b/tests/AssetNameResolver/StaticAssetNameResolverTest.phpt @@ -2,14 +2,14 @@ declare(strict_types=1); -namespace OopsTests\WebpackNetteAdapter\AssetNameResolver; +namespace Contributte\Webpack\Tests\AssetNameResolver; -use Oops\WebpackNetteAdapter\AssetNameResolver\CannotResolveAssetNameException; -use Oops\WebpackNetteAdapter\AssetNameResolver\StaticAssetNameResolver; +use Contributte\Webpack\AssetNameResolver\CannotResolveAssetNameException; +use Contributte\Webpack\AssetNameResolver\StaticAssetNameResolver; use Tester\Assert; use Tester\TestCase; -require_once __DIR__ . '/../../bootstrap.php'; +require_once __DIR__ . '/../bootstrap.php'; /** * @testCase diff --git a/tests/WebpackNetteAdapter/AssetNameResolver/manifest.json b/tests/AssetNameResolver/manifest.json similarity index 100% rename from tests/WebpackNetteAdapter/AssetNameResolver/manifest.json rename to tests/AssetNameResolver/manifest.json diff --git a/tests/WebpackNetteAdapter/BuildDirectoryProviderTest.phpt b/tests/BuildDirectoryProviderTest.phpt similarity index 82% rename from tests/WebpackNetteAdapter/BuildDirectoryProviderTest.phpt rename to tests/BuildDirectoryProviderTest.phpt index 7e442eb..b1a7902 100644 --- a/tests/WebpackNetteAdapter/BuildDirectoryProviderTest.phpt +++ b/tests/BuildDirectoryProviderTest.phpt @@ -2,13 +2,13 @@ declare(strict_types=1); -namespace OopsTests\WebpackNetteAdapter; +namespace Contributte\Webpack\Tests; -use Oops\WebpackNetteAdapter\BuildDirectoryProvider; +use Contributte\Webpack\BuildDirectoryProvider; use Tester\Assert; use Tester\TestCase; -require_once __DIR__ . '/../bootstrap.php'; +require_once __DIR__ . '/bootstrap.php'; /** * @testCase diff --git a/tests/WebpackNetteAdapter/DI/WebpackExtensionTest.phpt b/tests/DI/WebpackExtensionTest.phpt similarity index 84% rename from tests/WebpackNetteAdapter/DI/WebpackExtensionTest.phpt rename to tests/DI/WebpackExtensionTest.phpt index 5ab2157..64814a8 100644 --- a/tests/WebpackNetteAdapter/DI/WebpackExtensionTest.phpt +++ b/tests/DI/WebpackExtensionTest.phpt @@ -2,28 +2,28 @@ declare(strict_types=1); -namespace OopsTests\WebpackNetteAdapter\DI; - +namespace Contributte\Webpack\Tests\DI; + +use Contributte\Webpack\AssetLocator; +use Contributte\Webpack\AssetNameResolver\AssetNameResolverInterface; +use Contributte\Webpack\AssetNameResolver\DebuggerAwareAssetNameResolver; +use Contributte\Webpack\AssetNameResolver\IdentityAssetNameResolver; +use Contributte\Webpack\AssetNameResolver\ManifestAssetNameResolver; +use Contributte\Webpack\AssetNameResolver\StaticAssetNameResolver; +use Contributte\Webpack\Debugging\WebpackPanel; +use Contributte\Webpack\DevServer\DevServer; +use Contributte\Webpack\PublicPathProvider; use Latte\Loaders\StringLoader; use Nette\Bridges\ApplicationLatte\ILatteFactory; use Nette\Configurator; use Nette\DI\Container; use Nette\DI\InvalidConfigurationException; -use Oops\WebpackNetteAdapter\AssetLocator; -use Oops\WebpackNetteAdapter\AssetNameResolver\AssetNameResolverInterface; -use Oops\WebpackNetteAdapter\AssetNameResolver\DebuggerAwareAssetNameResolver; -use Oops\WebpackNetteAdapter\AssetNameResolver\IdentityAssetNameResolver; -use Oops\WebpackNetteAdapter\AssetNameResolver\ManifestAssetNameResolver; -use Oops\WebpackNetteAdapter\AssetNameResolver\StaticAssetNameResolver; -use Oops\WebpackNetteAdapter\Debugging\WebpackPanel; -use Oops\WebpackNetteAdapter\DevServer\DevServer; -use Oops\WebpackNetteAdapter\PublicPathProvider; use Tester\Assert; use Tester\TestCase; use Tracy\Bar; -use function OopsTests\WebpackNetteAdapter\createEnabledDevServer; +use function Contributte\Webpack\Tests\createEnabledDevServer; -require_once __DIR__ . '/../../bootstrap.php'; +require_once __DIR__ . '/../bootstrap.php'; /** * @testCase @@ -54,7 +54,7 @@ final class WebpackExtensionTest extends TestCase Assert::type(PublicPathProvider::class, $container->getByType(PublicPathProvider::class)); Assert::type(DevServer::class, $devServer = $container->getByType(DevServer::class)); - /** @var \Oops\WebpackNetteAdapter\DevServer\DevServer $devServer */ + /** @var \Contributte\Webpack\DevServer\DevServer $devServer */ Assert::false($devServer->isEnabled()); /** @var Bar $bar */ @@ -91,7 +91,7 @@ final class WebpackExtensionTest extends TestCase public function testOptimizedManifest(): void { - \putenv('OOPS_WEBPACK_OPTIMIZE_MANIFEST=1'); + \putenv('CONTRIBUTTE_WEBPACK_OPTIMIZE_MANIFEST=1'); $container = $this->createContainer('optimizedManifest'); $resolver = $container->getByType(AssetNameResolverInterface::class); diff --git a/tests/WebpackNetteAdapter/DI/config/basic.neon b/tests/DI/config/basic.neon similarity index 65% rename from tests/WebpackNetteAdapter/DI/config/basic.neon rename to tests/DI/config/basic.neon index b9f19ff..da75e3a 100644 --- a/tests/WebpackNetteAdapter/DI/config/basic.neon +++ b/tests/DI/config/basic.neon @@ -1,5 +1,5 @@ extensions: - webpack: Oops\WebpackNetteAdapter\DI\WebpackExtension(true) + webpack: Contributte\Webpack\DI\WebpackExtension(true) webpack: diff --git a/tests/WebpackNetteAdapter/DI/config/common.neon b/tests/DI/config/common.neon similarity index 100% rename from tests/WebpackNetteAdapter/DI/config/common.neon rename to tests/DI/config/common.neon diff --git a/tests/WebpackNetteAdapter/DI/config/ignoredAssets.neon b/tests/DI/config/ignoredAssets.neon similarity index 70% rename from tests/WebpackNetteAdapter/DI/config/ignoredAssets.neon rename to tests/DI/config/ignoredAssets.neon index 84a0e62..ecfeeb4 100644 --- a/tests/WebpackNetteAdapter/DI/config/ignoredAssets.neon +++ b/tests/DI/config/ignoredAssets.neon @@ -1,5 +1,5 @@ extensions: - webpack: Oops\WebpackNetteAdapter\DI\WebpackExtension(true) + webpack: Contributte\Webpack\DI\WebpackExtension(true) webpack: diff --git a/tests/WebpackNetteAdapter/DI/config/manifest.neon b/tests/DI/config/manifest.neon similarity index 67% rename from tests/WebpackNetteAdapter/DI/config/manifest.neon rename to tests/DI/config/manifest.neon index 9ae3d6b..bc8c9ae 100644 --- a/tests/WebpackNetteAdapter/DI/config/manifest.neon +++ b/tests/DI/config/manifest.neon @@ -1,5 +1,5 @@ extensions: - webpack: Oops\WebpackNetteAdapter\DI\WebpackExtension(false) + webpack: Contributte\Webpack\DI\WebpackExtension(false) webpack: diff --git a/tests/DI/config/manifestWithMapper.neon b/tests/DI/config/manifestWithMapper.neon new file mode 100644 index 0000000..7323365 --- /dev/null +++ b/tests/DI/config/manifestWithMapper.neon @@ -0,0 +1,13 @@ +extensions: + webpack: Contributte\Webpack\DI\WebpackExtension(false) + + +webpack: + build: + directory: %buildDir% + publicPath: dist/ + + manifest: + name: manifest.json + optimize: false + mapper: Contributte\Webpack\Manifest\Mapper\AssetsWebpackPluginMapper diff --git a/tests/WebpackNetteAdapter/DI/config/missingBuildDirectory.neon b/tests/DI/config/missingBuildDirectory.neon similarity index 56% rename from tests/WebpackNetteAdapter/DI/config/missingBuildDirectory.neon rename to tests/DI/config/missingBuildDirectory.neon index 9f0ed4a..5f83c10 100644 --- a/tests/WebpackNetteAdapter/DI/config/missingBuildDirectory.neon +++ b/tests/DI/config/missingBuildDirectory.neon @@ -1,5 +1,5 @@ extensions: - webpack: Oops\WebpackNetteAdapter\DI\WebpackExtension(true) + webpack: Contributte\Webpack\DI\WebpackExtension(true) webpack: diff --git a/tests/WebpackNetteAdapter/DI/config/missingBuildPublicPath.neon b/tests/DI/config/missingBuildPublicPath.neon similarity index 58% rename from tests/WebpackNetteAdapter/DI/config/missingBuildPublicPath.neon rename to tests/DI/config/missingBuildPublicPath.neon index bec3fa7..57bf32d 100644 --- a/tests/WebpackNetteAdapter/DI/config/missingBuildPublicPath.neon +++ b/tests/DI/config/missingBuildPublicPath.neon @@ -1,5 +1,5 @@ extensions: - webpack: Oops\WebpackNetteAdapter\DI\WebpackExtension(true) + webpack: Contributte\Webpack\DI\WebpackExtension(true) webpack: diff --git a/tests/WebpackNetteAdapter/DI/config/missingDevServerUrl.neon b/tests/DI/config/missingDevServerUrl.neon similarity index 60% rename from tests/WebpackNetteAdapter/DI/config/missingDevServerUrl.neon rename to tests/DI/config/missingDevServerUrl.neon index 82105e7..9be6eb4 100644 --- a/tests/WebpackNetteAdapter/DI/config/missingDevServerUrl.neon +++ b/tests/DI/config/missingDevServerUrl.neon @@ -1,5 +1,5 @@ extensions: - webpack: Oops\WebpackNetteAdapter\DI\WebpackExtension(true) + webpack: Contributte\Webpack\DI\WebpackExtension(true) webpack: diff --git a/tests/WebpackNetteAdapter/DI/config/noDebug.neon b/tests/DI/config/noDebug.neon similarity index 54% rename from tests/WebpackNetteAdapter/DI/config/noDebug.neon rename to tests/DI/config/noDebug.neon index 825b120..4db7cf4 100644 --- a/tests/WebpackNetteAdapter/DI/config/noDebug.neon +++ b/tests/DI/config/noDebug.neon @@ -1,5 +1,5 @@ extensions: - webpack: Oops\WebpackNetteAdapter\DI\WebpackExtension(false) + webpack: Contributte\Webpack\DI\WebpackExtension(false) webpack: diff --git a/tests/WebpackNetteAdapter/DI/config/optimizedManifest.neon b/tests/DI/config/optimizedManifest.neon similarity index 65% rename from tests/WebpackNetteAdapter/DI/config/optimizedManifest.neon rename to tests/DI/config/optimizedManifest.neon index ebbdea0..aba6d05 100644 --- a/tests/WebpackNetteAdapter/DI/config/optimizedManifest.neon +++ b/tests/DI/config/optimizedManifest.neon @@ -1,5 +1,5 @@ extensions: - webpack: Oops\WebpackNetteAdapter\DI\WebpackExtension(false) + webpack: Contributte\Webpack\DI\WebpackExtension(false) webpack: diff --git a/tests/WebpackNetteAdapter/DI/optimizedManifest.json b/tests/DI/optimizedManifest.json similarity index 100% rename from tests/WebpackNetteAdapter/DI/optimizedManifest.json rename to tests/DI/optimizedManifest.json diff --git a/tests/WebpackNetteAdapter/DevServerTest.phpt b/tests/DevServerTest.phpt similarity index 87% rename from tests/WebpackNetteAdapter/DevServerTest.phpt rename to tests/DevServerTest.phpt index 25833d0..91b4836 100644 --- a/tests/WebpackNetteAdapter/DevServerTest.phpt +++ b/tests/DevServerTest.phpt @@ -2,14 +2,14 @@ declare(strict_types=1); -namespace OopsTests\WebpackNetteAdapter; +namespace Contributte\Webpack\Tests; -use Oops\WebpackNetteAdapter\DevServer\DevServer; -use Oops\WebpackNetteAdapter\DevServer\Http\MockClient; +use Contributte\Webpack\DevServer\DevServer; +use Contributte\Webpack\DevServer\Http\MockClient; use Tester\Assert; use Tester\TestCase; -require_once __DIR__ . '/../bootstrap.php'; +require_once __DIR__ . '/bootstrap.php'; /** * @testCase diff --git a/tests/WebpackNetteAdapter/Latte/WebpackMacrosTest.phpt b/tests/Latte/WebpackMacrosTest.phpt similarity index 64% rename from tests/WebpackNetteAdapter/Latte/WebpackMacrosTest.phpt rename to tests/Latte/WebpackMacrosTest.phpt index 1a7aaa5..8a7b244 100644 --- a/tests/WebpackNetteAdapter/Latte/WebpackMacrosTest.phpt +++ b/tests/Latte/WebpackMacrosTest.phpt @@ -2,20 +2,20 @@ declare(strict_types=1); -namespace OopsTests\WebpackNetteAdapter\Latte; +namespace Contributte\Webpack\Tests\Latte; +use Contributte\Webpack\AssetLocator; +use Contributte\Webpack\Latte\WebpackMacros; use Latte\Engine; use Latte\Loaders\StringLoader; -use Oops\WebpackNetteAdapter\AssetLocator; -use Oops\WebpackNetteAdapter\Latte\WebpackMacros; use Tester\Assert; use Tester\TestCase; -use function OopsTests\WebpackNetteAdapter\createAssetNameResolver; -use function OopsTests\WebpackNetteAdapter\createBuildDirectoryProvider; -use function OopsTests\WebpackNetteAdapter\createDisabledDevServer; -use function OopsTests\WebpackNetteAdapter\createPublicPathProvider; +use function Contributte\Webpack\Tests\createAssetNameResolver; +use function Contributte\Webpack\Tests\createBuildDirectoryProvider; +use function Contributte\Webpack\Tests\createDisabledDevServer; +use function Contributte\Webpack\Tests\createPublicPathProvider; -require_once __DIR__ . '/../../bootstrap.php'; +require_once __DIR__ . '/../bootstrap.php'; /** * @testCase diff --git a/tests/WebpackNetteAdapter/Manifest/ManifestLoaderTest.phpt b/tests/Manifest/ManifestLoaderTest.phpt similarity index 73% rename from tests/WebpackNetteAdapter/Manifest/ManifestLoaderTest.phpt rename to tests/Manifest/ManifestLoaderTest.phpt index 3349ea4..bf0e7b7 100644 --- a/tests/WebpackNetteAdapter/Manifest/ManifestLoaderTest.phpt +++ b/tests/Manifest/ManifestLoaderTest.phpt @@ -2,16 +2,16 @@ declare(strict_types=1); -namespace OopsTests\WebpackNetteAdapter\Manifest; +namespace Contributte\Webpack\Tests\Manifest; -use Oops\WebpackNetteAdapter\Manifest\CannotLoadManifestException; -use Oops\WebpackNetteAdapter\Manifest\ManifestLoader; -use Oops\WebpackNetteAdapter\Manifest\ManifestMapper; +use Contributte\Webpack\Manifest\CannotLoadManifestException; +use Contributte\Webpack\Manifest\ManifestLoader; +use Contributte\Webpack\Manifest\ManifestMapper; use Tester\Assert; use Tester\TestCase; -use function OopsTests\WebpackNetteAdapter\createBuildDirectoryProvider; +use function Contributte\Webpack\Tests\createBuildDirectoryProvider; -require_once __DIR__ . '/../../bootstrap.php'; +require_once __DIR__ . '/../bootstrap.php'; /** * @testCase diff --git a/tests/WebpackNetteAdapter/Manifest/Mapper/AssetsWebpackPluginMapperTest.phpt b/tests/Manifest/Mapper/AssetsWebpackPluginMapperTest.phpt similarity index 71% rename from tests/WebpackNetteAdapter/Manifest/Mapper/AssetsWebpackPluginMapperTest.phpt rename to tests/Manifest/Mapper/AssetsWebpackPluginMapperTest.phpt index 74af263..83a5f34 100644 --- a/tests/WebpackNetteAdapter/Manifest/Mapper/AssetsWebpackPluginMapperTest.phpt +++ b/tests/Manifest/Mapper/AssetsWebpackPluginMapperTest.phpt @@ -2,13 +2,13 @@ declare(strict_types=1); -namespace OopsTests\WebpackNetteAdapter\Manifest\Mapper; +namespace Contributte\Webpack\Tests\Manifest\Mapper; -use Oops\WebpackNetteAdapter\Manifest\Mapper\AssetsWebpackPluginMapper; +use Contributte\Webpack\Manifest\Mapper\AssetsWebpackPluginMapper; use Tester\Assert; use Tester\TestCase; -require_once __DIR__ . '/../../../bootstrap.php'; +require_once __DIR__ . '/../../bootstrap.php'; /** * @testCase diff --git a/tests/WebpackNetteAdapter/Manifest/Mapper/WebpackManifestPluginMapperTest.phpt b/tests/Manifest/Mapper/WebpackManifestPluginMapperTest.phpt similarity index 70% rename from tests/WebpackNetteAdapter/Manifest/Mapper/WebpackManifestPluginMapperTest.phpt rename to tests/Manifest/Mapper/WebpackManifestPluginMapperTest.phpt index 66fa35a..ecffde3 100644 --- a/tests/WebpackNetteAdapter/Manifest/Mapper/WebpackManifestPluginMapperTest.phpt +++ b/tests/Manifest/Mapper/WebpackManifestPluginMapperTest.phpt @@ -2,13 +2,13 @@ declare(strict_types=1); -namespace OopsTests\WebpackNetteAdapter\Manifest\Mapper; +namespace Contributte\Webpack\Tests\Manifest\Mapper; -use Oops\WebpackNetteAdapter\Manifest\Mapper\WebpackManifestPluginMapper; +use Contributte\Webpack\Manifest\Mapper\WebpackManifestPluginMapper; use Tester\Assert; use Tester\TestCase; -require_once __DIR__ . '/../../../bootstrap.php'; +require_once __DIR__ . '/../../bootstrap.php'; /** * @testCase diff --git a/tests/WebpackNetteAdapter/Manifest/manifest.json b/tests/Manifest/manifest.json similarity index 100% rename from tests/WebpackNetteAdapter/Manifest/manifest.json rename to tests/Manifest/manifest.json diff --git a/tests/WebpackNetteAdapter/PublicPathProviderTest.phpt b/tests/PublicPathProviderTest.phpt similarity index 85% rename from tests/WebpackNetteAdapter/PublicPathProviderTest.phpt rename to tests/PublicPathProviderTest.phpt index 6754bef..5535818 100644 --- a/tests/WebpackNetteAdapter/PublicPathProviderTest.phpt +++ b/tests/PublicPathProviderTest.phpt @@ -2,13 +2,13 @@ declare(strict_types=1); -namespace OopsTests\WebpackNetteAdapter; +namespace Contributte\Webpack\Tests; -use Oops\WebpackNetteAdapter\PublicPathProvider; +use Contributte\Webpack\PublicPathProvider; use Tester\Assert; use Tester\TestCase; -require_once __DIR__ . '/../bootstrap.php'; +require_once __DIR__ . '/bootstrap.php'; /** * @testCase diff --git a/tests/WebpackNetteAdapter/DI/config/manifestWithMapper.neon b/tests/WebpackNetteAdapter/DI/config/manifestWithMapper.neon deleted file mode 100644 index 46d8e0b..0000000 --- a/tests/WebpackNetteAdapter/DI/config/manifestWithMapper.neon +++ /dev/null @@ -1,13 +0,0 @@ -extensions: - webpack: Oops\WebpackNetteAdapter\DI\WebpackExtension(false) - - -webpack: - build: - directory: %buildDir% - publicPath: dist/ - - manifest: - name: manifest.json - optimize: false - mapper: Oops\WebpackNetteAdapter\Manifest\Mapper\AssetsWebpackPluginMapper diff --git a/tests/bootstrap.php b/tests/bootstrap.php index b1ceed8..96dcf5e 100644 --- a/tests/bootstrap.php +++ b/tests/bootstrap.php @@ -1,15 +1,15 @@