apim-developer-portal4
Version:
API management developer portal
36 lines (29 loc) • 1.09 kB
text/typescript
import * as ko from "knockout";
import template from "./conferenceSessionEditorView.html";
import { Component, OnMounted, Param, Event } from "@paperbits/common/ko/decorators";
import { WidgetEditor } from "@paperbits/common/widgets";
import { ConferenceSessionModel } from "../conferenceSessionModel";
import { widgetEditorSelector } from "..";
({
selector: widgetEditorSelector,
template: template
})
export class ConferenceSessionEditor implements WidgetEditor<ConferenceSessionModel> {
public readonly sessionNumber: ko.Observable<string>;
constructor() {
this.sessionNumber = ko.observable();
}
()
public model: ConferenceSessionModel;
()
public onChange: (model: ConferenceSessionModel) => void;
()
public async initialize(): Promise<void> {
this.sessionNumber(this.model.sessionNumber);
this.sessionNumber.subscribe(this.applyChanges);
}
private applyChanges(): void {
this.model.sessionNumber = this.sessionNumber();
this.onChange(this.model);
}
}