mirror of
https://github.com/wassname/DefinitelyTyped.git
synced 2026-09-09 11:13:57 +08:00
Add definitions for angular-toasty
This commit is contained in:
@@ -0,0 +1,121 @@
|
||||
/// <reference path="angular-toasty.d.ts" />
|
||||
|
||||
interface AngularToastyTestControllerScope extends ng.IScope {
|
||||
options:toasty.IToastyConfig;
|
||||
newToast(): void;
|
||||
clearToasties(): void;
|
||||
}
|
||||
|
||||
class AngularToastyTestController {
|
||||
|
||||
static $inject = ['$rootScope', '$scope', 'toasty'];
|
||||
|
||||
constructor($rootScope:ng.IRootScopeService, $scope:AngularToastyTestControllerScope, toasty:toasty.IToastyService) {
|
||||
|
||||
// When a new toast is added
|
||||
$rootScope.$on('toasty-added', function (event, toast) {
|
||||
console.log(toast)
|
||||
});
|
||||
// When a toast is clicked
|
||||
$rootScope.$on('toasty-clicked', function (event, toast) {
|
||||
console.log(toast)
|
||||
});
|
||||
// When a toast is cleared/removed
|
||||
$rootScope.$on('toasty-cleared', function (event, toast) {
|
||||
console.log(toast)
|
||||
});
|
||||
|
||||
var options: toasty.IToastyConfig = {
|
||||
title: 'Toast It!',
|
||||
msg: 'Mmmm, tasties...',
|
||||
showClose: true,
|
||||
clickToClose: false,
|
||||
timeout: 5000,
|
||||
sound: true,
|
||||
html: false,
|
||||
shake: false,
|
||||
theme: 'bootstrap'
|
||||
};
|
||||
|
||||
toasty(options);
|
||||
toasty.default(options);
|
||||
toasty.info(options);
|
||||
toasty.success(options);
|
||||
toasty.wait(options);
|
||||
toasty.error(options);
|
||||
toasty.warning(options);
|
||||
|
||||
$scope.newToast = function () {
|
||||
|
||||
toasty.clear(); // Clear all
|
||||
toasty.clear(1); // Remove a single toast by it's ID
|
||||
|
||||
toasty('Quick Toast!');
|
||||
toasty.success('Quick Success Toast!');
|
||||
|
||||
toasty({
|
||||
title: 'New Toast!',
|
||||
onAdd: function () {
|
||||
console.log('Toasty ' + this.id + ' has been added!', this);
|
||||
},
|
||||
onRemove: function () {
|
||||
console.log('Toasty ' + this.id + ' has been removed!', this);
|
||||
},
|
||||
onClick: function () {
|
||||
console.log('Toasty ' + this.id + ' has been clicked!', this);
|
||||
}
|
||||
});
|
||||
|
||||
toasty({
|
||||
title: 'Ping!',
|
||||
msg: '<a href="http://google.com">Take me to Google!</a>',
|
||||
showClose: false,
|
||||
clickToClose: true,
|
||||
timeout: 10000,
|
||||
sound: false,
|
||||
html: true,
|
||||
shake: true,
|
||||
theme: 'bootstrap'
|
||||
});
|
||||
|
||||
toasty(1);
|
||||
|
||||
toasty[$scope.options.type]({
|
||||
title: $scope.options.title,
|
||||
msg: $scope.options.msg,
|
||||
showClose: $scope.options.showClose,
|
||||
clickToClose: $scope.options.clickToClose,
|
||||
sound: $scope.options.sound,
|
||||
shake: $scope.options.shake,
|
||||
timeout: $scope.options.timeout || false,
|
||||
html: $scope.options.html,
|
||||
theme: $scope.options.theme,
|
||||
onAdd: function () {
|
||||
console.log('Toasty ' + this.id + ' has been added!');
|
||||
},
|
||||
onRemove: function () {
|
||||
console.log('Toasty ' + this.id + ' has been removed!');
|
||||
},
|
||||
onClick: function () {
|
||||
console.log('Toasty ' + this.id + ' has been clicked!');
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
$scope.clearToasties = function () {
|
||||
toasty.clear();
|
||||
};
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
angular
|
||||
.module('main', ['angular-toasty'])
|
||||
.config(['toastyConfigProvider', (toastyConfigProvider:toasty.IToastyConfigProvider) => {
|
||||
toastyConfigProvider.setConfig({
|
||||
title: 'global',
|
||||
sound: false,
|
||||
shake: true
|
||||
});
|
||||
}])
|
||||
.controller('MainController', AngularToastyTestController);
|
||||
Vendored
+255
@@ -0,0 +1,255 @@
|
||||
// Type definitions for Angular Toasty v1.0.2
|
||||
// Project: https://github.com/invertase/angular-toasty
|
||||
// Definitions by: Dominik Muench <https://github.com/muenchdo>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
/// <reference path="../angularjs/angular.d.ts" />
|
||||
|
||||
declare module toasty {
|
||||
|
||||
interface IToastyService {
|
||||
/**
|
||||
* Create a toast with the given options and type.
|
||||
* @param options
|
||||
* @param type
|
||||
*/
|
||||
(options: IToastyConfig, type?: string): void;
|
||||
|
||||
/**
|
||||
* Create a default "quick toast" with the given title.
|
||||
* @param title
|
||||
*/
|
||||
(title: string|number): void;
|
||||
|
||||
/**
|
||||
* Create a default toast with the given options.
|
||||
* @param options
|
||||
*/
|
||||
default(options: IToastyConfig): void;
|
||||
|
||||
/**
|
||||
* Create a default "quick toast" with the given title.
|
||||
* @param title
|
||||
*/
|
||||
default(title: string|number): void;
|
||||
|
||||
/**
|
||||
* Create an info toast with the given options.
|
||||
* @param options
|
||||
*/
|
||||
info(options: IToastyConfig): void;
|
||||
|
||||
/**
|
||||
* Create an info "quick toast" with the given title.
|
||||
* @param title
|
||||
*/
|
||||
info(title: string|number): void;
|
||||
|
||||
/**
|
||||
* Create a wait toast with the given options.
|
||||
* @param options
|
||||
*/
|
||||
wait(options: IToastyConfig): void;
|
||||
|
||||
/**
|
||||
* Create a wait "quick toast" with the given title.
|
||||
* @param title
|
||||
*/
|
||||
wait(title: string|number): void;
|
||||
|
||||
/**
|
||||
* Create a success toast with the given options.
|
||||
* @param options
|
||||
*/
|
||||
success(options: IToastyConfig): void;
|
||||
|
||||
/**
|
||||
* Create a success "quick toast" with the given title.
|
||||
* @param title
|
||||
*/
|
||||
success(title: string|number): void;
|
||||
|
||||
/**
|
||||
* Create an error toast with the given options.
|
||||
* @param options
|
||||
*/
|
||||
error(options: IToastyConfig): void;
|
||||
|
||||
/**
|
||||
* Create an error "quick toast" with the given title.
|
||||
* @param title
|
||||
*/
|
||||
error(title: string|number): void;
|
||||
|
||||
/**
|
||||
* Create a warning toast with the given options.
|
||||
* @param options
|
||||
*/
|
||||
warning(options: IToastyConfig): void;
|
||||
|
||||
/**
|
||||
* Create a warning "quick toast" with the given title.
|
||||
* @param title
|
||||
*/
|
||||
warning(title: string|number): void;
|
||||
|
||||
/**
|
||||
* Clear toast(s).
|
||||
* @param id Optional ID to clear a specific toast.
|
||||
*/
|
||||
clear(id?): void;
|
||||
|
||||
/**
|
||||
* Get the global config.
|
||||
*/
|
||||
getGlobalConfig(): IGlobalConfig;
|
||||
|
||||
}
|
||||
|
||||
interface IToastyConfig {
|
||||
/**
|
||||
* The toast's title.
|
||||
*/
|
||||
title: string;
|
||||
|
||||
/**
|
||||
* The toast's message.
|
||||
*/
|
||||
msg?: string;
|
||||
|
||||
/**
|
||||
* Whether to show the 'X' icon to close the toast.
|
||||
*/
|
||||
showClose?: boolean;
|
||||
|
||||
/**
|
||||
* Whether clicking the toast closes it.
|
||||
*/
|
||||
clickToClose?: boolean;
|
||||
|
||||
/**
|
||||
* How long (in milliseconds) the toast shows before it's removed. Set to false to disable.
|
||||
*/
|
||||
timeout?: number;
|
||||
|
||||
/**
|
||||
* Whether to play a sound when a toast is added.
|
||||
*/
|
||||
sound?: boolean;
|
||||
|
||||
/**
|
||||
* Whether HTML is allowed in toasts.
|
||||
*/
|
||||
html?: boolean;
|
||||
|
||||
/**
|
||||
* Whether to shake the toasts.
|
||||
*/
|
||||
shake?: boolean;
|
||||
|
||||
/**
|
||||
* What theme to use.
|
||||
* - 'default'
|
||||
* - 'material'
|
||||
* - 'bootstrap'
|
||||
*/
|
||||
theme?: string;
|
||||
|
||||
/**
|
||||
* The toast's type:
|
||||
* - 'default'
|
||||
* - 'info'
|
||||
* - 'success'
|
||||
* - 'wait'
|
||||
* - 'error'
|
||||
* - 'warning'
|
||||
*/
|
||||
type?: string;
|
||||
|
||||
/**
|
||||
* Add event handler.
|
||||
*/
|
||||
onAdd?: Function;
|
||||
|
||||
/**
|
||||
* Remove event handler.
|
||||
*/
|
||||
onRemove?: Function;
|
||||
|
||||
/**
|
||||
* Click event handler.
|
||||
*/
|
||||
onClick?: Function;
|
||||
}
|
||||
|
||||
interface IGlobalConfig {
|
||||
|
||||
/**
|
||||
* Maximum number of toasts to show at once.
|
||||
*/
|
||||
limit?: number;
|
||||
|
||||
/**
|
||||
* The toast's title.
|
||||
*/
|
||||
title?: string;
|
||||
|
||||
/**
|
||||
* The toast's message.
|
||||
*/
|
||||
msg?: string;
|
||||
|
||||
/**
|
||||
* Whether to show the 'X' icon to close the toast.
|
||||
*/
|
||||
showClose?: boolean;
|
||||
|
||||
/**
|
||||
* Whether clicking the toast closes it.
|
||||
*/
|
||||
clickToClose?: boolean;
|
||||
|
||||
/**
|
||||
* The window position where the toast pops up.
|
||||
*
|
||||
*/
|
||||
position?: string;
|
||||
|
||||
/**
|
||||
* How long (in miliseconds) the toast shows before it's removed. Set to false to disable.
|
||||
*/
|
||||
timeout?: number|boolean;
|
||||
|
||||
/**
|
||||
* Whether to play a sound when a toast is added.
|
||||
*/
|
||||
sound?: boolean;
|
||||
|
||||
/**
|
||||
* Whether HTML is allowed in toast.
|
||||
*/
|
||||
html?: boolean;
|
||||
|
||||
/**
|
||||
* Whether to shake the toast.
|
||||
*/
|
||||
shake?: boolean;
|
||||
|
||||
/**
|
||||
* What theme to use.
|
||||
* - 'default'
|
||||
* - 'material'
|
||||
* - 'bootstrap'
|
||||
*/
|
||||
theme?: string;
|
||||
}
|
||||
|
||||
interface IToastyConfigProvider {
|
||||
/**
|
||||
*
|
||||
* @param override
|
||||
*/
|
||||
setConfig(override: IGlobalConfig);
|
||||
$get(): IGlobalConfig;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user