Livewire Ui Modal Versions Save

Livewire component that provides you with a modal that supports multiple child modals while maintaining state.

2.0.9

4 months ago
  • Fix event duplication when using wire:navigate

2.0.8

5 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/wire-elements/modal/compare/2.0.7...2.0.8

2.0.7

7 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/wire-elements/modal/compare/2.0.6...2.0.7

2.0.6

7 months ago
  • Stable release

2.0.5-beta

8 months ago

What's Changed

Full Changelog: https://github.com/wire-elements/modal/compare/2.0.4-beta...2.0.5-beta

2.0.4-beta

8 months ago

2.0.3-beta

8 months ago
  • Rename the config file, make sure to republish and update your config:
php artisan vendor:publish --tag=wire-elements-modal-config

2.0.2-beta

8 months ago
  • Update upgrade command

You can automate the required changes using the following command:

php artisan livewire:upgrade --run-only wire-elements-modal-upgrade

2.0.1-beta

8 months ago
  • The old component name is being deprecated. Replace @livewire('livewire-ui-modal') with @livewire('wire-elements-modal')
  • arguments is the named property to pass arguments to your modal, for example:
$dispatch('openModal', {component: 'edit-user', arguments: {user: 5}})

2.0.0-beta

8 months ago

Livewire v3 now expects named arguments; this means you will have to adjust your events.

<-- Before -->
<button wire:click="$emit('openModal', 'users')">Show Users</button>
<!-- After -->
<button wire:click="$dispatch('openModal', {component: 'users'})">Show Users</button>

<-- Before -->
<button wire:click="$emit('openModal', 'edit-user', {user: 5})">Edit User</button>
<!-- After -->
<button wire:click="$dispatch('openModal', {component: 'edit-user', arguments: {user: 5}})">Edit User</button>

You can use regular expression to automate this change:

// Regular Expression
emit\('openModal', '([^']+)'(?:, (\{[^}]+\}|@js\(\[[^\]]+\]\)))?\)

// Example 1
$emit('openModal', 'edit-user', {user: 5})

// Matches
$0 = emit('openModal', 'edit-user', {user: 5})
$1 = edit-user
$2 = {user: 5}

// Example 2
$emit('openModal', 'edit-user', @js(['foo' => 'bar']))

// Matches
$0 = emit('openModal', 'edit-user', @js(['foo' => 'bar']))
$1 = edit-user
$2 = @js(['foo' => 'bar'])

// Update all occurrences
dispatch('openModal', {component: '$1', arguments: $2});

In PHPStorm: image