@lyxa.ai/core 1.0.0 → 1.0.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.
package/dist/index.js CHANGED
@@ -14,8 +14,6 @@ const configuration_1 = require("./libraries/configuration");
14
14
  const EnvironmentConfigurationType_1 = require("./libraries/configuration/types/EnvironmentConfigurationType");
15
15
  const logger_1 = require("./libraries/logger");
16
16
  const redis_1 = require("./libraries/redis");
17
- const event_1 = require("./libraries/event");
18
- const SubscriptionRegistry_1 = require("./libraries/event/registry/SubscriptionRegistry");
19
17
  const mongo_1 = require("./libraries/mongo");
20
18
  var EnvironmentConfigurationType_2 = require("./libraries/configuration/types/EnvironmentConfigurationType");
21
19
  Object.defineProperty(exports, "EnvironmentConfigurationType", { enumerable: true, get: function () { return EnvironmentConfigurationType_2.EnvironmentConfigurationType; } });
@@ -47,24 +45,11 @@ async function registerLibraries(options) {
47
45
  typedi_1.Container.set(redis_1.RedisService, redisInstance);
48
46
  const mongoUrl = await getLibraries().getSecretsService()
49
47
  .getKey("MONGO_URL");
50
- await mongoose_1.default.connect(mongoUrl, { dbName: `lyxa-${options.tenet}` });
48
+ await mongoose_1.default.connect(mongoUrl, { dbName: `lyxa-${options.environment}-${options.tenet}` });
51
49
  mongoose_1.default.set('debug', getLibraries().getConfigurationService().options.environment == EnvironmentConfigurationType_1.EnvironmentConfigurationType.DEV);
52
- await (0, mongo_1.initGlobalConnection)(mongoUrl);
50
+ await (0, mongo_1.initGlobalConnection)(mongoUrl, options.environment);
53
51
  const loggerInstance = new logger_1.LyxaLogger(options.instanceType, mongoUrl);
54
52
  typedi_1.Container.set(logger_1.LyxaLogger, loggerInstance);
55
- await (0, event_1.initEventBus)("amqp://localhost");
56
- const allSubscriptions = SubscriptionRegistry_1.SubscriptionRegistry.getAllSubscriptions();
57
- const instantiatedServices = new Map();
58
- for (const { eventId, targetConstructor, methodName } of allSubscriptions) {
59
- let instance = instantiatedServices.get(targetConstructor);
60
- if (!instance) {
61
- instance = typedi_1.Container.get(targetConstructor);
62
- instantiatedServices.set(targetConstructor, instance);
63
- }
64
- await (0, event_1.subscribeToEvent)(eventId, async (payload) => {
65
- return instance[methodName](payload);
66
- });
67
- }
68
53
  }
69
54
  function getLibraries() {
70
55
  return typedi_1.Container.get(libraries_1.LibraryManager);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["index.ts"],"names":[],"mappings":"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","sourcesContent":["import {LibraryManager} from \"./libraries\";\r\nimport {Container} from \"typedi\";\r\nimport mongoose from \"mongoose\";\r\nimport {ConfigurationOptions, ConfigurationService} from \"./libraries/configuration\";\r\nimport {EnvironmentConfigurationType} from \"./libraries/configuration/types/EnvironmentConfigurationType\";\r\nimport {LyxaLogger} from \"./libraries/logger\";\r\nimport {RedisService} from \"./libraries/redis\";\r\nimport {initEventBus, subscribeToEvent} from \"./libraries/event\";\r\nimport {SubscriptionRegistry} from \"./libraries/event/registry/SubscriptionRegistry\";\r\nimport {initGlobalConnection} from \"./libraries/mongo\";\r\n\r\nexport { ConfigurationOptions } from \"./libraries/configuration\";\r\nexport { EnvironmentConfigurationType } from \"./libraries/configuration/types/EnvironmentConfigurationType\";\r\nexport {\r\n initGlobalConnection,\r\n createGlobalModel,\r\n createGlobalDiscriminatorModel\r\n} from './libraries/mongo';\r\n\r\nexport async function bootstrapCore(options?: ConfigurationOptions) {\r\n try {\r\n await registerLibraries(options);\r\n\r\n const gracefulShutdown = async () => {\r\n getLibraries().getLogger().logger.info('Received shutdown signal, shutting down gracefully...');\r\n };\r\n\r\n process.on('SIGTERM', gracefulShutdown);\r\n process.on('SIGINT', gracefulShutdown);\r\n process.on('uncaughtException', (err) => {\r\n getLibraries().getLogger().logger.error('Uncaught exception, shutting down...', err);\r\n gracefulShutdown();\r\n });\r\n } catch (e) {\r\n console.error(e);\r\n }\r\n}\r\nexport async function registerLibraries(options?: ConfigurationOptions) {\r\n // Setup configuration.\r\n const configurationInstance = new ConfigurationService(options);\r\n Container.set(ConfigurationService, configurationInstance);\r\n\r\n // Setup redis.\r\n const redisInstance = new RedisService(configurationInstance.options.redisURL!);\r\n Container.set(RedisService, redisInstance);\r\n\r\n const mongoUrl = await getLibraries().getSecretsService()\r\n .getKey(\"MONGO_URL\");\r\n\r\n await mongoose.connect(mongoUrl!, { dbName: `lyxa-${options!.tenet}` });\r\n mongoose.set('debug', getLibraries().getConfigurationService().options.environment == EnvironmentConfigurationType.DEV);\r\n\r\n await initGlobalConnection(mongoUrl!);\r\n\r\n const loggerInstance = new LyxaLogger(options!.instanceType!, mongoUrl!);\r\n Container.set(LyxaLogger, loggerInstance);\r\n\r\n // Load subscriptions.\r\n await initEventBus(\"amqp://localhost\");\r\n const allSubscriptions = SubscriptionRegistry.getAllSubscriptions();\r\n\r\n const instantiatedServices = new Map<Function, any>();\r\n\r\n for (const { eventId, targetConstructor, methodName } of allSubscriptions) {\r\n let instance = instantiatedServices.get(targetConstructor);\r\n if (!instance) {\r\n instance = Container.get(targetConstructor as any);\r\n instantiatedServices.set(targetConstructor, instance);\r\n }\r\n\r\n await subscribeToEvent(eventId, async (payload) => {\r\n return instance[methodName](payload);\r\n });\r\n }\r\n}\r\n\r\nexport function getLibraries(): LibraryManager {\r\n return Container.get(LibraryManager)\r\n}\r\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["index.ts"],"names":[],"mappings":";;;;;;AAiBA,sCAiBC;AAED,8CAsCC;AAED,oCAEC;AA9ED,2CAA2C;AAC3C,mCAAiC;AACjC,wDAAgC;AAChC,6DAAqF;AACrF,+GAA0G;AAC1G,+CAA8C;AAC9C,6CAA+C;AAC/C,6CAAuD;AAGvD,6GAA4G;AAAnG,4IAAA,4BAA4B,OAAA;AACrC,2CAI2B;AAHvB,6GAAA,oBAAoB,OAAA;AACpB,0GAAA,iBAAiB,OAAA;AACjB,uHAAA,8BAA8B,OAAA;AAG3B,KAAK,UAAU,aAAa,CAAC,OAA8B;IAC9D,IAAI,CAAC;QACD,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAEjC,MAAM,gBAAgB,GAAG,KAAK,IAAI,EAAE;YAChC,YAAY,EAAE,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;QACpG,CAAC,CAAC;QAEF,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QACxC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QACvC,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,GAAG,EAAE,EAAE;YACpC,YAAY,EAAE,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAC;YACrF,gBAAgB,EAAE,CAAC;QACvB,CAAC,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,iBAAiB,CAAC,OAA8B;IAElE,MAAM,qBAAqB,GAAG,IAAI,oCAAoB,CAAC,OAAO,CAAC,CAAC;IAChE,kBAAS,CAAC,GAAG,CAAC,oCAAoB,EAAE,qBAAqB,CAAC,CAAC;IAG3D,MAAM,aAAa,GAAG,IAAI,oBAAY,CAAC,qBAAqB,CAAC,OAAO,CAAC,QAAS,CAAC,CAAC;IAChF,kBAAS,CAAC,GAAG,CAAC,oBAAY,EAAE,aAAa,CAAC,CAAC;IAE3C,MAAM,QAAQ,GAAG,MAAM,YAAY,EAAE,CAAC,iBAAiB,EAAE;SACpD,MAAM,CAAC,WAAW,CAAC,CAAC;IAEzB,MAAM,kBAAQ,CAAC,OAAO,CAAC,QAAS,EAAE,EAAE,MAAM,EAAE,QAAQ,OAAQ,CAAC,WAAW,IAAI,OAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAChG,kBAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC,uBAAuB,EAAE,CAAC,OAAO,CAAC,WAAW,IAAI,2DAA4B,CAAC,GAAG,CAAC,CAAC;IAExH,MAAM,IAAA,4BAAoB,EAAC,QAAS,EAAE,OAAQ,CAAC,WAAW,CAAC,CAAC;IAE5D,MAAM,cAAc,GAAG,IAAI,mBAAU,CAAC,OAAQ,CAAC,YAAa,EAAE,QAAS,CAAC,CAAC;IACzE,kBAAS,CAAC,GAAG,CAAC,mBAAU,EAAE,cAAc,CAAC,CAAC;AAoB9C,CAAC;AAED,SAAgB,YAAY;IACxB,OAAO,kBAAS,CAAC,GAAG,CAAC,0BAAc,CAAC,CAAA;AACxC,CAAC","sourcesContent":["import {LibraryManager} from \"./libraries\";\r\nimport {Container} from \"typedi\";\r\nimport mongoose from \"mongoose\";\r\nimport {ConfigurationOptions, ConfigurationService} from \"./libraries/configuration\";\r\nimport {EnvironmentConfigurationType} from \"./libraries/configuration/types/EnvironmentConfigurationType\";\r\nimport {LyxaLogger} from \"./libraries/logger\";\r\nimport {RedisService} from \"./libraries/redis\";\r\nimport {initGlobalConnection} from \"./libraries/mongo\";\r\n\r\nexport { ConfigurationOptions } from \"./libraries/configuration\";\r\nexport { EnvironmentConfigurationType } from \"./libraries/configuration/types/EnvironmentConfigurationType\";\r\nexport {\r\n initGlobalConnection,\r\n createGlobalModel,\r\n createGlobalDiscriminatorModel\r\n} from './libraries/mongo';\r\n\r\nexport async function bootstrapCore(options?: ConfigurationOptions) {\r\n try {\r\n await registerLibraries(options);\r\n\r\n const gracefulShutdown = async () => {\r\n getLibraries().getLogger().logger.info('Received shutdown signal, shutting down gracefully...');\r\n };\r\n\r\n process.on('SIGTERM', gracefulShutdown);\r\n process.on('SIGINT', gracefulShutdown);\r\n process.on('uncaughtException', (err) => {\r\n getLibraries().getLogger().logger.error('Uncaught exception, shutting down...', err);\r\n gracefulShutdown();\r\n });\r\n } catch (e) {\r\n console.error(e);\r\n }\r\n}\r\n\r\nexport async function registerLibraries(options?: ConfigurationOptions) {\r\n // Setup configuration.\r\n const configurationInstance = new ConfigurationService(options);\r\n Container.set(ConfigurationService, configurationInstance);\r\n\r\n // Setup redis.\r\n const redisInstance = new RedisService(configurationInstance.options.redisURL!);\r\n Container.set(RedisService, redisInstance);\r\n\r\n const mongoUrl = await getLibraries().getSecretsService()\r\n .getKey(\"MONGO_URL\");\r\n\r\n await mongoose.connect(mongoUrl!, { dbName: `lyxa-${options!.environment}-${options!.tenet}` });\r\n mongoose.set('debug', getLibraries().getConfigurationService().options.environment == EnvironmentConfigurationType.DEV);\r\n\r\n await initGlobalConnection(mongoUrl!, options!.environment);\r\n\r\n const loggerInstance = new LyxaLogger(options!.instanceType!, mongoUrl!);\r\n Container.set(LyxaLogger, loggerInstance);\r\n\r\n /*\r\n await initEventBus(\"amqp://localhost\");\r\n const allSubscriptions = SubscriptionRegistry.getAllSubscriptions();\r\n\r\n const instantiatedServices = new Map<Function, any>();\r\n\r\n for (const { eventId, targetConstructor, methodName } of allSubscriptions) {\r\n let instance = instantiatedServices.get(targetConstructor);\r\n if (!instance) {\r\n instance = Container.get(targetConstructor as any);\r\n instantiatedServices.set(targetConstructor, instance);\r\n }\r\n\r\n await subscribeToEvent(eventId, async (payload) => {\r\n return instance[methodName](payload);\r\n });\r\n }\r\n */\r\n}\r\n\r\nexport function getLibraries(): LibraryManager {\r\n return Container.get(LibraryManager)\r\n}\r\n"]}
