1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126
|
//// [genericClassPropertyInheritanceSpecialization.ts]
interface KnockoutObservableBase<T> {
peek(): T;
(): T;
(value: T): void;
}
interface KnockoutObservable<T> extends KnockoutObservableBase<T> {
equalityComparer(a: T, b: T): boolean;
valueHasMutated(): void;
valueWillMutate(): void;
}
interface KnockoutObservableArray<T> extends KnockoutObservable<T[]> {
indexOf(searchElement: T, fromIndex?: number): number;
slice(start: number, end?: number): T[];
splice(start: number, deleteCount?: number, ...items: T[]): T[];
pop(): T;
push(...items: T[]): void;
shift(): T;
unshift(...items: T[]): number;
reverse(): T[];
sort(compareFunction?: (a: T, b: T) => number): void;
replace(oldItem: T, newItem: T): void;
remove(item: T): T[];
removeAll(items?: T[]): T[];
destroy(item: T): void;
destroyAll(items?: T[]): void;
}
interface KnockoutObservableArrayStatic {
fn: KnockoutObservableArray<any>;
<T>(value?: T[]): KnockoutObservableArray<T>;
}
declare module ko {
export var observableArray: KnockoutObservableArrayStatic;
}
module Portal.Controls.Validators {
export class Validator<TValue> {
private _subscription;
public message: KnockoutObservable<string>;
public validationState: KnockoutObservable<number>;
public validate: KnockoutObservable<TValue>;
constructor(message?: string) { }
public destroy(): void { }
public _validate(value: TValue): number {return 0 }
}
}
module PortalFx.ViewModels.Controls.Validators {
export class Validator<TValue> extends Portal.Controls.Validators.Validator<TValue> {
constructor(message?: string) {
super(message);
}
}
}
interface Contract<TValue> {
validators: KnockoutObservableArray<PortalFx.ViewModels.Controls.Validators.Validator<TValue>>;
}
class ViewModel<TValue> implements Contract<TValue> {
public validators: KnockoutObservableArray<PortalFx.ViewModels.Controls.Validators.Validator<TValue>> = ko.observableArray<PortalFx.ViewModels.Controls.Validators.Validator<TValue>>();
}
//// [genericClassPropertyInheritanceSpecialization.js]
var __extends = (this && this.__extends) || function (d, b) {
for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
var Portal;
(function (Portal) {
var Controls;
(function (Controls) {
var Validators;
(function (Validators) {
var Validator = (function () {
function Validator(message) {
}
Validator.prototype.destroy = function () { };
Validator.prototype._validate = function (value) { return 0; };
return Validator;
}());
Validators.Validator = Validator;
})(Validators = Controls.Validators || (Controls.Validators = {}));
})(Controls = Portal.Controls || (Portal.Controls = {}));
})(Portal || (Portal = {}));
var PortalFx;
(function (PortalFx) {
var ViewModels;
(function (ViewModels) {
var Controls;
(function (Controls) {
var Validators;
(function (Validators) {
var Validator = (function (_super) {
__extends(Validator, _super);
function Validator(message) {
return _super.call(this, message) || this;
}
return Validator;
}(Portal.Controls.Validators.Validator));
Validators.Validator = Validator;
})(Validators = Controls.Validators || (Controls.Validators = {}));
})(Controls = ViewModels.Controls || (ViewModels.Controls = {}));
})(ViewModels = PortalFx.ViewModels || (PortalFx.ViewModels = {}));
})(PortalFx || (PortalFx = {}));
var ViewModel = (function () {
function ViewModel() {
this.validators = ko.observableArray();
}
return ViewModel;
}());
|