diff --git a/README.md b/README.md index 520f3de..6d19e84 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,8 @@ Notify.js > A simple, yet fully customizable notification library + npm install notifyjs-browser + See demos and full documentation at: ## https://notifyjs.com/ diff --git a/notify.js.d b/notify.js.d new file mode 100644 index 0000000..dcc0b39 --- /dev/null +++ b/notify.js.d @@ -0,0 +1,128 @@ +// Type definitions for notify.js +// Project: https://github.com/WS-js/Notify.js +// Definitions by: Bahman Nikkhahan https://github.com/bahman616 +// This definition needs a reference from jquery.d.ts + +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; +} + diff --git a/package.json b/package.json index 9fd3421..372f464 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,10 @@ "email": "me@evancarroll.com" } ], + "repository": { + "type": "git", + "url": "https://github.com/WS-js/notifyjs.git" + }, "homepage": "http://notifyjs.com/", "license": "MIT", "main": "dist/notify.js",