dauth-md-node 0.1.76 → 0.1.77

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -388,7 +388,8 @@ var dauth = function dauth(_ref) {
388
388
  }
389
389
  var token = req.headers.authorization.replace(/['"]+/g, '');
390
390
  try {
391
- jwt.verify(token, ssid);
391
+ var verify = jwt.verify(token, ssid);
392
+ if (!verify) return;
392
393
  getUser(token, domainName).then(function (getUserFetch) {
393
394
  if (getUserFetch.response.status === 404) {
394
395
  return res.status(404).send({
@@ -1 +1 @@
1
- {"version":3,"file":"dauth-md-node.cjs.development.js","sources":["../src/api/dauth.api.ts","../src/index.ts"],"sourcesContent":["const fetch = require('node-fetch');\n\nexport async function getUser(token: string, domainName: string) {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `http://localhost:4012/api/v1/get-tenant-user/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n}","import {\n Request,\n NextFunction,\n Response as ExpressResponse,\n Handler,\n} from 'express';\nimport mongoose from 'mongoose';\nimport jwt from 'jsonwebtoken';\nimport { getUser } from './api/dauth.api';\n\nexport interface IAccessToken {\n _id: string | mongoose.Types.ObjectId;\n sid: string;\n email: string;\n createToken?: number;\n exp?: number;\n iat?: number;\n}\n\ninterface ITenantUser {\n _id: string\n dauthLicense?: string\n sid: string\n name: string\n lastname: string\n nickname: string\n email: string\n is_verified: boolean\n language: string\n avatar: string\n role: string\n tel_prefix: string\n tel_suffix: string\n createdAt: Date\n updatedAt: Date\n last_login: Date\n __v: string | any\n}\n\ninterface IRequestUser extends Request {\n user: ITenantUser;\n files: {\n image: { path: string };\n avatar: { path: string };\n };\n headers: {\n authorization: string;\n };\n}\n\ninterface TCustomResponse extends ExpressResponse {\n status(code: number): any;\n send(body?: any): any;\n}\n\nexport const dauth = ({ ssid, domainName }: { ssid: string, domainName: string }) => {\n return (\n req: IRequestUser,\n res: TCustomResponse,\n next: NextFunction\n ): Handler | void => {\n if (!req.headers.authorization) {\n return res\n .status(403)\n .send({ status: 'token-not-found', mdKey: 'ensure_auth' });\n }\n const token = req.headers.authorization.replace(/['\"]+/g, '');\n try {\n jwt.verify(token, ssid as string) as IAccessToken;\n getUser(token, domainName)\n .then((getUserFetch: any) => {\n if (getUserFetch.response.status === 404) {\n return res.status(404).send({\n status: 'domain-not-found',\n message: 'Dauth domain does not exist',\n });\n } else if (getUserFetch.response.status === 500) {\n return res\n .status(500)\n .send({ status: 'error', message: 'Dauth server error' });\n } else if (getUserFetch.response.status === 200) {\n req.user = getUserFetch.data.user;\n return next();\n } else {\n return res.status(501).send({\n status: 'error',\n message: 'Dauth server error',\n });\n }\n })\n .catch((error: any) => {\n console.log('getDauthUser error', error);\n return next();\n });\n } catch (error) {\n if (error && error?.message === 'jwt expired') {\n return res.status(500).send({\n status: 'token-expired',\n message: 'El token ha expirado',\n mdKey: 'ensure_auth',\n });\n }\n return res.status(500).send({\n status: 'token-invalid',\n message: 'El token no es válido',\n mdKey: 'ensure_auth',\n });\n }\n };\n};\n"],"names":["fetch","require","getUser","_x","_x2","_getUser","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","token","domainName","params","response","data","wrap","_callee$","_context","prev","next","method","headers","Authorization","sent","json","abrupt","stop","dauth","_ref","ssid","req","res","authorization","status","send","mdKey","replace","jwt","verify","then","getUserFetch","message","user","error","console","log"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAMA,KAAK,gBAAGC,OAAO,CAAC,YAAY,CAAC;SAEbC,OAAOA,CAAAC,EAAA,EAAAC,GAAA;EAAA,OAAAC,QAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;AAc5B,SAAAF;EAAAA,QAAA,GAAAG,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAdM,SAAAC,QAAuBC,KAAa,EAAEC,UAAkB;IAAA,IAAAC,MAAA,EAAAC,QAAA,EAAAC,IAAA;IAAA,OAAAP,mBAAA,GAAAQ,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UACvDP,MAAM,GAAG;YACbQ,MAAM,EAAE,KAAK;YACbC,OAAO,EAAE;cACPC,aAAa,EAAEZ,KAAK;cACpB,cAAc,EAAE;;WAEnB;UAAAO,QAAA,CAAAE,IAAA;UAAA,OACsBrB,KAAK,mDACsBa,UAAU,EAC1DC,MAAM,CACP;QAAA;UAHKC,QAAQ,GAAAI,QAAA,CAAAM,IAAA;UAAAN,QAAA,CAAAE,IAAA;UAAA,OAIKN,QAAQ,CAACW,IAAI,EAAE;QAAA;UAA5BV,IAAI,GAAAG,QAAA,CAAAM,IAAA;UAAA,OAAAN,QAAA,CAAAQ,MAAA,WACH;YAAEZ,QAAQ,EAARA,QAAQ;YAAEC,IAAI,EAAJA;WAAM;QAAA;QAAA;UAAA,OAAAG,QAAA,CAAAS,IAAA;;OAAAjB,OAAA;GAC1B;EAAA,OAAAN,QAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;;ICuCYsB,KAAK,GAAG,SAARA,KAAKA,CAAAC,IAAA;MAAMC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAElB,UAAU,GAAAiB,IAAA,CAAVjB,UAAU;EACtC,OAAO,UACLmB,GAAiB,EACjBC,GAAoB,EACpBZ,IAAkB;IAElB,IAAI,CAACW,GAAG,CAACT,OAAO,CAACW,aAAa,EAAE;MAC9B,OAAOD,GAAG,CACPE,MAAM,CAAC,GAAG,CAAC,CACXC,IAAI,CAAC;QAAED,MAAM,EAAE,iBAAiB;QAAEE,KAAK,EAAE;OAAe,CAAC;;IAE9D,IAAMzB,KAAK,GAAGoB,GAAG,CAACT,OAAO,CAACW,aAAa,CAACI,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;IAC7D,IAAI;MACFC,GAAG,CAACC,MAAM,CAAC5B,KAAK,EAAEmB,IAAc,CAAiB;MACjD7B,OAAO,CAACU,KAAK,EAAEC,UAAU,CAAC,CACvB4B,IAAI,CAAC,UAACC,YAAiB;QACtB,IAAIA,YAAY,CAAC3B,QAAQ,CAACoB,MAAM,KAAK,GAAG,EAAE;UACxC,OAAOF,GAAG,CAACE,MAAM,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC;YAC1BD,MAAM,EAAE,kBAAkB;YAC1BQ,OAAO,EAAE;WACV,CAAC;SACH,MAAM,IAAID,YAAY,CAAC3B,QAAQ,CAACoB,MAAM,KAAK,GAAG,EAAE;UAC/C,OAAOF,GAAG,CACPE,MAAM,CAAC,GAAG,CAAC,CACXC,IAAI,CAAC;YAAED,MAAM,EAAE,OAAO;YAAEQ,OAAO,EAAE;WAAsB,CAAC;SAC5D,MAAM,IAAID,YAAY,CAAC3B,QAAQ,CAACoB,MAAM,KAAK,GAAG,EAAE;UAC/CH,GAAG,CAACY,IAAI,GAAGF,YAAY,CAAC1B,IAAI,CAAC4B,IAAI;UACjC,OAAOvB,IAAI,EAAE;SACd,MAAM;UACL,OAAOY,GAAG,CAACE,MAAM,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC;YAC1BD,MAAM,EAAE,OAAO;YACfQ,OAAO,EAAE;WACV,CAAC;;OAEL,CAAC,SACI,CAAC,UAACE,KAAU;QAChBC,OAAO,CAACC,GAAG,CAAC,oBAAoB,EAAEF,KAAK,CAAC;QACxC,OAAOxB,IAAI,EAAE;OACd,CAAC;KACL,CAAC,OAAOwB,KAAK,EAAE;MACd,IAAIA,KAAK,IAAI,CAAAA,KAAK,oBAALA,KAAK,CAAEF,OAAO,MAAK,aAAa,EAAE;QAC7C,OAAOV,GAAG,CAACE,MAAM,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC;UAC1BD,MAAM,EAAE,eAAe;UACvBQ,OAAO,EAAE,sBAAsB;UAC/BN,KAAK,EAAE;SACR,CAAC;;MAEJ,OAAOJ,GAAG,CAACE,MAAM,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC;QAC1BD,MAAM,EAAE,eAAe;QACvBQ,OAAO,EAAE,uBAAuB;QAChCN,KAAK,EAAE;OACR,CAAC;;GAEL;AACH,CAAC;;;;"}
1
+ {"version":3,"file":"dauth-md-node.cjs.development.js","sources":["../src/api/dauth.api.ts","../src/index.ts"],"sourcesContent":["const fetch = require('node-fetch');\n\nexport async function getUser(token: string, domainName: string) {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `http://localhost:4012/api/v1/get-tenant-user/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n}\n","import {\n Request,\n NextFunction,\n Response as ExpressResponse,\n Handler,\n} from 'express';\nimport mongoose from 'mongoose';\nimport jwt from 'jsonwebtoken';\nimport { getUser } from './api/dauth.api';\n\nexport interface IAccessToken {\n _id: string | mongoose.Types.ObjectId;\n sid: string;\n email: string;\n createToken?: number;\n exp?: number;\n iat?: number;\n}\n\ninterface ITenantUser {\n _id: string;\n dauthLicense?: string;\n sid: string;\n name: string;\n lastname: string;\n nickname: string;\n email: string;\n is_verified: boolean;\n language: string;\n avatar: string;\n role: string;\n tel_prefix: string;\n tel_suffix: string;\n createdAt: Date;\n updatedAt: Date;\n last_login: Date;\n __v: string | any;\n}\n\ninterface IRequestUser extends Request {\n user: ITenantUser;\n files: {\n image: { path: string };\n avatar: { path: string };\n };\n headers: {\n authorization: string;\n };\n}\n\ninterface TCustomResponse extends ExpressResponse {\n status(code: number): any;\n send(body?: any): any;\n}\n\nexport const dauth = ({\n ssid,\n domainName,\n}: {\n ssid: string;\n domainName: string;\n}) => {\n return (\n req: IRequestUser,\n res: TCustomResponse,\n next: NextFunction\n ): Handler | void => {\n if (!req.headers.authorization) {\n return res\n .status(403)\n .send({ status: 'token-not-found', mdKey: 'ensure_auth' });\n }\n const token = req.headers.authorization.replace(/['\"]+/g, '');\n try {\n const verify = jwt.verify(token, ssid as string) as IAccessToken;\n if (!verify) return;\n getUser(token, domainName)\n .then((getUserFetch: any) => {\n if (getUserFetch.response.status === 404) {\n return res.status(404).send({\n status: 'domain-not-found',\n message: 'Dauth domain does not exist',\n });\n } else if (getUserFetch.response.status === 500) {\n return res\n .status(500)\n .send({ status: 'error', message: 'Dauth server error' });\n } else if (getUserFetch.response.status === 200) {\n req.user = getUserFetch.data.user;\n return next();\n } else {\n return res.status(501).send({\n status: 'error',\n message: 'Dauth server error',\n });\n }\n })\n .catch((error: any) => {\n console.log('getDauthUser error', error);\n return next();\n });\n } catch (error) {\n if (error && error?.message === 'jwt expired') {\n return res.status(500).send({\n status: 'token-expired',\n message: 'El token ha expirado',\n mdKey: 'ensure_auth',\n });\n }\n return res.status(500).send({\n status: 'token-invalid',\n message: 'El token no es válido',\n mdKey: 'ensure_auth',\n });\n }\n };\n};\n"],"names":["fetch","require","getUser","_x","_x2","_getUser","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","token","domainName","params","response","data","wrap","_callee$","_context","prev","next","method","headers","Authorization","sent","json","abrupt","stop","dauth","_ref","ssid","req","res","authorization","status","send","mdKey","replace","verify","jwt","then","getUserFetch","message","user","error","console","log"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t,e=(t=require("jsonwebtoken"))&&"object"==typeof t&&"default"in t?t.default:t;function r(){r=function(){return e};var t,e={},n=Object.prototype,o=n.hasOwnProperty,a=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},u=i.iterator||"@@iterator",s=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function h(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{h({},"")}catch(t){h=function(t,e,r){return t[e]=r}}function f(t,e,r,n){var o=Object.create((e&&e.prototype instanceof g?e:g).prototype),i=new N(n||[]);return a(o,"_invoke",{value:k(t,r,i)}),o}function l(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=f;var p="suspendedStart",d="executing",v="completed",y={};function g(){}function m(){}function w(){}var x={};h(x,u,(function(){return this}));var b=Object.getPrototypeOf,L=b&&b(b(T([])));L&&L!==n&&o.call(L,u)&&(x=L);var E=w.prototype=g.prototype=Object.create(x);function _(t){["next","throw","return"].forEach((function(e){h(t,e,(function(t){return this._invoke(e,t)}))}))}function j(t,e){function r(n,a,i,u){var s=l(t[n],t,a);if("throw"!==s.type){var c=s.arg,h=c.value;return h&&"object"==typeof h&&o.call(h,"__await")?e.resolve(h.__await).then((function(t){r("next",t,i,u)}),(function(t){r("throw",t,i,u)})):e.resolve(h).then((function(t){c.value=t,i(c)}),(function(t){return r("throw",t,i,u)}))}u(s.arg)}var n;a(this,"_invoke",{value:function(t,o){function a(){return new e((function(e,n){r(t,o,e,n)}))}return n=n?n.then(a,a):a()}})}function k(e,r,n){var o=p;return function(a,i){if(o===d)throw new Error("Generator is already running");if(o===v){if("throw"===a)throw i;return{value:t,done:!0}}for(n.method=a,n.arg=i;;){var u=n.delegate;if(u){var s=O(u,n);if(s){if(s===y)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===p)throw o=v,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=d;var c=l(e,r,n);if("normal"===c.type){if(o=n.done?v:"suspendedYield",c.arg===y)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(o=v,n.method="throw",n.arg=c.arg)}}}function O(e,r){var n=r.method,o=e.iterator[n];if(o===t)return r.delegate=null,"throw"===n&&e.iterator.return&&(r.method="return",r.arg=t,O(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),y;var a=l(o,e.iterator,r.arg);if("throw"===a.type)return r.method="throw",r.arg=a.arg,r.delegate=null,y;var i=a.arg;return i?i.done?(r[e.resultName]=i.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,y):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,y)}function P(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function G(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function N(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(P,this),this.reset(!0)}function T(e){if(e||""===e){var r=e[u];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,a=function r(){for(;++n<e.length;)if(o.call(e,n))return r.value=e[n],r.done=!1,r;return r.value=t,r.done=!0,r};return a.next=a}}throw new TypeError(typeof e+" is not iterable")}return m.prototype=w,a(E,"constructor",{value:w,configurable:!0}),a(w,"constructor",{value:m,configurable:!0}),m.displayName=h(w,c,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===m||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,w):(t.__proto__=w,h(t,c,"GeneratorFunction")),t.prototype=Object.create(E),t},e.awrap=function(t){return{__await:t}},_(j.prototype),h(j.prototype,s,(function(){return this})),e.AsyncIterator=j,e.async=function(t,r,n,o,a){void 0===a&&(a=Promise);var i=new j(f(t,r,n,o),a);return e.isGeneratorFunction(r)?i:i.next().then((function(t){return t.done?t.value:i.next()}))},_(E),h(E,c,"Generator"),h(E,u,(function(){return this})),h(E,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},e.values=T,N.prototype={constructor:N,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(G),!e)for(var r in this)"t"===r.charAt(0)&&o.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function n(n,o){return u.type="throw",u.arg=e,r.next=n,o&&(r.method="next",r.arg=t),!!o}for(var a=this.tryEntries.length-1;a>=0;--a){var i=this.tryEntries[a],u=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var s=o.call(i,"catchLoc"),c=o.call(i,"finallyLoc");if(s&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&o.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var a=n;break}}a&&("break"===t||"continue"===t)&&a.tryLoc<=e&&e<=a.finallyLoc&&(a=null);var i=a?a.completion:{};return i.type=t,i.arg=e,a?(this.method="next",this.next=a.finallyLoc,y):this.complete(i)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),y},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),G(r),y}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;G(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:T(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),y}},e}function n(t,e,r,n,o,a,i){try{var u=t[a](i),s=u.value}catch(t){return void r(t)}u.done?e(s):Promise.resolve(s).then(n,o)}function o(t){return function(){var e=this,r=arguments;return new Promise((function(o,a){var i=t.apply(e,r);function u(t){n(i,o,a,u,s,"next",t)}function s(t){n(i,o,a,u,s,"throw",t)}u(void 0)}))}}var a=require("node-fetch");function i(){return(i=o(r().mark((function t(e,n){var o,i;return r().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return o={method:"GET",headers:{Authorization:e,"Content-Type":"application/json"}},t.next=3,a("http://localhost:4012/api/v1/get-tenant-user/"+n,o);case 3:return i=t.sent,t.next=6,i.json();case 6:return t.abrupt("return",{response:i,data:t.sent});case 8:case"end":return t.stop()}}),t)})))).apply(this,arguments)}exports.dauth=function(t){var r=t.ssid,n=t.domainName;return function(t,o,a){if(!t.headers.authorization)return o.status(403).send({status:"token-not-found",mdKey:"ensure_auth"});var u=t.headers.authorization.replace(/['"]+/g,"");try{e.verify(u,r),function(t,e){return i.apply(this,arguments)}(u,n).then((function(e){return 404===e.response.status?o.status(404).send({status:"domain-not-found",message:"Dauth domain does not exist"}):500===e.response.status?o.status(500).send({status:"error",message:"Dauth server error"}):200===e.response.status?(t.user=e.data.user,a()):o.status(501).send({status:"error",message:"Dauth server error"})})).catch((function(t){return console.log("getDauthUser error",t),a()}))}catch(t){return t&&"jwt expired"===(null==t?void 0:t.message)?o.status(500).send({status:"token-expired",message:"El token ha expirado",mdKey:"ensure_auth"}):o.status(500).send({status:"token-invalid",message:"El token no es válido",mdKey:"ensure_auth"})}}};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t,e=(t=require("jsonwebtoken"))&&"object"==typeof t&&"default"in t?t.default:t;function r(){r=function(){return e};var t,e={},n=Object.prototype,o=n.hasOwnProperty,a=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},u=i.iterator||"@@iterator",s=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function h(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{h({},"")}catch(t){h=function(t,e,r){return t[e]=r}}function f(t,e,r,n){var o=Object.create((e&&e.prototype instanceof g?e:g).prototype),i=new N(n||[]);return a(o,"_invoke",{value:k(t,r,i)}),o}function l(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=f;var p="suspendedStart",d="executing",v="completed",y={};function g(){}function m(){}function w(){}var x={};h(x,u,(function(){return this}));var b=Object.getPrototypeOf,L=b&&b(b(T([])));L&&L!==n&&o.call(L,u)&&(x=L);var E=w.prototype=g.prototype=Object.create(x);function _(t){["next","throw","return"].forEach((function(e){h(t,e,(function(t){return this._invoke(e,t)}))}))}function j(t,e){function r(n,a,i,u){var s=l(t[n],t,a);if("throw"!==s.type){var c=s.arg,h=c.value;return h&&"object"==typeof h&&o.call(h,"__await")?e.resolve(h.__await).then((function(t){r("next",t,i,u)}),(function(t){r("throw",t,i,u)})):e.resolve(h).then((function(t){c.value=t,i(c)}),(function(t){return r("throw",t,i,u)}))}u(s.arg)}var n;a(this,"_invoke",{value:function(t,o){function a(){return new e((function(e,n){r(t,o,e,n)}))}return n=n?n.then(a,a):a()}})}function k(e,r,n){var o=p;return function(a,i){if(o===d)throw new Error("Generator is already running");if(o===v){if("throw"===a)throw i;return{value:t,done:!0}}for(n.method=a,n.arg=i;;){var u=n.delegate;if(u){var s=O(u,n);if(s){if(s===y)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===p)throw o=v,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=d;var c=l(e,r,n);if("normal"===c.type){if(o=n.done?v:"suspendedYield",c.arg===y)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(o=v,n.method="throw",n.arg=c.arg)}}}function O(e,r){var n=r.method,o=e.iterator[n];if(o===t)return r.delegate=null,"throw"===n&&e.iterator.return&&(r.method="return",r.arg=t,O(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),y;var a=l(o,e.iterator,r.arg);if("throw"===a.type)return r.method="throw",r.arg=a.arg,r.delegate=null,y;var i=a.arg;return i?i.done?(r[e.resultName]=i.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,y):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,y)}function P(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function G(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function N(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(P,this),this.reset(!0)}function T(e){if(e||""===e){var r=e[u];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,a=function r(){for(;++n<e.length;)if(o.call(e,n))return r.value=e[n],r.done=!1,r;return r.value=t,r.done=!0,r};return a.next=a}}throw new TypeError(typeof e+" is not iterable")}return m.prototype=w,a(E,"constructor",{value:w,configurable:!0}),a(w,"constructor",{value:m,configurable:!0}),m.displayName=h(w,c,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===m||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,w):(t.__proto__=w,h(t,c,"GeneratorFunction")),t.prototype=Object.create(E),t},e.awrap=function(t){return{__await:t}},_(j.prototype),h(j.prototype,s,(function(){return this})),e.AsyncIterator=j,e.async=function(t,r,n,o,a){void 0===a&&(a=Promise);var i=new j(f(t,r,n,o),a);return e.isGeneratorFunction(r)?i:i.next().then((function(t){return t.done?t.value:i.next()}))},_(E),h(E,c,"Generator"),h(E,u,(function(){return this})),h(E,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},e.values=T,N.prototype={constructor:N,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(G),!e)for(var r in this)"t"===r.charAt(0)&&o.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function n(n,o){return u.type="throw",u.arg=e,r.next=n,o&&(r.method="next",r.arg=t),!!o}for(var a=this.tryEntries.length-1;a>=0;--a){var i=this.tryEntries[a],u=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var s=o.call(i,"catchLoc"),c=o.call(i,"finallyLoc");if(s&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&o.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var a=n;break}}a&&("break"===t||"continue"===t)&&a.tryLoc<=e&&e<=a.finallyLoc&&(a=null);var i=a?a.completion:{};return i.type=t,i.arg=e,a?(this.method="next",this.next=a.finallyLoc,y):this.complete(i)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),y},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),G(r),y}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;G(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:T(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),y}},e}function n(t,e,r,n,o,a,i){try{var u=t[a](i),s=u.value}catch(t){return void r(t)}u.done?e(s):Promise.resolve(s).then(n,o)}function o(t){return function(){var e=this,r=arguments;return new Promise((function(o,a){var i=t.apply(e,r);function u(t){n(i,o,a,u,s,"next",t)}function s(t){n(i,o,a,u,s,"throw",t)}u(void 0)}))}}var a=require("node-fetch");function i(){return(i=o(r().mark((function t(e,n){var o,i;return r().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return o={method:"GET",headers:{Authorization:e,"Content-Type":"application/json"}},t.next=3,a("http://localhost:4012/api/v1/get-tenant-user/"+n,o);case 3:return i=t.sent,t.next=6,i.json();case 6:return t.abrupt("return",{response:i,data:t.sent});case 8:case"end":return t.stop()}}),t)})))).apply(this,arguments)}exports.dauth=function(t){var r=t.ssid,n=t.domainName;return function(t,o,a){if(!t.headers.authorization)return o.status(403).send({status:"token-not-found",mdKey:"ensure_auth"});var u=t.headers.authorization.replace(/['"]+/g,"");try{if(!e.verify(u,r))return;(function(t,e){return i.apply(this,arguments)})(u,n).then((function(e){return 404===e.response.status?o.status(404).send({status:"domain-not-found",message:"Dauth domain does not exist"}):500===e.response.status?o.status(500).send({status:"error",message:"Dauth server error"}):200===e.response.status?(t.user=e.data.user,a()):o.status(501).send({status:"error",message:"Dauth server error"})})).catch((function(t){return console.log("getDauthUser error",t),a()}))}catch(t){return t&&"jwt expired"===(null==t?void 0:t.message)?o.status(500).send({status:"token-expired",message:"El token ha expirado",mdKey:"ensure_auth"}):o.status(500).send({status:"token-invalid",message:"El token no es válido",mdKey:"ensure_auth"})}}};
2
2
  //# sourceMappingURL=dauth-md-node.cjs.production.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dauth-md-node.cjs.production.min.js","sources":["../src/api/dauth.api.ts","../src/index.ts"],"sourcesContent":["const fetch = require('node-fetch');\n\nexport async function getUser(token: string, domainName: string) {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `http://localhost:4012/api/v1/get-tenant-user/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n}","import {\n Request,\n NextFunction,\n Response as ExpressResponse,\n Handler,\n} from 'express';\nimport mongoose from 'mongoose';\nimport jwt from 'jsonwebtoken';\nimport { getUser } from './api/dauth.api';\n\nexport interface IAccessToken {\n _id: string | mongoose.Types.ObjectId;\n sid: string;\n email: string;\n createToken?: number;\n exp?: number;\n iat?: number;\n}\n\ninterface ITenantUser {\n _id: string\n dauthLicense?: string\n sid: string\n name: string\n lastname: string\n nickname: string\n email: string\n is_verified: boolean\n language: string\n avatar: string\n role: string\n tel_prefix: string\n tel_suffix: string\n createdAt: Date\n updatedAt: Date\n last_login: Date\n __v: string | any\n}\n\ninterface IRequestUser extends Request {\n user: ITenantUser;\n files: {\n image: { path: string };\n avatar: { path: string };\n };\n headers: {\n authorization: string;\n };\n}\n\ninterface TCustomResponse extends ExpressResponse {\n status(code: number): any;\n send(body?: any): any;\n}\n\nexport const dauth = ({ ssid, domainName }: { ssid: string, domainName: string }) => {\n return (\n req: IRequestUser,\n res: TCustomResponse,\n next: NextFunction\n ): Handler | void => {\n if (!req.headers.authorization) {\n return res\n .status(403)\n .send({ status: 'token-not-found', mdKey: 'ensure_auth' });\n }\n const token = req.headers.authorization.replace(/['\"]+/g, '');\n try {\n jwt.verify(token, ssid as string) as IAccessToken;\n getUser(token, domainName)\n .then((getUserFetch: any) => {\n if (getUserFetch.response.status === 404) {\n return res.status(404).send({\n status: 'domain-not-found',\n message: 'Dauth domain does not exist',\n });\n } else if (getUserFetch.response.status === 500) {\n return res\n .status(500)\n .send({ status: 'error', message: 'Dauth server error' });\n } else if (getUserFetch.response.status === 200) {\n req.user = getUserFetch.data.user;\n return next();\n } else {\n return res.status(501).send({\n status: 'error',\n message: 'Dauth server error',\n });\n }\n })\n .catch((error: any) => {\n console.log('getDauthUser error', error);\n return next();\n });\n } catch (error) {\n if (error && error?.message === 'jwt expired') {\n return res.status(500).send({\n status: 'token-expired',\n message: 'El token ha expirado',\n mdKey: 'ensure_auth',\n });\n }\n return res.status(500).send({\n status: 'token-invalid',\n message: 'El token no es válido',\n mdKey: 'ensure_auth',\n });\n }\n };\n};\n"],"names":["fetch","require","_getUser","_asyncToGenerator","_regeneratorRuntime","mark","_callee","token","domainName","params","response","wrap","_context","prev","next","method","headers","Authorization","Content-Type","sent","json","abrupt","data","stop","apply","arguments","_ref","ssid","req","res","authorization","status","send","mdKey","replace","jwt","verify","_x","_x2","getUser","then","getUserFetch","message","user","error","console","log"],"mappings":"+zNAAA,IAAMA,EAAQC,QAAQ,cAgBrB,SAAAC,IAAA,OAAAA,EAAAC,EAAAC,IAAAC,MAdM,SAAAC,EAAuBC,EAAeC,GAAkB,IAAAC,EAAAC,EAAA,OAAAN,IAAAO,eAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAO5D,OANKL,EAAS,CACbM,OAAQ,MACRC,QAAS,CACPC,cAAeV,EACfW,eAAgB,qBAEnBN,EAAAE,OACsBd,kDAC2BQ,EAChDC,GACD,OAHa,OAARC,EAAQE,EAAAO,KAAAP,EAAAE,OAIKJ,EAASU,OAAM,OAAxB,OAAAR,EAAAS,gBACH,CAAEX,SAAAA,EAAUY,KADTV,EAAAO,OACe,OAAA,UAAA,OAAAP,EAAAW,UAAAjB,QAC1BkB,WAAAC,yBCuCoB,SAAHC,OAAMC,EAAID,EAAJC,KAAMnB,EAAUkB,EAAVlB,WAC5B,OAAO,SACLoB,EACAC,EACAf,GAEA,IAAKc,EAAIZ,QAAQc,cACf,OAAOD,EACJE,OAAO,KACPC,KAAK,CAAED,OAAQ,kBAAmBE,MAAO,gBAE9C,IAAM1B,EAAQqB,EAAIZ,QAAQc,cAAcI,QAAQ,SAAU,IAC1D,IACEC,EAAIC,OAAO7B,EAAOoB,YDlEKU,EAAAC,GAAA,OAAApC,EAAAsB,WAAAC,WCmEvBc,CAAQhC,EAAOC,GACZgC,MAAK,SAACC,GACL,OAAqC,MAAjCA,EAAa/B,SAASqB,OACjBF,EAAIE,OAAO,KAAKC,KAAK,CAC1BD,OAAQ,mBACRW,QAAS,gCAE+B,MAAjCD,EAAa/B,SAASqB,OACxBF,EACJE,OAAO,KACPC,KAAK,CAAED,OAAQ,QAASW,QAAS,uBACM,MAAjCD,EAAa/B,SAASqB,QAC/BH,EAAIe,KAAOF,EAAanB,KAAKqB,KACtB7B,KAEAe,EAAIE,OAAO,KAAKC,KAAK,CAC1BD,OAAQ,QACRW,QAAS,iCAIR,SAACE,GAEN,OADAC,QAAQC,IAAI,qBAAsBF,GAC3B9B,OAEX,MAAO8B,GACP,OAAIA,GAA4B,uBAAnBA,SAAAA,EAAOF,SACXb,EAAIE,OAAO,KAAKC,KAAK,CAC1BD,OAAQ,gBACRW,QAAS,uBACTT,MAAO,gBAGJJ,EAAIE,OAAO,KAAKC,KAAK,CAC1BD,OAAQ,gBACRW,QAAS,wBACTT,MAAO"}
1
+ {"version":3,"file":"dauth-md-node.cjs.production.min.js","sources":["../src/api/dauth.api.ts","../src/index.ts"],"sourcesContent":["const fetch = require('node-fetch');\n\nexport async function getUser(token: string, domainName: string) {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `http://localhost:4012/api/v1/get-tenant-user/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n}\n","import {\n Request,\n NextFunction,\n Response as ExpressResponse,\n Handler,\n} from 'express';\nimport mongoose from 'mongoose';\nimport jwt from 'jsonwebtoken';\nimport { getUser } from './api/dauth.api';\n\nexport interface IAccessToken {\n _id: string | mongoose.Types.ObjectId;\n sid: string;\n email: string;\n createToken?: number;\n exp?: number;\n iat?: number;\n}\n\ninterface ITenantUser {\n _id: string;\n dauthLicense?: string;\n sid: string;\n name: string;\n lastname: string;\n nickname: string;\n email: string;\n is_verified: boolean;\n language: string;\n avatar: string;\n role: string;\n tel_prefix: string;\n tel_suffix: string;\n createdAt: Date;\n updatedAt: Date;\n last_login: Date;\n __v: string | any;\n}\n\ninterface IRequestUser extends Request {\n user: ITenantUser;\n files: {\n image: { path: string };\n avatar: { path: string };\n };\n headers: {\n authorization: string;\n };\n}\n\ninterface TCustomResponse extends ExpressResponse {\n status(code: number): any;\n send(body?: any): any;\n}\n\nexport const dauth = ({\n ssid,\n domainName,\n}: {\n ssid: string;\n domainName: string;\n}) => {\n return (\n req: IRequestUser,\n res: TCustomResponse,\n next: NextFunction\n ): Handler | void => {\n if (!req.headers.authorization) {\n return res\n .status(403)\n .send({ status: 'token-not-found', mdKey: 'ensure_auth' });\n }\n const token = req.headers.authorization.replace(/['\"]+/g, '');\n try {\n const verify = jwt.verify(token, ssid as string) as IAccessToken;\n if (!verify) return;\n getUser(token, domainName)\n .then((getUserFetch: any) => {\n if (getUserFetch.response.status === 404) {\n return res.status(404).send({\n status: 'domain-not-found',\n message: 'Dauth domain does not exist',\n });\n } else if (getUserFetch.response.status === 500) {\n return res\n .status(500)\n .send({ status: 'error', message: 'Dauth server error' });\n } else if (getUserFetch.response.status === 200) {\n req.user = getUserFetch.data.user;\n return next();\n } else {\n return res.status(501).send({\n status: 'error',\n message: 'Dauth server error',\n });\n }\n })\n .catch((error: any) => {\n console.log('getDauthUser error', error);\n return next();\n });\n } catch (error) {\n if (error && error?.message === 'jwt expired') {\n return res.status(500).send({\n status: 'token-expired',\n message: 'El token ha expirado',\n mdKey: 'ensure_auth',\n });\n }\n return res.status(500).send({\n status: 'token-invalid',\n message: 'El token no es válido',\n mdKey: 'ensure_auth',\n });\n }\n };\n};\n"],"names":["fetch","require","_getUser","_asyncToGenerator","_regeneratorRuntime","mark","_callee","token","domainName","params","response","wrap","_context","prev","next","method","headers","Authorization","Content-Type","sent","json","abrupt","data","stop","apply","arguments","_ref","ssid","req","res","authorization","status","send","mdKey","replace","jwt","verify","_x","_x2","getUser","then","getUserFetch","message","user","error","console","log"],"mappings":"+zNAAA,IAAMA,EAAQC,QAAQ,cAgBrB,SAAAC,IAAA,OAAAA,EAAAC,EAAAC,IAAAC,MAdM,SAAAC,EAAuBC,EAAeC,GAAkB,IAAAC,EAAAC,EAAA,OAAAN,IAAAO,eAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAO5D,OANKL,EAAS,CACbM,OAAQ,MACRC,QAAS,CACPC,cAAeV,EACfW,eAAgB,qBAEnBN,EAAAE,OACsBd,kDAC2BQ,EAChDC,GACD,OAHa,OAARC,EAAQE,EAAAO,KAAAP,EAAAE,OAIKJ,EAASU,OAAM,OAAxB,OAAAR,EAAAS,gBACH,CAAEX,SAAAA,EAAUY,KADTV,EAAAO,OACe,OAAA,UAAA,OAAAP,EAAAW,UAAAjB,QAC1BkB,WAAAC,yBCuCoB,SAAHC,OAChBC,EAAID,EAAJC,KACAnB,EAAUkB,EAAVlB,WAKA,OAAO,SACLoB,EACAC,EACAf,GAEA,IAAKc,EAAIZ,QAAQc,cACf,OAAOD,EACJE,OAAO,KACPC,KAAK,CAAED,OAAQ,kBAAmBE,MAAO,gBAE9C,IAAM1B,EAAQqB,EAAIZ,QAAQc,cAAcI,QAAQ,SAAU,IAC1D,IAEE,IADeC,EAAIC,OAAO7B,EAAOoB,GACpB,iBDzEUU,EAAAC,GAAA,OAAApC,EAAAsB,WAAAC,YC0EvBc,CAAQhC,EAAOC,GACZgC,MAAK,SAACC,GACL,OAAqC,MAAjCA,EAAa/B,SAASqB,OACjBF,EAAIE,OAAO,KAAKC,KAAK,CAC1BD,OAAQ,mBACRW,QAAS,gCAE+B,MAAjCD,EAAa/B,SAASqB,OACxBF,EACJE,OAAO,KACPC,KAAK,CAAED,OAAQ,QAASW,QAAS,uBACM,MAAjCD,EAAa/B,SAASqB,QAC/BH,EAAIe,KAAOF,EAAanB,KAAKqB,KACtB7B,KAEAe,EAAIE,OAAO,KAAKC,KAAK,CAC1BD,OAAQ,QACRW,QAAS,iCAIR,SAACE,GAEN,OADAC,QAAQC,IAAI,qBAAsBF,GAC3B9B,OAEX,MAAO8B,GACP,OAAIA,GAA4B,uBAAnBA,SAAAA,EAAOF,SACXb,EAAIE,OAAO,KAAKC,KAAK,CAC1BD,OAAQ,gBACRW,QAAS,uBACTT,MAAO,gBAGJJ,EAAIE,OAAO,KAAKC,KAAK,CAC1BD,OAAQ,gBACRW,QAAS,wBACTT,MAAO"}
@@ -382,7 +382,8 @@ var dauth = function dauth(_ref) {
382
382
  }
383
383
  var token = req.headers.authorization.replace(/['"]+/g, '');
384
384
  try {
385
- jwt.verify(token, ssid);
385
+ var verify = jwt.verify(token, ssid);
386
+ if (!verify) return;
386
387
  getUser(token, domainName).then(function (getUserFetch) {
387
388
  if (getUserFetch.response.status === 404) {
388
389
  return res.status(404).send({
@@ -1 +1 @@
1
- {"version":3,"file":"dauth-md-node.esm.js","sources":["../src/api/dauth.api.ts","../src/index.ts"],"sourcesContent":["const fetch = require('node-fetch');\n\nexport async function getUser(token: string, domainName: string) {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `http://localhost:4012/api/v1/get-tenant-user/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n}","import {\n Request,\n NextFunction,\n Response as ExpressResponse,\n Handler,\n} from 'express';\nimport mongoose from 'mongoose';\nimport jwt from 'jsonwebtoken';\nimport { getUser } from './api/dauth.api';\n\nexport interface IAccessToken {\n _id: string | mongoose.Types.ObjectId;\n sid: string;\n email: string;\n createToken?: number;\n exp?: number;\n iat?: number;\n}\n\ninterface ITenantUser {\n _id: string\n dauthLicense?: string\n sid: string\n name: string\n lastname: string\n nickname: string\n email: string\n is_verified: boolean\n language: string\n avatar: string\n role: string\n tel_prefix: string\n tel_suffix: string\n createdAt: Date\n updatedAt: Date\n last_login: Date\n __v: string | any\n}\n\ninterface IRequestUser extends Request {\n user: ITenantUser;\n files: {\n image: { path: string };\n avatar: { path: string };\n };\n headers: {\n authorization: string;\n };\n}\n\ninterface TCustomResponse extends ExpressResponse {\n status(code: number): any;\n send(body?: any): any;\n}\n\nexport const dauth = ({ ssid, domainName }: { ssid: string, domainName: string }) => {\n return (\n req: IRequestUser,\n res: TCustomResponse,\n next: NextFunction\n ): Handler | void => {\n if (!req.headers.authorization) {\n return res\n .status(403)\n .send({ status: 'token-not-found', mdKey: 'ensure_auth' });\n }\n const token = req.headers.authorization.replace(/['\"]+/g, '');\n try {\n jwt.verify(token, ssid as string) as IAccessToken;\n getUser(token, domainName)\n .then((getUserFetch: any) => {\n if (getUserFetch.response.status === 404) {\n return res.status(404).send({\n status: 'domain-not-found',\n message: 'Dauth domain does not exist',\n });\n } else if (getUserFetch.response.status === 500) {\n return res\n .status(500)\n .send({ status: 'error', message: 'Dauth server error' });\n } else if (getUserFetch.response.status === 200) {\n req.user = getUserFetch.data.user;\n return next();\n } else {\n return res.status(501).send({\n status: 'error',\n message: 'Dauth server error',\n });\n }\n })\n .catch((error: any) => {\n console.log('getDauthUser error', error);\n return next();\n });\n } catch (error) {\n if (error && error?.message === 'jwt expired') {\n return res.status(500).send({\n status: 'token-expired',\n message: 'El token ha expirado',\n mdKey: 'ensure_auth',\n });\n }\n return res.status(500).send({\n status: 'token-invalid',\n message: 'El token no es válido',\n mdKey: 'ensure_auth',\n });\n }\n };\n};\n"],"names":["fetch","require","getUser","_x","_x2","_getUser","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","token","domainName","params","response","data","wrap","_callee$","_context","prev","next","method","headers","Authorization","sent","json","abrupt","stop","dauth","_ref","ssid","req","res","authorization","status","send","mdKey","replace","jwt","verify","then","getUserFetch","message","user","error","console","log"],"mappings":"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"}
1
+ {"version":3,"file":"dauth-md-node.esm.js","sources":["../src/api/dauth.api.ts","../src/index.ts"],"sourcesContent":["const fetch = require('node-fetch');\n\nexport async function getUser(token: string, domainName: string) {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `http://localhost:4012/api/v1/get-tenant-user/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n}\n","import {\n Request,\n NextFunction,\n Response as ExpressResponse,\n Handler,\n} from 'express';\nimport mongoose from 'mongoose';\nimport jwt from 'jsonwebtoken';\nimport { getUser } from './api/dauth.api';\n\nexport interface IAccessToken {\n _id: string | mongoose.Types.ObjectId;\n sid: string;\n email: string;\n createToken?: number;\n exp?: number;\n iat?: number;\n}\n\ninterface ITenantUser {\n _id: string;\n dauthLicense?: string;\n sid: string;\n name: string;\n lastname: string;\n nickname: string;\n email: string;\n is_verified: boolean;\n language: string;\n avatar: string;\n role: string;\n tel_prefix: string;\n tel_suffix: string;\n createdAt: Date;\n updatedAt: Date;\n last_login: Date;\n __v: string | any;\n}\n\ninterface IRequestUser extends Request {\n user: ITenantUser;\n files: {\n image: { path: string };\n avatar: { path: string };\n };\n headers: {\n authorization: string;\n };\n}\n\ninterface TCustomResponse extends ExpressResponse {\n status(code: number): any;\n send(body?: any): any;\n}\n\nexport const dauth = ({\n ssid,\n domainName,\n}: {\n ssid: string;\n domainName: string;\n}) => {\n return (\n req: IRequestUser,\n res: TCustomResponse,\n next: NextFunction\n ): Handler | void => {\n if (!req.headers.authorization) {\n return res\n .status(403)\n .send({ status: 'token-not-found', mdKey: 'ensure_auth' });\n }\n const token = req.headers.authorization.replace(/['\"]+/g, '');\n try {\n const verify = jwt.verify(token, ssid as string) as IAccessToken;\n if (!verify) return;\n getUser(token, domainName)\n .then((getUserFetch: any) => {\n if (getUserFetch.response.status === 404) {\n return res.status(404).send({\n status: 'domain-not-found',\n message: 'Dauth domain does not exist',\n });\n } else if (getUserFetch.response.status === 500) {\n return res\n .status(500)\n .send({ status: 'error', message: 'Dauth server error' });\n } else if (getUserFetch.response.status === 200) {\n req.user = getUserFetch.data.user;\n return next();\n } else {\n return res.status(501).send({\n status: 'error',\n message: 'Dauth server error',\n });\n }\n })\n .catch((error: any) => {\n console.log('getDauthUser error', error);\n return next();\n });\n } catch (error) {\n if (error && error?.message === 'jwt expired') {\n return res.status(500).send({\n status: 'token-expired',\n message: 'El token ha expirado',\n mdKey: 'ensure_auth',\n });\n }\n return res.status(500).send({\n status: 'token-invalid',\n message: 'El token no es válido',\n mdKey: 'ensure_auth',\n });\n }\n };\n};\n"],"names":["fetch","require","getUser","_x","_x2","_getUser","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","token","domainName","params","response","data","wrap","_callee$","_context","prev","next","method","headers","Authorization","sent","json","abrupt","stop","dauth","_ref","ssid","req","res","authorization","status","send","mdKey","replace","verify","jwt","then","getUserFetch","message","user","error","console","log"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -45,7 +45,7 @@ interface TCustomResponse extends ExpressResponse {
45
45
  status(code: number): any;
46
46
  send(body?: any): any;
47
47
  }
48
- export declare const dauth: ({ ssid, domainName }: {
48
+ export declare const dauth: ({ ssid, domainName, }: {
49
49
  ssid: string;
50
50
  domainName: string;
51
51
  }) => (req: IRequestUser, res: TCustomResponse, next: NextFunction) => Handler | void;
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.1.76",
2
+ "version": "0.1.77",
3
3
  "license": "MIT",
4
4
  "main": "dist/index.js",
5
5
  "typings": "dist/index.d.ts",
@@ -14,4 +14,4 @@ export async function getUser(token: string, domainName: string) {
14
14
  );
15
15
  const data = await response.json();
16
16
  return { response, data };
17
- }
17
+ }
package/src/index.ts CHANGED
@@ -18,23 +18,23 @@ export interface IAccessToken {
18
18
  }
19
19
 
20
20
  interface ITenantUser {
21
- _id: string
22
- dauthLicense?: string
23
- sid: string
24
- name: string
25
- lastname: string
26
- nickname: string
27
- email: string
28
- is_verified: boolean
29
- language: string
30
- avatar: string
31
- role: string
32
- tel_prefix: string
33
- tel_suffix: string
34
- createdAt: Date
35
- updatedAt: Date
36
- last_login: Date
37
- __v: string | any
21
+ _id: string;
22
+ dauthLicense?: string;
23
+ sid: string;
24
+ name: string;
25
+ lastname: string;
26
+ nickname: string;
27
+ email: string;
28
+ is_verified: boolean;
29
+ language: string;
30
+ avatar: string;
31
+ role: string;
32
+ tel_prefix: string;
33
+ tel_suffix: string;
34
+ createdAt: Date;
35
+ updatedAt: Date;
36
+ last_login: Date;
37
+ __v: string | any;
38
38
  }
39
39
 
40
40
  interface IRequestUser extends Request {
@@ -53,7 +53,13 @@ interface TCustomResponse extends ExpressResponse {
53
53
  send(body?: any): any;
54
54
  }
55
55
 
56
- export const dauth = ({ ssid, domainName }: { ssid: string, domainName: string }) => {
56
+ export const dauth = ({
57
+ ssid,
58
+ domainName,
59
+ }: {
60
+ ssid: string;
61
+ domainName: string;
62
+ }) => {
57
63
  return (
58
64
  req: IRequestUser,
59
65
  res: TCustomResponse,
@@ -66,7 +72,8 @@ export const dauth = ({ ssid, domainName }: { ssid: string, domainName: string }
66
72
  }
67
73
  const token = req.headers.authorization.replace(/['"]+/g, '');
68
74
  try {
69
- jwt.verify(token, ssid as string) as IAccessToken;
75
+ const verify = jwt.verify(token, ssid as string) as IAccessToken;
76
+ if (!verify) return;
70
77
  getUser(token, domainName)
71
78
  .then((getUserFetch: any) => {
72
79
  if (getUserFetch.response.status === 404) {