@paperbits/core
Version:
Paperbits core components.
25 lines (22 loc) • 1.12 kB
text/typescript
import { IInjectorModule, IInjector } from "@paperbits/common/injection";
import { CardViewModel } from "./ko/cardViewModel";
import { CardModelBinder } from "./cardModelBinder";
import { CardViewModelBinder } from "./ko/cardViewModelBinder";
import { IWidgetService } from "@paperbits/common/widgets";
import { KnockoutComponentBinder } from "../ko/knockoutComponentBinder";
import { CardModel } from "./cardModel";
export class CardPublishModule implements IInjectorModule {
public register(injector: IInjector): void {
injector.bind("card", CardViewModel);
injector.bindSingleton("cardModelBinder", CardModelBinder);
injector.bindSingleton("cardViewModelBinder", CardViewModelBinder)
const widgetService = injector.resolve<IWidgetService>("widgetService");
widgetService.registerWidget("card", {
componentBinder: KnockoutComponentBinder,
componentDefinition: CardViewModel,
modelBinder: CardModelBinder,
modelDefinition: CardModel,
viewModelBinder: CardViewModelBinder
});
}
}