[ * 'name' => 'My widget 1', * 'context' => ['context-1', 'context-2'], * ], * 'className2' => [ * 'name' => 'My widget 2', * 'context' => 'context-1' * ] * ] */ public function registerReportWidgets() { return []; } /** * Registers any form widgets implemented in this plugin. * The widgets must be returned in the following format: * ['className1' => 'alias'], * ['className2' => 'anotherAlias'] */ public function registerFormWidgets() { return []; } /** * Registers any mail templates implemented by this plugin. * The templates must be returned in the following format: * ['acme.blog::mail.welcome' => 'This is a description of the welcome template'], * ['acme.blog::mail.forgot_password' => 'This is a description of the forgot password template'], */ public function registerMailTemplates() { return []; } /** * Registers a new console (artisan) command * @param $key The command name * @param $class The command class * @return void */ public function registerConsoleCommand($key, $class) { $key = 'command.'.$key; $this->app[$key] = $this->app->share(function($app) use ($class){ return new $class; }); $this->commands($key); } }