Twill 3.1.0
Twill 3.1.0 is a minor release combining the effort of 40 contributors over the past few months! 🎉 This release brings in PHP 8.3 support, enhancements to the form builder, a lot of developer experience improvements, important bug fixes, and more—crafted carefully because we know how crucial stability is for your Twill projects, and ours, too!
Websites and applications #MadeWithTwill are running in production for major companies and institutions like OpenAI, Nike, the New York Times or the Art Institute of Chicago, and we certainly don't want to cause any issues on their platforms when upgrading Twill. For this reason, and because we truly care about our clients and our community, we reviewed each community contributions with a lot of attention and tested them in multiple Twill instances before tagging this release.
Huge thanks to every contributor, new and returning, for making this release possible. Check out the updates and let us know your thoughts. Your input is always welcome and keeps Twill growing and improving.
HOW TO UPDATE
Run composer update
in your project and then, run Twill's own update command: php artisan twill:update
. This will force update your published Twill assets. If you are versioning them, you can delete the old ones from your repository. If you are using custom Vue components, you should rebuild Twill assets using php artisan twill:build
.
Added
- PHP 8.3 support by @antonioribeiro in #2374
- Form builder connected fields support by @joyceverheije in #2323
- Glide image rendering service improvements for remote disks by @ifox in #2422
- Google Analytics 4 support in the dashboard by @lewiswharf in #2288
- Configurable preview breakpoints by @florrie-90 in #2299
- Automatically add
active
to$translatedAttributes
by @driftingly in #2401 - Block component classes support in the
BlockEditor
blocks
array by @joyceverheije in 8778ab7 - Add
excludeBlocks
option to theBlockEditor
fields by @pauldwight in #2409 - Add
readOnly
support to form builderInput
field by @zachgarwood in #2331 - Add
searchable
support to form builderSelect
field by @iedex in #2415 - Add
max
support to form builderInlineRepeater
field by @joyceverheije in 4a77386 - Add
direction
option toInput
andWysiwyg
fields by @13twelve in #2295 - Add alignment buttons to
TipTap
editor by @florrie-90 in #2305 - Add predefined class selection to
TipTap
link component by @zipavlin in #2336 - Add support for
titleInBrowser
andadminEditUrl
accessors inbrowsers
by @joyceverheije in 02ac019, ab8635f and 160e916 - Add
--factory
and--seeder
totwill:make:module
by @driftingly in #2402 - Add
Link
column type to table builder by @agnonym in #2376 - Add
routePrefix
support to nested breadcrumbs by @yamaha252 in #2312 - Add DI support for Twill Block
getData
method by @Afting in #2292 - Allow
QuickFilter
extension by @joyceverheije in 9c15b01 - Configurable permissions and roles table names by @Keania-Eric in #2350
- Configurable user creation with default role when using OAuth SSO by @joyceverheije in 14f8dd2
- Customizable title column's label by @Phiosss in #2318
- Current request only tertiary nav links support by @joyceverheije in d1c0699
- Multiple
nested
table columns support in the table builder by @yamaha252 and @joyceverheije in #2314 and 1edbfbb - Store position and render selected values ordered on multi selects fields by @haringsrob in #2204
- Update migration stub and existing migrations to use anonymous class by @driftingly in #2406
Fixed
- Fix
DatePicker
date selection by @ifox in 0e75172 - Fix Tiptap
Wysiwyg
click to focus area by @TimBlanchard in #2418 - Fix custom components registration by @joyceverheije in 7c23333
- Fix position value for blocks in non-default
BlockEditor
fields by @joyceverheije in #2381 - Fix incorrect order of nested items slug when item is more than 2 levels deep by @pauldwight in #2388
- Fix
parseInternalLinks
helper issues by @avinash403 in #2338 - Fix to reduce excessive number of queries when using Twill 3 settings by @bonroyage in #2369
- Fix legacy settings in Twill 3 by @joyceverheije in #2417
- Fix user list errors when deleting roles by @antonioribeiro in #2372
- Fix build error with custom icons by @emanueljacob in #2392
- Fix x-position of full height crops being reset at some ratios/screen sizes by @13twelve in #2297
- Fix fields/blocks/repeaters spacings by @ifox in 1a93fe4
- Fix active navigation check when a child module uses the same name as another module by @joyceverheije in f22eb35
- Fix create button alignment in listings by @ifox in 006f478
- Fix duplication when translated media fields are enabled by @petertsoisstuff in #2320
- Fix
getCapsuleForModel()
for when passing a Model object by @antonioribeiro in #2400 - Fix
keepAlive
on connected non localized fields by @joyceverheije in b1593c7 - Fix optional feature migrations publication by @Tofandel in #2384
- Fix related table name in migration down method by @droplister in #2290
- Fix scheduled filter label by @droplister in #2291
- Fix type of
$forceLocale
intranslatedInput()
by @pvdbroek in #2315 - Fix user role filter when using the standard permissions setup by @ifox in 6e89323
- Fix vselect component to align with design by @ifox in 6e89323
- Fix error when running
php artisan migrate:reset
by @NuktukDev in #2413 - Allow dashboard modules to wrap onto the next line by @florrie-90 in #2298
- Always include locale in the
mediables
pivot by @bonroyage in #2368 - Avoid unused data and hooks when using the default role level by @joyceverheije in 5d4060b
- Check user permission when displaying activity log items by @joyceverheije in 3526dca
- Don't load
DuskServiceProvider
if Dusk doesn't exist by @Tofandel in #2366 - Preserve default vselect value when undefined by @bwat-dev in #2311
- Prevent multi select options from being selected more than once by @florrie-90 in #2296
- Remove block actions in settings blocks by @ifox in 0bc5e75
- Support using a dot as
fieldsGroupsFormFieldNameSeparator
by @yamaha252 in #2277 - Turn move dropdowns off for settings blocks by @droplister in #2293
- Update migration helper for translations table by @sauron in #2327
- Updated namespace paths from
Admin
toTwill
on custom pages by @pauldwight in #2317 - Use custom model configuration in the relationship morph map by @redelschaap in #2408
- Use
pushOnce
builtin, remove custompushonce
directive by @mikerockett in #2301 - Use
twill.admin_route_name_prefix
configuration for all internal routes by @ifox and @raymondtri in #2286
Docs
- Add instructions on how to use the
browser
field with a custom pivot table by @poncianodiego and @ifox in #2385 - Changed example value to better reflect given example in fields group docs by @Viliasas in #2283
- Fix artisan command by @thecrazybob in #2365
- Fix typo in Building a frontend guide by @driftingly in #2396
- Fix typo in Content - Modules - TableBuilder by @agnonym in #2375
- Fix typo in create page module guide by @colegeissinger in #2367
- Fix wrong property name in nested modules docs by @Viliasas in #2282
- Updates to the docs for nested modules by @pauldwight in #2389
Translations
- Added Slovenian language to translations by @Neoglyph in #2373
- Update Dutch translations by @lindeVW in #2378
- Update German translations by @florianschrottenloher-iu in #2411
- Add all locales with translations to the user locale selector by @ifox in 6e89323
- Configure all locales with translations for date rendering and datepicker configuration by @ifox in eb21fa9
New Contributors
- @pvdbroek made their first contribution in #2315
- @yamaha252 made their first contribution in #2312
- @florrie-90 made their first contribution in #2299
- @petertsoisstuff made their first contribution in #2320
- @Viliasas made their first contribution in #2282
- @Keania-Eric made their first contribution in #2350
- @thecrazybob made their first contribution in #2365
- @colegeissinger made their first contribution in #2367
- @zachgarwood made their first contribution in #2331
- @Neoglyph made their first contribution in #2373
- @Tofandel made their first contribution in #2384
- @emanueljacob made their first contribution in #2392
- @driftingly made their first contribution in #2396
- @lindeVW made their first contribution in #2378
- @poncianodiego made their first contribution in #2385
- @redelschaap made their first contribution in #2408
- @avinash403 made their first contribution in #2338
- @Phiosss made their first contribution in #2318
- @lewiswharf made their first contribution in #2288
- @florianschrottenloher-iu made their first contribution in #2411
- @NuktukDev made their first contribution in #2413
- @Afting made their first contribution in #2292
- @TimBlanchard made their first contribution in #2418
Full Changelog: 3.0.2...3.1.0