UNPKG

vedic-astrology

Version:

Astrology Library to get Birth Chart and Navamsa Chart. Compatibility retrieval using the same.

394 lines (370 loc) 6.37 kB
const swisseph = require("swisseph-v2"); var pathToSwisseph = require.resolve("swisseph-v2/package.json").split("/"); pathToSwisseph.pop(); swisseph.swe_set_ephe_path(pathToSwisseph.join("/") + "/ephe"); module.exports.FLAG = swisseph.SEFLG_SPEED | swisseph.SEFLG_MOSEPH; module.exports.DICT = { sun: swisseph.SE_SUN, moon: swisseph.SE_MOON, mean_node: swisseph.SE_MEAN_NODE, true_node: swisseph.SE_TRUE_NODE, mean_apog: swisseph.SE_MEAN_APOG, oscu_apog: swisseph.SE_OSCU_APOG, chiron: swisseph.SE_CHIRON, }; module.exports.RASHIS = { Ar: "aries", Ta: "taurus", Ge: "gemini", Cn: "cancer", Le: "leo", Vi: "virgo", Li: "libra", Sc: "scorpio", Sg: "sagittarius", Cp: "capricorn", Aq: "aquarius", Pi: "pisces", }; const RASHI_REVERSE_MAP = { 0: "Ar", 1: "Ta", 2: "Ge", 3: "Cn", 4: "Le", 5: "Vi", 6: "Li", 7: "Sc", 8: "Sg", 9: "Cp", 10: "Aq", 11: "Pi", }; const RASHI_MAP = { Ar: 0, Ta: 1, Ge: 2, Cn: 3, Le: 4, Vi: 5, Li: 6, Sc: 7, Sg: 8, Cp: 9, Aq: 10, Pi: 11, }; module.exports.RASHI_MAP = RASHI_MAP; const RASHI_ARRAY = [ "Ar", "Ta", "Ge", "Cn", "Le", "Vi", "Li", "Sc", "Sg", "Cp", "Aq", "Pi", ]; module.exports.RASHI_ARRAY = RASHI_ARRAY; module.exports.NAVAMSHA_GROUPS = { aries: "aries", taurus: "capricorn", gemini: "libra", cancer: "cancer", leo: "aries", virgo: "capricorn", libra: "libra", scorpio: "cancer", sagittarius: "aries", capricorn: "capricorn", aquarius: "libra", pisces: "cancer", }; module.exports.REVERSE_RASHIS = { aries: "Ar", taurus: "Ta", gemini: "Ge", cancer: "Cn", leo: "Le", virgo: "Vi", libra: "Li", scorpio: "Sc", sagittarius: "Sg", capricorn: "Cp", aquarius: "Aq", pisces: "Pi", }; /** * * @param {String} rashi Rashi name * @param {Number} num positive number to add to the rashi */ module.exports.rashi_calc = (rashi, num) => { return RASHI_ARRAY[(RASHI_MAP[rashi] + num) % RASHI_ARRAY.length]; }; module.exports.RASHI_LORDS = { aries: "Ma", taurus: "Ve", gemini: "Me", cancer: "Mo", leo: "Su", virgo: "Me", libra: "Ve", scorpio: "Ma", sagittarius: "Ju", capricorn: "Sa", aquarius: "Sa", pisces: "Ju", }; module.exports.PLANET_RELATIONS = { Su: { friends: ["Su", "Mo", "Ma", "Ju"], neutral: ["Me"], enemies: ["Ve", "Sa"], }, Mo: { friends: ["Mo", "Sun", "Me"], neutral: ["Ma", "Ju", "Ve", "Sa"], enemies: [], }, Ma: { friends: ["Ma", "Su", "Mo", "Ju"], neutral: ["Ve", "Sa"], enemies: ["Me"], }, Me: { friends: ["Me", "Su", "Ve"], neutral: ["Ma", "Ju", "Sa"], enemies: ["Mo"], }, Ju: { friends: ["Ju", "Su", "Mo", "Ma"], neutral: ["Sa"], enemies: ["Me", "Ve"], }, Ve: { friends: ["Ve", "Me", "Sa"], neutral: ["Ma", "Ju"], enemies: ["Su", "Mo"], }, Sa: { friends: ["Sa", "Me", "Ve"], neutral: ["Ju"], enemies: ["Su", "Mo", "Ma"], }, }; module.exports.NAKSHATRA_ANIMALS = { Ashwini: "Horse", Bharani: "Elephant", Krittika: "Sheep", Rohini: "Serpent", Mrigashira: "Serpent", Ardra: "Dog", Punarvasu: "Cat", Pushya: "Sheep", Ashlesha: "Cat", Magha: "Rat", "Purva Phalguni": "Rat", "Uttara Phalguni": "Cow", Hasta: "Buffalo", Chitra: "Tiger", Swati: "Buffalo", Vishakha: "Tiger", Anuradha: "Hare", Jyestha: "Hare", Mula: "Dog", "Purva Aashada": "Monkey", "Uttara Aashada": "Mongoose", Shravana: "Monkey", Dhanishta: "Lion", Shatabhisha: "Horse", "Purva Bhadrapada": "Lion", "Uttara Bhadrapada": "Cow", Revati: "Elephant", }; module.exports.NAKSHATRA_ANIMAL_SCORE = { Horse: { Horse: 4, }, Elephant: { Horse: 2, Elephant: 4, }, Sheep: { Horse: 2, Elephant: 3, Sheep: 4, }, Serpent: { Horse: 3, Elephant: 3, Sheep: 2, Serpent: 4, }, Dog: { Horse: 2, Elephant: 2, Sheep: 1, Serpent: 2, Dog: 4, }, Cat: { Horse: 2, Elephant: 2, Sheep: 2, Serpent: 1, Dog: 2, Cat: 4, }, Rat: { Horse: 2, Elephant: 2, Sheep: 1, Serpent: 1, Dog: 1, Cat: 0, Rat: 4, }, Cow: { Horse: 1, Elephant: 2, Sheep: 3, Serpent: 1, Dog: 2, Cat: 2, Rat: 2, Cow: 4, }, Buffalo: { Horse: 0, Elephant: 3, Sheep: 3, Serpent: 1, Dog: 2, Cat: 2, Rat: 2, Cow: 3, Buffalo: 4, }, Tiger: { Horse: 1, Elephant: 1, Sheep: 1, Serpent: 2, Dog: 1, Cat: 1, Rat: 2, Cow: 0, Buffalo: 1, Tiger: 4, }, Hare: { Horse: 1, Elephant: 2, Sheep: 2, Serpent: 2, Dog: 0, Cat: 3, Rat: 2, Cow: 3, Buffalo: 2, Tiger: 1, Hare: 4, }, Monkey: { Horse: 3, Elephant: 3, Sheep: 0, Serpent: 2, Dog: 2, Cat: 3, Rat: 2, Cow: 2, Buffalo: 2, Tiger: 1, Hare: 2, Monkey: 4, }, Mongoose: { Horse: 2, Elephant: 2, Sheep: 3, Serpent: 0, Dog: 1, Cat: 2, Rat: 1, Cow: 2, Buffalo: 2, Tiger: 2, Hare: 2, Monkey: 3, Mongoose: 4, }, Lion: { Horse: 1, Elephant: 0, Sheep: 1, Serpent: 2, Dog: 1, Cat: 1, Rat: 2, Cow: 1, Buffalo: 2, Tiger: 1, Hare: 1, Monkey: 2, Mongoose: 2, Lion: 4, }, }; module.exports.DEFAULT_THRESHOLD = 0.4; module.exports.GOOD_HOUSES = [1, 2, 3, 4, 5, 7, 9, 10, 11]; module.exports.BAD_HOUSES = [6, 8, 12]; module.exports.OPPOSITE_SIGNS = { aries: "libra", taurus: "scorpio", gemini: "sagittarius", cancer: "capricorn", leo: "aquarius", virgo: "pisces", libra: "aries", scorpio: "taurus", sagittarius: "gemini", capricorn: "cancer", aquarius: "leo", pisces: "virgo", }; module.exports.GOOD_CONNECTION_TYPES = [1, 3, 5, 7, 9, 11]; module.exports.BAD_CONNECTION_TYPES = [2, 4, 6, 8, 10, 12]; module.exports.MANGLIK = [1, 4, 7, 8, 12]; module.exports.swisseph = swisseph; module.exports.NAVAMSA_DIVISIONS = [ 3.3329, 6.666, 9.999, 13.3329, 16.666, 19.999, 23.3329, 26.666, 30.0000 ]; module.exports.RASHI_REVERSE_MAP = RASHI_REVERSE_MAP; module.exports.SKEWED_REVERSE_RASHI_MAP = { 1: "Ar", 2: "Ta", 3: "Ge", 4: "Cn", 5: "Le", 6: "Vi", 7: "Li", 8: "Sc", 9: "Sg", 10: "Cp", 11: "Aq", 0: "Pi", };