@@ -1,17 +1,26 @@
1
- import { FirebaseOptions } from "firebase/app";
2
1
  import { ServiceAccount } from "firebase-admin";
3
2
  import { EnvironmentConfigurationType } from "./types/EnvironmentConfigurationType";
4
3
  export interface ConfigurationOptions {
5
4
  tenet?: string;
6
5
  redisURL?: string;
7
6
  instanceType?: string;
8
- firebaseClient?: {
9
- firebaseClientOptions: FirebaseOptions;
10
- firebaseClientAppName?: string;
11
- };
12
7
  firebaseAdmin?: {
13
- firebaseAdminServiceAccount: ServiceAccount;
14
- firebaseAdminAppName?: string;
8
+ super: {
9
+ firebaseAdminServiceAccount: ServiceAccount;
10
+ firebaseAdminAppName?: string;
11
+ };
12
+ user: {
13
+ firebaseAdminServiceAccount: ServiceAccount;
14
+ firebaseAdminAppName?: string;
15
+ };
16
+ shop: {
17
+ firebaseAdminServiceAccount: ServiceAccount;
18
+ firebaseAdminAppName?: string;
19
+ };
20
+ rider: {
21
+ firebaseAdminServiceAccount: ServiceAccount;
22
+ firebaseAdminAppName?: string;
23
+ };
15
24
  };
16
25
  environment: EnvironmentConfigurationType;
17
26
  }
@@ -14,27 +14,41 @@ const typedi_1 = require("typedi");
14
14
  const EnvironmentConfigurationType_1 = require("./types/EnvironmentConfigurationType");
