mirror of
https://github.com/zhigang1992/DefinitelyTyped.git
synced 2026-05-15 09:37:52 +08:00
131
notify.js/notify.js.d.ts
vendored
Normal file
131
notify.js/notify.js.d.ts
vendored
Normal file
@@ -0,0 +1,131 @@
|
||||
// Type definitions for notify.js
|
||||
// Project: https://github.com/notifyjs/notifyjs
|
||||
// Definitions by: Bahman Nikkhahan <https://github.com/bahman616>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
|
||||
/// <reference path="../jquery/jquery.d.ts" />
|
||||
|
||||
declare namespace NotifyJS {
|
||||
interface NotificationOptions {
|
||||
// whether to hide the notification on click
|
||||
clickToHide: boolean;
|
||||
// whether to auto-hide the notification
|
||||
autoHide: boolean;
|
||||
// if autoHide, hide after milliseconds
|
||||
autoHideDelay: number;
|
||||
// show the arrow pointing at the element
|
||||
arrowShow: boolean;
|
||||
// arrow size in pixels
|
||||
arrowSize: number;
|
||||
// position defines the notification position though uses the defaults below
|
||||
position: string;
|
||||
// default positions
|
||||
elementPosition: string;
|
||||
globalPosition: string;
|
||||
// default style
|
||||
style: string;
|
||||
// default class (string or [string])
|
||||
className: string;
|
||||
// show animation
|
||||
showAnimation: string;
|
||||
// show animation duration
|
||||
showDuration: number;
|
||||
// hide animation
|
||||
hideAnimation: string;
|
||||
// hide animation duration
|
||||
hideDuration: number;
|
||||
// padding between element and notification
|
||||
gap: number;
|
||||
}
|
||||
|
||||
interface JQueryStaticNotify {
|
||||
/**
|
||||
* notify user
|
||||
* @param element a jquery element
|
||||
* @param notificationdata global notification data
|
||||
* @param options notification options
|
||||
*/
|
||||
(element?: any, notificationdata?: any, options?: NotificationOptions): JQueryStatic;
|
||||
|
||||
/**
|
||||
* Add style
|
||||
* @param styleName style name
|
||||
* @param styleDefinition style definition object
|
||||
*/
|
||||
addStyle(styleName: string, styleDefinition: any): any;
|
||||
|
||||
/**
|
||||
* Remove style
|
||||
* @param styleName style name
|
||||
*/
|
||||
removeStyle(styleName: string): any;
|
||||
|
||||
/**
|
||||
* Get style
|
||||
* @param styleName style name
|
||||
*/
|
||||
getStyle(styleName: string): any;
|
||||
|
||||
/**
|
||||
* Insert css
|
||||
* @param cssText css text to insert
|
||||
*/
|
||||
insertCSS(cssText: string): any;
|
||||
|
||||
/**
|
||||
* Set defaults for notifications
|
||||
* @param options notification iptions
|
||||
*/
|
||||
defaults(options: NotificationOptions): any;
|
||||
}
|
||||
|
||||
interface JQueryStatic {
|
||||
notify: JQueryStaticNotify;
|
||||
}
|
||||
|
||||
interface JQueryNotify {
|
||||
/**
|
||||
* notify user
|
||||
* @param element a jquery element
|
||||
* @param notificationdata global notification data
|
||||
* @param options notification options
|
||||
*/
|
||||
(element?: any, notificationdata?: any, options?: NotificationOptions): JQuery;
|
||||
|
||||
/**
|
||||
* Add style
|
||||
* @param styleName style name
|
||||
* @param styleDefinition style definition object
|
||||
*/
|
||||
addStyle(styleName: string, styleDefinition: any): any;
|
||||
|
||||
/**
|
||||
* Remove style
|
||||
* @param styleName style name
|
||||
*/
|
||||
removeStyle(styleName: string): any;
|
||||
|
||||
/**
|
||||
* Get style
|
||||
* @param styleName style name
|
||||
*/
|
||||
getStyle(styleName: string): any;
|
||||
|
||||
/**
|
||||
* Insert css
|
||||
* @param cssText css text to insert
|
||||
*/
|
||||
insertCSS(cssText: string): any;
|
||||
|
||||
/**
|
||||
* Set defaults for notifications
|
||||
* @param options notification iptions
|
||||
*/
|
||||
defaults(options: NotificationOptions): any;
|
||||
|
||||
}
|
||||
|
||||
interface JQuery {
|
||||
notify: JQueryStaticNotify;
|
||||
}
|
||||
}
|
||||
53
notify.js/notify.js.tests.ts
Normal file
53
notify.js/notify.js.tests.ts
Normal file
@@ -0,0 +1,53 @@
|
||||
/// <reference path="../jquery/jquery.d.ts"/>
|
||||
/// <reference path="notify.js.d.ts"/>
|
||||
|
||||
// setting defaults for notification plugin
|
||||
$.notify.defaults({
|
||||
clickToHide: true,
|
||||
autoHide: false,
|
||||
autoHideDelay: 5000,
|
||||
arrowShow: true,
|
||||
arrowSize: 5,
|
||||
position: 'top center',
|
||||
elementPosition: 'bottom left',
|
||||
globalPosition: 'top center',
|
||||
style: 'bootstrap',
|
||||
className: 'error',
|
||||
showAnimation: 'slideDown',
|
||||
showDuration: 400,
|
||||
hideAnimation: 'slideUp',
|
||||
hideDuration: 200,
|
||||
gap: 2
|
||||
});
|
||||
|
||||
$(".elem-demo").notify("Hello Box");
|
||||
$.notify("Access granted", "success");
|
||||
$.notify("Do not press this button", "info");
|
||||
$.notify('hello !!', {
|
||||
style: 'happyblue'
|
||||
});
|
||||
$.notify('hello !!', {
|
||||
style: 'happyblue'
|
||||
});
|
||||
//add a new style 'foo'
|
||||
$.notify.addStyle('foo', {
|
||||
html:
|
||||
"<div>" +
|
||||
"<div class='clearfix'>" +
|
||||
"<div class='title' data-notify-html='title'/>" +
|
||||
"<div class='buttons'>" +
|
||||
"<button class='no'>Cancel</button>" +
|
||||
"<button class='yes' data-notify-text='button'></button>" +
|
||||
"</div>" +
|
||||
"</div>" +
|
||||
"</div>"
|
||||
});
|
||||
|
||||
$.notify({
|
||||
title: 'Would you like some Foo ?',
|
||||
button: 'Confirm'
|
||||
}, {
|
||||
style: 'foo',
|
||||
autoHide: false,
|
||||
clickToHide: false
|
||||
});
|
||||
Reference in New Issue
Block a user