dauth-md-node 0.1.83 → 0.1.85

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.
@@ -364,7 +364,7 @@ function _getUser() {
364
364
  }
365
365
  };
366
366
  _context.next = 3;
367
- return fetch(getServerBasePath() + "/t-get-user/" + domainName, params);
367
+ return fetch(getServerBasePath() + "/t-get-user", params);
368
368
  case 3:
369
369
  response = _context.sent;
370
370
  _context.next = 6;
@@ -385,24 +385,25 @@ function _getUser() {
385
385
  }
386
386
 
387
387
  var dauth = function dauth(_ref) {
388
- var ssid = _ref.ssid,
388
+ var tsk = _ref.tsk,
389
389
  domainName = _ref.domainName;
390
390
  return function (req, res, next) {
391
391
  if (!req.headers.authorization) {
392
392
  return res.status(403).send({
393
393
  status: 'token-not-found',
394
- mdKey: 'ensure_auth'
394
+ message: 'Token not found'
395
395
  });
396
396
  }
397
397
  var token = req.headers.authorization.replace(/['"]+/g, '');
398
398
  try {
399
- var verify = jwt.verify(token, ssid);
399
+ console.log('tsk', tsk);
400
+ var verify = jwt.verify(token, tsk);
400
401
  if (!verify) return;
401
402
  getUser(token, domainName).then(function (getUserFetch) {
402
403
  if (getUserFetch.response.status === 404) {
403
404
  return res.status(404).send({
404
- status: 'domain-not-found',
405
- message: 'Dauth domain does not exist'
405
+ status: 'user-not-found',
406
+ message: 'User does not exist'
406
407
  });
407
408
  } else if (getUserFetch.response.status === 500) {
408
409
  return res.status(500).send({
@@ -419,21 +420,22 @@ var dauth = function dauth(_ref) {
419
420
  });
420
421
  }
421
422
  })["catch"](function (error) {
422
- console.log('getDauthUser error', error);
423
- return next();
423
+ return res.status(500).send({
424
+ status: 'error',
425
+ message: 'Dauth server error',
426
+ error: error
427
+ });
424
428
  });
425
429
  } catch (error) {
426
430
  if (error && (error == null ? void 0 : error.message) === 'jwt expired') {
427
- return res.status(500).send({
431
+ return res.status(401).send({
428
432
  status: 'token-expired',
429
- message: 'El token ha expirado',
430
- mdKey: 'ensure_auth'
433
+ message: 'Token expired'
431
434
  });
432
435
  }
433
- return res.status(500).send({
436
+ return res.status(401).send({
434
437
  status: 'token-invalid',
435
- message: 'El token no es válido',
436
- mdKey: 'ensure_auth'
438
+ message: 'Token invalid'
437
439
  });
438
440
  }
439
441
  };
@@ -1 +1 @@
1
- {"version":3,"file":"dauth-md-node.cjs.development.js","sources":["../src/api/utils/config.ts","../src/api/dauth.api.ts","../src/index.ts"],"sourcesContent":["const isLocalhost = process.env.NODE_ENV === 'development';\nexport const apiVersion = 'v1';\nexport const serverDomain = 'dauth.ovh';\n\nexport function getServerBasePath({ domainName }: { domainName: string }) {\n const serverPort = 4012;\n const serverLocalUrl = `http://localhost:${serverPort}/api/${apiVersion}`;\n const serverProdUrl = `https://${domainName}.${serverDomain}/api/${apiVersion}`;\n const serverBasePath = isLocalhost ? serverLocalUrl : serverProdUrl;\n return serverBasePath;\n}\n","import { getServerBasePath } from './utils/config';\nconst 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 `${getServerBasePath({ domainName })}/t-get-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 jwt from 'jsonwebtoken';\nimport { getUser } from './api/dauth.api';\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: {\n id: string;\n url: string;\n };\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);\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":["apiVersion","getServerBasePath","_ref","serverPort","serverLocalUrl","serverBasePath","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","ssid","req","res","authorization","status","send","mdKey","replace","verify","jwt","then","getUserFetch","message","user","error","console","log"],"mappings":"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"}
1
+ {"version":3,"file":"dauth-md-node.cjs.development.js","sources":["../src/api/utils/config.ts","../src/api/dauth.api.ts","../src/index.ts"],"sourcesContent":["const isLocalhost = process.env.NODE_ENV === 'development';\nexport const apiVersion = 'v1';\nexport const serverDomain = 'dauth.ovh';\n\nexport function getServerBasePath({ domainName }: { domainName: string }) {\n const serverPort = 4012;\n const serverLocalUrl = `http://localhost:${serverPort}/api/${apiVersion}`;\n const serverProdUrl = `https://${domainName}.${serverDomain}/api/${apiVersion}`;\n const serverBasePath = isLocalhost ? serverLocalUrl : serverProdUrl;\n return serverBasePath;\n}\n","import { getServerBasePath } from './utils/config';\nconst 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 `${getServerBasePath({ domainName })}/t-get-user`,\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 jwt from 'jsonwebtoken';\nimport { getUser } from './api/dauth.api';\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: {\n id: string;\n url: string;\n };\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 tsk,\n domainName,\n}: {\n tsk: 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', message: 'Token not found' });\n }\n const token = req.headers.authorization.replace(/['\"]+/g, '');\n try {\n console.log('tsk', tsk);\n const verify = jwt.verify(token, tsk as string);\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: 'user-not-found',\n message: 'User 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 return res.status(500).send({\n status: 'error',\n message: 'Dauth server error',\n error,\n });\n });\n } catch (error) {\n if (error && error?.message === 'jwt expired') {\n return res.status(401).send({\n status: 'token-expired',\n message: 'Token expired',\n });\n }\n return res.status(401).send({\n status: 'token-invalid',\n message: 'Token invalid',\n });\n }\n };\n};\n"],"names":["apiVersion","getServerBasePath","_ref","serverPort","serverLocalUrl","serverBasePath","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","tsk","req","res","authorization","status","send","message","replace","console","log","verify","jwt","then","getUserFetch","user","error"],"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 G(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 N(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 P(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function G(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(N,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,G.prototype={constructor:G,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(P),!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),P(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;P(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)}))}}function a(t){return"https://"+t.domainName+".dauth.ovh/api/v1"}var i=require("node-fetch");function u(){return(u=o(r().mark((function t(e,n){var o,u;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,i(a({domainName:n})+"/t-get-user/"+n,o);case 3:return u=t.sent,t.next=6,u.json();case 6:return t.abrupt("return",{response:u,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 i=t.headers.authorization.replace(/['"]+/g,"");try{if(!e.verify(i,r))return;(function(t,e){return u.apply(this,arguments)})(i,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 P(n||[]);return a(o,"_invoke",{value:_(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",v="executing",d="completed",y={};function g(){}function m(){}function w(){}var x={};h(x,u,(function(){return this}));var b=Object.getPrototypeOf,L=b&&b(b(G([])));L&&L!==n&&o.call(L,u)&&(x=L);var E=w.prototype=g.prototype=Object.create(x);function j(t){["next","throw","return"].forEach((function(e){h(t,e,(function(t){return this._invoke(e,t)}))}))}function k(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 _(e,r,n){var o=p;return function(a,i){if(o===v)throw new Error("Generator is already running");if(o===d){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=d,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=v;var c=l(e,r,n);if("normal"===c.type){if(o=n.done?d:"suspendedYield",c.arg===y)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(o=d,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 N(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 T(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function P(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(N,this),this.reset(!0)}function G(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(k.prototype),h(k.prototype,s,(function(){return this})),e.AsyncIterator=k,e.async=function(t,r,n,o,a){void 0===a&&(a=Promise);var i=new k(f(t,r,n,o),a);return e.isGeneratorFunction(r)?i:i.next().then((function(t){return t.done?t.value:i.next()}))},j(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=G,P.prototype={constructor:P,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(T),!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),T(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;T(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:G(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)}))}}function a(t){return"https://"+t.domainName+".dauth.ovh/api/v1"}var i=require("node-fetch");function u(){return(u=o(r().mark((function t(e,n){var o,u;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,i(a({domainName:n})+"/t-get-user",o);case 3:return u=t.sent,t.next=6,u.json();case 6:return t.abrupt("return",{response:u,data:t.sent});case 8:case"end":return t.stop()}}),t)})))).apply(this,arguments)}exports.dauth=function(t){var r=t.tsk,n=t.domainName;return function(t,o,a){if(!t.headers.authorization)return o.status(403).send({status:"token-not-found",message:"Token not found"});var i=t.headers.authorization.replace(/['"]+/g,"");try{if(console.log("tsk",r),!e.verify(i,r))return;(function(t,e){return u.apply(this,arguments)})(i,n).then((function(e){return 404===e.response.status?o.status(404).send({status:"user-not-found",message:"User 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 o.status(500).send({status:"error",message:"Dauth server error",error:t})}))}catch(t){return t&&"jwt expired"===(null==t?void 0:t.message)?o.status(401).send({status:"token-expired",message:"Token expired"}):o.status(401).send({status:"token-invalid",message:"Token invalid"})}}};
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/utils/config.ts","../src/api/dauth.api.ts","../src/index.ts"],"sourcesContent":["const isLocalhost = process.env.NODE_ENV === 'development';\nexport const apiVersion = 'v1';\nexport const serverDomain = 'dauth.ovh';\n\nexport function getServerBasePath({ domainName }: { domainName: string }) {\n const serverPort = 4012;\n const serverLocalUrl = `http://localhost:${serverPort}/api/${apiVersion}`;\n const serverProdUrl = `https://${domainName}.${serverDomain}/api/${apiVersion}`;\n const serverBasePath = isLocalhost ? serverLocalUrl : serverProdUrl;\n return serverBasePath;\n}\n","import { getServerBasePath } from './utils/config';\nconst 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 `${getServerBasePath({ domainName })}/t-get-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 jwt from 'jsonwebtoken';\nimport { getUser } from './api/dauth.api';\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: {\n id: string;\n url: string;\n };\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);\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":["getServerBasePath","_ref","domainName","fetch","require","_getUser","_asyncToGenerator","_regeneratorRuntime","mark","_callee","token","params","response","wrap","_context","prev","next","method","headers","Authorization","Content-Type","sent","json","abrupt","data","stop","apply","arguments","ssid","req","res","authorization","status","send","mdKey","replace","jwt","verify","_x","_x2","getUser","then","getUserFetch","message","user","error","console","log"],"mappings":"w0NAIgBA,EAAiBC,GAK/B,iBAL4CA,EAAVC,+BCHpC,IAAMC,EAAQC,QAAQ,cAgBrB,SAAAC,IAAA,OAAAA,EAAAC,EAAAC,IAAAC,MAdM,SAAAC,EAAuBC,EAAeR,GAAkB,IAAAS,EAAAC,EAAA,OAAAL,IAAAM,eAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAO5D,OANKL,EAAS,CACbM,OAAQ,MACRC,QAAS,CACPC,cAAeT,EACfU,eAAgB,qBAEnBN,EAAAE,OACsBb,EAClBH,EAAkB,CAAEE,WAAAA,mBAA4BA,EACnDS,GACD,OAHa,OAARC,EAAQE,EAAAO,KAAAP,EAAAE,OAIKJ,EAASU,OAAM,OAAxB,OAAAR,EAAAS,gBACH,CAAEX,SAAAA,EAAUY,KADTV,EAAAO,OACe,OAAA,UAAA,OAAAP,EAAAW,UAAAhB,QAC1BiB,WAAAC,yBC+BoB,SAAH1B,OAChB2B,EAAI3B,EAAJ2B,KACA1B,EAAUD,EAAVC,WAKA,OAAO,SACL2B,EACAC,EACAd,GAEA,IAAKa,EAAIX,QAAQa,cACf,OAAOD,EACJE,OAAO,KACPC,KAAK,CAAED,OAAQ,kBAAmBE,MAAO,gBAE9C,IAAMxB,EAAQmB,EAAIX,QAAQa,cAAcI,QAAQ,SAAU,IAC1D,IAEE,IADeC,EAAIC,OAAO3B,EAAOkB,GACpB,iBDjEUU,EAAAC,GAAA,OAAAlC,EAAAqB,WAAAC,YCkEvBa,CAAQ9B,EAAOR,GACZuC,MAAK,SAACC,GACL,OAAqC,MAAjCA,EAAa9B,SAASoB,OACjBF,EAAIE,OAAO,KAAKC,KAAK,CAC1BD,OAAQ,mBACRW,QAAS,gCAE+B,MAAjCD,EAAa9B,SAASoB,OACxBF,EACJE,OAAO,KACPC,KAAK,CAAED,OAAQ,QAASW,QAAS,uBACM,MAAjCD,EAAa9B,SAASoB,QAC/BH,EAAIe,KAAOF,EAAalB,KAAKoB,KACtB5B,KAEAc,EAAIE,OAAO,KAAKC,KAAK,CAC1BD,OAAQ,QACRW,QAAS,iCAIR,SAACE,GAEN,OADAC,QAAQC,IAAI,qBAAsBF,GAC3B7B,OAEX,MAAO6B,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/utils/config.ts","../src/api/dauth.api.ts","../src/index.ts"],"sourcesContent":["const isLocalhost = process.env.NODE_ENV === 'development';\nexport const apiVersion = 'v1';\nexport const serverDomain = 'dauth.ovh';\n\nexport function getServerBasePath({ domainName }: { domainName: string }) {\n const serverPort = 4012;\n const serverLocalUrl = `http://localhost:${serverPort}/api/${apiVersion}`;\n const serverProdUrl = `https://${domainName}.${serverDomain}/api/${apiVersion}`;\n const serverBasePath = isLocalhost ? serverLocalUrl : serverProdUrl;\n return serverBasePath;\n}\n","import { getServerBasePath } from './utils/config';\nconst 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 `${getServerBasePath({ domainName })}/t-get-user`,\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 jwt from 'jsonwebtoken';\nimport { getUser } from './api/dauth.api';\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: {\n id: string;\n url: string;\n };\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 tsk,\n domainName,\n}: {\n tsk: 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', message: 'Token not found' });\n }\n const token = req.headers.authorization.replace(/['\"]+/g, '');\n try {\n console.log('tsk', tsk);\n const verify = jwt.verify(token, tsk as string);\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: 'user-not-found',\n message: 'User 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 return res.status(500).send({\n status: 'error',\n message: 'Dauth server error',\n error,\n });\n });\n } catch (error) {\n if (error && error?.message === 'jwt expired') {\n return res.status(401).send({\n status: 'token-expired',\n message: 'Token expired',\n });\n }\n return res.status(401).send({\n status: 'token-invalid',\n message: 'Token invalid',\n });\n }\n };\n};\n"],"names":["getServerBasePath","_ref","domainName","fetch","require","_getUser","_asyncToGenerator","_regeneratorRuntime","mark","_callee","token","params","response","wrap","_context","prev","next","method","headers","Authorization","Content-Type","sent","json","abrupt","data","stop","apply","arguments","tsk","req","res","authorization","status","send","message","replace","console","log","jwt","verify","_x","_x2","getUser","then","getUserFetch","user","error"],"mappings":"w0NAIgBA,EAAiBC,GAK/B,iBAL4CA,EAAVC,+BCHpC,IAAMC,EAAQC,QAAQ,cAgBrB,SAAAC,IAAA,OAAAA,EAAAC,EAAAC,IAAAC,MAdM,SAAAC,EAAuBC,EAAeR,GAAkB,IAAAS,EAAAC,EAAA,OAAAL,IAAAM,eAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAO5D,OANKL,EAAS,CACbM,OAAQ,MACRC,QAAS,CACPC,cAAeT,EACfU,eAAgB,qBAEnBN,EAAAE,OACsBb,EAClBH,EAAkB,CAAEE,WAAAA,kBACvBS,GACD,OAHa,OAARC,EAAQE,EAAAO,KAAAP,EAAAE,OAIKJ,EAASU,OAAM,OAAxB,OAAAR,EAAAS,gBACH,CAAEX,SAAAA,EAAUY,KADTV,EAAAO,OACe,OAAA,UAAA,OAAAP,EAAAW,UAAAhB,QAC1BiB,WAAAC,yBC+BoB,SAAH1B,OAChB2B,EAAG3B,EAAH2B,IACA1B,EAAUD,EAAVC,WAKA,OAAO,SACL2B,EACAC,EACAd,GAEA,IAAKa,EAAIX,QAAQa,cACf,OAAOD,EACJE,OAAO,KACPC,KAAK,CAAED,OAAQ,kBAAmBE,QAAS,oBAEhD,IAAMxB,EAAQmB,EAAIX,QAAQa,cAAcI,QAAQ,SAAU,IAC1D,IAGE,GAFAC,QAAQC,IAAI,MAAOT,IACJU,EAAIC,OAAO7B,EAAOkB,GACpB,iBDlEUY,EAAAC,GAAA,OAAApC,EAAAqB,WAAAC,YCmEvBe,CAAQhC,EAAOR,GACZyC,MAAK,SAACC,GACL,OAAqC,MAAjCA,EAAahC,SAASoB,OACjBF,EAAIE,OAAO,KAAKC,KAAK,CAC1BD,OAAQ,iBACRE,QAAS,wBAE+B,MAAjCU,EAAahC,SAASoB,OACxBF,EACJE,OAAO,KACPC,KAAK,CAAED,OAAQ,QAASE,QAAS,uBACM,MAAjCU,EAAahC,SAASoB,QAC/BH,EAAIgB,KAAOD,EAAapB,KAAKqB,KACtB7B,KAEAc,EAAIE,OAAO,KAAKC,KAAK,CAC1BD,OAAQ,QACRE,QAAS,iCAIR,SAACY,GACN,OAAOhB,EAAIE,OAAO,KAAKC,KAAK,CAC1BD,OAAQ,QACRE,QAAS,qBACTY,MAAAA,OAGN,MAAOA,GACP,OAAIA,GAA4B,uBAAnBA,SAAAA,EAAOZ,SACXJ,EAAIE,OAAO,KAAKC,KAAK,CAC1BD,OAAQ,gBACRE,QAAS,kBAGNJ,EAAIE,OAAO,KAAKC,KAAK,CAC1BD,OAAQ,gBACRE,QAAS"}
@@ -364,7 +364,7 @@ function _getUser() {
364
364
  _context.next = 3;
365
365
  return fetch(getServerBasePath({
366
366
  domainName: domainName
367
- }) + "/t-get-user/" + domainName, params);
367
+ }) + "/t-get-user", params);
368
368
  case 3:
369
369
  response = _context.sent;
370
370
  _context.next = 6;
@@ -385,24 +385,25 @@ function _getUser() {
385
385
  }
386
386
 
387
387
  var dauth = function dauth(_ref) {
388
- var ssid = _ref.ssid,
388
+ var tsk = _ref.tsk,
389
389
  domainName = _ref.domainName;
390
390
  return function (req, res, next) {
391
391
  if (!req.headers.authorization) {
392
392
  return res.status(403).send({
393
393
  status: 'token-not-found',
394
- mdKey: 'ensure_auth'
394
+ message: 'Token not found'
395
395
  });
396
396
  }
397
397
  var token = req.headers.authorization.replace(/['"]+/g, '');
398
398
  try {
399
- var verify = jwt.verify(token, ssid);
399
+ console.log('tsk', tsk);
400
+ var verify = jwt.verify(token, tsk);
400
401
  if (!verify) return;
401
402
  getUser(token, domainName).then(function (getUserFetch) {
402
403
  if (getUserFetch.response.status === 404) {
403
404
  return res.status(404).send({
404
- status: 'domain-not-found',
405
- message: 'Dauth domain does not exist'
405
+ status: 'user-not-found',
406
+ message: 'User does not exist'
406
407
  });
407
408
  } else if (getUserFetch.response.status === 500) {
408
409
  return res.status(500).send({
@@ -419,21 +420,22 @@ var dauth = function dauth(_ref) {
419
420
  });
420
421
  }
421
422
  })["catch"](function (error) {
422
- console.log('getDauthUser error', error);
423
- return next();
423
+ return res.status(500).send({
424
+ status: 'error',
425
+ message: 'Dauth server error',
426
+ error: error
427
+ });
424
428
  });
425
429
  } catch (error) {
426
430
  if (error && (error == null ? void 0 : error.message) === 'jwt expired') {
427
- return res.status(500).send({
431
+ return res.status(401).send({
428
432
  status: 'token-expired',
429
- message: 'El token ha expirado',
430
- mdKey: 'ensure_auth'
433
+ message: 'Token expired'
431
434
  });
432
435
  }
433
- return res.status(500).send({
436
+ return res.status(401).send({
434
437
  status: 'token-invalid',
435
- message: 'El token no es válido',
436
- mdKey: 'ensure_auth'
438
+ message: 'Token invalid'
437
439
  });
438
440
  }
439
441
  };
@@ -1 +1 @@
1
- {"version":3,"file":"dauth-md-node.esm.js","sources":["../src/api/utils/config.ts","../src/api/dauth.api.ts","../src/index.ts"],"sourcesContent":["const isLocalhost = process.env.NODE_ENV === 'development';\nexport const apiVersion = 'v1';\nexport const serverDomain = 'dauth.ovh';\n\nexport function getServerBasePath({ domainName }: { domainName: string }) {\n const serverPort = 4012;\n const serverLocalUrl = `http://localhost:${serverPort}/api/${apiVersion}`;\n const serverProdUrl = `https://${domainName}.${serverDomain}/api/${apiVersion}`;\n const serverBasePath = isLocalhost ? serverLocalUrl : serverProdUrl;\n return serverBasePath;\n}\n","import { getServerBasePath } from './utils/config';\nconst 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 `${getServerBasePath({ domainName })}/t-get-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 jwt from 'jsonwebtoken';\nimport { getUser } from './api/dauth.api';\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: {\n id: string;\n url: string;\n };\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);\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":["isLocalhost","process","env","NODE_ENV","apiVersion","serverDomain","getServerBasePath","_ref","domainName","serverPort","serverLocalUrl","serverProdUrl","serverBasePath","fetch","require","getUser","_x","_x2","_getUser","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","token","params","response","data","wrap","_callee$","_context","prev","next","method","headers","Authorization","sent","json","abrupt","stop","dauth","ssid","req","res","authorization","status","send","mdKey","replace","verify","jwt","then","getUserFetch","message","user","error","console","log"],"mappings":"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"}
1
+ {"version":3,"file":"dauth-md-node.esm.js","sources":["../src/api/utils/config.ts","../src/api/dauth.api.ts","../src/index.ts"],"sourcesContent":["const isLocalhost = process.env.NODE_ENV === 'development';\nexport const apiVersion = 'v1';\nexport const serverDomain = 'dauth.ovh';\n\nexport function getServerBasePath({ domainName }: { domainName: string }) {\n const serverPort = 4012;\n const serverLocalUrl = `http://localhost:${serverPort}/api/${apiVersion}`;\n const serverProdUrl = `https://${domainName}.${serverDomain}/api/${apiVersion}`;\n const serverBasePath = isLocalhost ? serverLocalUrl : serverProdUrl;\n return serverBasePath;\n}\n","import { getServerBasePath } from './utils/config';\nconst 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 `${getServerBasePath({ domainName })}/t-get-user`,\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 jwt from 'jsonwebtoken';\nimport { getUser } from './api/dauth.api';\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: {\n id: string;\n url: string;\n };\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 tsk,\n domainName,\n}: {\n tsk: 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', message: 'Token not found' });\n }\n const token = req.headers.authorization.replace(/['\"]+/g, '');\n try {\n console.log('tsk', tsk);\n const verify = jwt.verify(token, tsk as string);\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: 'user-not-found',\n message: 'User 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 return res.status(500).send({\n status: 'error',\n message: 'Dauth server error',\n error,\n });\n });\n } catch (error) {\n if (error && error?.message === 'jwt expired') {\n return res.status(401).send({\n status: 'token-expired',\n message: 'Token expired',\n });\n }\n return res.status(401).send({\n status: 'token-invalid',\n message: 'Token invalid',\n });\n }\n };\n};\n"],"names":["isLocalhost","process","env","NODE_ENV","apiVersion","serverDomain","getServerBasePath","_ref","domainName","serverPort","serverLocalUrl","serverProdUrl","serverBasePath","fetch","require","getUser","_x","_x2","_getUser","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","token","params","response","data","wrap","_callee$","_context","prev","next","method","headers","Authorization","sent","json","abrupt","stop","dauth","tsk","req","res","authorization","status","send","message","replace","console","log","verify","jwt","then","getUserFetch","user","error"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -39,8 +39,8 @@ interface TCustomResponse extends ExpressResponse {
39
39
  status(code: number): any;
40
40
  send(body?: any): any;
41
41
  }
42
- export declare const dauth: ({ ssid, domainName, }: {
43
- ssid: string;
42
+ export declare const dauth: ({ tsk, domainName, }: {
43
+ tsk: string;
44
44
  domainName: string;
45
45
  }) => (req: IRequestUser, res: TCustomResponse, next: NextFunction) => Handler | void;
46
46
  export {};
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.1.83",
2
+ "version": "0.1.85",
3
3
  "license": "MIT",
4
4
  "main": "dist/index.js",
5
5
  "typings": "dist/index.d.ts",
@@ -10,7 +10,7 @@ export async function getUser(token: string, domainName: string) {
10
10
  },
11
11
  };
12
12
  const response = await fetch(
13
- `${getServerBasePath({ domainName })}/t-get-user/${domainName}`,
13
+ `${getServerBasePath({ domainName })}/t-get-user`,
14
14
  params
15
15
  );
16
16
  const data = await response.json();
package/src/index.ts CHANGED
@@ -47,10 +47,10 @@ interface TCustomResponse extends ExpressResponse {
47
47
  }
48
48
 
49
49
  export const dauth = ({
50
- ssid,
50
+ tsk,
51
51
  domainName,
52
52
  }: {
53
- ssid: string;
53
+ tsk: string;
54
54
  domainName: string;
55
55
  }) => {
56
56
  return (
@@ -61,18 +61,19 @@ export const dauth = ({
61
61
  if (!req.headers.authorization) {
62
62
  return res
63
63
  .status(403)
64
- .send({ status: 'token-not-found', mdKey: 'ensure_auth' });
64
+ .send({ status: 'token-not-found', message: 'Token not found' });
65
65
  }
66
66
  const token = req.headers.authorization.replace(/['"]+/g, '');
67
67
  try {
68
- const verify = jwt.verify(token, ssid as string);
68
+ console.log('tsk', tsk);
69
+ const verify = jwt.verify(token, tsk as string);
69
70
  if (!verify) return;
70
71
  getUser(token, domainName)
71
72
  .then((getUserFetch: any) => {
72
73
  if (getUserFetch.response.status === 404) {
73
74
  return res.status(404).send({
74
- status: 'domain-not-found',
75
- message: 'Dauth domain does not exist',
75
+ status: 'user-not-found',
76
+ message: 'User does not exist',
76
77
  });
77
78
  } else if (getUserFetch.response.status === 500) {
78
79
  return res
@@ -89,21 +90,22 @@ export const dauth = ({
89
90
  }
90
91
  })
91
92
  .catch((error: any) => {
92
- console.log('getDauthUser error', error);
93
- return next();
93
+ return res.status(500).send({
94
+ status: 'error',
95
+ message: 'Dauth server error',
96
+ error,
97
+ });
94
98
  });
95
99
  } catch (error) {
96
100
  if (error && error?.message === 'jwt expired') {
97
- return res.status(500).send({
101
+ return res.status(401).send({
98
102
  status: 'token-expired',
99
- message: 'El token ha expirado',
100
- mdKey: 'ensure_auth',
103
+ message: 'Token expired',
101
104
  });
102
105
  }
103
- return res.status(500).send({
106
+ return res.status(401).send({
104
107
  status: 'token-invalid',
105
- message: 'El token no es válido',
106
- mdKey: 'ensure_auth',
108
+ message: 'Token invalid',
107
109
  });
108
110
  }
109
111
  };