Skip to content

Commit aca6b22

Browse files
committed
timoxley#24 making the library UMD - support for AMD and global
1 parent 99053f0 commit aca6b22

File tree

1 file changed

+22
-6
lines changed

1 file changed

+22
-6
lines changed

index.js

+22-6
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,19 @@
99
* @api public
1010
*/
1111

12-
exports = module.exports = function(searchInput) {
12+
(function (root, factory) {
13+
if(typeof define === "function" && define.amd) {
14+
// the AMD environment.
15+
root.keycode = factory()
16+
} else if(typeof module === "object" && module.exports) {
17+
// CommonJS environment
18+
exports = module.exports = (root.keycode = factory());
19+
} else {
20+
root.keycode = factory();
21+
}
22+
}(this, function() {
23+
24+
var keycode = function(searchInput) {
1325
// Keyboard Events
1426
if (searchInput && 'object' === typeof searchInput) {
1527
var hasKeyCode = searchInput.which || searchInput.keyCode || searchInput.charCode
@@ -39,10 +51,10 @@ exports = module.exports = function(searchInput) {
3951
/**
4052
* Get by name
4153
*
42-
* exports.code['enter'] // => 13
54+
* keycode.code['enter'] // => 13
4355
*/
4456

45-
var codes = exports.code = exports.codes = {
57+
var codes = keycode.code = keycode.codes = {
4658
'backspace': 8,
4759
'tab': 9,
4860
'enter': 13,
@@ -90,7 +102,7 @@ var codes = exports.code = exports.codes = {
90102

91103
// Helper aliases
92104

93-
var aliases = exports.aliases = {
105+
var aliases = keycode.aliases = {
94106
'windows': 91,
95107
'⇧': 16,
96108
'⌥': 18,
@@ -132,10 +144,10 @@ for (i = 0; i < 10; i++) codes['numpad '+i] = i + 96
132144
/**
133145
* Get by code
134146
*
135-
* exports.name[13] // => 'Enter'
147+
* keycode.name[13] // => 'Enter'
136148
*/
137149

138-
var names = exports.names = exports.title = {} // title for backward compat
150+
var names = keycode.names = keycode.title = {} // title for backward compat
139151

140152
// Create reverse mapping
141153
for (i in codes) names[codes[i]] = i
@@ -144,3 +156,7 @@ for (i in codes) names[codes[i]] = i
144156
for (var alias in aliases) {
145157
codes[alias] = aliases[alias]
146158
}
159+
160+
return keycode;
161+
162+
}));

0 commit comments

Comments
 (0)