import { DatePicker, IDatePickerSettings, EnumSelect, IEnumSelectSettings, CheckList, ICheckListItem, ICheckListSettings, NumberInput, INumberInput } from '@dezrez/components'; import { Component, ViewModel, guid, DateHelper } from '@dezrez/core'; import { IState } from '../store'; import Enum = Dezrez.Core.DataContracts.External.Api.System.EnumDataContract; import { Dezrez } from '@dezrez/typings-rezi'; class ComponentHelper extends ViewModel { createEnumSelect(typeName: string, defaultValue: string, value: KnockoutObservable, excludedItems?: string[], change?: (value: Enum) => void) { return this.bindChildWithProps(EnumSelect, { typeName, default: defaultValue, excludedItems, change, value }); } createNumberInput(inputValue: KnockoutObservable, showDefaultCurrencySymbol: boolean = false, hasAddon: boolean = false, save: (value: string) => void, min?: number, max?: number) { return this.bindChildWithProps(NumberInput, { inputValue, uniqueGuid: guid(), hasAddon, showDefaultCurrencySymbol, options: { min, max }, save }); } createDatePicker(date: KnockoutObservable) { return this.bindChildWithProps(DatePicker, { date, uniqueGuid: guid() }); } } export const componentHelper = new ComponentHelper();