3.7.0 • Published 5 years ago

@eskit/core v3.7.0

Weekly downloads
-
License
MIT
Repository
github
Last release
5 years ago

@eskit/core

Core functionality for definition of aggregate roots & associated functionality

Usage

  • Defining an aggregate
import { createAggregateRoot, IAggregateRoot } from '@eskit/core';

interface ICounter {
  value: number;
}

const Counter = createAggregateRoot<ICounter>({
  commands: {
    incrementBy(entity, command) {
      const { by } = command.data;
      entity.publish('incremented', { by });
    }
  },
  initialState: {
    value: 0
  },
  name: 'counter',
  reducer: {
    incremented: (state, event) => ({
      ...state,
      value: state.value + event.data.by
    })
  }
});
3.7.0

5 years ago

3.6.2

5 years ago

3.6.0

5 years ago

3.5.0

5 years ago

3.4.4

5 years ago

3.4.1

5 years ago

3.4.0

5 years ago

3.3.0

5 years ago

3.2.3

5 years ago

3.2.2

5 years ago

3.2.1

5 years ago

3.2.0

5 years ago

3.1.1

5 years ago

3.0.0

5 years ago