152a2ea41f
- @tryghost/domain-events@0.1.13 - @tryghost/express-dynamic-redirects@0.2.12 - @tryghost/magic-link@1.0.25 - @tryghost/member-analytics-service@0.1.15 - @tryghost/member-events@0.4.5 - @tryghost/members-analytics-ingress@0.1.16 - @tryghost/members-api@7.0.1 - @tryghost/members-csv@1.2.14 - @tryghost/members-events-service@0.4.2 - @tryghost/members-importer@0.5.13 - @tryghost/members-ssr@1.0.27 - @tryghost/members-offers@0.11.5 - @tryghost/members-payments@0.3.5 - @tryghost/members-stripe-service@0.10.4 - @tryghost/verification-trigger@0.2.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