Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Layer 1 (yellow) dependencies from domain
- import { WidgetType } from "../../domain/src/index";
- // Layer 3 (green) dependencies from delivery
- import { IViewModel, IRequest, Controller } from "../../delivery/src/index";
- // Layer 4 (blue) local dependencies from infrastructure
- import { EntityGateway } from "../../infrastructure/src/index";
- class ViewModel implements IViewModel {
- presentWidget(widget: WidgetType): void {
- // Data moving from delivery up to infrastructure
- // Data mapping or conversion here
- // Update UI here. Main output point into ViewModel
- }
- }
- const controller: IRequest = new Controller(new EntityGateway(), new ViewModel());
- // Data moving from infrastructure down to delivery
- // Data mapping or conversion here
- // Called by UI. Main entry point into Controller
- controller.createWidget({name: "Widget Name"});
Add Comment
Please, Sign In to add comment