From 8c8e19877dd0eb6f51c1be8a99d592d2f856a9b9 Mon Sep 17 00:00:00 2001 From: Brandon Rosage Date: Fri, 25 Jan 2019 12:18:01 -0600 Subject: [PATCH] add github contribution graph --- Gemfile | 1 + Gemfile.lock | 1 + _config.yml | 5 +- _site/index.html | 589 +++++++++++++++++- _site/package-lock.json | 87 +++ _site/package.json | 1 + index.html | 18 +- node_modules/add-subtract-date/LICENSE | 21 + node_modules/add-subtract-date/README.md | 157 +++++ node_modules/add-subtract-date/lib/index.js | 49 ++ node_modules/add-subtract-date/package.json | 113 ++++ node_modules/days/LICENSE | 21 + node_modules/days/README.md | 93 +++ node_modules/days/index.js | 31 + node_modules/days/package.json | 110 ++++ node_modules/elly/LICENSE | 21 + node_modules/elly/README.md | 178 ++++++ node_modules/elly/dist/elly.min.js | 42 ++ node_modules/elly/lib/index.js | 63 ++ node_modules/elly/package.json | 91 +++ node_modules/fillo/LICENSE | 21 + node_modules/fillo/README.md | 123 ++++ node_modules/fillo/lib/index.js | 20 + node_modules/fillo/package.json | 72 +++ node_modules/formatoid/LICENSE | 21 + node_modules/formatoid/README.md | 173 +++++ node_modules/formatoid/lib/index.js | 257 ++++++++ node_modules/formatoid/package.json | 81 +++ node_modules/github-calendar-legend/LICENSE | 21 + node_modules/github-calendar-legend/README.md | 108 ++++ .../github-calendar-legend/lib/index.js | 3 + .../github-calendar-legend/package.json | 74 +++ node_modules/github-calendar-parser/LICENSE | 21 + node_modules/github-calendar-parser/README.md | 159 +++++ .../github-calendar-parser/lib/index.js | 96 +++ .../github-calendar-parser/package.json | 78 +++ node_modules/github-calendar/LICENSE | 21 + node_modules/github-calendar/README.md | 137 ++++ .../dist/github-calendar-responsive.css | 125 ++++ .../github-calendar/dist/github-calendar.css | 127 ++++ .../dist/github-calendar.min.js | 222 +++++++ node_modules/github-calendar/lib/index.js | 105 ++++ node_modules/github-calendar/package.json | 182 ++++++ node_modules/iterate-object/CONTRIBUTING.md | 66 ++ node_modules/iterate-object/DOCUMENTATION.md | 15 + node_modules/iterate-object/LICENSE | 21 + node_modules/iterate-object/README.md | 193 ++++++ node_modules/iterate-object/example/index.js | 35 ++ node_modules/iterate-object/lib/index.js | 35 ++ node_modules/iterate-object/package.json | 55 ++ node_modules/months/LICENSE | 21 + node_modules/months/README.md | 101 +++ node_modules/months/index.js | 18 + node_modules/months/package.json | 106 ++++ node_modules/parse-it/LICENSE | 21 + node_modules/parse-it/README.md | 148 +++++ node_modules/parse-it/lib/index.js | 85 +++ node_modules/parse-it/package.json | 71 +++ node_modules/regex-escape/LICENSE | 21 + node_modules/regex-escape/README.md | 135 ++++ node_modules/regex-escape/lib/index.js | 29 + node_modules/regex-escape/package.json | 80 +++ node_modules/sliced/History.md | 41 ++ node_modules/sliced/LICENSE | 22 + node_modules/sliced/README.md | 62 ++ node_modules/sliced/index.js | 33 + node_modules/sliced/package.json | 62 ++ package-lock.json | 87 +++ package.json | 1 + 69 files changed, 5490 insertions(+), 13 deletions(-) create mode 100644 node_modules/add-subtract-date/LICENSE create mode 100644 node_modules/add-subtract-date/README.md create mode 100644 node_modules/add-subtract-date/lib/index.js create mode 100644 node_modules/add-subtract-date/package.json create mode 100644 node_modules/days/LICENSE create mode 100644 node_modules/days/README.md create mode 100644 node_modules/days/index.js create mode 100644 node_modules/days/package.json create mode 100644 node_modules/elly/LICENSE create mode 100644 node_modules/elly/README.md create mode 100644 node_modules/elly/dist/elly.min.js create mode 100644 node_modules/elly/lib/index.js create mode 100644 node_modules/elly/package.json create mode 100644 node_modules/fillo/LICENSE create mode 100644 node_modules/fillo/README.md create mode 100644 node_modules/fillo/lib/index.js create mode 100644 node_modules/fillo/package.json create mode 100644 node_modules/formatoid/LICENSE create mode 100644 node_modules/formatoid/README.md create mode 100644 node_modules/formatoid/lib/index.js create mode 100644 node_modules/formatoid/package.json create mode 100644 node_modules/github-calendar-legend/LICENSE create mode 100644 node_modules/github-calendar-legend/README.md create mode 100644 node_modules/github-calendar-legend/lib/index.js create mode 100644 node_modules/github-calendar-legend/package.json create mode 100644 node_modules/github-calendar-parser/LICENSE create mode 100644 node_modules/github-calendar-parser/README.md create mode 100644 node_modules/github-calendar-parser/lib/index.js create mode 100644 node_modules/github-calendar-parser/package.json create mode 100644 node_modules/github-calendar/LICENSE create mode 100644 node_modules/github-calendar/README.md create mode 100644 node_modules/github-calendar/dist/github-calendar-responsive.css create mode 100644 node_modules/github-calendar/dist/github-calendar.css create mode 100644 node_modules/github-calendar/dist/github-calendar.min.js create mode 100644 node_modules/github-calendar/lib/index.js create mode 100644 node_modules/github-calendar/package.json create mode 100644 node_modules/iterate-object/CONTRIBUTING.md create mode 100644 node_modules/iterate-object/DOCUMENTATION.md create mode 100644 node_modules/iterate-object/LICENSE create mode 100644 node_modules/iterate-object/README.md create mode 100644 node_modules/iterate-object/example/index.js create mode 100644 node_modules/iterate-object/lib/index.js create mode 100644 node_modules/iterate-object/package.json create mode 100644 node_modules/months/LICENSE create mode 100644 node_modules/months/README.md create mode 100644 node_modules/months/index.js create mode 100644 node_modules/months/package.json create mode 100644 node_modules/parse-it/LICENSE create mode 100644 node_modules/parse-it/README.md create mode 100644 node_modules/parse-it/lib/index.js create mode 100644 node_modules/parse-it/package.json create mode 100644 node_modules/regex-escape/LICENSE create mode 100644 node_modules/regex-escape/README.md create mode 100644 node_modules/regex-escape/lib/index.js create mode 100644 node_modules/regex-escape/package.json create mode 100644 node_modules/sliced/History.md create mode 100644 node_modules/sliced/LICENSE create mode 100644 node_modules/sliced/README.md create mode 100644 node_modules/sliced/index.js create mode 100644 node_modules/sliced/package.json diff --git a/Gemfile b/Gemfile index 37f5eaa42e..5ce09753ef 100644 --- a/Gemfile +++ b/Gemfile @@ -1,2 +1,3 @@ source 'https://rubygems.org' gem 'github-pages', group: :jekyll_plugins +gem "jekyll-github-metadata" diff --git a/Gemfile.lock b/Gemfile.lock index e975d46cbe..41e58c6edf 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -245,6 +245,7 @@ PLATFORMS DEPENDENCIES github-pages + jekyll-github-metadata BUNDLED WITH 1.16.1 diff --git a/_config.yml b/_config.yml index 356c24d645..3bd4474153 100644 --- a/_config.yml +++ b/_config.yml @@ -1,5 +1,6 @@ -title: Brandon Rosage -description: description XYZ + +plugins: + - jekyll-github-metadata sass: sass_dir: node_modules diff --git a/_site/index.html b/_site/index.html index 720e8095fe..7188f68146 100644 --- a/_site/index.html +++ b/_site/index.html @@ -6,13 +6,594 @@ - -

profile-generator

-

BenEmdon

- +

+

+
+ + + + +# add-subtract-date + + [![Support me on Patreon][badge_patreon]][patreon] [![Buy me a book][badge_amazon]][amazon] [![PayPal][badge_paypal_donate]][paypal-donations] [![Ask me anything](https://img.shields.io/badge/ask%20me-anything-1abc9c.svg)](https://github.com/IonicaBizau/ama) [![Version](https://img.shields.io/npm/v/add-subtract-date.svg)](https://www.npmjs.com/package/add-subtract-date) [![Downloads](https://img.shields.io/npm/dt/add-subtract-date.svg)](https://www.npmjs.com/package/add-subtract-date) [![Get help on Codementor](https://cdn.codementor.io/badges/get_help_github.svg)](https://www.codementor.io/johnnyb?utm_source=github&utm_medium=button&utm_term=johnnyb&utm_campaign=github) + +Buy Me A Coffee + +> Add or subtract a specified time in a date object. + +## :cloud: Installation + +```sh +# Using npm +npm install --save add-subtract-date + +# Using yarn +yarn add add-subtract-date +``` + + +## :clipboard: Example + + + +```js +const addSubtractDate = require("add-subtract-date"); + +var d = new Date(1989, 11, 20); + +console.log(addSubtractDate.add(d, 2, "days")); +// => Fri Dec 22 1989 00:00:00 GMT+0200 (EET) + +console.log(addSubtractDate.subtract(d, 1, "day")); +// => Thu Dec 21 1989 00:00:00 GMT+0200 (EET) + +console.log(addSubtractDate.subtract(d, 1, "year")); +// => Wed Dec 21 1988 00:00:00 GMT+0200 (EET) + +console.log(addSubtractDate.add(d, 10, "hours")); +// => Wed Dec 21 1988 10:00:00 GMT+0200 (EET) + +console.log(addSubtractDate.add(d, 42, "minutes")); +// => Wed Dec 21 1988 10:42:00 GMT+0200 (EET) + +console.log(addSubtractDate.add(d, 7, "seconds")); +// => Wed Dec 21 1988 10:42:07 GMT+0200 (EET) + +console.log(addSubtractDate.add(d, 142, "milliseconds")); +// => Wed Dec 21 1988 10:42:07 GMT+0200 (EET) + +console.log(addSubtractDate.subtract(d, 1, "week")); +// => Wed Dec 28 1988 10:42:07 GMT+0200 (EET) +``` + + + +## :question: Get Help + +There are few ways to get help: + + 1. Please [post questions on Stack Overflow](https://stackoverflow.com/questions/ask). You can open issues with questions, as long you add a link to your Stack Overflow question. + 2. For bug reports and feature requests, open issues. :bug: + + 3. For direct and quick help, you can [use Codementor](https://www.codementor.io/johnnyb). :rocket: + + + +## :memo: Documentation + + +### `gen()` + + + + +The module exports an object containing two methods: `add` + +(goes in the future) and `subtract` (goes in the past). + +They require the following arguments: + + + - `d` (Date): The date object. + - `count` (Number): How many years/months/etc to add/subtract. + - `what` (String): What to add/subtract. Supported values are: + + - `years` + - `year` + - `months` + - `month` + - `weeks` + - `week` + - `days` + - `day` + - `hours` + - `hour` + - `minutes` + - `minute` + - `seconds` + - `second` + - `milliseconds` + - `millisecond` + + + +## :yum: How to contribute +Have an idea? Found a bug? See [how to contribute][contributing]. + + +## :sparkling_heart: Support my projects + +I open-source almost everything I can, and I try to reply to everyone needing help using these projects. Obviously, +this takes time. You can integrate and use these projects in your applications *for free*! You can even change the source code and redistribute (even resell it). + +However, if you get some profit from this or just want to encourage me to continue creating stuff, there are few ways you can do it: + + + - Starring and sharing the projects you like :rocket: + - [![Buy me a book][badge_amazon]][amazon]—I love books! I will remember you after years if you buy me one. :grin: :book: + - [![PayPal][badge_paypal]][paypal-donations]—You can make one-time donations via PayPal. I'll probably buy a ~~coffee~~ tea. :tea: + - [![Support me on Patreon][badge_patreon]][patreon]—Set up a recurring monthly donation and you will get interesting news about what I'm doing (things that I don't share with everyone). + - **Bitcoin**—You can send me bitcoins at this address (or scanning the code below): `1P9BRsmazNQcuyTxEqveUsnf5CERdq35V6` + + ![](https://i.imgur.com/z6OQI95.png) + + +Thanks! :heart: + + +## :dizzy: Where is this library used? +If you are using this library in one of your projects, add it in this list. :sparkles: + + + - [`daty`](https://github.com/IonicaBizau/daty#readme)—A tiny library to manage date objects. + - [`github-calendar`](https://github.com/IonicaBizau/github-calendar#readme)—Embed your GitHub contributions calendar anywhere. + - [`react-github-calendar-x`](https://github.com/xwl7001/react-github-calendar#readme) (by Xu Wenliang)—Embed your GitHub calendar in React App. + +## :scroll: License + +[MIT][license] © [Ionică Bizău][website] + + +[badge_patreon]: https://ionicabizau.github.io/badges/patreon.svg +[badge_amazon]: https://ionicabizau.github.io/badges/amazon.svg +[badge_paypal]: https://ionicabizau.github.io/badges/paypal.svg +[badge_paypal_donate]: https://ionicabizau.github.io/badges/paypal_donate.svg + +[patreon]: https://www.patreon.com/ionicabizau +[amazon]: http://amzn.eu/hRo9sIZ +[paypal-donations]: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RVXDDLKKLQRJW + +[license]: http://showalicense.com/?fullname=Ionic%C4%83%20Biz%C4%83u%20%3Cbizauionica%40gmail.com%3E%20(https%3A%2F%2Fionicabizau.net)&year=2015#license-mit +[website]: https://ionicabizau.net +[contributing]: /CONTRIBUTING.md +[docs]: /DOCUMENTATION.md diff --git a/node_modules/add-subtract-date/lib/index.js b/node_modules/add-subtract-date/lib/index.js new file mode 100644 index 0000000000..b22ca463fb --- /dev/null +++ b/node_modules/add-subtract-date/lib/index.js @@ -0,0 +1,49 @@ +"use strict"; + +function gen(add) { + return function _(d, count, what) { + count = add * count; + switch (what) { + case "years": + case "year": + d.setFullYear(d.getFullYear() + count); + break; + case "months": + case "month": + d.setMonth(d.getMonth() + count); + break; + case "weeks": + case "week": + return _(d, count * 7, "days"); + break; + case "days": + case "day": + d.setDate(d.getDate() + count); + break; + case "hours": + case "hour": + d.setHours(d.getHours() + count); + break; + case "minutes": + case "minute": + d.setMinutes(d.getMinutes() + count); + break; + case "seconds": + case "second": + d.setSeconds(d.getSeconds() + count); + break; + case "milliseconds": + case "millisecond": + d.setMilliseconds(d.getMilliseconds() + count); + break; + default: + throw new Error("Invalid range: " + what); + } + return d; + }; +} + +module.exports = { + add: gen(1), + subtract: gen(-1) +}; \ No newline at end of file diff --git a/node_modules/add-subtract-date/package.json b/node_modules/add-subtract-date/package.json new file mode 100644 index 0000000000..5abf57ef72 --- /dev/null +++ b/node_modules/add-subtract-date/package.json @@ -0,0 +1,113 @@ +{ + "_from": "add-subtract-date@^1.0.5", + "_id": "add-subtract-date@1.0.14", + "_inBundle": false, + "_integrity": "sha512-e070xJdKBEEdAgCJJm1nBSdGv4Y6C2LXP9PYHBUJPV/3eUkZ46bnnkzejmXmTFYyIsiouLPt26yGgsHZL7WDvg==", + "_location": "/add-subtract-date", + "_phantomChildren": {}, + "_requested": { + "type": "range", + "registry": true, + "raw": "add-subtract-date@^1.0.5", + "name": "add-subtract-date", + "escapedName": "add-subtract-date", + "rawSpec": "^1.0.5", + "saveSpec": null, + "fetchSpec": "^1.0.5" + }, + "_requiredBy": [ + "/github-calendar" + ], + "_resolved": "https://registry.npmjs.org/add-subtract-date/-/add-subtract-date-1.0.14.tgz", + "_shasum": "c2c2e707fa93c77ba3f70a010a6085eb13063d6f", + "_spec": "add-subtract-date@^1.0.5", + "_where": "/Users/brandonrosage/github/profile-generator/node_modules/github-calendar", + "author": { + "name": "Ionică Bizău", + "email": "bizauionica@gmail.com", + "url": "https://ionicabizau.net" + }, + "blah": { + "documentation": [ + { + "p": [ + [ + "The module exports an object containing two methods: `add`", + "(goes in the future) and `subtract` (goes in the past).", + "They require the following arguments:" + ] + ] + }, + { + "ul": [ + "`d` (Date): The date object.", + "`count` (Number): How many years/months/etc to add/subtract.", + [ + "`what` (String): What to add/subtract. Supported values are:", + { + "ul": [ + "`years`", + "`year`", + "`months`", + "`month`", + "`weeks`", + "`week`", + "`days`", + "`day`", + "`hours`", + "`hour`", + "`minutes`", + "`minute`", + "`seconds`", + "`second`", + "`milliseconds`", + "`millisecond`" + ] + } + ] + ] + } + ] + }, + "bugs": { + "url": "https://github.com/IonicaBizau/add-subtract-date/issues" + }, + "bundleDependencies": false, + "deprecated": false, + "description": "Add or subtract a specified time in a date object.", + "directories": { + "example": "example" + }, + "files": [ + "bin/", + "app/", + "lib/", + "dist/", + "src/", + "scripts/", + "resources/", + "menu/", + "cli.js", + "index.js", + "bloggify.js", + "bloggify.json", + "bloggify/" + ], + "homepage": "https://github.com/IonicaBizau/add-subtract-date#readme", + "keywords": [ + "date", + "add", + "subtract" + ], + "license": "MIT", + "main": "lib/index.js", + "name": "add-subtract-date", + "repository": { + "type": "git", + "url": "git+ssh://git@github.com/IonicaBizau/add-subtract-date.git" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "version": "1.0.14" +} diff --git a/node_modules/days/LICENSE b/node_modules/days/LICENSE new file mode 100644 index 0000000000..3f2eca18f1 --- /dev/null +++ b/node_modules/days/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014-2017, Jon Schlinkert. + +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. diff --git a/node_modules/days/README.md b/node_modules/days/README.md new file mode 100644 index 0000000000..d2c0edcb8c --- /dev/null +++ b/node_modules/days/README.md @@ -0,0 +1,93 @@ +# days [![NPM version](https://img.shields.io/npm/v/days.svg?style=flat)](https://www.npmjs.com/package/days) [![NPM monthly downloads](https://img.shields.io/npm/dm/days.svg?style=flat)](https://npmjs.org/package/days) [![NPM total downloads](https://img.shields.io/npm/dt/days.svg?style=flat)](https://npmjs.org/package/days) + +> Days of the week. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save days +``` + +## Usage + +```js +var days = require('days'); + +console.log(days); +//=> ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'] + +console.log(days.abbr) +//=> ['Sun', 'Mon', 'Tue', 'Wed', 'Thur', 'Fri', 'Sat'] + +console.log(days.short) +//=> ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'] +``` + +## Multi-language support + +* English +* French + +### Usage + +```js +var days = require('days'); + +console.log(days.en); +//=> ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'] + +console.log(days.fr); +//=> ['dimanche', 'lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi'] + +``` + +## About + +### Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +### Contributors + +| **Commits** | **Contributor** | +| --- | --- | +| 16 | [jonschlinkert](https://github.com/jonschlinkert) | +| 4 | [danielsalgadop](https://github.com/danielsalgadop) | +| 2 | [Rawnly](https://github.com/Rawnly) | +| 2 | [Sebastien-Meiffren](https://github.com/Sebastien-Meiffren) | + +### Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +### Running tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +### Author + +**Jon Schlinkert** + +* [github/jonschlinkert](https://github.com/jonschlinkert) +* [twitter/jonschlinkert](https://twitter.com/jonschlinkert) + +### License + +Copyright © 2017, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.6.0, on June 30, 2017._ \ No newline at end of file diff --git a/node_modules/days/index.js b/node_modules/days/index.js new file mode 100644 index 0000000000..4da859fff0 --- /dev/null +++ b/node_modules/days/index.js @@ -0,0 +1,31 @@ +/*! + * days + * + * Copyright (c) 2014-2017, Jon Schlinkert. + * Released under the MIT License. + */ + +// English +module.exports.en = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']; +module.exports.en.abbr = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']; +module.exports.en.short = ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa']; + +// French translation +module.exports.fr = ['dimanche', 'lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi']; +module.exports.fr.abbr = ['dim', 'lun', 'mar', 'mer', 'jeu', 'ven', 'sam']; +module.exports.fr.short = ['di', 'lu', 'ma', 'me', 'je', 've', 'sa']; + +// Spanish translation +module.exports.es = ['domingo', 'lunes', 'martes', 'miercoles', 'jueves', 'viernes', 'sabado']; +module.exports.es.abbr = ['dom', 'lun', 'mar', 'mir', 'jue', 'vie', 'sab']; +module.exports.es.short = ['do', 'lu', 'ma', 'mi', 'ju', 'vi', 'sa']; + +// Italian translation +module.exports.it = ['Domenica', 'Lunedi', 'Martedi', 'Mercoledi', 'Giovedi', 'Venerdi', 'Sabato']; +module.exports.it.abbr = ['Dom', 'Lun', 'Mar', 'Mer', 'Gio', 'Ven', 'Sab']; +module.exports.it.short = ['D', 'L', 'Ma', 'Me', 'G', 'V', 'S']; + +// In order not to break compatibility +module.exports = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']; +module.exports.abbr = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']; +module.exports.short = ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa']; diff --git a/node_modules/days/package.json b/node_modules/days/package.json new file mode 100644 index 0000000000..842cb9a18e --- /dev/null +++ b/node_modules/days/package.json @@ -0,0 +1,110 @@ +{ + "_from": "days@^1.0.1", + "_id": "days@1.1.1", + "_inBundle": false, + "_integrity": "sha512-vzeIwVsEIyA35GH4+mPd4hjVDNI87wYANyZFs0BHjBr5kIBH5zEl7LfD6Wr4SFZca4D3CU9IH1w4DuZLlXzKRw==", + "_location": "/days", + "_phantomChildren": {}, + "_requested": { + "type": "range", + "registry": true, + "raw": "days@^1.0.1", + "name": "days", + "escapedName": "days", + "rawSpec": "^1.0.1", + "saveSpec": null, + "fetchSpec": "^1.0.1" + }, + "_requiredBy": [ + "/formatoid" + ], + "_resolved": "https://registry.npmjs.org/days/-/days-1.1.1.tgz", + "_shasum": "b039d1e5ad5335ca689401855546f02d4cfcb362", + "_spec": "days@^1.0.1", + "_where": "/Users/brandonrosage/github/profile-generator/node_modules/formatoid", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/days/issues" + }, + "bundleDependencies": false, + "contributors": [ + { + "name": "Daniel Salgado Población", + "url": "http://danielsalgado.com/wordpress35" + }, + { + "name": "Federico Vitale", + "url": "https://rawnly.com" + }, + { + "name": "Jon Schlinkert", + "url": "http://twitter.com/jonschlinkert" + }, + { + "name": "Sebastien MEIFFREN", + "url": "http://www.commande-online.fr" + } + ], + "deprecated": false, + "description": "Days of the week.", + "devDependencies": { + "gulp-format-md": "^0.1.11" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/days", + "keywords": [ + "calendar", + "date", + "day", + "days", + "duration", + "friday", + "monday", + "now", + "saturday", + "sunday", + "thursday", + "time", + "timespan", + "tuesday", + "wednesday", + "week", + "weekday" + ], + "license": "MIT", + "main": "index.js", + "name": "days", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/days.git" + }, + "verb": { + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "lint": { + "reflinks": true + }, + "related": { + "list": [] + }, + "reflinks": [ + "verb", + "verb-generate-readme" + ] + }, + "version": "1.1.1" +} diff --git a/node_modules/elly/LICENSE b/node_modules/elly/LICENSE new file mode 100644 index 0000000000..d21973eddb --- /dev/null +++ b/node_modules/elly/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015-19 Ionică Bizău (https://ionicabizau.net) + +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. diff --git a/node_modules/elly/README.md b/node_modules/elly/README.md new file mode 100644 index 0000000000..639c1dd616 --- /dev/null +++ b/node_modules/elly/README.md @@ -0,0 +1,178 @@ + + + +[![elly](http://i.imgur.com/hQjyLBz.png)](#) + +# elly + + [![Support me on Patreon][badge_patreon]][patreon] [![Buy me a book][badge_amazon]][amazon] [![PayPal][badge_paypal_donate]][paypal-donations] [![Ask me anything](https://img.shields.io/badge/ask%20me-anything-1abc9c.svg)](https://github.com/IonicaBizau/ama) [![Version](https://img.shields.io/npm/v/elly.svg)](https://www.npmjs.com/package/elly) [![Downloads](https://img.shields.io/npm/dt/elly.svg)](https://www.npmjs.com/package/elly) [![Get help on Codementor](https://cdn.codementor.io/badges/get_help_github.svg)](https://www.codementor.io/johnnyb?utm_source=github&utm_medium=button&utm_term=johnnyb&utm_campaign=github) + +Buy Me A Coffee + +> A tiny library for creating and selecting DOM elements. + +## Is this a jQuery alternative? + + +Well, in many cases yes. *elly* is a tiny wrapper around the `querySelector`, `querySelectorAll` and `document.createElement`, so, it basically can select and create DOM elements. + + +## :cloud: Installation + + +Check out the [`dist`](/dist) directory to download the needed files and include them on your page. + +If you're using this module in a CommonJS environment, you can install it using `npm` or `yarn` and `require` it: + +```sh +# Using npm +npm install --save elly + +# Using yarn +yarn add elly +``` + + +## :clipboard: Example + + + +```js + + + + + + Elly Example + + +
    +
  • 1
  • +
  • 2
  • +
  • 3
  • +
