From 8aa7e224aa58fcd33934877481dff446bf69a22d Mon Sep 17 00:00:00 2001 From: cedvdb Date: Tue, 14 Mar 2017 00:08:18 +0100 Subject: [PATCH 01/11] added entries foreach values and keys --- lib/lib.d.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/lib.d.ts b/lib/lib.d.ts index 126e5d82ac4..f48dd389616 100644 --- a/lib/lib.d.ts +++ b/lib/lib.d.ts @@ -18053,6 +18053,10 @@ declare var URLSearchParams: { interface NodeListOf extends NodeList { length: number; item(index: number): TNode; + keys(): ArrayLike; + values(): ArrayLike<[number, TNode]>; + entries(): ArrayLike; + forEach():void; [index: number]: TNode; } From 5f37d32dbf049b36f5a56a648e87865be122aa53 Mon Sep 17 00:00:00 2001 From: cedvdb Date: Tue, 14 Mar 2017 00:52:47 +0100 Subject: [PATCH 02/11] added `keys`, `entries`, `values`, `forEach` on NodeListOf --- lib/lib.d.ts | 4 ---- src/lib/dom.iterable.d.ts | 5 +++++ 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/lib.d.ts b/lib/lib.d.ts index f48dd389616..126e5d82ac4 100644 --- a/lib/lib.d.ts +++ b/lib/lib.d.ts @@ -18053,10 +18053,6 @@ declare var URLSearchParams: { interface NodeListOf extends NodeList { length: number; item(index: number): TNode; - keys(): ArrayLike; - values(): ArrayLike<[number, TNode]>; - entries(): ArrayLike; - forEach():void; [index: number]: TNode; } diff --git a/src/lib/dom.iterable.d.ts b/src/lib/dom.iterable.d.ts index 7f653dc8e0c..4e9112a9a44 100644 --- a/src/lib/dom.iterable.d.ts +++ b/src/lib/dom.iterable.d.ts @@ -5,9 +5,14 @@ interface DOMTokenList { } interface NodeList { + [Symbol.iterator](): IterableIterator } interface NodeListOf { + keys(): IterableIterator; + values(): IterableIterator<[number, TNode]>; + entries(): IterableIterator; + forEach(): void; [Symbol.iterator](): IterableIterator } From 875328c123557879a887ea0e558b32ca912372ac Mon Sep 17 00:00:00 2001 From: cedvdb Date: Tue, 14 Mar 2017 00:55:41 +0100 Subject: [PATCH 03/11] removed white space --- src/lib/dom.iterable.d.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/lib/dom.iterable.d.ts b/src/lib/dom.iterable.d.ts index 4e9112a9a44..34c91aa148b 100644 --- a/src/lib/dom.iterable.d.ts +++ b/src/lib/dom.iterable.d.ts @@ -5,7 +5,6 @@ interface DOMTokenList { } interface NodeList { - [Symbol.iterator](): IterableIterator } From 8cac5285b90b7c8a19741c0f74958353a5c79d2d Mon Sep 17 00:00:00 2001 From: cedvdb Date: Tue, 14 Mar 2017 04:15:32 +0100 Subject: [PATCH 04/11] added `keys`, `values`, ``forEach, `entries` to nodelist --- src/lib/dom.iterable.d.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/lib/dom.iterable.d.ts b/src/lib/dom.iterable.d.ts index 34c91aa148b..fb862376a24 100644 --- a/src/lib/dom.iterable.d.ts +++ b/src/lib/dom.iterable.d.ts @@ -5,6 +5,10 @@ interface DOMTokenList { } interface NodeList { + keys(): IterableIterator; + values(): IterableIterator<[number, Node]>; + entries(): IterableIterator; + forEach(): void; [Symbol.iterator](): IterableIterator } From 45ae0b453cc75d53c42fd0450512bfbb24e47c6c Mon Sep 17 00:00:00 2001 From: cedvdb Date: Wed, 15 Mar 2017 01:15:15 +0100 Subject: [PATCH 05/11] change to forEach method --- src/lib/dom.iterable.d.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lib/dom.iterable.d.ts b/src/lib/dom.iterable.d.ts index fb862376a24..35afb0ddd5c 100644 --- a/src/lib/dom.iterable.d.ts +++ b/src/lib/dom.iterable.d.ts @@ -8,7 +8,7 @@ interface NodeList { keys(): IterableIterator; values(): IterableIterator<[number, Node]>; entries(): IterableIterator; - forEach(): void; + forEach(callbackfn: (value: Node, index: number, listObj: NodeList) => void, thisArg?: any): void; [Symbol.iterator](): IterableIterator } @@ -16,6 +16,6 @@ interface NodeListOf { keys(): IterableIterator; values(): IterableIterator<[number, TNode]>; entries(): IterableIterator; - forEach(): void; + forEach(callbackfn: (value: TNode, index: number, listObj: NodeListOf) => void, thisArg?: any): void; [Symbol.iterator](): IterableIterator } From 64070632dc9f578e98843b85bc0dfdc3e2681624 Mon Sep 17 00:00:00 2001 From: cedvdb Date: Wed, 15 Mar 2017 03:06:25 +0100 Subject: [PATCH 06/11] added comments --- src/lib/dom.iterable.d.ts | 33 ++++++++++++++++++++++++++++----- 1 file changed, 28 insertions(+), 5 deletions(-) diff --git a/src/lib/dom.iterable.d.ts b/src/lib/dom.iterable.d.ts index 35afb0ddd5c..543f49e3751 100644 --- a/src/lib/dom.iterable.d.ts +++ b/src/lib/dom.iterable.d.ts @@ -5,17 +5,40 @@ interface DOMTokenList { } interface NodeList { - keys(): IterableIterator; - values(): IterableIterator<[number, Node]>; + + /** + * Returns an list of values in the list + */ entries(): IterableIterator; + forEach(callbackfn: (value: Node, index: number, listObj: NodeList) => void, thisArg?: any): void; + /** + * Returns an list of keys in the list + */ + keys(): IterableIterator; + /** + * Returns an array of key, value pairs for every entry in the list + */ + values(): IterableIterator<[number, Node]>; + + [Symbol.iterator](): IterableIterator } interface NodeListOf { + /** + * Returns an list of values in the list + */ + entries(): IterableIterator; + + forEach(callbackfn: (value: Node, index: number, listObj: NodeList) => void, thisArg?: any): void; + /** + * Returns an list of keys in the list + */ keys(): IterableIterator; - values(): IterableIterator<[number, TNode]>; - entries(): IterableIterator; - forEach(callbackfn: (value: TNode, index: number, listObj: NodeListOf) => void, thisArg?: any): void; + /** + * Returns an array of key, value pairs for every entry in the list + */ + values(): IterableIterator<[number, Node]>; [Symbol.iterator](): IterableIterator } From d9cab8331433744ee7b975ba610d2292a5f9fe72 Mon Sep 17 00:00:00 2001 From: cedvdb Date: Wed, 15 Mar 2017 03:08:16 +0100 Subject: [PATCH 07/11] Change Node to TNode in NodeListOf --- src/lib/dom.iterable.d.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/lib/dom.iterable.d.ts b/src/lib/dom.iterable.d.ts index 543f49e3751..bb6d75aa657 100644 --- a/src/lib/dom.iterable.d.ts +++ b/src/lib/dom.iterable.d.ts @@ -29,9 +29,9 @@ interface NodeListOf { /** * Returns an list of values in the list */ - entries(): IterableIterator; + entries(): IterableIterator; - forEach(callbackfn: (value: Node, index: number, listObj: NodeList) => void, thisArg?: any): void; + forEach(callbackfn: (value: TNode, index: number, listObj: NodeList) => void, thisArg?: any): void; /** * Returns an list of keys in the list */ @@ -39,6 +39,6 @@ interface NodeListOf { /** * Returns an array of key, value pairs for every entry in the list */ - values(): IterableIterator<[number, Node]>; + values(): IterableIterator<[number, TNode]>; [Symbol.iterator](): IterableIterator } From f20c59a7d287584a0c9b0cdfe8c6eca5b8049caf Mon Sep 17 00:00:00 2001 From: cedvdb Date: Wed, 15 Mar 2017 03:10:40 +0100 Subject: [PATCH 08/11] change NodeList to NodeListOf in NodeListOf.forEach --- src/lib/dom.iterable.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/dom.iterable.d.ts b/src/lib/dom.iterable.d.ts index bb6d75aa657..a3f3f238fb2 100644 --- a/src/lib/dom.iterable.d.ts +++ b/src/lib/dom.iterable.d.ts @@ -31,7 +31,7 @@ interface NodeListOf { */ entries(): IterableIterator; - forEach(callbackfn: (value: TNode, index: number, listObj: NodeList) => void, thisArg?: any): void; + forEach(callbackfn: (value: TNode, index: number, listObj: NodeListOf) => void, thisArg?: any): void; /** * Returns an list of keys in the list */ From 8d0e0f3f795193c22b3f7ddfabc0759e20e6ae64 Mon Sep 17 00:00:00 2001 From: cedvdb Date: Wed, 15 Mar 2017 03:12:08 +0100 Subject: [PATCH 09/11] Added comment for forEach --- src/lib/dom.iterable.d.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/lib/dom.iterable.d.ts b/src/lib/dom.iterable.d.ts index a3f3f238fb2..ebdb01603e7 100644 --- a/src/lib/dom.iterable.d.ts +++ b/src/lib/dom.iterable.d.ts @@ -10,7 +10,9 @@ interface NodeList { * Returns an list of values in the list */ entries(): IterableIterator; - + /** + * Executes a provided function once per NodeList element. + */ forEach(callbackfn: (value: Node, index: number, listObj: NodeList) => void, thisArg?: any): void; /** * Returns an list of keys in the list @@ -30,7 +32,10 @@ interface NodeListOf { * Returns an list of values in the list */ entries(): IterableIterator; - + + /** + * Executes a provided function once per NodeList element. + */ forEach(callbackfn: (value: TNode, index: number, listObj: NodeListOf) => void, thisArg?: any): void; /** * Returns an list of keys in the list From db878adea31c025328276cdba365f578ba9acd7b Mon Sep 17 00:00:00 2001 From: cedvdb Date: Wed, 15 Mar 2017 03:15:58 +0100 Subject: [PATCH 10/11] changed forEach comment --- src/lib/dom.iterable.d.ts | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/lib/dom.iterable.d.ts b/src/lib/dom.iterable.d.ts index ebdb01603e7..3badfc39a3e 100644 --- a/src/lib/dom.iterable.d.ts +++ b/src/lib/dom.iterable.d.ts @@ -10,9 +10,11 @@ interface NodeList { * Returns an list of values in the list */ entries(): IterableIterator; - /** - * Executes a provided function once per NodeList element. - */ + /** + * Performs the specified action for each node in an list. + * @param callbackfn A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the list. + * @param thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value. + */ forEach(callbackfn: (value: Node, index: number, listObj: NodeList) => void, thisArg?: any): void; /** * Returns an list of keys in the list @@ -33,9 +35,11 @@ interface NodeListOf { */ entries(): IterableIterator; - /** - * Executes a provided function once per NodeList element. - */ + /** + * Performs the specified action for each node in an list. + * @param callbackfn A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the list. + * @param thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value. + */ forEach(callbackfn: (value: TNode, index: number, listObj: NodeListOf) => void, thisArg?: any): void; /** * Returns an list of keys in the list From e8b6e8b0f1328484156f763b71bc9050410568d5 Mon Sep 17 00:00:00 2001 From: cedvdb Date: Wed, 15 Mar 2017 12:48:55 +0100 Subject: [PATCH 11/11] swap entries and values --- src/lib/dom.iterable.d.ts | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/src/lib/dom.iterable.d.ts b/src/lib/dom.iterable.d.ts index 3badfc39a3e..e4da7a62763 100644 --- a/src/lib/dom.iterable.d.ts +++ b/src/lib/dom.iterable.d.ts @@ -6,10 +6,11 @@ interface DOMTokenList { interface NodeList { + /** - * Returns an list of values in the list - */ - entries(): IterableIterator; + * Returns an array of key, value pairs for every entry in the list + */ + entries(): IterableIterator<[number, Node]>; /** * Performs the specified action for each node in an list. * @param callbackfn A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the list. @@ -20,20 +21,22 @@ interface NodeList { * Returns an list of keys in the list */ keys(): IterableIterator; + /** - * Returns an array of key, value pairs for every entry in the list + * Returns an list of values in the list */ - values(): IterableIterator<[number, Node]>; + values(): IterableIterator; [Symbol.iterator](): IterableIterator } interface NodeListOf { + /** - * Returns an list of values in the list - */ - entries(): IterableIterator; + * Returns an array of key, value pairs for every entry in the list + */ + entries(): IterableIterator<[number, TNode]>; /** * Performs the specified action for each node in an list. @@ -46,8 +49,9 @@ interface NodeListOf { */ keys(): IterableIterator; /** - * Returns an array of key, value pairs for every entry in the list + * Returns an list of values in the list */ - values(): IterableIterator<[number, TNode]>; + values(): IterableIterator; + [Symbol.iterator](): IterableIterator }