Download the PHP package moonlydays/inertia-routed-modals without Composer
On this page you can find all versions of the php package moonlydays/inertia-routed-modals. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download moonlydays/inertia-routed-modals
More information about moonlydays/inertia-routed-modals
Files in moonlydays/inertia-routed-modals
Package inertia-routed-modals
Short Description Use your routes to open modal windows the same way you open pages with Inertia
License MIT
Homepage https://github.com/moonlydays/inertia-routed-modals
Informations about the package inertia-routed-modals
Routed modals for Inertia
[!NOTE] This package supports React only.
Installation
You can install the package via composer:
Install the npm package using:
Inside the HandleInertiaRequest
middleware in your app, add the following:
Usage
Backend
It all starts with a route. Inside your controller create an action that will return the modal using the new
Inertia::modal
method. The first argument is the modal component name (relative to Modals folder). The
second optional argument is an array of props that have to be passed to the modal.
Frontend
Inside your app.tsx
wrap the App component with RoutedModalsProvider component. Use may the same function
resolvePageComponent
that use
used to resolve Inertia pages to resolve modal components.
Next you have to specify where the Modal components will be mounted in your layout. Use <ModalPortal />
somewhere
in the root of your page layout to set that.
Create a new resources/js/Modals
folder and create a new modal component the same way you create Inertia
pages. The modal components are headless, meaning they are mounted to the DOM without any overhead elements. This is an
example MyModal component:
Now to open that modal, create a <Link ... />
somewhere in your app that leads to your route that returns a modal.
When that Link will be clicked your modal will be opened.
Testing
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
Credits
- Daniel Basiuc-Brinzei
- All Contributors
License
The MIT License (MIT). Please see License File for more information.
All versions of inertia-routed-modals with dependencies
illuminate/contracts Version ^10.0||^11.0
inertiajs/inertia-laravel Version ^2.0
spatie/laravel-package-tools Version ^1.16