cammac / nova-workflow
A Laravel Nova resource tool.
Installs: 6 542
Dependents: 0
Suggesters: 0
Security: 0
Stars: 35
Watchers: 1
Forks: 17
Open Issues: 21
Requires
- winzou/state-machine: ^0.4.0
- dev-master
- 2.x-dev
- 2.2.0
- 2.1.0
- 2.0.0
- 1.1.0
- 1.0.5
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- 1.0.0
- dev-dependabot/npm_and_yarn/express-4.18.2
- dev-dependabot/npm_and_yarn/decode-uri-component-0.2.2
- dev-dependabot/npm_and_yarn/loader-utils-1.4.2
- dev-dependabot/npm_and_yarn/css-what-2.1.3
- dev-dependabot/npm_and_yarn/minimist-1.2.6
- dev-dependabot/npm_and_yarn/url-parse-1.5.10
- dev-dependabot/npm_and_yarn/follow-redirects-1.14.8
- dev-dependabot/npm_and_yarn/node-sass-4.14.1
- dev-dependabot/npm_and_yarn/path-parse-1.0.7
- dev-dependabot/npm_and_yarn/tar-2.2.2
- dev-dependabot/npm_and_yarn/dns-packet-1.3.4
- dev-dependabot/npm_and_yarn/hosted-git-info-2.8.9
- dev-dependabot/npm_and_yarn/lodash-4.17.21
- dev-dependabot/npm_and_yarn/y18n-3.2.2
- dev-dependabot/npm_and_yarn/elliptic-6.5.4
- dev-dependabot/npm_and_yarn/bl-1.2.3
This package is auto-updated.
Last update: 2025-03-10 06:28:30 UTC
README
This package helps you to create workflow on your Nova application. It's built on top of this package winzou/state-machine
Installation
You can install the package in to a Laravel app that uses Nova via composer:
composer require cammac/nova-workflow
Next, publish the config file
php artisan vendor:publish --tag workflow
open config/workflow.php
and define your workflow
Configuration
you can define inside workflows
element workflow name and it's config as following:
field | mandatory | Description |
---|---|---|
model | Yes | Model class you want to do your workflow on |
column | Yes | Column name you want to monitor |
states | Yes | All possible states |
transitions | Yes | All possible transitions |
from | Yes | array: From states |
to | Yes | To state |
event | No | Event class that will be fired after the transition is completed |
style_classes | No | apply your css classes |
with_reasons | No | string: column inside your model will be filled with the transition |
with_reasons | No | array: will generate a dropdown list from with_reasons.model with id as option's value and label as option's text |
Usage
To display the workflow that are associated with a given Nova resource, you need to add the workflow Resource Tool to your resource.
For example, in your app/Nova/Order.php
file:
use Cammac\Workflow\Workflow; ... public function fields(Request $request) { return [ ID::make()->sortable(), // Your other fields Workflow::make('request')->onlyOnDetail() // request is the workflow name defined in workflow configuration file ]; }
This will automatically search possible transitions for the current status
License
The MIT License (MIT). Please see License File for more information.