From 597b1a213648e039b5cd0465e98ff61156be3296 Mon Sep 17 00:00:00 2001 From: nkovacic Date: Tue, 29 Dec 2015 20:35:28 +0100 Subject: [PATCH 1/2] Angular toastr added to definitions https://github.com/Foxandxss/angular-toastr --- angular-toastr/angular-toastr-tests.ts | 64 +++++++++++++ angular-toastr/angular-toastr.d.ts | 121 +++++++++++++++++++++++++ 2 files changed, 185 insertions(+) create mode 100644 angular-toastr/angular-toastr-tests.ts create mode 100644 angular-toastr/angular-toastr.d.ts diff --git a/angular-toastr/angular-toastr-tests.ts b/angular-toastr/angular-toastr-tests.ts new file mode 100644 index 0000000000..d9141be7e0 --- /dev/null +++ b/angular-toastr/angular-toastr-tests.ts @@ -0,0 +1,64 @@ +/// +/// + + +angular + .module('toastr-tests', ['toastr']) + .config(function(toastrConfig: angular.toastr.IToastrConfig) { + let toastContainerConfig: angular.toastr.IToastContainerConfig = { + autoDismiss: false, + containerId: 'toast-container', + maxOpened: 0, + newestOnTop: true, + positionClass: 'toast-top-right', + preventDuplicates: false, + preventOpenDuplicates: false, + target: 'body' + }, + toastConfig: angular.toastr.IToastConfig = { + allowHtml: false, + closeButton: false, + closeHtml: '', + extendedTimeOut: 1000, + iconClasses: { + error: 'toast-error', + info: 'toast-info', + success: 'toast-success', + warning: 'toast-warning' + }, + messageClass: 'toast-message', + onHidden: null, + onShown: null, + onTap: null, + progressBar: false, + tapToDismiss: true, + templates: { + + toast: 'directives/toast/toast.html', + progressbar: 'directives/progressbar/progressbar.html' + }, + timeOut: 5000, + titleClass: 'toast-title', + toastClass: 'toast' + }; + + angular.extend(toastrConfig, toastContainerConfig, toastConfig); + }) + .controller('ToastrController', function(toastr: angular.toastr.IToastrService) { + toastr.info(' Success!', 'With HTML', { + allowHtml: true + }); + + toastr.success('What a nice button', 'Button spree', { + closeButton: true + }); + + toastr.info('What a nice apple button', 'Button spree', { + closeButton: true, + closeHtml: '' + }); + + toastr.info('I am totally custom!', 'Happy toast', { + iconClass: 'toast-pink' + }); + });; \ No newline at end of file diff --git a/angular-toastr/angular-toastr.d.ts b/angular-toastr/angular-toastr.d.ts new file mode 100644 index 0000000000..96e8e78cce --- /dev/null +++ b/angular-toastr/angular-toastr.d.ts @@ -0,0 +1,121 @@ +// Type definitions for Angular Toastr v1.6.0 +// Project: https://github.com/Foxandxss/angular-toastr +// Definitions by: Niko Kovačič +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +/// + +declare module "angular-toastr" { + var _: string; + export = _; +} + +interface IToastBaseConfig { + allowHtml?: boolean; + closeButton?: boolean; + closeHtml?: string; + extendedTimeOut?: number; + messageClass?: string; + onHidden?: Function; + onShown?: Function; + onTap?: Function; + progressBar?: boolean; + tapToDismiss?: boolean; + templates?: { + toast?: string; + progressbar?: string; + }; + timeOut?: number; + titleClass?: string; + toastClass?: string; +} + +declare module angular.toastr { + interface IToastContainerConfig { + autoDismiss?: boolean; + containerId?: string; + maxOpened?: number; + newestOnTop?: boolean; + positionClass?: string; + preventDuplicates?: boolean; + preventOpenDuplicates?: boolean; + target?: string; + } + + interface IToastConfig extends IToastBaseConfig { + iconClasses?: { + error?: string; + info?: string; + success?: string; + warning?: string; + }; + } + + interface IToastrConfig extends IToastContainerConfig, IToastConfig { } + + interface IToastScope extends angular.IScope { + message: string; + options: IToastConfig; + title: string; + toastId: number; + toastType: string; + } + + interface IToast { + el: angular.IAugmentedJQuery; + iconClass: string; + isOpened: boolean; + open: angular.IPromise; + scope: IToastScope; + toastId: number; + } + + interface IToastOptions extends IToastBaseConfig { + iconClass?: string; + } + + interface IToastrService { + /** + * Return the number of active toasts in screen. + */ + active(): number; + /** + * Remove toast from screen. If no toast is passed in, all toasts will be closed. + * + * @param {IToast} toast Optional toast object to delete + */ + clear(toast?: IToast): void; + /** + * Create error toast notification message. + * + * @param {String} message Message to show on toast + * @param {String} title Title to show on toast + * @param {IToastOptions} options Override default toast options + */ + error(message: string, title?: string, options?: IToastOptions): IToast; + /** + * Create info toast notification message. + * + * @param {String} message Message to show on toast + * @param {String} title Title to show on toast + * @param {IToastOptions} options Override default toast options + */ + info(message: string, title?: string, options?: IToastOptions): IToast; + /** + * Create success toast notification message. + * + * @param {String} message Message to show on toast + * @param {String} title Title to show on toast + * @param {IToastOptions} options Override default toast options + */ + success(message: string, title?: string, options?: IToastOptions): IToast; + /** + * Create warning toast notification message. + * + * @param {String} message Message to show on toast + * @param {String} title Title to show on toast + * @param {IToastOptions} options Override default toast options + */ + warning(message: string, title?: string, options?: IToastOptions): IToast; + } +} \ No newline at end of file From 6813273d2d35f47150d340d037db83500693dedd Mon Sep 17 00:00:00 2001 From: nkovacic Date: Tue, 29 Dec 2015 20:39:57 +0100 Subject: [PATCH 2/2] Quick fix to remove semicolon on end of tests --- angular-toastr/angular-toastr-tests.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/angular-toastr/angular-toastr-tests.ts b/angular-toastr/angular-toastr-tests.ts index d9141be7e0..e5701746f7 100644 --- a/angular-toastr/angular-toastr-tests.ts +++ b/angular-toastr/angular-toastr-tests.ts @@ -61,4 +61,4 @@ angular toastr.info('I am totally custom!', 'Happy toast', { iconClass: 'toast-pink' }); - });; \ No newline at end of file + }); \ No newline at end of file