@lucaapp/service-utils 1.62.0 → 1.62.2

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.
@@ -321,50 +321,52 @@ new Promise(async (resolve) => {
321
321
  });
322
322
  const mountEndpoint = (router, method, path, options, handler, debug) => {
323
323
  (0, assert_1.default)(options.responses.length > 0, 'You need to specify at least one response');
324
- router[method](path, async (request, response) => {
325
- try {
326
- let handlerRequestBody;
327
- let handlerRequestParams;
328
- let handlerRequestQuery;
329
- let handlerRequestHeaders;
324
+ router[method](path, (request, response) => {
325
+ (async () => {
330
326
  try {
331
- // parse request schemas
332
- handlerRequestBody = ((await options.schemas?.body?.parseAsync(request.body)) || undefined);
333
- handlerRequestParams = ((await options.schemas?.params?.parseAsync(request.params)) || undefined);
334
- handlerRequestQuery = ((await options.schemas?.query?.parseAsync(request.query)) || undefined);
335
- handlerRequestHeaders = ((await options.schemas?.headers?.parseAsync(request.headers)) || undefined);
336
- }
337
- catch (error) {
338
- if (error instanceof zod_1.ZodError) {
339
- return sendBadRequestZodError(response, error);
327
+ let handlerRequestBody;
328
+ let handlerRequestParams;
329
+ let handlerRequestQuery;
330
+ let handlerRequestHeaders;
331
+ try {
332
+ // parse request schemas
333
+ handlerRequestBody = ((await options.schemas?.body?.parseAsync(request.body)) || undefined);
334
+ handlerRequestParams = ((await options.schemas?.params?.parseAsync(request.params)) || undefined);
335
+ handlerRequestQuery = ((await options.schemas?.query?.parseAsync(request.query)) || undefined);
336
+ handlerRequestHeaders = ((await options.schemas?.headers?.parseAsync(request.headers)) || undefined);
340
337
  }
341
- if (error instanceof libphonenumber_js_1.ParseError) {
342
- const newError = new Error(error.message);
343
- return sendBadRequestError(response, newError);
338
+ catch (error) {
339
+ if (error instanceof zod_1.ZodError) {
340
+ return sendBadRequestZodError(response, error);
341
+ }
342
+ if (error instanceof libphonenumber_js_1.ParseError) {
343
+ const newError = new Error(error.message);
344
+ return sendBadRequestError(response, newError);
345
+ }
346
+ throw error;
344
347
  }
345
- throw error;
346
- }
347
- const handlerRequest = {
348
- body: handlerRequestBody,
349
- params: handlerRequestParams,
350
- query: handlerRequestQuery,
351
- headers: handlerRequestHeaders,
352
- };
353
- const ctx = {};
354
- if (options.middlewares instanceof Array) {
355
- for (const middleware of options.middlewares) {
356
- const shouldContinue = await handleMiddleware(middleware, ctx, request, response, debug);
357
- if (!shouldContinue)
358
- return;
348
+ const handlerRequest = {
349
+ body: handlerRequestBody,
350
+ params: handlerRequestParams,
351
+ query: handlerRequestQuery,
352
+ headers: handlerRequestHeaders,
353
+ };
354
+ const ctx = {};
355
+ if (options.middlewares instanceof Array) {
356
+ for (const middleware of options.middlewares) {
357
+ const shouldContinue = await handleMiddleware(middleware, ctx, request, response, debug);
358
+ if (!shouldContinue)
359
+ return;
360
+ }
359
361
  }
362
+ await handler(handlerRequest, ctx, async (controllerResponse) => {
363
+ await validateAndSendResponse(response, controllerResponse, options.responses, debug);
364
+ }, response);
360
365
  }
361
- await handler(handlerRequest, ctx, async (controllerResponse) => {
362
- await validateAndSendResponse(response, controllerResponse, options.responses, debug);
363
- }, response);
364
- }
365
- catch (error) {
366
- sendErrorResponse(response, error, options.errors, debug);
367
- }
366
+ catch (error) {
367
+ sendErrorResponse(response, error, options.errors, debug);
368
+ }
369
+ })();
368
370
  });
369
371
  };
370
372
  exports.mountEndpoint = mountEndpoint;
@@ -1,6 +1,9 @@
1
1
  export declare enum OperatorRole {
2
- Owner = "Owner",
3
- Admin = "Admin",
2
+ Owner = "Owner",// level 6
3
+ Admin = "Admin",// level 5
4
+ Finance = "Finance",// level 4
5
+ Manager = "Manager",// level 3
6
+ Supervisor = "Supervisor",// level 2
4
7
  Viewer = "Viewer"
5
8
  }
6
9
  export type OperatorLocationGroup = {
@@ -5,5 +5,8 @@ var OperatorRole;
5
5
  (function (OperatorRole) {
6
6
  OperatorRole["Owner"] = "Owner";
7
7
  OperatorRole["Admin"] = "Admin";
8
+ OperatorRole["Finance"] = "Finance";
9
+ OperatorRole["Manager"] = "Manager";
10
+ OperatorRole["Supervisor"] = "Supervisor";
8
11
  OperatorRole["Viewer"] = "Viewer";
9
12
  })(OperatorRole || (exports.OperatorRole = OperatorRole = {}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lucaapp/service-utils",
3
- "version": "1.62.0",
3
+ "version": "1.62.2",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "files": [
@@ -21,8 +21,8 @@
21
21
  "@asteasolutions/zod-to-openapi": "6.1.0",
22
22
  "@hapi/boom": "^10.0.0",
23
23
  "@tsconfig/node18": "1.0.1",
24
- "@types/express": "4.17.15",
25
- "@types/express-serve-static-core": "^4.17.43",
24
+ "@types/express": "5.0.0",
25
+ "@types/express-serve-static-core": "5.0.5",
26
26
  "@types/node": "18.18.2",
27
27
  "@types/response-time": "^2.3.5",
28
28
  "@types/swagger-ui-express": "4.1.3",
@@ -41,14 +41,14 @@
41
41
  "prom-client": "14.1.0",
42
42
  "response-time": "^2.3.2",
43
43
  "sequelize": "6.32.0",
44
- "swagger-ui-express": "4.5.0",
44
+ "sqlite3": "5.1.1",
45
+ "swagger-ui-express": "5.0.1",
45
46
  "url-value-parser": "^2.2.0",
46
47
  "uuid": "^9.0.0",
47
48
  "zod": "3.22.3"
48
49
  },
49
50
  "devDependencies": {
50
51
  "@types/busboy": "^1.5.3",
51
- "@types/express": "4.17.15",
52
52
  "@types/lodash": "^4.14.187",
53
53
  "@types/negotiator": "^0.6.1",
54
54
  "@types/pino-http": "5.8.4",
@@ -65,7 +65,6 @@
65
65
  "prettier": "2.7.1",
66
66
  "semantic-release": "^19.0.3",
67
67
  "semantic-release-monorepo": "^7.0.5",
68
- "sqlite3": "5.1.1",
69
68
  "supertest": "^6.3.3",
70
69
  "typescript": "5.5.3",
71
70
  "vite-tsconfig-paths": "4.3.2",