@myxtra/microservice 0.1.0 → 0.1.1

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.
package/dist/index.d.mts CHANGED
@@ -1,5 +1,12 @@
1
- import { FastifyPluginAsync, FastifyPluginCallback, FastifyInstance } from 'fastify';
1
+ import { FastifyPluginAsync, FastifyPluginCallback, FastifyRequest, FastifyInstance } from 'fastify';
2
2
  import { z } from 'zod';
3
+ import { BaseApi, Api } from '@myxtra/api';
4
+
5
+ declare const MOCKED_JWT_NAME = "toolkit@systemtest.dcs";
6
+ declare const MOCKED_JWT_HEADER: string;
7
+ declare const MOCKED_JWT_PAYLOAD: string;
8
+ declare const MOCKED_JWT_SIGNATURE: string;
9
+ declare const MOCKED_BEARER_TOKEN: string;
3
10
 
4
11
  declare const _default$1: FastifyPluginAsync<never>;
5
12
 
@@ -39,7 +46,12 @@ declare const validationError: z.ZodObject<{
39
46
  }>;
40
47
  declare const _default: FastifyPluginCallback<never>;
41
48
 
49
+ declare const createApi: <T extends BaseApi>(Api: Api<T>, request: FastifyRequest) => T;
50
+
51
+ type Language = 'nl' | 'fr';
52
+ declare const getLanguage: (acceptLanguage?: string) => Language;
53
+
42
54
  declare const DEFAULT_SPEC_FILE_URL = "../.azure/apim/swagger.json";
43
55
  declare const generateSwagger: (app: FastifyInstance, specFile: URL) => void;
44
56
 
45
- export { DEFAULT_SPEC_FILE_URL, generateSwagger, _default$1 as swagger, validationError, _default as zod };
57
+ export { DEFAULT_SPEC_FILE_URL, MOCKED_BEARER_TOKEN, MOCKED_JWT_HEADER, MOCKED_JWT_NAME, MOCKED_JWT_PAYLOAD, MOCKED_JWT_SIGNATURE, createApi, generateSwagger, getLanguage, _default$1 as swagger, validationError, _default as zod };
package/dist/index.mjs CHANGED
@@ -5321,6 +5321,14 @@ var require_dist = __commonJS({
5321
5321
  }
5322
5322
  });
5323
5323
 
5324
+ // src/mocks/jwt.ts
5325
+ import { createHmac } from "crypto";
5326
+ var MOCKED_JWT_NAME = "toolkit@systemtest.dcs";
5327
+ var MOCKED_JWT_HEADER = btoa(JSON.stringify({ alg: "HS256" }));
5328
+ var MOCKED_JWT_PAYLOAD = btoa(JSON.stringify({ name: MOCKED_JWT_NAME }));
5329
+ var MOCKED_JWT_SIGNATURE = createHmac("sha256", "").update(MOCKED_JWT_HEADER + "." + MOCKED_JWT_PAYLOAD).digest("base64").replace("=", "");
5330
+ var MOCKED_BEARER_TOKEN = `Bearer ${MOCKED_JWT_HEADER}.${MOCKED_JWT_PAYLOAD}.${MOCKED_JWT_SIGNATURE}`;
5331
+
5324
5332
  // src/plugins/swagger.ts
5325
5333
  var import_fastify_type_provider_zod = __toESM(require_dist());
5326
5334
  import swagger from "@fastify/swagger";
@@ -9114,6 +9122,26 @@ var zod = (app, options, done) => {
9114
9122
  };
9115
9123
  var zod_default = fp2(zod);
9116
9124
 
9125
+ // src/utils/api.ts
9126
+ import "@myxtra/api";
9127
+ import config from "config";
9128
+ import "fastify";
9129
+
9130
+ // src/utils/language.ts
9131
+ var getLanguage = (acceptLanguage) => {
9132
+ if (acceptLanguage !== "nl" && acceptLanguage !== "fr") {
9133
+ return "nl";
9134
+ }
9135
+ return acceptLanguage;
9136
+ };
9137
+
9138
+ // src/utils/api.ts
9139
+ var createApi = (Api, request) => {
9140
+ const acceptLanguage = getLanguage(request.headers["accept-language"]);
9141
+ const authorization = request.headers.authorization ?? "";
9142
+ return new Api({ acceptLanguage, authorization, config });
9143
+ };
9144
+
9117
9145
  // src/utils/swagger.ts
9118
9146
  import { writeFile } from "fs";
9119
9147
  import "fastify";
@@ -9133,7 +9161,14 @@ var generateSwagger = (app, specFile) => {
9133
9161
  };
9134
9162
  export {
9135
9163
  DEFAULT_SPEC_FILE_URL,
9164
+ MOCKED_BEARER_TOKEN,
9165
+ MOCKED_JWT_HEADER,
9166
+ MOCKED_JWT_NAME,
9167
+ MOCKED_JWT_PAYLOAD,
9168
+ MOCKED_JWT_SIGNATURE,
9169
+ createApi,
9136
9170
  generateSwagger,
9171
+ getLanguage,
9137
9172
  swagger_default as swagger,
9138
9173
  validationError,
9139
9174
  zod_default as zod
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@myxtra/microservice",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "main": "./dist/index.mjs",
5
5
  "license": "Apache-2.0",
6
6
  "publishConfig": {
@@ -20,7 +20,7 @@
20
20
  "typecheck": "tsc --noEmit"
21
21
  },
22
22
  "dependencies": {
23
- "@myxtra/api": "0.1.0"
23
+ "@myxtra/api": "0.1.1"
24
24
  },
25
25
  "devDependencies": {
26
26
  "@myxtra/eslint-config": "1.12.0",
@@ -33,6 +33,7 @@
33
33
  "peerDependencies": {
34
34
  "@fastify/swagger": ">=8.0.0",
35
35
  "@fastify/swagger-ui": ">=1.0.0",
36
+ "config": ">=3.0.0",
36
37
  "fastify": ">=4.0.0",
37
38
  "fastify-plugin": ">=4.0.0"
38
39
  }