diff --git a/index.js b/index.js index a33b5aa..a0a18eb 100644 --- a/index.js +++ b/index.js @@ -1 +1 @@ -!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof exports?exports.Khajana=r():e.Khajana=r()}("undefined"!=typeof self?self:this,function(){return function(e){function r(t){if(n[t])return n[t].exports;var a=n[t]={i:t,l:!1,exports:{}};return e[t].call(a.exports,a,a.exports,r),a.l=!0,a.exports}var n={};return r.m=e,r.c=n,r.d=function(e,n,t){r.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:t})},r.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(n,"a",n),n},r.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},r.p="",r(r.s=0)}([function(e,r,n){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),n.d(r,"TYPES",function(){return t}),n.d(r,"SOURCES",function(){return a}),n.d(r,"SOURCES_WITH_ANG",function(){return o}),n.d(r,"buildApiUrl",function(){return i});var t=["First letter each word from start (Gurmukhi)","First letter each word anywhere (Gurmukhi)","Full Word (Gurmukhi)","Full Word Translation (English)","Romanized Gurmukhi (English)","Ang","Main Letters (Gurmukhi)","Romanized first letter anywhere (English)"],a={all:"All Sources",G:"Guru Granth Sahib Ji",D:"Dasam Granth Sahib",B:"Bhai Gurdas Ji Vaaran",A:"Amrit Keertan",S:"Bhai Gurdas Singh Ji Vaaran",N:"Bhai Nand Lal Ji Vaaran",R:"Rehatnamas & Panthic Sources"},o={G:a.G,D:a.D,B:a.B,S:a.S},i=function(e){var r=e.q,n=void 0!==r&&r,t=e.source,a=void 0!==t&&t,o=e.type,i=void 0!==o&&o,u=e.writer,c=void 0!==u&&u,s=e.raag,d=void 0!==s&&s,l=e.ang,h=void 0!==l&&l,f=e.results,p=void 0!==f&&f,v=e.offset,m=void 0!==v&&v,b=e.id,G=void 0!==b&&b,g=e.hukam,y=void 0!==g&&g,S=e.akhar,j=void 0!==S&&S,k=e.lipi,w=void 0!==k&&k,x=e.random,A=void 0!==x&&x,E=e.randomid,R=void 0!==E&&E,_=e.API_URL,B=void 0===_?"https://api.banidb.com/v2":_,O=e.livesearch,P=void 0!==O&&O,D=B;if(!1!==n){var F=[];a&&F.push("source=".concat(a)),i&&F.push("searchtype=".concat(i)),c&&F.push("writer=".concat(c)),d&&F.push("raag=".concat(d)),h&&F.push("ang=".concat(h)),p&&F.push("results=".concat(p)),m&&F.push("page=".concat(m)),P&&F.push("livesearch=1"),D+="search/".concat(n,"?").concat(F.join("&"))}else if(!1!==G)D+="shabads/".concat(G);else if(!1!==h)D+="angs/".concat(h,"/").concat(a||"");else if(!1!==y)D+="hukamnamas/".concat(y);else if(!1!==j&&!1!==w)D+="akhar/".concat(w);else if(!1!==R)D+="random/id";else{if(!1===A)throw new Error("Invalid options sent");D+="random"}return D}}])}); \ No newline at end of file +!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof exports?exports.Khajana=r():e.Khajana=r()}("undefined"!=typeof self?self:this,function(){return function(e){function r(n){if(t[n])return t[n].exports;var a=t[n]={i:n,l:!1,exports:{}};return e[n].call(a.exports,a,a.exports,r),a.l=!0,a.exports}var t={};return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},r.p="",r(r.s=0)}([function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),t.d(r,"TYPES",function(){return n}),t.d(r,"SOURCES",function(){return a}),t.d(r,"SOURCES_WITH_ANG",function(){return o}),t.d(r,"buildApiUrl",function(){return i});var n=["First letter each word from start (Gurmukhi)","First letter each word anywhere (Gurmukhi)","Full Word (Gurmukhi)","Full Word Translation (English)","Romanized Gurmukhi (English)","Ang","Main Letters (Gurmukhi)","Romanized first letter anywhere (English)","Auto Detect"],a={all:"All Sources",G:"Guru Granth Sahib Ji",D:"Dasam Granth Sahib",B:"Bhai Gurdas Ji Vaaran",A:"Amrit Keertan",S:"Bhai Gurdas Singh Ji Vaaran",N:"Bhai Nand Lal Ji Vaaran",R:"Rehatnamas & Panthic Sources"},o={G:a.G,D:a.D,B:a.B,S:a.S},i=function(e){var r=e.q,t=void 0!==r&&r,n=e.source,a=void 0!==n&&n,o=e.type,i=void 0!==o&&o,u=e.writer,c=void 0!==u&&u,s=e.raag,d=void 0!==s&&s,h=e.ang,l=void 0!==h&&h,f=e.results,p=void 0!==f&&f,v=e.offset,m=void 0!==v&&v,G=e.id,b=void 0!==G&&G,g=e.hukam,y=void 0!==g&&g,S=e.akhar,k=void 0!==S&&S,j=e.lipi,w=void 0!==j&&j,x=e.random,A=void 0!==x&&x,E=e.randomid,R=void 0!==E&&E,_=e.API_URL,B=void 0===_?"https://api.banidb.com/v2/":_,O=e.livesearch,P=void 0!==O&&O,D=e.isGurmukhi,F=void 0!==D&&D,J=B;if(!1!==t){var U=[];a&&U.push("source=".concat(a)),i&&U.push("searchtype=".concat(i)),c&&U.push("writer=".concat(c)),d&&U.push("raag=".concat(d)),l&&U.push("ang=".concat(l)),p&&U.push("results=".concat(p)),m&&U.push("page=".concat(m)),P&&U.push("livesearch=1"),F&&U.push("isGurmukhi=1"),J+="search/".concat(t,"?").concat(U.join("&"))}else if(!1!==b)J+="shabads/".concat(b);else if(!1!==l)J+="angs/".concat(l,"/").concat(a||"");else if(!1!==y)J+="hukamnamas/".concat(y);else if(!1!==k&&!1!==w)J+="akhar/".concat(w);else if(!1!==R)J+="random/id";else{if(!1===A)throw new Error("Invalid options sent");J+="random"}return J}}])}); \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 495c9e2..a3f2f9e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "@sttm/banidb", - "version": "2.2.4", + "version": "3.0.1", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 00706fd..baad3fc 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@sttm/banidb", - "version": "3.0.0", + "version": "3.0.1", "description": "JavaScript API wrapper for BaniDB REST API", "main": "index.js", "scripts": { diff --git a/src/index.js b/src/index.js index af79711..0973e37 100644 --- a/src/index.js +++ b/src/index.js @@ -6,7 +6,8 @@ export const TYPES = [ "Romanized Gurmukhi (English)", "Ang", "Main Letters (Gurmukhi)", - "Romanized first letter anywhere (English)" + "Romanized first letter anywhere (English)", + "Auto Detect" ]; export const SOURCES = { @@ -45,6 +46,7 @@ export const buildApiUrl = options => { randomid = false, // Boolean: Pass true to get random shabad id only. API_URL = "https://api.banidb.com/v2/", // String: API_URL to hit. (Prod: api.banidb.com, Dev: devapi.khajana.org). livesearch = false, + isGurmukhi = false, } = options; let url = API_URL; @@ -68,6 +70,8 @@ export const buildApiUrl = options => { if (livesearch) params.push(`livesearch=1`); + if (isGurmukhi) params.push(`isGurmukhi=1`); + url += `search/${q}?${params.join("&")}`; } else if (id !== false) { url += `shabads/${id}`;