@qelos/plugin-play 3.1.4 → 3.1.6

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.
@@ -3,6 +3,8 @@ import manifest from './manifest';
3
3
  import handlers, { onCallback, onFrontendAuthorization, onNewTenant, onRefreshToken } from './handlers';
4
4
  import config from './config';
5
5
  import { getSdk, getSdkForUrl } from './sdk';
6
+ import { ResponseError } from './response-error';
7
+ import logger from './logger';
6
8
  const notAuthorized = { message: 'you are not authorized' };
7
9
  function getHostname(fullUrl) {
8
10
  if (!fullUrl.startsWith('http')) {
@@ -105,12 +107,23 @@ export function getRegisterRoute() {
105
107
  const tenantSdk = getSdkForUrl(appUrl);
106
108
  const emailSplit = email.split('@');
107
109
  if (emailSplit.length === 2 && getHostname(appUrl) !== emailSplit[1].split(':')[0]) {
108
- throw new Error('email must be provided from the same app url');
110
+ throw new ResponseError('email must be provided from the same app url: ' + appUrl);
109
111
  }
110
- // email will be: {pluginId}.{tenantId}@${tenantHostname}
111
- const { payload } = await tenantSdk.authentication.oAuthSignin({ email, password });
112
- if (!payload.user?.roles?.includes('plugin')) {
113
- throw new Error('should retrieve a plugin user to app: ' + appUrl);
112
+ let currentAuthPayload;
113
+ try {
114
+ // email will be: {pluginId}.{tenantId}@${tenantHostname}
115
+ const { payload } = await tenantSdk.authentication.oAuthSignin({ email, password });
116
+ if (!payload.user?.roles?.includes('plugin')) {
117
+ throw new ResponseError('should retrieve a plugin user to app: ' + appUrl);
118
+ }
119
+ currentAuthPayload = payload;
120
+ }
121
+ catch (err) {
122
+ logger.error('failure during login to qelos app', { email, appUrl, err });
123
+ if (err instanceof ResponseError) {
124
+ throw err;
125
+ }
126
+ throw new ResponseError('failed to login to qelos tenant: ' + appUrl);
114
127
  }
115
128
  const newPayload = {
116
129
  sub: '',
@@ -142,25 +155,41 @@ export function getRegisterRoute() {
142
155
  appUrl,
143
156
  email,
144
157
  password,
145
- currentAuthPayload: payload
158
+ currentAuthPayload
146
159
  });
147
160
  newPayload.sub = user._id;
148
161
  return { payload: newPayload };
149
162
  });
150
163
  }
164
+ function getMissingCredentialsError({ email, password, appUrl }) {
165
+ if (email && password && appUrl) {
166
+ return null;
167
+ }
168
+ const missing = [];
169
+ if (email) {
170
+ missing.push('email');
171
+ }
172
+ if (password) {
173
+ missing.push('password');
174
+ }
175
+ if (appUrl) {
176
+ missing.push('appUrl');
177
+ }
178
+ return { message: 'missing credentials: ' + missing.join(', ') };
179
+ }
151
180
  return {
152
181
  method: 'POST',
153
182
  url: manifest.registerUrl,
154
183
  handler: async (request, reply) => {
155
- const { email, password, appUrl } = request.body || {};
156
- if (!(email && password && appUrl)) {
184
+ const missingErr = getMissingCredentialsError(request.body || {});
185
+ if (missingErr) {
157
186
  reply.statusCode = 401;
158
- return notAuthorized;
187
+ return missingErr;
159
188
  }
160
189
  try {
161
190
  if (handlers.newTenant.length) {
162
191
  for (let handler of handlers.newTenant) {
163
- const result = await handler({ email, password, appUrl }, request);
192
+ const result = await handler(request.body, request);
164
193
  if (result?.payload) {
165
194
  return {
166
195
  [manifest.authAcquire.refreshTokenKey]: jwt.sign(result.payload, config.refreshTokenSecret, { expiresIn: '90d' }),
@@ -174,6 +203,10 @@ export function getRegisterRoute() {
174
203
  if (config.dev) {
175
204
  console.log(err);
176
205
  }
206
+ if (err instanceof ResponseError) {
207
+ reply.statusCode = err.status;
208
+ return { message: err.responseMessage };
209
+ }
177
210
  }
178
211
  reply.statusCode = 401;
179
212
  return notAuthorized;
@@ -1 +1 @@
1
- {"version":3,"file":"authentication.js","sourceRoot":"","sources":["../src/authentication.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authentication.js","sourceRoot":"","sources":["../src/authentication.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,cAAc,CAAC;AAG/B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,QAAQ,EAAE,EAAC,UAAU,EAAE,uBAAuB,EAAE,WAAW,EAAE,cAAc,EAAkB,MAAM,YAAY,CAAC;AACvH,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,EAAC,MAAM,EAAE,YAAY,EAAC,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAC,aAAa,EAAC,MAAM,kBAAkB,CAAC;AAC/C,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,MAAM,aAAa,GAAG,EAAC,OAAO,EAAE,wBAAwB,EAAC,CAAC;AAE1D,SAAS,WAAW,CAAC,OAAe;IAClC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QAC/B,OAAO,GAAG,UAAU,GAAG,OAAO,CAAC;KAChC;IACD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,OAAO,GAAG,CAAC,QAAQ,CAAC;AACtB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,GAAmB;IACzD,MAAM,EAAC,aAAa,EAAC,GAAG,GAAG,CAAC,OAAO,CAAC;IAEpC,MAAM,KAAK,GAAG,aAAa,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3C,IAAI,CAAC,KAAK,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;KACzD;IAED,IAAI;QACF,GAAG,CAAC,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAC;KACjE;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,MAAM,CAAC,GAAG,EAAE;YACd,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SAChB;QACD,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;KACtD;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,GAAmB;IACzD,MAAM,EAAC,IAAI,EAAC,GAAG,GAAG,CAAC,OAAO,CAAC;IAC3B,IAAI,CAAC,IAAI,EAAE;QACT,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;KACxD;IACD,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;IAE7C,IAAI,CAAC,KAAK,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;KAC3C;IAED,IAAI;QACF,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAC;QACzD,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;QAChC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;KACtB;IAAC,MAAM;QACN,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;KACtD;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB;IAElC,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC;IAEhC,IAAI,MAAM,CAAC,QAAQ,EAAE;QACnB,cAAc,CAAC,KAAK,EAAE,EAAC,GAAG,EAAE,UAAU,GAAG,EAAE,EAAC,EAAE,EAAE;YAC9C,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACzC,IAAI,UAAU,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,gBAAgB,EAAE,eAAe,EAAE;gBACpE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;aACtD;YACD,MAAM,UAAU,GAAoB;gBAClC,GAAG;gBACH,UAAU,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC;aACrE,CAAA;YACD,MAAM,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,EAAC,gBAAgB,EAAE,EAAC,eAAe,EAAE,UAAU,CAAC,UAAU,EAAC,EAAC,CAAC,CAAA;YACxF,OAAO,EAAC,OAAO,EAAE,UAAU,EAAC,CAAC;QAC/B,CAAC,CAAC,CAAA;KACH;IAED,OAAO;QACL,MAAM,EAAE,MAAM;QACd,GAAG,EAAE,QAAQ,CAAC,WAAW,CAAC,eAAe;QACzC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;YAChC,MAAM,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7E,IAAI,CAAC,oBAAoB,EAAE;gBACzB,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC;gBACvB,OAAO,aAAa,CAAC;aACtB;YACD,IAAI,OAAwB,CAAC;YAC7B,IAAI;gBACF,IAAI,CAAC,oBAAoB,IAAI,oBAAoB,KAAK,WAAW,EAAE;oBACjE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;iBACpD;gBACD,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,oBAAoB,EAAE,MAAM,CAAC,kBAAkB,CAAC,CAAC;gBACtE,IAAI,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE;oBAChC,KAAK,IAAI,OAAO,IAAI,QAAQ,CAAC,YAAY,EAAE;wBACzC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;wBAC/C,IAAI,MAAM,EAAE,OAA0B,EAAE;4BACtC,OAAO;gCACL,CAAC,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,kBAAkB,EAAE,EAAC,SAAS,EAAE,KAAK,EAAC,CAAC;gCAC/G,CAAC,QAAQ,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,iBAAiB,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC;6BAC7G,CAAA;yBACF;qBACF;iBACF;aACF;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,MAAM,CAAC,GAAG,EAAE;oBACd,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;iBAClB;aACF;YACD,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC;YACvB,OAAO,aAAa,CAAC;QACvB,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB;IAE9B,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC;IAEhC,IAAI,MAAM,CAAC,QAAQ,EAAE;QACnB,WAAW,CAAC,KAAK,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAC,EAAE,EAAE;YAC9C,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;YACtC,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACpC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,CAAC,MAAM,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gBAClF,MAAM,IAAI,aAAa,CAAC,gDAAgD,GAAG,MAAM,CAAC,CAAC;aACpF;YACD,IAAI,kBAAkB,CAAC;YACvB,IAAI;gBACF,yDAAyD;gBACzD,MAAM,EAAC,OAAO,EAAC,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,WAAW,CAAC,EAAC,KAAK,EAAE,QAAQ,EAAC,CAAC,CAAC;gBAChF,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE;oBAC5C,MAAM,IAAI,aAAa,CAAC,wCAAwC,GAAG,MAAM,CAAC,CAAC;iBAC5E;gBACD,kBAAkB,GAAG,OAAO,CAAC;aAC9B;YAAC,OAAO,GAAG,EAAE;gBACZ,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,EAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAC,CAAC,CAAA;gBACvE,IAAI,GAAG,YAAY,aAAa,EAAE;oBAChC,MAAM,GAAG,CAAC;iBACX;gBACD,MAAM,IAAI,aAAa,CAAC,mCAAmC,GAAG,MAAM,CAAC,CAAC;aACvE;YACD,MAAM,UAAU,GAAoB;gBAClC,GAAG,EAAE,EAAE;gBACP,UAAU,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC;aACrE,CAAA;YACD,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;YACpE,IAAI,IAAI,CAAC;YACT,IAAI,YAAY,EAAE;gBAChB,IAAI,GAAG,YAAY,CAAC;gBACpB,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;oBAC9B,SAAS,EAAE,MAAM;oBACjB,QAAQ,EAAE,kBAAkB;oBAC5B,KAAK;oBACL,QAAQ;oBACR,gBAAgB,EAAE,EAAC,eAAe,EAAE,UAAU,CAAC,UAAU,EAAC;iBAC3D,CAAC,CAAC;aACJ;iBAAM;gBACL,IAAI,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;oBAC3B,SAAS,EAAE,MAAM;oBACjB,QAAQ,EAAE,kBAAkB;oBAC5B,KAAK;oBACL,QAAQ;oBACR,KAAK,EAAE,CAAC,MAAM,CAAC;oBACf,gBAAgB,EAAE,EAAC,eAAe,EAAE,UAAU,CAAC,UAAU,EAAC;iBAC3D,CAAC,CAAC;aACJ;YAED,MAAM,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,iBAAiB,EAAE;gBAClE,MAAM;gBACN,KAAK;gBACL,QAAQ;gBACR,kBAAkB;aACnB,CAAC,CAAA;YACF,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;YAC1B,OAAO,EAAC,OAAO,EAAE,UAAU,EAAC,CAAC;QAC/B,CAAC,CAAC,CAAA;KACH;IAED,SAAS,0BAA0B,CAAC,EAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAM;QAChE,IAAI,KAAK,IAAI,QAAQ,IAAI,MAAM,EAAE;YAC/B,OAAO,IAAI,CAAC;SACb;QACD,MAAM,OAAO,GAAG,EAAE,CAAC;QACnB,IAAI,KAAK,EAAE;YACT,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SACvB;QACD,IAAI,QAAQ,EAAE;YACZ,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SAC1B;QACD,IAAI,MAAM,EAAE;YACV,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACxB;QACD,OAAO,EAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAC,CAAA;IAChE,CAAC;IAED,OAAO;QACL,MAAM,EAAE,MAAM;QACd,GAAG,EAAE,QAAQ,CAAC,WAAW;QACzB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;YAChC,MAAM,UAAU,GAAG,0BAA0B,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YAClE,IAAI,UAAU,EAAE;gBACd,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC;gBACvB,OAAO,UAAU,CAAC;aACnB;YACD,IAAI;gBACF,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE;oBAC7B,KAAK,IAAI,OAAO,IAAI,QAAQ,CAAC,SAAS,EAAE;wBACtC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;wBACpD,IAAI,MAAM,EAAE,OAA0B,EAAE;4BACtC,OAAO;gCACL,CAAC,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,kBAAkB,EAAE,EAAC,SAAS,EAAE,KAAK,EAAC,CAAC;gCAC/G,CAAC,QAAQ,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,iBAAiB,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC;6BAC7G,CAAA;yBACF;qBACF;iBACF;aACF;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,MAAM,CAAC,GAAG,EAAE;oBACd,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;iBAClB;gBACD,IAAI,GAAG,YAAY,aAAa,EAAE;oBAChC,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC;oBAC9B,OAAO,EAAC,OAAO,EAAE,GAAG,CAAC,eAAe,EAAC,CAAC;iBACvC;aACF;YACD,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC;YACvB,OAAO,aAAa,CAAC;QACvB,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,IAAI,MAAM,CAAC,QAAQ,EAAE;QACnB,UAAU,CAAC,KAAK,EAAE,EAAC,IAAI,EAAE,SAAS,EAAC,EAAE,OAAO,EAAE,EAAE;YAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YACzD,wBAAwB;YACxB,mCAAmC;YACnC,yDAAyD;YACzD,MAAM,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;gBAC7B,WAAW,EAAE,SAAS;gBACtB,SAAS,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,EAAE;gBACvD,WAAW,EAAE;oBACX,IAAI;oBACJ,IAAI;oBACJ,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;oBACnB,MAAM,EAAE,OAAO,CAAC,aAAa;iBAC9B;aACF,CAAC,CAAA;YACF,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;KACJ;IAED,OAAO;QACL,MAAM,EAAE,KAAK;QACb,GAAG,EAAE,QAAQ,CAAC,WAAW;QACzB,UAAU,EAAE,iBAAiB;QAC7B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;YAChC,MAAM,WAAW,GAAQ,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;YAE7C,IAAI;gBACF,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBACjD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC3F,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;gBAEpB,KAAK,IAAI,OAAO,IAAI,QAAQ,CAAC,QAAQ,EAAE;oBACrC,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,EAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,IAAI,EAAC,EAAE,OAAO,CAAC,CAAA;oBAEtE,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;wBACpC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;wBAC5C,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC;4BAC9C,IAAI;4BACJ,MAAM,EAAE,OAAO,CAAC,aAAa;yBAC9B,EAAE,MAAM,CAAC,iBAAiB,EAAE,EAAC,SAAS,EAAE,OAAO,EAAC,CAAC,CAAC,CAAC;wBAEpD,OAAO;4BACL,SAAS,EAAE,SAAS,CAAC,IAAI;yBAC1B,CAAA;qBACF;iBACF;aACF;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,MAAM,CAAC,GAAG,EAAE;oBACd,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;iBACvC;aACF;YACD,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC;YACvB,OAAO,aAAa,CAAC;QACvB,CAAC;KACF,CAAA;AACH,CAAC;AAED,MAAM,UAAU,6BAA6B;IAC3C,IAAI,mBAAmB,GAA4B,KAAK,IAAI,EAAE;QAC5D,OAAO;IACT,CAAC,CAAA;IACD,IAAI,MAAM,CAAC,QAAQ,EAAE;QACnB,uBAAuB,CAAC,KAAK,EAAE,EAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAC,EAAE,EAAE;YAC1D,IAAI;gBACF,MAAM,KAAK,GAAG,MAAM,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,GAAG,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;gBACvF,IAAI,KAAK,IAAI,KAAK,CAAC,WAAW,EAAE;oBAC9B,OAAO;wBACL,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC,IAAI;wBAC5B,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,EAAC,EAAE,MAAM,CAAC,iBAAiB,EAAE,EAAC,SAAS,EAAE,OAAO,EAAC,CAAC;qBACzG,CAAA;iBACF;aACF;YAAC,MAAM;gBACN,EAAE;aACH;YACD,OAAO;QACT,CAAC,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,GAAG,EAAE;YACd,mBAAmB,GAAG,KAAK,EAAE,KAAK,EAAE,EAAE;gBACpC,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,EAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,aAAa,EAAC,CAAC,CAAC;gBAC5F,MAAM,IAAI,GAAG;oBACX,GAAG,EAAE,QAAQ,CAAC,GAAG;oBACjB,KAAK,EAAE,QAAQ,CAAC,KAAK;oBACrB,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oBAC3B,KAAK,EAAE,QAAQ,CAAC,KAAK;iBACtB,CAAA;gBACD,MAAM,MAAM,GAAG;oBACb,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,UAAU,EAAE,IAAI,CAAC,KAAK;iBACvB,CAAC;gBACF,KAAK,CAAC,SAAS,CAAC,eAAe,EAAE,GAAG,CAAC,IAAI,CAAC;oBACxC,IAAI,EAAE,SAAS;oBACf,IAAI;oBACJ,MAAM;iBACP,EAAE,MAAM,CAAC,iBAAiB,EAAE,EAAC,SAAS,EAAE,OAAO,EAAC,CAAC,CAAC,CAAC;gBACpD,OAAO;oBACL,IAAI;oBACJ,MAAM;iBACP,CAAC;YACJ,CAAC,CAAA;SACF;KACF;IAGD,OAAO;QACL,MAAM,EAAE,MAAM;QACd,GAAG,EAAE,QAAQ,CAAC,YAAY;QAC1B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;YAChC,MAAM,EAAC,SAAS,EAAE,KAAK,EAAC,GAAQ,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;YACnD,IAAI,SAAS,IAAI,KAAK,EAAE;gBACtB,IAAI;oBACF,MAAM,EAAC,IAAI,EAAE,MAAM,EAAC,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAC;oBACnE,KAAK,IAAI,OAAO,IAAI,QAAQ,CAAC,YAAY,EAAE;wBACzC,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,EAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAC,EAAE,OAAO,CAAC,CAAC;wBAErE,IAAI,UAAU,IAAI,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,KAAK,EAAE;4BACrD,KAAK,CAAC,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;4BAC9D,OAAO;gCACL,IAAI;gCACJ,MAAM;6BACP,CAAA;yBACF;qBACF;iBACF;gBAAC,OAAO,GAAG,EAAE;oBACZ,IAAI,MAAM,CAAC,GAAG,EAAE;wBACd,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;qBACvC;iBACF;aACF;YACD,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAClD,IAAI,CAAC,QAAQ,EAAE;gBACb,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC;gBACvB,OAAO,aAAa,CAAC;aACtB;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;KACF,CAAA;AACH,CAAC;AAED,MAAM,UAAU,+BAA+B;IAC7C,OAAO;QACL,MAAM,EAAE,MAAM;QACd,GAAG,EAAE,QAAQ,CAAC,cAAc;QAC5B,UAAU,EAAE,iBAAiB;QAC7B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;YAChC,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;YAClC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;YACrC,KAAK,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,EAAE,EAAE,EAAE,EAAC,MAAM,EAAE,CAAC,EAAC,CAAC,CAAC;YAClD,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC,CAAC,CAAC;YACtE,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ declare const logger: {
2
+ log: (...data: any[]) => void;
3
+ error: (...data: any[]) => void;
4
+ };
5
+ export default logger;
package/dist/logger.js ADDED
@@ -0,0 +1,12 @@
1
+ import config from './config';
2
+ const showLogs = config.dev || process.env.VERBOSE_LOGS;
3
+ const logger = {
4
+ log: (() => undefined),
5
+ error: (() => undefined)
6
+ };
7
+ if (showLogs) {
8
+ logger.log = console.log;
9
+ logger.error = console.error;
10
+ }
11
+ export default logger;
12
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;AACxD,MAAM,MAAM,GAAG;IACb,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,SAAS,CAA+B;IACpD,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,SAAS,CAA+B;CACvD,CAAA;AAED,IAAI,QAAQ,EAAE;IACZ,MAAM,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IACzB,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;CAC9B;AAED,eAAe,MAAM,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare class ResponseError extends Error {
2
+ status: number;
3
+ responseMessage?: string;
4
+ constructor(message: string, status?: number, responseMessage?: string);
5
+ }
@@ -0,0 +1,13 @@
1
+ export class ResponseError extends Error {
2
+ status;
3
+ responseMessage;
4
+ constructor(message, status = 401, responseMessage) {
5
+ super(message);
6
+ this.status = status;
7
+ this.responseMessage = responseMessage;
8
+ if (!this.responseMessage) {
9
+ this.responseMessage = message;
10
+ }
11
+ }
12
+ }
13
+ //# sourceMappingURL=response-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-error.js","sourceRoot":"","sources":["../src/response-error.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,aAAc,SAAQ,KAAK;IACF;IAA6B;IAAjE,YAAY,OAAe,EAAS,SAAiB,GAAG,EAAS,eAAwB;QACvF,KAAK,CAAC,OAAO,CAAC,CAAA;QADoB,WAAM,GAAN,MAAM,CAAc;QAAS,oBAAe,GAAf,eAAe,CAAS;QAEvF,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACzB,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC;SAChC;IACH,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qelos/plugin-play",
3
- "version": "3.1.4",
3
+ "version": "3.1.6",
4
4
  "description": "Play a plugin for Qelos!",
5
5
  "main": "./dist/index.js",
6
6
  "scripts": {
@@ -5,11 +5,13 @@ import manifest from './manifest';
5
5
  import handlers, {onCallback, onFrontendAuthorization, onNewTenant, onRefreshToken, StandardPayload} from './handlers';
6
6
  import config from './config';
7
7
  import {getSdk, getSdkForUrl} from './sdk';
8
+ import {ResponseError} from './response-error';
9
+ import logger from './logger';
8
10
 
9
11
  const notAuthorized = {message: 'you are not authorized'};
10
12
 
11
13
  function getHostname(fullUrl: string) {
12
- if(!fullUrl.startsWith('http')) {
14
+ if (!fullUrl.startsWith('http')) {
13
15
  fullUrl = 'https://' + fullUrl;
14
16
  }
15
17
  const url = new URL(fullUrl);
@@ -120,12 +122,22 @@ export function getRegisterRoute(): RouteOptions {
120
122
  const tenantSdk = getSdkForUrl(appUrl)
121
123
  const emailSplit = email.split('@');
122
124
  if (emailSplit.length === 2 && getHostname(appUrl) !== emailSplit[1].split(':')[0]) {
123
- throw new Error('email must be provided from the same app url');
125
+ throw new ResponseError('email must be provided from the same app url: ' + appUrl);
124
126
  }
125
- // email will be: {pluginId}.{tenantId}@${tenantHostname}
126
- const {payload} = await tenantSdk.authentication.oAuthSignin({email, password});
127
- if (!payload.user?.roles?.includes('plugin')) {
128
- throw new Error('should retrieve a plugin user to app: ' + appUrl);
127
+ let currentAuthPayload;
128
+ try {
129
+ // email will be: {pluginId}.{tenantId}@${tenantHostname}
130
+ const {payload} = await tenantSdk.authentication.oAuthSignin({email, password});
131
+ if (!payload.user?.roles?.includes('plugin')) {
132
+ throw new ResponseError('should retrieve a plugin user to app: ' + appUrl);
133
+ }
134
+ currentAuthPayload = payload;
135
+ } catch (err) {
136
+ logger.error('failure during login to qelos app', {email, appUrl, err})
137
+ if (err instanceof ResponseError) {
138
+ throw err;
139
+ }
140
+ throw new ResponseError('failed to login to qelos tenant: ' + appUrl);
129
141
  }
130
142
  const newPayload: StandardPayload = {
131
143
  sub: '',
@@ -157,26 +169,43 @@ export function getRegisterRoute(): RouteOptions {
157
169
  appUrl,
158
170
  email,
159
171
  password,
160
- currentAuthPayload: payload
172
+ currentAuthPayload
161
173
  })
162
174
  newPayload.sub = user._id;
163
175
  return {payload: newPayload};
164
176
  })
165
177
  }
166
178
 
179
+ function getMissingCredentialsError({email, password, appUrl}: any) {
180
+ if (email && password && appUrl) {
181
+ return null;
182
+ }
183
+ const missing = [];
184
+ if (email) {
185
+ missing.push('email');
186
+ }
187
+ if (password) {
188
+ missing.push('password');
189
+ }
190
+ if (appUrl) {
191
+ missing.push('appUrl');
192
+ }
193
+ return {message: 'missing credentials: ' + missing.join(', ')}
194
+ }
195
+
167
196
  return {
168
197
  method: 'POST',
169
198
  url: manifest.registerUrl,
170
199
  handler: async (request, reply) => {
171
- const {email, password, appUrl} = request.body || {} as any;
172
- if (!(email && password && appUrl)) {
200
+ const missingErr = getMissingCredentialsError(request.body || {});
201
+ if (missingErr) {
173
202
  reply.statusCode = 401;
174
- return notAuthorized;
203
+ return missingErr;
175
204
  }
176
205
  try {
177
206
  if (handlers.newTenant.length) {
178
207
  for (let handler of handlers.newTenant) {
179
- const result = await handler({email, password, appUrl}, request);
208
+ const result = await handler(request.body, request);
180
209
  if (result?.payload as StandardPayload) {
181
210
  return {
182
211
  [manifest.authAcquire.refreshTokenKey]: jwt.sign(result.payload, config.refreshTokenSecret, {expiresIn: '90d'}),
@@ -189,6 +218,10 @@ export function getRegisterRoute(): RouteOptions {
189
218
  if (config.dev) {
190
219
  console.log(err);
191
220
  }
221
+ if (err instanceof ResponseError) {
222
+ reply.statusCode = err.status;
223
+ return {message: err.responseMessage};
224
+ }
192
225
  }
193
226
  reply.statusCode = 401;
194
227
  return notAuthorized;
package/src/logger.ts ADDED
@@ -0,0 +1,14 @@
1
+ import config from './config';
2
+
3
+ const showLogs = config.dev || process.env.VERBOSE_LOGS;
4
+ const logger = {
5
+ log: (() => undefined) as ((...data: any[]) => void),
6
+ error: (() => undefined) as ((...data: any[]) => void)
7
+ }
8
+
9
+ if (showLogs) {
10
+ logger.log = console.log;
11
+ logger.error = console.error;
12
+ }
13
+
14
+ export default logger;
@@ -0,0 +1,8 @@
1
+ export class ResponseError extends Error {
2
+ constructor(message: string, public status: number = 401, public responseMessage?: string) {
3
+ super(message)
4
+ if (!this.responseMessage) {
5
+ this.responseMessage = message;
6
+ }
7
+ }
8
+ }