return { 'adalessa/laravel.nvim', dependencies = { 'MunifTanjim/nui.nvim', 'nvim-lua/plenary.nvim', 'nvim-neotest/nvim-nio', }, ft = { 'php', 'blade' }, event = { 'BufEnter composer.json', }, keys = { { 'll', function() Laravel.pickers.laravel() end, desc = 'Laravel: Open Laravel Picker', }, { '', function() Laravel.commands.run 'view:finder' end, desc = 'Laravel: Open View Finder', }, { 'la', function() Laravel.pickers.artisan() end, desc = 'Laravel: Open Artisan Picker', }, { 'lt', function() Laravel.commands.run 'actions' end, desc = 'Laravel: Open Actions Picker', }, { 'lr', function() Laravel.pickers.routes() end, desc = 'Laravel: Open Routes Picker', }, { 'lh', function() Laravel.run 'artisan docs' end, desc = 'Laravel: Open Documentation', }, { 'lm', function() Laravel.pickers.make() end, desc = 'Laravel: Open Make Picker', }, { 'lc', function() Laravel.pickers.commands() end, desc = 'Laravel: Open Commands Picker', }, { 'lo', function() Laravel.pickers.resources() end, desc = 'Laravel: Open Resources Picker', }, { 'lp', function() Laravel.commands.run 'command_center' end, desc = 'Laravel: Open Command Center', }, { 'lu', function() Laravel.commands.run 'hub' end, desc = 'Laravel Artisan hub', }, { 'gf', function() local ok, res = pcall(function() if Laravel.app('gf').cursorOnResource() then return "lua Laravel.commands.run('gf')" end end) if not ok or not res then return 'gf' end return res end, expr = true, noremap = true, }, }, opts = { features = { pickers = { provider = 'telescope', -- "snacks | telescope | fzf-lua | ui-select" }, }, }, }