Bazar v0.5 is released. Let's walk through the most important things about this release.
To avoid bigger releases, we tried to break the features down and release more smaller quantities of code. So this release note will contain all the versions from 0.4.1
to 0.5.0
. For the complete list of changes, please read the changelog.
Bugfixes
This release pack contains several bugfixes. For example, variants now are correctly checked, by using the array_intersect_key
function behind the scenes.
Automatic Mix and Package Updates
When publishing the Bazar assets, you might want to update your webpack.mix.js
and packages.json
files. Normally this syncs the dependencies and the compiling tasks, so you don't have to worry about copy-pasting any code.
php artisan bazar:publish --mix --packages
Assets
Bazar now provides a nice and easy way to register scripts, styles and icons. Also, when running the bazar:publish
command, the registered assets (except icons) will be automatically published and copied to their place, then Bazar will automatically pull them into the bazar::app
blade template.
Note, you might register only your compiled assets. Your pre-compiled "raw" assets should be published from your service provider.
use Bazar\Support\Facades\Asset;
Asset::style('script-name', '/path/to/compiled/style');
Asset::script('style-name', '/path/to/compiled/script');
Asset::icon('icon-name', '/path/to/compiled/style');
Custom Image Conversion Drivers
The ConversionRepository
class has been removed and a new driver based conversion manager was introducted. This works as any other driver-manager concept – like taxes, discounts, gateways, etc.
You can easily write your own custom driver – for example using the intervention/image package. You might check the documentation for more information about custom drivers.
Note, by default there is only one driver, the
GdDriver
, with only optimizing and resizing images.
Menu Builder
Bazar now provides a small but quite flexible menu builder to easily manage the menu items you need.
use Bazar\Support\Facades\Menu;
Menu::resource(URL::to('bazar/users'), __('Users'), ['icon' => 'customer']);
Menu::register(URL::to('bazar/support'), __('Support'), [
'icon' => 'support',
'group' => __('Tools'),
]);
Using the menu builder, you don't need to touch the front-end templates, it automatically populates the siderbar.