Package Exports
- horoscope
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (horoscope) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
♈️ ♉️ ♊️ ♋️ ♌️ ♍️ ♎️ ♏️ ♐️ ♑️ ♒️ ♓️
Horoscope.js is a compact, performant NPM module for processing horoscope & zodiac signs from dates. Weighing in @ 5kb, it's only dependency is the memoize function in lodash.
installation
$ npm install horoscope
// then
var getSign = require('horoscope').getSign;
var getZodiac = require('horoscope').getZodiac;
// or
import { getSign, getZodiac } from 'horoscope';getSign
return astrological sign from {month, day}
console.log(horoscope.getSign({month: 7, day: 25 }))
// 'Leo'
console.log(horoscope.getSign({month: 12, day: 21}))
// 'Sagittarius'getZodiac
return zodiac sign from year
console.log(horoscope.getZodiac(2015))
// 'Goat'
console.log(horoscope.getZodiac(2016))
// 'Monkey'overrideErrors
the last argument of both functions, overrideErrors, is optional (defaulting to false). if set to true, horoscope methods will not throw error messages, but return null.
console.log(horoscope.getSign(-7, 55))
// 'Horoscope.js/getSign(): month should be numbers 1-12 and days should be numbers between 1-31'
console.log(horoscope.getSign(-7, 55, true))
// null
console.log(horoscope.getZodiac('twenty-twenty'))
// 'Horoscope.js/getZodiac(): Year provided isn't valid'
console.log(horoscope.getZodiac('twenty-twenty', true))
// nullexample:
simple demo using webpack, the result of which is located @ here
limitations:
- getZodiac: returns errors/null if negative or more than 4 digits
- getHoroscope: leap year of feb. 29th is available for every year - don't assume a null/error will be thrown.
- because both functions are memoized, you will not be able to alternate between true/false for overrideErrors.
