mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2026-07-05 01:30:17 +00:00
@@ -83,6 +83,7 @@ List of Definitions
|
||||
* [i18next](http://i18next.com/) (by [Maarten Docter](https://github.com/mdocter))
|
||||
* [iCheck](http://damirfoy.com/iCheck/) (by [Dániel Tar](https://github.com/qcz))
|
||||
* [Impress.js](https://github.com/bartaz/impress.js) (by [Boris Yankov](https://github.com/borisyankov))
|
||||
* [Intl](http://www.ecma-international.org/ecma-402/1.0/) (by [Jeffery Grajkowski](http://github.com/pushplay))
|
||||
* [iScroll](http://cubiq.org/iscroll-4) (by [Boris Yankov](https://github.com/borisyankov))
|
||||
* [jake](https://github.com/mde/jake) (by [Kon](http://phyzkit.net/))
|
||||
* [Jasmine](http://pivotal.github.com/jasmine/) (by [Boris Yankov](https://github.com/borisyankov))
|
||||
|
||||
90
intl/intl-tests.ts
Normal file
90
intl/intl-tests.ts
Normal file
@@ -0,0 +1,90 @@
|
||||
/// <reference path="intl.d.ts" />
|
||||
|
||||
// Collator
|
||||
|
||||
alert(Intl.Collator.supportedLocalesOf(["ban", "id-u-co-pinyin", "de-ID"], { localeMatcher: "lookup" }).join(", "));
|
||||
// → "id-u-co-pinyin, de-ID"
|
||||
|
||||
// in German, ä sorts with a
|
||||
alert(new Intl.Collator("de").compare("ä", "z").toString());
|
||||
// → a negative value
|
||||
|
||||
// in Swedish, ä sorts after z
|
||||
alert(new Intl.Collator("sv").compare("ä", "z").toString());
|
||||
// → a positive value
|
||||
|
||||
// in German, ä has a as the base letter
|
||||
alert(new Intl.Collator("de", { sensitivity: "base" }).compare("ä", "a").toString());
|
||||
// → 0
|
||||
|
||||
// in Swedish, ä and a are separate base letters
|
||||
alert(new Intl.Collator("sv", { sensitivity: "base" }).compare("ä", "a").toString());
|
||||
// → a positive value
|
||||
|
||||
var a = ["Offenbach", "Österreich", "Odenwald"];
|
||||
var collator = new Intl.Collator("de-u-co-phonebk");
|
||||
a.sort(collator.compare);
|
||||
alert(a.join(", "));
|
||||
// → "Odenwald, Österreich, Offenbach"
|
||||
|
||||
|
||||
// DateTimeFormat
|
||||
|
||||
alert(Intl.DateTimeFormat.supportedLocalesOf(["ban", "id-u-co-pinyin", "de-ID"], { localeMatcher: "lookup" }).join(", "));
|
||||
// → "id-u-co-pinyin, de-ID"
|
||||
|
||||
// toLocaleString without arguments depends on the implementation,
|
||||
// the default locale, and the default time zone
|
||||
alert(new Intl.DateTimeFormat().format(new Date(Date.UTC(2012, 11, 20, 3, 0, 0))));
|
||||
// → "12/19/2012" if run in en-US locale with time zone America/Los_Angeles
|
||||
|
||||
alert(new Intl.DateTimeFormat("sr-RS", { weekday: "long", year: "numeric", month: "long", day: "numeric" }).format(new Date()));
|
||||
// → "недеља, 7. април 2013."
|
||||
|
||||
alert([new Date(2012, 08), new Date(2012, 11), new Date(2012, 03)].map(new Intl.DateTimeFormat("pt-BR", { year: "numeric", month: "long" }).format).join("; "));
|
||||
// → "setembro de 2012; dezembro de 2012; abril de 2012"
|
||||
|
||||
|
||||
// NumberFormat
|
||||
|
||||
alert(Intl.NumberFormat.supportedLocalesOf(["ban", "id-u-co-pinyin", "de-ID"], { localeMatcher: "lookup" }).join(", "));
|
||||
// → "id-u-co-pinyin, de-ID"
|
||||
|
||||
alert(new Intl.NumberFormat("ru-RU", { style: "currency", currency: "RUB" }).format(654321.987));
|
||||
// → "654 321,99 руб."
|
||||
|
||||
alert([123456.789, 987654.321, 456789.123].map(new Intl.NumberFormat("es-ES").format).join("; "));
|
||||
// → "123.456,789; 987.654,321; 456.789,123"
|
||||
|
||||
// German uses comma as decimal separator and period for thousands
|
||||
alert(new Intl.NumberFormat("de-DE").format(123456.789));
|
||||
// → 123.456,789
|
||||
|
||||
// Arabic in most Arabic speaking countries uses real Arabic digits
|
||||
alert(new Intl.NumberFormat("ar-EG").format(123456.789));
|
||||
// → ١٢٣٤٥٦٫٧٨٩
|
||||
|
||||
// India uses thousands/lakh/crore separators
|
||||
alert(new Intl.NumberFormat("en-IN").format(123456.789));
|
||||
// → 1,23,456.789
|
||||
|
||||
// the nu extension key requests a numbering system, e.g. Chinese decimal
|
||||
alert(new Intl.NumberFormat("zh-Hans-CN-u-nu-hanidec").format(123456.789));
|
||||
// → 一二三,四五六.七八九
|
||||
|
||||
// when requesting a language that may not be supported, such as
|
||||
// Balinese, include a fallback language, in this case Indonesian
|
||||
alert(new Intl.NumberFormat(["ban", "id"]).format(123456.789));
|
||||
// → 123.456,789
|
||||
|
||||
// request a currency format
|
||||
alert(new Intl.NumberFormat("de-DE", { style: "currency", currency: "EUR" }).format(123456.789));
|
||||
// → 123.456,79 €
|
||||
|
||||
// the Japanese yen doesn't use a minor unit
|
||||
alert(new Intl.NumberFormat("ja-JP", { style: "currency", currency: "JPY" }).format(123456.789))
|
||||
// → ¥123,457
|
||||
|
||||
// limit to three significant digits
|
||||
alert(new Intl.NumberFormat("en-IN", { maximumSignificantDigits: 3 }).format(123456.789));
|
||||
// → 1,23,000
|
||||
102
intl/intl.d.ts
vendored
Normal file
102
intl/intl.d.ts
vendored
Normal file
@@ -0,0 +1,102 @@
|
||||
// Type definitions for Intl
|
||||
// Project: http://www.ecma-international.org/ecma-402/1.0/
|
||||
// Definitions by: Jeffery Grajkowski <http://github.com/pushplay>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
declare module Intl {
|
||||
|
||||
export interface SupportedLocalesOfOptions {
|
||||
localeMatcher?: string;
|
||||
}
|
||||
|
||||
export interface CollatorOptions {
|
||||
localeMatcher?: string;
|
||||
usage?: string;
|
||||
sensitivity?: string;
|
||||
ignorePunctuation?: boolean;
|
||||
numeric?: boolean;
|
||||
caseFirst?: string;
|
||||
}
|
||||
|
||||
export class Collator {
|
||||
constructor(locales?: string, options?: CollatorOptions);
|
||||
constructor(locales?: string[], options?: CollatorOptions);
|
||||
static supportedLocalesOf(locales: string, options?: SupportedLocalesOfOptions): string[];
|
||||
static supportedLocalesOf(locales: string[], options?: SupportedLocalesOfOptions): string[];
|
||||
compare(string1: string, string2: string): number;
|
||||
resolvedOptions(): {
|
||||
locale: string;
|
||||
usage: string;
|
||||
sensitivity: string;
|
||||
ignorePunctuation: boolean;
|
||||
collation: string;
|
||||
numeric: boolean;
|
||||
caseFirst: string;
|
||||
};
|
||||
}
|
||||
|
||||
export interface DateTimeFormatOptions {
|
||||
localeMatcher?: string;
|
||||
timeZone?: string;
|
||||
hour12?: boolean;
|
||||
formatMatcher?: boolean;
|
||||
}
|
||||
|
||||
export class DateTimeFormat {
|
||||
constructor(locales?: string, options?: DateTimeFormatOptions);
|
||||
constructor(locales?: string[], options?: DateTimeFormatOptions);
|
||||
static supportedLocalesOf(locales: string, options?: SupportedLocalesOfOptions): string[];
|
||||
static supportedLocalesOf(locales: string[], options?: SupportedLocalesOfOptions): string[];
|
||||
format(date: Date): string;
|
||||
resolvedOptions(): {
|
||||
locale: string;
|
||||
calendar: string;
|
||||
numberingSystem: string;
|
||||
timeZone: string;
|
||||
hour12?: boolean;
|
||||
weekday?: string;
|
||||
era?: string;
|
||||
year?: string;
|
||||
month?: string;
|
||||
day?: string;
|
||||
hour?: string;
|
||||
minute?: string;
|
||||
second?: string;
|
||||
timeZoneName?: string;
|
||||
};
|
||||
}
|
||||
|
||||
export interface NumberFormatOptions {
|
||||
localeMatcher?: string;
|
||||
style?: string;
|
||||
currency?: string;
|
||||
currencyDisplay?: string;
|
||||
useGrouping?: boolean;
|
||||
minimumIntegerDigits?: number;
|
||||
minimumFractionDigits?: number;
|
||||
maximumFractionDigits?: number;
|
||||
minimumSignificantDigits?: number;
|
||||
maximumSignificantDigits?: number;
|
||||
}
|
||||
|
||||
export class NumberFormat {
|
||||
constructor(locales?: string, options?: NumberFormatOptions);
|
||||
constructor(locales?: string[], options?: NumberFormatOptions);
|
||||
static supportedLocalesOf(locales: string, options?: SupportedLocalesOfOptions): string[];
|
||||
static supportedLocalesOf(locales: string[], options?: SupportedLocalesOfOptions): string[];
|
||||
format(n: number): string;
|
||||
resolvedOptions(): {
|
||||
locale: string;
|
||||
numberingSystem: string;
|
||||
style: string;
|
||||
useGrouping: boolean;
|
||||
currency?: string;
|
||||
currencyDisplay?: string;
|
||||
minimumIntegerDigits?: number;
|
||||
minimumFractionDigits?: number;
|
||||
maximumFractionDigits?: number;
|
||||
minimumSignificantDigits?: number;
|
||||
maximumSignificantDigits?: number;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user