+ + + +``` + + + +## :question: Get Help + +There are few ways to get help: + + 1. Please [post questions on Stack Overflow](https://stackoverflow.com/questions/ask). You can open issues with questions, as long you add a link to your Stack Overflow question. + 2. For bug reports and feature requests, open issues. :bug: + + 3. For direct and quick help, you can [use Codementor](https://www.codementor.io/johnnyb). :rocket: + + + +## :memo: Documentation + + +### `elly(input, contextOrAttributes)` +Selects the DOM elements based on the provided selector. If there is no +commonjs/module environment, the `$` global variable will be created. + +#### Params + +- **String|HTMLElement** `input`: The element selector (e.g. `'#my-id > .my-class'`), the element tag you want to create +(e.g. `'
    '`) or the HTML element (will be returned by the function). +- **Object|HTMLElement** `contextOrAttributes`: + +#### Return +- **HTMLElement** The HTMLElement that was provided or selected. + +### `elly.$$(selector, context)` +Selects multiple elements. Note that if there is no commonjs/module environment, you will access this function using `$.$$`. + +#### Params + +- **String** `selector`: The DOM query selector. +- **HTMLElement** `context`: The element context/container. Defaults to `document`. + +#### Return +- **Array** The array of elements. + + + +## :yum: How to contribute +Have an idea? Found a bug? See [how to contribute][contributing]. + + +## :sparkling_heart: Support my projects + +I open-source almost everything I can, and I try to reply to everyone needing help using these projects. Obviously, +this takes time. You can integrate and use these projects in your applications *for free*! You can even change the source code and redistribute (even resell it). + +However, if you get some profit from this or just want to encourage me to continue creating stuff, there are few ways you can do it: + + + - Starring and sharing the projects you like :rocket: + - [![Buy me a book][badge_amazon]][amazon]—I love books! I will remember you after years if you buy me one. :grin: :book: + - [![PayPal][badge_paypal]][paypal-donations]—You can make one-time donations via PayPal. I'll probably buy a ~~coffee~~ tea. :tea: + - [![Support me on Patreon][badge_patreon]][patreon]—Set up a recurring monthly donation and you will get interesting news about what I'm doing (things that I don't share with everyone). + - **Bitcoin**—You can send me bitcoins at this address (or scanning the code below): `1P9BRsmazNQcuyTxEqveUsnf5CERdq35V6` + + ![](https://i.imgur.com/z6OQI95.png) + + +Thanks! :heart: + + +## :dizzy: Where is this library used? +If you are using this library in one of your projects, add it in this list. :sparkles: + + + - [`bloggify-paypal-donate-popup`](https://github.com/Bloggify/bloggify-paypal-donate-popup#readme)—A plugin to display a PayPal donation popup on the page. + - [`bloggify-social`](https://github.com/Bloggify/social) (by Bloggify)—A Bloggify plugin for sharing articles on social networks. + - [`dom-repeater`](https://github.com/IonicaBizau/dom-repeater#readme)—Render lists in DOM easily. + - [`github-calendar`](https://github.com/IonicaBizau/github-calendar#readme)—Embed your GitHub contributions calendar anywhere. + - [`mini-lightbox`](https://github.com/ionicabizau/mini-lightbox)—Minimalist image lightbox + - [`react-github-calendar-x`](https://github.com/xwl7001/react-github-calendar#readme) (by Xu Wenliang)—Embed your GitHub calendar in React App. + +## :scroll: License + +[MIT][license] © [Ionică Bizău][website] + + +[badge_patreon]: https://ionicabizau.github.io/badges/patreon.svg +[badge_amazon]: https://ionicabizau.github.io/badges/amazon.svg +[badge_paypal]: https://ionicabizau.github.io/badges/paypal.svg +[badge_paypal_donate]: https://ionicabizau.github.io/badges/paypal_donate.svg + +[patreon]: https://www.patreon.com/ionicabizau +[amazon]: http://amzn.eu/hRo9sIZ +[paypal-donations]: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RVXDDLKKLQRJW + +[license]: http://showalicense.com/?fullname=Ionic%C4%83%20Biz%C4%83u%20%3Cbizauionica%40gmail.com%3E%20(https%3A%2F%2Fionicabizau.net)&year=2015#license-mit +[website]: https://ionicabizau.net +[contributing]: /CONTRIBUTING.md +[docs]: /DOCUMENTATION.md diff --git a/node_modules/elly/dist/elly.min.js b/node_modules/elly/dist/elly.min.js new file mode 100644 index 0000000000..493a1a2895 --- /dev/null +++ b/node_modules/elly/dist/elly.min.js @@ -0,0 +1,42 @@ +"use strict"; + +var _typeof2 = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + +var _typeof = "function" == typeof Symbol && "symbol" == _typeof2(Symbol.iterator) ? function (e) { + return typeof e === "undefined" ? "undefined" : _typeof2(e); +} : function (e) { + return e && "function" == typeof Symbol && e.constructor === Symbol ? "symbol" : typeof e === "undefined" ? "undefined" : _typeof2(e); +};!function (e) { + if ("object" === ("undefined" == typeof exports ? "undefined" : _typeof(exports)) && "undefined" != typeof module) module.exports = e();else if ("function" == typeof define && define.amd) define([], e);else { + var t;t = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : this, t.$ = e(); + } +}(function () { + return function e(t, n, o) { + function r(i, u) { + if (!n[i]) { + if (!t[i]) { + var c = "function" == typeof require && require;if (!u && c) return c(i, !0);if (f) return f(i, !0);var d = new Error("Cannot find module '" + i + "'");throw d.code = "MODULE_NOT_FOUND", d; + }var l = n[i] = { exports: {} };t[i][0].call(l.exports, function (e) { + var n = t[i][1][e];return r(n ? n : e); + }, l, l.exports, e, t, n, o); + }return n[i].exports; + }for (var f = "function" == typeof require && require, i = 0; i < o.length; i++) { + r(o[i]); + }return r; + }({ 1: [function (e, t) { + function n(e, t) { + return "string" == typeof e ? "<" === e.charAt(0) ? (e = document.createElement(e.slice(1, -1)), o(t || {}, function (t, n) { + switch (n) {case "text": + return void (e.textContent = t);case "html": + return void (e.innerHTML = t);}e.setAttribute(n, t); + }), e) : (t = t || document, t.querySelector(e)) : e; + }var o = e("iterate-object");n.$$ = function (e, t) { + return t = t || document, t.querySelectorAll(e); + }, t.exports = n; + }, { "iterate-object": 2 }], 2: [function (e, t) { + function n(e, t) { + var n = 0, + o = [];if (Array.isArray(e)) for (; n < e.length && t(e[n], n, e) !== !1; ++n) {} else if ("object" === ("undefined" == typeof e ? "undefined" : _typeof(e)) && null !== e) for (o = Object.keys(e); n < o.length && t(e[o[n]], o[n], e) !== !1; ++n) {} + }t.exports = n; + }, {}] }, {}, [1])(1); +}); \ No newline at end of file diff --git a/node_modules/elly/lib/index.js b/node_modules/elly/lib/index.js new file mode 100644 index 0000000000..87f697751d --- /dev/null +++ b/node_modules/elly/lib/index.js @@ -0,0 +1,63 @@ +"use strict"; + +var iterateObj = require("iterate-object"), + sliced = require("sliced"); + +/** + * elly + * Selects the DOM elements based on the provided selector. If there is no + * commonjs/module environment, the `$` global variable will be created. + * + * @name elly + * @function + * @param {String|HTMLElement} input The element selector (e.g. + * `'#my-id > .my-class'`), the element tag you want to create + * (e.g. `'
      '`) or the HTML element (will be returned by the function). + * @param {Object|HTMLElement} contextOrAttributes + * @returns {HTMLElement} The HTMLElement that was provided or selected. + */ +function $(input, contextOrAttributes) { + if (typeof input === "string") { + if (input.charAt(0) === "<") { + input = document.createElement(input.slice(1, -1)); + iterateObj(contextOrAttributes || {}, function (value, name) { + + switch (name) { + case "text": + input.textContent = value; + return; + case "html": + input.innerHTML = value; + return; + } + + input.setAttribute(name, value); + }); + return input; + } else { + contextOrAttributes = contextOrAttributes || document; + return contextOrAttributes.querySelector(input); + } + } + return input; +}; + +/** + * elly.$$ + * Selects multiple elements. Note that if there is no commonjs/module environment, you will access this function using `$.$$`. + * + * @name elly.$$ + * @function + * @param {String} selector The DOM query selector. + * @param {HTMLElement} context The element context/container. Defaults to `document`. + * @returns {Array} The array of elements. + */ +$.$$ = function (selector, context) { + if (typeof selector === "string") { + context = context || document; + return sliced(context.querySelectorAll(selector)); + } + return [selector]; +}; + +module.exports = $; \ No newline at end of file diff --git a/node_modules/elly/package.json b/node_modules/elly/package.json new file mode 100644 index 0000000000..f616d7091b --- /dev/null +++ b/node_modules/elly/package.json @@ -0,0 +1,91 @@ +{ + "_from": "elly@^1.0.0", + "_id": "elly@1.1.10", + "_inBundle": false, + "_integrity": "sha512-CXlhCGIzVjX1SLPttmq2fo7wsOlfPMsxqf8rIbpFSkNWC+U8Nuldo6rG6oeFiBY9+8e7YcizwDnyK72APWH+dQ==", + "_location": "/elly", + "_phantomChildren": {}, + "_requested": { + "type": "range", + "registry": true, + "raw": "elly@^1.0.0", + "name": "elly", + "escapedName": "elly", + "rawSpec": "^1.0.0", + "saveSpec": null, + "fetchSpec": "^1.0.0" + }, + "_requiredBy": [ + "/github-calendar" + ], + "_resolved": "https://registry.npmjs.org/elly/-/elly-1.1.10.tgz", + "_shasum": "15f3e43c81327ea927802a09508e60c712b81c9b", + "_spec": "elly@^1.0.0", + "_where": "/Users/brandonrosage/github/profile-generator/node_modules/github-calendar", + "author": { + "name": "Ionică Bizău", + "email": "bizauionica@gmail.com", + "url": "https://ionicabizau.net" + }, + "blah": { + "description": [ + { + "h2": "Is this a jQuery alternative?" + }, + { + "p": "Well, in many cases yes. *elly* is a tiny wrapper around the `querySelector`, `querySelectorAll` and `document.createElement`, so, it basically can select and create DOM elements." + } + ], + "examplePath": "index.html", + "h_img": "http://i.imgur.com/hQjyLBz.png" + }, + "bugs": { + "url": "https://github.com/IonicaBizau/elly/issues" + }, + "bundleDependencies": false, + "dependencies": { + "iterate-object": "^1.3.2", + "sliced": "^1.0.1" + }, + "deprecated": false, + "description": "A tiny library for creating and selecting DOM elements.", + "files": [ + "bin/", + "app/", + "lib/", + "dist/", + "src/", + "scripts/", + "resources/", + "menu/", + "cli.js", + "index.js", + "bloggify.js", + "bloggify.json", + "bloggify/" + ], + "homepage": "https://github.com/IonicaBizau/elly#readme", + "keywords": [ + "elly", + "a", + "tiny", + "library", + "for", + "creating", + "and", + "selecting", + "dom", + "elements" + ], + "license": "MIT", + "main": "lib/index.js", + "name": "elly", + "repository": { + "type": "git", + "url": "git+ssh://git@github.com/IonicaBizau/elly.git" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "version": "1.1.10" +} diff --git a/node_modules/fillo/LICENSE b/node_modules/fillo/LICENSE new file mode 100644 index 0000000000..d21973eddb --- /dev/null +++ b/node_modules/fillo/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015-19 Ionică Bizău (https://ionicabizau.net) + +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. diff --git a/node_modules/fillo/README.md b/node_modules/fillo/README.md new file mode 100644 index 0000000000..c571bca2b0 --- /dev/null +++ b/node_modules/fillo/README.md @@ -0,0 +1,123 @@ + + + +# fillo + + [![Support me on Patreon][badge_patreon]][patreon] [![Buy me a book][badge_amazon]][amazon] [![PayPal][badge_paypal_donate]][paypal-donations] [![Ask me anything](https://img.shields.io/badge/ask%20me-anything-1abc9c.svg)](https://github.com/IonicaBizau/ama) [![Version](https://img.shields.io/npm/v/fillo.svg)](https://www.npmjs.com/package/fillo) [![Downloads](https://img.shields.io/npm/dt/fillo.svg)](https://www.npmjs.com/package/fillo) [![Get help on Codementor](https://cdn.codementor.io/badges/get_help_github.svg)](https://www.codementor.io/johnnyb?utm_source=github&utm_medium=button&utm_term=johnnyb&utm_campaign=github) + +Buy Me A Coffee + +> Fill a value with characters to the given size. + +## :cloud: Installation + +```sh +# Using npm +npm install --save fillo + +# Using yarn +yarn add fillo +``` + + +## :clipboard: Example + + + +```js +const fillo = require("fillo"); + +// Fill with with zeros (default behavior) +console.log(fillo(7)); +// => "07" + +console.log(fillo(142)); +// => "142" + +console.log(fillo(42, 5)); +// => "00042" + +console.log(fillo(42, 4, "#")); +// => "##42" +``` + + + +## :question: Get Help + +There are few ways to get help: + + 1. Please [post questions on Stack Overflow](https://stackoverflow.com/questions/ask). You can open issues with questions, as long you add a link to your Stack Overflow question. + 2. For bug reports and feature requests, open issues. :bug: + + 3. For direct and quick help, you can [use Codementor](https://www.codementor.io/johnnyb). :rocket: + + + +## :memo: Documentation + + +### `fillo(what, size, ch)` +Fill additional characters at the beginning of the string. + +#### Params + +- **String|Number** `what`: The input snippet (number, string or anything that can be stringified). +- **Number** `size`: The width of the final string (default: `2`). +- **String** `ch`: The character to repeat (default: `"0"`). + +#### Return +- **String** The input value with filled characters. + + + +## :yum: How to contribute +Have an idea? Found a bug? See [how to contribute][contributing]. + + +## :sparkling_heart: Support my projects + +I open-source almost everything I can, and I try to reply to everyone needing help using these projects. Obviously, +this takes time. You can integrate and use these projects in your applications *for free*! You can even change the source code and redistribute (even resell it). + +However, if you get some profit from this or just want to encourage me to continue creating stuff, there are few ways you can do it: + + + - Starring and sharing the projects you like :rocket: + - [![Buy me a book][badge_amazon]][amazon]—I love books! I will remember you after years if you buy me one. :grin: :book: + - [![PayPal][badge_paypal]][paypal-donations]—You can make one-time donations via PayPal. I'll probably buy a ~~coffee~~ tea. :tea: + - [![Support me on Patreon][badge_patreon]][patreon]—Set up a recurring monthly donation and you will get interesting news about what I'm doing (things that I don't share with everyone). + - **Bitcoin**—You can send me bitcoins at this address (or scanning the code below): `1P9BRsmazNQcuyTxEqveUsnf5CERdq35V6` + + ![](https://i.imgur.com/z6OQI95.png) + + +Thanks! :heart: + + +## :dizzy: Where is this library used? +If you are using this library in one of your projects, add it in this list. :sparkles: + + + - [`flight-tracker`](https://github.com/IonicaBizau/flight-tracker#readme)—A flight tracker in your command line. + - [`formatoid`](https://github.com/IonicaBizau/formatoid#readme)—Tiny and fast module for formatting date objects. + - [`timer-app`](https://github.com/IonicaBizau/timer-app#readme)—A simple timer application. + +## :scroll: License + +[MIT][license] © [Ionică Bizău][website] + + +[badge_patreon]: https://ionicabizau.github.io/badges/patreon.svg +[badge_amazon]: https://ionicabizau.github.io/badges/amazon.svg +[badge_paypal]: https://ionicabizau.github.io/badges/paypal.svg +[badge_paypal_donate]: https://ionicabizau.github.io/badges/paypal_donate.svg + +[patreon]: https://www.patreon.com/ionicabizau +[amazon]: http://amzn.eu/hRo9sIZ +[paypal-donations]: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RVXDDLKKLQRJW + +[license]: http://showalicense.com/?fullname=Ionic%C4%83%20Biz%C4%83u%20%3Cbizauionica%40gmail.com%3E%20(https%3A%2F%2Fionicabizau.net)&year=2015#license-mit +[website]: https://ionicabizau.net +[contributing]: /CONTRIBUTING.md +[docs]: /DOCUMENTATION.md diff --git a/node_modules/fillo/lib/index.js b/node_modules/fillo/lib/index.js new file mode 100644 index 0000000000..a902ee98b6 --- /dev/null +++ b/node_modules/fillo/lib/index.js @@ -0,0 +1,20 @@ +"use strict"; + +/** + * fillo + * Fill additional characters at the beginning of the string. + * + * @name fillo + * @function + * @param {String|Number} what The input snippet (number, string or anything that can be stringified). + * @param {Number} size The width of the final string (default: `2`). + * @param {String} ch The character to repeat (default: `"0"`). + * @return {String} The input value with filled characters. + */ +module.exports = function fillo(what, size, ch) { + size = size || 2; + ch = ch || "0"; + what = what.toString(); + var howMany = size - what.length; + return (howMany <= 0 ? "" : ch.repeat(howMany)) + what; +}; \ No newline at end of file diff --git a/node_modules/fillo/package.json b/node_modules/fillo/package.json new file mode 100644 index 0000000000..50e83cacf7 --- /dev/null +++ b/node_modules/fillo/package.json @@ -0,0 +1,72 @@ +{ + "_from": "fillo@^1.0.0", + "_id": "fillo@1.0.12", + "_inBundle": false, + "_integrity": "sha512-WjV09RN7NEp1EazSNKJVZCVHeWYj4MNyb4HX1BAyrW4j0OW2UPJukP4SUkJt9Nj7gWgyD6avK0mH5bjwOZFViw==", + "_location": "/fillo", + "_phantomChildren": {}, + "_requested": { + "type": "range", + "registry": true, + "raw": "fillo@^1.0.0", + "name": "fillo", + "escapedName": "fillo", + "rawSpec": "^1.0.0", + "saveSpec": null, + "fetchSpec": "^1.0.0" + }, + "_requiredBy": [ + "/formatoid" + ], + "_resolved": "https://registry.npmjs.org/fillo/-/fillo-1.0.12.tgz", + "_shasum": "27a0f2793fcbb08dbd6ddb6568deb53896511aea", + "_spec": "fillo@^1.0.0", + "_where": "/Users/brandonrosage/github/profile-generator/node_modules/formatoid", + "author": { + "name": "Ionică Bizău", + "email": "bizauionica@gmail.com", + "url": "https://ionicabizau.net" + }, + "bugs": { + "url": "https://github.com/IonicaBizau/fillo/issues" + }, + "bundleDependencies": false, + "deprecated": false, + "description": "Fill a value with characters to the given size.", + "directories": { + "example": "example" + }, + "files": [ + "bin/", + "app/", + "lib/", + "dist/", + "src/", + "scripts/", + "resources/", + "menu/", + "cli.js", + "index.js", + "bloggify.js", + "bloggify.json", + "bloggify/" + ], + "homepage": "https://github.com/IonicaBizau/fillo#readme", + "keywords": [ + "fill", + "pad", + "zero", + "chars" + ], + "license": "MIT", + "main": "lib/index.js", + "name": "fillo", + "repository": { + "type": "git", + "url": "git+ssh://git@github.com/IonicaBizau/fillo.git" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "version": "1.0.12" +} diff --git a/node_modules/formatoid/LICENSE b/node_modules/formatoid/LICENSE new file mode 100644 index 0000000000..d21973eddb --- /dev/null +++ b/node_modules/formatoid/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015-19 Ionică Bizău (https://ionicabizau.net) + +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. diff --git a/node_modules/formatoid/README.md b/node_modules/formatoid/README.md new file mode 100644 index 0000000000..6a35c630a4 --- /dev/null +++ b/node_modules/formatoid/README.md @@ -0,0 +1,173 @@ + + + +# formatoid + + [![Support me on Patreon][badge_patreon]][patreon] [![Buy me a book][badge_amazon]][amazon] [![PayPal][badge_paypal_donate]][paypal-donations] [![Ask me anything](https://img.shields.io/badge/ask%20me-anything-1abc9c.svg)](https://github.com/IonicaBizau/ama) [![Version](https://img.shields.io/npm/v/formatoid.svg)](https://www.npmjs.com/package/formatoid) [![Downloads](https://img.shields.io/npm/dt/formatoid.svg)](https://www.npmjs.com/package/formatoid) [![Get help on Codementor](https://cdn.codementor.io/badges/get_help_github.svg)](https://www.codementor.io/johnnyb?utm_source=github&utm_medium=button&utm_term=johnnyb&utm_campaign=github) + +Buy Me A Coffee + +> Tiny and fast module for formatting date objects. + +## :cloud: Installation + +```sh +# Using npm +npm install --save formatoid + +# Using yarn +yarn add formatoid +``` + + +## :clipboard: Example + + + +```js +const formatoid = require("formatoid"); + +var d = new Date(1989, 11, 21); + +console.log(formatoid(d, "MM/DD/YYYY, h:mm")); +// => 12/20/1989, 12:00 + +console.log(formatoid(d, "MMMM D, YYYY")); +// => December 20, 1989 + +console.log(formatoid(d, "dddd, MMMM, D, YYYY h:m A")); +// => Wednesday, December, 20, 1989 12:0 AM + +console.log(formatoid(d, "YYYYMMDDT0HHMMSSZ")); +// => 19891221T0001200+02:00 + +d._useUTC = true; +console.log(formatoid(d, "dddd, MMMM, D, YYYY h:m A")); +// => 19891221T0001200+02:00 +``` + + + +## :question: Get Help + +There are few ways to get help: + + 1. Please [post questions on Stack Overflow](https://stackoverflow.com/questions/ask). You can open issues with questions, as long you add a link to your Stack Overflow question. + 2. For bug reports and feature requests, open issues. :bug: + + 3. For direct and quick help, you can [use Codementor](https://www.codementor.io/johnnyb). :rocket: + + + +## :memo: Documentation + + +### `formatoid(i, f)` +Formats the date into a given format. + +Usable format fields: + + - **Years** + - `YYYY` (e.g. `"2015"`) + - `YY` (e.g. `"15"`) + - **Months** + - `MMMM` (e.g. `"January"`) + - `MMM` (e.g. `"Jan"`) + - `MM` (e.g. `"01"`) + - `M` (e.g. `"1"`) + - **Days** + - `dddd` (e.g. `"Sunday"`) + - `ddd` (e.g. `"Sun"`) + - `dd` (e.g. `"Su"`) + - `d` (e.g. `"Su"`) + - **Dates** + - `DD` (e.g. `"07"`) + - `D` (e.g. `"7"`) + - **AM/PM** + - `A` (e.g. `"AM"`) + - `a` (e.g. `"pm"`) + - **Hours** + - `hh` (e.g. `"07"`)–12 hour format + - `h` (e.g. `"7"`) + - `HH` (e.g. `"07"`)–24 hour format + - `H` (e.g. `"7"`) + - **Minutes** + - `mm` (e.g. `"07"`) + - `m` (e.g. `"7"`) + - **Seconds** + - `ss` (e.g. `"07"`) + - `s` (e.g. `"7"`) + - **Fractional seconds** + - `S` (e.g. `0 1 2 3 ... 9`) + - `SS` (e.g. `00 01 02 ... 98 99`) + - `SS` (e.g. `000 001 002 ... 998 999`) + - **Timezones** + - `Z` (e.g. `-07:00 -06:00 ... +06:00 +07:00`) + - `ZZ` (e.g. `-0700 -0600 ... +0600 +0700`) + +#### Params + +- **Date** `i`: The date object. +- **String** `f`: The date format. + +#### Return +- **String** The formatted date (as string). + + + +## :yum: How to contribute +Have an idea? Found a bug? See [how to contribute][contributing]. + + +## :sparkling_heart: Support my projects + +I open-source almost everything I can, and I try to reply to everyone needing help using these projects. Obviously, +this takes time. You can integrate and use these projects in your applications *for free*! You can even change the source code and redistribute (even resell it). + +However, if you get some profit from this or just want to encourage me to continue creating stuff, there are few ways you can do it: + + + - Starring and sharing the projects you like :rocket: + - [![Buy me a book][badge_amazon]][amazon]—I love books! I will remember you after years if you buy me one. :grin: :book: + - [![PayPal][badge_paypal]][paypal-donations]—You can make one-time donations via PayPal. I'll probably buy a ~~coffee~~ tea. :tea: + - [![Support me on Patreon][badge_patreon]][patreon]—Set up a recurring monthly donation and you will get interesting news about what I'm doing (things that I don't share with everyone). + - **Bitcoin**—You can send me bitcoins at this address (or scanning the code below): `1P9BRsmazNQcuyTxEqveUsnf5CERdq35V6` + + ![](https://i.imgur.com/z6OQI95.png) + + +Thanks! :heart: + + +## :dizzy: Where is this library used? +If you are using this library in one of your projects, add it in this list. :sparkles: + + + - [`daty`](https://github.com/IonicaBizau/daty#readme)—A tiny library to manage date objects. + - [`github-calendar`](https://github.com/IonicaBizau/github-calendar#readme)—Embed your GitHub contributions calendar anywhere. + - [`react-github-calendar-x`](https://github.com/xwl7001/react-github-calendar#readme) (by Xu Wenliang)—Embed your GitHub calendar in React App. + +## :sparkles: Related + + - [`add-subtract-date`](https://github.com/IonicaBizau/add-subtract-date#readme)—Add or subtract a specified time in a date object. + + + +## :scroll: License + +[MIT][license] © [Ionică Bizău][website] + + +[badge_patreon]: https://ionicabizau.github.io/badges/patreon.svg +[badge_amazon]: https://ionicabizau.github.io/badges/amazon.svg +[badge_paypal]: https://ionicabizau.github.io/badges/paypal.svg +[badge_paypal_donate]: https://ionicabizau.github.io/badges/paypal_donate.svg + +[patreon]: https://www.patreon.com/ionicabizau +[amazon]: http://amzn.eu/hRo9sIZ +[paypal-donations]: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RVXDDLKKLQRJW + +[license]: http://showalicense.com/?fullname=Ionic%C4%83%20Biz%C4%83u%20%3Cbizauionica%40gmail.com%3E%20(https%3A%2F%2Fionicabizau.net)&year=2015#license-mit +[website]: https://ionicabizau.net +[contributing]: /CONTRIBUTING.md +[docs]: /DOCUMENTATION.md diff --git a/node_modules/formatoid/lib/index.js b/node_modules/formatoid/lib/index.js new file mode 100644 index 0000000000..9ce3103fa6 --- /dev/null +++ b/node_modules/formatoid/lib/index.js @@ -0,0 +1,257 @@ +"use strict"; + +var months = require("months"), + days = require("days"), + fillo = require("fillo"), + ParseIt = require("parse-it").Parser; + +var rules = { + // Years + /// 2015 + YYYY: function YYYY(i, utc) { + if (utc) { + return i.getUTCFullYear(); + } + return i.getFullYear(); + } + + // 15 + , + YY: function YY(i, utc) { + return rules.YYYY(i, utc) % 100; + } + + // Months + // January + , + MMMM: function MMMM(i, utc) { + if (utc) { + return months[i.getUTCMonth()]; + } + return months[i.getMonth()]; + } + + // Jan + , + MMM: function MMM(i, utc) { + if (utc) { + return months.abbr[i.getUTCMonth()]; + } + return months.abbr[i.getMonth()]; + } + + // 01 + , + MM: function MM(i, utc) { + if (utc) { + return fillo(i.getUTCMonth() + 1); + } + return fillo(i.getMonth() + 1); + } + + // 1 + , + M: function M(i, utc) { + if (utc) { + return i.getUTCMonth() + 1; + } + return i.getMonth() + 1; + } + + // Days + // Sunday + , + dddd: function dddd(i, utc) { + return days[rules.d(i, utc)]; + } + + // Sun + , + ddd: function ddd(i, utc) { + return days.abbr[rules.d(i, utc)]; + } + + // Su + , + dd: function dd(i, utc) { + return days.short[rules.d(i, utc)]; + } + + // 0 + , + d: function d(i, utc) { + if (utc) { + return i.getUTCDay(); + } + return i.getDay(); + } + + // Dates + // 06 Day in month + , + DD: function DD(i, utc) { + return fillo(rules.D(i, utc)); + } + + // 6 Day in month + , + D: function D(i, utc) { + if (utc) { + return i.getUTCDate(); + } + return i.getDate(); + } + + // AM/PM + // AM/PM + , + A: function A(i, utc) { + return rules.a(i, utc).toUpperCase(); + } + + // am/pm + , + a: function a(i, utc) { + return rules.H(i, utc) >= 12 ? "pm" : "am"; + } + + // Hours + // 08 Hour + , + hh: function hh(i, utc) { + return fillo(rules.h(i, utc)); + } + + // 8 Hour + , + h: function h(i, utc) { + return rules.H(i, utc) % 12 || 12; + } + + // (alias) + , + HH: function HH(i, utc) { + return fillo(rules.H(i, utc)); + } + + // (alias) + , + H: function H(i, utc) { + if (utc) { + return i.getUTCHours(); + } + return i.getHours(); + } + + // Minutes + // 09 Minute + , + mm: function mm(i, utc) { + return fillo(rules.m(i, utc)); + } + + // 9 Minute + , + m: function m(i, utc) { + if (utc) { + return i.getUTCMinutes(); + } + return i.getMinutes(); + } + + // Seconds + // 09 Seconds + , + ss: function ss(i, utc) { + return fillo(rules.s(i, utc)); + } + + // 9 Seconds + , + s: function s(i, utc) { + if (utc) { + return i.getUTCSeconds(); + } + return i.getSeconds(); + } + + // Fractional seconds + // 0 1 ... 8 9 + , + S: function S(i, utc) { + return Math.round(rules.s(i, utc) / 60 * 10); + }, + SS: function SS(i, utc) { + return fillo(rules.s(i, utc) / 60 * 100); + }, + SSS: function SSS(i, utc) { + return fillo(rules.s(i, utc) / 60 * 1000, 3); + } + + // Timezones + , + Z: function Z(i) { + var offset = -i.getTimezoneOffset(); + return (offset >= 0 ? "+" : "-") + fillo(parseInt(offset / 60)) + ":" + fillo(offset % 60); + }, + ZZ: function ZZ(i) { + var offset = -i.getTimezoneOffset(); + return (offset >= 0 ? "+" : "-") + fillo(parseInt(offset / 60)) + fillo(offset % 60); + } +}; + +var parser = new ParseIt(rules); + +/** + * formatoid + * Formats the date into a given format. + * + * Usable format fields: + * + * - **Years** + * - `YYYY` (e.g. `"2015"`) + * - `YY` (e.g. `"15"`) + * - **Months** + * - `MMMM` (e.g. `"January"`) + * - `MMM` (e.g. `"Jan"`) + * - `MM` (e.g. `"01"`) + * - `M` (e.g. `"1"`) + * - **Days** + * - `dddd` (e.g. `"Sunday"`) + * - `ddd` (e.g. `"Sun"`) + * - `dd` (e.g. `"Su"`) + * - `d` (e.g. `"Su"`) + * - **Dates** + * - `DD` (e.g. `"07"`) + * - `D` (e.g. `"7"`) + * - **AM/PM** + * - `A` (e.g. `"AM"`) + * - `a` (e.g. `"pm"`) + * - **Hours** + * - `hh` (e.g. `"07"`)–12 hour format + * - `h` (e.g. `"7"`) + * - `HH` (e.g. `"07"`)–24 hour format + * - `H` (e.g. `"7"`) + * - **Minutes** + * - `mm` (e.g. `"07"`) + * - `m` (e.g. `"7"`) + * - **Seconds** + * - `ss` (e.g. `"07"`) + * - `s` (e.g. `"7"`) + * - **Fractional seconds** + * - `S` (e.g. `0 1 2 3 ... 9`) + * - `SS` (e.g. `00 01 02 ... 98 99`) + * - `SS` (e.g. `000 001 002 ... 998 999`) + * - **Timezones** + * - `Z` (e.g. `-07:00 -06:00 ... +06:00 +07:00`) + * - `ZZ` (e.g. `-0700 -0600 ... +0600 +0700`) + * + * @name formatoid + * @function + * @param {Date} i The date object. + * @param {String} f The date format. + * @return {String} The formatted date (as string). + */ +module.exports = function formatoid(i, f) { + return parser.run(f, [i, i._useUTC]); +}; \ No newline at end of file diff --git a/node_modules/formatoid/package.json b/node_modules/formatoid/package.json new file mode 100644 index 0000000000..7c4334b1d5 --- /dev/null +++ b/node_modules/formatoid/package.json @@ -0,0 +1,81 @@ +{ + "_from": "formatoid@^1.0.3", + "_id": "formatoid@1.2.3", + "_inBundle": false, + "_integrity": "sha512-CkI0aK01nKhHoFZByDKw/yrNPy+g56DNIEmlq0Q67grdR/LLV8Orc9gsTGVP7XufM3bZg8iuD5UsVfkOdJo2yg==", + "_location": "/formatoid", + "_phantomChildren": {}, + "_requested": { + "type": "range", + "registry": true, + "raw": "formatoid@^1.0.3", + "name": "formatoid", + "escapedName": "formatoid", + "rawSpec": "^1.0.3", + "saveSpec": null, + "fetchSpec": "^1.0.3" + }, + "_requiredBy": [ + "/github-calendar" + ], + "_resolved": "https://registry.npmjs.org/formatoid/-/formatoid-1.2.3.tgz", + "_shasum": "f9c1628fecbdfb56e422e5000cd2e81c1710589f", + "_spec": "formatoid@^1.0.3", + "_where": "/Users/brandonrosage/github/profile-generator/node_modules/github-calendar", + "author": { + "name": "Ionică Bizău", + "email": "bizauionica@gmail.com", + "url": "https://ionicabizau.net" + }, + "blah": { + "related": [ + "add-subtract-date" + ] + }, + "bugs": { + "url": "https://github.com/IonicaBizau/formatoid/issues" + }, + "bundleDependencies": false, + "dependencies": { + "days": "^1.0.1", + "fillo": "^1.0.0", + "months": "^1.0.0", + "parse-it": "^1.0.0" + }, + "deprecated": false, + "description": "Tiny and fast module for formatting date objects.", + "directories": { + "example": "example" + }, + "files": [ + "bin/", + "app/", + "lib/", + "dist/", + "src/", + "scripts/", + "resources/", + "menu/", + "cli.js", + "index.js", + "bloggify.js", + "bloggify.json", + "bloggify/" + ], + "homepage": "https://github.com/IonicaBizau/formatoid#readme", + "keywords": [ + "format", + "date" + ], + "license": "MIT", + "main": "lib/index.js", + "name": "formatoid", + "repository": { + "type": "git", + "url": "git+ssh://git@github.com/IonicaBizau/formatoid.git" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "version": "1.2.3" +} diff --git a/node_modules/github-calendar-legend/LICENSE b/node_modules/github-calendar-legend/LICENSE new file mode 100644 index 0000000000..02a53f58fa --- /dev/null +++ b/node_modules/github-calendar-legend/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2016-19 Ionică Bizău (https://ionicabizau.net) + +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. diff --git a/node_modules/github-calendar-legend/README.md b/node_modules/github-calendar-legend/README.md new file mode 100644 index 0000000000..5a8840f543 --- /dev/null +++ b/node_modules/github-calendar-legend/README.md @@ -0,0 +1,108 @@ + + + +# github-calendar-legend + + [![Support me on Patreon][badge_patreon]][patreon] [![Buy me a book][badge_amazon]][amazon] [![PayPal][badge_paypal_donate]][paypal-donations] [![Ask me anything](https://img.shields.io/badge/ask%20me-anything-1abc9c.svg)](https://github.com/IonicaBizau/ama) [![Version](https://img.shields.io/npm/v/github-calendar-legend.svg)](https://www.npmjs.com/package/github-calendar-legend) [![Downloads](https://img.shields.io/npm/dt/github-calendar-legend.svg)](https://www.npmjs.com/package/github-calendar-legend) [![Get help on Codementor](https://cdn.codementor.io/badges/get_help_github.svg)](https://www.codementor.io/johnnyb?utm_source=github&utm_medium=button&utm_term=johnnyb&utm_campaign=github) + +Buy Me A Coffee + +> The GitHub contributions calendar colors. + +## :cloud: Installation + +```sh +# Using npm +npm install --save github-calendar-legend + +# Using yarn +yarn add github-calendar-legend +``` + + +## :clipboard: Example + + + +```js +const legend = require("github-calendar-legend"); + +console.log(legend); +// => [ "#eee", "#d6e685", "#8cc665", "#44a340", "#1e6823" ] + +console.log(legend.indexOf("#eee")); +// => 0 + +console.log(legend[4]); +// => "#1e6823" +``` + + + +## :question: Get Help + +There are few ways to get help: + + 1. Please [post questions on Stack Overflow](https://stackoverflow.com/questions/ask). You can open issues with questions, as long you add a link to your Stack Overflow question. + 2. For bug reports and feature requests, open issues. :bug: + + 3. For direct and quick help, you can [use Codementor](https://www.codementor.io/johnnyb). :rocket: + + + +## :memo: Documentation + + +### exports + + + +## :yum: How to contribute +Have an idea? Found a bug? See [how to contribute][contributing]. + + +## :sparkling_heart: Support my projects + +I open-source almost everything I can, and I try to reply to everyone needing help using these projects. Obviously, +this takes time. You can integrate and use these projects in your applications *for free*! You can even change the source code and redistribute (even resell it). + +However, if you get some profit from this or just want to encourage me to continue creating stuff, there are few ways you can do it: + + + - Starring and sharing the projects you like :rocket: + - [![Buy me a book][badge_amazon]][amazon]—I love books! I will remember you after years if you buy me one. :grin: :book: + - [![PayPal][badge_paypal]][paypal-donations]—You can make one-time donations via PayPal. I'll probably buy a ~~coffee~~ tea. :tea: + - [![Support me on Patreon][badge_patreon]][patreon]—Set up a recurring monthly donation and you will get interesting news about what I'm doing (things that I don't share with everyone). + - **Bitcoin**—You can send me bitcoins at this address (or scanning the code below): `1P9BRsmazNQcuyTxEqveUsnf5CERdq35V6` + + ![](https://i.imgur.com/z6OQI95.png) + + +Thanks! :heart: + + +## :dizzy: Where is this library used? +If you are using this library in one of your projects, add it in this list. :sparkles: + + + - [`git-stats-html`](https://github.com/IonicaBizau/git-stats-html#readme)—Turn git-stats result into HTML output. + - [`github-calendar-parser`](https://github.com/IonicaBizau/github-calendar-parser#readme)—Parses the GitHub contributions calendar SVG code into JSON. + +## :scroll: License + +[MIT][license] © [Ionică Bizău][website] + + +[badge_patreon]: https://ionicabizau.github.io/badges/patreon.svg +[badge_amazon]: https://ionicabizau.github.io/badges/amazon.svg +[badge_paypal]: https://ionicabizau.github.io/badges/paypal.svg +[badge_paypal_donate]: https://ionicabizau.github.io/badges/paypal_donate.svg + +[patreon]: https://www.patreon.com/ionicabizau +[amazon]: http://amzn.eu/hRo9sIZ +[paypal-donations]: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RVXDDLKKLQRJW + +[license]: http://showalicense.com/?fullname=Ionic%C4%83%20Biz%C4%83u%20%3Cbizauionica%40gmail.com%3E%20(https%3A%2F%2Fionicabizau.net)&year=2016#license-mit +[website]: https://ionicabizau.net +[contributing]: /CONTRIBUTING.md +[docs]: /DOCUMENTATION.md diff --git a/node_modules/github-calendar-legend/lib/index.js b/node_modules/github-calendar-legend/lib/index.js new file mode 100644 index 0000000000..823bf9fa63 --- /dev/null +++ b/node_modules/github-calendar-legend/lib/index.js @@ -0,0 +1,3 @@ +"use strict"; + +module.exports = ["#eee", "#d6e685", "#8cc665", "#44a340", "#1e6823"]; \ No newline at end of file diff --git a/node_modules/github-calendar-legend/package.json b/node_modules/github-calendar-legend/package.json new file mode 100644 index 0000000000..cc3d765c2a --- /dev/null +++ b/node_modules/github-calendar-legend/package.json @@ -0,0 +1,74 @@ +{ + "_from": "github-calendar-legend@^1.0.0", + "_id": "github-calendar-legend@1.0.10", + "_inBundle": false, + "_integrity": "sha512-dDfX2Hvl98mSNbM9jRsZoZ0STb/AJcaf8ofRGXpH2oHtiQ73IlL8LFzOUzp49xSTFf0XYBs4DCXEhgbh+Fir2A==", + "_location": "/github-calendar-legend", + "_phantomChildren": {}, + "_requested": { + "type": "range", + "registry": true, + "raw": "github-calendar-legend@^1.0.0", + "name": "github-calendar-legend", + "escapedName": "github-calendar-legend", + "rawSpec": "^1.0.0", + "saveSpec": null, + "fetchSpec": "^1.0.0" + }, + "_requiredBy": [ + "/github-calendar-parser" + ], + "_resolved": "https://registry.npmjs.org/github-calendar-legend/-/github-calendar-legend-1.0.10.tgz", + "_shasum": "bbfad7332f155ad482abb61d4c6122b0cd13e986", + "_spec": "github-calendar-legend@^1.0.0", + "_where": "/Users/brandonrosage/github/profile-generator/node_modules/github-calendar-parser", + "author": { + "name": "Ionică Bizău", + "email": "bizauionica@gmail.com", + "url": "https://ionicabizau.net" + }, + "bugs": { + "url": "https://github.com/IonicaBizau/github-calendar-legend/issues" + }, + "bundleDependencies": false, + "deprecated": false, + "description": "The GitHub contributions calendar colors.", + "devDependencies": { + "tester": "^1.3.0" + }, + "directories": { + "example": "example" + }, + "files": [ + "bin/", + "app/", + "lib/", + "dist/", + "src/", + "scripts/", + "resources/", + "menu/", + "cli.js", + "index.js", + "bloggify.js", + "bloggify.json", + "bloggify/" + ], + "homepage": "https://github.com/IonicaBizau/github-calendar-legend#readme", + "keywords": [ + "github", + "calendar", + "legend" + ], + "license": "MIT", + "main": "lib/index.js", + "name": "github-calendar-legend", + "repository": { + "type": "git", + "url": "git+ssh://git@github.com/IonicaBizau/github-calendar-legend.git" + }, + "scripts": { + "test": "node test" + }, + "version": "1.0.10" +} diff --git a/node_modules/github-calendar-parser/LICENSE b/node_modules/github-calendar-parser/LICENSE new file mode 100644 index 0000000000..02a53f58fa --- /dev/null +++ b/node_modules/github-calendar-parser/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2016-19 Ionică Bizău (https://ionicabizau.net) + +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. diff --git a/node_modules/github-calendar-parser/README.md b/node_modules/github-calendar-parser/README.md new file mode 100644 index 0000000000..ebc2159e2d --- /dev/null +++ b/node_modules/github-calendar-parser/README.md @@ -0,0 +1,159 @@ + + + +# github-calendar-parser + + [![Support me on Patreon][badge_patreon]][patreon] [![Buy me a book][badge_amazon]][amazon] [![PayPal][badge_paypal_donate]][paypal-donations] [![Ask me anything](https://img.shields.io/badge/ask%20me-anything-1abc9c.svg)](https://github.com/IonicaBizau/ama) [![Version](https://img.shields.io/npm/v/github-calendar-parser.svg)](https://www.npmjs.com/package/github-calendar-parser) [![Downloads](https://img.shields.io/npm/dt/github-calendar-parser.svg)](https://www.npmjs.com/package/github-calendar-parser) [![Get help on Codementor](https://cdn.codementor.io/badges/get_help_github.svg)](https://www.codementor.io/johnnyb?utm_source=github&utm_medium=button&utm_term=johnnyb&utm_campaign=github) + +Buy Me A Coffee + +> Parses the GitHub contributions calendar SVG code into JSON. + +## :cloud: Installation + +```sh +# Using npm +npm install --save github-calendar-parser + +# Using yarn +yarn add github-calendar-parser +``` + + +## :clipboard: Example + + + +```js +const parse = require("github-calendar-parser"); + +var svg = ` + + + + + + + + + + + + + + + + + +`; + +console.log(parse(svg)); +// => +// { last_year: 262, +// longest_streak: 9, +// longest_streak_range: [ 2014-12-31T00:00:00.000Z, 2015-01-07T00:00:00.000Z ], +// current_streak: 2, +// current_streak_range: [ 2015-01-09T00:00:00.000Z, 2015-01-10T00:00:00.000Z ], +// weeks: [ [ [Object], [Object], [Object], [Object] ] ], +// days: +// [ { fill: '#1e6823', +// date: 2014-12-31T00:00:00.000Z, +// count: 78, +// level: 4 }, +// ... +// { fill: '#d6e685', +// date: 2015-01-10T00:00:00.000Z, +// count: 2, +// level: 1 } ], +// last_contributed: 2015-01-10T00:00:00.000Z } +``` + + + +## :question: Get Help + +There are few ways to get help: + + 1. Please [post questions on Stack Overflow](https://stackoverflow.com/questions/ask). You can open issues with questions, as long you add a link to your Stack Overflow question. + 2. For bug reports and feature requests, open issues. :bug: + + 3. For direct and quick help, you can [use Codementor](https://www.codementor.io/johnnyb). :rocket: + + + +## :memo: Documentation + + +### `parseGitHubCalendarSvg(input)` +Parses the SVG input (as string). + +#### Params + +- **String** `input`: The SVG code of the contributions calendar. + +#### Return +- **Object** An object containing: + - `last_year` (Number): The total contributions in the last year. + - `longest_streak` (Number): The longest streak. + - `longest_streak_range` (Array): An array of two date objects representing the date range. + - `current_streak` (Number): The current streak. + - `current_streak_range` (Array): An array of two date objects representing the date range. + - `days` (Array): An array of day objects: + - `fill` (String): The hex color. + - `date` (Date): The day date. + - `count` (Number): The number of commits. + - `level` (Number): A number between 0 and 4 (inclusive) representing the contribution level (more commits, higher value). + - `weeks` (Array): The day objects grouped by weeks (arrays). + - `last_contributed` (Date): The last contribution date. + + + +## :yum: How to contribute +Have an idea? Found a bug? See [how to contribute][contributing]. + + +## :sparkling_heart: Support my projects + +I open-source almost everything I can, and I try to reply to everyone needing help using these projects. Obviously, +this takes time. You can integrate and use these projects in your applications *for free*! You can even change the source code and redistribute (even resell it). + +However, if you get some profit from this or just want to encourage me to continue creating stuff, there are few ways you can do it: + + + - Starring and sharing the projects you like :rocket: + - [![Buy me a book][badge_amazon]][amazon]—I love books! I will remember you after years if you buy me one. :grin: :book: + - [![PayPal][badge_paypal]][paypal-donations]—You can make one-time donations via PayPal. I'll probably buy a ~~coffee~~ tea. :tea: + - [![Support me on Patreon][badge_patreon]][patreon]—Set up a recurring monthly donation and you will get interesting news about what I'm doing (things that I don't share with everyone). + - **Bitcoin**—You can send me bitcoins at this address (or scanning the code below): `1P9BRsmazNQcuyTxEqveUsnf5CERdq35V6` + + ![](https://i.imgur.com/z6OQI95.png) + + +Thanks! :heart: + + +## :dizzy: Where is this library used? +If you are using this library in one of your projects, add it in this list. :sparkles: + + + - [`github-calendar`](https://github.com/IonicaBizau/github-calendar#readme)—Embed your GitHub contributions calendar anywhere. + - [`react-github-calendar-x`](https://github.com/xwl7001/react-github-calendar#readme) (by Xu Wenliang)—Embed your GitHub calendar in React App. + +## :scroll: License + +[MIT][license] © [Ionică Bizău][website] + + +[badge_patreon]: https://ionicabizau.github.io/badges/patreon.svg +[badge_amazon]: https://ionicabizau.github.io/badges/amazon.svg +[badge_paypal]: https://ionicabizau.github.io/badges/paypal.svg +[badge_paypal_donate]: https://ionicabizau.github.io/badges/paypal_donate.svg + +[patreon]: https://www.patreon.com/ionicabizau +[amazon]: http://amzn.eu/hRo9sIZ +[paypal-donations]: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RVXDDLKKLQRJW + +[license]: http://showalicense.com/?fullname=Ionic%C4%83%20Biz%C4%83u%20%3Cbizauionica%40gmail.com%3E%20(https%3A%2F%2Fionicabizau.net)&year=2016#license-mit +[website]: https://ionicabizau.net +[contributing]: /CONTRIBUTING.md +[docs]: /DOCUMENTATION.md diff --git a/node_modules/github-calendar-parser/lib/index.js b/node_modules/github-calendar-parser/lib/index.js new file mode 100644 index 0000000000..bf046b1d6a --- /dev/null +++ b/node_modules/github-calendar-parser/lib/index.js @@ -0,0 +1,96 @@ +"use strict"; + +var githubCalendarLegend = require("github-calendar-legend"); + +/** + * parseGitHubCalendarSvg + * Parses the SVG input (as string). + * + * @name parseGitHubCalendarSvg + * @function + * @param {String} input The SVG code of the contributions calendar. + * @return {Object} An object containing: + * + * - `last_year` (Number): The total contributions in the last year. + * - `longest_streak` (Number): The longest streak. + * - `longest_streak_range` (Array): An array of two date objects representing the date range. + * - `current_streak` (Number): The current streak. + * - `current_streak_range` (Array): An array of two date objects representing the date range. + * - `days` (Array): An array of day objects: + * - `fill` (String): The hex color. + * - `date` (Date): The day date. + * - `count` (Number): The number of commits. + * - `level` (Number): A number between 0 and 4 (inclusive) representing the contribution level (more commits, higher value). + * - `weeks` (Array): The day objects grouped by weeks (arrays). + * - `last_contributed` (Date): The last contribution date. + */ +module.exports = function parseGitHubCalendarSvg(input) { + + var data = { + last_year: 0, + longest_streak: -1, + longest_streak_range: [], + current_streak: 0, + current_streak_range: [], + weeks: [], + days: [], + last_contributed: null + }, + lastWeek = [], + updateLongestStreak = function updateLongestStreak() { + if (data.current_streak > data.longest_streak) { + data.longest_streak = data.current_streak; + data.longest_streak_range[0] = data.current_streak_range[0]; + data.longest_streak_range[1] = data.current_streak_range[1]; + } + }; + + input.split("\n").slice(2).map(function (c) { + return c.trim(); + }).forEach(function (c) { + if (c.startsWith(" (https://ionicabizau.net) + +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. diff --git a/node_modules/github-calendar/README.md b/node_modules/github-calendar/README.md new file mode 100644 index 0000000000..ed3eef6b8c --- /dev/null +++ b/node_modules/github-calendar/README.md @@ -0,0 +1,137 @@ + + + +# github-calendar.js + + [![Support me on Patreon][badge_patreon]][patreon] [![Buy me a book][badge_amazon]][amazon] [![PayPal][badge_paypal_donate]][paypal-donations] [![Ask me anything](https://img.shields.io/badge/ask%20me-anything-1abc9c.svg)](https://github.com/IonicaBizau/ama) [![Version](https://img.shields.io/npm/v/github-calendar.svg)](https://www.npmjs.com/package/github-calendar) [![Downloads](https://img.shields.io/npm/dt/github-calendar.svg)](https://www.npmjs.com/package/github-calendar) + +> Embed your GitHub contributions calendar anywhere. + + +Everybodywell, haters gonna hate loves GitHub and everybody loves stats. So, why not making the GitHub contributions calendar available for being embeded in your web pages? Now [you can](https://ionicabizau.github.io/github-calendar/example). :tada: + + +[![](http://i.imgur.com/S1h8XoB.jpg)](https://ionicabizau.github.io/github-calendar/example) + + +## :cloud: Installation + + +Check out the [`dist`](/dist) directory to download the needed files and include them on your page. + +If you're using this module in a CommonJS environment, you can install it using `npm` or `yarn` and `require` it: + +```sh +# Using npm +npm install --save github-calendar + +# Using yarn +yarn add github-calendar +``` + + +## :memo: Documentation + + +### `GitHubCalendar(container, username, options)` +Brings the contributions calendar from GitHub (provided username) into your page. + +#### Params + +- **String|HTMLElement** `container`: The calendar container (query selector or the element itself). +- **String** `username`: The GitHub username. +- **Object** `options`: An object containing the following fields: + - `summary_text` (String): The text that appears under the calendar (defaults to: `"Summary of + pull requests, issues opened, and commits made by "`). + - `proxy` (Function): A function that receives as argument an url (string) and should return the proxied url. + The default is using [@izuzak](https://github.com/izuzak)'s [`urlreq`](https://github.com/izuzak/urlreq). + - `global_stats` (Boolean): If `false`, the global stats (total, longest and current streaks) will not be calculated and displayed. By default this is enabled. + - `responsive` (Boolean): If `true`, the graph is changed to scale with the container. Custom CSS should be applied to the element to scale it appropriately. By default this is disabled. + +#### Return +- **Promise** A promise returned by the `fetch()` call. + + + +## :yum: How to contribute +Have an idea? Found a bug? See [how to contribute][contributing]. + + +## :sparkling_heart: Support my projects + +I open-source almost everything I can, and I try to reply to everyone needing help using these projects. Obviously, +this takes time. You can integrate and use these projects in your applications *for free*! You can even change the source code and redistribute (even resell it). + +However, if you get some profit from this or just want to encourage me to continue creating stuff, there are few ways you can do it: + + + - Starring and sharing the projects you like :rocket: + - [![Buy me a book][badge_amazon]][amazon]—I love books! I will remember you after years if you buy me one. :grin: :book: + - [![PayPal][badge_paypal]][paypal-donations]—You can make one-time donations via PayPal. I'll probably buy a ~~coffee~~ tea. :tea: + - [![Support me on Patreon][badge_patreon]][patreon]—Set up a recurring monthly donation and you will get interesting news about what I'm doing (things that I don't share with everyone). + - **Bitcoin**—You can send me bitcoins at this address (or scanning the code below): `1P9BRsmazNQcuyTxEqveUsnf5CERdq35V6` + + ![](https://i.imgur.com/z6OQI95.png) + + +Thanks! :heart: + + +## :cake: Thanks + + - Big thanks to [**@izuzak**](https://github.com/izuzak) for creating the [urlreq](https://github.com/izuzak/urlreq) project–the default proxy used by this library. :cake: + - Part of the CSS code was taken from the GitHub profile page to offer the same experience. :art: + + + +## :sparkles: Related + + - [`github-profile-languages`](https://github.com/IonicaBizau/github-profile-languages)—Create a nice pie chart with the user's programming languages from their GitHub profile. + - [`github-org-members.js`](https://github.com/IonicaBizau/github-org-members.js)—A JavaScript library for fetching and rendering in HTML the members of a GitHub organization. + - [`gh-contributions`](https://github.com/IonicaBizau/github-contributions)—A tool that generates a repository which being pushed into your GitHub account creates a nice contributions calendar. + - [`github-emojify`](https://github.com/IonicaBizau/github-emojify#readme)—Emojify your GitHub repository descriptions. + - [`github-stats`](https://github.com/IonicaBizau/github-stats)—Visualize stats about GitHub users and projects in your terminal. + - [`github-labeller`](https://github.com/IonicaBizau/github-labeller#readme)—Automagically create issue labels in your GitHub projects. + - [`cli-gh-cal`](https://github.com/IonicaBizau/cli-gh-cal)—GitHub like calendar graphs in command line. + - [`gh-destroy`](https://github.com/IonicaBizau/gh-destroy#readme)—Delete multiple GitHub repositories. + - [`ship-release`](https://github.com/IonicaBizau/ship-release#readme)—Publish new versions on GitHub and npm with ease. + - [`github-calendar-legend`](https://github.com/IonicaBizau/github-calendar-legend#readme)—The GitHub contributions calendar colors. + - [`github-pr-branch-links`](https://github.com/IonicaBizau/github-pr-branch-links)—Open in a new tab the clicked branch on a pull request page. + - [`github-emoji-form-submit`](https://github.com/IonicaBizau/github-emoji-form-submit#readme)—Autocomplete selected Emoji when submitting forms on GitHub.com. + - [`gh-repeat`](https://github.com/IonicaBizau/gh-repeat#readme)—Repetitive actions on multiple GitHub repositories. + - [`gh-repos`](https://github.com/IonicaBizau/gh-repos#readme)—Get one or all the owner repositories from GitHub. + - [`github-old-header`](https://github.com/IonicaBizau/github-old-header)—Brings the old header links back. + - [`gh.js`](https://github.com/IonicaBizau/gh.js)—Tiny GitHub API wrapper for server and client. + - [`ghcal`](https://github.com/IonicaBizau/ghcal)—See the GitHub contributions calendar of a user in the command line. + - [`sort-github-user-repos`](https://github.com/IonicaBizau/sort-github-user-repos#readme)—Sort GitHub repositories by stars for user. + - [`github-calendar-parser`](https://github.com/IonicaBizau/github-calendar-parser#readme)—Parses the GitHub contributions calendar SVG code into JSON. + - [`gh-notifier`](https://bitbucket.org/IonicaBizau/gh-notifier#readme)—Receive desktop notifications from your GitHub dashboard. + - [`octimatch`](https://github.com/IonicaBizau/OctiMatch#readme)—A matching game with GitHub's Octicons. + - [`github-portfolio`](https://github.com/IonicaBizau/github-portfolio#readme)—A tool to generate a portfolio using data from your Github projects. + - [`gh-polyglot`](https://github.com/IonicaBizau/node-gh-polyglot)—Get language stats about GitHub users and repositories. + - [`cli-github`](https://github.com/IonicaBizau/cli-github)—A fancy GitHub client for command line. + - [`github-calendar`](https://github.com/IonicaBizau/github-calendar#readme)—Embed your GitHub contributions calendar anywhere. + - [`git-stats`](https://github.com/IonicaBizau/git-stats)—Local git statistics including GitHub-like contributions calendars. + - [`repository-downloader`](https://github.com/IonicaBizau/repository-downloader)—Download all the repositories from BitBucket and GitHub, including your account, teams and where you created pull requests. + - [`github-colors`](https://github.com/IonicaBizau/github-colors)—GitHub colors and file extensions mapping + + + +## :scroll: License + +[MIT][license] © [Ionică Bizău][website] + + +[badge_patreon]: https://ionicabizau.github.io/badges/patreon.svg +[badge_amazon]: https://ionicabizau.github.io/badges/amazon.svg +[badge_paypal]: https://ionicabizau.github.io/badges/paypal.svg +[badge_paypal_donate]: https://ionicabizau.github.io/badges/paypal_donate.svg + +[patreon]: https://www.patreon.com/ionicabizau +[amazon]: http://amzn.eu/hRo9sIZ +[paypal-donations]: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RVXDDLKKLQRJW + +[license]: http://showalicense.com/?fullname=Ionic%C4%83%20Biz%C4%83u%20%3Cbizauionica%40gmail.com%3E%20(https%3A%2F%2Fionicabizau.net)&year=2016#license-mit +[website]: https://ionicabizau.net +[contributing]: /CONTRIBUTING.md +[docs]: /DOCUMENTATION.md diff --git a/node_modules/github-calendar/dist/github-calendar-responsive.css b/node_modules/github-calendar/dist/github-calendar-responsive.css new file mode 100644 index 0000000000..6f309c61c3 --- /dev/null +++ b/node_modules/github-calendar/dist/github-calendar-responsive.css @@ -0,0 +1,125 @@ +.calendar { + font-family: Helvetica, arial; + border: 1px solid #DDDDDD; + border-radius: 3px; + min-height: 243px; + text-align: center; + margin: 0 auto; +} + +.calendar-graph text.wday, +.calendar-graph text.month { + font-size: 10px; + fill: #aaa; +} + +.contrib-legend { + text-align: right; + padding: 0 14px 10px 0; + display: inline-block; + float: right; +} + +.contrib-legend .legend { + display: inline-block; + list-style: none; + margin: 0 5px; + position: relative; + bottom: -1px; + padding: 0; +} + +.contrib-legend .legend li { + display: inline-block; + width: 10px; + height: 10px; +} + +.text-small { + font-size: 12px; + color: #767676; +} + +.calendar-graph { + padding: 5px 0 0; + text-align: center; +} + +.contrib-column { + padding: 15px 0; + text-align: center; + border-left: 1px solid #ddd; + border-top: 1px solid #ddd; + font-size: 11px; +} + +.contrib-column-first { + border-left: 0; +} + +.table-column { + display: table-cell; + width: 1%; + padding-right: 10px; + padding-left: 10px; + vertical-align: top; +} + +.contrib-number { + font-weight: 300; + line-height: 1.3em; + font-size: 24px; + display: block; + color: #333; +} + +.calendar img.spinner { + width: 70px; + margin-top: 50px; + min-height: 70px; +} + +.monospace { + text-align: center; + color: #000; + font-family: monospace; +} + +.monospace a { + color: #1D75AB; + text-decoration: none; +} + +.contrib-footer { + font-size: 11px; + padding: 0 10px 12px; + text-align: left; + width: 100%; + box-sizing: border-box; + height: 26px; +} + +.left.text-muted { + float: left; + margin-left: 9px; + color: #767676; +} +.left.text-muted a { + color: #4078c0; + text-decoration: none; +} +.left.text-muted a:hover, +.monospace a:hover { + text-decoration: underline; +} + +h2.f4.text-normal.mb-3 { + display: none; +} + +.float-left.text-gray { + float: left; +} +#user-activity-overview{ + display:none; +} diff --git a/node_modules/github-calendar/dist/github-calendar.css b/node_modules/github-calendar/dist/github-calendar.css new file mode 100644 index 0000000000..a1eab81084 --- /dev/null +++ b/node_modules/github-calendar/dist/github-calendar.css @@ -0,0 +1,127 @@ +.calendar { + width: 750px; + font-family: Helvetica, arial; + border: 1px solid #DDDDDD; + border-radius: 3px; + min-height: 243px; + text-align: center; + margin: 0 auto; +} + +.calendar-graph text.wday, +.calendar-graph text.month { + font-size: 10px; + fill: #aaa; +} + +.contrib-legend { + text-align: right; + padding: 0 14px 10px 0; + display: inline-block; + float: right; +} + +.contrib-legend .legend { + display: inline-block; + list-style: none; + margin: 0 5px; + position: relative; + bottom: -1px; + padding: 0; +} + +.contrib-legend .legend li { + display: inline-block; + width: 10px; + height: 10px; +} + +.text-small { + font-size: 12px; + color: #767676; +} + +.calendar-graph { + padding: 5px 0 0; + height: 126px; + text-align: center; +} + +.contrib-column { + padding: 15px 0; + text-align: center; + border-left: 1px solid #ddd; + border-top: 1px solid #ddd; + font-size: 11px; +} + +.contrib-column-first { + border-left: 0; +} + +.table-column { + display: table-cell; + width: 1%; + padding-right: 10px; + padding-left: 10px; + vertical-align: top; +} + +.contrib-number { + font-weight: 300; + line-height: 1.3em; + font-size: 24px; + display: block; + color: #333; +} + +.calendar img.spinner { + width: 70px; + margin-top: 50px; + min-height: 70px; +} + +.monospace { + text-align: center; + color: #000; + font-family: monospace; +} + +.monospace a { + color: #1D75AB; + text-decoration: none; +} + +.contrib-footer { + font-size: 11px; + padding: 0 10px 12px; + text-align: left; + width: 100%; + box-sizing: border-box; + height: 26px; +} + +.left.text-muted { + float: left; + margin-left: 9px; + color: #767676; +} +.left.text-muted a { + color: #4078c0; + text-decoration: none; +} +.left.text-muted a:hover, +.monospace a:hover { + text-decoration: underline; +} + +h2.f4.text-normal.mb-3 { + display: none; +} + +.float-left.text-gray { + float: left; +} +#user-activity-overview{ + display:none; +} diff --git a/node_modules/github-calendar/dist/github-calendar.min.js b/node_modules/github-calendar/dist/github-calendar.min.js new file mode 100644 index 0000000000..4f1b2fa41d --- /dev/null +++ b/node_modules/github-calendar/dist/github-calendar.min.js @@ -0,0 +1,222 @@ +"use strict"; + +var _typeof2 = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + +var _typeof = "function" == typeof Symbol && "symbol" == _typeof2(Symbol.iterator) ? function (e) { + return typeof e === "undefined" ? "undefined" : _typeof2(e); +} : function (e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e === "undefined" ? "undefined" : _typeof2(e); +};!function (e) { + if ("object" === ("undefined" == typeof exports ? "undefined" : _typeof(exports)) && "undefined" != typeof module) module.exports = e();else if ("function" == typeof define && define.amd) define([], e);else { + var t;t = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : this, t.GitHubCalendar = e(); + } +}(function () { + return function () { + function e(t, r, n) { + function a(s, u) { + if (!r[s]) { + if (!t[s]) { + var i = "function" == typeof require && require;if (!u && i) return i(s, !0);if (o) return o(s, !0);var c = new Error("Cannot find module '" + s + "'");throw c.code = "MODULE_NOT_FOUND", c; + }var l = r[s] = { exports: {} };t[s][0].call(l.exports, function (e) { + var r = t[s][1][e];return a(r || e); + }, l, l.exports, e, t, r, n); + }return r[s].exports; + }for (var o = "function" == typeof require && require, s = 0; s < n.length; s++) { + a(n[s]); + }return a; + }return e; + }()({ 1: [function (e, t) { + var r = e("github-calendar-parser"), + n = e("elly"), + a = e("add-subtract-date"), + o = e("formatoid"), + s = "MMM D, YYYY", + u = "MMMM D";t.exports = function (e, t, i) { + e = n(e), i = i || {}, i.summary_text = i.summary_text || 'Summary of pull requests, issues opened, and commits made by @' + t + "", i.responsive === !0 && e.classList.add("calendar-responsive"), i.global_stats === !1 && (e.style.minHeight = "175px"), i.proxy = i.proxy || function (e) { + return "https://urlreq.appspot.com/req?method=GET&url=" + e; + };var c = function l() { + return fetch(i.proxy("https://github.com/" + t)).then(function (e) { + return e.text(); + }).then(function (t) { + var c = document.createElement("div");c.innerHTML = t;var d = c.querySelector(".js-yearly-contributions");if (n(".position-relative h2", d).remove(), d.querySelector(".float-left.text-gray").innerHTML = i.summary_text, d.querySelector("include-fragment")) setTimeout(l, 500);else { + if (i.responsive === !0) { + var f = d.querySelector("svg.js-calendar-graph-svg"), + p = f.getAttribute("width"), + b = f.getAttribute("height");f.removeAttribute("height"), f.setAttribute("width", "100%"), f.setAttribute("viewBox", "0 0 " + p + " " + b); + }if (i.global_stats !== !1) { + var m = r(n("svg", d).outerHTML), + g = m.current_streak ? o(m.current_streak_range[0], u) + " – " + o(m.current_streak_range[1], u) : m.last_contributed ? "Last contributed in " + o(m.last_contributed, u) + "." : "Rock - Hard Place", + h = m.longest_streak ? o(m.longest_streak_range[0], u) + " – " + o(m.longest_streak_range[1], u) : m.last_contributed ? "Last contributed in " + o(m.last_contributed, u) + "." : "Rock - Hard Place", + y = n("
      ", { "class": "contrib-column contrib-column-first table-column", html: 'Contributions in the last year\n ' + m.last_year + ' total\n ' + o(a.subtract(new Date(), 1, "year"), s) + " – " + o(new Date(), s) + "" }), + v = n("
      ", { "class": "contrib-column table-column", html: 'Longest streak\n ' + m.longest_streak + ' days\n ' + h + "" }), + M = n("
      ", { "class": "contrib-column table-column", html: 'Current streak\n ' + m.current_streak + ' days\n ' + g + "" });d.appendChild(y), d.appendChild(v), d.appendChild(M); + }e.innerHTML = d.innerHTML; + } + })["catch"](function (e) { + return console.error(e); + }); + };return c(); + }; + }, { "add-subtract-date": 2, elly: 4, formatoid: 6, "github-calendar-parser": 8 }], 2: [function (e, t) { + function r(e) { + return function t(r, n, a) { + switch (n = e * n, a) {case "years":case "year": + r.setFullYear(r.getFullYear() + n);break;case "months":case "month": + r.setMonth(r.getMonth() + n);break;case "weeks":case "week": + return t(r, 7 * n, "days");case "days":case "day": + r.setDate(r.getDate() + n);break;case "hours":case "hour": + r.setHours(r.getHours() + n);break;case "minutes":case "minute": + r.setMinutes(r.getMinutes() + n);break;case "seconds":case "second": + r.setSeconds(r.getSeconds() + n);break;case "milliseconds":case "millisecond": + r.setMilliseconds(r.getMilliseconds() + n);break;default: + throw new Error("Invalid range: " + a);}return r; + }; + }t.exports = { add: r(1), subtract: r(-1) }; + }, {}], 3: [function (e, t) { + t.exports.en = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], t.exports.en.abbr = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], t.exports.en["short"] = ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"], t.exports.fr = ["dimanche", "lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi"], t.exports.fr.abbr = ["dim", "lun", "mar", "mer", "jeu", "ven", "sam"], t.exports.fr["short"] = ["di", "lu", "ma", "me", "je", "ve", "sa"], t.exports.es = ["domingo", "lunes", "martes", "miercoles", "jueves", "viernes", "sabado"], t.exports.es.abbr = ["dom", "lun", "mar", "mir", "jue", "vie", "sab"], t.exports.es["short"] = ["do", "lu", "ma", "mi", "ju", "vi", "sa"], t.exports.it = ["Domenica", "Lunedi", "Martedi", "Mercoledi", "Giovedi", "Venerdi", "Sabato"], t.exports.it.abbr = ["Dom", "Lun", "Mar", "Mer", "Gio", "Ven", "Sab"], t.exports.it["short"] = ["D", "L", "Ma", "Me", "G", "V", "S"], t.exports = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], t.exports.abbr = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], t.exports["short"] = ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"]; + }, {}], 4: [function (e, t) { + function r(e, t) { + return "string" == typeof e ? "<" === e.charAt(0) ? (e = document.createElement(e.slice(1, -1)), n(t || {}, function (t, r) { + switch (r) {case "text": + return void (e.textContent = t);case "html": + return void (e.innerHTML = t);}e.setAttribute(r, t); + }), e) : (t = t || document, t.querySelector(e)) : e; + }var n = e("iterate-object"), + a = e("sliced");r.$$ = function (e, t) { + return "string" == typeof e ? (t = t || document, a(t.querySelectorAll(e))) : [e]; + }, t.exports = r; + }, { "iterate-object": 9, sliced: 13 }], 5: [function (e, t) { + t.exports = function (e, t, r) { + t = t || 2, r = r || "0", e = e.toString();var n = t - e.length;return (0 >= n ? "" : r.repeat(n)) + e; + }; + }, {}], 6: [function (e, t) { + var r = e("months"), + n = e("days"), + a = e("fillo"), + o = e("parse-it").Parser, + s = { YYYY: function YYYY(e, t) { + return t ? e.getUTCFullYear() : e.getFullYear(); + }, YY: function YY(e, t) { + return s.YYYY(e, t) % 100; + }, MMMM: function MMMM(e, t) { + return t ? r[e.getUTCMonth()] : r[e.getMonth()]; + }, MMM: function MMM(e, t) { + return t ? r.abbr[e.getUTCMonth()] : r.abbr[e.getMonth()]; + }, MM: function MM(e, t) { + return a(t ? e.getUTCMonth() + 1 : e.getMonth() + 1); + }, M: function M(e, t) { + return t ? e.getUTCMonth() + 1 : e.getMonth() + 1; + }, dddd: function dddd(e, t) { + return n[s.d(e, t)]; + }, ddd: function ddd(e, t) { + return n.abbr[s.d(e, t)]; + }, dd: function dd(e, t) { + return n["short"][s.d(e, t)]; + }, d: function d(e, t) { + return t ? e.getUTCDay() : e.getDay(); + }, DD: function DD(e, t) { + return a(s.D(e, t)); + }, D: function D(e, t) { + return t ? e.getUTCDate() : e.getDate(); + }, A: function A(e, t) { + return s.a(e, t).toUpperCase(); + }, a: function a(e, t) { + return s.H(e, t) >= 12 ? "pm" : "am"; + }, hh: function hh(e, t) { + return a(s.h(e, t)); + }, h: function h(e, t) { + return s.H(e, t) % 12 || 12; + }, HH: function HH(e, t) { + return a(s.H(e, t)); + }, H: function H(e, t) { + return t ? e.getUTCHours() : e.getHours(); + }, mm: function mm(e, t) { + return a(s.m(e, t)); + }, m: function m(e, t) { + return t ? e.getUTCMinutes() : e.getMinutes(); + }, ss: function ss(e, t) { + return a(s.s(e, t)); + }, s: function s(e, t) { + return t ? e.getUTCSeconds() : e.getSeconds(); + }, S: function S(e, t) { + return Math.round(s.s(e, t) / 60 * 10); + }, SS: function SS(e, t) { + return a(s.s(e, t) / 60 * 100); + }, SSS: function SSS(e, t) { + return a(s.s(e, t) / 60 * 1e3, 3); + }, Z: function Z(e) { + var t = -e.getTimezoneOffset();return (t >= 0 ? "+" : "-") + a(parseInt(t / 60)) + ":" + a(t % 60); + }, ZZ: function ZZ(e) { + var t = -e.getTimezoneOffset();return (t >= 0 ? "+" : "-") + a(parseInt(t / 60)) + a(t % 60); + } }, + u = new o(s);t.exports = function (e, t) { + return u.run(t, [e, e._useUTC]); + }; + }, { days: 3, fillo: 5, months: 10, "parse-it": 11 }], 7: [function (e, t) { + t.exports = ["#eee", "#d6e685", "#8cc665", "#44a340", "#1e6823"]; + }, {}], 8: [function (e, t) { + var r = e("github-calendar-legend");t.exports = function (e) { + var t = { last_year: 0, longest_streak: -1, longest_streak_range: [], current_streak: 0, current_streak_range: [], weeks: [], days: [], last_contributed: null }, + n = [], + a = function a() { + t.current_streak > t.longest_streak && (t.longest_streak = t.current_streak, t.longest_streak_range[0] = t.current_streak_range[0], t.longest_streak_range[1] = t.current_streak_range[1]); + };return e.split("\n").slice(2).map(function (e) { + return e.trim(); + }).forEach(function (e) { + if (e.startsWith(" t ? Math.max(0, t + a) : t || 0;for (void 0 !== r && (a = 0 > r ? r + a : r); a-- > o;) { + n[a - o] = e[a]; + }return n; + }; + }, {}] }, {}, [1])(1); +}); \ No newline at end of file diff --git a/node_modules/github-calendar/lib/index.js b/node_modules/github-calendar/lib/index.js new file mode 100644 index 0000000000..4a1ab4993d --- /dev/null +++ b/node_modules/github-calendar/lib/index.js @@ -0,0 +1,105 @@ +"use strict"; + +var parse = require("github-calendar-parser"), + $ = require("elly"), + addSubtractDate = require("add-subtract-date"), + formatoid = require("formatoid"); + +var DATE_FORMAT1 = "MMM D, YYYY", + DATE_FORMAT2 = "MMMM D"; + +/** + * GitHubCalendar + * Brings the contributions calendar from GitHub (provided username) into your page. + * + * @name GitHubCalendar + * @function + * @param {String|HTMLElement} container The calendar container (query selector or the element itself). + * @param {String} username The GitHub username. + * @param {Object} options An object containing the following fields: + * + * - `summary_text` (String): The text that appears under the calendar (defaults to: `"Summary of + * pull requests, issues opened, and commits made by "`). + * - `proxy` (Function): A function that receives as argument an url (string) and should return the proxied url. + * The default is using [@izuzak](https://github.com/izuzak)'s [`urlreq`](https://github.com/izuzak/urlreq). + * - `global_stats` (Boolean): If `false`, the global stats (total, longest and current streaks) will not be calculated and displayed. By default this is enabled. + * - `responsive` (Boolean): If `true`, the graph is changed to scale with the container. Custom CSS should be applied to the element to scale it appropriately. By default this is disabled. + * + * @return {Promise} A promise returned by the `fetch()` call. + */ +module.exports = function GitHubCalendar(container, username, options) { + + container = $(container); + + options = options || {}; + options.summary_text = options.summary_text || "Summary of pull requests, issues opened, and commits made by @" + username + ""; + + if (options.global_stats === false) { + container.style.minHeight = "175px"; + } + + // We need a proxy for CORS + // Thanks, @izuzak (https://github.com/izuzak/urlreq) + options.proxy = options.proxy || function (url) { + return "https://urlreq.appspot.com/req?method=GET&url=" + url; + }; + + var fetchCalendar = function fetchCalendar() { + return fetch(options.proxy("https://github.com/" + username)).then(function (response) { + return response.text(); + }).then(function (body) { + var div = document.createElement("div"); + div.innerHTML = body; + var cal = div.querySelector(".js-yearly-contributions"); + $(".position-relative h2", cal).remove(); + cal.querySelector(".float-left.text-gray").innerHTML = options.summary_text; + + // If 'include-fragment' with spinner img loads instead of the svg, fetchCalendar again + if (cal.querySelector("include-fragment")) { + setTimeout(fetchCalendar, 500); + } else { + // If options includes responsive, SVG element has to be manipulated to be made responsive + if (options.responsive === true) { + var svg = cal.querySelector("svg.js-calendar-graph-svg"); + // Get the width/height properties and use them to create the viewBox + var width = svg.getAttribute("width"); + var height = svg.getAttribute("height"); + // Remove height property entirely + svg.removeAttribute("height"); + // Width property should be set to 100% to fill entire container + svg.setAttribute("width", "100%"); + // Add a viewBox property based on the former width/height + svg.setAttribute("viewBox", "0 0 " + width + " " + height); + } + + if (options.global_stats !== false) { + var parsed = parse($("svg", cal).outerHTML), + currentStreakInfo = parsed.current_streak ? formatoid(parsed.current_streak_range[0], DATE_FORMAT2) + " – " + formatoid(parsed.current_streak_range[1], DATE_FORMAT2) : parsed.last_contributed ? "Last contributed in " + formatoid(parsed.last_contributed, DATE_FORMAT2) + "." : "Rock - Hard Place", + longestStreakInfo = parsed.longest_streak ? formatoid(parsed.longest_streak_range[0], DATE_FORMAT2) + " – " + formatoid(parsed.longest_streak_range[1], DATE_FORMAT2) : parsed.last_contributed ? "Last contributed in " + formatoid(parsed.last_contributed, DATE_FORMAT2) + "." : "Rock - Hard Place", + firstCol = $("
      ", { + "class": "contrib-column contrib-column-first table-column", + html: "Contributions in the last year\n " + parsed.last_year + " total\n " + formatoid(addSubtractDate.subtract(new Date(), 1, "year"), DATE_FORMAT1) + " – " + formatoid(new Date(), DATE_FORMAT1) + "" + }), + secondCol = $("
      ", { + "class": "contrib-column table-column", + html: "Longest streak\n " + parsed.longest_streak + " days\n " + longestStreakInfo + "" + }), + thirdCol = $("
      ", { + "class": "contrib-column table-column", + html: "Current streak\n " + parsed.current_streak + " days\n " + currentStreakInfo + "" + }); + + cal.appendChild(firstCol); + cal.appendChild(secondCol); + cal.appendChild(thirdCol); + } + + container.innerHTML = cal.innerHTML; + } + }).catch(function (e) { + return console.error(e); + }); + }; + + return fetchCalendar(); +}; \ No newline at end of file diff --git a/node_modules/github-calendar/package.json b/node_modules/github-calendar/package.json new file mode 100644 index 0000000000..6318a3701b --- /dev/null +++ b/node_modules/github-calendar/package.json @@ -0,0 +1,182 @@ +{ + "_from": "github-calendar", + "_id": "github-calendar@1.3.1", + "_inBundle": false, + "_integrity": "sha512-ABlceh7wTRLvKQK1h0srrD9FHjHeHXtsxPw8sEUOX9uq4YItlrPaLY7ftNuvC0N1w6yCjcQBV+zjIzNAD9iczg==", + "_location": "/github-calendar", + "_phantomChildren": {}, + "_requested": { + "type": "tag", + "registry": true, + "raw": "github-calendar", + "name": "github-calendar", + "escapedName": "github-calendar", + "rawSpec": "", + "saveSpec": null, + "fetchSpec": "latest" + }, + "_requiredBy": [ + "#USER", + "/" + ], + "_resolved": "https://registry.npmjs.org/github-calendar/-/github-calendar-1.3.1.tgz", + "_shasum": "a746a4fc3d1cdf0dae970b1c8e6fc8b70c547264", + "_spec": "github-calendar", + "_where": "/Users/brandonrosage/github/profile-generator", + "author": { + "name": "Ionică Bizău", + "email": "bizauionica@gmail.com", + "url": "https://ionicabizau.net" + }, + "blah": { + "example": [ + { + "code": { + "language": "html", + "content": [ + "", + "", + "", + "", + "", + "", + "", + "", + "
      ", + " ", + " Loading the data just for you.", + "
      ", + "", + "" + ] + } + }, + { + "p": "[Here](http://codepen.io/anon/pen/aZmjvZ?editors=1000) you can see this example in action." + } + ], + "thanks": { + "ul": [ + "Big thanks to [**@izuzak**](https://github.com/izuzak) for creating the [urlreq](https://github.com/izuzak/urlreq) project–the default proxy used by this library. :cake:", + "Part of the CSS code was taken from the GitHub profile page to offer the same experience. :art:" + ] + }, + "description": [ + { + "p": "Everybodywell, haters gonna hate loves GitHub and everybody loves stats. So, why not making the GitHub contributions calendar available for being embeded in your web pages? Now [you can](https://ionicabizau.github.io/github-calendar/example). :tada:" + }, + { + "p": "[![](http://i.imgur.com/S1h8XoB.jpg)](https://ionicabizau.github.io/github-calendar/example)" + } + ], + "title": "github-calendar.js", + "related": { + "ul": [ + "github-profile-languages", + "github-org-members.js", + "gh-contributions", + "github-emojify", + "github-stats", + "github-labeller", + "cli-gh-cal", + "gh-destroy", + "ship-release", + "github-calendar-legend", + "github-pr-branch-links", + "github-emoji-form-submit", + "gh-repeat", + "gh-repos", + "github-old-header", + "gh.js", + "ghcal", + "sort-github-user-repos", + "github-calendar-parser", + "gh-notifier", + "octimatch", + "github-portfolio", + "gh-polyglot", + "cli-github", + "github-calendar", + "git-stats", + "repository-downloader", + "github-colors" + ] + } + }, + "bugs": { + "url": "https://github.com/IonicaBizau/github-calendar/issues" + }, + "bundleDependencies": false, + "contributors": [ + { + "name": "Evan Palmer", + "email": "evjpalmer@gmail.com", + "url": "http://evanpalmer.net" + }, + { + "name": "Francesco Tonini", + "email": "francescoantoniotonini@gmail.com", + "url": "https://francescotonini.it" + }, + { + "name": "Miroslav Vidovic", + "email": "miroslav-vidovic@hotmail.com" + }, + { + "name": "Mike Roibu", + "email": "mike@codingden.net" + } + ], + "dependencies": { + "add-subtract-date": "^1.0.5", + "elly": "^1.0.0", + "formatoid": "^1.0.3", + "github-calendar-parser": "^1.1.3" + }, + "deprecated": false, + "description": "Embed your GitHub contributions calendar anywhere.", + "directories": { + "example": "example" + }, + "files": [ + "bin/", + "app/", + "lib/", + "dist/", + "src/", + "scripts/", + "resources/", + "menu/", + "cli.js", + "index.js", + "bloggify.js", + "bloggify.json", + "bloggify/" + ], + "homepage": "https://github.com/IonicaBizau/github-calendar#readme", + "keywords": [ + "github", + "calendar", + "embed" + ], + "license": "MIT", + "main": "lib/index.js", + "name": "github-calendar", + "repository": { + "type": "git", + "url": "git+ssh://git@github.com/IonicaBizau/github-calendar.git" + }, + "scripts": { + "release": "dist-it lib/index.js github-calendar.min.js", + "test": "echo \"Error: no test specified\" && exit 1" + }, + "version": "1.3.1" +} diff --git a/node_modules/iterate-object/CONTRIBUTING.md b/node_modules/iterate-object/CONTRIBUTING.md new file mode 100644 index 0000000000..fc40887f73 --- /dev/null +++ b/node_modules/iterate-object/CONTRIBUTING.md @@ -0,0 +1,66 @@ +# :eight_spoked_asterisk: :stars: :sparkles: :dizzy: :star2: :star2: :sparkles: :dizzy: :star2: :star2: Contributing :star: :star2: :dizzy: :sparkles: :star: :star2: :dizzy: :sparkles: :stars: :eight_spoked_asterisk: + +So, you want to contribute to this project! That's awesome. However, before +doing so, please read the following simple steps how to contribute. This will +make the life easier and will avoid wasting time on things which are not +requested. :sparkles: + +## Discuss the changes before doing them + - First of all, open an issue in the repository, using the [bug tracker][1], + describing the contribution you would like to make, the bug you found or any + other ideas you have. This will help us to get you started on the right + foot. + + - If it makes sense, add the platform and software information (e.g. operating + system, Node.JS version etc.), screenshots (so we can see what you are + seeing). + + - It is recommended to wait for feedback before continuing to next steps. + However, if the issue is clear (e.g. a typo) and the fix is simple, you can + continue and fix it. + +## Fixing issues + - Fork the project in your account and create a branch with your fix: + `some-great-feature` or `some-issue-fix`. + + - Commit your changes in that branch, writing the code following the + [code style][2]. If the project contains tests (generally, the `test` + directory), you are encouraged to add a test as well. :memo: + + - If the project contains a `package.json` or a `bower.json` file add yourself + in the `contributors` array (or `authors` in the case of `bower.json`; + if the array does not exist, create it): + + ```json + { + "contributors": [ + "Your Name (http://your.website)" + ] + } + ``` + +## Creating a pull request + + - Open a pull request, and reference the initial issue in the pull request + message (e.g. *fixes #*). Write a good description and + title, so everybody will know what is fixed/improved. + + - If it makes sense, add screenshots, gifs etc., so it is easier to see what + is going on. + +## Wait for feedback +Before accepting your contributions, we will review them. You may get feedback +about what should be fixed in your modified code. If so, just keep committing +in your branch and the pull request will be updated automatically. + +## Everyone is happy! +Finally, your contributions will be merged, and everyone will be happy! :smile: +Contributions are more than welcome! + +Thanks! :sweat_smile: + + + +[1]: https://github.com/IonicaBizau/node-iterate-object/issues + +[2]: https://github.com/IonicaBizau/code-style diff --git a/node_modules/iterate-object/DOCUMENTATION.md b/node_modules/iterate-object/DOCUMENTATION.md new file mode 100644 index 0000000000..d49e1f646e --- /dev/null +++ b/node_modules/iterate-object/DOCUMENTATION.md @@ -0,0 +1,15 @@ +## Documentation + +You can see below the API reference of this module. + +### `iterateObject(obj, fn)` +Iterates an object. Note the object field order may differ. + +#### Params + +- **Object** `obj`: The input object. +- **Function** `fn`: A function that will be called with the current value, field name and provided object. + +#### Return +- **Function** The `iterateObject` function. + diff --git a/node_modules/iterate-object/LICENSE b/node_modules/iterate-object/LICENSE new file mode 100644 index 0000000000..e35f485417 --- /dev/null +++ b/node_modules/iterate-object/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015-19 Ionică Bizău (http://ionicabizau.net) + +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. diff --git a/node_modules/iterate-object/README.md b/node_modules/iterate-object/README.md new file mode 100644 index 0000000000..d4654152d9 --- /dev/null +++ b/node_modules/iterate-object/README.md @@ -0,0 +1,193 @@ + + + +# iterate-object + + [![Support me on Patreon][badge_patreon]][patreon] [![Buy me a book][badge_amazon]][amazon] [![PayPal][badge_paypal_donate]][paypal-donations] [![Ask me anything](https://img.shields.io/badge/ask%20me-anything-1abc9c.svg)](https://github.com/IonicaBizau/ama) [![Version](https://img.shields.io/npm/v/iterate-object.svg)](https://www.npmjs.com/package/iterate-object) [![Downloads](https://img.shields.io/npm/dt/iterate-object.svg)](https://www.npmjs.com/package/iterate-object) [![Get help on Codementor](https://cdn.codementor.io/badges/get_help_github.svg)](https://www.codementor.io/johnnyb?utm_source=github&utm_medium=button&utm_term=johnnyb&utm_campaign=github) + +Buy Me A Coffee + +> A convenient way to iterate objects. + +## :cloud: Installation + +```sh +# Using npm +npm install --save iterate-object + +# Using yarn +yarn add iterate-object +``` + + +## :clipboard: Example + + + +```js +// Dependencies +var IterateObject = require("iterate-object"); + +// Iterate this object +IterateObject({ + name: "Bob" + , age: 42 +}, function (value, name) { + console.log(name, value); +}); +// => "name", "Bob" +// "age", 42 + +// Iterate an array +IterateObject([ + 1, 2, 3, 4, 5, 6, 7 +], function (value, i) { + console.log("v[" + i + "] = " + value); +}); +// => v[0] = 1 +// v[1] = 2 +// v[2] = 3 +// v[3] = 4 +// v[4] = 5 +// v[5] = 6 +// v[6] = 7 + +// Iterate an array +IterateObject([ + "Alice", "Bob", "Carol", "Dave" +], function (value, i, arr) { + console.log("Current: " + value + (arr[i + 1] ? " Next:" + arr[i + 1] : "")); +}); +// => Current: Alice Next:Bob +// Current: Bob Next:Carol +// Current: Carol Next:Dave +// Current: Dave +``` + + + +## :question: Get Help + +There are few ways to get help: + + 1. Please [post questions on Stack Overflow](https://stackoverflow.com/questions/ask). You can open issues with questions, as long you add a link to your Stack Overflow question. + 2. For bug reports and feature requests, open issues. :bug: + + 3. For direct and quick help, you can [use Codementor](https://www.codementor.io/johnnyb). :rocket: + + + +## :memo: Documentation + + +### `iterateObject(obj, fn)` +Iterates an object. Note the object field order may differ. + +#### Params + +- **Object** `obj`: The input object. +- **Function** `fn`: A function that will be called with the current value, field name and provided object. + +#### Return +- **Function** The `iterateObject` function. + + + +## :yum: How to contribute +Have an idea? Found a bug? See [how to contribute][contributing]. + + +## :sparkling_heart: Support my projects + +I open-source almost everything I can, and I try to reply to everyone needing help using these projects. Obviously, +this takes time. You can integrate and use these projects in your applications *for free*! You can even change the source code and redistribute (even resell it). + +However, if you get some profit from this or just want to encourage me to continue creating stuff, there are few ways you can do it: + + + - Starring and sharing the projects you like :rocket: + - [![Buy me a book][badge_amazon]][amazon]—I love books! I will remember you after years if you buy me one. :grin: :book: + - [![PayPal][badge_paypal]][paypal-donations]—You can make one-time donations via PayPal. I'll probably buy a ~~coffee~~ tea. :tea: + - [![Support me on Patreon][badge_patreon]][patreon]—Set up a recurring monthly donation and you will get interesting news about what I'm doing (things that I don't share with everyone). + - **Bitcoin**—You can send me bitcoins at this address (or scanning the code below): `1P9BRsmazNQcuyTxEqveUsnf5CERdq35V6` + + ![](https://i.imgur.com/z6OQI95.png) + + +Thanks! :heart: + + +## :dizzy: Where is this library used? +If you are using this library in one of your projects, add it in this list. :sparkles: + + + - [`barbe`](https://github.com/IonicaBizau/barbe)—Like mustache, but simple, tiny and fast. + - [`bloggify-actions`](https://github.com/Bloggify/bloggify-actions#readme) (by Bloggify)—High-level module for building the actions functionality. Core module. + - [`bloggify-config`](https://github.com/Bloggify/bloggify-config#readme) (by Bloggify)—Helper module to create Bloggify configuration. + - [`bloggify-flexible-router`](https://github.com/Bloggify/flexible-router#readme) (by Bloggify)—A flexible router for Bloggify apps. + - [`bloggify-mongoose`](https://github.com/Bloggify/bloggify-mongoose#readme) (by Bloggify)—Support for Mongoose models in Bloggify. + - [`bloggify-on-request`](https://github.com/Bloggify/on-request#readme)—Do custom stuff on request and optionally send a custom response. + - [`bloggify-page`](https://github.com/Bloggify/bloggify-page#readme) (by Bloggify)—The Bloggify page class. + - [`bloggify-paths`](https://github.com/IonicaBizau/bloggify-paths#readme)—Helper library for maintaining the Bloggify paths in one place. + - [`bloggify-redirect`](https://github.com/Bloggify/redirect#readme)—A Bloggify plugin to handle the link redirects. + - [`bloggify-sequelize`](https://github.com/Bloggify/bloggify-sequelize#readme) (by Bloggify)—Use Sequelize in Bloggify applications. + - [`bloggify-shortcode`](https://github.com/IonicaBizau/bloggify-shortcode#readme)—Shortcode plugin for Bloggify. + - [`bloggify-template-renderer`](https://github.com/Bloggify/template-renderer#readme) (by Bloggify)—The default template renderer for Bloggify. + - [`bloggify-theme-renderer`](https://github.com/Bloggify/theme-renderer#readme) (by Bloggify)—The default theme renderer for Bloggify. + - [`color-it`](https://github.com/IonicaBizau/node-color-it#readme)—Flat colors for your Node.js strings. + - [`couleurs`](https://github.com/IonicaBizau/node-couleurs)—Add some color and styles to your Node.JS strings. + - [`edit-json-file`](https://github.com/IonicaBizau/edit-json-file#readme)—Edit a json file with ease. + - [`elly`](https://github.com/IonicaBizau/elly#readme)—A tiny library for creating and selecting DOM elements. + - [`emoji-from-word`](https://github.com/IonicaBizau/emoji-from-word#readme)—Get emoji from input word. + - [`emoji-name-map`](https://github.com/IonicaBizau/emoji-name-map#readme)—Name to unicode emoji mapping. + - [`emoji-unicode-map`](https://github.com/IonicaBizau/emoji-unicode-map#readme)—Unicode to name emoji mapping. + - [`emoji.css`](https://github.com/IonicaBizau/emoji.css)—Your website. Emojified. Like FontAwesome for emojis. + - [`emojic`](https://github.com/IonicaBizau/emojic#readme)—Emoji in your Node.js command line apps. + - [`engine-builder`](https://github.com/IonicaBizau/engine-parser) (by jillix)—Engine composition parser. + - [`engine-flow-types`](https://github.com/jillix/engine-flow-types#readme) (by jillix)—Low level library providing Engine flow types. + - [`engine-parser`](https://github.com/IonicaBizau/engine-parser) (by jillix)—Engine composition parser. + - [`enny`](https://github.com/IonicaBizau/enny) (by jillix)—Generate Engine compositions from human-readable inputs. + - [`err`](https://github.com/IonicaBizau/err#readme)—A tiny library to create custom errors in JavaScript. + - [`error-creator`](https://github.com/Bloggify/error-creator#readme) (by Bloggify)—Create errors with dynamic parameters and i18n in mind. + - [`gh-following`](https://github.com/IonicaBizau/gh-following#readme)—Fetches the users you follow but they don't follow you and the users that follow you but you don't. + - [`git-stats`](https://github.com/IonicaBizau/git-stats)—Local git statistics including GitHub-like contributions calendars. + - [`gm-tools`](https://github.com/IonicaBizau/gm-tools#readme)—Friendly tools for interacting with GraphicsMagick. + - [`gpm`](https://github.com/IonicaBizau/gpm)—npm + git = gpm - Install NPM packages and dependencies from git repositories. + - [`html-encoder-decoder`](https://github.com/IonicaBizau/html-encoder-decoder)—HTML Encoder / Decoder - Converts characters to their corresponding HTML Entities + - [`lien`](https://github.com/LienJS/Lien)—An easy to use web framework for Node.js. + - [`love-you`](https://github.com/IonicaBizau/love-you#readme)—"I love you" in different languages. + - [`map-o`](https://github.com/IonicaBizau/node-map-o)—Array-map like function for objects. + - [`match`](https://github.com/IonicaBizau/match.js#readme)—Simplest way to create match memory games. + - [`mini-lightbox`](https://github.com/ionicabizau/mini-lightbox)—Minimalist image lightbox + - [`nodeice`](https://github.com/IonicaBizau/nodeice)—Another PDF invoice generator + - [`oargv`](https://github.com/IonicaBizau/node-oargv)—Turns an object into a bash command. + - [`obj-flatten`](https://github.com/IonicaBizau/obj-flatten#readme)—Convert nested objects in flatten ones. + - [`obj-unflatten`](https://github.com/IonicaBizau/obj-unflatten#readme)—Convert flatten objects in nested ones. + - [`remove-one-element-arrays`](https://github.com/IonicaBizau/remove-one-element-arrays#readme)—Removes the one-element arrays from an object. + - [`rucksack`](https://github.com/Bloggify/rucksack#readme) (by Bloggify)—JavaScript and CSS bundler. + - [`scrape-it`](https://github.com/IonicaBizau/scrape-it#readme)—A Node.js scraper for humans. + - [`scrape-it-plus`](https://github.com/rukandax/scrape-it-plus#readme) (by Rukanda Faridsi)—A Node.js scraper for humans (with extended function). + - [`stringify-env`](https://github.com/Bloggify/stringify-env#readme) (by Bloggify)—Create files storing environment variables. + - [`svg.connectable.js`](https://github.com/jillix/svg.connectable.js) (by jillix)—A JavaScript library for connecting SVG things. + - [`tilda`](https://github.com/IonicaBizau/tilda)—Tiny module for building command line tools. + - [`validate5`](https://github.com/IonicaBizau/validate5#readme)—Form validations made easy. + - [`xml-jsonify`](https://github.com/IonicaBizau/xml-jsonify#readme)—A liberal XML to JSON converter. + +## :scroll: License + +[MIT][license] © [Ionică Bizău][website] + + +[badge_patreon]: https://ionicabizau.github.io/badges/patreon.svg +[badge_amazon]: https://ionicabizau.github.io/badges/amazon.svg +[badge_paypal]: https://ionicabizau.github.io/badges/paypal.svg +[badge_paypal_donate]: https://ionicabizau.github.io/badges/paypal_donate.svg + +[patreon]: https://www.patreon.com/ionicabizau +[amazon]: http://amzn.eu/hRo9sIZ +[paypal-donations]: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RVXDDLKKLQRJW + +[license]: http://showalicense.com/?fullname=Ionic%C4%83%20Biz%C4%83u%20%3Cbizauionica%40gmail.com%3E%20(http%3A%2F%2Fionicabizau.net)&year=2015#license-mit +[website]: http://ionicabizau.net +[contributing]: /CONTRIBUTING.md +[docs]: /DOCUMENTATION.md diff --git a/node_modules/iterate-object/example/index.js b/node_modules/iterate-object/example/index.js new file mode 100644 index 0000000000..e819db29af --- /dev/null +++ b/node_modules/iterate-object/example/index.js @@ -0,0 +1,35 @@ +"use strict"; + +// Dependencies +var IterateObject = require("../lib"); + +// Iterate this object +IterateObject({ + name: "Bob", + age: 42 +}, function (value, name) { + console.log(name, value); +}); +// => "name", "Bob" +// "age", 42 + +// Iterate an array +IterateObject([1, 2, 3, 4, 5, 6, 7], function (value, i) { + console.log("v[" + i + "] = " + value); +}); +// => v[0] = 1 +// v[1] = 2 +// v[2] = 3 +// v[3] = 4 +// v[4] = 5 +// v[5] = 6 +// v[6] = 7 + +// Iterate an array +IterateObject(["Alice", "Bob", "Carol", "Dave"], function (value, i, arr) { + console.log("Current: " + value + (arr[i + 1] ? " Next:" + arr[i + 1] : "")); +}); +// => Current: Alice Next:Bob +// Current: Bob Next:Carol +// Current: Carol Next:Dave +// Current: Dave \ No newline at end of file diff --git a/node_modules/iterate-object/lib/index.js b/node_modules/iterate-object/lib/index.js new file mode 100644 index 0000000000..1a982c4505 --- /dev/null +++ b/node_modules/iterate-object/lib/index.js @@ -0,0 +1,35 @@ +"use strict"; + +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + +/** + * iterateObject + * Iterates an object. Note the object field order may differ. + * + * @name iterateObject + * @function + * @param {Object} obj The input object. + * @param {Function} fn A function that will be called with the current value, field name and provided object. + * @return {Function} The `iterateObject` function. + */ +function iterateObject(obj, fn) { + var i = 0, + keys = []; + + if (Array.isArray(obj)) { + for (; i < obj.length; ++i) { + if (fn(obj[i], i, obj) === false) { + break; + } + } + } else if ((typeof obj === "undefined" ? "undefined" : _typeof(obj)) === "object" && obj !== null) { + keys = Object.keys(obj); + for (; i < keys.length; ++i) { + if (fn(obj[keys[i]], keys[i], obj) === false) { + break; + } + } + } +} + +module.exports = iterateObject; \ No newline at end of file diff --git a/node_modules/iterate-object/package.json b/node_modules/iterate-object/package.json new file mode 100644 index 0000000000..b56f4ba454 --- /dev/null +++ b/node_modules/iterate-object/package.json @@ -0,0 +1,55 @@ +{ + "_from": "iterate-object@^1.3.2", + "_id": "iterate-object@1.3.3", + "_inBundle": false, + "_integrity": "sha512-DximWbkke36cnrSfNJv6bgcB2QOMV9PRD2FiowwzCoMsh8RupFLdbNIzWe+cVDWT+NIMNJgGlB1dGxP6kpzGtA==", + "_location": "/iterate-object", + "_phantomChildren": {}, + "_requested": { + "type": "range", + "registry": true, + "raw": "iterate-object@^1.3.2", + "name": "iterate-object", + "escapedName": "iterate-object", + "rawSpec": "^1.3.2", + "saveSpec": null, + "fetchSpec": "^1.3.2" + }, + "_requiredBy": [ + "/elly" + ], + "_resolved": "https://registry.npmjs.org/iterate-object/-/iterate-object-1.3.3.tgz", + "_shasum": "c58e60f7f0caefa2d382027a484b215988a7a296", + "_spec": "iterate-object@^1.3.2", + "_where": "/Users/brandonrosage/github/profile-generator/node_modules/elly", + "author": { + "name": "Ionică Bizău", + "email": "bizauionica@gmail.com", + "url": "http://ionicabizau.net" + }, + "bugs": { + "url": "https://github.com/IonicaBizau/node-iterate-object/issues" + }, + "bundleDependencies": false, + "deprecated": false, + "description": "A convenient way to iterate objects.", + "directories": { + "example": "example" + }, + "homepage": "https://github.com/IonicaBizau/node-iterate-object", + "keywords": [ + "iterate", + "object" + ], + "license": "MIT", + "main": "lib/index.js", + "name": "iterate-object", + "repository": { + "type": "git", + "url": "git+ssh://git@github.com/IonicaBizau/node-iterate-object.git" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "version": "1.3.3" +} diff --git a/node_modules/months/LICENSE b/node_modules/months/LICENSE new file mode 100644 index 0000000000..943e71d055 --- /dev/null +++ b/node_modules/months/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014-2017, Jon Schlinkert. + +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. \ No newline at end of file diff --git a/node_modules/months/README.md b/node_modules/months/README.md new file mode 100644 index 0000000000..29366b5f4f --- /dev/null +++ b/node_modules/months/README.md @@ -0,0 +1,101 @@ +# months [![NPM version](https://img.shields.io/npm/v/months.svg?style=flat)](https://www.npmjs.com/package/months) [![NPM monthly downloads](https://img.shields.io/npm/dm/months.svg?style=flat)](https://npmjs.org/package/months) [![NPM total downloads](https://img.shields.io/npm/dt/months.svg?style=flat)](https://npmjs.org/package/months) [![Linux Build Status](https://img.shields.io/travis/datetime/months.svg?style=flat&label=Travis)](https://travis-ci.org/datetime/months) + +> Months of the year. + +- [Install](#install) +- [Usage](#usage) +- [About](#about) + +_(TOC generated by [verb](https://github.com/verbose/verb) using [markdown-toc](https://github.com/jonschlinkert/markdown-toc))_ + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save months +``` + +## Usage + +```js +var months = require('months'); + +console.log(months); +//=> ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'] + +console.log(months.abbr); +//=> ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'] + +console.log(months.it); +//=> [ 'Gennaio', 'Febbraio', 'Marzo', 'Aprile', 'Maggio', 'Giugno', 'Luglio', 'Agosto', 'Settembre', 'Ottobre', 'Novembre', 'Dicembre' ] + +console.log(months.abbr.it); +//=> [ 'Gen', 'Feb', 'Mar', 'Apr', 'Mag', 'Giu', 'Lug', 'Ago', 'Set', 'Ott', 'Nov', 'Dic' ] + +console.log(months.de); +//=> [ 'Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'] + +console.log(months.abbr.de); +//=> [ 'Jan', 'Feb', 'Mär', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez' ] +``` + +## About + +### Related projects + +* [days](https://www.npmjs.com/package/days): Days of the week. | [homepage](https://github.com/jonschlinkert/days "Days of the week.") +* [nanoseconds](https://www.npmjs.com/package/nanoseconds): Convert the process.hrtime array to a single nanoseconds value. | [homepage](https://github.com/jonschlinkert/nanoseconds "Convert the process.hrtime array to a single nanoseconds value.") +* [o-clock](https://www.npmjs.com/package/o-clock): Simple javascript utility for displaying the time in 12-hour clock format. | [homepage](https://github.com/jonschlinkert/o-clock "Simple javascript utility for displaying the time in 12-hour clock format.") +* [pretty-time](https://www.npmjs.com/package/pretty-time): Easily format the time from node.js `process.hrtime`. Works with timescales ranging from weeks to nanoseconds. | [homepage](https://github.com/jonschlinkert/pretty-time "Easily format the time from node.js `process.hrtime`. Works with timescales ranging from weeks to nanoseconds.") +* [seconds](https://www.npmjs.com/package/seconds): Get the number of seconds for a minute, hour, day and week. | [homepage](https://github.com/jonschlinkert/seconds "Get the number of seconds for a minute, hour, day and week.") +* [time-stamp](https://www.npmjs.com/package/time-stamp): Get a formatted timestamp. | [homepage](https://github.com/jonschlinkert/time-stamp "Get a formatted timestamp.") +* [week](https://www.npmjs.com/package/week): Get the current week number. | [homepage](https://github.com/datetime/week "Get the current week number.") +* [year](https://www.npmjs.com/package/year): Simple utility to get the current year with 2 or 4 digits. | [homepage](https://github.com/jonschlinkert/year "Simple utility to get the current year with 2 or 4 digits.") + +### Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +### Contributors + +| **Commits** | **Contributor** | +| --- | --- | +| 12 | [jonschlinkert](https://github.com/jonschlinkert) | +| 6 | [doowb](https://github.com/doowb) | +| 4 | [mihailgaberov](https://github.com/mihailgaberov) | +| 3 | [Rawnly](https://github.com/Rawnly) | + +### Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +### Running tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +### Author + +**Jon Schlinkert** + +* [github/jonschlinkert](https://github.com/jonschlinkert) +* [twitter/jonschlinkert](https://twitter.com/jonschlinkert) + +### License + +Copyright © 2017, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.6.0, on July 10, 2017._ \ No newline at end of file diff --git a/node_modules/months/index.js b/node_modules/months/index.js new file mode 100644 index 0000000000..c7d09eec48 --- /dev/null +++ b/node_modules/months/index.js @@ -0,0 +1,18 @@ +/*! + * months + * + * Copyright (c) 2014-2017, Jon Schlinkert. + * Released under the MIT License. + */ + +// English Translation +module.exports = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']; +module.exports.abbr = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']; + +// Italian Translation +module.exports.it = ['Gennaio', 'Febbraio', 'Marzo', 'Aprile', 'Maggio', 'Giugno', 'Luglio', 'Agosto', 'Settembre', 'Ottobre', 'Novembre', 'Dicembre']; +module.exports.abbr.it = ['Gen', 'Feb', 'Mar', 'Apr', 'Mag', 'Giu', 'Lug', 'Ago', 'Set', 'Ott', 'Nov', 'Dic']; + +// German Translation +module.exports.de = [ 'Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember']; +module.exports.abbr.de = [ 'Jan', 'Feb', 'Mär', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez' ]; diff --git a/node_modules/months/package.json b/node_modules/months/package.json new file mode 100644 index 0000000000..997f806452 --- /dev/null +++ b/node_modules/months/package.json @@ -0,0 +1,106 @@ +{ + "_from": "months@^1.0.0", + "_id": "months@1.2.0", + "_inBundle": false, + "_integrity": "sha512-zFM7hUpziSYGk2DNObYGWgHdRRxAOgjl8CC1Rbl50p/q0rGDsREfk0nbxxmSIquVi/lEAuUY8nwbwkZ8biNCOQ==", + "_location": "/months", + "_phantomChildren": {}, + "_requested": { + "type": "range", + "registry": true, + "raw": "months@^1.0.0", + "name": "months", + "escapedName": "months", + "rawSpec": "^1.0.0", + "saveSpec": null, + "fetchSpec": "^1.0.0" + }, + "_requiredBy": [ + "/formatoid" + ], + "_resolved": "https://registry.npmjs.org/months/-/months-1.2.0.tgz", + "_shasum": "beef54873960334abe0b03f6b38db8adb44a13ac", + "_spec": "months@^1.0.0", + "_where": "/Users/brandonrosage/github/profile-generator/node_modules/formatoid", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/datetime/months/issues" + }, + "bundleDependencies": false, + "contributors": [ + { + "name": "Brian Woodward", + "url": "https://twitter.com/doowb" + }, + { + "name": "Federico Vitale", + "url": "https://rawnly.com" + }, + { + "name": "Jon Schlinkert", + "url": "http://twitter.com/jonschlinkert" + }, + { + "name": "Mihail Gaberov", + "url": "http://mihail-gaberov.eu" + } + ], + "deprecated": false, + "description": "Months of the year.", + "devDependencies": { + "gulp-format-md": "^1.0.0", + "mocha": "^3.4.2" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/datetime/months", + "keywords": [ + "calendar", + "date", + "month", + "months" + ], + "license": "MIT", + "main": "index.js", + "name": "months", + "repository": { + "type": "git", + "url": "git+https://github.com/datetime/months.git" + }, + "scripts": { + "test": "mocha" + }, + "verb": { + "toc": true, + "related": { + "list": [ + "days", + "nanoseconds", + "o-clock", + "pretty-time", + "seconds", + "time-stamp", + "week", + "year" + ] + }, + "layout": "default", + "plugins": [ + "gulp-format-md" + ], + "tasks": [ + "readme" + ], + "lint": { + "reflinks": true + } + }, + "version": "1.2.0" +} diff --git a/node_modules/parse-it/LICENSE b/node_modules/parse-it/LICENSE new file mode 100644 index 0000000000..d21973eddb --- /dev/null +++ b/node_modules/parse-it/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015-19 Ionică Bizău (https://ionicabizau.net) + +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. diff --git a/node_modules/parse-it/README.md b/node_modules/parse-it/README.md new file mode 100644 index 0000000000..ddf04ddbf3 --- /dev/null +++ b/node_modules/parse-it/README.md @@ -0,0 +1,148 @@ + + + +# parse-it + + [![Support me on Patreon][badge_patreon]][patreon] [![Buy me a book][badge_amazon]][amazon] [![PayPal][badge_paypal_donate]][paypal-donations] [![Ask me anything](https://img.shields.io/badge/ask%20me-anything-1abc9c.svg)](https://github.com/IonicaBizau/ama) [![Version](https://img.shields.io/npm/v/parse-it.svg)](https://www.npmjs.com/package/parse-it) [![Downloads](https://img.shields.io/npm/dt/parse-it.svg)](https://www.npmjs.com/package/parse-it) [![Get help on Codementor](https://cdn.codementor.io/badges/get_help_github.svg)](https://www.codementor.io/johnnyb?utm_source=github&utm_medium=button&utm_term=johnnyb&utm_campaign=github) + +Buy Me A Coffee + +> Configurable string templating, without separators. + +## :cloud: Installation + +```sh +# Using npm +npm install --save parse-it + +# Using yarn +yarn add parse-it +``` + + +## :clipboard: Example + + + +```js +const parseIt = require("parse-it"); + +// Replace strings +console.log(parseIt("Hello WORLD!", { WORLD: "Mars" })); +// => Hello Mars! + +// Use functions +console.log(parseIt("Random number: random", { random: () => Math.random() })); +// => Random number: 0.21168493130244315 + +// Using as class +var Parser = parseIt.Parser; + +// Display a date +var p = new Parser({ + d: function (d) { return d.getDate() } + , M: function (d) { return d.getMonth() } + , YYYY: function (d) { return d.getFullYear() } +}); + +console.log(p.run("d/M/YYYY", [new Date(1989, 11, 20)])); +// => 20/11/1989 +``` + + + +## :question: Get Help + +There are few ways to get help: + + 1. Please [post questions on Stack Overflow](https://stackoverflow.com/questions/ask). You can open issues with questions, as long you add a link to your Stack Overflow question. + 2. For bug reports and feature requests, open issues. :bug: + + 3. For direct and quick help, you can [use Codementor](https://www.codementor.io/johnnyb). :rocket: + + + +## :memo: Documentation + + +### `ParseIt(obj)` +The `ParseIt` class. It can be used to use the same data object but with different formats/arguments. + +#### Params + +- **Object** `obj`: An object containing the fields to replace. + +### `parseIt(format, args)` +run +Replaces the fields in the format string with data coming from the data object. + +#### Params + +- **String** `format`: The format input. +- **Array** `args`: An array of arguments to be passed to the replace function (stored in the `obj` object). + +#### Return +- **String** The result as string. + +### `parseIt(format, obj, args)` +A wrapper around the `ParseIt` class. The `ParseIt` constructor is accessible using `parseIt.Parser`. + +#### Params + +- **String** `format`: The format input. +- **Object** `obj`: An object containing the fields to replace. +- **Array** `args`: An array of arguments to be passed to the replace function (stored in the `obj` object). + +#### Return +- **String** The result as string. + + + +## :yum: How to contribute +Have an idea? Found a bug? See [how to contribute][contributing]. + + +## :sparkling_heart: Support my projects + +I open-source almost everything I can, and I try to reply to everyone needing help using these projects. Obviously, +this takes time. You can integrate and use these projects in your applications *for free*! You can even change the source code and redistribute (even resell it). + +However, if you get some profit from this or just want to encourage me to continue creating stuff, there are few ways you can do it: + + + - Starring and sharing the projects you like :rocket: + - [![Buy me a book][badge_amazon]][amazon]—I love books! I will remember you after years if you buy me one. :grin: :book: + - [![PayPal][badge_paypal]][paypal-donations]—You can make one-time donations via PayPal. I'll probably buy a ~~coffee~~ tea. :tea: + - [![Support me on Patreon][badge_patreon]][patreon]—Set up a recurring monthly donation and you will get interesting news about what I'm doing (things that I don't share with everyone). + - **Bitcoin**—You can send me bitcoins at this address (or scanning the code below): `1P9BRsmazNQcuyTxEqveUsnf5CERdq35V6` + + ![](https://i.imgur.com/z6OQI95.png) + + +Thanks! :heart: + + +## :dizzy: Where is this library used? +If you are using this library in one of your projects, add it in this list. :sparkles: + + + - [`formatoid`](https://github.com/IonicaBizau/formatoid#readme)—Tiny and fast module for formatting date objects. + +## :scroll: License + +[MIT][license] © [Ionică Bizău][website] + + +[badge_patreon]: https://ionicabizau.github.io/badges/patreon.svg +[badge_amazon]: https://ionicabizau.github.io/badges/amazon.svg +[badge_paypal]: https://ionicabizau.github.io/badges/paypal.svg +[badge_paypal_donate]: https://ionicabizau.github.io/badges/paypal_donate.svg + +[patreon]: https://www.patreon.com/ionicabizau +[amazon]: http://amzn.eu/hRo9sIZ +[paypal-donations]: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RVXDDLKKLQRJW + +[license]: http://showalicense.com/?fullname=Ionic%C4%83%20Biz%C4%83u%20%3Cbizauionica%40gmail.com%3E%20(https%3A%2F%2Fionicabizau.net)&year=2015#license-mit +[website]: https://ionicabizau.net +[contributing]: /CONTRIBUTING.md +[docs]: /DOCUMENTATION.md diff --git a/node_modules/parse-it/lib/index.js b/node_modules/parse-it/lib/index.js new file mode 100644 index 0000000000..41c89d9075 --- /dev/null +++ b/node_modules/parse-it/lib/index.js @@ -0,0 +1,85 @@ +"use strict"; + +var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +var regexEscape = require("regex-escape"); + +var ParseIt = function () { + /** + * ParseIt + * The `ParseIt` class. It can be used to use the same data object but with different formats/arguments. + * + * @name ParseIt + * @function + * @param {Object} obj An object containing the fields to replace. + */ + function ParseIt(obj) { + _classCallCheck(this, ParseIt); + + this.obj = obj || {}; + this.re = new RegExp("^(" + Object.keys(obj).map(regexEscape).join("|") + ")"); + } + + /** + * run + * Replaces the fields in the format string with data coming from the data object. + * + * + * @name parseIt + * @function + * @param {String} format The format input. + * @param {Array} args An array of arguments to be passed to the replace function (stored in the `obj` object). + * @return {String} The result as string. + */ + + + _createClass(ParseIt, [{ + key: "run", + value: function run(format, args) { + var result = ""; + args = args || []; + do { + var arr = format.match(this.re), + field = arr && arr[1], + c = field || format.charAt(0); + + if (field) { + var value = this.obj[field]; + if (typeof value === "function") { + value = value.apply(this, args); + } + result += value; + } else { + result += c; + } + format = format.substring(c.length); + } while (format); + return result; + } + }]); + + return ParseIt; +}(); + +/** + * parseIt + * A wrapper around the `ParseIt` class. The `ParseIt` constructor is accessible using `parseIt.Parser`. + * + * @name parseIt + * @function + * @param {String} format The format input. + * @param {Object} obj An object containing the fields to replace. + * @param {Array} args An array of arguments to be passed to the replace function (stored in the `obj` object). + * @return {String} The result as string. + */ + + +function parseIt(format, obj, args) { + return new ParseIt(obj).run(format, args); +} + +parseIt.Parser = ParseIt; + +module.exports = parseIt; \ No newline at end of file diff --git a/node_modules/parse-it/package.json b/node_modules/parse-it/package.json new file mode 100644 index 0000000000..7812a30991 --- /dev/null +++ b/node_modules/parse-it/package.json @@ -0,0 +1,71 @@ +{ + "_from": "parse-it@^1.0.0", + "_id": "parse-it@1.0.9", + "_inBundle": false, + "_integrity": "sha512-8KW9XwW5+DFsvkkSXLZw7AGormnQ+/unnqmTPq7uoiAJNaeLo0T78zT/Ootc0HrdEgVvxM4+mOCRLKJOVtkogQ==", + "_location": "/parse-it", + "_phantomChildren": {}, + "_requested": { + "type": "range", + "registry": true, + "raw": "parse-it@^1.0.0", + "name": "parse-it", + "escapedName": "parse-it", + "rawSpec": "^1.0.0", + "saveSpec": null, + "fetchSpec": "^1.0.0" + }, + "_requiredBy": [ + "/formatoid" + ], + "_resolved": "https://registry.npmjs.org/parse-it/-/parse-it-1.0.9.tgz", + "_shasum": "09c9f52734de2cba309d0e083de305c912f294f3", + "_spec": "parse-it@^1.0.0", + "_where": "/Users/brandonrosage/github/profile-generator/node_modules/formatoid", + "author": { + "name": "Ionică Bizău", + "email": "bizauionica@gmail.com", + "url": "https://ionicabizau.net" + }, + "bugs": { + "url": "https://github.com/IonicaBizau/parse-it/issues" + }, + "bundleDependencies": false, + "dependencies": { + "regex-escape": "^3.4.0" + }, + "deprecated": false, + "description": "Configurable string templating, without separators.", + "files": [ + "bin/", + "app/", + "lib/", + "dist/", + "src/", + "scripts/", + "resources/", + "menu/", + "cli.js", + "index.js", + "bloggify.js", + "bloggify.json", + "bloggify/" + ], + "homepage": "https://github.com/IonicaBizau/parse-it#readme", + "keywords": [ + "parser", + "templating", + "string" + ], + "license": "MIT", + "main": "lib/index.js", + "name": "parse-it", + "repository": { + "type": "git", + "url": "git+ssh://git@github.com/IonicaBizau/parse-it.git" + }, + "scripts": { + "test": "node test" + }, + "version": "1.0.9" +} diff --git a/node_modules/regex-escape/LICENSE b/node_modules/regex-escape/LICENSE new file mode 100644 index 0000000000..d21973eddb --- /dev/null +++ b/node_modules/regex-escape/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015-19 Ionică Bizău (https://ionicabizau.net) + +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. diff --git a/node_modules/regex-escape/README.md b/node_modules/regex-escape/README.md new file mode 100644 index 0000000000..3b169a005d --- /dev/null +++ b/node_modules/regex-escape/README.md @@ -0,0 +1,135 @@ + + + +# regex-escape + + [![Support me on Patreon][badge_patreon]][patreon] [![Buy me a book][badge_amazon]][amazon] [![PayPal][badge_paypal_donate]][paypal-donations] [![Ask me anything](https://img.shields.io/badge/ask%20me-anything-1abc9c.svg)](https://github.com/IonicaBizau/ama) [![Version](https://img.shields.io/npm/v/regex-escape.svg)](https://www.npmjs.com/package/regex-escape) [![Downloads](https://img.shields.io/npm/dt/regex-escape.svg)](https://www.npmjs.com/package/regex-escape) [![Get help on Codementor](https://cdn.codementor.io/badges/get_help_github.svg)](https://www.codementor.io/johnnyb?utm_source=github&utm_medium=button&utm_term=johnnyb&utm_campaign=github) + +Buy Me A Coffee + +> Escapes input characters to be used in regular expressions. + +## :cloud: Installation + +```sh +# Using npm +npm install --save regex-escape + +# Using yarn +yarn add regex-escape +``` + + +## :clipboard: Example + + + +```js +// Dependencies +var RegexEscape = require("regex-escape"); + +console.log(RegexEscape("{#/}")); +// => \{#\/\} +``` + + + +## :question: Get Help + +There are few ways to get help: + + 1. Please [post questions on Stack Overflow](https://stackoverflow.com/questions/ask). You can open issues with questions, as long you add a link to your Stack Overflow question. + 2. For bug reports and feature requests, open issues. :bug: + + 3. For direct and quick help, you can [use Codementor](https://www.codementor.io/johnnyb). :rocket: + + + +## :memo: Documentation + + +### `RegexEscape(input)` +Escapes a string for using it in a regular expression. + +#### Params + +- **String** `input`: The string that must be escaped. + +#### Return +- **String** The escaped string. + +### `proto()` +Adds the `RegexEscape` function to `RegExp` class. + +#### Return +- **Function** The `RegexEscape` function. + + + +## :yum: How to contribute +Have an idea? Found a bug? See [how to contribute][contributing]. + + +## :sparkling_heart: Support my projects + +I open-source almost everything I can, and I try to reply to everyone needing help using these projects. Obviously, +this takes time. You can integrate and use these projects in your applications *for free*! You can even change the source code and redistribute (even resell it). + +However, if you get some profit from this or just want to encourage me to continue creating stuff, there are few ways you can do it: + + + - Starring and sharing the projects you like :rocket: + - [![Buy me a book][badge_amazon]][amazon]—I love books! I will remember you after years if you buy me one. :grin: :book: + - [![PayPal][badge_paypal]][paypal-donations]—You can make one-time donations via PayPal. I'll probably buy a ~~coffee~~ tea. :tea: + - [![Support me on Patreon][badge_patreon]][patreon]—Set up a recurring monthly donation and you will get interesting news about what I'm doing (things that I don't share with everyone). + - **Bitcoin**—You can send me bitcoins at this address (or scanning the code below): `1P9BRsmazNQcuyTxEqveUsnf5CERdq35V6` + + ![](https://i.imgur.com/z6OQI95.png) + + +Thanks! :heart: + + +## :cake: Thanks +Big thanks to [CoolAj86](http://stackoverflow.com/users/151312/coolaj86) for posting [this answer](http://stackoverflow.com/a/6969486/1420197). This library uses the black magic regex from that answer. :sparkles: + +## :dizzy: Where is this library used? +If you are using this library in one of your projects, add it in this list. :sparkles: + + + - [`barbe`](https://github.com/IonicaBizau/barbe)—Like mustache, but simple, tiny and fast. + - [`bloggify-router`](https://github.com/Bloggify/default-router#readme) (by Bloggify)—The default Bloggify router. + - [`camelo`](https://github.com/IonicaBizau/camelo#readme)—Convert a string into camel case style by providing the separators. + - [`chance-token-replacer`](https://github.com/drewbrokke/chance-token-replacer#readme) (by Drew Brokke)—A simple utility to replace tokens in a string with generations from the chance random generator helper + - [`css-assets`](https://github.com/manojchandrashekar/css-assets#readme) (by Manoj Chandrashekar)—Helps build CSS files and referenced assets. + - [`doodle-data`](https://github.com/regular/doodle-data#readme) (by Jan Bölsche)—get the data of a doodle.com poll + - [`emoji.css`](https://github.com/IonicaBizau/emoji.css)—Your website. Emojified. Like FontAwesome for emojis. + - [`engine-flow-types`](https://github.com/jillix/engine-flow-types#readme) (by jillix)—Low level library providing Engine flow types. + - [`gatsby-plugin-compile-es6-packages`](https://github.com/robwalkerco/gatsby-plugin-compile-es6-packages#readme) (by Rob Walker)—Easily add support for compiling ES6 packages into Gasby projects + - [`html-encoder-decoder`](https://github.com/IonicaBizau/html-encoder-decoder)—HTML Encoder / Decoder - Converts characters to their corresponding HTML Entities + - [`hubot-lgtm`](https://github.com/catops/hubot-lgtm#readme) (by Chris Contolini)—Automatically merge pull requests after contributors have given the thumbs up + - [`items-service`](https://github.com/BlueForestTrees/items-service#readme)—Les services commun de gestion d'items dans blueforest + - [`kresus`](https://npmjs.com/package/kresus)—Kresus' Personal Finance Manager + - [`luhnify`](https://github.com/koopero/luhnify#readme) (by Samm Cooper)—Generate random Luhn sequences, such as credit card numbers. + - [`parse-it`](https://github.com/IonicaBizau/parse-it#readme)—Configurable string templating, without separators. + - [`slugly`](https://github.com/IonicaBizau/slugly#readme)—A minimal and yet powerful slug library. + - [`taskcluster-lib-references`](https://github.com/taskcluster/taskcluster-lib-references#readme) (by Dustin J. Mitchell)—Taskcluster-lib-references is responsible for handling the API reference data, including manifests, API references, exchange references, and JSON schemas. + +## :scroll: License + +[MIT][license] © [Ionică Bizău][website] + + +[badge_patreon]: https://ionicabizau.github.io/badges/patreon.svg +[badge_amazon]: https://ionicabizau.github.io/badges/amazon.svg +[badge_paypal]: https://ionicabizau.github.io/badges/paypal.svg +[badge_paypal_donate]: https://ionicabizau.github.io/badges/paypal_donate.svg + +[patreon]: https://www.patreon.com/ionicabizau +[amazon]: http://amzn.eu/hRo9sIZ +[paypal-donations]: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RVXDDLKKLQRJW + +[license]: http://showalicense.com/?fullname=Ionic%C4%83%20Biz%C4%83u%20%3Cbizauionica%40gmail.com%3E%20(https%3A%2F%2Fionicabizau.net)&year=2015#license-mit +[website]: https://ionicabizau.net +[contributing]: /CONTRIBUTING.md +[docs]: /DOCUMENTATION.md diff --git a/node_modules/regex-escape/lib/index.js b/node_modules/regex-escape/lib/index.js new file mode 100644 index 0000000000..082a7b55bb --- /dev/null +++ b/node_modules/regex-escape/lib/index.js @@ -0,0 +1,29 @@ +"use strict"; + +/** + * RegexEscape + * Escapes a string for using it in a regular expression. + * + * @name RegexEscape + * @function + * @param {String} input The string that must be escaped. + * @return {String} The escaped string. + */ +function RegexEscape(input) { + return input.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&"); +} + +/** + * proto + * Adds the `RegexEscape` function to `RegExp` class. + * + * @name proto + * @function + * @return {Function} The `RegexEscape` function. + */ +RegexEscape.proto = function () { + RegExp.escape = RegexEscape; + return RegexEscape; +}; + +module.exports = RegexEscape; \ No newline at end of file diff --git a/node_modules/regex-escape/package.json b/node_modules/regex-escape/package.json new file mode 100644 index 0000000000..46797d6c3a --- /dev/null +++ b/node_modules/regex-escape/package.json @@ -0,0 +1,80 @@ +{ + "_from": "regex-escape@^3.4.0", + "_id": "regex-escape@3.4.9", + "_inBundle": false, + "_integrity": "sha512-Cv9rjwyQwVhn3L097ysanWsEElurmxDj6Cc4Ut23z7e6hzRbrNvF3Le7yAciMfuzyb0sZwSr0ZHunMNCIoy2/g==", + "_location": "/regex-escape", + "_phantomChildren": {}, + "_requested": { + "type": "range", + "registry": true, + "raw": "regex-escape@^3.4.0", + "name": "regex-escape", + "escapedName": "regex-escape", + "rawSpec": "^3.4.0", + "saveSpec": null, + "fetchSpec": "^3.4.0" + }, + "_requiredBy": [ + "/parse-it" + ], + "_resolved": "https://registry.npmjs.org/regex-escape/-/regex-escape-3.4.9.tgz", + "_shasum": "407b413562e2373d56994ff213e693658ea4f8f7", + "_spec": "regex-escape@^3.4.0", + "_where": "/Users/brandonrosage/github/profile-generator/node_modules/parse-it", + "author": { + "name": "Ionică Bizău", + "email": "bizauionica@gmail.com", + "url": "https://ionicabizau.net" + }, + "blah": { + "thanks": [ + "Big thanks to [CoolAj86](http://stackoverflow.com/users/151312/coolaj86) for posting [this answer](http://stackoverflow.com/a/6969486/1420197). This library uses the black magic regex from that answer. :sparkles:" + ] + }, + "bugs": { + "url": "https://github.com/IonicaBizau/regex-escape.js/issues" + }, + "bundleDependencies": false, + "contributors": [ + { + "name": "CoolAJ86 http://stackoverflow.com/users/151312/coolaj86" + } + ], + "deprecated": false, + "description": "Escapes input characters to be used in regular expressions.", + "directories": { + "example": "example" + }, + "files": [ + "bin/", + "app/", + "lib/", + "dist/", + "src/", + "scripts/", + "resources/", + "menu/", + "cli.js", + "index.js", + "bloggify.js", + "bloggify.json", + "bloggify/" + ], + "homepage": "https://github.com/IonicaBizau/regex-escape.js", + "keywords": [ + "regex", + "escape" + ], + "license": "MIT", + "main": "lib/index.js", + "name": "regex-escape", + "repository": { + "type": "git", + "url": "git+ssh://git@github.com/IonicaBizau/regex-escape.js.git" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "version": "3.4.9" +} diff --git a/node_modules/sliced/History.md b/node_modules/sliced/History.md new file mode 100644 index 0000000000..e45cefe8f7 --- /dev/null +++ b/node_modules/sliced/History.md @@ -0,0 +1,41 @@ + +1.0.1 / 2015-07-14 +================== + + * fixed; missing file introduced in 4f5cea1 + +1.0.0 / 2015-07-12 +================== + + * Remove unnecessary files from npm package - #6 via joaquimserafim + * updated readme stats + +0.0.5 / 2013-02-05 +================== + + * optimization: remove use of arguments [jkroso](https://github.com/jkroso) + * add scripts to component.json [jkroso](https://github.com/jkroso) + * tests; remove time for travis + +0.0.4 / 2013-01-07 +================== + + * added component.json #1 [jkroso](https://github.com/jkroso) + * reversed array loop #1 [jkroso](https://github.com/jkroso) + * remove fn params + +0.0.3 / 2012-09-29 +================== + + * faster with negative start args + +0.0.2 / 2012-09-29 +================== + + * support full [].slice semantics + +0.0.1 / 2012-09-29 +=================== + + * initial release + diff --git a/node_modules/sliced/LICENSE b/node_modules/sliced/LICENSE new file mode 100644 index 0000000000..38c529daa6 --- /dev/null +++ b/node_modules/sliced/LICENSE @@ -0,0 +1,22 @@ +(The MIT License) + +Copyright (c) 2012 [Aaron Heckmann](aaron.heckmann+github@gmail.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. diff --git a/node_modules/sliced/README.md b/node_modules/sliced/README.md new file mode 100644 index 0000000000..b6ff85eb2b --- /dev/null +++ b/node_modules/sliced/README.md @@ -0,0 +1,62 @@ +#sliced +========== + +A faster alternative to `[].slice.call(arguments)`. + +[![Build Status](https://secure.travis-ci.org/aheckmann/sliced.png)](http://travis-ci.org/aheckmann/sliced) + +Example output from [benchmark.js](https://github.com/bestiejs/benchmark.js) + + Array.prototype.slice.call x 1,401,820 ops/sec ±2.16% (90 runs sampled) + [].slice.call x 1,313,116 ops/sec ±2.04% (96 runs sampled) + cached slice.call x 10,297,910 ops/sec ±1.81% (96 runs sampled) + sliced x 19,906,019 ops/sec ±1.23% (89 runs sampled) + fastest is sliced + + Array.prototype.slice.call(arguments, 1) x 1,373,238 ops/sec ±1.84% (95 runs sampled) + [].slice.call(arguments, 1) x 1,395,336 ops/sec ±1.36% (93 runs sampled) + cached slice.call(arguments, 1) x 9,926,018 ops/sec ±1.67% (92 runs sampled) + sliced(arguments, 1) x 20,747,990 ops/sec ±1.16% (93 runs sampled) + fastest is sliced(arguments, 1) + + Array.prototype.slice.call(arguments, -1) x 1,319,908 ops/sec ±2.12% (91 runs sampled) + [].slice.call(arguments, -1) x 1,336,170 ops/sec ±1.33% (97 runs sampled) + cached slice.call(arguments, -1) x 10,078,718 ops/sec ±1.21% (98 runs sampled) + sliced(arguments, -1) x 20,471,474 ops/sec ±1.81% (92 runs sampled) + fastest is sliced(arguments, -1) + + Array.prototype.slice.call(arguments, -2, -10) x 1,369,246 ops/sec ±1.68% (97 runs sampled) + [].slice.call(arguments, -2, -10) x 1,387,935 ops/sec ±1.70% (95 runs sampled) + cached slice.call(arguments, -2, -10) x 9,593,428 ops/sec ±1.23% (97 runs sampled) + sliced(arguments, -2, -10) x 23,178,931 ops/sec ±1.70% (92 runs sampled) + fastest is sliced(arguments, -2, -10) + + Array.prototype.slice.call(arguments, -2, -1) x 1,441,300 ops/sec ±1.26% (98 runs sampled) + [].slice.call(arguments, -2, -1) x 1,410,326 ops/sec ±1.96% (93 runs sampled) + cached slice.call(arguments, -2, -1) x 9,854,419 ops/sec ±1.02% (97 runs sampled) + sliced(arguments, -2, -1) x 22,550,801 ops/sec ±1.86% (91 runs sampled) + fastest is sliced(arguments, -2, -1) + +_Benchmark [source](https://github.com/aheckmann/sliced/blob/master/bench.js)._ + +##Usage + +`sliced` accepts the same arguments as `Array#slice` so you can easily swap it out. + +```js +function zing () { + var slow = [].slice.call(arguments, 1, 8); + var args = slice(arguments, 1, 8); + + var slow = Array.prototype.slice.call(arguments); + var args = slice(arguments); + // etc +} +``` + +## install + + npm install sliced + + +[LICENSE](https://github.com/aheckmann/sliced/blob/master/LICENSE) diff --git a/node_modules/sliced/index.js b/node_modules/sliced/index.js new file mode 100644 index 0000000000..d88c85b102 --- /dev/null +++ b/node_modules/sliced/index.js @@ -0,0 +1,33 @@ + +/** + * An Array.prototype.slice.call(arguments) alternative + * + * @param {Object} args something with a length + * @param {Number} slice + * @param {Number} sliceEnd + * @api public + */ + +module.exports = function (args, slice, sliceEnd) { + var ret = []; + var len = args.length; + + if (0 === len) return ret; + + var start = slice < 0 + ? Math.max(0, slice + len) + : slice || 0; + + if (sliceEnd !== undefined) { + len = sliceEnd < 0 + ? sliceEnd + len + : sliceEnd + } + + while (len-- > start) { + ret[len - start] = args[len]; + } + + return ret; +} + diff --git a/node_modules/sliced/package.json b/node_modules/sliced/package.json new file mode 100644 index 0000000000..a8f122f131 --- /dev/null +++ b/node_modules/sliced/package.json @@ -0,0 +1,62 @@ +{ + "_from": "sliced@^1.0.1", + "_id": "sliced@1.0.1", + "_inBundle": false, + "_integrity": "sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=", + "_location": "/sliced", + "_phantomChildren": {}, + "_requested": { + "type": "range", + "registry": true, + "raw": "sliced@^1.0.1", + "name": "sliced", + "escapedName": "sliced", + "rawSpec": "^1.0.1", + "saveSpec": null, + "fetchSpec": "^1.0.1" + }, + "_requiredBy": [ + "/elly" + ], + "_resolved": "https://registry.npmjs.org/sliced/-/sliced-1.0.1.tgz", + "_shasum": "0b3a662b5d04c3177b1926bea82b03f837a2ef41", + "_spec": "sliced@^1.0.1", + "_where": "/Users/brandonrosage/github/profile-generator/node_modules/elly", + "author": { + "name": "Aaron Heckmann", + "email": "aaron.heckmann+github@gmail.com" + }, + "bugs": { + "url": "https://github.com/aheckmann/sliced/issues" + }, + "bundleDependencies": false, + "dependencies": {}, + "deprecated": false, + "description": "A faster Node.js alternative to Array.prototype.slice.call(arguments)", + "devDependencies": { + "benchmark": "~1.0.0", + "mocha": "1.5.0" + }, + "files": [ + "LICENSE", + "README.md", + "index.js" + ], + "homepage": "https://github.com/aheckmann/sliced#readme", + "keywords": [ + "arguments", + "slice", + "array" + ], + "license": "MIT", + "main": "index.js", + "name": "sliced", + "repository": { + "type": "git", + "url": "git://github.com/aheckmann/sliced.git" + }, + "scripts": { + "test": "make test" + }, + "version": "1.0.1" +} diff --git a/package-lock.json b/package-lock.json index cdc358c645..772f937468 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4,6 +4,83 @@ "lockfileVersion": 1, "requires": true, "dependencies": { + "add-subtract-date": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/add-subtract-date/-/add-subtract-date-1.0.14.tgz", + "integrity": "sha512-e070xJdKBEEdAgCJJm1nBSdGv4Y6C2LXP9PYHBUJPV/3eUkZ46bnnkzejmXmTFYyIsiouLPt26yGgsHZL7WDvg==" + }, + "days": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/days/-/days-1.1.1.tgz", + "integrity": "sha512-vzeIwVsEIyA35GH4+mPd4hjVDNI87wYANyZFs0BHjBr5kIBH5zEl7LfD6Wr4SFZca4D3CU9IH1w4DuZLlXzKRw==" + }, + "elly": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/elly/-/elly-1.1.10.tgz", + "integrity": "sha512-CXlhCGIzVjX1SLPttmq2fo7wsOlfPMsxqf8rIbpFSkNWC+U8Nuldo6rG6oeFiBY9+8e7YcizwDnyK72APWH+dQ==", + "requires": { + "iterate-object": "^1.3.2", + "sliced": "^1.0.1" + } + }, + "fillo": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/fillo/-/fillo-1.0.12.tgz", + "integrity": "sha512-WjV09RN7NEp1EazSNKJVZCVHeWYj4MNyb4HX1BAyrW4j0OW2UPJukP4SUkJt9Nj7gWgyD6avK0mH5bjwOZFViw==" + }, + "formatoid": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/formatoid/-/formatoid-1.2.3.tgz", + "integrity": "sha512-CkI0aK01nKhHoFZByDKw/yrNPy+g56DNIEmlq0Q67grdR/LLV8Orc9gsTGVP7XufM3bZg8iuD5UsVfkOdJo2yg==", + "requires": { + "days": "^1.0.1", + "fillo": "^1.0.0", + "months": "^1.0.0", + "parse-it": "^1.0.0" + } + }, + "github-calendar": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/github-calendar/-/github-calendar-1.3.1.tgz", + "integrity": "sha512-ABlceh7wTRLvKQK1h0srrD9FHjHeHXtsxPw8sEUOX9uq4YItlrPaLY7ftNuvC0N1w6yCjcQBV+zjIzNAD9iczg==", + "requires": { + "add-subtract-date": "^1.0.5", + "elly": "^1.0.0", + "formatoid": "^1.0.3", + "github-calendar-parser": "^1.1.3" + } + }, + "github-calendar-legend": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/github-calendar-legend/-/github-calendar-legend-1.0.10.tgz", + "integrity": "sha512-dDfX2Hvl98mSNbM9jRsZoZ0STb/AJcaf8ofRGXpH2oHtiQ73IlL8LFzOUzp49xSTFf0XYBs4DCXEhgbh+Fir2A==" + }, + "github-calendar-parser": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/github-calendar-parser/-/github-calendar-parser-1.1.10.tgz", + "integrity": "sha512-muDJpHio2ATZ9WXqTjyrFitLxFlJyZTy/c0EtiNhOwPzUBW4zr3mnX1qoiZM8DkgbLAyZY5CoEno3GEXPDSMPQ==", + "requires": { + "github-calendar-legend": "^1.0.0" + } + }, + "iterate-object": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/iterate-object/-/iterate-object-1.3.3.tgz", + "integrity": "sha512-DximWbkke36cnrSfNJv6bgcB2QOMV9PRD2FiowwzCoMsh8RupFLdbNIzWe+cVDWT+NIMNJgGlB1dGxP6kpzGtA==" + }, + "months": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/months/-/months-1.2.0.tgz", + "integrity": "sha512-zFM7hUpziSYGk2DNObYGWgHdRRxAOgjl8CC1Rbl50p/q0rGDsREfk0nbxxmSIquVi/lEAuUY8nwbwkZ8biNCOQ==" + }, + "parse-it": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/parse-it/-/parse-it-1.0.9.tgz", + "integrity": "sha512-8KW9XwW5+DFsvkkSXLZw7AGormnQ+/unnqmTPq7uoiAJNaeLo0T78zT/Ootc0HrdEgVvxM4+mOCRLKJOVtkogQ==", + "requires": { + "regex-escape": "^3.4.0" + } + }, "primer-base": { "version": "1.9.2", "resolved": "https://registry.npmjs.org/primer-base/-/primer-base-1.9.2.tgz", @@ -124,6 +201,16 @@ "requires": { "primer-support": "4.7.2" } + }, + "regex-escape": { + "version": "3.4.9", + "resolved": "https://registry.npmjs.org/regex-escape/-/regex-escape-3.4.9.tgz", + "integrity": "sha512-Cv9rjwyQwVhn3L097ysanWsEElurmxDj6Cc4Ut23z7e6hzRbrNvF3Le7yAciMfuzyb0sZwSr0ZHunMNCIoy2/g==" + }, + "sliced": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sliced/-/sliced-1.0.1.tgz", + "integrity": "sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=" } } } diff --git a/package.json b/package.json index d64a839d42..c456562d45 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,7 @@ }, "homepage": "https://github.com/github/profile-generator#readme", "dependencies": { + "github-calendar": "^1.3.1", "primer-core": "^6.10.9" } }