{"_id":"persian-date","_rev":"29-ea2759c6bd4537e29f05aa039ed39b5b","name":"persian-date","time":{"modified":"2022-06-23T18:49:30.157Z","created":"2014-12-11T18:34:07.305Z","0.1.7":"2014-12-11T18:34:07.305Z","0.1.8":"2014-12-11T18:41:02.899Z","0.1.8-b":"2014-12-21T14:35:42.624Z","0.2.0":"2017-06-16T16:10:03.167Z","0.2.1":"2017-08-18T13:07:57.498Z","0.2.2":"2017-08-18T14:20:25.881Z","0.2.3":"2017-08-18T17:35:57.388Z","0.2.4":"2017-08-19T21:00:15.259Z","0.2.5":"2017-09-02T16:15:47.522Z","0.3.0":"2017-09-09T20:17:45.152Z","0.3.0-b":"2017-09-15T10:49:22.421Z","0.3.1-b":"2017-09-15T18:28:00.863Z","1.0.0":"2017-10-01T17:08:11.863Z","1.0.1":"2017-10-01T19:17:18.086Z","1.0.3":"2017-12-24T15:54:58.150Z","1.0.4":"2018-01-27T18:21:05.344Z","1.0.5":"2018-02-10T23:34:16.175Z","1.1.0-rc1":"2019-05-07T10:15:14.707Z","1.1.0-rc2":"2019-05-07T11:00:04.235Z","1.1.0":"2019-07-07T13:55:32.260Z"},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"dist-tags":{"latest":"1.1.0","beta":"0.3.1-b","next":"1.1.0-rc2"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","readme":"Persian Date\n==============\n\nJavascript date library for parsing, validating, manipulating, and formatting Persian dates System.\n\n> from 1.0.0 persian date support gregorian calendar.\n\nInspired by [momentjs](http://momentjs.com/)\n\nMore info at [wikipedia](http://en.wikipedia.org/wiki/Iranian_calendar)\n\n[![npm version](https://badge.fury.io/js/persian-date.svg)](https://github.com/babakhani/persiandate)\n[![Bower version](https://badge.fury.io/bo/persian-date.svg)](https://github.com/babakhani/persiandate)\n[![Coverage Status](https://coveralls.io/repos/github/babakhani/PersianDate/badge.svg?branch=master)](https://coveralls.io/github/babakhani/PersianDate?branch=master)\n[![Travis-ci](https://travis-ci.org/babakhani/PersianDate.svg?branch=master)](https://github.com/babakhani/persiandate)\n\n<a class=\"github-button\" href=\"https://github.com/babakhani/persiandate\" data-icon=\"octicon-star\" data-style=\"mega\" data-count-href=\"/babakhani/persiandate/stargazers\" data-count-api=\"/repos/babakhani/persiandate#stargazers_count\" data-count-aria-label=\"# stargazers on GitHub\" aria-label=\"Star babakhani/persiandate on GitHub\">Star</a>\n<a class=\"github-button\" href=\"https://github.com/babakhani/persiandate/issues\" data-icon=\"octicon-issue-opened\" data-style=\"mega\" data-count-api=\"/repos/babakhani/persiandate#open_issues_count\" data-count-aria-label=\"# issues on GitHub\" aria-label=\"Issue babakhani/persiandate on GitHub\">Issue</a>\n<a class=\"github-button\" href=\"https://github.com/babakhani/persiandate/fork\" data-icon=\"octicon-repo-forked\" data-style=\"mega\" data-count-href=\"/babakhani/persiandate/network\" data-count-api=\"/repos/babakhani/persiandate#forks_count\" data-count-aria-label=\"# forks on GitHub\" aria-label=\"Fork babakhani/persiandate on GitHub\">Fork</a>\n\n\n## Install\n\n```shell\nnpm install persian-date --save-dev\nbower install persian-date --save-dev\n```\n\n## Browser\n\n```html\n<script src=\"node_modules/persian-date/dist/persian-date.js\" type=\"text/javascript\"></script>\n<script type=\"text/javascript\">\n    new persianDate().format(); // \"۱۳۹۶-۰۱-۱۱ ۲۳:۳۳:۲۷ ب ظ\" (when i run in my console)  \n</script>\n```\n## Webpack\n```\nrequire('persian-date');\n```\n\n## Calendar and locale\n\n### toCalendar\n\ndefault: ```persian```\n\navailable option: ```persian``` ```gregorian```\n\nfrom version 1.0.* ```persianDate``` have an option that allows developers to set calendar type of Date object.\n\nyou can change calendar type globally or only in specific object\n\nif you want change calendar type globally:\n\n\n```javascript\npersianDate.toCalendar('gregorian');\nnew persianDate([2017]).year(); // 2017\nnew persianDate([2017]).format('MMM'); // \"ژانویه\"\n```\n\nor only on instance:\n\n```javascript\nnew persianDate([1396]).toCalendar('gregorian').year(); // 2017\n```\n\n### toLeapYearMode\n\ndefault: ``` algorithmic ```\n\navailable option: ``` algorithmic ```, ``` astronomical ```\n\nThere is two popular way to determining leap years for the Persian calendar. \n\n- astronomical: occur whenever that number of days elapsed between equinoxes at the reference meridian.\n\n- algorithmic: based on Behrooz-Birashk proposed algorithm.\n\nAfter version 1.0.* ```persianDate``` support both algorithms and you can choose which algorithm use in your project. \ncurrently, we have support 2 type of leap year mode ``` algorithmic ```, ``` astronomical ```.\n\nyou can change it globally like this example\n\n```javascript\npersianDate.toLeapYearMode('algorithmic')\n```\n\nor change it in you instance\n\n```javascript\nnew persianDate().toLeapYearMode('algorithmic')\n```\n\n> ```toLeapYearMode``` only work when calendar type is ```persian```, and doesnt any effect on ```gregorian``` calendar\n\n### toLocale\n\ndefault: ```fa```\n\navailable option: ```fa``` ```en```\n\nif you want change locale globally:\n \n```javascript\npersianDate.toLocale('fa');\nnew persianDate([1396,6,17]).format(); // \"۱۳۹۶-۰۶-۱۷ ۰۰:۰۰:۰۰ ق ظ\"\nnew persianDate([1396,6,17]).format('dddd'); // \"جمعه\"\nnew persianDate([1396,6,17]).format('MMMM'); // \"شهریور\"\n\npersianDate.toLocale('en');\nnew persianDate([1396,6,17]).format(); // \"1396-06-17 00:00:00 AM\"\nnew persianDate([1396,6,17]).format('dddd'); // \"Friday\"\nnew persianDate([1396,6,17]).format('MMMM'); // \"Shahrivar\"\n\n```\n\nor only on instance:\n\n\n```javascript\nnew persianDate([1396,6,17]).toLocale('fa').format(); // \"۱۳۹۶-۰۶-۱۷ ۰۰:۰۰:۰۰ ق ظ\"\nnew persianDate([1396,6,17]).toLocale('fa').format('dddd'); // \"جمعه\"\nnew persianDate([1396,6,17]).toLocale('fa').format('MMMM'); // \"شهریور\"\n\npersianDate.toCalendar('gregorian');\nnew persianDate([1396,6,17]).toLocale('en').format(); // \"1397-07-07 00:00:00 AM\"\nnew persianDate([1396,6,17]).toLocale('en').format('dddd'); // \"Friday\"\nnew persianDate([1396,6,17]).toLocale('en').format('MMMM'); // \"June\"\n\n```\n\n> after version 1.0.*, you must use ```toLocale``` instead ```formatPersian```, for show persian or english digit.\n\n## Parse\n\nInstead of modifying the native ``` Date.prototype ``` , persianDate creates a wrapper for the Date object.\nTo get this wrapper object, simply call ``` persianDate() ``` with one of the supported input types.\n\n### Now\n\n```javascript\nnew persianDate();\n```\n\nTo get the current date and time, just call ```persianDate()``` with no parameters.\n\n```javascript\nvar now = new persianDate();\n```\n\nThis is essentially the same as calling ```new persianDate(new Date())``` .\n\n\n### Unix Offset (milliseconds)\n\n```javascript\nnew persianDate(/* Number */);\n```\n\nSimilar to ``` new Date(Number)```, you can create a persianDate by passing an integer value representing the number of milliseconds since the Unix Epoch (Jan 1 1970 12AM UTC).\n\n\n```javascript\nvar day = new persianDate(1318781876406); // \"۱۳۹۰-۰۷-۲۴ ۱۹:۴۷:۵۶ ب ظ\"\n```\n\n### Unix Timestamp (seconds)\n\n```javascript\npersianDate.unix(/* Number */);\n```\n\nTo create a persianDate from a Unix timestamp (seconds since the Unix Epoch), use ```persianDate.unix(Number)```\n\n```javascript\nvar day = new persianDate.unix(1318781876); // \"۱۳۹۰-۰۷-۲۴ ۱۹:۴۷:۵۶ ب ظ\"\n```\n\nThis is implemented as ```persianDate(timestamp * 1000)``` , so partial seconds in the input timestamp are included.\n\n### Date\n\n<!-- skip-example -->\n```javascript\nnew persianDate(new Date());\n```\n\nYou can create a ```persianDate``` with a pre-existing native Javascript ```Date``` object.\n\n<!-- skip-example -->\n```javascript\nvar day = new Date(2011, 9, 16);\nvar dayWrapper = new persianDate(day); // \"۱۳۹۰-۰۷-۲۴ ۰۰:۰۰:۰۰ ق ظ\"\n```\nThis is the fastest way to get a persianDate.js wrapper.\n\n\n### Array\n\n> ['year', 'month', 'day', 'hour', 'minute', 'second', 'millisecond']\n\n```javascript\nnew persianDate([1391, 12, 29, 12, 25, 25, 900]);\n```\n\nYou can create a persianDate with an array of numbers that mirror the parameters passed to new ```Date()``` But As Persian Date Number Like [1393,2,22,11,22,30]\n\n```javascript\nnew persianDate([1393, 1, 14, 15,25, 50,125]); // \"۱۳۹۳-۰۱-۱۴ ۱۵:۲۵:۵۰ ب ظ\"\n```\n\nAny value past the year is optional, and will default to the lowest possible number.\n\n```javascript\nnew persianDate([1392]); // Farvardin 1st\nnew persianDate([1392, 6]); // Shahrivar 1st\nnew persianDate([1392, 6, 10]); // Shahrivar 10th\n```\n\n> Note: from 1.0.* you can pass gregorian date array to create gregorian date object. for this functionality you must change date object calendar type by ```toCalendar('gregorian')```\n\nexample:\n\n```javascript\npersianDate.toCalendar('gregorian');\nnew persianDate([2017,2,2]).format(); // \"۲۰۱۷-۰۲-۰۲ ۰۰:۰۰:۰۰ ق ظ\"\n```\n\n\n### ASP.NET JSON Date\n\n```\nnew persianDate(String);\n```\n\nASP.NET returns dates in JSON as ```/Date(1198908717056)/``` or ```/Date(1198908717056-0700)/```\n\nIf a string that matches this format is passed in, it will be parsed correctly.\n\n```javascript\nnew persianDate(\"/Date(1198908717056-0700)/\"); //\"۱۳۸۶-۱۰-۰۸ ۰۹:۴۱:۵۷ ق ظ\"\n```\n\n\n### PesianDate Clone\n\n```\nnew persianDate(persianDate);\n```\n\nAll persianDate are mutable. If you want a clone of a persianDate, you can do so explicitly or implicitly.\nCalling ```persianDate()``` on a persianDate will clone it.\n\n<!-- skip-example -->\n```javascript\nvar a = new persianDate([1392]);\nvar b = new persianDate(a);\na.year(1300);\nb.year(); // 1392\n```\n\n<!-- skip-example -->\n```javascript\nvar a = new persianDate([1392]);\nvar b = a.clone();\na.year(1300);\nb.year(); // 1392\n```\n\n## Get + Set\n\npersainDate.js uses overloaded getters and setters. You may be familiar with this pattern from it's use in jQuery.\n\nCalling these methods without parameters acts as a getter, and calling them with a parameter acts as a setter.\n\nThese map to the corresponding function on the native ```Date``` object.\n\n```javascript\nnew persianDate().seconds(30).valueOf() === new Date().setSeconds(30); // true\nnew persianDate().seconds() === new Date().getSeconds(); // true\n```\n\n### Millisecond\n\n```javascript\nnew persianDate().millisecond(100);\nnew persianDate().millisecond(); // 100\nnew persianDate().milliseconds(100);\nnew persianDate().milliseconds(); // 100\n```\n\nGets or sets the milliseconds.\n\nAccepts numbers from 0 to 999. If the range is exceeded, it will bubble up to the seconds.\n\n### Second\n\n```javascript\nnew persianDate().second(10);\nnew persianDate().second(); // 10\nnew persianDate().seconds(10);\nnew persianDate().seconds(); // 10\n```\n\nGets or sets the seconds.\n\nAccepts numbers from 0 to 59. If the range is exceeded, it will bubble up to the minutes.\n\n### Minute\n\n```javascript\nnew persianDate().minute(20);\nnew persianDate().minute(); // 20\nnew persianDate().minutes(20);\nnew persianDate().minutes(); // 20\n```\n\nGets or sets the minutes.\n\nAccepts numbers from 0 to 59. If the range is exceeded, it will bubble up to the hours.\n\n### Hour\n\n```javascript\nnew persianDate().hour(12);\nnew persianDate().hour(); // 12\nnew persianDate().hours(12);\nnew persianDate().hours(); // 12\n```\n\nGets or sets the hour.\n\nAccepts numbers from 0 to 23. If the range is exceeded, it will bubble up to the day.\n\n### Date of Month\n\n```javascript\nnew persianDate().date(23);\nnew persianDate().date(); // 23\nnew persianDate().dates(23);\nnew persianDate().dates(); // 23\n```\n\nGets or sets the day of the month.\n\nAccepts numbers from 1 to 31. If the range is exceeded, it will bubble up to the months.\n\n> Note: persianDate#date is for the date of the month, and persianDate#day is for the day of the week.\n\n### Year\n\n```javascript\nnew persianDate().year(1390);\nnew persianDate().year(); // 1390\nnew persianDate().years(1390);\nnew persianDate().years(); // 1390\n```\n\nGets or sets the year.\n\nAccepts numbers from -270,000 to 270,000.\n\n### Day of Week\n\n```javascript\nnew persianDate().day(); // Number\nnew persianDate().days(); // Number\n```\n\nGets the day of the week.\n\n> Note: ```persianDate#date``` is for the date of the month, and ```persianDate#day``` is for the day of the week.\n\n\n## Manipulate\n\nOnce you have a PersianDate , you may want to manipulate it in some way. There are a number of methods to help with this.\n\npersianDate.js uses the [fluent interface pattern](http://en.wikipedia.org/wiki/Fluent_interface),\n also known as [method chaining](https://en.wikipedia.org/wiki/Method_chaining). This allows you to do crazy things like the following.\n\n```javascript\nnew persianDate().add('days', 7).subtract('months', 1).year(2009).hours(0).minutes(0).seconds(0);\n```\n\n> Note: It should be noted that persianDates are mutable. Calling any of the manipulation methods will change the original persianDate.\n\nIf you want to create a copy and manipulate it, you should use ```persianDate#clone``` before manipulating the persianDate.\n\n\n### Add\n\n<!-- skip-example -->\n```javascript\nnew persianDate().add(String, Number);\n```\n\nMutates the original persianDate by adding time.\n\nThis is a pretty robust function for adding time to an existing persianDate. To add time, pass the key of what time you want to add, and the amount you want to add.\n\n```javascript\nnew persianDate().add('days', 7);\n```\n\nThere are some shorthand keys as well if you're into that whole brevity thing.\n\n```javascript\nnew persianDate().add('d', 7);\n```\n\n| Key\t        | Alternate\t    | Shorthand |\n| ------------- |:-------------:|:-:|\n| years\t        | year\t        | y |\n| months\t    | month\t        | M |\n| weeks\t        | week\t        | w |\n| days\t        | day\t        | d |\n| hours\t        | hour\t        | h |\n| minutes\t    | minute\t    | m |\n| seconds   \t| second\t    | s |\n| milliseconds\t| millisecond\t| ms|\n\nIf you want to add multiple different keys at the same time, you can pass them in as an object literal.\n\n```javascript\nnew persianDate().add('days', 7).add('months', 1); // with chaining\n```\n\nThere are no upper limits for the amounts, so you can overload any of the parameters.\n\n```javascript\nnew persianDate().add('milliseconds', 1000000); // a million milliseconds\nnew persianDate().add('days', 360); // 360 days\n```\n\n### Subtract\n\n<!-- skip-example -->\n```javascript\nnew persianDate().subtract(String, Number);\n```\n\nMutates the original persianDate by subtracting time.\n\nThis is exactly the same as ```persianDate#add``` , only instead of adding time, it subtracts time.\n\n```javascript\nnew persianDate().subtract('days', 7);\n```\n\n### Start of Time\n\n<!-- skip-example -->\n```javascript\nnew persianDate().startOf(String);\n```\n\nMutates the original persianDate by setting it to the start of a unit of time.\n\n```javascript\nnew persianDate().startOf('year');   // set to Farvardin 1st, 12:00 am this year\nnew persianDate().startOf('month');  // set to the first of this month, 12:00 am\nnew persianDate().startOf('week');   // set to the first day of this week, 12:00 am\nnew persianDate().startOf('day');    // set to 12:00 am today\nnew persianDate().startOf('hour');   // set to now, but with 0 mins, 0 secs, and 0 ms\nnew persianDate().startOf('minute'); // set to now, but with 0 seconds and 0 milliseconds\nnew persianDate().startOf('second'); // same as persianDate().milliseconds(0);\n```\n\nThese shortcuts are essentially the same as the following.\n\n```javascript\nnew persianDate().startOf('year');\nnew persianDate().month(1).date(1).hours(0).minutes(0).seconds(0).milliseconds(0);\n```\n\n```javascript\nnew persianDate().startOf('hour');\nnew persianDate().minutes(0).seconds(0).milliseconds(0)\n```\n\n### End of Time\n\n```javascript\nnew persianDate().endOf(String);\n```\n\nMutates the original persianDate by setting it to the end of a unit of time.\n\nThis is the same as ```persianDate#startOf``` , only instead of setting to the start of a unit of time, it sets to the end of a unit of time.\n\n```javascript\nnew persianDate().endOf(\"year\"); // set the persianDate to 12-31 11:59:59.999 pm this year\n```\n\n## Display\n\nOnce parsing and manipulation are done, you need some way to display the persianDate.\n\n\n### Format\n\n```javascript\nnew persianDate().format();\nnew persianDate().format('string');\n```\n\nThis is the most robust display option. It takes a string of tokens and replaces them with their corresponding values.\n\n```javascript\nnew persianDate().format(\"dddd, MMMM DD YYYY, h:mm:ss a\"); // \"شنبه, فروردین ۱۲ ۱۳۹۶, ۵:۵۴:۱۱ ب ظ\"\nnew persianDate().format(\"dddd, ha\"); // \"شنبه, ۵ب ظ\"\n```\n\nThis is the most robust display option. It takes a string of tokens and replaces them with their corresponding values.\n\n\n| Type\t            | Tocken\t    | Output |\n| -------------     |:-------------:|:------:|\n| Month             | M\t            | ۱ ۲ ... ۱۱ ۱۲|\n|        \t        | MM\t        | ۰۱ ۰۲ ... ۱۱ ۱۲|\n|        \t        | MMM\t        | فرو ارد ... اسف|\n|                   | MMMM\t        | فروردین اردیبهشت ... اسفند |\n| Day of month      | D            | ۱ ۲ ... ۳۰ ۳۱|\n|                   | DD           | ۰۱ ۰۲ ... ۳۰ ۳۱|\n| Day of year       | DDD          | ۱ ۲ ... ۳۶۴ ۳۶۵|\n|                   | d            | ۰ ۱ ... ۵ ۶|\n|                   | dd            | ش ی ... ج|\n|                   | ddd       |شنبه یکشنبه ... جمعه|\n|                   | dddd    |انارام مانتره سپند ... اشتاد |\n| Week of Year      | w            | ۱ ۲ ... ۵۲ ۵۳ |\n|                   | ww           | ۰۱ ۰۲ ... ۵۲ ۵۳ |\n|Year               | YY           | ۶۶ ۹۱ ... ۹۸ ۳۰ |\n|                   | YYYY          | ۱۳۶۶ ۱۳۹۱ ... ۱۳۹۸ ۱۴۰۱ |\n| AM/PM              | a            | \"ق ظ\", \"ب ظ\" |\n| Hour              | H            | ۰ ۱ ... ۲۲ ۲۳ |\n|                   | HH           | ۰۰ ۰۱ ... ۲۲ ۲۳ |\n|                   | h            | ۱ ۲ ... ۱۱ ۱۲ |\n|                   | hh           | ۰۱ ۰۲ ... ۱۱ ۱۲ |\n| Minute            | m            | ۰ ۱ ... ۵۸ ۵۹ |\n|                   | mm           | ۰۰ ۰۱ ... ۵۸ ۵۹ |\n| Second            | s            | ۰ ۱ ... ۵۸ ۵۹ |\n|                   | ss           | ۰۰ ۰۱ ... ۵۸ ۵۹ |\n| Unix Timestamp     | X            | 1360013296 |\n| Timezone          | Z            | -۰۴:۳۰ -۰۵:۰۰ ... +۰۴:۳۰ +۰۵:۰۰ |\n|                   | ZZ           | -۰۴۳۰ -۰۵:۰۰ ... +۰۴:۳۰ +۰۵:۰۰ |\n\n\n### Long Date formats\n\n| Type\t                                            | Tocken\t    | Output |\n| -------------                                     |:-------------:|:------:|\n| Time                                              | LT            | \"۴:۱۵ ب ظ\"|\n| Month numeral, day of month, year                 | L             | ۱۳۹۲/۰۲/۲۰ |\n|                                                   | l             | ۳۹۲/۲/۲۰ |\n| Month name, day of month, year                    | LL            | اردیبهشت ۲۰ ۱۳۹۲|\n|                                                   | ll            | ارد ۲۰ ۱۳۹۲|\n| Month name, day of month, year, time              | LLL           | اردیبهشت ۱۳۹۲ ۲۰ ۴:۲۳ ب ظ|\n|                                                   | lll           | ارد ۱۳۹۲ ۲۰ ۴:۲۳ ب ظ|\n| Month name, day of month, day of week, year, time | LLLL          | جمعه ۲۰ اردیبهشت ۱۳۹۲ ۴:۲۵ ب ظ |\n|                                                   | llll          | ج ۲۰ ارد ۱۳۹۲ ۴:۲۷ ب ظ |\n\n\n### Default format\n\nISO8601 format ```YYYY-MM-DDTHH:mm:ssZ```\n\"۱۳۹۱-۱۰-۰۴ ۱۱:۲۷:۵۳ ق ظ\"\n\n\n### Format To Persian digit\n\n> Deprecated as 1.0.* instead use [toLocale](#tolocale)\n\nBy Default persianDate format, use Persian Number System, for engilsh number Set formatPersian Option as false\n\n<!-- skip-example -->\n```javascript\nvar d = new persianDate([1391]);\nd.format(); //\"۱۳۹۱-۰۱-۰۱ ۰۰:۰۰:۰۰ ق ظ\"\nwindow.formatPersian = false;\nd.format(); //\"1391-01-01 00:00:00 AM\"\n```\n\nAlso you can set golbal config like this\n\n<!-- skip-example -->\n```javascript\nwindow.formatPersian  = false;\n```\n\n> Note: After Set Global config you can set config for every instance\n\n<!-- skip-example -->\n```javascript\nvar d = new persianDate([1391]);\nd.format(); //\"۱۳۹۱-۰۱-۰۱ ۰۰:۰۰:۰۰ ق ظ\"\nwindow.formatPersian = false;\nd.format(); //\"1391-01-01 00:00:00 AM\"\nd.formatPersian = true;\nd.format(); //\"۱۳۹۱-۰۱-۰۱ ۰۰:۰۰:۰۰ ق ظ\"\n```\n\t\t\t\n### Difference\n\n```\nnew persianDate().diff(PersianDate|String|Boolean);\n```\n\nAccept 3 argument, (ccmparable persianDate object, difference key, boolean value that make returned output float)\n\nTo get the difference in milliseconds, use ```persianDate#diff```.\n\n```javascript\nvar a = new persianDate([1392, 1, 29]);\nvar b = new persianDate([1392, 1, 28]);\na.diff(b) // 86400000\n```\n\nTo get the difference in another unit of measurement, pass that measurement as the second argument.\n\n```javascript\nvar a = new persianDate([1392, 1, 29]);\nvar b = new persianDate([1392,1, 28]);\na.diff(b, 'days'); // 1\n```\n\nThe supported measurements are years, months, weeks, days, hours, minutes, and seconds. For ease of development, the singular forms are supported .\n\n```javascript\nvar a = new persianDate([1391, 1]);\nvar b = new persianDate([1392, 5]);\na.diff(b, 'years');\na.diff(b, 'years', true);\n```\n\n\nIf the persianDate is later than the persianDate you are passing to ```persianDate.fn.diff``` , the return value will be negative.\n\n```javascript\nvar a = new persianDate();\nvar b = new persianDate().add('seconds', 1);\na.diff(b); // -1000\nb.diff(a); // 1000\n```\n\nA easy way to think of this is by replacing ```.diff(``` with a minus operator.\n\n<!-- skip-example -->\n```javascript\na.diff(b);\nb.diff(a);\n```\n\n### Unix Offset (milliseconds)\n\n```javascript\nnew persianDate().valueOf();\n```\n\n```persianDate#valueOf``` simply outputs the number of milliseconds since the Unix Epoch, just like ```Date#valueOf``` .\n\n```javascript\nnew persianDate(1318874398806).valueOf(); // 1318874398806\nnew persianDate(1318874398806).format(); // \"۱۳۹۰-۰۷-۲۵ ۲۱:۲۹:۵۸ ب ظ\"\n```\n\nTo get a Unix timestamp (the number of seconds since the epoch) from a ```persianDate``` , use ```persianDate#unix``` .\n\n### Unix Timestamp (seconds)\n\n```javascript\nnew persianDate().unix();\n```\n\n```persianDate#unix``` outputs a Unix timestamp (the of seconds since the Unix Epoch).\n\n```javascript\nnew persianDate(1318874398806).unix(); // 1318874398\n```\n\nThis value is floored to the nearest second, and does not include a milliseconds component.\n\n### Timezone Offset\n\n```javascript\nnew persianDate().zone();\n```\n\nGet the timezone offset in minutes.\n\n```javascript\nnew persianDate().zone(); // (60, 120, 240, -270, etc.)\n```\n\n### Days in Month\n\n```javascript\nnew persianDate().daysInMonth();\n```\n\nGet the number of days in the current month.\n\n```javascript\nnew persianDate([1392,1]).daysInMonth(); // 31\nnew persianDate([1392,8]).daysInMonth(); // 30\nnew persianDate([1392,12]).daysInMonth(); // 29\nnew persianDate([1391,12]).daysInMonth(); // 30\n```\n\n### As Javascript Date\n\n```javascript\nnew persianDate().toDate();\n```\n\nTo get the native ```Date``` object that ```persianDate.js``` wraps, use ```persianDate#toDate``` .\n\nThis will return the ```Date``` that the ```persianDate``` uses.\n\n### As Array\n\n```javascript\nnew persianDate().toArray();\n```\n\nThis returns an array that mirrors the parameters from new ```persianDate()``` .\n\n```javascript\nnew persianDate().toArray(); // [1391, 1, 4, 14, 40, 16, 154];\n```\n\n### Range Name\n\nHelper method that return date range name like week days name, month names, month days names (specially in persian calendar).\n\n```javascript\n\npersianDate.toLocale('fa').toCalendar('persian');\n\npersianDate.rangeName().weekdays;\n// [\"شنبه\", \"یکشنبه\", \"دوشنبه\", \"سه شنبه\", \"چهار شنبه\", \"پنج‌شنبه\", \"جمعه\"]\n\npersianDate.rangeName().weekdaysMin;\n// [\"ش\", \"ی\", \"د\", \"س\", \"چ\", \"پ\", \"ج\"]\n\npersianDate.rangeName().months;\n// [\"فروردین\", \"اردیبهشت\", \"خرداد\", \"تیر\", \"مرداد\", \"شهریور\", \"مهر\", \"آبان\", \"آذر\", \"دی\", \"بهمن\", \"اسفند\"]\n\npersianDate.rangeName().monthsShort; \n// [\"فرو\", \"ارد\", \"خرد\", \"تیر\", \"مرد\", \"شهر\", \"مهر\", \"آبا\", \"آذر\", \"دی\", \"بهم\", \"اسف\"]\n\npersianDate.rangeName().persianDaysName[0]; \n// \"اورمزد\"\n\n```\n\n> [Persian month day name wiki](https://fa.wikipedia.org/wiki/%D9%81%D9%87%D8%B1%D8%B3%D8%AA_%D9%86%D8%A7%D9%85_%D8%B1%D9%88%D8%B2%D9%87%D8%A7%DB%8C_%D9%85%D8%A7%D9%87)\n\nAlso You can get Gregorian calendar range names\n\n```javascript\npersianDate.toCalendar('gregorian').rangeName().months;\n// [\"ژانویه\", \"فوریه\", \"مارس\", \"آوریل\", \"مه\", \"ژوئن\", \"ژوئیه\", \"اوت\", \"سپتامبر\", \"اکتبر\", \"نوامبر\", \"دسامبر\"]\n\npersianDate.toCalendar('gregorian').toLocale('en').rangeName().months;\n// [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"]\n\n\npersianDate.toCalendar('gregorian').toLocale('en').rangeName().weekDayes;\n// ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']\n\npersianDate.toCalendar('gregorian').toLocale('en').rangeName().weekDayesShort;\n// ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']\n\npersianDate.toCalendar('gregorian').toLocale('en').rangeName().weekDayesMin;\n// ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa']\n\n```\n\n## Query\n\n### Is Leap Year\n\n```javascript\nnew persianDate().isLeapYear();\n```\n\n```persianDate#isLeapYear``` returns true if that year is a leap year, and ```false``` if it is not. base on object calendarType.\n\n```javascript\nnew persianDate([1391]).isLeapYear(); // true\nnew persianDate([1392]).isLeapYear(); // false\nnew persianDate([1393]).isLeapYear(); // false\nnew persianDate([1394]).isLeapYear(); // false\nnew persianDate([1395]).isLeapYear(); // true\nnew persianDate([1396]).isLeapYear(); // false\n```\n\n### Is Daylight Saving Time\n\n```javascript\nnew persianDate().isDST();\n```\n\n```persianDate#isDST``` checks if the current persianDate is in daylight savings time.\n\n```javascript\nnew persianDate([1396, 1, 1]).isDST(); // false\nnew persianDate([1396, 1, 2]).isDST(); // true\nnew persianDate([1396, 6, 30]).isDST(); // true\nnew persianDate([1396, 6, 31]).isDST(); // false\n```\n\n> Based on [Persian DST wiki](https://fa.wikipedia.org/wiki/%D8%B3%D8%A7%D8%B9%D8%AA_%D8%AA%D8%A7%D8%A8%D8%B3%D8%AA%D8%A7%D9%86%DB%8C)\n\n### Is a PersianDat\n\n```javascript\nvar obj = new persianDate();\n\n// options 1\nnew persianDate().isPersianDate(obj); // true\n\n//option 2\npersianDate.isPersianDate(obj);\n\n```\n\nTo check if a variable is a persianDate object, use ```persianDate().isPersianDate()``` .\n\n```javascript\nnew persianDate().isPersianDate(); // false\nnew persianDate().isPersianDate(new Date()); // false\nnew persianDate().isPersianDate(new persianDate()); // true\n```\n\n### Is Same Month\n\nCheck date object with given date object month similarity\n\n\n```javascript\n// options 1\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1396,1,12]);\nb.isSameMonth(a); // true\n\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1397,1,12]);\nb.isSameMonth(a); // false\n\n// options 2\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1396,1,12]);\npersianDate.isSameMonth(a,b); // true\n\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1397,1,12]);\npersianDate.isSameMonth(a,b); // false\n```\n\n### Is Same Day\n\nCheck date object with given date object day similarity\n\n\n```javascript\n// options 1\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1396,1,1]);\nb.isSameDay(a); // true\n\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1396,2,1]);\nb.isSameDay(a); // false\n\n// options 2\nvar a = new persianDate([1396,1,12]);\nvar b = new persianDate([1396,1,12]);\npersianDate.isSameDay(a,b); // true\n\nvar a = new persianDate([1396,1,12]);\nvar b = new persianDate([1397,1,12]);\npersianDate.isSameDay(a,b); // false\n```\n\n\n\n## license\nFreely distributable under the terms of the [MIT](https://opensource.org/licenses/MIT) license. \n\n\n","versions":{"0.1.8":{"name":"persian-date","version":"0.1.8","devDependencies":{"grunt":"0.4.4","grunt-cli":"0.1.13","grunt-contrib-concat":"^0.5.0"},"gitHead":"a0108d1ebc89b1d16b0ba25c7cd4bb695a0f2025","description":"PersianDate ===========","_id":"persian-date@0.1.8","scripts":{},"_shasum":"dbf783408e7bc5a72c9d0d73512411802bb98781","_from":".","_npmVersion":"2.1.11","_nodeVersion":"0.10.33","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"dist":{"shasum":"dbf783408e7bc5a72c9d0d73512411802bb98781","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-0.1.8.tgz","integrity":"sha512-V5tPtKbJCE/SgyEZJ1TXB3/5FQMIDmnbbmawCYKo7ICiEVriqNe6sb3FAx2DEqjYUCxe66svrOxI7jUS/eEQ8A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHgi8tILu5Wl49ho+n5WtqlZHUXRWcPM//Wg5s90xf5FAiAUsWwMLnPMQuyOY5HSIPrPBQa3aGfculaBTuizwjzm3Q=="}]},"directories":{}},"0.1.8-b":{"name":"persian-date","version":"0.1.8-b","devDependencies":{"grunt":"0.4.4","grunt-cli":"0.1.13","grunt-contrib-concat":"^0.5.0","grunt-contrib-uglify":"^0.1.2","jsdoc":"^3.2.0","grunt-jsdoc":"^0.5.7"},"gitHead":"8c8e769a21d37203770b4b7b6a881fa417fc9e25","description":"PersianDate ===========","_id":"persian-date@0.1.8-b","scripts":{},"_shasum":"ecc617593a3c100c0605415e270620b7de6ed744","_from":".","_npmVersion":"2.1.11","_nodeVersion":"0.10.33","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"dist":{"shasum":"ecc617593a3c100c0605415e270620b7de6ed744","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-0.1.8-b.tgz","integrity":"sha512-J0YyjGLMBr54AwasSwnpXdhfxf1r4/3Op5ee7+ZqB+9j5ERlDDRH0Sp1LQ11QUEaO0JjLi1QW2dO11qvTQf7sg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC0sEkTzuGgjgXtNFo8RsaxE1dF5jKb3r1zayQU6iB3JwIgb7+uX8icEDJEmAJ9lyNzNzV8kvbm4w/WxWNJZsQXEuo="}]},"directories":{}},"0.2.0":{"name":"persian-date","version":"0.2.0","license":"WTFPL","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"babel-cli":"^6.0.0","babel-core":"^6.22.1","babel-loader":"^6.4.1","babel-plugin-import":"^1.1.1","babel-plugin-transform-runtime":"^6.22.0","babel-polyfill":"^6.22.0","babel-preset-es2015":"^6.24.0","babel-preset-latest":"^6.24.0","babel-runtime":"^6.22.0","chai":"^3.5.0","coveralls":"^2.13.0","grunt":"^1.0.1","grunt-babel":"^6.0.0","grunt-cli":"^0.1.13","grunt-contrib-watch":"^1.0.0","grunt-jsdoc-to-markdown":"^3.0.0","grunt-webpack":"^2.0.1","grunt-webpack-server":"^0.1.0","istanbul":"^0.4.5","jsdoc":"^3.2.0","jshint":"^2.9.4","load-grunt-tasks":"^3.5.2","mocha":"^3.2.0","mocha-lcov-reporter":"^0.0.2","pre-commit":"^1.2.2","sync-pkg":"^0.7.2","unminified-webpack-plugin":"^1.2.0","webpack":"^2.3.3"},"scripts":{"minify":"MIN=1 webpack","test":"nyc --reporter=html --reporter=text mocha","dev":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js","doc":"grunt --doc","sync-pkg":"sync-pkg"},"pre-commit":["test","lint"],"gitHead":"62c79506f3adde139a3a6c974e24c4ab38797d7b","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@0.2.0","_shasum":"ca313c37d80f8cee647a03bb7919b0602eba281b","_from":".","_npmVersion":"4.4.1","_nodeVersion":"7.4.0","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"dist":{"shasum":"ca313c37d80f8cee647a03bb7919b0602eba281b","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-0.2.0.tgz","integrity":"sha512-fKFFghudN/rezY5fhkX+ZsJVBtGqE6XlBHVkmGMQb5wAUma1JKQUWhkes4SrWGVo6FBKrMS3yB/CO44w3T57GA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFO2910m1UB6BUha+SVy3+gVci/xxhyVsfgatWO/v5HGAiA7B1TpMsPciGjFN3L1frvsu8nn6eBjkWGaOsvFik9RwQ=="}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date-0.2.0.tgz_1497629401246_0.5366321506444365"},"directories":{}},"0.2.1":{"name":"persian-date","version":"0.2.1","license":"WTFPL","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"babel-cli":"^6.0.0","babel-core":"^6.22.1","babel-loader":"^6.4.1","babel-plugin-import":"^1.1.1","babel-plugin-transform-runtime":"^6.22.0","babel-polyfill":"^6.22.0","babel-preset-es2015":"^6.24.0","babel-preset-latest":"^6.24.0","babel-runtime":"^6.22.0","chai":"^3.5.0","coveralls":"^2.13.0","grunt":"^1.0.1","grunt-babel":"^6.0.0","grunt-cli":"^0.1.13","grunt-contrib-watch":"^1.0.0","grunt-jsdoc-to-markdown":"^3.0.0","grunt-webpack":"^2.0.1","grunt-webpack-server":"^0.1.0","istanbul":"^0.4.5","jsdoc":"^3.2.0","jshint":"^2.9.4","load-grunt-tasks":"^3.5.2","mocha":"^3.2.0","mocha-lcov-reporter":"^0.0.2","pre-commit":"^1.2.2","sync-pkg":"^0.7.2","unminified-webpack-plugin":"^1.2.0","webpack":"^2.3.3"},"scripts":{"start":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","dev":"webpack","build":" webpack; MIN=1 webpack; npm run test; npm run lint; npm run doc;","test":"nyc --reporter=html --reporter=text mocha","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js; ./node_modules/eslint/bin/eslint.js src/","doc":"grunt --doc","sync-pkg":"sync-pkg","pre-dev":"sudo npm install -g nyc"},"pre-commit":["test","lint"],"dependencies":{"eslint":"^4.4.1"},"gitHead":"8bf2a799c5f76f992cb6bd27abf9690a625f8f36","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@0.2.1","_npmVersion":"5.0.3","_nodeVersion":"8.1.2","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"dist":{"integrity":"sha512-dNe00ruxk94YXBZfqPfKRcohSruwbmObb137GjYpnlUxlkHNOs2m4aLAYwa1smdlaUgg4Plv+6tuU/uTTIYbBQ==","shasum":"be1cdbf43cfe73a5aae0d52e5b55364de6b4e3b2","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-0.2.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID1bOIfHD2zX5AtO0JwIQ/DdjrzFZxcwMpC5mALfZcctAiAkyVsUaSkjoup8d7rTZdIu6v8rfbaybPY6HBcIZYRpog=="}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date-0.2.1.tgz_1503061677345_0.09856482245959342"},"directories":{}},"0.2.2":{"name":"persian-date","version":"0.2.2","license":"WTFPL","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"babel-cli":"^6.0.0","babel-core":"^6.22.1","babel-loader":"^6.4.1","babel-plugin-import":"^1.1.1","babel-plugin-transform-runtime":"^6.22.0","babel-polyfill":"^6.22.0","babel-preset-es2015":"^6.24.0","babel-preset-latest":"^6.24.0","babel-runtime":"^6.22.0","chai":"^3.5.0","coveralls":"^2.13.0","grunt":"^1.0.1","grunt-babel":"^6.0.0","grunt-cli":"^0.1.13","grunt-contrib-watch":"^1.0.0","grunt-jsdoc-to-markdown":"^3.0.0","grunt-webpack":"^2.0.1","grunt-webpack-server":"^0.1.0","istanbul":"^0.4.5","jsdoc":"^3.2.0","jshint":"^2.9.4","load-grunt-tasks":"^3.5.2","mocha":"^3.2.0","mocha-lcov-reporter":"^0.0.2","pre-commit":"^1.2.2","sync-pkg":"^0.7.2","unminified-webpack-plugin":"^1.2.0","webpack":"^2.3.3"},"scripts":{"start":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","dev":"webpack","build":" webpack; MIN=1 webpack; npm run test; npm run lint; npm run doc;","test":"nyc --reporter=html --reporter=text mocha","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js; ./node_modules/eslint/bin/eslint.js src/","doc":"grunt --doc","sync-pkg":"sync-pkg","pre-dev":"sudo npm install -g nyc"},"pre-commit":["test","lint"],"dependencies":{"eslint":"^4.4.1"},"gitHead":"b8cf00d43e4063926c9c3edf6909065dbde77303","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@0.2.2","_npmVersion":"5.0.3","_nodeVersion":"8.1.2","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"dist":{"integrity":"sha512-fMRfVGm6R8nLJ6fnfkNHzOMBJSxLWQVYXgmqPVGGtGQSdI2Z8PSYHrfCKmEfIOJHcoCj3h2hXPU5Iu9eFdH+kw==","shasum":"e9c928c4df6b89a51d218a31c9e6979e1ca81911","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-0.2.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAQgw5dIiTKk/W/QIWRtirCXeMfKHg6tzua5EHRTbhwcAiEAu3rJEz8FIZg6Ue9WC+sB5bXtQSxz0t0C5BgKY8PfDXc="}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date-0.2.2.tgz_1503066024499_0.6084961616434157"},"directories":{}},"0.2.3":{"name":"persian-date","version":"0.2.3","license":"WTFPL","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"babel-cli":"^6.0.0","babel-core":"^6.22.1","babel-loader":"^6.4.1","babel-plugin-import":"^1.1.1","babel-plugin-transform-runtime":"^6.22.0","babel-polyfill":"^6.22.0","babel-preset-es2015":"^6.24.0","babel-preset-latest":"^6.24.0","babel-runtime":"^6.22.0","chai":"^3.5.0","coveralls":"^2.13.0","grunt":"^1.0.1","grunt-babel":"^6.0.0","grunt-cli":"^0.1.13","grunt-contrib-watch":"^1.0.0","grunt-jsdoc-to-markdown":"^3.0.0","grunt-webpack":"^2.0.1","grunt-webpack-server":"^0.1.0","istanbul":"^0.4.5","jsdoc":"^3.2.0","jshint":"^2.9.4","load-grunt-tasks":"^3.5.2","mocha":"^3.2.0","mocha-lcov-reporter":"^0.0.2","pre-commit":"^1.2.2","sync-pkg":"^0.7.2","unminified-webpack-plugin":"^1.2.0","webpack":"^2.3.3"},"scripts":{"start":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","dev":"webpack","build":" webpack; MIN=1 webpack; npm run test; npm run lint; npm run doc;","test":"nyc --reporter=html --reporter=text mocha","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js; ./node_modules/eslint/bin/eslint.js src/","doc":"grunt --doc","sync-pkg":"sync-pkg","pre-dev":"sudo npm install -g nyc"},"pre-commit":["test","lint"],"dependencies":{"eslint":"^4.4.1"},"gitHead":"869e2f72f0f2db34926b3c398ae8642410ff8935","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@0.2.3","_npmVersion":"5.0.3","_nodeVersion":"8.1.2","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"dist":{"integrity":"sha512-cOxzXUhIYY+TMRhjF9oKL50pOzEEF3LWypqqlJ/8PftviDWsbMlAIANzqmi01WdogpsULCCTzYLhk/OP/hD0Tw==","shasum":"c5883f67b08d7e7731c2cf85fe6368b6fe06ee84","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-0.2.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDb46iPCdXiFdc0qUnTiwufYASmAJeNNC3Z0lmbcGFDFAIgOtR8dPwoIDijKk/zKLnuGa1rxE/nifzMKuqm/7Xi3yc="}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date-0.2.3.tgz_1503077757190_0.04537713271565735"},"directories":{}},"0.2.4":{"name":"persian-date","version":"0.2.4","license":"WTFPL","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"babel-cli":"^6.0.0","babel-core":"^6.22.1","babel-loader":"^6.4.1","babel-plugin-import":"^1.1.1","babel-plugin-transform-runtime":"^6.22.0","babel-polyfill":"^6.22.0","babel-preset-es2015":"^6.24.0","babel-preset-latest":"^6.24.0","babel-runtime":"^6.22.0","chai":"^3.5.0","coveralls":"^2.13.0","grunt":"^1.0.1","grunt-babel":"^6.0.0","grunt-cli":"^0.1.13","grunt-contrib-watch":"^1.0.0","grunt-jsdoc-to-markdown":"^3.0.0","grunt-webpack":"^2.0.1","grunt-webpack-server":"^0.1.0","istanbul":"^0.4.5","jsdoc":"^3.2.0","jshint":"^2.9.4","load-grunt-tasks":"^3.5.2","mocha":"^3.2.0","mocha-lcov-reporter":"^0.0.2","pre-commit":"^1.2.2","sync-pkg":"^0.7.2","unminified-webpack-plugin":"^1.2.0","webpack":"^2.3.3"},"scripts":{"start":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","dev":"webpack","build":" webpack; MIN=1 webpack; npm run test; npm run lint; npm run doc;","test":"nyc --reporter=html --reporter=text mocha","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js; ./node_modules/eslint/bin/eslint.js src/","doc":"grunt --doc","sync-pkg":"sync-pkg","pre-dev":"sudo npm install -g nyc"},"pre-commit":["test","lint"],"dependencies":{"eslint":"^4.4.1"},"gitHead":"0447112e3f05f77ddcf129e80a05a38320ab4155","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@0.2.4","_npmVersion":"5.0.3","_nodeVersion":"8.1.2","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"dist":{"integrity":"sha512-dfUKE5Ia7I7pRitvfUgNFjB2aosP+5uVBoHEz2sW9mxQynQ6x8CBiRK0pu8Pxba0E680tvM6kpi4PArhMt3nSg==","shasum":"dc7e198e81316f8a40ab77894ca2fadd7770812a","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-0.2.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDQHw+sTzUPs/z5uTcE5HHW1LFFORAfps6FZjDKTF7jwgIhAOIlyPfkX7i3Q5kiyNlDlup3EUyumT8EDyOstqF6rOCe"}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date-0.2.4.tgz_1503176413915_0.9956181761808693"},"directories":{}},"0.2.5":{"name":"persian-date","version":"0.2.5","license":"WTFPL","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"babel-cli":"^6.0.0","babel-core":"^6.22.1","babel-loader":"^6.4.1","babel-plugin-import":"^1.1.1","babel-plugin-transform-runtime":"^6.22.0","babel-polyfill":"^6.22.0","babel-preset-es2015":"^6.24.0","babel-preset-latest":"^6.24.0","babel-runtime":"^6.22.0","chai":"^3.5.0","coveralls":"^2.13.0","grunt":"^1.0.1","grunt-babel":"^6.0.0","grunt-cli":"^0.1.13","grunt-contrib-watch":"^1.0.0","grunt-jsdoc-to-markdown":"^3.0.0","grunt-webpack":"^2.0.1","grunt-webpack-server":"^0.1.0","istanbul":"^0.4.5","jsdoc":"^3.2.0","jshint":"^2.9.4","load-grunt-tasks":"^3.5.2","mocha":"^3.2.0","mocha-lcov-reporter":"^0.0.2","pre-commit":"^1.2.2","sync-pkg":"^0.7.2","unminified-webpack-plugin":"^1.2.0","webpack":"^2.3.3"},"scripts":{"start":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","dev":"webpack","build":" webpack; MIN=1 webpack; npm run test; npm run lint; npm run doc;","test":"nyc --reporter=html --reporter=text mocha","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js; ./node_modules/eslint/bin/eslint.js src/","doc":"grunt --doc","sync-pkg":"sync-pkg","pre-dev":"sudo npm install -g nyc"},"pre-commit":["test","lint"],"dependencies":{"eslint":"^4.4.1"},"gitHead":"ac210e3738b50be7d6610e5140042ceb15b8ec21","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@0.2.5","_npmVersion":"5.0.3","_nodeVersion":"8.1.2","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"dist":{"integrity":"sha512-v1KHzu4A2jAqqSkDEcp7OzD51jDhZMetaSg83fhr0u7yvD1T5WahbTvFw06ctLwWk8Lnk3P72EcKGP7rzRAYOw==","shasum":"e5d727c7cb2757399780d97111776c7f333d2b53","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-0.2.5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICO5vJmG+34a9+BsfkjWkr03Ouvb2VmoxJquC6ymePyhAiEA+r7Z7Lc74ThuIWK7ljxZ57kV+CCwUMfmfZmFP6iJoE0="}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date-0.2.5.tgz_1504368946262_0.7247438775375485"},"directories":{}},"0.3.0":{"name":"persian-date","version":"0.3.0","license":"WTFPL","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"amd-loader":"0.0.8","babel-cli":"^6.0.0","babel-core":"^6.22.1","babel-loader":"^6.4.1","babel-plugin-import":"^1.1.1","babel-plugin-transform-runtime":"^6.22.0","babel-polyfill":"^6.22.0","babel-preset-es2015":"^6.24.0","babel-preset-latest":"^6.24.0","babel-runtime":"^6.22.0","chai":"^3.5.0","coveralls":"^2.13.1","grunt":"^1.0.1","grunt-babel":"^6.0.0","grunt-cli":"^0.1.13","grunt-contrib-watch":"^1.0.0","grunt-jsdoc-to-markdown":"^3.0.0","grunt-webpack":"^2.0.1","grunt-webpack-server":"^0.1.0","istanbul":"^0.4.5","jsdoc":"^3.2.0","jshint":"^2.9.4","load-grunt-tasks":"^3.5.2","markdown-doctest":"^0.9.1","markdown-link-check":"^3.1.2","mocha":"^3.2.0","mocha-lcov-reporter":"^0.0.2","moment":"^2.18.1","pre-commit":"^1.2.2","sync-pkg":"^0.7.2","unminified-webpack-plugin":"^1.2.0","webpack":"^2.3.3"},"scripts":{"start":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","dev":"webpack","build":" webpack; MIN=1 webpack; npm run test; npm run lint; npm run doc;","test":"nyc --reporter=html --reporter=text mocha --timeout 15000","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js; ./node_modules/eslint/bin/eslint.js src/","doc":"grunt --doc","doctest":"./node_modules/markdown-doctest/bin/cmd.js README.md && ./node_modules/markdown-link-check/markdown-link-check README.md && ./node_modules/markdown-doctest/bin/cmd.js doc/leapyear.md && ./node_modules/markdown-link-check/markdown-link-check doc/leapyear.md","sync-pkg":"sync-pkg","pre-dev":"sudo npm install -g nyc"},"pre-commit":["test","lint","doctest"],"dependencies":{"eslint":"^4.4.1","jalaali-js":"^1.0.0"},"gitHead":"6f668ee8fcf98e53b06c517d9cf0a92161d28cb3","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@0.3.0","_npmVersion":"5.0.3","_nodeVersion":"8.1.2","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"dist":{"integrity":"sha512-U/dVahzBwFhGATDPxfTZ4VvyKqeZOsWRnhQWaimkKICB9JrdtkkoN0YGMU+zCgl797h6JGs9NEWa4yDzSGxJBg==","shasum":"959f82c20570c68c4cf5a3b5cd617135a6e4cc6f","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-0.3.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDP0qiJsvGtKm3rQgTlaD8KsdxAAObsMqBtylwG0bpQvgIhAMJfaJkm+BCic/WpZ11GBA2EHlycf/pI2sx1WzPnlOBj"}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date-0.3.0.tgz_1504988263646_0.3019283169414848"},"directories":{}},"0.3.0-b":{"name":"persian-date","version":"0.3.0-b","license":"WTFPL","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"amd-loader":"0.0.8","babel-cli":"^6.0.0","babel-core":"^6.22.1","babel-loader":"^6.4.1","babel-plugin-import":"^1.1.1","babel-plugin-transform-runtime":"^6.22.0","babel-polyfill":"^6.22.0","babel-preset-es2015":"^6.24.0","babel-preset-latest":"^6.24.0","babel-runtime":"^6.22.0","chai":"^3.5.0","coveralls":"^2.13.1","grunt":"^1.0.1","grunt-babel":"^6.0.0","grunt-cli":"^0.1.13","grunt-contrib-watch":"^1.0.0","grunt-jsdoc-to-markdown":"^3.0.0","grunt-webpack":"^2.0.1","grunt-webpack-server":"^0.1.0","istanbul":"^0.4.5","jsdoc":"^3.2.0","jshint":"^2.9.4","load-grunt-tasks":"^3.5.2","markdown-doctest":"^0.9.1","markdown-link-check":"^3.1.2","mocha":"^3.2.0","mocha-lcov-reporter":"^0.0.2","moment":"^2.18.1","pre-commit":"^1.2.2","sync-pkg":"^0.7.2","unminified-webpack-plugin":"^1.2.0","webpack":"^2.3.3"},"scripts":{"start":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","dev":"webpack","build":" webpack; MIN=1 webpack; npm run test; npm run lint; npm run doc;","test":"nyc --reporter=html --reporter=text mocha --timeout 15000","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js; ./node_modules/eslint/bin/eslint.js src/","doc":"grunt --doc","doctest":"./node_modules/markdown-doctest/bin/cmd.js README.md && ./node_modules/markdown-link-check/markdown-link-check README.md && ./node_modules/markdown-doctest/bin/cmd.js doc/leapyear.md && ./node_modules/markdown-link-check/markdown-link-check doc/leapyear.md","sync-pkg":"sync-pkg","pre-dev":"sudo npm install -g nyc"},"pre-commit":["test","lint","doctest"],"dependencies":{"eslint":"^4.4.1","jalaali-js":"^1.0.0"},"gitHead":"50276657858a3539b983a9a49e5dc6abbaecacf6","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@0.3.0-b","_npmVersion":"5.0.3","_nodeVersion":"8.1.2","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"dist":{"integrity":"sha512-/MFvSqNm0FQBFGbLkfjkHsJqThanNtGvS88bb+yIvCgmiCJseACVX2jMWNDrTnfjNC2sK9VHwhAiCHTcN445jQ==","shasum":"b030f8f93ff74d5091c1c180eb4882e3fadd5fdb","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-0.3.0-b.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCDtRwRsbEYgtN2O12imHU5v/pNS2qYDz3TlginLt5jFwIgLEtl7Ngmd4LUel5gsmMiZiGxKwhLL/ebtzqlw2/MnL4="}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date-0.3.0-b.tgz_1505472562321_0.9028735405299813"},"directories":{}},"0.3.1-b":{"name":"persian-date","version":"0.3.1-b","license":"WTFPL","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"amd-loader":"0.0.8","babel-cli":"^6.0.0","babel-core":"^6.22.1","babel-loader":"^6.4.1","babel-plugin-import":"^1.1.1","babel-plugin-transform-runtime":"^6.22.0","babel-polyfill":"^6.22.0","babel-preset-es2015":"^6.24.0","babel-preset-latest":"^6.24.0","babel-runtime":"^6.22.0","chai":"^3.5.0","coveralls":"^2.13.1","grunt":"^1.0.1","grunt-babel":"^6.0.0","grunt-cli":"^0.1.13","grunt-contrib-watch":"^1.0.0","grunt-jsdoc-to-markdown":"^3.0.0","grunt-webpack":"^2.0.1","grunt-webpack-server":"^0.1.0","istanbul":"^0.4.5","jsdoc":"^3.2.0","jshint":"^2.9.4","load-grunt-tasks":"^3.5.2","markdown-doctest":"^0.9.1","markdown-link-check":"^3.1.2","mocha":"^3.2.0","mocha-lcov-reporter":"^0.0.2","moment":"^2.18.1","pre-commit":"^1.2.2","sync-pkg":"^0.7.2","unminified-webpack-plugin":"^1.2.0","webpack":"^2.3.3"},"scripts":{"start":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","dev":"webpack","build":" webpack; MIN=1 webpack; npm run test; npm run lint; npm run doc;","test":"nyc --reporter=html --reporter=text mocha --timeout 15000","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js; ./node_modules/eslint/bin/eslint.js src/","doc":"grunt --doc","doctest":"./node_modules/markdown-doctest/bin/cmd.js README.md && ./node_modules/markdown-link-check/markdown-link-check README.md && ./node_modules/markdown-doctest/bin/cmd.js doc/leapyear.md && ./node_modules/markdown-link-check/markdown-link-check doc/leapyear.md","sync-pkg":"sync-pkg","pre-dev":"sudo npm install -g nyc"},"pre-commit":["test","lint","doctest"],"dependencies":{"eslint":"^4.4.1","jalaali-js":"^1.0.0"},"gitHead":"634b7c769f441f2c4e407b4b9ea7f911d7bb69f5","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@0.3.1-b","_npmVersion":"5.0.3","_nodeVersion":"8.1.2","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"dist":{"integrity":"sha512-O854iRlaJ+vC/5j0TAH4HqmCOf0CFjPfllB9uCe+yWSWW+HaguHGznTLfvMlEc12OklWl85UTGlLr1aOT8LJKg==","shasum":"0dc6d036fb6090396671d8fb550c8ef8d9d72cfb","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-0.3.1-b.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFyHBswgZgZHUfu7NCn+KrKhNyQzalIvhhFoy+mEw4nJAiA6bsm6sXBFJbJR2tVXwUjlFNiTVEjXOAo00M8lhp4zTA=="}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date-0.3.1-b.tgz_1505500079501_0.8076546511147171"},"directories":{}},"1.0.0":{"name":"persian-date","version":"1.0.0","license":"WTFPL","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"amd-loader":"0.0.8","babel-cli":"^6.0.0","babel-core":"^6.22.1","babel-loader":"^6.4.1","babel-plugin-import":"^1.1.1","babel-plugin-transform-runtime":"^6.22.0","babel-polyfill":"^6.22.0","babel-preset-es2015":"^6.24.0","babel-preset-latest":"^6.24.0","babel-runtime":"^6.22.0","chai":"^3.5.0","coveralls":"^2.13.1","grunt":"^1.0.1","grunt-babel":"^6.0.0","grunt-cli":"^0.1.13","grunt-contrib-watch":"^1.0.0","grunt-jsdoc-to-markdown":"^3.0.0","grunt-webpack":"^2.0.1","grunt-webpack-server":"^0.1.0","istanbul":"^0.4.5","jsdoc":"^3.2.0","jshint":"^2.9.4","load-grunt-tasks":"^3.5.2","markdown-doctest":"^0.9.1","markdown-link-check":"^3.1.2","mocha":"^3.2.0","mocha-lcov-reporter":"^0.0.2","moment":"^2.18.1","pre-commit":"^1.2.2","sync-pkg":"^0.7.2","unminified-webpack-plugin":"^1.2.0","webpack":"^2.3.3"},"scripts":{"start":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","dev":"webpack","build":" webpack; MIN=1 webpack; npm run test; npm run lint; npm run doc;","test":"nyc --reporter=html --reporter=text mocha --timeout 15000","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js; ./node_modules/eslint/bin/eslint.js src/","doc":"grunt --doc","doctest":"./node_modules/markdown-doctest/bin/cmd.js README.md && ./node_modules/markdown-link-check/markdown-link-check README.md && ./node_modules/markdown-doctest/bin/cmd.js doc/leapyear.md && ./node_modules/markdown-link-check/markdown-link-check doc/leapyear.md","sync-pkg":"sync-pkg","pre-dev":"sudo npm install -g nyc"},"pre-commit":["test","lint","doctest"],"dependencies":{"eslint":"^4.4.1","jalaali-js":"^1.0.0"},"gitHead":"686f5c2775ee35104a482b849fb4398ea633de61","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@1.0.0","_npmVersion":"5.0.3","_nodeVersion":"8.1.2","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"dist":{"integrity":"sha512-C2zrJfhzZX8eaMYgcaqwStOk00/RaGunGHz7qSEXRNo05Nz9X6BkTg5e87mpDVl3GaNbL7SWFtI4jOykr6DUxg==","shasum":"79f7708f31a3e29d1ffcbf97cf6ee15b0625f6e4","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-1.0.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGMbbd0KAtNULEa3c6UqZNvzUv9bnQRjBoGvI2AOBtTYAiBhabaYMFM7KghjpvbzKI+SaTHnECY5eH1NsfttXNNmXA=="}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date-1.0.0.tgz_1506877690489_0.6888524671085179"},"directories":{}},"1.0.1":{"name":"persian-date","version":"1.0.1","license":"WTFPL","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"amd-loader":"0.0.8","babel-cli":"^6.0.0","babel-core":"^6.22.1","babel-loader":"^6.4.1","babel-plugin-import":"^1.1.1","babel-plugin-transform-runtime":"^6.22.0","babel-polyfill":"^6.22.0","babel-preset-es2015":"^6.24.0","babel-preset-latest":"^6.24.0","babel-runtime":"^6.22.0","chai":"^3.5.0","coveralls":"^2.13.1","grunt":"^1.0.1","grunt-babel":"^6.0.0","grunt-cli":"^0.1.13","grunt-contrib-watch":"^1.0.0","grunt-jsdoc-to-markdown":"^3.0.0","grunt-webpack":"^2.0.1","grunt-webpack-server":"^0.1.0","istanbul":"^0.4.5","jsdoc":"^3.2.0","jshint":"^2.9.4","load-grunt-tasks":"^3.5.2","markdown-doctest":"^0.9.1","markdown-link-check":"^3.1.2","mocha":"^3.2.0","mocha-lcov-reporter":"^0.0.2","moment":"^2.18.1","pre-commit":"^1.2.2","sync-pkg":"^0.7.2","unminified-webpack-plugin":"^1.2.0","webpack":"^2.3.3"},"scripts":{"start":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","dev":"webpack","build":" webpack; MIN=1 webpack; npm run test; npm run lint; npm run doc;","test":"nyc --reporter=html --reporter=text mocha --timeout 15000","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js; ./node_modules/eslint/bin/eslint.js src/","doc":"grunt --doc","doctest":"./node_modules/markdown-doctest/bin/cmd.js README.md && ./node_modules/markdown-link-check/markdown-link-check README.md && ./node_modules/markdown-doctest/bin/cmd.js doc/leapyear.md && ./node_modules/markdown-link-check/markdown-link-check doc/leapyear.md","sync-pkg":"sync-pkg","pre-dev":"sudo npm install -g nyc"},"pre-commit":["test","lint","doctest"],"dependencies":{"eslint":"^4.4.1","jalaali-js":"^1.0.0"},"gitHead":"a88ddfa3784cdf02279f91f9245a01ea259a37a2","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@1.0.1","_npmVersion":"5.0.3","_nodeVersion":"8.1.2","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"dist":{"integrity":"sha512-cOYSQ374gXsyNG9QsaJrnhHOB3AzNKP0tCbIkwwi4/Z55PN00YBwlDTAy7i8HNqH2K9TrwAS937AKma4oOGymQ==","shasum":"7f5f9722221fc0a363b7263cd2d12dba21b9b8a8","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-1.0.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCzxA2KEOYWLB0ZxH+7CuvHDHvW6icsuSpMVcSnIZQ6MgIhAOTcuXWssMb/61kttjX/FmPGJA9Gk9Ah5UqVsiWZsz4O"}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date-1.0.1.tgz_1506885436711_0.9423692864365876"},"directories":{}},"1.0.3":{"name":"persian-date","version":"1.0.3","license":"WTFPL","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"amd-loader":"0.0.8","babel-cli":"^6.0.0","babel-core":"^6.22.1","babel-loader":"^6.4.1","babel-plugin-import":"^1.1.1","babel-plugin-transform-runtime":"^6.22.0","babel-polyfill":"^6.22.0","babel-preset-es2015":"^6.24.0","babel-preset-latest":"^6.24.0","babel-runtime":"^6.22.0","chai":"^3.5.0","coveralls":"^2.13.1","grunt":"^1.0.1","grunt-babel":"^6.0.0","grunt-cli":"^0.1.13","grunt-contrib-watch":"^1.0.0","grunt-jsdoc-to-markdown":"^3.0.0","grunt-webpack":"^2.0.1","grunt-webpack-server":"^0.1.0","istanbul":"^0.4.5","jsdoc":"^3.2.0","jshint":"^2.9.4","load-grunt-tasks":"^3.5.2","markdown-doctest":"^0.9.1","markdown-link-check":"^3.1.2","mocha":"^3.2.0","mocha-lcov-reporter":"^0.0.2","moment":"^2.18.1","pre-commit":"^1.2.2","sync-pkg":"^0.7.2","unminified-webpack-plugin":"^1.2.0","webpack":"^2.3.3"},"scripts":{"start":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","dev":"webpack","build":" webpack; MIN=1 webpack; npm run test; npm run lint; npm run doc;","test":"nyc --reporter=html --reporter=text mocha --timeout 15000","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js; ./node_modules/eslint/bin/eslint.js src/","doc":"grunt --doc","doctest":"./node_modules/markdown-doctest/bin/cmd.js README.md && ./node_modules/markdown-link-check/markdown-link-check README.md && ./node_modules/markdown-doctest/bin/cmd.js doc/leapyear.md && ./node_modules/markdown-link-check/markdown-link-check doc/leapyear.md","sync-pkg":"sync-pkg","pre-dev":"sudo npm install -g nyc"},"pre-commit":["test","lint","doctest"],"dependencies":{"eslint":"^4.4.1","jalaali-js":"^1.0.0"},"gitHead":"757347d3aac09a9de84d4df0f584921e441b96b6","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@1.0.3","_npmVersion":"5.0.3","_nodeVersion":"8.1.2","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"dist":{"integrity":"sha512-OCRX74b7skh0VsQmmYWWzqK4jDsPSGtmnl00mY3wNA7uhtWygvxz9+CAnC4uRwg6v8GJAOFcS1ztacwBn9Xazw==","shasum":"f252742823c0e08dac9bdc3def5ecc86c655da66","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-1.0.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCtulrWRhA2NnMEUeeIJ8wtxCszZHdd9nFyQh9tO7Gk9wIhAKOqZ/rXPI2w50uZA0MqNbJb7YFI9uoJmbUlLHzCEWVd"}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date-1.0.3.tgz_1514130897971_0.709116738056764"},"directories":{}},"1.0.4":{"name":"persian-date","version":"1.0.4","license":"WTFPL","main":"dist/persian-date","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"amd-loader":"0.0.8","babel-cli":"^6.0.0","babel-core":"^6.22.1","babel-loader":"^6.4.1","babel-plugin-import":"^1.1.1","babel-plugin-transform-runtime":"^6.22.0","babel-polyfill":"^6.22.0","babel-preset-es2015":"^6.24.0","babel-preset-latest":"^6.24.0","babel-runtime":"^6.22.0","chai":"^3.5.0","coveralls":"^2.13.1","grunt":"^1.0.1","grunt-babel":"^6.0.0","grunt-cli":"^0.1.13","grunt-contrib-watch":"^1.0.0","grunt-jsdoc-to-markdown":"^3.0.0","grunt-webpack":"^2.0.1","grunt-webpack-server":"^0.1.0","istanbul":"^0.4.5","jsdoc":"^3.2.0","jshint":"^2.9.4","load-grunt-tasks":"^3.5.2","markdown-doctest":"^0.9.1","markdown-link-check":"^3.1.2","mocha":"^3.2.0","mocha-lcov-reporter":"^0.0.2","moment":"^2.18.1","pre-commit":"^1.2.2","sync-pkg":"^0.7.2","unminified-webpack-plugin":"^1.2.0","webpack":"^2.3.3"},"scripts":{"start":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","dev":"webpack","build":" webpack; MIN=1 webpack; npm run test; npm run lint; npm run doc;","test":"nyc --reporter=html --reporter=text mocha --timeout 15000","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js; ./node_modules/eslint/bin/eslint.js src/","doc":"grunt --doc","doctest":"./node_modules/markdown-doctest/bin/cmd.js README.md && ./node_modules/markdown-link-check/markdown-link-check README.md && ./node_modules/markdown-doctest/bin/cmd.js doc/leapyear.md && ./node_modules/markdown-link-check/markdown-link-check doc/leapyear.md","sync-pkg":"sync-pkg","pre-dev":"sudo npm install -g nyc"},"pre-commit":["test","lint","doctest"],"dependencies":{"eslint":"^4.4.1","jalaali-js":"^1.0.0"},"gitHead":"8804e247d08ca1b3f72e600c2054e03dcd1f948a","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@1.0.4","_npmVersion":"5.0.3","_nodeVersion":"8.1.2","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"dist":{"integrity":"sha512-31TkT7BFRu6Iz2aa3tQDci8eiRcqhMqR1SRNfKQp+CovsnNXdXisZwuZk1hOWDttskYFAcjSb10HhKWj8YGxQA==","shasum":"b243ca59626d501f09afe9fbc30c9a92e8221fb1","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-1.0.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCNCo0TljAyUeAeRuswCnTTob714R1e8XflacXtFkcboAIgYK4K5MWCo+Cl5X+K9AQDaTp/7g5OZORrQrd7LveWglY="}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date-1.0.4.tgz_1517077263897_0.8738882539328188"},"directories":{}},"1.0.5":{"name":"persian-date","version":"1.0.5","license":"WTFPL","main":"dist/persian-date","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"amd-loader":"0.0.8","babel-cli":"^6.0.0","babel-core":"^6.22.1","babel-loader":"^6.4.1","babel-plugin-import":"^1.1.1","babel-plugin-transform-runtime":"^6.22.0","babel-polyfill":"^6.22.0","babel-preset-es2015":"^6.24.0","babel-preset-latest":"^6.24.0","babel-runtime":"^6.22.0","chai":"^3.5.0","coveralls":"^2.13.1","grunt":"^1.0.1","grunt-babel":"^6.0.0","grunt-cli":"^0.1.13","grunt-contrib-watch":"^1.0.0","grunt-jsdoc-to-markdown":"^3.0.0","grunt-webpack":"^2.0.1","grunt-webpack-server":"^0.1.0","istanbul":"^0.4.5","jsdoc":"^3.2.0","jshint":"^2.9.4","load-grunt-tasks":"^3.5.2","markdown-doctest":"^0.9.1","markdown-link-check":"^3.1.2","mocha":"^3.2.0","mocha-lcov-reporter":"^0.0.2","moment":"^2.18.1","pre-commit":"^1.2.2","sync-pkg":"^0.7.2","unminified-webpack-plugin":"^1.2.0","webpack":"^2.3.3"},"scripts":{"start":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","dev":"webpack","build":" webpack; MIN=1 webpack; npm run test; npm run lint; npm run doc;","test":"nyc --reporter=html --reporter=text mocha --timeout 15000","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js; ./node_modules/eslint/bin/eslint.js src/","doc":"grunt --doc","doctest":"./node_modules/markdown-doctest/bin/cmd.js README.md && ./node_modules/markdown-link-check/markdown-link-check README.md && ./node_modules/markdown-doctest/bin/cmd.js doc/leapyear.md && ./node_modules/markdown-link-check/markdown-link-check doc/leapyear.md","sync-pkg":"sync-pkg","pre-dev":"sudo npm install -g nyc"},"pre-commit":["test","lint","doctest"],"dependencies":{"eslint":"^4.4.1","jalaali-js":"^1.0.0"},"gitHead":"be079310276528df8a119535408ea0377336238d","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@1.0.5","_npmVersion":"5.0.3","_nodeVersion":"8.1.2","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"dist":{"integrity":"sha512-an+PfiMOK3vPrGQuz9FOqkn4pXKrZ1WOpez60w24r3Jj6c60qERufwCHZRODqjhoQ72PRTbnS+hqjM3yu/Tt4A==","shasum":"8f1e938813f0bc6c385d47aa39df2b8b3b6a19f6","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-1.0.5.tgz","fileCount":39,"unpackedSize":701082,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHXLt8m7nN+9AJRwNOzXB0FL/4AGeFlY68CFzMX3pCPJAiEAyZnJ+sDSfxapUbVx34OCS5HcBuF/SGEWzN21KrhWCKY="}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date_1.0.5_1518305655152_0.49937918181503127"},"_hasShrinkwrap":false},"1.1.0-rc1":{"name":"persian-date","version":"1.1.0-rc1","license":"MIT","main":"dist/persian-date","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"amd-loader":"0.0.8","babel-cli":"6.0.0","babel-core":"6.22.1","babel-loader":"6.4.1","babel-plugin-import":"1.1.1","babel-plugin-transform-runtime":"6.22.0","babel-polyfill":"6.22.0","babel-preset-es2015":"6.24.0","babel-preset-latest":"6.24.0","babel-runtime":"6.22.0","chai":"3.5.0","coveralls":"2.13.1","grunt":"1.0.1","grunt-babel":"6.0.0","grunt-cli":"0.1.13","grunt-contrib-watch":"1.0.0","grunt-jsdoc-to-markdown":"3.0.0","grunt-webpack":"2.0.1","grunt-webpack-server":"0.1.0","istanbul":"0.4.5","jsdoc":"3.2.0","jshint":"2.9.4","load-grunt-tasks":"3.5.2","markdown-doctest":"0.9.1","markdown-link-check":"3.1.2","mocha":"3.2.0","mocha-lcov-reporter":"0.0.2","moment":"2.18.1","pre-commit":"1.2.2","sync-pkg":"0.7.2","unminified-webpack-plugin":"1.2.0","webpack-dev-server":"2.3.0","eslint":"4.4.1","jalaali-js":"1.0.0","webpack":"2.3.3"},"scripts":{"start":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","dev":"webpack","build":" webpack; MIN=1 webpack; npm run test; npm run lint; npm run doc;","test":"nyc --reporter=html --reporter=text mocha --timeout 25000","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js; ./node_modules/eslint/bin/eslint.js src/","doc":"grunt --doc","doctest":"./node_modules/markdown-doctest/bin/cmd.js README.md && ./node_modules/markdown-link-check/markdown-link-check README.md && ./node_modules/markdown-doctest/bin/cmd.js doc/leapyear.md && ./node_modules/markdown-link-check/markdown-link-check doc/leapyear.md","sync-pkg":"sync-pkg","pre-dev":"sudo npm install -g nyc"},"pre-commit":["test","lint","doctest"],"gitHead":"c972f5bbbe3add50084157c00e98e0a44ef4a2d2","readme":"Persian Date\n==============\n\nJavascript date library for parsing, validating, manipulating, and formatting Persian dates System.\n\n> from 1.0.0 persian date support gregorian calendar.\n\nInspired by [momentjs](http://momentjs.com/)\n\nMore info at [wikipedia](http://en.wikipedia.org/wiki/Iranian_calendar)\n\n[![npm version](https://badge.fury.io/js/persian-date.svg)](https://github.com/babakhani/persiandate)\n[![Bower version](https://badge.fury.io/bo/persian-date.svg)](https://github.com/babakhani/persiandate)\n[![Coverage Status](https://coveralls.io/repos/github/babakhani/PersianDate/badge.svg?branch=master)](https://coveralls.io/github/babakhani/PersianDate?branch=master)\n[![Travis-ci](https://travis-ci.org/babakhani/PersianDate.svg?branch=master)](https://github.com/babakhani/persiandate)\n\n<a class=\"github-button\" href=\"https://github.com/babakhani/persiandate\" data-icon=\"octicon-star\" data-style=\"mega\" data-count-href=\"/babakhani/persiandate/stargazers\" data-count-api=\"/repos/babakhani/persiandate#stargazers_count\" data-count-aria-label=\"# stargazers on GitHub\" aria-label=\"Star babakhani/persiandate on GitHub\">Star</a>\n<a class=\"github-button\" href=\"https://github.com/babakhani/persiandate/issues\" data-icon=\"octicon-issue-opened\" data-style=\"mega\" data-count-api=\"/repos/babakhani/persiandate#open_issues_count\" data-count-aria-label=\"# issues on GitHub\" aria-label=\"Issue babakhani/persiandate on GitHub\">Issue</a>\n<a class=\"github-button\" href=\"https://github.com/babakhani/persiandate/fork\" data-icon=\"octicon-repo-forked\" data-style=\"mega\" data-count-href=\"/babakhani/persiandate/network\" data-count-api=\"/repos/babakhani/persiandate#forks_count\" data-count-aria-label=\"# forks on GitHub\" aria-label=\"Fork babakhani/persiandate on GitHub\">Fork</a>\n\n\n## Install\n\n```shell\nnpm install persian-date --save-dev\nbower install persian-date --save-dev\n```\n\n## Browser\n\n```html\n<script src=\"node_modules/persian-date/dist/persian-date.js\" type=\"text/javascript\"></script>\n<script type=\"text/javascript\">\n    new persianDate().format(); // \"۱۳۹۶-۰۱-۱۱ ۲۳:۳۳:۲۷ ب ظ\" (when i run in my console)  \n</script>\n```\n## Webpack\n```\nrequire('persian-date');\n```\n\n## Calendar and locale\n\n### toCalendar\n\ndefault: ```persian```\n\navailable option: ```persian``` ```gregorian```\n\nfrom version 1.0.* ```persianDate``` have an option that allows developers to set calendar type of Date object.\n\nyou can change calendar type globally or only in specific object\n\nif you want change calendar type globally:\n\n\n```javascript\npersianDate.toCalendar('gregorian');\nnew persianDate([2017]).year(); // 2017\nnew persianDate([2017]).format('MMM'); // \"ژانویه\"\n```\n\nor only on instance:\n\n```javascript\nnew persianDate([1396]).toCalendar('gregorian').year(); // 2017\n```\n\n### toLeapYearMode\n\ndefault: ``` algorithmic ```\n\navailable option: ``` algorithmic ```, ``` astronomical ```\n\nThere is two popular way to determining leap years for the Persian calendar. \n\n- astronomical: occur whenever that number of days elapsed between equinoxes at the reference meridian.\n\n- algorithmic: based on Behrooz-Birashk proposed algorithm.\n\nAfter version 1.0.* ```persianDate``` support both algorithms and you can choose which algorithm use in your project. \ncurrently, we have support 2 type of leap year mode ``` algorithmic ```, ``` astronomical ```.\n\nyou can change it globally like this example\n\n```javascript\npersianDate.toLeapYearMode('algorithmic')\n```\n\nor change it in you instance\n\n```javascript\nnew persianDate().toLeapYearMode('algorithmic')\n```\n\n> ```toLeapYearMode``` only work when calendar type is ```persian```, and doesnt any effect on ```gregorian``` calendar\n\n### toLocale\n\ndefault: ```fa```\n\navailable option: ```fa``` ```en```\n\nif you want change locale globally:\n \n```javascript\npersianDate.toLocale('fa');\nnew persianDate([1396,6,17]).format(); // \"۱۳۹۶-۰۶-۱۷ ۰۰:۰۰:۰۰ ق ظ\"\nnew persianDate([1396,6,17]).format('dddd'); // \"جمعه\"\nnew persianDate([1396,6,17]).format('MMMM'); // \"شهریور\"\n\npersianDate.toLocale('en');\nnew persianDate([1396,6,17]).format(); // \"1396-06-17 00:00:00 AM\"\nnew persianDate([1396,6,17]).format('dddd'); // \"Friday\"\nnew persianDate([1396,6,17]).format('MMMM'); // \"Shahrivar\"\n\n```\n\nor only on instance:\n\n\n```javascript\nnew persianDate([1396,6,17]).toLocale('fa').format(); // \"۱۳۹۶-۰۶-۱۷ ۰۰:۰۰:۰۰ ق ظ\"\nnew persianDate([1396,6,17]).toLocale('fa').format('dddd'); // \"جمعه\"\nnew persianDate([1396,6,17]).toLocale('fa').format('MMMM'); // \"شهریور\"\n\npersianDate.toCalendar('gregorian');\nnew persianDate([1396,6,17]).toLocale('en').format(); // \"1397-07-07 00:00:00 AM\"\nnew persianDate([1396,6,17]).toLocale('en').format('dddd'); // \"Friday\"\nnew persianDate([1396,6,17]).toLocale('en').format('MMMM'); // \"June\"\n\n```\n\n> after version 1.0.*, you must use ```toLocale``` instead ```formatPersian```, for show persian or english digit.\n\n## Parse\n\nInstead of modifying the native ``` Date.prototype ``` , persianDate creates a wrapper for the Date object.\nTo get this wrapper object, simply call ``` persianDate() ``` with one of the supported input types.\n\n### Now\n\n```javascript\nnew persianDate();\n```\n\nTo get the current date and time, just call ```persianDate()``` with no parameters.\n\n```javascript\nvar now = new persianDate();\n```\n\nThis is essentially the same as calling ```new persianDate(new Date())``` .\n\n\n### Unix Offset (milliseconds)\n\n```javascript\nnew persianDate(/* Number */);\n```\n\nSimilar to ``` new Date(Number)```, you can create a persianDate by passing an integer value representing the number of milliseconds since the Unix Epoch (Jan 1 1970 12AM UTC).\n\n\n```javascript\nvar day = new persianDate(1318781876406); // \"۱۳۹۰-۰۷-۲۴ ۱۹:۴۷:۵۶ ب ظ\"\n```\n\n### Unix Timestamp (seconds)\n\n```javascript\npersianDate.unix(/* Number */);\n```\n\nTo create a persianDate from a Unix timestamp (seconds since the Unix Epoch), use ```persianDate.unix(Number)```\n\n```javascript\nvar day = new persianDate.unix(1318781876); // \"۱۳۹۰-۰۷-۲۴ ۱۹:۴۷:۵۶ ب ظ\"\n```\n\nThis is implemented as ```persianDate(timestamp * 1000)``` , so partial seconds in the input timestamp are included.\n\n### Date\n\n<!-- skip-example -->\n```javascript\nnew persianDate(new Date());\n```\n\nYou can create a ```persianDate``` with a pre-existing native Javascript ```Date``` object.\n\n<!-- skip-example -->\n```javascript\nvar day = new Date(2011, 9, 16);\nvar dayWrapper = new persianDate(day); // \"۱۳۹۰-۰۷-۲۴ ۰۰:۰۰:۰۰ ق ظ\"\n```\nThis is the fastest way to get a persianDate.js wrapper.\n\n\n### Array\n\n> ['year', 'month', 'day', 'hour', 'minute', 'second', 'millisecond']\n\n```javascript\nnew persianDate([1391, 12, 29, 12, 25, 25, 900]);\n```\n\nYou can create a persianDate with an array of numbers that mirror the parameters passed to new ```Date()``` But As Persian Date Number Like [1393,2,22,11,22,30]\n\n```javascript\nnew persianDate([1393, 1, 14, 15,25, 50,125]); // \"۱۳۹۳-۰۱-۱۴ ۱۵:۲۵:۵۰ ب ظ\"\n```\n\nAny value past the year is optional, and will default to the lowest possible number.\n\n```javascript\nnew persianDate([1392]); // Farvardin 1st\nnew persianDate([1392, 6]); // Shahrivar 1st\nnew persianDate([1392, 6, 10]); // Shahrivar 10th\n```\n\n> Note: from 1.0.* you can pass gregorian date array to create gregorian date object. for this functionality you must change date object calendar type by ```toCalendar('gregorian')```\n\nexample:\n\n```javascript\npersianDate.toCalendar('gregorian');\nnew persianDate([2017,2,2]).format(); // \"۲۰۱۷-۰۲-۰۲ ۰۰:۰۰:۰۰ ق ظ\"\n```\n\n\n### ASP.NET JSON Date\n\n```\nnew persianDate(String);\n```\n\nASP.NET returns dates in JSON as ```/Date(1198908717056)/``` or ```/Date(1198908717056-0700)/```\n\nIf a string that matches this format is passed in, it will be parsed correctly.\n\n```javascript\nnew persianDate(\"/Date(1198908717056-0700)/\"); //\"۱۳۸۶-۱۰-۰۸ ۰۹:۴۱:۵۷ ق ظ\"\n```\n\n\n### PesianDate Clone\n\n```\nnew persianDate(persianDate);\n```\n\nAll persianDate are mutable. If you want a clone of a persianDate, you can do so explicitly or implicitly.\nCalling ```persianDate()``` on a persianDate will clone it.\n\n<!-- skip-example -->\n```javascript\nvar a = new persianDate([1392]);\nvar b = new persianDate(a);\na.year(1300);\nb.year(); // 1392\n```\n\n<!-- skip-example -->\n```javascript\nvar a = new persianDate([1392]);\nvar b = a.clone();\na.year(1300);\nb.year(); // 1392\n```\n\n## Get + Set\n\npersainDate.js uses overloaded getters and setters. You may be familiar with this pattern from it's use in jQuery.\n\nCalling these methods without parameters acts as a getter, and calling them with a parameter acts as a setter.\n\nThese map to the corresponding function on the native ```Date``` object.\n\n```javascript\nnew persianDate().seconds(30).valueOf() === new Date().setSeconds(30); // true\nnew persianDate().seconds() === new Date().getSeconds(); // true\n```\n\n### Millisecond\n\n```javascript\nnew persianDate().millisecond(100);\nnew persianDate().millisecond(); // 100\nnew persianDate().milliseconds(100);\nnew persianDate().milliseconds(); // 100\n```\n\nGets or sets the milliseconds.\n\nAccepts numbers from 0 to 999. If the range is exceeded, it will bubble up to the seconds.\n\n### Second\n\n```javascript\nnew persianDate().second(10);\nnew persianDate().second(); // 10\nnew persianDate().seconds(10);\nnew persianDate().seconds(); // 10\n```\n\nGets or sets the seconds.\n\nAccepts numbers from 0 to 59. If the range is exceeded, it will bubble up to the minutes.\n\n### Minute\n\n```javascript\nnew persianDate().minute(20);\nnew persianDate().minute(); // 20\nnew persianDate().minutes(20);\nnew persianDate().minutes(); // 20\n```\n\nGets or sets the minutes.\n\nAccepts numbers from 0 to 59. If the range is exceeded, it will bubble up to the hours.\n\n### Hour\n\n```javascript\nnew persianDate().hour(12);\nnew persianDate().hour(); // 12\nnew persianDate().hours(12);\nnew persianDate().hours(); // 12\n```\n\nGets or sets the hour.\n\nAccepts numbers from 0 to 23. If the range is exceeded, it will bubble up to the day.\n\n### Date of Month\n\n```javascript\nnew persianDate().date(23);\nnew persianDate().date(); // 23\nnew persianDate().dates(23);\nnew persianDate().dates(); // 23\n```\n\nGets or sets the day of the month.\n\nAccepts numbers from 1 to 31. If the range is exceeded, it will bubble up to the months.\n\n> Note: persianDate#date is for the date of the month, and persianDate#day is for the day of the week.\n\n### Year\n\n```javascript\nnew persianDate().year(1390);\nnew persianDate().year(); // 1390\nnew persianDate().years(1390);\nnew persianDate().years(); // 1390\n```\n\nGets or sets the year.\n\nAccepts numbers from -270,000 to 270,000.\n\n### Day of Week\n\n```javascript\nnew persianDate().day(); // Number\nnew persianDate().days(); // Number\n```\n\nGets the day of the week.\n\n> Note: ```persianDate#date``` is for the date of the month, and ```persianDate#day``` is for the day of the week.\n\n\n## Manipulate\n\nOnce you have a PersianDate , you may want to manipulate it in some way. There are a number of methods to help with this.\n\npersianDate.js uses the [fluent interface pattern](http://en.wikipedia.org/wiki/Fluent_interface),\n also known as [method chaining](https://en.wikipedia.org/wiki/Method_chaining). This allows you to do crazy things like the following.\n\n```javascript\nnew persianDate().add('days', 7).subtract('months', 1).year(2009).hours(0).minutes(0).seconds(0);\n```\n\n> Note: It should be noted that persianDates are mutable. Calling any of the manipulation methods will change the original persianDate.\n\nIf you want to create a copy and manipulate it, you should use ```persianDate#clone``` before manipulating the persianDate.\n\n\n### Add\n\n<!-- skip-example -->\n```javascript\nnew persianDate().add(String, Number);\n```\n\nMutates the original persianDate by adding time.\n\nThis is a pretty robust function for adding time to an existing persianDate. To add time, pass the key of what time you want to add, and the amount you want to add.\n\n```javascript\nnew persianDate().add('days', 7);\n```\n\nThere are some shorthand keys as well if you're into that whole brevity thing.\n\n```javascript\nnew persianDate().add('d', 7);\n```\n\n| Key\t        | Alternate\t    | Shorthand |\n| ------------- |:-------------:|:-:|\n| years\t        | year\t        | y |\n| months\t    | month\t        | M |\n| weeks\t        | week\t        | w |\n| days\t        | day\t        | d |\n| hours\t        | hour\t        | h |\n| minutes\t    | minute\t    | m |\n| seconds   \t| second\t    | s |\n| milliseconds\t| millisecond\t| ms|\n\nIf you want to add multiple different keys at the same time, you can pass them in as an object literal.\n\n```javascript\nnew persianDate().add('days', 7).add('months', 1); // with chaining\n```\n\nThere are no upper limits for the amounts, so you can overload any of the parameters.\n\n```javascript\nnew persianDate().add('milliseconds', 1000000); // a million milliseconds\nnew persianDate().add('days', 360); // 360 days\n```\n\n### Subtract\n\n<!-- skip-example -->\n```javascript\nnew persianDate().subtract(String, Number);\n```\n\nMutates the original persianDate by subtracting time.\n\nThis is exactly the same as ```persianDate#add``` , only instead of adding time, it subtracts time.\n\n```javascript\nnew persianDate().subtract('days', 7);\n```\n\n### Start of Time\n\n<!-- skip-example -->\n```javascript\nnew persianDate().startOf(String);\n```\n\nMutates the original persianDate by setting it to the start of a unit of time.\n\n```javascript\nnew persianDate().startOf('year');   // set to Farvardin 1st, 12:00 am this year\nnew persianDate().startOf('month');  // set to the first of this month, 12:00 am\nnew persianDate().startOf('week');   // set to the first day of this week, 12:00 am\nnew persianDate().startOf('day');    // set to 12:00 am today\nnew persianDate().startOf('hour');   // set to now, but with 0 mins, 0 secs, and 0 ms\nnew persianDate().startOf('minute'); // set to now, but with 0 seconds and 0 milliseconds\nnew persianDate().startOf('second'); // same as persianDate().milliseconds(0);\n```\n\nThese shortcuts are essentially the same as the following.\n\n```javascript\nnew persianDate().startOf('year');\nnew persianDate().month(1).date(1).hours(0).minutes(0).seconds(0).milliseconds(0);\n```\n\n```javascript\nnew persianDate().startOf('hour');\nnew persianDate().minutes(0).seconds(0).milliseconds(0)\n```\n\n### End of Time\n\n```javascript\nnew persianDate().endOf(String);\n```\n\nMutates the original persianDate by setting it to the end of a unit of time.\n\nThis is the same as ```persianDate#startOf``` , only instead of setting to the start of a unit of time, it sets to the end of a unit of time.\n\n```javascript\nnew persianDate().endOf(\"year\"); // set the persianDate to 12-31 11:59:59.999 pm this year\n```\n\n## Display\n\nOnce parsing and manipulation are done, you need some way to display the persianDate.\n\n\n### Format\n\n```javascript\nnew persianDate().format();\nnew persianDate().format('string');\n```\n\nThis is the most robust display option. It takes a string of tokens and replaces them with their corresponding values.\n\n```javascript\nnew persianDate().format(\"dddd, MMMM DD YYYY, h:mm:ss a\"); // \"شنبه, فروردین ۱۲ ۱۳۹۶, ۵:۵۴:۱۱ ب ظ\"\nnew persianDate().format(\"dddd, ha\"); // \"شنبه, ۵ب ظ\"\n```\n\nThis is the most robust display option. It takes a string of tokens and replaces them with their corresponding values.\n\n\n| Type\t            | Tocken\t    | Output |\n| -------------     |:-------------:|:------:|\n| Month             | M\t            | ۱ ۲ ... ۱۱ ۱۲|\n|        \t        | MM\t        | ۰۱ ۰۲ ... ۱۱ ۱۲|\n|        \t        | MMM\t        | فرو ارد ... اسف|\n|                   | MMMM\t        | فروردین اردیبهشت ... اسفند |\n| Day of month      | D            | ۱ ۲ ... ۳۰ ۳۱|\n|                   | DD           | ۰۱ ۰۲ ... ۳۰ ۳۱|\n| Day of year       | DDD          | ۱ ۲ ... ۳۶۴ ۳۶۵|\n|                   | d            | ۰ ۱ ... ۵ ۶|\n|                   | dd            | ش ی ... ج|\n|                   | ddd       |شنبه یکشنبه ... جمعه|\n|                   | dddd    |انارام مانتره سپند ... اشتاد |\n| Week of Year      | w            | ۱ ۲ ... ۵۲ ۵۳ |\n|                   | ww           | ۰۱ ۰۲ ... ۵۲ ۵۳ |\n|Year               | YY           | ۶۶ ۹۱ ... ۹۸ ۳۰ |\n|                   | YYYY          | ۱۳۶۶ ۱۳۹۱ ... ۱۳۹۸ ۱۴۰۱ |\n| AM/PM              | a            | \"ق ظ\", \"ب ظ\" |\n| Hour              | H            | ۰ ۱ ... ۲۲ ۲۳ |\n|                   | HH           | ۰۰ ۰۱ ... ۲۲ ۲۳ |\n|                   | h            | ۱ ۲ ... ۱۱ ۱۲ |\n|                   | hh           | ۰۱ ۰۲ ... ۱۱ ۱۲ |\n| Minute            | m            | ۰ ۱ ... ۵۸ ۵۹ |\n|                   | mm           | ۰۰ ۰۱ ... ۵۸ ۵۹ |\n| Second            | s            | ۰ ۱ ... ۵۸ ۵۹ |\n|                   | ss           | ۰۰ ۰۱ ... ۵۸ ۵۹ |\n| Unix Timestamp     | X            | 1360013296 |\n| Timezone          | Z            | -۰۴:۳۰ -۰۵:۰۰ ... +۰۴:۳۰ +۰۵:۰۰ |\n|                   | ZZ           | -۰۴۳۰ -۰۵:۰۰ ... +۰۴:۳۰ +۰۵:۰۰ |\n\n\n### Long Date formats\n\n| Type\t                                            | Tocken\t    | Output |\n| -------------                                     |:-------------:|:------:|\n| Time                                              | LT            | \"۴:۱۵ ب ظ\"|\n| Month numeral, day of month, year                 | L             | ۱۳۹۲/۰۲/۲۰ |\n|                                                   | l             | ۳۹۲/۲/۲۰ |\n| Month name, day of month, year                    | LL            | اردیبهشت ۲۰ ۱۳۹۲|\n|                                                   | ll            | ارد ۲۰ ۱۳۹۲|\n| Month name, day of month, year, time              | LLL           | اردیبهشت ۱۳۹۲ ۲۰ ۴:۲۳ ب ظ|\n|                                                   | lll           | ارد ۱۳۹۲ ۲۰ ۴:۲۳ ب ظ|\n| Month name, day of month, day of week, year, time | LLLL          | جمعه ۲۰ اردیبهشت ۱۳۹۲ ۴:۲۵ ب ظ |\n|                                                   | llll          | ج ۲۰ ارد ۱۳۹۲ ۴:۲۷ ب ظ |\n\n\n### Default format\n\nISO8601 format ```YYYY-MM-DDTHH:mm:ssZ```\n\"۱۳۹۱-۱۰-۰۴ ۱۱:۲۷:۵۳ ق ظ\"\n\n\n### Format To Persian digit\n\n> Deprecated as 1.0.* instead use [toLocale](#tolocale)\n\nBy Default persianDate format, use Persian Number System, for engilsh number Set formatPersian Option as false\n\n<!-- skip-example -->\n```javascript\nvar d = new persianDate([1391]);\nd.format(); //\"۱۳۹۱-۰۱-۰۱ ۰۰:۰۰:۰۰ ق ظ\"\nwindow.formatPersian = false;\nd.format(); //\"1391-01-01 00:00:00 AM\"\n```\n\nAlso you can set golbal config like this\n\n<!-- skip-example -->\n```javascript\nwindow.formatPersian  = false;\n```\n\n> Note: After Set Global config you can set config for every instance\n\n<!-- skip-example -->\n```javascript\nvar d = new persianDate([1391]);\nd.format(); //\"۱۳۹۱-۰۱-۰۱ ۰۰:۰۰:۰۰ ق ظ\"\nwindow.formatPersian = false;\nd.format(); //\"1391-01-01 00:00:00 AM\"\nd.formatPersian = true;\nd.format(); //\"۱۳۹۱-۰۱-۰۱ ۰۰:۰۰:۰۰ ق ظ\"\n```\n\t\t\t\n### Difference\n\n```\nnew persianDate().diff(PersianDate|String|Boolean);\n```\n\nAccept 3 argument, (ccmparable persianDate object, difference key, boolean value that make returned output float)\n\nTo get the difference in milliseconds, use ```persianDate#diff```.\n\n```javascript\nvar a = new persianDate([1392, 1, 29]);\nvar b = new persianDate([1392, 1, 28]);\na.diff(b) // 86400000\n```\n\nTo get the difference in another unit of measurement, pass that measurement as the second argument.\n\n```javascript\nvar a = new persianDate([1392, 1, 29]);\nvar b = new persianDate([1392,1, 28]);\na.diff(b, 'days'); // 1\n```\n\nThe supported measurements are years, months, weeks, days, hours, minutes, and seconds. For ease of development, the singular forms are supported .\n\n```javascript\nvar a = new persianDate([1391, 1]);\nvar b = new persianDate([1392, 5]);\na.diff(b, 'years');\na.diff(b, 'years', true);\n```\n\n\nIf the persianDate is later than the persianDate you are passing to ```persianDate.fn.diff``` , the return value will be negative.\n\n```javascript\nvar a = new persianDate();\nvar b = new persianDate().add('seconds', 1);\na.diff(b); // -1000\nb.diff(a); // 1000\n```\n\nA easy way to think of this is by replacing ```.diff(``` with a minus operator.\n\n<!-- skip-example -->\n```javascript\na.diff(b);\nb.diff(a);\n```\n\n### Unix Offset (milliseconds)\n\n```javascript\nnew persianDate().valueOf();\n```\n\n```persianDate#valueOf``` simply outputs the number of milliseconds since the Unix Epoch, just like ```Date#valueOf``` .\n\n```javascript\nnew persianDate(1318874398806).valueOf(); // 1318874398806\nnew persianDate(1318874398806).format(); // \"۱۳۹۰-۰۷-۲۵ ۲۱:۲۹:۵۸ ب ظ\"\n```\n\nTo get a Unix timestamp (the number of seconds since the epoch) from a ```persianDate``` , use ```persianDate#unix``` .\n\n### Unix Timestamp (seconds)\n\n```javascript\nnew persianDate().unix();\n```\n\n```persianDate#unix``` outputs a Unix timestamp (the of seconds since the Unix Epoch).\n\n```javascript\nnew persianDate(1318874398806).unix(); // 1318874398\n```\n\nThis value is floored to the nearest second, and does not include a milliseconds component.\n\n### Timezone Offset\n\n```javascript\nnew persianDate().zone();\n```\n\nGet the timezone offset in minutes.\n\n```javascript\nnew persianDate().zone(); // (60, 120, 240, -270, etc.)\n```\n\n### Days in Month\n\n```javascript\nnew persianDate().daysInMonth();\n```\n\nGet the number of days in the current month.\n\n```javascript\nnew persianDate([1392,1]).daysInMonth(); // 31\nnew persianDate([1392,8]).daysInMonth(); // 30\nnew persianDate([1392,12]).daysInMonth(); // 29\nnew persianDate([1391,12]).daysInMonth(); // 30\n```\n\n### As Javascript Date\n\n```javascript\nnew persianDate().toDate();\n```\n\nTo get the native ```Date``` object that ```persianDate.js``` wraps, use ```persianDate#toDate``` .\n\nThis will return the ```Date``` that the ```persianDate``` uses.\n\n### As Array\n\n```javascript\nnew persianDate().toArray();\n```\n\nThis returns an array that mirrors the parameters from new ```persianDate()``` .\n\n```javascript\nnew persianDate().toArray(); // [1391, 1, 4, 14, 40, 16, 154];\n```\n\n### Range Name\n\nHelper method that return date range name like week days name, month names, month days names (specially in persian calendar).\n\n```javascript\n\npersianDate.toLocale('fa').toCalendar('persian');\n\npersianDate.rangeName().weekdays;\n// [\"شنبه\", \"یکشنبه\", \"دوشنبه\", \"سه شنبه\", \"چهار شنبه\", \"پنج‌شنبه\", \"جمعه\"]\n\npersianDate.rangeName().weekdaysMin;\n// [\"ش\", \"ی\", \"د\", \"س\", \"چ\", \"پ\", \"ج\"]\n\npersianDate.rangeName().months;\n// [\"فروردین\", \"اردیبهشت\", \"خرداد\", \"تیر\", \"مرداد\", \"شهریور\", \"مهر\", \"آبان\", \"آذر\", \"دی\", \"بهمن\", \"اسفند\"]\n\npersianDate.rangeName().monthsShort; \n// [\"فرو\", \"ارد\", \"خرد\", \"تیر\", \"مرد\", \"شهر\", \"مهر\", \"آبا\", \"آذر\", \"دی\", \"بهم\", \"اسف\"]\n\npersianDate.rangeName().persianDaysName[0]; \n// \"اورمزد\"\n\n```\n\n> [Persian month day name wiki](https://fa.wikipedia.org/wiki/%D9%81%D9%87%D8%B1%D8%B3%D8%AA_%D9%86%D8%A7%D9%85_%D8%B1%D9%88%D8%B2%D9%87%D8%A7%DB%8C_%D9%85%D8%A7%D9%87)\n\nAlso You can get Gregorian calendar range names\n\n```javascript\npersianDate.toCalendar('gregorian').rangeName().months;\n// [\"ژانویه\", \"فوریه\", \"مارس\", \"آوریل\", \"مه\", \"ژوئن\", \"ژوئیه\", \"اوت\", \"سپتامبر\", \"اکتبر\", \"نوامبر\", \"دسامبر\"]\n\npersianDate.toCalendar('gregorian').toLocale('en').rangeName().months;\n// [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"]\n\n\npersianDate.toCalendar('gregorian').toLocale('en').rangeName().weekDayes;\n// ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']\n\npersianDate.toCalendar('gregorian').toLocale('en').rangeName().weekDayesShort;\n// ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']\n\npersianDate.toCalendar('gregorian').toLocale('en').rangeName().weekDayesMin;\n// ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa']\n\n```\n\n## Query\n\n### Is Leap Year\n\n```javascript\nnew persianDate().isLeapYear();\n```\n\n```persianDate#isLeapYear``` returns true if that year is a leap year, and ```false``` if it is not. base on object calendarType.\n\n```javascript\nnew persianDate([1391]).isLeapYear(); // true\nnew persianDate([1392]).isLeapYear(); // false\nnew persianDate([1393]).isLeapYear(); // false\nnew persianDate([1394]).isLeapYear(); // false\nnew persianDate([1395]).isLeapYear(); // true\nnew persianDate([1396]).isLeapYear(); // false\n```\n\n### Is Daylight Saving Time\n\n```javascript\nnew persianDate().isDST();\n```\n\n```persianDate#isDST``` checks if the current persianDate is in daylight savings time.\n\n```javascript\nnew persianDate([1396, 1, 1]).isDST(); // false\nnew persianDate([1396, 1, 2]).isDST(); // true\nnew persianDate([1396, 6, 30]).isDST(); // true\nnew persianDate([1396, 6, 31]).isDST(); // false\n```\n\n> Based on [Persian DST wiki](https://fa.wikipedia.org/wiki/%D8%B3%D8%A7%D8%B9%D8%AA_%D8%AA%D8%A7%D8%A8%D8%B3%D8%AA%D8%A7%D9%86%DB%8C)\n\n### Is a PersianDat\n\n```javascript\nvar obj = new persianDate();\n\n// options 1\nnew persianDate().isPersianDate(obj); // true\n\n//option 2\npersianDate.isPersianDate(obj);\n\n```\n\nTo check if a variable is a persianDate object, use ```persianDate().isPersianDate()``` .\n\n```javascript\nnew persianDate().isPersianDate(); // false\nnew persianDate().isPersianDate(new Date()); // false\nnew persianDate().isPersianDate(new persianDate()); // true\n```\n\n### Is Same Month\n\nCheck date object with given date object month similarity\n\n\n```javascript\n// options 1\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1396,1,12]);\nb.isSameMonth(a); // true\n\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1397,1,12]);\nb.isSameMonth(a); // false\n\n// options 2\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1396,1,12]);\npersianDate.isSameMonth(a,b); // true\n\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1397,1,12]);\npersianDate.isSameMonth(a,b); // false\n```\n\n### Is Same Day\n\nCheck date object with given date object day similarity\n\n\n```javascript\n// options 1\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1396,1,1]);\nb.isSameDay(a); // true\n\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1396,2,1]);\nb.isSameDay(a); // false\n\n// options 2\nvar a = new persianDate([1396,1,12]);\nvar b = new persianDate([1396,1,12]);\npersianDate.isSameDay(a,b); // true\n\nvar a = new persianDate([1396,1,12]);\nvar b = new persianDate([1397,1,12]);\npersianDate.isSameDay(a,b); // false\n```\n\n\n\n## license\nFreely distributable under the terms of the [MIT](https://opensource.org/licenses/MIT) license. \n\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@1.1.0-rc1","_npmVersion":"6.4.1","_nodeVersion":"10.15.1","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"dist":{"integrity":"sha512-0vluPKFvvOAuYpdsDbptrZs+qORusbvzq0uwsY7UnxY9HvIthAGmhl4lYuob06YgXmd3SasvUIYEvPVmnldDQA==","shasum":"f7e938ff643858fa12bded45c40f03ab04bb62e6","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-1.1.0-rc1.tgz","fileCount":33,"unpackedSize":690636,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc0VqzCRA9TVsSAnZWagAAIlsP/3kFXmRsSSIuJHFYFtu2\ng0XxdzStBBUO+MdAcwWwadCRUdaW7nrHmKzxzzQ2kwJUA3VCQPs+LFlnz/O5\niX4pDdAQh8wVUgC4w7ev4yg7X5UiDYDe2zLCp3wIPtioYMgIzYZqtWWlMZrD\nc3rQqBWozD1kdYetprcEM1X8KKaSIOUvsajlRz5/EMMRbFGT4asMwSfbHvC1\nI9hlObX5AUoOtbnaz+ahnSBXOCCkEWuuxHcQgwB/Hb1ASK/urQvMmIp9yVtD\nWQtOiasmaHOBazGvq7CdZtk2kPaOtocGmqWFBt31pj9ZOgQnKezSerwXqOtY\n4FLIrpRUm3Rmc1Qvfb053ilRfgXNJ8QST5bOZhWkqh4cLCf+ZwqQ9K9MX+9j\nmoUFmLG6c3Hie3hzS19lAVy/K6yRzjVsaTGM8Mc1/La+yxkfC+1PliFTzR+g\nx2tT3TKaPjiAl4OwbIntkwIc0yRZ7iRE8Cu1mMV0N6785tq4pBu4gyibxoEF\nwEqTGXius9zsv3Aa/FuS2Q4twDEal0al5EIjJvHS/ANjAVUKb34yAKYbgQUT\nZEB6Q+jcrWd+ERwbUnXhnUpEwUpxQn7k4mGVCURZlYvNAZW1m11PUKEoCd/v\nUUdut9HWvczLIQi2ltoGqz3b2JaHSRIPqsewuZoVzabJhgg8HEv8fQmlA8aG\nMmlH\r\n=XnvX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHY/GRufiIZBPeFawmPZBrPiKxaojh898u/Jp9947TZ7AiBTuuQiUcHZhGUu5OTIcy/twf/ggNlp4mv8H1wiG4fUxA=="}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date_1.1.0-rc1_1557224114542_0.09975569516521188"},"_hasShrinkwrap":false},"1.1.0-rc2":{"name":"persian-date","version":"1.1.0-rc2","license":"MIT","main":"dist/persian-date","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"amd-loader":"0.0.8","babel-cli":"6.0.0","babel-core":"6.22.1","babel-loader":"6.4.1","babel-plugin-import":"1.1.1","babel-plugin-transform-runtime":"6.22.0","babel-polyfill":"6.22.0","babel-preset-es2015":"6.24.0","babel-preset-latest":"6.24.0","babel-runtime":"6.22.0","chai":"3.5.0","coveralls":"2.13.1","grunt":"1.0.1","grunt-babel":"6.0.0","grunt-cli":"0.1.13","grunt-contrib-watch":"1.0.0","grunt-jsdoc-to-markdown":"3.0.0","grunt-webpack":"2.0.1","grunt-webpack-server":"0.1.0","istanbul":"0.4.5","jsdoc":"3.2.0","jshint":"2.9.4","load-grunt-tasks":"3.5.2","markdown-doctest":"0.9.1","markdown-link-check":"3.1.2","mocha":"3.2.0","mocha-lcov-reporter":"0.0.2","moment":"2.18.1","pre-commit":"1.2.2","sync-pkg":"0.7.2","unminified-webpack-plugin":"1.2.0","webpack-dev-server":"2.3.0","eslint":"4.4.1","jalaali-js":"1.0.0","webpack":"2.3.3"},"scripts":{"start":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","dev":"webpack","build":" webpack; MIN=1 webpack; npm run test; npm run lint; npm run doc;","test":"nyc --reporter=html --reporter=text mocha --timeout 25000","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js; ./node_modules/eslint/bin/eslint.js src/","doc":"grunt --doc","doctest":"./node_modules/markdown-doctest/bin/cmd.js README.md && ./node_modules/markdown-link-check/markdown-link-check README.md && ./node_modules/markdown-doctest/bin/cmd.js doc/leapyear.md && ./node_modules/markdown-link-check/markdown-link-check doc/leapyear.md","sync-pkg":"sync-pkg","pre-dev":"sudo npm install -g nyc"},"pre-commit":["test","lint","doctest"],"gitHead":"ee818311b2b7a284069e2eb7f8dd8a834eb3783c","readme":"Persian Date\n==============\n\nJavascript date library for parsing, validating, manipulating, and formatting Persian dates System.\n\n> from 1.0.0 persian date support gregorian calendar.\n\nInspired by [momentjs](http://momentjs.com/)\n\nMore info at [wikipedia](http://en.wikipedia.org/wiki/Iranian_calendar)\n\n[![npm version](https://badge.fury.io/js/persian-date.svg)](https://github.com/babakhani/persiandate)\n[![Bower version](https://badge.fury.io/bo/persian-date.svg)](https://github.com/babakhani/persiandate)\n[![Coverage Status](https://coveralls.io/repos/github/babakhani/PersianDate/badge.svg?branch=master)](https://coveralls.io/github/babakhani/PersianDate?branch=master)\n[![Travis-ci](https://travis-ci.org/babakhani/PersianDate.svg?branch=master)](https://github.com/babakhani/persiandate)\n\n<a class=\"github-button\" href=\"https://github.com/babakhani/persiandate\" data-icon=\"octicon-star\" data-style=\"mega\" data-count-href=\"/babakhani/persiandate/stargazers\" data-count-api=\"/repos/babakhani/persiandate#stargazers_count\" data-count-aria-label=\"# stargazers on GitHub\" aria-label=\"Star babakhani/persiandate on GitHub\">Star</a>\n<a class=\"github-button\" href=\"https://github.com/babakhani/persiandate/issues\" data-icon=\"octicon-issue-opened\" data-style=\"mega\" data-count-api=\"/repos/babakhani/persiandate#open_issues_count\" data-count-aria-label=\"# issues on GitHub\" aria-label=\"Issue babakhani/persiandate on GitHub\">Issue</a>\n<a class=\"github-button\" href=\"https://github.com/babakhani/persiandate/fork\" data-icon=\"octicon-repo-forked\" data-style=\"mega\" data-count-href=\"/babakhani/persiandate/network\" data-count-api=\"/repos/babakhani/persiandate#forks_count\" data-count-aria-label=\"# forks on GitHub\" aria-label=\"Fork babakhani/persiandate on GitHub\">Fork</a>\n\n\n## Install\n\n```shell\nnpm install persian-date --save-dev\nbower install persian-date --save-dev\n```\n\n## Browser\n\n```html\n<script src=\"node_modules/persian-date/dist/persian-date.js\" type=\"text/javascript\"></script>\n<script type=\"text/javascript\">\n    new persianDate().format(); // \"۱۳۹۶-۰۱-۱۱ ۲۳:۳۳:۲۷ ب ظ\" (when i run in my console)  \n</script>\n```\n## Webpack\n```\nrequire('persian-date');\n```\n\n## Calendar and locale\n\n### toCalendar\n\ndefault: ```persian```\n\navailable option: ```persian``` ```gregorian```\n\nfrom version 1.0.* ```persianDate``` have an option that allows developers to set calendar type of Date object.\n\nyou can change calendar type globally or only in specific object\n\nif you want change calendar type globally:\n\n\n```javascript\npersianDate.toCalendar('gregorian');\nnew persianDate([2017]).year(); // 2017\nnew persianDate([2017]).format('MMM'); // \"ژانویه\"\n```\n\nor only on instance:\n\n```javascript\nnew persianDate([1396]).toCalendar('gregorian').year(); // 2017\n```\n\n### toLeapYearMode\n\ndefault: ``` algorithmic ```\n\navailable option: ``` algorithmic ```, ``` astronomical ```\n\nThere is two popular way to determining leap years for the Persian calendar. \n\n- astronomical: occur whenever that number of days elapsed between equinoxes at the reference meridian.\n\n- algorithmic: based on Behrooz-Birashk proposed algorithm.\n\nAfter version 1.0.* ```persianDate``` support both algorithms and you can choose which algorithm use in your project. \ncurrently, we have support 2 type of leap year mode ``` algorithmic ```, ``` astronomical ```.\n\nyou can change it globally like this example\n\n```javascript\npersianDate.toLeapYearMode('algorithmic')\n```\n\nor change it in you instance\n\n```javascript\nnew persianDate().toLeapYearMode('algorithmic')\n```\n\n> ```toLeapYearMode``` only work when calendar type is ```persian```, and doesnt any effect on ```gregorian``` calendar\n\n### toLocale\n\ndefault: ```fa```\n\navailable option: ```fa``` ```en```\n\nif you want change locale globally:\n \n```javascript\npersianDate.toLocale('fa');\nnew persianDate([1396,6,17]).format(); // \"۱۳۹۶-۰۶-۱۷ ۰۰:۰۰:۰۰ ق ظ\"\nnew persianDate([1396,6,17]).format('dddd'); // \"جمعه\"\nnew persianDate([1396,6,17]).format('MMMM'); // \"شهریور\"\n\npersianDate.toLocale('en');\nnew persianDate([1396,6,17]).format(); // \"1396-06-17 00:00:00 AM\"\nnew persianDate([1396,6,17]).format('dddd'); // \"Friday\"\nnew persianDate([1396,6,17]).format('MMMM'); // \"Shahrivar\"\n\n```\n\nor only on instance:\n\n\n```javascript\nnew persianDate([1396,6,17]).toLocale('fa').format(); // \"۱۳۹۶-۰۶-۱۷ ۰۰:۰۰:۰۰ ق ظ\"\nnew persianDate([1396,6,17]).toLocale('fa').format('dddd'); // \"جمعه\"\nnew persianDate([1396,6,17]).toLocale('fa').format('MMMM'); // \"شهریور\"\n\npersianDate.toCalendar('gregorian');\nnew persianDate([1396,6,17]).toLocale('en').format(); // \"1397-07-07 00:00:00 AM\"\nnew persianDate([1396,6,17]).toLocale('en').format('dddd'); // \"Friday\"\nnew persianDate([1396,6,17]).toLocale('en').format('MMMM'); // \"June\"\n\n```\n\n> after version 1.0.*, you must use ```toLocale``` instead ```formatPersian```, for show persian or english digit.\n\n## Parse\n\nInstead of modifying the native ``` Date.prototype ``` , persianDate creates a wrapper for the Date object.\nTo get this wrapper object, simply call ``` persianDate() ``` with one of the supported input types.\n\n### Now\n\n```javascript\nnew persianDate();\n```\n\nTo get the current date and time, just call ```persianDate()``` with no parameters.\n\n```javascript\nvar now = new persianDate();\n```\n\nThis is essentially the same as calling ```new persianDate(new Date())``` .\n\n\n### Unix Offset (milliseconds)\n\n```javascript\nnew persianDate(/* Number */);\n```\n\nSimilar to ``` new Date(Number)```, you can create a persianDate by passing an integer value representing the number of milliseconds since the Unix Epoch (Jan 1 1970 12AM UTC).\n\n\n```javascript\nvar day = new persianDate(1318781876406); // \"۱۳۹۰-۰۷-۲۴ ۱۹:۴۷:۵۶ ب ظ\"\n```\n\n### Unix Timestamp (seconds)\n\n```javascript\npersianDate.unix(/* Number */);\n```\n\nTo create a persianDate from a Unix timestamp (seconds since the Unix Epoch), use ```persianDate.unix(Number)```\n\n```javascript\nvar day = new persianDate.unix(1318781876); // \"۱۳۹۰-۰۷-۲۴ ۱۹:۴۷:۵۶ ب ظ\"\n```\n\nThis is implemented as ```persianDate(timestamp * 1000)``` , so partial seconds in the input timestamp are included.\n\n### Date\n\n<!-- skip-example -->\n```javascript\nnew persianDate(new Date());\n```\n\nYou can create a ```persianDate``` with a pre-existing native Javascript ```Date``` object.\n\n<!-- skip-example -->\n```javascript\nvar day = new Date(2011, 9, 16);\nvar dayWrapper = new persianDate(day); // \"۱۳۹۰-۰۷-۲۴ ۰۰:۰۰:۰۰ ق ظ\"\n```\nThis is the fastest way to get a persianDate.js wrapper.\n\n\n### Array\n\n> ['year', 'month', 'day', 'hour', 'minute', 'second', 'millisecond']\n\n```javascript\nnew persianDate([1391, 12, 29, 12, 25, 25, 900]);\n```\n\nYou can create a persianDate with an array of numbers that mirror the parameters passed to new ```Date()``` But As Persian Date Number Like [1393,2,22,11,22,30]\n\n```javascript\nnew persianDate([1393, 1, 14, 15,25, 50,125]); // \"۱۳۹۳-۰۱-۱۴ ۱۵:۲۵:۵۰ ب ظ\"\n```\n\nAny value past the year is optional, and will default to the lowest possible number.\n\n```javascript\nnew persianDate([1392]); // Farvardin 1st\nnew persianDate([1392, 6]); // Shahrivar 1st\nnew persianDate([1392, 6, 10]); // Shahrivar 10th\n```\n\n> Note: from 1.0.* you can pass gregorian date array to create gregorian date object. for this functionality you must change date object calendar type by ```toCalendar('gregorian')```\n\nexample:\n\n```javascript\npersianDate.toCalendar('gregorian');\nnew persianDate([2017,2,2]).format(); // \"۲۰۱۷-۰۲-۰۲ ۰۰:۰۰:۰۰ ق ظ\"\n```\n\n\n### ASP.NET JSON Date\n\n```\nnew persianDate(String);\n```\n\nASP.NET returns dates in JSON as ```/Date(1198908717056)/``` or ```/Date(1198908717056-0700)/```\n\nIf a string that matches this format is passed in, it will be parsed correctly.\n\n```javascript\nnew persianDate(\"/Date(1198908717056-0700)/\"); //\"۱۳۸۶-۱۰-۰۸ ۰۹:۴۱:۵۷ ق ظ\"\n```\n\n\n### PesianDate Clone\n\n```\nnew persianDate(persianDate);\n```\n\nAll persianDate are mutable. If you want a clone of a persianDate, you can do so explicitly or implicitly.\nCalling ```persianDate()``` on a persianDate will clone it.\n\n<!-- skip-example -->\n```javascript\nvar a = new persianDate([1392]);\nvar b = new persianDate(a);\na.year(1300);\nb.year(); // 1392\n```\n\n<!-- skip-example -->\n```javascript\nvar a = new persianDate([1392]);\nvar b = a.clone();\na.year(1300);\nb.year(); // 1392\n```\n\n## Get + Set\n\npersainDate.js uses overloaded getters and setters. You may be familiar with this pattern from it's use in jQuery.\n\nCalling these methods without parameters acts as a getter, and calling them with a parameter acts as a setter.\n\nThese map to the corresponding function on the native ```Date``` object.\n\n```javascript\nnew persianDate().seconds(30).valueOf() === new Date().setSeconds(30); // true\nnew persianDate().seconds() === new Date().getSeconds(); // true\n```\n\n### Millisecond\n\n```javascript\nnew persianDate().millisecond(100);\nnew persianDate().millisecond(); // 100\nnew persianDate().milliseconds(100);\nnew persianDate().milliseconds(); // 100\n```\n\nGets or sets the milliseconds.\n\nAccepts numbers from 0 to 999. If the range is exceeded, it will bubble up to the seconds.\n\n### Second\n\n```javascript\nnew persianDate().second(10);\nnew persianDate().second(); // 10\nnew persianDate().seconds(10);\nnew persianDate().seconds(); // 10\n```\n\nGets or sets the seconds.\n\nAccepts numbers from 0 to 59. If the range is exceeded, it will bubble up to the minutes.\n\n### Minute\n\n```javascript\nnew persianDate().minute(20);\nnew persianDate().minute(); // 20\nnew persianDate().minutes(20);\nnew persianDate().minutes(); // 20\n```\n\nGets or sets the minutes.\n\nAccepts numbers from 0 to 59. If the range is exceeded, it will bubble up to the hours.\n\n### Hour\n\n```javascript\nnew persianDate().hour(12);\nnew persianDate().hour(); // 12\nnew persianDate().hours(12);\nnew persianDate().hours(); // 12\n```\n\nGets or sets the hour.\n\nAccepts numbers from 0 to 23. If the range is exceeded, it will bubble up to the day.\n\n### Date of Month\n\n```javascript\nnew persianDate().date(23);\nnew persianDate().date(); // 23\nnew persianDate().dates(23);\nnew persianDate().dates(); // 23\n```\n\nGets or sets the day of the month.\n\nAccepts numbers from 1 to 31. If the range is exceeded, it will bubble up to the months.\n\n> Note: persianDate#date is for the date of the month, and persianDate#day is for the day of the week.\n\n### Year\n\n```javascript\nnew persianDate().year(1390);\nnew persianDate().year(); // 1390\nnew persianDate().years(1390);\nnew persianDate().years(); // 1390\n```\n\nGets or sets the year.\n\nAccepts numbers from -270,000 to 270,000.\n\n### Day of Week\n\n```javascript\nnew persianDate().day(); // Number\nnew persianDate().days(); // Number\n```\n\nGets the day of the week.\n\n> Note: ```persianDate#date``` is for the date of the month, and ```persianDate#day``` is for the day of the week.\n\n\n## Manipulate\n\nOnce you have a PersianDate , you may want to manipulate it in some way. There are a number of methods to help with this.\n\npersianDate.js uses the [fluent interface pattern](http://en.wikipedia.org/wiki/Fluent_interface),\n also known as [method chaining](https://en.wikipedia.org/wiki/Method_chaining). This allows you to do crazy things like the following.\n\n```javascript\nnew persianDate().add('days', 7).subtract('months', 1).year(2009).hours(0).minutes(0).seconds(0);\n```\n\n> Note: It should be noted that persianDates are mutable. Calling any of the manipulation methods will change the original persianDate.\n\nIf you want to create a copy and manipulate it, you should use ```persianDate#clone``` before manipulating the persianDate.\n\n\n### Add\n\n<!-- skip-example -->\n```javascript\nnew persianDate().add(String, Number);\n```\n\nMutates the original persianDate by adding time.\n\nThis is a pretty robust function for adding time to an existing persianDate. To add time, pass the key of what time you want to add, and the amount you want to add.\n\n```javascript\nnew persianDate().add('days', 7);\n```\n\nThere are some shorthand keys as well if you're into that whole brevity thing.\n\n```javascript\nnew persianDate().add('d', 7);\n```\n\n| Key\t        | Alternate\t    | Shorthand |\n| ------------- |:-------------:|:-:|\n| years\t        | year\t        | y |\n| months\t    | month\t        | M |\n| weeks\t        | week\t        | w |\n| days\t        | day\t        | d |\n| hours\t        | hour\t        | h |\n| minutes\t    | minute\t    | m |\n| seconds   \t| second\t    | s |\n| milliseconds\t| millisecond\t| ms|\n\nIf you want to add multiple different keys at the same time, you can pass them in as an object literal.\n\n```javascript\nnew persianDate().add('days', 7).add('months', 1); // with chaining\n```\n\nThere are no upper limits for the amounts, so you can overload any of the parameters.\n\n```javascript\nnew persianDate().add('milliseconds', 1000000); // a million milliseconds\nnew persianDate().add('days', 360); // 360 days\n```\n\n### Subtract\n\n<!-- skip-example -->\n```javascript\nnew persianDate().subtract(String, Number);\n```\n\nMutates the original persianDate by subtracting time.\n\nThis is exactly the same as ```persianDate#add``` , only instead of adding time, it subtracts time.\n\n```javascript\nnew persianDate().subtract('days', 7);\n```\n\n### Start of Time\n\n<!-- skip-example -->\n```javascript\nnew persianDate().startOf(String);\n```\n\nMutates the original persianDate by setting it to the start of a unit of time.\n\n```javascript\nnew persianDate().startOf('year');   // set to Farvardin 1st, 12:00 am this year\nnew persianDate().startOf('month');  // set to the first of this month, 12:00 am\nnew persianDate().startOf('week');   // set to the first day of this week, 12:00 am\nnew persianDate().startOf('day');    // set to 12:00 am today\nnew persianDate().startOf('hour');   // set to now, but with 0 mins, 0 secs, and 0 ms\nnew persianDate().startOf('minute'); // set to now, but with 0 seconds and 0 milliseconds\nnew persianDate().startOf('second'); // same as persianDate().milliseconds(0);\n```\n\nThese shortcuts are essentially the same as the following.\n\n```javascript\nnew persianDate().startOf('year');\nnew persianDate().month(1).date(1).hours(0).minutes(0).seconds(0).milliseconds(0);\n```\n\n```javascript\nnew persianDate().startOf('hour');\nnew persianDate().minutes(0).seconds(0).milliseconds(0)\n```\n\n### End of Time\n\n```javascript\nnew persianDate().endOf(String);\n```\n\nMutates the original persianDate by setting it to the end of a unit of time.\n\nThis is the same as ```persianDate#startOf``` , only instead of setting to the start of a unit of time, it sets to the end of a unit of time.\n\n```javascript\nnew persianDate().endOf(\"year\"); // set the persianDate to 12-31 11:59:59.999 pm this year\n```\n\n## Display\n\nOnce parsing and manipulation are done, you need some way to display the persianDate.\n\n\n### Format\n\n```javascript\nnew persianDate().format();\nnew persianDate().format('string');\n```\n\nThis is the most robust display option. It takes a string of tokens and replaces them with their corresponding values.\n\n```javascript\nnew persianDate().format(\"dddd, MMMM DD YYYY, h:mm:ss a\"); // \"شنبه, فروردین ۱۲ ۱۳۹۶, ۵:۵۴:۱۱ ب ظ\"\nnew persianDate().format(\"dddd, ha\"); // \"شنبه, ۵ب ظ\"\n```\n\nThis is the most robust display option. It takes a string of tokens and replaces them with their corresponding values.\n\n\n| Type\t            | Tocken\t    | Output |\n| -------------     |:-------------:|:------:|\n| Month             | M\t            | ۱ ۲ ... ۱۱ ۱۲|\n|        \t        | MM\t        | ۰۱ ۰۲ ... ۱۱ ۱۲|\n|        \t        | MMM\t        | فرو ارد ... اسف|\n|                   | MMMM\t        | فروردین اردیبهشت ... اسفند |\n| Day of month      | D            | ۱ ۲ ... ۳۰ ۳۱|\n|                   | DD           | ۰۱ ۰۲ ... ۳۰ ۳۱|\n| Day of year       | DDD          | ۱ ۲ ... ۳۶۴ ۳۶۵|\n|                   | d            | ۰ ۱ ... ۵ ۶|\n|                   | dd            | ش ی ... ج|\n|                   | ddd       |شنبه یکشنبه ... جمعه|\n|                   | dddd    |انارام مانتره سپند ... اشتاد |\n| Week of Year      | w            | ۱ ۲ ... ۵۲ ۵۳ |\n|                   | ww           | ۰۱ ۰۲ ... ۵۲ ۵۳ |\n|Year               | YY           | ۶۶ ۹۱ ... ۹۸ ۳۰ |\n|                   | YYYY          | ۱۳۶۶ ۱۳۹۱ ... ۱۳۹۸ ۱۴۰۱ |\n| AM/PM              | a            | \"ق ظ\", \"ب ظ\" |\n| Hour              | H            | ۰ ۱ ... ۲۲ ۲۳ |\n|                   | HH           | ۰۰ ۰۱ ... ۲۲ ۲۳ |\n|                   | h            | ۱ ۲ ... ۱۱ ۱۲ |\n|                   | hh           | ۰۱ ۰۲ ... ۱۱ ۱۲ |\n| Minute            | m            | ۰ ۱ ... ۵۸ ۵۹ |\n|                   | mm           | ۰۰ ۰۱ ... ۵۸ ۵۹ |\n| Second            | s            | ۰ ۱ ... ۵۸ ۵۹ |\n|                   | ss           | ۰۰ ۰۱ ... ۵۸ ۵۹ |\n| Unix Timestamp     | X            | 1360013296 |\n| Timezone          | Z            | -۰۴:۳۰ -۰۵:۰۰ ... +۰۴:۳۰ +۰۵:۰۰ |\n|                   | ZZ           | -۰۴۳۰ -۰۵:۰۰ ... +۰۴:۳۰ +۰۵:۰۰ |\n\n\n### Long Date formats\n\n| Type\t                                            | Tocken\t    | Output |\n| -------------                                     |:-------------:|:------:|\n| Time                                              | LT            | \"۴:۱۵ ب ظ\"|\n| Month numeral, day of month, year                 | L             | ۱۳۹۲/۰۲/۲۰ |\n|                                                   | l             | ۳۹۲/۲/۲۰ |\n| Month name, day of month, year                    | LL            | اردیبهشت ۲۰ ۱۳۹۲|\n|                                                   | ll            | ارد ۲۰ ۱۳۹۲|\n| Month name, day of month, year, time              | LLL           | اردیبهشت ۱۳۹۲ ۲۰ ۴:۲۳ ب ظ|\n|                                                   | lll           | ارد ۱۳۹۲ ۲۰ ۴:۲۳ ب ظ|\n| Month name, day of month, day of week, year, time | LLLL          | جمعه ۲۰ اردیبهشت ۱۳۹۲ ۴:۲۵ ب ظ |\n|                                                   | llll          | ج ۲۰ ارد ۱۳۹۲ ۴:۲۷ ب ظ |\n\n\n### Default format\n\nISO8601 format ```YYYY-MM-DDTHH:mm:ssZ```\n\"۱۳۹۱-۱۰-۰۴ ۱۱:۲۷:۵۳ ق ظ\"\n\n\n### Format To Persian digit\n\n> Deprecated as 1.0.* instead use [toLocale](#tolocale)\n\nBy Default persianDate format, use Persian Number System, for engilsh number Set formatPersian Option as false\n\n<!-- skip-example -->\n```javascript\nvar d = new persianDate([1391]);\nd.format(); //\"۱۳۹۱-۰۱-۰۱ ۰۰:۰۰:۰۰ ق ظ\"\nwindow.formatPersian = false;\nd.format(); //\"1391-01-01 00:00:00 AM\"\n```\n\nAlso you can set golbal config like this\n\n<!-- skip-example -->\n```javascript\nwindow.formatPersian  = false;\n```\n\n> Note: After Set Global config you can set config for every instance\n\n<!-- skip-example -->\n```javascript\nvar d = new persianDate([1391]);\nd.format(); //\"۱۳۹۱-۰۱-۰۱ ۰۰:۰۰:۰۰ ق ظ\"\nwindow.formatPersian = false;\nd.format(); //\"1391-01-01 00:00:00 AM\"\nd.formatPersian = true;\nd.format(); //\"۱۳۹۱-۰۱-۰۱ ۰۰:۰۰:۰۰ ق ظ\"\n```\n\t\t\t\n### Difference\n\n```\nnew persianDate().diff(PersianDate|String|Boolean);\n```\n\nAccept 3 argument, (ccmparable persianDate object, difference key, boolean value that make returned output float)\n\nTo get the difference in milliseconds, use ```persianDate#diff```.\n\n```javascript\nvar a = new persianDate([1392, 1, 29]);\nvar b = new persianDate([1392, 1, 28]);\na.diff(b) // 86400000\n```\n\nTo get the difference in another unit of measurement, pass that measurement as the second argument.\n\n```javascript\nvar a = new persianDate([1392, 1, 29]);\nvar b = new persianDate([1392,1, 28]);\na.diff(b, 'days'); // 1\n```\n\nThe supported measurements are years, months, weeks, days, hours, minutes, and seconds. For ease of development, the singular forms are supported .\n\n```javascript\nvar a = new persianDate([1391, 1]);\nvar b = new persianDate([1392, 5]);\na.diff(b, 'years');\na.diff(b, 'years', true);\n```\n\n\nIf the persianDate is later than the persianDate you are passing to ```persianDate.fn.diff``` , the return value will be negative.\n\n```javascript\nvar a = new persianDate();\nvar b = new persianDate().add('seconds', 1);\na.diff(b); // -1000\nb.diff(a); // 1000\n```\n\nA easy way to think of this is by replacing ```.diff(``` with a minus operator.\n\n<!-- skip-example -->\n```javascript\na.diff(b);\nb.diff(a);\n```\n\n### Unix Offset (milliseconds)\n\n```javascript\nnew persianDate().valueOf();\n```\n\n```persianDate#valueOf``` simply outputs the number of milliseconds since the Unix Epoch, just like ```Date#valueOf``` .\n\n```javascript\nnew persianDate(1318874398806).valueOf(); // 1318874398806\nnew persianDate(1318874398806).format(); // \"۱۳۹۰-۰۷-۲۵ ۲۱:۲۹:۵۸ ب ظ\"\n```\n\nTo get a Unix timestamp (the number of seconds since the epoch) from a ```persianDate``` , use ```persianDate#unix``` .\n\n### Unix Timestamp (seconds)\n\n```javascript\nnew persianDate().unix();\n```\n\n```persianDate#unix``` outputs a Unix timestamp (the of seconds since the Unix Epoch).\n\n```javascript\nnew persianDate(1318874398806).unix(); // 1318874398\n```\n\nThis value is floored to the nearest second, and does not include a milliseconds component.\n\n### Timezone Offset\n\n```javascript\nnew persianDate().zone();\n```\n\nGet the timezone offset in minutes.\n\n```javascript\nnew persianDate().zone(); // (60, 120, 240, -270, etc.)\n```\n\n### Days in Month\n\n```javascript\nnew persianDate().daysInMonth();\n```\n\nGet the number of days in the current month.\n\n```javascript\nnew persianDate([1392,1]).daysInMonth(); // 31\nnew persianDate([1392,8]).daysInMonth(); // 30\nnew persianDate([1392,12]).daysInMonth(); // 29\nnew persianDate([1391,12]).daysInMonth(); // 30\n```\n\n### As Javascript Date\n\n```javascript\nnew persianDate().toDate();\n```\n\nTo get the native ```Date``` object that ```persianDate.js``` wraps, use ```persianDate#toDate``` .\n\nThis will return the ```Date``` that the ```persianDate``` uses.\n\n### As Array\n\n```javascript\nnew persianDate().toArray();\n```\n\nThis returns an array that mirrors the parameters from new ```persianDate()``` .\n\n```javascript\nnew persianDate().toArray(); // [1391, 1, 4, 14, 40, 16, 154];\n```\n\n### Range Name\n\nHelper method that return date range name like week days name, month names, month days names (specially in persian calendar).\n\n```javascript\n\npersianDate.toLocale('fa').toCalendar('persian');\n\npersianDate.rangeName().weekdays;\n// [\"شنبه\", \"یکشنبه\", \"دوشنبه\", \"سه شنبه\", \"چهار شنبه\", \"پنج‌شنبه\", \"جمعه\"]\n\npersianDate.rangeName().weekdaysMin;\n// [\"ش\", \"ی\", \"د\", \"س\", \"چ\", \"پ\", \"ج\"]\n\npersianDate.rangeName().months;\n// [\"فروردین\", \"اردیبهشت\", \"خرداد\", \"تیر\", \"مرداد\", \"شهریور\", \"مهر\", \"آبان\", \"آذر\", \"دی\", \"بهمن\", \"اسفند\"]\n\npersianDate.rangeName().monthsShort; \n// [\"فرو\", \"ارد\", \"خرد\", \"تیر\", \"مرد\", \"شهر\", \"مهر\", \"آبا\", \"آذر\", \"دی\", \"بهم\", \"اسف\"]\n\npersianDate.rangeName().persianDaysName[0]; \n// \"اورمزد\"\n\n```\n\n> [Persian month day name wiki](https://fa.wikipedia.org/wiki/%D9%81%D9%87%D8%B1%D8%B3%D8%AA_%D9%86%D8%A7%D9%85_%D8%B1%D9%88%D8%B2%D9%87%D8%A7%DB%8C_%D9%85%D8%A7%D9%87)\n\nAlso You can get Gregorian calendar range names\n\n```javascript\npersianDate.toCalendar('gregorian').rangeName().months;\n// [\"ژانویه\", \"فوریه\", \"مارس\", \"آوریل\", \"مه\", \"ژوئن\", \"ژوئیه\", \"اوت\", \"سپتامبر\", \"اکتبر\", \"نوامبر\", \"دسامبر\"]\n\npersianDate.toCalendar('gregorian').toLocale('en').rangeName().months;\n// [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"]\n\n\npersianDate.toCalendar('gregorian').toLocale('en').rangeName().weekDayes;\n// ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']\n\npersianDate.toCalendar('gregorian').toLocale('en').rangeName().weekDayesShort;\n// ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']\n\npersianDate.toCalendar('gregorian').toLocale('en').rangeName().weekDayesMin;\n// ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa']\n\n```\n\n## Query\n\n### Is Leap Year\n\n```javascript\nnew persianDate().isLeapYear();\n```\n\n```persianDate#isLeapYear``` returns true if that year is a leap year, and ```false``` if it is not. base on object calendarType.\n\n```javascript\nnew persianDate([1391]).isLeapYear(); // true\nnew persianDate([1392]).isLeapYear(); // false\nnew persianDate([1393]).isLeapYear(); // false\nnew persianDate([1394]).isLeapYear(); // false\nnew persianDate([1395]).isLeapYear(); // true\nnew persianDate([1396]).isLeapYear(); // false\n```\n\n### Is Daylight Saving Time\n\n```javascript\nnew persianDate().isDST();\n```\n\n```persianDate#isDST``` checks if the current persianDate is in daylight savings time.\n\n```javascript\nnew persianDate([1396, 1, 1]).isDST(); // false\nnew persianDate([1396, 1, 2]).isDST(); // true\nnew persianDate([1396, 6, 30]).isDST(); // true\nnew persianDate([1396, 6, 31]).isDST(); // false\n```\n\n> Based on [Persian DST wiki](https://fa.wikipedia.org/wiki/%D8%B3%D8%A7%D8%B9%D8%AA_%D8%AA%D8%A7%D8%A8%D8%B3%D8%AA%D8%A7%D9%86%DB%8C)\n\n### Is a PersianDat\n\n```javascript\nvar obj = new persianDate();\n\n// options 1\nnew persianDate().isPersianDate(obj); // true\n\n//option 2\npersianDate.isPersianDate(obj);\n\n```\n\nTo check if a variable is a persianDate object, use ```persianDate().isPersianDate()``` .\n\n```javascript\nnew persianDate().isPersianDate(); // false\nnew persianDate().isPersianDate(new Date()); // false\nnew persianDate().isPersianDate(new persianDate()); // true\n```\n\n### Is Same Month\n\nCheck date object with given date object month similarity\n\n\n```javascript\n// options 1\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1396,1,12]);\nb.isSameMonth(a); // true\n\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1397,1,12]);\nb.isSameMonth(a); // false\n\n// options 2\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1396,1,12]);\npersianDate.isSameMonth(a,b); // true\n\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1397,1,12]);\npersianDate.isSameMonth(a,b); // false\n```\n\n### Is Same Day\n\nCheck date object with given date object day similarity\n\n\n```javascript\n// options 1\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1396,1,1]);\nb.isSameDay(a); // true\n\nvar a = new persianDate([1396,1,1]);\nvar b = new persianDate([1396,2,1]);\nb.isSameDay(a); // false\n\n// options 2\nvar a = new persianDate([1396,1,12]);\nvar b = new persianDate([1396,1,12]);\npersianDate.isSameDay(a,b); // true\n\nvar a = new persianDate([1396,1,12]);\nvar b = new persianDate([1397,1,12]);\npersianDate.isSameDay(a,b); // false\n```\n\n\n\n## license\nFreely distributable under the terms of the [MIT](https://opensource.org/licenses/MIT) license. \n\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@1.1.0-rc2","_npmVersion":"6.4.1","_nodeVersion":"10.15.1","_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"dist":{"integrity":"sha512-qWkCzNn01wsNFJUcMOgatK8WJ2w+wLZXIFGvP2GYwN9nJ713NehDW02J2+yNPMmHqZRGUIG56MABqWw4MQKS6A==","shasum":"5fe9effe6312abd94ba30e3f4457167715a7d9d4","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-1.1.0-rc2.tgz","fileCount":33,"unpackedSize":690640,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc0WU0CRA9TVsSAnZWagAAWE4P/0e1oUWSs4Zy1e/+xBFy\n29DaEltOjrV9DPmEohTKkA7fNGtXP0ncqg9L5rpu9xj4Ep2uask5Y4TykUTn\n2oNM9rjap+P4SWzWTUeGkntVcjjvaZTcscUGzVIHnEoTMmYYundP8156PjcP\nuIxW3Y5SWkpUz7H16sUO90xr30DV5rSLFVwjMDJqVxvv74WUhH4wu6KhQFLO\ndgPSOh/eiQi3oWX4WLS72VDYvUjqIkovHYaxbRKlcZ45X+Oqc3VQ/ndzFZ9B\nmUXndQ9c3BMuUJA+2Sd0f+WAb08nLXQWBavcXEsiE0eLHwo6Zo/zJVvXtaa4\ngwjNMYtLPsTuR/hd8pdqdIaO/J5XpJwuhCKRVX2vw9JloS76c2p0IT9eFC+U\n57Nol/hmK9PH8L80nra2wUTnnDmPnRM93Q6rg0QMwL+8Mir7Upk6Onm7BRLA\nZzJ5i8TGV9oYt9MXJ+GBbK8kQucw0eaUSVTfhBeVC51QKxrH7Clo5AVtPebW\nuFn3jBjtJZseg5dfnb/UG2tRcHP/gvmXMZWbow1ef9y2hjcQFKtkxXZdsy7S\nz9+8w4eeu8qY/Rn51+WJD4M/M7+G7NhmpLH2ZIGCvyRJeZqkv9mCWPmwe+NA\nqoxh50ZVsdrOll2RubdkpxgSUos0nULHZ5e4xMhKfu5vFQw4ygrt1BGdLbxU\nfDhM\r\n=6nDF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA+7MiEsyevmZ5JrcUa00MXyLvRp99JTcYLzu4KjQc0SAiBCeQa3t3s7txfXMzdzS3urJu+Z9PJFfyjFfdG0oJSviw=="}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date_1.1.0-rc2_1557226803902_0.42273802866505106"},"_hasShrinkwrap":false},"1.1.0":{"name":"persian-date","version":"1.1.0","license":"MIT","main":"dist/persian-date","author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"description":"Javascript date library for parsing, validating, manipulating, and formatting persian dates System.","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","devDependencies":{"amd-loader":"0.0.8","babel-cli":"6.0.0","babel-core":"6.22.1","babel-loader":"6.4.1","babel-plugin-import":"1.1.1","babel-plugin-transform-runtime":"6.22.0","babel-polyfill":"6.22.0","babel-preset-es2015":"6.24.0","babel-preset-latest":"6.24.0","babel-runtime":"6.22.0","chai":"3.5.0","coveralls":"2.13.1","grunt":"1.0.1","grunt-babel":"6.0.0","grunt-cli":"0.1.13","grunt-contrib-watch":"1.0.0","grunt-jsdoc-to-markdown":"3.0.0","grunt-webpack":"2.0.1","grunt-webpack-server":"0.1.0","istanbul":"0.4.5","jsdoc":"3.2.0","jshint":"2.9.4","load-grunt-tasks":"3.5.2","markdown-doctest":"0.9.1","markdown-link-check":"3.1.2","mocha":"3.2.0","mocha-lcov-reporter":"0.0.2","moment":"2.18.1","pre-commit":"1.2.2","sync-pkg":"0.7.2","unminified-webpack-plugin":"1.2.0","webpack-dev-server":"2.3.0","eslint":"4.4.1","jalaali-js":"1.0.0","webpack":"2.3.3"},"scripts":{"start":"webpack --watch & webpack-dev-server --port 5000 --watch --hot","dev":"webpack","build":" webpack; MIN=1 webpack; npm run test; npm run lint; npm run doc;","test":"nyc --reporter=html --reporter=text mocha --timeout 25000","coverage":"nyc report --reporter=text-lcov | coveralls","lint":"./node_modules/jshint/bin/jshint src/*.js; ./node_modules/eslint/bin/eslint.js src/","doc":"grunt --doc","doctest":"./node_modules/markdown-doctest/bin/cmd.js README.md && ./node_modules/markdown-link-check/markdown-link-check README.md && ./node_modules/markdown-doctest/bin/cmd.js doc/leapyear.md && ./node_modules/markdown-link-check/markdown-link-check doc/leapyear.md","sync-pkg":"sync-pkg","pre-dev":"sudo npm install -g nyc"},"pre-commit":["test","lint","doctest"],"gitHead":"f264629d3fcf74369c8e0d7f2f62f21c32b2aae1","bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"_id":"persian-date@1.1.0","_nodeVersion":"11.10.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-YwV3703jLTTJFFQfP3RvMfvKZc5Z1yE++Deywox+hkVLuVN81VsTaZFma9k5P9SgfSUvXjiylbQVuf4YYLGOow==","shasum":"a06155797bca20217fa8302101ea5efd041a3221","tarball":"https://registry.npmjs.org/persian-date/-/persian-date-1.1.0.tgz","fileCount":33,"unpackedSize":690616,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdIfnVCRA9TVsSAnZWagAAJ/sP/RcAEimdegRAzAZ0aoYF\njc6KTLOhcle41P3lU6ZRkOh9hjF96MIQQKykV7dkHhvJu4WoIeljxu8aPI19\nEuElqQI/WP0eYe3XnzUiIiTa1icAD6PnQgvW0FL85afeyopcAgnt0ktjH5pA\n7m3PFdhNSyG130tXWr5wAoMyVX3O5oo83oNte7m2ICIF2vJp9x9N9+nKfq/c\n8mynh+0gcrHqq6LvoCMp4wtOzy8rpyE4YtZI3eARpvvnxV/AsjwG6rwU3hvd\naCMG6qzpJW7V4wXOAzfFu3x5w4dq+VhZea27RN0hKX2ByECEjPrWKT/3XS36\nf6Gu4WCLX51iSVfbHqrel6QT9keCezPxVSLqRnl1m3tj6Flsnbe6w503eh62\n9Rtl2wHmAkYsCpz9pXlJM4qVVuWcbM5MyumU2RSPpeiETEc00nmuXJOs1jfE\ngJr/7XaYT+Gkm7/uBejdoWeK9mMs0LVWuIhtjL9OtFsOkYjFAn5oLaBo9WbB\namWvQY7ZSDXNt5zfX3Y+wOjHcPI/tdlVsLZGbNWsTJNZgnHvIFcbdbqfVDlD\ncOuqrXkj7fjYljRleQG/JmgFGghtkyTY9zHqnitazmcCbZrwIiJtu17TzCAu\nL6lb26rTI4BbvLrTj9x5ccfRvfQRdBAf/Oyp4CZSmM+WGUklp97hTsOqHFul\nbJw6\r\n=cPSZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDNS8q1tuxCAi4gHUQkv2o/I7SXbfpEB0oJYREQK8RraAIhALhcHrhhQaLztINJcHLojba09tVni1Rn/mad7tUCukdj"}]},"maintainers":[{"name":"rbabakhani","email":"babakhani.reza@gmail.com"}],"_npmUser":{"name":"rbabakhani","email":"babakhani.reza@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persian-date_1.1.0_1562507732094_0.06052483036512357"},"_hasShrinkwrap":false}},"readmeFilename":"README.md","homepage":"http://babakhani.github.io/PersianWebToolkit/docs/persian-date/","keywords":["jalali-date","khayyam","date","calendar","persian-date"],"repository":{"type":"git","url":"git+ssh://git@github.com/babakhani/PersianDate.git"},"contributors":[{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"}],"author":{"name":"Reza Babakhani","email":"babakhani.reza@gmail.com"},"bugs":{"url":"https://github.com/babakhani/PersianDate/issues"},"license":"MIT"}