cgdsoftware/emails

There is no license information available for the latest version (v2.0.1) of this package.

v2.0.1 2023-01-27 23:08 UTC

README

Codacy Badge StyleCI License Total Downloads Latest Stable Version

Emails package is an extesion of the Laravel Enso enviroment, designed for sending emails/notifications.

Note: This package cannot be used outside of enso enviroment and is not included in Laravel Enso Core packages.

Features

  • friendly display of all stored emails together with their status
  • default recipients options such as teams or users
  • attachments manangement
  • email scheduling management
  • email priority

Instalation

  • install the package using composer: composer require laravel-enso/emails
  • install the front-end assets using yarn/npm: yarn add @enso-ui/emails
  • add the following line in schedule function in App\Console\Kernel.php class:
    ...
    protected function schedule(Schedule $schedule)
    {
        //other stuff
        $schedule->job(new ScheduleEmails)->everyMinute();
    }
    ...
  • Also make sure that ScheduleEmails class is imported.

NOTE For local schedule testing, you must first run the command:

php artisan schedule:run
  • adds the following alias in webackpack.mix.js
.webpackConfig({
        resolve: {
            extensions: ['.js', '.vue', '.json'],
            alias: {
                 //other aliases
                '@emails': `${__dirname}/node_modules/@enso-ui/emails/src/bulma`
            },
        },
    })
  • in resources/js/router.js file, verify that RouteMerger is imported, or import it

import RouteMerger from '@core-modules/importers/RouteMerger';

  • make sure routeImporter is also imported

import routeImporter from '@core-modules/importers/routeImporter';

  • then use RouteMerger to import front-end assets using the alias defined in webpack.mix.js
(new RouteMerger(routes))
    .add(routeImporter(require.context('./routes', false, /.*\.js$/)))
    .add(routeImporter(require.context('@emails/routes', false, /.*\.js$/)));
  • in resources/js/app.js import the package's icons

import '@emails/icons'

  • make sure hot module replacement is not active, and run yarn dev or npm run dev

Publishes

  • coming soon..

Icons

The package uses the following icons:

  • paper-plane

Contributions

are welcome. Pull requests are great, but issues are good too.

License

This package is released under the MIT license.