Ghost/ghost/domain-events
Daniel Lockyer cc73c4585a Added codecov.io coverage uploader to CI
refs linear.app/tryghost/issue/CORE-74/improve-the-test-situation

- this commit adds the codecov GitHub Action into CI so we can upload
  coverage reports
- the coverage files need to be in XML for them to work with
  codecov, so this commit also adds cobertura (XML) as a reporter
2021-10-20 13:48:54 +02:00
..
lib Added @tryghost/domain-events package 2021-09-17 15:22:08 +02:00
test Added @tryghost/domain-events package 2021-09-17 15:22:08 +02:00
.eslintrc.js Added @tryghost/domain-events package 2021-09-17 15:22:08 +02:00
index.js Added @tryghost/domain-events package 2021-09-17 15:22:08 +02:00
jsconfig.json Added @tryghost/domain-events package 2021-09-17 15:22:08 +02:00
LICENSE Added @tryghost/domain-events package 2021-09-17 15:22:08 +02:00
package.json Added codecov.io coverage uploader to CI 2021-10-20 13:48:54 +02:00
README.md Added @tryghost/domain-events package 2021-09-17 15:22:08 +02:00

Domain Events

Install

npm install @tryghost/domain-events --save

or

yarn add @tryghost/domain-events

Usage

const DomainEvents = require('@tryghost/domain-events');

class MyEvent {
    constructor(message) {
        this.timestamp = new Date();
        this.data = {
            message
        };
    }
}

DomainEvents.subscribe(MyEvent, function handler(event) {
    console.log(event.data.message);
});

const event = new MyEvent('hello world');

DomainEvents.dispatch(event);

Develop

This is a mono repository, managed with lerna.

Follow the instructions for the top-level repo.

  1. git clone this repo & cd into it as usual
  2. Run yarn to install top-level dependencies.

Run

  • yarn dev

Test

  • yarn lint run just eslint
  • yarn test run lint and tests