From 859a9e72e1e0431d729e429865d6272e2fb03ff7 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Sun, 23 Jun 2019 22:16:03 +0200 Subject: idb: more tests working --- packages/idb-bridge/src/util/valueToKey.ts | 88 +++++++++++++++--------------- 1 file changed, 44 insertions(+), 44 deletions(-) (limited to 'packages/idb-bridge/src/util/valueToKey.ts') diff --git a/packages/idb-bridge/src/util/valueToKey.ts b/packages/idb-bridge/src/util/valueToKey.ts index 3a9e36786..85c8c409f 100644 --- a/packages/idb-bridge/src/util/valueToKey.ts +++ b/packages/idb-bridge/src/util/valueToKey.ts @@ -14,57 +14,57 @@ permissions and limitations under the License. */ - import { DataError } from "./errors"; import { Key } from "./types"; // https://w3c.github.io/IndexedDB/#convert-a-value-to-a-input function valueToKey(input: any, seen?: Set): Key | Key[] { - if (typeof input === "number") { - if (isNaN(input)) { - throw new DataError(); - } - return input; - } else if (input instanceof Date) { - const ms = input.valueOf(); - if (isNaN(ms)) { - throw new DataError(); - } - return new Date(ms); - } else if (typeof input === "string") { - return input; - } else if ( - input instanceof ArrayBuffer || - (typeof ArrayBuffer !== "undefined" && - ArrayBuffer.isView && - ArrayBuffer.isView(input)) - ) { - if (input instanceof ArrayBuffer) { - return new Uint8Array(input).buffer; - } - return new Uint8Array(input.buffer).buffer; - } else if (Array.isArray(input)) { - if (seen === undefined) { - seen = new Set(); - } else if (seen.has(input)) { - throw new DataError(); - } - seen.add(input); + if (typeof input === "number") { + if (isNaN(input)) { + throw new DataError(); + } + return input; + } else if (input instanceof Date) { + const ms = input.valueOf(); + if (isNaN(ms)) { + throw new DataError(); + } + return new Date(ms); + } else if (typeof input === "string") { + return input; + } else if ( + input instanceof ArrayBuffer || + (typeof ArrayBuffer !== "undefined" && + ArrayBuffer.isView && + ArrayBuffer.isView(input)) + ) { + if (input instanceof ArrayBuffer) { + return new Uint8Array(input).buffer; + } + return new Uint8Array(input.buffer).buffer; + } else if (Array.isArray(input)) { + if (seen === undefined) { + seen = new Set(); + } else if (seen.has(input)) { + throw new DataError(); + } + seen.add(input); - const keys = []; - for (let i = 0; i < input.length; i++) { - const hop = input.hasOwnProperty(i); - if (!hop) { - throw new DataError(); - } - const entry = input[i]; - const key = valueToKey(entry, seen); - keys.push(key); - } - return keys; - } else { + const keys = []; + for (let i = 0; i < input.length; i++) { + const hop = input.hasOwnProperty(i); + if (!hop) { throw new DataError(); + } + const entry = input[i]; + const key = valueToKey(entry, seen); + keys.push(key); } -}; + return keys; + } else { + + throw new DataError(); + } +} export default valueToKey; -- cgit v1.2.3