Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Modal Laravel Package

wire-elements/modal

Livewire v3 modal component for Laravel that supports stacked/nested child modals while preserving state. Install via Composer, dispatch openModal events to launch components with arguments, and use wire-elements-modal in your layout.

View on GitHub
Deep Wiki
Context7
3.0.4

What's Changed

Full Changelog: https://github.com/wire-elements/modal/compare/3.0.3...3.0.4

2.0.14
  • Add #[Locked] attributes to prevent client-side property tampering (#549)
3.0.3
3.0.2

What's Changed

New Contributors

Full Changelog: https://github.com/wire-elements/modal/compare/3.0.1...3.0.2

3.0.0-beta
2.0.13

What's Changed

Full Changelog: https://github.com/wire-elements/modal/compare/2.0.12...2.0.13

2.0.12

Fix #474 error when escape key is pressed when modal not opened

2.0.11

What's Changed

New Contributors

Full Changelog: https://github.com/wire-elements/modal/compare/2.0.10...2.0.11

2.0.10

What's Changed

New Contributors

Full Changelog: https://github.com/wire-elements/modal/compare/2.0.9...2.0.10

2.0.9
  • Fix event duplication when using wire:navigate
2.0.8

What's Changed

New Contributors

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

2.0.6
  • Stable release
2.0.4-beta
2.0.3-beta
  • 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
  • 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
  • The old component name is being deprecated. Replace [@livewire](https://github.com/livewire)('livewire-ui-modal') with [@livewire](https://github.com/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

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](https://github.com/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](https://github.com/js)(['foo' => 'bar']))

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

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

In PHPStorm:

1.0.8

What's Changed

New Contributors

Full Changelog: https://github.com/wire-elements/modal/compare/1.0.7...1.0.8

1.0.7

What's Changed

New Contributors

Full Changelog: https://github.com/wire-elements/modal/compare/1.0.6...1.0.7

1.0.6

What's Changed

New Contributors

Full Changelog: https://github.com/wire-elements/modal/compare/1.0.5...1.0.6

1.0.5

What's Changed

If you published modal.blade.php you will need to replace x-on:close.stop="show = false" with x-on:close.stop="setShowPropertyTo(false)" (see diff)

New Contributors

Full Changelog: https://github.com/wire-elements/modal/compare/1.0.4...1.0.5

1.0.4

What's Changed

New Contributors

Full Changelog: https://github.com/wire-elements/modal/compare/1.0.3...1.0.4

1.0.3

What's Changed

New Contributors

Full Changelog: https://github.com/wire-elements/modal/compare/1.0.2...1.0.3

1.0.2
1.0.0

v1.0.0 stable release 🚀

Breaking changes to take into account:

The [@livewireUIScripts](https://github.com/livewireUIScripts) has been removed.

Any required Javascript will be loaded inline. If you want to include the Javascript in your bundler like Webpack you can use the config to disable Javascript and require the necessary Javascript require('vendor/livewire-ui/modal/resources/js/modal');

The package namespace has changed to livewire-ui-modal

If you published the modal view make sure to make the required changes.

0.1.7

The setActiveModalComponent is sometimes called multiple times resulting in issues with the component history log and could result in errors. This release prevents an already active modal component to be set active (while it is already active).

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport