From bf09efb39f0ec78dec18134bae3546239ff07328 Mon Sep 17 00:00:00 2001 From: Robert Baker Date: Wed, 3 Jun 2015 16:51:31 -0700 Subject: [PATCH] Added Numbro typedefs (taken from NumeralJS and renamed). Numbro is a maintained fork of the now unmaintained numeraljs. --- numbro/numbro-commonjs-tests.ts | 44 ++++++++++++++++++++++++++++++ numbro/numbro-tests.ts | 43 +++++++++++++++++++++++++++++ numbro/numbro.d.ts | 48 +++++++++++++++++++++++++++++++++ 3 files changed, 135 insertions(+) create mode 100644 numbro/numbro-commonjs-tests.ts create mode 100644 numbro/numbro-tests.ts create mode 100644 numbro/numbro.d.ts diff --git a/numbro/numbro-commonjs-tests.ts b/numbro/numbro-commonjs-tests.ts new file mode 100644 index 0000000000..c428a475e8 --- /dev/null +++ b/numbro/numbro-commonjs-tests.ts @@ -0,0 +1,44 @@ +/// +import numbro = require("numbro"); + +var valueFormat: string = numbro(1000).format('0,0'); +// '1,000' + +var valueUnformat: number = numbro().unformat('($10,000.00)'); +// '-10000' + +var value3: Numbro = numbro(1000); +var added: Numbro = value3.add(10); +// 1010 + +var value4: Numbro = numbro(1000); +var formatValue4a: string = value4.format('0,0'); +// '1,000' +var formatValue4b: number = value4.value(); +// 1000 + +var value5: Numbro = numbro(); +value5.set(1000); +var value5Num: number = value5.value(); +// 1000 + +var value6: Numbro = numbro(1000); +var value: number = 100; +var difference = value6.difference(value); +// 900 + +var value7: Numbro = numbro(0); +numbro.zeroFormat('N/A'); +var zeroString: string = value7.format('0.0'); +// 'N/A' + +var a: Numbro = numbro(1000); +var b: Numbro = numbro(a); +var c: Numbro = a.clone(); + +var aVal: number = a.set(2000).value(); +// 2000 +var bVal: number = b.value(); +// 1000 +var cVal: number = c.add(10).value(); +// 1010 diff --git a/numbro/numbro-tests.ts b/numbro/numbro-tests.ts new file mode 100644 index 0000000000..0b18e898dd --- /dev/null +++ b/numbro/numbro-tests.ts @@ -0,0 +1,43 @@ +/// + +var valueFormat: string = numbro(1000).format('0,0'); +// '1,000' + +var valueUnformat: number = numbro().unformat('($10,000.00)'); +// '-10000' + +var value3: Numbro = numbro(1000); +var added: Numbro = value3.add(10); +// 1010 + +var value4: Numbro = numbro(1000); +var formatValue4a: string = value4.format('0,0'); +// '1,000' +var formatValue4b: number = value4.value(); +// 1000 + +var value5: Numbro = numbro(); +value5.set(1000); +var value5Num: number = value5.value(); +// 1000 + +var value6: Numbro = numbro(1000); +var value: number = 100; +var difference = value6.difference(value); +// 900 + +var value7: Numbro = numbro(0); +numbro.zeroFormat('N/A'); +var zeroString: string = value7.format('0.0'); +// 'N/A' + +var a: Numbro = numbro(1000); +var b: Numbro = numbro(a); +var c: Numbro = a.clone(); + +var aVal: number = a.set(2000).value(); +// 2000 +var bVal: number = b.value(); +// 1000 +var cVal: number = c.add(10).value(); +// 1010 diff --git a/numbro/numbro.d.ts b/numbro/numbro.d.ts new file mode 100644 index 0000000000..a2c1f8d7a7 --- /dev/null +++ b/numbro/numbro.d.ts @@ -0,0 +1,48 @@ +// Type definitions for Numbro.js +// Project: https://github.com/foretagsplatsen/numbro +// Definitions by: Vincent Bortone +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +interface NumbroLanguage { + delimiters: { + thousands: string; + decimal: string; + }; + abbreviations: { + thousand: string; + million: string; + billion: string; + trillion: string; + }; + ordinal(num: number): string; + currency: { + symbol: string; + }; +} + +interface Numbro { + (value?: any): Numbro; + version: string; + isNumbro: boolean; + language(key: string, values?: NumbroLanguage): Numbro; + zeroFormat(format: string): string; + clone(): Numbro; + format(inputString: string): string; + unformat(inputString: string): number; + value(): number; + valueOf(): number; + set (value: any): Numbro; + add(value: any): Numbro; + subtract(value: any): Numbro; + multiply(value: any): Numbro; + divide(value: any): Numbro; + difference(value: any): number; +} + +declare var numbro: Numbro; + +declare module "numbro" { + + export = numbro; + +}