From 1d556e1d7c7d0c0a32ca48daaa4582ed165cd01b Mon Sep 17 00:00:00 2001 From: Andrew Bradley Date: Thu, 6 Nov 2014 01:31:01 -0500 Subject: [PATCH] Modified Mousetrap definition to allow Mousetrap to be loaded as an external module. - tests are also updated to test loading as an external module - mousetrap exports itself as an AMD module when an AMD define function is present --- mousetrap/mousetrap-tests.ts | 8 ++++++++ mousetrap/mousetrap.d.ts | 4 ++++ 2 files changed, 12 insertions(+) diff --git a/mousetrap/mousetrap-tests.ts b/mousetrap/mousetrap-tests.ts index 3eac1eef16..d60d8278d3 100644 --- a/mousetrap/mousetrap-tests.ts +++ b/mousetrap/mousetrap-tests.ts @@ -41,3 +41,11 @@ Mousetrap.trigger('esc'); Mousetrap.trigger('esc', 'keyup'); Mousetrap.reset(); + +// Test that Mousetrap can be loaded as an external module. +// Assume that if the externally-loaded module can be assigned to a variable with the type of global Mousetrap, +// then everything is working correctly. + +import importedMousetrap = require('mousetrap'); +var mousetrapModuleReference: typeof Mousetrap = importedMousetrap; + diff --git a/mousetrap/mousetrap.d.ts b/mousetrap/mousetrap.d.ts index dee352b42b..846e1f3ce2 100644 --- a/mousetrap/mousetrap.d.ts +++ b/mousetrap/mousetrap.d.ts @@ -19,3 +19,7 @@ interface MousetrapStatic { } declare var Mousetrap: MousetrapStatic; + +declare module "mousetrap" { + export = Mousetrap; +}