a0f716f475
- @tryghost/domain-events@0.1.7 - @tryghost/express-dynamic-redirects@0.2.5 - @tryghost/magic-link@1.0.18 - @tryghost/member-analytics-service@0.1.9 - @tryghost/member-events@0.3.5 - @tryghost/members-analytics-ingress@0.1.10 - @tryghost/members-api@5.0.1 - @tryghost/members-csv@1.2.4 - @tryghost/members-importer@0.5.1 - @tryghost/members-ssr@1.0.20 - @tryghost/members-offers@0.10.7 - @tryghost/members-payments@0.1.9 - @tryghost/members-stripe-service@0.8.1 - @tryghost/verification-trigger@0.1.4 |
||
---|---|---|
.. | ||
lib | ||
test | ||
.eslintrc.js | ||
index.js | ||
jsconfig.json | ||
LICENSE | ||
package.json | ||
README.md |
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.
git clone
this repo &cd
into it as usual- Run
yarn
to install top-level dependencies.
Run
yarn dev
Test
yarn lint
run just eslintyarn test
run lint and tests