Download the PHP package bbs-lab/nova-items-field without Composer
On this page you can find all versions of the php package bbs-lab/nova-items-field. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download bbs-lab/nova-items-field
More information about bbs-lab/nova-items-field
Files in bbs-lab/nova-items-field
Package nova-items-field
Short Description A modern Laravel Nova field for managing a sortable list of scalar values (tags, emails, steps…) stored as JSON.
License MIT
Homepage https://github.com/BBS-Lab/nova-items-field
Informations about the package nova-items-field
Nova Items Field
A modern Laravel Nova 5 field for managing a list of scalar values (tags, emails, steps, bullet points…) stored as JSON in a single column.
It is a complete, modernized rewrite of blendbyte/nova-items-field
(itself a fork of dillingham/nova-items-field): same feature set, a cleaner API, a polished UI,
first-class validation, internationalization, and 100% test coverage on both the PHP and the
JavaScript side.
Features
- 🎛️ Two display modes: structured rows (numbered, drag-to-reorder) or chips/tags
- ✅ First-class validation: array-level
rules()and per-itemitemRules()with inline, per-row error messages - 🔢
min()/max()item constraints - 🧲 Drag-and-drop reordering, scrollable lists, custom input types, datalist suggestions
- 🌍 Localized labels (English & French out of the box, publishable)
- 🧩 Dependent fields (
dependsOn) and copy-to-clipboard support - 👀 Tailored index & detail rendering: count badge with tooltip, chips overflow, or truncated list
- 🧪 100% PHP coverage, 100% JS coverage, mutation tested, PHPStan level 8
Screenshots
Create / edit form — structured rows and chips modes together, with inline add controls and drag handles:
Detail view — readonly chips and an ordered list, in Nova's native field layout:
Index view — count badge (with a hover tooltip), chips overflow and truncated list across the table:
Requirements
- PHP
^8.4 - Laravel Nova
^5.0 - Laravel
^11.0 || ^12.0 || ^13.0
Installation
Because Nova is a paid, private package, make sure your application is already authenticated against
nova.laravel.com, then:
The field auto-registers via Laravel package discovery. Optionally publish the config and translations:
Add an array cast to the underlying model attribute (a json/text column):
Quick start
Usage
Display modes
Reordering, sizing & input
Buttons
Validation
rules() validates the list as a whole; itemRules() validates each item. Failures are
shown inline, per row:
Index & detail rendering
Dependent fields & clipboard
Migrating from blendbyte/nova-items-field
The API was modernized — there are no compatibility aliases. Update your field definitions:
blendbyte/nova-items-field |
bbs-lab/nova-items-field |
|---|---|
NovaItemsField\Items |
BBSLab\NovaItemsField\Items |
->values([...]) |
->suggestions([...]) |
->createButtonValue('Add') |
->addButtonLabel('Add') |
->deleteButtonValue('x') |
->deleteButtonLabel('x') |
->hideCreateButton() |
->hideAddButton() |
->listFirst() |
->addButtonPosition('top') |
->rules([null => '...', '*' => '...']) |
->rules('...') + ->itemRules('...') |
asHtml (broken upstream) |
removed — use Nova's native displayUsing() |
Local development
This package ships an embedded Nova application (via Orchestra Workbench) so you can exercise the field in a real Nova instance:
Quality & testing
| Gate | Command |
|---|---|
| PHP tests (100% cov) | composer test-coverage |
| Mutation testing | composer test-mutation |
| Static analysis (L8) | composer analyse |
| Code style | composer format |
| JS tests (100% cov) | npm run test:coverage |
Changelog
Please see CHANGELOG for what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security
Please review our security policy on how to report security vulnerabilities.
Credits
- Big Boss Studio
- Original work by blendbyte and dillingham
License
The MIT License (MIT). Please see License File for more information.
All versions of nova-items-field with dependencies
illuminate/contracts Version ^11.0 || ^12.0 || ^13.0
illuminate/support Version ^11.0 || ^12.0 || ^13.0
laravel/nova Version ^5.0
spatie/laravel-package-tools Version ^1.16