15
15
  let ConfigurationService = class ConfigurationService {
16
16
  _defaultOptions = {
17
- redisURL: "redis://localhost:6379",
17
+ redisURL: "redis://default:8RCVCiwXRMo6isHgJanL1pE86cRt29YP@redis-12296.fcrce173.eu-west-1-1.ec2.redns.redis-cloud.com:12296",
18
18
  tenet: "default",
19
19
  instanceType: "unknown",
20
- firebaseClient: {
21
- firebaseClientOptions: {
22
- apiKey: "",
23
- authDomain: "",
24
- databaseURL: "",
25
- projectId: "",
26
- storageBucket: "",
27
- messagingSenderId: "",
28
- appId: "",
29
- measurementId: ""
30
- }
31
- },
32
20
  firebaseAdmin: {
33
- firebaseAdminServiceAccount: {
34
- projectId: "",
35
- privateKey: "",
36
- clientEmail: ""
37
- }
21
+ super: {
22
+ firebaseAdminServiceAccount: {
23
+ projectId: "for-poc-325210",
24
+ privateKey: "-----BEGIN PRIVATE KEY-----\\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC5aI2nsMHkJbZf\\nem9ycpd57RjRDsBt9Nb/uMjsFcBRuAKcKgh4lgNO6ZmcRwK10IRygCmbY5XxmtVA\\nq9CT5tYlVN4SDzN1y4lL8/CL5owW2RZOURKcM0lsNOB9uGwkv1t3bfbBNc2hh9JX\\n72t7URAtrtPAkUxtgEPm6WL03uNu8KCZ0G9uoA/oM7o8OIGkjC575D9V6QjYC9fn\\nPjBRQ3K42fUWFmf31jtUBSHB0xE5qJI+MOi+OcXAJLxKQBbW+vqr2KfMwVYpNclp\\nk0Ptfe8xZxVfKEJAAkacQ36Hp14wFK/q+2mmhOQlbruksOZCpaIkh5IdvGkkG8ZH\\n566FgFHDAgMBAAECggEAJkuuqprLSZTyiOEQoOqDWBc9X3z1CSEfwV0I/x51BUwF\\nGf1il4mgsE12wX03VZd2q/HF5kcZAvjQoFV8tPfidn6DieZi4itCthHyNutNNzDq\\ntw1u0x2SxktbrQwJJkPyIAZyB7FVwk38B9a3dBanyU/JhAZe62UpYUoGev6IqnKm\\nIiw7r4lc47XgJNrDjXhCtTwHBmXA6qt/HrBcu4fSZlnZMhvsgnO6iafXaBo15Rpy\\nyVBVCPCGJBqpbqI8w3lVTcUqvD2DS+wGJAZSNFagt5qg+vCN8xVUsyQKrM1qIXZm\\nxvPX5oE6CWaD5a7yzpwqKLghKIpsb+3gezyQiFw5rQKBgQDh9U+VdFipH2o8Rezd\\n2d9Kp+ya8+kAog4NMeMyD/xyvKbmv6hW2SZqLhc5MacO0GiCnFR+dMLJxRBGnn+e\\ngYP26OE2fG9Kn7JrSGafu7siKnonfaN/1IcHcZe/77P/s/o2lNxaVl9i1iPQlzr/\\nN8RRaYa+pvazR4VNMS+Z6keD5QKBgQDSDxfKGwOt/GlPKRDmw3bKD4tseK36JsJw\\n5u7im6CpiTEgSSbOCr1ggITv6VbHUK/Nv3mExJH6uuzd9szb94JUAxGbZ16Liwn4\\nse+K2XlnLEnqxzFSkprOJAJkfbffrH+IxW8gNrK/UbjKT/xgEVH1ZeKUMPLCQG+y\\nLAW6NY50hwKBgCYQTPfAQa87u4mrvdsheJv67cCslfOlWPigDsXAK6aoYPU+E/2N\\nVwtL+F2KH7o/IVvfOdyTjryula9Pw+/PoYtWb5neHGFVxZiM+byuwzdeMHW2lHRU\\nOOroF8gdeRT6HIxVR0lwg2EC8cWRtD6KBmgwfqJfPe+1fJ8kSgCDlsiBAoGBAI1D\\nOyNeYW4bBhMHMeeOYY9nPsL2sUE92Zslolbgg/4fVds5dpAvpsWECGJy0Dn/6Ap8\\njtMbgnRUSsDGnWP8IjgvTCLvNCSxn0YRG1+L+tnIbfkmdePq1ZJ1oupDpWkVTzsC\\nU0Ydor2IzrW3bqiIXU6jculntYmu3a67biqYo7F3AoGBALoinJdtNLLqOqf/MumD\\n+YmbzHqsuID2dGyct7GESIBx3a67hwyJQfCK8nyHNyWN7lFg+H1rZlu1Cjmo0hlu\\nOxzdbWON5Rg2n3TbGw3AM1M55khsedbmm8MOSRdhIkz5RuYESSNAvVC6CBcfg5gb\\nCPq8jrR+oljMjBwAaQmFlPF7\\n-----END PRIVATE KEY-----\\n",
25
+ clientEmail: "lyxa-core@for-poc-325210.iam.gserviceaccount.com"
26
+ }
27
+ },
28
+ user: {
29
+ firebaseAdminServiceAccount: {
30
+ projectId: "for-poc-325210",
31
+ privateKey: "-----BEGIN PRIVATE KEY-----\\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC9yUnAC2pQ+dhe\\ndJVMS7RQeQdQO7JhT0BXz0MbpCXlEdc3j/GQAY9UfKxQLg1VZh+4An8aUZevOy/v\\nUaHsvqSWcWg7UHTOjk861brpjdjhM4S4ahwU2NyVI/o0Bpc5ob4nhHebny9FGqEP\\nauwUXiVw7UjA/yGeTN6delZwCxejHxI6zDjFQveo8Ljkfu49CMyyf1XhN9q0So4Q\\n2pZ3Xmdz0fZGykSGT9TVBDnPE8Zc3VCQ1XQ7aEKr0e9L+YYidw+iurSNwQSo72uk\\nf/G2wCtlAaoDh0lKObEbi1b925BOthP2XpmQ7Kv+iWVFouCY54Md56FxtjKOyYll\\n0nS6MkAJAgMBAAECggEAEeee83UoPjQ6BVxAlxJ31BU8+0TshOlwB7C8MywC7rfm\\nit2Dw8sf4W/DJmvX0nAYazjiEqKyuaOO98gm64HHX5GarKjgIjoTD7kJAZ6CIOnm\\nOis5k75rXg8nPFgIVZW0rb/9tEL5984ltoGG/PtuUxdxwxJ20ptML8VySO8E93yt\\n203zMlm/QdlUBBO+XDlpsEoXvUjQ6MzmCSF2LCFD1uBVmj0sVFuPt5fyodhV8gQM\\nvDfG4duZ7AE6Nbc5ANgJw8fHMdx+AS+I0P50et936tuFOOeHUWGbg1RMOM1GrWLZ\\nH83zfHp33R3rlUgleZetKh/5vLaW29MdJmACk2Z14QKBgQDtrywbz60ULHiyNvDP\\nHFweJF/9EBq6MZeo/lYrBDZXuP3sBM7uUa+oYzYad3Lsxo1Vz/Zqb6atWX/BRbHT\\nfyy6yTGPRn6geaqYEFuFwfBau3qju6DRwoqplVVlLo8lgOQzIDgXkk0nt7C/bM87\\nmkxQI6Xi0TAjIpd3k6miw52laQKBgQDMaTnlL2OGlJlcycBZGxrKdsIwvK2jCLPi\\njPTKM163htuzaItEVpJaCPjWaU3k3E1UXjFp9oxxvtDZOZP+DcFwGKvBe2vntFYz\\nafCNlYK7wT/t7ChlCUSXuU/bSrXe4Wc4KGnJ6YzNmykMJku2b845layB1PxEhHHA\\nRl2NEx9RoQKBgHJvETx+m2UIGEAtZXlBvTQh7TkIxOV6NPt/IHtrdsJ7ZX15vytM\\nltbqlUTe160Z1zhGfOw3vzbczT5/UKN0KlPvw/WoShT3HuRBk97tRcxZUS19i2sS\\nT/Jf3JJvfSngSX439+mZXZ5OuUEgoRGgMzeuQhLXBmcUI3rF1DlyFvdpAoGAfmq5\\nbn8fSzUNn+/6MGFt8Tb/JAscS87vCTZpkb+xXUlfCJaoQqxTuLEBzAC2Nsr0XDAg\\n2UqsUxBSs3VDjIRPVJc9adx9wH+sLAHhzn5fquR6OBesZ8gSjs8BjzqmPeAi6P09\\nZ60z8lh6S1RH0N1WqhBh7q2dEnbirqoV41CnNuECgYEAr26tTBIvEeZY3gmAmOVl\\nCw6gkxaHdzZplFl8Qnv272VllQpwbR1zaF6RfWsTEsrhrT+VtrZO6DDh9O6iJkbB\\n7Re3BnMOhGfUS3HlPCFnkdodeaoeVpg4llYwuunmyj+SmNxnC56TiznML1owmUYd\\ndLFeY+JZ0GpSBO0qYlY5QGk=\\n-----END PRIVATE KEY-----\\n",
32
+ clientEmail: "firebase-adminsdk-onusy@for-poc-325210.iam.gserviceaccount.com"
33
+ },
34
+ firebaseAdminAppName: "lyxa-user"
35
+ },
36
+ rider: {
37
+ firebaseAdminServiceAccount: {
38
+ projectId: "lyxa-rider-88939",
39
+ privateKey: "-----BEGIN PRIVATE KEY-----\\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQC08zRqUjHFO7Ir\\n4UNHIjxVp7oJkK3rrV1UGfHeHsijm6CSWjViVqsFKUZliYXTjg9S8rIMmC3OAMrh\\n5FTdNfDell8YHPbVRWZ0OFBNWglvKMgMKMoyQuBKtvEAdZwgVMreOf+51QlZnPxy\\nTBNh4Du2ahb8TtAjwxXt7CgMjNIfoMjQFJTrBTAmsxhtOEpYvPU2iX+OtAkHgrs1\\nNeWpBGpN4GSwOfA8MdgvorLYbeRDnkY4cH/ReNymTW9nbX1vgsx2AE1NR5PTNxv0\\nIuVZQWxMMGPnT5bjzAlCR4z/Nbe89V2zl5kFtBxDBCDqxp+qZxCinJj1QqwC5qzZ\\nYLbNVKVPAgMBAAECggEAEHEGwrW24v/NF9KZ3S/zASoX1oBTD+vf4+E69QlMBshV\\nxeaKHOYuF5khVd7cjj/wDC6ULLPJJFjga7e7rvaUl80G//cQcIl5STcdXiHqYzN2\\nldrroGHWOm5hUJQ0fEroEgV9bc0PJ+7X5f9xRWlCqQz+YKzn7vqYwVZovyyDzS6/\\nTus2SeWg0Qh1Uw4+FqveEqGBAMF9COTYJ/rZ5sDE34cYRJeZOgVDeSanF/CW6+VS\\nLT5+ysRS8xY/mUFIgs6zvJQr7whDj22OzvZr31LReNUl1IGI1V0wHxCJs3y934dq\\nuiAf4iX2w0uwiQs7+IQc6T6GhTEajWHSQqUtbDeecQKBgQDAW/mHk1PCCxZQtc6C\\nCkFYONeY0zz7JAk7AvcbeVB6icq9Zv/9botFOvJ/4dduN39+sO/SIvLV+zQzmUGA\\nygY58AQIqtYurIc8OjftQ5qZ6t9H1plmj/W+GVAYWadA68P95UBjwVcZySht47s/\\ngOje4TF9wXVn9oTuP8XmLpce/wKBgQDw0Onl7EVmkgnyHl1qomqHR+2+xNDZNYMv\\njdX0tq2KOXa6JpbO32Yf7LVKQo7bmSOy3M1kn2+lwCXsDufr/a+1GNRxuPucsYiM\\nlQeLEKRqfNUni1NnbIUOkZV0fO0Me76Ow5BKqEWrda0E5k9g46p8EgVO5zWUE00w\\nZZFTUn7JsQKBgDh9SiREYb6EXwNIwOJzfIkZ+EaLEkd2Z7eKwWKyF65EtOM2Ukrs\\nob2s9/YSLp/RcIGWGHePh9zLLqNQiGn36igtkiGxecCvLe/D8RSeW9KDpRqFrPrv\\nn+05pcng2js4gZAYOPaSmq+Z4WOUEzMs+jYpz8zseTwUqykEVWuplvulAoGAF8y9\\n4RBZx4pVW01u9BP7LUWJlJoE/gKQ5YlCBP5s5kVJm5omu2lOwYb2X9F2JvPamFnE\\nHta3BQ2ZcdwDRcp7rA05KcgbbeAJ28L6zN6nMTMHKfJWGtmZyNfQioOyNdKhAaEI\\nSKiawhhOMjbEz5GQjtSFG8gz/l9t+IOBOlfj2fECgYBC8gGC7YHm+PvV5F1CVRZD\\nUYVlAnqOMJ1VvfTemW/kPzuCMd/JEKSE+b21h3rObMvUZU5AnkM3VT1+hDv6tyEt\\nblgh89YsHUor7wXSrYnVmYsrm91JABTWsLhLy92iqylg0xBs3Q5RGCt/s9f3YFFw\\nKghNmTDraGggnf5U/Z4LJw==\\n-----END PRIVATE KEY-----\\n",
40
+ clientEmail: "firebase-adminsdk-qwhrd@lyxa-rider-88939.iam.gserviceaccount.com"
41
+ },
42
+ firebaseAdminAppName: "lyxa-rider"
43
+ },
44
+ shop: {
45
+ firebaseAdminServiceAccount: {
46
+ projectId: "lyxa-shop",
47
+ privateKey: "-----BEGIN PRIVATE KEY-----\\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDTWaf/QGSjk7po\\nri+6Nzo/tep1UtgMSY4KscT3iCbepiAsw7C8NCQqz3wYEAFRwywbaCwUcUs5KUC7\\n/e9TvpSQQksu10P9uP+c7wnAy+l0ay/15vWUV0usmDhMMvfjtDwS2RYTMEAdNUiZ\\nOuMC3/DDCBHt0SC5WCNzz11jj/n5bdVOS02qHd8V/lbd46iVEYfFswkI5NBgV7CY\\nnR2CoVcakPIeu9kEKdjXsJvf8+zCYtXPaFvcubQcnybOcg6usU+AHD1iwCRd6BrK\\n2PpM3gy/eASLJtzg/JoU0CgqJICmfR8LvGk6iHTp7VMfPuCfggwYtO3W1kSHuW4I\\nswbXYOJbAgMBAAECggEAMHKZ5xIsv66KiZp8SFSGnrolv7U430AxNlRf0Vo9hsZQ\\nE9Lb/Zh6PfIIAUAR/VsfDj1H9XuvAbBqLW3dYbYLOjJoJ5mi9VNmDORiuPZFUrGL\\ncfP6kYGdUDgol5cLagAT0UJAJC/oUom3VaDBDxSkjSCZc4l/1dzVa6O6RatoYvuW\\nqtJa5WzPH6flqj9HuFZaaNSZKXSYLwMeQC7bzxjbX0lB6b1WM2EIxQopeewrSfKg\\nvaw7zYHnu9cO6oA6I4A3VXhySp3G2VIMOIezfI24mP2Bnzori6xCVXcM7R1B2Trr\\nlFUrdXb9Rp3ZR0Ul0jSqCmopmMPVgob8lyHhiqk5+QKBgQDd/PcIRP7OE0ZnfXtd\\nxWMz1ggp9ub6bN/mFxw/OoyEVSfmlshDCvEeqoo2DxWGC+/0uiGuPHnDKDX+R0Ho\\nqmlWcVPTSBmrQvi3+VBKfr6ZCwxoutCQo3SMlEMvqHDkjGhAsDg/yjkI8yS5jqZ5\\nXtG+dYQpd9qY3t46Uar1+7lpJwKBgQDzu3CzElfr3xHAEdE+1pkiPixPuW+fHw1v\\nwoc5e7hJA1Mtu0Gdj7g41mF37bUXYxIg3FgV5sS76XCxw1a3plj/y0n+qZXMq5xs\\nZwgqrh4APjVXVRp9SSOvEXT0NanhWKiHMNncvteqThSEal27MDghEzqDmebkuOII\\ng+KDmYp1rQKBgA0dhPrYGLXULbSvlTpVDydg3dqc28iv5gqSEvkpXGP1JAZbojlT\\nzCsjqEbJXVwuGF89IABLUmZVWdtMGnjEmLSivXEeMWYM7uTvte6wzlH8dR866leh\\nUKF9oPqP2RunsAEiaDBcokIFG4ZbBzrkfz/hcY2Bp0ig4kBP0un1lV7BAoGBAJ4L\\n4MOt1Gd2KetzYk0uGPS0fkVgSLpVB4B+EvO6f0CRMGHKOH00UdBBa8i50qEMtBes\\n6k2ha9cyQ8pxkYzbCIEuUJgbXbDvYyqEES6j435i2HH+FIRDZilC16T4G2Wt+PJZ\\nQhy7f9vGb9WBp7AXT35bGql1pdyQ6rl80+hkKv2tAoGAe4yFOvIdEEdgEokp5Dem\\nuPf1rikk5mYPMkXhrX0cH9Wd2rh9MiP2gJuL3PD3R9LLon+9EzdBs31MwpP9C06Y\\nZmnuEfgYIewBHZbpRO+nsGX+AK15gbJUNk1RbWmUU7AvkHyo4eE6NnNVbygxaFSk\\n0+8aYRpYzZRnyAn8Oo6o2No=\\n-----END PRIVATE KEY-----\\n",
48
+ clientEmail: "firebase-adminsdk-w4v98@lyxa-shop.iam.gserviceaccount.com"
49
+ },
50
+ firebaseAdminAppName: "lyxa-shop"
51
+ },
38
52
  },
39
53
  environment: EnvironmentConfigurationType_1.EnvironmentConfigurationType.DEV
40
54
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["libraries/configuration/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,mCAA+B;AAC/B,uFAAkF;AAmB3E,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAEZ,eAAe,GAAyB;QACrD,QAAQ,EAAE,wBAAwB;QAClC,KAAK,EAAE,SAAS;QAChB,YAAY,EAAE,SAAS;QACvB,cAAc,EAAE;YACZ,qBAAqB,EAAE;gBACnB,MAAM,EAAE,EAAE;gBACV,UAAU,EAAE,EAAE;gBACd,WAAW,EAAE,EAAE;gBACf,SAAS,EAAE,EAAE;gBACb,aAAa,EAAE,EAAE;gBACjB,iBAAiB,EAAE,EAAE;gBACrB,KAAK,EAAE,EAAE;gBACT,aAAa,EAAE,EAAE;aACpB;SACJ;QACD,aAAa,EAAE;YACX,2BAA2B,EAAE;gBACzB,SAAS,EAAE,EAAE;gBACb,UAAU,EAAE,EAAE;gBACd,WAAW,EAAE,EAAE;aAClB;SACJ;QACD,WAAW,EAAE,2DAA4B,CAAC,GAAG;KAChD,CAAC;IAEe,QAAQ,CAAuB;IAEhD,YAAY,OAA8B;QACtC,IAAI,CAAC,QAAQ,GAAG;YACZ,GAAG,IAAI,CAAC,eAAe;YACvB,GAAG,OAAO;SACb,CAAC;IACN,CAAC;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;CACJ,CAAA;AAxCY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,gBAAO,GAAE;;GACG,oBAAoB,CAwChC","sourcesContent":["import {FirebaseOptions} from \"firebase/app\";\r\nimport {ServiceAccount} from \"firebase-admin\";\r\nimport {Service} from \"typedi\";\r\nimport {EnvironmentConfigurationType} from \"./types/EnvironmentConfigurationType\";\r\n\r\nexport interface ConfigurationOptions {\r\n tenet?: string;\r\n redisURL?: string;\r\n instanceType?: string;\r\n firebaseClient?: {\r\n firebaseClientOptions: FirebaseOptions,\r\n firebaseClientAppName?: string,\r\n },\r\n firebaseAdmin?: {\r\n firebaseAdminServiceAccount: ServiceAccount,\r\n firebaseAdminAppName?: string,\r\n },\r\n environment: EnvironmentConfigurationType\r\n}\r\n\r\n\r\n@Service()\r\nexport class ConfigurationService {\r\n\r\n private readonly _defaultOptions: ConfigurationOptions = {\r\n redisURL: \"redis://localhost:6379\",\r\n tenet: \"default\",\r\n instanceType: \"unknown\",\r\n firebaseClient: {\r\n firebaseClientOptions: {\r\n apiKey: \"\",\r\n authDomain: \"\",\r\n databaseURL: \"\",\r\n projectId: \"\",\r\n storageBucket: \"\",\r\n messagingSenderId: \"\",\r\n appId: \"\",\r\n measurementId: \"\"\r\n }\r\n },\r\n firebaseAdmin: {\r\n firebaseAdminServiceAccount: {\r\n projectId: \"\",\r\n privateKey: \"\",\r\n clientEmail: \"\"\r\n }\r\n },\r\n environment: EnvironmentConfigurationType.DEV\r\n };\r\n\r\n private readonly _options: ConfigurationOptions;\r\n\r\n constructor(options?: ConfigurationOptions) {\r\n this._options = {\r\n ...this._defaultOptions,\r\n ...options,\r\n };\r\n }\r\n\r\n get options(): ConfigurationOptions {\r\n return this._options;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["libraries/configuration/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,mCAA+B;AAC/B,uFAAkF;AA6B3E,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAEZ,eAAe,GAAyB;QACrD,QAAQ,EAAE,mHAAmH;QAC7H,KAAK,EAAE,SAAS;QAChB,YAAY,EAAE,SAAS;QACvB,aAAa,EAAE;YACX,KAAK,EAAE;gBACH,2BAA2B,EAAE;oBACzB,SAAS,EAAE,gBAAgB;oBAC3B,UAAU,EAAE,kuDAAkuD;oBAC9uD,WAAW,EAAE,kDAAkD;iBAClE;aACJ;YACD,IAAI,EAAE;gBACF,2BAA2B,EAAE;oBACzB,SAAS,EAAE,gBAAgB;oBAC3B,UAAU,EAAE,kuDAAkuD;oBAC9uD,WAAW,EAAE,gEAAgE;iBAChF;gBACD,oBAAoB,EAAE,WAAW;aACpC;YACD,KAAK,EAAE;gBACH,2BAA2B,EAAE;oBACzB,SAAS,EAAE,kBAAkB;oBAC7B,UAAU,EAAE,kuDAAkuD;oBAC9uD,WAAW,EAAE,kEAAkE;iBAClF;gBACD,oBAAoB,EAAE,YAAY;aACrC;YACD,IAAI,EAAE;gBACF,2BAA2B,EAAE;oBACzB,SAAS,EAAE,WAAW;oBACtB,UAAU,EAAE,kuDAAkuD;oBAC9uD,WAAW,EAAE,2DAA2D;iBAC3E;gBACD,oBAAoB,EAAE,WAAW;aACpC;SACJ;QACD,WAAW,EAAE,2DAA4B,CAAC,GAAG;KAChD,CAAC;IAEe,QAAQ,CAAuB;IAEhD,YAAY,OAA8B;QACtC,IAAI,CAAC,QAAQ,GAAG;YACZ,GAAG,IAAI,CAAC,eAAe;YACvB,GAAG,OAAO;SACb,CAAC;IACN,CAAC;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;CACJ,CAAA;AAtDY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,gBAAO,GAAE;;GACG,oBAAoB,CAsDhC","sourcesContent":["import {FirebaseOptions} from \"firebase/app\";\r\nimport {ServiceAccount} from \"firebase-admin\";\r\nimport {Service} from \"typedi\";\r\nimport {EnvironmentConfigurationType} from \"./types/EnvironmentConfigurationType\";\r\n\r\nexport interface ConfigurationOptions {\r\n tenet?: string;\r\n redisURL?: string;\r\n instanceType?: string;\r\n firebaseAdmin?: {\r\n super: {\r\n firebaseAdminServiceAccount: ServiceAccount,\r\n firebaseAdminAppName?: string,\r\n },\r\n user: {\r\n firebaseAdminServiceAccount: ServiceAccount,\r\n firebaseAdminAppName?: string,\r\n },\r\n shop: {\r\n firebaseAdminServiceAccount: ServiceAccount,\r\n firebaseAdminAppName?: string,\r\n },\r\n rider: {\r\n firebaseAdminServiceAccount: ServiceAccount,\r\n firebaseAdminAppName?: string,\r\n }\r\n },\r\n environment: EnvironmentConfigurationType\r\n}\r\n\r\n\r\n@Service()\r\nexport class ConfigurationService {\r\n\r\n private readonly _defaultOptions: ConfigurationOptions = {\r\n redisURL: \"redis://default:8RCVCiwXRMo6isHgJanL1pE86cRt29YP@redis-12296.fcrce173.eu-west-1-1.ec2.redns.redis-cloud.com:12296\",\r\n tenet: \"default\",\r\n instanceType: \"unknown\",\r\n firebaseAdmin: {\r\n super: {\r\n firebaseAdminServiceAccount: {\r\n projectId: \"for-poc-325210\",\r\n privateKey: \"-----BEGIN PRIVATE KEY-----\\\\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC5aI2nsMHkJbZf\\\\nem9ycpd57RjRDsBt9Nb/uMjsFcBRuAKcKgh4lgNO6ZmcRwK10IRygCmbY5XxmtVA\\\\nq9CT5tYlVN4SDzN1y4lL8/CL5owW2RZOURKcM0lsNOB9uGwkv1t3bfbBNc2hh9JX\\\\n72t7URAtrtPAkUxtgEPm6WL03uNu8KCZ0G9uoA/oM7o8OIGkjC575D9V6QjYC9fn\\\\nPjBRQ3K42fUWFmf31jtUBSHB0xE5qJI+MOi+OcXAJLxKQBbW+vqr2KfMwVYpNclp\\\\nk0Ptfe8xZxVfKEJAAkacQ36Hp14wFK/q+2mmhOQlbruksOZCpaIkh5IdvGkkG8ZH\\\\n566FgFHDAgMBAAECggEAJkuuqprLSZTyiOEQoOqDWBc9X3z1CSEfwV0I/x51BUwF\\\\nGf1il4mgsE12wX03VZd2q/HF5kcZAvjQoFV8tPfidn6DieZi4itCthHyNutNNzDq\\\\ntw1u0x2SxktbrQwJJkPyIAZyB7FVwk38B9a3dBanyU/JhAZe62UpYUoGev6IqnKm\\\\nIiw7r4lc47XgJNrDjXhCtTwHBmXA6qt/HrBcu4fSZlnZMhvsgnO6iafXaBo15Rpy\\\\nyVBVCPCGJBqpbqI8w3lVTcUqvD2DS+wGJAZSNFagt5qg+vCN8xVUsyQKrM1qIXZm\\\\nxvPX5oE6CWaD5a7yzpwqKLghKIpsb+3gezyQiFw5rQKBgQDh9U+VdFipH2o8Rezd\\\\n2d9Kp+ya8+kAog4NMeMyD/xyvKbmv6hW2SZqLhc5MacO0GiCnFR+dMLJxRBGnn+e\\\\ngYP26OE2fG9Kn7JrSGafu7siKnonfaN/1IcHcZe/77P/s/o2lNxaVl9i1iPQlzr/\\\\nN8RRaYa+pvazR4VNMS+Z6keD5QKBgQDSDxfKGwOt/GlPKRDmw3bKD4tseK36JsJw\\\\n5u7im6CpiTEgSSbOCr1ggITv6VbHUK/Nv3mExJH6uuzd9szb94JUAxGbZ16Liwn4\\\\nse+K2XlnLEnqxzFSkprOJAJkfbffrH+IxW8gNrK/UbjKT/xgEVH1ZeKUMPLCQG+y\\\\nLAW6NY50hwKBgCYQTPfAQa87u4mrvdsheJv67cCslfOlWPigDsXAK6aoYPU+E/2N\\\\nVwtL+F2KH7o/IVvfOdyTjryula9Pw+/PoYtWb5neHGFVxZiM+byuwzdeMHW2lHRU\\\\nOOroF8gdeRT6HIxVR0lwg2EC8cWRtD6KBmgwfqJfPe+1fJ8kSgCDlsiBAoGBAI1D\\\\nOyNeYW4bBhMHMeeOYY9nPsL2sUE92Zslolbgg/4fVds5dpAvpsWECGJy0Dn/6Ap8\\\\njtMbgnRUSsDGnWP8IjgvTCLvNCSxn0YRG1+L+tnIbfkmdePq1ZJ1oupDpWkVTzsC\\\\nU0Ydor2IzrW3bqiIXU6jculntYmu3a67biqYo7F3AoGBALoinJdtNLLqOqf/MumD\\\\n+YmbzHqsuID2dGyct7GESIBx3a67hwyJQfCK8nyHNyWN7lFg+H1rZlu1Cjmo0hlu\\\\nOxzdbWON5Rg2n3TbGw3AM1M55khsedbmm8MOSRdhIkz5RuYESSNAvVC6CBcfg5gb\\\\nCPq8jrR+oljMjBwAaQmFlPF7\\\\n-----END PRIVATE KEY-----\\\\n\",\r\n clientEmail: \"lyxa-core@for-poc-325210.iam.gserviceaccount.com\"\r\n }\r\n },\r\n user: {\r\n firebaseAdminServiceAccount: {\r\n projectId: \"for-poc-325210\",\r\n privateKey: \"-----BEGIN PRIVATE KEY-----\\\\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC9yUnAC2pQ+dhe\\\\ndJVMS7RQeQdQO7JhT0BXz0MbpCXlEdc3j/GQAY9UfKxQLg1VZh+4An8aUZevOy/v\\\\nUaHsvqSWcWg7UHTOjk861brpjdjhM4S4ahwU2NyVI/o0Bpc5ob4nhHebny9FGqEP\\\\nauwUXiVw7UjA/yGeTN6delZwCxejHxI6zDjFQveo8Ljkfu49CMyyf1XhN9q0So4Q\\\\n2pZ3Xmdz0fZGykSGT9TVBDnPE8Zc3VCQ1XQ7aEKr0e9L+YYidw+iurSNwQSo72uk\\\\nf/G2wCtlAaoDh0lKObEbi1b925BOthP2XpmQ7Kv+iWVFouCY54Md56FxtjKOyYll\\\\n0nS6MkAJAgMBAAECggEAEeee83UoPjQ6BVxAlxJ31BU8+0TshOlwB7C8MywC7rfm\\\\nit2Dw8sf4W/DJmvX0nAYazjiEqKyuaOO98gm64HHX5GarKjgIjoTD7kJAZ6CIOnm\\\\nOis5k75rXg8nPFgIVZW0rb/9tEL5984ltoGG/PtuUxdxwxJ20ptML8VySO8E93yt\\\\n203zMlm/QdlUBBO+XDlpsEoXvUjQ6MzmCSF2LCFD1uBVmj0sVFuPt5fyodhV8gQM\\\\nvDfG4duZ7AE6Nbc5ANgJw8fHMdx+AS+I0P50et936tuFOOeHUWGbg1RMOM1GrWLZ\\\\nH83zfHp33R3rlUgleZetKh/5vLaW29MdJmACk2Z14QKBgQDtrywbz60ULHiyNvDP\\\\nHFweJF/9EBq6MZeo/lYrBDZXuP3sBM7uUa+oYzYad3Lsxo1Vz/Zqb6atWX/BRbHT\\\\nfyy6yTGPRn6geaqYEFuFwfBau3qju6DRwoqplVVlLo8lgOQzIDgXkk0nt7C/bM87\\\\nmkxQI6Xi0TAjIpd3k6miw52laQKBgQDMaTnlL2OGlJlcycBZGxrKdsIwvK2jCLPi\\\\njPTKM163htuzaItEVpJaCPjWaU3k3E1UXjFp9oxxvtDZOZP+DcFwGKvBe2vntFYz\\\\nafCNlYK7wT/t7ChlCUSXuU/bSrXe4Wc4KGnJ6YzNmykMJku2b845layB1PxEhHHA\\\\nRl2NEx9RoQKBgHJvETx+m2UIGEAtZXlBvTQh7TkIxOV6NPt/IHtrdsJ7ZX15vytM\\\\nltbqlUTe160Z1zhGfOw3vzbczT5/UKN0KlPvw/WoShT3HuRBk97tRcxZUS19i2sS\\\\nT/Jf3JJvfSngSX439+mZXZ5OuUEgoRGgMzeuQhLXBmcUI3rF1DlyFvdpAoGAfmq5\\\\nbn8fSzUNn+/6MGFt8Tb/JAscS87vCTZpkb+xXUlfCJaoQqxTuLEBzAC2Nsr0XDAg\\\\n2UqsUxBSs3VDjIRPVJc9adx9wH+sLAHhzn5fquR6OBesZ8gSjs8BjzqmPeAi6P09\\\\nZ60z8lh6S1RH0N1WqhBh7q2dEnbirqoV41CnNuECgYEAr26tTBIvEeZY3gmAmOVl\\\\nCw6gkxaHdzZplFl8Qnv272VllQpwbR1zaF6RfWsTEsrhrT+VtrZO6DDh9O6iJkbB\\\\n7Re3BnMOhGfUS3HlPCFnkdodeaoeVpg4llYwuunmyj+SmNxnC56TiznML1owmUYd\\\\ndLFeY+JZ0GpSBO0qYlY5QGk=\\\\n-----END PRIVATE KEY-----\\\\n\",\r\n clientEmail: \"firebase-adminsdk-onusy@for-poc-325210.iam.gserviceaccount.com\"\r\n },\r\n firebaseAdminAppName: \"lyxa-user\"\r\n },\r\n rider: {\r\n firebaseAdminServiceAccount: {\r\n projectId: \"lyxa-rider-88939\",\r\n privateKey: \"-----BEGIN PRIVATE KEY-----\\\\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQC08zRqUjHFO7Ir\\\\n4UNHIjxVp7oJkK3rrV1UGfHeHsijm6CSWjViVqsFKUZliYXTjg9S8rIMmC3OAMrh\\\\n5FTdNfDell8YHPbVRWZ0OFBNWglvKMgMKMoyQuBKtvEAdZwgVMreOf+51QlZnPxy\\\\nTBNh4Du2ahb8TtAjwxXt7CgMjNIfoMjQFJTrBTAmsxhtOEpYvPU2iX+OtAkHgrs1\\\\nNeWpBGpN4GSwOfA8MdgvorLYbeRDnkY4cH/ReNymTW9nbX1vgsx2AE1NR5PTNxv0\\\\nIuVZQWxMMGPnT5bjzAlCR4z/Nbe89V2zl5kFtBxDBCDqxp+qZxCinJj1QqwC5qzZ\\\\nYLbNVKVPAgMBAAECggEAEHEGwrW24v/NF9KZ3S/zASoX1oBTD+vf4+E69QlMBshV\\\\nxeaKHOYuF5khVd7cjj/wDC6ULLPJJFjga7e7rvaUl80G//cQcIl5STcdXiHqYzN2\\\\nldrroGHWOm5hUJQ0fEroEgV9bc0PJ+7X5f9xRWlCqQz+YKzn7vqYwVZovyyDzS6/\\\\nTus2SeWg0Qh1Uw4+FqveEqGBAMF9COTYJ/rZ5sDE34cYRJeZOgVDeSanF/CW6+VS\\\\nLT5+ysRS8xY/mUFIgs6zvJQr7whDj22OzvZr31LReNUl1IGI1V0wHxCJs3y934dq\\\\nuiAf4iX2w0uwiQs7+IQc6T6GhTEajWHSQqUtbDeecQKBgQDAW/mHk1PCCxZQtc6C\\\\nCkFYONeY0zz7JAk7AvcbeVB6icq9Zv/9botFOvJ/4dduN39+sO/SIvLV+zQzmUGA\\\\nygY58AQIqtYurIc8OjftQ5qZ6t9H1plmj/W+GVAYWadA68P95UBjwVcZySht47s/\\\\ngOje4TF9wXVn9oTuP8XmLpce/wKBgQDw0Onl7EVmkgnyHl1qomqHR+2+xNDZNYMv\\\\njdX0tq2KOXa6JpbO32Yf7LVKQo7bmSOy3M1kn2+lwCXsDufr/a+1GNRxuPucsYiM\\\\nlQeLEKRqfNUni1NnbIUOkZV0fO0Me76Ow5BKqEWrda0E5k9g46p8EgVO5zWUE00w\\\\nZZFTUn7JsQKBgDh9SiREYb6EXwNIwOJzfIkZ+EaLEkd2Z7eKwWKyF65EtOM2Ukrs\\\\nob2s9/YSLp/RcIGWGHePh9zLLqNQiGn36igtkiGxecCvLe/D8RSeW9KDpRqFrPrv\\\\nn+05pcng2js4gZAYOPaSmq+Z4WOUEzMs+jYpz8zseTwUqykEVWuplvulAoGAF8y9\\\\n4RBZx4pVW01u9BP7LUWJlJoE/gKQ5YlCBP5s5kVJm5omu2lOwYb2X9F2JvPamFnE\\\\nHta3BQ2ZcdwDRcp7rA05KcgbbeAJ28L6zN6nMTMHKfJWGtmZyNfQioOyNdKhAaEI\\\\nSKiawhhOMjbEz5GQjtSFG8gz/l9t+IOBOlfj2fECgYBC8gGC7YHm+PvV5F1CVRZD\\\\nUYVlAnqOMJ1VvfTemW/kPzuCMd/JEKSE+b21h3rObMvUZU5AnkM3VT1+hDv6tyEt\\\\nblgh89YsHUor7wXSrYnVmYsrm91JABTWsLhLy92iqylg0xBs3Q5RGCt/s9f3YFFw\\\\nKghNmTDraGggnf5U/Z4LJw==\\\\n-----END PRIVATE KEY-----\\\\n\",\r\n clientEmail: \"firebase-adminsdk-qwhrd@lyxa-rider-88939.iam.gserviceaccount.com\"\r\n },\r\n firebaseAdminAppName: \"lyxa-rider\"\r\n },\r\n shop: {\r\n firebaseAdminServiceAccount: {\r\n projectId: \"lyxa-shop\",\r\n privateKey: \"-----BEGIN PRIVATE KEY-----\\\\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDTWaf/QGSjk7po\\\\nri+6Nzo/tep1UtgMSY4KscT3iCbepiAsw7C8NCQqz3wYEAFRwywbaCwUcUs5KUC7\\\\n/e9TvpSQQksu10P9uP+c7wnAy+l0ay/15vWUV0usmDhMMvfjtDwS2RYTMEAdNUiZ\\\\nOuMC3/DDCBHt0SC5WCNzz11jj/n5bdVOS02qHd8V/lbd46iVEYfFswkI5NBgV7CY\\\\nnR2CoVcakPIeu9kEKdjXsJvf8+zCYtXPaFvcubQcnybOcg6usU+AHD1iwCRd6BrK\\\\n2PpM3gy/eASLJtzg/JoU0CgqJICmfR8LvGk6iHTp7VMfPuCfggwYtO3W1kSHuW4I\\\\nswbXYOJbAgMBAAECggEAMHKZ5xIsv66KiZp8SFSGnrolv7U430AxNlRf0Vo9hsZQ\\\\nE9Lb/Zh6PfIIAUAR/VsfDj1H9XuvAbBqLW3dYbYLOjJoJ5mi9VNmDORiuPZFUrGL\\\\ncfP6kYGdUDgol5cLagAT0UJAJC/oUom3VaDBDxSkjSCZc4l/1dzVa6O6RatoYvuW\\\\nqtJa5WzPH6flqj9HuFZaaNSZKXSYLwMeQC7bzxjbX0lB6b1WM2EIxQopeewrSfKg\\\\nvaw7zYHnu9cO6oA6I4A3VXhySp3G2VIMOIezfI24mP2Bnzori6xCVXcM7R1B2Trr\\\\nlFUrdXb9Rp3ZR0Ul0jSqCmopmMPVgob8lyHhiqk5+QKBgQDd/PcIRP7OE0ZnfXtd\\\\nxWMz1ggp9ub6bN/mFxw/OoyEVSfmlshDCvEeqoo2DxWGC+/0uiGuPHnDKDX+R0Ho\\\\nqmlWcVPTSBmrQvi3+VBKfr6ZCwxoutCQo3SMlEMvqHDkjGhAsDg/yjkI8yS5jqZ5\\\\nXtG+dYQpd9qY3t46Uar1+7lpJwKBgQDzu3CzElfr3xHAEdE+1pkiPixPuW+fHw1v\\\\nwoc5e7hJA1Mtu0Gdj7g41mF37bUXYxIg3FgV5sS76XCxw1a3plj/y0n+qZXMq5xs\\\\nZwgqrh4APjVXVRp9SSOvEXT0NanhWKiHMNncvteqThSEal27MDghEzqDmebkuOII\\\\ng+KDmYp1rQKBgA0dhPrYGLXULbSvlTpVDydg3dqc28iv5gqSEvkpXGP1JAZbojlT\\\\nzCsjqEbJXVwuGF89IABLUmZVWdtMGnjEmLSivXEeMWYM7uTvte6wzlH8dR866leh\\\\nUKF9oPqP2RunsAEiaDBcokIFG4ZbBzrkfz/hcY2Bp0ig4kBP0un1lV7BAoGBAJ4L\\\\n4MOt1Gd2KetzYk0uGPS0fkVgSLpVB4B+EvO6f0CRMGHKOH00UdBBa8i50qEMtBes\\\\n6k2ha9cyQ8pxkYzbCIEuUJgbXbDvYyqEES6j435i2HH+FIRDZilC16T4G2Wt+PJZ\\\\nQhy7f9vGb9WBp7AXT35bGql1pdyQ6rl80+hkKv2tAoGAe4yFOvIdEEdgEokp5Dem\\\\nuPf1rikk5mYPMkXhrX0cH9Wd2rh9MiP2gJuL3PD3R9LLon+9EzdBs31MwpP9C06Y\\\\nZmnuEfgYIewBHZbpRO+nsGX+AK15gbJUNk1RbWmUU7AvkHyo4eE6NnNVbygxaFSk\\\\n0+8aYRpYzZRnyAn8Oo6o2No=\\\\n-----END PRIVATE KEY-----\\\\n\",\r\n clientEmail: \"firebase-adminsdk-w4v98@lyxa-shop.iam.gserviceaccount.com\"\r\n },\r\n firebaseAdminAppName: \"lyxa-shop\"\r\n },\r\n },\r\n environment: EnvironmentConfigurationType.DEV\r\n };\r\n\r\n private readonly _options: ConfigurationOptions;\r\n\r\n constructor(options?: ConfigurationOptions) {\r\n this._options = {\r\n ...this._defaultOptions,\r\n ...options,\r\n };\r\n }\r\n\r\n get options(): ConfigurationOptions {\r\n return this._options;\r\n }\r\n}\r\n"]}
@@ -1,4 +1,5 @@
1
1
  export declare enum EnvironmentConfigurationType {
2
+ LOCAL = "LOCAL",
2
3
  MOCK = "MOCK",
3
4
  DEV = "DEV",
4
5
  PREPROD = "PREPROD",
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EnvironmentConfigurationType = void 0;
4
4
  var EnvironmentConfigurationType;
5
5
  (function (EnvironmentConfigurationType) {
6
+ EnvironmentConfigurationType["LOCAL"] = "LOCAL";
6
7
  EnvironmentConfigurationType["MOCK"] = "MOCK";
7
8
  EnvironmentConfigurationType["DEV"] = "DEV";
8
9
  EnvironmentConfigurationType["PREPROD"] = "PREPROD";
@@ -1 +1 @@
1
- {"version":3,"file":"EnvironmentConfigurationType.js","sourceRoot":"/","sources":["libraries/configuration/types/EnvironmentConfigurationType.ts"],"names":[],"mappings":";;;AAAA,IAAY,4BAKX;AALD,WAAY,4BAA4B;IACpC,6CAAa,CAAA;IACb,2CAAW,CAAA;IACX,mDAAmB,CAAA;IACnB,6CAAa,CAAA;AACjB,CAAC,EALW,4BAA4B,4CAA5B,4BAA4B,QAKvC","sourcesContent":["export enum EnvironmentConfigurationType {\r\n MOCK = \"MOCK\",\r\n DEV = \"DEV\",\r\n PREPROD = \"PREPROD\",\r\n PROD = \"PROD\"\r\n}\r\n"]}
1
+ {"version":3,"file":"EnvironmentConfigurationType.js","sourceRoot":"/","sources":["libraries/configuration/types/EnvironmentConfigurationType.ts"],"names":[],"mappings":";;;AAAA,IAAY,4BAMX;AAND,WAAY,4BAA4B;IACpC,+CAAe,CAAA;IACf,6CAAa,CAAA;IACb,2CAAW,CAAA;IACX,mDAAmB,CAAA;IACnB,6CAAa,CAAA;AACjB,CAAC,EANW,4BAA4B,4CAA5B,4BAA4B,QAMvC","sourcesContent":["export enum EnvironmentConfigurationType {\r\n LOCAL = \"LOCAL\",\r\n MOCK = \"MOCK\",\r\n DEV = \"DEV\",\r\n PREPROD = \"PREPROD\",\r\n PROD = \"PROD\"\r\n}\r\n"]}
@@ -1,6 +1,6 @@
1
1
  import { Connection } from 'mongoose';
2
2
  import { ReturnModelType } from '@typegoose/typegoose';
3
3
  import { AnyParamConstructor, IModelOptions } from "@typegoose/typegoose/lib/types";
4
- export declare function initGlobalConnection(uri: string): Promise<Connection>;
4
+ export declare function initGlobalConnection(uri: string, environment: string): Promise<Connection>;
5
5
  export declare function createGlobalModel<T extends AnyParamConstructor<any>>(Class: T): ReturnModelType<T>;
6
6
  export declare function createGlobalDiscriminatorModel<Base extends AnyParamConstructor<any>, Sub extends AnyParamConstructor<any>>(baseModel: ReturnModelType<Base>, subClass: Sub, discriminatorName?: string, options?: IModelOptions): ReturnModelType<Sub>;
@@ -6,10 +6,10 @@ exports.createGlobalDiscriminatorModel = createGlobalDiscriminatorModel;
6
6
  const mongoose_1 = require("mongoose");
7
7
  const typegoose_1 = require("@typegoose/typegoose");
8
8
  let globalConnection;
9
- async function initGlobalConnection(uri) {
9
+ async function initGlobalConnection(uri, environment) {
10
10
  if (!globalConnection) {
11
11
  globalConnection = (0, mongoose_1.createConnection)(uri, {
12
- dbName: 'lyxa-global',
12
+ dbName: `lyxa-${environment}-global`,
13
13
  });
14
14
  }
15
15
  return globalConnection;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["libraries/mongo/index.ts"],"names":[],"mappings":";;AAMA,oDAOC;AAKD,8CASC;AAWD,wEAmBC;AAzDD,uCAAwD;AACxD,oDAAsG;AAGtG,IAAI,gBAAwC,CAAC;AAEtC,KAAK,UAAU,oBAAoB,CAAC,GAAW;IAClD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACpB,gBAAgB,GAAG,IAAA,2BAAgB,EAAC,GAAG,EAAE;YACrC,MAAM,EAAE,aAAa;SACxB,CAAC,CAAC;IACP,CAAC;IACD,OAAO,gBAAgB,CAAC;AAC5B,CAAC;AAKD,SAAgB,iBAAiB,CAC7B,KAAQ;IAER,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACX,0EAA0E,CAC7E,CAAC;IACN,CAAC;IACD,OAAO,IAAA,4BAAgB,EAAC,KAAK,EAAE,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAC7E,CAAC;AAWD,SAAgB,8BAA8B,CAI1C,SAAgC,EAChC,QAAa,EACb,iBAA0B,EAC1B,OAAuB;IAEvB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACX,0EAA0E,CAC7E,CAAC;IACN,CAAC;IAED,OAAO,IAAA,yCAA6B,EAAC,SAAS,EAAE,QAAQ,EAAE,iBAAiB,EAAE;QACzE,kBAAkB,EAAE,gBAAgB;QACpC,GAAG,OAAO;KACb,CAAC,CAAC;AACP,CAAC","sourcesContent":["import { Connection, createConnection } from 'mongoose';\r\nimport {getDiscriminatorModelForClass, getModelForClass, ReturnModelType} from '@typegoose/typegoose';\r\nimport {AnyParamConstructor, IModelOptions} from \"@typegoose/typegoose/lib/types\";\r\n\r\nlet globalConnection: Connection | undefined;\r\n\r\nexport async function initGlobalConnection(uri: string) {\r\n if (!globalConnection) {\r\n globalConnection = createConnection(uri, {\r\n dbName: 'lyxa-global',\r\n });\r\n }\r\n return globalConnection;\r\n}\r\n\r\n/**\r\n * Creates a Typegoose model from a class (with a single, global connection).\r\n */\r\nexport function createGlobalModel<T extends AnyParamConstructor<any>>(\r\n Class: T\r\n): ReturnModelType<T> {\r\n if (!globalConnection) {\r\n throw new Error(\r\n 'Global connection not initialized. Call initGlobalConnection(...) first.'\r\n );\r\n }\r\n return getModelForClass(Class, { existingConnection: globalConnection });\r\n}\r\n\r\n/**\r\n * Creates a Typegoose *discriminator* model from a base model,\r\n * using a derived sub-class & optional discriminator value.\r\n *\r\n * @param baseModel The ReturnModelType (model) for the base class\r\n * @param subClass The derived class constructor\r\n * @param discriminatorName A string to label this sub-class (e.g. \"DOG\")\r\n * @param options Additional model options\r\n */\r\nexport function createGlobalDiscriminatorModel<\r\n Base extends AnyParamConstructor<any>,\r\n Sub extends AnyParamConstructor<any>,\r\n>(\r\n baseModel: ReturnModelType<Base>,\r\n subClass: Sub,\r\n discriminatorName?: string,\r\n options?: IModelOptions,\r\n): ReturnModelType<Sub> {\r\n if (!globalConnection) {\r\n throw new Error(\r\n 'Global connection not initialized. Call initGlobalConnection(...) first.',\r\n );\r\n }\r\n\r\n return getDiscriminatorModelForClass(baseModel, subClass, discriminatorName, {\r\n existingConnection: globalConnection,\r\n ...options,\r\n });\r\n}\r\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["libraries/mongo/index.ts"],"names":[],"mappings":";;AAMA,oDAOC;AAKD,8CASC;AAWD,wEAmBC;AAzDD,uCAAwD;AACxD,oDAAsG;AAGtG,IAAI,gBAAwC,CAAC;AAEtC,KAAK,UAAU,oBAAoB,CAAC,GAAW,EAAE,WAAmB;IACvE,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACpB,gBAAgB,GAAG,IAAA,2BAAgB,EAAC,GAAG,EAAE;YACrC,MAAM,EAAE,QAAQ,WAAW,SAAS;SACvC,CAAC,CAAC;IACP,CAAC;IACD,OAAO,gBAAgB,CAAC;AAC5B,CAAC;AAKD,SAAgB,iBAAiB,CAC7B,KAAQ;IAER,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACX,0EAA0E,CAC7E,CAAC;IACN,CAAC;IACD,OAAO,IAAA,4BAAgB,EAAC,KAAK,EAAE,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAC7E,CAAC;AAWD,SAAgB,8BAA8B,CAI1C,SAAgC,EAChC,QAAa,EACb,iBAA0B,EAC1B,OAAuB;IAEvB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACX,0EAA0E,CAC7E,CAAC;IACN,CAAC;IAED,OAAO,IAAA,yCAA6B,EAAC,SAAS,EAAE,QAAQ,EAAE,iBAAiB,EAAE;QACzE,kBAAkB,EAAE,gBAAgB;QACpC,GAAG,OAAO;KACb,CAAC,CAAC;AACP,CAAC","sourcesContent":["import { Connection, createConnection } from 'mongoose';\r\nimport {getDiscriminatorModelForClass, getModelForClass, ReturnModelType} from '@typegoose/typegoose';\r\nimport {AnyParamConstructor, IModelOptions} from \"@typegoose/typegoose/lib/types\";\r\n\r\nlet globalConnection: Connection | undefined;\r\n\r\nexport async function initGlobalConnection(uri: string, environment: string) {\r\n if (!globalConnection) {\r\n globalConnection = createConnection(uri, {\r\n dbName: `lyxa-${environment}-global`,\r\n });\r\n }\r\n return globalConnection;\r\n}\r\n\r\n/**\r\n * Creates a Typegoose model from a class (with a single, global connection).\r\n */\r\nexport function createGlobalModel<T extends AnyParamConstructor<any>>(\r\n Class: T\r\n): ReturnModelType<T> {\r\n if (!globalConnection) {\r\n throw new Error(\r\n 'Global connection not initialized. Call initGlobalConnection(...) first.'\r\n );\r\n }\r\n return getModelForClass(Class, { existingConnection: globalConnection });\r\n}\r\n\r\n/**\r\n * Creates a Typegoose *discriminator* model from a base model,\r\n * using a derived sub-class & optional discriminator value.\r\n *\r\n * @param baseModel The ReturnModelType (model) for the base class\r\n * @param subClass The derived class constructor\r\n * @param discriminatorName A string to label this sub-class (e.g. \"DOG\")\r\n * @param options Additional model options\r\n */\r\nexport function createGlobalDiscriminatorModel<\r\n Base extends AnyParamConstructor<any>,\r\n Sub extends AnyParamConstructor<any>,\r\n>(\r\n baseModel: ReturnModelType<Base>,\r\n subClass: Sub,\r\n discriminatorName?: string,\r\n options?: IModelOptions,\r\n): ReturnModelType<Sub> {\r\n if (!globalConnection) {\r\n throw new Error(\r\n 'Global connection not initialized. Call initGlobalConnection(...) first.',\r\n );\r\n }\r\n\r\n return getDiscriminatorModelForClass(baseModel, subClass, discriminatorName, {\r\n existingConnection: globalConnection,\r\n ...options,\r\n });\r\n}\r\n"]}
@@ -23,9 +23,9 @@ let SecretManagerService = class SecretManagerService {
23
23
  this._redisManager = redisManager;
24
24
  this._client = new secret_manager_1.SecretManagerServiceClient({
25
25
  credentials: {
26
- projectId: "",
27
- private_key: "",
28
- client_email: ""
26
+ projectId: "for-poc-325210",
27
+ private_key: "-----BEGIN PRIVATE KEY-----\\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC5aI2nsMHkJbZf\\nem9ycpd57RjRDsBt9Nb/uMjsFcBRuAKcKgh4lgNO6ZmcRwK10IRygCmbY5XxmtVA\\nq9CT5tYlVN4SDzN1y4lL8/CL5owW2RZOURKcM0lsNOB9uGwkv1t3bfbBNc2hh9JX\\n72t7URAtrtPAkUxtgEPm6WL03uNu8KCZ0G9uoA/oM7o8OIGkjC575D9V6QjYC9fn\\nPjBRQ3K42fUWFmf31jtUBSHB0xE5qJI+MOi+OcXAJLxKQBbW+vqr2KfMwVYpNclp\\nk0Ptfe8xZxVfKEJAAkacQ36Hp14wFK/q+2mmhOQlbruksOZCpaIkh5IdvGkkG8ZH\\n566FgFHDAgMBAAECggEAJkuuqprLSZTyiOEQoOqDWBc9X3z1CSEfwV0I/x51BUwF\\nGf1il4mgsE12wX03VZd2q/HF5kcZAvjQoFV8tPfidn6DieZi4itCthHyNutNNzDq\\ntw1u0x2SxktbrQwJJkPyIAZyB7FVwk38B9a3dBanyU/JhAZe62UpYUoGev6IqnKm\\nIiw7r4lc47XgJNrDjXhCtTwHBmXA6qt/HrBcu4fSZlnZMhvsgnO6iafXaBo15Rpy\\nyVBVCPCGJBqpbqI8w3lVTcUqvD2DS+wGJAZSNFagt5qg+vCN8xVUsyQKrM1qIXZm\\nxvPX5oE6CWaD5a7yzpwqKLghKIpsb+3gezyQiFw5rQKBgQDh9U+VdFipH2o8Rezd\\n2d9Kp+ya8+kAog4NMeMyD/xyvKbmv6hW2SZqLhc5MacO0GiCnFR+dMLJxRBGnn+e\\ngYP26OE2fG9Kn7JrSGafu7siKnonfaN/1IcHcZe/77P/s/o2lNxaVl9i1iPQlzr/\\nN8RRaYa+pvazR4VNMS+Z6keD5QKBgQDSDxfKGwOt/GlPKRDmw3bKD4tseK36JsJw\\n5u7im6CpiTEgSSbOCr1ggITv6VbHUK/Nv3mExJH6uuzd9szb94JUAxGbZ16Liwn4\\nse+K2XlnLEnqxzFSkprOJAJkfbffrH+IxW8gNrK/UbjKT/xgEVH1ZeKUMPLCQG+y\\nLAW6NY50hwKBgCYQTPfAQa87u4mrvdsheJv67cCslfOlWPigDsXAK6aoYPU+E/2N\\nVwtL+F2KH7o/IVvfOdyTjryula9Pw+/PoYtWb5neHGFVxZiM+byuwzdeMHW2lHRU\\nOOroF8gdeRT6HIxVR0lwg2EC8cWRtD6KBmgwfqJfPe+1fJ8kSgCDlsiBAoGBAI1D\\nOyNeYW4bBhMHMeeOYY9nPsL2sUE92Zslolbgg/4fVds5dpAvpsWECGJy0Dn/6Ap8\\njtMbgnRUSsDGnWP8IjgvTCLvNCSxn0YRG1+L+tnIbfkmdePq1ZJ1oupDpWkVTzsC\\nU0Ydor2IzrW3bqiIXU6jculntYmu3a67biqYo7F3AoGBALoinJdtNLLqOqf/MumD\\n+YmbzHqsuID2dGyct7GESIBx3a67hwyJQfCK8nyHNyWN7lFg+H1rZlu1Cjmo0hlu\\nOxzdbWON5Rg2n3TbGw3AM1M55khsedbmm8MOSRdhIkz5RuYESSNAvVC6CBcfg5gb\\nCPq8jrR+oljMjBwAaQmFlPF7\\n-----END PRIVATE KEY-----\\n",
28
+ client_email: "lyxa-core@for-poc-325210.iam.gserviceaccount.com"
29
29
  }
30
30
  });
31
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["libraries/secrets/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,iEAAwE;AACxE,mCAA+B;AAC/B,oCAAsC;AACtC,oDAAsD;AAG/C,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IACrB,qBAAqB,CAAwB;IAC7C,aAAa,CAAgB;IAC7B,OAAO,CAA8B;IAE7C,YAAY,oBAA0C,EAAE,YAA0B;QAC9E,IAAI,CAAC,qBAAqB,GAAG,oBAAoB,CAAC;QAClD,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,OAAO,GAAG,IAAI,2CAA0B,CAAC;YAC1C,WAAW,EAAE;gBACT,SAAS,EAAE,EAAE;gBACb,WAAW,EAAE,EAAE;gBACf,YAAY,EAAE,EAAE;aACnB;SACJ,CAAC,CAAA;IACN,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,GAAW;QAC3B,MAAM,yBAAyB,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,WAAW,GAAG,GAAG,GAAG,GAAG,CAAC;QAE7F,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAS,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,WAAW,GAAG,OAAO,EAAE,GAAG,CAAC,CAAA;YAEnI,IAAG,IAAI,IAAI,SAAS,EAAE,CAAC;gBACnB,OAAO,IAAI,CAAA;YACf,CAAC;YAED,MAAM,CAAC,cAAc,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC;gBAC5D,IAAI,EAAE,gCAAgC,GAAG,yBAAyB,GAAG,kBAAkB;aAC1F,CAAC,CAAA;YAEF,MAAM,GAAG,GAAG,cAAc,CAAC,OAAQ,CAAC,IAAK,CAAC,QAAQ,EAAE,CAAA;YACpD,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAE5B,OAAO,GAAG,CAAA;QACd,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;QAEb,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,GAAW,EAAE,KAAa;QAC1C,MAAM,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAS,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,WAAW,GAAG,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;QAC7H,OAAO,KAAK,CAAA;IAChB,CAAC;CAEJ,CAAA;AA7CY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,gBAAO,GAAE;qCAM4B,oCAAoB,EAAgB,oBAAY;GALzE,oBAAoB,CA6ChC","sourcesContent":["\r\nimport {SecretManagerServiceClient} from \"@google-cloud/secret-manager\";\r\nimport {Service} from \"typedi\";\r\nimport {RedisService} from \"../redis\";\r\nimport {ConfigurationService} from \"../configuration\";\r\n\r\n@Service()\r\nexport class SecretManagerService {\r\n private _configurationService!: ConfigurationService;\r\n private _redisManager!: RedisService;\r\n private _client!: SecretManagerServiceClient;\r\n\r\n constructor(configurationService: ConfigurationService, redisManager: RedisService) {\r\n this._configurationService = configurationService;\r\n this._redisManager = redisManager;\r\n this._client = new SecretManagerServiceClient({\r\n credentials: {\r\n projectId: \"\",\r\n private_key: \"\",\r\n client_email: \"\"\r\n }\r\n })\r\n }\r\n\r\n public async getKey(key: string): Promise<string | undefined> {\r\n const environmentTransformedKey = this._configurationService.options.environment + \"_\" + key;\r\n\r\n try {\r\n const data = await this._redisManager.getCachedObjectByGroup<string>(this._configurationService.options.environment + \"_KEYS\", key)\r\n\r\n if(data != undefined) {\r\n return data\r\n }\r\n\r\n const [accessResponse] = await this._client.accessSecretVersion({\r\n name: \"projects/312948262281/secrets/\" + environmentTransformedKey + \"/versions/latest\",\r\n })\r\n\r\n const val = accessResponse.payload!.data!.toString()\r\n await this.setKey(key, val);\r\n\r\n return val\r\n } catch (e) {\r\n\r\n }\r\n }\r\n\r\n public async setKey(key: string, value: string): Promise<string> {\r\n await this._redisManager.setCachedObjectByGroup<string>(this._configurationService.options.environment + \"_KEYS\", key, value)\r\n return value\r\n }\r\n\r\n}\r\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["libraries/secrets/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,iEAAwE;AACxE,mCAA+B;AAC/B,oCAAsC;AACtC,oDAAsD;AAG/C,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IACrB,qBAAqB,CAAwB;IAC7C,aAAa,CAAgB;IAC7B,OAAO,CAA8B;IAE7C,YAAY,oBAA0C,EAAE,YAA0B;QAC9E,IAAI,CAAC,qBAAqB,GAAG,oBAAoB,CAAC;QAClD,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,OAAO,GAAG,IAAI,2CAA0B,CAAC;YAC1C,WAAW,EAAE;gBACT,SAAS,EAAE,gBAAgB;gBAC3B,WAAW,EAAE,kuDAAkuD;gBAC/uD,YAAY,EAAE,kDAAkD;aACnE;SACJ,CAAC,CAAA;IACN,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,GAAW;QAC3B,MAAM,yBAAyB,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,WAAW,GAAG,GAAG,GAAG,GAAG,CAAC;QAE7F,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAS,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,WAAW,GAAG,OAAO,EAAE,GAAG,CAAC,CAAA;YAEnI,IAAG,IAAI,IAAI,SAAS,EAAE,CAAC;gBACnB,OAAO,IAAI,CAAA;YACf,CAAC;YAED,MAAM,CAAC,cAAc,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC;gBAC5D,IAAI,EAAE,gCAAgC,GAAG,yBAAyB,GAAG,kBAAkB;aAC1F,CAAC,CAAA;YAEF,MAAM,GAAG,GAAG,cAAc,CAAC,OAAQ,CAAC,IAAK,CAAC,QAAQ,EAAE,CAAA;YACpD,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAE5B,OAAO,GAAG,CAAA;QACd,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;QAEb,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,GAAW,EAAE,KAAa;QAC1C,MAAM,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAS,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,WAAW,GAAG,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;QAC7H,OAAO,KAAK,CAAA;IAChB,CAAC;CAEJ,CAAA;AA7CY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,gBAAO,GAAE;qCAM4B,oCAAoB,EAAgB,oBAAY;GALzE,oBAAoB,CA6ChC","sourcesContent":["\r\nimport {SecretManagerServiceClient} from \"@google-cloud/secret-manager\";\r\nimport {Service} from \"typedi\";\r\nimport {RedisService} from \"../redis\";\r\nimport {ConfigurationService} from \"../configuration\";\r\n\r\n@Service()\r\nexport class SecretManagerService {\r\n private _configurationService!: ConfigurationService;\r\n private _redisManager!: RedisService;\r\n private _client!: SecretManagerServiceClient;\r\n\r\n constructor(configurationService: ConfigurationService, redisManager: RedisService) {\r\n this._configurationService = configurationService;\r\n this._redisManager = redisManager;\r\n this._client = new SecretManagerServiceClient({\r\n credentials: {\r\n projectId: \"for-poc-325210\",\r\n private_key: \"-----BEGIN PRIVATE KEY-----\\\\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC5aI2nsMHkJbZf\\\\nem9ycpd57RjRDsBt9Nb/uMjsFcBRuAKcKgh4lgNO6ZmcRwK10IRygCmbY5XxmtVA\\\\nq9CT5tYlVN4SDzN1y4lL8/CL5owW2RZOURKcM0lsNOB9uGwkv1t3bfbBNc2hh9JX\\\\n72t7URAtrtPAkUxtgEPm6WL03uNu8KCZ0G9uoA/oM7o8OIGkjC575D9V6QjYC9fn\\\\nPjBRQ3K42fUWFmf31jtUBSHB0xE5qJI+MOi+OcXAJLxKQBbW+vqr2KfMwVYpNclp\\\\nk0Ptfe8xZxVfKEJAAkacQ36Hp14wFK/q+2mmhOQlbruksOZCpaIkh5IdvGkkG8ZH\\\\n566FgFHDAgMBAAECggEAJkuuqprLSZTyiOEQoOqDWBc9X3z1CSEfwV0I/x51BUwF\\\\nGf1il4mgsE12wX03VZd2q/HF5kcZAvjQoFV8tPfidn6DieZi4itCthHyNutNNzDq\\\\ntw1u0x2SxktbrQwJJkPyIAZyB7FVwk38B9a3dBanyU/JhAZe62UpYUoGev6IqnKm\\\\nIiw7r4lc47XgJNrDjXhCtTwHBmXA6qt/HrBcu4fSZlnZMhvsgnO6iafXaBo15Rpy\\\\nyVBVCPCGJBqpbqI8w3lVTcUqvD2DS+wGJAZSNFagt5qg+vCN8xVUsyQKrM1qIXZm\\\\nxvPX5oE6CWaD5a7yzpwqKLghKIpsb+3gezyQiFw5rQKBgQDh9U+VdFipH2o8Rezd\\\\n2d9Kp+ya8+kAog4NMeMyD/xyvKbmv6hW2SZqLhc5MacO0GiCnFR+dMLJxRBGnn+e\\\\ngYP26OE2fG9Kn7JrSGafu7siKnonfaN/1IcHcZe/77P/s/o2lNxaVl9i1iPQlzr/\\\\nN8RRaYa+pvazR4VNMS+Z6keD5QKBgQDSDxfKGwOt/GlPKRDmw3bKD4tseK36JsJw\\\\n5u7im6CpiTEgSSbOCr1ggITv6VbHUK/Nv3mExJH6uuzd9szb94JUAxGbZ16Liwn4\\\\nse+K2XlnLEnqxzFSkprOJAJkfbffrH+IxW8gNrK/UbjKT/xgEVH1ZeKUMPLCQG+y\\\\nLAW6NY50hwKBgCYQTPfAQa87u4mrvdsheJv67cCslfOlWPigDsXAK6aoYPU+E/2N\\\\nVwtL+F2KH7o/IVvfOdyTjryula9Pw+/PoYtWb5neHGFVxZiM+byuwzdeMHW2lHRU\\\\nOOroF8gdeRT6HIxVR0lwg2EC8cWRtD6KBmgwfqJfPe+1fJ8kSgCDlsiBAoGBAI1D\\\\nOyNeYW4bBhMHMeeOYY9nPsL2sUE92Zslolbgg/4fVds5dpAvpsWECGJy0Dn/6Ap8\\\\njtMbgnRUSsDGnWP8IjgvTCLvNCSxn0YRG1+L+tnIbfkmdePq1ZJ1oupDpWkVTzsC\\\\nU0Ydor2IzrW3bqiIXU6jculntYmu3a67biqYo7F3AoGBALoinJdtNLLqOqf/MumD\\\\n+YmbzHqsuID2dGyct7GESIBx3a67hwyJQfCK8nyHNyWN7lFg+H1rZlu1Cjmo0hlu\\\\nOxzdbWON5Rg2n3TbGw3AM1M55khsedbmm8MOSRdhIkz5RuYESSNAvVC6CBcfg5gb\\\\nCPq8jrR+oljMjBwAaQmFlPF7\\\\n-----END PRIVATE KEY-----\\\\n\",\r\n client_email: \"lyxa-core@for-poc-325210.iam.gserviceaccount.com\"\r\n }\r\n })\r\n }\r\n\r\n public async getKey(key: string): Promise<string | undefined> {\r\n const environmentTransformedKey = this._configurationService.options.environment + \"_\" + key;\r\n\r\n try {\r\n const data = await this._redisManager.getCachedObjectByGroup<string>(this._configurationService.options.environment + \"_KEYS\", key)\r\n\r\n if(data != undefined) {\r\n return data\r\n }\r\n\r\n const [accessResponse] = await this._client.accessSecretVersion({\r\n name: \"projects/312948262281/secrets/\" + environmentTransformedKey + \"/versions/latest\",\r\n })\r\n\r\n const val = accessResponse.payload!.data!.toString()\r\n await this.setKey(key, val);\r\n\r\n return val\r\n } catch (e) {\r\n\r\n }\r\n }\r\n\r\n public async setKey(key: string, value: string): Promise<string> {\r\n await this._redisManager.setCachedObjectByGroup<string>(this._configurationService.options.environment + \"_KEYS\", key, value)\r\n return value\r\n }\r\n\r\n}\r\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lyxa.ai/core",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "The Core system of the Lyxa services.",
5
5
  "author": "elie <42282499+Internalizable@users.noreply.github.com>",
6
6
  "license": "MIT",