extends KnockoutObservableBase {
(): T;
- (value: T): void;
+ (value: T): void;
subscribe(callback: (newValue: T) => void, target?:any, topic?: string): KnockoutSubscription;
notifySubscribers(valueToWrite: T, topic?: string);
@@ -175,7 +176,7 @@ interface KnockoutMemoization {
interface KnockoutVirtualElement {}
interface KnockoutVirtualElements {
- allowedBindings: { [bindingName: string]: bool; };
+ allowedBindings: { [bindingName: string]: boolean; };
emptyNode( e: KnockoutVirtualElement );
firstChild( e: KnockoutVirtualElement );
insertAfter( container: KnockoutVirtualElement, nodeToInsert: HTMLElement, insertAfter: HTMLElement );
@@ -215,7 +216,7 @@ interface KnockoutUtils {
set (node: Element, key: string, value: any);
- getAll(node: Element, createIfNotFound: bool);
+ getAll(node: Element, createIfNotFound: boolean);
clear(node: Element);
};
@@ -244,7 +245,7 @@ interface KnockoutUtils {
arrayIndexOf(array: any[], item: any): number;
- arrayFirst(array: any[], predicate: (item) => bool, predicateOwner?: any): any;
+ arrayFirst(array: any[], predicate: (item) => boolean, predicateOwner?: any): any;
arrayRemoveItem(array: any[], itemToRemove: any): void;
@@ -252,7 +253,7 @@ interface KnockoutUtils {
arrayMap(array: any[], mapping: (item) => any): any[];
- arrayFilter(array: any[], predicate: (item) => bool): any[];
+ arrayFilter(array: any[], predicate: (item) => boolean): any[];
arrayPushAll(array: any[], valuesToPush: any[]): any[];
@@ -262,13 +263,13 @@ interface KnockoutUtils {
moveCleanedNodesToContainerElement(nodes: any[]): HTMLElement;
- cloneNodes(nodesArray: any[], shouldCleanNodes: bool): any[];
+ cloneNodes(nodesArray: any[], shouldCleanNodes: boolean): any[];
setDomNodeChildren(domNode: any, childNodes: any[]): void;
replaceDomNodes(nodeToReplaceOrNodeArray: any, newNodesArray: any[]): void;
- setOptionNodeSelectionState(optionNode: any, isSelected: bool): void;
+ setOptionNodeSelectionState(optionNode: any, isSelected: boolean): void;
stringTrim(str: string): string;
@@ -276,9 +277,9 @@ interface KnockoutUtils {
stringStartsWith(str: string, startsWith: string): string;
- domNodeIsContainedBy(node: any, containedByNode: any): bool;
+ domNodeIsContainedBy(node: any, containedByNode: any): boolean;
- domNodeIsAttachedToDocument(node: any): bool;
+ domNodeIsAttachedToDocument(node: any): boolean;
tagNameLower(element: any): string;
@@ -288,7 +289,7 @@ interface KnockoutUtils {
unwrapObservable(value: any): any;
- toggleDomNodeCssClass(node: any, className: string, shouldHaveClass: bool): void;
+ toggleDomNodeCssClass(node: any, className: string, shouldHaveClass: boolean): void;
//setTextContent(element: any, textContent: string): void; // NOT PART OF THE MINIFIED API SURFACE (ONLY IN knockout-{version}.debug.js) https://github.com/SteveSanderson/knockout/issues/670
@@ -314,9 +315,9 @@ interface KnockoutUtils {
ieVersion: number;
- isIe6: bool;
+ isIe6: boolean;
- isIe7: bool;
+ isIe7: boolean;
}
//////////////////////////////////
@@ -364,7 +365,7 @@ interface KnockoutTemplateEngine extends KnockoutNativeTemplateEngine {
renderTemplate(template, bindingContext, options, templateDocument);
- isTemplateRewritten(template, templateDocument): bool;
+ isTemplateRewritten(template, templateDocument): boolean;
rewriteTemplate(template, rewriterCallback, templateDocument);
}
@@ -388,11 +389,11 @@ interface KnockoutStatic {
observableArray: KnockoutObservableArrayStatic;
contextFor(node: any): any;
- isSubscribable(instance: any): bool;
+ isSubscribable(instance: any): boolean;
toJSON(viewModel: any, replacer?: Function, space?: any): string;
toJS(viewModel: any): any;
- isObservable(instance: any): bool;
- isComputed(instance: any): bool;
+ isObservable(instance: any): boolean;
+ isComputed(instance: any): boolean;
dataFor(node: any): any;
removeNode(node: Element);
cleanNode(node: Element);
diff --git a/knockout/tests/knockout-templatingBehaviors-tests.ts b/knockout/tests/knockout-templatingBehaviors-tests.ts
index b000015f2..7be02d4cd 100644
--- a/knockout/tests/knockout-templatingBehaviors-tests.ts
+++ b/knockout/tests/knockout-templatingBehaviors-tests.ts
@@ -2,8 +2,6 @@
///
///
-declare var $;
-
var dummyTemplateEngine = function (templates?) {
var inMemoryTemplates = templates || {};
var inMemoryTemplateData = {};
@@ -137,7 +135,7 @@ describe('Templating', function() {
});
it('Should automatically rerender into DOM element when dependencies change', function () {
- var dependency = new ko.observable("A");
+ var dependency = ko.observable("A");
ko.setTemplateEngine(new dummyTemplateEngine({ someTemplate: function () {
return "Value = " + dependency();
}
@@ -153,7 +151,7 @@ describe('Templating', function() {
});
it('Should not rerender DOM element if observable accessed in \'afterRender\' callaback is changed', function () {
- var observable = new ko.observable("A"), count = 0;
+ var observable = ko.observable("A"), count = 0;
var myCallback = function(elementsArray, dataItem) {
observable(); // access observable in callback
};
@@ -171,7 +169,7 @@ describe('Templating', function() {
});
it('If the supplied data item is observable, evaluates it and has subscription on it', function () {
- var observable = new ko.observable("A");
+ var observable = ko.observable("A");
ko.setTemplateEngine(new dummyTemplateEngine({ someTemplate: function (data) {
return "Value = " + data;
}
@@ -184,7 +182,7 @@ describe('Templating', function() {
});
it('Should stop updating DOM nodes when the dependency next changes if the DOM node has been removed from the document', function () {
- var dependency = new ko.observable("A");
+ var dependency = ko.observable("A");
var template = { someTemplate: function () { return "Value = " + dependency() } };
ko.setTemplateEngine(new dummyTemplateEngine(template));
@@ -275,7 +273,7 @@ describe('Templating', function() {
});
it('Should rerender chained templates when their dependencies change, without rerendering parent templates', function () {
- var observable = new ko.observable("ABC");
+ var observable = ko.observable("ABC");
var timesRenderedOuter = 0, timesRenderedInner = 0;
ko.setTemplateEngine(new dummyTemplateEngine({
outerTemplate: function () { timesRenderedOuter++; return "outer template output, [renderTemplate:innerTemplate]" }, // [renderTemplate:...] is special syntax supported by dummy template engine
@@ -390,7 +388,7 @@ describe('Templating', function() {
});
it('Data binding syntax should support \'foreach\' option, whereby it renders for each item in an array but doesn\'t rerender everything if you push or splice', function () {
- var myArray = new ko.observableArray([{ personName: "Bob" }, { personName: "Frank"}]);
+ var myArray = ko.observableArray([{ personName: "Bob" }, { personName: "Frank"}]);
ko.setTemplateEngine(new dummyTemplateEngine({ itemTemplate: "The item is [js: personName]
" }));
testNode.innerHTML = "";
@@ -406,7 +404,7 @@ describe('Templating', function() {
});
it('Data binding \'foreach\' option should apply bindings within the context of each item in the array', function () {
- var myArray = new ko.observableArray([{ personName: "Bob" }, { personName: "Frank"}]);
+ var myArray = ko.observableArray([{ personName: "Bob" }, { personName: "Frank"}]);
ko.setTemplateEngine(new dummyTemplateEngine({ itemTemplate: "The item is " }));
testNode.innerHTML = "";
@@ -479,7 +477,7 @@ describe('Templating', function() {
});
it('Data binding \'foreach\' option should apply bindings with an $index in the context', function () {
- var myArray = new ko.observableArray([{ personName: "Bob" }, { personName: "Frank"}]);
+ var myArray = ko.observableArray([{ personName: "Bob" }, { personName: "Frank"}]);
ko.setTemplateEngine(new dummyTemplateEngine({ itemTemplate: "The item # is " }));
testNode.innerHTML = "";
@@ -488,7 +486,7 @@ describe('Templating', function() {
});
it('Data binding \'foreach\' option should update bindings that reference an $index if the list changes', function () {
- var myArray = new ko.observableArray([{ personName: "Bob" }, { personName: "Frank"}]);
+ var myArray = ko.observableArray([{ personName: "Bob" }, { personName: "Frank"}]);
ko.setTemplateEngine(new dummyTemplateEngine({ itemTemplate: "The item is " }));
testNode.innerHTML = "";
@@ -504,7 +502,7 @@ describe('Templating', function() {
});
it('Data binding \'foreach\' option should accept array with "undefined" and "null" items', function () {
- var myArray = new ko.observableArray([undefined, null]);
+ var myArray = ko.observableArray([undefined, null]);
ko.setTemplateEngine(new dummyTemplateEngine({ itemTemplate: "The item is " }));
testNode.innerHTML = "";
@@ -513,8 +511,8 @@ describe('Templating', function() {
});
it('Data binding \'foreach\' option should update DOM nodes when a dependency of their mapping function changes', function() {
- var myObservable = new ko.observable("Steve");
- var myArray = new ko.observableArray([{ personName: "Bob" }, { personName: myObservable }, { personName: "Another" }]);
+ var myObservable = ko.observable("Steve");
+ var myArray = ko.observableArray([{ personName: "Bob" }, { personName: myObservable }, { personName: "Another" }]);
ko.setTemplateEngine(new dummyTemplateEngine({ itemTemplate: "The item is [js: ko.utils.unwrapObservable(personName)]
" }));
testNode.innerHTML = "";
@@ -535,7 +533,7 @@ describe('Templating', function() {
});
it('Data binding \'foreach\' option should treat a null parameter as meaning \'no items\'', function() {
- var myArray = new ko.observableArray(["A", "B"]);
+ var myArray = ko.observableArray(["A", "B"]);
ko.setTemplateEngine(new dummyTemplateEngine({ itemTemplate: "hello" }));
testNode.innerHTML = "";
@@ -551,7 +549,7 @@ describe('Templating', function() {
it('Data binding \'foreach\' option should accept an \"as\" option to define an alias for the iteration variable', function() {
// Note: There are more detailed specs (e.g., covering nesting) associated with the "foreach" binding which
// uses this templating functionality internally.
- var myArray = new ko.observableArray(["A", "B"]);
+ var myArray = ko.observableArray(["A", "B"]);
ko.setTemplateEngine(new dummyTemplateEngine({ itemTemplate: "[js:myAliasedItem]" }));
testNode.innerHTML = "";
@@ -561,7 +559,7 @@ describe('Templating', function() {
it('Data binding \'foreach\' option should stop tracking inner observables when the container node is removed', function() {
var innerObservable = ko.observable("some value");
- var myArray = new ko.observableArray([{obsVal:innerObservable}, {obsVal:innerObservable}]);
+ var myArray = ko.observableArray([{obsVal:innerObservable}, {obsVal:innerObservable}]);
ko.setTemplateEngine(new dummyTemplateEngine({ itemTemplate: "The item is [js: ko.utils.unwrapObservable(obsVal)]" }));
testNode.innerHTML = "";
@@ -574,7 +572,7 @@ describe('Templating', function() {
it('Data binding \'foreach\' option should stop tracking inner observables related to each array item when that array item is removed', function() {
var innerObservable = ko.observable("some value");
- var myArray = new ko.observableArray([{obsVal:innerObservable}, {obsVal:innerObservable}]);
+ var myArray = ko.observableArray([{obsVal:innerObservable}, {obsVal:innerObservable}]);
ko.setTemplateEngine(new dummyTemplateEngine({ itemTemplate: "The item is [js: ko.utils.unwrapObservable(obsVal)]" }));
testNode.innerHTML = "";
@@ -588,7 +586,7 @@ describe('Templating', function() {
});
it('Data binding syntax should omit any items whose \'_destroy\' flag is set (unwrapping the flag if it is observable)', function() {
- var myArray = new ko.observableArray([{ someProp: 1 }, { someProp: 2, _destroy: 'evals to true' }, { someProp : 3 }, { someProp: 4, _destroy: ko.observable(false) }]);
+ var myArray = ko.observableArray([{ someProp: 1 }, { someProp: 2, _destroy: 'evals to true' }, { someProp : 3 }, { someProp: 4, _destroy: ko.observable(false) }]);
ko.setTemplateEngine(new dummyTemplateEngine({ itemTemplate: "someProp=[js: someProp]
" }));
testNode.innerHTML = "";
@@ -597,7 +595,7 @@ describe('Templating', function() {
});
it('Data binding syntax should include any items whose \'_destroy\' flag is set if you use includeDestroyed', function() {
- var myArray = new ko.observableArray([{ someProp: 1 }, { someProp: 2, _destroy: 'evals to true' }, { someProp : 3 }]);
+ var myArray = ko.observableArray([{ someProp: 1 }, { someProp: 2, _destroy: 'evals to true' }, { someProp : 3 }]);
ko.setTemplateEngine(new dummyTemplateEngine({ itemTemplate: "someProp=[js: someProp]
" }));
testNode.innerHTML = "";
@@ -677,7 +675,7 @@ describe('Templating', function() {
});
it('Should be able to render a different template for each array entry by passing a function as template name, with the array entry\'s binding context available as a second parameter', function() {
- var myArray = new ko.observableArray([
+ var myArray = ko.observableArray([
{ preferredTemplate: 1, someProperty: 'firstItemValue' },
{ preferredTemplate: 2, someProperty: 'secondItemValue' }
]);
@@ -700,7 +698,7 @@ describe('Templating', function() {
it('Data binding \'templateOptions\' should be passed to template', function() {
var myModel = {
someAdditionalData: { myAdditionalProp: "someAdditionalValue" },
- people: new ko.observableArray([
+ people: ko.observableArray([
{ name: "Alpha" },
{ name: "Beta" }
])
diff --git a/knockout/tests/knockout-tests.ts b/knockout/tests/knockout-tests.ts
index 6682eb363..e2fbf4c02 100644
--- a/knockout/tests/knockout-tests.ts
+++ b/knockout/tests/knockout-tests.ts
@@ -53,7 +53,7 @@ function test_computed() {
});
}
- function MyViewModel() {
+ function MyViewModel1() {
this.price = ko.observable(25.99);
this.formattedPrice = ko.computed({
@@ -68,7 +68,7 @@ function test_computed() {
});
}
- function MyViewModel() {
+ function MyViewModel2() {
this.acceptedNumericValue = ko.observable(123);
this.lastInputWasValid = ko.observable(true);
@@ -90,13 +90,13 @@ function test_computed() {
}
class GetterViewModel {
- private _selectedRange: KnockoutObservableAny;
+ private _selectedRange: KnockoutObservable;
constructor() {
this._selectedRange = ko.observable();
}
- public range: KnockoutObservableAny;
+ public range: KnockoutObservable;
}
function testGetter() {
@@ -333,12 +333,12 @@ function test_more() {
return target;
};
- function AppViewModel(first, last) {
+ function AppViewModel2(first, last) {
this.firstName = ko.observable(first).extend({ required: "Please enter a first name" });
this.lastName = ko.observable(last).extend({ required: "" });
}
- ko.applyBindings(new AppViewModel("Bob", "Smith"));
+ ko.applyBindings(new AppViewModel2("Bob", "Smith"));
var first;
this.firstName = ko.observable(first).extend({ required: "Please enter a first name", logChange: "first name" });
@@ -347,7 +347,7 @@ function test_more() {
return name.toUpperCase();
}).extend({ throttle: 500 });
- function AppViewModel() {
+ function AppViewModel3() {
this.instantaneousValue = ko.observable();
this.throttledValue = ko.computed(this.instantaneousValue)
.extend({ throttle: 400 });
@@ -420,7 +420,7 @@ function test_more() {
this.done = ko.observable(done);
}
- function AppViewModel() {
+ function AppViewModel4() {
this.tasks = ko.observableArray([
new Task('Find new desktop background', true),
new Task('Put shiny stickers on laptop', false),
@@ -430,7 +430,7 @@ function test_more() {
this.doneTasks = this.tasks.filterByProperty("done", true);
}
- ko.applyBindings(new AppViewModel());
+ ko.applyBindings(new AppViewModel4());
this.doneTasks = ko.computed(function () {
var all = this.tasks(), done = [];
for (var i = 0; i < all.length; i++)
@@ -441,7 +441,7 @@ function test_more() {
}
function test_mappingplugin() {
- var viewModel = {
+ var viewModel0 = {
serverTime: ko.observable(),
numUsers: ko.observable()
}
@@ -449,8 +449,8 @@ function test_mappingplugin() {
serverTime: '2010-01-07',
numUsers: 3
};
- viewModel.serverTime(data.serverTime);
- viewModel.numUsers(data.numUsers);
+ viewModel0.serverTime(data.serverTime);
+ viewModel0.numUsers(data.numUsers);
var viewModel = ko.mapping.fromJS(data);
ko.mapping.fromJS(data, viewModel);
@@ -526,7 +526,7 @@ function test_misc() {
return this;
};
- this.myObservable = ko.observable("myValue").publishOn("myTopic");
+ this.myObservable = >ko.observable("myValue").publishOn("myTopic");
ko.subscribable.fn.subscribeTo = function (topic) {
postbox.subscribe(this, null, topic);
@@ -534,7 +534,7 @@ function test_misc() {
return this;
};
- this.observableFromAnotherVM = ko.observable().subscribeTo("myTopic");
+ this.observableFromAnotherVM = >ko.observable().subscribeTo("myTopic");
postbox.subscribe(function (newValue) {
this(newValue);
diff --git a/package.json b/package.json
index e2b00d192..8044c470a 100644
--- a/package.json
+++ b/package.json
@@ -2,6 +2,6 @@
"name": "DefinitelyTyped",
"version": "0.0.0",
"scripts": {
- "test": "node ./_infrastructure/tests/testRunner.js"
+ "test": "node ./_infrastructure/tests/runner.js"
}
}
diff --git a/qunit/qunit-tests.ts b/qunit/qunit-tests.ts
index 9a4849379..abc1af8c7 100644
--- a/qunit/qunit-tests.ts
+++ b/qunit/qunit-tests.ts
@@ -122,7 +122,7 @@ test("a test", function () {
QUnit.config.autostart = false;
QUnit.start();
-QUnit.config.urlConfig.push({
+QUnit.config.urlConfig.push({
id: "min",
label: "Minified source",
tooltip: "Load minified source files instead of the regular unminified ones."
@@ -729,13 +729,7 @@ test("just a test", function() {
// ************** BUG ? ******************
// TODO disable reordering for this suite!
-var begin = 0,
- moduleStart = 0,
- moduleDone = 0,
- testStart = 0,
- testDone = 0,
- log = 0,
- moduleContext,
+var moduleContext,
moduleDoneContext,
testContext,
testDoneContext,
diff --git a/raphael/raphael.d.ts b/raphael/raphael.d.ts
index c17a8d4fa..fc8503cd3 100644
--- a/raphael/raphael.d.ts
+++ b/raphael/raphael.d.ts
@@ -245,7 +245,6 @@ interface RaphaelStatic {
format(token: string, ...parameters: any[]): string;
fullfill(token: string, json: JSON): string;
getColor(value?: number): string;
- getColor: { reset(); };
getPointAtLength(path: string, length: number): { x: number; y: number; alpha: number; };
getRGB(colour: string): { r: number; g: number; b: number; hex: string; error: bool; };
getSubpath(path: string, from: number, to: number): string;