mirror of
https://github.com/zhigang1992/DefinitelyTyped.git
synced 2026-05-26 10:56:19 +08:00
Merge pull request #2516 from gjunge/master
Updated to typeahead 0.10.4
This commit is contained in:
60
history/history.d.ts
vendored
60
history/history.d.ts
vendored
@@ -1,13 +1,13 @@
|
||||
// Type definitions for History.js
|
||||
// Project: https://github.com/balupton/History.js
|
||||
// Definitions by: Boris Yankov <https://github.com/borisyankov/>
|
||||
// Type definitions for History.js 1.8.0
|
||||
// Project: https://github.com/browserstate/history.js
|
||||
// Definitions by: Boris Yankov <https://github.com/borisyankov/>, Gidon Junge <https://github.com/gjunge/>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
|
||||
interface HistoryAdapter {
|
||||
bind(element, event, callback);
|
||||
trigger(element, event);
|
||||
onDomLoad(callback);
|
||||
bind(element: any, event: string, callback: () => void);
|
||||
trigger(element: any, event: string);
|
||||
onDomLoad(callback: () => void);
|
||||
}
|
||||
|
||||
// Since History is defined in lib.d.ts as well
|
||||
@@ -17,15 +17,45 @@ interface HistoryAdapter {
|
||||
// var Historyjs: Historyjs = <any>History;
|
||||
|
||||
interface Historyjs {
|
||||
|
||||
enabled: boolean;
|
||||
pushState(data, title, url);
|
||||
replaceState(data, title, url);
|
||||
getState();
|
||||
getHash();
|
||||
|
||||
pushState(data: any, title: string, url: string);
|
||||
replaceState(data: any, title: string, url: string);
|
||||
getState(): HistoryState;
|
||||
getStateByIndex(index: number): HistoryState;
|
||||
getCurrentIndex(): number;
|
||||
getHash(): string;
|
||||
|
||||
Adapter: HistoryAdapter;
|
||||
back();
|
||||
forward();
|
||||
go(X);
|
||||
log(...messages: any[]);
|
||||
debug(...messages: any[]);
|
||||
|
||||
back(): void;
|
||||
forward(): void;
|
||||
go(x: Number): void;
|
||||
|
||||
log(...messages: any[]): void;
|
||||
debug(...messages: any[]): void;
|
||||
|
||||
options: HistoryOptions;
|
||||
}
|
||||
|
||||
interface HistoryState {
|
||||
data?: any;
|
||||
title?: string;
|
||||
url: string;
|
||||
}
|
||||
|
||||
interface HistoryOptions {
|
||||
hashChangeInterval?: number;
|
||||
safariPollInterval?: number;
|
||||
doubleCheckInterval?: number;
|
||||
disableSuid?: boolean;
|
||||
storeInterval?: number;
|
||||
busyDelay?: number;
|
||||
debug?: boolean;
|
||||
initialTitle?: string;
|
||||
html4Mode?: boolean;
|
||||
delayInit?: number;
|
||||
|
||||
|
||||
}
|
||||
@@ -1,35 +1,35 @@
|
||||
/// <reference path="jquery.pjax.d.ts" />
|
||||
/// <reference path="../jquery/jquery.d.ts" />
|
||||
|
||||
function test_pjax() {
|
||||
$.pjax();
|
||||
}
|
||||
|
||||
function test_pjax_selector() {
|
||||
$('a').pjax();
|
||||
}
|
||||
|
||||
function test_pjax_option() {
|
||||
$.pjax({
|
||||
area: 'body',
|
||||
load: {
|
||||
head: 'base, meta, link',
|
||||
css: true,
|
||||
script: true
|
||||
},
|
||||
cache: { click: true, submit: false, popstate: true },
|
||||
server: { query: null }
|
||||
});
|
||||
}
|
||||
|
||||
function test_pjax_event() {
|
||||
$.pjax({
|
||||
wait: 1000
|
||||
});
|
||||
$(document).bind('pjax.request', function () {
|
||||
$('div.loading').fadeIn(100);
|
||||
});
|
||||
$(document).bind('pjax.render', function () {
|
||||
$('div.loading').fadeOut(500);
|
||||
});
|
||||
}
|
||||
/// <reference path="jquery.pjax.d.ts" />
|
||||
/// <reference path="../jquery/jquery.d.ts" />
|
||||
|
||||
function test_pjax() {
|
||||
$.pjax();
|
||||
}
|
||||
|
||||
function test_pjax_selector() {
|
||||
$('a').pjax();
|
||||
}
|
||||
|
||||
function test_pjax_option() {
|
||||
$.pjax({
|
||||
area: 'body',
|
||||
load: {
|
||||
head: 'base, meta, link',
|
||||
css: true,
|
||||
script: true
|
||||
},
|
||||
cache: { click: true, submit: false, popstate: true },
|
||||
server: { query: null }
|
||||
});
|
||||
}
|
||||
|
||||
function test_pjax_event() {
|
||||
$.pjax({
|
||||
wait: 1000
|
||||
});
|
||||
$(document).bind('pjax.request', function () {
|
||||
$('div.loading').fadeIn(100);
|
||||
});
|
||||
$(document).bind('pjax.render', function () {
|
||||
$('div.loading').fadeOut(500);
|
||||
});
|
||||
}
|
||||
|
||||
376
jquery.pjax.falsandtru/jquery.pjax.d.ts
vendored
376
jquery.pjax.falsandtru/jquery.pjax.d.ts
vendored
@@ -1,189 +1,189 @@
|
||||
// Type definitions for jquery.pjax.ts by falsandtru
|
||||
// Project: https://github.com/falsandtru/jquery.pjax.js/
|
||||
// Definitions by: 新ゝ月 NewNotMoon <http://new.not-moon.net/>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
/// <reference path="../jquery/jquery.d.ts" />
|
||||
|
||||
interface PjaxSetting {
|
||||
gns?: string;
|
||||
ns?: string;
|
||||
area?: any; // string, array, function( event, param, origUrl, destUrl )
|
||||
link?: string;
|
||||
filter?: any; // string, function()
|
||||
form?: string;
|
||||
scope?: Object;
|
||||
state?: any; // any, function(event, param, origUrl, destUrl )
|
||||
scrollTop?: any; // number, function( event, param, origUrl, destUrl ), null, false
|
||||
scrollLeft?: any; // number, function( event, param, origUrl, destUrl ), null, false
|
||||
scroll?: {
|
||||
delay?: number;
|
||||
record?: boolean //internal
|
||||
queue?: number[] //internal
|
||||
};
|
||||
ajax?: JQueryAjaxSettings;
|
||||
contentType?: string;
|
||||
load?: {
|
||||
head?: string;
|
||||
css?: boolean;
|
||||
script?: boolean;
|
||||
execute?: boolean;
|
||||
reload?: string;
|
||||
ignore?: string;
|
||||
sync?: boolean;
|
||||
ajax?: JQueryAjaxSettings;
|
||||
rewrite?: (element: any) => any;
|
||||
redirect?: boolean;
|
||||
};
|
||||
interval?: number;
|
||||
cache?: {
|
||||
click?: boolean;
|
||||
submit?: boolean;
|
||||
popstate?: boolean;
|
||||
get?: boolean;
|
||||
post?: boolean;
|
||||
page?: boolean;
|
||||
size?: number;
|
||||
mix?: number;
|
||||
expires?: {
|
||||
min?: number;
|
||||
max?: number;
|
||||
};
|
||||
};
|
||||
wait?: any; // number, function( event, param, origUrl, destUrl ): number
|
||||
fallback?: any; // boolean, function( event, param, origUrl, destUrl ): boolean
|
||||
fix?: {
|
||||
location?: boolean;
|
||||
history?: boolean;
|
||||
scroll?: boolean;
|
||||
reset?: boolean;
|
||||
};
|
||||
database?: boolean;
|
||||
server?: {
|
||||
query?: any; // string, object
|
||||
header?: {
|
||||
area?: boolean;
|
||||
head?: boolean;
|
||||
css?: boolean;
|
||||
script?: boolean;
|
||||
};
|
||||
};
|
||||
callback?: (event: JQueryEventObject, param: any) => any;
|
||||
callbacks?: {
|
||||
before?: (event: JQueryEventObject, param: any) => any;
|
||||
after?: (event: JQueryEventObject, param: any) => any;
|
||||
ajax?: {
|
||||
xhr?: (event: JQueryEventObject, param: any) => any;
|
||||
beforeSend?: (event: JQueryEventObject, param: any, data: any, ajaxSettings: any) => any;
|
||||
dataFilter?: (event: JQueryEventObject, param: any, data: any, dataType: any) => any;
|
||||
success?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
error?: (event: JQueryEventObject, param: any, XMLHttpRequest: XMLHttpRequest, textStatus: string, errorThrown: any) => any;
|
||||
complete?: (event: JQueryEventObject, param: any, XMLHttpRequest: XMLHttpRequest, textStatus: string) => any;
|
||||
done?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
fail?: (event: JQueryEventObject, param: any, XMLHttpRequest: XMLHttpRequest, textStatus: string, errorThrown: any) => any;
|
||||
always?: (event: JQueryEventObject, param: any, XMLHttpRequest: XMLHttpRequest, textStatus: string) => any;
|
||||
};
|
||||
update?: {
|
||||
before?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
after?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
cache?: {
|
||||
before?: (event: JQueryEventObject, param: any, cache: any) => any;
|
||||
after?: (event: JQueryEventObject, param: any, cache: any) => any;
|
||||
};
|
||||
redirect?: {
|
||||
before?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
after?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
};
|
||||
url?: {
|
||||
before?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
after?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
};
|
||||
title?: {
|
||||
before?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
after?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
};
|
||||
head?: {
|
||||
before?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
after?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
};
|
||||
content?: {
|
||||
before?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
after?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
};
|
||||
scroll?: {
|
||||
before?: (event: JQueryEventObject, param: any) => any;
|
||||
after?: (event: JQueryEventObject, param: any) => any;
|
||||
};
|
||||
css?: {
|
||||
before?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
after?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
};
|
||||
script?: {
|
||||
before?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
after?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
};
|
||||
render?: {
|
||||
before?: (event: JQueryEventObject, param: any) => any;
|
||||
after?: (event: JQueryEventObject, param: any) => any;
|
||||
};
|
||||
verify?: {
|
||||
before?: (event: JQueryEventObject, param: any) => any;
|
||||
after?: (event: JQueryEventObject, param: any) => any;
|
||||
};
|
||||
success?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
error?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
complete?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
};
|
||||
param?: any;
|
||||
|
||||
// internal
|
||||
uuid?: string;
|
||||
nss?: {
|
||||
name?: string;
|
||||
event?: string[];
|
||||
click?: string;
|
||||
submit?: string;
|
||||
popstate?: string;
|
||||
scroll?: string;
|
||||
data?: string;
|
||||
class4html?: string;
|
||||
requestHeader?: string;
|
||||
};
|
||||
origLocation?: HTMLAnchorElement;
|
||||
destLocation?: HTMLAnchorElement;
|
||||
retry?: boolean;
|
||||
speedcheck?: boolean;
|
||||
disable?: boolean;
|
||||
option?: any;
|
||||
};
|
||||
}
|
||||
|
||||
interface JQueryStatic {
|
||||
pjax: {
|
||||
(setting?: PjaxSetting): any;
|
||||
enable(): any;
|
||||
disable(): any;
|
||||
click(url: string, attr: { href?: string; }): any;
|
||||
click(url: HTMLAnchorElement, attr: { href?: string; }): any;
|
||||
click(url: JQuery, attr: { href?: string; }): any;
|
||||
click(url: any, attr: { href?: string; }): any;
|
||||
submit(url: string, attr: { action?: string; method?: string; }, data: any): any;
|
||||
submit(url: HTMLFormElement, attr?: { action?: string; method?: string; }, data?: any): any;
|
||||
submit(url: JQuery, attr?: { action?: string; method?: string; }, data?: any): any;
|
||||
submit(url: any, attr?: { action?: string; method?: string; }, data?: any): any;
|
||||
follow(event: JQueryEventObject, ajax: JQueryXHR, timeStamp?: number): boolean;
|
||||
setCache(): any;
|
||||
setCache(url: string): any;
|
||||
setCache(url: string, data: string): any;
|
||||
setCache(url: string, data: string, textStatus: string, XMLHttpRequest: XMLHttpRequest): any;
|
||||
getCache(): any;
|
||||
getCache(url: string): any;
|
||||
removeCache(url: string): any;
|
||||
removeCache(): any;
|
||||
clearCache(): any;
|
||||
};
|
||||
}
|
||||
|
||||
interface JQuery {
|
||||
pjax(setting?: PjaxSetting): any;
|
||||
// Type definitions for jquery.pjax.ts by falsandtru
|
||||
// Project: https://github.com/falsandtru/jquery.pjax.js/
|
||||
// Definitions by: 新ゝ月 NewNotMoon <http://new.not-moon.net/>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
/// <reference path="../jquery/jquery.d.ts" />
|
||||
|
||||
interface PjaxSetting {
|
||||
gns?: string;
|
||||
ns?: string;
|
||||
area?: any; // string, array, function( event, param, origUrl, destUrl )
|
||||
link?: string;
|
||||
filter?: any; // string, function()
|
||||
form?: string;
|
||||
scope?: Object;
|
||||
state?: any; // any, function(event, param, origUrl, destUrl )
|
||||
scrollTop?: any; // number, function( event, param, origUrl, destUrl ), null, false
|
||||
scrollLeft?: any; // number, function( event, param, origUrl, destUrl ), null, false
|
||||
scroll?: {
|
||||
delay?: number;
|
||||
record?: boolean //internal
|
||||
queue?: number[] //internal
|
||||
};
|
||||
ajax?: JQueryAjaxSettings;
|
||||
contentType?: string;
|
||||
load?: {
|
||||
head?: string;
|
||||
css?: boolean;
|
||||
script?: boolean;
|
||||
execute?: boolean;
|
||||
reload?: string;
|
||||
ignore?: string;
|
||||
sync?: boolean;
|
||||
ajax?: JQueryAjaxSettings;
|
||||
rewrite?: (element: any) => any;
|
||||
redirect?: boolean;
|
||||
};
|
||||
interval?: number;
|
||||
cache?: {
|
||||
click?: boolean;
|
||||
submit?: boolean;
|
||||
popstate?: boolean;
|
||||
get?: boolean;
|
||||
post?: boolean;
|
||||
page?: boolean;
|
||||
size?: number;
|
||||
mix?: number;
|
||||
expires?: {
|
||||
min?: number;
|
||||
max?: number;
|
||||
};
|
||||
};
|
||||
wait?: any; // number, function( event, param, origUrl, destUrl ): number
|
||||
fallback?: any; // boolean, function( event, param, origUrl, destUrl ): boolean
|
||||
fix?: {
|
||||
location?: boolean;
|
||||
history?: boolean;
|
||||
scroll?: boolean;
|
||||
reset?: boolean;
|
||||
};
|
||||
database?: boolean;
|
||||
server?: {
|
||||
query?: any; // string, object
|
||||
header?: {
|
||||
area?: boolean;
|
||||
head?: boolean;
|
||||
css?: boolean;
|
||||
script?: boolean;
|
||||
};
|
||||
};
|
||||
callback?: (event: JQueryEventObject, param: any) => any;
|
||||
callbacks?: {
|
||||
before?: (event: JQueryEventObject, param: any) => any;
|
||||
after?: (event: JQueryEventObject, param: any) => any;
|
||||
ajax?: {
|
||||
xhr?: (event: JQueryEventObject, param: any) => any;
|
||||
beforeSend?: (event: JQueryEventObject, param: any, data: any, ajaxSettings: any) => any;
|
||||
dataFilter?: (event: JQueryEventObject, param: any, data: any, dataType: any) => any;
|
||||
success?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
error?: (event: JQueryEventObject, param: any, XMLHttpRequest: XMLHttpRequest, textStatus: string, errorThrown: any) => any;
|
||||
complete?: (event: JQueryEventObject, param: any, XMLHttpRequest: XMLHttpRequest, textStatus: string) => any;
|
||||
done?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
fail?: (event: JQueryEventObject, param: any, XMLHttpRequest: XMLHttpRequest, textStatus: string, errorThrown: any) => any;
|
||||
always?: (event: JQueryEventObject, param: any, XMLHttpRequest: XMLHttpRequest, textStatus: string) => any;
|
||||
};
|
||||
update?: {
|
||||
before?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
after?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
cache?: {
|
||||
before?: (event: JQueryEventObject, param: any, cache: any) => any;
|
||||
after?: (event: JQueryEventObject, param: any, cache: any) => any;
|
||||
};
|
||||
redirect?: {
|
||||
before?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
after?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
};
|
||||
url?: {
|
||||
before?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
after?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
};
|
||||
title?: {
|
||||
before?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
after?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
};
|
||||
head?: {
|
||||
before?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
after?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
};
|
||||
content?: {
|
||||
before?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
after?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
};
|
||||
scroll?: {
|
||||
before?: (event: JQueryEventObject, param: any) => any;
|
||||
after?: (event: JQueryEventObject, param: any) => any;
|
||||
};
|
||||
css?: {
|
||||
before?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
after?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
};
|
||||
script?: {
|
||||
before?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
after?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
};
|
||||
render?: {
|
||||
before?: (event: JQueryEventObject, param: any) => any;
|
||||
after?: (event: JQueryEventObject, param: any) => any;
|
||||
};
|
||||
verify?: {
|
||||
before?: (event: JQueryEventObject, param: any) => any;
|
||||
after?: (event: JQueryEventObject, param: any) => any;
|
||||
};
|
||||
success?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
error?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
complete?: (event: JQueryEventObject, param: any, data: any, textStatus: string, XMLHttpRequest: XMLHttpRequest) => any;
|
||||
};
|
||||
param?: any;
|
||||
|
||||
// internal
|
||||
uuid?: string;
|
||||
nss?: {
|
||||
name?: string;
|
||||
event?: string[];
|
||||
click?: string;
|
||||
submit?: string;
|
||||
popstate?: string;
|
||||
scroll?: string;
|
||||
data?: string;
|
||||
class4html?: string;
|
||||
requestHeader?: string;
|
||||
};
|
||||
origLocation?: HTMLAnchorElement;
|
||||
destLocation?: HTMLAnchorElement;
|
||||
retry?: boolean;
|
||||
speedcheck?: boolean;
|
||||
disable?: boolean;
|
||||
option?: any;
|
||||
};
|
||||
}
|
||||
|
||||
interface JQueryStatic {
|
||||
pjax: {
|
||||
(setting?: PjaxSetting): any;
|
||||
enable(): any;
|
||||
disable(): any;
|
||||
click(url: string, attr: { href?: string; }): any;
|
||||
click(url: HTMLAnchorElement, attr: { href?: string; }): any;
|
||||
click(url: JQuery, attr: { href?: string; }): any;
|
||||
click(url: any, attr: { href?: string; }): any;
|
||||
submit(url: string, attr: { action?: string; method?: string; }, data: any): any;
|
||||
submit(url: HTMLFormElement, attr?: { action?: string; method?: string; }, data?: any): any;
|
||||
submit(url: JQuery, attr?: { action?: string; method?: string; }, data?: any): any;
|
||||
submit(url: any, attr?: { action?: string; method?: string; }, data?: any): any;
|
||||
follow(event: JQueryEventObject, ajax: JQueryXHR, timeStamp?: number): boolean;
|
||||
setCache(): any;
|
||||
setCache(url: string): any;
|
||||
setCache(url: string, data: string): any;
|
||||
setCache(url: string, data: string, textStatus: string, XMLHttpRequest: XMLHttpRequest): any;
|
||||
getCache(): any;
|
||||
getCache(url: string): any;
|
||||
removeCache(url: string): any;
|
||||
removeCache(): any;
|
||||
clearCache(): any;
|
||||
};
|
||||
}
|
||||
|
||||
interface JQuery {
|
||||
pjax(setting?: PjaxSetting): any;
|
||||
}
|
||||
@@ -1,9 +1,9 @@
|
||||
/// <reference path="js-url.d.ts" />
|
||||
|
||||
url();
|
||||
|
||||
url('domain');
|
||||
url(1);
|
||||
|
||||
url('domain', 'test.www.example.com/path/here');
|
||||
url(-1, 'test.www.example.com/path/here');
|
||||
/// <reference path="js-url.d.ts" />
|
||||
|
||||
url();
|
||||
|
||||
url('domain');
|
||||
url(1);
|
||||
|
||||
url('domain', 'test.www.example.com/path/here');
|
||||
url(-1, 'test.www.example.com/path/here');
|
||||
|
||||
@@ -1,47 +1,47 @@
|
||||
import Q = require('q');
|
||||
import promisePool = require('promise-pool');
|
||||
|
||||
var pool = new promisePool.Pool<number>((taskDataId, index) => {
|
||||
return Q.delay(Math.floor(Math.random() * 5000)).then(function () {
|
||||
taskDataId == 0;
|
||||
index == 0;
|
||||
});
|
||||
}, 20);
|
||||
|
||||
pool
|
||||
.pause()
|
||||
.delay(5000)
|
||||
.then(function () {
|
||||
pool.resume();
|
||||
});
|
||||
|
||||
pool.retries == 0;
|
||||
pool.retryInterval == 0;
|
||||
pool.maxRetryInterval == 0;
|
||||
pool.retryIntervalMultiplier == 0;
|
||||
|
||||
pool.add(0);
|
||||
|
||||
pool
|
||||
.start(onProgress)
|
||||
.then(result => {
|
||||
result.total == 0;
|
||||
return pool.reset();
|
||||
})
|
||||
.then(() => {
|
||||
return pool.start(onProgress);
|
||||
})
|
||||
.then(result => {
|
||||
result.total == 0;
|
||||
return pool.reset();
|
||||
})
|
||||
.then(() => {
|
||||
pool.endless == true;
|
||||
});
|
||||
|
||||
function onProgress(progress: promisePool.IProgress) {
|
||||
progress.success == true;
|
||||
progress.fulfilled == 0;
|
||||
progress.total == 0;
|
||||
progress.index == 0;
|
||||
import Q = require('q');
|
||||
import promisePool = require('promise-pool');
|
||||
|
||||
var pool = new promisePool.Pool<number>((taskDataId, index) => {
|
||||
return Q.delay(Math.floor(Math.random() * 5000)).then(function () {
|
||||
taskDataId == 0;
|
||||
index == 0;
|
||||
});
|
||||
}, 20);
|
||||
|
||||
pool
|
||||
.pause()
|
||||
.delay(5000)
|
||||
.then(function () {
|
||||
pool.resume();
|
||||
});
|
||||
|
||||
pool.retries == 0;
|
||||
pool.retryInterval == 0;
|
||||
pool.maxRetryInterval == 0;
|
||||
pool.retryIntervalMultiplier == 0;
|
||||
|
||||
pool.add(0);
|
||||
|
||||
pool
|
||||
.start(onProgress)
|
||||
.then(result => {
|
||||
result.total == 0;
|
||||
return pool.reset();
|
||||
})
|
||||
.then(() => {
|
||||
return pool.start(onProgress);
|
||||
})
|
||||
.then(result => {
|
||||
result.total == 0;
|
||||
return pool.reset();
|
||||
})
|
||||
.then(() => {
|
||||
pool.endless == true;
|
||||
});
|
||||
|
||||
function onProgress(progress: promisePool.IProgress) {
|
||||
progress.success == true;
|
||||
progress.fulfilled == 0;
|
||||
progress.total == 0;
|
||||
progress.index == 0;
|
||||
}
|
||||
246
promise-pool/promise-pool.d.ts
vendored
246
promise-pool/promise-pool.d.ts
vendored
@@ -1,124 +1,124 @@
|
||||
// Type definitions for promise-pool
|
||||
// Project: https://github.com/vilic/promise-pool
|
||||
// Definitions by: VILIC VANE <https://github.com/vilic>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
/// <reference path="../q-retry/q-retry.d.ts" />
|
||||
|
||||
declare module "promise-pool" {
|
||||
/**
|
||||
* interface for the final result.
|
||||
*/
|
||||
export interface IResult {
|
||||
fulfilled: number;
|
||||
rejected: number;
|
||||
total: number;
|
||||
}
|
||||
/**
|
||||
* interface for progress data.
|
||||
*/
|
||||
export interface IProgress {
|
||||
index: number;
|
||||
success: boolean;
|
||||
error: any;
|
||||
retries: number;
|
||||
fulfilled: number;
|
||||
rejected: number;
|
||||
pending: number;
|
||||
total: number;
|
||||
}
|
||||
/**
|
||||
* tasks pool that manages concurrency.
|
||||
*/
|
||||
export class Pool<T> {
|
||||
/**
|
||||
* (get/set) the max concurrency of this task pool.
|
||||
*/
|
||||
public concurrency: number;
|
||||
private _tasksData;
|
||||
/**
|
||||
* (get/set) the processor function that handles tasks data.
|
||||
*/
|
||||
public processor: (data: T, index: number) => Q.IPromise<void>;
|
||||
private _deferred;
|
||||
private _pauseDeferred;
|
||||
/**
|
||||
* (get) the number of successful tasks.
|
||||
*/
|
||||
public fulfilled: number;
|
||||
/**
|
||||
* (get) the number of failed tasks.
|
||||
*/
|
||||
public rejected: number;
|
||||
/**
|
||||
* (get) the number of pending tasks.
|
||||
*/
|
||||
public pending: number;
|
||||
/**
|
||||
* (get) the number of completed tasks and pending tasks in total.
|
||||
*/
|
||||
public total: number;
|
||||
/**
|
||||
* (get/set) indicates whether this task pool is endless, if so, tasks can still be added even after all previous tasks have been fulfilled.
|
||||
*/
|
||||
public endless: boolean;
|
||||
/**
|
||||
* (get/set) defaults to 0, the number or retries that this task pool will take for every single task, could be Infinity.
|
||||
*/
|
||||
public retries: number;
|
||||
/**
|
||||
* (get/set) defaults to 0, interval (milliseconds) between each retries.
|
||||
*/
|
||||
public retryInterval: number;
|
||||
/**
|
||||
* (get/set) defaults to Infinity, max retry interval when retry interval multiplier applied.
|
||||
*/
|
||||
public maxRetryInterval: number;
|
||||
/**
|
||||
* (get/set) defaults to 1, the multiplier applies to interval after every retry.
|
||||
*/
|
||||
public retryIntervalMultiplier: number;
|
||||
private _index;
|
||||
private _currentConcurrency;
|
||||
public onProgress: (progress: IProgress) => void;
|
||||
/**
|
||||
* initialize a task pool.
|
||||
* @param processor a function takes the data and index as parameters and returns a promise.
|
||||
* @param concurrency the concurrency of this task pool.
|
||||
* @param endless defaults to false. indicates whether this task pool is endless, if so, tasks can still be added even after all previous tasks have been fulfilled.
|
||||
* @param tasksData an initializing array of task data.
|
||||
*/
|
||||
constructor(processor: (data: T, index: number) => Q.IPromise<void>, concurrency: number, endless?: boolean, tasksData?: T[]);
|
||||
/**
|
||||
* add a data item.
|
||||
* @param taskData task data to add.
|
||||
*/
|
||||
public add(taskData: T): void;
|
||||
/**
|
||||
* add data items.
|
||||
* @param tasskData tasks data to add.
|
||||
*/
|
||||
public add(tasksData: T[]): void;
|
||||
/**
|
||||
* start tasks, return a promise that will be fulfilled after all tasks accomplish if endless is false.
|
||||
* @param onProgress a callback that will be triggered every time when a single task is fulfilled.
|
||||
*/
|
||||
public start(onProgress?: (progress: IProgress) => void): Q.Promise<IResult>;
|
||||
private _start();
|
||||
private _process(data, index);
|
||||
private _notifyProgress(index, success, err, retries);
|
||||
private _next();
|
||||
/**
|
||||
* pause tasks and return a promise that will be fulfilled after the running tasks accomplish. this will wait for running tasks to complete instead of aborting them.
|
||||
*/
|
||||
public pause(): Q.Promise<void>;
|
||||
/**
|
||||
* resume tasks.
|
||||
*/
|
||||
public resume(): void;
|
||||
/**
|
||||
* pause tasks, then clear pending tasks data and reset counters. return a promise that will be fulfilled after resetting accomplish.
|
||||
*/
|
||||
public reset(): Q.Promise<void>;
|
||||
}
|
||||
// Type definitions for promise-pool
|
||||
// Project: https://github.com/vilic/promise-pool
|
||||
// Definitions by: VILIC VANE <https://github.com/vilic>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
/// <reference path="../q-retry/q-retry.d.ts" />
|
||||
|
||||
declare module "promise-pool" {
|
||||
/**
|
||||
* interface for the final result.
|
||||
*/
|
||||
export interface IResult {
|
||||
fulfilled: number;
|
||||
rejected: number;
|
||||
total: number;
|
||||
}
|
||||
/**
|
||||
* interface for progress data.
|
||||
*/
|
||||
export interface IProgress {
|
||||
index: number;
|
||||
success: boolean;
|
||||
error: any;
|
||||
retries: number;
|
||||
fulfilled: number;
|
||||
rejected: number;
|
||||
pending: number;
|
||||
total: number;
|
||||
}
|
||||
/**
|
||||
* tasks pool that manages concurrency.
|
||||
*/
|
||||
export class Pool<T> {
|
||||
/**
|
||||
* (get/set) the max concurrency of this task pool.
|
||||
*/
|
||||
public concurrency: number;
|
||||
private _tasksData;
|
||||
/**
|
||||
* (get/set) the processor function that handles tasks data.
|
||||
*/
|
||||
public processor: (data: T, index: number) => Q.IPromise<void>;
|
||||
private _deferred;
|
||||
private _pauseDeferred;
|
||||
/**
|
||||
* (get) the number of successful tasks.
|
||||
*/
|
||||
public fulfilled: number;
|
||||
/**
|
||||
* (get) the number of failed tasks.
|
||||
*/
|
||||
public rejected: number;
|
||||
/**
|
||||
* (get) the number of pending tasks.
|
||||
*/
|
||||
public pending: number;
|
||||
/**
|
||||
* (get) the number of completed tasks and pending tasks in total.
|
||||
*/
|
||||
public total: number;
|
||||
/**
|
||||
* (get/set) indicates whether this task pool is endless, if so, tasks can still be added even after all previous tasks have been fulfilled.
|
||||
*/
|
||||
public endless: boolean;
|
||||
/**
|
||||
* (get/set) defaults to 0, the number or retries that this task pool will take for every single task, could be Infinity.
|
||||
*/
|
||||
public retries: number;
|
||||
/**
|
||||
* (get/set) defaults to 0, interval (milliseconds) between each retries.
|
||||
*/
|
||||
public retryInterval: number;
|
||||
/**
|
||||
* (get/set) defaults to Infinity, max retry interval when retry interval multiplier applied.
|
||||
*/
|
||||
public maxRetryInterval: number;
|
||||
/**
|
||||
* (get/set) defaults to 1, the multiplier applies to interval after every retry.
|
||||
*/
|
||||
public retryIntervalMultiplier: number;
|
||||
private _index;
|
||||
private _currentConcurrency;
|
||||
public onProgress: (progress: IProgress) => void;
|
||||
/**
|
||||
* initialize a task pool.
|
||||
* @param processor a function takes the data and index as parameters and returns a promise.
|
||||
* @param concurrency the concurrency of this task pool.
|
||||
* @param endless defaults to false. indicates whether this task pool is endless, if so, tasks can still be added even after all previous tasks have been fulfilled.
|
||||
* @param tasksData an initializing array of task data.
|
||||
*/
|
||||
constructor(processor: (data: T, index: number) => Q.IPromise<void>, concurrency: number, endless?: boolean, tasksData?: T[]);
|
||||
/**
|
||||
* add a data item.
|
||||
* @param taskData task data to add.
|
||||
*/
|
||||
public add(taskData: T): void;
|
||||
/**
|
||||
* add data items.
|
||||
* @param tasskData tasks data to add.
|
||||
*/
|
||||
public add(tasksData: T[]): void;
|
||||
/**
|
||||
* start tasks, return a promise that will be fulfilled after all tasks accomplish if endless is false.
|
||||
* @param onProgress a callback that will be triggered every time when a single task is fulfilled.
|
||||
*/
|
||||
public start(onProgress?: (progress: IProgress) => void): Q.Promise<IResult>;
|
||||
private _start();
|
||||
private _process(data, index);
|
||||
private _notifyProgress(index, success, err, retries);
|
||||
private _next();
|
||||
/**
|
||||
* pause tasks and return a promise that will be fulfilled after the running tasks accomplish. this will wait for running tasks to complete instead of aborting them.
|
||||
*/
|
||||
public pause(): Q.Promise<void>;
|
||||
/**
|
||||
* resume tasks.
|
||||
*/
|
||||
public resume(): void;
|
||||
/**
|
||||
* pause tasks, then clear pending tasks data and reset counters. return a promise that will be fulfilled after resetting accomplish.
|
||||
*/
|
||||
public reset(): Q.Promise<void>;
|
||||
}
|
||||
}
|
||||
@@ -1,39 +1,39 @@
|
||||
import Q = require('q-retry');
|
||||
|
||||
Q
|
||||
.retry(() => {
|
||||
return '';
|
||||
})
|
||||
.then(str => {
|
||||
str.charAt;
|
||||
return 0;
|
||||
})
|
||||
.retry(num => {
|
||||
num.toFixed;
|
||||
})
|
||||
.retry(() => {
|
||||
|
||||
}, 5)
|
||||
.retry(() => {
|
||||
|
||||
}, (reason, retries) => {
|
||||
retries.toFixed;
|
||||
})
|
||||
.retry(() => {
|
||||
|
||||
}, (reason, retries) => {
|
||||
retries.toFixed;
|
||||
}, 10)
|
||||
.retry(() => {
|
||||
return '';
|
||||
}, (reason, retries) => {
|
||||
|
||||
}, {
|
||||
limit: 10,
|
||||
interval: 1000,
|
||||
maxInterval: 20000,
|
||||
intervalMultiplier: 1.5
|
||||
})
|
||||
.then(str => {
|
||||
str.charAt;
|
||||
import Q = require('q-retry');
|
||||
|
||||
Q
|
||||
.retry(() => {
|
||||
return '';
|
||||
})
|
||||
.then(str => {
|
||||
str.charAt;
|
||||
return 0;
|
||||
})
|
||||
.retry(num => {
|
||||
num.toFixed;
|
||||
})
|
||||
.retry(() => {
|
||||
|
||||
}, 5)
|
||||
.retry(() => {
|
||||
|
||||
}, (reason, retries) => {
|
||||
retries.toFixed;
|
||||
})
|
||||
.retry(() => {
|
||||
|
||||
}, (reason, retries) => {
|
||||
retries.toFixed;
|
||||
}, 10)
|
||||
.retry(() => {
|
||||
return '';
|
||||
}, (reason, retries) => {
|
||||
|
||||
}, {
|
||||
limit: 10,
|
||||
interval: 1000,
|
||||
maxInterval: 20000,
|
||||
intervalMultiplier: 1.5
|
||||
})
|
||||
.then(str => {
|
||||
str.charAt;
|
||||
});
|
||||
76
q-retry/q-retry.d.ts
vendored
76
q-retry/q-retry.d.ts
vendored
@@ -1,39 +1,39 @@
|
||||
// Type definitions for q-retry
|
||||
// Project: https://github.com/vilic/q-retry
|
||||
// Definitions by: VILIC VANE <https://github.com/vilic>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
/// <reference path="../q/Q.d.ts" />
|
||||
|
||||
declare module Q {
|
||||
export interface IRetryOptions {
|
||||
limit?: number;
|
||||
interval?: number;
|
||||
maxInterval?: number;
|
||||
intervalMultiplier?: number;
|
||||
}
|
||||
|
||||
export function retry<U>(process: () => IPromise<U>, onFail: (reason: any, retries: number) => void, limit: number): Promise<U>;
|
||||
export function retry<U>(process: () => IPromise<U>, onFail: (reason: any, retries: number) => void, options?: IRetryOptions): Promise<U>;
|
||||
export function retry<U>(process: () => IPromise<U>, limit: number): Promise<U>;
|
||||
export function retry<U>(process: () => IPromise<U>, options?: IRetryOptions): Promise<U>;
|
||||
export function retry<U>(process: () => U, onFail: (reason: any, retries: number) => void, limit: number): Promise<U>;
|
||||
export function retry<U>(process: () => U, onFail: (reason: any, retries: number) => void, options?: IRetryOptions): Promise<U>;
|
||||
export function retry<U>(process: () => U, limit: number): Promise<U>;
|
||||
export function retry<U>(process: () => U, options?: IRetryOptions): Promise<U>;
|
||||
|
||||
interface Promise<T> {
|
||||
retry<U>(process: (value: T) => IPromise<U>, onFail: (reason: any, retries: number) => void, limit: number): Promise<U>;
|
||||
retry<U>(process: (value: T) => IPromise<U>, onFail: (reason: any, retries: number) => void, options?: IRetryOptions): Promise<U>;
|
||||
retry<U>(process: (value: T) => IPromise<U>, limit: number): Promise<U>;
|
||||
retry<U>(process: (value: T) => IPromise<U>, options?: IRetryOptions): Promise<U>;
|
||||
retry<U>(process: (value: T) => U, onFail: (reason: any, retries: number) => void, limit: number): Promise<U>;
|
||||
retry<U>(process: (value: T) => U, onFail: (reason: any, retries: number) => void, options?: IRetryOptions): Promise<U>;
|
||||
retry<U>(process: (value: T) => U, limit: number): Promise<U>;
|
||||
retry<U>(process: (value: T) => U, options?: IRetryOptions): Promise<U>;
|
||||
}
|
||||
}
|
||||
|
||||
declare module "q-retry" {
|
||||
export = Q;
|
||||
// Type definitions for q-retry
|
||||
// Project: https://github.com/vilic/q-retry
|
||||
// Definitions by: VILIC VANE <https://github.com/vilic>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
/// <reference path="../q/Q.d.ts" />
|
||||
|
||||
declare module Q {
|
||||
export interface IRetryOptions {
|
||||
limit?: number;
|
||||
interval?: number;
|
||||
maxInterval?: number;
|
||||
intervalMultiplier?: number;
|
||||
}
|
||||
|
||||
export function retry<U>(process: () => IPromise<U>, onFail: (reason: any, retries: number) => void, limit: number): Promise<U>;
|
||||
export function retry<U>(process: () => IPromise<U>, onFail: (reason: any, retries: number) => void, options?: IRetryOptions): Promise<U>;
|
||||
export function retry<U>(process: () => IPromise<U>, limit: number): Promise<U>;
|
||||
export function retry<U>(process: () => IPromise<U>, options?: IRetryOptions): Promise<U>;
|
||||
export function retry<U>(process: () => U, onFail: (reason: any, retries: number) => void, limit: number): Promise<U>;
|
||||
export function retry<U>(process: () => U, onFail: (reason: any, retries: number) => void, options?: IRetryOptions): Promise<U>;
|
||||
export function retry<U>(process: () => U, limit: number): Promise<U>;
|
||||
export function retry<U>(process: () => U, options?: IRetryOptions): Promise<U>;
|
||||
|
||||
interface Promise<T> {
|
||||
retry<U>(process: (value: T) => IPromise<U>, onFail: (reason: any, retries: number) => void, limit: number): Promise<U>;
|
||||
retry<U>(process: (value: T) => IPromise<U>, onFail: (reason: any, retries: number) => void, options?: IRetryOptions): Promise<U>;
|
||||
retry<U>(process: (value: T) => IPromise<U>, limit: number): Promise<U>;
|
||||
retry<U>(process: (value: T) => IPromise<U>, options?: IRetryOptions): Promise<U>;
|
||||
retry<U>(process: (value: T) => U, onFail: (reason: any, retries: number) => void, limit: number): Promise<U>;
|
||||
retry<U>(process: (value: T) => U, onFail: (reason: any, retries: number) => void, options?: IRetryOptions): Promise<U>;
|
||||
retry<U>(process: (value: T) => U, limit: number): Promise<U>;
|
||||
retry<U>(process: (value: T) => U, options?: IRetryOptions): Promise<U>;
|
||||
}
|
||||
}
|
||||
|
||||
declare module "q-retry" {
|
||||
export = Q;
|
||||
}
|
||||
1404
timezonecomplete/timezonecomplete-1.3.0.d.ts
vendored
1404
timezonecomplete/timezonecomplete-1.3.0.d.ts
vendored
File diff suppressed because it is too large
Load Diff
2008
timezonecomplete/timezonecomplete-1.4.6.d.ts
vendored
2008
timezonecomplete/timezonecomplete-1.4.6.d.ts
vendored
File diff suppressed because it is too large
Load Diff
@@ -1,21 +1,21 @@
|
||||
/// <reference path="tspromise.d.ts" />
|
||||
|
||||
import Promise = require('tspromise');
|
||||
|
||||
var MyFuncFunc = Promise.async((a: boolean, b: number) => {
|
||||
console.log('[a] ' + a);
|
||||
yield(Promise.waitAsync(1000));
|
||||
console.log('[b]' + b);
|
||||
});
|
||||
|
||||
MyFuncFunc(true, 10);
|
||||
|
||||
Promise.all([Promise.waitAsync(10), Promise.waitAsync(20)]).then(() => {
|
||||
return new Promise<String>((resolve, reject) => {
|
||||
resolve('test');
|
||||
});
|
||||
}).then(() => {
|
||||
throw (new Error());
|
||||
}).catch((e) => {
|
||||
console.log(e.message);
|
||||
/// <reference path="tspromise.d.ts" />
|
||||
|
||||
import Promise = require('tspromise');
|
||||
|
||||
var MyFuncFunc = Promise.async((a: boolean, b: number) => {
|
||||
console.log('[a] ' + a);
|
||||
yield(Promise.waitAsync(1000));
|
||||
console.log('[b]' + b);
|
||||
});
|
||||
|
||||
MyFuncFunc(true, 10);
|
||||
|
||||
Promise.all([Promise.waitAsync(10), Promise.waitAsync(20)]).then(() => {
|
||||
return new Promise<String>((resolve, reject) => {
|
||||
resolve('test');
|
||||
});
|
||||
}).then(() => {
|
||||
throw (new Error());
|
||||
}).catch((e) => {
|
||||
console.log(e.message);
|
||||
});
|
||||
@@ -6,84 +6,50 @@
|
||||
//
|
||||
declare var Hogan: string;
|
||||
|
||||
// Countries
|
||||
// Prefetches data, stores it in localStorage, and searches it on the client
|
||||
$('.example-countries .typeahead').typeahead({
|
||||
name: 'countries',
|
||||
prefetch: '../data/countries.json',
|
||||
limit: 10
|
||||
var substringMatcher = function (strs: any) {
|
||||
return function findMatches(q: any, cb: any) {
|
||||
var matches: any, substrRegex: any;
|
||||
|
||||
// an array that will be populated with substring matches
|
||||
matches = [];
|
||||
|
||||
// regex used to determine if a string contains the substring `q`
|
||||
substrRegex = new RegExp(q, 'i');
|
||||
|
||||
// iterate through the pool of strings and for any string that
|
||||
// contains the substring `q`, add it to the `matches` array
|
||||
$.each(strs, function (i, str) {
|
||||
if (substrRegex.test(str)) {
|
||||
// the typeahead jQuery plugin expects suggestions to a
|
||||
// JavaScript object, refer to typeahead docs for more info
|
||||
matches.push({ value: str });
|
||||
}
|
||||
});
|
||||
|
||||
// Open Source Projects by Twitter
|
||||
// Defines a custom template and template engine for rendering suggestions
|
||||
$('.example-twitter-oss .typeahead').typeahead({
|
||||
name: 'twitter-oss',
|
||||
prefetch: '../data/repos.json',
|
||||
template: [
|
||||
'<p class="repo-language">{{language}}</p>',
|
||||
'<p class="repo-name">{{name}}</p>',
|
||||
'<p class="repo-description">{{description}}</p>'
|
||||
].join(''),
|
||||
engine: Hogan
|
||||
});
|
||||
cb(matches);
|
||||
};
|
||||
};
|
||||
|
||||
// Arabic Phrases
|
||||
// Hardcoded list showing Right - To - Left(RTL) support
|
||||
$('.example-arabic .typeahead').typeahead({
|
||||
name: 'arabic',
|
||||
local: [
|
||||
"الإنجليزية",
|
||||
"نعم",
|
||||
"لا",
|
||||
"مرحبا",
|
||||
"کيف الحال؟",
|
||||
"أهلا",
|
||||
"مع السلامة",
|
||||
"لا أتكلم العربية",
|
||||
"لا أفهم",
|
||||
"أنا جائع"
|
||||
]
|
||||
});
|
||||
var states = ['Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California',
|
||||
'Colorado', 'Connecticut', 'Delaware', 'Florida', 'Georgia', 'Hawaii',
|
||||
'Idaho', 'Illinois', 'Indiana', 'Iowa', 'Kansas', 'Kentucky', 'Louisiana',
|
||||
'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota',
|
||||
'Mississippi', 'Missouri', 'Montana', 'Nebraska', 'Nevada', 'New Hampshire',
|
||||
'New Jersey', 'New Mexico', 'New York', 'North Carolina', 'North Dakota',
|
||||
'Ohio', 'Oklahoma', 'Oregon', 'Pennsylvania', 'Rhode Island',
|
||||
'South Carolina', 'South Dakota', 'Tennessee', 'Texas', 'Utah', 'Vermont',
|
||||
'Virginia', 'Washington', 'West Virginia', 'Wisconsin', 'Wyoming'
|
||||
];
|
||||
|
||||
// NBA and NHL Teams
|
||||
// Two datasets that are prefetched, stored, and searched on the client
|
||||
$('.example-sports .typeahead').typeahead([
|
||||
{
|
||||
name: 'nba-teams',
|
||||
prefetch: '../data/nba.json',
|
||||
header: '<h3 class="league-name">NBA Teams</h3>'
|
||||
},
|
||||
{
|
||||
name: 'nhl-teams',
|
||||
prefetch: '../data/nhl.json',
|
||||
header: '<h3 class="league-name">NHL Teams</h3>'
|
||||
}
|
||||
]);
|
||||
|
||||
// Best Picture Winners
|
||||
// Prefetches some data then relies on remote requests for suggestions when prefetched data is insufficient
|
||||
$('.example-films .typeahead').typeahead([
|
||||
{
|
||||
name: 'best-picture-winners',
|
||||
remote: '../data/films/queries/%QUERY.json',
|
||||
prefetch: '../data/films/post_1960.json',
|
||||
template: '<p><strong>{{value}}</strong> – {{year}}</p>',
|
||||
engine: Hogan
|
||||
}
|
||||
]);
|
||||
|
||||
// Countries - Modified the first test here to add options
|
||||
// Specifies options to display hint with a highlight and adds a minimum length restriction for search
|
||||
// Prefetches data, stores it in localStorage, and searches it on the client
|
||||
$('.example-countries .typeahead').typeahead({
|
||||
$('#the-basics .typeahead').typeahead({
|
||||
hint: true,
|
||||
highlight: true,
|
||||
minLength: 2
|
||||
minLength: 1
|
||||
},
|
||||
{
|
||||
name: 'countries',
|
||||
prefetch: '../data/countries.json',
|
||||
limit: 10
|
||||
name: 'states',
|
||||
displayKey: 'value',
|
||||
source: substringMatcher(states)
|
||||
});
|
||||
|
||||
module valueTest {
|
||||
|
||||
287
typeahead/typeahead.d.ts
vendored
287
typeahead/typeahead.d.ts
vendored
@@ -1,53 +1,71 @@
|
||||
// Type definitions for typeahead.js 0.9.3
|
||||
// Type definitions for typeahead.js 0.10.4
|
||||
// Project: http://twitter.github.io/typeahead.js/
|
||||
// Definitions by: Ivaylo Gochkov <https://github.com/igochkov/>
|
||||
// Definitions by: Ivaylo Gochkov <https://github.com/igochkov/>, Gidon Junge <https://github.com/gjunge/>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
/// <reference path="../jquery/jquery.d.ts"/>
|
||||
|
||||
interface JQuery {
|
||||
/**
|
||||
* Turns an input[type="text"] element into a typeahead.
|
||||
*
|
||||
* @constructor
|
||||
* @param dataset Single dataset
|
||||
*/
|
||||
typeahead(dataset: Twitter.Typeahead.Dataset): JQuery;
|
||||
|
||||
/**
|
||||
* Turns an input[type="text"] element into a typeahead.
|
||||
*
|
||||
* @constructor
|
||||
* @param dataset Array of datasets
|
||||
*/
|
||||
typeahead(datasets: Twitter.Typeahead.Dataset[]): JQuery;
|
||||
|
||||
/**
|
||||
* Destroys previously initialized typeaheads. This entails reverting
|
||||
* DOM modifications and removing event handlers.
|
||||
*
|
||||
* @constructor
|
||||
*
|
||||
* @constructor
|
||||
* @param methodName Method 'destroy'
|
||||
*/
|
||||
*/
|
||||
typeahead(methodName: 'destroy'): JQuery;
|
||||
|
||||
/**
|
||||
* Sets the current query of the typeahead. This is always preferable to
|
||||
* using $("input.typeahead").val(query), which will result in unexpected
|
||||
* behavior. To clear the query, simply set it to an empty string.
|
||||
* Opens the dropdown menu of typeahead. Note that being open does not mean that the menu is visible.
|
||||
* The menu is only visible when it is open and has content.
|
||||
*
|
||||
* @constructor
|
||||
* @param methodName Method 'setQuery'
|
||||
* @param query The query to be set
|
||||
* @param methodName Method 'open'
|
||||
*/
|
||||
typeahead(methodName: 'setQuery', query: string): JQuery;
|
||||
typeahead(methodName: 'open'): JQuery;
|
||||
|
||||
/**
|
||||
* Accommodates the destroy and setQuery overloads.
|
||||
* Closes the dropdown menu of typeahead.
|
||||
*
|
||||
* @constructor
|
||||
* @param methodName Method 'close'
|
||||
*/
|
||||
typeahead(methodName: 'close'): JQuery;
|
||||
|
||||
/**
|
||||
* Returns the current value of the typeahead.
|
||||
* The value is the text the user has entered into the input element.
|
||||
*
|
||||
* @constructor
|
||||
* @param methodName Method name ('destroy' or 'setQuery')
|
||||
* @param query The query to be set in case method 'setQuery' is used.
|
||||
* @param methodName Method 'val'
|
||||
*/
|
||||
typeahead(methodName: 'val'): string;
|
||||
|
||||
/**
|
||||
* Sets the value of the typeahead. This should be used in place of jQuery#val.
|
||||
*
|
||||
* @constructor
|
||||
* @param methodName Method 'val'
|
||||
* @param query The value to be set
|
||||
*/
|
||||
typeahead(methodName: 'val', val: string): JQuery;
|
||||
|
||||
/**
|
||||
* Accommodates the val overload.
|
||||
*
|
||||
* @constructor
|
||||
* @param methodName Method name ('val')
|
||||
*/
|
||||
typeahead(methodName: string): string;
|
||||
|
||||
|
||||
/**
|
||||
* Accommodates multiple overloads.
|
||||
*
|
||||
* @constructor
|
||||
* @param methodName Method name
|
||||
* @param query The query to be set in case method 'val' is used.
|
||||
*/
|
||||
typeahead(methodName: string, query: string): JQuery;
|
||||
|
||||
@@ -57,20 +75,19 @@ interface JQuery {
|
||||
*
|
||||
* @constructor
|
||||
* @param options ('hint' or 'highlight' or 'minLength' all of which are optional)
|
||||
* @param dataset Array of datasets
|
||||
* @param datasets Array of datasets
|
||||
*/
|
||||
typeahead(options: Twitter.Typeahead.Options, dataset: Twitter.Typeahead.Dataset): JQuery;
|
||||
typeahead(options: Twitter.Typeahead.Options, datasets: Twitter.Typeahead.Dataset[]): JQuery;
|
||||
|
||||
/**
|
||||
* Returns the current value of the typeahead. The value is the text the user has entered into the input element.
|
||||
* Accomodates specifying options such as hint and highlight.
|
||||
* This is in correspondence to the examples mentioned in http://twitter.github.io/typeahead.js/examples/
|
||||
*
|
||||
* @constructor
|
||||
* @param options ('hint' or 'highlight' or 'minLength' all of which are optional)
|
||||
* @param datasets One or more datasets passed in as arguments.
|
||||
*/
|
||||
typeahead(methodName: 'val'): string;
|
||||
typeahead(methodName: string): string;
|
||||
|
||||
/**
|
||||
* Sets the value of the typeahead. This should be used in place of jQuery#val.
|
||||
*/
|
||||
typeahead(methodName: 'val', value: string): JQuery;
|
||||
typeahead(options: Twitter.Typeahead.Options, ... datasets: Twitter.Typeahead.Dataset[]): JQuery;
|
||||
}
|
||||
|
||||
declare module Twitter.Typeahead {
|
||||
@@ -82,188 +99,70 @@ declare module Twitter.Typeahead {
|
||||
*/
|
||||
interface Dataset {
|
||||
/**
|
||||
* The string used to identify the dataset. Used by typeahead.js
|
||||
* to cache intelligently.
|
||||
* The backing data source for suggestions.
|
||||
* Expected to be a function with the signature (query, cb).
|
||||
* It is expected that the function will compute the suggestion set (i.e. an array of JavaScript objects) for query and then invoke cb with said set.
|
||||
* cb can be invoked synchronously or asynchronously.
|
||||
*
|
||||
*/
|
||||
name: string;
|
||||
/**
|
||||
* The key used to access the value of the datum in the datum object.
|
||||
* Defaults to value.
|
||||
*/
|
||||
valueKey?: string;
|
||||
/**
|
||||
* The max number of suggestions from the dataset to display
|
||||
* for a given query. Defaults to 5.
|
||||
*/
|
||||
limit?: number;
|
||||
/**
|
||||
* The template used to render suggestions. Can be a string or
|
||||
* a precompiled template. If not provided, suggestions will render
|
||||
* as their value contained in a <p> element (i.e. <p>value</p>).
|
||||
*/
|
||||
template?: any;
|
||||
/**
|
||||
* The template engine used to compile/render template if it is a
|
||||
* string. Any engine can use used as long as it adheres to the
|
||||
* expected API. Required if template is a string.
|
||||
*/
|
||||
engine?: string;
|
||||
/**
|
||||
* The header rendered before suggestions in the dropdown menu.
|
||||
* Can be either a DOM element or HTML.
|
||||
*/
|
||||
header?: any;
|
||||
/**
|
||||
* The footer rendered after suggestions in the dropdown menu.
|
||||
* Can be either a DOM element or HTML.
|
||||
*/
|
||||
footer?: any;
|
||||
/**
|
||||
* An array of datums or strings.
|
||||
*/
|
||||
local?: any[];
|
||||
/**
|
||||
* Can be a URL to a JSON file containing an array of datums or,
|
||||
* if more configurability is needed, a prefetch options object.
|
||||
*/
|
||||
prefetch?: any;
|
||||
/**
|
||||
* Can be a URL to fetch suggestions from when the data provided by
|
||||
* local and prefetch is insufficient or, if more configurability is
|
||||
* needed, a remote options object.
|
||||
*/
|
||||
remote?: any;
|
||||
}
|
||||
source: (query: string, cb: (result: any) => void) => void;
|
||||
|
||||
/**
|
||||
* Prefetched data is fetched and processed on initialization.
|
||||
* If the browser supports localStorage, the processed data will be cached
|
||||
* there to prevent additional network requests on subsequent page loads.
|
||||
*/
|
||||
interface PrefetchOptions {
|
||||
/**
|
||||
* A URL to a JSON file containing an array of datums. Required.
|
||||
* The name of the dataset.
|
||||
* This will be appended to tt-dataset- to form the class name of the containing DOM element.
|
||||
* Must only consist of underscores, dashes, letters (a-z), and numbers.
|
||||
* Defaults to a random number.
|
||||
*/
|
||||
url: string;
|
||||
name?: string;
|
||||
|
||||
/**
|
||||
* The time (in milliseconds) the prefetched data should be cached
|
||||
* in localStorage. Defaults to 86400000 (1 day).
|
||||
* For a given suggestion object, determines the string representation of it.
|
||||
* This will be used when setting the value of the input control after a suggestion is selected. Can be either a key string or a function that transforms a suggestion object into a string.
|
||||
* Defaults to value.
|
||||
*/
|
||||
ttl?: number;
|
||||
displayKey?: string;
|
||||
|
||||
/**
|
||||
* A function that transforms the response body into an array of datums.
|
||||
*
|
||||
* @param parsedResponse Response body
|
||||
* A hash of templates to be used when rendering the dataset.
|
||||
* Note a precompiled template is a function that takes a JavaScript object as its first argument and returns a HTML string.
|
||||
*/
|
||||
filter?: (parsedResponse: any) => Datum[];
|
||||
templates?: Templates;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remote data is only used when the data provided by local and prefetch
|
||||
* is insufficient. In order to prevent an obscene number of requests
|
||||
* being made to remote endpoint, typeahead.js rate-limits remote requests.
|
||||
*/
|
||||
interface RemoteOptions {
|
||||
/**
|
||||
* A URL to make requests to when the data provided by local and
|
||||
* prefetch is insufficient. Required.
|
||||
*/
|
||||
url: string;
|
||||
|
||||
interface Templates {
|
||||
|
||||
/**
|
||||
* The type of data you're expecting from the server. Defaults to json.
|
||||
* @see http://api.jquery.com/jQuery.ajax/ for more info.
|
||||
* Rendered when 0 suggestions are available for the given query.
|
||||
* Can be either a HTML string or a precompiled template.
|
||||
* If it's a precompiled template, the passed in context will contain query
|
||||
*/
|
||||
dataType?: string;
|
||||
empty?: string;
|
||||
|
||||
/**
|
||||
* Determines whether or not the browser will cache responses.
|
||||
* @see http://api.jquery.com/jQuery.ajax/ for more info.
|
||||
* Rendered at the bottom of the dataset.
|
||||
* Can be either a HTML string or a precompiled template.
|
||||
* If it's a precompiled template, the passed in context will contain query and isEmpty.
|
||||
*/
|
||||
cache?: boolean;
|
||||
footer?: string;
|
||||
|
||||
/**
|
||||
* Sets a timeout for requests.
|
||||
* @see http://api.jquery.com/jQuery.ajax/ for more info.
|
||||
* Rendered at the top of the dataset.
|
||||
* Can be either a HTML string or a precompiled template.
|
||||
* If it's a precompiled template, the passed in context will contain query and isEmpty.
|
||||
*/
|
||||
timeout?: number;
|
||||
header?: string;
|
||||
|
||||
/**
|
||||
* The pattern in url that will be replaced with the user's query
|
||||
* when a request is made. Defaults to %QUERY.
|
||||
* Used to render a single suggestion.
|
||||
* If set, this has to be a precompiled template.
|
||||
* The associated suggestion object will serve as the context.
|
||||
* Defaults to the value of displayKey wrapped in a p tag i.e. <p>{{value}}</p>.
|
||||
*/
|
||||
wildcard?: string;
|
||||
suggestion?: string;
|
||||
|
||||
/**
|
||||
* Overrides the request URL. If set, no wildcard substitution will
|
||||
* be performed on url.
|
||||
*
|
||||
* @param url Replacement URL
|
||||
* @param uriEncodedQuery Encoded query
|
||||
* @returns A valid URL
|
||||
*/
|
||||
replace?: (url: string, uriEncodedQuery: string) => string;
|
||||
|
||||
/**
|
||||
* The function used for rate-limiting network requests.
|
||||
* Can be either 'debounce' or 'throttle'. Defaults to 'debounce'.
|
||||
*/
|
||||
rateLimitFn?: string;
|
||||
|
||||
/**
|
||||
* The time interval in milliseconds that will be used by rateLimitFn.
|
||||
* Defaults to 300.
|
||||
*/
|
||||
rateLimitWait?: number;
|
||||
|
||||
/**
|
||||
* The max number of parallel requests typeahead.js can have pending.
|
||||
* Defaults to 6.
|
||||
*/
|
||||
maxParallelRequests?: number;
|
||||
|
||||
/**
|
||||
* A pre-request callback. Can be used to set custom headers.
|
||||
* @see http://api.jquery.com/jQuery.ajax/ for more info.
|
||||
*/
|
||||
beforeSend?: (jqXhr: JQueryXHR, settings: JQueryAjaxSettings) => void;
|
||||
|
||||
/**
|
||||
* Transforms the response body into an array of datums.
|
||||
*
|
||||
* @param parsedResponse Response body
|
||||
*/
|
||||
filter?: (parsedResponse: any) => Datum[];
|
||||
}
|
||||
|
||||
/**
|
||||
* The individual units that compose datasets are called datums.
|
||||
* The canonical form of a datum is an object with a value property and
|
||||
* a tokens property.
|
||||
*
|
||||
* For ease of use, datums can also be represented as a string.
|
||||
* Strings found in place of datum objects are implicitly converted
|
||||
* to a datum object.
|
||||
*
|
||||
* When datums are rendered as suggestions, the datum object is the
|
||||
* context passed to the template engine. This means if you include any
|
||||
* arbitrary properties in datum objects, those properties will be
|
||||
* available to the template used to render suggestions.
|
||||
*/
|
||||
interface Datum {
|
||||
/**
|
||||
* The string that represents the underlying value of the datum
|
||||
*/
|
||||
value: string;
|
||||
|
||||
/**
|
||||
* A collection of single-word strings that aid typeahead.js in
|
||||
* matching datums with a given query.
|
||||
*/
|
||||
tokens: string[];
|
||||
}
|
||||
|
||||
/**
|
||||
* When initializing a typeahead, there are a number of options you can configure.
|
||||
|
||||
Reference in New Issue
Block a user