Skip to content

Commit

Permalink
Remove old browsers support, add UMD builds
Browse files Browse the repository at this point in the history
  • Loading branch information
A committed Sep 29, 2014
1 parent f7b3b30 commit 5674276
Show file tree
Hide file tree
Showing 8 changed files with 82 additions and 51 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@
._*
node_modules
lib-cov
coverage.html
30 changes: 30 additions & 0 deletions dest/to-ms.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var f;"undefined"!=typeof window?f=window:"undefined"!=typeof global?f=global:"undefined"!=typeof self&&(f=self),f.toMs=e()}}(function(){var define,module,exports;module={exports:(exports={})};
/* globals define, window */
/* jshint -W053 */

'use strict';

module.exports = extended(new Number(0));

function extended(number) {
number.second = addMs.bind(number, 1e3, 1);
number.seconds = addMs.bind(number, 1e3);
number.minute = addMs.bind(number, 6e4, 1);
number.minutes = addMs.bind(number, 6e4);
number.hour = addMs.bind(number, 36e5, 1);
number.hours = addMs.bind(number, 36e5);
number.day = addMs.bind(number, 864e5, 1);
number.days = addMs.bind(number, 864e5);
number.week = addMs.bind(number, 6048e5, 1);
number.weeks = addMs.bind(number, 6048e5);
number.year = addMs.bind(number, 31536e6, 1);
number.years = addMs.bind(number, 31536e6);
return number;
}

function addMs(mlp, val) {
val = mlp * (+val || 0);
return extended(new Number(this + val));
}

return module.exports;});
65 changes: 21 additions & 44 deletions lib/ms.js
Original file line number Diff line number Diff line change
@@ -1,50 +1,27 @@
/* globals define, window */
/* jshint -W053 */

'use strict';

(function (factory) {
if (typeof define === 'function' && define.amd) {
define(factory); // AMD support
} else if (typeof exports !== 'undefined') {
module.exports = factory(); // CommonJS support
} else {
window.toMs = factory(); // Non-modular execution
}
})(function () {
module.exports = extended(new Number(0));

function _extended(number) {
number.second = _bind(_addMs, number, 1e3, 1);
number.seconds = _bind(_addMs, number, 1e3);
number.minute = _bind(_addMs, number, 6e4, 1);
number.minutes = _bind(_addMs, number, 6e4);
number.hour = _bind(_addMs, number, 36e5, 1);
number.hours = _bind(_addMs, number, 36e5);
number.day = _bind(_addMs, number, 864e5, 1);
number.days = _bind(_addMs, number, 864e5);
number.week = _bind(_addMs, number, 6048e5, 1);
number.weeks = _bind(_addMs, number, 6048e5);
number.year = _bind(_addMs, number, 31536e6, 1);
number.years = _bind(_addMs, number, 31536e6);
return number;
}
function extended(number) {
number.second = addMs.bind(number, 1e3, 1);
number.seconds = addMs.bind(number, 1e3);
number.minute = addMs.bind(number, 6e4, 1);
number.minutes = addMs.bind(number, 6e4);
number.hour = addMs.bind(number, 36e5, 1);
number.hours = addMs.bind(number, 36e5);
number.day = addMs.bind(number, 864e5, 1);
number.days = addMs.bind(number, 864e5);
number.week = addMs.bind(number, 6048e5, 1);
number.weeks = addMs.bind(number, 6048e5);
number.year = addMs.bind(number, 31536e6, 1);
number.years = addMs.bind(number, 31536e6);
return number;
}

function _addMs(multiplier, value) {
var _value = multiplier * (+value);
var number = new Number(this + _value || 0);
return _extended(number);
}

function _bind(fn, ctx) {
var _args = Array.prototype.slice.call(arguments, 2);
return function() {
var args = Array.prototype.slice.call(arguments, 0);
return fn.apply(ctx, _args.concat(args));
};
}

return function () {
var number = new Number(0);
return _extended(number);
};

}());
function addMs(mlp, val) {
val = mlp * (+val || 0);
return extended(new Number(this + val));
}
8 changes: 5 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "to-ms",
"version": "1.0.0",
"version": "1.1.0",
"description": "Tiny chained ms creation util",
"main": "index.js",
"directories": {
Expand All @@ -9,7 +9,8 @@
"scripts": {
"test": "mocha",
"test-cov": "jscoverage lib lib-cov; MS_COV=1 ./node_modules/.bin/mocha -R html-cov > coverage.html",
"browser": "serve test"
"browser": "serve test",
"make": "umd toMs -c < ./lib/ms.js > dest/to-ms.js"
},
"repository": {
"type": "git",
Expand Down Expand Up @@ -39,6 +40,7 @@
"mocha": "^1.21.4",
"mocha-lcov-reporter": "0.0.1",
"serve": "^1.4.0",
"should": "^4.0.4"
"should": "^4.0.4",
"umd": "^2.1.0"
}
}
4 changes: 3 additions & 1 deletion readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,9 @@ var ms = toMs

## Browser Support

Just use `window.toMs`
Just use `window.toMs`. To support legacy browsers you must use [ES5-Shim][2].

[2]: https://github.com/es-shims/es5-shim

## Methods

Expand Down
18 changes: 18 additions & 0 deletions test/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<html>
<head>
<title>to-ms - tests</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="https://cdn.rawgit.com/visionmedia/mocha/1.20.1/mocha.css" />
</head>
<body>
<div id="mocha"></div>
<script src="https://cdn.rawgit.com/visionmedia/mocha/1.20.1/mocha.js"></script>
<script src="https://cdn.rawgit.com/shouldjs/should.js/master/should.min.js"></script>
<script>mocha.setup('bdd')</script>
<script src="to-ms.js"></script>
<script src="test.js"></script>
<script>
mocha.run();
</script>
</body>
</html>
6 changes: 3 additions & 3 deletions test/index.js → test/test.js
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@

/* globals should, it, describe */
/* globals toMs, should, it, describe, window */

'use strict';

/**
* Dependencies
*/
var toMs = require('../');
var isNode = typeof window === 'undefined';
if (isNode) { global.toMs = require('../'); }

// End dependencies

Expand Down
1 change: 1 addition & 0 deletions test/to-ms.js

0 comments on commit 5674276

Please sign in to comment.