Pushing changes
This commit is contained in:
57
node_modules/dateformat/.npmignore
generated
vendored
Normal file
57
node_modules/dateformat/.npmignore
generated
vendored
Normal file
@ -0,0 +1,57 @@
|
||||
# .gitignore <https://github.com/tunnckoCore/dotfiles>
|
||||
#
|
||||
# Copyright (c) 2014 Charlike Mike Reagent, contributors.
|
||||
# Released under the MIT license.
|
||||
#
|
||||
|
||||
# Always-ignore dirs #
|
||||
# ####################
|
||||
_gh_pages
|
||||
node_modules
|
||||
bower_components
|
||||
components
|
||||
vendor
|
||||
build
|
||||
dest
|
||||
dist
|
||||
src
|
||||
lib-cov
|
||||
coverage
|
||||
nbproject
|
||||
cache
|
||||
temp
|
||||
tmp
|
||||
|
||||
# Packages #
|
||||
# ##########
|
||||
*.7z
|
||||
*.dmg
|
||||
*.gz
|
||||
*.iso
|
||||
*.jar
|
||||
*.rar
|
||||
*.tar
|
||||
*.zip
|
||||
|
||||
# OS, Logs and databases #
|
||||
# #########################
|
||||
*.pid
|
||||
*.dat
|
||||
*.log
|
||||
*.sql
|
||||
*.sqlite
|
||||
*~
|
||||
~*
|
||||
|
||||
# Another files #
|
||||
# ###############
|
||||
Icon?
|
||||
.DS_Store*
|
||||
Thumbs.db
|
||||
ehthumbs.db
|
||||
Desktop.ini
|
||||
npm-debug.log
|
||||
.directory
|
||||
._*
|
||||
|
||||
koa-better-body
|
4
node_modules/dateformat/.travis.yml
generated
vendored
Normal file
4
node_modules/dateformat/.travis.yml
generated
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
language: node_js
|
||||
node_js:
|
||||
- "0.11"
|
||||
- "0.10"
|
20
node_modules/dateformat/LICENSE
generated
vendored
Normal file
20
node_modules/dateformat/LICENSE
generated
vendored
Normal file
@ -0,0 +1,20 @@
|
||||
(c) 2007-2009 Steven Levithan <stevenlevithan.com>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
82
node_modules/dateformat/Readme.md
generated
vendored
Normal file
82
node_modules/dateformat/Readme.md
generated
vendored
Normal file
@ -0,0 +1,82 @@
|
||||
# dateformat
|
||||
|
||||
A node.js package for Steven Levithan's excellent [dateFormat()][dateformat] function.
|
||||
|
||||
[](https://travis-ci.org/felixge/node-dateformat)
|
||||
|
||||
## Modifications
|
||||
|
||||
* Removed the `Date.prototype.format` method. Sorry folks, but extending native prototypes is for suckers.
|
||||
* Added a `module.exports = dateFormat;` statement at the bottom
|
||||
* Added the placeholder `N` to get the ISO 8601 numeric representation of the day of the week
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
$ npm install dateformat
|
||||
$ dateformat --help
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
As taken from Steven's post, modified to match the Modifications listed above:
|
||||
```js
|
||||
var dateFormat = require('dateformat');
|
||||
var now = new Date();
|
||||
|
||||
// Basic usage
|
||||
dateFormat(now, "dddd, mmmm dS, yyyy, h:MM:ss TT");
|
||||
// Saturday, June 9th, 2007, 5:46:21 PM
|
||||
|
||||
// You can use one of several named masks
|
||||
dateFormat(now, "isoDateTime");
|
||||
// 2007-06-09T17:46:21
|
||||
|
||||
// ...Or add your own
|
||||
dateFormat.masks.hammerTime = 'HH:MM! "Can\'t touch this!"';
|
||||
dateFormat(now, "hammerTime");
|
||||
// 17:46! Can't touch this!
|
||||
|
||||
// When using the standalone dateFormat function,
|
||||
// you can also provide the date as a string
|
||||
dateFormat("Jun 9 2007", "fullDate");
|
||||
// Saturday, June 9, 2007
|
||||
|
||||
// Note that if you don't include the mask argument,
|
||||
// dateFormat.masks.default is used
|
||||
dateFormat(now);
|
||||
// Sat Jun 09 2007 17:46:21
|
||||
|
||||
// And if you don't include the date argument,
|
||||
// the current date and time is used
|
||||
dateFormat();
|
||||
// Sat Jun 09 2007 17:46:22
|
||||
|
||||
// You can also skip the date argument (as long as your mask doesn't
|
||||
// contain any numbers), in which case the current date/time is used
|
||||
dateFormat("longTime");
|
||||
// 5:46:22 PM EST
|
||||
|
||||
// And finally, you can convert local time to UTC time. Simply pass in
|
||||
// true as an additional argument (no argument skipping allowed in this case):
|
||||
dateFormat(now, "longTime", true);
|
||||
// 10:46:21 PM UTC
|
||||
|
||||
// ...Or add the prefix "UTC:" or "GMT:" to your mask.
|
||||
dateFormat(now, "UTC:h:MM:ss TT Z");
|
||||
// 10:46:21 PM UTC
|
||||
|
||||
// You can also get the ISO 8601 week of the year:
|
||||
dateFormat(now, "W");
|
||||
// 42
|
||||
|
||||
// and also get the ISO 8601 numeric representation of the day of the week:
|
||||
dateFormat(now,"N");
|
||||
// 6
|
||||
```
|
||||
## License
|
||||
|
||||
(c) 2007-2009 Steven Levithan [stevenlevithan.com][stevenlevithan], MIT license.
|
||||
|
||||
[dateformat]: http://blog.stevenlevithan.com/archives/date-time-format
|
||||
[stevenlevithan]: http://stevenlevithan.com/
|
75
node_modules/dateformat/bin/cli.js
generated
vendored
Executable file
75
node_modules/dateformat/bin/cli.js
generated
vendored
Executable file
@ -0,0 +1,75 @@
|
||||
#!/usr/bin/env node
|
||||
/**
|
||||
* dateformat <https://github.com/felixge/node-dateformat>
|
||||
*
|
||||
* Copyright (c) 2014 Charlike Mike Reagent (cli), contributors.
|
||||
* Released under the MIT license.
|
||||
*/
|
||||
|
||||
'use strict';
|
||||
|
||||
/**
|
||||
* Module dependencies.
|
||||
*/
|
||||
|
||||
var dateFormat = require('../lib/dateformat');
|
||||
var meow = require('meow');
|
||||
var stdin = require('get-stdin');
|
||||
|
||||
var cli = meow({
|
||||
pkg: '../package.json',
|
||||
help: [
|
||||
'Options',
|
||||
' --help Show this help',
|
||||
' --version Current version of package',
|
||||
' -d | --date Date that want to format (Date object as Number or String)',
|
||||
' -m | --mask Mask that will use to format the date',
|
||||
' -u | --utc Convert local time to UTC time or use `UTC:` prefix in mask',
|
||||
' -g | --gmt You can use `GMT:` prefix in mask',
|
||||
'',
|
||||
'Usage',
|
||||
' dateformat [date] [mask]',
|
||||
' dateformat "Nov 26 2014" "fullDate"',
|
||||
' dateformat 1416985417095 "dddd, mmmm dS, yyyy, h:MM:ss TT"',
|
||||
' dateformat 1315361943159 "W"',
|
||||
' dateformat "UTC:h:MM:ss TT Z"',
|
||||
' dateformat "longTime" true',
|
||||
' dateformat "longTime" false true',
|
||||
' dateformat "Jun 9 2007" "fullDate" true',
|
||||
' date +%s | dateformat',
|
||||
''
|
||||
].join('\n')
|
||||
})
|
||||
|
||||
var date = cli.input[0] || cli.flags.d || cli.flags.date || Date.now();
|
||||
var mask = cli.input[1] || cli.flags.m || cli.flags.mask || dateFormat.masks.default;
|
||||
var utc = cli.input[2] || cli.flags.u || cli.flags.utc || false;
|
||||
var gmt = cli.input[3] || cli.flags.g || cli.flags.gmt || false;
|
||||
|
||||
utc = utc === 'true' ? true : false;
|
||||
gmt = gmt === 'true' ? true : false;
|
||||
|
||||
if (!cli.input.length) {
|
||||
stdin(function(date) {
|
||||
console.log(dateFormat(date, dateFormat.masks.default, utc, gmt));
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
if (cli.input.length === 1 && date) {
|
||||
mask = date;
|
||||
date = Date.now();
|
||||
console.log(dateFormat(date, mask, utc, gmt));
|
||||
return;
|
||||
}
|
||||
|
||||
if (cli.input.length >= 2 && date && mask) {
|
||||
if (mask === 'true' || mask === 'false') {
|
||||
utc = mask === 'true' ? true : false;
|
||||
gmt = !utc;
|
||||
mask = date
|
||||
date = Date.now();
|
||||
}
|
||||
console.log(dateFormat(date, mask, utc, gmt));
|
||||
return;
|
||||
}
|
226
node_modules/dateformat/lib/dateformat.js
generated
vendored
Normal file
226
node_modules/dateformat/lib/dateformat.js
generated
vendored
Normal file
@ -0,0 +1,226 @@
|
||||
/*
|
||||
* Date Format 1.2.3
|
||||
* (c) 2007-2009 Steven Levithan <stevenlevithan.com>
|
||||
* MIT license
|
||||
*
|
||||
* Includes enhancements by Scott Trenda <scott.trenda.net>
|
||||
* and Kris Kowal <cixar.com/~kris.kowal/>
|
||||
*
|
||||
* Accepts a date, a mask, or a date and a mask.
|
||||
* Returns a formatted version of the given date.
|
||||
* The date defaults to the current date/time.
|
||||
* The mask defaults to dateFormat.masks.default.
|
||||
*/
|
||||
|
||||
(function(global) {
|
||||
'use strict';
|
||||
|
||||
var dateFormat = (function() {
|
||||
var token = /d{1,4}|m{1,4}|yy(?:yy)?|([HhMsTt])\1?|[LloSZWN]|'[^']*'|'[^']*'/g;
|
||||
var timezone = /\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g;
|
||||
var timezoneClip = /[^-+\dA-Z]/g;
|
||||
|
||||
// Regexes and supporting functions are cached through closure
|
||||
return function (date, mask, utc, gmt) {
|
||||
|
||||
// You can't provide utc if you skip other args (use the 'UTC:' mask prefix)
|
||||
if (arguments.length === 1 && kindOf(date) === 'string' && !/\d/.test(date)) {
|
||||
mask = date;
|
||||
date = undefined;
|
||||
}
|
||||
|
||||
date = date || new Date;
|
||||
|
||||
if(!(date instanceof Date)) {
|
||||
date = new Date(date);
|
||||
}
|
||||
|
||||
if (isNaN(date)) {
|
||||
throw TypeError('Invalid date');
|
||||
}
|
||||
|
||||
mask = String(dateFormat.masks[mask] || mask || dateFormat.masks['default']);
|
||||
|
||||
// Allow setting the utc/gmt argument via the mask
|
||||
var maskSlice = mask.slice(0, 4);
|
||||
if (maskSlice === 'UTC:' || maskSlice === 'GMT:') {
|
||||
mask = mask.slice(4);
|
||||
utc = true;
|
||||
if (maskSlice === 'GMT:') {
|
||||
gmt = true;
|
||||
}
|
||||
}
|
||||
|
||||
var _ = utc ? 'getUTC' : 'get';
|
||||
var d = date[_ + 'Date']();
|
||||
var D = date[_ + 'Day']();
|
||||
var m = date[_ + 'Month']();
|
||||
var y = date[_ + 'FullYear']();
|
||||
var H = date[_ + 'Hours']();
|
||||
var M = date[_ + 'Minutes']();
|
||||
var s = date[_ + 'Seconds']();
|
||||
var L = date[_ + 'Milliseconds']();
|
||||
var o = utc ? 0 : date.getTimezoneOffset();
|
||||
var W = getWeek(date);
|
||||
var N = getDayOfWeek(date);
|
||||
var flags = {
|
||||
d: d,
|
||||
dd: pad(d),
|
||||
ddd: dateFormat.i18n.dayNames[D],
|
||||
dddd: dateFormat.i18n.dayNames[D + 7],
|
||||
m: m + 1,
|
||||
mm: pad(m + 1),
|
||||
mmm: dateFormat.i18n.monthNames[m],
|
||||
mmmm: dateFormat.i18n.monthNames[m + 12],
|
||||
yy: String(y).slice(2),
|
||||
yyyy: y,
|
||||
h: H % 12 || 12,
|
||||
hh: pad(H % 12 || 12),
|
||||
H: H,
|
||||
HH: pad(H),
|
||||
M: M,
|
||||
MM: pad(M),
|
||||
s: s,
|
||||
ss: pad(s),
|
||||
l: pad(L, 3),
|
||||
L: pad(Math.round(L / 10)),
|
||||
t: H < 12 ? 'a' : 'p',
|
||||
tt: H < 12 ? 'am' : 'pm',
|
||||
T: H < 12 ? 'A' : 'P',
|
||||
TT: H < 12 ? 'AM' : 'PM',
|
||||
Z: gmt ? 'GMT' : utc ? 'UTC' : (String(date).match(timezone) || ['']).pop().replace(timezoneClip, ''),
|
||||
o: (o > 0 ? '-' : '+') + pad(Math.floor(Math.abs(o) / 60) * 100 + Math.abs(o) % 60, 4),
|
||||
S: ['th', 'st', 'nd', 'rd'][d % 10 > 3 ? 0 : (d % 100 - d % 10 != 10) * d % 10],
|
||||
W: W,
|
||||
N: N
|
||||
};
|
||||
|
||||
return mask.replace(token, function (match) {
|
||||
if (match in flags) {
|
||||
return flags[match];
|
||||
}
|
||||
return match.slice(1, match.length - 1);
|
||||
});
|
||||
};
|
||||
})();
|
||||
|
||||
dateFormat.masks = {
|
||||
'default': 'ddd mmm dd yyyy HH:MM:ss',
|
||||
'shortDate': 'm/d/yy',
|
||||
'mediumDate': 'mmm d, yyyy',
|
||||
'longDate': 'mmmm d, yyyy',
|
||||
'fullDate': 'dddd, mmmm d, yyyy',
|
||||
'shortTime': 'h:MM TT',
|
||||
'mediumTime': 'h:MM:ss TT',
|
||||
'longTime': 'h:MM:ss TT Z',
|
||||
'isoDate': 'yyyy-mm-dd',
|
||||
'isoTime': 'HH:MM:ss',
|
||||
'isoDateTime': 'yyyy-mm-dd\'T\'HH:MM:sso',
|
||||
'isoUtcDateTime': 'UTC:yyyy-mm-dd\'T\'HH:MM:ss\'Z\'',
|
||||
'expiresHeaderFormat': 'ddd, dd mmm yyyy HH:MM:ss Z'
|
||||
};
|
||||
|
||||
// Internationalization strings
|
||||
dateFormat.i18n = {
|
||||
dayNames: [
|
||||
'Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat',
|
||||
'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'
|
||||
],
|
||||
monthNames: [
|
||||
'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec',
|
||||
'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'
|
||||
]
|
||||
};
|
||||
|
||||
function pad(val, len) {
|
||||
val = String(val);
|
||||
len = len || 2;
|
||||
while (val.length < len) {
|
||||
val = '0' + val;
|
||||
}
|
||||
return val;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the ISO 8601 week number
|
||||
* Based on comments from
|
||||
* http://techblog.procurios.nl/k/n618/news/view/33796/14863/Calculate-ISO-8601-week-and-year-in-javascript.html
|
||||
*
|
||||
* @param {Object} `date`
|
||||
* @return {Number}
|
||||
*/
|
||||
function getWeek(date) {
|
||||
// Remove time components of date
|
||||
var targetThursday = new Date(date.getFullYear(), date.getMonth(), date.getDate());
|
||||
|
||||
// Change date to Thursday same week
|
||||
targetThursday.setDate(targetThursday.getDate() - ((targetThursday.getDay() + 6) % 7) + 3);
|
||||
|
||||
// Take January 4th as it is always in week 1 (see ISO 8601)
|
||||
var firstThursday = new Date(targetThursday.getFullYear(), 0, 4);
|
||||
|
||||
// Change date to Thursday same week
|
||||
firstThursday.setDate(firstThursday.getDate() - ((firstThursday.getDay() + 6) % 7) + 3);
|
||||
|
||||
// Check if daylight-saving-time-switch occured and correct for it
|
||||
var ds = targetThursday.getTimezoneOffset() - firstThursday.getTimezoneOffset();
|
||||
targetThursday.setHours(targetThursday.getHours() - ds);
|
||||
|
||||
// Number of weeks between target Thursday and first Thursday
|
||||
var weekDiff = (targetThursday - firstThursday) / (86400000*7);
|
||||
return 1 + Math.floor(weekDiff);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get ISO-8601 numeric representation of the day of the week
|
||||
* 1 (for Monday) through 7 (for Sunday)
|
||||
*
|
||||
* @param {Object} `date`
|
||||
* @return {Number}
|
||||
*/
|
||||
function getDayOfWeek(date) {
|
||||
var dow = date.getDay();
|
||||
if(dow === 0) {
|
||||
dow = 7;
|
||||
}
|
||||
return dow;
|
||||
}
|
||||
|
||||
/**
|
||||
* kind-of shortcut
|
||||
* @param {*} val
|
||||
* @return {String}
|
||||
*/
|
||||
function kindOf(val) {
|
||||
if (val === null) {
|
||||
return 'null';
|
||||
}
|
||||
|
||||
if (val === undefined) {
|
||||
return 'undefined';
|
||||
}
|
||||
|
||||
if (typeof val !== 'object') {
|
||||
return typeof val;
|
||||
}
|
||||
|
||||
if (Array.isArray(val)) {
|
||||
return 'array';
|
||||
}
|
||||
|
||||
return {}.toString.call(val)
|
||||
.slice(8, -1).toLowerCase();
|
||||
};
|
||||
|
||||
|
||||
|
||||
if (typeof define === 'function' && define.amd) {
|
||||
define(function () {
|
||||
return dateFormat;
|
||||
});
|
||||
} else if (typeof exports === 'object') {
|
||||
module.exports = dateFormat;
|
||||
} else {
|
||||
global.dateFormat = dateFormat;
|
||||
}
|
||||
})(this);
|
108
node_modules/dateformat/package.json
generated
vendored
Normal file
108
node_modules/dateformat/package.json
generated
vendored
Normal file
@ -0,0 +1,108 @@
|
||||
{
|
||||
"_args": [
|
||||
[
|
||||
{
|
||||
"raw": "dateformat@^1.0.11",
|
||||
"scope": null,
|
||||
"escapedName": "dateformat",
|
||||
"name": "dateformat",
|
||||
"rawSpec": "^1.0.11",
|
||||
"spec": ">=1.0.11 <2.0.0",
|
||||
"type": "range"
|
||||
},
|
||||
"/home/burchettm/statsbot/node_modules/console-stamp"
|
||||
]
|
||||
],
|
||||
"_from": "dateformat@>=1.0.11 <2.0.0",
|
||||
"_id": "dateformat@1.0.12",
|
||||
"_inCache": true,
|
||||
"_location": "/dateformat",
|
||||
"_nodeVersion": "0.12.7",
|
||||
"_npmUser": {
|
||||
"name": "felixge",
|
||||
"email": "felix@debuggable.com"
|
||||
},
|
||||
"_npmVersion": "2.11.3",
|
||||
"_phantomChildren": {},
|
||||
"_requested": {
|
||||
"raw": "dateformat@^1.0.11",
|
||||
"scope": null,
|
||||
"escapedName": "dateformat",
|
||||
"name": "dateformat",
|
||||
"rawSpec": "^1.0.11",
|
||||
"spec": ">=1.0.11 <2.0.0",
|
||||
"type": "range"
|
||||
},
|
||||
"_requiredBy": [
|
||||
"/console-stamp"
|
||||
],
|
||||
"_resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz",
|
||||
"_shasum": "9f124b67594c937ff706932e4a642cca8dbbfee9",
|
||||
"_shrinkwrap": null,
|
||||
"_spec": "dateformat@^1.0.11",
|
||||
"_where": "/home/burchettm/statsbot/node_modules/console-stamp",
|
||||
"author": {
|
||||
"name": "Steven Levithan"
|
||||
},
|
||||
"bin": {
|
||||
"dateformat": "bin/cli.js"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/felixge/node-dateformat/issues"
|
||||
},
|
||||
"contributors": [
|
||||
{
|
||||
"name": "Steven Levithan"
|
||||
},
|
||||
{
|
||||
"name": "Felix Geisendörfer",
|
||||
"email": "felix@debuggable.com"
|
||||
},
|
||||
{
|
||||
"name": "Christoph Tavan",
|
||||
"email": "dev@tavan.de"
|
||||
}
|
||||
],
|
||||
"dependencies": {
|
||||
"get-stdin": "^4.0.1",
|
||||
"meow": "^3.3.0"
|
||||
},
|
||||
"description": "A node.js package for Steven Levithan's excellent dateFormat() function.",
|
||||
"devDependencies": {
|
||||
"mocha": "2.0.1",
|
||||
"underscore": "1.7.0"
|
||||
},
|
||||
"directories": {},
|
||||
"dist": {
|
||||
"shasum": "9f124b67594c937ff706932e4a642cca8dbbfee9",
|
||||
"tarball": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz"
|
||||
},
|
||||
"engines": {
|
||||
"node": "*"
|
||||
},
|
||||
"gitHead": "17364d40e61c06f6de228ab94f3660a27f357f01",
|
||||
"homepage": "https://github.com/felixge/node-dateformat",
|
||||
"license": "MIT",
|
||||
"main": "lib/dateformat",
|
||||
"maintainers": [
|
||||
{
|
||||
"name": "felixge",
|
||||
"email": "felix@debuggable.com"
|
||||
},
|
||||
{
|
||||
"name": "ctavan",
|
||||
"email": "dev@tavan.de"
|
||||
}
|
||||
],
|
||||
"name": "dateformat",
|
||||
"optionalDependencies": {},
|
||||
"readme": "ERROR: No README data found!",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/felixge/node-dateformat.git"
|
||||
},
|
||||
"scripts": {
|
||||
"test": "mocha"
|
||||
},
|
||||
"version": "1.0.12"
|
||||
}
|
15
node_modules/dateformat/test/test_dayofweek.js
generated
vendored
Normal file
15
node_modules/dateformat/test/test_dayofweek.js
generated
vendored
Normal file
@ -0,0 +1,15 @@
|
||||
var assert = require('assert');
|
||||
|
||||
var dateFormat = require('./../lib/dateformat');
|
||||
|
||||
describe('dayOfWeek', function() {
|
||||
it('should correctly format the timezone part', function(done) {
|
||||
var start = 10; // the 10 of March 2013 is a Sunday
|
||||
for(var dow = 1; dow <= 7; dow++){
|
||||
var date = new Date('2013-03-' + (start + dow));
|
||||
var N = dateFormat(date, 'N');
|
||||
assert.strictEqual(N, String(dow));
|
||||
}
|
||||
done();
|
||||
});
|
||||
});
|
76
node_modules/dateformat/test/test_formats.js
generated
vendored
Normal file
76
node_modules/dateformat/test/test_formats.js
generated
vendored
Normal file
@ -0,0 +1,76 @@
|
||||
var assert = require('assert');
|
||||
|
||||
var _ = require('underscore');
|
||||
|
||||
var dateFormat = require('../lib/dateformat');
|
||||
|
||||
var expects = {
|
||||
'default': 'Wed Nov 26 2014 13:19:44',
|
||||
'shortDate': '11/26/14',
|
||||
'mediumDate': 'Nov 26, 2014',
|
||||
'longDate': 'November 26, 2014',
|
||||
'fullDate': 'Wednesday, November 26, 2014',
|
||||
'shortTime': '1:19 PM',
|
||||
'mediumTime': '1:19:44 PM',
|
||||
'longTime': '1:19:44 PM %TZ_PREFIX%%TZ_OFFSET%',
|
||||
'isoDate': '2014-11-26',
|
||||
'isoTime': '13:19:44',
|
||||
'isoDateTime': '2014-11-26T13:19:44%TZ_OFFSET%',
|
||||
'isoUtcDateTime': '',
|
||||
'expiresHeaderFormat': 'Wed, 26 Nov 2014 13:19:44 %TZ_PREFIX%%TZ_OFFSET%'
|
||||
};
|
||||
|
||||
function pad(num, size) {
|
||||
var s = num + '';
|
||||
while (s.length < size) {
|
||||
s = '0' + s;
|
||||
}
|
||||
return s;
|
||||
}
|
||||
|
||||
function parseOffset(date) {
|
||||
var offset = date.getTimezoneOffset();
|
||||
var hours = Math.floor(-1 * offset / 60);
|
||||
var minutes = (-1 * offset) - (hours * 60);
|
||||
var sign = offset > 0 ? '-' : '+';
|
||||
return {
|
||||
offset: offset,
|
||||
hours: hours,
|
||||
minutes: minutes,
|
||||
sign: sign,
|
||||
};
|
||||
}
|
||||
|
||||
function timezoneOffset(date) {
|
||||
var offset = parseOffset(date);
|
||||
return offset.sign + pad(offset.hours, 2) + pad(offset.minutes, 2);
|
||||
}
|
||||
|
||||
describe('dateformat([now], [mask])', function() {
|
||||
_.each(dateFormat.masks, function(value, key) {
|
||||
it('should format `' + key + '` mask', function(done) {
|
||||
var now = new Date(2014, 10, 26, 13, 19, 44);
|
||||
var tzOffset = timezoneOffset(now);
|
||||
var expected = expects[key].replace(/%TZ_PREFIX%/, 'GMT')
|
||||
.replace(/%TZ_OFFSET%/g, tzOffset)
|
||||
.replace(/GMT\+0000/g, 'UTC');
|
||||
if (key === 'isoUtcDateTime') {
|
||||
var offset = parseOffset(now);
|
||||
now.setHours(now.getHours() - offset.hours,
|
||||
now.getMinutes() - offset.minutes);
|
||||
var expected = now.toISOString().replace(/\.000/g, '');
|
||||
}
|
||||
var actual = dateFormat(now, key);
|
||||
assert.strictEqual(actual, expected);
|
||||
done();
|
||||
});
|
||||
});
|
||||
it('should use `default` mask, when `mask` is empty', function(done) {
|
||||
var now = new Date(2014, 10, 26, 13, 19, 44);
|
||||
var expected = expects['default'];
|
||||
var actual = dateFormat(now);
|
||||
|
||||
assert.strictEqual(actual, expected);
|
||||
done();
|
||||
});
|
||||
});
|
11
node_modules/dateformat/test/test_isoutcdatetime.js
generated
vendored
Normal file
11
node_modules/dateformat/test/test_isoutcdatetime.js
generated
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
var assert = require('assert');
|
||||
|
||||
var dateFormat = require('./../lib/dateformat');
|
||||
|
||||
describe('isoUtcDateTime', function() {
|
||||
it('should correctly format the timezone part', function(done) {
|
||||
var actual = dateFormat('2014-06-02T13:23:21-08:00', 'isoUtcDateTime');
|
||||
assert.strictEqual(actual, '2014-06-02T21:23:21Z');
|
||||
done();
|
||||
});
|
||||
});
|
4
node_modules/dateformat/test/weekofyear/test_weekofyear.js
generated
vendored
Normal file
4
node_modules/dateformat/test/weekofyear/test_weekofyear.js
generated
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
var dateFormat = require('../lib/dateformat.js');
|
||||
|
||||
var val = process.argv[2] || new Date();
|
||||
console.log(dateFormat(val, 'W'));
|
27
node_modules/dateformat/test/weekofyear/test_weekofyear.sh
generated
vendored
Normal file
27
node_modules/dateformat/test/weekofyear/test_weekofyear.sh
generated
vendored
Normal file
@ -0,0 +1,27 @@
|
||||
#!/bin/bash
|
||||
|
||||
# this just takes php's date() function as a reference to check if week of year
|
||||
# is calculated correctly in the range from 1970 .. 2038 by brute force...
|
||||
|
||||
SEQ="seq"
|
||||
SYSTEM=`uname`
|
||||
if [ "$SYSTEM" = "Darwin" ]; then
|
||||
SEQ="jot"
|
||||
fi
|
||||
|
||||
for YEAR in {1970..2038}; do
|
||||
for MONTH in {1..12}; do
|
||||
DAYS=$(cal $MONTH $YEAR | egrep "28|29|30|31" |tail -1 |awk '{print $NF}')
|
||||
for DAY in $( $SEQ $DAYS ); do
|
||||
DATE=$YEAR-$MONTH-$DAY
|
||||
echo -n $DATE ...
|
||||
NODEVAL=$(node test_weekofyear.js $DATE)
|
||||
PHPVAL=$(php -r "echo intval(date('W', strtotime('$DATE')));")
|
||||
if [ "$NODEVAL" -ne "$PHPVAL" ]; then
|
||||
echo "MISMATCH: node: $NODEVAL vs php: $PHPVAL for date $DATE"
|
||||
else
|
||||
echo " OK"
|
||||
fi
|
||||
done
|
||||
done
|
||||
done
|
Reference in New Issue
Block a user